summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2010-07-16 14:52:31 +0300
committerArnold D. Robbins <arnold@skeeve.com>2010-07-16 14:52:31 +0300
commit3ba50a15ebd976f7a88393e2e45dc14b6478b9a9 (patch)
tree6a6bbe6bed1141051fefe94b2d39eacd4854235a
parent6a2caf2157d87b4b582b2494bdd7d6a688dd0b1f (diff)
downloadgawk-3ba50a15ebd976f7a88393e2e45dc14b6478b9a9.tar.gz
Move to gawk-3.1.7.gawk-3.1.7
-rw-r--r--ABOUT-NLS1165
-rw-r--r--ChangeLog520
-rw-r--r--Makefile.am8
-rw-r--r--Makefile.in347
-rw-r--r--NEWS37
-rw-r--r--README29
-rw-r--r--README_d/README.VMS6
-rw-r--r--README_d/README.beos6
-rw-r--r--README_d/README.cygwin5
-rw-r--r--README_d/README.pc12
-rw-r--r--README_d/README.zos45
-rw-r--r--aclocal.m4370
-rw-r--r--array.c2
-rw-r--r--awk.h47
-rw-r--r--awkgram.c2456
-rw-r--r--awkgram.y242
-rw-r--r--awklib/ChangeLog4
-rw-r--r--awklib/Makefile.in289
-rw-r--r--awklib/eg/lib/grcat.c4
-rw-r--r--awklib/eg/lib/pwcat.c6
-rw-r--r--awklib/eg/lib/round.awk2
-rw-r--r--awklib/eg/network/eliza.awk2
-rw-r--r--awklib/eg/prog/translate.awk16
-rw-r--r--builtin.c195
-rwxr-xr-xconfig.rpath102
-rw-r--r--configh.in66
-rwxr-xr-xconfigure15862
-rw-r--r--configure.ac45
-rw-r--r--custom.h11
-rw-r--r--dfa.c47
-rw-r--r--doc/ChangeLog124
-rw-r--r--doc/Makefile.am5
-rw-r--r--doc/Makefile.in321
-rw-r--r--doc/awkcard.in626
-rw-r--r--doc/gawk.132
-rw-r--r--doc/gawk.info1632
-rw-r--r--doc/gawk.texi598
-rw-r--r--doc/gawkinet.info229
-rw-r--r--doc/gawkinet.texi108
-rw-r--r--eval.c187
-rw-r--r--ext.c2
-rw-r--r--extension/ChangeLog20
-rw-r--r--extension/rwarray.awk28
-rw-r--r--extension/rwarray.c425
-rwxr-xr-xextension/steps3
-rw-r--r--field.c102
-rw-r--r--floatcomp.c2
-rw-r--r--floatmagic.h54
-rw-r--r--getopt.c77
-rw-r--r--io.c118
-rw-r--r--libsigsegv/AUTHORS4
-rw-r--r--libsigsegv/COPYING340
-rw-r--r--libsigsegv/ChangeLog870
-rw-r--r--libsigsegv/ChangeLog.1295
-rw-r--r--libsigsegv/INSTALL234
-rw-r--r--libsigsegv/Makefile.am76
-rw-r--r--libsigsegv/Makefile.in782
-rw-r--r--libsigsegv/Makefile.msvc123
-rw-r--r--libsigsegv/NEWS96
-rw-r--r--libsigsegv/PORTING249
-rw-r--r--libsigsegv/README123
-rw-r--r--libsigsegv/README.woe3259
-rw-r--r--libsigsegv/aclocal.m4976
-rwxr-xr-xlibsigsegv/build-aux/config.guess1526
-rwxr-xr-xlibsigsegv/build-aux/config.sub1677
-rwxr-xr-xlibsigsegv/build-aux/install-sh323
-rwxr-xr-xlibsigsegv/build-aux/ltmain.sh8406
-rwxr-xr-xlibsigsegv/build-aux/missing360
-rw-r--r--libsigsegv/config.h.in134
-rw-r--r--libsigsegv/config.h.msvc134
-rwxr-xr-xlibsigsegv/configure20151
-rw-r--r--libsigsegv/configure.ac912
-rw-r--r--libsigsegv/m4/bold.m459
-rw-r--r--libsigsegv/m4/fault.m4125
-rw-r--r--libsigsegv/m4/getpagesize.m466
-rw-r--r--libsigsegv/m4/libtool.m47309
-rw-r--r--libsigsegv/m4/ltoptions.m4368
-rw-r--r--libsigsegv/m4/ltsugar.m4123
-rw-r--r--libsigsegv/m4/ltversion.m423
-rw-r--r--libsigsegv/m4/lt~obsolete.m492
-rw-r--r--libsigsegv/m4/mmap-anon.m4140
-rw-r--r--libsigsegv/m4/relocatable.m499
-rw-r--r--libsigsegv/m4/sigaltstack-longjmp.m4100
-rw-r--r--libsigsegv/m4/sigaltstack-siglongjmp.m498
-rw-r--r--libsigsegv/m4/sigaltstack.m4198
-rw-r--r--libsigsegv/src/Makefile.am104
-rw-r--r--libsigsegv/src/Makefile.in591
-rw-r--r--libsigsegv/src/dispatcher.c255
-rw-r--r--libsigsegv/src/fault-aix3-powerpc.h20
-rw-r--r--libsigsegv/src/fault-aix3.h20
-rw-r--r--libsigsegv/src/fault-aix5-powerpc.h20
-rw-r--r--libsigsegv/src/fault-aix5.h18
-rw-r--r--libsigsegv/src/fault-beos-i386.h22
-rw-r--r--libsigsegv/src/fault-beos.h19
-rw-r--r--libsigsegv/src/fault-bsd.h19
-rw-r--r--libsigsegv/src/fault-freebsd-i386.h27
-rw-r--r--libsigsegv/src/fault-hpux-hppa.h46
-rw-r--r--libsigsegv/src/fault-hpux.h19
-rw-r--r--libsigsegv/src/fault-hurd.h20
-rw-r--r--libsigsegv/src/fault-irix-mips.h20
-rw-r--r--libsigsegv/src/fault-irix.h20
-rw-r--r--libsigsegv/src/fault-linux-alpha.h22
-rw-r--r--libsigsegv/src/fault-linux-arm.h26
-rw-r--r--libsigsegv/src/fault-linux-cris.h22
-rw-r--r--libsigsegv/src/fault-linux-hppa.h27
-rw-r--r--libsigsegv/src/fault-linux-i386-old.h23
-rw-r--r--libsigsegv/src/fault-linux-i386.h21
-rw-r--r--libsigsegv/src/fault-linux-ia64.h29
-rw-r--r--libsigsegv/src/fault-linux-m68k.c44
-rw-r--r--libsigsegv/src/fault-linux-m68k.h24
-rw-r--r--libsigsegv/src/fault-linux-mips.h22
-rw-r--r--libsigsegv/src/fault-linux-powerpc.h23
-rw-r--r--libsigsegv/src/fault-linux-s390.h22
-rw-r--r--libsigsegv/src/fault-linux-sh.h22
-rw-r--r--libsigsegv/src/fault-linux-sparc.h23
-rw-r--r--libsigsegv/src/fault-linux-x86_64.h22
-rw-r--r--libsigsegv/src/fault-linux.h22
-rw-r--r--libsigsegv/src/fault-macos-i386.h20
-rw-r--r--libsigsegv/src/fault-macosdarwin5-powerpc.c124
-rw-r--r--libsigsegv/src/fault-macosdarwin5-powerpc.h26
-rw-r--r--libsigsegv/src/fault-macosdarwin7-powerpc.c131
-rw-r--r--libsigsegv/src/fault-macosdarwin7-powerpc.h28
-rw-r--r--libsigsegv/src/fault-netbsd-alpha.c39
-rw-r--r--libsigsegv/src/fault-netbsd-alpha.h26
-rw-r--r--libsigsegv/src/fault-netbsd.h29
-rw-r--r--libsigsegv/src/fault-none.h17
-rw-r--r--libsigsegv/src/fault-openbsd-i386.h20
-rw-r--r--libsigsegv/src/fault-openbsd.h21
-rw-r--r--libsigsegv/src/fault-osf-alpha.h21
-rw-r--r--libsigsegv/src/fault-osf.h19
-rw-r--r--libsigsegv/src/fault-posix-ucontext.h23
-rw-r--r--libsigsegv/src/fault-posix.h21
-rw-r--r--libsigsegv/src/fault-solaris-i386.h20
-rw-r--r--libsigsegv/src/fault-solaris-sparc.h20
-rw-r--r--libsigsegv/src/fault-solaris.h18
-rw-r--r--libsigsegv/src/fault.h37
-rw-r--r--libsigsegv/src/handler-macos.c563
-rw-r--r--libsigsegv/src/handler-none.c49
-rw-r--r--libsigsegv/src/handler-unix.c542
-rw-r--r--libsigsegv/src/handler-win32.c317
-rw-r--r--libsigsegv/src/handler.c20
-rw-r--r--libsigsegv/src/leave-none.c18
-rw-r--r--libsigsegv/src/leave-nop.c23
-rw-r--r--libsigsegv/src/leave-setcontext.c38
-rw-r--r--libsigsegv/src/leave-sigaltstack.c39
-rw-r--r--libsigsegv/src/leave.c20
-rw-r--r--libsigsegv/src/leave.h18
-rw-r--r--libsigsegv/src/machfault-macos.h120
-rw-r--r--libsigsegv/src/machfault.h54
-rw-r--r--libsigsegv/src/signals-bsd.h21
-rw-r--r--libsigsegv/src/signals-hpux.h21
-rw-r--r--libsigsegv/src/signals-hurd.h21
-rw-r--r--libsigsegv/src/signals-macos.h24
-rw-r--r--libsigsegv/src/signals.h21
-rw-r--r--libsigsegv/src/sigsegv.h.in201
-rw-r--r--libsigsegv/src/sigsegv.h.msvc201
-rw-r--r--libsigsegv/src/stackvma-beos.c62
-rw-r--r--libsigsegv/src/stackvma-freebsd.c118
-rw-r--r--libsigsegv/src/stackvma-linux.c83
-rw-r--r--libsigsegv/src/stackvma-mach.c119
-rw-r--r--libsigsegv/src/stackvma-mincore.c275
-rw-r--r--libsigsegv/src/stackvma-none.c25
-rw-r--r--libsigsegv/src/stackvma-procfs.c188
-rw-r--r--libsigsegv/src/stackvma-rofile.c121
-rw-r--r--libsigsegv/src/stackvma-simple.c42
-rw-r--r--libsigsegv/src/stackvma.c20
-rw-r--r--libsigsegv/src/stackvma.h48
-rw-r--r--libsigsegv/src/version.c20
-rw-r--r--libsigsegv/tests/Makefile.am34
-rw-r--r--libsigsegv/tests/Makefile.in612
-rw-r--r--libsigsegv/tests/mmaputil.h105
-rw-r--r--libsigsegv/tests/sigsegv1.c111
-rw-r--r--libsigsegv/tests/sigsegv2.c150
-rw-r--r--libsigsegv/tests/sigsegv3.c134
-rw-r--r--libsigsegv/tests/stackoverflow1.c147
-rw-r--r--libsigsegv/tests/stackoverflow2.c198
-rwxr-xr-xltmain.sh8406
-rw-r--r--m4/ChangeLog16
-rw-r--r--m4/arch.m415
-rw-r--r--m4/gettext.m442
-rw-r--r--m4/iconv.m487
-rw-r--r--m4/inttypes.m423
-rw-r--r--m4/inttypes_h.m425
-rw-r--r--m4/lib-link.m4189
-rw-r--r--m4/libtool.m47357
-rw-r--r--m4/ltoptions.m4368
-rw-r--r--m4/ltsugar.m4123
-rw-r--r--m4/ltversion.m423
-rw-r--r--m4/lt~obsolete.m492
-rw-r--r--m4/po.m425
-rw-r--r--m4/stdint_h.m425
-rw-r--r--main.c193
-rw-r--r--missing_d/ChangeLog4
-rw-r--r--msg.c2
-rw-r--r--node.c119
-rw-r--r--pc/ChangeLog20
-rw-r--r--pc/Makefile.tst375
-rw-r--r--pc/config.h3
-rw-r--r--po/ChangeLog18
-rw-r--r--po/LINGUAS1
-rw-r--r--po/Makefile.in.in44
-rw-r--r--po/ca.gmobin34219 -> 32595 bytes
-rw-r--r--po/ca.po926
-rw-r--r--po/da.gmobin32646 -> 31077 bytes
-rw-r--r--po/da.po933
-rw-r--r--po/de.gmobin32183 -> 31188 bytes
-rw-r--r--po/de.po940
-rw-r--r--po/es.gmobin44018 -> 45992 bytes
-rw-r--r--po/es.po883
-rw-r--r--po/fr.gmobin43233 -> 41564 bytes
-rw-r--r--po/fr.po877
-rw-r--r--po/ga.gmobin42747 -> 41715 bytes
-rw-r--r--po/ga.po855
-rw-r--r--po/gawk.pot828
-rw-r--r--po/he.gmobin32702 -> 31062 bytes
-rw-r--r--po/he.po929
-rw-r--r--po/id.gmobin0 -> 44590 bytes
-rw-r--r--po/id.po1961
-rw-r--r--po/it.gmobin43085 -> 44542 bytes
-rw-r--r--po/it.po875
-rw-r--r--po/ja.gmobin41221 -> 39587 bytes
-rw-r--r--po/ja.po854
-rw-r--r--po/nl.gmobin42821 -> 43108 bytes
-rw-r--r--po/nl.po1248
-rw-r--r--po/pl.gmobin43842 -> 46656 bytes
-rw-r--r--po/pl.po1522
-rw-r--r--po/pt_BR.gmobin37976 -> 36258 bytes
-rw-r--r--po/pt_BR.po874
-rw-r--r--po/ro.gmobin33573 -> 32093 bytes
-rw-r--r--po/ro.po883
-rw-r--r--po/rw.gmobin474 -> 474 bytes
-rw-r--r--po/rw.po832
-rw-r--r--po/sv.gmobin37359 -> 41413 bytes
-rw-r--r--po/sv.po1039
-rw-r--r--po/tr.gmobin43517 -> 41831 bytes
-rw-r--r--po/tr.po856
-rw-r--r--po/vi.gmobin50901 -> 50164 bytes
-rw-r--r--po/vi.po994
-rw-r--r--po/zh_CN.gmobin40395 -> 42007 bytes
-rw-r--r--po/zh_CN.po845
-rw-r--r--posix/ChangeLog4
-rw-r--r--profile.c218
-rw-r--r--re.c12
-rw-r--r--regcomp.c177
-rw-r--r--regex.c2
-rw-r--r--regex.h133
-rw-r--r--regex_internal.c24
-rw-r--r--regex_internal.h31
-rw-r--r--regexec.c27
-rw-r--r--replace.c25
-rw-r--r--test/ChangeLog118
-rwxr-xr-xtest/Gentests2
-rw-r--r--test/Makefile.am174
-rw-r--r--test/Makefile.in479
-rw-r--r--test/Maketests197
-rw-r--r--test/badargs.ok1
-rw-r--r--test/closebad.awk7
-rw-r--r--test/closebad.ok3
-rw-r--r--test/funlen.awk69
-rw-r--r--test/funlen.in8
-rw-r--r--test/funlen.ok2
-rw-r--r--test/getlndir.awk7
-rw-r--r--test/getlndir.ok1
-rw-r--r--test/gsubtst6.awk24
-rw-r--r--test/gsubtst6.ok1
-rw-r--r--test/intformat.awk18
-rw-r--r--test/lc_num1.awk4
-rw-r--r--test/lc_num1.ok1
-rw-r--r--test/lintold.awk2
-rw-r--r--test/match3.awk46
-rw-r--r--test/match3.in4
-rw-r--r--test/match3.ok4
-rw-r--r--test/mbfw1.awk40
-rw-r--r--test/mbfw1.in4
-rw-r--r--test/mbfw1.ok4
-rw-r--r--test/mbprintf1.awk1
-rw-r--r--test/mbprintf1.in2
-rw-r--r--test/mbprintf1.ok2
-rw-r--r--test/mbprintf2.awk4
-rw-r--r--test/mbprintf2.ok2
-rw-r--r--test/mbprintf3.awk1
-rw-r--r--test/mbprintf3.in1
-rw-r--r--test/mbprintf3.ok2
-rw-r--r--test/mbstr1.awk4
-rw-r--r--test/mbstr1.ok2
-rw-r--r--test/ovrflow1.awk82
-rw-r--r--test/ovrflow1.ok1
-rw-r--r--test/paramres.awk6
-rw-r--r--test/paramres.ok2
-rw-r--r--test/printfbad2.awk2
-rw-r--r--test/printfbad2.in1
-rw-r--r--test/printfbad2.ok3
-rw-r--r--test/uparrfs.awk8
-rw-r--r--test/uparrfs.in1
-rw-r--r--test/uparrfs.ok4
-rw-r--r--unsupported/atari/ChangeLog4
-rw-r--r--unsupported/tandem/ChangeLog4
-rw-r--r--version.c2
-rw-r--r--vms/ChangeLog48
-rw-r--r--vms/descrip.mms2
-rw-r--r--vms/redirect.h1
-rw-r--r--vms/vms-conf.h17
-rw-r--r--vms/vms_misc.c24
-rw-r--r--vms/vmsbuild.com2
-rw-r--r--vms/vmstest.com2092
305 files changed, 105225 insertions, 17052 deletions
diff --git a/ABOUT-NLS b/ABOUT-NLS
index ec20977e..83bc72ec 100644
--- a/ABOUT-NLS
+++ b/ABOUT-NLS
@@ -101,8 +101,11 @@ codes, stating which languages are allowed.
As a user, if your language has been installed for this package, you
only have to set the `LANG' environment variable to the appropriate
-`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code,
-and `CC' is an ISO 3166 two-letter country code. For example, let's
+`LL_CC' combination. If you happen to have the `LC_ALL' or some other
+`LC_xxx' environment variables set, you should unset them before
+setting `LANG', otherwise the setting of `LANG' will not have the
+desired effect. Here `LL' is an ISO 639 two-letter language code, and
+`CC' is an ISO 3166 two-letter country code. For example, let's
suppose that you speak German and live in Germany. At the shell
prompt, merely execute `setenv LANG de_DE' (in `csh'),
`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
@@ -153,8 +156,7 @@ people who like their own language and write it well, and who are also
able to synergize with other translators speaking the same language.
Each translation team has its own mailing list. The up-to-date list of
teams can be found at the Free Translation Project's homepage,
-`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
-area.
+`http://translationproject.org/', in the "Teams" area.
If you'd like to volunteer to _work_ at translating messages, you
should become a member of the translating team for your own language.
@@ -168,8 +170,8 @@ message to `sv-request@li.org', having this message body:
_actively_ in translations, or at solving translational difficulties,
rather than merely lurking around. If your team does not exist yet and
you want to start one, or if you are unsure about what to do or how to
-get started, please write to `translation@iro.umontreal.ca' to reach the
-coordinator for all translator teams.
+get started, please write to `coordinator@translationproject.org' to
+reach the coordinator for all translator teams.
The English team is special. It works at improving and uniformizing
the terminology in use. Proven linguistic skills are praised more than
@@ -179,67 +181,62 @@ programming skills, here.
======================
Languages are not equally supported in all packages. The following
-matrix shows the current state of internationalization, as of October
-2006. The matrix shows, in regard of each package, for which languages
+matrix shows the current state of internationalization, as of November
+2007. The matrix shows, in regard of each package, for which languages
PO files have been submitted to translation coordination, with a
translation percentage of at least 50%.
Ready PO files af am ar az be bg bs ca cs cy da de el en en_GB eo
+----------------------------------------------------+
- GNUnet | [] |
+ Compendium | [] [] [] [] |
a2ps | [] [] [] [] [] |
aegis | () |
ant-phone | () |
anubis | [] |
ap-utils | |
aspell | [] [] [] [] [] |
- bash | [] [] [] |
- batchelor | [] |
+ bash | [] |
bfd | |
bibshelf | [] |
- binutils | [] |
+ binutils | |
bison | [] [] |
- bison-runtime | |
+ bison-runtime | [] |
bluez-pin | [] [] [] [] [] |
cflow | [] |
- clisp | [] [] |
+ clisp | [] [] [] |
console-tools | [] [] |
- coreutils | [] [] [] |
+ coreutils | [] [] [] [] |
cpio | |
cpplib | [] [] [] |
cryptonit | [] |
- darkstat | [] () [] |
- dialog | [] [] [] [] [] [] |
+ dialog | |
diffutils | [] [] [] [] [] [] |
doodle | [] |
e2fsprogs | [] [] |
enscript | [] [] [] [] |
- error | [] [] [] [] |
- fetchmail | [] [] () [] |
- fileutils | [] [] |
- findutils | [] [] [] |
+ fetchmail | [] [] () [] [] |
+ findutils | [] |
+ findutils_stable | [] [] [] |
flex | [] [] [] |
- fslint | [] |
+ fslint | |
gas | |
gawk | [] [] [] |
- gbiff | [] |
gcal | [] |
gcc | [] |
gettext-examples | [] [] [] [] [] |
gettext-runtime | [] [] [] [] [] |
gettext-tools | [] [] |
- gimp-print | [] [] [] [] |
gip | [] |
- gliv | [] |
+ gliv | [] [] |
glunarclock | [] |
gmult | [] [] |
gnubiff | () |
- gnucash | () () [] |
- gnucash-glossary | [] () |
+ gnucash | [] [] () () [] |
gnuedu | |
- gnulib | [] [] [] [] [] [] |
+ gnulib | [] |
+ gnunet | |
gnunet-gtk | |
- gnutls | |
+ gnutls | [] |
gpe-aerial | [] [] |
gpe-beam | [] [] |
gpe-calendar | |
@@ -260,40 +257,43 @@ translation percentage of at least 50%.
gpe-todo | |
gphoto2 | [] [] [] [] |
gprof | [] [] |
- gpsdrive | () () |
+ gpsdrive | |
gramadoir | [] [] |
- grep | [] [] [] [] [] [] |
- gretl | |
+ grep | [] [] |
+ gretl | () |
gsasl | |
gss | |
- gst-plugins | [] [] [] [] |
- gst-plugins-base | [] [] [] |
- gst-plugins-good | [] [] [] [] [] [] [] |
+ gst-plugins-bad | [] [] |
+ gst-plugins-base | [] [] |
+ gst-plugins-good | [] [] [] |
+ gst-plugins-ugly | [] [] |
gstreamer | [] [] [] [] [] [] [] |
gtick | () |
- gtkam | [] [] [] |
+ gtkam | [] [] [] [] |
gtkorphan | [] [] |
gtkspell | [] [] [] [] |
gutenprint | [] |
hello | [] [] [] [] [] |
- id-utils | [] [] |
- impost | |
- indent | [] [] [] |
- iso_3166 | [] [] |
+ herrie | [] |
+ hylafax | |
+ idutils | [] [] |
+ indent | [] [] [] [] |
+ iso_15924 | |
+ iso_3166 | [] [] [] [] [] [] [] [] [] [] [] |
iso_3166_2 | |
- iso_4217 | [] |
- iso_639 | [] [] |
+ iso_4217 | [] [] [] |
+ iso_639 | [] [] [] [] |
jpilot | [] |
jtag | |
jwhois | |
kbd | [] [] [] [] |
- keytouch | |
- keytouch-editor | |
- keytouch-keyboa... | |
+ keytouch | [] [] |
+ keytouch-editor | [] |
+ keytouch-keyboa... | [] |
latrine | () |
ld | [] |
leafpad | [] [] [] [] [] |
- libc | [] [] [] [] [] |
+ libc | [] [] [] [] |
libexif | [] |
libextractor | [] |
libgpewidget | [] [] [] |
@@ -302,76 +302,70 @@ translation percentage of at least 50%.
libgphoto2_port | [] [] |
libgsasl | |
libiconv | [] [] |
- libidn | [] [] |
+ libidn | [] [] [] |
lifelines | [] () |
lilypond | [] |
lingoteach | |
+ lprng | |
lynx | [] [] [] [] |
m4 | [] [] [] [] |
+ mailfromd | |
mailutils | [] |
make | [] [] |
- man-db | [] () [] [] |
+ man-db | [] [] [] |
minicom | [] [] [] |
- mysecretdiary | [] [] |
nano | [] [] [] |
- nano_1_0 | [] () [] [] |
opcodes | [] |
- parted | |
- pilot-qof | [] |
+ parted | [] [] |
+ pilot-qof | |
+ popt | [] [] [] |
psmisc | [] |
pwdutils | |
- python | |
qof | |
radius | [] |
recode | [] [] [] [] [] [] |
- rpm | [] [] |
+ rpm | [] |
screem | |
scrollkeeper | [] [] [] [] [] [] [] [] |
sed | [] [] [] |
- sh-utils | [] [] |
- shared-mime-info | [] [] [] [] |
+ shared-mime-info | [] [] [] [] () [] [] [] |
sharutils | [] [] [] [] [] [] |
shishi | |
- silky | |
skencil | [] () |
- sketch | [] () |
solfege | |
soundtracker | [] [] |
sp | [] |
- stardict | [] |
system-tools-ba... | [] [] [] [] [] [] [] [] [] |
- tar | [] |
+ tar | [] [] |
texinfo | [] [] [] |
- textutils | [] [] [] |
tin | () () |
- tp-robot | [] |
- tuxpaint | [] [] [] [] [] |
+ tuxpaint | [] [] [] [] [] [] |
unicode-han-tra... | |
unicode-transla... | |
util-linux | [] [] [] [] |
- vorbis-tools | [] [] [] [] |
+ util-linux-ng | [] [] [] [] |
+ vorbis-tools | [] |
wastesedge | () |
wdiff | [] [] [] [] |
- wget | [] [] |
- xchat | [] [] [] [] [] [] |
- xkeyboard-config | |
- xpad | [] [] |
+ wget | [] [] [] |
+ xchat | [] [] [] [] [] [] [] |
+ xkeyboard-config | [] |
+ xpad | [] [] [] |
+----------------------------------------------------+
af am ar az be bg bs ca cs cy da de el en en_GB eo
- 10 0 1 2 9 22 1 42 41 2 60 95 16 1 17 16
+ 6 0 2 1 8 26 2 40 48 2 56 88 15 1 15 18
es et eu fa fi fr ga gl gu he hi hr hu id is it
+--------------------------------------------------+
- GNUnet | |
+ Compendium | [] [] [] [] [] |
a2ps | [] [] [] () |
aegis | |
ant-phone | [] |
anubis | [] |
ap-utils | [] [] |
aspell | [] [] [] |
- bash | [] [] [] |
- batchelor | [] [] |
- bfd | [] |
+ bash | [] |
+ bfd | [] [] |
bibshelf | [] [] [] |
binutils | [] [] [] |
bison | [] [] [] [] [] [] |
@@ -384,36 +378,32 @@ translation percentage of at least 50%.
cpio | [] [] [] |
cpplib | [] [] |
cryptonit | [] |
- darkstat | [] () [] [] [] |
- dialog | [] [] [] [] [] [] [] [] |
+ dialog | [] [] [] |
diffutils | [] [] [] [] [] [] [] [] [] |
doodle | [] [] |
e2fsprogs | [] [] [] |
enscript | [] [] [] |
- error | [] [] [] [] [] |
fetchmail | [] |
- fileutils | [] [] [] [] [] [] |
- findutils | [] [] [] [] |
+ findutils | [] [] [] |
+ findutils_stable | [] [] [] [] |
flex | [] [] [] |
- fslint | [] |
+ fslint | |
gas | [] [] |
- gawk | [] [] [] [] |
- gbiff | [] |
+ gawk | [] [] [] [] () |
gcal | [] [] |
gcc | [] |
- gettext-examples | [] [] [] [] [] [] |
+ gettext-examples | [] [] [] [] [] [] [] |
gettext-runtime | [] [] [] [] [] [] |
- gettext-tools | [] [] [] |
- gimp-print | [] [] |
- gip | [] [] [] |
+ gettext-tools | [] [] [] [] |
+ gip | [] [] [] [] |
gliv | () |
glunarclock | [] [] [] |
gmult | [] [] [] |
gnubiff | () () |
gnucash | () () () |
- gnucash-glossary | [] [] |
gnuedu | [] |
- gnulib | [] [] [] [] [] [] [] [] |
+ gnulib | [] [] [] |
+ gnunet | |
gnunet-gtk | |
gnutls | |
gpe-aerial | [] [] |
@@ -435,68 +425,71 @@ translation percentage of at least 50%.
gpe-today | [] [] [] [] |
gpe-todo | [] |
gphoto2 | [] [] [] [] [] |
- gprof | [] [] [] [] |
- gpsdrive | () () [] () |
+ gprof | [] [] [] [] [] |
+ gpsdrive | [] |
gramadoir | [] [] |
- grep | [] [] [] [] [] [] [] [] [] [] [] [] |
- gretl | [] [] [] |
+ grep | [] [] [] |
+ gretl | [] [] [] () |
gsasl | [] [] |
- gss | [] |
- gst-plugins | [] [] [] |
- gst-plugins-base | [] [] |
- gst-plugins-good | [] [] [] |
+ gss | [] [] |
+ gst-plugins-bad | [] [] [] [] |
+ gst-plugins-base | [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] |
gstreamer | [] [] [] |
- gtick | [] |
+ gtick | [] [] [] |
gtkam | [] [] [] [] |
gtkorphan | [] [] |
- gtkspell | [] [] [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] |
gutenprint | [] |
hello | [] [] [] [] [] [] [] [] [] [] [] [] [] |
- id-utils | [] [] [] [] [] |
- impost | [] [] |
+ herrie | [] |
+ hylafax | |
+ idutils | [] [] [] [] [] |
indent | [] [] [] [] [] [] [] [] [] [] |
- iso_3166 | [] [] [] |
+ iso_15924 | [] |
+ iso_3166 | [] [] [] [] [] [] [] [] [] [] [] [] [] |
iso_3166_2 | [] |
- iso_4217 | [] [] [] [] |
- iso_639 | [] [] [] [] [] |
+ iso_4217 | [] [] [] [] [] [] |
+ iso_639 | [] [] [] [] [] [] |
jpilot | [] [] |
jtag | [] |
jwhois | [] [] [] [] [] |
kbd | [] [] |
- keytouch | [] |
+ keytouch | [] [] [] |
keytouch-editor | [] |
- keytouch-keyboa... | [] |
- latrine | [] [] [] |
- ld | [] [] |
+ keytouch-keyboa... | [] [] |
+ latrine | [] [] |
+ ld | [] [] [] [] |
leafpad | [] [] [] [] [] [] |
libc | [] [] [] [] [] |
libexif | [] |
libextractor | [] |
libgpewidget | [] [] [] [] [] |
- libgpg-error | |
+ libgpg-error | [] |
libgphoto2 | [] [] [] |
libgphoto2_port | [] [] |
libgsasl | [] [] |
- libiconv | [] [] |
+ libiconv | [] [] [] |
libidn | [] [] |
lifelines | () |
- lilypond | [] |
+ lilypond | [] [] [] |
lingoteach | [] [] [] |
+ lprng | |
lynx | [] [] [] |
m4 | [] [] [] [] |
+ mailfromd | |
mailutils | [] [] |
make | [] [] [] [] [] [] [] [] |
- man-db | () |
+ man-db | [] |
minicom | [] [] [] [] |
- mysecretdiary | [] [] [] |
- nano | [] [] [] [] [] [] |
- nano_1_0 | [] [] [] [] [] |
+ nano | [] [] [] [] [] [] [] |
opcodes | [] [] [] [] |
- parted | [] [] [] [] |
+ parted | [] [] [] |
pilot-qof | |
- psmisc | [] [] [] |
+ popt | [] [] [] [] |
+ psmisc | [] [] |
pwdutils | |
- python | |
qof | [] |
radius | [] [] |
recode | [] [] [] [] [] [] [] [] |
@@ -504,565 +497,539 @@ translation percentage of at least 50%.
screem | |
scrollkeeper | [] [] [] |
sed | [] [] [] [] [] |
- sh-utils | [] [] [] [] [] [] [] |
shared-mime-info | [] [] [] [] [] [] |
sharutils | [] [] [] [] [] [] [] [] |
- shishi | |
- silky | [] |
+ shishi | [] |
skencil | [] [] |
- sketch | [] [] |
solfege | [] |
soundtracker | [] [] [] |
sp | [] |
- stardict | [] |
- system-tools-ba... | [] [] [] [] [] [] [] [] |
- tar | [] [] [] [] [] [] [] |
- texinfo | [] [] |
- textutils | [] [] [] [] [] |
+ system-tools-ba... | [] [] [] [] [] [] [] [] [] |
+ tar | [] [] [] [] [] |
+ texinfo | [] [] [] |
tin | [] () |
- tp-robot | [] [] [] [] |
tuxpaint | [] [] |
unicode-han-tra... | |
unicode-transla... | [] [] |
util-linux | [] [] [] [] [] [] [] |
- vorbis-tools | [] [] |
+ util-linux-ng | [] [] [] [] [] [] [] |
+ vorbis-tools | |
wastesedge | () |
wdiff | [] [] [] [] [] [] [] [] |
wget | [] [] [] [] [] [] [] [] |
- xchat | [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] [] |
+ xchat | [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] |
xpad | [] [] [] |
+--------------------------------------------------+
es et eu fa fi fr ga gl gu he hi hr hu id is it
- 88 22 14 2 40 115 61 14 1 8 1 6 59 31 0 52
+ 85 22 14 2 48 101 61 12 2 8 2 6 53 29 1 52
- ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no
- +-------------------------------------------------+
- GNUnet | |
- a2ps | () [] [] () |
- aegis | () |
- ant-phone | [] |
- anubis | [] [] [] |
- ap-utils | [] |
- aspell | [] [] |
- bash | [] |
- batchelor | [] [] |
- bfd | |
- bibshelf | [] |
- binutils | |
- bison | [] [] [] |
- bison-runtime | [] [] [] |
- bluez-pin | [] [] [] |
- cflow | |
- clisp | [] |
- console-tools | |
- coreutils | [] |
- cpio | |
- cpplib | [] |
- cryptonit | [] |
- darkstat | [] [] |
- dialog | [] [] |
- diffutils | [] [] [] |
- doodle | |
- e2fsprogs | [] |
- enscript | [] |
- error | [] |
- fetchmail | [] [] |
- fileutils | [] [] |
- findutils | [] |
- flex | [] [] |
- fslint | [] [] |
- gas | |
- gawk | [] [] |
- gbiff | [] |
- gcal | |
- gcc | |
- gettext-examples | [] [] |
- gettext-runtime | [] [] [] |
- gettext-tools | [] [] |
- gimp-print | [] [] |
- gip | [] [] |
- gliv | [] |
- glunarclock | [] [] |
- gmult | [] [] |
- gnubiff | |
- gnucash | () () |
- gnucash-glossary | [] |
- gnuedu | |
- gnulib | [] [] [] [] |
- gnunet-gtk | |
- gnutls | |
- gpe-aerial | [] |
- gpe-beam | [] |
- gpe-calendar | [] |
- gpe-clock | [] [] [] |
- gpe-conf | [] [] |
- gpe-contacts | [] |
- gpe-edit | [] [] [] |
- gpe-filemanager | [] [] |
- gpe-go | [] [] [] |
- gpe-login | [] [] [] |
- gpe-ownerinfo | [] [] |
- gpe-package | [] [] |
- gpe-sketchbook | [] [] |
- gpe-su | [] [] [] |
- gpe-taskmanager | [] [] [] [] |
- gpe-timesheet | [] |
- gpe-today | [] [] |
- gpe-todo | [] |
- gphoto2 | [] [] |
- gprof | |
- gpsdrive | () () () |
- gramadoir | () |
- grep | [] [] [] [] |
- gretl | |
- gsasl | [] |
- gss | |
- gst-plugins | [] |
- gst-plugins-base | |
- gst-plugins-good | [] |
- gstreamer | [] |
- gtick | |
- gtkam | [] |
- gtkorphan | [] |
- gtkspell | [] [] |
- gutenprint | |
- hello | [] [] [] [] [] [] |
- id-utils | [] |
- impost | |
- indent | [] [] |
- iso_3166 | [] |
- iso_3166_2 | [] |
- iso_4217 | [] [] [] |
- iso_639 | [] [] |
- jpilot | () () () |
- jtag | |
- jwhois | [] |
- kbd | [] |
- keytouch | [] |
- keytouch-editor | |
- keytouch-keyboa... | |
- latrine | [] |
- ld | |
- leafpad | [] [] |
- libc | [] [] [] [] [] |
- libexif | |
- libextractor | |
- libgpewidget | [] |
- libgpg-error | |
- libgphoto2 | [] |
- libgphoto2_port | [] |
- libgsasl | [] |
- libiconv | |
- libidn | [] [] |
- lifelines | [] |
- lilypond | |
- lingoteach | [] |
- lynx | [] [] |
- m4 | [] [] |
- mailutils | |
- make | [] [] [] |
- man-db | () |
- minicom | [] |
- mysecretdiary | [] |
- nano | [] [] [] |
- nano_1_0 | [] [] [] |
- opcodes | [] |
- parted | [] [] |
- pilot-qof | |
- psmisc | [] [] [] |
- pwdutils | |
- python | |
- qof | |
- radius | |
- recode | [] |
- rpm | [] [] |
- screem | [] |
- scrollkeeper | [] [] [] [] |
- sed | [] [] |
- sh-utils | [] [] |
- shared-mime-info | [] [] [] [] [] |
- sharutils | [] [] |
- shishi | |
- silky | [] |
- skencil | |
- sketch | |
- solfege | |
- soundtracker | |
- sp | () |
- stardict | [] [] |
- system-tools-ba... | [] [] [] [] |
- tar | [] [] [] |
- texinfo | [] [] [] |
- textutils | [] [] [] |
- tin | |
- tp-robot | [] |
- tuxpaint | [] |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux | [] [] |
- vorbis-tools | [] |
- wastesedge | [] |
- wdiff | [] [] |
- wget | [] [] |
- xchat | [] [] [] [] |
- xkeyboard-config | [] |
- xpad | [] [] [] |
- +-------------------------------------------------+
- ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no
- 52 24 2 2 1 3 0 2 3 21 0 15 1 97 5 1
+ ja ka ko ku ky lg lt lv mk mn ms mt nb ne nl nn
+ +--------------------------------------------------+
+ Compendium | [] |
+ a2ps | () [] [] |
+ aegis | () |
+ ant-phone | [] |
+ anubis | [] [] [] |
+ ap-utils | [] |
+ aspell | [] [] |
+ bash | [] |
+ bfd | |
+ bibshelf | [] |
+ binutils | |
+ bison | [] [] [] |
+ bison-runtime | [] [] [] |
+ bluez-pin | [] [] [] |
+ cflow | |
+ clisp | [] |
+ console-tools | |
+ coreutils | [] |
+ cpio | [] |
+ cpplib | [] |
+ cryptonit | [] |
+ dialog | [] [] |
+ diffutils | [] [] [] |
+ doodle | |
+ e2fsprogs | [] |
+ enscript | [] |
+ fetchmail | [] [] |
+ findutils | [] |
+ findutils_stable | [] |
+ flex | [] [] |
+ fslint | |
+ gas | |
+ gawk | [] [] |
+ gcal | |
+ gcc | |
+ gettext-examples | [] [] [] |
+ gettext-runtime | [] [] [] |
+ gettext-tools | [] [] |
+ gip | [] [] |
+ gliv | [] |
+ glunarclock | [] [] |
+ gmult | [] [] [] |
+ gnubiff | |
+ gnucash | () () () |
+ gnuedu | |
+ gnulib | [] [] |
+ gnunet | |
+ gnunet-gtk | |
+ gnutls | [] |
+ gpe-aerial | [] |
+ gpe-beam | [] |
+ gpe-calendar | [] |
+ gpe-clock | [] [] [] |
+ gpe-conf | [] [] [] |
+ gpe-contacts | [] |
+ gpe-edit | [] [] [] |
+ gpe-filemanager | [] [] |
+ gpe-go | [] [] [] |
+ gpe-login | [] [] [] |
+ gpe-ownerinfo | [] [] |
+ gpe-package | [] [] |
+ gpe-sketchbook | [] [] |
+ gpe-su | [] [] [] |
+ gpe-taskmanager | [] [] [] [] |
+ gpe-timesheet | [] |
+ gpe-today | [] [] |
+ gpe-todo | [] |
+ gphoto2 | [] [] |
+ gprof | [] |
+ gpsdrive | [] |
+ gramadoir | () |
+ grep | [] [] |
+ gretl | |
+ gsasl | [] |
+ gss | |
+ gst-plugins-bad | [] |
+ gst-plugins-base | [] |
+ gst-plugins-good | [] |
+ gst-plugins-ugly | [] |
+ gstreamer | [] |
+ gtick | [] |
+ gtkam | [] [] |
+ gtkorphan | [] |
+ gtkspell | [] [] |
+ gutenprint | [] |
+ hello | [] [] [] [] [] [] [] |
+ herrie | [] |
+ hylafax | |
+ idutils | [] |
+ indent | [] [] |
+ iso_15924 | [] |
+ iso_3166 | [] [] [] [] [] [] [] [] |
+ iso_3166_2 | [] |
+ iso_4217 | [] [] [] |
+ iso_639 | [] [] [] [] |
+ jpilot | () () |
+ jtag | |
+ jwhois | [] |
+ kbd | [] |
+ keytouch | [] |
+ keytouch-editor | [] |
+ keytouch-keyboa... | |
+ latrine | [] |
+ ld | |
+ leafpad | [] [] |
+ libc | [] [] [] |
+ libexif | |
+ libextractor | |
+ libgpewidget | [] |
+ libgpg-error | |
+ libgphoto2 | [] |
+ libgphoto2_port | [] |
+ libgsasl | [] |
+ libiconv | [] |
+ libidn | [] [] |
+ lifelines | [] |
+ lilypond | [] |
+ lingoteach | [] |
+ lprng | |
+ lynx | [] [] |
+ m4 | [] [] |
+ mailfromd | |
+ mailutils | |
+ make | [] [] [] |
+ man-db | |
+ minicom | [] |
+ nano | [] [] [] |
+ opcodes | [] |
+ parted | [] [] |
+ pilot-qof | |
+ popt | [] [] [] |
+ psmisc | [] [] [] |
+ pwdutils | |
+ qof | |
+ radius | |
+ recode | [] |
+ rpm | [] [] |
+ screem | [] |
+ scrollkeeper | [] [] [] [] |
+ sed | [] [] |
+ shared-mime-info | [] [] [] [] [] [] [] |
+ sharutils | [] [] |
+ shishi | |
+ skencil | |
+ solfege | () () |
+ soundtracker | |
+ sp | () |
+ system-tools-ba... | [] [] [] [] |
+ tar | [] [] [] |
+ texinfo | [] [] |
+ tin | |
+ tuxpaint | () [] [] |
+ unicode-han-tra... | |
+ unicode-transla... | |
+ util-linux | [] [] |
+ util-linux-ng | [] [] |
+ vorbis-tools | |
+ wastesedge | [] |
+ wdiff | [] [] |
+ wget | [] [] |
+ xchat | [] [] [] [] |
+ xkeyboard-config | [] [] [] |
+ xpad | [] [] [] |
+ +--------------------------------------------------+
+ ja ka ko ku ky lg lt lv mk mn ms mt nb ne nl nn
+ 51 2 25 3 2 0 6 0 2 2 20 0 11 1 103 6
- nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
- +------------------------------------------------------+
- GNUnet | |
- a2ps | () [] [] [] [] [] [] |
- aegis | () () |
- ant-phone | [] [] |
- anubis | [] [] [] |
- ap-utils | () |
- aspell | [] [] |
- bash | [] [] [] |
- batchelor | [] [] |
- bfd | |
- bibshelf | [] |
- binutils | [] [] |
- bison | [] [] [] [] [] |
- bison-runtime | [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] [] [] [] |
- cflow | [] |
- clisp | [] |
- console-tools | [] |
- coreutils | [] [] [] [] |
- cpio | [] [] [] |
- cpplib | [] |
- cryptonit | [] [] |
- darkstat | [] [] [] [] [] [] |
- dialog | [] [] [] [] [] [] [] [] [] |
- diffutils | [] [] [] [] [] [] |
- doodle | [] [] |
- e2fsprogs | [] [] |
- enscript | [] [] [] [] [] |
- error | [] [] [] [] |
- fetchmail | [] [] [] |
- fileutils | [] [] [] [] [] |
- findutils | [] [] [] [] [] [] |
- flex | [] [] [] [] [] |
- fslint | [] [] [] [] |
- gas | |
- gawk | [] [] [] [] |
- gbiff | [] |
- gcal | [] |
- gcc | [] |
- gettext-examples | [] [] [] [] [] [] [] [] |
- gettext-runtime | [] [] [] [] [] [] [] [] |
- gettext-tools | [] [] [] [] [] [] [] |
- gimp-print | [] [] |
- gip | [] [] [] [] |
- gliv | [] [] [] [] |
- glunarclock | [] [] [] [] [] [] |
- gmult | [] [] [] [] |
- gnubiff | () |
- gnucash | () [] |
- gnucash-glossary | [] [] [] |
- gnuedu | |
- gnulib | [] [] [] [] [] |
- gnunet-gtk | [] |
- gnutls | [] [] |
- gpe-aerial | [] [] [] [] [] [] [] |
- gpe-beam | [] [] [] [] [] [] [] |
- gpe-calendar | [] |
- gpe-clock | [] [] [] [] [] [] [] [] |
- gpe-conf | [] [] [] [] [] [] [] |
- gpe-contacts | [] [] [] [] [] |
- gpe-edit | [] [] [] [] [] [] [] [] |
- gpe-filemanager | [] [] |
- gpe-go | [] [] [] [] [] [] |
- gpe-login | [] [] [] [] [] [] [] [] |
- gpe-ownerinfo | [] [] [] [] [] [] [] [] |
- gpe-package | [] [] |
- gpe-sketchbook | [] [] [] [] [] [] [] [] |
- gpe-su | [] [] [] [] [] [] [] [] |
- gpe-taskmanager | [] [] [] [] [] [] [] [] |
- gpe-timesheet | [] [] [] [] [] [] [] [] |
- gpe-today | [] [] [] [] [] [] [] [] |
- gpe-todo | [] [] [] [] |
- gphoto2 | [] [] [] [] [] |
- gprof | [] [] [] |
- gpsdrive | [] [] [] |
- gramadoir | [] [] |
- grep | [] [] [] [] [] [] [] [] |
- gretl | [] |
- gsasl | [] [] [] |
- gss | [] [] [] |
- gst-plugins | [] [] [] [] |
- gst-plugins-base | [] |
- gst-plugins-good | [] [] [] [] |
- gstreamer | [] [] [] |
- gtick | [] |
- gtkam | [] [] [] [] |
- gtkorphan | [] |
- gtkspell | [] [] [] [] [] [] [] [] |
- gutenprint | [] |
- hello | [] [] [] [] [] [] [] [] |
- id-utils | [] [] [] [] |
- impost | [] |
- indent | [] [] [] [] [] [] |
- iso_3166 | [] [] [] [] [] [] |
- iso_3166_2 | |
- iso_4217 | [] [] [] [] |
- iso_639 | [] [] [] [] |
- jpilot | |
- jtag | [] |
- jwhois | [] [] [] [] |
- kbd | [] [] [] |
- keytouch | [] |
- keytouch-editor | [] |
- keytouch-keyboa... | [] |
- latrine | [] [] |
- ld | [] |
- leafpad | [] [] [] [] [] [] |
- libc | [] [] [] [] [] |
- libexif | [] |
- libextractor | [] [] |
- libgpewidget | [] [] [] [] [] [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] |
- libgphoto2_port | [] [] [] |
- libgsasl | [] [] [] [] |
- libiconv | [] [] |
- libidn | [] [] () |
- lifelines | [] [] |
- lilypond | |
- lingoteach | [] |
- lynx | [] [] [] |
- m4 | [] [] [] [] [] |
- mailutils | [] [] [] [] |
- make | [] [] [] [] |
- man-db | [] [] |
- minicom | [] [] [] [] [] |
- mysecretdiary | [] [] [] [] |
- nano | [] [] [] |
- nano_1_0 | [] [] [] [] |
- opcodes | [] [] |
- parted | [] |
- pilot-qof | [] |
- psmisc | [] [] |
- pwdutils | [] [] |
- python | |
- qof | [] [] |
- radius | [] [] |
- recode | [] [] [] [] [] [] [] |
- rpm | [] [] [] [] |
- screem | |
- scrollkeeper | [] [] [] [] [] [] [] |
- sed | [] [] [] [] [] [] [] [] [] |
- sh-utils | [] [] [] |
- shared-mime-info | [] [] [] [] [] |
- sharutils | [] [] [] [] |
- shishi | [] |
- silky | [] |
- skencil | [] [] [] |
- sketch | [] [] [] |
- solfege | [] |
- soundtracker | [] [] |
- sp | |
- stardict | [] [] [] |
- system-tools-ba... | [] [] [] [] [] [] [] [] [] |
- tar | [] [] [] [] [] |
- texinfo | [] [] [] [] |
- textutils | [] [] [] |
- tin | () |
- tp-robot | [] |
- tuxpaint | [] [] [] [] [] |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux | [] [] [] [] |
- vorbis-tools | [] [] |
- wastesedge | |
- wdiff | [] [] [] [] [] [] |
- wget | [] [] [] [] |
- xchat | [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] |
- xpad | [] [] [] |
- +------------------------------------------------------+
- nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
- 0 2 3 58 30 54 5 73 72 4 40 46 11 50 128 2
+ or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
+ +--------------------------------------------------+
+ Compendium | [] [] [] [] [] |
+ a2ps | () [] [] [] [] [] [] |
+ aegis | () () |
+ ant-phone | [] [] |
+ anubis | [] [] [] |
+ ap-utils | () |
+ aspell | [] [] [] |
+ bash | [] [] |
+ bfd | |
+ bibshelf | [] |
+ binutils | [] [] |
+ bison | [] [] [] [] [] |
+ bison-runtime | [] [] [] [] [] |
+ bluez-pin | [] [] [] [] [] [] [] [] [] |
+ cflow | [] |
+ clisp | [] |
+ console-tools | [] |
+ coreutils | [] [] [] [] |
+ cpio | [] [] [] |
+ cpplib | [] |
+ cryptonit | [] [] |
+ dialog | [] |
+ diffutils | [] [] [] [] [] [] |
+ doodle | [] [] |
+ e2fsprogs | [] [] |
+ enscript | [] [] [] [] [] |
+ fetchmail | [] [] [] |
+ findutils | [] [] [] |
+ findutils_stable | [] [] [] [] [] [] |
+ flex | [] [] [] [] [] |
+ fslint | [] |
+ gas | |
+ gawk | [] [] [] [] |
+ gcal | [] |
+ gcc | [] [] |
+ gettext-examples | [] [] [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] [] [] [] |
+ gettext-tools | [] [] [] [] [] [] [] |
+ gip | [] [] [] [] |
+ gliv | [] [] [] [] [] [] |
+ glunarclock | [] [] [] [] [] [] |
+ gmult | [] [] [] [] |
+ gnubiff | () [] |
+ gnucash | () [] |
+ gnuedu | |
+ gnulib | [] [] [] |
+ gnunet | |
+ gnunet-gtk | [] |
+ gnutls | [] [] |
+ gpe-aerial | [] [] [] [] [] [] [] |
+ gpe-beam | [] [] [] [] [] [] [] |
+ gpe-calendar | [] [] [] [] |
+ gpe-clock | [] [] [] [] [] [] [] [] |
+ gpe-conf | [] [] [] [] [] [] [] |
+ gpe-contacts | [] [] [] [] [] |
+ gpe-edit | [] [] [] [] [] [] [] [] [] |
+ gpe-filemanager | [] [] |
+ gpe-go | [] [] [] [] [] [] [] [] |
+ gpe-login | [] [] [] [] [] [] [] [] |
+ gpe-ownerinfo | [] [] [] [] [] [] [] [] |
+ gpe-package | [] [] |
+ gpe-sketchbook | [] [] [] [] [] [] [] [] |
+ gpe-su | [] [] [] [] [] [] [] [] |
+ gpe-taskmanager | [] [] [] [] [] [] [] [] |
+ gpe-timesheet | [] [] [] [] [] [] [] [] |
+ gpe-today | [] [] [] [] [] [] [] [] |
+ gpe-todo | [] [] [] [] |
+ gphoto2 | [] [] [] [] [] [] |
+ gprof | [] [] [] |
+ gpsdrive | [] [] |
+ gramadoir | [] [] |
+ grep | [] [] [] [] |
+ gretl | [] [] [] |
+ gsasl | [] [] [] |
+ gss | [] [] [] [] |
+ gst-plugins-bad | [] [] [] |
+ gst-plugins-base | [] [] |
+ gst-plugins-good | [] [] |
+ gst-plugins-ugly | [] [] [] |
+ gstreamer | [] [] [] [] |
+ gtick | [] |
+ gtkam | [] [] [] [] [] |
+ gtkorphan | [] |
+ gtkspell | [] [] [] [] [] [] [] [] |
+ gutenprint | [] |
+ hello | [] [] [] [] [] [] [] [] |
+ herrie | [] [] [] |
+ hylafax | |
+ idutils | [] [] [] [] [] |
+ indent | [] [] [] [] [] [] [] |
+ iso_15924 | |
+ iso_3166 | [] [] [] [] [] [] [] [] [] [] [] [] [] |
+ iso_3166_2 | |
+ iso_4217 | [] [] [] [] [] [] [] |
+ iso_639 | [] [] [] [] [] [] [] |
+ jpilot | |
+ jtag | [] |
+ jwhois | [] [] [] [] |
+ kbd | [] [] [] |
+ keytouch | [] |
+ keytouch-editor | [] |
+ keytouch-keyboa... | [] |
+ latrine | |
+ ld | [] |
+ leafpad | [] [] [] [] [] [] |
+ libc | [] [] [] [] |
+ libexif | [] [] |
+ libextractor | [] [] |
+ libgpewidget | [] [] [] [] [] [] [] [] |
+ libgpg-error | [] [] [] |
+ libgphoto2 | [] |
+ libgphoto2_port | [] [] [] |
+ libgsasl | [] [] [] [] |
+ libiconv | [] [] [] |
+ libidn | [] [] () |
+ lifelines | [] [] |
+ lilypond | |
+ lingoteach | [] |
+ lprng | [] |
+ lynx | [] [] [] |
+ m4 | [] [] [] [] [] |
+ mailfromd | [] |
+ mailutils | [] [] [] |
+ make | [] [] [] [] |
+ man-db | [] [] [] [] |
+ minicom | [] [] [] [] [] |
+ nano | [] [] [] [] |
+ opcodes | [] [] |
+ parted | [] |
+ pilot-qof | |
+ popt | [] [] [] [] |
+ psmisc | [] [] |
+ pwdutils | [] [] |
+ qof | [] [] |
+ radius | [] [] |
+ recode | [] [] [] [] [] [] [] |
+ rpm | [] [] [] [] |
+ screem | |
+ scrollkeeper | [] [] [] [] [] [] [] |
+ sed | [] [] [] [] [] [] [] [] [] |
+ shared-mime-info | [] [] [] [] [] [] |
+ sharutils | [] [] [] [] |
+ shishi | [] |
+ skencil | [] [] [] |
+ solfege | [] |
+ soundtracker | [] [] |
+ sp | |
+ system-tools-ba... | [] [] [] [] [] [] [] [] [] |
+ tar | [] [] [] [] |
+ texinfo | [] [] [] [] |
+ tin | () |
+ tuxpaint | [] [] [] [] [] [] |
+ unicode-han-tra... | |
+ unicode-transla... | |
+ util-linux | [] [] [] [] |
+ util-linux-ng | [] [] [] [] |
+ vorbis-tools | [] |
+ wastesedge | |
+ wdiff | [] [] [] [] [] [] [] |
+ wget | [] [] [] [] |
+ xchat | [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] |
+ xpad | [] [] [] |
+ +--------------------------------------------------+
+ or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
+ 0 5 77 31 53 4 58 72 3 45 46 9 45 122 3
tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu
+---------------------------------------------------+
- GNUnet | [] | 2
+ Compendium | [] [] [] [] | 19
a2ps | [] [] [] | 19
- aegis | | 0
+ aegis | [] | 1
ant-phone | [] [] | 6
anubis | [] [] [] | 11
ap-utils | () [] | 4
- aspell | [] [] [] | 15
- bash | [] | 11
- batchelor | [] [] | 9
- bfd | | 1
+ aspell | [] [] [] | 16
+ bash | [] | 6
+ bfd | | 2
bibshelf | [] | 7
- binutils | [] [] [] | 9
- bison | [] [] [] | 19
- bison-runtime | [] [] [] | 15
+ binutils | [] [] [] [] | 9
+ bison | [] [] [] [] | 20
+ bison-runtime | [] [] [] [] | 18
bluez-pin | [] [] [] [] [] [] | 28
cflow | [] [] | 5
- clisp | | 6
+ clisp | | 9
console-tools | [] [] | 5
- coreutils | [] [] | 16
- cpio | [] [] [] | 9
- cpplib | [] [] [] [] | 11
- cryptonit | | 5
- darkstat | [] () () | 15
- dialog | [] [] [] [] [] | 30
- diffutils | [] [] [] [] | 28
+ coreutils | [] [] [] | 18
+ cpio | [] [] [] [] | 11
+ cpplib | [] [] [] [] [] | 12
+ cryptonit | [] | 6
+ dialog | [] [] [] | 9
+ diffutils | [] [] [] [] [] | 29
doodle | [] | 6
e2fsprogs | [] [] | 10
enscript | [] [] [] | 16
- error | [] [] [] [] | 18
fetchmail | [] [] | 12
- fileutils | [] [] [] | 18
- findutils | [] [] [] | 17
+ findutils | [] [] [] | 11
+ findutils_stable | [] [] [] [] | 18
flex | [] [] | 15
- fslint | [] | 9
+ fslint | [] | 2
gas | [] | 3
- gawk | [] [] | 15
- gbiff | [] | 5
+ gawk | [] [] [] | 16
gcal | [] | 5
- gcc | [] [] [] | 6
- gettext-examples | [] [] [] [] [] [] | 27
+ gcc | [] [] [] | 7
+ gettext-examples | [] [] [] [] [] [] | 29
gettext-runtime | [] [] [] [] [] [] | 28
- gettext-tools | [] [] [] [] [] | 19
- gimp-print | [] [] | 12
- gip | [] [] | 12
- gliv | [] [] | 8
+ gettext-tools | [] [] [] [] [] | 20
+ gip | [] [] | 13
+ gliv | [] [] | 11
glunarclock | [] [] [] | 15
- gmult | [] [] [] [] | 15
- gnubiff | [] | 1
- gnucash | () | 2
- gnucash-glossary | [] [] | 9
+ gmult | [] [] [] [] | 16
+ gnubiff | [] | 2
+ gnucash | () [] | 5
gnuedu | [] | 2
- gnulib | [] [] [] [] [] | 28
- gnunet-gtk | | 1
- gnutls | | 2
+ gnulib | [] | 10
+ gnunet | | 0
+ gnunet-gtk | [] [] | 3
+ gnutls | | 4
gpe-aerial | [] [] | 14
gpe-beam | [] [] | 14
- gpe-calendar | [] | 3
+ gpe-calendar | [] [] | 7
gpe-clock | [] [] [] [] | 21
- gpe-conf | [] [] | 14
+ gpe-conf | [] [] [] | 16
gpe-contacts | [] [] | 10
- gpe-edit | [] [] [] [] | 20
- gpe-filemanager | [] | 6
- gpe-go | [] [] | 15
+ gpe-edit | [] [] [] [] [] | 22
+ gpe-filemanager | [] [] | 7
+ gpe-go | [] [] [] [] | 19
gpe-login | [] [] [] [] [] | 21
gpe-ownerinfo | [] [] [] [] | 21
gpe-package | [] | 6
gpe-sketchbook | [] [] | 16
- gpe-su | [] [] [] | 20
- gpe-taskmanager | [] [] [] | 20
+ gpe-su | [] [] [] [] | 21
+ gpe-taskmanager | [] [] [] [] | 21
gpe-timesheet | [] [] [] [] | 18
gpe-today | [] [] [] [] [] | 21
- gpe-todo | [] | 7
- gphoto2 | [] [] [] [] | 20
- gprof | [] [] | 11
- gpsdrive | | 4
+ gpe-todo | [] [] | 8
+ gphoto2 | [] [] [] [] | 21
+ gprof | [] [] | 13
+ gpsdrive | [] | 5
gramadoir | [] | 7
- grep | [] [] [] [] | 34
- gretl | | 4
- gsasl | [] [] | 8
- gss | [] | 5
- gst-plugins | [] [] [] | 15
- gst-plugins-base | [] [] [] | 9
- gst-plugins-good | [] [] [] [] [] | 20
- gstreamer | [] [] [] | 17
- gtick | [] | 3
- gtkam | [] | 13
+ grep | [] | 12
+ gretl | | 6
+ gsasl | [] [] [] | 9
+ gss | [] | 7
+ gst-plugins-bad | [] [] [] | 13
+ gst-plugins-base | [] [] | 11
+ gst-plugins-good | [] [] [] [] [] | 16
+ gst-plugins-ugly | [] [] [] | 13
+ gstreamer | [] [] [] | 18
+ gtick | [] [] | 7
+ gtkam | [] | 16
gtkorphan | [] | 7
- gtkspell | [] [] [] [] [] [] | 26
- gutenprint | | 3
- hello | [] [] [] [] [] | 37
- id-utils | [] [] | 14
- impost | [] | 4
- indent | [] [] [] [] | 25
- iso_3166 | [] [] [] [] | 16
- iso_3166_2 | | 2
- iso_4217 | [] [] | 14
- iso_639 | [] | 14
+ gtkspell | [] [] [] [] [] [] | 27
+ gutenprint | | 4
+ hello | [] [] [] [] [] | 38
+ herrie | [] [] | 8
+ hylafax | | 0
+ idutils | [] [] | 15
+ indent | [] [] [] [] [] | 28
+ iso_15924 | [] [] | 4
+ iso_3166 | [] [] [] [] [] [] [] [] [] | 54
+ iso_3166_2 | [] [] | 4
+ iso_4217 | [] [] [] [] [] | 24
+ iso_639 | [] [] [] [] [] | 26
jpilot | [] [] [] [] | 7
jtag | [] | 3
jwhois | [] [] [] | 13
- kbd | [] [] | 12
- keytouch | [] | 4
- keytouch-editor | | 2
- keytouch-keyboa... | [] | 3
- latrine | [] [] | 8
- ld | [] [] [] [] | 8
- leafpad | [] [] [] [] | 23
- libc | [] [] [] | 23
- libexif | [] | 4
+ kbd | [] [] [] | 13
+ keytouch | [] | 8
+ keytouch-editor | [] | 5
+ keytouch-keyboa... | [] | 5
+ latrine | [] [] | 5
+ ld | [] [] [] [] | 10
+ leafpad | [] [] [] [] [] | 24
+ libc | [] [] [] | 19
+ libexif | [] | 5
libextractor | [] | 5
- libgpewidget | [] [] [] | 19
- libgpg-error | [] | 4
- libgphoto2 | [] | 8
+ libgpewidget | [] [] [] | 20
+ libgpg-error | [] | 6
+ libgphoto2 | [] [] | 9
libgphoto2_port | [] [] [] | 11
libgsasl | [] | 8
- libiconv | [] | 7
- libidn | [] [] | 10
+ libiconv | [] [] | 11
+ libidn | [] [] | 11
lifelines | | 4
- lilypond | | 2
+ lilypond | [] | 6
lingoteach | [] | 6
+ lprng | [] | 2
lynx | [] [] [] | 15
m4 | [] [] [] | 18
- mailutils | [] | 8
+ mailfromd | [] [] | 3
+ mailutils | [] [] | 8
make | [] [] [] | 20
- man-db | [] | 6
+ man-db | [] | 9
minicom | [] | 14
- mysecretdiary | [] [] | 12
- nano | [] [] | 17
- nano_1_0 | [] [] [] | 18
+ nano | [] [] [] | 20
opcodes | [] [] | 10
- parted | [] [] [] | 10
- pilot-qof | [] | 3
- psmisc | [] | 10
+ parted | [] [] [] | 11
+ pilot-qof | [] | 1
+ popt | [] [] [] [] | 18
+ psmisc | [] [] | 10
pwdutils | [] | 3
- python | | 0
qof | [] | 4
- radius | [] | 6
+ radius | [] [] | 7
recode | [] [] [] | 25
- rpm | [] [] [] [] | 14
+ rpm | [] [] [] [] | 13
screem | [] | 2
scrollkeeper | [] [] [] [] | 26
- sed | [] [] [] | 22
- sh-utils | [] | 15
- shared-mime-info | [] [] [] [] | 24
+ sed | [] [] [] [] | 23
+ shared-mime-info | [] [] [] | 29
sharutils | [] [] [] | 23
- shishi | | 1
- silky | [] | 4
+ shishi | [] | 3
skencil | [] | 7
- sketch | | 6
- solfege | | 2
+ solfege | [] | 3
soundtracker | [] [] | 9
sp | [] | 3
- stardict | [] [] [] [] | 11
- system-tools-ba... | [] [] [] [] [] [] [] | 37
- tar | [] [] [] [] | 20
+ system-tools-ba... | [] [] [] [] [] [] [] | 38
+ tar | [] [] [] | 17
texinfo | [] [] [] | 15
- textutils | [] [] [] | 17
tin | | 1
- tp-robot | [] [] [] | 10
- tuxpaint | [] [] [] | 16
+ tuxpaint | [] [] [] | 19
unicode-han-tra... | | 0
unicode-transla... | | 2
util-linux | [] [] [] | 20
- vorbis-tools | [] [] | 11
+ util-linux-ng | [] [] [] | 20
+ vorbis-tools | [] [] | 4
wastesedge | | 1
- wdiff | [] [] | 22
- wget | [] [] [] | 19
+ wdiff | [] [] | 23
+ wget | [] [] [] | 20
xchat | [] [] [] [] | 29
- xkeyboard-config | [] [] [] [] | 11
- xpad | [] [] [] | 14
+ xkeyboard-config | [] [] [] | 14
+ xpad | [] [] [] | 15
+---------------------------------------------------+
- 77 teams tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu
- 170 domains 0 1 1 77 39 0 136 10 1 48 5 54 0 2028
+ 76 teams tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu
+ 163 domains 0 3 1 74 51 0 143 21 1 57 7 45 0 2036
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
@@ -1075,10 +1042,10 @@ distributed as such by its maintainer. There might be an observable
lag between the mere existence a PO file and its wide availability in a
distribution.
- If October 2006 seems to be old, you may fetch a more recent copy of
-this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
-matrix with full percentage details can be found at
-`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
+ If November 2007 seems to be old, you may fetch a more recent copy
+of this `ABOUT-NLS' file on most GNU archive sites. The most
+up-to-date matrix with full percentage details can be found at
+`http://translationproject.org/extra/matrix.html'.
1.6 Using `gettext' in new packages
===================================
@@ -1096,6 +1063,6 @@ the use of `gettext' the only thing missing are the translations. The
Free Translation Project is also available for packages which are not
developed inside the GNU project. Therefore the information given above
applies also for every other Free Software Project. Contact
-`translation@iro.umontreal.ca' to make the `.pot' files available to
-the translation teams.
+`coordinator@translationproject.org' to make the `.pot' files available
+to the translation teams.
diff --git a/ChangeLog b/ChangeLog
index a9701918..14285291 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,489 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Fri Jul 17 08:35:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.c: Rebuilt with current Bison (2.4.1).
+
+Thu Jul 9 22:55:17 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * (NEWS README array.c awk.h awkgram.y builtin.c configure
+ configure.ac custom.h dfa.c ext.c field.c floatcomp.c io.c
+ main.c node.c profile.c re.c replace.c): Update copyrights
+ and other prep for a release.
+
+Thu Jul 9 22:20:04 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (init_locale): New function to make a deep copy of the
+ struct lconv. Thanks to KIMURA Koichi <kimura.koichi@canon.co.jp>
+ for the info.
+ * eval.c (r_tree_eval): Further improve Node_assign_concat code to
+ temporarily to keep reference counts correct and to get the
+ desired behavior.
+
+Mon Jul 6 20:29:12 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * floatmagic.h: Remove @ signs copied from Texinfo.
+ It would help if I were more awake.
+
+Sat Jul 4 21:55:18 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (base_sources): Add floatmagic.h so it'll
+ go into the tar ball.
+
+Fri Jul 3 13:47:36 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (is_scalar): Add Node_func_call to list.
+ (pp_concat): Make logic smarter for tree created by Node_assign_concat.
+
+Fri Jul 3 13:01:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (optimize_concat): New function that applies
+ Node_assign_concat more generally.
+ * eval.c (r_tree_eval): Improve Node_assign_concat code to temporarily
+ increase the stref on `l' to avoid side effects during evaluation of
+ `r'. This makes test/nasty.awk work. Ouch.
+
+Tue Jun 30 22:10:37 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * floatmagic.h: New file.
+ * builtin.c (format_tree): Use functions defined in floatmagic.h.
+
+Tue Jun 30 21:57:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac, Makefile.am: Add new --disable-libsigsegv command line
+ option to configure.
+ (LIBSIGSEGV, SEGVINCLUDE, SEGVSUBDIR): New variables that will be empty
+ if libsigsegv is disabled so nothing will happen, and that will have the
+ right values otherwise. They are then substituted into the Makefile.
+
+Wed Jun 24 23:00:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bootstrap.h: Revised. Now works again. We think. (CVS-only file)
+
+Wed Jun 24 21:57:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h: Move z/OS EXIT_FAILURE definition from here to ...
+ * awk.h: Here. Define at end after regular definition.
+
+Thu Jun 18 06:17:38 2009 Scott Deifik <scottd@amgen.com>
+
+ * awk.h: Don't define HAVE_SIGSEGV_H for DJGPP.
+
+Thu Jun 18 05:38:42 2009 Dave Pitts <dpitts@cozx.com>
+
+ * custom.h: Changes needed for z/OS.
+
+Wed Jun 10 08:22:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (parse_escape): Add a lint warning if \x.. has more than two
+ hex digits.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
+
+Mon Jun 8 22:13:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Autoconf 2.63, Automake 1.11, Libtool 2.2.6a
+
+ * ltmain.sh: New file.
+ * configure.ac: Changes to keep infrastructure tools happy.
+ * alocal.m4, configure: Regenerated.
+ * Makefile.in, */Makefile.in: Regenerated.
+
+Mon Jun 8 07:43:25 2009 John DuBois <spcecdt@armory.com>
+
+ * builtin.c (mbc_byte_count, mbc_char_count): Make sure all declarations
+ come before executable code, for older compilers.
+ * dfa.c (insert): Ditto.
+ * io.c (devoopen): Ditto.
+
+Thu May 21 21:11:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add simple constant folding.
+
+ * awk.h (do_optimize): New declaration.
+ (calc_exp): Add declaration.
+ * eval.c (calc_exp): Make non-static.
+ * main.c (do_optimize): New variable.
+ (opttab): Add new entry for --optimize.
+ (main): Add 'O' to optlist and code for argument parsing.
+ (usage): Update for new option.
+ * awkgram.y (Node_concat, Node_exp, Node_times, Node_quotient, Node_mod,
+ Node_plus, Node_minus): Call `constant_fold' to create the node in
+ the tree.
+ (constant_fold): New function.
+
+Fri May 15 16:02:01 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (getnode): For MPROF: Fix a typo.
+
+Fri May 15 14:10:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Function arguments cannot be reserved variable names, per POSIX.
+
+ * main.c (struct varinit): Add flags member.
+ (varinit): Add values for flags member (one or both of NON_STANDARD
+ or NO_INSTALL). Add entries for the rest of the gawk variables and
+ sort them, so that the table can be searched by ...
+ (is_std_var): New routine to see if a name is a standard variable.
+ * awk.h (is_std_var): Add declaration.
+ * awkgram.y (func_install): Use new routine and issue error.
+
+Wed Apr 22 07:42:05 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): In code for handling \<dig> replacements,
+ first make sure that <dig> is within the range of parentheses sets
+ given, and then make sure that the subpattern start is not -1, meaning
+ that something actually matched. Thanks to Martin Olsson
+ <mnemo@minimum.se> for the bug report.
+ (do_length): Add a lint warning if `length' is passed an untyped
+ argument.
+
+Thu Apr 16 22:59:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (func_call): Save nloops_active; if after function returns
+ the actual nloops_active is greater than the saved value, it means
+ there was a return inside the loop body, so pop off the necessary
+ number of loops. Bug reported by Aleksey Cheusov <a.cheusov@gmail.com>.
+ Gawk was not leaking memory - that is, things were still pointed
+ to, but memory use could keep on growing.
+
+Fri Mar 27 10:59:11 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Add lint warnings for fieldwidth and/or
+ precision in %%, and add lint warning for unknown format specifier
+ (e.g. %b). Thanks to "joanes.polus" <joanes.polus@laposte.net> for
+ the report.
+
+Wed Mar 18 18:15:41 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * awk.h (EXIT_SUCCESS, EXIT_FAILURE): Move VMS-specific values
+ to vms/vms-conf.h.
+ (EXIT_FATAL): Define here instead of in msg.c.
+ * msg.c (EXIT_FATAL): Move definition to awk.h.
+
+Mon Mar 16 18:58:09 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * main.c [#if HAVE_SIGSEGV_H]: For the #else case (VMS),
+ (stackoverflow_context_t): Dummy typedef for use in prototypes;
+ (stackoverflow_install_handler): Make macro expand to 0 rather
+ than nothing so that (void) cast on invocation of it works.
+
+ * main.c (catchstackoverflow): Don't return 0 from void function.
+
+Wed Feb 25 21:34:14 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (tokentab): Have only one copy of BEGIN / END.
+ (tokcompare): New function.
+ (check_special): Sort tokentab for EBCDIC systems.
+
+Sun Feb 15 22:39:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_delete): Print tree->exec_count to actually get
+ the value printed. Thanks to Hermann Peifer <peifer@gmx.eu>
+ for reporting the bug.
+
+Thu Feb 12 21:54:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Change to use EXIT_FAILURE.
+ * msg.c [EXIT_FATAL]: New macro.
+ * msg.c (r_fatal): Change to use EXIT_FATAL.
+ Thanks to Pat Rankin for pointing these out.
+ * re.c (reflags2str): Account for RE_SYNTAX_EMACS.
+ * awk.h: If not VMS, define HAVE_SIGSEGV_H.
+ * main.c: Check HAVE_SIGSEGV_H before including <sigsegv.h>. If not
+ there, define dummy macros.
+ (catchsegv, catchstackoverflow): Remove unneeded comment. Add return 0
+ for compilers that care.
+
+Mon Feb 9 05:24:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [CONST]: Renamed CONSTANT to avoid conflict with libsigsegv
+ on Windows.
+ * awkgram.y, field.c, re.c: Update all uses.
+
+Tue Feb 3 22:46:59 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_close): Wrap updating of ERRNO in check for not
+ do_traditional.
+
+Sat Jan 31 23:14:00 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For '%s', don't count the multibyte
+ characters if we are just copying all the characters. Gives
+ big speedup. Thanks to Hirofumi Saito <hi_saito@yk.rim.or.jp>
+ for reporting the problem.
+
+Thu Jan 29 21:14:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (parse_field, re_parse_field, def_parse_field,
+ posix_def_parse_field, null_parse_field, sc_parse_field,
+ fw_parse_field): Add new last arg `in_middle'. Ignored by all
+ except re_parse_field.
+ (re_parse_field): Enhance logic to only allow ^ in a regex to match
+ if indeed at the beginning of a record.
+ (getfield): Adjust call to parse_field.
+
+Tue Jan 27 21:42:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes suggested by Toni Schilling <Schilling@equicon.de>,
+ as modified by feedback from Pat Rankin, and some help
+ from me.
+
+ * awk.h [WEXITSTATUS]: Improve definition for MSC and VMS.
+ [EXIT_SUCCESS, EXIT_FAILURE]: Define if they aren't.
+ * io.c, main.c, profile.c: Switch to using EXIT_xxx instead of
+ 0 and 1.
+ (main): Use constants instead of 0/1 for exit_val variable.
+ * eval.c (interpret): Map exit value from `exit' statement into
+ success / fail constants for VMS for exit_val variable.
+
+Tue Jan 20 07:35:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.h: Define __USE_GNU if not _LIBC; needed for non-GLIBC
+ systems such as, oh say, Mac OS X.
+
+Tue Jan 13 09:23:40 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.c, regex_internal.h: Remove some changes that are no
+ longer needed after sync with GLIBC.
+
+Mon Jan 12 22:27:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Bi-annual sync with GLIBC.
+
+ * regexec.c, regex.h, regex_internal.c, regcomp.c, regex_internal.h,
+ regex.c: Reapply any portability patches specific to gawk.
+ * getopt.c: Sync with GLIBC.
+
+ Base versions:
+ getopt.c 1.57 Thu Jan 8 20:02:05 2009
+ getopt.h 1.21 Fri Mar 19 00:19:32 2004
+ getopt1.c 1.10 Tue Mar 9 10:35:37 2004
+ getopt_int.h 1.1 Tue Mar 9 10:31:19 2004
+ regex.c 1.129 Tue Sep 6 20:49:44 2005
+ regexec.c 1.99 Thu Jan 8 20:02:06 2009
+ regexec.c 1.99 Thu Jan 8 20:02:06 2009
+ regex.h 1.43 Wed Jan 16 10:09:47 2008
+ regex_internal.c 1.69 Thu Jan 8 20:02:06 2009
+ regex_internal.h 1.76 Thu Jan 8 20:02:06 2009
+ regcomp.c 1.120 Thu Jan 8 20:02:06 2009
+
+Mon Jan 5 23:07:58 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): Add a retry to calls to socketopen. Tunable
+ via undocumented GAWK_SOCK_RETRIES environment variable. Based
+ on code from Juergen Kahrs <Juergen.Kahrs@vr-web.de> after a
+ suggestion from Hermann Peifer <peifer@gmx.eu>.
+
+Mon Jan 5 22:48:39 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): A getline from a directory is no longer
+ fatal; instead it returns -1. Thanks to Paolo <oopla@users.sf.net>
+ for the report.
+
+Mon Dec 29 22:04:57 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Case for 's', improve logic for setting
+ the number of characters to copy, also at pr_tail. Based on
+ bug report by Hermann Peifer <peifer@gmx.net>.
+
+Thu Dec 11 21:23:50 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): If the wide string has zero length
+ but the bytes are more than zero, use the number of bytes.
+ (do_index): Similar also: fall back to byte count if the
+ bytes don't make a wide-character string.
+ Bug reported by "Carlos G." <charlie.brown.uy@gmail.com>
+
+ (do_substr): If defaulting to length of rest of the string,
+ do it based on the wide char string if it's valid.
+
+Fri Dec 5 11:12:11 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (free_rp): New function.
+ (redirect): Improved logic for yesterday's change, including
+ use of free_rp.
+ (close_redir): Use free_rp.
+
+Thu Dec 4 22:35:05 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Only put the new struct redirect into
+ the list if the file or pipe could actually be opened. Fixes
+ a bug with the wrong return value of close, noticed by
+ Seb <sbb@tuxfamily.org>.
+ * dfa.c (parse_bracket_exp_mb): Don't zero out work_mbc->chars
+ after we malloc'ed it. Fixes a leak found by valgrind when
+ using UTF-8. (Hmmm. This got fixed in January 2007; It seems
+ to have crept back into the code in the August 2007 merge with
+ GNU grep. Sigh.)
+
+Mon Oct 20 11:47:59 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add -g3 and -gdwarf-2 to CFLAGS if compiling with
+ GCC and doing development. Should have done this ages ago.
+
+Sun Aug 31 22:03:55 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Tighten up the code to even more so
+ that it matches the documentation.
+
+Mon Aug 25 22:41:47 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Tighten up the code to only allow
+ certain reasonable values when setting BINMODE.
+
+Fri Aug 22 14:43:49 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (nextfile): Users Strong In The Ways Of The Source can use
+ non-existant files on the command line without it being a fatal error.
+
+Wed Jul 30 23:10:51 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): Don't ever use DFA if need_start. It can
+ break on some weird cases. Reported by
+ "T. X. G." <leopardie333@yahoo.com>.
+
+Wed Jul 30 22:27:20 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_match): Add MAYBE_NUM flag to elements of array
+ created by `match' since data could come from user. Similar
+ semantics to `split'. Thanks to Dr. Dirk Zimoch <dirk.zimoch@psi.ch>
+ for reporting the bug.
+
+Tue Jun 24 07:44:06 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (insert): Reworked for significant speed improvement
+ by Johan Walles <johan.walles@gmail.com>. Imported from grep
+ bug list.
+ * profile.c (tree_eval): Do a return after all the built-in
+ variables instead of a break. Thanks again to Hermann Peifer
+ <peifer@gmx.eu> for finding the problem.
+
+Sun Jun 22 23:08:14 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Restore old code to use %ld when the value
+ is within the range of a long; improves performance noticably for
+ applications that convert integers to strings. Use %.0f only for
+ integral values that are outside the range of a long. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for pointing out the existence
+ of a problem.
+
+Fri May 23 12:08:24 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (epsclosure): Change type of `visited' from int to char for
+ potential speedup. Based on bug report to bug-grep list from
+ Johan Walles <johan.walles@gmail.com>.
+
+Wed May 14 05:55:48 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For `%c' case, add a lint warning
+ if the value is greater than 255.
+ (mbc_byte_count, mbc_char_count): Remove unused variable `i'.
+
+Thu Apr 24 20:31:03 2008 Bruno Haible <bruno@clisp.org>
+
+ * main.c (main): Move call to catch SIGBUS to before installation of
+ libsigsegv handler, since on some systems libsigsegv installs its
+ own handler for SIGBUS.
+ [STACK_SIZE]: Add a constant instead of inline. ADR.
+
+Wed Apr 23 22:30:27 2008 Duncan Moore <duncan.m00re@btinternet.com>
+
+ * builtin.c (state): Do as an integer array for systems that need it.
+ (do_rand, init_rand): Modify call to `initstate' as needed.
+
+Wed Apr 23 22:22:06 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (prednames): Add an extra zero to final initializer to
+ silence a compiler warning. Reported by Duncan Moore
+ <duncan.m00re@btinternet.com>.
+
+Wed Apr 23 21:36:06 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * field.c (fw_parse_field): Add code for multibyte case.
+
+Sat Mar 15 22:17:21 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): Handle the case of the parameter being
+ an array that was a function parameter.
+
+Tue Mar 11 22:49:11 2008 Kimura Koichi <kimura.koichi@canon.co.jp>
+
+ * builtin.c (format_tree): Fix call to mbc_byte_count to pass the
+ right number of characters based on the format type.
+
+Tue Mar 11 22:31:58 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libsigsegv: Incorporated into the dist.
+ * Makefile.am (SUBDIRS): Added. Make it first so that the library
+ is built before gawk is.
+ (LDADD): Add the library.
+ (AM_CPPFLAGS): Add -I option to find <sigsegv.h> header.
+ * configure.ac: Add call to AC_CONFIG_SUBDIRS for libsigsegv.
+ * main.c (catchsegv, catchstackoverflow): New functions.
+ (main): Call into sigsegv library with them.
+
+Tue Mar 4 21:02:25 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (mbc_char_count, mbc_byte_count): New functions to return
+ the number of m.b. chars there are and the number of bytes needed to
+ copy them.
+ (format_tree): Use them for %s and %c cases to adjust precision and
+ for copying characters at pr_tail label.
+
+Thu Feb 14 14:05:01 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (init_args): Adjust type of third arg to remove warning from
+ GCC 4.2, add cast in call to make_string. Bleah.
+
+Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
+
+ * README_d/README.zos: New file.
+ * Makefile.am: Add sed on y.tab.c to convert older Bison "parse error"
+ messages to "syntax error" messages.
+ * configure.ac: Added ZOS_USS changes.
+ * m4/arch.m4: Added ZOS_USS changes.
+ * m4/inttypes_h.m4: Added ZOS_USS changes.
+ * m4/inttypes.m4: Added ZOS_USS changes.
+ * m4/stdint_h.m4: Added ZOS_USS changes.
+ * awkgram.y: Added USE_EBCDIC changes for EBCDIC collating sequence.
+ * awk.h: Added ZOS_USS compile changes.
+ * eval.c: Added EBCDIC casetable and ZOS_USS changes.
+ * regcomp.c: Added btowc function for ZOS_USS.
+ * regex.h: Changed __string to __cstring to avoid ZOS_USS header usage.
+ * regex_internal.h: Added ZOS_USS changes and type defines.
+
+Sun Jan 13 08:16:38 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (epsclosure): Replace MALLOC + zero-out-loop with CALLOC for
+ large potential speedup, based on bug report to bug-grep list from
+ Johan Walles <johan.walles@gmail.com>.
+ (dfaanalyze): Made a similar change.
+
+Fri Dec 21 11:22:16 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pprint): Add a missing `#ifdef PROFILING'.
+
+Thu Dec 13 22:19:19 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (parenthesize): Remove "!" from output string.
+ (tree_eval): Fix quotes for delete array case.
+ (pp_var): New function, call it as appropriate everywhere else.
+
+Fri Nov 30 11:11:52 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Use NULL as first argument to `getaddrinfo'
+ if any_remote_host is true. Should help on Non-GLIBC systems.
+
+Thu Nov 15 22:01:36 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (two_way_open): Case for ptys. Change search for letters
+ to avoid ASCII / EBCDIC problems.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
@@ -494,7 +980,7 @@ Sat Jan 13 22:10:43 2007 Arnold D. Robbins <arnold@skeeve.com>
From Matthew Woehlke <mwoehlke@tibco.com> for Tandem:
* awk.h (_TANDEM_SOURCE): Also define _XOPEN_SOURCE_EXTENDED.
- * io.c: (_TANDEM_SOURCE): Include more headers.
+ * io.c (_TANDEM_SOURCE): Include more headers.
Sat Jan 13 21:53:48 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
@@ -568,7 +1054,7 @@ Thu Jan 4 18:23:50 2007 Dmitry V. Levin <ldv@altlinux.org>
* node.c (free_wstr): Zero wstptr and wstlen only if WSTRCUR
flag is set.
- (str2wstr): Replace invalid `free` call with `free_wstr' call.
+ (str2wstr): Replace invalid `free' call with `free_wstr' call.
Thu Jan 4 16:49:21 2007 Arnold D. Robbins <arnold@skeeve.com>
@@ -618,14 +1104,14 @@ Sat Aug 5 22:04:24 2006 Arnold D. Robbins <arnold@skeeve.com>
Tue Jul 4 22:43:05 2006 Arnold D. Robbins <arnold@skeeve.com>
* eval.c (interpret): Node_assign_concat case: Turn off NUMBER and
- NUMCUR flags in result. Sheesh. Thanks to
- <Heiner.Marxen@DrB.Insel.DE> for finding the problem.
+ NUMCUR flags in result. Sheesh. Thanks to
+ <Heiner.Marxen@DrB.Insel.DE> for finding the problem.
Mon Jul 3 22:49:44 2006 Pat Rankin <rankin@pactechdata.com>
* main.c (load_environ): When AWKPATH is missing from ENVIRON[],
- try to find it with getenv("AWKPATH") before resorting to DEFPATH.
- Suggested by Galen Tackett.
+ try to find it with getenv("AWKPATH") before resorting to DEFPATH.
+ Suggested by Galen Tackett.
Mon Jul 3 00:27:59 2006 Arnold D. Robbins <arnold@skeeve.com>
@@ -637,7 +1123,7 @@ Mon Jul 3 00:27:59 2006 Arnold D. Robbins <arnold@skeeve.com>
Fri Jun 23 15:48:34 2006 Arnold D. Robbins <arnold@skeeve.com>
* awkgram.y (subn): At end for `do_sprintf' check, verify
- that lnode is not NULL before using it assign through.
+ that lnode is not NULL before using it to assign through.
Sun Jun 18 22:27:25 2006 Arnold D. Robbins <arnold@skeeve.com>
@@ -828,7 +1314,7 @@ Sun Jun 26 16:37:59 2005 Arnold D. Robbins <arnold@skeeve.com>
Unrelated changes:
* builtin.c (do_length): Allow array argument to length().
- Returns number of elements in array.
+ Returns number of elements in array.
* awkgram.y (yylex): Ignore carriage returns in source code. Sigh.
@@ -923,12 +1409,12 @@ Mon May 9 08:29:37 2005 Arnold D. Robbins <arnold@skeeve.com>
* configure.ac: Add type check for `socklen_t', fixes compile
warning on AMD/64 Linux.
- * io.c (socketopen): Change type of socket lenght variables
+ * io.c (socketopen): Change type of socket length variables
to `socklen_t' from `size_t'.
Thu May 5 22:00:03 2005 John E. Haque <j.eh@mchsi.com>
- * io.c (iop_alloc): Let a input processor hook installed via
+ * io.c (iop_alloc): Let an input processor hook installed via
`register_open_hooks' open its own fd in case gawk does not know
how to open it.
(iop_open): Call `os_close_on_exec' after `iop_alloc'.
@@ -966,7 +1452,7 @@ Thu Apr 28 23:40:02 2005 Stepan Kasal <kasal@ucw.cz>
(custom.h): Don't cat custom.h at the end of config.h; instead, use
AH_BOTTOM([#include "custom.h"])
* awklib/Makefile.am (AM_CPPFLAGS): Add $(top_srcdir) so that
- custom.h can be found.
+ custom.h can be found.
Thu Apr 28 23:21:22 2005 Jim Meyering <jim@meyering.net>
@@ -977,16 +1463,16 @@ Thu Apr 28 23:21:22 2005 Jim Meyering <jim@meyering.net>
Thu Apr 28 23:05:33 2005 Stepan Kasal <kasal@ucw.cz>
* dfa.c (parse_bracket_exp_mb): Shorten one part of the code, to get
- closer to grep's copy.
+ closer to grep's copy.
Thu Apr 28 23:00:58 2005 Pat Rankin <rankin@pactechdata.com>
* builtin.c (format_tree) [#if VAXCRTL]: For floating point
- formatting, reject zero_flag if using old VAXCRTL run-time
- library to avoid getting erroneous results which appear as if
- numerically incorrect (due to an embedded space in some cases,
- extra trailing zeroes in others) rather than just misformatted.
- `hsprint' test still fails, but not as badly.
+ formatting, reject zero_flag if using old VAXCRTL run-time
+ library to avoid getting erroneous results which appear as if
+ numerically incorrect (due to an embedded space in some cases,
+ extra trailing zeroes in others) rather than just misformatted.
+ `hsprint' test still fails, but not as badly.
Thu Apr 28 19:12:03 2005 Arnold D. Robbins <arnold@skeeve.com>
diff --git a/Makefile.am b/Makefile.am
index af7b12f9..f49c2733 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -68,6 +68,7 @@ EXTRA_DIST = \
# Build explicitly in "." in order to build gawk first, so
# that `make check' without a prior `make' works.
SUBDIRS = \
+ $(SEGVSUBDIR) \
. \
awklib \
doc \
@@ -89,6 +90,7 @@ base_sources = \
ext.c \
field.c \
floatcomp.c \
+ floatmagic.h \
gawkmisc.c \
getopt.c \
getopt.h \
@@ -114,7 +116,7 @@ gawk_SOURCES = $(base_sources) eval.c profile.c
pgawk_SOURCES = $(base_sources) eval_p.c profile_p.c
# Get extra libs as needed, Automake will supply LIBINTL and SOCKET_LIBS.
-LDADD = $(LIBINTL) $(SOCKET_LIBS)
+LDADD = $(LIBSIGSEGV) $(LIBINTL) $(SOCKET_LIBS)
# Directory for gawk's data files. Automake supplies datadir.
pkgdatadir = $(datadir)/awk
@@ -124,7 +126,7 @@ DEFPATH="\".$(PATH_SEPARATOR)$(pkgdatadir)\""
DEFS= -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(datadir)/locale\""
-AM_CPPFLAGS =
+AM_CPPFLAGS = $(SEGVINCLUDE)
# Get rid of core files when cleaning
CLEANFILES = core core.*
@@ -168,7 +170,7 @@ dist-hook:
# Special rules for individual files
awkgram.c: awkgram.y
$(YACC) $(AM_YFLAGS) $(YFLAGS) $<
- $(AWK) -f $(srcdir)/bisonfix.awk y.tab.c > $*.c && rm y.tab.c
+ sed 's/parse error/syntax error/g' < y.tab.c | $(AWK) -f $(srcdir)/bisonfix.awk > $*.c && rm y.tab.c
if test -f y.tab.h; then \
if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
else :; fi
diff --git a/Makefile.in b/Makefile.in
index 6c69fa28..b430a329 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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.
@@ -38,8 +39,9 @@
#
VPATH = @srcdir@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -60,7 +62,7 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/configh.in \
$(top_srcdir)/configure ABOUT-NLS AUTHORS COPYING ChangeLog \
INSTALL NEWS awkgram.c config.guess config.rpath config.sub \
- depcomp install-sh missing mkinstalldirs ylwrap
+ depcomp install-sh ltmain.sh missing mkinstalldirs ylwrap
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
$(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \
@@ -68,11 +70,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/isc-posix.m4 \
$(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
- $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \
- $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \
+ $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \
+ $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -80,8 +84,8 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
-binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am__objects_1 = array.$(OBJEXT) awkgram.$(OBJEXT) builtin.$(OBJEXT) \
dfa.$(OBJEXT) ext.$(OBJEXT) field.$(OBJEXT) \
@@ -93,20 +97,30 @@ am_gawk_OBJECTS = $(am__objects_1) eval.$(OBJEXT) profile.$(OBJEXT)
gawk_OBJECTS = $(am_gawk_OBJECTS)
gawk_LDADD = $(LDADD)
am__DEPENDENCIES_1 =
-gawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+gawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1)
am_pgawk_OBJECTS = $(am__objects_1) eval_p.$(OBJEXT) \
profile_p.$(OBJEXT)
pgawk_OBJECTS = $(am_pgawk_OBJECTS)
pgawk_LDADD = $(LDADD)
-pgawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+pgawk_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
+am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
+LTYACCCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(YACC) $(YFLAGS) $(AM_YFLAGS)
YLWRAP = $(top_srcdir)/ylwrap
SOURCES = $(gawk_SOURCES) $(pgawk_SOURCES)
DIST_SOURCES = $(gawk_SOURCES) $(pgawk_SOURCES)
@@ -119,6 +133,9 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
@@ -126,9 +143,34 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
+ { test ! -d "$(distdir)" \
+ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr "$(distdir)"; }; }
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
@@ -138,6 +180,7 @@ distcleancheck_listfiles = find . -type f -print
pkgdatadir = $(datadir)/awk
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -150,11 +193,15 @@ CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(datadir)/locale\""
DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
@@ -165,11 +212,15 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
+LIBSIGSEGV = @LIBSIGSEGV@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
@@ -179,7 +230,12 @@ MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
@@ -189,6 +245,9 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POSUB = @POSUB@
RANLIB = @RANLIB@
+SED = @SED@
+SEGVINCLUDE = @SEGVINCLUDE@
+SEGVSUBDIR = @SEGVSUBDIR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
@@ -198,6 +257,7 @@ USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
@@ -205,6 +265,7 @@ abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -235,6 +296,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@@ -245,8 +307,10 @@ psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
+subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
@@ -296,6 +360,7 @@ EXTRA_DIST = \
# Build explicitly in "." in order to build gawk first, so
# that `make check' without a prior `make' works.
SUBDIRS = \
+ $(SEGVSUBDIR) \
. \
awklib \
doc \
@@ -315,6 +380,7 @@ base_sources = \
ext.c \
field.c \
floatcomp.c \
+ floatmagic.h \
gawkmisc.c \
getopt.c \
getopt.h \
@@ -340,11 +406,11 @@ gawk_SOURCES = $(base_sources) eval.c profile.c
pgawk_SOURCES = $(base_sources) eval_p.c profile_p.c
# Get extra libs as needed, Automake will supply LIBINTL and SOCKET_LIBS.
-LDADD = $(LIBINTL) $(SOCKET_LIBS)
+LDADD = $(LIBSIGSEGV) $(LIBINTL) $(SOCKET_LIBS)
# stuff for compiling gawk/pgawk
DEFPATH = "\".$(PATH_SEPARATOR)$(pkgdatadir)\""
-AM_CPPFLAGS =
+AM_CPPFLAGS = $(SEGVINCLUDE)
# Get rid of core files when cleaning
CLEANFILES = core core.*
@@ -356,22 +422,22 @@ all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
.SUFFIXES:
-.SUFFIXES: .c .o .obj .y
+.SUFFIXES: .c .lo .o .obj .y
am--refresh:
@:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
- cd $(srcdir) && $(AUTOMAKE) --gnu \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
+ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -387,9 +453,10 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: $(am__configure_deps)
- cd $(srcdir) && $(AUTOCONF)
+ $(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+ $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
config.h: stamp-h1
@if test ! -f $@; then \
@@ -401,7 +468,7 @@ stamp-h1: $(srcdir)/configh.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/configh.in: $(am__configure_deps)
- cd $(top_srcdir) && $(AUTOHEADER)
+ ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
@@ -410,26 +477,46 @@ distclean-hdr:
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; for p in $$list; do \
- p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
- if test -f $$p \
- ; then \
- f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
- $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
- else :; fi; \
- done
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed 's/$(EXEEXT)$$//' | \
+ while read p p1; do if test -f $$p || test -f $$p1; \
+ then echo "$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+ sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) files[d] = files[d] " " $$1; \
+ else { print "f", $$3 "/" $$4, $$1; } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+ } \
+ ; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; for p in $$list; do \
- f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
- rm -f "$(DESTDIR)$(bindir)/$$f"; \
- done
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+ -e 's/$$/$(EXEEXT)/' `; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
- -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+ @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
gawk$(EXEEXT): $(gawk_OBJECTS) $(gawk_DEPENDENCIES)
@rm -f gawk$(EXEEXT)
$(LINK) $(gawk_OBJECTS) $(gawk_LDADD) $(LIBS)
@@ -469,21 +556,37 @@ distclean-compile:
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@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@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@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@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@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 $@ $<
+
.y.c:
$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool config.lt
+
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
@@ -508,7 +611,7 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
@@ -542,16 +645,16 @@ $(RECURSIVE_CLEAN_TARGETS):
else \
local_target="$$target"; \
fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -559,14 +662,14 @@ ID: $(HEADERS) $(SOURCES) $(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; }'`; \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) configh.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
+ set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -578,46 +681,50 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) configh.in $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
- tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) configh.in $(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 \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) configh.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
list='$(SOURCES) $(HEADERS) configh.in $(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" \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
+ $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
$(am__remove_distdir)
- test -d $(distdir) || mkdir $(distdir)
+ test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -633,29 +740,44 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
+ am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
@@ -663,11 +785,12 @@ distdir: $(DISTFILES)
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ -test -n "$(am__skip_mode_fix)" \
+ || find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
+ || chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
@@ -675,6 +798,14 @@ dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
+dist-lzma: distdir
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+ $(am__remove_distdir)
+
+dist-xz: distdir
+ tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
+ $(am__remove_distdir)
+
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
@@ -702,6 +833,10 @@ distcheck: dist
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.lzma*) \
+ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.xz*) \
+ xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
@@ -713,9 +848,11 @@ distcheck: dist
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
+ test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
+ && am__cwd=`pwd` \
+ && $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
@@ -737,13 +874,15 @@ distcheck: dist
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+ && cd "$$am__cwd" \
+ || exit 1
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
+ @$(am__cd) '$(distuninstallcheck_dir)' \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
@@ -790,6 +929,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -798,14 +938,14 @@ maintainer-clean-generic:
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-recursive
-clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
- distclean-hdr distclean-tags
+ distclean-hdr distclean-libtool distclean-tags
dvi: dvi-recursive
@@ -813,6 +953,8 @@ dvi-am:
html: html-recursive
+html-am:
+
info: info-recursive
info-am:
@@ -821,20 +963,29 @@ install-data-am:
install-dvi: install-dvi-recursive
+install-dvi-am:
+
install-exec-am: install-binPROGRAMS
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
install-html: install-html-recursive
+install-html-am:
+
install-info: install-info-recursive
+install-info-am:
+
install-man:
install-pdf: install-pdf-recursive
+install-pdf-am:
+
install-ps: install-ps-recursive
+install-ps-am:
+
installcheck-am:
maintainer-clean: maintainer-clean-recursive
@@ -846,7 +997,8 @@ maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
-mostlyclean-am: mostlyclean-compile mostlyclean-generic
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
pdf: pdf-recursive
@@ -858,25 +1010,27 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
- install-exec-am install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check-am \
+ ctags-recursive install-am install-exec-am install-strip \
+ tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am check-local clean \
- clean-binPROGRAMS clean-generic ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-hook dist-shar dist-tarZ \
- dist-zip distcheck distclean distclean-compile \
- distclean-generic distclean-hdr distclean-tags distcleancheck \
- distdir distuninstallcheck dvi dvi-am html html-am info \
- info-am install install-am install-binPROGRAMS install-data \
+ clean-binPROGRAMS clean-generic clean-libtool ctags \
+ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-hook \
+ dist-lzma dist-shar dist-tarZ dist-xz dist-zip distcheck \
+ distclean distclean-compile distclean-generic distclean-hdr \
+ distclean-libtool distclean-tags distcleancheck distdir \
+ distuninstallcheck dvi dvi-am html html-am info info-am \
+ install install-am install-binPROGRAMS install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-exec-hook install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs installdirs-am \
maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
- tags tags-recursive uninstall uninstall-am \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-binPROGRAMS
@@ -914,7 +1068,7 @@ dist-hook:
# Special rules for individual files
awkgram.c: awkgram.y
$(YACC) $(AM_YFLAGS) $(YFLAGS) $<
- $(AWK) -f $(srcdir)/bisonfix.awk y.tab.c > $*.c && rm y.tab.c
+ sed 's/parse error/syntax error/g' < y.tab.c | $(AWK) -f $(srcdir)/bisonfix.awk > $*.c && rm y.tab.c
if test -f y.tab.h; then \
if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
else :; fi
@@ -933,6 +1087,7 @@ valgrind:
cd test; rm -f log.[0-9]*; \
make check AWK="valgrind --log-file=log ../gawk"; \
make valgrind-scan
+
# 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:
diff --git a/NEWS b/NEWS
index a0ba8dbf..2c1cad10 100644
--- a/NEWS
+++ b/NEWS
@@ -1,10 +1,45 @@
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
+Changes from 3.1.6 to 3.1.7
+---------------------------
+1. Gawk now has support for z/OS (IBM S/390 architecture).
+
+2. Gawk now handles multibyte strings better in [s]printf with field
+ widths and such.
+
+3. Gawk now uses libsigsegv to print a message before core dumping. This
+ handles infinite recursion of an awk function a little better.
+ Use of the library can be disabled at configure time with the
+ --disable-libsigsegv option for unusual systems.
+
+4. The handling of BINMODE is now somewhat more sane.
+
+5. A getline from a directory is no longer fatal; instead it returns -1.
+
+6. Per POSIX, special variable names (like FS) cannot be used as function
+ parameter names.
+
+7. The new -O / --optimize option enables simple constant folding on
+ the parse tree during parsing. We hope that with time the number
+ of optimizations will increase.
+
+8. Updated to the latest autotools: Autoconf 2.63, Automake 1.11,
+ Libtool 2.2.6a, and Gettext 0.17. Also latest Bison: 2.4.1.
+
+9. Some improvement in testing for isinf / isnan in builtin.c.
+
+10. Improved the handling of `a = a b c' to be more general.
+
+11. Locale handling for %'d should now work on certain non-Unix /
+ non-Linux systems.
+
+12. Lots of bugs fixed, see the ChangeLog for the details.
+
Changes from 3.1.5 to 3.1.6
---------------------------
diff --git a/README b/README
index 12064292..5c6e6ce4 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
- Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@@ -6,7 +6,7 @@
README:
-This is GNU Awk 3.1.6. It is upwardly compatible with the Bell Labs
+This is GNU Awk 3.1.7. It is upwardly compatible with the Bell Labs
research version of awk. It is almost completely compliant with the
2004 POSIX 1003.1 standard for awk. (See the note below about POSIX.)
@@ -35,7 +35,8 @@ modifying awkgram.y without bison or yacc will be difficult, at best.
You might want to get a copy of bison from the FSF too.)
If you have a Windows32, MS-DOS or OS/2 system, use the stuff in the `pc'
-directory. Similarly, there is a separate directory for VMS.
+directory. Similarly, there is a separate directory for VMS and for
+some other operating systems.
Ports for the Atari and old Tandem systems are supplied, but they are
unsupported. Thus, their code appears in the `unsupported' directory.
@@ -57,6 +58,7 @@ The `doc' directory contains a recent version of texinfo.tex, which will
be necessary for printing the manual. Use `make dvi' to get a DVI file
from the manual. In the `doc' directory, use `make postscript' to get
PostScript versions of the manual, the man page, and the reference card.
+Use `make pdf' to get PDF versions of the manuals.
BUG REPORTS AND FIXES (Un*x systems):
@@ -74,30 +76,25 @@ Arnold Robbins
BUG REPORTS AND FIXES, non-Unix systems:
Amiga:
- Fred Fish
- fnf@ninemoons.com
+ Unsupported.
Alpha/Linux:
Michal Jaegermann
- michal@gortel.phys.ualberta.ca
+ michal@harddata.com
BeOS:
- Martin Brown
- mc@whoever.com
+ Unsupported.
MS-DOS:
Scott Deifik
scottd.mail@sbcglobal.net
- Darrel Hankerson
- hankedr@mail.auburn.edu
-
MS-Windows:
- Juan Grigera
- juan@biophnet.unlp.edu.ar
+ Unsupported.
OS/2:
- andreas.buening@@nexgo.de
+ Andreas Buening
+ andreas.buening@nexgo.de
Tandem:
Stephen Davies
@@ -111,3 +108,7 @@ Tandem:
VMS:
Pat Rankin
rankin@pactechdata.com
+
+z/OS (OS/390):
+ Dave Pitts
+ dpitts@cozx.com
diff --git a/README_d/README.VMS b/README_d/README.VMS
index 4d193981..b47cb0f7 100644
--- a/README_d/README.VMS
+++ b/README_d/README.VMS
@@ -79,3 +79,9 @@ separated list of directory specifications. When defining it, the
value should be quoted so that it retains a single translation, not a
multi-translation RMS searchlist.
+------------------------------
+Thu Jun 18 05:22:10 IDT 2009
+============================
+
+On OpenVMS V7.3 (Alpha) the "manyfiles" test is known to fail. The reason
+is not (yet) known.
diff --git a/README_d/README.beos b/README_d/README.beos
index e0a8189a..fa346ab3 100644
--- a/README_d/README.beos
+++ b/README_d/README.beos
@@ -1,5 +1,11 @@
+Fri Jul 3 11:21:56 IDT 2009
+============================
+The BeOS port is unsupported.
+
+
README for GNU awk under BeOS
Last updated MCB, Tue Feb 6 10:15:46 GMT 2001
+=============================================
BeOS port contact: Martin C Brown (mc@whoever.com)
diff --git a/README_d/README.cygwin b/README_d/README.cygwin
new file mode 100644
index 00000000..3cbb7f83
--- /dev/null
+++ b/README_d/README.cygwin
@@ -0,0 +1,5 @@
+Tue Jun 23 05:20:51 IDT 2009
+============================
+
+The lc_num1 test is known to fail on current Cygwin systems due to lack of
+full locale support in newlib. All other tests should pass.
diff --git a/README_d/README.pc b/README_d/README.pc
index 9ee2f12f..a95ada64 100644
--- a/README_d/README.pc
+++ b/README_d/README.pc
@@ -366,13 +366,7 @@ please send bug reports (along with the version and compiler used) to
Scott Deifik, scottd.mail@sbcglobal.net (DOS versions)
or
- gawk-maintainer@unixos2.org (OS/2 version)
- Darrel Hankerson, hankedr@mail.auburn.edu
+ andreas.buening@nexgo.de (OS/2 version)
-Support for Windows32 started in gawk-3.0.3. Reports on
-the Visual C++ version (vcWin32) may be sent to
-
- Juan Grigera, juan@biophnet.unlp.edu.ar (Visual C++ version)
-
-with a copy to Scott Deifik. Other Windows32 reports may go to Darrel
-Hankerson.
+Support for Windows32 started in gawk-3.0.3.
+This is no longer supported.
diff --git a/README_d/README.zos b/README_d/README.zos
new file mode 100644
index 00000000..1613330d
--- /dev/null
+++ b/README_d/README.zos
@@ -0,0 +1,45 @@
+Fri Jan 25 12:36:16 2008
+Dave Pitts <dpitts@cozx.com>
+----------------------------
+
+GAWK on z/OS
+
+1. To unpack the tarball:
+
+ $ gunzip -c gawk-3.1.6.tar.gz | pax -rv from=ISO8859-1,to=IBM-1047
+
+ This will extract the files and convert them from ASCII to EBCDIC.
+
+ If you do not have the gunzip program on your system you can perform
+ the operation on another system and copy the tar file to z/OS. Then
+ unpack as follows:
+
+ $ pax -rv from=ISO8859-1,to=IBM-1047 -f gawk-3.1.6.tar
+
+
+2. To Build
+
+ $ ./configure
+ $ make
+
+ You will get compilation warnings of the form:
+
+ WARNING CBC3343 ./dfa.c:332 Redeclaration of dfasyntax differs from
+ previous declaration on line 404 of "./dfa.h".
+
+ Because the IBM compiler complains when a function is decalared using
+ prototypes in the header and is defined without prototypes in the code
+ these warnings can be ignored.
+
+
+3. To Install:
+
+ $ make install
+
+
+4. To Test (optional):
+
+ $ make check
+
+ NOTE: Since the test suite was defined for an ASCII and IEEE floating point
+ environment several of the tests will fail under z/OS.
diff --git a/aclocal.m4 b/aclocal.m4
index d3e9a04b..a8f8a668 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.10 -*- Autoconf -*-
+# generated automatically by aclocal 1.11 -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006 Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008, 2009 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.
@@ -11,12 +11,67 @@
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
-m4_if(m4_PACKAGE_VERSION, [2.61],,
-[m4_fatal([this file was generated for autoconf 2.61.
-You have another version of autoconf. If you want to use that,
-you should regenerate the build system entirely.], [63])])
+m4_ifndef([AC_AUTOCONF_VERSION],
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.63],,
+[m4_warning([this file was generated for autoconf 2.63.
+You have another version of autoconf. It may work, but is not guaranteed to.
+If you have problems, you may need to regenerate the build system entirely.
+To do so, use the procedure documented by the package, typically `autoreconf'.])])
+
+# intlmacosx.m4 serial 1 (gettext-0.17)
+dnl Copyright (C) 2004-2007 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
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Checks for special options needed on MacOS X.
+dnl Defines INTL_MACOSX_LIBS.
+AC_DEFUN([gt_INTL_MACOSX],
+[
+ dnl Check for API introduced in MacOS X 10.2.
+ AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
+ gt_cv_func_CFPreferencesCopyAppValue,
+ [gt_save_LIBS="$LIBS"
+ LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
+ AC_TRY_LINK([#include <CoreFoundation/CFPreferences.h>],
+ [CFPreferencesCopyAppValue(NULL, NULL)],
+ [gt_cv_func_CFPreferencesCopyAppValue=yes],
+ [gt_cv_func_CFPreferencesCopyAppValue=no])
+ LIBS="$gt_save_LIBS"])
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
+ AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1,
+ [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
+ fi
+ dnl Check for API introduced in MacOS X 10.3.
+ AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent,
+ [gt_save_LIBS="$LIBS"
+ LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
+ AC_TRY_LINK([#include <CoreFoundation/CFLocale.h>], [CFLocaleCopyCurrent();],
+ [gt_cv_func_CFLocaleCopyCurrent=yes],
+ [gt_cv_func_CFLocaleCopyCurrent=no])
+ LIBS="$gt_save_LIBS"])
+ if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1,
+ [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
+ fi
+ INTL_MACOSX_LIBS=
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
+ fi
+ AC_SUBST([INTL_MACOSX_LIBS])
+])
-# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -28,10 +83,10 @@ you should regenerate the build system entirely.], [63])])
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.10'
+[am__api_version='1.11'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.10], [],
+m4_if([$1], [1.11], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -45,10 +100,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# AM_SET_CURRENT_AUTOMAKE_VERSION
# -------------------------------
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.10])dnl
-_AM_AUTOCONF_VERSION(m4_PACKAGE_VERSION)])
+[AM_AUTOMAKE_VERSION([1.11])dnl
+m4_ifndef([AC_AUTOCONF_VERSION],
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
@@ -105,14 +162,14 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
# 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.
-# serial 8
+# serial 9
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
@@ -125,6 +182,7 @@ AC_SUBST([$1_TRUE])dnl
AC_SUBST([$1_FALSE])dnl
_AM_SUBST_NOTMAKE([$1_TRUE])dnl
_AM_SUBST_NOTMAKE([$1_FALSE])dnl
+m4_define([_AM_COND_VALUE_$1], [$2])dnl
if $2; then
$1_TRUE=
$1_FALSE='#'
@@ -138,14 +196,14 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
# 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.
-# serial 9
+# serial 10
# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
@@ -202,6 +260,16 @@ AC_CACHE_CHECK([dependency style of $depcc],
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
fi
+ am__universal=false
+ m4_case([$1], [CC],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac],
+ [CXX],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac])
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
@@ -219,7 +287,17 @@ AC_CACHE_CHECK([dependency style of $depcc],
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
@@ -229,19 +307,23 @@ AC_CACHE_CHECK([dependency style of $depcc],
break
fi
;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
none) break ;;
esac
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
if depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ source=sub/conftest.c object=$am__obj \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
>/dev/null 2>conftest.err &&
grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
@@ -298,57 +380,68 @@ _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
# 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.
-#serial 3
+#serial 5
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[for mf in $CONFIG_FILES; do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
+[{
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`AS_DIRNAME("$mf")`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`AS_DIRNAME(["$file"])`
+ AS_MKDIR_P([$dirpart/$fdir])
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
done
-done
+}
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
@@ -368,13 +461,13 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006 Free Software Foundation, Inc.
+# 2005, 2006, 2008, 2009 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.
-# serial 12
+# serial 16
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
@@ -391,7 +484,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# arguments mandatory, and then we can depend on a new Autoconf
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.60])dnl
+[AC_PREREQ([2.62])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -442,8 +535,8 @@ AM_MISSING_PROG(AUTOCONF, autoconf)
AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
AM_MISSING_PROG(AUTOHEADER, autoheader)
AM_MISSING_PROG(MAKEINFO, makeinfo)
-AM_PROG_INSTALL_SH
-AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
AC_REQUIRE([AM_PROG_MKDIR_P])dnl
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
@@ -451,24 +544,37 @@ AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+ [_AM_PROG_TAR([v7])])])
_AM_IF_OPTION([no-dependencies],,
[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+ [_AM_DEPENDENCIES(CC)],
+ [define([AC_PROG_CC],
+ defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+ [_AM_DEPENDENCIES(CXX)],
+ [define([AC_PROG_CXX],
+ defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+ [_AM_DEPENDENCIES(OBJC)],
+ [define([AC_PROG_OBJC],
+ defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
])
+_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
+dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
+dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
+dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_CONFIG_COMMANDS_PRE(dnl
+[m4_provide_if([_AM_COMPILER_EXEEXT],
+ [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
])
+dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
+dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
+dnl mangled by Autoconf and run in a shell conditional statement.
+m4_define([_AC_COMPILER_EXEEXT],
+m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
+
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
@@ -479,18 +585,19 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
# our stamp files there.
AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
[# Compute $1's index in $config_headers.
+_am_arg=$1
_am_stamp_count=1
for _am_header in $config_headers :; do
case $_am_header in
- $1 | $1:* )
+ $_am_arg | $_am_arg:* )
break ;;
* )
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac
done
-echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -501,7 +608,14 @@ echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
+if test x"${install_sh}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+ *)
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
+ esac
+fi
AC_SUBST(install_sh)])
# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
@@ -527,13 +641,13 @@ AC_SUBST([am__leading_dot])])
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2009 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.
-# serial 3
+# serial 4
# AM_MAKE_INCLUDE()
# -----------------
@@ -542,7 +656,7 @@ AC_DEFUN([AM_MAKE_INCLUDE],
[am_make=${MAKE-make}
cat > confinc << 'END'
am__doit:
- @echo done
+ @echo this is the am__doit target
.PHONY: am__doit
END
# If we don't find an include directive, just comment out the code.
@@ -552,24 +666,24 @@ am__quote=
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
- am__include=include
- am__quote=
- _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+ am__include=include
+ am__quote=
+ _am_result=GNU
+ ;;
+esac
# Now try BSD make style include.
if test "$am__include" = "#"; then
echo '.include "confinc"' > confmf
- if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
- am__include=.include
- am__quote="\""
- _am_result=BSD
- fi
+ case `$am_make -s -f confmf 2> /dev/null` in #(
+ *the\ am__doit\ target*)
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ ;;
+ esac
fi
AC_SUBST([am__include])
AC_SUBST([am__quote])
@@ -579,14 +693,14 @@ rm -f confinc confmf
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
# 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.
-# serial 5
+# serial 6
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
@@ -603,7 +717,14 @@ AC_SUBST($1)])
AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+ *)
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
+ esac
+fi
# Use eval to expand $SHELL
if eval "$MISSING --run true"; then
am_missing_run="$MISSING --run "
@@ -641,13 +762,13 @@ esac
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2008 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.
-# serial 3
+# serial 4
# _AM_MANGLE_OPTION(NAME)
# -----------------------
@@ -664,7 +785,7 @@ AC_DEFUN([_AM_SET_OPTION],
# ----------------------------------
# OPTIONS is a space-separated list of Automake options.
AC_DEFUN([_AM_SET_OPTIONS],
-[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
# -------------------------------------------
@@ -700,14 +821,14 @@ AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
# 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.
-# serial 4
+# serial 5
# AM_SANITY_CHECK
# ---------------
@@ -716,16 +837,29 @@ AC_DEFUN([AM_SANITY_CHECK],
# Just in case
sleep 1
echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name. Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+ *[[\\\"\#\$\&\'\`$am_lf]]*)
+ AC_MSG_ERROR([unsafe absolute working directory name]);;
+esac
+case $srcdir in
+ *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
+ AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+esac
+
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
if test "$[*]" = "X"; then
# -L didn't work.
- set X `ls -t $srcdir/configure conftest.file`
+ set X `ls -t "$srcdir/configure" conftest.file`
fi
rm -f conftest.file
if test "$[*]" != "X $srcdir/configure conftest.file" \
@@ -778,18 +912,25 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008 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.
+# serial 2
+
# _AM_SUBST_NOTMAKE(VARIABLE)
# ---------------------------
-# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in.
+# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
# This macro is traced by Automake.
AC_DEFUN([_AM_SUBST_NOTMAKE])
+# AM_SUBST_NOTMAKE(VARIABLE)
+# ---------------------------
+# Public sister of _AM_SUBST_NOTMAKE.
+AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
+
# Check how to create a tarball. -*- Autoconf -*-
# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
@@ -897,7 +1038,12 @@ m4_include([m4/lcmessage.m4])
m4_include([m4/lib-ld.m4])
m4_include([m4/lib-link.m4])
m4_include([m4/lib-prefix.m4])
+m4_include([m4/libtool.m4])
m4_include([m4/longlong.m4])
+m4_include([m4/ltoptions.m4])
+m4_include([m4/ltsugar.m4])
+m4_include([m4/ltversion.m4])
+m4_include([m4/lt~obsolete.m4])
m4_include([m4/nls.m4])
m4_include([m4/po.m4])
m4_include([m4/progtest.m4])
diff --git a/array.c b/array.c
index 85b06f39..509e5dec 100644
--- a/array.c
+++ b/array.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
diff --git a/awk.h b/awk.h
index d48d77f4..c94e9429 100644
--- a/awk.h
+++ b/awk.h
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -95,12 +95,15 @@ extern int errno;
#undef CHARBITS
#undef INTBITS
+
+#if !defined(ZOS_USS)
#if HAVE_INTTYPES_H
# include <inttypes.h>
#endif
#if HAVE_STDINT_H
# include <stdint.h>
#endif
+#endif /* !ZOS_USS */
#if defined(_MSC_VER)
/* for read()/close() in use replace.c */
@@ -262,7 +265,7 @@ typedef struct Regexp {
#endif /* GNU_REGEX */
/* regexp matching flags: */
#define RE_NEED_START 1 /* need to know start/end of match */
-#define RE_NO_BOL 2 /* for RS, not allowed to match ^ in regexp */
+#define RE_NO_BOL 2 /* not allowed to match ^ in regexp */
/* Stuff for losing systems. */
#if !defined(HAVE_STRTOD)
@@ -510,9 +513,9 @@ typedef struct exp_node {
char *name;
short number;
unsigned long reflags;
-# define CASE 1
-# define CONST 2
-# define FS_DFLT 4
+# define CASE 1
+# define CONSTANT 2
+# define FS_DFLT 4
} nodep;
struct {
AWKNUM fltnum; /* this is here for optimal packing of
@@ -767,6 +770,7 @@ extern int do_intl;
extern int do_non_decimal_data;
extern int do_dump_vars;
extern int do_tidy_mem;
+extern int do_optimize;
extern int use_lc_numeric;
extern int in_begin_rule;
extern int in_end_rule;
@@ -808,7 +812,7 @@ extern char casetable[]; /* for case-independent regexp matching */
#define var_uninitialized(n) ((n)->var_value == Nnull_string)
#ifdef MPROF
-#define getnode(n) emalloc((n), NODE *, sizeof(NODE), "getnode"), (n)->flags = 0, (n)-exec_count = 0;
+#define getnode(n) emalloc((n), NODE *, sizeof(NODE), "getnode"), (n)->flags = 0, (n)->exec_count = 0;
#define freenode(n) free(n)
#else /* not MPROF */
#define getnode(n) if (nextfree) n = nextfree, nextfree = nextfree->nextp;\
@@ -1074,6 +1078,7 @@ extern const char *nodetype2str P((NODETYPE type));
extern NODE *assign_val P((NODE **lhs_p, NODE *rhs));
extern void load_casetable P((void));
extern size_t get_curfunc_arg_count P((void));
+extern AWKNUM calc_exp P((AWKNUM x1, AWKNUM x2));
#ifdef PROFILING
extern void dump_fcall_stack P((FILE *fp));
#endif
@@ -1138,6 +1143,7 @@ extern struct redirect *getredirect P((const char *str, int len));
/* main.c */
extern int main P((int argc, char **argv));
extern int arg_assign P((char *arg, int initing));
+extern int is_std_var P((const char *var));
/* msg.c */
extern void err P((const char *s, const char *emsg, va_list argp)) ATTRIBUTE_PRINTF(2, 0);
#if _MSC_VER == 510
@@ -1253,9 +1259,36 @@ extern char *tempnam P((const char *path, const char *base));
#include <sys/wait.h>
#endif
#ifndef WEXITSTATUS
+#if defined(_MSC_VER) || defined(VMS)
+#define WEXITSTATUS(stat_val) (stat_val)
+#else /* ! (defined(_MSC_VER) || defined(VMS)) */
#define WEXITSTATUS(stat_val) ((((unsigned) (stat_val)) >> 8) & 0xFF)
-#endif
+#endif /* ! (defined(_MSC_VER) || defined(VMS)) */
+#endif /* WEXITSTATUS */
#ifndef STATIC
#define STATIC static
#endif
+
+/* EXIT_SUCCESS and EXIT_FAILURE normally come from <stdlib.h> */
+#ifndef EXIT_SUCCESS
+# define EXIT_SUCCESS 0
+#endif
+#ifndef EXIT_FAILURE
+# define EXIT_FAILURE 1
+#endif
+/* EXIT_FATAL is specific to gawk, not part of Standard C */
+#ifndef EXIT_FATAL
+# define EXIT_FATAL 2
+#endif
+
+/* For z/OS, from Dave Pitts. EXIT_FAILURE is normally 8, make it 1. */
+#ifdef ZOS_USS
+#undef DYNAMIC
+
+#ifdef EXIT_FAILURE
+#undef EXIT_FAILURE
+#endif
+
+#define EXIT_FAILURE 1
+#endif
diff --git a/awkgram.c b/awkgram.c
index 28759f6e..ba079f88 100644
--- a/awkgram.c
+++ b/awkgram.c
@@ -1,30 +1,39 @@
-/* A Bison parser, made by GNU Bison 2.0. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+/* A Bison parser, made by GNU Bison 2.4.1. */
- This program is free software; you can redistribute it and/or modify
+/* Skeleton implementation for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 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.
-
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
-
-/* Written by Richard Stallman by simplifying the original so called
- ``semantic'' parser. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* C LALR(1) parser skeleton written by Richard Stallman, by
+ simplifying the original so-called "semantic" parser. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
@@ -36,118 +45,29 @@
/* Identify Bison output. */
#define YYBISON 1
+/* Bison version. */
+#define YYBISON_VERSION "2.4.1"
+
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Pure parsers. */
#define YYPURE 0
-/* Using locations. */
-#define YYLSP_NEEDED 0
-
-
+/* Push parsers. */
+#define YYPUSH 0
-/* Tokens. */
-#ifndef YYTOKENTYPE
-# define YYTOKENTYPE
- /* Put the tokens into the symbol table, so that GDB and other debuggers
- know about them. */
- enum yytokentype {
- FUNC_CALL = 258,
- NAME = 259,
- REGEXP = 260,
- ERROR = 261,
- YNUMBER = 262,
- YSTRING = 263,
- RELOP = 264,
- IO_OUT = 265,
- IO_IN = 266,
- ASSIGNOP = 267,
- ASSIGN = 268,
- MATCHOP = 269,
- CONCAT_OP = 270,
- LEX_BEGIN = 271,
- LEX_END = 272,
- LEX_IF = 273,
- LEX_ELSE = 274,
- LEX_RETURN = 275,
- LEX_DELETE = 276,
- LEX_SWITCH = 277,
- LEX_CASE = 278,
- LEX_DEFAULT = 279,
- LEX_WHILE = 280,
- LEX_DO = 281,
- LEX_FOR = 282,
- LEX_BREAK = 283,
- LEX_CONTINUE = 284,
- LEX_PRINT = 285,
- LEX_PRINTF = 286,
- LEX_NEXT = 287,
- LEX_EXIT = 288,
- LEX_FUNCTION = 289,
- LEX_GETLINE = 290,
- LEX_NEXTFILE = 291,
- LEX_IN = 292,
- LEX_AND = 293,
- LEX_OR = 294,
- INCREMENT = 295,
- DECREMENT = 296,
- LEX_BUILTIN = 297,
- LEX_LENGTH = 298,
- NEWLINE = 299,
- SLASH_BEFORE_EQUAL = 300,
- UNARY = 301
- };
-#endif
-#define FUNC_CALL 258
-#define NAME 259
-#define REGEXP 260
-#define ERROR 261
-#define YNUMBER 262
-#define YSTRING 263
-#define RELOP 264
-#define IO_OUT 265
-#define IO_IN 266
-#define ASSIGNOP 267
-#define ASSIGN 268
-#define MATCHOP 269
-#define CONCAT_OP 270
-#define LEX_BEGIN 271
-#define LEX_END 272
-#define LEX_IF 273
-#define LEX_ELSE 274
-#define LEX_RETURN 275
-#define LEX_DELETE 276
-#define LEX_SWITCH 277
-#define LEX_CASE 278
-#define LEX_DEFAULT 279
-#define LEX_WHILE 280
-#define LEX_DO 281
-#define LEX_FOR 282
-#define LEX_BREAK 283
-#define LEX_CONTINUE 284
-#define LEX_PRINT 285
-#define LEX_PRINTF 286
-#define LEX_NEXT 287
-#define LEX_EXIT 288
-#define LEX_FUNCTION 289
-#define LEX_GETLINE 290
-#define LEX_NEXTFILE 291
-#define LEX_IN 292
-#define LEX_AND 293
-#define LEX_OR 294
-#define INCREMENT 295
-#define DECREMENT 296
-#define LEX_BUILTIN 297
-#define LEX_LENGTH 298
-#define NEWLINE 299
-#define SLASH_BEFORE_EQUAL 300
-#define UNARY 301
+/* Pull parsers. */
+#define YYPULL 1
+/* Using locations. */
+#define YYLSP_NEEDED 0
/* Copy the first part of user declarations. */
+
+/* Line 189 of yacc.c */
#line 26 "awkgram.y"
#ifdef GAWKDEBUG
@@ -197,6 +117,9 @@ static void check_funcs P((void));
static ssize_t read_one_line P((int fd, void *buffer, size_t count));
static int one_line_close P((int fd));
+static NODE *constant_fold P((NODE *left, NODETYPE op, NODE *right));
+static NODE *optimize_concat P((NODE *left, NODETYPE op, NODE *right));
+
static int want_regexp; /* lexical scanning kludge */
static int can_return; /* parsing kludge */
static int begin_or_end_rule = FALSE; /* parsing kludge */
@@ -240,6 +163,9 @@ extern NODE *end_block;
static char builtin_func[] = "@builtin";
+/* Line 189 of yacc.c */
+#line 168 "y.tab.c"
+
/* Enabling traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
@@ -253,39 +179,229 @@ static char builtin_func[] = "@builtin";
# define YYERROR_VERBOSE 0
#endif
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 117 "awkgram.y"
-typedef union YYSTYPE {
+/* Enabling the token table. */
+#ifndef YYTOKEN_TABLE
+# define YYTOKEN_TABLE 0
+#endif
+
+
+/* Tokens. */
+#ifndef YYTOKENTYPE
+# define YYTOKENTYPE
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
+ know about them. */
+ enum yytokentype {
+ FUNC_CALL = 258,
+ NAME = 259,
+ REGEXP = 260,
+ ERROR = 261,
+ YNUMBER = 262,
+ YSTRING = 263,
+ RELOP = 264,
+ IO_OUT = 265,
+ IO_IN = 266,
+ ASSIGNOP = 267,
+ ASSIGN = 268,
+ MATCHOP = 269,
+ CONCAT_OP = 270,
+ LEX_BEGIN = 271,
+ LEX_END = 272,
+ LEX_IF = 273,
+ LEX_ELSE = 274,
+ LEX_RETURN = 275,
+ LEX_DELETE = 276,
+ LEX_SWITCH = 277,
+ LEX_CASE = 278,
+ LEX_DEFAULT = 279,
+ LEX_WHILE = 280,
+ LEX_DO = 281,
+ LEX_FOR = 282,
+ LEX_BREAK = 283,
+ LEX_CONTINUE = 284,
+ LEX_PRINT = 285,
+ LEX_PRINTF = 286,
+ LEX_NEXT = 287,
+ LEX_EXIT = 288,
+ LEX_FUNCTION = 289,
+ LEX_GETLINE = 290,
+ LEX_NEXTFILE = 291,
+ LEX_IN = 292,
+ LEX_AND = 293,
+ LEX_OR = 294,
+ INCREMENT = 295,
+ DECREMENT = 296,
+ LEX_BUILTIN = 297,
+ LEX_LENGTH = 298,
+ NEWLINE = 299,
+ SLASH_BEFORE_EQUAL = 300,
+ UNARY = 301
+ };
+#endif
+/* Tokens. */
+#define FUNC_CALL 258
+#define NAME 259
+#define REGEXP 260
+#define ERROR 261
+#define YNUMBER 262
+#define YSTRING 263
+#define RELOP 264
+#define IO_OUT 265
+#define IO_IN 266
+#define ASSIGNOP 267
+#define ASSIGN 268
+#define MATCHOP 269
+#define CONCAT_OP 270
+#define LEX_BEGIN 271
+#define LEX_END 272
+#define LEX_IF 273
+#define LEX_ELSE 274
+#define LEX_RETURN 275
+#define LEX_DELETE 276
+#define LEX_SWITCH 277
+#define LEX_CASE 278
+#define LEX_DEFAULT 279
+#define LEX_WHILE 280
+#define LEX_DO 281
+#define LEX_FOR 282
+#define LEX_BREAK 283
+#define LEX_CONTINUE 284
+#define LEX_PRINT 285
+#define LEX_PRINTF 286
+#define LEX_NEXT 287
+#define LEX_EXIT 288
+#define LEX_FUNCTION 289
+#define LEX_GETLINE 290
+#define LEX_NEXTFILE 291
+#define LEX_IN 292
+#define LEX_AND 293
+#define LEX_OR 294
+#define INCREMENT 295
+#define DECREMENT 296
+#define LEX_BUILTIN 297
+#define LEX_LENGTH 298
+#define NEWLINE 299
+#define SLASH_BEFORE_EQUAL 300
+#define UNARY 301
+
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
+
+/* Line 214 of yacc.c */
+#line 120 "awkgram.y"
+
long lval;
AWKNUM fval;
NODE *nodeval;
NODETYPE nodetypeval;
char *sval;
NODE *(*ptrval) P((void));
+
+
+
+/* Line 214 of yacc.c */
+#line 307 "y.tab.c"
} YYSTYPE;
-/* Line 185 of yacc.c. */
-#line 268 "y.tab.c"
+# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
#endif
-
/* Copy the second part of user declarations. */
-/* Line 213 of yacc.c. */
-#line 280 "y.tab.c"
+/* Line 264 of yacc.c */
+#line 319 "y.tab.c"
-#if ! defined (yyoverflow) || YYERROR_VERBOSE
+#ifdef short
+# undef short
+#endif
-# ifndef YYFREE
-# define YYFREE free
+#ifdef YYTYPE_UINT8
+typedef YYTYPE_UINT8 yytype_uint8;
+#else
+typedef unsigned char yytype_uint8;
+#endif
+
+#ifdef YYTYPE_INT8
+typedef YYTYPE_INT8 yytype_int8;
+#elif (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+typedef signed char yytype_int8;
+#else
+typedef short int yytype_int8;
+#endif
+
+#ifdef YYTYPE_UINT16
+typedef YYTYPE_UINT16 yytype_uint16;
+#else
+typedef unsigned short int yytype_uint16;
+#endif
+
+#ifdef YYTYPE_INT16
+typedef YYTYPE_INT16 yytype_int16;
+#else
+typedef short int yytype_int16;
+#endif
+
+#ifndef YYSIZE_T
+# ifdef __SIZE_TYPE__
+# define YYSIZE_T __SIZE_TYPE__
+# elif defined size_t
+# define YYSIZE_T size_t
+# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+# else
+# define YYSIZE_T unsigned int
# endif
-# ifndef YYMALLOC
-# define YYMALLOC malloc
+#endif
+
+#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
+
+#ifndef YY_
+# if YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_(msgid) dgettext ("bison-runtime", msgid)
+# endif
+# endif
+# ifndef YY_
+# define YY_(msgid) msgid
# endif
+#endif
+
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YYUSE(e) ((void) (e))
+#else
+# define YYUSE(e) /* empty */
+#endif
+
+/* Identity function, used to suppress warnings about constant conditions. */
+#ifndef lint
+# define YYID(n) (n)
+#else
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static int
+YYID (int yyi)
+#else
+static int
+YYID (yyi)
+ int yyi;
+#endif
+{
+ return yyi;
+}
+#endif
+
+#if ! defined yyoverflow || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
@@ -293,34 +409,78 @@ typedef union YYSTYPE {
# if YYSTACK_USE_ALLOCA
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
+# elif defined __BUILTIN_VA_ARG_INCR
+# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
+# elif defined _AIX
+# define YYSTACK_ALLOC __alloca
+# elif defined _MSC_VER
+# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
+# define alloca _alloca
# else
# define YYSTACK_ALLOC alloca
+# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
+# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
- /* Pacify GCC's `empty if-body' warning. */
-# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
-# else
-# if defined (__STDC__) || defined (__cplusplus)
-# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
+ /* Pacify GCC's `empty if-body' warning. */
+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
+# ifndef YYSTACK_ALLOC_MAXIMUM
+ /* The OS might guarantee only one guard page at the bottom of the stack,
+ and a page size can be as small as 4096 bytes. So we cannot safely
+ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
+ to allow for a few compiler-allocated temporary stack slots. */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
# endif
+# else
# define YYSTACK_ALLOC YYMALLOC
# define YYSTACK_FREE YYFREE
+# ifndef YYSTACK_ALLOC_MAXIMUM
+# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
+# endif
+# if (defined __cplusplus && ! defined _STDLIB_H \
+ && ! ((defined YYMALLOC || defined malloc) \
+ && (defined YYFREE || defined free)))
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
+# endif
+# ifndef YYMALLOC
+# define YYMALLOC malloc
+# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# ifndef YYFREE
+# define YYFREE free
+# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+void free (void *); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
# endif
-#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
+#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
-#if (! defined (yyoverflow) && (! defined (__cplusplus) || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
+#if (! defined yyoverflow \
+ && (! defined __cplusplus \
+ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
- short int yyss;
- YYSTYPE yyvs;
- };
+ yytype_int16 yyss_alloc;
+ YYSTYPE yyvs_alloc;
+};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
@@ -328,24 +488,24 @@ union yyalloc
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
- ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
+ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
+ YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
-# if defined (__GNUC__) && 1 < __GNUC__
+# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
- register YYSIZE_T yyi; \
+ YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
- while (0)
+ while (YYID (0))
# endif
# endif
@@ -354,48 +514,42 @@ union yyalloc
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
-# define YYSTACK_RELOCATE(Stack) \
+# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do \
{ \
YYSIZE_T yynewbytes; \
- YYCOPY (&yyptr->Stack, Stack, yysize); \
- Stack = &yyptr->Stack; \
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
+ Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
- while (0)
+ while (YYID (0))
#endif
-#if defined (__STDC__) || defined (__cplusplus)
- typedef signed char yysigned_char;
-#else
- typedef short int yysigned_char;
-#endif
-
-/* YYFINAL -- State number of the termination state. */
+/* YYFINAL -- State number of the termination state. */
#define YYFINAL 5
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 1088
-/* YYNTOKENS -- Number of terminals. */
+/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 67
-/* YYNNTS -- Number of nonterminals. */
+/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 56
-/* YYNRULES -- Number of rules. */
+/* YYNRULES -- Number of rules. */
#define YYNRULES 165
-/* YYNRULES -- Number of states. */
+/* YYNRULES -- Number of states. */
#define YYNSTATES 308
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 301
-#define YYTRANSLATE(YYX) \
+#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
-static const unsigned char yytranslate[] =
+static const yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -433,7 +587,7 @@ static const unsigned char yytranslate[] =
#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
YYRHS. */
-static const unsigned short int yyprhs[] =
+static const yytype_uint16 yyprhs[] =
{
0, 0, 3, 7, 8, 11, 14, 17, 20, 23,
24, 26, 30, 32, 34, 40, 42, 44, 46, 48,
@@ -454,8 +608,8 @@ static const unsigned short int yyprhs[] =
517, 519, 520, 522, 524, 526
};
-/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-static const yysigned_char yyrhs[] =
+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
+static const yytype_int8 yyrhs[] =
{
68, 0, -1, 97, 69, 97, -1, -1, 69, 70,
-1, 69, 1, -1, 71, 72, -1, 71, 81, -1,
@@ -513,31 +667,31 @@ static const yysigned_char yyrhs[] =
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
-static const unsigned short int yyrline[] =
+static const yytype_uint16 yyrline[] =
{
- 0, 178, 178, 184, 186, 191, 203, 207, 222, 233,
- 236, 240, 250, 259, 271, 276, 278, 280, 291, 292,
- 297, 296, 320, 319, 345, 346, 351, 352, 370, 375,
- 376, 380, 382, 384, 386, 388, 390, 392, 436, 440,
- 445, 448, 451, 460, 484, 487, 486, 496, 508, 508,
- 539, 541, 559, 581, 587, 588, 593, 646, 647, 664,
- 669, 671, 676, 678, 683, 685, 687, 692, 693, 701,
- 702, 708, 713, 713, 725, 730, 737, 738, 741, 743,
- 748, 749, 755, 756, 761, 763, 765, 767, 769, 776,
- 777, 783, 784, 789, 791, 797, 799, 801, 803, 808,
- 827, 829, 831, 837, 843, 849, 851, 856, 858, 860,
- 865, 867, 871, 872, 877, 879, 881, 886, 888, 890,
- 892, 894, 896, 898, 900, 906, 908, 910, 923, 928,
- 930, 932, 934, 936, 938, 943, 945, 947, 949, 952,
- 954, 968, 976, 977, 979, 981, 983, 986, 994, 1006,
- 1007, 1012, 1014, 1029, 1039, 1054, 1055, 1056, 1060, 1064,
- 1068, 1071, 1073, 1077, 1081, 1084
+ 0, 181, 181, 187, 189, 194, 206, 210, 225, 236,
+ 239, 243, 253, 262, 274, 279, 281, 283, 294, 295,
+ 300, 299, 323, 322, 348, 349, 354, 355, 373, 378,
+ 379, 383, 385, 387, 389, 391, 393, 395, 439, 443,
+ 448, 451, 454, 463, 487, 490, 489, 499, 511, 511,
+ 542, 544, 562, 584, 590, 591, 596, 649, 650, 667,
+ 672, 674, 679, 681, 686, 688, 690, 695, 696, 704,
+ 705, 711, 716, 716, 728, 733, 740, 741, 744, 746,
+ 751, 752, 758, 759, 764, 766, 768, 770, 772, 779,
+ 780, 786, 787, 792, 794, 800, 802, 804, 806, 811,
+ 817, 819, 821, 827, 833, 839, 841, 846, 848, 850,
+ 855, 857, 861, 862, 867, 869, 871, 876, 878, 880,
+ 882, 884, 886, 888, 890, 896, 898, 900, 913, 918,
+ 920, 922, 924, 926, 928, 933, 935, 937, 939, 942,
+ 944, 958, 966, 967, 969, 971, 973, 976, 984, 996,
+ 997, 1002, 1004, 1019, 1029, 1044, 1045, 1046, 1050, 1054,
+ 1058, 1061, 1063, 1067, 1071, 1074
};
#endif
-#if YYDEBUG || YYERROR_VERBOSE
-/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
- First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
+/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"$end", "error", "$undefined", "FUNC_CALL", "NAME", "REGEXP", "ERROR",
@@ -552,23 +706,23 @@ static const char *const yytname[] =
"'*'", "'/'", "'%'", "'!'", "UNARY", "'^'", "'$'", "'('", "')'", "'['",
"']'", "'{'", "'}'", "';'", "$accept", "start", "program", "rule",
"pattern", "action", "func_name", "lex_builtin", "function_prologue",
- "@1", "regexp", "@2", "a_slash", "statements", "statement_term",
- "statement", "@3", "simple_stmt", "@4", "opt_simple_stmt", "switch_body",
- "case_statements", "case_statement", "case_value", "print",
- "print_expression_list", "output_redir", "@5", "if_statement", "nls",
- "opt_nls", "input_redir", "opt_param_list", "param_list", "opt_exp",
- "opt_expression_list", "expression_list", "exp", "assign_operator",
- "relop_or_less", "a_relop", "common_exp", "simp_exp", "simp_exp_nc",
- "non_post_simp_exp", "opt_variable", "variable", "field_spec",
- "opt_incdec", "l_brace", "r_brace", "r_paren", "opt_semi", "semi",
- "colon", "comma", 0
+ "$@1", "regexp", "$@2", "a_slash", "statements", "statement_term",
+ "statement", "$@3", "simple_stmt", "$@4", "opt_simple_stmt",
+ "switch_body", "case_statements", "case_statement", "case_value",
+ "print", "print_expression_list", "output_redir", "$@5", "if_statement",
+ "nls", "opt_nls", "input_redir", "opt_param_list", "param_list",
+ "opt_exp", "opt_expression_list", "expression_list", "exp",
+ "assign_operator", "relop_or_less", "a_relop", "common_exp", "simp_exp",
+ "simp_exp_nc", "non_post_simp_exp", "opt_variable", "variable",
+ "field_spec", "opt_incdec", "l_brace", "r_brace", "r_paren", "opt_semi",
+ "semi", "colon", "comma", 0
};
#endif
# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
token YYLEX-NUM. */
-static const unsigned short int yytoknum[] =
+static const yytype_uint16 yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
@@ -581,7 +735,7 @@ static const unsigned short int yytoknum[] =
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const unsigned char yyr1[] =
+static const yytype_uint8 yyr1[] =
{
0, 67, 68, 69, 69, 69, 70, 70, 70, 71,
71, 71, 71, 71, 72, 73, 73, 73, 74, 74,
@@ -603,7 +757,7 @@ static const unsigned char yyr1[] =
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
-static const unsigned char yyr2[] =
+static const yytype_uint8 yyr2[] =
{
0, 2, 3, 0, 2, 2, 2, 2, 2, 0,
1, 3, 1, 1, 5, 1, 1, 1, 1, 1,
@@ -627,7 +781,7 @@ static const unsigned char yyr2[] =
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
means the default is an error. */
-static const unsigned char yydefact[] =
+static const yytype_uint8 yydefact[] =
{
78, 76, 0, 79, 3, 1, 77, 0, 5, 0,
151, 145, 146, 12, 13, 20, 149, 0, 0, 0,
@@ -662,8 +816,8 @@ static const unsigned char yydefact[] =
78, 0, 26, 0, 0, 39, 0, 38
};
-/* YYDEFGOTO[NTERM-NUM]. */
-static const short int yydefgoto[] =
+/* YYDEFGOTO[NTERM-NUM]. */
+static const yytype_int16 yydefgoto[] =
{
-1, 2, 7, 28, 29, 62, 108, 109, 30, 43,
31, 68, 32, 125, 63, 177, 193, 178, 208, 226,
@@ -676,7 +830,7 @@ static const short int yydefgoto[] =
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -221
-static const short int yypact[] =
+static const yytype_int16 yypact[] =
{
-32, -221, 35, -3, -221, -221, -221, 343, -221, -13,
-4, -221, -221, -221, -221, -221, 32, 32, 32, -6,
@@ -712,7 +866,7 @@ static const short int yypact[] =
};
/* YYPGOTO[NTERM-NUM]. */
-static const short int yypgoto[] =
+static const yytype_int16 yypgoto[] =
{
-221, -221, -221, -221, -221, 169, -221, -221, -221, -221,
-85, -221, -221, -173, -39, -169, -221, -184, -221, -220,
@@ -727,7 +881,7 @@ static const short int yypgoto[] =
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -93
-static const short int yytable[] =
+static const yytype_int16 yytable[] =
{
33, 45, 46, 47, 58, 65, 65, 51, 51, 209,
51, 56, 1, 112, 113, 225, -93, 231, 1, 103,
@@ -840,7 +994,7 @@ static const short int yytable[] =
23, 0, 24, 0, 25, 0, 0, 26, 54
};
-static const short int yycheck[] =
+static const yytype_int16 yycheck[] =
{
7, 16, 17, 18, 27, 29, 30, 22, 23, 182,
25, 26, 44, 48, 49, 199, 9, 209, 44, 42,
@@ -955,7 +1109,7 @@ static const short int yycheck[] =
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
-static const unsigned char yystos[] =
+static const yytype_uint8 yystos[] =
{
0, 44, 68, 96, 97, 0, 44, 69, 1, 3,
4, 7, 8, 16, 17, 34, 35, 40, 41, 42,
@@ -990,22 +1144,6 @@ static const unsigned char yystos[] =
118, 97, 97, 80, 97, 82, 80, 82
};
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
-#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T)
-# if defined (__STDC__) || defined (__cplusplus)
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
-# endif
-#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
-#endif
-
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY (-2)
@@ -1031,15 +1169,15 @@ do \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
- YYPOPSTACK; \
+ YYPOPSTACK (1); \
goto yybackup; \
} \
else \
- { \
- yyerror ("syntax error: cannot back up");\
+ { \
+ yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
-while (0)
+while (YYID (0))
#define YYTERROR 1
@@ -1054,7 +1192,7 @@ while (0)
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N) \
do \
- if (N) \
+ if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
@@ -1068,7 +1206,7 @@ while (0)
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
- while (0)
+ while (YYID (0))
#endif
@@ -1080,8 +1218,8 @@ while (0)
# if YYLTYPE_IS_TRIVIAL
# define YY_LOCATION_PRINT(File, Loc) \
fprintf (File, "%d.%d-%d.%d", \
- (Loc).first_line, (Loc).first_column, \
- (Loc).last_line, (Loc).last_column)
+ (Loc).first_line, (Loc).first_column, \
+ (Loc).last_line, (Loc).last_column)
# else
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
# endif
@@ -1108,37 +1246,100 @@ while (0)
do { \
if (yydebug) \
YYFPRINTF Args; \
-} while (0)
+} while (YYID (0))
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
-do { \
- if (yydebug) \
- { \
- YYFPRINTF (stderr, "%s ", Title); \
- yysymprint (stderr, \
- Type, Value); \
- YYFPRINTF (stderr, "\n"); \
- } \
-} while (0)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Type, Value); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (YYID (0))
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (!yyvaluep)
+ return;
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+ YYUSE (yyoutput);
+# endif
+ switch (yytype)
+ {
+ default:
+ break;
+ }
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+ yy_symbol_value_print (yyoutput, yytype, yyvaluep);
+ YYFPRINTF (yyoutput, ")");
+}
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
| TOP (included). |
`------------------------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_stack_print (short int *bottom, short int *top)
+yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
#else
static void
-yy_stack_print (bottom, top)
- short int *bottom;
- short int *top;
+yy_stack_print (yybottom, yytop)
+ yytype_int16 *yybottom;
+ yytype_int16 *yytop;
#endif
{
YYFPRINTF (stderr, "Stack now");
- for (/* Nothing. */; bottom <= top; ++bottom)
- YYFPRINTF (stderr, " %d", *bottom);
+ for (; yybottom <= yytop; yybottom++)
+ {
+ int yybot = *yybottom;
+ YYFPRINTF (stderr, " %d", yybot);
+ }
YYFPRINTF (stderr, "\n");
}
@@ -1146,37 +1347,45 @@ yy_stack_print (bottom, top)
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
-} while (0)
+} while (YYID (0))
/*------------------------------------------------.
| Report that the YYRULE is going to be reduced. |
`------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_reduce_print (int yyrule)
+yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
#else
static void
-yy_reduce_print (yyrule)
+yy_reduce_print (yyvsp, yyrule)
+ YYSTYPE *yyvsp;
int yyrule;
#endif
{
+ int yynrhs = yyr2[yyrule];
int yyi;
- unsigned int yylno = yyrline[yyrule];
- YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
- yyrule - 1, yylno);
- /* Print the symbols being reduced, and their result. */
- for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
- YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
- YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
+ unsigned long int yylno = yyrline[yyrule];
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
+ yyrule - 1, yylno);
+ /* The symbols being reduced. */
+ for (yyi = 0; yyi < yynrhs; yyi++)
+ {
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
+ yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
+ &(yyvsp[(yyi + 1) - (yynrhs)])
+ );
+ YYFPRINTF (stderr, "\n");
+ }
}
# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
- yy_reduce_print (Rule); \
-} while (0)
+ yy_reduce_print (yyvsp, Rule); \
+} while (YYID (0))
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
@@ -1198,7 +1407,7 @@ int yydebug;
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
- SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
+ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
evaluated with infinite-precision integer arithmetic. */
#ifndef YYMAXDEPTH
@@ -1210,45 +1419,47 @@ int yydebug;
#if YYERROR_VERBOSE
# ifndef yystrlen
-# if defined (__GLIBC__) && defined (_STRING_H)
+# if defined __GLIBC__ && defined _STRING_H
# define yystrlen strlen
# else
/* Return the length of YYSTR. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static YYSIZE_T
-# if defined (__STDC__) || defined (__cplusplus)
yystrlen (const char *yystr)
-# else
+#else
+static YYSIZE_T
yystrlen (yystr)
- const char *yystr;
-# endif
+ const char *yystr;
+#endif
{
- register const char *yys = yystr;
-
- while (*yys++ != '\0')
+ YYSIZE_T yylen;
+ for (yylen = 0; yystr[yylen]; yylen++)
continue;
-
- return yys - yystr - 1;
+ return yylen;
}
# endif
# endif
# ifndef yystpcpy
-# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
+# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
# define yystpcpy stpcpy
# else
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
YYDEST. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static char *
-# if defined (__STDC__) || defined (__cplusplus)
yystpcpy (char *yydest, const char *yysrc)
-# else
+#else
+static char *
yystpcpy (yydest, yysrc)
- char *yydest;
- const char *yysrc;
-# endif
+ char *yydest;
+ const char *yysrc;
+#endif
{
- register char *yyd = yydest;
- register const char *yys = yysrc;
+ char *yyd = yydest;
+ const char *yys = yysrc;
while ((*yyd++ = *yys++) != '\0')
continue;
@@ -1258,53 +1469,171 @@ yystpcpy (yydest, yysrc)
# endif
# endif
-#endif /* !YYERROR_VERBOSE */
+# ifndef yytnamerr
+/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
+ quotes and backslashes, so that it's suitable for yyerror. The
+ heuristic is that double-quoting is unnecessary unless the string
+ contains an apostrophe, a comma, or backslash (other than
+ backslash-backslash). YYSTR is taken from yytname. If YYRES is
+ null, do not copy; instead, return the length of what the result
+ would have been. */
+static YYSIZE_T
+yytnamerr (char *yyres, const char *yystr)
+{
+ if (*yystr == '"')
+ {
+ YYSIZE_T yyn = 0;
+ char const *yyp = yystr;
+
+ for (;;)
+ switch (*++yyp)
+ {
+ case '\'':
+ case ',':
+ goto do_not_strip_quotes;
+
+ case '\\':
+ if (*++yyp != '\\')
+ goto do_not_strip_quotes;
+ /* Fall through. */
+ default:
+ if (yyres)
+ yyres[yyn] = *yyp;
+ yyn++;
+ break;
+
+ case '"':
+ if (yyres)
+ yyres[yyn] = '\0';
+ return yyn;
+ }
+ do_not_strip_quotes: ;
+ }
-
+ if (! yyres)
+ return yystrlen (yystr);
-#if YYDEBUG
-/*--------------------------------.
-| Print this symbol on YYOUTPUT. |
-`--------------------------------*/
+ return yystpcpy (yyres, yystr) - yyres;
+}
+# endif
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
-#else
-static void
-yysymprint (yyoutput, yytype, yyvaluep)
- FILE *yyoutput;
- int yytype;
- YYSTYPE *yyvaluep;
-#endif
+/* Copy into YYRESULT an error message about the unexpected token
+ YYCHAR while in state YYSTATE. Return the number of bytes copied,
+ including the terminating null byte. If YYRESULT is null, do not
+ copy anything; just return the number of bytes that would be
+ copied. As a special case, return 0 if an ordinary "syntax error"
+ message will do. Return YYSIZE_MAXIMUM if overflow occurs during
+ size calculation. */
+static YYSIZE_T
+yysyntax_error (char *yyresult, int yystate, int yychar)
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ int yyn = yypact[yystate];
- if (yytype < YYNTOKENS)
- YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
+ return 0;
else
- YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+ {
+ int yytype = YYTRANSLATE (yychar);
+ YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
+ YYSIZE_T yysize = yysize0;
+ YYSIZE_T yysize1;
+ int yysize_overflow = 0;
+ enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
+ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+ int yyx;
+
+# if 0
+ /* This is so xgettext sees the translatable formats that are
+ constructed on the fly. */
+ YY_("syntax error, unexpected %s");
+ YY_("syntax error, unexpected %s, expecting %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+# endif
+ char *yyfmt;
+ char const *yyf;
+ static char const yyunexpected[] = "syntax error, unexpected %s";
+ static char const yyexpecting[] = ", expecting %s";
+ static char const yyor[] = " or %s";
+ char yyformat[sizeof yyunexpected
+ + sizeof yyexpecting - 1
+ + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
+ * (sizeof yyor - 1))];
+ char const *yyprefix = yyexpecting;
+
+ /* Start YYX at -YYN if negative to avoid negative indexes in
+ YYCHECK. */
+ int yyxbegin = yyn < 0 ? -yyn : 0;
+
+ /* Stay within bounds of both yycheck and yytname. */
+ int yychecklim = YYLAST - yyn + 1;
+ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
+ int yycount = 1;
+
+ yyarg[0] = yytname[yytype];
+ yyfmt = yystpcpy (yyformat, yyunexpected);
+
+ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+ {
+ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
+ {
+ yycount = 1;
+ yysize = yysize0;
+ yyformat[sizeof yyunexpected - 1] = '\0';
+ break;
+ }
+ yyarg[yycount++] = yytname[yyx];
+ yysize1 = yysize + yytnamerr (0, yytname[yyx]);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+ yyfmt = yystpcpy (yyfmt, yyprefix);
+ yyprefix = yyor;
+ }
+ yyf = YY_(yyformat);
+ yysize1 = yysize + yystrlen (yyf);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
-# ifdef YYPRINT
- if (yytype < YYNTOKENS)
- YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-# endif
- switch (yytype)
- {
- default:
- break;
+ if (yysize_overflow)
+ return YYSIZE_MAXIMUM;
+
+ if (yyresult)
+ {
+ /* Avoid sprintf, as that infringes on the user's name space.
+ Don't have undefined behavior even if the translation
+ produced a string with the wrong number of "%s"s. */
+ char *yyp = yyresult;
+ int yyi = 0;
+ while ((*yyp = *yyf) != '\0')
+ {
+ if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
+ {
+ yyp += yytnamerr (yyp, yyarg[yyi++]);
+ yyf += 2;
+ }
+ else
+ {
+ yyp++;
+ yyf++;
+ }
+ }
+ }
+ return yysize;
}
- YYFPRINTF (yyoutput, ")");
}
+#endif /* YYERROR_VERBOSE */
+
-#endif /* ! YYDEBUG */
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
#else
@@ -1315,8 +1644,7 @@ yydestruct (yymsg, yytype, yyvaluep)
YYSTYPE *yyvaluep;
#endif
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ YYUSE (yyvaluep);
if (!yymsg)
yymsg = "Deleting";
@@ -1326,21 +1654,19 @@ yydestruct (yymsg, yytype, yyvaluep)
{
default:
- break;
+ break;
}
}
-
/* Prevent warnings from -Wmissing-prototypes. */
-
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
-# else
+#else
int yyparse ();
-# endif
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void);
#else
int yyparse ();
@@ -1348,11 +1674,10 @@ int yyparse ();
#endif /* ! YYPARSE_PARAM */
-
-/* The look-ahead symbol. */
+/* The lookahead symbol. */
int yychar;
-/* The semantic value of the look-ahead symbol. */
+/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Number of syntax errors so far. */
@@ -1360,19 +1685,23 @@ int yynerrs;
-/*----------.
-| yyparse. |
-`----------*/
+/*-------------------------.
+| yyparse or yypush_parse. |
+`-------------------------*/
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM)
-# else
-int yyparse (YYPARSE_PARAM)
- void *YYPARSE_PARAM;
-# endif
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void *YYPARSE_PARAM)
+#else
+int
+yyparse (YYPARSE_PARAM)
+ void *YYPARSE_PARAM;
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
int
yyparse (void)
#else
@@ -1382,66 +1711,71 @@ yyparse ()
#endif
#endif
{
-
- register int yystate;
- register int yyn;
- int yyresult;
- /* Number of tokens to shift before error messages enabled. */
- int yyerrstatus;
- /* Look-ahead token as an internal (translated) token number. */
- int yytoken = 0;
-
- /* Three stacks and their tools:
- `yyss': related to states,
- `yyvs': related to semantic values,
- `yyls': related to locations.
- Refer to the stacks thru separate pointers, to allow yyoverflow
- to reallocate them elsewhere. */
- /* The state stack. */
- short int yyssa[YYINITDEPTH];
- short int *yyss = yyssa;
- register short int *yyssp;
+ int yystate;
+ /* Number of tokens to shift before error messages enabled. */
+ int yyerrstatus;
- /* The semantic value stack. */
- YYSTYPE yyvsa[YYINITDEPTH];
- YYSTYPE *yyvs = yyvsa;
- register YYSTYPE *yyvsp;
+ /* The stacks and their tools:
+ `yyss': related to states.
+ `yyvs': related to semantic values.
+ Refer to the stacks thru separate pointers, to allow yyoverflow
+ to reallocate them elsewhere. */
+ /* The state stack. */
+ yytype_int16 yyssa[YYINITDEPTH];
+ yytype_int16 *yyss;
+ yytype_int16 *yyssp;
-#define YYPOPSTACK (yyvsp--, yyssp--)
+ /* The semantic value stack. */
+ YYSTYPE yyvsa[YYINITDEPTH];
+ YYSTYPE *yyvs;
+ YYSTYPE *yyvsp;
- YYSIZE_T yystacksize = YYINITDEPTH;
+ YYSIZE_T yystacksize;
+ int yyn;
+ int yyresult;
+ /* Lookahead token as an internal (translated) token number. */
+ int yytoken;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
+#if YYERROR_VERBOSE
+ /* Buffer for error messages, and its allocated size. */
+ char yymsgbuf[128];
+ char *yymsg = yymsgbuf;
+ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
+#endif
+
+#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
+
+ /* The number of symbols on the RHS of the reduced rule.
+ Keep to zero when no symbol should be popped. */
+ int yylen = 0;
- /* When reducing, the number of symbols on the RHS of the reduced
- rule. */
- int yylen;
+ yytoken = 0;
+ yyss = yyssa;
+ yyvs = yyvsa;
+ yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr, "Starting parse\n"));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
- yychar = YYEMPTY; /* Cause a token to be read. */
+ yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
so that they stay on the same level as the state stack.
The wasted elements are never initialized. */
-
yyssp = yyss;
yyvsp = yyvs;
-
- yyvsp[0] = yylval;
-
goto yysetstate;
/*------------------------------------------------------------.
@@ -1449,8 +1783,7 @@ yyparse ()
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
- have just been pushed. so pushing a state here evens the stacks.
- */
+ have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
yysetstate:
@@ -1463,21 +1796,19 @@ yyparse ()
#ifdef yyoverflow
{
- /* Give user a chance to reallocate the stack. Use copies of
+ /* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
- short int *yyss1 = yyss;
-
+ yytype_int16 *yyss1 = yyss;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
- yyoverflow ("parser stack overflow",
+ yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
-
&yystacksize);
yyss = yyss1;
@@ -1485,24 +1816,23 @@ yyparse ()
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
- goto yyoverflowlab;
+ goto yyexhaustedlab;
# else
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
- goto yyoverflowlab;
+ goto yyexhaustedlab;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
- short int *yyss1 = yyss;
+ yytype_int16 *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
- goto yyoverflowlab;
- YYSTACK_RELOCATE (yyss);
- YYSTACK_RELOCATE (yyvs);
-
+ goto yyexhaustedlab;
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
@@ -1513,7 +1843,6 @@ yyparse ()
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
-
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
@@ -1523,6 +1852,9 @@ yyparse ()
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
+ if (yystate == YYFINAL)
+ YYACCEPT;
+
goto yybackup;
/*-----------.
@@ -1530,19 +1862,17 @@ yyparse ()
`-----------*/
yybackup:
-/* Do appropriate processing given the current state. */
-/* Read a look-ahead token if we need one and don't already have one. */
-/* yyresume: */
-
- /* First try to decide what to do without reference to look-ahead token. */
+ /* Do appropriate processing given the current state. Read a
+ lookahead token if we need one and don't already have one. */
+ /* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
if (yyn == YYPACT_NINF)
goto yydefault;
- /* Not known => get a look-ahead token if don't already have one. */
+ /* Not known => get a lookahead token if don't already have one. */
- /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
+ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
@@ -1574,25 +1904,20 @@ yybackup:
goto yyreduce;
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
- /* Shift the look-ahead token. */
- YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
-
- /* Discard the token being shifted unless it is eof. */
- if (yychar != YYEOF)
- yychar = YYEMPTY;
-
- *++yyvsp = yylval;
-
-
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
+ /* Shift the lookahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+
+ /* Discard the shifted token. */
+ yychar = YYEMPTY;
+
yystate = yyn;
+ *++yyvsp = yylval;
+
goto yynewstate;
@@ -1628,14 +1953,18 @@ yyreduce:
switch (yyn)
{
case 2:
-#line 179 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 182 "awkgram.y"
{
check_funcs();
}
break;
case 4:
-#line 187 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 190 "awkgram.y"
{
begin_or_end_rule = parsing_end_rule = FALSE;
yyerrok;
@@ -1643,7 +1972,9 @@ yyreduce:
break;
case 5:
-#line 192 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 195 "awkgram.y"
{
begin_or_end_rule = parsing_end_rule = FALSE;
/*
@@ -1655,18 +1986,22 @@ yyreduce:
break;
case 6:
-#line 204 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 207 "awkgram.y"
{
- (yyvsp[-1].nodeval)->rnode = (yyvsp[0].nodeval);
+ (yyvsp[(1) - (2)].nodeval)->rnode = (yyvsp[(2) - (2)].nodeval);
}
break;
case 7:
-#line 208 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 211 "awkgram.y"
{
- if ((yyvsp[-1].nodeval)->lnode != NULL) {
+ if ((yyvsp[(1) - (2)].nodeval)->lnode != NULL) {
/* pattern rule with non-empty pattern */
- (yyvsp[-1].nodeval)->rnode = node(NULL, Node_K_print_rec, NULL);
+ (yyvsp[(1) - (2)].nodeval)->rnode = node(NULL, Node_K_print_rec, NULL);
} else {
/* an error */
if (begin_or_end_rule)
@@ -1680,44 +2015,54 @@ yyreduce:
break;
case 8:
-#line 223 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 226 "awkgram.y"
{
can_return = FALSE;
- if ((yyvsp[-1].nodeval))
- func_install((yyvsp[-1].nodeval), (yyvsp[0].nodeval));
+ if ((yyvsp[(1) - (2)].nodeval))
+ func_install((yyvsp[(1) - (2)].nodeval), (yyvsp[(2) - (2)].nodeval));
yyerrok;
}
break;
case 9:
-#line 233 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 236 "awkgram.y"
{
(yyval.nodeval) = append_pattern(&expression_value, (NODE *) NULL);
}
break;
case 10:
-#line 237 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 240 "awkgram.y"
{
- (yyval.nodeval) = append_pattern(&expression_value, (yyvsp[0].nodeval));
+ (yyval.nodeval) = append_pattern(&expression_value, (yyvsp[(1) - (1)].nodeval));
}
break;
case 11:
-#line 241 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 244 "awkgram.y"
{
NODE *r;
getnode(r);
r->type = Node_line_range;
- r->condpair = node((yyvsp[-2].nodeval), Node_cond_pair, (yyvsp[0].nodeval));
+ r->condpair = node((yyvsp[(1) - (3)].nodeval), Node_cond_pair, (yyvsp[(3) - (3)].nodeval));
r->triggered = FALSE;
(yyval.nodeval) = append_pattern(&expression_value, r);
}
break;
case 12:
-#line 251 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 254 "awkgram.y"
{
static int begin_seen = 0;
if (do_lint_old && ++begin_seen == 2)
@@ -1729,7 +2074,9 @@ yyreduce:
break;
case 13:
-#line 260 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 263 "awkgram.y"
{
static int end_seen = 0;
if (do_lint_old && ++end_seen == 2)
@@ -1741,22 +2088,30 @@ yyreduce:
break;
case 14:
-#line 272 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[-3].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 275 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(2) - (5)].nodeval); }
break;
case 15:
-#line 277 "awkgram.y"
- { (yyval.sval) = (yyvsp[0].sval); }
+
+/* Line 1455 of yacc.c */
+#line 280 "awkgram.y"
+ { (yyval.sval) = (yyvsp[(1) - (1)].sval); }
break;
case 16:
-#line 279 "awkgram.y"
- { (yyval.sval) = (yyvsp[0].sval); }
+
+/* Line 1455 of yacc.c */
+#line 282 "awkgram.y"
+ { (yyval.sval) = (yyvsp[(1) - (1)].sval); }
break;
case 17:
-#line 281 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 284 "awkgram.y"
{
yyerror(_("`%s' is a built-in function, it cannot be redefined"),
tokstart);
@@ -1767,20 +2122,24 @@ yyreduce:
break;
case 20:
-#line 297 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 300 "awkgram.y"
{
param_counter = 0;
}
break;
case 21:
-#line 301 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 304 "awkgram.y"
{
NODE *t;
- t = make_param((yyvsp[-4].sval));
+ t = make_param((yyvsp[(3) - (7)].sval));
t->flags |= FUNC;
- (yyval.nodeval) = append_right(t, (yyvsp[-2].nodeval));
+ (yyval.nodeval) = append_right(t, (yyvsp[(5) - (7)].nodeval));
can_return = TRUE;
/* check for duplicate parameter names */
if (dup_parms((yyval.nodeval)))
@@ -1789,97 +2148,121 @@ yyreduce:
break;
case 22:
-#line 320 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 323 "awkgram.y"
{ ++want_regexp; }
break;
case 23:
-#line 322 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 325 "awkgram.y"
{
NODE *n;
- size_t len = strlen((yyvsp[0].sval));
+ size_t len = strlen((yyvsp[(3) - (3)].sval));
if (do_lint) {
if (len == 0)
lintwarn(_("regexp constant `//' looks like a C++ comment, but is not"));
- else if (((yyvsp[0].sval))[0] == '*' && ((yyvsp[0].sval))[len-1] == '*')
+ else if (((yyvsp[(3) - (3)].sval))[0] == '*' && ((yyvsp[(3) - (3)].sval))[len-1] == '*')
/* possible C comment */
lintwarn(_("regexp constant `/%s/' looks like a C comment, but is not"), tokstart);
}
getnode(n);
n->type = Node_regex;
- n->re_exp = make_string((yyvsp[0].sval), len);
- n->re_reg = make_regexp((yyvsp[0].sval), len, FALSE, TRUE);
+ n->re_exp = make_string((yyvsp[(3) - (3)].sval), len);
+ n->re_reg = make_regexp((yyvsp[(3) - (3)].sval), len, FALSE, TRUE);
n->re_text = NULL;
- n->re_flags = CONST;
+ n->re_flags = CONSTANT;
n->re_cnt = 1;
(yyval.nodeval) = n;
}
break;
case 26:
-#line 351 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 354 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 27:
-#line 353 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 356 "awkgram.y"
{
- if ((yyvsp[0].nodeval) == NULL)
- (yyval.nodeval) = (yyvsp[-1].nodeval);
+ if ((yyvsp[(2) - (2)].nodeval) == NULL)
+ (yyval.nodeval) = (yyvsp[(1) - (2)].nodeval);
else {
- if (do_lint && isnoeffect((yyvsp[0].nodeval)->type))
+ if (do_lint && isnoeffect((yyvsp[(2) - (2)].nodeval)->type))
lintwarn(_("statement may have no effect"));
- if ((yyvsp[-1].nodeval) == NULL)
- (yyval.nodeval) = (yyvsp[0].nodeval);
+ if ((yyvsp[(1) - (2)].nodeval) == NULL)
+ (yyval.nodeval) = (yyvsp[(2) - (2)].nodeval);
else
(yyval.nodeval) = append_right(
- ((yyvsp[-1].nodeval)->type == Node_statement_list ? (yyvsp[-1].nodeval)
- : node((yyvsp[-1].nodeval), Node_statement_list, (NODE *) NULL)),
- ((yyvsp[0].nodeval)->type == Node_statement_list ? (yyvsp[0].nodeval)
- : node((yyvsp[0].nodeval), Node_statement_list, (NODE *) NULL)));
+ ((yyvsp[(1) - (2)].nodeval)->type == Node_statement_list ? (yyvsp[(1) - (2)].nodeval)
+ : node((yyvsp[(1) - (2)].nodeval), Node_statement_list, (NODE *) NULL)),
+ ((yyvsp[(2) - (2)].nodeval)->type == Node_statement_list ? (yyvsp[(2) - (2)].nodeval)
+ : node((yyvsp[(2) - (2)].nodeval), Node_statement_list, (NODE *) NULL)));
}
yyerrok;
}
break;
case 28:
-#line 371 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 374 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 31:
-#line 381 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 384 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 32:
-#line 383 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[-1].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 386 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(2) - (3)].nodeval); }
break;
case 33:
-#line 385 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 388 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 34:
-#line 387 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-6].nodeval), Node_K_switch, (yyvsp[-2].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 390 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(3) - (9)].nodeval), Node_K_switch, (yyvsp[(7) - (9)].nodeval)); }
break;
case 35:
-#line 389 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-3].nodeval), Node_K_while, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 392 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(3) - (6)].nodeval), Node_K_while, (yyvsp[(6) - (6)].nodeval)); }
break;
case 36:
-#line 391 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_K_do, (yyvsp[-5].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 394 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(6) - (8)].nodeval), Node_K_do, (yyvsp[(3) - (8)].nodeval)); }
break;
case 37:
-#line 393 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 396 "awkgram.y"
{
/*
* Efficiency hack. Recognize the special case of
@@ -1894,12 +2277,12 @@ yyreduce:
* Check that the body is a `delete a[i]' statement,
* and that both the loop var and array names match.
*/
- if ((yyvsp[0].nodeval) != NULL && (yyvsp[0].nodeval)->type == Node_K_delete && (yyvsp[0].nodeval)->rnode != NULL) {
+ if ((yyvsp[(8) - (8)].nodeval) != NULL && (yyvsp[(8) - (8)].nodeval)->type == Node_K_delete && (yyvsp[(8) - (8)].nodeval)->rnode != NULL) {
NODE *arr, *sub;
- assert((yyvsp[0].nodeval)->rnode->type == Node_expression_list);
- arr = (yyvsp[0].nodeval)->lnode; /* array var */
- sub = (yyvsp[0].nodeval)->rnode->lnode; /* index var */
+ assert((yyvsp[(8) - (8)].nodeval)->rnode->type == Node_expression_list);
+ arr = (yyvsp[(8) - (8)].nodeval)->lnode; /* array var */
+ sub = (yyvsp[(8) - (8)].nodeval)->rnode->lnode; /* index var */
if ( (arr->type == Node_var_new
|| arr->type == Node_var_array
@@ -1907,51 +2290,61 @@ yyreduce:
&& (sub->type == Node_var_new
|| sub->type == Node_var
|| sub->type == Node_param_list)
- && strcmp((yyvsp[-5].sval), sub->vname) == 0
- && strcmp((yyvsp[-3].sval), arr->vname) == 0) {
- (yyvsp[0].nodeval)->type = Node_K_delete_loop;
- (yyval.nodeval) = (yyvsp[0].nodeval);
- free((yyvsp[-5].sval)); /* thanks to valgrind for pointing these out */
- free((yyvsp[-3].sval));
+ && strcmp((yyvsp[(3) - (8)].sval), sub->vname) == 0
+ && strcmp((yyvsp[(5) - (8)].sval), arr->vname) == 0) {
+ (yyvsp[(8) - (8)].nodeval)->type = Node_K_delete_loop;
+ (yyval.nodeval) = (yyvsp[(8) - (8)].nodeval);
+ free((yyvsp[(3) - (8)].sval)); /* thanks to valgrind for pointing these out */
+ free((yyvsp[(5) - (8)].sval));
}
else
goto regular_loop;
} else {
regular_loop:
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_K_arrayfor,
- make_for_loop(variable((yyvsp[-5].sval), CAN_FREE, Node_var),
- (NODE *) NULL, variable((yyvsp[-3].sval), CAN_FREE, Node_var_array)));
+ (yyval.nodeval) = node((yyvsp[(8) - (8)].nodeval), Node_K_arrayfor,
+ make_for_loop(variable((yyvsp[(3) - (8)].sval), CAN_FREE, Node_var),
+ (NODE *) NULL, variable((yyvsp[(5) - (8)].sval), CAN_FREE, Node_var_array)));
}
}
break;
case 38:
-#line 437 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 440 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_K_for, (NODE *) make_for_loop((yyvsp[-9].nodeval), (yyvsp[-6].nodeval), (yyvsp[-3].nodeval)));
+ (yyval.nodeval) = node((yyvsp[(12) - (12)].nodeval), Node_K_for, (NODE *) make_for_loop((yyvsp[(3) - (12)].nodeval), (yyvsp[(6) - (12)].nodeval), (yyvsp[(9) - (12)].nodeval)));
}
break;
case 39:
-#line 441 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 444 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_K_for,
- (NODE *) make_for_loop((yyvsp[-8].nodeval), (NODE *) NULL, (yyvsp[-3].nodeval)));
+ (yyval.nodeval) = node((yyvsp[(11) - (11)].nodeval), Node_K_for,
+ (NODE *) make_for_loop((yyvsp[(3) - (11)].nodeval), (NODE *) NULL, (yyvsp[(8) - (11)].nodeval)));
}
break;
case 40:
-#line 447 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 450 "awkgram.y"
{ (yyval.nodeval) = node((NODE *) NULL, Node_K_break, (NODE *) NULL); }
break;
case 41:
-#line 450 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 453 "awkgram.y"
{ (yyval.nodeval) = node((NODE *) NULL, Node_K_continue, (NODE *) NULL); }
break;
case 42:
-#line 452 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 455 "awkgram.y"
{ NODETYPE type;
if (begin_or_end_rule)
@@ -1963,7 +2356,9 @@ yyreduce:
break;
case 43:
-#line 461 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 464 "awkgram.y"
{
static short warned = FALSE;
@@ -1990,12 +2385,16 @@ yyreduce:
break;
case 44:
-#line 485 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_K_exit, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 488 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (3)].nodeval), Node_K_exit, (NODE *) NULL); }
break;
case 45:
-#line 487 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 490 "awkgram.y"
{
if (! can_return)
yyerror(_("`return' used outside function context"));
@@ -2003,20 +2402,26 @@ yyreduce:
break;
case 46:
-#line 492 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 495 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[-1].nodeval) == NULL ? Nnull_string : (yyvsp[-1].nodeval),
+ (yyval.nodeval) = node((yyvsp[(3) - (4)].nodeval) == NULL ? Nnull_string : (yyvsp[(3) - (4)].nodeval),
Node_K_return, (NODE *) NULL);
}
break;
case 48:
-#line 508 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 511 "awkgram.y"
{ in_print = TRUE; in_parens = 0; }
break;
case 49:
-#line 509 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 512 "awkgram.y"
{
/*
* Optimization: plain `print' has no expression list, so $3 is null.
@@ -2024,25 +2429,25 @@ yyreduce:
* and lnode is a field spec for field 0, we have `print $0'.
* For both, use Node_K_print_rec, which is faster for these two cases.
*/
- if ((yyvsp[-3].nodetypeval) == Node_K_print &&
- ((yyvsp[-1].nodeval) == NULL
- || ((yyvsp[-1].nodeval)->type == Node_expression_list
- && (yyvsp[-1].nodeval)->rnode == NULL
- && (yyvsp[-1].nodeval)->lnode->type == Node_field_spec
- && (yyvsp[-1].nodeval)->lnode->lnode->type == Node_val
- && (yyvsp[-1].nodeval)->lnode->lnode->numbr == 0.0))
+ if ((yyvsp[(1) - (4)].nodetypeval) == Node_K_print &&
+ ((yyvsp[(3) - (4)].nodeval) == NULL
+ || ((yyvsp[(3) - (4)].nodeval)->type == Node_expression_list
+ && (yyvsp[(3) - (4)].nodeval)->rnode == NULL
+ && (yyvsp[(3) - (4)].nodeval)->lnode->type == Node_field_spec
+ && (yyvsp[(3) - (4)].nodeval)->lnode->lnode->type == Node_val
+ && (yyvsp[(3) - (4)].nodeval)->lnode->lnode->numbr == 0.0))
) {
static short warned = FALSE;
- (yyval.nodeval) = node(NULL, Node_K_print_rec, (yyvsp[0].nodeval));
+ (yyval.nodeval) = node(NULL, Node_K_print_rec, (yyvsp[(4) - (4)].nodeval));
- if (do_lint && (yyvsp[-1].nodeval) == NULL && begin_or_end_rule && ! warned) {
+ if (do_lint && (yyvsp[(3) - (4)].nodeval) == NULL && begin_or_end_rule && ! warned) {
warned = TRUE;
lintwarn(
_("plain `print' in BEGIN or END rule should probably be `print \"\"'"));
}
} else {
- (yyval.nodeval) = node((yyvsp[-1].nodeval), (yyvsp[-3].nodetypeval), (yyvsp[0].nodeval));
+ (yyval.nodeval) = node((yyvsp[(3) - (4)].nodeval), (yyvsp[(1) - (4)].nodetypeval), (yyvsp[(4) - (4)].nodeval));
if ((yyval.nodeval)->type == Node_K_printf)
count_args((yyval.nodeval));
}
@@ -2050,12 +2455,16 @@ yyreduce:
break;
case 50:
-#line 540 "awkgram.y"
- { (yyval.nodeval) = node(variable((yyvsp[-3].sval), CAN_FREE, Node_var_array), Node_K_delete, (yyvsp[-1].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 543 "awkgram.y"
+ { (yyval.nodeval) = node(variable((yyvsp[(2) - (5)].sval), CAN_FREE, Node_var_array), Node_K_delete, (yyvsp[(4) - (5)].nodeval)); }
break;
case 51:
-#line 542 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 545 "awkgram.y"
{
static short warned = FALSE;
@@ -2071,12 +2480,14 @@ yyreduce:
errcount++;
error(_("`delete array' is a gawk extension"));
}
- (yyval.nodeval) = node(variable((yyvsp[0].sval), CAN_FREE, Node_var_array), Node_K_delete, (NODE *) NULL);
+ (yyval.nodeval) = node(variable((yyvsp[(2) - (2)].sval), CAN_FREE, Node_var_array), Node_K_delete, (NODE *) NULL);
}
break;
case 52:
-#line 560 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 563 "awkgram.y"
{
/*
* this is for tawk compatibility. maybe the warnings
@@ -2096,33 +2507,41 @@ yyreduce:
errcount++;
error(_("`delete(array)' is a non-portable tawk extension"));
}
- (yyval.nodeval) = node(variable((yyvsp[-1].sval), CAN_FREE, Node_var_array), Node_K_delete, (NODE *) NULL);
+ (yyval.nodeval) = node(variable((yyvsp[(3) - (4)].sval), CAN_FREE, Node_var_array), Node_K_delete, (NODE *) NULL);
}
break;
case 53:
-#line 582 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 585 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 54:
-#line 587 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 590 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 55:
-#line 589 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 592 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 56:
-#line 594 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 597 "awkgram.y"
{
- if ((yyvsp[0].nodeval) == NULL) {
+ if ((yyvsp[(1) - (1)].nodeval) == NULL) {
(yyval.nodeval) = NULL;
} else {
NODE *dflt = NULL;
- NODE *head = (yyvsp[0].nodeval);
+ NODE *head = (yyvsp[(1) - (1)].nodeval);
NODE *curr;
const char **case_values = NULL;
@@ -2132,7 +2551,7 @@ yyreduce:
int i;
emalloc(case_values, const char **, sizeof(char*) * maxcount, "switch_body");
- for (curr = (yyvsp[0].nodeval); curr != NULL; curr = curr->rnode) {
+ for (curr = (yyvsp[(1) - (1)].nodeval); curr != NULL; curr = curr->rnode) {
/* Assure that case statement values are unique. */
if (curr->lnode->type == Node_K_case) {
char *caseval;
@@ -2168,24 +2587,28 @@ yyreduce:
break;
case 57:
-#line 646 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 649 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 58:
-#line 648 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 651 "awkgram.y"
{
- if ((yyvsp[0].nodeval) == NULL)
- (yyval.nodeval) = (yyvsp[-1].nodeval);
+ if ((yyvsp[(2) - (2)].nodeval) == NULL)
+ (yyval.nodeval) = (yyvsp[(1) - (2)].nodeval);
else {
- if (do_lint && isnoeffect((yyvsp[0].nodeval)->type))
+ if (do_lint && isnoeffect((yyvsp[(2) - (2)].nodeval)->type))
lintwarn(_("statement may have no effect"));
- if ((yyvsp[-1].nodeval) == NULL)
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_case_list, (NODE *) NULL);
+ if ((yyvsp[(1) - (2)].nodeval) == NULL)
+ (yyval.nodeval) = node((yyvsp[(2) - (2)].nodeval), Node_case_list, (NODE *) NULL);
else
(yyval.nodeval) = append_right(
- ((yyvsp[-1].nodeval)->type == Node_case_list ? (yyvsp[-1].nodeval) : node((yyvsp[-1].nodeval), Node_case_list, (NODE *) NULL)),
- ((yyvsp[0].nodeval)->type == Node_case_list ? (yyvsp[0].nodeval) : node((yyvsp[0].nodeval), Node_case_list, (NODE *) NULL))
+ ((yyvsp[(1) - (2)].nodeval)->type == Node_case_list ? (yyvsp[(1) - (2)].nodeval) : node((yyvsp[(1) - (2)].nodeval), Node_case_list, (NODE *) NULL)),
+ ((yyvsp[(2) - (2)].nodeval)->type == Node_case_list ? (yyvsp[(2) - (2)].nodeval) : node((yyvsp[(2) - (2)].nodeval), Node_case_list, (NODE *) NULL))
);
}
yyerrok;
@@ -2193,55 +2616,75 @@ yyreduce:
break;
case 59:
-#line 665 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 668 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 60:
-#line 670 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-3].nodeval), Node_K_case, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 673 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (5)].nodeval), Node_K_case, (yyvsp[(5) - (5)].nodeval)); }
break;
case 61:
-#line 672 "awkgram.y"
- { (yyval.nodeval) = node((NODE *) NULL, Node_K_default, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 675 "awkgram.y"
+ { (yyval.nodeval) = node((NODE *) NULL, Node_K_default, (yyvsp[(4) - (4)].nodeval)); }
break;
case 62:
-#line 677 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 680 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 63:
-#line 679 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 682 "awkgram.y"
{
- (yyvsp[0].nodeval)->numbr = -(force_number((yyvsp[0].nodeval)));
- (yyval.nodeval) = (yyvsp[0].nodeval);
+ (yyvsp[(2) - (2)].nodeval)->numbr = -(force_number((yyvsp[(2) - (2)].nodeval)));
+ (yyval.nodeval) = (yyvsp[(2) - (2)].nodeval);
}
break;
case 64:
-#line 684 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 687 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(2) - (2)].nodeval); }
break;
case 65:
-#line 686 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 689 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 66:
-#line 688 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 691 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 70:
-#line 703 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-3].nodeval), Node_expression_list, (yyvsp[-1].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 706 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (5)].nodeval), Node_expression_list, (yyvsp[(4) - (5)].nodeval)); }
break;
case 71:
-#line 708 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 711 "awkgram.y"
{
in_print = FALSE;
in_parens = 0;
@@ -2250,374 +2693,487 @@ yyreduce:
break;
case 72:
-#line 713 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 716 "awkgram.y"
{ in_print = FALSE; in_parens = 0; }
break;
case 73:
-#line 714 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 717 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[0].nodeval), (yyvsp[-2].nodetypeval), (NODE *) NULL);
- if ((yyvsp[-2].nodetypeval) == Node_redirect_twoway
- && (yyvsp[0].nodeval)->type == Node_K_getline
- && (yyvsp[0].nodeval)->rnode != NULL
- && (yyvsp[0].nodeval)->rnode->type == Node_redirect_twoway)
+ (yyval.nodeval) = node((yyvsp[(3) - (3)].nodeval), (yyvsp[(1) - (3)].nodetypeval), (NODE *) NULL);
+ if ((yyvsp[(1) - (3)].nodetypeval) == Node_redirect_twoway
+ && (yyvsp[(3) - (3)].nodeval)->type == Node_K_getline
+ && (yyvsp[(3) - (3)].nodeval)->rnode != NULL
+ && (yyvsp[(3) - (3)].nodeval)->rnode->type == Node_redirect_twoway)
yyerror(_("multistage two-way pipelines don't work"));
}
break;
case 74:
-#line 726 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 729 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[-3].nodeval), Node_K_if,
- node((yyvsp[0].nodeval), Node_if_branches, (NODE *) NULL));
+ (yyval.nodeval) = node((yyvsp[(3) - (6)].nodeval), Node_K_if,
+ node((yyvsp[(6) - (6)].nodeval), Node_if_branches, (NODE *) NULL));
}
break;
case 75:
-#line 732 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-6].nodeval), Node_K_if,
- node((yyvsp[-3].nodeval), Node_if_branches, (yyvsp[0].nodeval))); }
+
+/* Line 1455 of yacc.c */
+#line 735 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(3) - (9)].nodeval), Node_K_if,
+ node((yyvsp[(6) - (9)].nodeval), Node_if_branches, (yyvsp[(9) - (9)].nodeval))); }
break;
case 80:
-#line 748 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 751 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 81:
-#line 750 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[0].nodeval), Node_redirect_input, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 753 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (2)].nodeval), Node_redirect_input, (NODE *) NULL); }
break;
case 82:
-#line 755 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 758 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 83:
-#line 757 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 760 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 84:
-#line 762 "awkgram.y"
- { (yyval.nodeval) = make_param((yyvsp[0].sval)); }
+
+/* Line 1455 of yacc.c */
+#line 765 "awkgram.y"
+ { (yyval.nodeval) = make_param((yyvsp[(1) - (1)].sval)); }
break;
case 85:
-#line 764 "awkgram.y"
- { (yyval.nodeval) = append_right((yyvsp[-2].nodeval), make_param((yyvsp[0].sval))); yyerrok; }
+
+/* Line 1455 of yacc.c */
+#line 767 "awkgram.y"
+ { (yyval.nodeval) = append_right((yyvsp[(1) - (3)].nodeval), make_param((yyvsp[(3) - (3)].sval))); yyerrok; }
break;
case 86:
-#line 766 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 769 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 87:
-#line 768 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 771 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 88:
-#line 770 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 773 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 89:
-#line 776 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 779 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 90:
-#line 778 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 781 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 91:
-#line 783 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 786 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 92:
-#line 785 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 788 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 93:
-#line 790 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[0].nodeval), Node_expression_list, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 793 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (1)].nodeval), Node_expression_list, (NODE *) NULL); }
break;
case 94:
-#line 792 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 795 "awkgram.y"
{
- (yyval.nodeval) = append_right((yyvsp[-2].nodeval),
- node((yyvsp[0].nodeval), Node_expression_list, (NODE *) NULL));
+ (yyval.nodeval) = append_right((yyvsp[(1) - (3)].nodeval),
+ node((yyvsp[(3) - (3)].nodeval), Node_expression_list, (NODE *) NULL));
yyerrok;
}
break;
case 95:
-#line 798 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 801 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 96:
-#line 800 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 803 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 97:
-#line 802 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 805 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 98:
-#line 804 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 807 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 99:
-#line 809 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 812 "awkgram.y"
{
- if (do_lint && (yyvsp[0].nodeval)->type == Node_regex)
+ if (do_lint && (yyvsp[(3) - (3)].nodeval)->type == Node_regex)
lintwarn(_("regular expression on right of assignment"));
- /*
- * Optimization of `x = x y'. Can save lots of time
- * if done a lot.
- */
- if (( (yyvsp[-2].nodeval)->type == Node_var
- || (yyvsp[-2].nodeval)->type == Node_var_new
- || (yyvsp[-2].nodeval)->type == Node_param_list)
- && (yyvsp[-1].nodetypeval) == Node_assign
- && (yyvsp[0].nodeval)->type == Node_concat
- && (yyvsp[0].nodeval)->lnode == (yyvsp[-2].nodeval)) {
- (yyvsp[0].nodeval)->type = Node_assign_concat; /* Just change the type */
- (yyval.nodeval) = (yyvsp[0].nodeval); /* And use it directly */
- } else
- (yyval.nodeval) = node((yyvsp[-2].nodeval), (yyvsp[-1].nodetypeval), (yyvsp[0].nodeval));
+ (yyval.nodeval) = optimize_concat((yyvsp[(1) - (3)].nodeval), (yyvsp[(2) - (3)].nodetypeval), (yyvsp[(3) - (3)].nodeval));
}
break;
case 100:
-#line 828 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_and, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 818 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_and, (yyvsp[(3) - (3)].nodeval)); }
break;
case 101:
-#line 830 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_or, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 820 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_or, (yyvsp[(3) - (3)].nodeval)); }
break;
case 102:
-#line 832 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 822 "awkgram.y"
{
- if ((yyvsp[-2].nodeval)->type == Node_regex)
+ if ((yyvsp[(1) - (3)].nodeval)->type == Node_regex)
warning(_("regular expression on left of `~' or `!~' operator"));
- (yyval.nodeval) = node((yyvsp[-2].nodeval), (yyvsp[-1].nodetypeval), mk_rexp((yyvsp[0].nodeval)));
+ (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), (yyvsp[(2) - (3)].nodetypeval), mk_rexp((yyvsp[(3) - (3)].nodeval)));
}
break;
case 103:
-#line 838 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 828 "awkgram.y"
{
if (do_lint_old)
warning(_("old awk does not support the keyword `in' except after `for'"));
- (yyval.nodeval) = node(variable((yyvsp[0].sval), CAN_FREE, Node_var_array), Node_in_array, (yyvsp[-2].nodeval));
+ (yyval.nodeval) = node(variable((yyvsp[(3) - (3)].sval), CAN_FREE, Node_var_array), Node_in_array, (yyvsp[(1) - (3)].nodeval));
}
break;
case 104:
-#line 844 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 834 "awkgram.y"
{
- if (do_lint && (yyvsp[0].nodeval)->type == Node_regex)
+ if (do_lint && (yyvsp[(3) - (3)].nodeval)->type == Node_regex)
lintwarn(_("regular expression on right of comparison"));
- (yyval.nodeval) = node((yyvsp[-2].nodeval), (yyvsp[-1].nodetypeval), (yyvsp[0].nodeval));
+ (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), (yyvsp[(2) - (3)].nodetypeval), (yyvsp[(3) - (3)].nodeval));
}
break;
case 105:
-#line 850 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-4].nodeval), Node_cond_exp, node((yyvsp[-2].nodeval), Node_if_branches, (yyvsp[0].nodeval)));}
+
+/* Line 1455 of yacc.c */
+#line 840 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (5)].nodeval), Node_cond_exp, node((yyvsp[(3) - (5)].nodeval), Node_if_branches, (yyvsp[(5) - (5)].nodeval)));}
break;
case 106:
-#line 852 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 842 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 107:
-#line 857 "awkgram.y"
- { (yyval.nodetypeval) = (yyvsp[0].nodetypeval); }
+
+/* Line 1455 of yacc.c */
+#line 847 "awkgram.y"
+ { (yyval.nodetypeval) = (yyvsp[(1) - (1)].nodetypeval); }
break;
case 108:
-#line 859 "awkgram.y"
- { (yyval.nodetypeval) = (yyvsp[0].nodetypeval); }
+
+/* Line 1455 of yacc.c */
+#line 849 "awkgram.y"
+ { (yyval.nodetypeval) = (yyvsp[(1) - (1)].nodetypeval); }
break;
case 109:
-#line 861 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 851 "awkgram.y"
{ (yyval.nodetypeval) = Node_assign_quotient; }
break;
case 110:
-#line 866 "awkgram.y"
- { (yyval.nodetypeval) = (yyvsp[0].nodetypeval); }
+
+/* Line 1455 of yacc.c */
+#line 856 "awkgram.y"
+ { (yyval.nodetypeval) = (yyvsp[(1) - (1)].nodetypeval); }
break;
case 111:
-#line 868 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 858 "awkgram.y"
{ (yyval.nodetypeval) = Node_less; }
break;
case 113:
-#line 873 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 863 "awkgram.y"
{ (yyval.nodetypeval) = Node_greater; }
break;
case 114:
-#line 878 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 868 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 115:
-#line 880 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 870 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 116:
-#line 882 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_concat, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 872 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (2)].nodeval), Node_concat, (yyvsp[(2) - (2)].nodeval)); }
break;
case 118:
-#line 889 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_exp, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 879 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_exp, (yyvsp[(3) - (3)].nodeval)); }
break;
case 119:
-#line 891 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_times, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 881 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_times, (yyvsp[(3) - (3)].nodeval)); }
break;
case 120:
-#line 893 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_quotient, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 883 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_quotient, (yyvsp[(3) - (3)].nodeval)); }
break;
case 121:
-#line 895 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_mod, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 885 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_mod, (yyvsp[(3) - (3)].nodeval)); }
break;
case 122:
-#line 897 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_plus, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 887 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_plus, (yyvsp[(3) - (3)].nodeval)); }
break;
case 123:
-#line 899 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_minus, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 889 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(1) - (3)].nodeval), Node_minus, (yyvsp[(3) - (3)].nodeval)); }
break;
case 124:
-#line 901 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 891 "awkgram.y"
{
- if (do_lint && parsing_end_rule && (yyvsp[0].nodeval) == NULL)
+ if (do_lint && parsing_end_rule && (yyvsp[(3) - (3)].nodeval) == NULL)
lintwarn(_("non-redirected `getline' undefined inside END action"));
- (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_K_getline, (yyvsp[0].nodeval));
+ (yyval.nodeval) = node((yyvsp[(2) - (3)].nodeval), Node_K_getline, (yyvsp[(3) - (3)].nodeval));
}
break;
case 125:
-#line 907 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_postincrement, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 897 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (2)].nodeval), Node_postincrement, (NODE *) NULL); }
break;
case 126:
-#line 909 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_postdecrement, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 899 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (2)].nodeval), Node_postdecrement, (NODE *) NULL); }
break;
case 127:
-#line 911 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 901 "awkgram.y"
{
if (do_lint_old) {
warning(_("old awk does not support the keyword `in' except after `for'"));
warning(_("old awk does not support multidimensional arrays"));
}
- (yyval.nodeval) = node(variable((yyvsp[0].sval), CAN_FREE, Node_var_array), Node_in_array, (yyvsp[-3].nodeval));
+ (yyval.nodeval) = node(variable((yyvsp[(5) - (5)].sval), CAN_FREE, Node_var_array), Node_in_array, (yyvsp[(2) - (5)].nodeval));
}
break;
case 128:
-#line 924 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 914 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_K_getline,
- node((yyvsp[-3].nodeval), (yyvsp[-2].nodetypeval), (NODE *) NULL));
+ (yyval.nodeval) = node((yyvsp[(4) - (4)].nodeval), Node_K_getline,
+ node((yyvsp[(1) - (4)].nodeval), (yyvsp[(2) - (4)].nodetypeval), (NODE *) NULL));
}
break;
case 129:
-#line 929 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_exp, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 919 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_exp, (yyvsp[(3) - (3)].nodeval)); }
break;
case 130:
-#line 931 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_times, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 921 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_times, (yyvsp[(3) - (3)].nodeval)); }
break;
case 131:
-#line 933 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_quotient, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 923 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_quotient, (yyvsp[(3) - (3)].nodeval)); }
break;
case 132:
-#line 935 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_mod, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 925 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_mod, (yyvsp[(3) - (3)].nodeval)); }
break;
case 133:
-#line 937 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_plus, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 927 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_plus, (yyvsp[(3) - (3)].nodeval)); }
break;
case 134:
-#line 939 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[-2].nodeval), Node_minus, (yyvsp[0].nodeval)); }
+
+/* Line 1455 of yacc.c */
+#line 929 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(1) - (3)].nodeval), Node_minus, (yyvsp[(3) - (3)].nodeval)); }
break;
case 135:
-#line 944 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 934 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 136:
-#line 946 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[0].nodeval), Node_not, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 936 "awkgram.y"
+ { (yyval.nodeval) = constant_fold((yyvsp[(2) - (2)].nodeval), Node_not, (NODE *) NULL); }
break;
case 137:
-#line 948 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[-1].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 938 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(2) - (3)].nodeval); }
break;
case 138:
-#line 951 "awkgram.y"
- { (yyval.nodeval) = snode((yyvsp[-1].nodeval), Node_builtin, (int) (yyvsp[-3].lval)); }
+
+/* Line 1455 of yacc.c */
+#line 941 "awkgram.y"
+ { (yyval.nodeval) = snode((yyvsp[(3) - (4)].nodeval), Node_builtin, (int) (yyvsp[(1) - (4)].lval)); }
break;
case 139:
-#line 953 "awkgram.y"
- { (yyval.nodeval) = snode((yyvsp[-1].nodeval), Node_builtin, (int) (yyvsp[-3].lval)); }
+
+/* Line 1455 of yacc.c */
+#line 943 "awkgram.y"
+ { (yyval.nodeval) = snode((yyvsp[(3) - (4)].nodeval), Node_builtin, (int) (yyvsp[(1) - (4)].lval)); }
break;
case 140:
-#line 955 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 945 "awkgram.y"
{
static short warned1 = FALSE, warned2 = FALSE;
@@ -2625,7 +3181,7 @@ yyreduce:
warned1 = TRUE;
lintwarn(_("call of `length' without parentheses is not portable"));
}
- (yyval.nodeval) = snode((NODE *) NULL, Node_builtin, (int) (yyvsp[0].lval));
+ (yyval.nodeval) = snode((NODE *) NULL, Node_builtin, (int) (yyvsp[(1) - (1)].lval));
if (do_posix && ! warned2) {
warned2 = TRUE;
warning(_("call of `length' without parentheses is deprecated by POSIX"));
@@ -2634,102 +3190,128 @@ yyreduce:
break;
case 141:
-#line 969 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 959 "awkgram.y"
{
- (yyval.nodeval) = node((yyvsp[-1].nodeval), Node_func_call, make_string((yyvsp[-3].sval), strlen((yyvsp[-3].sval))));
+ (yyval.nodeval) = node((yyvsp[(3) - (4)].nodeval), Node_func_call, make_string((yyvsp[(1) - (4)].sval), strlen((yyvsp[(1) - (4)].sval))));
(yyval.nodeval)->funcbody = NULL;
- func_use((yyvsp[-3].sval), FUNC_USE);
- param_sanity((yyvsp[-1].nodeval));
- free((yyvsp[-3].sval));
+ func_use((yyvsp[(1) - (4)].sval), FUNC_USE);
+ param_sanity((yyvsp[(3) - (4)].nodeval));
+ free((yyvsp[(1) - (4)].sval));
}
break;
case 143:
-#line 978 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[0].nodeval), Node_preincrement, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 968 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (2)].nodeval), Node_preincrement, (NODE *) NULL); }
break;
case 144:
-#line 980 "awkgram.y"
- { (yyval.nodeval) = node((yyvsp[0].nodeval), Node_predecrement, (NODE *) NULL); }
+
+/* Line 1455 of yacc.c */
+#line 970 "awkgram.y"
+ { (yyval.nodeval) = node((yyvsp[(2) - (2)].nodeval), Node_predecrement, (NODE *) NULL); }
break;
case 145:
-#line 982 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 972 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 146:
-#line 984 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 974 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 147:
-#line 987 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 977 "awkgram.y"
{
- if ((yyvsp[0].nodeval)->type == Node_val && ((yyvsp[0].nodeval)->flags & (STRCUR|STRING)) == 0) {
- (yyvsp[0].nodeval)->numbr = -(force_number((yyvsp[0].nodeval)));
- (yyval.nodeval) = (yyvsp[0].nodeval);
+ if ((yyvsp[(2) - (2)].nodeval)->type == Node_val && ((yyvsp[(2) - (2)].nodeval)->flags & (STRCUR|STRING)) == 0) {
+ (yyvsp[(2) - (2)].nodeval)->numbr = -(force_number((yyvsp[(2) - (2)].nodeval)));
+ (yyval.nodeval) = (yyvsp[(2) - (2)].nodeval);
} else
- (yyval.nodeval) = node((yyvsp[0].nodeval), Node_unary_minus, (NODE *) NULL);
+ (yyval.nodeval) = node((yyvsp[(2) - (2)].nodeval), Node_unary_minus, (NODE *) NULL);
}
break;
case 148:
-#line 995 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 985 "awkgram.y"
{
/*
* was: $$ = $2
* POSIX semantics: force a conversion to numeric type
*/
- (yyval.nodeval) = node (make_number(0.0), Node_plus, (yyvsp[0].nodeval));
+ (yyval.nodeval) = node (make_number(0.0), Node_plus, (yyvsp[(2) - (2)].nodeval));
}
break;
case 149:
-#line 1006 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 996 "awkgram.y"
{ (yyval.nodeval) = NULL; }
break;
case 150:
-#line 1008 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 998 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 151:
-#line 1013 "awkgram.y"
- { (yyval.nodeval) = variable((yyvsp[0].sval), CAN_FREE, Node_var_new); }
+
+/* Line 1455 of yacc.c */
+#line 1003 "awkgram.y"
+ { (yyval.nodeval) = variable((yyvsp[(1) - (1)].sval), CAN_FREE, Node_var_new); }
break;
case 152:
-#line 1015 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1005 "awkgram.y"
{
NODE *n;
- if ((n = lookup((yyvsp[-3].sval))) != NULL && ! isarray(n)) {
+ if ((n = lookup((yyvsp[(1) - (4)].sval))) != NULL && ! isarray(n)) {
yyerror(_("use of non-array as array"));
- (yyval.nodeval) = node(variable((yyvsp[-3].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[-1].nodeval));
- } else if ((yyvsp[-1].nodeval) == NULL) {
+ (yyval.nodeval) = node(variable((yyvsp[(1) - (4)].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[(3) - (4)].nodeval));
+ } else if ((yyvsp[(3) - (4)].nodeval) == NULL) {
fatal(_("invalid subscript expression"));
- } else if ((yyvsp[-1].nodeval)->rnode == NULL) {
- (yyval.nodeval) = node(variable((yyvsp[-3].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[-1].nodeval)->lnode);
- freenode((yyvsp[-1].nodeval));
+ } else if ((yyvsp[(3) - (4)].nodeval)->rnode == NULL) {
+ (yyval.nodeval) = node(variable((yyvsp[(1) - (4)].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[(3) - (4)].nodeval)->lnode);
+ freenode((yyvsp[(3) - (4)].nodeval));
} else
- (yyval.nodeval) = node(variable((yyvsp[-3].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[-1].nodeval));
+ (yyval.nodeval) = node(variable((yyvsp[(1) - (4)].sval), CAN_FREE, Node_var_array), Node_subscript, (yyvsp[(3) - (4)].nodeval));
}
break;
case 153:
-#line 1029 "awkgram.y"
- { (yyval.nodeval) = (yyvsp[0].nodeval); }
+
+/* Line 1455 of yacc.c */
+#line 1019 "awkgram.y"
+ { (yyval.nodeval) = (yyvsp[(1) - (1)].nodeval); }
break;
case 154:
-#line 1040 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1030 "awkgram.y"
{
- NODE *n = node((yyvsp[-1].nodeval), Node_field_spec, (NODE *) NULL);
- if ((yyvsp[0].sval) != NULL) {
- if ((yyvsp[0].sval)[0] == '+')
+ NODE *n = node((yyvsp[(2) - (3)].nodeval), Node_field_spec, (NODE *) NULL);
+ if ((yyvsp[(3) - (3)].sval) != NULL) {
+ if ((yyvsp[(3) - (3)].sval)[0] == '+')
(yyval.nodeval) = node(n, Node_postincrement, (NODE *) NULL);
else
(yyval.nodeval) = node(n, Node_postdecrement, (NODE *) NULL);
@@ -2740,60 +3322,75 @@ yyreduce:
break;
case 155:
-#line 1054 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1044 "awkgram.y"
{ (yyval.sval) = "+"; }
break;
case 156:
-#line 1055 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1045 "awkgram.y"
{ (yyval.sval) = "-"; }
break;
case 157:
-#line 1056 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1046 "awkgram.y"
{ (yyval.sval) = NULL; }
break;
case 159:
-#line 1064 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1054 "awkgram.y"
{ yyerrok; }
break;
case 160:
-#line 1068 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1058 "awkgram.y"
{ yyerrok; }
break;
case 163:
-#line 1077 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1067 "awkgram.y"
{ yyerrok; }
break;
case 164:
-#line 1081 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1071 "awkgram.y"
{ yyerrok; }
break;
case 165:
-#line 1084 "awkgram.y"
+
+/* Line 1455 of yacc.c */
+#line 1074 "awkgram.y"
{ yyerrok; }
break;
- }
-
-/* Line 1037 of yacc.c. */
-#line 2789 "y.tab.c"
-
- yyvsp -= yylen;
- yyssp -= yylen;
+/* Line 1455 of yacc.c */
+#line 3384 "y.tab.c"
+ default: break;
+ }
+ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
+ YYPOPSTACK (yylen);
+ yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
-
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
@@ -2817,98 +3414,65 @@ yyerrlab:
if (!yyerrstatus)
{
++yynerrs;
-#if YYERROR_VERBOSE
- yyn = yypact[yystate];
-
- if (YYPACT_NINF < yyn && yyn < YYLAST)
- {
- YYSIZE_T yysize = 0;
- int yytype = YYTRANSLATE (yychar);
- const char* yyprefix;
- char *yymsg;
- int yyx;
-
- /* Start YYX at -YYN if negative to avoid negative indexes in
- YYCHECK. */
- int yyxbegin = yyn < 0 ? -yyn : 0;
-
- /* Stay within bounds of both yycheck and yytname. */
- int yychecklim = YYLAST - yyn;
- int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
- int yycount = 0;
-
- yyprefix = ", expecting ";
- for (yyx = yyxbegin; yyx < yyxend; ++yyx)
- if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+#if ! YYERROR_VERBOSE
+ yyerror (YY_("syntax error"));
+#else
+ {
+ YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
+ if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
+ {
+ YYSIZE_T yyalloc = 2 * yysize;
+ if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
+ yyalloc = YYSTACK_ALLOC_MAXIMUM;
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+ yymsg = (char *) YYSTACK_ALLOC (yyalloc);
+ if (yymsg)
+ yymsg_alloc = yyalloc;
+ else
{
- yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);
- yycount += 1;
- if (yycount == 5)
- {
- yysize = 0;
- break;
- }
+ yymsg = yymsgbuf;
+ yymsg_alloc = sizeof yymsgbuf;
}
- yysize += (sizeof ("syntax error, unexpected ")
- + yystrlen (yytname[yytype]));
- yymsg = (char *) YYSTACK_ALLOC (yysize);
- if (yymsg != 0)
- {
- char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
- yyp = yystpcpy (yyp, yytname[yytype]);
+ }
- if (yycount < 5)
- {
- yyprefix = ", expecting ";
- for (yyx = yyxbegin; yyx < yyxend; ++yyx)
- if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
- {
- yyp = yystpcpy (yyp, yyprefix);
- yyp = yystpcpy (yyp, yytname[yyx]);
- yyprefix = " or ";
- }
- }
- yyerror (yymsg);
- YYSTACK_FREE (yymsg);
- }
- else
- yyerror ("syntax error; also virtual memory exhausted");
- }
- else
-#endif /* YYERROR_VERBOSE */
- yyerror ("syntax error");
+ if (0 < yysize && yysize <= yymsg_alloc)
+ {
+ (void) yysyntax_error (yymsg, yystate, yychar);
+ yyerror (yymsg);
+ }
+ else
+ {
+ yyerror (YY_("syntax error"));
+ if (yysize != 0)
+ goto yyexhaustedlab;
+ }
+ }
+#endif
}
if (yyerrstatus == 3)
{
- /* If just tried and failed to reuse look-ahead token after an
+ /* If just tried and failed to reuse lookahead token after an
error, discard it. */
if (yychar <= YYEOF)
- {
- /* If at end of input, pop the error token,
- then the rest of the stack, then return failure. */
+ {
+ /* Return failure if at end of input. */
if (yychar == YYEOF)
- for (;;)
- {
-
- YYPOPSTACK;
- if (yyssp == yyss)
- YYABORT;
- yydestruct ("Error: popping",
- yystos[*yyssp], yyvsp);
- }
- }
+ YYABORT;
+ }
else
{
- yydestruct ("Error: discarding", yytoken, &yylval);
+ yydestruct ("Error: discarding",
+ yytoken, &yylval);
yychar = YYEMPTY;
}
}
- /* Else will try to reuse look-ahead token after shifting the error
+ /* Else will try to reuse lookahead token after shifting the error
token. */
goto yyerrlab1;
@@ -2918,15 +3482,17 @@ yyerrlab:
`---------------------------------------------------*/
yyerrorlab:
-#ifdef __GNUC__
- /* Pacify GCC when the user code never invokes YYERROR and the label
- yyerrorlab therefore never appears in user code. */
- if (0)
+ /* Pacify compilers like GCC when the user code never invokes
+ YYERROR and the label yyerrorlab therefore never appears in user
+ code. */
+ if (/*CONSTCOND*/ 0)
goto yyerrorlab;
-#endif
-yyvsp -= yylen;
- yyssp -= yylen;
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYERROR. */
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto yyerrlab1;
@@ -2956,19 +3522,17 @@ yyerrlab1:
YYABORT;
- yydestruct ("Error: popping", yystos[yystate], yyvsp);
- YYPOPSTACK;
+ yydestruct ("Error: popping",
+ yystos[yystate], yyvsp);
+ YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
*++yyvsp = yylval;
- /* Shift the error token. */
+ /* Shift the error token. */
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
yystate = yyn;
@@ -2986,32 +3550,49 @@ yyacceptlab:
| yyabortlab -- YYABORT comes here. |
`-----------------------------------*/
yyabortlab:
- yydestruct ("Error: discarding lookahead",
- yytoken, &yylval);
- yychar = YYEMPTY;
yyresult = 1;
goto yyreturn;
-#ifndef yyoverflow
-/*----------------------------------------------.
-| yyoverflowlab -- parser overflow comes here. |
-`----------------------------------------------*/
-yyoverflowlab:
- yyerror ("parser stack overflow");
+#if !defined(yyoverflow) || YYERROR_VERBOSE
+/*-------------------------------------------------.
+| yyexhaustedlab -- memory exhaustion comes here. |
+`-------------------------------------------------*/
+yyexhaustedlab:
+ yyerror (YY_("memory exhausted"));
yyresult = 2;
/* Fall through. */
#endif
yyreturn:
+ if (yychar != YYEMPTY)
+ yydestruct ("Cleanup: discarding lookahead",
+ yytoken, &yylval);
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYABORT or YYACCEPT. */
+ YYPOPSTACK (yylen);
+ YY_STACK_PRINT (yyss, yyssp);
+ while (yyssp != yyss)
+ {
+ yydestruct ("Cleanup: popping",
+ yystos[*yyssp], yyvsp);
+ YYPOPSTACK (1);
+ }
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
- return yyresult;
+#if YYERROR_VERBOSE
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+#endif
+ /* Make sure YYID is used. */
+ return YYID (yyresult);
}
-#line 1087 "awkgram.y"
+
+/* Line 1675 of yacc.c */
+#line 1077 "awkgram.y"
struct token {
@@ -3029,8 +3610,26 @@ struct token {
NODE *(*ptr) P((NODE *)); /* function that implements this keyword */
};
-/* Tokentab is sorted ascii ascending order, so it can be binary searched. */
-/* Function pointers come from declarations in awk.h. */
+#if 'a' == 0x81 /* it's EBCDIC */
+/* tokcompare --- lexicographically compare token names for sorting */
+
+static int
+tokcompare(void *l, void *r)
+{
+ struct token *lhs, *rhs;
+
+ lhs = (struct token *) l;
+ rhs = (struct token *) r;
+
+ return strcmp(lhs->operator, rhs->operator);
+}
+#endif
+
+/*
+ * Tokentab is sorted ASCII ascending order, so it can be binary searched.
+ * See check_special(), which sorts the table on EBCDIC systems.
+ * Function pointers come from declarations in awk.h.
+ */
static const struct token tokentab[] = {
{"BEGIN", Node_illegal, LEX_BEGIN, 0, 0},
@@ -3828,7 +4427,7 @@ retry:
goto retry;
} else {
yyerror(_("backslash not last character on line"));
- exit(1);
+ exit(EXIT_FAILURE);
}
break;
@@ -4009,7 +4608,7 @@ retry:
if (c == '\n') {
pushback();
yyerror(_("unterminated string"));
- exit(1);
+ exit(EXIT_FAILURE);
}
if ((gawk_mb_cur_max == 1 || nextc_is_1stbyte) &&
c == '\\') {
@@ -4024,7 +4623,7 @@ retry:
if (c == EOF) {
pushback();
yyerror(_("unterminated string"));
- exit(1);
+ exit(EXIT_FAILURE);
}
tokadd(c);
}
@@ -4209,7 +4808,7 @@ retry:
if (c != '_' && ! ISALPHA(c)) {
yyerror(_("invalid char '%c' in expression"), c);
- exit(1);
+ exit(EXIT_FAILURE);
}
/*
@@ -4920,6 +5519,9 @@ func_install(NODE *params, NODE *def)
if (strcmp(n->param, params->param) == 0)
fatal(_("function `%s': can't use function name as parameter name"),
params->param);
+ else if (is_std_var(n->param))
+ fatal(_("function `%s': can't use special variable `%s' as a function parameter"),
+ params->param, n->param);
}
thisfunc = NULL; /* turn off warnings */
@@ -5119,7 +5721,7 @@ param_sanity(NODE *arglist)
}
}
-/* deferred varibles --- those that are only defined if needed. */
+/* deferred variables --- those that are only defined if needed. */
/*
* Is there any reason to use a hash table for deferred variables? At the
@@ -5410,6 +6012,16 @@ check_special(const char *name)
{
int low, high, mid;
int i;
+#if 'a' == 0x81 /* it's EBCDIC */
+ static int did_sort = FALSE;
+
+ if (! did_sort) {
+ qsort(tokentab, sizeof(tokentab) / sizeof(tokentab[0]),
+ sizeof(tokentab[0]), tokcompare);
+ did_sort = TRUE;
+ }
+#endif
+
low = 0;
high = (sizeof(tokentab) / sizeof(tokentab[0])) - 1;
@@ -5449,7 +6061,7 @@ read_one_line(int fd, void *buffer, size_t count)
fp = fdopen(fd, "r");
if (fp == NULL) {
fprintf(stderr, "ugh. fdopen: %s\n", strerror(errno));
- exit(1);
+ exit(EXIT_FAILURE);
}
}
@@ -5475,4 +6087,160 @@ one_line_close(int fd)
return ret;
}
+/* constant_fold --- try to fold constant operations */
+
+static NODE *
+constant_fold(NODE *left, NODETYPE op, NODE *right)
+{
+ AWKNUM result;
+ extern double fmod P((double x, double y));
+
+ if (! do_optimize)
+ return node(left, op, right);
+
+ /* Unary not */
+ if (right == NULL) {
+ if (op == Node_not && left->type == Node_val) {
+ if ((left->flags & (STRCUR|STRING)) != 0) {
+ NODE *ret;
+ if (left->stlen == 0) {
+ ret = make_number((AWKNUM) 1.0);
+ } else {
+ ret = make_number((AWKNUM) 0.0);
+ }
+ unref(left);
+
+ return ret;
+ } else {
+ if (left->numbr == 0) {
+ left->numbr = 1.0;
+ } else {
+ left->numbr = 0.0;
+ }
+
+ return left;
+ }
+ }
+
+ return node(left, op, right);
+ }
+
+ /* String concatentation of two string cnstants */
+ if (op == Node_concat
+ && left->type == Node_val
+ && (left->flags & (STRCUR|STRING)) != 0
+ && right->type == Node_val
+ && (right->flags & (STRCUR|STRING)) != 0) {
+ size_t newlen = left->stlen + right->stlen + 2;
+
+ erealloc(left->stptr, char *, newlen, "constant_fold");
+ memcpy(left->stptr + left->stlen, right->stptr, right->stlen);
+ left->stptr[left->stlen + right->stlen] = '\0';
+ left->stlen += right->stlen;
+
+ unref(right);
+ return left;
+ }
+
+ /*
+ * From here down, numeric operations.
+ * Check for string and bail out if have them.
+ */
+ if (left->type != Node_val
+ || (left->flags & (STRCUR|STRING)) != 0
+ || right->type != Node_val
+ || (left->flags & (STRCUR|STRING)) != 0) {
+ return node(left, op, right);
+ }
+
+ /* Numeric operations: */
+ switch (op) {
+ case Node_not:
+ case Node_exp:
+ case Node_times:
+ case Node_quotient:
+ case Node_mod:
+ case Node_plus:
+ case Node_minus:
+ break;
+ default:
+ return node(left, op, right);
+ }
+
+ left->numbr = force_number(left);
+ right->numbr = force_number(right);
+
+ result = left->numbr;
+ switch (op) {
+ case Node_exp:
+ result = calc_exp(left->numbr, right->numbr);
+ break;
+ case Node_times:
+ result *= right->numbr;
+ break;
+ case Node_quotient:
+ result /= right->numbr;
+ break;
+ case Node_mod:
+ if (right->numbr == 0)
+ fatal(_("division by zero attempted in `%%'"));
+#ifdef HAVE_FMOD
+ result = fmod(result, right->numbr);
+#else /* ! HAVE_FMOD */
+ (void) modf(left->numbr / right->numbr, &result);
+ result = left->numbr - result * right->numbr;
+#endif /* ! HAVE_FMOD */
+ break;
+ case Node_plus:
+ result += right->numbr;
+ break;
+ case Node_minus:
+ result -= right->numbr;
+ break;
+ default:
+ /* Shut up compiler warnings */
+ fatal("can't happen");
+ break;
+ }
+
+ unref(right);
+ left->numbr = result;
+
+ return left;
+}
+
+/* optimize_concat --- optimize the general "x = x y z a" case */
+
+static NODE *
+optimize_concat(NODE *left, NODETYPE op, NODE *right)
+{
+ NODE *top, *leftmost;
+
+ if (op != Node_assign)
+ return node(left, op, right);
+
+ /*
+ * optimization of `x = x y'. can save lots of time
+ * if done a lot.
+ */
+ if (( left->type == Node_var
+ || left->type == Node_var_new
+ || left->type == Node_param_list)
+ && right->type == Node_concat) {
+ /* find bottom of tree, save it */
+ for (top = right; top->lnode != NULL && top->type == Node_concat; top = top->lnode) {
+ leftmost = top->lnode;
+ if (leftmost->type == Node_concat)
+ continue;
+
+ /* at this point, we've run out of concatentation */
+ if (leftmost != left)
+ return node(left, op, right);
+
+ top->lnode = Nnull_string;
+ return node(left, Node_assign_concat, right);
+ }
+ }
+ return node(left, op, right);
+}
diff --git a/awkgram.y b/awkgram.y
index 2e6f4332..5a00ec13 100644
--- a/awkgram.y
+++ b/awkgram.y
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -71,6 +71,9 @@ static void check_funcs P((void));
static ssize_t read_one_line P((int fd, void *buffer, size_t count));
static int one_line_close P((int fd));
+static NODE *constant_fold P((NODE *left, NODETYPE op, NODE *right));
+static NODE *optimize_concat P((NODE *left, NODETYPE op, NODE *right));
+
static int want_regexp; /* lexical scanning kludge */
static int can_return; /* parsing kludge */
static int begin_or_end_rule = FALSE; /* parsing kludge */
@@ -335,7 +338,7 @@ regexp
n->re_exp = make_string($3, len);
n->re_reg = make_regexp($3, len, FALSE, TRUE);
n->re_text = NULL;
- n->re_flags = CONST;
+ n->re_flags = CONSTANT;
n->re_cnt = 1;
$$ = n;
}
@@ -809,20 +812,7 @@ exp : variable assign_operator exp %prec ASSIGNOP
{
if (do_lint && $3->type == Node_regex)
lintwarn(_("regular expression on right of assignment"));
- /*
- * Optimization of `x = x y'. Can save lots of time
- * if done a lot.
- */
- if (( $1->type == Node_var
- || $1->type == Node_var_new
- || $1->type == Node_param_list)
- && $2 == Node_assign
- && $3->type == Node_concat
- && $3->lnode == $1) {
- $3->type = Node_assign_concat; /* Just change the type */
- $$ = $3; /* And use it directly */
- } else
- $$ = node($1, $2, $3);
+ $$ = optimize_concat($1, $2, $3);
}
| exp LEX_AND exp
{ $$ = node($1, Node_and, $3); }
@@ -879,24 +869,24 @@ common_exp
| simp_exp_nc
{ $$ = $1; }
| common_exp simp_exp %prec CONCAT_OP
- { $$ = node($1, Node_concat, $2); }
+ { $$ = constant_fold($1, Node_concat, $2); }
;
simp_exp
: non_post_simp_exp
/* Binary operators in order of decreasing precedence. */
| simp_exp '^' simp_exp
- { $$ = node($1, Node_exp, $3); }
+ { $$ = constant_fold($1, Node_exp, $3); }
| simp_exp '*' simp_exp
- { $$ = node($1, Node_times, $3); }
+ { $$ = constant_fold($1, Node_times, $3); }
| simp_exp '/' simp_exp
- { $$ = node($1, Node_quotient, $3); }
+ { $$ = constant_fold($1, Node_quotient, $3); }
| simp_exp '%' simp_exp
- { $$ = node($1, Node_mod, $3); }
+ { $$ = constant_fold($1, Node_mod, $3); }
| simp_exp '+' simp_exp
- { $$ = node($1, Node_plus, $3); }
+ { $$ = constant_fold($1, Node_plus, $3); }
| simp_exp '-' simp_exp
- { $$ = node($1, Node_minus, $3); }
+ { $$ = constant_fold($1, Node_minus, $3); }
| LEX_GETLINE opt_variable input_redir
{
if (do_lint && parsing_end_rule && $3 == NULL)
@@ -943,7 +933,7 @@ non_post_simp_exp
: regexp
{ $$ = $1; }
| '!' simp_exp %prec UNARY
- { $$ = node($2, Node_not, (NODE *) NULL); }
+ { $$ = constant_fold($2, Node_not, (NODE *) NULL); }
| '(' exp r_paren
{ $$ = $2; }
| LEX_BUILTIN
@@ -1101,8 +1091,26 @@ struct token {
NODE *(*ptr) P((NODE *)); /* function that implements this keyword */
};
-/* Tokentab is sorted ascii ascending order, so it can be binary searched. */
-/* Function pointers come from declarations in awk.h. */
+#if 'a' == 0x81 /* it's EBCDIC */
+/* tokcompare --- lexicographically compare token names for sorting */
+
+static int
+tokcompare(void *l, void *r)
+{
+ struct token *lhs, *rhs;
+
+ lhs = (struct token *) l;
+ rhs = (struct token *) r;
+
+ return strcmp(lhs->operator, rhs->operator);
+}
+#endif
+
+/*
+ * Tokentab is sorted ASCII ascending order, so it can be binary searched.
+ * See check_special(), which sorts the table on EBCDIC systems.
+ * Function pointers come from declarations in awk.h.
+ */
static const struct token tokentab[] = {
{"BEGIN", Node_illegal, LEX_BEGIN, 0, 0},
@@ -1900,7 +1908,7 @@ retry:
goto retry;
} else {
yyerror(_("backslash not last character on line"));
- exit(1);
+ exit(EXIT_FAILURE);
}
break;
@@ -2081,7 +2089,7 @@ retry:
if (c == '\n') {
pushback();
yyerror(_("unterminated string"));
- exit(1);
+ exit(EXIT_FAILURE);
}
if ((gawk_mb_cur_max == 1 || nextc_is_1stbyte) &&
c == '\\') {
@@ -2096,7 +2104,7 @@ retry:
if (c == EOF) {
pushback();
yyerror(_("unterminated string"));
- exit(1);
+ exit(EXIT_FAILURE);
}
tokadd(c);
}
@@ -2281,7 +2289,7 @@ retry:
if (c != '_' && ! ISALPHA(c)) {
yyerror(_("invalid char '%c' in expression"), c);
- exit(1);
+ exit(EXIT_FAILURE);
}
/*
@@ -2992,6 +3000,9 @@ func_install(NODE *params, NODE *def)
if (strcmp(n->param, params->param) == 0)
fatal(_("function `%s': can't use function name as parameter name"),
params->param);
+ else if (is_std_var(n->param))
+ fatal(_("function `%s': can't use special variable `%s' as a function parameter"),
+ params->param, n->param);
}
thisfunc = NULL; /* turn off warnings */
@@ -3191,7 +3202,7 @@ param_sanity(NODE *arglist)
}
}
-/* deferred varibles --- those that are only defined if needed. */
+/* deferred variables --- those that are only defined if needed. */
/*
* Is there any reason to use a hash table for deferred variables? At the
@@ -3482,6 +3493,16 @@ check_special(const char *name)
{
int low, high, mid;
int i;
+#if 'a' == 0x81 /* it's EBCDIC */
+ static int did_sort = FALSE;
+
+ if (! did_sort) {
+ qsort(tokentab, sizeof(tokentab) / sizeof(tokentab[0]),
+ sizeof(tokentab[0]), tokcompare);
+ did_sort = TRUE;
+ }
+#endif
+
low = 0;
high = (sizeof(tokentab) / sizeof(tokentab[0])) - 1;
@@ -3521,7 +3542,7 @@ read_one_line(int fd, void *buffer, size_t count)
fp = fdopen(fd, "r");
if (fp == NULL) {
fprintf(stderr, "ugh. fdopen: %s\n", strerror(errno));
- exit(1);
+ exit(EXIT_FAILURE);
}
}
@@ -3546,3 +3567,160 @@ one_line_close(int fd)
fp = NULL;
return ret;
}
+
+/* constant_fold --- try to fold constant operations */
+
+static NODE *
+constant_fold(NODE *left, NODETYPE op, NODE *right)
+{
+ AWKNUM result;
+ extern double fmod P((double x, double y));
+
+ if (! do_optimize)
+ return node(left, op, right);
+
+ /* Unary not */
+ if (right == NULL) {
+ if (op == Node_not && left->type == Node_val) {
+ if ((left->flags & (STRCUR|STRING)) != 0) {
+ NODE *ret;
+ if (left->stlen == 0) {
+ ret = make_number((AWKNUM) 1.0);
+ } else {
+ ret = make_number((AWKNUM) 0.0);
+ }
+ unref(left);
+
+ return ret;
+ } else {
+ if (left->numbr == 0) {
+ left->numbr = 1.0;
+ } else {
+ left->numbr = 0.0;
+ }
+
+ return left;
+ }
+ }
+
+ return node(left, op, right);
+ }
+
+ /* String concatentation of two string cnstants */
+ if (op == Node_concat
+ && left->type == Node_val
+ && (left->flags & (STRCUR|STRING)) != 0
+ && right->type == Node_val
+ && (right->flags & (STRCUR|STRING)) != 0) {
+ size_t newlen = left->stlen + right->stlen + 2;
+
+ erealloc(left->stptr, char *, newlen, "constant_fold");
+ memcpy(left->stptr + left->stlen, right->stptr, right->stlen);
+ left->stptr[left->stlen + right->stlen] = '\0';
+ left->stlen += right->stlen;
+
+ unref(right);
+ return left;
+ }
+
+ /*
+ * From here down, numeric operations.
+ * Check for string and bail out if have them.
+ */
+ if (left->type != Node_val
+ || (left->flags & (STRCUR|STRING)) != 0
+ || right->type != Node_val
+ || (left->flags & (STRCUR|STRING)) != 0) {
+ return node(left, op, right);
+ }
+
+ /* Numeric operations: */
+ switch (op) {
+ case Node_not:
+ case Node_exp:
+ case Node_times:
+ case Node_quotient:
+ case Node_mod:
+ case Node_plus:
+ case Node_minus:
+ break;
+ default:
+ return node(left, op, right);
+ }
+
+ left->numbr = force_number(left);
+ right->numbr = force_number(right);
+
+ result = left->numbr;
+ switch (op) {
+ case Node_exp:
+ result = calc_exp(left->numbr, right->numbr);
+ break;
+ case Node_times:
+ result *= right->numbr;
+ break;
+ case Node_quotient:
+ result /= right->numbr;
+ break;
+ case Node_mod:
+ if (right->numbr == 0)
+ fatal(_("division by zero attempted in `%%'"));
+#ifdef HAVE_FMOD
+ result = fmod(result, right->numbr);
+#else /* ! HAVE_FMOD */
+ (void) modf(left->numbr / right->numbr, &result);
+ result = left->numbr - result * right->numbr;
+#endif /* ! HAVE_FMOD */
+ break;
+ case Node_plus:
+ result += right->numbr;
+ break;
+ case Node_minus:
+ result -= right->numbr;
+ break;
+ default:
+ /* Shut up compiler warnings */
+ fatal("can't happen");
+ break;
+ }
+
+ unref(right);
+ left->numbr = result;
+
+ return left;
+}
+
+/* optimize_concat --- optimize the general "x = x y z a" case */
+
+static NODE *
+optimize_concat(NODE *left, NODETYPE op, NODE *right)
+{
+ NODE *top, *leftmost;
+
+ if (op != Node_assign)
+ return node(left, op, right);
+
+ /*
+ * optimization of `x = x y'. can save lots of time
+ * if done a lot.
+ */
+ if (( left->type == Node_var
+ || left->type == Node_var_new
+ || left->type == Node_param_list)
+ && right->type == Node_concat) {
+ /* find bottom of tree, save it */
+ for (top = right; top->lnode != NULL && top->type == Node_concat; top = top->lnode) {
+ leftmost = top->lnode;
+ if (leftmost->type == Node_concat)
+ continue;
+
+ /* at this point, we've run out of concatentation */
+ if (leftmost != left)
+ return node(left, op, right);
+
+ top->lnode = Nnull_string;
+ return node(left, Node_assign_concat, right);
+ }
+ }
+ return node(left, op, right);
+}
diff --git a/awklib/ChangeLog b/awklib/ChangeLog
index 62b9e7dc..04577312 100644
--- a/awklib/ChangeLog
+++ b/awklib/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/awklib/Makefile.in b/awklib/Makefile.in
index e1aadc0c..ceb44e4a 100644
--- a/awklib/Makefile.in
+++ b/awklib/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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.
@@ -39,8 +40,8 @@
VPATH = @srcdir@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -65,18 +66,20 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/isc-posix.m4 \
$(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
- $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \
- $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \
+ $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \
+ $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(pkglibexecdir)" "$(DESTDIR)$(bindir)"
-pkglibexecPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(pkglibexec_PROGRAMS)
nodist_grcat_OBJECTS = grcat.$(OBJEXT)
grcat_OBJECTS = $(nodist_grcat_OBJECTS)
@@ -84,23 +87,51 @@ grcat_LDADD = $(LDADD)
nodist_pwcat_OBJECTS = pwcat.$(OBJEXT)
pwcat_OBJECTS = $(nodist_pwcat_OBJECTS)
pwcat_LDADD = $(LDADD)
-binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
SCRIPTS = $(bin_SCRIPTS)
-DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
+am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
SOURCES = $(nodist_grcat_SOURCES) $(nodist_pwcat_SOURCES)
DIST_SOURCES =
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkgdatadir = $(datadir)/awk
+pkglibexecdir = $(libexecdir)/awk
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -113,11 +144,15 @@ CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
@@ -128,11 +163,15 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
+LIBSIGSEGV = @LIBSIGSEGV@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
@@ -142,7 +181,12 @@ MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
@@ -152,6 +196,9 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POSUB = @POSUB@
RANLIB = @RANLIB@
+SED = @SED@
+SEGVINCLUDE = @SEGVINCLUDE@
+SEGVSUBDIR = @SEGVSUBDIR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
@@ -161,6 +208,7 @@ USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
@@ -168,6 +216,7 @@ abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -198,6 +247,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@@ -208,8 +258,10 @@ psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
+subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = ChangeLog extract.awk eg $(srcdir)/stamp-eg
@@ -219,7 +271,6 @@ AWKPROG = LC_ALL=C LANG=C ../gawk$(EXEEXT)
# Get config.h from the build directory and custom.h from the source directory.
AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir)
-pkglibexecdir = $(libexecdir)/awk
bin_SCRIPTS = igawk
AUXAWK = passwd.awk group.awk
nodist_grcat_SOURCES = grcat.c
@@ -227,19 +278,19 @@ nodist_pwcat_SOURCES = pwcat.c
all: all-am
.SUFFIXES:
-.SUFFIXES: .c .o .obj
+.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; \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu awklib/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu awklib/Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu awklib/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu awklib/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -257,48 +308,84 @@ $(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
+$(am__aclocal_m4_deps):
install-pkglibexecPROGRAMS: $(pkglibexec_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(pkglibexecdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibexecdir)"
- @list='$(pkglibexec_PROGRAMS)'; for p in $$list; do \
- p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
- if test -f $$p \
- ; then \
- f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " $(INSTALL_PROGRAM_ENV) $(pkglibexecPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(pkglibexecdir)/$$f'"; \
- $(INSTALL_PROGRAM_ENV) $(pkglibexecPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(pkglibexecdir)/$$f" || exit 1; \
- else :; fi; \
- done
+ @list='$(pkglibexec_PROGRAMS)'; test -n "$(pkglibexecdir)" || list=; \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed 's/$(EXEEXT)$$//' | \
+ while read p p1; do if test -f $$p || test -f $$p1; \
+ then echo "$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+ sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) files[d] = files[d] " " $$1; \
+ else { print "f", $$3 "/" $$4, $$1; } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(pkglibexecdir)$$dir'"; \
+ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(pkglibexecdir)$$dir" || exit $$?; \
+ } \
+ ; done
uninstall-pkglibexecPROGRAMS:
@$(NORMAL_UNINSTALL)
- @list='$(pkglibexec_PROGRAMS)'; for p in $$list; do \
- f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " rm -f '$(DESTDIR)$(pkglibexecdir)/$$f'"; \
- rm -f "$(DESTDIR)$(pkglibexecdir)/$$f"; \
- done
+ @list='$(pkglibexec_PROGRAMS)'; test -n "$(pkglibexecdir)" || list=; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+ -e 's/$$/$(EXEEXT)/' `; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(pkglibexecdir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(pkglibexecdir)" && rm -f $$files
clean-pkglibexecPROGRAMS:
- -test -z "$(pkglibexec_PROGRAMS)" || rm -f $(pkglibexec_PROGRAMS)
+ @list='$(pkglibexec_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
install-binSCRIPTS: $(bin_SCRIPTS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
- @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
+ for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- if test -f $$d$$p; then \
- f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
- echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
- $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
- else :; fi; \
- done
+ if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n' \
+ -e 'h;s|.*|.|' \
+ -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+ if (++n[d] == $(am__install_max)) { \
+ print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+ else { print "f", d "/" $$4, $$1 } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+ $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+ } \
+ ; done
uninstall-binSCRIPTS:
@$(NORMAL_UNINSTALL)
- @list='$(bin_SCRIPTS)'; for p in $$list; do \
- f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
- echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
- rm -f "$(DESTDIR)$(bindir)/$$f"; \
- done
+ @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 's,.*/,,;$(transform)'`; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bindir)" && rm -f $$files
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -311,62 +398,79 @@ distclean-compile:
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@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@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@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@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@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
+
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; }'`; \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
+ set x; \
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 \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
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" \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
+ $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -387,13 +491,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -424,14 +532,15 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
-clean-am: clean-generic clean-local clean-pkglibexecPROGRAMS \
- mostlyclean-am
+clean-am: clean-generic clean-libtool clean-local \
+ clean-pkglibexecPROGRAMS mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
@@ -445,6 +554,8 @@ dvi-am:
html: html-am
+html-am:
+
info: info-am
info-am:
@@ -453,20 +564,29 @@ install-data-am:
install-dvi: install-dvi-am
+install-dvi-am:
+
install-exec-am: install-binSCRIPTS install-pkglibexecPROGRAMS
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
install-html: install-html-am
+install-html-am:
+
install-info: install-info-am
+install-info-am:
+
install-man:
install-pdf: install-pdf-am
+install-pdf-am:
+
install-ps: install-ps-am
+install-ps-am:
+
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -476,7 +596,8 @@ maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
-mostlyclean-am: mostlyclean-compile mostlyclean-generic
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
pdf: pdf-am
@@ -492,17 +613,18 @@ uninstall-am: uninstall-binSCRIPTS uninstall-local \
.MAKE: install-am install-exec-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-local clean-pkglibexecPROGRAMS ctags distclean \
- distclean-compile distclean-generic distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binSCRIPTS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-exec-hook \
- install-html install-html-am install-info install-info-am \
- install-man install-pdf install-pdf-am \
- install-pkglibexecPROGRAMS install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ clean-libtool clean-local clean-pkglibexecPROGRAMS ctags \
+ distclean distclean-compile distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-binSCRIPTS \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-exec-hook install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-pkglibexecPROGRAMS \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags uninstall uninstall-am uninstall-binSCRIPTS \
uninstall-local uninstall-pkglibexecPROGRAMS
@@ -559,6 +681,7 @@ passwd.awk: $(srcdir)/eg/lib/passwdawk.in
group.awk: $(srcdir)/eg/lib/groupawk.in
sed 's;/usr/local/libexec/awk;$(pkglibexecdir);' < $(srcdir)/eg/lib/groupawk.in > group.awk
+
# 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:
diff --git a/awklib/eg/lib/grcat.c b/awklib/eg/lib/grcat.c
index fd35c832..6c36fe96 100644
--- a/awklib/eg/lib/grcat.c
+++ b/awklib/eg/lib/grcat.c
@@ -32,8 +32,12 @@ char **argv;
int i;
while ((g = getgrent()) != NULL) {
+#ifdef ZOS_USS
+ printf("%s:%ld:", g->gr_name, (long) g->gr_gid);
+#else
printf("%s:%s:%ld:", g->gr_name, g->gr_passwd,
(long) g->gr_gid);
+#endif
for (i = 0; g->gr_mem[i] != NULL; i++) {
printf("%s", g->gr_mem[i]);
if (g->gr_mem[i+1] != NULL)
diff --git a/awklib/eg/lib/pwcat.c b/awklib/eg/lib/pwcat.c
index 09457148..6b5c7858 100644
--- a/awklib/eg/lib/pwcat.c
+++ b/awklib/eg/lib/pwcat.c
@@ -27,9 +27,15 @@ char **argv;
struct passwd *p;
while ((p = getpwent()) != NULL)
+#ifdef ZOS_USS
+ printf("%s:%ld:%ld:%s:%s\n",
+ p->pw_name, (long) p->pw_uid,
+ (long) p->pw_gid, p->pw_dir, p->pw_shell);
+#else
printf("%s:%s:%ld:%ld:%s:%s:%s\n",
p->pw_name, p->pw_passwd, (long) p->pw_uid,
(long) p->pw_gid, p->pw_gecos, p->pw_dir, p->pw_shell);
+#endif
endpwent();
return 0;
diff --git a/awklib/eg/lib/round.awk b/awklib/eg/lib/round.awk
index c5e993f1..899645f1 100644
--- a/awklib/eg/lib/round.awk
+++ b/awklib/eg/lib/round.awk
@@ -9,7 +9,7 @@ function round(x, ival, aval, fraction)
# see if fractional part
if (ival == x) # no fraction
- return x
+ return ival # ensure no decimals
if (x < 0) {
aval = -x # absolute value
diff --git a/awklib/eg/network/eliza.awk b/awklib/eg/network/eliza.awk
index 75e353a7..15ee2c46 100644
--- a/awklib/eg/network/eliza.awk
+++ b/awklib/eg/network/eliza.awk
@@ -37,7 +37,7 @@ function HandleGET() {
} else if (MENU[2] == "AboutELIZA") {
Document = "This is an implementation of the famous ELIZA\
program by Joseph Weizenbaum. It is written in GAWK and\
-/bin/sh: expad: command not found
+ uses an HTML GUI."
} else if (MENU[2] == "StartELIZA") {
gsub(/\+/, " ", GETARG["YouSay"])
# Here we also have to substitute coded special characters
diff --git a/awklib/eg/prog/translate.awk b/awklib/eg/prog/translate.awk
index 0db239ad..cf7f3897 100644
--- a/awklib/eg/prog/translate.awk
+++ b/awklib/eg/prog/translate.awk
@@ -2,26 +2,30 @@
#
# Arnold Robbins, arnold@skeeve.com, Public Domain
# August 1989
+# February 2009 - bug fix
# Bugs: does not handle things like: tr A-Z a-z, it has
# to be spelled out. However, if `to' is shorter than `from',
# the last character in `to' is used for the rest of `from'.
-function stranslate(from, to, target, lf, lt, t_ar, i, c)
+function stranslate(from, to, target, lf, lt, ltarget, t_ar, i, c,
+ result)
{
lf = length(from)
lt = length(to)
+ ltarget = length(target)
for (i = 1; i <= lt; i++)
t_ar[substr(from, i, 1)] = substr(to, i, 1)
if (lt < lf)
for (; i <= lf; i++)
t_ar[substr(from, i, 1)] = substr(to, lt, 1)
- for (i = 1; i <= lf; i++) {
- c = substr(from, i, 1)
- if (index(target, c) > 0)
- gsub(c, t_ar[c], target)
+ for (i = 1; i <= ltarget; i++) {
+ c = substr(target, i, 1)
+ if (c in t_ar)
+ c = t_ar[c]
+ result = result c
}
- return target
+ return result
}
function translate(from, to)
diff --git a/builtin.c b/builtin.c
index 2f98a821..eb2241f9 100644
--- a/builtin.c
+++ b/builtin.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -30,6 +30,7 @@
#endif
#include <math.h>
#include "random.h"
+#include "floatmagic.h"
#ifndef CHAR_BIT
# define CHAR_BIT 8
@@ -91,6 +92,8 @@ static void sgfmt P((char *buf, const char *format, int alt,
static void efwrite P((const void *ptr, size_t size, size_t count, FILE *fp,
const char *from, struct redirect *rp, int flush));
+static size_t mbc_byte_count P((const char *ptr, size_t numchars));
+static size_t mbc_char_count P((const char *ptr, size_t numbytes));
/* efwrite --- like fwrite, but with error checking */
@@ -298,6 +301,7 @@ do_index(NODE *tree)
register const char *p1, *p2;
register size_t l1, l2;
long ret;
+ int do_single_byte = FALSE;
s1 = tree_eval(tree->lnode);
s2 = tree_eval(tree->rnode->lnode);
@@ -325,18 +329,28 @@ do_index(NODE *tree)
goto out;
}
+#ifdef MBS_SUPPORT
+ if (gawk_mb_cur_max > 1) {
+ s1 = force_wstring(s1);
+ s2 = force_wstring(s2);
+ /*
+ * If we don't have valid wide character strings, use
+ * the real bytes.
+ */
+ do_single_byte = ((s1->wstlen == 0 && s1->stlen > 0)
+ || (s2->wstlen == 0 && s2->stlen > 0));
+ }
+#endif
+
/* IGNORECASE will already be false if posix */
if (IGNORECASE) {
while (l1 > 0) {
if (l2 > l1)
break;
#ifdef MBS_SUPPORT
- if (gawk_mb_cur_max > 1) {
+ if (! do_single_byte && gawk_mb_cur_max > 1) {
const wchar_t *pos;
- s1 = force_wstring(s1);
- s2 = force_wstring(s2);
-
pos = wcasestrstr(s1->wstptr, s1->wstlen, s2->wstptr, s2->wstlen);
if (pos == NULL)
ret = 0;
@@ -370,12 +384,9 @@ do_index(NODE *tree)
break;
}
#ifdef MBS_SUPPORT
- if (gawk_mb_cur_max > 1) {
+ if (! do_single_byte && gawk_mb_cur_max > 1) {
const wchar_t *pos;
- s1 = force_wstring(s1);
- s2 = force_wstring(s2);
-
pos = wstrstr(s1->wstptr, s1->wstlen, s2->wstptr, s2->wstlen);
if (pos == NULL)
ret = 0;
@@ -434,10 +445,15 @@ do_length(NODE *tree)
{
NODE *tmp;
size_t len;
+ NODE *n;
+
+ n = tree->lnode;
+ if (n->type == Node_param_list)
+ n = stack_ptr[n->param_cnt];
- if (tree->lnode->type == Node_var_array
- || tree->lnode->type == Node_array_ref) {
- NODE *array_var = tree->lnode;
+ if (n->type == Node_var_array
+ || n->type == Node_array_ref) {
+ NODE *array_var = n;
static short warned = FALSE;
if (array_var->type == Node_array_ref)
@@ -453,7 +469,10 @@ do_length(NODE *tree)
return tmp_number((AWKNUM) array_var->table_size);
} else {
normal:
- tmp = tree_eval(tree->lnode);
+ if (do_lint && n->type == Node_var_new)
+ lintwarn(_("length: untyped argument will be forced to scalar"));
+
+ tmp = tree_eval(n);
if (do_lint && (tmp->flags & (STRING|STRCUR)) == 0)
lintwarn(_("length: received non-string argument"));
tmp = force_string(tmp);
@@ -461,6 +480,12 @@ normal:
if (gawk_mb_cur_max > 1) {
tmp = force_wstring(tmp);
len = tmp->wstlen;
+ /*
+ * If the bytes don't make a valid wide character
+ * string, fall back to the bytes themselves.
+ */
+ if (len == 0 && tmp->stlen > 0)
+ len = tmp->stlen;
} else
#endif
len = tmp->stlen;
@@ -595,6 +620,7 @@ format_tree(
int quote_flag = FALSE;
int ii, jj;
char *chp;
+ size_t copy_count, char_count;
static const char sp[] = " ";
static const char zero_string[] = "0";
static const char lchbuf[] = "0123456789abcdef";
@@ -750,6 +776,19 @@ check_pos:
* apply. The code already was that way, but this
* comment documents it, at least in the code.
*/
+ if (do_lint) {
+ const char *msg = NULL;
+
+ if (fw && ! have_prec)
+ msg = _("field width is ignored for `%%%%' specifier");
+ else if (fw == 0 && have_prec)
+ msg = _("precision is ignored for `%%%%' specifier");
+ else if (fw && have_prec)
+ msg = _("field width and precision are ignored for `%%%%' specifier");
+
+ if (msg != NULL)
+ lintwarn(msg);
+ }
bchunk_one("%");
s0 = s1;
break;
@@ -938,6 +977,10 @@ check_pos:
#else
uval = (uintmax_t) arg->numbr;
#endif
+ if (do_lint && uval > 255) {
+ lintwarn("[s]printf: value %g is too big for %%c format",
+ arg->numbr);
+ }
cpbuf[0] = uval;
prec = 1;
cp = cpbuf;
@@ -958,8 +1001,13 @@ check_pos:
fill = zero_string;
parse_next_arg();
arg = force_string(arg);
- if (! have_prec || prec > arg->stlen)
+ if (fw == 0 && ! have_prec)
prec = arg->stlen;
+ else {
+ char_count = mbc_char_count(arg->stptr, arg->stlen);
+ if (! have_prec || prec > char_count)
+ prec = char_count;
+ }
cp = arg->stptr;
goto pr_tail;
case 'd':
@@ -968,11 +1016,9 @@ check_pos:
parse_next_arg();
tmpval = force_number(arg);
/*
- * Check for Nan or Inf (without using isfinite(),
- * since that may not be available on all platforms)
+ * Check for Nan or Inf.
*/
- if ((tmpval != tmpval) ||
- ((2*tmpval == tmpval) && (tmpval != 0)))
+ if (isnan(tmpval) || isinf(tmpval))
goto out_of_range;
else
tmpval = double_to_int(tmpval);
@@ -1168,7 +1214,15 @@ check_pos:
fw--;
}
}
- bchunk(cp, (int) prec);
+ copy_count = prec;
+ if (fw == 0 && ! have_prec)
+ ;
+ else if (gawk_mb_cur_max > 1 && (cs1 == 's' || cs1 == 'c')) {
+ assert(cp == arg->stptr || cp == cpbuf);
+ copy_count = mbc_byte_count(arg->stptr,
+ cs1 == 's' ? arg->stlen : 1);
+ }
+ bchunk(cp, copy_count);
while (fw > prec) {
bchunk_one(fill);
fw--;
@@ -1258,6 +1312,8 @@ check_pos:
s0 = s1;
break;
default:
+ if (do_lint && ISALPHA(cs1))
+ lintwarn(_("ignoring unknown format specifier character `%c': no argument converted"), cs1);
break;
}
if (toofew) {
@@ -1420,7 +1476,14 @@ do_substr(NODE *tree)
if (tree->rnode->rnode == NULL) { /* third arg. missing */
/* use remainder of string */
- length = t1->stlen - indx;
+ length = t1->stlen - indx; /* default to bytes */
+#ifdef MBS_SUPPORT
+ if (gawk_mb_cur_max > 1) {
+ t1 = force_wstring(t1);
+ if (t1->wstlen > 0) /* use length of wide char string if we have one */
+ length = t1->wstlen - indx;
+ }
+#endif
d_length = length; /* set here in case used in diagnostics, below */
} else {
t3 = tree_eval(tree->rnode->rnode->lnode);
@@ -2027,14 +2090,17 @@ do_cos(NODE *tree)
/* do_rand --- do the rand function */
static int firstrand = TRUE;
-static char state[256];
+/* Some systems require this array to be integer aligned. Sigh. */
+#define SIZEOF_STATE 256
+static uint32_t istate[SIZEOF_STATE/sizeof(uint32_t)];
+static char *const state = (char *const) istate;
/* ARGSUSED */
NODE *
do_rand(NODE *tree ATTRIBUTE_UNUSED)
{
if (firstrand) {
- (void) initstate((unsigned) 1, state, sizeof state);
+ (void) initstate((unsigned) 1, state, SIZEOF_STATE);
/* don't need to srandom(1), initstate() does it for us. */
firstrand = FALSE;
setstate(state);
@@ -2057,7 +2123,7 @@ do_srand(NODE *tree)
long ret = save_seed; /* SVR4 awk srand returns previous seed */
if (firstrand) {
- (void) initstate((unsigned) 1, state, sizeof state);
+ (void) initstate((unsigned) 1, state, SIZEOF_STATE);
/* don't need to srandom(1), we're changing the seed below */
firstrand = FALSE;
(void) setstate(state);
@@ -2147,6 +2213,7 @@ do_match(NODE *tree)
#endif
it = make_string(start, len);
+ it->flags |= MAYBE_NUM; /* user input */
/*
* assoc_lookup() does free_temp() on 2nd arg.
*/
@@ -2479,15 +2546,17 @@ sub_common(NODE *tree, long how_many, int backdigs)
if (backdigs) { /* gensub, behave sanely */
if (ISDIGIT(scan[1])) {
int dig = scan[1] - '0';
- char *start, *end;
+ if (dig < NUMSUBPATS(rp, t->stptr) && SUBPATSTART(rp, tp->stptr, dig) != -1) {
+ char *start, *end;
- start = t->stptr
- + SUBPATSTART(rp, t->stptr, dig);
- end = t->stptr
- + SUBPATEND(rp, t->stptr, dig);
-
- for (cp = start; cp < end; cp++)
- *bp++ = *cp;
+ start = t->stptr
+ + SUBPATSTART(rp, t->stptr, dig);
+ end = t->stptr
+ + SUBPATEND(rp, t->stptr, dig);
+
+ for (cp = start; cp < end; cp++)
+ *bp++ = *cp;
+ }
scan++;
} else /* \q for any q --> q */
*bp++ = *++scan;
@@ -3279,3 +3348,67 @@ do_bindtextdomain(NODE *tree)
return tmp_string(the_result, strlen(the_result));
}
+
+/* mbc_byte_count --- return number of bytes for corresponding numchars multibyte characters */
+
+static size_t
+mbc_byte_count(const char *ptr, size_t numchars)
+{
+#ifdef MBS_SUPPORT
+ mbstate_t cur_state;
+ size_t sum = 0;
+ int mb_len;
+
+ memset(& cur_state, 0, sizeof(cur_state));
+
+ assert(gawk_mb_cur_max > 1);
+ mb_len = mbrlen(ptr, numchars * gawk_mb_cur_max, &cur_state);
+ if (mb_len <= 0)
+ return numchars; /* no valid m.b. char */
+
+ for (; numchars > 0; numchars--) {
+ mb_len = mbrlen(ptr, numchars * gawk_mb_cur_max, &cur_state);
+ if (mb_len <= 0)
+ break;
+ sum += mb_len;
+ ptr += mb_len;
+ }
+
+ return sum;
+#else
+ return numchars;
+#endif
+}
+
+/* mbc_char_count --- return number of m.b. chars in string, up to numbytes bytes */
+
+static size_t
+mbc_char_count(const char *ptr, size_t numbytes)
+{
+#ifdef MBS_SUPPORT
+ mbstate_t cur_state;
+ size_t sum = 0;
+ int mb_len;
+
+ memset(& cur_state, 0, sizeof(cur_state));
+
+ if (gawk_mb_cur_max == 1)
+ return numbytes;
+
+ mb_len = mbrlen(ptr, numbytes * gawk_mb_cur_max, &cur_state);
+ if (mb_len <= 0)
+ return numbytes; /* no valid m.b. char */
+
+ for (; numbytes > 0; numbytes--) {
+ mb_len = mbrlen(ptr, numbytes * gawk_mb_cur_max, &cur_state);
+ if (mb_len <= 0)
+ break;
+ sum++;
+ ptr += mb_len;
+ }
+
+ return sum;
+#else
+ return numbytes;
+#endif
+}
diff --git a/config.rpath b/config.rpath
index c492a93b..c547c688 100755
--- a/config.rpath
+++ b/config.rpath
@@ -2,7 +2,7 @@
# 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.
+# Copyright 1996-2007 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
@@ -64,7 +64,7 @@ else
;;
esac
;;
- mingw* | pw32* | os2*)
+ mingw* | cygwin* | pw32* | os2*)
;;
hpux9* | hpux10* | hpux11*)
wl='-Wl,'
@@ -74,7 +74,7 @@ else
;;
newsos6)
;;
- linux*)
+ linux* | k*bsd*-gnu)
case $cc_basename in
icc* | ecc*)
wl='-Wl,'
@@ -100,7 +100,7 @@ else
osf3* | osf4* | osf5*)
wl='-Wl,'
;;
- sco3.2v5*)
+ rdos*)
;;
solaris*)
wl='-Wl,'
@@ -108,11 +108,14 @@ else
sunos4*)
wl='-Qoption ld '
;;
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ sysv4 | sysv4.2uw2* | sysv4.3*)
wl='-Wl,'
;;
sysv4*MP*)
;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ wl='-Wl,'
+ ;;
unicos*)
wl='-Wl,'
;;
@@ -189,11 +192,11 @@ if test "$with_gnu_ld" = yes; then
ld_shlibs=no
fi
;;
- interix3*)
+ interix[3-9]*)
hardcode_direct=no
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
- linux*)
+ gnu* | linux* | k*bsd*-gnu)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
@@ -280,7 +283,7 @@ else
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
- hardcode_direct=yes
+ :
else
# We have old collect2
hardcode_direct=unsupported
@@ -359,7 +362,7 @@ else
hardcode_direct=yes
hardcode_minus_L=yes
;;
- freebsd* | kfreebsd*-gnu | dragonfly*)
+ freebsd* | dragonfly*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
@@ -412,18 +415,22 @@ else
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'
+ if test -f /usr/libexec/ld.so; then
+ 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
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
+ ld_shlibs=no
fi
;;
os2*)
@@ -471,7 +478,7 @@ else
ld_shlibs=yes
fi
;;
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
;;
sysv5* | sco3.2v5* | sco5v6*)
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
@@ -488,33 +495,51 @@ 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)
- ;;
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
@@ -528,10 +553,13 @@ case "$host_os" in
shrext=.sl
;;
esac
+ library_names_spec='$libname$shrext'
;;
- interix3*)
+ interix[3-9]*)
+ library_names_spec='$libname$shrext'
;;
irix5* | irix6* | nonstopux*)
+ library_names_spec='$libname$shrext'
case "$host_os" in
irix5* | nonstopux*)
libsuff= shlibsuff=
@@ -548,41 +576,59 @@ case "$host_os" in
;;
linux*oldld* | linux*aout* | linux*coff*)
;;
- linux*)
+ linux* | k*bsd*-gnu)
+ 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'
+ ;;
+ rdos*)
;;
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
@@ -596,6 +642,12 @@ 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"
diff --git a/configh.in b/configh.in
index df3c30f1..e3facf1b 100644
--- a/configh.in
+++ b/configh.in
@@ -45,6 +45,9 @@
*/
#undef HAVE_DECL_TZNAME
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
#undef HAVE_DOPRNT
@@ -69,7 +72,7 @@
/* Define to 1 if you have the `grantpt' function. */
#undef HAVE_GRANTPT
-/* Define if you have the iconv() function. */
+/* Define if you have the iconv() function and it works. */
#undef HAVE_ICONV
/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
@@ -314,9 +317,16 @@
/* systems should define this type here */
#undef HAVE_WINT_T
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#undef LT_OBJDIR
+
/* disable fatal errors on directories */
#undef NO_DIRECTORY_FATAL
+/* disable use of libsigsegv */
+#undef NO_LIBSIGSEGV
+
/* disable lint checks */
#undef NO_LINT
@@ -371,23 +381,33 @@
/* force use of our version of strftime */
#undef USE_INCLUDED_STRFTIME
-/* Version number of package */
-#undef VERSION
-
-/* Define to 1 if on AIX 3.
- System headers sometimes define this.
- We just want to avoid a redefinition error message. */
+/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#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. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
+/* Enable threading extensions on Solaris. */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+# undef _POSIX_PTHREAD_SEMANTICS
+#endif
+/* Enable extensions on HP NonStop. */
+#ifndef _TANDEM_SOURCE
+# undef _TANDEM_SOURCE
+#endif
+/* Enable general extensions on Solaris. */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
+
+
+/* Version number of package */
+#undef VERSION
+
+/* Number of bits in a file offset, on hosts where this is settable. */
+#undef _FILE_OFFSET_BITS
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
@@ -407,17 +427,6 @@
# undef __CHAR_UNSIGNED__
#endif
-/* 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
-
/* Define like PROTOTYPES; this can be used by system headers. */
#undef __PROTOTYPES
@@ -439,9 +448,18 @@
/* Define to `int' if <sys/types.h> does not define. */
#undef pid_t
-/* Define to equivalent of C99 restrict keyword, or to nothing if this is not
- supported. Do not define if restrict is supported directly. */
+/* Define to the equivalent of the C99 'restrict' keyword, or to
+ nothing if this is not supported. Do not define if restrict is
+ supported directly. */
#undef restrict
+/* Work around a bug in Sun C++: it does not support _Restrict, even
+ though the corresponding Sun C compiler does, which causes
+ "#define restrict _Restrict" in the previous line. Perhaps some future
+ version of Sun C++ will work with _Restrict; if so, it'll probably
+ define __RESTRICT, just as Sun C does. */
+#if defined __SUNPRO_CC && !defined __RESTRICT
+# define _Restrict
+#endif
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
diff --git a/configure b/configure
index 91879336..7ca71724 100755
--- a/configure
+++ b/configure
@@ -1,11 +1,11 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for GNU Awk 3.1.6.
+# Generated by GNU Autoconf 2.63 for GNU Awk 3.1.7.
#
# Report bugs to <bug-gawk@gnu.org>.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## --------------------- ##
@@ -17,7 +17,7 @@ DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -39,17 +39,45 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
else
- PATH_SEPARATOR=:
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
fi
- rm -f conf$$.sh
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
fi
# Support unset when possible.
@@ -65,8 +93,6 @@ fi
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
-as_nl='
-'
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
@@ -89,7 +115,7 @@ if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
- echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
{ (exit 1); exit 1; }
fi
@@ -102,17 +128,10 @@ PS2='> '
PS4='+ '
# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- fi
-done
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
# Required to use basename.
if expr a : '\(a\)' >/dev/null 2>&1 &&
@@ -134,7 +153,7 @@ as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
+$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -160,7 +179,7 @@ else
as_have_required=no
fi
- if test $as_have_required = yes && (eval ":
+ if test $as_have_required = yes && (eval ":
(as_func_return () {
(exit \$1)
}
@@ -242,7 +261,7 @@ IFS=$as_save_IFS
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -263,7 +282,7 @@ _ASEOF
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -343,10 +362,10 @@ fi
if test "x$CONFIG_SHELL" != x; then
for as_var in BASH_ENV ENV
- do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- done
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+ do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+ done
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
fi
@@ -415,9 +434,10 @@ fi
test \$exitcode = 0") || {
echo No shell found that supports shell functions.
- echo Please tell autoconf@gnu.org about your system,
- echo including any error possibly output before this
- echo message
+ echo Please tell bug-autoconf@gnu.org about your system,
+ echo including any error possibly output before this message.
+ echo This can help us improve future autoconf versions.
+ echo Configuration will now proceed without shell functions.
}
@@ -453,7 +473,7 @@ test \$exitcode = 0") || {
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
{ (exit 1); exit 1; }; }
# Don't try to exec as it changes $[0], causing all sort of problems
@@ -481,7 +501,6 @@ case `echo -n x` in
*)
ECHO_N='-n';;
esac
-
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
@@ -494,19 +513,22 @@ if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
- mkdir conf$$.dir
-fi
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
+ fi
else
as_ln_s='cp -p'
fi
@@ -531,10 +553,10 @@ else
as_test_x='
eval sh -c '\''
if test -d "$1"; then
- test -d "$1/.";
+ test -d "$1/.";
else
case $1 in
- -*)set "./$1";;
+ -*)set "./$1";;
esac;
case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
???[sx]*):;;*)false;;esac;fi
@@ -551,6 +573,155 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$lt_ECHO in
+X*--fallback-echo)
+ # Remove one level of quotation (which was required for Make).
+ ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','`
+ ;;
+esac
+
+ECHO=${lt_ECHO-echo}
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X$1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell.
+ exec $SHELL "$0" --no-reexec ${1+"$@"}
+fi
+
+if test "X$1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<_LT_EOF
+$*
+_LT_EOF
+ exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test -z "$lt_ECHO"; then
+ if test "X${echo_test_string+set}" != Xset; then
+ # find a string as large as possible, as long as the shell can cope with it
+ for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+ if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+ { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+ then
+ break
+ fi
+ done
+ fi
+
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ :
+ else
+ # The Solaris, AIX, and Digital Unix default echo programs unquote
+ # backslashes. This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ #
+ # So, first we look for a working echo in the user's PATH.
+
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for dir in $PATH /usr/ucb; do
+ IFS="$lt_save_ifs"
+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$dir/echo"
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ if test "X$ECHO" = Xecho; then
+ # We didn't find a better echo, so look for alternatives.
+ if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # This shell has a builtin print -r that does the trick.
+ ECHO='print -r'
+ elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+ test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running configure again with it.
+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ export ORIGINAL_CONFIG_SHELL
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
+ else
+ # Try using printf.
+ ECHO='printf %s\n'
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # Cool, printf works
+ :
+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+ export CONFIG_SHELL
+ SHELL="$CONFIG_SHELL"
+ export SHELL
+ ECHO="$CONFIG_SHELL $0 --fallback-echo"
+ elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$CONFIG_SHELL $0 --fallback-echo"
+ else
+ # maybe with a smaller string...
+ prev=:
+
+ for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
+ if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+ then
+ break
+ fi
+ prev="$cmd"
+ done
+
+ if test "$prev" != 'sed 50q "$0"'; then
+ echo_test_string=`eval $prev`
+ export echo_test_string
+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
+ else
+ # Oops. We lost completely, so just stick with echo.
+ ECHO=echo
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+lt_ECHO=$ECHO
+if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
+ lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
+fi
+
+
+
+
exec 7<&0 </dev/null 6>&1
# Name of the host.
@@ -574,10 +745,11 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='GNU Awk'
PACKAGE_TARNAME='gawk'
-PACKAGE_VERSION='3.1.6'
-PACKAGE_STRING='GNU Awk 3.1.6'
+PACKAGE_VERSION='3.1.7'
+PACKAGE_STRING='GNU Awk 3.1.7'
PACKAGE_BUGREPORT='bug-gawk@gnu.org'
+enable_option_checking=no
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
@@ -617,133 +789,180 @@ ac_includes_default="\
gt_needs=
ac_header_list=
ac_func_list=
-ac_subst_vars='SHELL
-PATH_SEPARATOR
-PACKAGE_NAME
-PACKAGE_TARNAME
-PACKAGE_VERSION
-PACKAGE_STRING
-PACKAGE_BUGREPORT
-exec_prefix
-prefix
-program_transform_name
-bindir
-sbindir
-libexecdir
-datarootdir
-datadir
-sysconfdir
-sharedstatedir
-localstatedir
-includedir
-oldincludedir
-docdir
-infodir
-htmldir
-dvidir
-pdfdir
-psdir
-libdir
-localedir
-mandir
-DEFS
-ECHO_C
-ECHO_N
-ECHO_T
-LIBS
-build_alias
-host_alias
-target_alias
-INSTALL_PROGRAM
-INSTALL_SCRIPT
-INSTALL_DATA
-am__isrc
-CYGPATH_W
-PACKAGE
-VERSION
-ACLOCAL
-AUTOCONF
-AUTOMAKE
-AUTOHEADER
-MAKEINFO
-install_sh
-STRIP
-INSTALL_STRIP_PROGRAM
-mkdir_p
-AWK
-SET_MAKE
-am__leading_dot
-AMTAR
-am__tar
-am__untar
-GREP
-EGREP
-YACC
-YFLAGS
-LN_S
-CC
-CFLAGS
-LDFLAGS
-CPPFLAGS
-ac_ct_CC
-EXEEXT
-OBJEXT
-DEPDIR
-am__include
-am__quote
-AMDEP_TRUE
-AMDEP_FALSE
-AMDEPBACKSLASH
-CCDEPMODE
-am__fastdepCC_TRUE
-am__fastdepCC_FALSE
-CPP
-RANLIB
-U
-ANSI2KNR
-USE_NLS
-MSGFMT
-GMSGFMT
-MSGFMT_015
-GMSGFMT_015
-XGETTEXT
-XGETTEXT_015
+ac_subst_vars='am__EXEEXT_FALSE
+am__EXEEXT_TRUE
+LTLIBOBJS
+SOCKET_LIBS
+LIBOBJS
+POSUB
+LTLIBINTL
+LIBINTL
+INTLLIBS
+LTLIBICONV
+LIBICONV
+INTL_MACOSX_LIBS
+XGETTEXT_EXTRA_OPTIONS
MSGMERGE
-build
-build_cpu
-build_vendor
-build_os
-host
-host_cpu
-host_vendor
+XGETTEXT_015
+XGETTEXT
+GMSGFMT_015
+MSGFMT_015
+GMSGFMT
+MSGFMT
+GETTEXT_MACRO_VERSION
+USE_NLS
+ANSI2KNR
+U
+OTOOL64
+OTOOL
+LIPO
+NMEDIT
+DSYMUTIL
+lt_ECHO
+RANLIB
+AR
+OBJDUMP
+NM
+ac_ct_DUMPBIN
+DUMPBIN
+LD
+FGREP
+SED
host_os
-INTL_MACOSX_LIBS
-LIBICONV
-LTLIBICONV
-INTLLIBS
-LIBINTL
-LTLIBINTL
-POSUB
-LIBOBJS
-SOCKET_LIBS
-LTLIBOBJS'
+host_vendor
+host_cpu
+host
+build_os
+build_vendor
+build_cpu
+build
+LIBTOOL
+LN_S
+YFLAGS
+YACC
+EGREP
+GREP
+CPP
+am__fastdepCC_FALSE
+am__fastdepCC_TRUE
+CCDEPMODE
+AMDEPBACKSLASH
+AMDEP_FALSE
+AMDEP_TRUE
+am__quote
+am__include
+DEPDIR
+OBJEXT
+EXEEXT
+ac_ct_CC
+CPPFLAGS
+LDFLAGS
+CFLAGS
+CC
+SEGVSUBDIR
+SEGVINCLUDE
+LIBSIGSEGV
+subdirs
+am__untar
+am__tar
+AMTAR
+am__leading_dot
+SET_MAKE
+AWK
+mkdir_p
+MKDIR_P
+INSTALL_STRIP_PROGRAM
+STRIP
+install_sh
+MAKEINFO
+AUTOHEADER
+AUTOMAKE
+AUTOCONF
+ACLOCAL
+VERSION
+PACKAGE
+CYGPATH_W
+am__isrc
+INSTALL_DATA
+INSTALL_SCRIPT
+INSTALL_PROGRAM
+target_alias
+host_alias
+build_alias
+LIBS
+ECHO_T
+ECHO_N
+ECHO_C
+DEFS
+mandir
+localedir
+libdir
+psdir
+pdfdir
+dvidir
+htmldir
+infodir
+docdir
+oldincludedir
+includedir
+localstatedir
+sharedstatedir
+sysconfdir
+datadir
+datarootdir
+libexecdir
+sbindir
+bindir
+program_transform_name
+prefix
+exec_prefix
+PACKAGE_BUGREPORT
+PACKAGE_STRING
+PACKAGE_VERSION
+PACKAGE_TARNAME
+PACKAGE_NAME
+PATH_SEPARATOR
+SHELL'
ac_subst_files=''
+ac_user_opts='
+enable_option_checking
+enable_portals
+with_whiny_user_strftime
+enable_lint
+enable_libsigsegv
+enable_switch
+enable_directories_fatal
+enable_dependency_tracking
+enable_shared
+enable_static
+with_pic
+enable_fast_install
+with_gnu_ld
+enable_libtool_lock
+enable_largefile
+enable_nls
+enable_rpath
+with_libiconv_prefix
+with_libintl_prefix
+'
ac_precious_vars='build_alias
host_alias
target_alias
-YACC
-YFLAGS
CC
CFLAGS
LDFLAGS
LIBS
CPPFLAGS
-CPP'
-
+CPP
+YACC
+YFLAGS'
+ac_subdirs_all='libsigsegv'
# Initialize some variables set by options.
ac_init_help=
ac_init_version=false
+ac_unrecognized_opts=
+ac_unrecognized_sep=
# The variables have the same names as the options, with
# dashes changed to underlines.
cache_file=/dev/null
@@ -842,13 +1061,21 @@ do
datarootdir=$ac_optarg ;;
-disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
- eval enable_$ac_feature=no ;;
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=no ;;
-docdir | --docdir | --docdi | --doc | --do)
ac_prev=docdir ;;
@@ -861,13 +1088,21 @@ do
dvidir=$ac_optarg ;;
-enable-* | --enable-*)
- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
{ (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
- eval enable_$ac_feature=\$ac_optarg ;;
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=\$ac_optarg ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -1058,22 +1293,38 @@ do
ac_init_version=: ;;
-with-* | --with-*)
- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
- eval with_$ac_package=\$ac_optarg ;;
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=\$ac_optarg ;;
-without-* | --without-*)
- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
{ (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
- eval with_$ac_package=no ;;
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=no ;;
--x)
# Obsolete; use --with-x.
@@ -1093,7 +1344,7 @@ do
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries=$ac_optarg ;;
- -*) { echo "$as_me: error: unrecognized option: $ac_option
+ -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; }
;;
@@ -1102,16 +1353,16 @@ Try \`$0 --help' for more information." >&2
ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+ { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
{ (exit 1); exit 1; }; }
eval $ac_envvar=\$ac_optarg
export $ac_envvar ;;
*)
# FIXME: should be removed in autoconf 3.0.
- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
: ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
;;
@@ -1120,22 +1371,38 @@ done
if test -n "$ac_prev"; then
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { echo "$as_me: error: missing argument to $ac_option" >&2
+ { $as_echo "$as_me: error: missing argument to $ac_option" >&2
{ (exit 1); exit 1; }; }
fi
-# Be sure to have absolute directory names.
+if test -n "$ac_unrecognized_opts"; then
+ case $enable_option_checking in
+ no) ;;
+ fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
+ { (exit 1); exit 1; }; } ;;
+ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+ esac
+fi
+
+# Check all directory arguments for consistency.
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
libdir localedir mandir
do
eval ac_val=\$$ac_var
+ # Remove trailing slashes.
+ case $ac_val in
+ */ )
+ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
+ eval $ac_var=\$ac_val;;
+ esac
+ # Be sure to have absolute directory names.
case $ac_val in
[\\/$]* | ?:[\\/]* ) continue;;
NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
esac
- { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+ { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
{ (exit 1); exit 1; }; }
done
@@ -1150,7 +1417,7 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used." >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
@@ -1166,10 +1433,10 @@ test "$silent" = yes && exec 6>/dev/null
ac_pwd=`pwd` && test -n "$ac_pwd" &&
ac_ls_di=`ls -di .` &&
ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- { echo "$as_me: error: Working directory cannot be determined" >&2
+ { $as_echo "$as_me: error: working directory cannot be determined" >&2
{ (exit 1); exit 1; }; }
test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- { echo "$as_me: error: pwd does not report name of working directory" >&2
+ { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
{ (exit 1); exit 1; }; }
@@ -1177,12 +1444,12 @@ test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
if test -z "$srcdir"; then
ac_srcdir_defaulted=yes
# Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$0" ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$0" : 'X\(//\)[^/]' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$0" |
+ ac_confdir=`$as_dirname -- "$as_myself" ||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_myself" : 'X\(//\)[^/]' \| \
+ X"$as_myself" : 'X\(//\)$' \| \
+ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_myself" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -1209,12 +1476,12 @@ else
fi
if test ! -r "$srcdir/$ac_unique_file"; then
test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
+ { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
{ (exit 1); exit 1; }; }
fi
ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
+ cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
{ (exit 1); exit 1; }; }
pwd)`
# When building in place, set srcdir=.
@@ -1241,7 +1508,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNU Awk 3.1.6 to adapt to many kinds of systems.
+\`configure' configures GNU Awk 3.1.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1263,9 +1530,9 @@ Configuration:
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
+ [$ac_default_prefix]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
+ [PREFIX]
By default, \`make install' will install all the files in
\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
@@ -1275,25 +1542,25 @@ for instance \`--prefix=\$HOME'.
For better control, use the options below.
Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/gawk]
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
+ --infodir=DIR info documentation [DATAROOTDIR/info]
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ --mandir=DIR man documentation [DATAROOTDIR/man]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/gawk]
+ --htmldir=DIR html documentation [DOCDIR]
+ --dvidir=DIR dvi documentation [DOCDIR]
+ --pdfdir=DIR pdf documentation [DOCDIR]
+ --psdir=DIR ps documentation [DOCDIR]
_ACEOF
cat <<\_ACEOF
@@ -1311,19 +1578,26 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNU Awk 3.1.6:";;
+ short | recursive ) echo "Configuration of GNU Awk 3.1.7:";;
esac
cat <<\_ACEOF
Optional Features:
+ --disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-portals Enable /p as path prefix for portals
--disable-lint Disable gawk lint checking
+ --disable-libsigsegv Disable building and using of libsigsegv
--enable-switch Enable switch statements for awk programs
--disable-directories-fatal Disable fatal errors on directories
--disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors
+ --enable-shared[=PKGS] build shared libraries [default=yes]
+ --enable-static[=PKGS] build static libraries [default=yes]
+ --enable-fast-install[=PKGS]
+ optimize for fast installation [default=yes]
+ --disable-libtool-lock avoid locking (might break parallel builds)
--disable-largefile omit support for large files
--disable-nls do not use Native Language Support
--disable-rpath do not hardcode runtime library paths
@@ -1332,6 +1606,9 @@ Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-whiny-user-strftime Force use of included version of strftime for deficient systems
+ --with-pic try to use only PIC/non-PIC objects [default=use
+ both]
+ --with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-gnu-ld assume the C compiler uses GNU ld default=no
--with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
--without-libiconv-prefix don't search for libiconv in includedir and libdir
@@ -1339,11 +1616,6 @@ Optional Packages:
--without-libintl-prefix don't search for libintl in includedir and libdir
Some influential environment variables:
- YACC The `Yet Another C Compiler' implementation to use. Defaults to
- the first program found out of: `bison -y', `byacc', `yacc'.
- YFLAGS The list of arguments that will be passed by default to $YACC.
- This script will default YFLAGS to the empty string to avoid a
- default value of `-d' given by some make applications.
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
@@ -1352,6 +1624,11 @@ Some influential environment variables:
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
+ YACC The `Yet Another C Compiler' implementation to use. Defaults to
+ the first program found out of: `bison -y', `byacc', `yacc'.
+ YFLAGS The list of arguments that will be passed by default to $YACC.
+ This script will default YFLAGS to the empty string to avoid a
+ default value of `-d' given by some make applications.
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
@@ -1364,15 +1641,17 @@ fi
if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" || continue
+ test -d "$ac_dir" ||
+ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
+ continue
ac_builddir=.
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -1408,7 +1687,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
echo &&
$SHELL "$ac_srcdir/configure" --help=recursive
else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
fi || ac_status=$?
cd "$ac_pwd" || { ac_status=$?; break; }
done
@@ -1417,11 +1696,11 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNU Awk configure 3.1.6
-generated by GNU Autoconf 2.61
+GNU Awk configure 3.1.7
+generated by GNU Autoconf 2.63
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
@@ -1431,8 +1710,8 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GNU Awk $as_me 3.1.6, which was
-generated by GNU Autoconf 2.61. Invocation command line was
+It was created by GNU Awk $as_me 3.1.7, which was
+generated by GNU Autoconf 2.63. Invocation command line was
$ $0 $@
@@ -1468,7 +1747,7 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- echo "PATH: $as_dir"
+ $as_echo "PATH: $as_dir"
done
IFS=$as_save_IFS
@@ -1503,7 +1782,7 @@ do
| -silent | --silent | --silen | --sile | --sil)
continue ;;
*\'*)
- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
@@ -1555,11 +1834,12 @@ _ASBOX
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
+ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
*) $as_unset $ac_var ;;
esac ;;
esac
@@ -1589,9 +1869,9 @@ _ASBOX
do
eval ac_val=\$$ac_var
case $ac_val in
- *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
- echo "$ac_var='\''$ac_val'\''"
+ $as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
@@ -1606,9 +1886,9 @@ _ASBOX
do
eval ac_val=\$$ac_var
case $ac_val in
- *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
esac
- echo "$ac_var='\''$ac_val'\''"
+ $as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
fi
@@ -1624,8 +1904,8 @@ _ASBOX
echo
fi
test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
+ $as_echo "$as_me: caught signal $ac_signal"
+ $as_echo "$as_me: exit $exit_status"
} >&5
rm -f core *.core core.conftest.* &&
rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -1667,21 +1947,24 @@ _ACEOF
# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
+# Prefer an explicitly selected file to automatically selected ones.
+ac_site_file1=NONE
+ac_site_file2=NONE
if test -n "$CONFIG_SITE"; then
- set x "$CONFIG_SITE"
+ ac_site_file1=$CONFIG_SITE
elif test "x$prefix" != xNONE; then
- set x "$prefix/share/config.site" "$prefix/etc/config.site"
+ ac_site_file1=$prefix/share/config.site
+ ac_site_file2=$prefix/etc/config.site
else
- set x "$ac_default_prefix/share/config.site" \
- "$ac_default_prefix/etc/config.site"
+ ac_site_file1=$ac_default_prefix/share/config.site
+ ac_site_file2=$ac_default_prefix/etc/config.site
fi
-shift
-for ac_site_file
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
+ test "x$ac_site_file" = xNONE && continue
if test -r "$ac_site_file"; then
- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
+ { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file"
fi
@@ -1691,16 +1974,16 @@ if test -r "$cache_file"; then
# Some versions of bash will fail to source /dev/null (special
# files actually), so we avoid doing that.
if test -f "$cache_file"; then
- { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
+ { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
+$as_echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . "$cache_file";;
*) . "./$cache_file";;
esac
fi
else
- { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
+ { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
+$as_echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -1718,29 +2001,38 @@ for ac_var in $ac_precious_vars; do
eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
+ # differences in whitespace do not lead to failure.
+ ac_old_val_w=`echo x $ac_old_val`
+ ac_new_val_w=`echo x $ac_new_val`
+ if test "$ac_old_val_w" != "$ac_new_val_w"; then
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ ac_cache_corrupted=:
+ else
+ { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+ eval $ac_var=\$ac_old_val
+ fi
+ { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5
+$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
+ { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5
+$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
# Pass precious variables to config.status.
if test "$ac_new_set" = set; then
case $ac_new_val in
- *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
*) ac_arg=$ac_var=$ac_new_val ;;
esac
case " $ac_configure_args " in
@@ -1750,10 +2042,12 @@ echo "$as_me: current value: $ac_new_val" >&2;}
fi
done
if $ac_cache_corrupted; then
- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1804,7 +2098,7 @@ then
fi
-am__api_version='1.10'
+am__api_version='1.11'
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -1823,8 +2117,8 @@ for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
fi
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
-echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
+$as_echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1850,11 +2144,12 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
-{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; }
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
@@ -1883,17 +2178,29 @@ case $as_dir/ in
# program-specific install script used by HP pwplus--don't use.
:
else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
fi
fi
done
done
;;
esac
+
done
IFS=$as_save_IFS
+rm -rf conftest.one conftest.two conftest.dir
fi
if test "${ac_cv_path_install+set}" = set; then
@@ -1906,8 +2213,8 @@ fi
INSTALL=$ac_install_sh
fi
fi
-{ echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
@@ -1917,21 +2224,38 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5
-echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+$as_echo_n "checking whether build environment is sane... " >&6; }
# Just in case
sleep 1
echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name. Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+ *[\\\"\#\$\&\'\`$am_lf]*)
+ { { $as_echo "$as_me:$LINENO: error: unsafe absolute working directory name" >&5
+$as_echo "$as_me: error: unsafe absolute working directory name" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+case $srcdir in
+ *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
+ { { $as_echo "$as_me:$LINENO: error: unsafe srcdir value: \`$srcdir'" >&5
+$as_echo "$as_me: error: unsafe srcdir value: \`$srcdir'" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
if test "$*" = "X"; then
# -L didn't work.
- set X `ls -t $srcdir/configure conftest.file`
+ set X `ls -t "$srcdir/configure" conftest.file`
fi
rm -f conftest.file
if test "$*" != "X $srcdir/configure conftest.file" \
@@ -1941,9 +2265,9 @@ if (
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
- { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
+ { { $as_echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
alias in your environment" >&5
-echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
+$as_echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
alias in your environment" >&2;}
{ (exit 1); exit 1; }; }
fi
@@ -1954,45 +2278,158 @@ then
# Ok.
:
else
- { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
+ { { $as_echo "$as_me:$LINENO: error: newly created file is older than distributed files!
Check your system clock" >&5
-echo "$as_me: error: newly created file is older than distributed files!
+$as_echo "$as_me: error: newly created file is older than distributed files!
Check your system clock" >&2;}
{ (exit 1); exit 1; }; }
fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+{ $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
test "$program_prefix" != NONE &&
program_transform_name="s&^&$program_prefix&;$program_transform_name"
# Use a double $ so make ignores it.
test "$program_suffix" != NONE &&
program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $. echo might interpret backslashes.
+# Double any \ or $.
# By default was `s,x,x', remove it if useless.
-cat <<\_ACEOF >conftest.sed
-s/[\\$]/&&/g;s/;s,x,x,$//
-_ACEOF
-program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
-rm -f conftest.sed
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
# expand $ac_aux_dir to an absolute path
am_aux_dir=`cd $ac_aux_dir && pwd`
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+ *)
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
+ esac
+fi
# Use eval to expand $SHELL
if eval "$MISSING --run true"; then
am_missing_run="$MISSING --run "
else
am_missing_run=
- { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
-echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if test x"${install_sh}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+ *)
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
+ esac
+fi
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
-{ echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5
-echo $ECHO_N "checking for a thread-safe mkdir -p... $ECHO_C" >&6; }
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
+
+{ $as_echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5
+$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
if test -z "$MKDIR_P"; then
if test "${ac_cv_path_mkdir+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
@@ -2027,8 +2464,8 @@ fi
MKDIR_P="$ac_install_sh -d"
fi
fi
-{ echo "$as_me:$LINENO: result: $MKDIR_P" >&5
-echo "${ECHO_T}$MKDIR_P" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $MKDIR_P" >&5
+$as_echo "$MKDIR_P" >&6; }
mkdir_p="$MKDIR_P"
case $mkdir_p in
@@ -2040,10 +2477,10 @@ for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_AWK+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
ac_cv_prog_AWK="$AWK" # Let the user override the test.
@@ -2056,7 +2493,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_AWK="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2067,22 +2504,23 @@ fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- { echo "$as_me:$LINENO: result: $AWK" >&5
-echo "${ECHO_T}$AWK" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
test -n "$AWK" && break
done
-{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; }
-set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
SHELL = /bin/sh
@@ -2099,12 +2537,12 @@ esac
rm -f conftest.make
fi
if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
SET_MAKE=
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
@@ -2123,8 +2561,8 @@ if test "`cd $srcdir && pwd`" != "`pwd`"; then
am__isrc=' -I$(srcdir)'
# test to see if srcdir already configured
if test -f $srcdir/config.status; then
- { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
-echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
+$as_echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
{ (exit 1); exit 1; }; }
fi
fi
@@ -2141,7 +2579,7 @@ fi
# Define the identity of the package.
PACKAGE='gawk'
- VERSION='3.1.6'
+ VERSION='3.1.7'
cat >>confdefs.h <<_ACEOF
@@ -2169,112 +2607,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { echo "$as_me:$LINENO: result: $STRIP" >&5
-echo "${ECHO_T}$STRIP" >&6; }
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
-echo "${ECHO_T}$ac_ct_STRIP" >&6; }
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
# Always define AMTAR for backward compatibility.
@@ -2289,6 +2621,7 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
# Check whether --enable-portals was given.
if test "${enable_portals+set}" = set; then
enableval=$enable_portals; if test "$enableval" = yes
@@ -2329,6 +2662,20 @@ _ACEOF
fi
+# Check whether --enable-libsigsegv was given.
+if test "${enable_libsigsegv+set}" = set; then
+ enableval=$enable_libsigsegv; if test "$enableval" = no
+ then
+
+cat >>confdefs.h <<\_ACEOF
+#define NO_LIBSIGSEGV 1
+_ACEOF
+
+ disable_libsigsegv=yes
+ fi
+
+fi
+
# Check whether --enable-switch was given.
if test "${enable_switch+set}" = set; then
enableval=$enable_switch; if test "$enableval" = yes
@@ -2356,222 +2703,85 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
-echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- # Extract the first word of "grep ggrep" to use in msg output
-if test -z "$GREP"; then
-set dummy grep ggrep; ac_prog_name=$2
-if test "${ac_cv_path_GREP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_path_GREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
- # Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+case $disable_libsigsegv in
+yes) : do nothing
+ ;;
*)
- ac_count=0
- echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-
- $ac_path_GREP_found && break 3
- done
-done
-
-done
-IFS=$as_save_IFS
-fi
+subdirs="$subdirs libsigsegv"
-GREP="$ac_cv_path_GREP"
-if test -z "$GREP"; then
- { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
-fi
+ LIBSIGSEGV="libsigsegv/src/.libs/libsigsegv.a $LIBS"
+ SEGVINCLUDE='-I$(builddir)/libsigsegv/src'
+ SEGVSUBDIR=libsigsegv
-else
- ac_cv_path_GREP=$GREP
-fi
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
-echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ echo "$as_me:$LINENO: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- # Extract the first word of "egrep" to use in msg output
-if test -z "$EGREP"; then
-set dummy egrep; ac_prog_name=$2
-if test "${ac_cv_path_EGREP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_path_EGREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
- # Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+ ;;
esac
+DEPDIR="${am__leading_dot}deps"
- $ac_path_EGREP_found && break 3
- done
-done
-
-done
-IFS=$as_save_IFS
-
+ac_config_commands="$ac_config_commands depfiles"
-fi
-EGREP="$ac_cv_path_EGREP"
-if test -z "$EGREP"; then
- { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo this is the am__doit target
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+{ $as_echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+ am__include=include
+ am__quote=
+ _am_result=GNU
+ ;;
+esac
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ case `$am_make -s -f confmf 2> /dev/null` in #(
+ *the\ am__doit\ target*)
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ ;;
+ esac
fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
+{ $as_echo "$as_me:$LINENO: result: $_am_result" >&5
+$as_echo "$_am_result" >&6; }
+rm -f confinc confmf
- fi
+# Check whether --enable-dependency-tracking was given.
+if test "${enable_dependency_tracking+set}" = set; then
+ enableval=$enable_dependency_tracking;
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
-echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-for ac_prog in 'bison -y' byacc
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_YACC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$YACC"; then
- ac_cv_prog_YACC="$YACC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_YACC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-IFS=$as_save_IFS
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
fi
-fi
-YACC=$ac_cv_prog_YACC
-if test -n "$YACC"; then
- { echo "$as_me:$LINENO: result: $YACC" >&5
-echo "${ECHO_T}$YACC" >&6; }
+ if test "x$enable_dependency_tracking" != xno; then
+ AMDEP_TRUE=
+ AMDEP_FALSE='#'
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ AMDEP_TRUE='#'
+ AMDEP_FALSE=
fi
- test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="yacc"
-
-{ echo "$as_me:$LINENO: checking whether ln -s works" >&5
-echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
- { echo "$as_me:$LINENO: result: no, using $LN_S" >&5
-echo "${ECHO_T}no, using $LN_S" >&6; }
-fi
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2580,10 +2790,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2596,7 +2806,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2607,11 +2817,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2620,10 +2830,10 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -2636,7 +2846,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2647,11 +2857,11 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
if test "x$ac_ct_CC" = x; then
@@ -2659,12 +2869,8 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
CC=$ac_ct_CC
@@ -2677,10 +2883,10 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2693,7 +2899,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2704,11 +2910,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2717,10 +2923,10 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2738,7 +2944,7 @@ do
continue
fi
ac_cv_prog_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2761,11 +2967,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2776,10 +2982,10 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2792,7 +2998,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2803,11 +3009,11 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2820,10 +3026,10 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -2836,7 +3042,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -2847,11 +3053,11 @@ fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2863,12 +3069,8 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
CC=$ac_ct_CC
@@ -2878,44 +3080,50 @@ fi
fi
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
+$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { (exit 1); exit 1; }; }; }
# Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
+$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
{ (ac_try="$ac_compiler --version >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compiler --version >&5") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }
{ (ac_try="$ac_compiler -v >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compiler -v >&5") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }
{ (ac_try="$ac_compiler -V >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compiler -V >&5") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }
cat >conftest.$ac_ext <<_ACEOF
@@ -2934,27 +3142,22 @@ main ()
}
_ACEOF
ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; }
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-#
-# List of possible output files, starting from the most likely.
-# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
-# only as a last resort. b.out is created by i960 compilers.
-ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
-#
-# The IRIX 6 linker writes into existing files which may not be
-# executable, retaining their permissions. Remove them first so a
-# subsequent execution test works.
+{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+
+# The possible output files:
+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
+
ac_rmfiles=
for ac_file in $ac_files
do
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
* ) ac_rmfiles="$ac_rmfiles $ac_file";;
esac
done
@@ -2965,10 +3168,11 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link_default") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
# Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
@@ -2979,7 +3183,7 @@ for ac_file in $ac_files ''
do
test -f "$ac_file" || continue
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
;;
[ab].out )
# We found the default executable, but exeext='' is most
@@ -3006,25 +3210,27 @@ else
ac_file=''
fi
-{ echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
if test -z "$ac_file"; then
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
See \`config.log' for more details." >&5
-echo "$as_me: error: C compiler cannot create executables
+$as_echo "$as_me: error: C compiler cannot create executables
See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+ { (exit 77); exit 77; }; }; }
fi
ac_exeext=$ac_cv_exeext
# Check that the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
# If not cross compiling, check that we can run a simple program.
if test "$cross_compiling" != yes; then
@@ -3033,49 +3239,53 @@ if test "$cross_compiling" != yes; then
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
cross_compiling=no
else
if test "$cross_compiling" = maybe; then
cross_compiling=yes
else
- { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'.
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C compiled programs.
+$as_echo "$as_me: error: cannot run C compiled programs.
If you meant to cross compile, use \`--host'.
See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { (exit 1); exit 1; }; }; }
fi
fi
fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+{ $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
ac_clean_files=$ac_clean_files_save
# Check that the compiler produces executables we can run. If not, either
# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
-{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
-{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
+$as_echo_n "checking for suffix of executables... " >&6; }
if { (ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
@@ -3084,31 +3294,33 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
for ac_file in conftest.exe conftest conftest.*; do
test -f "$ac_file" || continue
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
*.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
break;;
* ) break;;
esac
done
else
- { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { (exit 1); exit 1; }; }; }
fi
rm -f conftest$ac_cv_exeext
-{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+$as_echo "$ac_cv_exeext" >&6; }
rm -f conftest.$ac_ext
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
+$as_echo_n "checking for suffix of object files... " >&6; }
if test "${ac_cv_objext+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -3131,40 +3343,43 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
for ac_file in conftest.o conftest.obj conftest.*; do
test -f "$ac_file" || continue;
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
*) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
break;;
esac
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
+$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { (exit 1); exit 1; }; }; }
fi
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+$as_echo "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
if test "${ac_cv_c_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -3190,20 +3405,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_compiler_gnu=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_compiler_gnu=no
@@ -3213,15 +3429,19 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; }
-GCC=`test $ac_compiler_gnu = yes && echo yes`
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
-{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
if test "${ac_cv_prog_cc_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
ac_c_werror_flag=yes
@@ -3248,20 +3468,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_prog_cc_g=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
CFLAGS=""
@@ -3286,20 +3507,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
:
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_c_werror_flag=$ac_save_c_werror_flag
@@ -3325,20 +3547,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_prog_cc_g=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -3353,8 +3576,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_c_werror_flag=$ac_save_c_werror_flag
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
@@ -3370,10 +3593,10 @@ else
CFLAGS=
fi
fi
-{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
-echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
if test "${ac_cv_prog_cc_c89+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
ac_save_CC=$CC
@@ -3444,20 +3667,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_prog_cc_c89=$ac_arg
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -3473,15 +3697,15 @@ fi
# AC_CACHE_VAL
case "x$ac_cv_prog_cc_c89" in
x)
- { echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6; } ;;
+ { $as_echo "$as_me:$LINENO: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
xno)
- { echo "$as_me:$LINENO: result: unsupported" >&5
-echo "${ECHO_T}unsupported" >&6; } ;;
+ { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
*)
CC="$CC $ac_cv_prog_cc_c89"
- { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;;
+ { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
esac
@@ -3490,75 +3714,13 @@ ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo done
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
-echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
- am__include=include
- am__quote=
- _am_result=GNU
-fi
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
- am__include=.include
- am__quote="\""
- _am_result=BSD
- fi
-fi
-
-
-{ echo "$as_me:$LINENO: result: $_am_result" >&5
-echo "${ECHO_T}$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
depcc="$CC" am_compiler_list=
-{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
-echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
@@ -3583,6 +3745,11 @@ else
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
@@ -3600,7 +3767,17 @@ else
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
@@ -3610,19 +3787,23 @@ else
break
fi
;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
none) break ;;
esac
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
if depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ source=sub/conftest.c object=$am__obj \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
>/dev/null 2>conftest.err &&
grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
@@ -3646,8 +3827,8 @@ else
fi
fi
-{ echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
-echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
if
@@ -3661,20 +3842,21 @@ else
fi
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
if test "${ac_cv_prog_CPP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
@@ -3706,20 +3888,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
:
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
# Broken: fails on valid input.
@@ -3743,13 +3926,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -3757,7 +3941,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
# Broken: success on invalid input.
continue
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
# Passes both tests.
@@ -3782,8 +3966,8 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-{ echo "$as_me:$LINENO: result: $CPP" >&5
-echo "${ECHO_T}$CPP" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
do
@@ -3811,20 +3995,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
:
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
# Broken: fails on valid input.
@@ -3848,13 +4033,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -3862,7 +4048,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
# Broken: success on invalid input.
continue
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
# Passes both tests.
@@ -3878,11 +4064,13 @@ rm -f conftest.err conftest.$ac_ext
if $ac_preproc_ok; then
:
else
- { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { (exit 1); exit 1; }; }; }
fi
ac_ext=c
@@ -3891,286 +4079,145 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-IFS=$as_save_IFS
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { echo "$as_me:$LINENO: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6; }
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
done
IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6; }
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet. If you think this
-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
+ if test -z "$ac_cv_path_GREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
fi
else
- RANLIB="$ac_cv_prog_RANLIB"
+ ac_cv_path_GREP=$GREP
fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- done
- done
- ;;
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
done
IFS=$as_save_IFS
-
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
+ if test -z "$ac_cv_path_EGREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
fi
-fi
-{ echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; }
-set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
- SET_MAKE=
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-# This is mainly for my use during testing and development.
-# Yes, it's a bit of a hack.
-{ echo "$as_me:$LINENO: checking for special development options" >&5
-echo $ECHO_N "checking for special development options... $ECHO_C" >&6; }
-if test -f $srcdir/.developing
-then
- # add other debug flags as appropriate, save GAWKDEBUG for emergencies
- CFLAGS="$CFLAGS -DARRAYDEBUG -DYYDEBUG"
- if grep dbug $srcdir/.developing
- then
- CFLAGS="$CFLAGS -DDBUG"
- LIBS="$LIBS dbug/libdbug.a"
- fi
- # turn on compiler warnings if we're doing development
- if test "$GCC" = yes
- then
- CFLAGS="$CFLAGS -Wall -fno-builtin"
- fi
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ ac_cv_path_EGREP=$EGREP
fi
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define _GNU_SOURCE 1
-_ACEOF
-
-
-
-
-
-{ echo "$as_me:$LINENO: checking for AIX" >&5
-echo $ECHO_N "checking for AIX... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#ifdef _AIX
- yes
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define _ALL_SOURCE 1
-_ACEOF
-
-else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ fi
fi
-rm -f conftest*
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
-{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
if test "${ac_cv_header_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -4197,20 +4244,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_header_stdc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_header_stdc=no
@@ -4302,37 +4350,40 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
:
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
ac_cv_header_stdc=no
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
fi
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -4354,11 +4405,11 @@ fi
for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -4376,20 +4427,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
eval "$as_ac_Header=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_Header=no"
@@ -4397,12 +4449,15 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -4410,18 +4465,19 @@ fi
done
+
+ if test "${ac_cv_header_minix_config_h+set}" = set; then
+ { $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5
+$as_echo_n "checking for minix/config.h... " >&6; }
if test "${ac_cv_header_minix_config_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for minix/config.h" >&5
-echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_minix_config_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
+$as_echo "$ac_cv_header_minix_config_h" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking minix/config.h usability" >&5
-echo $ECHO_N "checking minix/config.h usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking minix/config.h usability" >&5
+$as_echo_n "checking minix/config.h usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -4437,32 +4493,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking minix/config.h presence" >&5
-echo $ECHO_N "checking minix/config.h presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking minix/config.h presence" >&5
+$as_echo_n "checking minix/config.h presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -4476,51 +4533,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: minix/config.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: minix/config.h: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -4529,25 +4587,25 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for minix/config.h" >&5
-echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5
+$as_echo_n "checking for minix/config.h... " >&6; }
if test "${ac_cv_header_minix_config_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_header_minix_config_h=$ac_header_preproc
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
+$as_echo "$ac_cv_header_minix_config_h" >&6; }
fi
-if test $ac_cv_header_minix_config_h = yes; then
+if test "x$ac_cv_header_minix_config_h" = x""yes; then
MINIX=yes
else
MINIX=
fi
-if test "$MINIX" = yes; then
+ if test "$MINIX" = yes; then
cat >>confdefs.h <<\_ACEOF
#define _POSIX_SOURCE 1
@@ -4563,22 +4621,14 @@ cat >>confdefs.h <<\_ACEOF
#define _MINIX 1
_ACEOF
-fi
-
-
-
-
-
-
-
-
+ fi
- { echo "$as_me:$LINENO: checking whether it is safe to define __EXTENSIONS__" >&5
-echo $ECHO_N "checking whether it is safe to define __EXTENSIONS__... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether it is safe to define __EXTENSIONS__" >&5
+$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
if test "${ac_cv_safe_to_define___extensions__+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -4603,20 +4653,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_safe_to_define___extensions__=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_safe_to_define___extensions__=no
@@ -4624,14 +4675,22 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_safe_to_define___extensions__" >&5
-echo "${ECHO_T}$ac_cv_safe_to_define___extensions__" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_safe_to_define___extensions__" >&5
+$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
test $ac_cv_safe_to_define___extensions__ = yes &&
cat >>confdefs.h <<\_ACEOF
#define __EXTENSIONS__ 1
_ACEOF
cat >>confdefs.h <<\_ACEOF
+#define _ALL_SOURCE 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define _GNU_SOURCE 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
#define _POSIX_PTHREAD_SEMANTICS 1
_ACEOF
@@ -4641,10 +4700,8111 @@ _ACEOF
- { echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
-echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+for ac_prog in 'bison -y' byacc
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_YACC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$YACC"; then
+ ac_cv_prog_YACC="$YACC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_YACC="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+YACC=$ac_cv_prog_YACC
+if test -n "$YACC"; then
+ { $as_echo "$as_me:$LINENO: result: $YACC" >&5
+$as_echo "$YACC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$YACC" && break
+done
+test -n "$YACC" || YACC="yacc"
+
+{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5
+$as_echo_n "checking whether ln -s works... " >&6; }
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5
+$as_echo "no, using $LN_S" >&6; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ fi
+fi
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# != 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl.exe
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl.exe
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_CC" && break
+done
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+fi
+
+fi
+
+
+test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+
+# Provide some information about the compiler.
+$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+{ (ac_try="$ac_compiler --version >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler --version >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -v >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler -v >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -V >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler -V >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_compiler_gnu=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_compiler_gnu=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_g=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ CFLAGS=""
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_g=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_c89=$ac_arg
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { $as_echo "$as_me:$LINENO: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+ xno)
+ { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
+ *)
+ CC="$CC $ac_cv_prog_cc_c89"
+ { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+depcc="$CC" am_compiler_list=
+
+{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CC_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
+ case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
+ none) break ;;
+ esac
+ if depmode=$depmode \
+ source=sub/conftest.c object=$am__obj \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CC_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+ if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+ am__fastdepCC_TRUE=
+ am__fastdepCC_FALSE='#'
+else
+ am__fastdepCC_TRUE='#'
+ am__fastdepCC_FALSE=
+fi
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+case `pwd` in
+ *\ * | *\ *)
+ { $as_echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
+
+
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
+
+
+
+
+
+
+
+
+
+
+
+
+ltmain="$ac_aux_dir/ltmain.sh"
+
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+ { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
+$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
+ { (exit 1); exit 1; }; }
+
+{ $as_echo "$as_me:$LINENO: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if test "${ac_cv_build+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+ { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+ { (exit 1); exit 1; }; }
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
+$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
+$as_echo "$as_me: error: invalid value of canonical build" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:$LINENO: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if test "${ac_cv_host+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
+$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
+$as_echo "$as_me: error: invalid value of canonical host" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
+$as_echo_n "checking for a sed that does not truncate output... " >&6; }
+if test "${ac_cv_path_SED+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+ for ac_i in 1 2 3 4 5 6 7; do
+ ac_script="$ac_script$as_nl$ac_script"
+ done
+ echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
+ $as_unset ac_script || ac_script=
+ if test -z "$SED"; then
+ ac_path_SED_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
+# Check for GNU ac_path_SED and select it if it is found.
+ # Check for GNU $ac_path_SED
+case `"$ac_path_SED" --version 2>&1` in
+*GNU*)
+ ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo '' >> "conftest.nl"
+ "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_SED_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_SED="$ac_path_SED"
+ ac_path_SED_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_SED_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_SED"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_SED=$SED
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
+$as_echo "$ac_cv_path_SED" >&6; }
+ SED="$ac_cv_path_SED"
+ rm -f conftest.sed
+
+test -z "$SED" && SED=sed
+Xsed="$SED -e 1s/^X//"
+
+
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for fgrep" >&5
+$as_echo_n "checking for fgrep... " >&6; }
+if test "${ac_cv_path_FGREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
+ then ac_cv_path_FGREP="$GREP -F"
+ else
+ if test -z "$FGREP"; then
+ ac_path_FGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in fgrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
+# Check for GNU ac_path_FGREP and select it if it is found.
+ # Check for GNU $ac_path_FGREP
+case `"$ac_path_FGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'FGREP' >> "conftest.nl"
+ "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_FGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_FGREP="$ac_path_FGREP"
+ ac_path_FGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_FGREP_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_FGREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_FGREP=$FGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_FGREP" >&5
+$as_echo "$ac_cv_path_FGREP" >&6; }
+ FGREP="$ac_cv_path_FGREP"
+
+
+test -z "$GREP" && GREP=grep
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Check whether --with-gnu-ld was given.
+if test "${with_gnu_ld+set}" = set; then
+ withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
+else
+ with_gnu_ld=no
+fi
+
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ { $as_echo "$as_me:$LINENO: checking for ld used by $CC" >&5
+$as_echo_n "checking for ld used by $CC... " >&6; }
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [\\/]* | ?:[\\/]*)
+ re_direlt='/[^/][^/]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ { $as_echo "$as_me:$LINENO: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
+else
+ { $as_echo "$as_me:$LINENO: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
+fi
+if test "${lt_cv_path_LD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$LD"; then
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+else
+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
+fi
+fi
+
+LD="$lt_cv_path_LD"
+if test -n "$LD"; then
+ { $as_echo "$as_me:$LINENO: result: $LD" >&5
+$as_echo "$LD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+test -z "$LD" && { { $as_echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
+ { (exit 1); exit 1; }; }
+{ $as_echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
+if test "${lt_cv_prog_gnu_ld+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5
+$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+with_gnu_ld=$lt_cv_prog_gnu_ld
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
+$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test "${lt_cv_path_NM+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM="$NM"
+else
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+ done
+ : ${lt_cv_path_NM=no}
+fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5
+$as_echo "$lt_cv_path_NM" >&6; }
+if test "$lt_cv_path_NM" != "no"; then
+ NM="$lt_cv_path_NM"
+else
+ # Didn't find any BSD compatible name lister, look for dumpbin.
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in "dumpbin -symbols" "link -dump -symbols"
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_DUMPBIN+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DUMPBIN"; then
+ ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DUMPBIN=$ac_cv_prog_DUMPBIN
+if test -n "$DUMPBIN"; then
+ { $as_echo "$as_me:$LINENO: result: $DUMPBIN" >&5
+$as_echo "$DUMPBIN" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$DUMPBIN" && break
+ done
+fi
+if test -z "$DUMPBIN"; then
+ ac_ct_DUMPBIN=$DUMPBIN
+ for ac_prog in "dumpbin -symbols" "link -dump -symbols"
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DUMPBIN"; then
+ ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
+if test -n "$ac_ct_DUMPBIN"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_DUMPBIN" >&5
+$as_echo "$ac_ct_DUMPBIN" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_DUMPBIN" && break
+done
+
+ if test "x$ac_ct_DUMPBIN" = x; then
+ DUMPBIN=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ DUMPBIN=$ac_ct_DUMPBIN
+ fi
+fi
+
+
+ if test "$DUMPBIN" != ":"; then
+ NM="$DUMPBIN"
+ fi
+fi
+test -z "$NM" && NM=nm
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking the name lister ($NM) interface" >&5
+$as_echo_n "checking the name lister ($NM) interface... " >&6; }
+if test "${lt_cv_nm_interface+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_nm_interface="BSD nm"
+ echo "int some_variable = 0;" > conftest.$ac_ext
+ (eval echo "\"\$as_me:6440: $ac_compile\"" >&5)
+ (eval "$ac_compile" 2>conftest.err)
+ cat conftest.err >&5
+ (eval echo "\"\$as_me:6443: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+ cat conftest.err >&5
+ (eval echo "\"\$as_me:6446: output\"" >&5)
+ cat conftest.out >&5
+ if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+ lt_cv_nm_interface="MS dumpbin"
+ fi
+ rm -f conftest*
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_nm_interface" >&5
+$as_echo "$lt_cv_nm_interface" >&6; }
+
+# find the maximum length of command line arguments
+{ $as_echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5
+$as_echo_n "checking the maximum length of command line arguments... " >&6; }
+if test "${lt_cv_sys_max_cmd_len+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ i=0
+ teststring="ABCD"
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw* | cegcc*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ amigaos*)
+ # On AmigaOS with pdksh, this test takes hours, literally.
+ # So we just punt and use a minimum line length of 8192.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ ;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
+ osf*)
+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+ # nice to cause kernel panics so lets avoid the loop below.
+ # First set a reasonable default.
+ lt_cv_sys_max_cmd_len=16384
+ #
+ if test -x /sbin/sysconfig; then
+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
+ esac
+ fi
+ ;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
+ *)
+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+ if test -n "$lt_cv_sys_max_cmd_len"; then
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ else
+ # Make teststring a little bigger before we do anything with it.
+ # a 1K string should be a reasonable start.
+ for i in 1 2 3 4 5 6 7 8 ; do
+ teststring=$teststring$teststring
+ done
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+ = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ teststring=$teststring$teststring
+ done
+ # Only check the string length outside the loop.
+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+ teststring=
+ # Add a significant safety factor because C++ compilers can tack on
+ # massive amounts of additional arguments before passing them to the
+ # linker. It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ fi
+ ;;
+ esac
+
+fi
+
+if test -n $lt_cv_sys_max_cmd_len ; then
+ { $as_echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5
+$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: none" >&5
+$as_echo "none" >&6; }
+fi
+max_cmd_len=$lt_cv_sys_max_cmd_len
+
+
+
+
+
+
+: ${CP="cp -f"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+
+{ $as_echo "$as_me:$LINENO: checking whether the shell understands some XSI constructs" >&5
+$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
+# Try some XSI features
+xsi_shell=no
+( _lt_dummy="a/b/c"
+ test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+ = c,a/b,, \
+ && eval 'test $(( 1 + 1 )) -eq 2 \
+ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+ && xsi_shell=yes
+{ $as_echo "$as_me:$LINENO: result: $xsi_shell" >&5
+$as_echo "$xsi_shell" >&6; }
+
+
+{ $as_echo "$as_me:$LINENO: checking whether the shell understands \"+=\"" >&5
+$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
+lt_shell_append=no
+( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
+ >/dev/null 2>&1 \
+ && lt_shell_append=yes
+{ $as_echo "$as_me:$LINENO: result: $lt_shell_append" >&5
+$as_echo "$lt_shell_append" >&6; }
+
+
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ lt_unset=unset
+else
+ lt_unset=false
+fi
+
+
+
+
+
+# test EBCDIC or ASCII
+case `echo X|tr X '\101'` in
+ A) # ASCII based system
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+ lt_SP2NL='tr \040 \012'
+ lt_NL2SP='tr \015\012 \040\040'
+ ;;
+ *) # EBCDIC based system
+ lt_SP2NL='tr \100 \n'
+ lt_NL2SP='tr \r\n \100\100'
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5
+$as_echo_n "checking for $LD option to reload object files... " >&6; }
+if test "${lt_cv_ld_reload_flag+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ld_reload_flag='-r'
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5
+$as_echo "$lt_cv_ld_reload_flag" >&6; }
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_OBJDUMP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OBJDUMP"; then
+ ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+ { $as_echo "$as_me:$LINENO: result: $OBJDUMP" >&5
+$as_echo "$OBJDUMP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+ ac_ct_OBJDUMP=$OBJDUMP
+ # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OBJDUMP"; then
+ ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_OBJDUMP="objdump"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_OBJDUMP" >&5
+$as_echo "$ac_ct_OBJDUMP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OBJDUMP" = x; then
+ OBJDUMP="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OBJDUMP=$ac_ct_OBJDUMP
+ fi
+else
+ OBJDUMP="$ac_cv_prog_OBJDUMP"
+fi
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
+$as_echo_n "checking how to recognize dependent libraries... " >&6; }
+if test "${lt_cv_deplibs_check_method+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given extended regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix[4-9]*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi[45]*)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ # func_win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ ;;
+
+mingw* | pw32*)
+ # Base MSYS/MinGW do not provide the 'file' command needed by
+ # func_win32_libid shell function, so use a weaker test based on 'objdump',
+ # unless we find 'file', for example because we are cross-compiling.
+ if ( file / ) >/dev/null 2>&1; then
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+
+cegcc)
+ # use the weaker test based on 'objdump'. See mingw*.
+ lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ ;;
+
+darwin* | rhapsody*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | dragonfly*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ case $host_cpu in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+interix[3-9]*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+*nto* | *qnx*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+openbsd*)
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+rdos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv4 | sysv4.3*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+tpf*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5
+$as_echo "$lt_cv_deplibs_check_method" >&6; }
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+
+
+
+
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AR+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AR"; then
+ ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_AR="${ac_tool_prefix}ar"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+ { $as_echo "$as_me:$LINENO: result: $AR" >&5
+$as_echo "$AR" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+ ac_ct_AR=$AR
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_AR"; then
+ ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_AR="ar"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+$as_echo "$ac_ct_AR" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_AR" = x; then
+ AR="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AR=$ac_ct_AR
+ fi
+else
+ AR="$ac_cv_prog_AR"
+fi
+
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+
+
+
+
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+test -z "$STRIP" && STRIP=:
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$RANLIB"; then
+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+ { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5
+$as_echo "$RANLIB" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+ ac_ct_RANLIB=$RANLIB
+ # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_RANLIB"; then
+ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_RANLIB="ranlib"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+$as_echo "$ac_ct_RANLIB" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_RANLIB" = x; then
+ RANLIB=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ RANLIB=$ac_ct_RANLIB
+ fi
+else
+ RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+test -z "$RANLIB" && RANLIB=:
+
+
+
+
+
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ openbsd*)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+ ;;
+ *)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+
+
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+{ $as_echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5
+$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
+if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[BCDEGRST]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[BCDT]'
+ ;;
+cygwin* | mingw* | pw32* | cegcc*)
+ symcode='[ABCDGISTW]'
+ ;;
+hpux*)
+ if test "$host_cpu" = ia64; then
+ symcode='[ABCDEGRST]'
+ fi
+ ;;
+irix* | nonstopux*)
+ symcode='[BCDEGRST]'
+ ;;
+osf*)
+ symcode='[BCDEGQRST]'
+ ;;
+solaris*)
+ symcode='[BDRT]'
+ ;;
+sco3.2v5*)
+ symcode='[DT]'
+ ;;
+sysv4.2uw2*)
+ symcode='[DT]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[ABDT]'
+ ;;
+sysv4)
+ symcode='[DFNSTU]'
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[ABCDGIRSTW]' ;;
+esac
+
+# Transform an extracted symbol line into a proper C declaration.
+# Some systems (esp. on ia64) link data and code symbols differently,
+# so use this general approach.
+lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# Try without a prefix underscore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+ symxfrm="\\1 $ac_symprfx\\2 \\2"
+
+ # Write the raw and C identifiers.
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Fake it for dumpbin and say T for any non-static function
+ # and D for any global variable.
+ # Also find C++ and __fastcall symbols from MSVC++,
+ # which start with @ or ?.
+ lt_cv_sys_global_symbol_pipe="$AWK '"\
+" {last_section=section; section=\$ 3};"\
+" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+" \$ 0!~/External *\|/{next};"\
+" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+" {if(hide[section]) next};"\
+" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+" s[1]~/^[@?]/{print s[1], s[1]; next};"\
+" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+" ' prfx=^$ac_symprfx"
+ else
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<_LT_EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(void);
+void nm_test_func(void){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+_LT_EOF
+
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5
+ (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_LT_EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+/* The mapping between symbol names and symbols. */
+const struct {
+ const char *name;
+ void *address;
+}
+lt__PROGRAM__LTX_preloaded_symbols[] =
+{
+ { "@PROGRAM@", (void *) 0 },
+_LT_EOF
+ $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+ cat <<\_LT_EOF >> conftest.$ac_ext
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt__PROGRAM__LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+_LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_save_LIBS="$LIBS"
+ lt_save_CFLAGS="$CFLAGS"
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+ LIBS="$lt_save_LIBS"
+ CFLAGS="$lt_save_CFLAGS"
+ else
+ echo "cannot find nm_test_func in $nlist" >&5
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&5
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
+ fi
+ else
+ echo "$progname: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ fi
+ rm -rf conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test "$pipe_works" = yes; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+
+fi
+
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ { $as_echo "$as_me:$LINENO: result: failed" >&5
+$as_echo "failed" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: ok" >&5
+$as_echo "ok" >&6; }
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Check whether --enable-libtool-lock was given.
+if test "${enable_libtool_lock+set}" = set; then
+ enableval=$enable_libtool_lock;
+fi
+
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE="32"
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE="64"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out which ABI we are using.
+ echo '#line 7640 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.o` in
+ *32-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_i386_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ ppc64-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_x86_64_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ ppc*-*linux*|powerpc*-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ { $as_echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5
+$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
+if test "${lt_cv_cc_needs_belf+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ lt_cv_cc_needs_belf=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ lt_cv_cc_needs_belf=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5
+$as_echo "$lt_cv_cc_needs_belf" >&6; }
+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS="$SAVE_CFLAGS"
+ fi
+ ;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *)
+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+ LD="${LD-ld} -64"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+esac
+
+need_locks="$enable_libtool_lock"
+
+
+ case $host_os in
+ rhapsody* | darwin*)
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DSYMUTIL"; then
+ ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+ { $as_echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+$as_echo "$DSYMUTIL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+ ac_ct_DSYMUTIL=$DSYMUTIL
+ # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DSYMUTIL"; then
+ ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+$as_echo "$ac_ct_DSYMUTIL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_DSYMUTIL" = x; then
+ DSYMUTIL=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ DSYMUTIL=$ac_ct_DSYMUTIL
+ fi
+else
+ DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$NMEDIT"; then
+ ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+ { $as_echo "$as_me:$LINENO: result: $NMEDIT" >&5
+$as_echo "$NMEDIT" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+ ac_ct_NMEDIT=$NMEDIT
+ # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_NMEDIT"; then
+ ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_NMEDIT="nmedit"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+$as_echo "$ac_ct_NMEDIT" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_NMEDIT" = x; then
+ NMEDIT=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ NMEDIT=$ac_ct_NMEDIT
+ fi
+else
+ NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_LIPO+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$LIPO"; then
+ ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+ { $as_echo "$as_me:$LINENO: result: $LIPO" >&5
+$as_echo "$LIPO" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+ ac_ct_LIPO=$LIPO
+ # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_LIPO"; then
+ ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_LIPO="lipo"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+$as_echo "$ac_ct_LIPO" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_LIPO" = x; then
+ LIPO=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ LIPO=$ac_ct_LIPO
+ fi
+else
+ LIPO="$ac_cv_prog_LIPO"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OTOOL"; then
+ ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+ { $as_echo "$as_me:$LINENO: result: $OTOOL" >&5
+$as_echo "$OTOOL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+ ac_ct_OTOOL=$OTOOL
+ # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OTOOL"; then
+ ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_OTOOL="otool"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+$as_echo "$ac_ct_OTOOL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OTOOL" = x; then
+ OTOOL=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OTOOL=$ac_ct_OTOOL
+ fi
+else
+ OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OTOOL64"; then
+ ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+ { $as_echo "$as_me:$LINENO: result: $OTOOL64" >&5
+$as_echo "$OTOOL64" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+ ac_ct_OTOOL64=$OTOOL64
+ # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OTOOL64"; then
+ ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_OTOOL64="otool64"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+$as_echo "$ac_ct_OTOOL64" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OTOOL64" = x; then
+ OTOOL64=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OTOOL64=$ac_ct_OTOOL64
+ fi
+else
+ OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+$as_echo_n "checking for -single_module linker flag... " >&6; }
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_apple_cc_single_mod=no
+ if test -z "${LT_MULTI_MODULE}"; then
+ # By default we will add the -single_module flag. You can override
+ # by either setting the environment variable LT_MULTI_MODULE
+ # non-empty at configure time, or by adding -multi_module to the
+ # link flags.
+ rm -rf libconftest.dylib*
+ echo "int foo(void){return 1;}" > conftest.c
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+ _lt_result=$?
+ if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+ lt_cv_apple_cc_single_mod=yes
+ else
+ cat conftest.err >&5
+ fi
+ rm -rf libconftest.dylib*
+ rm -f conftest.*
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ld_exported_symbols_list=no
+ save_LDFLAGS=$LDFLAGS
+ echo "_main" > conftest.sym
+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ lt_cv_ld_exported_symbols_list=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ lt_cv_ld_exported_symbols_list=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$save_LDFLAGS"
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+ case $host_os in
+ rhapsody* | darwin1.[012])
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+ darwin1.*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ darwin*) # darwin 5.x on
+ # if running on 10.5 or later, the deployment target defaults
+ # to the OS version, if on x86, and 10.4, the deployment
+ # target defaults to 10.4. Don't you love it?
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ 10.[012]*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 10.*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
+ esac
+ if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+ _lt_dar_single_mod='$single_module'
+ fi
+ if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+ _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+ else
+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ if test "$DSYMUTIL" != ":"; then
+ _lt_dsymutil='~$DSYMUTIL $lib || :'
+ else
+ _lt_dsymutil=
+ fi
+ ;;
+ esac
+
+
+for ac_header in dlfcn.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+# Set options
+
+
+
+ enable_dlopen=no
+
+
+ enable_win32_dll=no
+
+
+ # Check whether --enable-shared was given.
+if test "${enable_shared+set}" = set; then
+ enableval=$enable_shared; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_shared=yes
+fi
+
+
+
+
+
+
+
+
+
+ # Check whether --enable-static was given.
+if test "${enable_static+set}" = set; then
+ enableval=$enable_static; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_static=yes
+fi
+
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic was given.
+if test "${with_pic+set}" = set; then
+ withval=$with_pic; pic_mode="$withval"
+else
+ pic_mode=default
+fi
+
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+ # Check whether --enable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+ enableval=$enable_fast_install; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_fast_install=yes
+fi
+
+
+
+
+
+
+
+
+
+
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ltmain"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+test -z "$LN_S" && LN_S="ln -s"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+{ $as_echo "$as_me:$LINENO: checking for objdir" >&5
+$as_echo_n "checking for objdir... " >&6; }
+if test "${lt_cv_objdir+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5
+$as_echo "$lt_cv_objdir" >&6; }
+objdir=$lt_cv_objdir
+
+
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define LT_OBJDIR "$lt_cv_objdir/"
+_ACEOF
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\(["`\\]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to delay expansion of an escaped single quote.
+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+
+# Global variables:
+ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+test -z "$LD" && LD=ld
+test -z "$ac_objext" && ac_objext=o
+
+for cc_temp in $compiler""; do
+ case $cc_temp in
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+
+
+# Only perform the check for file, if the check method requires it
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ { $as_echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5
+$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ case $MAGIC_CMD in
+[\\/*] | ?:[\\/]*)
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/${ac_tool_prefix}file; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+$as_echo "$MAGIC_CMD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ { $as_echo "$as_me:$LINENO: checking for file" >&5
+$as_echo_n "checking for file... " >&6; }
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ case $MAGIC_CMD in
+[\\/*] | ?:[\\/]*)
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/file; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/file"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+$as_echo "$MAGIC_CMD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ else
+ MAGIC_CMD=:
+ fi
+fi
+
+ fi
+ ;;
+esac
+
+# Use C for the default configuration in the libtool script
+
+lt_save_CC="$CC"
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+objext=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}'
+
+
+
+
+
+
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+
+# Save the default compiler, since it gets overwritten when the other
+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+compiler_DEFAULT=$CC
+
+# save warnings/boilerplate of simple test code
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_compiler_boilerplate=`cat conftest.err`
+$RM conftest*
+
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_linker_boilerplate=`cat conftest.err`
+$RM -r conftest*
+
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+
+lt_prog_compiler_no_builtin_flag=
+
+if test "$GCC" = yes; then
+ lt_prog_compiler_no_builtin_flag=' -fno-builtin'
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_rtti_exceptions=no
+ ac_outfile=conftest.$ac_objext
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="-fno-rtti -fno-exceptions"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:9009: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&5
+ echo "$as_me:9013: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_rtti_exceptions=yes
+ fi
+ fi
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+
+if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
+ lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
+else
+ :
+fi
+
+fi
+
+
+
+
+
+
+ lt_prog_compiler_wl=
+lt_prog_compiler_pic=
+lt_prog_compiler_static=
+
+{ $as_echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+
+ if test "$GCC" = yes; then
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_static='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ lt_prog_compiler_static='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ lt_prog_compiler_pic='-DDLL_EXPORT'
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ lt_prog_compiler_pic='-fno-common'
+ ;;
+
+ hpux*)
+ # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+ # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ case $host_cpu in
+ hppa*64*)
+ # +Z the default
+ ;;
+ *)
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ esac
+ ;;
+
+ interix[3-9]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ lt_prog_compiler_can_build_shared=no
+ enable_shared=no
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ lt_prog_compiler_pic='-fPIC -shared'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ lt_prog_compiler_pic=-Kconform_pic
+ fi
+ ;;
+
+ *)
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ lt_prog_compiler_wl='-Wl,'
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ lt_prog_compiler_static='-Bstatic'
+ else
+ lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ lt_prog_compiler_pic='-DDLL_EXPORT'
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ lt_prog_compiler_wl='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ lt_prog_compiler_pic='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ lt_prog_compiler_static='${wl}-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ lt_prog_compiler_wl='-Wl,'
+ # PIC (with -KPIC) is the default.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ # old Intel for x86_64 which still supported -KPIC.
+ ecc*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-static'
+ ;;
+ # icc used to be incompatible with GCC.
+ # ICC 10 doesn't accept -KPIC any more.
+ icc* | ifort*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-fPIC'
+ lt_prog_compiler_static='-static'
+ ;;
+ # Lahey Fortran 8.1.
+ lf95*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='--shared'
+ lt_prog_compiler_static='--static'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-fpic'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+ ccc*)
+ lt_prog_compiler_wl='-Wl,'
+ # All Alpha code is PIC.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+ xl*)
+ # IBM XL C 8.0/Fortran 10.1 on PPC
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-qpic'
+ lt_prog_compiler_static='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C 5.9
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ lt_prog_compiler_wl='-Wl,'
+ ;;
+ *Sun\ F*)
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ lt_prog_compiler_wl=''
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ newsos6)
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ lt_prog_compiler_pic='-fPIC -shared'
+ ;;
+
+ osf3* | osf4* | osf5*)
+ lt_prog_compiler_wl='-Wl,'
+ # All OSF/1 code is PIC.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ rdos*)
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ solaris*)
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ case $cc_basename in
+ f77* | f90* | f95*)
+ lt_prog_compiler_wl='-Qoption ld ';;
+ *)
+ lt_prog_compiler_wl='-Wl,';;
+ esac
+ ;;
+
+ sunos4*)
+ lt_prog_compiler_wl='-Qoption ld '
+ lt_prog_compiler_pic='-PIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec ;then
+ lt_prog_compiler_pic='-Kconform_pic'
+ lt_prog_compiler_static='-Bstatic'
+ fi
+ ;;
+
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ unicos*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_can_build_shared=no
+ ;;
+
+ uts4*)
+ lt_prog_compiler_pic='-pic'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ *)
+ lt_prog_compiler_can_build_shared=no
+ ;;
+ esac
+ fi
+
+case $host_os in
+ # For platforms which do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ lt_prog_compiler_pic=
+ ;;
+ *)
+ lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5
+$as_echo "$lt_prog_compiler_pic" >&6; }
+
+
+
+
+
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$lt_prog_compiler_pic"; then
+ { $as_echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic_works=no
+ ac_outfile=conftest.$ac_objext
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:9348: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&5
+ echo "$as_me:9352: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_pic_works=yes
+ fi
+ fi
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
+ case $lt_prog_compiler_pic in
+ "" | " "*) ;;
+ *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
+ esac
+else
+ lt_prog_compiler_pic=
+ lt_prog_compiler_can_build_shared=no
+fi
+
+fi
+
+
+
+
+
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
+{ $as_echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_static_works=no
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The linker can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&5
+ $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_static_works=yes
+ fi
+ else
+ lt_cv_prog_compiler_static_works=yes
+ fi
+ fi
+ $RM -r conftest*
+ LDFLAGS="$save_LDFLAGS"
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
+ :
+else
+ lt_prog_compiler_static=
+fi
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_c_o=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:9453: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&5
+ echo "$as_me:9457: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_c_o=yes
+ fi
+ fi
+ chmod u+w . 2>&5
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_c_o=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:9508: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&5
+ echo "$as_me:9512: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_c_o=yes
+ fi
+ fi
+ chmod u+w . 2>&5
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+
+
+
+
+hard_links="nottested"
+if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
+ # do not overwrite the value of need_locks provided by the user
+ { $as_echo "$as_me:$LINENO: checking if we can lock with hard links" >&5
+$as_echo_n "checking if we can lock with hard links... " >&6; }
+ hard_links=yes
+ $RM conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ { $as_echo "$as_me:$LINENO: result: $hard_links" >&5
+$as_echo "$hard_links" >&6; }
+ if test "$hard_links" = no; then
+ { $as_echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
+$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+
+ runpath_var=
+ allow_undefined_flag=
+ always_export_symbols=no
+ archive_cmds=
+ archive_expsym_cmds=
+ compiler_needs_object=no
+ enable_shared_with_static_runtimes=no
+ export_dynamic_flag_spec=
+ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ hardcode_automatic=no
+ hardcode_direct=no
+ hardcode_direct_absolute=no
+ hardcode_libdir_flag_spec=
+ hardcode_libdir_flag_spec_ld=
+ hardcode_libdir_separator=
+ hardcode_minus_L=no
+ hardcode_shlibpath_var=unsupported
+ inherit_rpath=no
+ link_all_deplibs=unknown
+ module_cmds=
+ module_expsym_cmds=
+ old_archive_from_new_cmds=
+ old_archive_from_expsyms_cmds=
+ thread_safe_flag_spec=
+ whole_archive_flag_spec=
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ include_expsyms=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ` (' and `)$', so one must not match beginning or
+ # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+ # as well as any symbol that contains `d'.
+ exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ # Exclude shared library initialization/finalization symbols.
+ extract_expsyms_cmds=
+
+ case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ # 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
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='${wl}'
+
+ # 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.
+ runpath_var=LD_RUN_PATH
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ export_dynamic_flag_spec='${wl}--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ whole_archive_flag_spec=
+ fi
+ supports_anon_versioning=no
+ case `$LD -v 2>&1` in
+ *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix[3-9]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ ld_shlibs=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+_LT_EOF
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds=''
+ ;;
+ m68k)
+ archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ allow_undefined_flag=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
+ # as there is no search path for DLLs.
+ hardcode_libdir_flag_spec='-L$libdir'
+ allow_undefined_flag=unsupported
+ always_export_symbols=no
+ enable_shared_with_static_runtimes=yes
+ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ interix[3-9]*)
+ hardcode_direct=no
+ hardcode_shlibpath_var=no
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ export_dynamic_flag_spec='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
+ gnu* | linux* | tpf* | k*bsd*-gnu)
+ tmp_diet=no
+ if test "$host_os" = linux-dietlibc; then
+ case $cc_basename in
+ diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
+ esac
+ fi
+ if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+ && test "$tmp_diet" = no
+ then
+ tmp_addflag=
+ tmp_sharedflag='-shared'
+ case $cc_basename,$host_cpu in
+ pgcc*) # Portland Group C compiler
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag -Mnomain' ;;
+ ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
+ tmp_addflag=' -i_dynamic' ;;
+ efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
+ tmp_addflag=' -i_dynamic -nofor_main' ;;
+ ifc* | ifort*) # Intel Fortran compiler
+ tmp_addflag=' -nofor_main' ;;
+ lf95*) # Lahey Fortran 8.1
+ whole_archive_flag_spec=
+ tmp_sharedflag='--shared' ;;
+ xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
+ tmp_sharedflag='-qmkshrobj'
+ tmp_addflag= ;;
+ esac
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*) # Sun C 5.9
+ whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ compiler_needs_object=yes
+ tmp_sharedflag='-G' ;;
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+ archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+
+ case $cc_basename in
+ xlf*)
+ # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+ whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+ hardcode_libdir_flag_spec=
+ hardcode_libdir_flag_spec_ld='-rpath $libdir'
+ archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris*)
+ if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+ ld_shlibs=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ 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
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ ;;
+
+ sunos4*)
+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+
+ if test "$ld_shlibs" = no; then
+ runpath_var=
+ hardcode_libdir_flag_spec=
+ export_dynamic_flag_spec=
+ whole_archive_flag_spec=
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ allow_undefined_flag=unsupported
+ always_export_symbols=yes
+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ hardcode_minus_L=yes
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ hardcode_direct=unsupported
+ fi
+ ;;
+
+ aix[4-9]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ 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].*|aix[5-9]*)
+ 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
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ archive_cmds=''
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ hardcode_libdir_separator=':'
+ link_all_deplibs=yes
+ file_list_spec='${wl}-f,'
+
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ hardcode_direct=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ hardcode_minus_L=yes
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_libdir_separator=
+ fi
+ ;;
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ export_dynamic_flag_spec='${wl}-bexpall'
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to export.
+ always_export_symbols=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ allow_undefined_flag='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+ allow_undefined_flag="-z nodefs"
+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ no_undefined_flag=' ${wl}-bernotok'
+ allow_undefined_flag=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ whole_archive_flag_spec='$convenience'
+ archive_cmds_need_lc=yes
+ # This is similar to how AIX traditionally builds its shared libraries.
+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds=''
+ ;;
+ m68k)
+ archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+
+ bsdi[45]*)
+ export_dynamic_flag_spec=-rdynamic
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # 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=' '
+ allow_undefined_flag=unsupported
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=".dll"
+ # FIXME: Setting linknames here is a bad hack.
+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ old_archive_from_new_cmds='true'
+ # FIXME: Should let the user specify the lib program.
+ old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
+ fix_srcfile_path='`cygpath -w "$srcfile"`'
+ enable_shared_with_static_runtimes=yes
+ ;;
+
+ darwin* | rhapsody*)
+
+
+ archive_cmds_need_lc=no
+ hardcode_direct=no
+ hardcode_automatic=yes
+ hardcode_shlibpath_var=unsupported
+ whole_archive_flag_spec=''
+ link_all_deplibs=yes
+ allow_undefined_flag="$_lt_dar_allow_undefined"
+ case $cc_basename in
+ ifort*) _lt_dar_can_shared=yes ;;
+ *) _lt_dar_can_shared=$GCC ;;
+ esac
+ if test "$_lt_dar_can_shared" = "yes"; then
+ output_verbose_link_cmd=echo
+ archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+ module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+ archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+ module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+ else
+ ld_shlibs=no
+ fi
+
+ ;;
+
+ dgux*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_shlibpath_var=no
+ ;;
+
+ freebsd1*)
+ ld_shlibs=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly*)
+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ hpux9*)
+ if test "$GCC" = yes; then
+ archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+ 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
+ export_dynamic_flag_spec='${wl}-E'
+ ;;
+
+ hpux10*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_flag_spec_ld='+b $libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ export_dynamic_flag_spec='${wl}-E'
+ # 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 "$GCC" = yes -a "$with_gnu_ld" = no; then
+ case $host_cpu in
+ hppa*64*)
+ archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+ case $host_cpu in
+ hppa*64*)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ fi
+ 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_shlibpath_var=no
+ ;;
+ *)
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ export_dynamic_flag_spec='${wl}-E'
+
+ # 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*)
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+ cat >conftest.$ac_ext <<_ACEOF
+int foo(void) {}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$save_LDFLAGS"
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ inherit_rpath=yes
+ link_all_deplibs=yes
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ newsos6)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_shlibpath_var=no
+ ;;
+
+ *nto* | *qnx*)
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ hardcode_direct_absolute=yes
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ export_dynamic_flag_spec='${wl}-E'
+ else
+ case $host_os in
+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ *)
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ os2*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ allow_undefined_flag=unsupported
+ archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+ ;;
+
+ osf3*)
+ if test "$GCC" = yes; then
+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ allow_undefined_flag=' -expect_unresolved \*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ else
+ allow_undefined_flag=' -expect_unresolved \*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ hardcode_libdir_flag_spec='-rpath $libdir'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_separator=:
+ ;;
+
+ solaris*)
+ no_undefined_flag=' -z defs'
+ if test "$GCC" = yes; then
+ wlarc='${wl}'
+ archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+ wlarc=''
+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+ ;;
+ *)
+ wlarc='${wl}'
+ archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ ;;
+ esac
+ fi
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_shlibpath_var=no
+ case $host_os in
+ solaris2.[0-5] | solaris2.[0-5].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'. GCC discards it without `$wl',
+ # but is careful enough not to reorder.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ if test "$GCC" = yes; then
+ whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ else
+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
+ fi
+ ;;
+ esac
+ link_all_deplibs=yes
+ ;;
+
+ sunos4*)
+ if test "x$host_vendor" = xsequent; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ reload_cmds='$CC -r -o $output$reload_objs'
+ hardcode_direct=no
+ ;;
+ motorola)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ hardcode_shlibpath_var=no
+ ;;
+
+ sysv4.3*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_shlibpath_var=no
+ export_dynamic_flag_spec='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_shlibpath_var=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ ld_shlibs=yes
+ fi
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
+ no_undefined_flag='${wl}-z,text'
+ archive_cmds_need_lc=no
+ hardcode_shlibpath_var=no
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ no_undefined_flag='${wl}-z,text'
+ allow_undefined_flag='${wl}-z,nodefs'
+ archive_cmds_need_lc=no
+ hardcode_shlibpath_var=no
+ hardcode_libdir_flag_spec='${wl}-R,$libdir'
+ hardcode_libdir_separator=':'
+ link_all_deplibs=yes
+ export_dynamic_flag_spec='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ uts4*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_shlibpath_var=no
+ ;;
+
+ *)
+ ld_shlibs=no
+ ;;
+ esac
+
+ if test x$host_vendor = xsni; then
+ case $host in
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ export_dynamic_flag_spec='${wl}-Blargedynsym'
+ ;;
+ esac
+ fi
+ fi
+
+{ $as_echo "$as_me:$LINENO: result: $ld_shlibs" >&5
+$as_echo "$ld_shlibs" >&6; }
+test "$ld_shlibs" = no && can_build_shared=no
+
+with_gnu_ld=$with_gnu_ld
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$archive_cmds_need_lc" in
+x|xyes)
+ # Assume -lc should be added
+ archive_cmds_need_lc=yes
+
+ if test "$enable_shared" = yes && test "$GCC" = yes; then
+ case $archive_cmds in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ { $as_echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
+$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
+ $RM conftest*
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$lt_prog_compiler_wl
+ pic_flag=$lt_prog_compiler_pic
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$allow_undefined_flag
+ allow_undefined_flag=
+ if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\"") >&5
+ (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+ then
+ archive_cmds_need_lc=no
+ else
+ archive_cmds_need_lc=yes
+ fi
+ allow_undefined_flag=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $RM conftest*
+ { $as_echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5
+$as_echo "$archive_cmds_need_lc" >&6; }
+ ;;
+ esac
+ fi
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
+$as_echo_n "checking dynamic linker characteristics... " >&6; }
+
+if test "$GCC" = yes; then
+ case $host_os in
+ darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+ *) lt_awk_arg="/^libraries:/" ;;
+ esac
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+ # if the path contains ";" then we assume it to be the separator
+ # otherwise default to the standard path separator (i.e. ":") - it is
+ # assumed that no part of a normal pathname contains ";" but that should
+ # okay in the real world where ";" in dirpaths is itself problematic.
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ # Ok, now we have the path, separated by spaces, we can step through it
+ # and add multilib dir if necessary.
+ lt_tmp_lt_search_path_spec=
+ lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+ for lt_sys_path in $lt_search_path_spec; do
+ if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+ else
+ test -d "$lt_sys_path" && \
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+ fi
+ done
+ lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+ lt_foo="";
+ lt_count=0;
+ for (lt_i = NF; lt_i > 0; lt_i--) {
+ if ($lt_i != "" && $lt_i != ".") {
+ if ($lt_i == "..") {
+ lt_count++;
+ } else {
+ if (lt_count == 0) {
+ lt_foo="/" $lt_i lt_foo;
+ } else {
+ lt_count--;
+ }
+ }
+ }
+ }
+ if (lt_foo != "") { lt_freq[lt_foo]++; }
+ if (lt_freq[lt_foo] == 1) { print lt_foo; }
+}'`
+ sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+else
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+fi
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext_cmds=".so"
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+case $host_os in
+aix3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+
+aix[4-9]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test "$host_cpu" = ia64; then
+ # AIX 5 supports IA64
+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[01] | aix4.[01].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ if test "$aix_use_runtimelinking" = yes; then
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ else
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='${libname}${release}.a $libname.a'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ fi
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ case $host_cpu in
+ powerpc)
+ # Since July 2007 AmigaOS4 officially supports .so libraries.
+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ ;;
+ m68k)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+ ;;
+ esac
+ ;;
+
+beos*)
+ library_names_spec='${libname}${shared_ext}'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi[45]*)
+ version_type=linux
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32* | cegcc*)
+ version_type=windows
+ shrext_cmds=".dll"
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$host_os in
+ yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+ ;;
+ mingw* | cegcc*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
+ # It is most probably a Windows format PATH printed by
+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
+ # path with ; separators, and with drive letters. We can handle the
+ # drive letters (cygwin fileutils understands them), so leave them,
+ # especially as we might pass files found there to a mingw objdump,
+ # which wouldn't understand a cygwinified path. Ahh.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
+ ;;
+
+ *)
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ soname_spec='${libname}${release}${major}$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd1*)
+ dynamic_linker=no
+ ;;
+
+freebsd* | dragonfly*)
+ # DragonFly does not have aout. When/if they implement a new
+ # versioning mechanism, adjust this.
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[01]* | freebsdelf3.[01]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
+ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ *) # from 4.6 on, and DragonFly
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case $host_cpu in
+ ia64*)
+ shrext_cmds='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ if test "X$HPUX_IA64_MODE" = X32; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ hppa*64*)
+ shrext_cmds='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext_cmds='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
+ postinstall_cmds='chmod 555 $lib'
+ ;;
+
+interix[3-9]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ version_type=linux
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # Some binutils ld are patched to set DT_RUNPATH
+ save_LDFLAGS=$LDFLAGS
+ save_libdir=$libdir
+ eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
+ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
+ shlibpath_overrides_runpath=yes
+fi
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS=$save_LDFLAGS
+ libdir=$save_libdir
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # Append ld.so.conf contents to the search path
+ if test -f /etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ fi
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+*nto* | *qnx*)
+ version_type=qnx
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='ldqnx.so'
+ ;;
+
+openbsd*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
+ need_lib_prefix=no
+ # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+ case $host_os in
+ openbsd3.3 | openbsd3.3.*) need_version=yes ;;
+ *) need_version=no ;;
+ esac
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ case $host_os in
+ openbsd2.[89] | openbsd2.[89].*)
+ shlibpath_overrides_runpath=no
+ ;;
+ *)
+ shlibpath_overrides_runpath=yes
+ ;;
+ esac
+ else
+ shlibpath_overrides_runpath=yes
+ fi
+ ;;
+
+os2*)
+ libname_spec='$name'
+ shrext_cmds=".dll"
+ need_lib_prefix=no
+ library_names_spec='$libname${shared_ext} $libname.a'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=LIBPATH
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ ;;
+
+rdos*)
+ dynamic_linker=no
+ ;;
+
+solaris*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test "$with_gnu_ld" = yes; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec ;then
+ version_type=linux
+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+ soname_spec='$libname${shared_ext}.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
+tpf*)
+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+uts4*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: result: $dynamic_linker" >&5
+$as_echo "$dynamic_linker" >&6; }
+test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+ sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+ sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5
+$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+hardcode_action=
+if test -n "$hardcode_libdir_flag_spec" ||
+ test -n "$runpath_var" ||
+ test "X$hardcode_automatic" = "Xyes" ; then
+
+ # We can hardcode non-existent directories.
+ if test "$hardcode_direct" != no &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
+ test "$hardcode_minus_L" != no; then
+ # Linking always hardcodes the temporary library directory.
+ hardcode_action=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ hardcode_action=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ hardcode_action=unsupported
+fi
+{ $as_echo "$as_me:$LINENO: result: $hardcode_action" >&5
+$as_echo "$hardcode_action" >&6; }
+
+if test "$hardcode_action" = relink ||
+ test "$inherit_rpath" = yes; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+ test "$enable_shared" = no; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+
+
+
+
+
+
+ if test "x$enable_dlopen" != xyes; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen="load_add_on"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32* | cegcc*)
+ lt_cv_dlopen="LoadLibrary"
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen="dlopen"
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+$as_echo_n "checking for dlopen in -ldl... " >&6; }
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dl_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dl_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+else
+
+ lt_cv_dlopen="dyld"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+
+fi
+
+ ;;
+
+ *)
+ { $as_echo "$as_me:$LINENO: checking for shl_load" >&5
+$as_echo_n "checking for shl_load... " >&6; }
+if test "${ac_cv_func_shl_load+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define shl_load to an innocuous variant, in case <limits.h> declares shl_load.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define shl_load innocuous_shl_load
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char shl_load (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef shl_load
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char shl_load ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_shl_load || defined __stub___shl_load
+choke me
+#endif
+
+int
+main ()
+{
+return shl_load ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_func_shl_load=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_shl_load=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5
+$as_echo "$ac_cv_func_shl_load" >&6; }
+if test "x$ac_cv_func_shl_load" = x""yes; then
+ lt_cv_dlopen="shl_load"
+else
+ { $as_echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5
+$as_echo_n "checking for shl_load in -ldld... " >&6; }
+if test "${ac_cv_lib_dld_shl_load+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char shl_load ();
+int
+main ()
+{
+return shl_load ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dld_shl_load=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dld_shl_load=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
+$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = x""yes; then
+ lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen" >&5
+$as_echo_n "checking for dlopen... " >&6; }
+if test "${ac_cv_func_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define dlopen to an innocuous variant, in case <limits.h> declares dlopen.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define dlopen innocuous_dlopen
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char dlopen (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef dlopen
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_dlopen || defined __stub___dlopen
+choke me
+#endif
+
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_func_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5
+$as_echo "$ac_cv_func_dlopen" >&6; }
+if test "x$ac_cv_func_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+$as_echo_n "checking for dlopen in -ldl... " >&6; }
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dl_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dl_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5
+$as_echo_n "checking for dlopen in -lsvld... " >&6; }
+if test "${ac_cv_lib_svld_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsvld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_svld_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_svld_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5
+$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
+else
+ { $as_echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5
+$as_echo_n "checking for dld_link in -ldld... " >&6; }
+if test "${ac_cv_lib_dld_dld_link+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dld_link ();
+int
+main ()
+{
+return dld_link ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dld_dld_link=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dld_dld_link=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
+$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = x""yes; then
+ lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+ ;;
+ esac
+
+ if test "x$lt_cv_dlopen" != xno; then
+ enable_dlopen=yes
+ else
+ enable_dlopen=no
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS="$CPPFLAGS"
+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS="$LDFLAGS"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS="$LIBS"
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ { $as_echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5
+$as_echo_n "checking whether a program can dlopen itself... " >&6; }
+if test "${lt_cv_dlopen_self+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ lt_cv_dlopen_self=cross
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+#line 12308 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ return status;
+}
+_LT_EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&5 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
+ x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
+ x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
+ esac
+ else :
+ # compilation failed
+ lt_cv_dlopen_self=no
+ fi
+fi
+rm -fr conftest*
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5
+$as_echo "$lt_cv_dlopen_self" >&6; }
+
+ if test "x$lt_cv_dlopen_self" = xyes; then
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+ { $as_echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5
+$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
+if test "${lt_cv_dlopen_self_static+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ lt_cv_dlopen_self_static=cross
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+#line 12404 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ return status;
+}
+_LT_EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&5 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
+ x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
+ x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
+ esac
+ else :
+ # compilation failed
+ lt_cv_dlopen_self_static=no
+ fi
+fi
+rm -fr conftest*
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5
+$as_echo "$lt_cv_dlopen_self_static" >&6; }
+ fi
+
+ CPPFLAGS="$save_CPPFLAGS"
+ LDFLAGS="$save_LDFLAGS"
+ LIBS="$save_LIBS"
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+striplib=
+old_striplib=
+{ $as_echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5
+$as_echo_n "checking whether stripping libraries is possible... " >&6; }
+if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+# FIXME - insert some real tests, host_os isn't really good enough
+ case $host_os in
+ darwin*)
+ if test -n "$STRIP" ; then
+ striplib="$STRIP -x"
+ old_striplib="$STRIP -S"
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+ ;;
+ *)
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ ;;
+ esac
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+ # Report which library types will actually be built
+ { $as_echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5
+$as_echo_n "checking if libtool supports shared libraries... " >&6; }
+ { $as_echo "$as_me:$LINENO: result: $can_build_shared" >&5
+$as_echo "$can_build_shared" >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether to build shared libraries" >&5
+$as_echo_n "checking whether to build shared libraries... " >&6; }
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+ aix[4-9]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ { $as_echo "$as_me:$LINENO: result: $enable_shared" >&5
+$as_echo "$enable_shared" >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether to build static libraries" >&5
+$as_echo_n "checking whether to build static libraries... " >&6; }
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ { $as_echo "$as_me:$LINENO: result: $enable_static" >&5
+$as_echo "$enable_static" >&6; }
+
+
+
+
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+CC="$lt_save_CC"
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ac_config_commands="$ac_config_commands libtool"
+
+
+
+
+# Only expand once:
+
+
+
+
+
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+
+done
+IFS=$as_save_IFS
+
+rm -rf conftest.one conftest.two conftest.dir
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ INSTALL=$ac_install_sh
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
+esac
+rm -f conftest.make
+fi
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ SET_MAKE=
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+
+# This is mainly for my use during testing and development.
+# Yes, it's a bit of a hack.
+{ $as_echo "$as_me:$LINENO: checking for special development options" >&5
+$as_echo_n "checking for special development options... " >&6; }
+if test -f $srcdir/.developing
+then
+ # add other debug flags as appropriate, save GAWKDEBUG for emergencies
+ CFLAGS="$CFLAGS -DARRAYDEBUG -DYYDEBUG"
+ if grep dbug $srcdir/.developing
+ then
+ CFLAGS="$CFLAGS -DDBUG"
+ LIBS="$LIBS dbug/libdbug.a"
+ fi
+ # turn on compiler warnings if we're doing development
+ # enable debugging using macros also
+ if test "$GCC" = yes
+ then
+ CFLAGS="$CFLAGS -Wall -fno-builtin -g3 -gdwarf-2"
+ fi
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for z/OS USS compilation" >&5
+$as_echo_n "checking for z/OS USS compilation... " >&6; }
+if test "OS/390" = "`uname`"
+then
+ CFLAGS="$CFLAGS -D_ALL_SOURCE -DZOS_USS -DUSE_EBCDIC"
+ # Must rebuild awkgram.c from Bison for EBCDIC
+ rm -f awkgram.c
+ ac_cv_zos_uss=yes
+else
+ ac_cv_zos_uss=no
+fi
+{ $as_echo "$as_me:$LINENO: result: ${ac_cv_zos_uss}" >&5
+$as_echo "${ac_cv_zos_uss}" >&6; }
+
+
+ { $as_echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
+$as_echo_n "checking for strerror in -lcposix... " >&6; }
if test "${ac_cv_lib_cposix_strerror+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lcposix $LIBS"
@@ -4676,33 +12836,37 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_lib_cposix_strerror=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_lib_cposix_strerror=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
-echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6; }
-if test $ac_cv_lib_cposix_strerror = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
+$as_echo "$ac_cv_lib_cposix_strerror" >&6; }
+if test "x$ac_cv_lib_cposix_strerror" = x""yes; then
LIBS="$LIBS -lcposix"
fi
@@ -4715,10 +12879,10 @@ fi
if test "$enable_largefile" != no; then
- { echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
-echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
if test "${ac_cv_sys_largefile_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_sys_largefile_CC=no
if test "$GCC" != yes; then
@@ -4755,20 +12919,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -4782,20 +12947,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_sys_largefile_CC=' -n32'; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -4808,16 +12974,16 @@ rm -f core conftest.err conftest.$ac_objext
rm -f conftest.$ac_ext
fi
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
-echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+$as_echo "$ac_cv_sys_largefile_CC" >&6; }
if test "$ac_cv_sys_largefile_CC" != no; then
CC=$CC$ac_cv_sys_largefile_CC
fi
- { echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
if test "${ac_cv_sys_file_offset_bits+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
while :; do
cat >conftest.$ac_ext <<_ACEOF
@@ -4849,20 +13015,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_sys_file_offset_bits=no; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -4899,20 +13066,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_sys_file_offset_bits=64; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -4923,8 +13091,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
break
done
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
-echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
case $ac_cv_sys_file_offset_bits in #(
no | unknown) ;;
*)
@@ -4933,12 +13101,12 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
;;
esac
-rm -f conftest*
+rm -rf conftest*
if test $ac_cv_sys_file_offset_bits = unknown; then
- { echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
-echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
if test "${ac_cv_sys_large_files+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
while :; do
cat >conftest.$ac_ext <<_ACEOF
@@ -4970,20 +13138,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_sys_large_files=no; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -5020,20 +13189,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_sys_large_files=1; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -5044,8 +13214,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
break
done
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
-echo "${ECHO_T}$ac_cv_sys_large_files" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+$as_echo "$ac_cv_sys_large_files" >&6; }
case $ac_cv_sys_large_files in #(
no | unknown) ;;
*)
@@ -5054,15 +13224,15 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
;;
esac
-rm -f conftest*
+rm -rf conftest*
fi
fi
-{ echo "$as_me:$LINENO: checking for AIX compilation hacks" >&5
-echo $ECHO_N "checking for AIX compilation hacks... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for AIX compilation hacks" >&5
+$as_echo_n "checking for AIX compilation hacks... " >&6; }
if test "${gawk_cv_aix_hack+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -d /lpp
@@ -5074,14 +13244,14 @@ else
fi
fi
-{ echo "$as_me:$LINENO: result: ${gawk_cv_aix_hack}" >&5
-echo "${ECHO_T}${gawk_cv_aix_hack}" >&6; }
+{ $as_echo "$as_me:$LINENO: result: ${gawk_cv_aix_hack}" >&5
+$as_echo "${gawk_cv_aix_hack}" >&6; }
-{ echo "$as_me:$LINENO: checking for Linux/Alpha compilation hacks" >&5
-echo $ECHO_N "checking for Linux/Alpha compilation hacks... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for Linux/Alpha compilation hacks" >&5
+$as_echo_n "checking for Linux/Alpha compilation hacks... " >&6; }
if test "${gawk_cv_linux_alpha_hack+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test "Linux" = "`uname`" && test "alpha" = "`uname -m`"
@@ -5100,8 +13270,8 @@ else
fi
fi
-{ echo "$as_me:$LINENO: result: ${gawk_cv_linux_alpha_hack}" >&5
-echo "${ECHO_T}${gawk_cv_linux_alpha_hack}" >&6; }
+{ $as_echo "$as_me:$LINENO: result: ${gawk_cv_linux_alpha_hack}" >&5
+$as_echo "${gawk_cv_linux_alpha_hack}" >&6; }
if test "$ISC" = 1 # will be set by test for ISC
@@ -5109,11 +13279,11 @@ then
CFLAGS="$CFLAGS -D_SYSV3"
fi
-{ echo "$as_me:$LINENO: checking for function prototypes" >&5
-echo $ECHO_N "checking for function prototypes... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for function prototypes" >&5
+$as_echo_n "checking for function prototypes... " >&6; }
if test "$ac_cv_prog_cc_c89" != no; then
- { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
#define PROTOTYPES 1
@@ -5125,8 +13295,8 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -5140,20 +13310,21 @@ fi
for ac_header in string.h
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -5169,32 +13340,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -5208,51 +13380,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -5261,21 +13434,24 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
eval "$as_ac_Header=\$ac_header_preproc"
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -5294,8 +13470,8 @@ case `(uname) 2> /dev/null` in
esac
- { echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5
+$as_echo_n "checking whether NLS is requested... " >&6; }
# Check whether --enable-nls was given.
if test "${enable_nls+set}" = set; then
enableval=$enable_nls; USE_NLS=$enableval
@@ -5303,10 +13479,13 @@ else
USE_NLS=yes
fi
- { echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
+
+
+ GETTEXT_MACRO_VERSION=0.17
@@ -5341,10 +13520,10 @@ rm -f conf$$.file
# Extract the first word of "msgfmt", so it can be a program name with args.
set dummy msgfmt; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_MSGFMT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
case "$MSGFMT" in
[\\/]* | ?:[\\/]*)
@@ -5373,19 +13552,19 @@ esac
fi
MSGFMT="$ac_cv_path_MSGFMT"
if test "$MSGFMT" != ":"; then
- { echo "$as_me:$LINENO: result: $MSGFMT" >&5
-echo "${ECHO_T}$MSGFMT" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5
+$as_echo "$MSGFMT" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
# Extract the first word of "gmsgfmt", so it can be a program name with args.
set dummy gmsgfmt; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_GMSGFMT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
case $GMSGFMT in
[\\/]* | ?:[\\/]*)
@@ -5400,7 +13579,7 @@ do
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
@@ -5413,11 +13592,11 @@ esac
fi
GMSGFMT=$ac_cv_path_GMSGFMT
if test -n "$GMSGFMT"; then
- { echo "$as_me:$LINENO: result: $GMSGFMT" >&5
-echo "${ECHO_T}$GMSGFMT" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5
+$as_echo "$GMSGFMT" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -5464,10 +13643,10 @@ rm -f conf$$.file
# Extract the first word of "xgettext", so it can be a program name with args.
set dummy xgettext; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_XGETTEXT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
case "$XGETTEXT" in
[\\/]* | ?:[\\/]*)
@@ -5496,11 +13675,11 @@ esac
fi
XGETTEXT="$ac_cv_path_XGETTEXT"
if test "$XGETTEXT" != ":"; then
- { echo "$as_me:$LINENO: result: $XGETTEXT" >&5
-echo "${ECHO_T}$XGETTEXT" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5
+$as_echo "$XGETTEXT" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
rm -f messages.po
@@ -5542,10 +13721,10 @@ rm -f conf$$.file
# Extract the first word of "msgmerge", so it can be a program name with args.
set dummy msgmerge; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_MSGMERGE+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
case "$MSGMERGE" in
[\\/]* | ?:[\\/]*)
@@ -5573,17 +13752,20 @@ esac
fi
MSGMERGE="$ac_cv_path_MSGMERGE"
if test "$MSGMERGE" != ":"; then
- { echo "$as_me:$LINENO: result: $MSGMERGE" >&5
-echo "${ECHO_T}$MSGMERGE" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $MSGMERGE" >&5
+$as_echo "$MSGMERGE" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
test -n "$localedir" || localedir='${datadir}/locale'
+ test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS=
+
+
ac_config_commands="$ac_config_commands po-directories"
@@ -5603,89 +13785,6 @@ fi
eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
prefix="$acl_save_prefix"
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
-echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
- { (exit 1); exit 1; }; }
-
-{ echo "$as_me:$LINENO: checking build system type" >&5
-echo $ECHO_N "checking build system type... $ECHO_C" >&6; }
-if test "${ac_cv_build+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
- { (exit 1); exit 1; }; }
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
- { (exit 1); exit 1; }; }
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-echo "${ECHO_T}$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
-echo "$as_me: error: invalid value of canonical build" >&2;}
- { (exit 1); exit 1; }; };;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ echo "$as_me:$LINENO: checking host system type" >&5
-echo $ECHO_N "checking host system type... $ECHO_C" >&6; }
-if test "${ac_cv_host+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-echo "${ECHO_T}$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
-echo "$as_me: error: invalid value of canonical host" >&2;}
- { (exit 1); exit 1; }; };;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
# Check whether --with-gnu-ld was given.
if test "${with_gnu_ld+set}" = set; then
@@ -5710,8 +13809,8 @@ fi
ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
- { echo "$as_me:$LINENO: checking for ld used by GCC" >&5
-echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for ld used by GCC" >&5
+$as_echo_n "checking for ld used by GCC... " >&6; }
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -5740,14 +13839,14 @@ echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6; }
;;
esac
elif test "$with_gnu_ld" = yes; then
- { echo "$as_me:$LINENO: checking for GNU ld" >&5
-echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
else
- { echo "$as_me:$LINENO: checking for non-GNU ld" >&5
-echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
fi
if test "${acl_cv_path_LD+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
@@ -5774,19 +13873,19 @@ fi
LD="$acl_cv_path_LD"
if test -n "$LD"; then
- { echo "$as_me:$LINENO: result: $LD" >&5
-echo "${ECHO_T}$LD" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $LD" >&5
+$as_echo "$LD" >&6; }
else
- { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
fi
-test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
-echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
+test -z "$LD" && { { $as_echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
{ (exit 1); exit 1; }; }
-{ echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
-echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
if test "${acl_cv_prog_gnu_ld+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
# I'd rather use --version here, but apparently some GNU ld's only accept -v.
case `$LD -v 2>&1 </dev/null` in
@@ -5796,17 +13895,17 @@ case `$LD -v 2>&1 </dev/null` in
acl_cv_prog_gnu_ld=no ;;
esac
fi
-{ echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5
-echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5
+$as_echo "$acl_cv_prog_gnu_ld" >&6; }
with_gnu_ld=$acl_cv_prog_gnu_ld
- { echo "$as_me:$LINENO: checking for shared library run path origin" >&5
-echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for shared library run path origin" >&5
+$as_echo_n "checking for shared library run path origin... " >&6; }
if test "${acl_cv_rpath+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
@@ -5816,15 +13915,17 @@ else
acl_cv_rpath=done
fi
-{ echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5
-echo "${ECHO_T}$acl_cv_rpath" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5
+$as_echo "$acl_cv_rpath" >&6; }
wl="$acl_cv_wl"
- libext="$acl_cv_libext"
- shlibext="$acl_cv_shlibext"
- hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
- hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
- hardcode_direct="$acl_cv_hardcode_direct"
- hardcode_minus_L="$acl_cv_hardcode_minus_L"
+ acl_libext="$acl_cv_libext"
+ acl_shlibext="$acl_cv_shlibext"
+ acl_libname_spec="$acl_cv_libname_spec"
+ acl_library_names_spec="$acl_cv_library_names_spec"
+ acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
+ acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
+ acl_hardcode_direct="$acl_cv_hardcode_direct"
+ acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
# Check whether --enable-rpath was given.
if test "${enable_rpath+set}" = set; then
enableval=$enable_rpath; :
@@ -5859,6 +13960,7 @@ fi
+
use_additional=yes
acl_save_prefix="$prefix"
@@ -5903,6 +14005,7 @@ fi
LIBICONV=
LTLIBICONV=
INCICONV=
+ LIBICONV_PREFIX=
rpathdirs=
ltrpathdirs=
names_already_handled=
@@ -5936,27 +14039,50 @@ fi
found_la=
found_so=
found_a=
+ eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
+ if test -n "$acl_shlibext"; then
+ shrext=".$acl_shlibext" # typically: shrext=.so
+ else
+ shrext=
+ fi
if test $use_additional = yes; then
- if test -n "$shlibext" \
- && { test -f "$additional_libdir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
- found_dir="$additional_libdir"
- if test -f "$additional_libdir/lib$name.$shlibext"; then
- found_so="$additional_libdir/lib$name.$shlibext"
+ dir="$additional_libdir"
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$additional_libdir/lib$name.dll.a"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
+ fi
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
+ found_dir="$dir"
+ found_a="$dir/$libname.$acl_libext"
fi
- else
- if test -f "$additional_libdir/lib$name.$libext"; then
- found_dir="$additional_libdir"
- found_a="$additional_libdir/lib$name.$libext"
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
- fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
fi
@@ -5974,26 +14100,42 @@ fi
case "$x" in
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
- if test -n "$shlibext" \
- && { test -f "$dir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$dir/lib$name.dll.a"; }; }; then
- found_dir="$dir"
- if test -f "$dir/lib$name.$shlibext"; then
- found_so="$dir/lib$name.$shlibext"
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$dir/lib$name.dll.a"
- fi
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- else
- if test -f "$dir/lib$name.$libext"; then
+ fi
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
found_dir="$dir"
- found_a="$dir/lib$name.$libext"
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
- fi
+ found_a="$dir/$libname.$acl_libext"
+ fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
;;
@@ -6019,10 +14161,10 @@ fi
if test -z "$haveit"; then
ltrpathdirs="$ltrpathdirs $found_dir"
fi
- if test "$hardcode_direct" = yes; then
+ if test "$acl_hardcode_direct" = yes; then
LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
else
- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
haveit=
for x in $rpathdirs; do
@@ -6054,7 +14196,7 @@ fi
if test -z "$haveit"; then
LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
fi
- if test "$hardcode_minus_L" != no; then
+ if test "$acl_hardcode_minus_L" != no; then
LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
else
LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
@@ -6073,6 +14215,7 @@ fi
case "$found_dir" in
*/$acl_libdirstem | */$acl_libdirstem/)
basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
+ LIBICONV_PREFIX="$basedir"
additional_includedir="$basedir/include"
;;
esac
@@ -6223,21 +14366,21 @@ fi
done
done
if test "X$rpathdirs" != "X"; then
- if test -n "$hardcode_libdir_separator"; then
+ if test -n "$acl_hardcode_libdir_separator"; then
alldirs=
for found_dir in $rpathdirs; do
- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
+ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
done
acl_save_libdir="$libdir"
libdir="$alldirs"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
else
for found_dir in $rpathdirs; do
acl_save_libdir="$libdir"
libdir="$found_dir"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
done
@@ -6273,10 +14416,10 @@ fi
- { echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5
-echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5
+$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
@@ -6301,32 +14444,36 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
gt_cv_func_CFPreferencesCopyAppValue=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
gt_cv_func_CFPreferencesCopyAppValue=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS="$gt_save_LIBS"
fi
-{ echo "$as_me:$LINENO: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
-echo "${ECHO_T}$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
+$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -6334,10 +14481,10 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
fi
- { echo "$as_me:$LINENO: checking for CFLocaleCopyCurrent" >&5
-echo $ECHO_N "checking for CFLocaleCopyCurrent... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for CFLocaleCopyCurrent" >&5
+$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
if test "${gt_cv_func_CFLocaleCopyCurrent+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
@@ -6362,32 +14509,36 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
gt_cv_func_CFLocaleCopyCurrent=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
gt_cv_func_CFLocaleCopyCurrent=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS="$gt_save_LIBS"
fi
-{ echo "$as_me:$LINENO: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
-echo "${ECHO_T}$gt_cv_func_CFLocaleCopyCurrent" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
+$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -6437,10 +14588,10 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
gt_expression_test_code=
fi
- { echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5
-echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5
+$as_echo_n "checking for GNU gettext in libc... " >&6; }
if { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -6467,32 +14618,37 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
eval "$gt_func_gnugettext_libc=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$gt_func_gnugettext_libc=no"
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$gt_func_gnugettext_libc'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
@@ -6525,10 +14681,10 @@ echo "${ECHO_T}$ac_res" >&6; }
done
- { echo "$as_me:$LINENO: checking for iconv" >&5
-echo $ECHO_N "checking for iconv... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for iconv" >&5
+$as_echo_n "checking for iconv... " >&6; }
if test "${am_cv_func_iconv+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
am_cv_func_iconv="no, consider installing GNU libiconv"
@@ -6557,26 +14713,30 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
am_cv_func_iconv=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
if test "$am_cv_func_iconv" != yes; then
@@ -6606,36 +14766,169 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS="$am_save_LIBS"
fi
fi
-{ echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5
-echo "${ECHO_T}$am_cv_func_iconv" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5
+$as_echo "$am_cv_func_iconv" >&6; }
if test "$am_cv_func_iconv" = yes; then
+ { $as_echo "$as_me:$LINENO: checking for working iconv" >&5
+$as_echo_n "checking for working iconv... " >&6; }
+if test "${am_cv_func_iconv_works+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ am_save_LIBS="$LIBS"
+ if test $am_cv_lib_iconv = yes; then
+ LIBS="$LIBS $LIBICONV"
+ fi
+ if test "$cross_compiling" = yes; then
+ case "$host_os" in
+ aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
+ *) am_cv_func_iconv_works="guessing yes" ;;
+ esac
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <iconv.h>
+#include <string.h>
+int main ()
+{
+ /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
+ returns. */
+ {
+ iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
+ if (cd_utf8_to_88591 != (iconv_t)(-1))
+ {
+ static const char input[] = "\342\202\254"; /* EURO SIGN */
+ char buf[10];
+ const char *inptr = input;
+ size_t inbytesleft = strlen (input);
+ char *outptr = buf;
+ size_t outbytesleft = sizeof (buf);
+ size_t res = iconv (cd_utf8_to_88591,
+ (char **) &inptr, &inbytesleft,
+ &outptr, &outbytesleft);
+ if (res == 0)
+ return 1;
+ }
+ }
+#if 0 /* This bug could be worked around by the caller. */
+ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */
+ {
+ iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
+ if (cd_88591_to_utf8 != (iconv_t)(-1))
+ {
+ static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
+ char buf[50];
+ const char *inptr = input;
+ size_t inbytesleft = strlen (input);
+ char *outptr = buf;
+ size_t outbytesleft = sizeof (buf);
+ size_t res = iconv (cd_88591_to_utf8,
+ (char **) &inptr, &inbytesleft,
+ &outptr, &outbytesleft);
+ if ((int)res > 0)
+ return 1;
+ }
+ }
+#endif
+ /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
+ provided. */
+ if (/* Try standardized names. */
+ iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
+ /* Try IRIX, OSF/1 names. */
+ && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
+ /* Try AIX names. */
+ && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
+ /* Try HP-UX names. */
+ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
+ return 1;
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ am_cv_func_iconv_works=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+am_cv_func_iconv_works=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+ LIBS="$am_save_LIBS"
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $am_cv_func_iconv_works" >&5
+$as_echo "$am_cv_func_iconv_works" >&6; }
+ case "$am_cv_func_iconv_works" in
+ *no) am_func_iconv=no am_cv_lib_iconv=no ;;
+ *) am_func_iconv=yes ;;
+ esac
+ else
+ am_func_iconv=no am_cv_lib_iconv=no
+ fi
+ if test "$am_func_iconv" = yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_ICONV 1
@@ -6643,10 +14936,10 @@ _ACEOF
fi
if test "$am_cv_lib_iconv" = yes; then
- { echo "$as_me:$LINENO: checking how to link with libiconv" >&5
-echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6; }
- { echo "$as_me:$LINENO: result: $LIBICONV" >&5
-echo "${ECHO_T}$LIBICONV" >&6; }
+ { $as_echo "$as_me:$LINENO: checking how to link with libiconv" >&5
+$as_echo_n "checking how to link with libiconv... " >&6; }
+ { $as_echo "$as_me:$LINENO: result: $LIBICONV" >&5
+$as_echo "$LIBICONV" >&6; }
else
CPPFLAGS="$am_save_CPPFLAGS"
LIBICONV=
@@ -6659,6 +14952,7 @@ echo "${ECHO_T}$LIBICONV" >&6; }
+
use_additional=yes
acl_save_prefix="$prefix"
@@ -6703,6 +14997,7 @@ fi
LIBINTL=
LTLIBINTL=
INCINTL=
+ LIBINTL_PREFIX=
rpathdirs=
ltrpathdirs=
names_already_handled=
@@ -6736,27 +15031,50 @@ fi
found_la=
found_so=
found_a=
+ eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
+ if test -n "$acl_shlibext"; then
+ shrext=".$acl_shlibext" # typically: shrext=.so
+ else
+ shrext=
+ fi
if test $use_additional = yes; then
- if test -n "$shlibext" \
- && { test -f "$additional_libdir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
- found_dir="$additional_libdir"
- if test -f "$additional_libdir/lib$name.$shlibext"; then
- found_so="$additional_libdir/lib$name.$shlibext"
+ dir="$additional_libdir"
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$additional_libdir/lib$name.dll.a"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
+ fi
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
+ found_dir="$dir"
+ found_a="$dir/$libname.$acl_libext"
fi
- else
- if test -f "$additional_libdir/lib$name.$libext"; then
- found_dir="$additional_libdir"
- found_a="$additional_libdir/lib$name.$libext"
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
- fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
fi
@@ -6774,26 +15092,42 @@ fi
case "$x" in
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
- if test -n "$shlibext" \
- && { test -f "$dir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$dir/lib$name.dll.a"; }; }; then
- found_dir="$dir"
- if test -f "$dir/lib$name.$shlibext"; then
- found_so="$dir/lib$name.$shlibext"
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$dir/lib$name.dll.a"
- fi
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- else
- if test -f "$dir/lib$name.$libext"; then
+ fi
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
found_dir="$dir"
- found_a="$dir/lib$name.$libext"
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
- fi
+ found_a="$dir/$libname.$acl_libext"
+ fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
;;
@@ -6819,10 +15153,10 @@ fi
if test -z "$haveit"; then
ltrpathdirs="$ltrpathdirs $found_dir"
fi
- if test "$hardcode_direct" = yes; then
+ if test "$acl_hardcode_direct" = yes; then
LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
else
- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
haveit=
for x in $rpathdirs; do
@@ -6854,7 +15188,7 @@ fi
if test -z "$haveit"; then
LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
fi
- if test "$hardcode_minus_L" != no; then
+ if test "$acl_hardcode_minus_L" != no; then
LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
else
LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
@@ -6873,6 +15207,7 @@ fi
case "$found_dir" in
*/$acl_libdirstem | */$acl_libdirstem/)
basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
+ LIBINTL_PREFIX="$basedir"
additional_includedir="$basedir/include"
;;
esac
@@ -7023,21 +15358,21 @@ fi
done
done
if test "X$rpathdirs" != "X"; then
- if test -n "$hardcode_libdir_separator"; then
+ if test -n "$acl_hardcode_libdir_separator"; then
alldirs=
for found_dir in $rpathdirs; do
- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
+ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
done
acl_save_libdir="$libdir"
libdir="$alldirs"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
else
for found_dir in $rpathdirs; do
acl_save_libdir="$libdir"
libdir="$found_dir"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
done
@@ -7049,10 +15384,10 @@ fi
done
fi
- { echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5
-echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5
+$as_echo_n "checking for GNU gettext in libintl... " >&6; }
if { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
gt_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $INCINTL"
@@ -7087,26 +15422,30 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
eval "$gt_func_gnugettext_libintl=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$gt_func_gnugettext_libintl=no"
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
@@ -7140,38 +15479,43 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
eval "$gt_func_gnugettext_libintl=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
CPPFLAGS="$gt_save_CPPFLAGS"
LIBS="$gt_save_LIBS"
fi
-ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$gt_func_gnugettext_libintl'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
@@ -7207,13 +15551,13 @@ _ACEOF
fi
fi
- { echo "$as_me:$LINENO: checking whether to use NLS" >&5
-echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6; }
- { echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether to use NLS" >&5
+$as_echo_n "checking whether to use NLS... " >&6; }
+ { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
if test "$USE_NLS" = "yes"; then
- { echo "$as_me:$LINENO: checking where the gettext function comes from" >&5
-echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking where the gettext function comes from" >&5
+$as_echo_n "checking where the gettext function comes from... " >&6; }
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
gt_source="external libintl"
@@ -7223,18 +15567,18 @@ echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; }
else
gt_source="included intl directory"
fi
- { echo "$as_me:$LINENO: result: $gt_source" >&5
-echo "${ECHO_T}$gt_source" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $gt_source" >&5
+$as_echo "$gt_source" >&6; }
fi
if test "$USE_NLS" = "yes"; then
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
- { echo "$as_me:$LINENO: checking how to link with libintl" >&5
-echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6; }
- { echo "$as_me:$LINENO: result: $LIBINTL" >&5
-echo "${ECHO_T}$LIBINTL" >&6; }
+ { $as_echo "$as_me:$LINENO: checking how to link with libintl" >&5
+$as_echo_n "checking how to link with libintl... " >&6; }
+ { $as_echo "$as_me:$LINENO: result: $LIBINTL" >&5
+$as_echo "$LIBINTL" >&6; }
for element in $INCINTL; do
haveit=
@@ -7286,10 +15630,10 @@ _ACEOF
- { echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
-echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
+$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
if test "${am_cv_langinfo_codeset+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -7312,32 +15656,36 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
am_cv_langinfo_codeset=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
am_cv_langinfo_codeset=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $am_cv_langinfo_codeset" >&5
-echo "${ECHO_T}$am_cv_langinfo_codeset" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $am_cv_langinfo_codeset" >&5
+$as_echo "$am_cv_langinfo_codeset" >&6; }
if test $am_cv_langinfo_codeset = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -7347,10 +15695,10 @@ _ACEOF
fi
- { echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
-echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
+$as_echo_n "checking for LC_MESSAGES... " >&6; }
if test "${gt_cv_val_LC_MESSAGES+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -7373,31 +15721,35 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
gt_cv_val_LC_MESSAGES=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
gt_cv_val_LC_MESSAGES=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $gt_cv_val_LC_MESSAGES" >&5
-echo "${ECHO_T}$gt_cv_val_LC_MESSAGES" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $gt_cv_val_LC_MESSAGES" >&5
+$as_echo "$gt_cv_val_LC_MESSAGES" >&6; }
if test $gt_cv_val_LC_MESSAGES = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -7407,10 +15759,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
if test "${ac_cv_header_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -7437,20 +15789,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_header_stdc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_header_stdc=no
@@ -7542,37 +15895,40 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
:
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
ac_cv_header_stdc=no
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
fi
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -7581,10 +15937,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5
-echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5
+$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
if test "${ac_cv_header_sys_wait_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -7617,20 +15973,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_header_sys_wait_h=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_header_sys_wait_h=no
@@ -7638,8 +15995,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5
-echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5
+$as_echo "$ac_cv_header_sys_wait_h" >&6; }
if test $ac_cv_header_sys_wait_h = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -7648,10 +16005,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
-echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
+$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
if test "${ac_cv_header_time+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -7678,20 +16035,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_header_time=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_header_time=no
@@ -7699,8 +16057,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
-echo "${ECHO_T}$ac_cv_header_time" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
+$as_echo "$ac_cv_header_time" >&6; }
if test $ac_cv_header_time = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -7734,20 +16092,21 @@ for ac_header in arpa/inet.h fcntl.h limits.h locale.h libintl.h mcheck.h \
sys/param.h sys/socket.h sys/time.h unistd.h \
termios.h stropts.h wchar.h wctype.h
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -7763,32 +16122,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -7802,51 +16162,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -7855,21 +16216,24 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
eval "$as_ac_Header=\$ac_header_preproc"
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -7882,20 +16246,21 @@ then
for ac_header in memory.h
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -7911,32 +16276,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -7950,51 +16316,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -8003,21 +16370,24 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
eval "$as_ac_Header=\$ac_header_preproc"
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -8028,20 +16398,21 @@ else
for ac_header in strings.h
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -8057,32 +16428,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -8096,51 +16468,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -8149,21 +16522,24 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
eval "$as_ac_Header=\$ac_header_preproc"
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -8172,26 +16548,58 @@ done
fi
-{ echo "$as_me:$LINENO: checking for pid_t" >&5
-echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for pid_t" >&5
+$as_echo_n "checking for pid_t... " >&6; }
if test "${ac_cv_type_pid_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
+ ac_cv_type_pid_t=no
+cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-typedef pid_t ac__type_new_;
int
main ()
{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
+if (sizeof (pid_t))
+ return 0;
+ ;
return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+int
+main ()
+{
+if (sizeof ((pid_t)))
+ return 0;
;
return 0;
}
@@ -8202,30 +16610,39 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
- ac_cv_type_pid_t=yes
+ :
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_cv_type_pid_t=no
+ ac_cv_type_pid_t=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
-echo "${ECHO_T}$ac_cv_type_pid_t" >&6; }
-if test $ac_cv_type_pid_t = yes; then
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
+$as_echo "$ac_cv_type_pid_t" >&6; }
+if test "x$ac_cv_type_pid_t" = x""yes; then
:
else
@@ -8235,10 +16652,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking return type of signal handlers" >&5
-echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking return type of signal handlers" >&5
+$as_echo_n "checking return type of signal handlers... " >&6; }
if test "${ac_cv_type_signal+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8263,20 +16680,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_type_signal=int
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_type_signal=void
@@ -8284,34 +16702,66 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
-echo "${ECHO_T}$ac_cv_type_signal" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
+$as_echo "$ac_cv_type_signal" >&6; }
cat >>confdefs.h <<_ACEOF
#define RETSIGTYPE $ac_cv_type_signal
_ACEOF
-{ echo "$as_me:$LINENO: checking for size_t" >&5
-echo $ECHO_N "checking for size_t... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for size_t" >&5
+$as_echo_n "checking for size_t... " >&6; }
if test "${ac_cv_type_size_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
+ ac_cv_type_size_t=no
+cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-typedef size_t ac__type_new_;
int
main ()
{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
+if (sizeof (size_t))
+ return 0;
+ ;
return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+int
+main ()
+{
+if (sizeof ((size_t)))
+ return 0;
;
return 0;
}
@@ -8322,30 +16772,39 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
- ac_cv_type_size_t=yes
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_size_t=yes
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_cv_type_size_t=no
+
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
-echo "${ECHO_T}$ac_cv_type_size_t" >&6; }
-if test $ac_cv_type_size_t = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
+$as_echo "$ac_cv_type_size_t" >&6; }
+if test "x$ac_cv_type_size_t" = x""yes; then
:
else
@@ -8355,10 +16814,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
-echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
+$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
if test "${ac_cv_type_uid_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8378,8 +16837,8 @@ fi
rm -f conftest*
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
-echo "${ECHO_T}$ac_cv_type_uid_t" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
+$as_echo "$ac_cv_type_uid_t" >&6; }
if test $ac_cv_type_uid_t = no; then
cat >>confdefs.h <<\_ACEOF
@@ -8393,10 +16852,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5
-echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5
+$as_echo_n "checking type of array argument to getgroups... " >&6; }
if test "${ac_cv_type_getgroups+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then
ac_cv_type_getgroups=cross
@@ -8437,29 +16896,32 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_type_getgroups=gid_t
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
ac_cv_type_getgroups=int
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
@@ -8484,8 +16946,8 @@ rm -f conftest*
fi
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5
-echo "${ECHO_T}$ac_cv_type_getgroups" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5
+$as_echo "$ac_cv_type_getgroups" >&6; }
cat >>confdefs.h <<_ACEOF
#define GETGROUPS_T $ac_cv_type_getgroups
@@ -8493,10 +16955,10 @@ _ACEOF
- { echo "$as_me:$LINENO: checking for long long int" >&5
-echo $ECHO_N "checking for long long int... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for long long int" >&5
+$as_echo_n "checking for long long int... " >&6; }
if test "${ac_cv_type_long_long_int+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8526,31 +16988,35 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_type_long_long_int=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_type_long_long_int=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_long_long_int" >&5
-echo "${ECHO_T}$ac_cv_type_long_long_int" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_long_long_int" >&5
+$as_echo "$ac_cv_type_long_long_int" >&6; }
if test $ac_cv_type_long_long_int = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -8571,10 +17037,10 @@ _ACEOF
fi
- { echo "$as_me:$LINENO: checking for unsigned long long int" >&5
-echo $ECHO_N "checking for unsigned long long int... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for unsigned long long int" >&5
+$as_echo_n "checking for unsigned long long int... " >&6; }
if test "${ac_cv_type_unsigned_long_long_int+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8602,31 +17068,35 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_type_unsigned_long_long_int=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_type_unsigned_long_long_int=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long_int" >&5
-echo "${ECHO_T}$ac_cv_type_unsigned_long_long_int" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long_int" >&5
+$as_echo "$ac_cv_type_unsigned_long_long_int" >&6; }
if test $ac_cv_type_unsigned_long_long_int = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -8647,10 +17117,14 @@ _ACEOF
fi
- { echo "$as_me:$LINENO: checking for inttypes.h" >&5
-echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6; }
+ if test "OS/390" = "`uname`"
+ then
+ gl_cv_header_inttypes_h=no
+ else
+ { $as_echo "$as_me:$LINENO: checking for inttypes.h" >&5
+$as_echo_n "checking for inttypes.h... " >&6; }
if test "${gl_cv_header_inttypes_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8674,20 +17148,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
gl_cv_header_inttypes_h=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
gl_cv_header_inttypes_h=no
@@ -8695,21 +17170,26 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $gl_cv_header_inttypes_h" >&5
-echo "${ECHO_T}$gl_cv_header_inttypes_h" >&6; }
- if test $gl_cv_header_inttypes_h = yes; then
+{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_inttypes_h" >&5
+$as_echo "$gl_cv_header_inttypes_h" >&6; }
+ if test $gl_cv_header_inttypes_h = yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_INTTYPES_H_WITH_UINTMAX 1
_ACEOF
+ fi
fi
- { echo "$as_me:$LINENO: checking for stdint.h" >&5
-echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6; }
+ if test "OS/390" = "`uname`"
+ then
+ gl_cv_header_stdint_h=no
+ else
+ { $as_echo "$as_me:$LINENO: checking for stdint.h" >&5
+$as_echo_n "checking for stdint.h... " >&6; }
if test "${gl_cv_header_stdint_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -8733,20 +17213,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
gl_cv_header_stdint_h=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
gl_cv_header_stdint_h=no
@@ -8754,14 +17235,15 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $gl_cv_header_stdint_h" >&5
-echo "${ECHO_T}$gl_cv_header_stdint_h" >&6; }
- if test $gl_cv_header_stdint_h = yes; then
+{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_stdint_h" >&5
+$as_echo "$gl_cv_header_stdint_h" >&6; }
+ if test $gl_cv_header_stdint_h = yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_STDINT_H_WITH_UINTMAX 1
_ACEOF
+ fi
fi
@@ -8806,26 +17288,24 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for ssize_t" >&5
-echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for ssize_t" >&5
+$as_echo_n "checking for ssize_t... " >&6; }
if test "${ac_cv_type_ssize_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
+ ac_cv_type_ssize_t=no
+cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-typedef ssize_t ac__type_new_;
int
main ()
{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
- return 0;
+if (sizeof (ssize_t))
+ return 0;
;
return 0;
}
@@ -8836,44 +17316,18 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
- ac_cv_type_ssize_t=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_ssize_t=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5
-echo "${ECHO_T}$ac_cv_type_ssize_t" >&6; }
-if test $ac_cv_type_ssize_t = yes; then
- :
-else
-
-cat >>confdefs.h <<_ACEOF
-#define ssize_t int
-_ACEOF
-
-fi
-
-{ echo "$as_me:$LINENO: checking for unsigned int" >&5
-echo $ECHO_N "checking for unsigned int... $ECHO_C" >&6; }
-if test "${ac_cv_type_unsigned_int+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -8881,14 +17335,11 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-typedef unsigned int ac__type_new_;
int
main ()
{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
- return 0;
+if (sizeof ((ssize_t)))
+ return 0;
;
return 0;
}
@@ -8899,38 +17350,56 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
- ac_cv_type_unsigned_int=yes
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_ssize_t=yes
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_cv_type_unsigned_int=no
+
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_int" >&5
-echo "${ECHO_T}$ac_cv_type_unsigned_int" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5
+$as_echo "$ac_cv_type_ssize_t" >&6; }
+if test "x$ac_cv_type_ssize_t" = x""yes; then
+ :
+else
+
+cat >>confdefs.h <<_ACEOF
+#define ssize_t int
+_ACEOF
+
+fi
# The cast to long int works around a bug in the HP C Compiler
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
# This bug is HP SR number 8606223364.
-{ echo "$as_me:$LINENO: checking size of unsigned int" >&5
-echo $ECHO_N "checking size of unsigned int... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking size of unsigned int" >&5
+$as_echo_n "checking size of unsigned int... " >&6; }
if test "${ac_cv_sizeof_unsigned_int+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then
# Depending upon the size, compute the lo and hi bounds.
@@ -8941,11 +17410,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) >= 0)];
test_array [0] = 0
;
@@ -8958,13 +17426,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -8978,11 +17447,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) <= $ac_mid)];
test_array [0] = 0
;
@@ -8995,20 +17463,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_hi=$ac_mid; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo=`expr $ac_mid + 1`
@@ -9022,7 +17491,7 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
@@ -9032,11 +17501,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) < 0)];
test_array [0] = 0
;
@@ -9049,13 +17517,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9069,11 +17538,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) >= $ac_mid)];
test_array [0] = 0
;
@@ -9086,20 +17554,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_lo=$ac_mid; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_hi=`expr '(' $ac_mid ')' - 1`
@@ -9113,7 +17582,7 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo= ac_hi=
@@ -9133,11 +17602,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) <= $ac_mid)];
test_array [0] = 0
;
@@ -9150,20 +17618,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_hi=$ac_mid
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo=`expr '(' $ac_mid ')' + 1`
@@ -9174,11 +17643,13 @@ done
case $ac_lo in
?*) ac_cv_sizeof_unsigned_int=$ac_lo;;
'') if test "$ac_cv_type_unsigned_int" = yes; then
- { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (unsigned int)
+$as_echo "$as_me: error: cannot compute sizeof (unsigned int)
See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+ { (exit 77); exit 77; }; }; }
else
ac_cv_sizeof_unsigned_int=0
fi ;;
@@ -9191,9 +17662,8 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned int ac__type_sizeof_;
-static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); }
-static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); }
+static long int longval () { return (long int) (sizeof (unsigned int)); }
+static unsigned long int ulongval () { return (long int) (sizeof (unsigned int)); }
#include <stdio.h>
#include <stdlib.h>
int
@@ -9203,20 +17673,22 @@ main ()
FILE *f = fopen ("conftest.val", "w");
if (! f)
return 1;
- if (((long int) (sizeof (ac__type_sizeof_))) < 0)
+ if (((long int) (sizeof (unsigned int))) < 0)
{
long int i = longval ();
- if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ if (i != ((long int) (sizeof (unsigned int))))
return 1;
- fprintf (f, "%ld\n", i);
+ fprintf (f, "%ld", i);
}
else
{
unsigned long int i = ulongval ();
- if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ if (i != ((long int) (sizeof (unsigned int))))
return 1;
- fprintf (f, "%lu\n", i);
+ fprintf (f, "%lu", i);
}
+ /* Do not output a trailing newline, as this causes \r\n confusion
+ on some platforms. */
return ferror (f) || fclose (f) != 0;
;
@@ -9229,43 +17701,48 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_sizeof_unsigned_int=`cat conftest.val`
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
if test "$ac_cv_type_unsigned_int" = yes; then
- { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (unsigned int)
+$as_echo "$as_me: error: cannot compute sizeof (unsigned int)
See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+ { (exit 77); exit 77; }; }; }
else
ac_cv_sizeof_unsigned_int=0
fi
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
rm -f conftest.val
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_int" >&5
-echo "${ECHO_T}$ac_cv_sizeof_unsigned_int" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_int" >&5
+$as_echo "$ac_cv_sizeof_unsigned_int" >&6; }
@@ -9274,68 +17751,14 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
-{ echo "$as_me:$LINENO: checking for unsigned long" >&5
-echo $ECHO_N "checking for unsigned long... $ECHO_C" >&6; }
-if test "${ac_cv_type_unsigned_long+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-typedef unsigned long ac__type_new_;
-int
-main ()
-{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_cv_type_unsigned_long=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_unsigned_long=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long" >&5
-echo "${ECHO_T}$ac_cv_type_unsigned_long" >&6; }
-
# The cast to long int works around a bug in the HP C Compiler
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
# This bug is HP SR number 8606223364.
-{ echo "$as_me:$LINENO: checking size of unsigned long" >&5
-echo $ECHO_N "checking size of unsigned long... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking size of unsigned long" >&5
+$as_echo_n "checking size of unsigned long... " >&6; }
if test "${ac_cv_sizeof_unsigned_long+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then
# Depending upon the size, compute the lo and hi bounds.
@@ -9346,11 +17769,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) >= 0)];
test_array [0] = 0
;
@@ -9363,13 +17785,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9383,11 +17806,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) <= $ac_mid)];
test_array [0] = 0
;
@@ -9400,20 +17822,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_hi=$ac_mid; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo=`expr $ac_mid + 1`
@@ -9427,7 +17850,7 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
@@ -9437,11 +17860,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) < 0)];
test_array [0] = 0
;
@@ -9454,13 +17876,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9474,11 +17897,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) >= $ac_mid)];
test_array [0] = 0
;
@@ -9491,20 +17913,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_lo=$ac_mid; break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_hi=`expr '(' $ac_mid ')' - 1`
@@ -9518,7 +17941,7 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo= ac_hi=
@@ -9538,11 +17961,10 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
int
main ()
{
-static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) <= $ac_mid)];
test_array [0] = 0
;
@@ -9555,20 +17977,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_hi=$ac_mid
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_lo=`expr '(' $ac_mid ')' + 1`
@@ -9579,11 +18002,13 @@ done
case $ac_lo in
?*) ac_cv_sizeof_unsigned_long=$ac_lo;;
'') if test "$ac_cv_type_unsigned_long" = yes; then
- { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (unsigned long)
+$as_echo "$as_me: error: cannot compute sizeof (unsigned long)
See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+ { (exit 77); exit 77; }; }; }
else
ac_cv_sizeof_unsigned_long=0
fi ;;
@@ -9596,9 +18021,8 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
- typedef unsigned long ac__type_sizeof_;
-static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); }
-static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); }
+static long int longval () { return (long int) (sizeof (unsigned long)); }
+static unsigned long int ulongval () { return (long int) (sizeof (unsigned long)); }
#include <stdio.h>
#include <stdlib.h>
int
@@ -9608,20 +18032,22 @@ main ()
FILE *f = fopen ("conftest.val", "w");
if (! f)
return 1;
- if (((long int) (sizeof (ac__type_sizeof_))) < 0)
+ if (((long int) (sizeof (unsigned long))) < 0)
{
long int i = longval ();
- if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ if (i != ((long int) (sizeof (unsigned long))))
return 1;
- fprintf (f, "%ld\n", i);
+ fprintf (f, "%ld", i);
}
else
{
unsigned long int i = ulongval ();
- if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ if (i != ((long int) (sizeof (unsigned long))))
return 1;
- fprintf (f, "%lu\n", i);
+ fprintf (f, "%lu", i);
}
+ /* Do not output a trailing newline, as this causes \r\n confusion
+ on some platforms. */
return ferror (f) || fclose (f) != 0;
;
@@ -9634,43 +18060,48 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_sizeof_unsigned_long=`cat conftest.val`
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
if test "$ac_cv_type_unsigned_long" = yes; then
- { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute sizeof (unsigned long)
+$as_echo "$as_me: error: cannot compute sizeof (unsigned long)
See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+ { (exit 77); exit 77; }; }; }
else
ac_cv_sizeof_unsigned_long=0
fi
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
rm -f conftest.val
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long" >&5
-echo "${ECHO_T}$ac_cv_sizeof_unsigned_long" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long" >&5
+$as_echo "$ac_cv_sizeof_unsigned_long" >&6; }
@@ -9727,13 +18158,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9744,7 +18176,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -9775,13 +18207,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9792,7 +18225,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -9823,13 +18256,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9840,7 +18274,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -9871,13 +18305,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -9888,7 +18323,7 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -9901,12 +18336,13 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- { echo "$as_me:$LINENO: checking for socklen_t" >&5
-echo $ECHO_N "checking for socklen_t... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for socklen_t" >&5
+$as_echo_n "checking for socklen_t... " >&6; }
if test "${ac_cv_type_socklen_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
+ ac_cv_type_socklen_t=no
+cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
@@ -9915,14 +18351,47 @@ cat >>conftest.$ac_ext <<_ACEOF
#include <sys/types.h>
#include <sys/socket.h>
-typedef socklen_t ac__type_new_;
int
main ()
{
-if ((ac__type_new_ *) 0)
- return 0;
-if (sizeof (ac__type_new_))
+if (sizeof (socklen_t))
+ return 0;
+ ;
return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <sys/types.h>
+#include <sys/socket.h>
+
+int
+main ()
+{
+if (sizeof ((socklen_t)))
+ return 0;
;
return 0;
}
@@ -9933,37 +18402,46 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
- ac_cv_type_socklen_t=yes
+ :
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_cv_type_socklen_t=no
+ ac_cv_type_socklen_t=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_socklen_t" >&5
-echo "${ECHO_T}$ac_cv_type_socklen_t" >&6; }
-if test $ac_cv_type_socklen_t = yes; then
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_socklen_t" >&5
+$as_echo "$ac_cv_type_socklen_t" >&6; }
+if test "x$ac_cv_type_socklen_t" = x""yes; then
:
else
- { echo "$as_me:$LINENO: checking for socklen_t equivalent" >&5
-echo $ECHO_N "checking for socklen_t equivalent... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for socklen_t equivalent" >&5
+$as_echo_n "checking for socklen_t equivalent... " >&6; }
if test "${rsync_cv_socklen_t_equiv+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
# Systems have either "struct sockaddr *" or
@@ -10000,13 +18478,14 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
@@ -10016,7 +18495,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
break
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -10032,8 +18511,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
- { echo "$as_me:$LINENO: result: $rsync_cv_socklen_t_equiv" >&5
-echo "${ECHO_T}$rsync_cv_socklen_t_equiv" >&6; }
+ { $as_echo "$as_me:$LINENO: result: $rsync_cv_socklen_t_equiv" >&5
+$as_echo "$rsync_cv_socklen_t_equiv" >&6; }
cat >>confdefs.h <<_ACEOF
#define socklen_t $rsync_cv_socklen_t_equiv
@@ -10046,11 +18525,11 @@ fi
for ac_func in vprintf
do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -10103,41 +18582,48 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
eval "$as_ac_var=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_var=no"
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-ac_res=`eval echo '${'$as_ac_var'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
-{ echo "$as_me:$LINENO: checking for _doprnt" >&5
-echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for _doprnt" >&5
+$as_echo_n "checking for _doprnt... " >&6; }
if test "${ac_cv_func__doprnt+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -10190,32 +18676,36 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_func__doprnt=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func__doprnt=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5
-echo "${ECHO_T}$ac_cv_func__doprnt" >&6; }
-if test $ac_cv_func__doprnt = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5
+$as_echo "$ac_cv_func__doprnt" >&6; }
+if test "x$ac_cv_func__doprnt" = x""yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_DOPRNT 1
@@ -10233,20 +18723,21 @@ done
for ac_header in $ac_header_list
do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -10262,32 +18753,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -10301,51 +18793,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -10354,21 +18847,24 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
eval "$as_ac_Header=\$ac_header_preproc"
fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -10385,11 +18881,11 @@ done
for ac_func in $ac_func_list
do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -10442,35 +18938,42 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
eval "$as_ac_var=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_var=no"
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-ac_res=`eval echo '${'$as_ac_var'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
@@ -10492,10 +18995,10 @@ done
-{ echo "$as_me:$LINENO: checking for working mktime" >&5
-echo $ECHO_N "checking for working mktime... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for working mktime" >&5
+$as_echo_n "checking for working mktime... " >&6; }
if test "${ac_cv_func_working_mktime+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then
ac_cv_func_working_mktime=no
@@ -10518,6 +19021,7 @@ cat >>conftest.$ac_ext <<_ACEOF
# endif
#endif
+#include <limits.h>
#include <stdlib.h>
#ifdef HAVE_UNISTD_H
@@ -10666,12 +19170,15 @@ main ()
isn't worth using anyway. */
alarm (60);
- for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
- continue;
- time_t_max--;
- if ((time_t) -1 < 0)
- for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
- continue;
+ for (;;)
+ {
+ t = (time_t_max << 1) + 1;
+ if (t <= time_t_max)
+ break;
+ time_t_max = t;
+ }
+ time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
+
delta = time_t_max / 997; /* a suitable prime number */
for (i = 0; i < N_STRINGS; i++)
{
@@ -10686,10 +19193,12 @@ main ()
&& mktime_test ((time_t) (60 * 60 * 24))))
return 1;
- for (j = 1; 0 < j; j *= 2)
+ for (j = 1; ; j <<= 1)
if (! bigtime_test (j))
return 1;
- if (! bigtime_test (j - 1))
+ else if (INT_MAX / 2 < j)
+ break;
+ if (! bigtime_test (INT_MAX))
return 1;
}
return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
@@ -10701,36 +19210,39 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_func_working_mktime=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
ac_cv_func_working_mktime=no
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_working_mktime" >&5
-echo "${ECHO_T}$ac_cv_func_working_mktime" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_working_mktime" >&5
+$as_echo "$ac_cv_func_working_mktime" >&6; }
if test $ac_cv_func_working_mktime = no; then
case " $LIBOBJS " in
*" mktime.$ac_objext "* ) ;;
@@ -10749,10 +19261,10 @@ _ACEOF
;;
esac
-{ echo "$as_me:$LINENO: checking for getaddrinfo" >&5
-echo $ECHO_N "checking for getaddrinfo... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for getaddrinfo" >&5
+$as_echo_n "checking for getaddrinfo... " >&6; }
if test "${ac_cv_func_getaddrinfo+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -10805,42 +19317,46 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_func_getaddrinfo=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func_getaddrinfo=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_getaddrinfo" >&5
-echo "${ECHO_T}$ac_cv_func_getaddrinfo" >&6; }
-if test $ac_cv_func_getaddrinfo = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_getaddrinfo" >&5
+$as_echo "$ac_cv_func_getaddrinfo" >&6; }
+if test "x$ac_cv_func_getaddrinfo" = x""yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_GETADDRINFO 1
_ACEOF
else
- { echo "$as_me:$LINENO: checking for getaddrinfo in -lsocket" >&5
-echo $ECHO_N "checking for getaddrinfo in -lsocket... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for getaddrinfo in -lsocket" >&5
+$as_echo_n "checking for getaddrinfo in -lsocket... " >&6; }
if test "${ac_cv_lib_socket_getaddrinfo+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lsocket $LIBS"
@@ -10872,33 +19388,37 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_lib_socket_getaddrinfo=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_lib_socket_getaddrinfo=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_lib_socket_getaddrinfo" >&5
-echo "${ECHO_T}$ac_cv_lib_socket_getaddrinfo" >&6; }
-if test $ac_cv_lib_socket_getaddrinfo = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_socket_getaddrinfo" >&5
+$as_echo "$ac_cv_lib_socket_getaddrinfo" >&6; }
+if test "x$ac_cv_lib_socket_getaddrinfo" = x""yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_GETADDRINFO 1
@@ -10910,10 +19430,10 @@ fi
-{ echo "$as_me:$LINENO: checking for fmod in -lm" >&5
-echo $ECHO_N "checking for fmod in -lm... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for fmod in -lm" >&5
+$as_echo_n "checking for fmod in -lm... " >&6; }
if test "${ac_cv_lib_m_fmod+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lm $LIBS"
@@ -10945,33 +19465,187 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_lib_m_fmod=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_lib_m_fmod=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_lib_m_fmod" >&5
-echo "${ECHO_T}$ac_cv_lib_m_fmod" >&6; }
-if test $ac_cv_lib_m_fmod = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_m_fmod" >&5
+$as_echo "$ac_cv_lib_m_fmod" >&6; }
+if test "x$ac_cv_lib_m_fmod" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBM 1
+_ACEOF
+
+ LIBS="-lm $LIBS"
+
+fi
+
+
+{ $as_echo "$as_me:$LINENO: checking for isinf in -lm" >&5
+$as_echo_n "checking for isinf in -lm... " >&6; }
+if test "${ac_cv_lib_m_isinf+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char isinf ();
+int
+main ()
+{
+return isinf ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_m_isinf=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_m_isinf=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_m_isinf" >&5
+$as_echo "$ac_cv_lib_m_isinf" >&6; }
+if test "x$ac_cv_lib_m_isinf" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBM 1
+_ACEOF
+
+ LIBS="-lm $LIBS"
+
+fi
+
+
+{ $as_echo "$as_me:$LINENO: checking for ismod in -lm" >&5
+$as_echo_n "checking for ismod in -lm... " >&6; }
+if test "${ac_cv_lib_m_ismod+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ismod ();
+int
+main ()
+{
+return ismod ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_m_ismod=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_m_ismod=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_m_ismod" >&5
+$as_echo "$ac_cv_lib_m_ismod" >&6; }
+if test "x$ac_cv_lib_m_ismod" = x""yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBM 1
_ACEOF
@@ -11025,11 +19699,11 @@ for ac_func in atexit btowc fmod getgrent getgroups grantpt \
system tmpfile towlower towupper tzset wcrtomb \
wcscoll wcscoll wctype
do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -11082,45 +19756,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
eval "$as_ac_var=yes"
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
eval "$as_ac_var=no"
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-ac_res=`eval echo '${'$as_ac_var'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
- { echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5
-echo $ECHO_N "checking whether mbrtowc and mbstate_t are properly declared... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5
+$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
if test "${ac_cv_func_mbrtowc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -11147,31 +19828,35 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_func_mbrtowc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func_mbrtowc=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_mbrtowc" >&5
-echo "${ECHO_T}$ac_cv_func_mbrtowc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbrtowc" >&5
+$as_echo "$ac_cv_func_mbrtowc" >&6; }
if test $ac_cv_func_mbrtowc = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -11182,17 +19867,17 @@ _ACEOF
if test "${ac_cv_header_dlfcn_h+set}" = set; then
- { echo "$as_me:$LINENO: checking for dlfcn.h" >&5
-echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for dlfcn.h" >&5
+$as_echo_n "checking for dlfcn.h... " >&6; }
if test "${ac_cv_header_dlfcn_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
-echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
+$as_echo "$ac_cv_header_dlfcn_h" >&6; }
else
# Is the header compilable?
-{ echo "$as_me:$LINENO: checking dlfcn.h usability" >&5
-echo $ECHO_N "checking dlfcn.h usability... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking dlfcn.h usability" >&5
+$as_echo_n "checking dlfcn.h usability... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -11208,32 +19893,33 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_header_compiler=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
# Is the header present?
-{ echo "$as_me:$LINENO: checking dlfcn.h presence" >&5
-echo $ECHO_N "checking dlfcn.h presence... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking dlfcn.h presence" >&5
+$as_echo_n "checking dlfcn.h presence... " >&6; }
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -11247,51 +19933,52 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null && {
test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
test ! -s conftest.err
}; then
ac_header_preproc=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
yes:no: )
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: dlfcn.h: proceeding with the compiler's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: proceeding with the compiler's result" >&2;}
ac_header_preproc=yes
;;
no:yes:* )
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: dlfcn.h: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: dlfcn.h: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: dlfcn.h: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: dlfcn.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&2;}
( cat <<\_ASBOX
## ------------------------------- ##
## Report this to bug-gawk@gnu.org ##
@@ -11300,18 +19987,18 @@ _ASBOX
) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
-{ echo "$as_me:$LINENO: checking for dlfcn.h" >&5
-echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for dlfcn.h" >&5
+$as_echo_n "checking for dlfcn.h... " >&6; }
if test "${ac_cv_header_dlfcn_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_header_dlfcn_h=$ac_header_preproc
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
-echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
+$as_echo "$ac_cv_header_dlfcn_h" >&6; }
fi
-if test $ac_cv_header_dlfcn_h = yes; then
+if test "x$ac_cv_header_dlfcn_h" = x""yes; then
cat >>confdefs.h <<\_ACEOF
#define DYNAMIC 1
@@ -11330,10 +20017,10 @@ _ACEOF
# Check this separately. Some systems have dlopen
# in libc. Notably freebsd and cygwin.
# HP-NSK has it in zrldsrl
- { echo "$as_me:$LINENO: checking for library containing dlopen" >&5
-echo $ECHO_N "checking for library containing dlopen... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for library containing dlopen" >&5
+$as_echo_n "checking for library containing dlopen... " >&6; }
if test "${ac_cv_search_dlopen+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
cat >conftest.$ac_ext <<_ACEOF
@@ -11371,26 +20058,30 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_search_dlopen=$ac_res
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext
if test "${ac_cv_search_dlopen+set}" = set; then
@@ -11405,8 +20096,8 @@ fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_dlopen" >&5
-echo "${ECHO_T}$ac_cv_search_dlopen" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_dlopen" >&5
+$as_echo "$ac_cv_search_dlopen" >&6; }
ac_res=$ac_cv_search_dlopen
if test "$ac_res" != no; then
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
@@ -11426,10 +20117,10 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
;;
-*) { echo "$as_me:$LINENO: checking whether getpgrp requires zero arguments" >&5
-echo $ECHO_N "checking whether getpgrp requires zero arguments... $ECHO_C" >&6; }
+*) { $as_echo "$as_me:$LINENO: checking whether getpgrp requires zero arguments" >&5
+$as_echo_n "checking whether getpgrp requires zero arguments... " >&6; }
if test "${ac_cv_func_getpgrp_void+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
# Use it with a single arg.
cat >conftest.$ac_ext <<_ACEOF
@@ -11453,20 +20144,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_func_getpgrp_void=no
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func_getpgrp_void=yes
@@ -11475,8 +20167,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_getpgrp_void" >&5
-echo "${ECHO_T}$ac_cv_func_getpgrp_void" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_getpgrp_void" >&5
+$as_echo "$ac_cv_func_getpgrp_void" >&6; }
if test $ac_cv_func_getpgrp_void = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -11488,8 +20180,8 @@ fi
;;
esac
-{ echo "$as_me:$LINENO: checking for printf %F format" >&5
-echo $ECHO_N "checking for printf %F format... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for printf %F format" >&5
+$as_echo_n "checking for printf %F format... " >&6; }
if test "$cross_compiling" = yes; then
has_f_format=no
else
@@ -11516,29 +20208,32 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && { ac_try='./conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_try") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
has_f_format=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
( exit $ac_status )
has_f_format=no
fi
+rm -rf conftest.dSYM
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
@@ -11550,8 +20245,8 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
fi
-{ echo "$as_me:$LINENO: result: $has_f_format" >&5
-echo "${ECHO_T}$has_f_format" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $has_f_format" >&5
+$as_echo "$has_f_format" >&6; }
gawk_have_sockets=no
@@ -11578,10 +20273,10 @@ else
# needs -lnsl.
# The nsl library prevents programs from opening the X display
# on Irix 5.2, according to dickey@clark.net.
- { echo "$as_me:$LINENO: checking for gethostbyname" >&5
-echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for gethostbyname" >&5
+$as_echo_n "checking for gethostbyname... " >&6; }
if test "${ac_cv_func_gethostbyname+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -11634,37 +20329,41 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_func_gethostbyname=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func_gethostbyname=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5
-echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5
+$as_echo "$ac_cv_func_gethostbyname" >&6; }
if test $ac_cv_func_gethostbyname = no; then
- { echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5
-echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5
+$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lnsl $LIBS"
@@ -11696,33 +20395,37 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_lib_nsl_gethostbyname=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_lib_nsl_gethostbyname=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5
-echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6; }
-if test $ac_cv_lib_nsl_gethostbyname = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5
+$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
+if test "x$ac_cv_lib_nsl_gethostbyname" = x""yes; then
SOCKET_LIBS="$SOCKET_LIBS -lnsl"
fi
@@ -11735,10 +20438,10 @@ fi
# gethostby* variants that don't use the nameserver (or something).
# -lsocket must be given before -lnsl if both are needed.
# We assume that if connect needs -lnsl, so does gethostbyname.
- { echo "$as_me:$LINENO: checking for connect" >&5
-echo $ECHO_N "checking for connect... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for connect" >&5
+$as_echo_n "checking for connect... " >&6; }
if test "${ac_cv_func_connect+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -11791,37 +20494,41 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_func_connect=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_func_connect=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_connect" >&5
-echo "${ECHO_T}$ac_cv_func_connect" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_connect" >&5
+$as_echo "$ac_cv_func_connect" >&6; }
if test $ac_cv_func_connect = no; then
- { echo "$as_me:$LINENO: checking for connect in -lsocket" >&5
-echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for connect in -lsocket" >&5
+$as_echo_n "checking for connect in -lsocket... " >&6; }
if test "${ac_cv_lib_socket_connect+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lsocket $SOCKET_LIBS $LIBS"
@@ -11853,33 +20560,37 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_lib_socket_connect=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_lib_socket_connect=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_lib_socket_connect" >&5
-echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6; }
-if test $ac_cv_lib_socket_connect = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_socket_connect" >&5
+$as_echo "$ac_cv_lib_socket_connect" >&6; }
+if test "x$ac_cv_lib_socket_connect" = x""yes; then
SOCKET_LIBS="-lsocket $SOCKET_LIBS"
gawk_have_sockets=yes
fi
@@ -11891,14 +20602,14 @@ fi
if test "${gawk_have_sockets}" = "yes"
then
- { echo "$as_me:$LINENO: checking where to find the socket library calls" >&5
-echo $ECHO_N "checking where to find the socket library calls... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking where to find the socket library calls" >&5
+$as_echo_n "checking where to find the socket library calls... " >&6; }
case "${SOCKET_LIBS}" in
?*) gawk_lib_loc="${SOCKET_LIBS}" ;;
*) gawk_lib_loc="the standard library" ;;
esac
- { echo "$as_me:$LINENO: result: ${gawk_lib_loc}" >&5
-echo "${ECHO_T}${gawk_lib_loc}" >&6; }
+ { $as_echo "$as_me:$LINENO: result: ${gawk_lib_loc}" >&5
+$as_echo "${gawk_lib_loc}" >&6; }
cat >>confdefs.h <<\_ACEOF
@@ -11908,10 +20619,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for struct stat.st_blksize" >&5
-echo $ECHO_N "checking for struct stat.st_blksize... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for struct stat.st_blksize" >&5
+$as_echo_n "checking for struct stat.st_blksize... " >&6; }
if test "${ac_cv_member_struct_stat_st_blksize+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -11936,20 +20647,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_member_struct_stat_st_blksize=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
@@ -11975,20 +20687,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_member_struct_stat_st_blksize=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_member_struct_stat_st_blksize=no
@@ -11999,9 +20712,9 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_blksize" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_blksize" >&6; }
-if test $ac_cv_member_struct_stat_st_blksize = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_blksize" >&5
+$as_echo "$ac_cv_member_struct_stat_st_blksize" >&6; }
+if test "x$ac_cv_member_struct_stat_st_blksize" = x""yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
@@ -12015,10 +20728,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
-echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
+$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
if test "${ac_cv_header_time+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12045,20 +20758,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_header_time=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_header_time=no
@@ -12066,8 +20780,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
-echo "${ECHO_T}$ac_cv_header_time" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
+$as_echo "$ac_cv_header_time" >&6; }
if test $ac_cv_header_time = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -12076,10 +20790,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5
-echo $ECHO_N "checking whether struct tm is in sys/time.h or time.h... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5
+$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; }
if test "${ac_cv_struct_tm+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12095,7 +20809,7 @@ main ()
{
struct tm tm;
int *p = &tm.tm_sec;
- return !p;
+ return !p;
;
return 0;
}
@@ -12106,20 +20820,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_struct_tm=time.h
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_struct_tm=sys/time.h
@@ -12127,8 +20842,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5
-echo "${ECHO_T}$ac_cv_struct_tm" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5
+$as_echo "$ac_cv_struct_tm" >&6; }
if test $ac_cv_struct_tm = sys/time.h; then
cat >>confdefs.h <<\_ACEOF
@@ -12137,10 +20852,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5
-echo $ECHO_N "checking for struct tm.tm_zone... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5
+$as_echo_n "checking for struct tm.tm_zone... " >&6; }
if test "${ac_cv_member_struct_tm_tm_zone+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12168,20 +20883,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_member_struct_tm_tm_zone=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
cat >conftest.$ac_ext <<_ACEOF
@@ -12210,20 +20926,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_member_struct_tm_tm_zone=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_member_struct_tm_tm_zone=no
@@ -12234,9 +20951,9 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5
-echo "${ECHO_T}$ac_cv_member_struct_tm_tm_zone" >&6; }
-if test $ac_cv_member_struct_tm_tm_zone = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5
+$as_echo "$ac_cv_member_struct_tm_tm_zone" >&6; }
+if test "x$ac_cv_member_struct_tm_tm_zone" = x""yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_TM_TM_ZONE 1
@@ -12252,10 +20969,10 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
else
- { echo "$as_me:$LINENO: checking whether tzname is declared" >&5
-echo $ECHO_N "checking whether tzname is declared... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether tzname is declared" >&5
+$as_echo_n "checking whether tzname is declared... " >&6; }
if test "${ac_cv_have_decl_tzname+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12282,20 +20999,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_have_decl_tzname=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_have_decl_tzname=no
@@ -12303,9 +21021,9 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_have_decl_tzname" >&5
-echo "${ECHO_T}$ac_cv_have_decl_tzname" >&6; }
-if test $ac_cv_have_decl_tzname = yes; then
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_tzname" >&5
+$as_echo "$ac_cv_have_decl_tzname" >&6; }
+if test "x$ac_cv_have_decl_tzname" = x""yes; then
cat >>confdefs.h <<_ACEOF
#define HAVE_DECL_TZNAME 1
@@ -12321,10 +21039,10 @@ _ACEOF
fi
- { echo "$as_me:$LINENO: checking for tzname" >&5
-echo $ECHO_N "checking for tzname... $ECHO_C" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for tzname" >&5
+$as_echo_n "checking for tzname... " >&6; }
if test "${ac_cv_var_tzname+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12351,31 +21069,35 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest$ac_exeext &&
- $as_test_x conftest$ac_exeext; then
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
ac_cv_var_tzname=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_var_tzname=no
fi
+rm -rf conftest.dSYM
rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
conftest$ac_exeext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5
-echo "${ECHO_T}$ac_cv_var_tzname" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5
+$as_echo "$ac_cv_var_tzname" >&6; }
if test $ac_cv_var_tzname = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -12387,10 +21109,10 @@ fi
-{ echo "$as_me:$LINENO: checking whether char is unsigned" >&5
-echo $ECHO_N "checking whether char is unsigned... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking whether char is unsigned" >&5
+$as_echo_n "checking whether char is unsigned... " >&6; }
if test "${ac_cv_c_char_unsigned+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12415,20 +21137,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_c_char_unsigned=no
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_c_char_unsigned=yes
@@ -12436,8 +21159,8 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5
-echo "${ECHO_T}$ac_cv_c_char_unsigned" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5
+$as_echo "$ac_cv_c_char_unsigned" >&6; }
if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
cat >>confdefs.h <<\_ACEOF
#define __CHAR_UNSIGNED__ 1
@@ -12445,10 +21168,10 @@ _ACEOF
fi
-{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
-echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
+$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
if test "${ac_cv_c_const+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12520,20 +21243,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_c_const=yes
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_c_const=no
@@ -12541,25 +21265,24 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
-echo "${ECHO_T}$ac_cv_c_const" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
+$as_echo "$ac_cv_c_const" >&6; }
if test $ac_cv_c_const = no; then
cat >>confdefs.h <<\_ACEOF
-#define const
+#define const /**/
_ACEOF
fi
-{ echo "$as_me:$LINENO: checking for C/C++ restrict keyword" >&5
-echo $ECHO_N "checking for C/C++ restrict keyword... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for C/C++ restrict keyword" >&5
+$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
if test "${ac_cv_c_restrict+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_c_restrict=no
- # Try the official restrict keyword, then gcc's __restrict, and
- # the less common variants.
- for ac_kw in restrict __restrict __restrict__ _Restrict; do
+ # The order here caters to the fact that C++ does not require restrict.
+ for ac_kw in __restrict __restrict__ _Restrict restrict; do
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -12567,16 +21290,16 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
typedef int * int_ptr;
- int foo (int_ptr $ac_kw ip) {
- return ip[0];
+ int foo (int_ptr $ac_kw ip) {
+ return ip[0];
}
int
main ()
{
int s[1];
- int * $ac_kw t = s;
- t[0] = 0;
- return foo(t)
+ int * $ac_kw t = s;
+ t[0] = 0;
+ return foo(t)
;
return 0;
}
@@ -12587,20 +21310,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_c_restrict=$ac_kw
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -12611,13 +21335,14 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_restrict" >&5
-echo "${ECHO_T}$ac_cv_c_restrict" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_restrict" >&5
+$as_echo "$ac_cv_c_restrict" >&6; }
+
+
case $ac_cv_c_restrict in
restrict) ;;
- no)
-cat >>confdefs.h <<\_ACEOF
-#define restrict
+ no) cat >>confdefs.h <<\_ACEOF
+#define restrict /**/
_ACEOF
;;
*) cat >>confdefs.h <<_ACEOF
@@ -12626,10 +21351,10 @@ _ACEOF
;;
esac
-{ echo "$as_me:$LINENO: checking for inline" >&5
-echo $ECHO_N "checking for inline... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for inline" >&5
+$as_echo_n "checking for inline... " >&6; }
if test "${ac_cv_c_inline+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
ac_cv_c_inline=no
for ac_kw in inline __inline__ __inline; do
@@ -12652,20 +21377,21 @@ case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
(eval "$ac_compile") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then
ac_cv_c_inline=$ac_kw
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
@@ -12676,8 +21402,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
done
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5
-echo "${ECHO_T}$ac_cv_c_inline" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5
+$as_echo "$ac_cv_c_inline" >&6; }
case $ac_cv_c_inline in
@@ -12695,10 +21421,10 @@ _ACEOF
;;
esac
-{ echo "$as_me:$LINENO: checking for preprocessor stringizing operator" >&5
-echo $ECHO_N "checking for preprocessor stringizing operator... $ECHO_C" >&6; }
+{ $as_echo "$as_me:$LINENO: checking for preprocessor stringizing operator" >&5
+$as_echo_n "checking for preprocessor stringizing operator... " >&6; }
if test "${ac_cv_c_stringize+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ $as_echo_n "(cached) " >&6
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -12719,8 +21445,8 @@ fi
rm -f conftest*
fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_stringize" >&5
-echo "${ECHO_T}$ac_cv_c_stringize" >&6; }
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_stringize" >&5
+$as_echo "$ac_cv_c_stringize" >&6; }
if test $ac_cv_c_stringize = yes; then
cat >>confdefs.h <<\_ACEOF
@@ -12764,11 +21490,12 @@ _ACEOF
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
+ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
*) $as_unset $ac_var ;;
esac ;;
esac
@@ -12801,12 +21528,12 @@ echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
test "x$cache_file" != "x/dev/null" &&
- { echo "$as_me:$LINENO: updating cache $cache_file" >&5
-echo "$as_me: updating cache $cache_file" >&6;}
+ { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
+$as_echo "$as_me: updating cache $cache_file" >&6;}
cat confcache >$cache_file
else
- { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
-echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+ { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
rm -f confcache
@@ -12822,7 +21549,7 @@ ac_ltlibobjs=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`echo "$ac_i" | sed "$ac_script"`
+ ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -12833,27 +21560,43 @@ LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
+ if test -n "$EXEEXT"; then
+ am__EXEEXT_TRUE=
+ am__EXEEXT_FALSE='#'
+else
+ am__EXEEXT_TRUE='#'
+ am__EXEEXT_FALSE=
+fi
+
if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+ { { $as_echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+$as_echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+ { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"AMDEP\" was never defined.
+$as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
+ { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+$as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
: ${CONFIG_STATUS=./config.status}
+ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
#! $SHELL
# Generated by $as_me.
# Run this file to recreate the current configuration.
@@ -12866,7 +21609,7 @@ ac_cs_silent=false
SHELL=\${CONFIG_SHELL-$SHELL}
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
## --------------------- ##
## M4sh Initialization. ##
## --------------------- ##
@@ -12876,7 +21619,7 @@ DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -12898,17 +21641,45 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
else
- PATH_SEPARATOR=:
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
fi
- rm -f conf$$.sh
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
fi
# Support unset when possible.
@@ -12924,8 +21695,6 @@ fi
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
-as_nl='
-'
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
@@ -12948,7 +21717,7 @@ if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
- echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
{ (exit 1); exit 1; }
fi
@@ -12961,17 +21730,10 @@ PS2='> '
PS4='+ '
# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- fi
-done
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
# Required to use basename.
if expr a : '\(a\)' >/dev/null 2>&1 &&
@@ -12993,7 +21755,7 @@ as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
+$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -13044,7 +21806,7 @@ $as_unset CDPATH
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
{ (exit 1); exit 1; }; }
# Don't try to exec as it changes $[0], causing all sort of problems
@@ -13072,7 +21834,6 @@ case `echo -n x` in
*)
ECHO_N='-n';;
esac
-
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
@@ -13085,19 +21846,22 @@ if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
- mkdir conf$$.dir
-fi
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
+ fi
else
as_ln_s='cp -p'
fi
@@ -13122,10 +21886,10 @@ else
as_test_x='
eval sh -c '\''
if test -d "$1"; then
- test -d "$1/.";
+ test -d "$1/.";
else
case $1 in
- -*)set "./$1";;
+ -*)set "./$1";;
esac;
case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
???[sx]*):;;*)false;;esac;fi
@@ -13147,8 +21911,8 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNU Awk $as_me 3.1.6, which was
-generated by GNU Autoconf 2.61. Invocation command line was
+This file was extended by GNU Awk $as_me 3.1.7, which was
+generated by GNU Autoconf 2.63. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -13161,7 +21925,16 @@ on `(hostname || uname -n) 2>/dev/null | sed 1q`
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+case $ac_config_files in *"
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
+esac
+
+case $ac_config_headers in *"
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
+esac
+
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
# Files that config.status was made for.
config_files="$ac_config_files"
config_headers="$ac_config_headers"
@@ -13169,22 +21942,23 @@ config_commands="$ac_config_commands"
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
ac_cs_usage="\
\`$as_me' instantiates files from templates according to the
current configuration.
-Usage: $0 [OPTIONS] [FILE]...
+Usage: $0 [OPTION]... [FILE]...
-h, --help print this help, then exit
-V, --version print version number and configuration settings, then exit
- -q, --quiet do not print progress messages
+ -q, --quiet, --silent
+ do not print progress messages
-d, --debug don't remove temporary files
--recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
+ --file=FILE[:TEMPLATE]
+ instantiate the configuration file FILE
+ --header=FILE[:TEMPLATE]
+ instantiate the configuration header FILE
Configuration files:
$config_files
@@ -13198,13 +21972,13 @@ $config_commands
Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-GNU Awk config.status 3.1.6
-configured by $0, generated by GNU Autoconf 2.61,
- with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+GNU Awk config.status 3.1.7
+configured by $0, generated by GNU Autoconf 2.63,
+ with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
-Copyright (C) 2006 Free Software Foundation, Inc.
+Copyright (C) 2008 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -13212,11 +21986,12 @@ ac_pwd='$ac_pwd'
srcdir='$srcdir'
INSTALL='$INSTALL'
MKDIR_P='$MKDIR_P'
+AWK='$AWK'
+test -n "\$AWK" || AWK=awk
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# The default lists apply if the user does not specify any file.
ac_need_defaults=:
while test $# != 0
do
@@ -13238,30 +22013,36 @@ do
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- echo "$ac_cs_version"; exit ;;
+ $as_echo "$ac_cs_version"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
- CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
ac_need_defaults=false;;
--header | --heade | --head | --hea )
$ac_shift
- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
ac_need_defaults=false;;
--he | --h)
# Conflict between --help and --header
- { echo "$as_me: error: ambiguous option: $1
+ { $as_echo "$as_me: error: ambiguous option: $1
Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; };;
--help | --hel | -h )
- echo "$ac_cs_usage"; exit ;;
+ $as_echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil | --si | --s)
ac_cs_silent=: ;;
# This is an error.
- -*) { echo "$as_me: error: unrecognized option: $1
+ -*) { $as_echo "$as_me: error: unrecognized option: $1
Try \`$0 --help' for more information." >&2
{ (exit 1); exit 1; }; } ;;
@@ -13280,31 +22061,288 @@ if $ac_cs_silent; then
fi
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
- CONFIG_SHELL=$SHELL
+ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ shift
+ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+ CONFIG_SHELL='$SHELL'
export CONFIG_SHELL
- exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ exec "\$@"
fi
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
exec 5>>config.log
{
echo
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
- echo "$ac_log"
+ $as_echo "$ac_log"
} >&5
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
#
# INIT-COMMANDS
#
AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+sed_quote_subst='$sed_quote_subst'
+double_quote_subst='$double_quote_subst'
+delay_variable_subst='$delay_variable_subst'
+macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`'
+macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`'
+enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`'
+enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`'
+pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`'
+enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`'
+host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`'
+host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`'
+host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`'
+build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`'
+build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`'
+build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`'
+SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`'
+Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`'
+GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`'
+EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`'
+FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`'
+LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`'
+NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`'
+LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`'
+max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`'
+ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`'
+exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`'
+lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`'
+lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`'
+lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
+reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
+reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
+deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
+file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
+AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
+AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`'
+STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`'
+RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`'
+old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`'
+CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`'
+compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`'
+GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
+objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
+SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
+ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
+MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
+need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
+libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
+shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`'
+enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`'
+export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`'
+allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
+no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`'
+inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`'
+link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`'
+fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`'
+always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`'
+export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
+include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
+prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`'
+variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`'
+need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
+need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`'
+version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`'
+runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`'
+libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`'
+library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`'
+soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`'
+postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`'
+sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
+sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`'
+old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`'
+striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`'
+
+LTCC='$LTCC'
+LTCFLAGS='$LTCFLAGS'
+compiler='$compiler_DEFAULT'
+
+# Quote evaled strings.
+for var in SED \
+GREP \
+EGREP \
+FGREP \
+LD \
+NM \
+LN_S \
+lt_SP2NL \
+lt_NL2SP \
+reload_flag \
+OBJDUMP \
+deplibs_check_method \
+file_magic_cmd \
+AR \
+AR_FLAGS \
+STRIP \
+RANLIB \
+CC \
+CFLAGS \
+compiler \
+lt_cv_sys_global_symbol_pipe \
+lt_cv_sys_global_symbol_to_cdecl \
+lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
+SHELL \
+ECHO \
+lt_prog_compiler_no_builtin_flag \
+lt_prog_compiler_wl \
+lt_prog_compiler_pic \
+lt_prog_compiler_static \
+lt_cv_prog_compiler_c_o \
+need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
+shrext_cmds \
+export_dynamic_flag_spec \
+whole_archive_flag_spec \
+compiler_needs_object \
+with_gnu_ld \
+allow_undefined_flag \
+no_undefined_flag \
+hardcode_libdir_flag_spec \
+hardcode_libdir_flag_spec_ld \
+hardcode_libdir_separator \
+fix_srcfile_path \
+exclude_expsyms \
+include_expsyms \
+file_list_spec \
+variables_saved_for_relink \
+libname_spec \
+library_names_spec \
+soname_spec \
+finish_eval \
+old_striplib \
+striplib; do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[\\\\\\\`\\"\\\$]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Double-quote double-evaled strings.
+for var in reload_cmds \
+old_postinstall_cmds \
+old_postuninstall_cmds \
+old_archive_cmds \
+extract_expsyms_cmds \
+old_archive_from_new_cmds \
+old_archive_from_expsyms_cmds \
+archive_cmds \
+archive_expsym_cmds \
+module_cmds \
+module_expsym_cmds \
+export_symbols_cmds \
+prelink_cmds \
+postinstall_cmds \
+postuninstall_cmds \
+finish_cmds \
+sys_lib_search_path_spec \
+sys_lib_dlsearch_path_spec; do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[\\\\\\\`\\"\\\$]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Fix-up fallback echo if it was mangled by the above quoting rules.
+case \$lt_ECHO in
+*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\`
+ ;;
+esac
+
+ac_aux_dir='$ac_aux_dir'
+xsi_shell='$xsi_shell'
+lt_shell_append='$lt_shell_append'
+
+# See if we are running on zsh, and set the options which allow our
+# commands through without removal of \ escapes INIT.
+if test -n "\${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+
+ PACKAGE='$PACKAGE'
+ VERSION='$VERSION'
+ TIMESTAMP='$TIMESTAMP'
+ RM='$RM'
+ ofile='$ofile'
+
+
+
# Capture the value of obsolete ALL_LINGUAS because we need it to compute
# POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it
# from automake < 1.5.
@@ -13315,13 +22353,14 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# Handling of arguments.
for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
"po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;;
"config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:configh.in" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
@@ -13330,8 +22369,8 @@ do
"po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
"test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+ *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
done
@@ -13372,216 +22411,144 @@ $debug ||
(umask 077 && mkdir "$tmp")
} ||
{
- echo "$me: cannot create a temporary directory in ." >&2
+ $as_echo "$as_me: cannot create a temporary directory in ." >&2
{ (exit 1); exit 1; }
}
-#
-# Set up the sed scripts for CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
+# Set up the scripts for CONFIG_FILES section.
+# No need to generate them if there are no CONFIG_FILES.
+# This happens for instance with `./config.status config.h'.
if test -n "$CONFIG_FILES"; then
-_ACEOF
-
-
-
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- cat >conf$$subs.sed <<_ACEOF
-SHELL!$SHELL$ac_delim
-PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim
-PACKAGE_NAME!$PACKAGE_NAME$ac_delim
-PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim
-PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim
-PACKAGE_STRING!$PACKAGE_STRING$ac_delim
-PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim
-exec_prefix!$exec_prefix$ac_delim
-prefix!$prefix$ac_delim
-program_transform_name!$program_transform_name$ac_delim
-bindir!$bindir$ac_delim
-sbindir!$sbindir$ac_delim
-libexecdir!$libexecdir$ac_delim
-datarootdir!$datarootdir$ac_delim
-datadir!$datadir$ac_delim
-sysconfdir!$sysconfdir$ac_delim
-sharedstatedir!$sharedstatedir$ac_delim
-localstatedir!$localstatedir$ac_delim
-includedir!$includedir$ac_delim
-oldincludedir!$oldincludedir$ac_delim
-docdir!$docdir$ac_delim
-infodir!$infodir$ac_delim
-htmldir!$htmldir$ac_delim
-dvidir!$dvidir$ac_delim
-pdfdir!$pdfdir$ac_delim
-psdir!$psdir$ac_delim
-libdir!$libdir$ac_delim
-localedir!$localedir$ac_delim
-mandir!$mandir$ac_delim
-DEFS!$DEFS$ac_delim
-ECHO_C!$ECHO_C$ac_delim
-ECHO_N!$ECHO_N$ac_delim
-ECHO_T!$ECHO_T$ac_delim
-LIBS!$LIBS$ac_delim
-build_alias!$build_alias$ac_delim
-host_alias!$host_alias$ac_delim
-target_alias!$target_alias$ac_delim
-INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim
-INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim
-INSTALL_DATA!$INSTALL_DATA$ac_delim
-am__isrc!$am__isrc$ac_delim
-CYGPATH_W!$CYGPATH_W$ac_delim
-PACKAGE!$PACKAGE$ac_delim
-VERSION!$VERSION$ac_delim
-ACLOCAL!$ACLOCAL$ac_delim
-AUTOCONF!$AUTOCONF$ac_delim
-AUTOMAKE!$AUTOMAKE$ac_delim
-AUTOHEADER!$AUTOHEADER$ac_delim
-MAKEINFO!$MAKEINFO$ac_delim
-install_sh!$install_sh$ac_delim
-STRIP!$STRIP$ac_delim
-INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim
-mkdir_p!$mkdir_p$ac_delim
-AWK!$AWK$ac_delim
-SET_MAKE!$SET_MAKE$ac_delim
-am__leading_dot!$am__leading_dot$ac_delim
-AMTAR!$AMTAR$ac_delim
-am__tar!$am__tar$ac_delim
-am__untar!$am__untar$ac_delim
-GREP!$GREP$ac_delim
-EGREP!$EGREP$ac_delim
-YACC!$YACC$ac_delim
-YFLAGS!$YFLAGS$ac_delim
-LN_S!$LN_S$ac_delim
-CC!$CC$ac_delim
-CFLAGS!$CFLAGS$ac_delim
-LDFLAGS!$LDFLAGS$ac_delim
-CPPFLAGS!$CPPFLAGS$ac_delim
-ac_ct_CC!$ac_ct_CC$ac_delim
-EXEEXT!$EXEEXT$ac_delim
-OBJEXT!$OBJEXT$ac_delim
-DEPDIR!$DEPDIR$ac_delim
-am__include!$am__include$ac_delim
-am__quote!$am__quote$ac_delim
-AMDEP_TRUE!$AMDEP_TRUE$ac_delim
-AMDEP_FALSE!$AMDEP_FALSE$ac_delim
-AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim
-CCDEPMODE!$CCDEPMODE$ac_delim
-am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim
-am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim
-CPP!$CPP$ac_delim
-RANLIB!$RANLIB$ac_delim
-U!$U$ac_delim
-ANSI2KNR!$ANSI2KNR$ac_delim
-USE_NLS!$USE_NLS$ac_delim
-MSGFMT!$MSGFMT$ac_delim
-GMSGFMT!$GMSGFMT$ac_delim
-MSGFMT_015!$MSGFMT_015$ac_delim
-GMSGFMT_015!$GMSGFMT_015$ac_delim
-XGETTEXT!$XGETTEXT$ac_delim
-XGETTEXT_015!$XGETTEXT_015$ac_delim
-MSGMERGE!$MSGMERGE$ac_delim
-build!$build$ac_delim
-build_cpu!$build_cpu$ac_delim
-build_vendor!$build_vendor$ac_delim
-build_os!$build_os$ac_delim
-host!$host$ac_delim
-_ACEOF
-
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
- break
- elif $ac_last_try; then
- { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
-if test -n "$ac_eof"; then
- ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
- ac_eof=`expr $ac_eof + 1`
+ac_cr=' '
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
+ ac_cs_awk_cr='\\r'
+else
+ ac_cs_awk_cr=$ac_cr
fi
-cat >>$CONFIG_STATUS <<_ACEOF
-cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-_ACEOF
-sed '
-s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
-s/^/s,@/; s/!/@,|#_!!_#|/
-:n
-t n
-s/'"$ac_delim"'$/,g/; t
-s/$/\\/; p
-N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
-' >>$CONFIG_STATUS <conf$$subs.sed
-rm -f conf$$subs.sed
-cat >>$CONFIG_STATUS <<_ACEOF
-CEOF$ac_eof
+echo 'BEGIN {' >"$tmp/subs1.awk" &&
_ACEOF
+{
+ echo "cat >conf$$subs.awk <<_ACEOF" &&
+ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
+ echo "_ACEOF"
+} >conf$$subs.sh ||
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
- cat >conf$$subs.sed <<_ACEOF
-host_cpu!$host_cpu$ac_delim
-host_vendor!$host_vendor$ac_delim
-host_os!$host_os$ac_delim
-INTL_MACOSX_LIBS!$INTL_MACOSX_LIBS$ac_delim
-LIBICONV!$LIBICONV$ac_delim
-LTLIBICONV!$LTLIBICONV$ac_delim
-INTLLIBS!$INTLLIBS$ac_delim
-LIBINTL!$LIBINTL$ac_delim
-LTLIBINTL!$LTLIBINTL$ac_delim
-POSUB!$POSUB$ac_delim
-LIBOBJS!$LIBOBJS$ac_delim
-SOCKET_LIBS!$SOCKET_LIBS$ac_delim
-LTLIBOBJS!$LTLIBOBJS$ac_delim
-_ACEOF
-
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 13; then
+ . ./conf$$subs.sh ||
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+
+ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
+ if test $ac_delim_n = $ac_delim_num; then
break
elif $ac_last_try; then
- { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
{ (exit 1); exit 1; }; }
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
done
+rm -f conf$$subs.sh
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+_ACEOF
+sed -n '
+h
+s/^/S["/; s/!.*/"]=/
+p
+g
+s/^[^!]*!//
+:repl
+t repl
+s/'"$ac_delim"'$//
+t delim
+:nl
+h
+s/\(.\{148\}\).*/\1/
+t more1
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
+p
+n
+b repl
+:more1
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t nl
+:delim
+h
+s/\(.\{148\}\).*/\1/
+t more2
+s/["\\]/\\&/g; s/^/"/; s/$/"/
+p
+b
+:more2
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t delim
+' <conf$$subs.awk | sed '
+/^[^""]/{
+ N
+ s/\n//
+}
+' >>$CONFIG_STATUS || ac_write_fail=1
+rm -f conf$$subs.awk
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+_ACAWK
+cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+ for (key in S) S_is_set[key] = 1
+ FS = ""
-ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
-if test -n "$ac_eof"; then
- ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
- ac_eof=`expr $ac_eof + 1`
-fi
+}
+{
+ line = $ 0
+ nfields = split(line, field, "@")
+ substed = 0
+ len = length(field[1])
+ for (i = 2; i < nfields; i++) {
+ key = field[i]
+ keylen = length(key)
+ if (S_is_set[key]) {
+ value = S[key]
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+ len += length(value) + length(field[++i])
+ substed = 1
+ } else
+ len += 1 + keylen
+ }
+
+ print line
+}
-cat >>$CONFIG_STATUS <<_ACEOF
-cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
+_ACAWK
_ACEOF
-sed '
-s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
-s/^/s,@/; s/!/@,|#_!!_#|/
-:n
-t n
-s/'"$ac_delim"'$/,g/; t
-s/$/\\/; p
-N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
-' >>$CONFIG_STATUS <conf$$subs.sed
-rm -f conf$$subs.sed
-cat >>$CONFIG_STATUS <<_ACEOF
-:end
-s/|#_!!_#|//g
-CEOF$ac_eof
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
+ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
+else
+ cat
+fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+ || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
+$as_echo "$as_me: error: could not setup config files machinery" >&2;}
+ { (exit 1); exit 1; }; }
_ACEOF
-
# VPATH may cause trouble with some makes, so we remove $(srcdir),
# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
# trailing colons and then remove the whole line if VPATH becomes empty
@@ -13597,19 +22564,133 @@ s/^[^=]*=[ ]*$//
}'
fi
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
fi # test -n "$CONFIG_FILES"
+# Set up the scripts for CONFIG_HEADERS section.
+# No need to generate them if there are no CONFIG_HEADERS.
+# This happens for instance with `./config.status Makefile'.
+if test -n "$CONFIG_HEADERS"; then
+cat >"$tmp/defines.awk" <<\_ACAWK ||
+BEGIN {
+_ACEOF
+
+# Transform confdefs.h into an awk script `defines.awk', embedded as
+# here-document in config.status, that substitutes the proper values into
+# config.h.in to produce config.h.
+
+# Create a delimiter string that does not exist in confdefs.h, to ease
+# handling of long lines.
+ac_delim='%!_!# '
+for ac_last_try in false false :; do
+ ac_t=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_t"; then
+ break
+ elif $ac_last_try; then
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
+ { (exit 1); exit 1; }; }
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+
+# For the awk script, D is an array of macro values keyed by name,
+# likewise P contains macro parameters if any. Preserve backslash
+# newline sequences.
-for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
+sed -n '
+s/.\{148\}/&'"$ac_delim"'/g
+t rset
+:rset
+s/^[ ]*#[ ]*define[ ][ ]*/ /
+t def
+d
+:def
+s/\\$//
+t bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3"/p
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
+d
+:bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3\\\\\\n"\\/p
+t cont
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
+t cont
+d
+:cont
+n
+s/.\{148\}/&'"$ac_delim"'/g
+t clear
+:clear
+s/\\$//
+t bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
+d
+:bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
+b cont
+' <confdefs.h | sed '
+s/'"$ac_delim"'/"\\\
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ for (key in D) D_is_set[key] = 1
+ FS = ""
+}
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
+ line = \$ 0
+ split(line, arg, " ")
+ if (arg[1] == "#") {
+ defundef = arg[2]
+ mac1 = arg[3]
+ } else {
+ defundef = substr(arg[1], 2)
+ mac1 = arg[2]
+ }
+ split(mac1, mac2, "(") #)
+ macro = mac2[1]
+ prefix = substr(line, 1, index(line, defundef) - 1)
+ if (D_is_set[macro]) {
+ # Preserve the white space surrounding the "#".
+ print prefix "define", macro P[macro] D[macro]
+ next
+ } else {
+ # Replace #undef with comments. This is necessary, for example,
+ # in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+ if (defundef == "undef") {
+ print "/*", prefix defundef, macro, "*/"
+ next
+ }
+ }
+}
+{ print }
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
+$as_echo "$as_me: error: could not setup config headers machinery" >&2;}
+ { (exit 1); exit 1; }; }
+fi # test -n "$CONFIG_HEADERS"
+
+
+eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
+shift
+for ac_tag
do
case $ac_tag in
:[FHLC]) ac_mode=$ac_tag; continue;;
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
- :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5
-echo "$as_me: error: Invalid tag $ac_tag." >&2;}
+ :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
+$as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
{ (exit 1); exit 1; }; };;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
@@ -13638,26 +22719,38 @@ echo "$as_me: error: Invalid tag $ac_tag." >&2;}
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
-echo "$as_me: error: cannot find input file: $ac_f" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
+$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
{ (exit 1); exit 1; }; };;
esac
- ac_file_inputs="$ac_file_inputs $ac_f"
+ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+ ac_file_inputs="$ac_file_inputs '$ac_f'"
done
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated by config.status. */
- configure_input="Generated from "`IFS=:
- echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure."
+ configure_input='Generated from '`
+ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+ `' by configure.'
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
+ { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
+$as_echo "$as_me: creating $ac_file" >&6;}
fi
+ # Neutralize special characters interpreted by sed in replacement strings.
+ case $configure_input in #(
+ *\&* | *\|* | *\\* )
+ ac_sed_conf_input=`$as_echo "$configure_input" |
+ sed 's/[\\\\&|]/\\\\&/g'`;; #(
+ *) ac_sed_conf_input=$configure_input;;
+ esac
case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin";;
+ *:-:* | *:-) cat >"$tmp/stdin" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; } ;;
esac
;;
esac
@@ -13667,7 +22760,7 @@ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$ac_file" : 'X\(//\)[^/]' \| \
X"$ac_file" : 'X\(//\)$' \| \
X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$ac_file" |
+$as_echo X"$ac_file" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -13693,7 +22786,7 @@ echo X"$ac_file" |
as_dirs=
while :; do
case $as_dir in #(
- *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
@@ -13702,7 +22795,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$as_dir" |
+$as_echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -13723,17 +22816,17 @@ echo X"$as_dir" |
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-echo "$as_me: error: cannot create directory $as_dir" >&2;}
+ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
+$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
{ (exit 1); exit 1; }; }; }
ac_builddir=.
case "$ac_dir" in
.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
*)
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
# A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
case $ac_top_builddir_sub in
"") ac_top_builddir_sub=. ac_top_build_prefix= ;;
*) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -13778,12 +22871,13 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
esac
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# If the template does not know about datarootdir, expand it.
# FIXME: This hack should be removed a few years after 2.60.
ac_datarootdir_hack=; ac_datarootdir_seen=
-case `sed -n '/datarootdir/ {
+ac_sed_dataroot='
+/datarootdir/ {
p
q
}
@@ -13792,13 +22886,14 @@ case `sed -n '/datarootdir/ {
/@infodir@/p
/@localedir@/p
/@mandir@/p
-' $ac_file_inputs` in
+'
+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_datarootdir_hack='
s&@datadir@&$datadir&g
s&@docdir@&$docdir&g
@@ -13812,15 +22907,16 @@ _ACEOF
# Neutralize VPATH when `$srcdir' = `.'.
# Shell code in configure.ac might set extrasub.
# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_sed_extra="$ac_vpsub
$extrasub
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s&@configure_input@&$configure_input&;t t
+s|@configure_input@|$ac_sed_conf_input|;t t
s&@top_builddir@&$ac_top_builddir_sub&;t t
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
s&@srcdir@&$ac_srcdir&;t t
s&@abs_srcdir@&$ac_abs_srcdir&;t t
s&@top_srcdir@&$ac_top_srcdir&;t t
@@ -13831,135 +22927,75 @@ s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
s&@INSTALL@&$ac_INSTALL&;t t
s&@MKDIR_P@&$ac_MKDIR_P&;t t
$ac_datarootdir_hack
-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out
+"
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
{ ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
{ ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined." >&5
-echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined." >&2;}
rm -f "$tmp/stdin"
case $ac_file in
- -) cat "$tmp/out"; rm -f "$tmp/out";;
- *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;;
- esac
+ -) cat "$tmp/out" && rm -f "$tmp/out";;
+ *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ esac \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
;;
:H)
#
# CONFIG_HEADER
#
-_ACEOF
-
-# Transform confdefs.h into a sed script `conftest.defines', that
-# substitutes the proper values into config.h.in to produce config.h.
-rm -f conftest.defines conftest.tail
-# First, append a space to every undef/define line, to ease matching.
-echo 's/$/ /' >conftest.defines
-# Then, protect against being on the right side of a sed subst, or in
-# an unquoted here document, in config.status. If some macros were
-# called several times there might be several #defines for the same
-# symbol, which is useless. But do not sort them, since the last
-# AC_DEFINE must be honored.
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where
-# NAME is the cpp macro being defined, VALUE is the value it is being given.
-# PARAMS is the parameter list in the macro definition--in most cases, it's
-# just an empty string.
-ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*'
-ac_dB='\\)[ (].*,\\1define\\2'
-ac_dC=' '
-ac_dD=' ,'
-
-uniq confdefs.h |
- sed -n '
- t rset
- :rset
- s/^[ ]*#[ ]*define[ ][ ]*//
- t ok
- d
- :ok
- s/[\\&,]/\\&/g
- s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p
- s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p
- ' >>conftest.defines
-
-# Remove the space that was appended to ease matching.
-# Then replace #undef with comments. This is necessary, for
-# example, in the case of _POSIX_SOURCE, which is predefined and required
-# on some systems where configure will not decide to define it.
-# (The regexp can be short, since the line contains either #define or #undef.)
-echo 's/ $//
-s,^[ #]*u.*,/* & */,' >>conftest.defines
-
-# Break up conftest.defines:
-ac_max_sed_lines=50
-
-# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1"
-# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2"
-# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1"
-# et cetera.
-ac_in='$ac_file_inputs'
-ac_out='"$tmp/out1"'
-ac_nxt='"$tmp/out2"'
-
-while :
-do
- # Write a here document:
- cat >>$CONFIG_STATUS <<_ACEOF
- # First, check the format of the line:
- cat >"\$tmp/defines.sed" <<\\CEOF
-/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def
-/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def
-b
-:def
-_ACEOF
- sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS
- echo 'CEOF
- sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS
- ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in
- sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail
- grep . conftest.tail >/dev/null || break
- rm -f conftest.defines
- mv conftest.tail conftest.defines
-done
-rm -f conftest.defines conftest.tail
-
-echo "ac_result=$ac_in" >>$CONFIG_STATUS
-cat >>$CONFIG_STATUS <<\_ACEOF
if test x"$ac_file" != x-; then
- echo "/* $configure_input */" >"$tmp/config.h"
- cat "$ac_result" >>"$tmp/config.h"
- if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then
- { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
-echo "$as_me: $ac_file is unchanged" >&6;}
+ {
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
+ } >"$tmp/config.h" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
+ if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
else
- rm -f $ac_file
- mv "$tmp/config.h" $ac_file
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
fi
else
- echo "/* $configure_input */"
- cat "$ac_result"
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
+$as_echo "$as_me: error: could not create -" >&2;}
+ { (exit 1); exit 1; }; }
fi
- rm -f "$tmp/out12"
-# Compute $ac_file's index in $config_headers.
+# Compute "$ac_file"'s index in $config_headers.
+_am_arg="$ac_file"
_am_stamp_count=1
for _am_header in $config_headers :; do
case $_am_header in
- $ac_file | $ac_file:* )
+ $_am_arg | $_am_arg:* )
break ;;
* )
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac
done
-echo "timestamp for $ac_file" >`$as_dirname -- $ac_file ||
-$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X$ac_file : 'X\(//\)[^/]' \| \
- X$ac_file : 'X\(//\)$' \| \
- X$ac_file : 'X\(/\)' \| . 2>/dev/null ||
-echo X$ac_file |
+echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
+$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$_am_arg" : 'X\(//\)[^/]' \| \
+ X"$_am_arg" : 'X\(//\)$' \| \
+ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$_am_arg" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -13979,30 +23015,40 @@ echo X$ac_file |
s/.*/./; q'`/stamp-h$_am_stamp_count
;;
- :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5
-echo "$as_me: executing $ac_file commands" >&6;}
+ :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5
+$as_echo "$as_me: executing $ac_file commands" >&6;}
;;
esac
case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$mf" : 'X\(//\)[^/]' \| \
X"$mf" : 'X\(//\)$' \| \
X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$mf" |
+$as_echo X"$mf" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -14020,33 +23066,33 @@ echo X"$mf" |
q
}
s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$file" : 'X\(//\)[^/]' \| \
X"$file" : 'X\(//\)$' \| \
X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$file" |
+$as_echo X"$file" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -14064,7 +23110,7 @@ echo X"$file" |
q
}
s/.*/./; q'`
- { as_dir=$dirpart/$fdir
+ { as_dir=$dirpart/$fdir
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
@@ -14072,7 +23118,7 @@ echo X"$file" |
as_dirs=
while :; do
case $as_dir in #(
- *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
@@ -14081,7 +23127,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$as_dir" |
+$as_echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
@@ -14102,13 +23148,649 @@ echo X"$as_dir" |
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-echo "$as_me: error: cannot create directory $as_dir" >&2;}
+ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
+$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
{ (exit 1); exit 1; }; }; }
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
done
-done
+}
+ ;;
+ "libtool":C)
+
+ # See if we are running on zsh, and set the options which allow our
+ # commands through without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+ fi
+
+ cfgfile="${ofile}T"
+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+ $RM "$cfgfile"
+
+ cat <<_LT_EOF >> "$cfgfile"
+#! $SHELL
+
+# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 1996
+#
+# This file is part of GNU Libtool.
+#
+# GNU Libtool 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 of
+# the License, or (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+
+# The names of the tagged configurations supported by this script.
+available_tags=""
+
+# ### BEGIN LIBTOOL CONFIG
+
+# Which release of libtool.m4 was used?
+macro_version=$macro_version
+macro_revision=$macro_revision
+
+# Whether or not to build shared libraries.
+build_libtool_libs=$enable_shared
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
+# What type of objects to build.
+pic_mode=$pic_mode
+
+# Whether or not to optimize for fast installation.
+fast_install=$enable_fast_install
+
+# The host system.
+host_alias=$host_alias
+host=$host
+host_os=$host_os
+
+# The build system.
+build_alias=$build_alias
+build=$build
+build_os=$build_os
+
+# A sed program that does not truncate output.
+SED=$lt_SED
+
+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
+Xsed="\$SED -e 1s/^X//"
+
+# A grep program that handles long lines.
+GREP=$lt_GREP
+
+# An ERE matcher.
+EGREP=$lt_EGREP
+
+# A literal string matcher.
+FGREP=$lt_FGREP
+
+# A BSD- or MS-compatible name lister.
+NM=$lt_NM
+
+# Whether we need soft or hard links.
+LN_S=$lt_LN_S
+
+# What is the maximum length of a command?
+max_cmd_len=$max_cmd_len
+
+# Object file suffix (normally "o").
+objext=$ac_objext
+
+# Executable file suffix (normally "").
+exeext=$exeext
+
+# whether the shell understands "unset".
+lt_unset=$lt_unset
+
+# turn spaces into newlines.
+SP2NL=$lt_lt_SP2NL
+
+# turn newlines into spaces.
+NL2SP=$lt_lt_NL2SP
+
+# How to create reloadable object files.
+reload_flag=$lt_reload_flag
+reload_cmds=$lt_reload_cmds
+
+# An object symbol dumper.
+OBJDUMP=$lt_OBJDUMP
+
+# Method to check whether dependent libraries are shared objects.
+deplibs_check_method=$lt_deplibs_check_method
+
+# Command to use when deplibs_check_method == "file_magic".
+file_magic_cmd=$lt_file_magic_cmd
+
+# The archiver.
+AR=$lt_AR
+AR_FLAGS=$lt_AR_FLAGS
+
+# A symbol stripping program.
+STRIP=$lt_STRIP
+
+# Commands used to install an old-style archive.
+RANLIB=$lt_RANLIB
+old_postinstall_cmds=$lt_old_postinstall_cmds
+old_postuninstall_cmds=$lt_old_postuninstall_cmds
+
+# A C compiler.
+LTCC=$lt_CC
+
+# LTCC compiler flags.
+LTCFLAGS=$lt_CFLAGS
+
+# Take the output of nm and produce a listing of raw symbols and C names.
+global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
+
+# Transform the output of nm in a proper C declaration.
+global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
+
+# Transform the output of nm in a C name address pair.
+global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
+# The name of the directory that contains temporary libtool files.
+objdir=$objdir
+
+# Shell to use when invoking shell scripts.
+SHELL=$lt_SHELL
+
+# An echo program that does not interpret backslashes.
+ECHO=$lt_ECHO
+
+# Used to examine libraries when file_magic_cmd begins with "file".
+MAGIC_CMD=$MAGIC_CMD
+
+# Must we lock files when doing compilation?
+need_locks=$lt_need_locks
+
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
+# Old archive suffix (normally "a").
+libext=$libext
+
+# Shared library suffix (normally ".so").
+shrext_cmds=$lt_shrext_cmds
+
+# The commands to extract the exported symbol list from a shared archive.
+extract_expsyms_cmds=$lt_extract_expsyms_cmds
+
+# Variables whose values should be saved in libtool wrapper scripts and
+# restored at link time.
+variables_saved_for_relink=$lt_variables_saved_for_relink
+
+# Do we need the "lib" prefix for modules?
+need_lib_prefix=$need_lib_prefix
+
+# Do we need a version for libraries?
+need_version=$need_version
+
+# Library versioning type.
+version_type=$version_type
+
+# Shared library runtime path variable.
+runpath_var=$runpath_var
+
+# Shared library path variable.
+shlibpath_var=$shlibpath_var
+
+# Is shlibpath searched before the hard-coded library search path?
+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
+
+# Format of library name prefix.
+libname_spec=$lt_libname_spec
+
+# List of archive names. First name is the real one, the rest are links.
+# The last name is the one that the linker finds with -lNAME
+library_names_spec=$lt_library_names_spec
+
+# The coded name of the library, if different from the real name.
+soname_spec=$lt_soname_spec
+
+# Command to use after installation of a shared archive.
+postinstall_cmds=$lt_postinstall_cmds
+
+# Command to use after uninstallation of a shared archive.
+postuninstall_cmds=$lt_postuninstall_cmds
+
+# Commands used to finish a libtool library installation in a directory.
+finish_cmds=$lt_finish_cmds
+
+# As "finish_cmds", except a single script fragment to be evaled but
+# not shown.
+finish_eval=$lt_finish_eval
+
+# Whether we should hardcode library paths into libraries.
+hardcode_into_libs=$hardcode_into_libs
+
+# Compile-time system search path for libraries.
+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+
+# Run-time system search path for libraries.
+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+
+# Whether dlopen is supported.
+dlopen_support=$enable_dlopen
+
+# Whether dlopen of programs is supported.
+dlopen_self=$enable_dlopen_self
+
+# Whether dlopen of statically linked programs is supported.
+dlopen_self_static=$enable_dlopen_self_static
+
+# Commands to strip libraries.
+old_striplib=$lt_old_striplib
+striplib=$lt_striplib
+
+
+# The linker used to build libraries.
+LD=$lt_LD
+
+# Commands used to build an old-style archive.
+old_archive_cmds=$lt_old_archive_cmds
+
+# A language specific compiler.
+CC=$lt_compiler
+
+# Is the compiler the GNU compiler?
+with_gcc=$GCC
+
+# Compiler flag to turn off builtin functions.
+no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
+
+# How to pass a linker flag through the compiler.
+wl=$lt_lt_prog_compiler_wl
+
+# Additional compiler flags for building library objects.
+pic_flag=$lt_lt_prog_compiler_pic
+
+# Compiler flag to prevent dynamic linking.
+link_static_flag=$lt_lt_prog_compiler_static
+
+# Does compiler simultaneously support -c and -o options?
+compiler_c_o=$lt_lt_cv_prog_compiler_c_o
+
+# Whether or not to add -lc for building shared libraries.
+build_libtool_need_lc=$archive_cmds_need_lc
+
+# Whether or not to disallow shared libs when runtime libs are static.
+allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
+
+# Compiler flag to allow reflexive dlopens.
+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
+
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec=$lt_whole_archive_flag_spec
+
+# Whether the compiler copes with passing no objects directly.
+compiler_needs_object=$lt_compiler_needs_object
+
+# Create an old-style archive from a shared archive.
+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
+
+# Create a temporary old-style archive to link instead of a shared archive.
+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
+
+# Commands used to build a shared archive.
+archive_cmds=$lt_archive_cmds
+archive_expsym_cmds=$lt_archive_expsym_cmds
+
+# Commands used to build a loadable module if different from building
+# a shared archive.
+module_cmds=$lt_module_cmds
+module_expsym_cmds=$lt_module_expsym_cmds
+
+# Whether we are building with GNU ld or not.
+with_gnu_ld=$lt_with_gnu_ld
+
+# Flag that allows shared libraries with undefined symbols to be built.
+allow_undefined_flag=$lt_allow_undefined_flag
+
+# Flag that enforces no undefined symbols.
+no_undefined_flag=$lt_no_undefined_flag
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist
+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
+
+# If ld is used when linking, flag to hardcode \$libdir into a binary
+# during linking. This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
+
+# Whether we need a single "-rpath" flag with a separated argument.
+hardcode_libdir_separator=$lt_hardcode_libdir_separator
+
+# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# DIR into the resulting binary.
+hardcode_direct=$hardcode_direct
+
+# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# DIR into the resulting binary and the resulting library dependency is
+# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
+# library is relocated.
+hardcode_direct_absolute=$hardcode_direct_absolute
+
+# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+# into the resulting binary.
+hardcode_minus_L=$hardcode_minus_L
+
+# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+# into the resulting binary.
+hardcode_shlibpath_var=$hardcode_shlibpath_var
+
+# Set to "yes" if building a shared library automatically hardcodes DIR
+# into the library and all subsequent libraries and executables linked
+# against it.
+hardcode_automatic=$hardcode_automatic
+
+# Set to yes if linker adds runtime paths of dependent libraries
+# to runtime path list.
+inherit_rpath=$inherit_rpath
+
+# Whether libtool must link a program against all its dependency libraries.
+link_all_deplibs=$link_all_deplibs
+
+# Fix the shell variable \$srcfile for the compiler.
+fix_srcfile_path=$lt_fix_srcfile_path
+
+# Set to "yes" if exported symbols are required.
+always_export_symbols=$always_export_symbols
+
+# The commands to list exported symbols.
+export_symbols_cmds=$lt_export_symbols_cmds
+
+# Symbols that should not be listed in the preloaded symbols.
+exclude_expsyms=$lt_exclude_expsyms
+
+# Symbols that must always be exported.
+include_expsyms=$lt_include_expsyms
+
+# Commands necessary for linking programs (against libraries) with templates.
+prelink_cmds=$lt_prelink_cmds
+
+# Specify filename containing input files.
+file_list_spec=$lt_file_list_spec
+
+# How to hardcode a shared library path into an executable.
+hardcode_action=$hardcode_action
+
+# ### END LIBTOOL CONFIG
+
+_LT_EOF
+
+ case $host_os in
+ aix3*)
+ cat <<\_LT_EOF >> "$cfgfile"
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+_LT_EOF
+ ;;
+ esac
+
+
+ltmain="$ac_aux_dir/ltmain.sh"
+
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ case $xsi_shell in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result="${1##*/}"
+}
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+ func_basename_result="${1##*/}"
+}
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+func_stripname ()
+{
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+ # positional parameters, so assign one to ordinary parameter first.
+ func_stripname_result=${3}
+ func_stripname_result=${func_stripname_result#"${1}"}
+ func_stripname_result=${func_stripname_result%"${2}"}
+}
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=${1%%=*}
+ func_opt_split_arg=${1#*=}
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ case ${1} in
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+ *) func_lo2o_result=${1} ;;
+ esac
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=${#1}
+}
+
+_LT_EOF
+ ;;
+ *) # Bourne compatible functions.
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+# func_strip_suffix prefix name
+func_stripname ()
+{
+ case ${2} in
+ .*) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+ *) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+ esac
+}
+
+# sed scripts:
+my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
+my_sed_long_arg='1s/^-[^=]*=//'
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+ func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
+_LT_EOF
+esac
+
+case $lt_shell_append in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$1+=\$2"
+}
+_LT_EOF
+ ;;
+ *)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$1=\$$1\$2"
+}
+
+_LT_EOF
+ ;;
+ esac
+
+
+ sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+
;;
"po-directories":C)
for ac_file in $CONFIG_FILES; do
@@ -14233,6 +23915,11 @@ _ACEOF
chmod +x $CONFIG_STATUS
ac_clean_files=$ac_clean_files_save
+test $ac_write_fail = 0 ||
+ { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+
# configure is writing to config.log, and then calls config.status.
# config.status does its own redirection, appending to config.log.
@@ -14255,3 +23942,194 @@ if test "$no_create" != yes; then
$ac_cs_success || { (exit 1); exit 1; }
fi
+#
+# CONFIG_SUBDIRS section.
+#
+if test "$no_recursion" != yes; then
+
+ # Remove --cache-file, --srcdir, and --disable-option-checking arguments
+ # so they do not pile up.
+ ac_sub_configure_args=
+ ac_prev=
+ eval "set x $ac_configure_args"
+ shift
+ for ac_arg
+ do
+ if test -n "$ac_prev"; then
+ ac_prev=
+ continue
+ fi
+ case $ac_arg in
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \
+ | --c=*)
+ ;;
+ --config-cache | -C)
+ ;;
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ ;;
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ ;;
+ --disable-option-checking)
+ ;;
+ *)
+ case $ac_arg in
+ *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ ac_sub_configure_args="$ac_sub_configure_args '$ac_arg'" ;;
+ esac
+ done
+
+ # Always prepend --prefix to ensure using the same prefix
+ # in subdir configurations.
+ ac_arg="--prefix=$prefix"
+ case $ac_arg in
+ *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ ac_sub_configure_args="'$ac_arg' $ac_sub_configure_args"
+
+ # Pass --silent
+ if test "$silent" = yes; then
+ ac_sub_configure_args="--silent $ac_sub_configure_args"
+ fi
+
+ # Always prepend --disable-option-checking to silence warnings, since
+ # different subdirs can have different --enable and --with options.
+ ac_sub_configure_args="--disable-option-checking $ac_sub_configure_args"
+
+ ac_popdir=`pwd`
+ for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue
+
+ # Do not complain, so a configure script can configure whichever
+ # parts of a large source tree are present.
+ test -d "$srcdir/$ac_dir" || continue
+
+ ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)"
+ $as_echo "$as_me:$LINENO: $ac_msg" >&5
+ $as_echo "$ac_msg" >&6
+ { as_dir="$ac_dir"
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
+$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
+ { (exit 1); exit 1; }; }; }
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+
+ cd "$ac_dir"
+
+ # Check for guested configure; otherwise get Cygnus style configure.
+ if test -f "$ac_srcdir/configure.gnu"; then
+ ac_sub_configure=$ac_srcdir/configure.gnu
+ elif test -f "$ac_srcdir/configure"; then
+ ac_sub_configure=$ac_srcdir/configure
+ elif test -f "$ac_srcdir/configure.in"; then
+ # This should be Cygnus configure.
+ ac_sub_configure=$ac_aux_dir/configure
+ else
+ { $as_echo "$as_me:$LINENO: WARNING: no configuration information is in $ac_dir" >&5
+$as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;}
+ ac_sub_configure=
+ fi
+
+ # The recursion is here.
+ if test -n "$ac_sub_configure"; then
+ # Make the cache file name correct relative to the subdirectory.
+ case $cache_file in
+ [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;;
+ *) # Relative name.
+ ac_sub_cache_file=$ac_top_build_prefix$cache_file ;;
+ esac
+
+ { $as_echo "$as_me:$LINENO: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5
+$as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;}
+ # The eval makes quoting arguments work.
+ eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \
+ --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" ||
+ { { $as_echo "$as_me:$LINENO: error: $ac_sub_configure failed for $ac_dir" >&5
+$as_echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+
+ cd "$ac_popdir"
+ done
+fi
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
+ { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+fi
+
diff --git a/configure.ac b/configure.ac
index 9a66858c..f02dbdc2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
dnl
dnl configure.ac --- autoconf input file for gawk
dnl
-dnl Copyright (C) 1995-2007 the Free Software Foundation, Inc.
+dnl Copyright (C) 1995-2009 the Free Software Foundation, Inc.
dnl
dnl This file is part of GAWK, the GNU implementation of the
dnl AWK Programming Language.
@@ -23,7 +23,7 @@ dnl
dnl Process this file with autoconf to produce a configure script.
-AC_INIT([GNU Awk], 3.1.6, bug-gawk@gnu.org, gawk)
+AC_INIT([GNU Awk], 3.1.7, bug-gawk@gnu.org, gawk)
# This is a hack. Different versions of install on different systems
# are just too different. Chuck it and use install-sh.
@@ -39,9 +39,10 @@ then
export INSTALL
fi
-AC_PREREQ(2.61)
-AM_INIT_AUTOMAKE([1.10])
+AC_PREREQ(2.63)
+AM_INIT_AUTOMAKE([1.11])
+AC_CONFIG_MACRO_DIR([m4])
dnl Additional argument stuff
AC_ARG_ENABLE(portals, [ --enable-portals Enable /p as path prefix for portals],
@@ -63,6 +64,13 @@ AC_ARG_ENABLE([lint], [ --disable-lint Disable gawk lint checking],
AC_DEFINE(NO_LINT, 1, [disable lint checks])
fi
)
+AC_ARG_ENABLE([libsigsegv], [ --disable-libsigsegv Disable building and using of libsigsegv],
+ if test "$enableval" = no
+ then
+ AC_DEFINE(NO_LIBSIGSEGV, 1, [disable use of libsigsegv])
+ disable_libsigsegv=yes
+ fi
+)
AC_ARG_ENABLE(switch, [ --enable-switch Enable switch statements for awk programs],
if test "$enableval" = yes
then
@@ -76,19 +84,35 @@ AC_ARG_ENABLE([directories-fatal], [ --disable-directories-fatal Disable fatal
fi
)
+case $disable_libsigsegv in
+yes) : do nothing
+ ;;
+*)
+ dnl configure libsigsegv
+ AC_CONFIG_SUBDIRS([libsigsegv])
+ LIBSIGSEGV="libsigsegv/src/.libs/libsigsegv.a $LIBS"
+ SEGVINCLUDE='-I$(builddir)/libsigsegv/src'
+ SEGVSUBDIR=libsigsegv
+ AC_SUBST(LIBSIGSEGV)
+ AC_SUBST(SEGVINCLUDE)
+ AC_SUBST(SEGVSUBDIR)
+ ;;
+esac
+
+AC_USE_SYSTEM_EXTENSIONS
+
dnl checks for programs
AC_PROG_EGREP
AC_PROG_YACC
AC_PROG_LN_S
AC_PROG_CC
AC_PROG_CPP
-AC_PROG_RANLIB
+AC_PROG_LIBTOOL
AC_OBJEXT
AC_EXEEXT
AC_PROG_INSTALL
-
AC_PROG_MAKE_SET
# This is mainly for my use during testing and development.
@@ -104,9 +128,10 @@ then
LIBS="$LIBS dbug/libdbug.a"
fi
# turn on compiler warnings if we're doing development
+ # enable debugging using macros also
if test "$GCC" = yes
then
- CFLAGS="$CFLAGS -Wall -fno-builtin"
+ CFLAGS="$CFLAGS -Wall -fno-builtin -g3 -gdwarf-2"
fi
AC_MSG_RESULT([yes])
else
@@ -116,7 +141,7 @@ fi
AC_SUBST(CFLAGS)
dnl checks for systems
-AC_USE_SYSTEM_EXTENSIONS
+AC_ZOS_USS
AC_ISC_POSIX
AC_SYS_LARGEFILE
GAWK_AC_AIX_TWEAK
@@ -144,7 +169,7 @@ esac
dnl initialize GNU gettext
AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.16.1])
+AM_GNU_GETTEXT_VERSION([0.17])
AM_LANGINFO_CODESET
gt_LC_MESSAGES
@@ -269,6 +294,8 @@ AC_CHECK_FUNC(getaddrinfo, [AC_DEFINE(HAVE_GETADDRINFO, 1, [have getaddrinfo])],
[have getaddrinfo])])])
AC_CHECK_LIB(m, fmod)
+AC_CHECK_LIB(m, isinf)
+AC_CHECK_LIB(m, ismod)
# Need the check for mkstemp and tmpfile for missing_d/snprintf.c.
AC_CHECK_FUNCS(atexit btowc fmod getgrent getgroups grantpt \
diff --git a/custom.h b/custom.h
index a4a8d368..3ba85a87 100644
--- a/custom.h
+++ b/custom.h
@@ -11,7 +11,7 @@
*/
/*
- * Copyright (C) 1995-2004 the Free Software Foundation, Inc.
+ * Copyright (C) 1995-2004, 2008, 2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -102,3 +102,12 @@
#define HAVE_TZSET 1
#define _TZSET 1
#endif
+
+/* For z/OS, from Dave Pitts */
+#ifdef ZOS_USS
+#undef HAVE_DLFCN_H
+#endif
+
+#if !defined(NO_LIBSIGSEGV) && !defined(DJGPP) && !defined(VMS)
+#define HAVE_SIGSEGV_H 1
+#endif
diff --git a/dfa.c b/dfa.c
index 67564794..7e192e58 100644
--- a/dfa.c
+++ b/dfa.c
@@ -1,5 +1,5 @@
/* dfa.c - deterministic extended regexp routines for GNU
- Copyright 1988, 1998, 2000, 2002, 2004, 2005, 2007
+ Copyright 1988, 1998, 2000, 2002, 2004, 2005, 2007, 2009
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
@@ -518,7 +518,6 @@ parse_bracket_exp_mb ()
work_mbc->nchars = work_mbc->nranges = work_mbc->nch_classes = 0;
work_mbc->nequivs = work_mbc->ncoll_elems = 0;
- work_mbc->chars = NULL;
work_mbc->ch_classes = NULL;
work_mbc->range_sts = work_mbc->range_ends = NULL;
work_mbc->equivs = work_mbc->coll_elems = NULL;
@@ -759,7 +758,7 @@ static struct {
{ ":graph:]", is_graph },
{ ":cntrl:]", is_cntrl },
{ ":blank:]", is_blank },
- { 0 }
+ { 0, 0 }
};
/* Return non-zero if C is a `word-constituent' byte; zero otherwise. */
@@ -1514,22 +1513,36 @@ static void
insert (position p, position_set *s)
{
int i;
- position t1, t2;
- for (i = 0; i < s->nelem && p.index < s->elems[i].index; ++i)
- continue;
+ int start = -1;
+ int end = s->nelem - 1;
+ while (start < end)
+ {
+ int midpoint = (start + end + 1) / 2;
+ if (p.index < s->elems[midpoint].index)
+ {
+ /* We can skip to the midpoint without missing our insert position */
+ start = midpoint;
+ }
+ else
+ {
+ /* The midpoint is after our insert position, go back */
+ end = midpoint - 1;
+ }
+ }
+ i = start + 1;
+
if (i < s->nelem && p.index == s->elems[i].index)
s->elems[i].constraint |= p.constraint;
else
{
- t1 = p;
+ int update_pos;
++s->nelem;
- while (i < s->nelem)
- {
- t2 = s->elems[i];
- s->elems[i++] = t1;
- t1 = t2;
+ for (update_pos = s->nelem - 1; update_pos > i; update_pos--)
+ {
+ s->elems[update_pos] = s->elems[update_pos - 1];
}
+ s->elems[i] = p;
}
}
@@ -1649,12 +1662,10 @@ static void
epsclosure (position_set *s, struct dfa const *d)
{
int i, j;
- int *visited;
+ char *visited; /* array of booleans, enough to use char, not int */
position p, old;
- MALLOC(visited, int, d->tindex);
- for (i = 0; i < d->tindex; ++i)
- visited[i] = 0;
+ CALLOC(visited, char, d->tindex);
for (i = 0; i < s->nelem; ++i)
if (d->tokens[s->elems[i].index] >= NOTCHAR
@@ -1801,9 +1812,7 @@ dfaanalyze (struct dfa *d, int searchflag)
o_nlast = nlastpos;
MALLOC(lastpos, position, d->nleaves);
o_lastpos = lastpos, lastpos += d->nleaves;
- MALLOC(nalloc, int, d->tindex);
- for (i = 0; i < d->tindex; ++i)
- nalloc[i] = 0;
+ CALLOC(nalloc, int, d->tindex);
MALLOC(merged.elems, position, d->nleaves);
CALLOC(d->follows, position_set, d->tindex);
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 91d01a33..ca495c91 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,127 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Tue Jul 21 22:20:25 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, awkcard.in: Update mawk site information now
+ that Thomas Dickey is maintaining it.
+
+Mon Jul 13 07:53:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (SEDME2): New macro, used in making awkcard.ps,
+ removes last empty page. Finally!
+
+Fri Jul 10 10:35:29 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Rearrange items for better formatting and
+ organization.
+ * gawk.texi (Exit Status): New node to document exit values.
+ (Exit Statement): Give portability advice about exit value.
+
+Wed Jul 8 08:55:50 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Really fix table option for --verbose. Other
+ fixes and improvements, including document %'d flag.
+
+Tue Jul 7 09:13:02 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Fix table option for --verbose.
+
+Mon Jun 8 00:40:26 2009 Tommi Vainikainen <thv@iki.fi>
+
+ * gawk.1: Bug fix to restore space between paragraphs at
+ entry for "--".
+
+Thu May 21 21:09:59 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, awkcard.in: Document new -O / --optimize option.
+ * gawk.texi (Options): Likewise.
+
+Fri May 15 14:34:37 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (User-defined): Document that you can't use
+ the name of a built-in variable as a function parameter.
+
+Sat May 2 23:36:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Other Versions): Add Quiktrim awk.
+ (How to Contribute): Change things to point to awk.info.
+
+Mon Apr 6 22:29:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Bell Labs awk also supports fflush()
+ and fflush(""). Thanks to Steffen Schuler
+ <schuler.steffen@googlemail.com>.
+
+Mon Mar 30 21:26:04 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Simple Server): Fix bug since 3.1.0 where error
+ message from typo was in the middle of the HandleGet function.
+ Thanks to Tim Menzies for catching this.
+
+Mon Feb 9 22:11:16 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Translate Program): Bug fix in stranslate
+ function from Steffen Schuler <schuler.steffen@googlemail.com>.
+
+Tue Feb 3 22:06:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Regexp Field Splitting): Documented dark corner
+ of ^ in FS.
+
+Sat Jan 17 20:37:12 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Plain Getline): Bug fix in code. Thanks to
+ Steffen Schuler <schuler.steffen@googlemail.com>.
+
+Mon Jan 5 22:47:42 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, awkcard.in: Document that getline returns 1
+ on sucess. Thanks to Paolo <oopla@users.sf.net> for
+ the report.
+
+Fri Dec 26 14:45:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Update to FDL 1.3.
+
+Mon Dec 1 21:20:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (File Checking): Correct the text at the end; getline
+ isn't fatal, period, not related to POSIX. Thanks to
+ Seb <sbb@tuxfamily.org> for pointing this out.
+ (Round-Function): Change initial return when equal to return ival,
+ which lops off any digits, e.g. if given 121.0. Thanks to
+ Timothy J. Stefanski <TJStefanski@magellanhealth.com>.
+
+Fri Aug 1 17:34:55 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Signature Program): Added new subsection.
+
+Thu Jul 31 21:38:08 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Variable Typing): Document that array elements created
+ by `match' also get strnum attribute.
+
+Mon Jun 2 22:47:08 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Control Letters): Add a note about %c only
+ taking values from 0 to 255.
+ (DOS Quoting): New node.
+
+Thu Jan 31 16:17:27 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Updated the Back-Cover text per
+ latest from the FSF.
+
+Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
+
+ * gawk.texi (pwcat.c, grcat.c): Added ZOS_USS changes.
+
+Mon Jan 14 05:30:16 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Add maintainer contact info for z/OS.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/doc/Makefile.am b/doc/Makefile.am
index b83f9d67..3e872088 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -43,6 +43,7 @@ MAKEINFO = @MAKEINFO@ --no-split --force
TROFF = groff -t -Tps -U
SEDME = sed -e "s/^level0 restore/level0 restore flashme 100 72 moveto (Copyright `date '+%m-%d-%y %T'`, FSF, Inc. (all)) show/" \
-e "s/^\/level0 save def/\/level0 save def 30 -48 translate/"
+SEDME2 = sed '/%%Page: 10 10/,/0 Cg EP/d'
CARDSRC = $(srcdir)/macros $(srcdir)/cardfonts $(srcdir)/colors awkcard.tr
CARDSRC_N = $(srcdir)/macros $(srcdir)/cardfonts $(srcdir)/no.colors awkcard.tr
@@ -91,7 +92,7 @@ awkcard.tr: awkcard.in
sed 's:SRCDIR:$(srcdir):' < $(srcdir)/awkcard.in > awkcard.tr
awkcard.ps: $(CARDFILES)
- $(TROFF) $(CARDSRC) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps
+ $(TROFF) $(CARDSRC) | $(SEDME) | cat $(srcdir)/setter.outline - | $(SEDME2) > awkcard.ps
awkcard.nc: $(CARDFILES)
- $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc
+ $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - | $(SEDME2) > awkcard.ps && touch awkcard.nc
diff --git a/doc/Makefile.in b/doc/Makefile.in
index efd6ff05..3b105300 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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.
@@ -39,8 +40,9 @@
#
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -65,16 +67,19 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/isc-posix.m4 \
$(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
- $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \
- $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \
+ $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \
+ $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
INFO_DEPS = $(srcdir)/gawk.info $(srcdir)/gawkinet.info
@@ -95,13 +100,29 @@ am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
man1dir = $(mandir)/man1
NROFF = nroff
MANS = $(man_MANS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -114,11 +135,15 @@ CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
@@ -129,11 +154,15 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
+LIBSIGSEGV = @LIBSIGSEGV@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
@@ -143,7 +172,12 @@ MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
@@ -153,6 +187,9 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POSUB = @POSUB@
RANLIB = @RANLIB@
+SED = @SED@
+SEGVINCLUDE = @SEGVINCLUDE@
+SEGVSUBDIR = @SEGVSUBDIR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
@@ -162,6 +199,7 @@ USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
@@ -169,6 +207,7 @@ abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -199,6 +238,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@@ -209,8 +249,10 @@ psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
+subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
info_TEXINFOS = gawk.texi gawkinet.texi
@@ -229,6 +271,7 @@ TROFF = groff -t -Tps -U
SEDME = sed -e "s/^level0 restore/level0 restore flashme 100 72 moveto (Copyright `date '+%m-%d-%y %T'`, FSF, Inc. (all)) show/" \
-e "s/^\/level0 save def/\/level0 save def 30 -48 translate/"
+SEDME2 = sed '/%%Page: 10 10/,/0 Cg EP/d'
CARDSRC = $(srcdir)/macros $(srcdir)/cardfonts $(srcdir)/colors awkcard.tr
CARDSRC_N = $(srcdir)/macros $(srcdir)/cardfonts $(srcdir)/no.colors awkcard.tr
CARDFILES = $(CARDSRC) ad.block awkcard.in setter.outline
@@ -255,14 +298,14 @@ $(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; \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu doc/Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu doc/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -280,10 +323,17 @@ $(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
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
.texi.info:
restore=: && backupdir="$(am__leading_dot)am$$$$" && \
- am__cwd=`pwd` && cd $(srcdir) && \
+ am__cwd=`pwd` && $(am__cd) $(srcdir) && \
rm -rf $$backupdir && mkdir $$backupdir && \
if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
@@ -295,10 +345,10 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
-o $@ $<; \
then \
rc=0; \
- cd $(srcdir); \
+ $(am__cd) $(srcdir); \
else \
rc=$$?; \
- cd $(srcdir) && \
+ $(am__cd) $(srcdir) && \
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
fi; \
rm -rf $$backupdir; exit $$rc
@@ -340,16 +390,18 @@ gawkinet.html: gawkinet.texi
uninstall-dvi-am:
@$(NORMAL_UNINSTALL)
- @list='$(DVIS)'; for p in $$list; do \
- f=$(am__strip_dir) \
+ @list='$(DVIS)'; test -n "$(dvidir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \
rm -f "$(DESTDIR)$(dvidir)/$$f"; \
done
uninstall-html-am:
@$(NORMAL_UNINSTALL)
- @list='$(HTMLS)'; for p in $$list; do \
- f=$(am__strip_dir) \
+ @list='$(HTMLS)'; test -n "$(htmldir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \
rm -rf "$(DESTDIR)$(htmldir)/$$f"; \
done
@@ -363,7 +415,8 @@ uninstall-info-am:
for file in $$list; do \
relfile=`echo "$$file" | sed 's|^.*/||'`; \
echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
- install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
+ if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
+ then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \
done; \
else :; fi
@$(NORMAL_UNINSTALL)
@@ -379,16 +432,18 @@ uninstall-info-am:
uninstall-pdf-am:
@$(NORMAL_UNINSTALL)
- @list='$(PDFS)'; for p in $$list; do \
- f=$(am__strip_dir) \
+ @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \
rm -f "$(DESTDIR)$(pdfdir)/$$f"; \
done
uninstall-ps-am:
@$(NORMAL_UNINSTALL)
- @list='$(PSS)'; for p in $$list; do \
- f=$(am__strip_dir) \
+ @list='$(PSS)'; test -n "$(psdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \
rm -f "$(DESTDIR)$(psdir)/$$f"; \
done
@@ -405,20 +460,25 @@ dist-info: $(INFO_DEPS)
for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \
if test -f $$file; then \
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
- test -f $(distdir)/$$relfile || \
- cp -p $$file $(distdir)/$$relfile; \
+ test -f "$(distdir)/$$relfile" || \
+ cp -p $$file "$(distdir)/$$relfile"; \
else :; fi; \
done; \
done
mostlyclean-aminfo:
-rm -rf gawk.aux gawk.cp gawk.cps gawk.fn gawk.ky gawk.kys gawk.log gawk.pg \
- gawk.pgs gawk.tmp gawk.toc gawk.tp gawk.tps gawk.vr gawk.dvi \
- gawk.pdf gawk.ps gawk.html gawkinet.aux gawkinet.cp \
- gawkinet.cps gawkinet.fn gawkinet.ky gawkinet.kys \
- gawkinet.log gawkinet.pg gawkinet.pgs gawkinet.tmp \
- gawkinet.toc gawkinet.tp gawkinet.tps gawkinet.vr \
- gawkinet.dvi gawkinet.pdf gawkinet.ps gawkinet.html
+ gawk.pgs gawk.tmp gawk.toc gawk.tp gawk.tps gawk.vr \
+ gawkinet.aux gawkinet.cp gawkinet.cps gawkinet.fn \
+ gawkinet.ky gawkinet.kys gawkinet.log gawkinet.pg \
+ gawkinet.pgs gawkinet.tmp gawkinet.toc gawkinet.tp \
+ gawkinet.tps gawkinet.vr
+
+clean-aminfo:
+ -test -z "gawk.dvi gawk.pdf gawk.ps gawk.html gawkinet.dvi gawkinet.pdf \
+ gawkinet.ps gawkinet.html" \
+ || rm -rf gawk.dvi gawk.pdf gawk.ps gawk.html gawkinet.dvi gawkinet.pdf \
+ gawkinet.ps gawkinet.html
maintainer-clean-aminfo:
@list='$(INFO_DEPS)'; for i in $$list; do \
@@ -426,51 +486,44 @@ maintainer-clean-aminfo:
echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
done
-install-man1: $(man1_MANS) $(man_MANS)
+install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
- l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
- for i in $$l2; do \
- case "$$i" in \
- *.1*) list="$$list $$i" ;; \
- esac; \
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ { for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
done; \
- for i in $$list; do \
- if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
- else file=$$i; fi; \
- ext=`echo $$i | sed -e 's/^.*\\.//'`; \
- case "$$ext" in \
- 1*) ;; \
- *) ext='1' ;; \
- esac; \
- inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
- inst=`echo $$inst | sed -e 's/^.*\///'`; \
- inst=`echo $$inst | sed '$(transform)'`.$$ext; \
- echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
- $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
- done
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
uninstall-man1:
@$(NORMAL_UNINSTALL)
- @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
- l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
- for i in $$l2; do \
- case "$$i" in \
- *.1*) list="$$list $$i" ;; \
- esac; \
- done; \
- for i in $$list; do \
- ext=`echo $$i | sed -e 's/^.*\\.//'`; \
- case "$$ext" in \
- 1*) ;; \
- *) ext='1' ;; \
- esac; \
- inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
- inst=`echo $$inst | sed -e 's/^.*\///'`; \
- inst=`echo $$inst | sed '$(transform)'`.$$ext; \
- echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
- rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
- done
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ test -z "$$files" || { \
+ echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
tags: TAGS
TAGS:
@@ -479,6 +532,19 @@ CTAGS:
distdir: $(DISTFILES)
+ @list='$(MANS)'; if test -n "$$list"; then \
+ list=`for p in $$list; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
+ if test -n "$$list" && \
+ grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
+ echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
+ echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
+ echo " typically \`make maintainer-clean' will remove them" >&2; \
+ exit 1; \
+ else :; fi; \
+ else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -494,13 +560,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -535,13 +605,14 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
-clean-am: clean-generic mostlyclean-am
+clean-am: clean-aminfo clean-generic clean-libtool mostlyclean-am
distclean: distclean-am
-rm -f Makefile
@@ -562,17 +633,19 @@ info-am: $(INFO_DEPS)
install-data-am: install-info-am install-man
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-
install-dvi: install-dvi-am
install-dvi-am: $(DVIS)
@$(NORMAL_INSTALL)
test -z "$(dvidir)" || $(MKDIR_P) "$(DESTDIR)$(dvidir)"
- @list='$(DVIS)'; for p in $$list; do \
+ @list='$(DVIS)'; test -n "$(dvidir)" || list=; \
+ for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
- echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(dvidir)/$$f'"; \
- $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(dvidir)/$$f"; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dvidir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \
done
install-exec-am:
@@ -581,26 +654,31 @@ install-html: install-html-am
install-html-am: $(HTMLS)
@$(NORMAL_INSTALL)
test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)"
- @list='$(HTMLS)'; for p in $$list; do \
+ @list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \
+ for p in $$list; do \
if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
+ $(am__strip_dir) \
if test -d "$$d$$p"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \
$(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
- $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f"; \
+ $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \
else \
- echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \
- $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \
+ list2="$$list2 $$d$$p"; \
fi; \
- done
+ done; \
+ test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \
+ done; }
install-info: install-info-am
install-info-am: $(INFO_DEPS)
@$(NORMAL_INSTALL)
test -z "$(infodir)" || $(MKDIR_P) "$(DESTDIR)$(infodir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- list='$(INFO_DEPS)'; \
+ list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
@@ -608,18 +686,19 @@ install-info-am: $(INFO_DEPS)
if test -f $$file; then d=.; else d=$(srcdir); fi; \
file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
- $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
+ $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
if test -f $$ifile; then \
- relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
- echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \
- $(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \
+ echo "$$ifile"; \
else : ; fi; \
done; \
- done
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done
@$(POST_INSTALL)
@if (install-info --version && \
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
- list='$(INFO_DEPS)'; \
+ list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
for file in $$list; do \
relfile=`echo "$$file" | sed 's|^.*/||'`; \
echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
@@ -633,23 +712,27 @@ install-pdf: install-pdf-am
install-pdf-am: $(PDFS)
@$(NORMAL_INSTALL)
test -z "$(pdfdir)" || $(MKDIR_P) "$(DESTDIR)$(pdfdir)"
- @list='$(PDFS)'; for p in $$list; do \
+ @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
+ for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
- echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/$$f'"; \
- $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/$$f"; \
- done
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pdfdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done
install-ps: install-ps-am
install-ps-am: $(PSS)
@$(NORMAL_INSTALL)
test -z "$(psdir)" || $(MKDIR_P) "$(DESTDIR)$(psdir)"
- @list='$(PSS)'; for p in $$list; do \
+ @list='$(PSS)'; test -n "$(psdir)" || list=; \
+ for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
- echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(psdir)/$$f'"; \
- $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(psdir)/$$f"; \
- done
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(psdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -659,7 +742,8 @@ maintainer-clean-am: distclean-am maintainer-clean-aminfo \
mostlyclean: mostlyclean-am
-mostlyclean-am: mostlyclean-aminfo mostlyclean-generic
+mostlyclean-am: mostlyclean-aminfo mostlyclean-generic \
+ mostlyclean-libtool
pdf: pdf-am
@@ -673,24 +757,24 @@ uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \
uninstall-man uninstall-pdf-am uninstall-ps-am
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-
uninstall-man: uninstall-man1
.MAKE: install-am install-data-am install-strip uninstall-am
-.PHONY: all all-am check check-am clean clean-generic dist-info \
- distclean distclean-generic distdir dvi dvi-am html html-am \
- info info-am install install-am install-data install-data-am \
+.PHONY: all all-am check check-am clean clean-aminfo clean-generic \
+ clean-libtool dist-info distclean distclean-generic \
+ distclean-libtool distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am \
install-data-hook install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-man1 install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-aminfo maintainer-clean-generic mostlyclean \
- mostlyclean-aminfo mostlyclean-generic pdf pdf-am ps ps-am \
- uninstall uninstall-am uninstall-dvi-am uninstall-hook \
- uninstall-html-am uninstall-info-am uninstall-man \
- uninstall-man1 uninstall-pdf-am uninstall-ps-am
+ mostlyclean-aminfo mostlyclean-generic mostlyclean-libtool pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-dvi-am \
+ uninstall-hook uninstall-html-am uninstall-info-am \
+ uninstall-man uninstall-man1 uninstall-pdf-am uninstall-ps-am
# Link gawk.1 to pgawk.1
@@ -721,10 +805,11 @@ awkcard.tr: awkcard.in
sed 's:SRCDIR:$(srcdir):' < $(srcdir)/awkcard.in > awkcard.tr
awkcard.ps: $(CARDFILES)
- $(TROFF) $(CARDSRC) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps
+ $(TROFF) $(CARDSRC) | $(SEDME) | cat $(srcdir)/setter.outline - | $(SEDME2) > awkcard.ps
awkcard.nc: $(CARDFILES)
- $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - > awkcard.ps && touch awkcard.nc
+ $(TROFF) $(CARDSRC_N) | $(SEDME) | cat $(srcdir)/setter.outline - | $(SEDME2) > awkcard.ps && touch awkcard.nc
+
# 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:
diff --git a/doc/awkcard.in b/doc/awkcard.in
index 30591403..4642918e 100644
--- a/doc/awkcard.in
+++ b/doc/awkcard.in
@@ -1,7 +1,7 @@
.\" AWK Reference Card --- Arnold Robbins, arnold@skeeve.com
.\"
.\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-.\" 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+.\" 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
.\"
.\" Permission is granted to make and distribute verbatim copies of
.\" this reference card provided the copyright notice and this permission
@@ -48,9 +48,9 @@
.in +.2i
.nf
\*(FRAction Statements 7
-Arrays 11
+Arrays 10
Awk Program Execution 4
-Bit Manipulation Functions (\*(GK) 16
+Bit Manipulation Functions (\*(GK) 15
Bug Reports 2
Closing Redirections 12
Command Line Arguments (standard) 2
@@ -59,28 +59,28 @@ Command Line Arguments (\*(MK) 4
Conversions And Comparisons 9
Copying Permissions 18
Definitions 2
-Dynamic Extensions (\*(GK) 14
-Environment Variables (\*(GK) 16
+Dynamic Extensions (\*(GK) 16
+Environment Variables (\*(GK) 17
Escape Sequences 8
-Expressions 11
+Expressions 10
Fields 6
FTP/HTTP Information 18
-Historical Features (\*(GK) 10
-Input Control 12
-Internationalization (\*(GK) 18
+Historical Features (\*(GK) 17
+Input Control 11
+Internationalization (\*(GK) 16
Lines And Statements 5
-Localization (\*(GK) 17
-Numeric Functions 14
-Output Control 12
+Localization (\*(GK) 16
+Numeric Functions 15
+Output Control 11
Pattern Elements 7
-POSIX Character Classes (\*(GK) 6
+POSIX Character Classes 6
Printf Formats 13
Records 6
Regular Expressions 5
Signals (\*(PK) 4
-Special Filenames 14
-String Functions 15
-Time Functions (\*(GK) 16
+Special Filenames 12
+String Functions 14
+Time Functions (\*(GK) 15
User-defined Functions 17
Variables 8\*(CX
.in -.2i
@@ -101,7 +101,7 @@ Brian Kernighan and Michael Brennan who reviewed it.
.SL
.nf
\*(FRCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-2005, 2007 Free Software Foundation, Inc.
+2005, 2007, 2009 Free Software Foundation, Inc.
.nf
.BT
@@ -193,19 +193,7 @@ read the AWK program source from the file
\*(FIprog-file\*(FR, instead of from the first command
line argument. Multiple \*(FC\-f\*(FR options may be used.
T}
-\*(FC\-\^\-\*(FR signal the end of options.
-.TE
-.sp .5
-.fi
-\*(CLThe following options are accepted by both \*(NK and \*(GK
-\*(CR(ignored by \*(GK, not in \*(MK).\*(CL
-.sp .5
-.nf
-.TS
-expand, tab(%);
-l lw(2.2i).
-\*(FC\-mf \*(FIval\*(FR%set the maximum number of fields to \*(FIval\fP
-\*(FC\-mr \*(FIval\*(FR%set the maximum record size to \*(FIval\fP\*(CX
+\*(FC\-\^\-\*(FR signal the end of options.\*(CX
.TE
.EB "\s+2\f(HBCOMMAND LINE ARGUMENTS (standard)\*(FR\s0"
@@ -273,8 +261,9 @@ uses \*(FCawkvars.out\*(FR.
T}
\*(FC\-\^\-exec \*(FIfile\*(FR%T{
read program text from \*(FIfile\fP. No other
-options are processed. Useful with \*(FC#!\fP.
+options are processed.
Also disables command-line variable assignments.
+Useful with \*(FC#!\fP.
T}
\*(FC\-\^\-gen\-po\*(FR%T{
process the program and print a GNU \*(FCgettext\*(FR
@@ -295,14 +284,14 @@ ls
l lw(2.2i).
\*(FC\-\^\-lint\*(FR[\*(FC=\*(FIvalue\*(FR]
%T{
-warn about constructs that are dubious
-or non-portable to other \*(AKs.
-With an optional argument of \*(FCfatal\*(FR,
+warn about dubios or non-portable constructs.
+If \*(FIvalue\*(FR is
+\*(FCfatal\*(FR,
lint warnings become fatal errors.
-With an optional argument of
+If \*(FIvalue\*(FR is
\*(FCinvalid\*(FR,
-only warnings about things that are
-actually invalid are issued. (This is not fully implemented yet.)
+only issue warnings about things that are
+actually invalid (not fully implemented yet).
T}
.T&
l lw(2.2i).
@@ -320,6 +309,13 @@ recognize octal and hexadecimal values in input data.
\*(FIUse this option with great caution!\*(FR
T}
.T&
+ls
+l lw(2.2i).
+\*(FC\-\^\-optimize\*(FR, \*(FC\-O\*(FR
+%T{
+enable some internal optimizations.
+T}
+.T&
l lw(2.2i).
\*(FC\-\^\-posix\*(FR%T{
disable common and GNU extensions.
@@ -356,8 +352,13 @@ l lw(2.2i).
\*(FC\-\^\-source '\*(FItext\*(FC'\*(FR
%T{
use \*(FItext\*(FR as AWK program source code.
+T}
+.T&
+l lw(2.2i).
\*(FC\-\^\-version\*(FR%T{
-print version information on \*(FCstdout\fP
+print version \" information
+info
+on \*(FCstdout\fP
and exit zero.
T}
.T&
@@ -372,7 +373,7 @@ T}
.fi
In compatibility mode,
any other options are flagged as invalid, but are otherwise ignored.
-Normally, if there is program text, unknown options
+Normally, if there is program text, unknown
options are passed on to the AWK program in
\*(FCARGV\*(FR
for processing.\*(CB
@@ -586,12 +587,12 @@ this feature in \*(GK.\*(CX
.BT
-.\" --- POSIX Character Classes (gawk)
+.\" --- POSIX Character Classes
.ES
.fi
\*(CDIn regular expressions, within character ranges
(\*(FC[\*(FR...\*(FC]\*(FR),
-the notation \*(FC[[:\*(FIclass\*(FC:]]\*(FR defines character classes:
+the notation \*(FC[[:\*(FIclass\*(FC:]]\*(FR defines character classes \*(CR(not \*(MK\fP)\*(CD:
.sp .5
.TS
center, tab(~);
@@ -605,9 +606,9 @@ lp8 lp8 lp8 lp8.
.TE
.fi
.sp .5
-Recognition of these character classes is disabled
-when \*(FC\-\-traditional\*(FR is supplied.\*(CB
-.EB "\s+2\f(HBPOSIX CHARACTER CLASSES (\*(GK\f(HB)\*(FR\s0"
+\*(CB\*(FRRecognition of these character classes is disabled
+when \*(FC\-\-traditional\*(FR is supplied.\*(CL
+.EB "\s+2\f(HBPOSIX CHARACTER CLASSES\*(FR\s0"
.\" --- Records
.ES
@@ -715,7 +716,6 @@ It matches all input records starting with a record that matches
It does not combine with any other pattern expression.\*(CX
.EB "\s+2\f(HBPATTERN ELEMENTS\*(FR\s0"
-
.\" --- Action Statements
.ES
.fi
@@ -1020,31 +1020,6 @@ Uninitialized variables have the numeric value 0 and the string value
.BT
-.\" --- Historical Features
-.ES
-.fi
-\*(CD1. It is possible to call the \*(FClength()\fP
-built-in function not only with no argument, but even without parentheses.
-This feature is marked as ``deprecated'' in the POSIX standard, and \*(GK
-issues a warning about its use if \*(FC\-\^\-lint\fP
-is specified on the command line.
-.sp .5
-2. The \*(FCcontinue\fP
-and \*(FCbreak\fP statements may be used outside the body of a
-\*(FCwhile\*(FR, \*(FCfor\*(FR, or \*(FCdo\fP loop.
-Historical AWK implementations have treated such usage as
-equivalent to the \*(FCnext\fP statement.
-\*(GK supports this usage if \*(FC\-\^\-traditional\fP
-is specified.\*(CB
-.EB "\s+2\f(HBHISTORICAL FEATURES (\*(GK\f(HB)\*(FR\s0"
-
-.ES
-\*(CX
-.sp 47
-.EB "\s+2\f(HBNOTES\*(FR\s0"
-
-.BT
-
.\" --- Arrays
.ES
.fi
@@ -1199,7 +1174,7 @@ This usage is no longer supported.
.in -.2i
.sp .5
.fi
-\*(FCgetline\*(FR returns 0 on end of file and \-1 on an error.
+\*(FCgetline\*(FR returns 1 on success, 0 on end of file, and \-1 on an error.
\*(CBUpon an error, \*(FCERRNO\*(FR contains a string describing
the problem.\*(CX
.EB "\s+2\f(HBINPUT CONTROL\*(FR\s0"
@@ -1215,7 +1190,7 @@ flush any buffers associated
with the open output file or pipe \*(FIfile\*(FR.\*(CD
\*(CBIf no \*(FIfile\fP, then flush standard output.
If \*(FIfile\fP is null, then flush all open output files and pipes
-\*(CR(not \*(NK)\*(CD.
+(\*(GK and \*(NK)\*(CD.
.ti -.2i
\*(FCprint\fP
.br
@@ -1262,6 +1237,9 @@ print data down a pipeline to co-process \*(FIcmd\*(FR.\*(CX
.in -.2i
.EB "\s+2\f(HBOUTPUT CONTROL\*(FR\s0"
+.BT
+
+.\" --- Closing Redirections
.ES
.fi
.in +.2i
@@ -1285,6 +1263,85 @@ if there was a system problem.
the error.\*(CX
.EB "\s+2\f(HBCLOSING REDIRECTIONS\*(FR\s0"
+.\" --- Special Filenames
+.ES
+.fi
+\*(CDWhen doing I/O redirection from either \*(FCprint\fP
+or \*(FCprintf\fP into a file or via \*(FCgetline\fP
+from a file, all three implementations of \*(FCawk\fP
+recognize certain special filenames internally. These filenames
+allow access to open file descriptors inherited from the
+parent process (usually the shell).
+These filenames may also be used on the command line to name data files.
+The filenames are:
+.sp .5
+.TS
+expand;
+l lw(2i).
+\*(FC"\-"\fP standard input
+\*(FC/dev/stdin\fP standard input \*(CR(not \*(MK)\*(CD
+\*(FC/dev/stdout\fP standard output
+\*(FC/dev/stderr\fP standard error output
+.TE
+.sp .5
+.fi
+\*(CBThe following names are specific to \*(GK.
+.sp .5
+.in +.2i
+.ti -.2i
+\*(FC/dev/fd/\^\*(FIn\*(FR
+.br
+File associated with the open file descriptor \*(FIn\*(FR.
+.ti -.2i
+\*(FC/inet/tcp/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
+.br
+File for TCP/IP connection on local port \*(FIlport\*(FR to
+remote host \*(FIrhost\*(FR on remote port \*(FIrport\*(FR.
+Use a port of \*(FC0\*(FR to have the system pick a port.
+Usable only with the \*(FC|&\*(FR two-way I/O operator.
+.ti -.2i
+\*(FC/inet/udp/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
+.br
+Similar, but use UDP/IP instead of TCP/IP.
+.ti -.2i
+\*(CR\*(FC/inet/raw/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
+.br
+.\" Similar, but use raw IP sockets.
+Reserved for future use.\*(CB
+.in -.2i
+.sp .5
+.fi
+Other special filenames provide access to information about the running
+\*(FCgawk\fP process.
+Reading from these files returns a single record.
+The filenames and what they return are:\*(FR
+.sp .5
+.TS
+expand;
+l lw(2i).
+\*(FC/dev/pid\fP process ID of current process
+\*(FC/dev/ppid\fP parent process ID of current process
+\*(FC/dev/pgrpid\fP process group ID of current process
+\*(FC/dev/user\fP T{
+.nf
+a single newline-terminated record.
+The fields are separated with spaces.
+\*(FC$1\fP is the return value of \*(FIgetuid\*(FR(2),
+\*(FC$2\fP is the return value of \*(FIgeteuid\*(FR(2),
+\*(FC$3\fP is the return value of \*(FIgetgid\*(FR(2) , and
+\*(FC$4\fP is the return value of \*(FIgetegid\*(FR(2).
+.fi
+Any additional fields are the group IDs returned
+by \*(FIgetgroups\*(FR(2). Multiple groups may not be
+supported on all systems.
+T}
+.TE
+.sp .5
+.fi
+\*(CRThese filenames are now obsolete.
+Use the \*(FCPROCINFO\fP array to obtain the information they provide.\*(CL
+.EB "\s+2\f(HBSPECIAL FILENAMES\*(FR\s0"
+
.BT
.\" --- Printf Formats
@@ -1296,8 +1353,7 @@ accept the following conversion specification formats:
.sp .5
.nf
\*(FC%c\fP an \s-1ASCII\s+1 character
-\*(FC%d\fP a decimal number (the integer part)
-\*(FC%i\fP a decimal number (the integer part)
+\*(FC%d\fP, \*(FC%i\fP a decimal number (the integer part)
\*(FC%e\fP a floating point number of the form
\*(FC[\-]d.dddddde[+\^\-]dd\*(FR
\*(FC%E\fP like \*(FC%e\fP, but use \*(FCE\fP instead of \*(FCe\*(FR
@@ -1360,12 +1416,14 @@ T}
trailing zeros are not removed.
T}
\*(FC0\fP T{
-a leading zero acts as a flag, indicating output
-should be padded with zeros instead of spaces.
+pad output with zeros instead of spaces.
This applies even to non-numeric output formats.
Only has an effect when the field width is wider
than the value to be printed.
T}
+\*(CB\*(FC'\*(FR T{
+use the locale's thousands separator for \*(FC%d\fP, \*(FC%i\fP, and \*(FC%u\fP.\*(CD
+T}
\*(FIwidth\fP T{
pad the field to this width. The field is normally
padded with spaces. If the \*(FC0\fP flag has been used,
@@ -1391,8 +1449,10 @@ T}
.TE
.sp .5
.fi
+.ig
The dynamic \*(FIwidth\fP and \*(FIprec\fP capabilities of the ANSI C
\*(FCprintf()\fP routines are supported.
+..
A \*(FC*\fP in place of either the \*(FIwidth\fP or \*(FIprec\fP
specifications causes their values to be taken from
the argument list to \*(FCprintf\fP or \*(FCsprintf()\*(FR.
@@ -1403,129 +1463,6 @@ with a dynamic width or precision.\*(CX
.BT
-.\" --- Special Filenames
-.ES
-.fi
-\*(CDWhen doing I/O redirection from either \*(FCprint\fP
-or \*(FCprintf\fP into a file or via \*(FCgetline\fP
-from a file, all three implementations of \*(FCawk\fP
-recognize certain special filenames internally. These filenames
-allow access to open file descriptors inherited from the
-parent process (usually the shell).
-These filenames may also be used on the command line to name data files.
-The filenames are:
-.sp .5
-.TS
-expand;
-l lw(2i).
-\*(FC"\-"\fP standard input
-\*(FC/dev/stdin\fP standard input \*(CR(not \*(MK)\*(CD
-\*(FC/dev/stdout\fP standard output
-\*(FC/dev/stderr\fP standard error output
-.TE
-.sp .5
-.fi
-\*(CBThe following names are specific to \*(GK.
-.sp .5
-.in +.2i
-.ti -.2i
-\*(FC/dev/fd/\^\*(FIn\*(FR
-.br
-File associated with the open file descriptor \*(FIn\*(FR.
-.ti -.2i
-\*(FC/inet/tcp/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
-.br
-File for TCP/IP connection on local port \*(FIlport\*(FR to
-remote host \*(FIrhost\*(FR on remote port \*(FIrport\*(FR.
-Use a port of \*(FC0\*(FR to have the system pick a port.
-Usable only with the \*(FC|&\*(FR two-way I/O operator.
-.ti -.2i
-\*(FC/inet/udp/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
-.br
-Similar, but use UDP/IP instead of TCP/IP.
-.ti -.2i
-\*(CR\*(FC/inet/raw/\*(FIlport\*(FC/\*(FIrhost\*(FC/\*(FIrport\*(FR
-.br
-.\" Similar, but use raw IP sockets.
-Reserved for future use.\*(CB
-.in -.2i
-.sp .5
-.fi
-Other special filenames provide access to information about the running
-\*(FCgawk\fP process.
-Reading from these files returns a single record.
-The filenames and what they return are:\*(FR
-.sp .5
-.TS
-expand;
-l lw(2i).
-\*(FC/dev/pid\fP process ID of current process
-\*(FC/dev/ppid\fP parent process ID of current process
-\*(FC/dev/pgrpid\fP process group ID of current process
-\*(FC/dev/user\fP T{
-.nf
-a single newline-terminated record.
-The fields are separated with spaces.
-\*(FC$1\fP is the return value of \*(FIgetuid\*(FR(2),
-\*(FC$2\fP is the return value of \*(FIgeteuid\*(FR(2),
-\*(FC$3\fP is the return value of \*(FIgetgid\*(FR(2) , and
-\*(FC$4\fP is the return value of \*(FIgetegid\*(FR(2).
-.fi
-Any additional fields are the group IDs returned
-by \*(FIgetgroups\*(FR(2). Multiple groups may not be
-supported on all systems.
-T}
-.TE
-.sp .5
-.fi
-\*(CRThese filenames are now obsolete.
-Use the \*(FCPROCINFO\fP array to obtain the information they provide.\*(CL
-.EB "\s+2\f(HBSPECIAL FILENAMES\*(FR\s0"
-.sp .5
-.\" --- Builtin Numeric Functions
-.ES
-.fi
-.TS
-expand;
-l lw(2i).
-\*(CD\*(FCatan2(\*(FIy\*(FC, \*(FIx\*(FC)\*(FR the arctangent of \*(FIy/x\fP in radians.
-\*(FCcos(\*(FIexpr\*(FC)\*(FR the cosine of \*(FIexpr\fP, which is in radians.
-\*(FCexp(\*(FIexpr\*(FC)\*(FR the exponential function (\*(FIe \*(FC^ \*(FIx\*(FR).
-\*(FCint(\*(FIexpr\*(FC)\*(FR truncates to integer.
-\*(FClog(\*(FIexpr\*(FC)\*(FR the natural logarithm function (base \*(FIe\^\*(FR).
-\*(FCrand()\fP a random number between 0 and 1 (0 \(<= \*(FIN\fP < 1).
-\*(FCsin(\*(FIexpr\*(FC)\*(FR the sine of \*(FIexpr\fP, which is in radians.
-\*(FCsqrt(\*(FIexpr\*(FC)\*(FR the square root function.
-\&\*(FCsrand(\*(FR[\*(FIexpr\^\*(FR]\*(FC)\*(FR T{
-uses \*(FIexpr\fP as a new seed for the random number
-generator. If no \*(FIexpr\fP, the time of day is used.
-Returns previous seed for the random number
-generator.\*(CX
-T}
-.TE
-.EB "\s+2\f(HBNUMERIC FUNCTIONS\*(FR\s0"
-.sp .5
-.\" --- Extensions
-.ES
-.fi
-.in +.2i
-.ti -.2i
-\*(CD\*(FCextension(\*(FIlib\*(FC, \*(FIfunc\*(FC)\*(FR
-.br
-dynamically load the shared library
-\*(FIlib\*(FR
-and call
-\*(FIfunc\*(FR
-in it to initialize the library.
-This adds new built-in functions to \*(GK.
-It returns the value returned by
-\*(FIfunc\*(FR.\*(CB
-.in -.2i
-.EB "\s+2\f(HBDYNAMIC EXTENSIONS (\*(GK\f(HB)\*(FR\s0"
-
-
-.BT
-
.\" --- Builtin String Functions
.ES
.fi
@@ -1662,7 +1599,30 @@ corresponding upper-case counterparts. Non-alphabetic characters are
left unchanged.\*(CX
.in -.2i
.EB "\s+2\f(HBSTRING FUNCTIONS (continued)\*(FR\s0"
-
+.sp .6
+.\" --- Builtin Numeric Functions
+.ES
+.fi
+.TS
+expand;
+l lw(2i).
+\*(CD\*(FCatan2(\*(FIy\*(FC, \*(FIx\*(FC)\*(FR the arctangent of \*(FIy/x\fP in radians.
+\*(FCcos(\*(FIexpr\*(FC)\*(FR the cosine of \*(FIexpr\fP, which is in radians.
+\*(FCexp(\*(FIexpr\*(FC)\*(FR the exponential function (\*(FIe \*(FC^ \*(FIx\*(FR).
+\*(FCint(\*(FIexpr\*(FC)\*(FR truncates to integer.
+\*(FClog(\*(FIexpr\*(FC)\*(FR the natural logarithm function (base \*(FIe\^\*(FR).
+\*(FCrand()\fP a random number between 0 and 1 (0 \(<= \*(FIN\fP < 1).
+\*(FCsin(\*(FIexpr\*(FC)\*(FR the sine of \*(FIexpr\fP, which is in radians.
+\*(FCsqrt(\*(FIexpr\*(FC)\*(FR the square root function.
+\&\*(FCsrand(\*(FR[\*(FIexpr\^\*(FR]\*(FC)\*(FR T{
+uses \*(FIexpr\fP as a new seed for the random number
+generator. If no \*(FIexpr\fP, the time of day is used.
+Returns previous seed for the random number
+generator.\*(CX
+T}
+.TE
+.EB "\s+2\f(HBNUMERIC FUNCTIONS\*(FR\s0"
+.sp .6
.\" --- Builtin Time Functions
.ES
.fi
@@ -1699,7 +1659,7 @@ returns the current time of day as the number of
seconds since the Epoch.\*(CB
.in -.2i
.EB "\s+2\f(HBTIME FUNCTIONS (\*(GK\f(HB)\*(FR\s0"
-
+.sp .6
.\" --- Builtin Bit Manipulation Functions
.ES
.fi
@@ -1741,25 +1701,116 @@ teturns the bitwise XOR of the values provided by
.in -.2i
.EB "\s+2\f(HBBIT MANIPULATION FUNCTIONS (\*(GK\f(HB)\*(FR\s0"
-.\" --- Environment Variables
+.BT
+
+.\" --- Extensions
.ES
.fi
-\*(CDThe environment variable \*(FCAWKPATH\fP specifies a search path to use
-when finding source files named with the \*(FC\-f\fP
-option.
-The default path is
-\*(FC".:/usr/local/share/awk"\*(FR.
-.\" if this variable does not exist.
-.\" (The actual directory may vary,
-.\" depending upon how \*(GK was built and installed.)
-If a file name given to the \*(FC\-f\fP option contains a ``/'' character,
-no path search is performed.
+.in +.2i
+.ti -.2i
+\*(CD\*(FCextension(\*(FIlib\*(FC, \*(FIfunc\*(FC)\*(FR
+.br
+dynamically load the shared library
+\*(FIlib\*(FR
+and call
+\*(FIfunc\*(FR
+in it to initialize the library.
+This adds new built-in functions to \*(GK.
+It returns the value returned by
+\*(FIfunc\*(FR.\*(CB
+.in -.2i
+.EB "\s+2\f(HBDYNAMIC EXTENSIONS (\*(GK\f(HB)\*(FR\s0"
+
+.\" --- Builtin Internationalization Functions
+.ES
+.fi
+\*(CD\*(GK
+provides the following functions for runtime message translation.
+.in +.2i
.sp .5
-If \*(FCPOSIXLY_CORRECT\fP exists
-.\" in the environment,
-then \*(GK
-behaves exactly as if the \*(FC\-\^\-posix\fP option had been given.\*(CB
-.EB "\s+2\f(HBENVIRONMENT VARIABLES (\*(GK\f(HB)\*(FR\s0"
+.ti -.2i
+\*(FCbindtextdomain(\*(FIdirectory \*(FR[\*(FC, \*(FIdomain\*(FR]\*(FC)\*(FR
+.br
+specifies the directory where \*(GK looks for the \*(FC\&.mo\*(FR
+files, in case they
+will not or cannot be placed in the ``standard'' locations
+(e.g., during testing.)
+It returns the directory where \*(FIdomain\*(FR is ``bound.''
+.sp .5
+The default \*(FIdomain\*(FR is the value of \*(FCTEXTDOMAIN\*(FR.
+When \*(FIdirectory\*(FR is the null string (\*(FC"\^"\*(FR),
+\*(FCbindtextdomain()\*(FR returns the current binding for the
+given \*(FIdomain\*(FR.
+.ti -.2i
+\*(FCdcgettext(\*(FIstring \*(FR[\*(FC, \*(FIdomain \*(FR[\*(FC, \*(FIcategory\*(FR]]\*(FC)\*(FR
+.br
+returns the translation of \*(FIstring\*(FR in text domain
+\*(FIdomain\*(FR for locale category \*(FIcategory\*(FR.
+The default value for \*(FIdomain\*(FR is the current value of \*(FCTEXTDOMAIN\*(FR.
+The default value for \*(FIcategory\*(FR is \*(FC"LC_MESSAGES"\*(FR.
+.sp .5
+If you supply a value for \*(FIcategory\*(FR, it must be a string equal to
+one of the known locale categories.
+You must also supply a text domain. Use \*(FCTEXTDOMAIN\*(FR
+to use the current domain.
+.ti -.2i
+\*(FCdcngettext(\*(FIstring1\*(FC, \*(FIstring2\*(FC, \*(FInumber\*(FR [\*(FC, \*(FIdom \*(FR[\*(FC, \*(FIcat\*(FR]]\*(FC)\*(FR
+.br
+returns the plural form used for \*(FInumber\*(FR of the translation of
+\*(FIstring1\*(FR and \*(FIstring2\*(FR in text domain
+\*(FIdom\*(FR for locale category \*(FIcat\*(FR.
+The default value for \*(FIdom\*(FR is the current value of \*(FCTEXTDOMAIN\*(FR.
+\*(FC"LC_MESSAGES"\*(FR
+is the default value for \*(FIcat\*(FR.
+.sp .5
+If you supply a value for \*(FIcat\*(FR, it must be a string equal to
+one of the known locale categories.
+You must also supply a text domain. Use \*(FCTEXTDOMAIN\*(FR
+to use the current domain.\*(CB
+.in -.2i
+.EB "\s+2\f(HBINTERNATIONALIZATION (\*(GK\f(HB)\*(FR\s0"
+
+.\" --- Localization
+.ES
+.fi
+\*(CDThere are several steps involved in producing and running a localizable
+\*(AK program.
+.sp .5
+1. Add a \*(FCBEGIN\*(FR action to assign a value to the
+\*(FCTEXTDOMAIN\*(FR variable to set the text domain for
+your program.
+.sp .5
+.ti +5n
+\*(FCBEGIN { TEXTDOMAIN = "myprog" }\*(FR
+.sp .5
+This allows \*(GK to find the \*(FC\&.mo\*(FR
+file associated with your program.
+Without this step, \*(GK uses the \*(FCmessages\*(FR text domain,
+which probably won't work.
+.sp .5
+2. Mark all strings that should be translated with leading underscores.
+.sp .5
+3. Use the
+\*(FCbindtextdomain()\*(FR,
+\*(FCdcgettext()\*(FR,
+and/or
+\*(FCdcngettext()\*(FR
+functions in your program, as appropriate.
+.sp .5
+4. Run
+.sp .5
+.ti +5n
+\*(FCgawk \-\^\-gen\-po \-f myprog.awk > myprog.po\*(FR
+.sp .5
+to generate a \*(FC\&.po\*(FR
+file for your program.
+.sp .5
+5. Provide appropriate translations, and build and install a corresponding
+\*(FC\&.mo\*(FR file.
+.sp .5
+The internationalization features are described in full detail in \*(AM.\*(CB
+.EB "\s+2\f(HBLOCALIZATION (\*(GK\f(HB)\*(FR\s0"
+
.BT
@@ -1815,112 +1866,60 @@ may be used in place of
\*(CRNote: This usage is deprecated.\*(CX
.EB "\s+2\f(HBUSER-DEFINED FUNCTIONS\*(FR\s0"
-.\" --- Localization
+.\" --- Environment Variables
.ES
.fi
-\*(CDThere are several steps involved in producing and running a localizable
-\*(AK program.
-.sp .5
-1. Add a \*(FCBEGIN\*(FR action to assign a value to the
-\*(FCTEXTDOMAIN\*(FR variable to set the text domain for
-your program.
-.sp .5
-.ti +5n
-\*(FCBEGIN { TEXTDOMAIN = "myprog" }\*(FR
-.sp .5
-This allows \*(GK to find the \*(FC\&.mo\*(FR
-file associated with your program.
-Without this step, \*(GK uses the \*(FCmessages\*(FR text domain,
-which probably won't work.
-.sp .5
-2. Mark all strings that should be translated with leading underscores.
-.sp .5
-3. Use the
-\*(FCbindtextdomain()\*(FR,
-\*(FCdcgettext()\*(FR,
-and/or
-\*(FCdcngettext()\*(FR
-functions in your program, as appropriate.
-.sp .5
-4. Run
-.sp .5
-.ti +5n
-\*(FCgawk \-\^\-gen\-po \-f myprog.awk > myprog.po\*(FR
-.sp .5
-to generate a \*(FC\&.po\*(FR
-file for your program.
-.sp .5
-5. Provide appropriate translations, and build and install a corresponding
-\*(FC\&.mo\*(FR file.
+\*(CDThe environment variable \*(FCAWKPATH\fP specifies a search path to use
+when finding source files named with the \*(FC\-f\fP
+option.
+The default path is
+\*(FC".:/usr/local/share/awk"\*(FR.
+.\" if this variable does not exist.
+.\" (The actual directory may vary,
+.\" depending upon how \*(GK was built and installed.)
+If a file name given to the \*(FC\-f\fP option contains a ``/'' character,
+no path search is performed.
.sp .5
-The internationalization features are described in full detail in \*(AM.\*(CB
-.EB "\s+2\f(HBLOCALIZATION (\*(GK\f(HB)\*(FR\s0"
-
-
-.BT
+If \*(FCPOSIXLY_CORRECT\fP exists
+.\" in the environment,
+then \*(GK
+behaves exactly as if the \*(FC\-\^\-posix\fP option had been given.\*(CB
+.EB "\s+2\f(HBENVIRONMENT VARIABLES (\*(GK\f(HB)\*(FR\s0"
-.\" --- Builtin Internationalization Functions
+.\" --- Historical Features
.ES
.fi
-\*(CD\*(GK
-provides the following functions for runtime message translation.
-.in +.2i
-.sp .5
-.ti -.2i
-\*(FCbindtextdomain(\*(FIdirectory \*(FR[\*(FC, \*(FIdomain\*(FR]\*(FC)\*(FR
-.br
-specifies the directory where \*(GK looks for the \*(FC\&.mo\*(FR
-files, in case they
-will not or cannot be placed in the ``standard'' locations
-(e.g., during testing.)
-It returns the directory where \*(FIdomain\*(FR is ``bound.''
-.sp .5
-The default \*(FIdomain\*(FR is the value of \*(FCTEXTDOMAIN\*(FR.
-When \*(FIdirectory\*(FR is the null string (\*(FC"\^"\*(FR),
-\*(FCbindtextdomain()\*(FR returns the current binding for the
-given \*(FIdomain\*(FR.
-.ti -.2i
-\*(FCdcgettext(\*(FIstring \*(FR[\*(FC, \*(FIdomain \*(FR[\*(FC, \*(FIcategory\*(FR]]\*(FC)\*(FR
-.br
-returns the translation of \*(FIstring\*(FR in text domain
-\*(FIdomain\*(FR for locale category \*(FIcategory\*(FR.
-The default value for \*(FIdomain\*(FR is the current value of \*(FCTEXTDOMAIN\*(FR.
-The default value for \*(FIcategory\*(FR is \*(FC"LC_MESSAGES"\*(FR.
-.sp .5
-If you supply a value for \*(FIcategory\*(FR, it must be a string equal to
-one of the known locale categories.
-You must also supply a text domain. Use \*(FCTEXTDOMAIN\*(FR
-to use the current domain.
-.ti -.2i
-\*(FCdcngettext(\*(FIstring1\*(FC, \*(FIstring2\*(FC, \*(FInumber\*(FR [\*(FC, \*(FIdom \*(FR[\*(FC, \*(FIcat\*(FR]]\*(FC)\*(FR
-.br
-returns the plural form used for \*(FInumber\*(FR of the translation of
-\*(FIstring1\*(FR and \*(FIstring2\*(FR in text domain
-\*(FIdom\*(FR for locale category \*(FIcat\*(FR.
-The default value for \*(FIdom\*(FR is the current value of \*(FCTEXTDOMAIN\*(FR.
-\*(FC"LC_MESSAGES"\*(FR
-is the default value for \*(FIcat\*(FR.
+\*(CDIt is possible to call the \*(FClength()\fP
+built-in function not only with no argument, but even without parentheses.
+This feature is marked as ``deprecated'' in the POSIX standard, and \*(GK
+issues a warning about its use if \*(FC\-\^\-lint\fP
+is specified on the command line.
.sp .5
-If you supply a value for \*(FIcat\*(FR, it must be a string equal to
-one of the known locale categories.
-You must also supply a text domain. Use \*(FCTEXTDOMAIN\*(FR
-to use the current domain.\*(CB
-.in -.2i
-.EB "\s+2\f(HBINTERNATIONALIZATION (\*(GK\f(HB)\*(FR\s0"
+The \*(FCcontinue\fP
+and \*(FCbreak\fP statements may be used outside the body of a
+\*(FCwhile\*(FR, \*(FCfor\*(FR, or \*(FCdo\fP loop.
+Historical AWK implementations have treated such usage as
+equivalent to the \*(FCnext\fP statement.
+\*(GK supports this usage if \*(FC\-\^\-traditional\fP
+is specified.\*(CB
+.EB "\s+2\f(HBHISTORICAL FEATURES (\*(GK\f(HB)\*(FR\s0"
+
+.BT
.\" --- FTP/HTTP Information
.ES
.nf
\*(CDHost: \*(FCftp.gnu.org\*(FR
-File: \*(FC/gnu/gawk/gawk-3.1.6.tar.gz\fP
+File: \*(FC/gnu/gawk/gawk-3.1.7.tar.gz\fP
.in +.2i
.fi
GNU \*(AK (\*(GK). There may be a later version.
.in -.2i
.nf
.sp .5
-\*(FChttp://cm.bell-labs.com/who/bwk/awk.tar.gz\fP
+\*(FChttp://www.cs.princeton.edu/~bwk/btl.mirror/
+awk.tar.gz\fP
.in +.2i
.fi
\*(NK. This version requires an ANSI C compiler;
@@ -1928,11 +1927,15 @@ GCC (the GNU Compiler Collection) works well.
.in -.2i
.nf
.sp .5
-Host: \*(FCftp.whidbey.net\*(FR
-File: \*(FC/pub/brennan/mawk1.3.3.tar.gz\fP
+... Host: \*(FCftp.whidbey.net\*(FR
+... File: \*(FC/pub/brennan/mawk1.3.3.tar.gz\fP
+... \*(FChttp://www.skeeve.com/gawk/mawk1.3.3.tar.gz\fP
+Host: \*(FCinvisible-island.net\*(FR
+File: \*(FC/mawk/mawk.tar.gz\fP
.in +.2i
.fi
-Michael Brennan's \*(MK. There may be a newer version.\*(CX
+Michael Brennan's \*(MK. Thomas Dickey is now
+maintaining it.\*(CX
.in -.2i
.EB "\s+2\f(HBFTP/HTTP INFORMATION\*(FR\s0"
@@ -1941,7 +1944,7 @@ Michael Brennan's \*(MK. There may be a newer version.\*(CX
.ES
.fi
\*(CDCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-2007 Free Software Foundation, Inc.
+2007, 2009 Free Software Foundation, Inc.
.sp .5
Permission is granted to make and distribute verbatim copies of this
reference card provided the copyright notice and this permission notice
@@ -1957,4 +1960,11 @@ reference card into another language, under the above conditions for
modified versions, except that this permission notice may be stated in a
translation approved by the Foundation.\*(CX
.EB "\s+2\f(HBCOPYING PERMISSIONS\*(FR\s0"
+.\" Need the BT here to get the final page number
+
+.ES
+\*(CX
+.sp 28
+.EB "\s+2\f(HBNOTES\*(FR\s0"
+
.BT
diff --git a/doc/gawk.1 b/doc/gawk.1
index 3e950452..2e8c31c6 100644
--- a/doc/gawk.1
+++ b/doc/gawk.1
@@ -22,7 +22,7 @@
. if \w'\(rq' .ds rq "\(rq
. \}
.\}
-.TH GAWK 1 "Oct 19 2007" "Free Software Foundation" "Utility Commands"
+.TH GAWK 1 "Jul 10 2009" "Free Software Foundation" "Utility Commands"
.SH NAME
gawk \- pattern scanning and processing language
.SH SYNOPSIS
@@ -190,6 +190,19 @@ They are ignored by
since
.I gawk
has no pre-defined limits.
+(Current versions of the Bell Laboratories
+.I awk
+no longer accept them.)
+.TP
+.PD 0
+.B \-O
+.TP
+.PD
+.B \-\^\-optimize
+Enable optimizations upon the internal representation of the program.
+Currently, this includes just simple constant-folding. The
+.I gawk
+maintainer hopes to add additional optimizations over time.
.TP
.PD 0
.B "\-W compat"
@@ -491,7 +504,6 @@ This is also useful when reporting bugs.
.IR "GNU Coding Standards" ,
these options cause an immediate, successful exit.)
.TP
-.PD 0
.B \-\^\-
Signal the end of options. This is useful to allow further arguments to the
\*(AK program itself to start with a \*(lq\-\*(rq.
@@ -1909,7 +1921,7 @@ below.)
.PP
The
.BR getline
-command returns 0 on end of file and \-1 on an error.
+command returns 1 on success, 0 on end of file, and \-1 on an error.
Upon an error,
.B ERRNO
contains a string describing the problem.
@@ -3467,15 +3479,23 @@ Scott Deifik is the current DOS maintainer. Pat Rankin did the
port to VMS, and Michal Jaegermann did the port to the Atari ST.
The port to OS/2 was done by Kai Uwe Rommel, with contributions and
help from Darrel Hankerson.
-Juan M.\& Guerrero now maintains the OS/2 port.
+Andreas Buening now maintains the OS/2 port.
Fred Fish supplied support for the Amiga,
and Martin Brown provided the BeOS port.
Stephen Davies provided the original Tandem port, and
Matthew Woehlke provided changes for Tandem's POSIX-compliant systems.
+Ralf Wildenhues now maintains that port.
+.PP
+See the
+.I README
+file in the
+.I gawk
+distribution for current information about maintainers
+and which ports are currently supported.
.SH VERSION INFORMATION
This man page documents
.IR gawk ,
-version 3.1.6.
+version 3.1.7.
.SH BUG REPORTS
If you find a bug in
.IR gawk ,
@@ -3525,7 +3545,7 @@ provided valuable assistance during testing and debugging.
We thank him.
.SH COPYING PERMISSIONS
Copyright \(co 1989, 1991, 1992, 1993, 1994, 1995, 1996,
-1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2007
+1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2007, 2009
Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
diff --git a/doc/gawk.info b/doc/gawk.info
index 98e33fba..78249fcb 100644
--- a/doc/gawk.info
+++ b/doc/gawk.info
@@ -10,15 +10,15 @@ START-INFO-DIR-ENTRY
END-INFO-DIR-ENTRY
Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+2001, 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
This is Edition 3 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 3.1.6 (or later) version of the GNU
+Guide for GNU Awk', for the 3.1.7 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License", the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -27,9 +27,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
a. "A GNU Manual"
- b. "You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development."
+ b. "You have the freedom to copy and modify this GNU manual. Buying
+ copies from the FSF supports it in developing GNU and promoting
+ software freedom."

File: gawk.info, Node: Top, Next: Foreword, Up: (dir)
@@ -41,15 +41,15 @@ This file documents `awk', a program that you can use to select
particular records in a file and perform operations upon them.
Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+2001, 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
This is Edition 3 of `GAWK: Effective AWK Programming: A User's
-Guide for GNU Awk', for the 3.1.6 (or later) version of the GNU
+Guide for GNU Awk', for the 3.1.7 (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License", the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -58,9 +58,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
a. "A GNU Manual"
- b. "You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development."
+ b. "You have the freedom to copy and modify this GNU manual. Buying
+ copies from the FSF supports it in developing GNU and promoting
+ software freedom."
* Menu:
@@ -129,6 +129,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
* Comments:: Adding documentation to `gawk'
programs.
* Quoting:: More discussion of shell quoting issues.
+* DOS Quoting:: Quoting in MS-DOS Batch Files.
* Sample Data Files:: Sample data files for use in the
`awk' programs illustrated in this
Info file.
@@ -330,6 +331,7 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
* AWKPATH Variable:: Searching directories for `awk'
programs.
* Obsolete:: Obsolete Options and/or features.
+* Exit Status:: `gawk''s exit status.
* Undocumented:: Undocumented Options and Features.
* Known Bugs:: Known Bugs in `gawk'.
* Library Names:: How to best name private global variables
@@ -381,6 +383,8 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
* Simple Sed:: A Simple Stream Editor.
* Igawk Program:: A wrapper for `awk' that includes
files.
+* Signature Program:: People do amazing things with too much time
+ on their hands.
* V7/SVR3.1:: The major changes between V7 and System V
Release 3.1.
* SVR4:: Minor changes between System V Releases 3.1
@@ -939,14 +943,27 @@ File: gawk.info, Node: How To Contribute, Next: Acknowledgments, Prev: Manual
How to Contribute
=================
-As the maintainer of GNU `awk', I am starting a collection of publicly
-available `awk' programs. For more information, see
-`ftp://ftp.freefriends.org/arnold/Awkstuff'. If you have written an
-interesting `awk' program, or have written a `gawk' extension that you
-would like to share with the rest of the world, please contact me
-(<arnold@skeeve.com>). Making things available on the Internet helps
+As the maintainer of GNU `awk', I once thought that I would be able to
+manage a collection of publicly available `awk' programs and I even
+solicited contributions. Making things available on the Internet helps
keep the `gawk' distribution down to manageable size.
+ The initial collection of material, such as it is, is still available
+at `ftp://ftp.freefriends.org/arnold/Awkstuff'. In the hopes of doing
+something more broad, I acquired the `awk.info' domain.
+
+ However, I found that I could not dedicate enough time to managing
+contributed code: the archive did not grow and the domain went unused
+for several years.
+
+ Fortunately, late in 2008, a volunteer took on the task of setting up
+an `awk'-related web site `http://awk.info' and did a very nice job.
+
+ If you have written an interesting `awk' program, or have written a
+`gawk' extension that you would like to share with the rest of the
+world, please see `http://awk.info/?contribute' for how to contribute
+it to the web site.
+

File: gawk.info, Node: Acknowledgments, Prev: How To Contribute, Up: Preface
@@ -1001,11 +1018,11 @@ Ulrich Drepper, provided invaluable help and feedback for the design of
the internationalization features.
Nelson Beebe, Martin Brown, Andreas Buening, Scott Deifik, Darrel
-Hankerson, Isamu Hasegawa, Michal Jaegermann, Ju"rgen Kahrs, Pat Rankin,
-Kai Uwe Rommel, and Eli Zaretskii (in alphabetical order) make up the
-`gawk' "crack portability team." Without their hard work and help,
-`gawk' would not be nearly the fine program it is today. It has been
-and continues to be a pleasure working with this team of fine people.
+Hankerson, Michal Jaegermann, Ju"rgen Kahrs, Pat Rankin, Kai Uwe Rommel,
+and Eli Zaretskii (in alphabetical order) make up the `gawk' "crack
+portability team." Without their hard work and help, `gawk' would not
+be nearly the fine program it is today. It has been and continues to
+be a pleasure working with this team of fine people.
David and I would like to thank Brian Kernighan of Bell Laboratories
for invaluable assistance during the testing and debugging of `gawk',
@@ -1357,7 +1374,11 @@ File: gawk.info, Node: Quoting, Prev: Comments, Up: Running gawk
1.1.6 Shell-Quoting Issues
--------------------------
-For short to medium length `awk' programs, it is most convenient to
+* Menu:
+
+* DOS Quoting:: Quoting in MS-DOS Batch Files.
+
+ For short to medium length `awk' programs, it is most convenient to
enter the program on the `awk' command line. This is best done by
enclosing the entire program in single quotes. This is true whether
you are entering the program interactively at the shell prompt, or
@@ -1465,6 +1486,24 @@ program, it is probably best to move it into a separate file, where the
shell won't be part of the picture, and you can say what you mean.

+File: gawk.info, Node: DOS Quoting, Up: Quoting
+
+1.1.6.1 Quoting in MS-DOS Batch Files
+.....................................
+
+Although this Info file generally only worries about POSIX systems and
+the POSIX shell, the following issue arises often enough for many users
+that it is worth addressing.
+
+ Systems providing an MS-DOS compatible "shell" use the double-quote
+character for quoting, and make it difficult or impossible to include an
+escaped double-quote character in a command-line script. The following
+example, courtesy of Jeroen Brink, shows how to print all lines in a
+file surrounded by double quotes:
+
+ gawk "{ print \"\042\" $0 \"\042\" }" FILE
+
+
File: gawk.info, Node: Sample Data Files, Next: Very Simple, Prev: Running gawk, Up: Getting Started
1.2 Data Files for the Examples
@@ -1608,7 +1647,7 @@ different ways to do the same things shown here:
expand data | awk '{ if (x < length()) x = length() }
END { print "maximum line length is " x }'
- The input is processed by the `expand' utility to change tabs into
+ The input is processed by the `expand' utility to change TABs into
spaces, so the widths compared are actually the right-margin
columns.
@@ -3330,7 +3369,7 @@ characters carefully to prevent such problems. (If the data is not in
a form that is easy to process, perhaps you can massage it first with a
separate `awk' program.)
- Fields are normally separated by whitespace sequences (spaces, tabs,
+ Fields are normally separated by whitespace sequences (spaces, TABs,
and newlines), not by single spaces. Two spaces in a row do not
delimit an empty field. The default value of the field separator `FS'
is a string containing a single space, `" "'. If `awk' interpreted
@@ -3373,9 +3412,9 @@ expression matches a single space and nothing else (*note Regexp::).
There is an important difference between the two cases of `FS = " "'
(a single space) and `FS = "[ \t\n]+"' (a regular expression matching
-one or more spaces, tabs, or newlines). For both values of `FS',
+one or more spaces, TABs, or newlines). For both values of `FS',
fields are separated by "runs" (multiple adjacent occurrences) of
-spaces, tabs, and/or newlines. However, when the value of `FS' is
+spaces, TABs, and/or newlines. However, when the value of `FS' is
`" "', `awk' first strips leading and trailing whitespace from the
record and then decides where the fields are. For example, the
following pipeline prints `b':
@@ -3406,6 +3445,35 @@ concatenating `$1' through `$NF' together, separated by the value of
it is not part of the new `$0'. Finally, the last `print' statement
prints the new `$0'.
+ There is an additional subtlety to be aware of when using regular
+exressions for field splitting. It is not well-specified in the POSIX
+standard, or anywhere else, what `^' means when splitting fields. Does
+the `^' match only at the beginning of the entire record? Or is each
+field separator a new string? It turns out that different `awk'
+versions answer this question differently, and you should not rely on
+any specific behavior in your programs. (d.c.)
+
+ As a point of information, the Bell Labs `awk' allows `^' to match
+only at the beginning of the record. Versions of `gawk' after 3.1.6
+also work this way. For example:
+
+ $ echo 'xxAA xxBxx C' |
+ > nawk -F '(^x+)|( +)' '{ for (i = 1; i <= NF; i++) printf "-->%s<--\n", $i }'
+ -| --><--
+ -| -->AA<--
+ -| -->xxBxx<--
+ -| -->C<--
+
+ $ echo 'xxAA xxBxx C' |
+ > gawk-3.1.6 -F '(^x+)|( +)' '{ for (i = 1; i <= NF; i++) printf "-->%s<--\n", $i }'
+ -| --><--
+ -| -->AA<--
+ -| --><--
+ -| -->Bxx<--
+ -| -->C<--
+
+As mentioned, `gawk' now behaves like the Bell Labs `awk'.
+

File: gawk.info, Node: Single Character Fields, Next: Command Line Field Separator, Prev: Regexp Field Splitting, Up: Field Separators
@@ -3468,7 +3536,7 @@ separator.
argument to `-F' is `t', then `FS' is set to the TAB character. If you
type `-F\t' at the shell, without any quotes, the `\' gets deleted, so
`awk' figures that you really want your fields to be separated with
-tabs and not `t's. Use `-v FS="t"' or `-F"[t]"' on the command line if
+TABs and not `t's. Use `-v FS="t"' or `-F"[t]"' on the command line if
you really do want to separate your fields with `t's.
For example, let's use an `awk' program file called `baud.awk' that
@@ -3910,6 +3978,7 @@ processing on the next record _right now_. For example:
# value of `tmp' will be "" if t is 1
tmp = substr($0, 1, t - 1)
u = index(substr($0, t + 2), "*/")
+ offset = t + 2
while (u == 0) {
if (getline <= 0) {
m = "unexpected EOF or error"
@@ -3918,10 +3987,11 @@ processing on the next record _right now_. For example:
exit
}
u = index($0, "*/")
+ offset = 0
}
# substr expression will be "" if */
# occurred at end of line
- $0 = tmp substr($0, u + 2)
+ $0 = tmp substr($0, offset + u + 2)
}
print $0
}
@@ -4552,6 +4622,17 @@ width. Here is a list of the format-control letters:
65' outputs the letter `A'. (The output for a string value is the
first character of the string.)
+ NOTE: The `%c' format does _not_ handle values outside the
+ range 0-255. On most systems, values from 0-127 are within
+ the range of ASCII and will yield an ASCII character. Values
+ in the range 128-255 may format as characters in some
+ extended character set, or they may not. System 390 (IBM
+ architecture mainframe) systems use 8-bit characters, and
+ thus values from 0-255 yield the corresponding EBCDIC
+ character. Any value above 255 is treated as modulo 255;
+ i.e., the lowest eight bits of the value are used. The
+ locale and character set are always ignored.
+
`%d, %i'
These are equivalent; they both print a decimal integer. (The
`%i' specification is for compatibility with ISO C.)
@@ -5767,7 +5848,7 @@ Variables::). Numbers are converted using the `sprintf' function with
`CONVFMT' as the format specifier (*note String Functions::).
`CONVFMT''s default value is `"%.6g"', which prints a value with at
-least six significant digits. For some applications, you might want to
+most six significant digits. For some applications, you might want to
change it to specify more precision. On most modern machines, 17
digits is enough to capture a floating-point number's value exactly,
most of the time.(1)
@@ -6353,10 +6434,10 @@ these rules:
STRING attribute.
* Fields, `getline' input, `FILENAME', `ARGV' elements, `ENVIRON'
- elements, and the elements of an array created by `split' that are
- numeric strings have the STRNUM attribute. Otherwise, they have
- the STRING attribute. Uninitialized variables also have the
- STRNUM attribute.
+ elements, and the elements of an array created by `split' and
+ `match' that are numeric strings have the STRNUM attribute.
+ Otherwise, they have the STRING attribute. Uninitialized
+ variables also have the STRNUM attribute.
* Attributes propagate across assignments but are not changed by any
use.
@@ -7899,6 +7980,10 @@ statement with a nonzero argument, as shown in the following example:
close("date")
}
+ For full portability, exit values should be between zero and 126,
+inclusive. Negative values, and values of 127 or greater, may not
+produce consistent results across different operating systems.
+

File: gawk.info, Node: Built-in Variables, Prev: Statements, Up: Patterns and Actions
@@ -7939,12 +8024,14 @@ specific to `gawk' are marked with a pound sign (`#').
On non-POSIX systems, this variable specifies use of binary mode
for all I/O. Numeric values of one, two, or three specify that
input files, output files, or all files, respectively, should use
- binary I/O. Alternatively, string values of `"r"' or `"w"'
- specify that input files and output files, respectively, should
- use binary I/O. A string value of `"rw"' or `"wr"' indicates that
- all files should use binary I/O. Any other string value is
- equivalent to `"rw"', but `gawk' generates a warning message.
- `BINMODE' is described in more detail in *note PC Using::.
+ binary I/O. A numeric value less than zero is treated as zero,
+ and a numeric value greater than three is treated as three.
+ Alternatively, string values of `"r"' or `"w"' specify that input
+ files and output files, respectively, should use binary I/O. A
+ string value of `"rw"' or `"wr"' indicates that all files should
+ use binary I/O. Any other string value is equivalent to `"rw"',
+ but `gawk' generates a warning message. `BINMODE' is described in
+ more detail in *note PC Using::.
This variable is a `gawk' extension. In other `awk'
implementations (except `mawk', *note Other Versions::), or if
@@ -7979,8 +8066,8 @@ specific to `gawk' are marked with a pound sign (`#').
The default value is `" "', a string consisting of a single space.
As a special exception, this value means that any sequence of
- spaces, tabs, and/or newlines is a single separator.(1) It also
- causes spaces, tabs, and newlines at the beginning and end of a
+ spaces, TABs, and/or newlines is a single separator.(1) It also
+ causes spaces, TABs, and newlines at the beginning and end of a
record to be ignored.
You can set the value of `FS' on the command line using the `-F'
@@ -9367,7 +9454,21 @@ with a pound sign (`#'):
for programs to be maximally portable, always supply the
parentheses.
- Beginning with `gawk' version 3.2, when supplied an array
+ If `length' is called with a variable that has not been used,
+ `gawk' forces the variable to be a scalar. Other implementations
+ of `awk' leave the variable without a type. (d.c.) Consider:
+
+ $ gawk 'BEGIN { print length(x) ; x[1] = 1 }'
+ -| 0
+ error--> gawk: fatal: attempt to use scalar `x' as array
+
+ $ nawk 'BEGIN { print length(x) ; x[1] = 1 }'
+ -| 0
+
+ If `--lint' has been specified on the command line, `gawk' issues a
+ warning about this.
+
+ Beginning with `gawk' version 3.1.5, when supplied an array
argument, the `length' function returns the number of elements in
the array. This is less useful than it might seem at first, as the
array is not guaranteed to be indexed from one to the number of
@@ -9979,7 +10080,8 @@ parameters are enclosed in square brackets ([ ]):
allow no argument at all. In this case, the buffer for the
standard output is flushed. The second is to allow the null string
(`""') as the argument. In this case, the buffers for _all_ open
- output files and pipes are flushed.
+ output files and pipes are flushed. Current versions of the Bell
+ Labs `awk' also support these extensions.
`fflush' returns zero if the buffer is successfully flushed;
otherwise, it returns -1. In the case where all buffers are
@@ -10628,12 +10730,16 @@ underscores that doesn't start with a digit. Within a single `awk'
program, any particular name can only be used as a variable, array, or
function.
- PARAMETER-LIST is a list of the function's arguments and local
-variable names, separated by commas. When the function is called, the
-argument names are used to hold the argument values given in the call.
-The local variables are initialized to the empty string. A function
-cannot have two parameters with the same name, nor may it have a
-parameter with the same name as the function itself.
+ PARAMETER-LIST is an optional list of the function's arguments and
+local variable names, separated by commas. When the function is called,
+the argument names are used to hold the argument values given in the
+call. The local variables are initialized to the empty string. A
+function cannot have two parameters with the same name, nor may it have
+a parameter with the same name as the function itself.
+
+ According to the POSIX standard, function parameters cannot have the
+same name as one of the special built-in variables (*note Built-in
+Variables::. Not all versions of `awk' enforce this restriction.
The BODY-OF-FUNCTION consists of `awk' statements. It is the most
important part of the definition, because it says what the function
@@ -10796,7 +10902,7 @@ a string concatenation):
foo(x y, "lose", 4 * z)
- *Caution:* Whitespace characters (spaces and tabs) are not allowed
+ *Caution:* Whitespace characters (spaces and TABs) are not allowed
between the function name and the open-parenthesis of the argument list.
If you write whitespace by mistake, `awk' might think that you mean to
concatenate a variable with an expression in parentheses. However, it
@@ -11993,7 +12099,7 @@ output. The rules are as follows:
counts next to the statements in the body show how many times
those statements were executed.
- * The layout uses "K&R" style with tabs. Braces are used
+ * The layout uses "K&R" style with TABs. Braces are used
everywhere, even when the body of an `if', `else', or loop is only
a single statement.
@@ -12096,6 +12202,7 @@ full details.
* AWKPATH Variable:: Searching directories for `awk'
programs.
* Obsolete:: Obsolete Options and/or features.
+* Exit Status:: `gawk''s exit status.
* Undocumented:: Undocumented Options and Features.
* Known Bugs:: Known Bugs in `gawk'.
@@ -12198,6 +12305,13 @@ options and their meanings are as follows:
as well as options available in the Bell Laboratories version of `awk'.
The following list describes `gawk'-specific options:
+`-O'
+`--optimize'
+ Enables some optimizations on the internal representation of the
+ program. At the moment this includes just simple constant
+ folding. The `gawk' maintainer hopes to add more optimizations
+ over time.
+
`-W compat'
`-W traditional'
`--compat'
@@ -12548,9 +12662,27 @@ the value of `$(datadir)' generated when `gawk' was configured. You
probably don't need to worry about this, though.

-File: gawk.info, Node: Obsolete, Next: Undocumented, Prev: AWKPATH Variable, Up: Invoking Gawk
+File: gawk.info, Node: Exit Status, Next: Undocumented, Prev: Obsolete, Up: Invoking Gawk
+
+11.5 `gawk''s Exit Status
+=========================
+
+If the `exit' statement is used with a value (*note Exit Statement::),
+the `gawk' exits with the numeric value given to it.
+
+ Otherwise, if there were no problems during execution, `gawk' exits
+with the value of the C constant `EXIT_SUCCESS'. This is usually zero.
+
+ If an error occurs, `gawk' exits with the value of the C constant
+`EXIT_FAILURE'. This is usually one.
+
+ If `gawk' exits because of a fatal error, the exit status is 2. On
+non-POSIX systems, this value may be mapped to `EXIT_FAILURE'.
+
+
+File: gawk.info, Node: Obsolete, Next: Exit Status, Prev: AWKPATH Variable, Up: Invoking Gawk
-11.5 Obsolete Options and/or Features
+11.6 Obsolete Options and/or Features
=====================================
This minor node describes features and/or command-line options from
@@ -12571,9 +12703,9 @@ Process::, work as described, but are now considered deprecated.
the next release of `gawk'.

-File: gawk.info, Node: Undocumented, Next: Known Bugs, Prev: Obsolete, Up: Invoking Gawk
+File: gawk.info, Node: Undocumented, Next: Known Bugs, Prev: Exit Status, Up: Invoking Gawk
-11.6 Undocumented Options and Features
+11.7 Undocumented Options and Features
======================================
Use the Source, Luke!
@@ -12584,7 +12716,7 @@ File: gawk.info, Node: Undocumented, Next: Known Bugs, Prev: Obsolete, Up: I

File: gawk.info, Node: Known Bugs, Prev: Undocumented, Up: Invoking Gawk
-11.7 Known Bugs in `gawk'
+11.8 Known Bugs in `gawk'
=========================
* The `-F' option for changing the value of `FS' (*note Options::)
@@ -13051,7 +13183,7 @@ your awk's `printf' does unbiased rounding:
# see if fractional part
if (ival == x) # no fraction
- return x
+ return ival # ensure no decimals
if (x < 0) {
aval = -x # absolute value
@@ -13487,9 +13619,9 @@ program to your `awk' program:
}
}
- In `gawk', the `getline' won't be fatal (unless `--posix' is in
-force). Removing the element from `ARGV' with `delete' skips the file
-(since it's no longer in the list).
+ This works, because the `getline' won't be fatal. Removing the
+element from `ARGV' with `delete' skips the file (since it's no longer
+in the list).

File: gawk.info, Node: Empty Files, Next: Ignoring Assigns, Prev: File Checking, Up: Data File Management
@@ -14417,7 +14549,7 @@ File: gawk.info, Node: Cut Program, Next: Egrep Program, Up: Clones
The `cut' utility selects, or "cuts," characters or fields from its
standard input and sends them to its standard output. Fields are
-separated by tabs by default, but you may supply a command-line option
+separated by TABs by default, but you may supply a command-line option
to change the field "delimiter" (i.e., the field-separator character).
`cut''s definition of fields is less general than `awk''s.
@@ -15215,7 +15347,7 @@ usage is as follows:
`-N'
Skip N fields before comparing lines. The definition of fields is
similar to `awk''s default: nonwhitespace characters separated by
- runs of spaces and/or tabs.
+ runs of spaces and/or TABs.
`+N'
Skip N characters before comparing lines. Any fields specified
@@ -15425,7 +15557,7 @@ the following list:
`-w'
Count only words. A "word" is a contiguous sequence of
- nonwhitespace characters, separated by spaces and/or tabs.
+ nonwhitespace characters, separated by spaces and/or TABs.
Luckily, this is the normal way `awk' separates fields in its
input data.
@@ -15568,6 +15700,8 @@ hope you find them both interesting and enjoyable.
* Simple Sed:: A Simple Stream Editor.
* Igawk Program:: A wrapper for `awk' that includes
files.
+* Signature Program:: People do amazing things with too much time
+ on their hands.

File: gawk.info, Node: Dupword Program, Next: Alarm Program, Up: Miscellaneous Programs
@@ -15787,8 +15921,8 @@ first, `stranslate', takes three arguments:
Associative arrays make the translation part fairly easy. `t_ar'
holds the "to" characters, indexed by the "from" characters. Then a
simple loop goes through `from', one character at a time. For each
-character in `from', if the character appears in `target', `gsub' is
-used to change it to the corresponding `to' character.
+character in `from', if the character appears in `target', it is
+replaced with the corresponding `to' character.
The `translate' function simply calls `stranslate' using `$0' as the
target. The main program sets two global variables, `FROM' and `TO',
@@ -15803,21 +15937,24 @@ record:
# to be spelled out. However, if `to' is shorter than `from',
# the last character in `to' is used for the rest of `from'.
- function stranslate(from, to, target, lf, lt, t_ar, i, c)
+ function stranslate(from, to, target, lf, lt, ltarget, t_ar, i, c,
+ result)
{
lf = length(from)
lt = length(to)
+ ltarget = length(target)
for (i = 1; i <= lt; i++)
t_ar[substr(from, i, 1)] = substr(to, i, 1)
if (lt < lf)
for (; i <= lf; i++)
t_ar[substr(from, i, 1)] = substr(to, lt, 1)
- for (i = 1; i <= lf; i++) {
- c = substr(from, i, 1)
- if (index(target, c) > 0)
- gsub(c, t_ar[c], target)
+ for (i = 1; i <= ltarget; i++) {
+ c = substr(target, i, 1)
+ if (c in t_ar)
+ c = t_ar[c]
+ result = result c
}
- return target
+ return result
}
function translate(from, to)
@@ -16396,7 +16533,7 @@ the single rule handles the printing scheme outlined above, using
`print' or `printf' as appropriate, depending upon the value of `RT'.

-File: gawk.info, Node: Igawk Program, Prev: Simple Sed, Up: Miscellaneous Programs
+File: gawk.info, Node: Igawk Program, Next: Signature Program, Prev: Simple Sed, Up: Miscellaneous Programs
13.3.9 An Easy Way to Use Library Functions
-------------------------------------------
@@ -16783,6 +16920,33 @@ programming book if you wish to understand things in more depth.
can loop forever if the file exists but is empty. Caveat emptor.

+File: gawk.info, Node: Signature Program, Prev: Igawk Program, Up: Miscellaneous Programs
+
+13.3.10 And Now For Something Completely Different
+--------------------------------------------------
+
+The following program was written by Davide Brini and is published on
+his website (http://db.netsons.org/v1-sigs.php). It serves as his
+signature in the Usenet group `comp.lang.awk'. He supplies the
+following copyright terms:
+
+ Copyright (C) 2008 Davide Brini
+
+ Copying and distribution of the code published in this page, with
+ or without modification, are permitted in any medium without
+ royalty provided the copyright notice and this notice are
+ preserved.
+
+ Here is the program:
+
+ awk 'BEGIN{O="~"~"~";o="=="=="==";o+=+o;x=O""O;while(X++<=x+o+o)c=c"%c";
+ printf c,(x-O)*(x-O),x*(x-o)-o,x*(x-O)+x-O-o,+x*(x-O)-x+o,X*(o*o+O)+x-O,
+ X*(X-x)-o*o,(x+X)*o*o+o,x*(X-x)-O-O,x-O+(O+o+X+x)*(o+O),X*X-X*(x-O)-x+O,
+ O+X*(o*(o+O)+O),+x+O+X*o,x*(x-o),(o+X+x)*o*o-(x-O-O),O+(X-x)*(X+O),x-O}'
+
+ We leave it to you to determine what the program does.
+
+
File: gawk.info, Node: Language History, Next: Installation, Prev: Sample Programs, Up: Top
Appendix A The Evolution of the `awk' Language
@@ -17204,12 +17368,15 @@ all be disabled with either the `--traditional' or `--posix' options
* The Atari port became officially unsupported (*note Atari
Installation::).
- * The source code now uses new-style function definitions, with
- `ansi2knr' to convert the code on systems with old compilers.
+ * The source code now uses new-style function definitions.
* The `--disable-lint' configuration option to disable lint checking
at compile time (*note Additional Configuration Options::).
+ * The `--with-whiny-user-strftime' configuration option to force the
+ use of the included version of the `strftime' function for
+ deficient systems (*note Additional Configuration Options::).
+
* POSIX compliance for `sub' and `gsub' (*note Gory Details::).
* The `--exec' option, for use in CGI scripts (*note Options::).
@@ -17221,6 +17388,10 @@ all be disabled with either the `--traditional' or `--posix' options
* The `strftime' function acquired a third argument to enable
printing times as UTC (*note Time Functions::).
+ * The `--disable-libsigsegv' configuration option which disables
+ configuring, building, compiling and linking against the
+ `libsigsegv' library (*note Additional Configuration Options::).
+

File: gawk.info, Node: Contributors, Prev: POSIX/GNU, Up: Language History
@@ -17399,20 +17570,20 @@ B.1.2 Extracting the Distribution
`gawk' is distributed as a `tar' file compressed with the GNU Zip
program, `gzip'.
- Once you have the distribution (for example, `gawk-3.1.6.tar.gz'),
+ Once you have the distribution (for example, `gawk-3.1.7.tar.gz'),
use `gzip' to expand the file and then use `tar' to extract it. You
can use the following pipeline to produce the `gawk' distribution:
# Under System V, add 'o' to the tar options
- gzip -d -c gawk-3.1.6.tar.gz | tar -xvpf -
+ gzip -d -c gawk-3.1.7.tar.gz | tar -xvpf -
-This creates a directory named `gawk-3.1.6' in the current directory.
+This creates a directory named `gawk-3.1.7' in the current directory.
The distribution file name is of the form `gawk-V.R.P.tar.gz'. The
V represents the major version of `gawk', the R represents the current
release of version V, and the P represents a "patch level", meaning
that minor bugs have been fixed in the release. The current patch
-level is 6, but when retrieving distributions, you should get the
+level is 7, but when retrieving distributions, you should get the
version with the highest version, release, and patch level. (Note,
however, that patch levels greater than or equal to 80 denote "beta" or
nonproduction software; you might not want to retrieve such a version
@@ -17598,7 +17769,7 @@ B.2.1 Compiling `gawk' for Unix
-------------------------------
After you have extracted the `gawk' distribution, `cd' to
-`gawk-3.1.6'. Like most GNU software, `gawk' is configured
+`gawk-3.1.7'. Like most GNU software, `gawk' is configured
automatically for your Unix system by running the `configure' program.
This program is a Bourne shell script that is generated automatically
using GNU `autoconf'. (The `autoconf' software is described fully
@@ -17652,6 +17823,10 @@ command line when compiling `gawk' from scratch, including:
Enable the recognition and execution of C-style `switch' statements
in `awk' programs (*note Switch Statement::.)
+`--with-whiny-user-strftime'
+ Force use of the included version of the `strftime' function for
+ deficient systems
+
`--disable-lint'
This option disables all lint checking within `gawk'. The
`--lint' and `--lint-old' options (*note Options::) are accepted,
@@ -17676,6 +17851,11 @@ command line when compiling `gawk' from scratch, including:
Causes `gawk' to silently skip directories named on the command
line.
+`--disable-libsigsegv'
+ The `--disable-libsigsegv' configuration option disables
+ configuring, building, compiling and linking against the
+ `libsigsegv' library.
+
As of version 3.1.5, the `--with-included-gettext' configuration
option is no longer available, since `gawk' expects the GNU `gettext'
library to be installed as an external library.
@@ -17977,8 +18157,7 @@ child processes are not started by `fork()'.
NOTE: Most OS/2 ports of GNU `make' are not able to handle the
Makefiles of this package. If you encounter any problems with
`make' try GNU Make 3.79.1 or later versions. You should find the
- latest version on `http://www.unixos2.org/sw/pub/binary/make/' or
- on `ftp://hobbes.nmsu.edu/pub/os2/'.
+ latest version on `ftp://hobbes.nmsu.edu/pub/os2/'.

File: gawk.info, Node: PC Dynamic, Next: PC Using, Prev: PC Compiling, Up: PC Installation
@@ -18071,14 +18250,14 @@ translate end-of-line `"\r\n"' to `"\n"' on input and `"\n"' to
`"\r\n"' on output. A special `BINMODE' variable allows control over
these translations and is interpreted as follows:
- * If `BINMODE' is `"r"', or `(BINMODE & 1)' is nonzero, then binary
- mode is set on read (i.e., no translations on reads).
+ * If `BINMODE' is `"r"', or one, then binary mode is set on read
+ (i.e., no translations on reads).
- * If `BINMODE' is `"w"', or `(BINMODE & 2)' is nonzero, then binary
- mode is set on write (i.e., no translations on writes).
+ * If `BINMODE' is `"w"', or two, then binary mode is set on write
+ (i.e., no translations on writes).
- * If `BINMODE' is `"rw"' or `"wr"', binary mode is set for both read
- and write (same as `(BINMODE & 3)').
+ * If `BINMODE' is `"rw"' or `"wr"' or three, binary mode is set for
+ both read and write.
* `BINMODE=NON-NULL-STRING' is the same as `BINMODE=3' (i.e., no
translations on reads or writes). However, `gawk' issues a warning
@@ -18137,8 +18316,8 @@ simulation of Unix, using the GNU tools, such as `bash', the GNU
Compiler Collection (GCC), GNU Make, and other GNU tools. Compilation
and installation for Cygwin is the same as for a Unix system:
- tar -xvpzf gawk-3.1.6.tar.gz
- cd gawk-3.1.6
+ tar -xvpzf gawk-3.1.7.tar.gz
+ cd gawk-3.1.7
./configure
make
@@ -18549,6 +18728,18 @@ do occasionally read this newsgroup, there is no guarantee that we will
see your posting. The steps described above are the official
recognized ways for reporting bugs.
+ NOTE: Many distributions of GNU/Linux and the various BSD-based
+ operating systems have their own bug reporting systems. If you
+ report a bug using your distribution's bug reporting system,
+ _please_ also send a copy to <bug-gawk@gnu.org>.
+
+ This is for two reasons. First, while some distributions forward
+ bug reports "upstream" to the GNU mailing list, many don't, so
+ there is a good chance that the `gawk' maintainer won't even see
+ the bug report! Second, mail to the GNU list is archived, and
+ having everything at the GNU project keeps things self-contained
+ and not dependant on other web sites.
+
Non-bug suggestions are always welcome as well. If you have
questions about things that are unclear in the documentation or are
just obscure features, ask me; I will try to help you out, although I
@@ -18563,15 +18754,12 @@ considered authoritative if it conflicts with this Info file.
The people maintaining the non-Unix ports of `gawk' are as follows:
-Amiga Fred Fish, <fnf@ninemoons.com>.
-BeOS Martin Brown, <mc@whoever.com>.
-MS-DOS Scott Deifik, <scottd.mail@sbcglobal.net> and Darrel
- Hankerson, <hankedr@mail.auburn.edu>.
-MS-Windows Juan Grigera, <juan@biophnet.unlp.edu.ar>.
-OS/2 The Unix for OS/2 team,
- <gawk-maintainer@unixos2.org>.
-Tandem Stephen Davies, <scldad@sdc.com.au>.
-VMS Pat Rankin, <rankin@pactechdata.com>.
+MS-DOS Scott Deifik, <scottd.mail@sbcglobal.net>.
+OS/2 Andreas Buening, <andreas.buening@nexgo.de>
+Tandem Stephen Davies, <scldad@sdc.com.au>.
+Tandem (POSIX-compliant) Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+VMS Pat Rankin, <rankin@pactechdata.com>.
+z/OS (OS/390) Dave Pitts, <pitts@cozx.com>.
If your bug is also reproducible under Unix, please send a copy of
your report to the <bug-gawk@gnu.org> email list as well.
@@ -18595,13 +18783,13 @@ Unix `awk'
from his home page.(1) It is available in several archive formats:
Shell archive
- `http://cm.bell-labs.com/who/bwk/awk.shar'
+ `http://www.cs.princeton.edu/~bwk/btl.mirror/awk.shar'
Compressed `tar' file
- `http://cm.bell-labs.com/who/bwk/awk.tar.gz'
+ `http://www.cs.princeton.edu/~bwk/btl.mirror/awk.tar.gz'
Zip file
- `http://cm.bell-labs.com/who/bwk/awk.zip'
+ `http://www.cs.princeton.edu/~bwk/btl.mirror/awk.zip'
This version requires an ISO C (1990 standard) compiler; the C
compiler from GCC (the GNU Compiler Collection) works quite nicely.
@@ -18614,13 +18802,17 @@ Unix `awk'
called `mawk'. It is available under the GPL (*note Copying::),
just as `gawk' is.
- You can get it via anonymous `ftp' to the host `ftp.whidbey.net'.
- Change directory to `/pub/brennan'. Use "binary" or "image" mode,
- and retrieve `mawk1.3.3.tar.gz' (or the latest version that is
- there).
+ The original distribution site for the `mawk' source code no
+ longer has it. A copy has been made available at
+ `http://www.skeeve.com/gawk/mawk1.3.3.tar.gz'.
+
+ In 2009, Thomas Dickey took on `mawk' maintenance. Basic
+ information is availabe on the project's web page
+ (http://www.invisible-island.net/mawk/mawk.html). The download
+ URL is `ftp://invisible-island.net/mawk/mawk.tar.gz'.
- `gunzip' may be used to decompress this file. Installation is
- similar to `gawk''s (*note Unix Installation::).
+ Once you have it, `gunzip' may be used to decompress this file.
+ Installation is similar to `gawk''s (*note Unix Installation::).
`mawk' has the following extensions that are not in POSIX `awk':
@@ -18650,7 +18842,8 @@ Unix `awk'
* The `BINMODE' special variable for non-Unix operating systems
(*note PC Using::).
- The next version of `mawk' will support `nextfile'.
+ It is to be hoped that a future version of `mawk' will support
+ `nextfile' (*note Nextfile Statement::).
`awka'
Written by Andrew Sumner, `awka' translates `awk' programs into C,
@@ -18669,8 +18862,8 @@ Unix `awk'
Labs `awk' to provide timing and profiling information. It is
different from `pgawk' (*note Profiling::), in that it uses
CPU-based profiling, not line-count profiling. You may find it at
- either `ftp://ftp.math.utah.edu/pub/pawk/pawk-20020210.tar.gz' or
- `http://www.math.utah.edu/pub/pawk/pawk-20020210.tar.gz'.
+ either `ftp://ftp.math.utah.edu/pub/pawk/pawk-20030606.tar.gz' or
+ `http://www.math.utah.edu/pub/pawk/pawk-20030606.tar.gz'.
The OpenSolaris POSIX `awk'
The version of `awk' in `/usr/xpg4/bin' on Solaris is POSIX
@@ -18688,10 +18881,16 @@ The OpenSolaris POSIX `awk'
from POSIX `awk'. More information is available on the project's
home page.(3).
+ This is an independent implementation of `awk' distributed under
+ the GPL. It has a large number of extensions over standard `awk'
+ and may not be 100% syntactically compatible with it. See
+ `http://www.quiktrim.org/QTawk.html' for more information,
+ including the manual and a download link.
+
---------- Footnotes ----------
- (1) `http://cm.bell-labs.com/who/bwk'
+ (1) `http://www.cs.princeton.edu/~bwk'
(2) `http://www.opensolaris.org'
@@ -18796,7 +18995,7 @@ possible for me to include your changes:
instructions in the `GNU Coding Standards', with minor exceptions.
The code is formatted using the traditional "K&R" style,
particularly as regards to the placement of braces and the use of
- tabs. In brief, the coding rules for `gawk' are as follows:
+ TABs. In brief, the coding rules for `gawk' are as follows:
* Use ANSI/ISO style (prototype) function headers when defining
functions.
@@ -18820,7 +19019,7 @@ possible for me to include your changes:
effects, except in `for' loop initialization and increment
parts, and in macro bodies.
- * Use real tabs for indenting, not spaces.
+ * Use real TABs for indenting, not spaces.
* Use the "K&R" brace layout style.
@@ -21476,10 +21675,10 @@ File: gawk.info, Node: GNU Free Documentation License, Next: Index, Prev: Cop
GNU Free Documentation License
******************************
- Version 1.2, November 2002
+ Version 1.3, 3 November 2008
- Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+ `http://fsf.org/'
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -21581,6 +21780,9 @@ GNU Free Documentation License
Page" means the text near the most prominent appearance of the
work's title, preceding the beginning of the body of the text.
+ The "publisher" means any person or entity that distributes copies
+ of the Document to the public.
+
A section "Entitled XYZ" means a named subunit of the Document
whose title either is precisely XYZ or contains XYZ in parentheses
following text that translates XYZ in another language. (Here XYZ
@@ -21810,7 +22012,7 @@ GNU Free Documentation License
a storage or distribution medium, is called an "aggregate" if the
copyright resulting from the compilation is not used to limit the
legal rights of the compilation's users beyond what the individual
- works permit. When the Document is included an aggregate, this
+ works permit. When the Document is included in an aggregate, this
License does not apply to the other works in the aggregate which
are not themselves derivative works of the Document.
@@ -21846,12 +22048,29 @@ GNU Free Documentation License
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document
- except as expressly provided for under this License. Any other
- attempt to copy, modify, sublicense or distribute the Document is
- void, and will automatically terminate your rights under this
- License. However, parties who have received copies, or rights,
- from you under this License will not have their licenses
- terminated so long as such parties remain in full compliance.
+ except as expressly provided under this License. Any attempt
+ otherwise to copy, modify, sublicense, or distribute it is void,
+ and will automatically terminate your rights under this License.
+
+ However, if you cease all violation of this License, then your
+ license from a particular copyright holder is reinstated (a)
+ provisionally, unless and until the copyright holder explicitly
+ and finally terminates your license, and (b) permanently, if the
+ copyright holder fails to notify you of the violation by some
+ reasonable means prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+ reinstated permanently if the copyright holder notifies you of the
+ violation by some reasonable means, this is the first time you have
+ received notice of violation of this License (for any work) from
+ that copyright holder, and you cure the violation prior to 30 days
+ after your receipt of the notice.
+
+ Termination of your rights under this section does not terminate
+ the licenses of parties who have received copies or rights from
+ you under this License. If your rights have been terminated and
+ not permanently reinstated, receipt of a copy of some or all of
+ the same material does not give you any rights to use it.
10. FUTURE REVISIONS OF THIS LICENSE
@@ -21869,7 +22088,41 @@ GNU Free Documentation License
published (not as a draft) by the Free Software Foundation. If
the Document does not specify a version number of this License,
you may choose any version ever published (not as a draft) by the
- Free Software Foundation.
+ Free Software Foundation. If the Document specifies that a proxy
+ can decide which future versions of this License can be used, that
+ proxy's public statement of acceptance of a version permanently
+ authorizes you to choose that version for the Document.
+
+ 11. RELICENSING
+
+ "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+ World Wide Web server that publishes copyrightable works and also
+ provides prominent facilities for anybody to edit those works. A
+ public wiki that anybody can edit is an example of such a server.
+ A "Massive Multiauthor Collaboration" (or "MMC") contained in the
+ site means any set of copyrightable works thus published on the MMC
+ site.
+
+ "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+ license published by Creative Commons Corporation, a not-for-profit
+ corporation with a principal place of business in San Francisco,
+ California, as well as future copyleft versions of that license
+ published by that same organization.
+
+ "Incorporate" means to publish or republish a Document, in whole or
+ in part, as part of another Document.
+
+ An MMC is "eligible for relicensing" if it is licensed under this
+ License, and if all works that were first published under this
+ License somewhere other than this MMC, and subsequently
+ incorporated in whole or in part into the MMC, (1) had no cover
+ texts or invariant sections, and (2) were thus incorporated prior
+ to November 1, 2008.
+
+ The operator of an MMC Site may republish an MMC contained in the
+ site under CC-BY-SA on the same site at any time before August 1,
+ 2009, provided the MMC is eligible for relicensing.
+
ADDENDUM: How to use this License for your documents
====================================================
@@ -21880,10 +22133,10 @@ notices just after the title page:
Copyright (C) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
- under the terms of the GNU Free Documentation License, Version 1.2
+ under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
- with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
- A copy of the license is included in the section entitled ``GNU
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
If you have Invariant Sections, Front-Cover Texts and Back-Cover
@@ -21928,7 +22181,7 @@ Index
* ! (exclamation point), !~ operator: Regexp Usage. (line 19)
* ! operator <1>: Egrep Program. (line 168)
* ! operator: Ranges. (line 48)
-* " (double quote) <1>: Quoting. (line 33)
+* " (double quote) <1>: Quoting. (line 37)
* " (double quote): Read Terminal. (line 25)
* " (double quote), regexp constants: Computed Regexps. (line 28)
* # (number sign), #! (executable scripts): Executable Scripts.
@@ -21948,11 +22201,11 @@ Index
* & (ampersand), && operator <1>: Precedence. (line 87)
* & (ampersand), && operator: Boolean Ops. (line 57)
* & (ampersand), gsub/gensub/sub functions and: Gory Details. (line 6)
-* ' (single quote) <1>: Quoting. (line 27)
+* ' (single quote) <1>: Quoting. (line 31)
* ' (single quote) <2>: Long. (line 33)
* ' (single quote): One-shot. (line 15)
* ' (single quote), vs. apostrophe: Comments. (line 27)
-* ' (single quote), with double quotes: Quoting. (line 49)
+* ' (single quote), with double quotes: Quoting. (line 53)
* () (parentheses): Regexp Operators. (line 78)
* () (parentheses), pgawk program: Profiling. (line 144)
* * (asterisk), * operator, as multiplication operator: Precedence.
@@ -21961,10 +22214,10 @@ Index
(line 86)
* * (asterisk), * operator, null strings, matching: Gory Details.
(line 160)
-* * (asterisk), ** operator <1>: Options. (line 192)
+* * (asterisk), ** operator <1>: Options. (line 199)
* * (asterisk), ** operator <2>: Precedence. (line 49)
* * (asterisk), ** operator: Arithmetic Ops. (line 81)
-* * (asterisk), **= operator <1>: Options. (line 192)
+* * (asterisk), **= operator <1>: Options. (line 199)
* * (asterisk), **= operator <2>: Precedence. (line 96)
* * (asterisk), **= operator: Assignment Ops. (line 129)
* * (asterisk), *= operator <1>: Precedence. (line 96)
@@ -21986,55 +22239,61 @@ Index
* - (hyphen), filenames beginning with: Options. (line 67)
* - (hyphen), in character lists: Character Lists. (line 17)
* --assign option: Options. (line 30)
-* --compat option: Options. (line 79)
-* --copyleft option: Options. (line 92)
-* --copyright option: Options. (line 87)
+* --compat option: Options. (line 86)
+* --copyleft option: Options. (line 99)
+* --copyright option: Options. (line 94)
* --disable-directories-fatal configuration option: Additional Configuration Options.
- (line 37)
+ (line 41)
+* --disable-libsigsegv configuration option: Additional Configuration Options.
+ (line 45)
* --disable-lint configuration option: Additional Configuration Options.
- (line 17)
+ (line 21)
* --disable-nls configuration option: Additional Configuration Options.
- (line 32)
+ (line 36)
* --dump-variables option <1>: Library Names. (line 45)
-* --dump-variables option: Options. (line 95)
+* --dump-variables option: Options. (line 102)
* --enable-portals configuration option <1>: Additional Configuration Options.
(line 9)
* --enable-portals configuration option: Portal Files. (line 6)
* --enable-switch configuration option: Additional Configuration Options.
(line 13)
-* --exec option: Options. (line 111)
+* --exec option: Options. (line 118)
* --field-separator option: Options. (line 21)
* --file option: Options. (line 25)
-* --gen-po option <1>: Options. (line 130)
+* --gen-po option <1>: Options. (line 137)
* --gen-po option: String Extraction. (line 6)
-* --help option: Options. (line 139)
-* --lint option <1>: Options. (line 144)
+* --help option: Options. (line 146)
+* --lint option <1>: Options. (line 151)
* --lint option: Command Line. (line 20)
-* --lint-old option: Options. (line 163)
-* --non-decimal-data option <1>: Options. (line 168)
+* --lint-old option: Options. (line 170)
+* --non-decimal-data option <1>: Options. (line 175)
* --non-decimal-data option: Nondecimal Data. (line 6)
* --non-decimal-data option, strtonum function and: Nondecimal Data.
(line 36)
-* --posix option: Options. (line 176)
-* --posix option, --traditional option and: Options. (line 206)
-* --profile option <1>: Options. (line 212)
+* --optimize option: Options. (line 77)
+* --posix option: Options. (line 183)
+* --posix option, --traditional option and: Options. (line 213)
+* --profile option <1>: Options. (line 219)
* --profile option: Profiling. (line 15)
-* --re-interval option: Options. (line 224)
-* --source option: Options. (line 231)
-* --traditional option: Options. (line 79)
-* --traditional option, --posix option and: Options. (line 206)
-* --usage option: Options. (line 139)
-* --use-lc-numeric option: Options. (line 239)
-* --version option: Options. (line 244)
+* --re-interval option: Options. (line 231)
+* --source option: Options. (line 238)
+* --traditional option: Options. (line 86)
+* --traditional option, --posix option and: Options. (line 213)
+* --usage option: Options. (line 146)
+* --use-lc-numeric option: Options. (line 246)
+* --version option: Options. (line 251)
+* --with-whiny-user-strftime configuration option: Additional Configuration Options.
+ (line 17)
* -f option: Options. (line 25)
* -F option <1>: Options. (line 21)
* -F option: Command Line Field Separator.
(line 6)
* -f option: Long. (line 12)
-* -F option, -Ft sets FS to TAB: Options. (line 252)
-* -f option, on command line: Options. (line 257)
+* -F option, -Ft sets FS to TAB: Options. (line 259)
+* -f option, on command line: Options. (line 264)
* -F option, troubleshooting: Known Bugs. (line 6)
* -mf/-mr options: Options. (line 45)
+* -O option: Options. (line 77)
* -v option: Options. (line 30)
* -v option, variables, assigning: Assignment Options. (line 12)
* -W option: Options. (line 55)
@@ -22089,7 +22348,7 @@ Index
* ? (question mark), ?: operator: Precedence. (line 93)
* [] (square brackets): Regexp Operators. (line 55)
* \ (backslash) <1>: Regexp Operators. (line 18)
-* \ (backslash) <2>: Quoting. (line 27)
+* \ (backslash) <2>: Quoting. (line 31)
* \ (backslash) <3>: Comments. (line 50)
* \ (backslash): Read Terminal. (line 25)
* \ (backslash), \" escape sequence: Escape Sequences. (line 76)
@@ -22137,12 +22396,14 @@ Index
* ^ (caret) <1>: GNU Regexp Operators.
(line 51)
* ^ (caret): Regexp Operators. (line 22)
-* ^ (caret), ^ operator <1>: Options. (line 192)
+* ^ (caret), ^ operator <1>: Options. (line 199)
* ^ (caret), ^ operator: Precedence. (line 49)
-* ^ (caret), ^= operator <1>: Options. (line 192)
+* ^ (caret), ^= operator <1>: Options. (line 199)
* ^ (caret), ^= operator <2>: Precedence. (line 96)
* ^ (caret), ^= operator: Assignment Ops. (line 129)
* ^ (caret), in character lists: Character Lists. (line 17)
+* ^, in FS: Regexp Field Splitting.
+ (line 59)
* _ (underscore), _ C macro: Explaining gettext. (line 68)
* _ (underscore), in names of private variables: Library Names.
(line 29)
@@ -22159,7 +22420,7 @@ Index
* adding, features to gawk: Adding Code. (line 6)
* adding, fields: Changing Fields. (line 53)
* adding, functions to gawk: Dynamic Extensions. (line 10)
-* advanced features, buffering: I/O Functions. (line 95)
+* advanced features, buffering: I/O Functions. (line 96)
* advanced features, close function: Close Files And Pipes.
(line 130)
* advanced features, constants, values of: Nondecimal-numbers.
@@ -22266,10 +22527,10 @@ Index
(line 86)
* asterisk (*), * operator, null strings, matching: Gory Details.
(line 160)
-* asterisk (*), ** operator <1>: Options. (line 192)
+* asterisk (*), ** operator <1>: Options. (line 199)
* asterisk (*), ** operator <2>: Precedence. (line 49)
* asterisk (*), ** operator: Arithmetic Ops. (line 81)
-* asterisk (*), **= operator <1>: Options. (line 192)
+* asterisk (*), **= operator <1>: Options. (line 199)
* asterisk (*), **= operator <2>: Precedence. (line 96)
* asterisk (*), **= operator: Assignment Ops. (line 129)
* asterisk (*), *= operator <1>: Precedence. (line 96)
@@ -22293,7 +22554,7 @@ Index
* awk programs, location of: Options. (line 25)
* awk programs, one-line examples: Very Simple. (line 45)
* awk programs, profiling: Profiling. (line 6)
-* awk programs, profiling, enabling: Options. (line 212)
+* awk programs, profiling, enabling: Options. (line 219)
* awk programs, running <1>: Long. (line 6)
* awk programs, running: Running gawk. (line 6)
* awk programs, running, from shell scripts: One-shot. (line 22)
@@ -22327,15 +22588,15 @@ Index
* awk, versions of, changes between V7 and SVR3.1: V7/SVR3.1. (line 6)
* awk, versions of, See Also Bell Laboratories awk: BTL. (line 6)
* awk.h file (internal): Internals. (line 15)
-* awka compiler for awk: Other Versions. (line 76)
+* awka compiler for awk: Other Versions. (line 81)
* AWKNUM internal type: Internals. (line 19)
* AWKPATH environment variable <1>: PC Using. (line 11)
* AWKPATH environment variable: AWKPATH Variable. (line 6)
* awkprof.out file: Profiling. (line 10)
* awksed.awk program: Simple Sed. (line 25)
-* awkvars.out file: Options. (line 95)
+* awkvars.out file: Options. (line 102)
* backslash (\) <1>: Regexp Operators. (line 18)
-* backslash (\) <2>: Quoting. (line 27)
+* backslash (\) <2>: Quoting. (line 31)
* backslash (\) <3>: Comments. (line 50)
* backslash (\): Read Terminal. (line 25)
* backslash (\), \" escape sequence: Escape Sequences. (line 76)
@@ -22382,7 +22643,7 @@ Index
* backslash (\), regexp constants: Computed Regexps. (line 28)
* BBS-list file: Sample Data Files. (line 6)
* Beebe, Nelson: Acknowledgments. (line 53)
-* Beebe, Nelson H.F.: Other Versions. (line 88)
+* Beebe, Nelson H.F.: Other Versions. (line 93)
* BEGIN pattern <1>: BEGIN/END. (line 6)
* BEGIN pattern <2>: Field Separators. (line 43)
* BEGIN pattern: Records. (line 29)
@@ -22426,7 +22687,7 @@ Index
* Boolean expressions: Boolean Ops. (line 6)
* Boolean expressions, as patterns: Expression Patterns. (line 41)
* Boolean operators, See Boolean expressions: Boolean Ops. (line 6)
-* Bourne shell, quoting rules for: Quoting. (line 14)
+* Bourne shell, quoting rules for: Quoting. (line 18)
* braces ({}), actions and: Action Overview. (line 19)
* braces ({}), pgawk program: Profiling. (line 140)
* braces ({}), statements, grouping: Statements. (line 10)
@@ -22437,16 +22698,16 @@ Index
* Brennan, Michael <3>: Two-way I/O. (line 6)
* Brennan, Michael: Delete. (line 51)
* Broder, Alan J.: Contributors. (line 77)
-* Brown, Martin <1>: Bugs. (line 57)
-* Brown, Martin <2>: Contributors. (line 72)
+* Brown, Martin <1>: Contributors. (line 72)
* Brown, Martin: Acknowledgments. (line 53)
* BSD portals: Portal Files. (line 6)
* BSD-based operating systems: Glossary. (line 582)
-* Buening, Andreas <1>: Contributors. (line 81)
+* Buening, Andreas <1>: Bugs. (line 69)
+* Buening, Andreas <2>: Contributors. (line 81)
* Buening, Andreas: Acknowledgments. (line 53)
* buffering, input/output <1>: Two-way I/O. (line 71)
-* buffering, input/output: I/O Functions. (line 127)
-* buffering, interactive vs. noninteractive: I/O Functions. (line 95)
+* buffering, input/output: I/O Functions. (line 128)
+* buffering, interactive vs. noninteractive: I/O Functions. (line 96)
* buffers, flushing: I/O Functions. (line 29)
* buffers, operators for: GNU Regexp Operators.
(line 40)
@@ -22463,21 +22724,21 @@ Index
* caret (^) <1>: GNU Regexp Operators.
(line 51)
* caret (^): Regexp Operators. (line 22)
-* caret (^), ^ operator <1>: Options. (line 192)
+* caret (^), ^ operator <1>: Options. (line 199)
* caret (^), ^ operator: Precedence. (line 49)
-* caret (^), ^= operator <1>: Options. (line 192)
+* caret (^), ^= operator <1>: Options. (line 199)
* caret (^), ^= operator <2>: Precedence. (line 96)
* caret (^), ^= operator: Assignment Ops. (line 129)
* caret (^), in character lists: Character Lists. (line 17)
* case keyword: Switch Statement. (line 6)
* case sensitivity, array indices and: Array Intro. (line 87)
-* case sensitivity, converting case: String Functions. (line 453)
+* case sensitivity, converting case: String Functions. (line 467)
* case sensitivity, example programs: Library Functions. (line 43)
* case sensitivity, gawk: Case-sensitivity. (line 26)
-* case sensitivity, regexps and <1>: User-modified. (line 68)
+* case sensitivity, regexps and <1>: User-modified. (line 70)
* case sensitivity, regexps and: Case-sensitivity. (line 6)
-* case sensitivity, string comparisons and: User-modified. (line 68)
-* CGI, awk scripts for: Options. (line 111)
+* case sensitivity, string comparisons and: User-modified. (line 70)
+* CGI, awk scripts for: Options. (line 118)
* character encodings: Ordinal Functions. (line 44)
* character lists <1>: Character Lists. (line 6)
* character lists: Regexp Operators. (line 55)
@@ -22548,7 +22809,7 @@ Index
(line 60)
* compatibility mode (gawk), octal numbers: Nondecimal-numbers.
(line 60)
-* compatibility mode (gawk), specifying: Options. (line 79)
+* compatibility mode (gawk), specifying: Options. (line 86)
* compiled programs <1>: Glossary. (line 156)
* compiled programs: Basic High Level. (line 14)
* compl function (gawk): Bitwise Functions. (line 43)
@@ -22557,29 +22818,33 @@ Index
* concatenating: Concatenation. (line 9)
* conditional expressions: Conditional Exp. (line 6)
* configuration option, --disable-directories-fatal: Additional Configuration Options.
- (line 37)
+ (line 41)
+* configuration option, --disable-libsigsegv: Additional Configuration Options.
+ (line 45)
* configuration option, --disable-lint: Additional Configuration Options.
- (line 17)
+ (line 21)
* configuration option, --disable-nls: Additional Configuration Options.
- (line 32)
+ (line 36)
* configuration option, --enable-portals: Additional Configuration Options.
(line 9)
* configuration option, --enable-switch: Additional Configuration Options.
(line 13)
+* configuration option, --with-whiny-user-strftime: Additional Configuration Options.
+ (line 17)
* configuration options, gawk: Additional Configuration Options.
(line 6)
* constants, nondecimal: Nondecimal Data. (line 6)
* constants, types of: Constants. (line 6)
* continue statement: Continue Statement. (line 6)
* control statements: Statements. (line 6)
-* converting, case: String Functions. (line 453)
+* converting, case: String Functions. (line 467)
* converting, dates to timestamps: Time Functions. (line 72)
* converting, during subscripting: Numeric Array Subscripts.
(line 31)
* converting, numbers: Conversion. (line 6)
* converting, numbers, to strings: Bitwise Functions. (line 99)
* converting, strings to numbers: Conversion. (line 6)
-* CONVFMT variable <1>: User-modified. (line 26)
+* CONVFMT variable <1>: User-modified. (line 28)
* CONVFMT variable: Conversion. (line 29)
* CONVFMT variable, array subscripts and: Numeric Array Subscripts.
(line 6)
@@ -22592,7 +22857,7 @@ Index
* counting: Wc Program. (line 6)
* csh utility: Statements/Lines. (line 44)
* csh utility, backslash continuation and: More Complex. (line 15)
-* csh utility, POSIXLY_CORRECT environment variable: Options. (line 295)
+* csh utility, POSIXLY_CORRECT environment variable: Options. (line 302)
* csh utility, |& operator, comparison with: Two-way I/O. (line 44)
* ctime user-defined function: Function Example. (line 72)
* currency symbols, localization: Explaining gettext. (line 99)
@@ -22606,6 +22871,8 @@ Index
* dark corner <3>: Assignment Ops. (line 148)
* dark corner <4>: Format Modifiers. (line 59)
* dark corner: Conventions. (line 37)
+* dark corner, ^, in FS: Regexp Field Splitting.
+ (line 59)
* dark corner, array subscripts: Uninitialized Subscripts.
(line 42)
* dark corner, break statement: Break Statement. (line 47)
@@ -22623,11 +22890,12 @@ Index
* dark corner, FILENAME variable <1>: Auto-set. (line 88)
* dark corner, FILENAME variable: Getline Notes. (line 19)
* dark corner, FNR/NR variables: Auto-set. (line 187)
-* dark corner, format-control characters: Control Letters. (line 80)
+* dark corner, format-control characters: Control Letters. (line 18)
* dark corner, FS as null string: Single Character Fields.
(line 20)
* dark corner, input files: Records. (line 98)
* dark corner, invoking awk: Command Line. (line 16)
+* dark corner, length function: String Functions. (line 88)
* dark corner, multiline records: Multiple Line. (line 35)
* dark corner, NF variable, decrementing: Changing Fields. (line 107)
* dark corner, OFMT variable: OFMT. (line 27)
@@ -22637,7 +22905,7 @@ Index
(line 148)
* dark corner, regexp constants, as arguments to user-defined functions: Using Constant Regexps.
(line 44)
-* dark corner, split function: String Functions. (line 220)
+* dark corner, split function: String Functions. (line 234)
* dark corner, strings, storing: Records. (line 186)
* data, fixed-width: Constant Size. (line 9)
* data-driven languages: Basic High Level. (line 83)
@@ -22648,7 +22916,7 @@ Index
* dates, converting to timestamps: Time Functions. (line 72)
* dates, information related to, localization: Explaining gettext.
(line 111)
-* Davies, Stephen <1>: Bugs. (line 62)
+* Davies, Stephen <1>: Bugs. (line 70)
* Davies, Stephen: Contributors. (line 68)
* dcgettext function (gawk) <1>: Programmer i18n. (line 19)
* dcgettext function (gawk): I18N Functions. (line 12)
@@ -22661,16 +22929,16 @@ Index
* deadlocks: Two-way I/O. (line 71)
* debugging gawk: Known Bugs. (line 6)
* debugging gawk, bug reports: Bugs. (line 9)
-* decimal point character, locale specific: Options. (line 200)
+* decimal point character, locale specific: Options. (line 207)
* decrement operators: Increment Ops. (line 35)
* default keyword: Switch Statement. (line 6)
-* Deifik, Scott <1>: Bugs. (line 58)
+* Deifik, Scott <1>: Bugs. (line 69)
* Deifik, Scott <2>: Contributors. (line 52)
* Deifik, Scott: Acknowledgments. (line 53)
* delete statement: Delete. (line 6)
* deleting elements in arrays: Delete. (line 6)
* deleting entire arrays: Delete. (line 39)
-* differences between gawk and awk: String Functions. (line 88)
+* differences between gawk and awk: String Functions. (line 102)
* differences in awk and gawk, ARGC/ARGV variables: ARGC and ARGV.
(line 85)
* differences in awk and gawk, ARGIND variable: Auto-set. (line 40)
@@ -22683,18 +22951,18 @@ Index
* differences in awk and gawk, BINMODE variable <1>: PC Using.
(line 40)
* differences in awk and gawk, BINMODE variable: User-modified.
- (line 21)
+ (line 23)
* differences in awk and gawk, close function: Close Files And Pipes.
(line 81)
* differences in awk and gawk, ERRNO variable: Auto-set. (line 72)
* differences in awk and gawk, error messages: Special FD. (line 15)
* differences in awk and gawk, FIELDWIDTHS variable: User-modified.
- (line 33)
+ (line 35)
* differences in awk and gawk, function arguments (gawk): Calling Built-in.
(line 16)
* differences in awk and gawk, getline command: Getline. (line 19)
* differences in awk and gawk, IGNORECASE variable: User-modified.
- (line 68)
+ (line 70)
* differences in awk and gawk, implementation limitations <1>: Redirection.
(line 132)
* differences in awk and gawk, implementation limitations: Getline Notes.
@@ -22705,9 +22973,9 @@ Index
(line 6)
* differences in awk and gawk, line continuations: Conditional Exp.
(line 34)
-* differences in awk and gawk, LINT variable: User-modified. (line 83)
+* differences in awk and gawk, LINT variable: User-modified. (line 85)
* differences in awk and gawk, match function: String Functions.
- (line 151)
+ (line 165)
* differences in awk and gawk, next/nextfile statements: Nextfile Statement.
(line 6)
* differences in awk and gawk, print/printf statements: Format Modifiers.
@@ -22723,13 +22991,13 @@ Index
* differences in awk and gawk, single-character fields: Single Character Fields.
(line 6)
* differences in awk and gawk, split function: String Functions.
- (line 209)
+ (line 223)
* differences in awk and gawk, strings: Scalar Constants. (line 20)
* differences in awk and gawk, strings, storing: Records. (line 182)
* differences in awk and gawk, strtonum function (gawk): String Functions.
- (line 247)
+ (line 261)
* differences in awk and gawk, TEXTDOMAIN variable: User-modified.
- (line 138)
+ (line 140)
* differences in awk and gawk, trunc-mod operation: Arithmetic Ops.
(line 66)
* directories, changing: Sample Library. (line 6)
@@ -22746,7 +23014,7 @@ Index
* dollar sign ($), $ field operator: Fields. (line 19)
* dollar sign ($), incrementing fields and arrays: Increment Ops.
(line 30)
-* double quote (") <1>: Quoting. (line 33)
+* double quote (") <1>: Quoting. (line 37)
* double quote ("): Read Terminal. (line 25)
* double quote ("), regexp constants: Computed Regexps. (line 28)
* double-precision floating-point: Basic Data Typing. (line 33)
@@ -22803,7 +23071,7 @@ Index
* error output: Special FD. (line 6)
* escape processing, gsub/gensub/sub functions: Gory Details. (line 6)
* escape sequences: Escape Sequences. (line 6)
-* escape sequences, unrecognized: Options. (line 180)
+* escape sequences, unrecognized: Options. (line 187)
* evaluation order: Increment Ops. (line 61)
* evaluation order, concatenation: Concatenation. (line 42)
* evaluation order, functions: Calling Built-in. (line 30)
@@ -22824,6 +23092,7 @@ Index
* exclamation point (!), !~ operator <6>: Case-sensitivity. (line 26)
* exclamation point (!), !~ operator: Regexp Usage. (line 19)
* exit statement: Exit Statement. (line 6)
+* exit status, of gawk: Exit Status. (line 6)
* exp function: Numeric Functions. (line 22)
* expand utility: Very Simple. (line 69)
* expressions: Expressions. (line 6)
@@ -22841,7 +23110,7 @@ Index
(line 15)
* extensions, Bell Laboratories awk: BTL. (line 6)
* extensions, in gawk, not in POSIX awk: POSIX/GNU. (line 6)
-* extensions, mawk: Other Versions. (line 46)
+* extensions, mawk: Other Versions. (line 50)
* extract.awk program: Extract Program. (line 77)
* extraction, of marked strings (internationalization): String Extraction.
(line 6)
@@ -22855,14 +23124,14 @@ Index
* Fenlason, Jay <1>: Contributors. (line 19)
* Fenlason, Jay: History. (line 30)
* fflush function: I/O Functions. (line 25)
-* fflush function, unsupported: Options. (line 203)
+* fflush function, unsupported: Options. (line 210)
* field numbers: Nonconstant Fields. (line 6)
* field operator $: Fields. (line 19)
* field operators, dollar sign as: Fields. (line 19)
-* field separators <1>: User-modified. (line 43)
+* field separators <1>: User-modified. (line 45)
* field separators: Field Separators. (line 13)
* field separators, choice of: Field Separators. (line 49)
-* field separators, FIELDWIDTHS variable and: User-modified. (line 33)
+* field separators, FIELDWIDTHS variable and: User-modified. (line 35)
* field separators, in multiline records: Multiple Line. (line 41)
* field separators, on command line: Command Line Field Separator.
(line 6)
@@ -22887,7 +23156,7 @@ Index
* fields, separating: Field Separators. (line 13)
* fields, single-character: Single Character Fields.
(line 6)
-* FIELDWIDTHS variable <1>: User-modified. (line 33)
+* FIELDWIDTHS variable <1>: User-modified. (line 35)
* FIELDWIDTHS variable: Constant Size. (line 22)
* file descriptors: Special FD. (line 6)
* file names, distinguishing: Auto-set. (line 52)
@@ -22910,7 +23179,7 @@ Index
* files, as single records: Records. (line 191)
* files, awk programs in: Long. (line 6)
* files, awkprof.out: Profiling. (line 10)
-* files, awkvars.out: Options. (line 95)
+* files, awkvars.out: Options. (line 102)
* files, closing: I/O Functions. (line 10)
* files, descriptors, See file descriptors: Special FD. (line 6)
* files, for process information: Special Process. (line 6)
@@ -22938,7 +23207,7 @@ Index
* files, portable object: Explaining gettext. (line 36)
* files, portable object, converting to message object files: I18N Example.
(line 62)
-* files, portable object, generating: Options. (line 130)
+* files, portable object, generating: Options. (line 137)
* files, portal: Portal Files. (line 6)
* files, processing, ARGIND variable and: Auto-set. (line 47)
* files, reading: Rewind Function. (line 6)
@@ -22948,7 +23217,6 @@ Index
* files, source, search path for: Igawk Program. (line 358)
* files, splitting: Split Program. (line 6)
* files, Texinfo, extracting programs from: Extract Program. (line 6)
-* Fish, Fred <1>: Bugs. (line 57)
* Fish, Fred: Contributors. (line 50)
* fixed-width data: Constant Size. (line 9)
* flag variables <1>: Tee Program. (line 20)
@@ -22985,17 +23253,19 @@ Index
* Free Software Foundation (FSF): Manual History. (line 6)
* free_temp internal macro: Internals. (line 102)
* FreeBSD: Glossary. (line 582)
-* FS variable <1>: User-modified. (line 43)
+* FS variable <1>: User-modified. (line 45)
* FS variable: Field Separators. (line 13)
* FS variable, --field-separator option and: Options. (line 21)
* FS variable, as null string: Single Character Fields.
(line 20)
-* FS variable, as TAB character: Options. (line 196)
+* FS variable, as TAB character: Options. (line 203)
* FS variable, changing value of <1>: Known Bugs. (line 6)
* FS variable, changing value of: Field Separators. (line 33)
* FS variable, running awk programs and: Cut Program. (line 66)
* FS variable, setting from command line: Command Line Field Separator.
(line 6)
+* FS, containing ^: Regexp Field Splitting.
+ (line 59)
* FSF (Free Software Foundation) <1>: Glossary. (line 284)
* FSF (Free Software Foundation) <2>: Getting. (line 10)
* FSF (Free Software Foundation): Manual History. (line 6)
@@ -23031,7 +23301,7 @@ Index
(line 6)
* functions, names of <1>: Definition Syntax. (line 20)
* functions, names of: Arrays. (line 17)
-* functions, recursive: Definition Syntax. (line 68)
+* functions, recursive: Definition Syntax. (line 72)
* functions, return values, setting: Internals. (line 146)
* functions, string-translation: I18N Functions. (line 6)
* functions, undefined: Function Caveats. (line 79)
@@ -23065,18 +23335,18 @@ Index
* gawk, distribution: Distribution contents.
(line 6)
* gawk, escape sequences: Escape Sequences. (line 125)
-* gawk, extensions, disabling: Options. (line 176)
+* gawk, extensions, disabling: Options. (line 183)
* gawk, features, adding: Adding Code. (line 6)
* gawk, features, advanced: Advanced Features. (line 6)
* gawk, fflush function in: I/O Functions. (line 45)
-* gawk, field separators and: User-modified. (line 63)
-* gawk, FIELDWIDTHS variable in: User-modified. (line 39)
+* gawk, field separators and: User-modified. (line 65)
+* gawk, FIELDWIDTHS variable in: User-modified. (line 41)
* gawk, file names in: Special Files. (line 6)
-* gawk, format-control characters: Control Letters. (line 80)
+* gawk, format-control characters: Control Letters. (line 18)
* gawk, function arguments and: Calling Built-in. (line 16)
* gawk, functions, adding: Dynamic Extensions. (line 10)
* gawk, hexadecimal numbers and: Nondecimal-numbers. (line 42)
-* gawk, IGNORECASE variable in: User-modified. (line 79)
+* gawk, IGNORECASE variable in: User-modified. (line 81)
* gawk, implementation issues: Notes. (line 6)
* gawk, implementation issues, debugging: Compatibility Mode. (line 6)
* gawk, implementation issues, downward compatibility: Compatibility Mode.
@@ -23092,7 +23362,7 @@ Index
(line 6)
* gawk, interval expressions and: Regexp Operators. (line 138)
* gawk, line continuation in: Conditional Exp. (line 34)
-* gawk, LINT variable in: User-modified. (line 92)
+* gawk, LINT variable in: User-modified. (line 94)
* gawk, list of contributors to: Contributors. (line 6)
* gawk, MS-DOS version of: PC Using. (line 11)
* gawk, newlines in: Statements/Lines. (line 12)
@@ -23114,12 +23384,12 @@ Index
* gawk, string-translation functions: I18N Functions. (line 6)
* gawk, timestamps: Time Functions. (line 6)
* gawk, uses for: Preface. (line 35)
-* gawk, versions of, information about, printing: Options. (line 244)
+* gawk, versions of, information about, printing: Options. (line 251)
* gawk, word-boundary operator: GNU Regexp Operators.
(line 55)
* General Public License (GPL): Glossary. (line 293)
* General Public License, See GPL: Manual History. (line 11)
-* gensub function (gawk) <1>: String Functions. (line 361)
+* gensub function (gawk) <1>: String Functions. (line 375)
* gensub function (gawk): Using Constant Regexps.
(line 44)
* gensub function (gawk), escape processing: Gory Details. (line 6)
@@ -23172,7 +23442,7 @@ Index
* GNU Lesser General Public License: Glossary. (line 373)
* GNU long options <1>: Options. (line 6)
* GNU long options: Command Line. (line 13)
-* GNU long options, printing list of: Options. (line 139)
+* GNU long options, printing list of: Options. (line 146)
* GNU Project <1>: Glossary. (line 302)
* GNU Project: Manual History. (line 11)
* GNU/Linux <1>: Glossary. (line 582)
@@ -23181,27 +23451,24 @@ Index
* GNU/Linux: Manual History. (line 28)
* GPL (General Public License) <1>: Glossary. (line 293)
* GPL (General Public License): Manual History. (line 11)
-* GPL (General Public License), printing: Options. (line 87)
+* GPL (General Public License), printing: Options. (line 94)
* grcat program: Group Functions. (line 15)
-* Grigera, Juan <1>: Bugs. (line 59)
* Grigera, Juan: Contributors. (line 54)
* group database, reading: Group Functions. (line 6)
* group file: Group Functions. (line 6)
* groups, information about: Group Functions. (line 6)
-* gsub function <1>: String Functions. (line 345)
+* gsub function <1>: String Functions. (line 359)
* gsub function: Using Constant Regexps.
(line 44)
-* gsub function, arguments of: String Functions. (line 325)
+* gsub function, arguments of: String Functions. (line 339)
* gsub function, escape processing: Gory Details. (line 6)
-* Hankerson, Darrel <1>: Bugs. (line 58)
-* Hankerson, Darrel <2>: Contributors. (line 56)
+* Hankerson, Darrel <1>: Contributors. (line 56)
* Hankerson, Darrel: Acknowledgments. (line 53)
* Hartholz, Elaine: Acknowledgments. (line 35)
* Hartholz, Marshall: Acknowledgments. (line 35)
-* Hasegawa, Isamu <1>: Contributors. (line 83)
-* Hasegawa, Isamu: Acknowledgments. (line 53)
+* Hasegawa, Isamu: Contributors. (line 83)
* hexadecimal numbers: Nondecimal-numbers. (line 6)
-* hexadecimal values, enabling interpretation of: Options. (line 168)
+* hexadecimal values, enabling interpretation of: Options. (line 175)
* histsort.awk program: History Sorting. (line 25)
* Hughes, Phil: Acknowledgments. (line 40)
* HUP signal: Profiling. (line 207)
@@ -23218,7 +23485,7 @@ Index
* if statement: Regexp Usage. (line 19)
* if statement, actions, changing: Ranges. (line 25)
* igawk.sh program: Igawk Program. (line 118)
-* IGNORECASE variable <1>: User-modified. (line 68)
+* IGNORECASE variable <1>: User-modified. (line 70)
* IGNORECASE variable: Case-sensitivity. (line 26)
* IGNORECASE variable, array sorting and: Array Sorting. (line 86)
* IGNORECASE variable, array subscripts and: Array Intro. (line 87)
@@ -23272,12 +23539,12 @@ Index
* INT signal (MS-DOS): Profiling. (line 210)
* integers: Basic Data Typing. (line 21)
* integers, unsigned: Basic Data Typing. (line 28)
-* interacting with other programs: I/O Functions. (line 63)
+* interacting with other programs: I/O Functions. (line 64)
* internationalization <1>: I18N and L10N. (line 6)
* internationalization: I18N Functions. (line 6)
* internationalization, localization <1>: Internationalization.
(line 13)
-* internationalization, localization: User-modified. (line 138)
+* internationalization, localization: User-modified. (line 140)
* internationalization, localization, character classes: Character Lists.
(line 92)
* internationalization, localization, gawk and: Internationalization.
@@ -23301,8 +23568,8 @@ Index
* Jacobs, Andrew: Passwd Functions. (line 76)
* Jaegermann, Michal <1>: Contributors. (line 45)
* Jaegermann, Michal: Acknowledgments. (line 53)
-* Java implementation of awk: Other Versions. (line 105)
-* jawk: Other Versions. (line 105)
+* Java implementation of awk: Other Versions. (line 110)
+* jawk: Other Versions. (line 110)
* Jedi knights: Undocumented. (line 6)
* join user-defined function: Join Function. (line 18)
* Kahrs, Ju"rgen <1>: Contributors. (line 64)
@@ -23377,22 +23644,22 @@ Index
* lines, duplicate, removing: History Sorting. (line 6)
* lines, matching ranges of: Ranges. (line 6)
* lines, skipping between markers: Ranges. (line 43)
-* lint checking: User-modified. (line 83)
+* lint checking: User-modified. (line 85)
* lint checking, array elements: Delete. (line 34)
* lint checking, array subscripts: Uninitialized Subscripts.
(line 42)
* lint checking, empty programs: Command Line. (line 16)
-* lint checking, issuing warnings: Options. (line 144)
+* lint checking, issuing warnings: Options. (line 151)
* lint checking, POSIXLY_CORRECT environment variable: Options.
- (line 282)
+ (line 289)
* lint checking, undefined functions: Function Caveats. (line 96)
-* LINT variable: User-modified. (line 83)
+* LINT variable: User-modified. (line 85)
* Linux <1>: Glossary. (line 582)
* Linux <2>: Atari Compiling. (line 16)
* Linux <3>: I18N Example. (line 55)
* Linux: Manual History. (line 28)
* locale categories: Explaining gettext. (line 78)
-* locale decimal point character: Options. (line 200)
+* locale decimal point character: Options. (line 207)
* locale, definition of: Locales. (line 6)
* localization: I18N and L10N. (line 6)
* localization, See internationalization, localization: I18N and L10N.
@@ -23422,8 +23689,8 @@ Index
(line 6)
* marked strings, extracting: String Extraction. (line 6)
* Marx, Groucho: Increment Ops. (line 61)
-* match function: String Functions. (line 98)
-* match function, RSTART/RLENGTH variables: String Functions. (line 115)
+* match function: String Functions. (line 112)
+* match function, RSTART/RLENGTH variables: String Functions. (line 129)
* matching, expressions, See comparison expressions: Typing and Comparison.
(line 9)
* matching, leftmost longest: Multiple Line. (line 26)
@@ -23456,7 +23723,7 @@ Index
* NetBSD: Glossary. (line 582)
* networks, programming: TCP/IP Networking. (line 6)
* networks, support for: Special Network. (line 6)
-* newlines <1>: Options. (line 183)
+* newlines <1>: Options. (line 190)
* newlines <2>: Boolean Ops. (line 67)
* newlines: Statements/Lines. (line 6)
* newlines, as field separators: Field Separators. (line 63)
@@ -23503,7 +23770,7 @@ Index
(line 42)
* null strings, converting numbers to strings: Conversion. (line 21)
* null strings, matching: Gory Details. (line 160)
-* null strings, quoting and: Quoting. (line 58)
+* null strings, quoting and: Quoting. (line 62)
* number sign (#), #! (executable scripts): Executable Scripts.
(line 6)
* number sign (#), #! (executable scripts), portability issues with: Executable Scripts.
@@ -23517,7 +23784,7 @@ Index
(line 6)
* numbers, converting: Conversion. (line 6)
* numbers, converting, to strings <1>: Bitwise Functions. (line 99)
-* numbers, converting, to strings: User-modified. (line 26)
+* numbers, converting, to strings: User-modified. (line 28)
* numbers, floating-point: Basic Data Typing. (line 21)
* numbers, floating-point, AWKNUM internal type: Internals. (line 19)
* numbers, hexadecimal: Nondecimal-numbers. (line 6)
@@ -23532,16 +23799,16 @@ Index
* oawk utility: Names. (line 17)
* obsolete features: Obsolete. (line 6)
* octal numbers: Nondecimal-numbers. (line 6)
-* octal values, enabling interpretation of: Options. (line 168)
-* OFMT variable <1>: User-modified. (line 100)
+* octal values, enabling interpretation of: Options. (line 175)
+* OFMT variable <1>: User-modified. (line 102)
* OFMT variable <2>: Conversion. (line 54)
* OFMT variable: OFMT. (line 15)
* OFMT variable, POSIX awk and: OFMT. (line 27)
-* OFS variable <1>: User-modified. (line 109)
+* OFS variable <1>: User-modified. (line 111)
* OFS variable <2>: Output Separators. (line 6)
* OFS variable: Changing Fields. (line 64)
* OpenBSD: Glossary. (line 582)
-* OpenSolaris: Other Versions. (line 96)
+* OpenSolaris: Other Versions. (line 101)
* operating systems, BSD-based <1>: Portal Files. (line 6)
* operating systems, BSD-based: Manual History. (line 28)
* operating systems, PC, gawk on: PC Using. (line 6)
@@ -23585,13 +23852,13 @@ Index
* options, deprecated: Obsolete. (line 6)
* options, long <1>: Options. (line 6)
* options, long: Command Line. (line 13)
-* options, printing list of: Options. (line 139)
+* options, printing list of: Options. (line 146)
* OR bitwise operation: Bitwise Functions. (line 6)
* or Boolean-logic operator: Boolean Ops. (line 6)
* or function (gawk): Bitwise Functions. (line 39)
* ord user-defined function: Ordinal Functions. (line 16)
* order of evaluation, concatenation: Concatenation. (line 42)
-* ORS variable <1>: User-modified. (line 114)
+* ORS variable <1>: User-modified. (line 116)
* ORS variable: Output Separators. (line 20)
* output field separator, See OFS variable: Changing Fields. (line 64)
* output record separator, See ORS variable: Output Separators.
@@ -23623,7 +23890,7 @@ Index
* patterns, ranges in: Ranges. (line 6)
* patterns, regexp constants as: Expression Patterns. (line 36)
* patterns, types of: Pattern Overview. (line 14)
-* pawk profiling Bell Labs awk: Other Versions. (line 88)
+* pawk profiling Bell Labs awk: Other Versions. (line 93)
* PC operating systems, gawk on: PC Using. (line 6)
* PC operating systems, gawk on, installing: PC Installation. (line 6)
* percent sign (%), % operator: Precedence. (line 55)
@@ -23640,6 +23907,7 @@ Index
(line 6)
* pipes, input: Getline/Pipe. (line 6)
* pipes, output: Redirection. (line 54)
+* Pitts, Dave: Bugs. (line 73)
* plus sign (+): Regexp Operators. (line 101)
* plus sign (+), + operator: Precedence. (line 52)
* plus sign (+), ++ operator <1>: Precedence. (line 46)
@@ -23662,7 +23930,7 @@ Index
* portability, deleting array elements: Delete. (line 51)
* portability, example programs: Library Functions. (line 31)
* portability, fflush function and: I/O Functions. (line 29)
-* portability, functions, defining: Definition Syntax. (line 88)
+* portability, functions, defining: Definition Syntax. (line 92)
* portability, gawk: New Ports. (line 6)
* portability, gettext library and: Explaining gettext. (line 10)
* portability, internationalization and: I18N Portability. (line 6)
@@ -23673,13 +23941,13 @@ Index
* portability, NF variable, decrementing: Changing Fields. (line 115)
* portability, operators: Increment Ops. (line 61)
* portability, operators, not in POSIX awk: Precedence. (line 100)
-* portability, POSIXLY_CORRECT environment variable: Options. (line 300)
-* portability, substr function: String Functions. (line 443)
+* portability, POSIXLY_CORRECT environment variable: Options. (line 307)
+* portability, substr function: String Functions. (line 457)
* portable object files <1>: Translator i18n. (line 6)
* portable object files: Explaining gettext. (line 36)
* portable object files, converting to message object files: I18N Example.
(line 62)
-* portable object files, generating: Options. (line 130)
+* portable object files, generating: Options. (line 137)
* portal files: Portal Files. (line 6)
* porting gawk: New Ports. (line 6)
* positional specifiers, printf statement <1>: Printf Ordering.
@@ -23702,13 +23970,13 @@ Index
* POSIX awk, character lists and, character classes: Character Lists.
(line 30)
* POSIX awk, continue statement and: Continue Statement. (line 43)
-* POSIX awk, CONVFMT variable and: User-modified. (line 26)
+* POSIX awk, CONVFMT variable and: User-modified. (line 28)
* POSIX awk, date utility and: Time Functions. (line 259)
* POSIX awk, field separators and <1>: Field Splitting Summary.
(line 41)
* POSIX awk, field separators and: Fields. (line 6)
-* POSIX awk, FS variable and: User-modified. (line 52)
-* POSIX awk, function keyword in: Definition Syntax. (line 73)
+* POSIX awk, FS variable and: User-modified. (line 54)
+* POSIX awk, function keyword in: Definition Syntax. (line 77)
* POSIX awk, functions and, gsub/sub: Gory Details. (line 53)
* POSIX awk, functions and, length: String Functions. (line 80)
* POSIX awk, GNU long options and: Options. (line 15)
@@ -23722,11 +23990,11 @@ Index
* POSIX awk, regular expressions and: Regexp Operators. (line 154)
* POSIX awk, timestamps and: Time Functions. (line 6)
* POSIX awk, | I/O operator and: Getline/Pipe. (line 52)
-* POSIX mode: Options. (line 176)
+* POSIX mode: Options. (line 183)
* POSIX, awk and: Preface. (line 22)
* POSIX, gawk extensions not included in: POSIX/GNU. (line 6)
* POSIX, programs, implementing in awk: Clones. (line 6)
-* POSIXLY_CORRECT environment variable: Options. (line 282)
+* POSIXLY_CORRECT environment variable: Options. (line 289)
* precedence <1>: Precedence. (line 6)
* precedence: Increment Ops. (line 61)
* precedence, regexp operators: Regexp Operators. (line 149)
@@ -23735,7 +24003,7 @@ Index
* print statement, commas, omitting: Print Examples. (line 31)
* print statement, I/O operators in: Precedence. (line 72)
* print statement, line continuations and: Print Examples. (line 76)
-* print statement, OFMT variable and: User-modified. (line 109)
+* print statement, OFMT variable and: User-modified. (line 111)
* print statement, See Also redirection, of output: Redirection.
(line 14)
* print statement, sprintf function and: Round Function. (line 6)
@@ -23756,7 +24024,7 @@ Index
* printf statement, sprintf function and: Round Function. (line 6)
* printf statement, syntax of: Basic Printf. (line 6)
* printing: Printing. (line 6)
-* printing, list of options: Options. (line 139)
+* printing, list of options: Options. (line 146)
* printing, mailing labels: Labels Program. (line 6)
* printing, unduplicated lines of text: Uniq Program. (line 6)
* printing, user information: Id Program. (line 6)
@@ -23783,7 +24051,7 @@ Index
* programming conventions, functions, calling: Calling Built-in.
(line 10)
* programming conventions, functions, writing: Definition Syntax.
- (line 50)
+ (line 54)
* programming conventions, gawk internals: Internal File Ops. (line 33)
* programming conventions, nextfile statement: Nextfile Function.
(line 20)
@@ -23795,16 +24063,18 @@ Index
* programming, basic steps: Basic High Level. (line 19)
* programming, concepts: Basic Concepts. (line 6)
* pwcat program: Passwd Functions. (line 23)
+* QTawk: Other Versions. (line 117)
* question mark (?) <1>: GNU Regexp Operators.
(line 51)
* question mark (?): Regexp Operators. (line 110)
* question mark (?), ?: operator: Precedence. (line 93)
+* QuikTrim Awk: Other Versions. (line 117)
* QUIT signal (MS-DOS): Profiling. (line 210)
* quoting <1>: Comments. (line 27)
* quoting <2>: Long. (line 26)
* quoting: Read Terminal. (line 25)
* quoting, rules for: Quoting. (line 6)
-* quoting, tricks for: Quoting. (line 67)
+* quoting, tricks for: Quoting. (line 71)
* Rakitzis, Byron: History Sorting. (line 25)
* rand function: Numeric Functions. (line 40)
* random numbers, Cliff: Cliff Random Function.
@@ -23813,7 +24083,7 @@ Index
* random numbers, seed of: Numeric Functions. (line 70)
* range expressions: Character Lists. (line 6)
* range patterns: Ranges. (line 6)
-* Rankin, Pat <1>: Bugs. (line 64)
+* Rankin, Pat <1>: Bugs. (line 72)
* Rankin, Pat <2>: Contributors. (line 35)
* Rankin, Pat <3>: Assignment Ops. (line 100)
* Rankin, Pat: Acknowledgments. (line 53)
@@ -23821,7 +24091,7 @@ Index
* readable data files, checking: File Checking. (line 6)
* readable.awk program: File Checking. (line 11)
* recipe for a programming language: History. (line 6)
-* record separators <1>: User-modified. (line 119)
+* record separators <1>: User-modified. (line 121)
* record separators: Records. (line 14)
* record separators, changing: Records. (line 81)
* record separators, regular expressions as: Records. (line 112)
@@ -23833,7 +24103,7 @@ Index
* records, splitting input into: Records. (line 6)
* records, terminating: Records. (line 112)
* records, treating files as: Records. (line 191)
-* recursive functions: Definition Syntax. (line 68)
+* recursive functions: Definition Syntax. (line 72)
* redirection of input: Getline/File. (line 6)
* redirection of output: Redirection. (line 6)
* reference counting, sorting arrays: Array Sorting. (line 79)
@@ -23858,7 +24128,7 @@ Index
* regular expressions, as patterns <1>: Regexp Patterns. (line 6)
* regular expressions, as patterns: Regexp Usage. (line 6)
* regular expressions, as record separators: Records. (line 112)
-* regular expressions, case sensitivity <1>: User-modified. (line 68)
+* regular expressions, case sensitivity <1>: User-modified. (line 70)
* regular expressions, case sensitivity: Case-sensitivity. (line 6)
* regular expressions, computed: Computed Regexps. (line 6)
* regular expressions, constants, See regexp constants: Regexp Usage.
@@ -23868,7 +24138,7 @@ Index
(line 59)
* regular expressions, gawk, command-line options: GNU Regexp Operators.
(line 62)
-* regular expressions, interval expressions and: Options. (line 224)
+* regular expressions, interval expressions and: Options. (line 231)
* regular expressions, leftmost longest match: Leftmost Longest.
(line 6)
* regular expressions, operators <1>: Regexp Operators. (line 6)
@@ -23901,7 +24171,7 @@ Index
* right shift, bitwise: Bitwise Functions. (line 32)
* Ritchie, Dennis: Basic Data Typing. (line 71)
* RLENGTH variable: Auto-set. (line 163)
-* RLENGTH variable, match function and: String Functions. (line 115)
+* RLENGTH variable, match function and: String Functions. (line 129)
* Robbins, Arnold <1>: Future Extensions. (line 6)
* Robbins, Arnold <2>: Bugs. (line 29)
* Robbins, Arnold <3>: Contributors. (line 92)
@@ -23923,12 +24193,12 @@ Index
* round user-defined function: Round Function. (line 16)
* rounding: Round Function. (line 6)
* rounding numbers: Round Function. (line 6)
-* RS variable <1>: User-modified. (line 119)
+* RS variable <1>: User-modified. (line 121)
* RS variable: Records. (line 20)
* RS variable, multiline records and: Multiple Line. (line 17)
* rshift function (gawk): Bitwise Functions. (line 46)
* RSTART variable: Auto-set. (line 169)
-* RSTART variable, match function and: String Functions. (line 115)
+* RSTART variable, match function and: String Functions. (line 129)
* RT variable <1>: Auto-set. (line 176)
* RT variable <2>: Multiple Line. (line 129)
* RT variable: Records. (line 112)
@@ -23957,19 +24227,19 @@ Index
(line 10)
* semicolon (;), separating statements in actions: Action Overview.
(line 19)
-* separators, field: User-modified. (line 43)
-* separators, field, FIELDWIDTHS variable and: User-modified. (line 33)
+* separators, field: User-modified. (line 45)
+* separators, field, FIELDWIDTHS variable and: User-modified. (line 35)
* separators, field, POSIX and: Fields. (line 6)
* separators, for records: Records. (line 14)
* separators, for records, regular expressions as: Records. (line 112)
* separators, for statements in actions: Action Overview. (line 19)
-* separators, record: User-modified. (line 119)
-* separators, subscript: User-modified. (line 132)
+* separators, record: User-modified. (line 121)
+* separators, subscript: User-modified. (line 134)
* set_value internal function: Internals. (line 146)
* shells, piping commands into: Redirection. (line 140)
* shells, quoting: Using Shell Variables.
(line 12)
-* shells, quoting, rules for: Quoting. (line 14)
+* shells, quoting, rules for: Quoting. (line 18)
* shells, scripts: One-shot. (line 22)
* shells, variables: Using Shell Variables.
(line 6)
@@ -23992,38 +24262,38 @@ Index
* signals, QUIT/SIGQUIT (MS-DOS): Profiling. (line 210)
* signals, USR1/SIGUSR1: Profiling. (line 185)
* sin function: Numeric Functions. (line 31)
-* single quote (') <1>: Quoting. (line 27)
+* single quote (') <1>: Quoting. (line 31)
* single quote (') <2>: Long. (line 33)
* single quote ('): One-shot. (line 15)
* single quote ('), vs. apostrophe: Comments. (line 27)
-* single quote ('), with double quotes: Quoting. (line 49)
+* single quote ('), with double quotes: Quoting. (line 53)
* single-character fields: Single Character Fields.
(line 6)
* single-precision floating-point: Basic Data Typing. (line 33)
* Skywalker, Luke: Undocumented. (line 6)
* sleep utility: Alarm Program. (line 102)
* sockets: TCP/IP Networking. (line 30)
-* Solaris, POSIX compliant awk: Other Versions. (line 96)
+* Solaris, POSIX compliant awk: Other Versions. (line 101)
* sort function, arrays, sorting: Array Sorting. (line 6)
* sort utility: Word Sorting. (line 54)
* sort utility, coprocesses and: Two-way I/O. (line 84)
* sorting characters in different languages: Explaining gettext.
(line 89)
-* source code, awka: Other Versions. (line 76)
+* source code, awka: Other Versions. (line 81)
* source code, Bell Laboratories awk: Other Versions. (line 13)
* source code, gawk: Gawk Distribution. (line 6)
* source code, mawk: Other Versions. (line 33)
-* source code, mixing: Options. (line 231)
+* source code, mixing: Options. (line 238)
* source files, search path for: Igawk Program. (line 358)
* sparse arrays: Array Intro. (line 66)
* Spencer, Henry: Glossary. (line 12)
-* split function: String Functions. (line 186)
+* split function: String Functions. (line 200)
* split function, array elements, deleting: Delete. (line 56)
* split utility: Split Program. (line 6)
* split.awk program: Split Program. (line 30)
-* sprintf function <1>: String Functions. (line 239)
+* sprintf function <1>: String Functions. (line 253)
* sprintf function: OFMT. (line 15)
-* sprintf function, OFMT variable and: User-modified. (line 109)
+* sprintf function, OFMT variable and: User-modified. (line 111)
* sprintf function, print/printf statements and: Round Function.
(line 6)
* sqrt function: Numeric Functions. (line 18)
@@ -24055,7 +24325,7 @@ Index
* strings: Internals. (line 77)
* strings, converting: Conversion. (line 6)
* strings, converting, numbers to <1>: Bitwise Functions. (line 99)
-* strings, converting, numbers to: User-modified. (line 26)
+* strings, converting, numbers to: User-modified. (line 28)
* strings, empty, See null strings: Records. (line 102)
* strings, extracting: String Extraction. (line 6)
* strings, for localization: Programmer i18n. (line 14)
@@ -24065,16 +24335,16 @@ Index
* strings, null: Regexp Field Splitting.
(line 43)
* strings, numeric: Variable Typing. (line 6)
-* strings, splitting: String Functions. (line 200)
-* strtonum function (gawk): String Functions. (line 247)
+* strings, splitting: String Functions. (line 214)
+* strtonum function (gawk): String Functions. (line 261)
* strtonum function (gawk), --non-decimal-data option and: Nondecimal Data.
(line 36)
-* sub function <1>: String Functions. (line 268)
+* sub function <1>: String Functions. (line 282)
* sub function: Using Constant Regexps.
(line 44)
-* sub function, arguments of: String Functions. (line 325)
+* sub function, arguments of: String Functions. (line 339)
* sub function, escape processing: Gory Details. (line 6)
-* subscript separators: User-modified. (line 132)
+* subscript separators: User-modified. (line 134)
* subscripts in arrays, multidimensional: Multi-dimensional. (line 6)
* subscripts in arrays, multidimensional, scanning: Multi-scanning.
(line 11)
@@ -24082,15 +24352,15 @@ Index
(line 6)
* subscripts in arrays, uninitialized variables as: Uninitialized Subscripts.
(line 6)
-* SUBSEP variable: User-modified. (line 132)
+* SUBSEP variable: User-modified. (line 134)
* SUBSEP variable, multidimensional arrays: Multi-dimensional.
(line 12)
-* substr function: String Functions. (line 412)
-* Sumner, Andrew: Other Versions. (line 76)
+* substr function: String Functions. (line 426)
+* Sumner, Andrew: Other Versions. (line 81)
* switch statement: Switch Statement. (line 6)
* syntactic ambiguity: /= operator vs. /=.../ regexp constant: Assignment Ops.
(line 148)
-* system function: I/O Functions. (line 63)
+* system function: I/O Functions. (line 64)
* systime function (gawk): Time Functions. (line 24)
* tandem: Tandem Installation. (line 6)
* Tcl: Library Names. (line 57)
@@ -24115,7 +24385,7 @@ Index
* text, printing, unduplicated lines of: Uniq Program. (line 6)
* textdomain function (C library): Explaining gettext. (line 27)
* TEXTDOMAIN variable <1>: Programmer i18n. (line 9)
-* TEXTDOMAIN variable: User-modified. (line 138)
+* TEXTDOMAIN variable: User-modified. (line 140)
* TEXTDOMAIN variable, BEGIN pattern and: Programmer i18n. (line 58)
* TEXTDOMAIN variable, portability and: I18N Portability. (line 20)
* tilde (~), ~ operator <1>: Expression Patterns. (line 24)
@@ -24137,11 +24407,11 @@ Index
(line 6)
* tmp_number internal function: Internals. (line 92)
* tmp_string internal function: Internals. (line 87)
-* tolower function: String Functions. (line 454)
-* toupper function: String Functions. (line 460)
+* tolower function: String Functions. (line 468)
+* toupper function: String Functions. (line 474)
* tr utility: Translate Program. (line 6)
* translate.awk program: Translate Program. (line 55)
-* troubleshooting, --non-decimal-data option: Options. (line 171)
+* troubleshooting, --non-decimal-data option: Options. (line 178)
* troubleshooting, -F option: Known Bugs. (line 6)
* troubleshooting, == operator: Comparison Operators.
(line 37)
@@ -24153,7 +24423,7 @@ Index
(line 22)
* troubleshooting, fatal errors, printf format strings: Format Modifiers.
(line 159)
-* troubleshooting, fflush function: I/O Functions. (line 51)
+* troubleshooting, fflush function: I/O Functions. (line 52)
* troubleshooting, function call syntax: Function Calls. (line 28)
* troubleshooting, gawk <1>: Compatibility Mode. (line 6)
* troubleshooting, gawk: Known Bugs. (line 6)
@@ -24161,8 +24431,8 @@ Index
* troubleshooting, gawk, fatal errors, function arguments: Calling Built-in.
(line 16)
* troubleshooting, getline function: File Checking. (line 24)
-* troubleshooting, gsub/sub functions: String Functions. (line 335)
-* troubleshooting, match function: String Functions. (line 181)
+* troubleshooting, gsub/sub functions: String Functions. (line 349)
+* troubleshooting, match function: String Functions. (line 195)
* troubleshooting, print statement, omitting commas: Print Examples.
(line 31)
* troubleshooting, printing: Redirection. (line 115)
@@ -24171,10 +24441,10 @@ Index
* troubleshooting, regexp constants vs. string constants: Computed Regexps.
(line 38)
* troubleshooting, string concatenation: Concatenation. (line 27)
-* troubleshooting, substr function: String Functions. (line 430)
-* troubleshooting, system function: I/O Functions. (line 87)
+* troubleshooting, substr function: String Functions. (line 444)
+* troubleshooting, system function: I/O Functions. (line 88)
* troubleshooting, typographical errors, global variables: Options.
- (line 101)
+ (line 108)
* true, logical: Truth Values. (line 6)
* Trueman, David <1>: Contributors. (line 31)
* Trueman, David <2>: Acknowledgments. (line 44)
@@ -24232,12 +24502,12 @@ Index
(line 6)
* variables, getline command into, using: Getline/Variable. (line 6)
* variables, global, for library functions: Library Names. (line 11)
-* variables, global, printing list of: Options. (line 95)
+* variables, global, printing list of: Options. (line 102)
* variables, initializing: Using Variables. (line 17)
* variables, names of: Arrays. (line 17)
* variables, private: Library Names. (line 11)
* variables, setting: Options. (line 30)
-* variables, shadowing: Definition Syntax. (line 56)
+* variables, shadowing: Definition Syntax. (line 60)
* variables, types of: Assignment Ops. (line 40)
* variables, types of, comparison expressions and: Typing and Comparison.
(line 9)
@@ -24257,7 +24527,7 @@ Index
* vname internal variable: Internals. (line 62)
* w utility: Constant Size. (line 22)
* Wall, Larry: Future Extensions. (line 6)
-* warnings, issuing: Options. (line 144)
+* warnings, issuing: Options. (line 151)
* wc utility: Wc Program. (line 6)
* wc.awk program: Wc Program. (line 45)
* Weinberger, Peter <1>: Contributors. (line 12)
@@ -24266,7 +24536,8 @@ Index
* while statement: Regexp Usage. (line 19)
* whitespace, as field separators: Field Separators. (line 63)
* whitespace, functions, calling: Calling Built-in. (line 10)
-* whitespace, newlines as: Options. (line 183)
+* whitespace, newlines as: Options. (line 190)
+* Wildenhues, Ralf: Bugs. (line 71)
* Williams, Kent: Contributors. (line 37)
* Woods, John: Contributors. (line 28)
* word boundaries, matching: GNU Regexp Operators.
@@ -24315,370 +24586,373 @@ Index

Tag Table:
-Node: Top1336
-Node: Foreword27371
-Node: Preface31692
-Ref: Preface-Footnote-134571
-Node: History34803
-Node: Names37019
-Ref: Names-Footnote-138491
-Node: This Manual38563
-Ref: This Manual-Footnote-143318
-Node: Conventions43418
-Node: Manual History45292
-Ref: Manual History-Footnote-148745
-Ref: Manual History-Footnote-248786
-Node: How To Contribute48860
-Node: Acknowledgments49458
-Node: Getting Started53260
-Node: Running gawk55632
-Node: One-shot56818
-Node: Read Terminal58043
-Ref: Read Terminal-Footnote-159701
-Node: Long59872
-Node: Executable Scripts61248
-Ref: Executable Scripts-Footnote-163144
-Ref: Executable Scripts-Footnote-263295
-Node: Comments63746
-Node: Quoting66114
-Node: Sample Data Files70615
-Node: Very Simple73647
-Node: Two Rules78252
-Node: More Complex80399
-Ref: More Complex-Footnote-183322
-Ref: More Complex-Footnote-283770
-Node: Statements/Lines83853
-Ref: Statements/Lines-Footnote-188235
-Node: Other Features88500
-Node: When89352
-Ref: When-Footnote-191591
-Node: Regexp91676
-Node: Regexp Usage93130
-Node: Escape Sequences95182
-Node: Regexp Operators100921
-Ref: Regexp Operators-Footnote-1108028
-Ref: Regexp Operators-Footnote-2108175
-Node: Character Lists108273
-Ref: table-char-classes110230
-Node: GNU Regexp Operators112855
-Node: Case-sensitivity116499
-Ref: Case-sensitivity-Footnote-1119672
-Node: Leftmost Longest119907
-Node: Computed Regexps121098
-Node: Locales124479
-Node: Reading Files126745
-Node: Records128502
-Ref: Records-Footnote-1137060
-Node: Fields137097
-Ref: Fields-Footnote-1140127
-Node: Nonconstant Fields140213
-Node: Changing Fields142415
-Node: Field Separators147696
-Node: Regexp Field Splitting151187
-Node: Single Character Fields153652
-Node: Command Line Field Separator154703
-Node: Field Splitting Summary158142
-Ref: Field Splitting Summary-Footnote-1161328
-Node: Constant Size161429
-Node: Multiple Line165906
-Ref: Multiple Line-Footnote-1171637
-Node: Getline171816
-Node: Plain Getline173884
-Node: Getline/Variable175901
-Node: Getline/File177042
-Node: Getline/Variable/File178366
-Node: Getline/Pipe179925
-Node: Getline/Variable/Pipe182522
-Node: Getline/Coprocess183629
-Node: Getline/Variable/Coprocess184872
-Node: Getline Notes185586
-Node: Getline Summary187229
-Ref: table-getline-variants187513
-Node: Printing188079
-Node: Print189708
-Node: Print Examples191034
-Node: Output Separators193829
-Node: OFMT195590
-Node: Printf196945
-Node: Basic Printf197864
-Node: Control Letters199399
-Node: Format Modifiers202617
-Node: Printf Examples208635
-Node: Redirection211352
-Node: Special Files218249
-Node: Special FD218883
-Node: Special Process221909
-Node: Special Network224144
-Node: Special Caveats224986
-Ref: Special Caveats-Footnote-1226184
-Node: Close Files And Pipes226567
-Ref: Close Files And Pipes-Footnote-1233488
-Ref: Close Files And Pipes-Footnote-2233636
-Node: Expressions233784
-Node: Constants235973
-Node: Scalar Constants236654
-Ref: Scalar Constants-Footnote-1237509
-Node: Nondecimal-numbers237691
-Node: Regexp Constants240749
-Node: Using Constant Regexps241222
-Node: Variables244305
-Node: Using Variables244961
-Node: Assignment Options246471
-Node: Conversion248348
-Ref: table-locale-affects253780
-Ref: Conversion-Footnote-1254404
-Node: Arithmetic Ops254513
-Node: Concatenation257025
-Ref: Concatenation-Footnote-1259807
-Node: Assignment Ops259898
-Ref: table-assign-ops264876
-Node: Increment Ops266277
-Node: Truth Values269770
-Node: Typing and Comparison270820
-Node: Variable Typing271523
-Ref: Variable Typing-Footnote-1275198
-Node: Comparison Operators275342
-Ref: table-relational-ops275718
-Node: Boolean Ops279267
-Ref: Boolean Ops-Footnote-1283327
-Node: Conditional Exp283418
-Node: Function Calls285155
-Node: Precedence288437
-Node: Patterns and Actions292093
-Node: Pattern Overview293147
-Node: Regexp Patterns294584
-Node: Expression Patterns295127
-Node: Ranges298677
-Node: BEGIN/END301766
-Node: Using BEGIN/END302516
-Ref: Using BEGIN/END-Footnote-1305248
-Node: I/O And BEGIN/END305362
-Node: Empty307629
-Node: Using Shell Variables307937
-Node: Action Overview310218
-Node: Statements312576
-Node: If Statement314432
-Node: While Statement315931
-Node: Do Statement317963
-Node: For Statement319112
-Node: Switch Statement322252
-Node: Break Statement324528
-Node: Continue Statement326585
-Node: Next Statement328489
-Node: Nextfile Statement330769
-Node: Exit Statement333366
-Node: Built-in Variables335437
-Node: User-modified336532
-Ref: User-modified-Footnote-1343775
-Node: Auto-set343837
-Ref: Auto-set-Footnote-1352177
-Node: ARGC and ARGV352382
-Node: Arrays356094
-Node: Array Intro358002
-Node: Reference to Elements362199
-Node: Assigning Elements364066
-Node: Array Example364533
-Node: Scanning an Array366255
-Node: Delete368522
-Ref: Delete-Footnote-1370904
-Node: Numeric Array Subscripts370961
-Node: Uninitialized Subscripts373148
-Node: Multi-dimensional374754
-Node: Multi-scanning377767
-Node: Array Sorting379382
-Node: Functions383045
-Node: Built-in383780
-Node: Calling Built-in384750
-Node: Numeric Functions386717
-Ref: Numeric Functions-Footnote-1390459
-Ref: Numeric Functions-Footnote-2390785
-Node: String Functions391054
-Ref: String Functions-Footnote-1410916
-Ref: String Functions-Footnote-2411045
-Ref: String Functions-Footnote-3411293
-Node: Gory Details411380
-Ref: table-sub-escapes413015
-Ref: table-sub-posix-92414350
-Ref: table-sub-proposed415689
-Ref: table-posix-2001-sub417041
-Ref: table-gensub-escapes418378
-Ref: Gory Details-Footnote-1419564
-Node: I/O Functions419615
-Ref: I/O Functions-Footnote-1426189
-Node: Time Functions426280
-Ref: Time Functions-Footnote-1437072
-Ref: Time Functions-Footnote-2437140
-Ref: Time Functions-Footnote-3437298
-Ref: Time Functions-Footnote-4437409
-Ref: Time Functions-Footnote-5437534
-Ref: Time Functions-Footnote-6437761
-Node: Bitwise Functions438023
-Ref: table-bitwise-ops438601
-Ref: Bitwise Functions-Footnote-1442835
-Node: I18N Functions443019
-Node: User-defined444740
-Node: Definition Syntax445521
-Node: Function Example449880
-Node: Function Caveats452460
-Node: Return Statement456385
-Node: Dynamic Typing459042
-Node: Internationalization459779
-Node: I18N and L10N461198
-Node: Explaining gettext461882
-Ref: Explaining gettext-Footnote-1466789
-Ref: Explaining gettext-Footnote-2467028
-Node: Programmer i18n467197
-Node: Translator i18n471420
-Node: String Extraction472210
-Ref: String Extraction-Footnote-1473160
-Node: Printf Ordering473286
-Ref: Printf Ordering-Footnote-1476064
-Node: I18N Portability476128
-Ref: I18N Portability-Footnote-1478556
-Node: I18N Example478619
-Ref: I18N Example-Footnote-1481231
-Node: Gawk I18N481303
-Node: Advanced Features481885
-Node: Nondecimal Data483284
-Node: Two-way I/O484843
-Ref: Two-way I/O-Footnote-1490324
-Node: TCP/IP Networking490401
-Node: Portal Files492830
-Node: Profiling493474
-Node: Invoking Gawk500930
-Node: Command Line502110
-Node: Options502895
-Ref: Options-Footnote-1515735
-Node: Other Arguments515760
-Node: AWKPATH Variable518441
-Ref: AWKPATH Variable-Footnote-1521213
-Node: Obsolete521473
-Node: Undocumented522473
-Node: Known Bugs522735
-Node: Library Functions523337
-Ref: Library Functions-Footnote-1526318
-Node: Library Names526489
-Ref: Library Names-Footnote-1529962
-Ref: Library Names-Footnote-2530181
-Node: General Functions530267
-Node: Nextfile Function531326
-Node: Strtonum Function535690
-Node: Assert Function538625
-Node: Round Function541929
-Node: Cliff Random Function543436
-Ref: Cliff Random Function-Footnote-1544425
-Node: Ordinal Functions544496
-Ref: Ordinal Functions-Footnote-1547556
-Node: Join Function547772
-Ref: Join Function-Footnote-1549532
-Node: Gettimeofday Function549732
-Node: Data File Management553435
-Node: Filetrans Function554067
-Node: Rewind Function557493
-Node: File Checking558939
-Node: Empty Files559991
-Node: Ignoring Assigns562216
-Node: Getopt Function563764
-Ref: Getopt Function-Footnote-1575042
-Node: Passwd Functions575243
-Ref: Passwd Functions-Footnote-1583904
-Node: Group Functions583992
-Node: Sample Programs591990
-Node: Running Examples592667
-Node: Clones593395
-Node: Cut Program594527
-Node: Egrep Program604284
-Ref: Egrep Program-Footnote-1612034
-Node: Id Program612144
-Node: Split Program615751
-Node: Tee Program619215
-Node: Uniq Program621892
-Node: Wc Program629260
-Ref: Wc Program-Footnote-1633504
-Node: Miscellaneous Programs633700
-Node: Dupword Program634696
-Node: Alarm Program636727
-Node: Translate Program641267
-Ref: Translate Program-Footnote-1645513
-Ref: Translate Program-Footnote-2645750
-Node: Labels Program645884
-Ref: Labels Program-Footnote-1649175
-Node: Word Sorting649259
-Node: History Sorting653542
-Node: Extract Program655380
-Node: Simple Sed662732
-Node: Igawk Program665787
-Ref: Igawk Program-Footnote-1680492
-Ref: Igawk Program-Footnote-2680693
-Node: Language History680831
-Node: V7/SVR3.1682215
-Node: SVR4684479
-Node: POSIX685918
-Node: BTL687526
-Node: POSIX/GNU689051
-Node: Contributors696885
-Node: Installation700421
-Node: Gawk Distribution701392
-Node: Getting701876
-Node: Extracting703110
-Node: Distribution contents704498
-Node: Unix Installation709579
-Node: Quick Installation710170
-Node: Additional Configuration Options711872
-Node: Configuration Philosophy713734
-Node: Non-Unix Installation716098
-Node: Amiga Installation716685
-Node: BeOS Installation717781
-Node: PC Installation718934
-Node: PC Binary Installation720164
-Node: PC Compiling722007
-Node: PC Dynamic726559
-Node: PC Using728920
-Node: Cygwin733533
-Ref: Cygwin-Footnote-1734531
-Node: VMS Installation734563
-Node: VMS Compilation735167
-Node: VMS Installation Details736744
-Node: VMS Running738374
-Node: VMS POSIX739971
-Node: VMS Old Gawk741269
-Node: Unsupported741738
-Node: Atari Installation742141
-Node: Atari Compiling743430
-Node: Atari Using745315
-Node: Tandem Installation748160
-Node: Bugs749840
-Node: Other Versions753145
-Ref: Other Versions-Footnote-1757571
-Ref: Other Versions-Footnote-2757613
-Ref: Other Versions-Footnote-3757650
-Node: Notes757688
-Node: Compatibility Mode758380
-Node: Additions759174
-Node: Adding Code759924
-Node: New Ports765974
-Node: Dynamic Extensions770106
-Node: Internals771363
-Node: Sample Library782366
-Node: Internal File Description783025
-Node: Internal File Ops786718
-Ref: Internal File Ops-Footnote-1792044
-Node: Using Internal File Ops792192
-Node: Future Extensions794215
-Node: Basic Concepts798168
-Node: Basic High Level798925
-Ref: Basic High Level-Footnote-1802957
-Node: Basic Data Typing803151
-Node: Floating Point Issues807588
-Ref: Floating Point Issues-Footnote-1808674
-Node: String Conversion Precision808727
-Ref: String Conversion Precision-Footnote-1810421
-Node: Unexpected Results810530
-Node: POSIX Floating Point Problems812356
-Ref: POSIX Floating Point Problems-Footnote-1815830
-Node: Glossary815868
-Node: Copying839636
-Node: GNU Free Documentation License877193
-Node: Index899595
+Node: Top1334
+Node: Foreword27620
+Node: Preface31941
+Ref: Preface-Footnote-134820
+Node: History35052
+Node: Names37268
+Ref: Names-Footnote-138740
+Node: This Manual38812
+Ref: This Manual-Footnote-143567
+Node: Conventions43667
+Node: Manual History45541
+Ref: Manual History-Footnote-148994
+Ref: Manual History-Footnote-249035
+Node: How To Contribute49109
+Node: Acknowledgments50251
+Node: Getting Started54037
+Node: Running gawk56409
+Node: One-shot57595
+Node: Read Terminal58820
+Ref: Read Terminal-Footnote-160478
+Node: Long60649
+Node: Executable Scripts62025
+Ref: Executable Scripts-Footnote-163921
+Ref: Executable Scripts-Footnote-264072
+Node: Comments64523
+Node: Quoting66891
+Node: DOS Quoting71471
+Node: Sample Data Files72143
+Node: Very Simple75175
+Node: Two Rules79780
+Node: More Complex81927
+Ref: More Complex-Footnote-184850
+Ref: More Complex-Footnote-285298
+Node: Statements/Lines85381
+Ref: Statements/Lines-Footnote-189763
+Node: Other Features90028
+Node: When90880
+Ref: When-Footnote-193119
+Node: Regexp93204
+Node: Regexp Usage94658
+Node: Escape Sequences96710
+Node: Regexp Operators102449
+Ref: Regexp Operators-Footnote-1109556
+Ref: Regexp Operators-Footnote-2109703
+Node: Character Lists109801
+Ref: table-char-classes111758
+Node: GNU Regexp Operators114383
+Node: Case-sensitivity118027
+Ref: Case-sensitivity-Footnote-1121200
+Node: Leftmost Longest121435
+Node: Computed Regexps122626
+Node: Locales126007
+Node: Reading Files128273
+Node: Records130030
+Ref: Records-Footnote-1138588
+Node: Fields138625
+Ref: Fields-Footnote-1141655
+Node: Nonconstant Fields141741
+Node: Changing Fields143943
+Node: Field Separators149224
+Node: Regexp Field Splitting152715
+Node: Single Character Fields156268
+Node: Command Line Field Separator157319
+Node: Field Splitting Summary160758
+Ref: Field Splitting Summary-Footnote-1163944
+Node: Constant Size164045
+Node: Multiple Line168522
+Ref: Multiple Line-Footnote-1174253
+Node: Getline174432
+Node: Plain Getline176500
+Node: Getline/Variable178587
+Node: Getline/File179728
+Node: Getline/Variable/File181052
+Node: Getline/Pipe182611
+Node: Getline/Variable/Pipe185208
+Node: Getline/Coprocess186315
+Node: Getline/Variable/Coprocess187558
+Node: Getline Notes188272
+Node: Getline Summary189915
+Ref: table-getline-variants190199
+Node: Printing190765
+Node: Print192394
+Node: Print Examples193720
+Node: Output Separators196515
+Node: OFMT198276
+Node: Printf199631
+Node: Basic Printf200550
+Node: Control Letters202085
+Node: Format Modifiers205968
+Node: Printf Examples211986
+Node: Redirection214703
+Node: Special Files221600
+Node: Special FD222234
+Node: Special Process225260
+Node: Special Network227495
+Node: Special Caveats228337
+Ref: Special Caveats-Footnote-1229535
+Node: Close Files And Pipes229918
+Ref: Close Files And Pipes-Footnote-1236839
+Ref: Close Files And Pipes-Footnote-2236987
+Node: Expressions237135
+Node: Constants239324
+Node: Scalar Constants240005
+Ref: Scalar Constants-Footnote-1240860
+Node: Nondecimal-numbers241042
+Node: Regexp Constants244100
+Node: Using Constant Regexps244573
+Node: Variables247656
+Node: Using Variables248312
+Node: Assignment Options249822
+Node: Conversion251699
+Ref: table-locale-affects257130
+Ref: Conversion-Footnote-1257754
+Node: Arithmetic Ops257863
+Node: Concatenation260375
+Ref: Concatenation-Footnote-1263157
+Node: Assignment Ops263248
+Ref: table-assign-ops268226
+Node: Increment Ops269627
+Node: Truth Values273120
+Node: Typing and Comparison274170
+Node: Variable Typing274873
+Ref: Variable Typing-Footnote-1278559
+Node: Comparison Operators278703
+Ref: table-relational-ops279079
+Node: Boolean Ops282628
+Ref: Boolean Ops-Footnote-1286688
+Node: Conditional Exp286779
+Node: Function Calls288516
+Node: Precedence291798
+Node: Patterns and Actions295454
+Node: Pattern Overview296508
+Node: Regexp Patterns297945
+Node: Expression Patterns298488
+Node: Ranges302038
+Node: BEGIN/END305127
+Node: Using BEGIN/END305877
+Ref: Using BEGIN/END-Footnote-1308609
+Node: I/O And BEGIN/END308723
+Node: Empty310990
+Node: Using Shell Variables311298
+Node: Action Overview313579
+Node: Statements315937
+Node: If Statement317793
+Node: While Statement319292
+Node: Do Statement321324
+Node: For Statement322473
+Node: Switch Statement325613
+Node: Break Statement327889
+Node: Continue Statement329946
+Node: Next Statement331850
+Node: Nextfile Statement334130
+Node: Exit Statement336727
+Node: Built-in Variables338998
+Node: User-modified340093
+Ref: User-modified-Footnote-1347458
+Node: Auto-set347520
+Ref: Auto-set-Footnote-1355860
+Node: ARGC and ARGV356065
+Node: Arrays359777
+Node: Array Intro361685
+Node: Reference to Elements365882
+Node: Assigning Elements367749
+Node: Array Example368216
+Node: Scanning an Array369938
+Node: Delete372205
+Ref: Delete-Footnote-1374587
+Node: Numeric Array Subscripts374644
+Node: Uninitialized Subscripts376831
+Node: Multi-dimensional378437
+Node: Multi-scanning381450
+Node: Array Sorting383065
+Node: Functions386728
+Node: Built-in387463
+Node: Calling Built-in388433
+Node: Numeric Functions390400
+Ref: Numeric Functions-Footnote-1394142
+Ref: Numeric Functions-Footnote-2394468
+Node: String Functions394737
+Ref: String Functions-Footnote-1415118
+Ref: String Functions-Footnote-2415247
+Ref: String Functions-Footnote-3415495
+Node: Gory Details415582
+Ref: table-sub-escapes417217
+Ref: table-sub-posix-92418552
+Ref: table-sub-proposed419891
+Ref: table-posix-2001-sub421243
+Ref: table-gensub-escapes422580
+Ref: Gory Details-Footnote-1423766
+Node: I/O Functions423817
+Ref: I/O Functions-Footnote-1430468
+Node: Time Functions430559
+Ref: Time Functions-Footnote-1441351
+Ref: Time Functions-Footnote-2441419
+Ref: Time Functions-Footnote-3441577
+Ref: Time Functions-Footnote-4441688
+Ref: Time Functions-Footnote-5441813
+Ref: Time Functions-Footnote-6442040
+Node: Bitwise Functions442302
+Ref: table-bitwise-ops442880
+Ref: Bitwise Functions-Footnote-1447114
+Node: I18N Functions447298
+Node: User-defined449019
+Node: Definition Syntax449800
+Node: Function Example454376
+Node: Function Caveats456956
+Node: Return Statement460881
+Node: Dynamic Typing463538
+Node: Internationalization464275
+Node: I18N and L10N465694
+Node: Explaining gettext466378
+Ref: Explaining gettext-Footnote-1471285
+Ref: Explaining gettext-Footnote-2471524
+Node: Programmer i18n471693
+Node: Translator i18n475916
+Node: String Extraction476706
+Ref: String Extraction-Footnote-1477656
+Node: Printf Ordering477782
+Ref: Printf Ordering-Footnote-1480560
+Node: I18N Portability480624
+Ref: I18N Portability-Footnote-1483052
+Node: I18N Example483115
+Ref: I18N Example-Footnote-1485727
+Node: Gawk I18N485799
+Node: Advanced Features486381
+Node: Nondecimal Data487780
+Node: Two-way I/O489339
+Ref: Two-way I/O-Footnote-1494820
+Node: TCP/IP Networking494897
+Node: Portal Files497326
+Node: Profiling497970
+Node: Invoking Gawk505426
+Node: Command Line506660
+Node: Options507445
+Ref: Options-Footnote-1520522
+Node: Other Arguments520547
+Node: AWKPATH Variable523228
+Ref: AWKPATH Variable-Footnote-1526000
+Node: Exit Status526260
+Node: Obsolete526922
+Node: Undocumented527921
+Node: Known Bugs528186
+Node: Library Functions528788
+Ref: Library Functions-Footnote-1531769
+Node: Library Names531940
+Ref: Library Names-Footnote-1535413
+Ref: Library Names-Footnote-2535632
+Node: General Functions535718
+Node: Nextfile Function536777
+Node: Strtonum Function541141
+Node: Assert Function544076
+Node: Round Function547380
+Node: Cliff Random Function548913
+Ref: Cliff Random Function-Footnote-1549902
+Node: Ordinal Functions549973
+Ref: Ordinal Functions-Footnote-1553033
+Node: Join Function553249
+Ref: Join Function-Footnote-1555009
+Node: Gettimeofday Function555209
+Node: Data File Management558912
+Node: Filetrans Function559544
+Node: Rewind Function562970
+Node: File Checking564416
+Node: Empty Files565446
+Node: Ignoring Assigns567671
+Node: Getopt Function569219
+Ref: Getopt Function-Footnote-1580497
+Node: Passwd Functions580698
+Ref: Passwd Functions-Footnote-1589359
+Node: Group Functions589447
+Node: Sample Programs597445
+Node: Running Examples598122
+Node: Clones598850
+Node: Cut Program599982
+Node: Egrep Program609739
+Ref: Egrep Program-Footnote-1617489
+Node: Id Program617599
+Node: Split Program621206
+Node: Tee Program624670
+Node: Uniq Program627347
+Node: Wc Program634715
+Ref: Wc Program-Footnote-1638959
+Node: Miscellaneous Programs639155
+Node: Dupword Program640275
+Node: Alarm Program642306
+Node: Translate Program646846
+Ref: Translate Program-Footnote-1651214
+Ref: Translate Program-Footnote-2651451
+Node: Labels Program651585
+Ref: Labels Program-Footnote-1654876
+Node: Word Sorting654960
+Node: History Sorting659243
+Node: Extract Program661081
+Node: Simple Sed668433
+Node: Igawk Program671488
+Ref: Igawk Program-Footnote-1686219
+Ref: Igawk Program-Footnote-2686420
+Node: Signature Program686558
+Node: Language History687638
+Node: V7/SVR3.1689022
+Node: SVR4691286
+Node: POSIX692725
+Node: BTL694333
+Node: POSIX/GNU695858
+Node: Contributors704025
+Node: Installation707561
+Node: Gawk Distribution708532
+Node: Getting709016
+Node: Extracting710250
+Node: Distribution contents711638
+Node: Unix Installation716719
+Node: Quick Installation717310
+Node: Additional Configuration Options719012
+Node: Configuration Philosophy721172
+Node: Non-Unix Installation723536
+Node: Amiga Installation724123
+Node: BeOS Installation725219
+Node: PC Installation726372
+Node: PC Binary Installation727602
+Node: PC Compiling729445
+Node: PC Dynamic733941
+Node: PC Using736302
+Node: Cygwin740852
+Ref: Cygwin-Footnote-1741850
+Node: VMS Installation741882
+Node: VMS Compilation742486
+Node: VMS Installation Details744063
+Node: VMS Running745693
+Node: VMS POSIX747290
+Node: VMS Old Gawk748588
+Node: Unsupported749057
+Node: Atari Installation749460
+Node: Atari Compiling750749
+Node: Atari Using752634
+Node: Tandem Installation755479
+Node: Bugs757159
+Node: Other Versions761065
+Ref: Other Versions-Footnote-1766114
+Ref: Other Versions-Footnote-2766157
+Ref: Other Versions-Footnote-3766194
+Node: Notes766232
+Node: Compatibility Mode766924
+Node: Additions767718
+Node: Adding Code768468
+Node: New Ports774518
+Node: Dynamic Extensions778650
+Node: Internals779907
+Node: Sample Library790910
+Node: Internal File Description791569
+Node: Internal File Ops795262
+Ref: Internal File Ops-Footnote-1800588
+Node: Using Internal File Ops800736
+Node: Future Extensions802759
+Node: Basic Concepts806712
+Node: Basic High Level807469
+Ref: Basic High Level-Footnote-1811501
+Node: Basic Data Typing811695
+Node: Floating Point Issues816132
+Ref: Floating Point Issues-Footnote-1817218
+Node: String Conversion Precision817271
+Ref: String Conversion Precision-Footnote-1818965
+Node: Unexpected Results819074
+Node: POSIX Floating Point Problems820900
+Ref: POSIX Floating Point Problems-Footnote-1824374
+Node: Glossary824412
+Node: Copying848180
+Node: GNU Free Documentation License885737
+Node: Index910874

End Tag Table
diff --git a/doc/gawk.texi b/doc/gawk.texi
index 39673e01..83513b9d 100644
--- a/doc/gawk.texi
+++ b/doc/gawk.texi
@@ -20,9 +20,9 @@
@c applies to and all the info about who's publishing this edition
@c These apply across the board.
-@set UPDATE-MONTH October, 2007
+@set UPDATE-MONTH July, 2009
@set VERSION 3.1
-@set PATCHLEVEL 6
+@set PATCHLEVEL 7
@set FSF
@@ -110,7 +110,8 @@ Some comments on the layout for TeX.
@end iftex
@copying
-Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999,
+2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
@sp 2
This is Edition @value{EDITION} of @cite{@value{TITLE}: @value{SUBTITLE}},
@@ -118,7 +119,7 @@ for the @value{VERSION}.@value{PATCHLEVEL} (or later) version of the GNU
implementation of AWK.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``GNU General Public License'', the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -130,9 +131,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
``A GNU Manual''
@item
-``You have freedom to copy and modify this GNU Manual, like GNU
-software. Copies published by the Free Software Foundation raise
-funds for GNU development.''
+``You have the freedom to
+copy and modify this GNU manual. Buying copies from the FSF
+supports it in developing GNU and promoting software freedom.''
@end enumerate
@end copying
@@ -315,6 +316,7 @@ particular records in a file and perform operations upon them.
* Comments:: Adding documentation to @command{gawk}
programs.
* Quoting:: More discussion of shell quoting issues.
+* DOS Quoting:: Quoting in MS-DOS Batch Files.
* Sample Data Files:: Sample data files for use in the
@command{awk} programs illustrated in this
@value{DOCUMENT}.
@@ -516,6 +518,7 @@ particular records in a file and perform operations upon them.
* AWKPATH Variable:: Searching directories for @command{awk}
programs.
* Obsolete:: Obsolete Options and/or features.
+* Exit Status:: @command{gawk}'s exit status.
* Undocumented:: Undocumented Options and Features.
* Known Bugs:: Known Bugs in @command{gawk}.
* Library Names:: How to best name private global variables
@@ -567,6 +570,8 @@ particular records in a file and perform operations upon them.
* Simple Sed:: A Simple Stream Editor.
* Igawk Program:: A wrapper for @command{awk} that includes
files.
+* Signature Program:: People do amazing things with too much time
+ on their hands.
* V7/SVR3.1:: The major changes between V7 and System V
Release 3.1.
* SVR4:: Minor changes between System V Releases 3.1
@@ -1351,16 +1356,27 @@ problem reports electronically, or write to me in care of the publisher.
@node How To Contribute
@unnumberedsec How to Contribute
-As the maintainer of GNU @command{awk},
-I am starting a collection of publicly available @command{awk}
-programs.
-For more information,
-see @uref{ftp://ftp.freefriends.org/arnold/Awkstuff}.
-If you have written an interesting @command{awk} program, or have written a
-@command{gawk} extension that you would like to
-share with the rest of the world, please contact me (@email{arnold@@skeeve.com}).
-Making things available on the Internet helps keep the
-@command{gawk} distribution down to manageable size.
+As the maintainer of GNU @command{awk}, I once thought that I would be
+able to manage a collection of publicly available @command{awk} programs
+and I even solicited contributions. Making things available on the Internet
+helps keep the @command{gawk} distribution down to manageable size.
+
+The initial collection of material, such as it is, is still available
+at @uref{ftp://ftp.freefriends.org/arnold/Awkstuff}. In the hopes of
+doing something more broad, I acquired the @code{awk.info} domain.
+
+However, I found that I could not dedicate enough time to managing
+contributed code: the archive did not grow and the domain went unused
+for several years.
+
+Fortunately, late in 2008, a volunteer took on the task of setting up
+an @command{awk}-related web site @uref{http://awk.info} and did a very
+nice job.
+
+If you have written an interesting @command{awk} program, or have written
+a @command{gawk} extension that you would like to share with the rest
+of the world, please see @uref{http://awk.info/?contribute} for how to
+contribute it to the web site.
@node Acknowledgments
@unnumberedsec Acknowledgments
@@ -1448,7 +1464,7 @@ internationalization features.
@cindex Buening, Andreas
@cindex Deifik, Scott
@cindex Hankerson, Darrel
-@cindex Hasegawa, Isamu
+@c @cindex Hasegawa, Isamu
@cindex Jaegermann, Michal
@cindex Kahrs, J@"urgen
@cindex Rankin, Pat
@@ -1459,7 +1475,7 @@ Martin Brown,
Andreas Buening,
Scott Deifik,
Darrel Hankerson,
-Isamu Hasegawa,
+@c Isamu Hasegawa,
Michal Jaegermann,
J@"urgen Kahrs,
Pat Rankin,
@@ -1975,6 +1991,10 @@ The next @value{SUBSECTION} describes the shell's quoting rules.
@subsection Shell-Quoting Issues
@cindex quoting, rules for
+@menu
+* DOS Quoting:: Quoting in MS-DOS Batch Files.
+@end menu
+
For short to medium length @command{awk} programs, it is most convenient
to enter the program on the @command{awk} command line.
This is best done by enclosing the entire program in single quotes.
@@ -2130,6 +2150,52 @@ If you really need both single and double quotes in your @command{awk}
program, it is probably best to move it into a separate file, where
the shell won't be part of the picture, and you can say what you mean.
+@node DOS Quoting
+@subsubsection Quoting in MS-DOS Batch Files
+
+@ignore
+Date: Wed, 21 May 2008 09:58:43 +0200 (CEST)
+From: jeroen.brink@inter.NL.net
+Subject: (g)awk "contribution"
+To: arnold@skeeve.com
+Message-id: <42220.193.172.132.34.1211356723.squirrel@webmail.internl.net>
+
+Hello Arnold,
+
+maybe you can help me out. Found your email on the GNU/awk online manual
+pages.
+
+I've searched hard to figure out how, on Windows, to print double quotes.
+Couldn't find it in the Quotes area, nor on google or elsewhere. Finally i
+figured out how to do this myself.
+
+How to print all lines in a file surrounded by double quotes (on Windows):
+
+gawk "{ print \"\042\" $0 \"\042\" }" <file>
+
+Maybe this is a helpfull tip for other (Windows) gawk users. However, i
+don't have a clue as to where to "publish" this tip! Do you?
+
+Kind regards,
+
+Jeroen Brink
+@end ignore
+
+Although this @value{DOCUMENT} generally only worries about POSIX systems and the
+POSIX shell, the following issue arises often enough for many users that
+it is worth addressing.
+
+Systems providing an MS-DOS compatible ``shell'' use the double-quote
+character for quoting, and make it difficult or impossible to include an
+escaped double-quote character in a command-line script.
+The following example, courtesy of Jeroen Brink, shows
+how to print all lines in a file surrounded by double quotes:
+
+@example
+gawk "@{ print \"\042\" $0 \"\042\" @}" @var{file}
+@end example
+
+
@node Sample Data Files
@section @value{DDF}s for the Examples
@c For gawk >= 3.2, update these data files. No-one has such slow modems!
@@ -2316,7 +2382,7 @@ expand data | awk '@{ if (x < length()) x = length() @}
END @{ print "maximum line length is " x @}'
@end example
-The input is processed by the @command{expand} utility to change tabs
+The input is processed by the @command{expand} utility to change TABs
into spaces, so the widths compared are actually the right-margin columns.
@item
@@ -4621,7 +4687,7 @@ can massage it first with a separate @command{awk} program.)
@cindex newlines, as field separators
@cindex whitespace, as field separators
Fields are normally separated by whitespace sequences
-(spaces, tabs, and newlines), not by single spaces. Two spaces in a row do not
+(spaces, TABs, and newlines), not by single spaces. Two spaces in a row do not
delimit an empty field. The default value of the field separator @code{FS}
is a string containing a single space, @w{@code{" "}}. If @command{awk}
interpreted this value in the usual way, each space character would separate
@@ -4673,9 +4739,9 @@ bracket). This regular expression matches a single space and nothing else
There is an important difference between the two cases of @samp{FS = @w{" "}}
(a single space) and @samp{FS = @w{"[ \t\n]+"}}
-(a regular expression matching one or more spaces, tabs, or newlines).
+(a regular expression matching one or more spaces, TABs, or newlines).
For both values of @code{FS}, fields are separated by @dfn{runs}
-(multiple adjacent occurrences) of spaces, tabs,
+(multiple adjacent occurrences) of spaces, TABs,
and/or newlines. However, when the value of @code{FS} is @w{@code{" "}},
@command{awk} first strips leading and trailing whitespace from
the record and then decides where the fields are.
@@ -4718,6 +4784,42 @@ with leading whitespace intact. The assignment to @code{$2} rebuilds
separated by the value of @code{OFS}. Because the leading whitespace
was ignored when finding @code{$1}, it is not part of the new @code{$0}.
Finally, the last @code{print} statement prints the new @code{$0}.
+
+@cindex @code{FS}, containing @samp{^}
+@cindex @samp{^}, in @code{FS}
+@cindex dark corner, @samp{^}, in @code{FS}
+There is an additional subtlety to be aware of when using regular exressions
+for field splitting.
+It is not well-specified in the POSIX standard, or anywhere else, what @samp{^}
+means when splitting fields. Does the @samp{^} match only at the beginning of
+the entire record? Or is each field separator a new string? It turns out that
+different @command{awk} versions answer this question differently, and you
+should not rely on any specific behavior in your programs.
+@value{DARKCORNER}
+
+As a point of information, the Bell Labs @command{awk} allows @samp{^}
+to match only at the beginning of the record. Versions of @command{gawk}
+after 3.1.6 also work this way. For example:
+
+@example
+$ echo 'xxAA xxBxx C' |
+> nawk -F '(^x+)|( +)' '@{ for (i = 1; i <= NF; i++) printf "-->%s<--\n", $i @}'
+@print{} --><--
+@print{} -->AA<--
+@print{} -->xxBxx<--
+@print{} -->C<--
+
+$ echo 'xxAA xxBxx C' |
+> gawk-3.1.6 -F '(^x+)|( +)' '@{ for (i = 1; i <= NF; i++) printf "-->%s<--\n", $i @}'
+@print{} --><--
+@print{} -->AA<--
+@print{} --><--
+@print{} -->Bxx<--
+@print{} -->C<--
+@end example
+
+@noindent
+As mentioned, @command{gawk} now behaves like the Bell Labs @command{awk}.
@c ENDOFRANGE regexpfs
@c ENDOFRANGE fsregexp
@@ -4806,7 +4908,7 @@ As a special case, in compatibility mode
if the argument to @option{-F} is @samp{t}, then @code{FS} is set to
the TAB character. If you type @samp{-F\t} at the
shell, without any quotes, the @samp{\} gets deleted, so @command{awk}
-figures that you really want your fields to be separated with tabs and
+figures that you really want your fields to be separated with TABs and
not @samp{t}s. Use @samp{-v FS="t"} or @samp{-F"[t]"} on the command line
if you really do want to separate your fields with @samp{t}s.
@@ -5358,6 +5460,7 @@ processing on the next record @emph{right now}. For example:
# value of `tmp' will be "" if t is 1
tmp = substr($0, 1, t - 1)
u = index(substr($0, t + 2), "*/")
+ offset = t + 2
while (u == 0) @{
if (getline <= 0) @{
m = "unexpected EOF or error"
@@ -5366,10 +5469,11 @@ processing on the next record @emph{right now}. For example:
exit
@}
u = index($0, "*/")
+ offset = 0
@}
# substr expression will be "" if */
# occurred at end of line
- $0 = tmp substr($0, u + 2)
+ $0 = tmp substr($0, offset + u + 2)
@}
print $0
@}
@@ -6172,6 +6276,20 @@ This prints a number as an ASCII character; thus, @samp{printf "%c",
65} outputs the letter @samp{A}. (The output for a string value is
the first character of the string.)
+@cindex dark corner, format-control characters
+@cindex @command{gawk}, format-control characters
+@quotation NOTE
+The @samp{%c} format does @emph{not} handle values outside the range
+0--255. On most systems, values from 0--127 are within the range of
+ASCII and will yield an ASCII character. Values in the range 128--255
+may format as characters in some extended character set, or they may not.
+System 390 (IBM architecture mainframe) systems use 8-bit characters,
+and thus values from 0--255 yield the corresponding EBCDIC character.
+Any value above 255 is treated as modulo 255; i.e., the lowest eight bits
+of the value are used. The locale and character set are always ignored.
+@end quotation
+
+
@item %d@r{,} %i
These are equivalent; they both print a decimal integer.
(The @samp{%i} specification is for compatibility with ISO C.)
@@ -7775,7 +7893,7 @@ specifier
(@pxref{String Functions}).
@code{CONVFMT}'s default value is @code{"%.6g"}, which prints a value with
-at least six significant digits. For some applications, you might want to
+at most six significant digits. For some applications, you might want to
change it to specify more precision.
On most modern machines,
17 digits is enough to capture a floating-point number's
@@ -8604,7 +8722,7 @@ attribute.
@item
Fields, @code{getline} input, @code{FILENAME}, @code{ARGV} elements,
@code{ENVIRON} elements, and the
-elements of an array created by @code{split} that are numeric strings
+elements of an array created by @code{split} and @code{match} that are numeric strings
have the @var{strnum} attribute. Otherwise, they have the @var{string}
attribute.
Uninitialized variables also have the @var{strnum} attribute.
@@ -10685,6 +10803,11 @@ BEGIN @{
close("date")
@}
@end example
+
+For full portability, exit values should be between zero and 126, inclusive.
+Negative values, and values of 127 or greater, may not produce consistent
+results across different operating systems.
+
@c ENDOFRANGE csta
@c ENDOFRANGE acs
@c ENDOFRANGE accs
@@ -10737,6 +10860,8 @@ specific to @command{gawk} are marked with a pound sign@w{ (@samp{#}).}
On non-POSIX systems, this variable specifies use of binary mode for all I/O.
Numeric values of one, two, or three specify that input files, output files, or
all files, respectively, should use binary I/O.
+A numeric value less than zero is treated as zero, and a numeric value greater than
+three is treated as three.
Alternatively,
string values of @code{"r"} or @code{"w"} specify that input files and
output files, respectively, should use binary I/O.
@@ -10803,9 +10928,9 @@ specify the behavior when @code{FS} is the null string.)
@cindex POSIX @command{awk}, @code{FS} variable and
The default value is @w{@code{" "}}, a string consisting of a single
space. As a special exception, this value means that any
-sequence of spaces, tabs, and/or newlines is a single separator.@footnote{In
+sequence of spaces, TABs, and/or newlines is a single separator.@footnote{In
POSIX @command{awk}, newline does not count as whitespace.} It also causes
-spaces, tabs, and newlines at the beginning and end of a record to be ignored.
+spaces, TABs, and newlines at the beginning and end of a record to be ignored.
You can set the value of @code{FS} on the command line using the
@option{-F} option:
@@ -12588,8 +12713,30 @@ version of the standard. Therefore, for programs to be maximally portable,
always supply the parentheses.
@end quotation
+@cindex dark corner, @code{length} function
+If @code{length} is called with a variable that has not been used,
+@command{gawk} forces the variable to be a scalar. Other
+implementations of @command{awk} leave the variable without a type.
+@value{DARKCORNER}
+Consider:
+
+@example
+$ gawk 'BEGIN @{ print length(x) ; x[1] = 1 @}'
+@print{} 0
+@error{} gawk: fatal: attempt to use scalar `x' as array
+
+$ nawk 'BEGIN @{ print length(x) ; x[1] = 1 @}'
+@print{} 0
+@end example
+
+@noindent
+If @option{--lint} has
+been specified on the command line, @command{gawk} issues a
+warning about this.
+
+
@cindex differences between @command{gawk} and @command{awk}
-Beginning with @command{gawk} @value{PVERSION} 3.2, when supplied an
+Beginning with @command{gawk} @value{PVERSION} 3.1.5, when supplied an
array argument, the @code{length} function returns the number of elements
in the array. This is less useful than it might seem at first, as the
array is not guaranteed to be indexed from one to the number of elements
@@ -13513,6 +13660,9 @@ is to allow no argument at all. In this case, the buffer for the
standard output is flushed. The second is to allow the null string
(@w{@code{""}}) as the argument. In this case, the buffers for
@emph{all} open output files and pipes are flushed.
+Current versions of the Bell Labs @command{awk} also
+support these extensions.
+@c As of 2002, but I didn't know about it until 4/2009!
@c @cindex automatic warnings
@c @cindex warnings, automatic
@@ -14479,14 +14629,18 @@ underscores that doesn't start with a digit.
Within a single @command{awk} program, any particular name can only be
used as a variable, array, or function.
-@c NEXT ED: parameter-list is an OPTIONAL list of ...
-@var{parameter-list} is a list of the function's arguments and local
+@var{parameter-list} is an optional list of the function's arguments and local
variable names, separated by commas. When the function is called,
the argument names are used to hold the argument values given in
the call. The local variables are initialized to the empty string.
A function cannot have two parameters with the same name, nor may it
have a parameter with the same name as the function itself.
+According to the POSIX standard, function parameters cannot have the same
+name as one of the special built-in variables
+(@pxref{Built-in Variables}. Not all versions of @command{awk}
+enforce this restriction.
+
The @var{body-of-function} consists of @command{awk} statements. It is the
most important part of the definition, because it says what the function
should actually @emph{do}. The argument names exist to give the body a
@@ -14688,7 +14842,7 @@ being a string concatenation):
foo(x y, "lose", 4 * z)
@end example
-@strong{Caution:} Whitespace characters (spaces and tabs) are not allowed
+@strong{Caution:} Whitespace characters (spaces and TABs) are not allowed
between the function name and the open-parenthesis of the argument list.
If you write whitespace by mistake, @command{awk} might think that you mean
to concatenate a variable with an expression in parentheses. However, it
@@ -16271,7 +16425,7 @@ those statements were executed.
@cindex @code{@{@}} (braces), @command{pgawk} program
@cindex braces (@code{@{@}}), @command{pgawk} program
@item
-The layout uses ``K&R'' style with tabs.
+The layout uses ``K&R'' style with TABs.
Braces are used everywhere, even when
the body of an @code{if}, @code{else}, or loop is only a single statement.
@@ -16423,6 +16577,7 @@ full details.
* AWKPATH Variable:: Searching directories for @command{awk}
programs.
* Obsolete:: Obsolete Options and/or features.
+* Exit Status:: @command{gawk}'s exit status.
* Undocumented:: Undocumented Options and Features.
* Known Bugs:: Known Bugs in @command{gawk}.
@end menu
@@ -16576,6 +16731,14 @@ as well as options available in the Bell Laboratories version of @command{awk}.
The following list describes @command{gawk}-specific options:
@table @code
+@item -O
+@itemx --optimize
+@cindex @code{--optimize} option
+@cindex @code{-O} option
+Enables some optimizations on the internal representation of the program.
+At the moment this includes just simple constant folding. The @command{gawk}
+maintainer hopes to add more optimizations over time.
+
@item -W compat
@itemx -W traditional
@itemx --compat
@@ -17049,6 +17212,26 @@ sense: the @env{AWKPATH} environment variable is used to find the program
source files. Once your program is running, all the files have been
found, and @command{gawk} no longer needs to use @env{AWKPATH}.
+@node Exit Status
+@section @command{gawk}'s Exit Status
+
+@cindex exit status, of @command{gawk}
+If the @code{exit} statement is used with a value
+(@pxref{Exit Statement}), the @command{gawk} exits with
+the numeric value given to it.
+
+Otherwise, if there were no problems during execution,
+@command{gawk} exits with the value of the C constant
+@code{EXIT_SUCCESS}. This is usually zero.
+
+If an error occurs, @command{gawk} exits with the value of
+the C constant @code{EXIT_FAILURE}. This is usually one.
+
+If @command{gawk} exits because of a fatal error, the exit
+status is 2. On non-POSIX systems, this value may be mapped
+to @code{EXIT_FAILURE}.
+
+
@node Obsolete
@section Obsolete Options and/or Features
@@ -17820,7 +18003,7 @@ function round(x, ival, aval, fraction)
# see if fractional part
if (ival == x) # no fraction
- return x
+ return ival # ensure no decimals
if (x < 0) @{
aval = -x # absolute value
@@ -18403,8 +18586,7 @@ BEGIN @{
@end example
@cindex troubleshooting, @code{getline} function
-In @command{gawk}, the @code{getline} won't be fatal (unless
-@option{--posix} is in force).
+This works, because the @code{getline} won't be fatal.
Removing the element from @code{ARGV} with @code{delete}
skips the file (since it's no longer in the list).
@@ -19030,9 +19212,27 @@ char **argv;
struct passwd *p;
while ((p = getpwent()) != NULL)
+@c endfile
+@ignore
+@c file eg/lib/pwcat.c
+#ifdef ZOS_USS
+ printf("%s:%ld:%ld:%s:%s\n",
+ p->pw_name, (long) p->pw_uid,
+ (long) p->pw_gid, p->pw_dir, p->pw_shell);
+#else
+@c endfile
+@end ignore
+@c file eg/lib/pwcat.c
printf("%s:%s:%ld:%ld:%s:%s:%s\n",
p->pw_name, p->pw_passwd, (long) p->pw_uid,
(long) p->pw_gid, p->pw_gecos, p->pw_dir, p->pw_shell);
+@c endfile
+@ignore
+@c file eg/lib/pwcat.c
+#endif
+@c endfile
+@end ignore
+@c file eg/lib/pwcat.c
endpwent();
return 0;
@@ -19379,8 +19579,24 @@ char **argv;
int i;
while ((g = getgrent()) != NULL) @{
+@c endfile
+@ignore
+@c file eg/lib/grcat.c
+#ifdef ZOS_USS
+ printf("%s:%ld:", g->gr_name, (long) g->gr_gid);
+#else
+@c endfile
+@end ignore
+@c file eg/lib/grcat.c
printf("%s:%s:%ld:", g->gr_name, g->gr_passwd,
(long) g->gr_gid);
+@c endfile
+@ignore
+@c file eg/lib/grcat.c
+#endif
+@c endfile
+@end ignore
+@c file eg/lib/grcat.c
for (i = 0; g->gr_mem[i] != NULL; i++) @{
printf("%s", g->gr_mem[i]);
@group
@@ -19394,12 +19610,12 @@ char **argv;
return 0;
@}
@c endfile
-@end example
@ignore
@c file eg/lib/grcat.c
#endif /* HAVE_GETGRENT */
@c endfile
@end ignore
+@end example
Each line in the group database represents one group. The fields are
separated with colons and represent the following information:
@@ -19781,7 +19997,7 @@ The programs are presented in alphabetical order.
@cindex columns, cutting
The @command{cut} utility selects, or ``cuts,'' characters or fields
from its standard input and sends them to its standard output.
-Fields are separated by tabs by default,
+Fields are separated by TABs by default,
but you may supply a command-line option to change the field
@dfn{delimiter} (i.e., the field-separator character). @command{cut}'s
definition of fields is less general than @command{awk}'s.
@@ -20832,7 +21048,7 @@ and nonrepeated lines are counted.
@item -@var{n}
Skip @var{n} fields before comparing lines. The definition of fields
is similar to @command{awk}'s default: nonwhitespace characters separated
-by runs of spaces and/or tabs.
+by runs of spaces and/or TABs.
@item +@var{n}
Skip @var{n} characters before comparing lines. Any fields specified with
@@ -21089,7 +21305,7 @@ Count only lines.
@item -w
Count only words.
A ``word'' is a contiguous sequence of nonwhitespace characters, separated
-by spaces and/or tabs. Luckily, this is the normal way @command{awk} separates
+by spaces and/or TABs. Luckily, this is the normal way @command{awk} separates
fields in its input data.
@item -c
@@ -21272,6 +21488,8 @@ We hope you find them both interesting and enjoyable.
* Simple Sed:: A Simple Stream Editor.
* Igawk Program:: A wrapper for @command{awk} that includes
files.
+* Signature Program:: People do amazing things with too much time
+ on their hands.
@end menu
@node Dupword Program
@@ -21562,8 +21780,8 @@ The string on which to do the translation.
Associative arrays make the translation part fairly easy. @code{t_ar} holds
the ``to'' characters, indexed by the ``from'' characters. Then a simple
loop goes through @code{from}, one character at a time. For each character
-in @code{from}, if the character appears in @code{target}, @code{gsub}
-is used to change it to the corresponding @code{to} character.
+in @code{from}, if the character appears in @code{target},
+it is replaced with the corresponding @code{to} character.
The @code{translate} function simply calls @code{stranslate} using @code{$0}
as the target. The main program sets two global variables, @code{FROM} and
@@ -21582,6 +21800,7 @@ Finally, the processing rule simply calls @code{translate} for each record:
#
# Arnold Robbins, arnold@@skeeve.com, Public Domain
# August 1989
+# February 2009 - bug fix
@c endfile
@end ignore
@@ -21590,21 +21809,24 @@ Finally, the processing rule simply calls @code{translate} for each record:
# to be spelled out. However, if `to' is shorter than `from',
# the last character in `to' is used for the rest of `from'.
-function stranslate(from, to, target, lf, lt, t_ar, i, c)
+function stranslate(from, to, target, lf, lt, ltarget, t_ar, i, c,
+ result)
@{
lf = length(from)
lt = length(to)
+ ltarget = length(target)
for (i = 1; i <= lt; i++)
t_ar[substr(from, i, 1)] = substr(to, i, 1)
if (lt < lf)
for (; i <= lf; i++)
t_ar[substr(from, i, 1)] = substr(to, lt, 1)
- for (i = 1; i <= lf; i++) @{
- c = substr(from, i, 1)
- if (index(target, c) > 0)
- gsub(c, t_ar[c], target)
+ for (i = 1; i <= ltarget; i++) @{
+ c = substr(target, i, 1)
+ if (c in t_ar)
+ c = t_ar[c]
+ result = result c
@}
- return target
+ return result
@}
function translate(from, to)
@@ -22840,11 +23062,39 @@ upon startup. Instead, it would be very simple to modify @command{igawk}
to do this. Since @command{igawk} can process nested @samp{@@include}
directives, @file{default.awk} could simply contain @samp{@@include}
statements for the desired library functions.
+
+@c Exercise: make this change
@c ENDOFRANGE libfex
@c ENDOFRANGE flibex
@c ENDOFRANGE awkpex
-@c Exercise: make this change
+@node Signature Program
+@subsection And Now For Something Completely Different
+
+The following program was written by Davide Brini
+@c (@email{dave_br@@gmx.com})
+and is published on @uref{http://db.netsons.org/v1-sigs.php, his website}.
+It serves as his signature in the Usenet group @code{comp.lang.awk}.
+He supplies the following copyright terms:
+
+@quotation
+Copyright @copyright{} 2008 Davide Brini
+
+Copying and distribution of the code published in this page, with or without
+modification, are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+@end quotation
+
+Here is the program:
+
+@example
+awk 'BEGIN@{O="~"~"~";o="=="=="==";o+=+o;x=O""O;while(X++<=x+o+o)c=c"%c";
+printf c,(x-O)*(x-O),x*(x-o)-o,x*(x-O)+x-O-o,+x*(x-O)-x+o,X*(o*o+O)+x-O,
+X*(X-x)-o*o,(x+X)*o*o+o,x*(X-x)-O-O,x-O+(O+o+X+x)*(o+O),X*X-X*(x-O)-x+O,
+O+X*(o*(o+O)+O),+x+O+X*o,x*(x-o),(o+X+x)*o*o-(x-O-O),O+(X-x)*(X+O),x-O@}'
+@end example
+
+We leave it to you to determine what the program does.
@ignore
@c Try this
@@ -23532,8 +23782,7 @@ The Atari port became officially unsupported
(@pxref{Atari Installation}).
@item
-The source code now uses new-style function definitions, with
-@command{ansi2knr} to convert the code on systems with old compilers.
+The source code now uses new-style function definitions.
@item
The @option{--disable-lint} configuration option to disable lint checking
@@ -23541,6 +23790,14 @@ at compile time
(@pxref{Additional Configuration Options}).
@item
+The @option{--with-whiny-user-strftime} configuration option
+to force the use
+of the included version of the @code{strftime}
+function for deficient systems
+(@pxref{Additional Configuration Options}).
+
+
+@item
POSIX compliance for @code{sub} and @code{gsub}
(@pxref{Gory Details}).
@@ -23558,6 +23815,12 @@ The @code{strftime} function acquired a third argument to
enable printing times as UTC
(@pxref{Time Functions}).
+@item
+The @option{--disable-libsigsegv} configuration option which
+disables configuring, building, compiling and linking against
+the @code{libsigsegv} library
+(@pxref{Additional Configuration Options}).
+
@end itemize
@c XXX ADD MORE STUFF HERE
@@ -24135,6 +24398,12 @@ Enable the recognition and execution of C-style @code{switch} statements
in @command{awk} programs
(@pxref{Switch Statement}.)
+@cindex @code{--with-whiny-user-strftime} configuration option
+@cindex configuration option, @code{--with-whiny-user-strftime}
+@item --with-whiny-user-strftime
+Force use of the included version of the @code{strftime}
+function for deficient systems
+
@cindex @code{--disable-lint} configuration option
@cindex configuration option, @code{--disable-lint}
@item --disable-lint
@@ -24166,6 +24435,13 @@ improvement.
@cindex configuration option, @code{--disable-directories-fatal}
@item --disable-directories-fatal
Causes @command{gawk} to silently skip directories named on the command line.
+
+@cindex @code{--disable-libsigsegv} configuration option
+@cindex configuration option, @code{--disable-libsigsegv}
+@item --disable-libsigsegv
+The @option{--disable-libsigsegv} configuration option
+disables configuring, building, compiling and linking against
+the @code{libsigsegv} library.
@end table
As of version 3.1.5, the @option{--with-included-gettext} configuration
@@ -24500,7 +24776,8 @@ The @code{pid} test fails because child processes are not started by
Most OS/2 ports of GNU @command{make} are not able to handle
the Makefiles of this package. If you encounter any problems with @command{make}
try GNU Make 3.79.1 or later versions. You should find the latest
-version on @uref{http://www.unixos2.org/sw/pub/binary/make/} or on
+version on
+@c @uref{http://www.unixos2.org/sw/pub/binary/make/} or on
@uref{ftp://hobbes.nmsu.edu/pub/os2/}.
@end quotation
@@ -24611,19 +24888,18 @@ control over these translations and is interpreted as follows:
@itemize @bullet
@item
-If @code{BINMODE} is @samp{"r"}, or
-@code{(BINMODE & 1)} is nonzero, then
+If @code{BINMODE} is @samp{"r"}, or one,
+then
binary mode is set on read (i.e., no translations on reads).
@item
-If @code{BINMODE} is @code{"w"}, or
-@code{(BINMODE & 2)} is nonzero, then
+If @code{BINMODE} is @code{"w"}, or two,
+then
binary mode is set on write (i.e., no translations on writes).
@item
-If @code{BINMODE} is @code{"rw"} or @code{"wr"},
-binary mode is set for both read and write
-(same as @code{(BINMODE & 3)}).
+If @code{BINMODE} is @code{"rw"} or @code{"wr"} or three,
+binary mode is set for both read and write.
@item
@code{BINMODE=@var{non-null-string}} is
@@ -24932,7 +25208,7 @@ The Atari port is no longer supported. It is
included for those who might want to use it but it is no longer being
actively maintained.
-@c based on material from Michal Jaegermann <michal@gortel.phys.ualberta.ca>
+@c based on material from Michal Jaegermann <michal@gortel.phys.ualberta.ca>, now michal@harddata.com
@cindex atari
@cindex installation, atari
There are no substantial differences when installing @command{gawk} on
@@ -25142,6 +25418,18 @@ While the @command{gawk} developers do occasionally read this newsgroup,
there is no guarantee that we will see your posting. The steps described
above are the official recognized ways for reporting bugs.
+@quotation NOTE
+Many distributions of GNU/Linux and the various BSD-based operating systems
+have their own bug reporting systems. If you report a bug using your distribution's
+bug reporting system, @emph{please} also send a copy to @email{bug-gawk@@gnu.org}.
+
+This is for two reasons. First, while some distributions forward
+bug reports ``upstream'' to the GNU mailing list, many don't, so there is a good
+chance that the @command{gawk} maintainer won't even see the bug report! Second,
+mail to the GNU list is archived, and having everything at the GNU project
+keeps things self-contained and not dependant on other web sites.
+@end quotation
+
Non-bug suggestions are always welcome as well. If you have questions
about things that are unclear in the documentation or are just obscure
features, ask me; I will try to help you out, although I
@@ -25157,61 +25445,41 @@ authoritative if it conflicts with this @value{DOCUMENT}.
The people maintaining the non-Unix ports of @command{gawk} are
as follows:
+@multitable {Tandem (POSIX-compliant)} {123456789012345678901234567890123456789001234567890}
@ignore
-@table @asis
-@cindex Fish, Fred
-@item Amiga
-Fred Fish, @email{fnf@@ninemoons.com}.
-
-@cindex Brown, Martin
-@item BeOS
-Martin Brown, @email{mc@@whoever.com}.
-
-@cindex Deifik, Scott
-@cindex Hankerson, Darrel
-@item MS-DOS
-Scott Deifik, @email{scottd.mail@@sbcglobal.net} and
-Darrel Hankerson, @email{hankedr@@mail.auburn.edu}.
-
-@cindex Grigera, Juan
-@item MS-Windows
-Juan Grigera, @email{juan@@biophnet.unlp.edu.ar}.
-
-@item OS/2
-Andreas Buening, @email{andreas.buening@@nexgo.de}.
-
-@cindex Davies, Stephen
-@item Tandem
-Stephen Davies, @email{scldad@@sdc.com.au}.
-
-@cindex Rankin, Pat
-@item VMS
-Pat Rankin, @email{rankin@@pactechdata.com}.
-@end table
-@end ignore
-
-@multitable {MS-Windows} {123456789012345678901234567890123456789001234567890}
+@c Fred is no longer living, sadly.
@cindex Fish, Fred
@item Amiga @tab Fred Fish, @email{fnf@@ninemoons.com}.
+@c not supported
@cindex Brown, Martin
@item BeOS @tab Martin Brown, @email{mc@@whoever.com}.
+@end ignore
@cindex Deifik, Scott
-@cindex Hankerson, Darrel
-@item MS-DOS @tab Scott Deifik, @email{scottd.mail@@sbcglobal.net} and
-Darrel Hankerson, @email{hankedr@@mail.auburn.edu}.
+@c @cindex Hankerson, Darrel
+@item MS-DOS @tab Scott Deifik, @email{scottd.mail@@sbcglobal.net}.
+@c and Darrel Hankerson, @email{hankedr@@auburn.edu}.
+@c not supported
+@ignore
@cindex Grigera, Juan
-@item MS-Windows @tab Juan Grigera, @email{juan@@biophnet.unlp.edu.ar}.
+@item MS-Windows @tab Juan Grigera, @email{juan@@grigera.com.ar}.
+@end ignore
-@item OS/2 @tab The Unix for OS/2 team, @email{gawk-maintainer@@unixos2.org}.
+@cindex Buening, Andreas
+@item OS/2 @tab Andreas Buening, @email{andreas.buening@@nexgo.de}
@cindex Davies, Stephen
@item Tandem @tab Stephen Davies, @email{scldad@@sdc.com.au}.
+@cindex Wildenhues, Ralf
+@item Tandem (POSIX-compliant) @tab Ralf Wildenhues @email{Ralf.Wildenhues@@gmx.de}
@cindex Rankin, Pat
@item VMS @tab Pat Rankin, @email{rankin@@pactechdata.com}.
+
+@cindex Pitts, Dave
+@item z/OS (OS/390) @tab Dave Pitts, @email{pitts@@cozx.com}.
@end multitable
If your bug is also reproducible under Unix, please send a copy of your
@@ -25247,18 +25515,18 @@ This @value{SECTION} briefly describes where to get them:
Brian Kernighan has made his implementation of
@command{awk} freely available.
You can retrieve this version via the World Wide Web from
-his home page.@footnote{@uref{http://cm.bell-labs.com/who/bwk}}
+his home page.@footnote{@uref{http://www.cs.princeton.edu/~bwk}}
It is available in several archive formats:
@table @asis
@item Shell archive
-@uref{http://cm.bell-labs.com/who/bwk/awk.shar}
+@uref{http://www.cs.princeton.edu/~bwk/btl.mirror/awk.shar}
@item Compressed @command{tar} file
-@uref{http://cm.bell-labs.com/who/bwk/awk.tar.gz}
+@uref{http://www.cs.princeton.edu/~bwk/btl.mirror/awk.tar.gz}
@item Zip file
-@uref{http://cm.bell-labs.com/who/bwk/awk.zip}
+@uref{http://www.cs.princeton.edu/~bwk/btl.mirror/awk.zip}
@end table
This version requires an ISO C (1990 standard) compiler;
@@ -25278,11 +25546,23 @@ called @command{mawk}. It is available under the GPL
(@pxref{Copying}),
just as @command{gawk} is.
+@ignore
You can get it via anonymous @command{ftp} to the host
@code{@w{ftp.whidbey.net}}. Change directory to @file{/pub/brennan}.
Use ``binary'' or ``image'' mode, and retrieve @file{mawk1.3.3.tar.gz}
(or the latest version that is there).
+@end ignore
+
+The original distribution site for the @command{mawk} source code
+no longer has it. A copy has been made available at
+@uref{http://www.skeeve.com/gawk/mawk1.3.3.tar.gz}.
+In 2009, Thomas Dickey took on @command{mawk} maintenance.
+Basic information is availabe on
+@uref{http://www.invisible-island.net/mawk/mawk.html, the project's web page}.
+The download URL is @uref{ftp://invisible-island.net/mawk/mawk.tar.gz}.
+
+Once you have it,
@command{gunzip} may be used to decompress this file. Installation
is similar to @command{gawk}'s
(@pxref{Unix Installation}).
@@ -25333,7 +25613,8 @@ The @code{BINMODE} special variable for non-Unix operating systems
(@pxref{PC Using}).
@end itemize
-The next version of @command{mawk} will support @code{nextfile}.
+It is to be hoped that a future version of @command{mawk} will support @code{nextfile}
+(@pxref{Nextfile Statement}).
@cindex Sumner, Andrew
@cindex @command{awka} compiler for @command{awk}
@@ -25360,9 +25641,9 @@ It is different from @command{pgawk}
(@pxref{Profiling}),
in that it uses CPU-based profiling, not line-count
profiling. You may find it at either
-@uref{ftp://ftp.math.utah.edu/pub/pawk/pawk-20020210.tar.gz}
+@uref{ftp://ftp.math.utah.edu/pub/pawk/pawk-20030606.tar.gz}
or
-@uref{http://www.math.utah.edu/pub/pawk/pawk-20020210.tar.gz}.
+@uref{http://www.math.utah.edu/pub/pawk/pawk-20030606.tar.gz}.
@cindex OpenSolaris
@cindex Solaris, POSIX compliant @command{awk}
@@ -25385,6 +25666,14 @@ for I/O and for regexp matching, the language it supports is different
from POSIX @command{awk}. More information is available on the
project's home page.@footnote{@uref{http://jawk.sourceforge.net}}.
+@cindex @command{QTawk}
+@cindex QuikTrim Awk
+This is an independent implementation of @command{awk} distributed
+under the GPL. It has a large number of extensions over standard
+@command{awk} and may not be 100% syntactically compatible with it.
+See @uref{http://www.quiktrim.org/QTawk.html} for more information,
+including the manual and a download link.
+
@end table
@c ENDOFRANGE gligawk
@c ENDOFRANGE ingawk
@@ -25507,7 +25796,7 @@ Use the @command{gawk} coding style.
The C code for @command{gawk} follows the instructions in the
@cite{GNU Coding Standards}, with minor exceptions. The code is formatted
using the traditional ``K&R'' style, particularly as regards to the placement
-of braces and the use of tabs. In brief, the coding rules for @command{gawk}
+of braces and the use of TABs. In brief, the coding rules for @command{gawk}
are as follows:
@itemize @bullet
@@ -25537,7 +25826,7 @@ Do not use the comma operator to produce multiple side effects, except
in @code{for} loop initialization and increment parts, and in macro bodies.
@item
-Use real tabs for indenting, not spaces.
+Use real TABs for indenting, not spaces.
@item
Use the ``K&R'' brace layout style.
@@ -28720,17 +29009,21 @@ applications with the library. If this is what you want to do, use
the GNU Lesser General Public License instead of this License. But
first, please read @url{http://www.gnu.org/philosophy/why-not-lgpl.html}.
+
+@c The GNU Free Documentation License.
@node GNU Free Documentation License
@unnumbered GNU Free Documentation License
-
@cindex FDL (Free Documentation License)
@cindex Free Documentation License (FDL)
@cindex GNU Free Documentation License
-@center Version 1.2, November 2002
+@center Version 1.3, 3 November 2008
+
+@c This file is intended to be included within another document,
+@c hence no sectioning command or @node.
@display
-Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc.
-51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+@uref{http://fsf.org/}
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -28835,6 +29128,9 @@ formats which do not have any title page as such, ``Title Page'' means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.
+The ``publisher'' means any person or entity that distributes copies
+of the Document to the public.
+
A section ``Entitled XYZ'' means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
@@ -29067,7 +29363,7 @@ and independent documents or works, in or on a volume of a storage or
distribution medium, is called an ``aggregate'' if the copyright
resulting from the compilation is not used to limit the legal rights
of the compilation's users beyond what the individual works permit.
-When the Document is included an aggregate, this License does not
+When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
@@ -29103,13 +29399,30 @@ title.
@item
TERMINATION
-You may not copy, modify, sublicense, or distribute the Document except
-as expressly provided for under this License. Any other attempt to
-copy, modify, sublicense or distribute the Document is void, and will
-automatically terminate your rights under this License. However,
-parties who have received copies, or rights, from you under this
-License will not have their licenses terminated so long as such
-parties remain in full compliance.
+You may not copy, modify, sublicense, or distribute the Document
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense, or distribute it is void, and
+will automatically terminate your rights under this License.
+
+However, if you cease all violation of this License, then your license
+from a particular copyright holder is reinstated (a) provisionally,
+unless and until the copyright holder explicitly and finally
+terminates your license, and (b) permanently, if the copyright holder
+fails to notify you of the violation by some reasonable means prior to
+60 days after the cessation.
+
+Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, receipt of a copy of some or all of the same material does
+not give you any rights to use it.
@item
FUTURE REVISIONS OF THIS LICENSE
@@ -29127,7 +29440,42 @@ following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation. If the Document does not specify a version
number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.
+as a draft) by the Free Software Foundation. If the Document
+specifies that a proxy can decide which future versions of this
+License can be used, that proxy's public statement of acceptance of a
+version permanently authorizes you to choose that version for the
+Document.
+
+@item
+RELICENSING
+
+``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any
+World Wide Web server that publishes copyrightable works and also
+provides prominent facilities for anybody to edit those works. A
+public wiki that anybody can edit is an example of such a server. A
+``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the
+site means any set of copyrightable works thus published on the MMC
+site.
+
+``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0
+license published by Creative Commons Corporation, a not-for-profit
+corporation with a principal place of business in San Francisco,
+California, as well as future copyleft versions of that license
+published by that same organization.
+
+``Incorporate'' means to publish or republish a Document, in whole or
+in part, as part of another Document.
+
+An MMC is ``eligible for relicensing'' if it is licensed under this
+License, and if all works that were first published under this License
+somewhere other than this MMC, and subsequently incorporated in whole
+or in part into the MMC, (1) had no cover texts or invariant sections,
+and (2) were thus incorporated prior to November 1, 2008.
+
+The operator of an MMC Site may republish an MMC contained in the site
+under CC-BY-SA on the same site at any time before August 1, 2009,
+provided the MMC is eligible for relicensing.
+
@end enumerate
@c fakenode --- for prepinfo
@@ -29141,16 +29489,16 @@ license notices just after the title page:
@group
Copyright (C) @var{year} @var{your name}.
Permission is granted to copy, distribute and/or modify this document
- under the terms of the GNU Free Documentation License, Version 1.2
+ under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
- with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
- A copy of the license is included in the section entitled ``GNU
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
@end group
@end smallexample
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the ``with...Texts.'' line with this:
+replace the ``with@dots{}Texts.'' line with this:
@smallexample
@group
diff --git a/doc/gawkinet.info b/doc/gawkinet.info
index a496f6a2..ff8eb9b9 100644
--- a/doc/gawkinet.info
+++ b/doc/gawkinet.info
@@ -6,14 +6,15 @@ This is gawkinet.info, produced by makeinfo version 4.11 from gawkinet.texi.
END-INFO-DIR-ENTRY
This is Edition 1.1 of `TCP/IP Internetworking With `gawk'', for the
-3.1.4 (or later) version of the GNU implementation of AWK.
+3.1.7 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2004, 2009 Free Software Foundation,
+Inc.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License", the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -22,21 +23,22 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
a. "A GNU Manual"
- b. "You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development."
+ b. "You have the freedom to copy and modify this GNU manual. Buying
+ copies from the FSF supports it in developing GNU and promoting
+ software freedom."
This file documents the networking features in GNU `awk'.
This is Edition 1.1 of `TCP/IP Internetworking With `gawk'', for the
-3.1.4 (or later) version of the GNU implementation of AWK.
+3.1.7 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2004, 2009 Free Software Foundation,
+Inc.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License", the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -45,9 +47,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
a. "A GNU Manual"
- b. "You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development."
+ b. "You have the freedom to copy and modify this GNU manual. Buying
+ copies from the FSF supports it in developing GNU and promoting
+ software freedom."

File: gawkinet.info, Node: Top, Next: Preface, Prev: (dir), Up: (dir)
@@ -59,14 +61,15 @@ This file documents the networking features in GNU Awk (`gawk') version
3.1 and later.
This is Edition 1.1 of `TCP/IP Internetworking With `gawk'', for the
-3.1.4 (or later) version of the GNU implementation of AWK.
+3.1.7 (or later) version of the GNU implementation of AWK.
- Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2004, 2009 Free Software Foundation,
+Inc.
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License", the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -75,9 +78,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
a. "A GNU Manual"
- b. "You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development."
+ b. "You have the freedom to copy and modify this GNU manual. Buying
+ copies from the FSF supports it in developing GNU and promoting
+ software freedom."
* Menu:
@@ -1655,7 +1658,7 @@ holds the HTML page contents:
} else if (MENU[2] == "AboutELIZA") {
Document = "This is an implementation of the famous ELIZA\
program by Joseph Weizenbaum. It is written in GAWK and\
- /bin/sh: expad: command not found
+ uses an HTML GUI."
} else if (MENU[2] == "StartELIZA") {
gsub(/\+/, " ", GETARG["YouSay"])
# Here we also have to substitute coded special characters
@@ -3729,10 +3732,10 @@ File: gawkinet.info, Node: GNU Free Documentation License, Next: Index, Prev:
GNU Free Documentation License
******************************
- Version 1.2, November 2002
+ Version 1.3, 3 November 2008
- Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+ `http://fsf.org/'
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -3834,6 +3837,9 @@ GNU Free Documentation License
Page" means the text near the most prominent appearance of the
work's title, preceding the beginning of the body of the text.
+ The "publisher" means any person or entity that distributes copies
+ of the Document to the public.
+
A section "Entitled XYZ" means a named subunit of the Document
whose title either is precisely XYZ or contains XYZ in parentheses
following text that translates XYZ in another language. (Here XYZ
@@ -4063,7 +4069,7 @@ GNU Free Documentation License
a storage or distribution medium, is called an "aggregate" if the
copyright resulting from the compilation is not used to limit the
legal rights of the compilation's users beyond what the individual
- works permit. When the Document is included an aggregate, this
+ works permit. When the Document is included in an aggregate, this
License does not apply to the other works in the aggregate which
are not themselves derivative works of the Document.
@@ -4099,12 +4105,29 @@ GNU Free Documentation License
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document
- except as expressly provided for under this License. Any other
- attempt to copy, modify, sublicense or distribute the Document is
- void, and will automatically terminate your rights under this
- License. However, parties who have received copies, or rights,
- from you under this License will not have their licenses
- terminated so long as such parties remain in full compliance.
+ except as expressly provided under this License. Any attempt
+ otherwise to copy, modify, sublicense, or distribute it is void,
+ and will automatically terminate your rights under this License.
+
+ However, if you cease all violation of this License, then your
+ license from a particular copyright holder is reinstated (a)
+ provisionally, unless and until the copyright holder explicitly
+ and finally terminates your license, and (b) permanently, if the
+ copyright holder fails to notify you of the violation by some
+ reasonable means prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+ reinstated permanently if the copyright holder notifies you of the
+ violation by some reasonable means, this is the first time you have
+ received notice of violation of this License (for any work) from
+ that copyright holder, and you cure the violation prior to 30 days
+ after your receipt of the notice.
+
+ Termination of your rights under this section does not terminate
+ the licenses of parties who have received copies or rights from
+ you under this License. If your rights have been terminated and
+ not permanently reinstated, receipt of a copy of some or all of
+ the same material does not give you any rights to use it.
10. FUTURE REVISIONS OF THIS LICENSE
@@ -4122,7 +4145,41 @@ GNU Free Documentation License
published (not as a draft) by the Free Software Foundation. If
the Document does not specify a version number of this License,
you may choose any version ever published (not as a draft) by the
- Free Software Foundation.
+ Free Software Foundation. If the Document specifies that a proxy
+ can decide which future versions of this License can be used, that
+ proxy's public statement of acceptance of a version permanently
+ authorizes you to choose that version for the Document.
+
+ 11. RELICENSING
+
+ "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+ World Wide Web server that publishes copyrightable works and also
+ provides prominent facilities for anybody to edit those works. A
+ public wiki that anybody can edit is an example of such a server.
+ A "Massive Multiauthor Collaboration" (or "MMC") contained in the
+ site means any set of copyrightable works thus published on the MMC
+ site.
+
+ "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+ license published by Creative Commons Corporation, a not-for-profit
+ corporation with a principal place of business in San Francisco,
+ California, as well as future copyleft versions of that license
+ published by that same organization.
+
+ "Incorporate" means to publish or republish a Document, in whole or
+ in part, as part of another Document.
+
+ An MMC is "eligible for relicensing" if it is licensed under this
+ License, and if all works that were first published under this
+ License somewhere other than this MMC, and subsequently
+ incorporated in whole or in part into the MMC, (1) had no cover
+ texts or invariant sections, and (2) were thus incorporated prior
+ to November 1, 2008.
+
+ The operator of an MMC Site may republish an MMC contained in the
+ site under CC-BY-SA on the same site at any time before August 1,
+ 2009, provided the MMC is eligible for relicensing.
+
ADDENDUM: How to use this License for your documents
====================================================
@@ -4133,10 +4190,10 @@ notices just after the title page:
Copyright (C) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
- under the terms of the GNU Free Documentation License, Version 1.2
+ under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
- with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
- A copy of the license is included in the section entitled ``GNU
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
If you have Invariant Sections, Front-Cover Texts and Back-Cover
@@ -4347,58 +4404,58 @@ Index

Tag Table:
-Node: Top2007
-Node: Preface5697
-Node: Introduction7072
-Node: Stream Communications8098
-Node: Datagram Communications9271
-Node: The TCP/IP Protocols10902
-Ref: The TCP/IP Protocols-Footnote-111586
-Node: Basic Protocols11743
-Node: Ports13065
-Node: Making Connections14470
-Ref: Making Connections-Footnote-117051
-Ref: Making Connections-Footnote-217098
-Node: Using Networking17279
-Node: Gawk Special Files19633
-Node: Special File Fields21637
-Ref: table-inet-components25387
-Node: Comparing Protocols27299
-Node: File /inet/tcp27888
-Node: File /inet/udp28914
-Node: File /inet/raw30035
-Ref: File /inet/raw-Footnote-133068
-Node: TCP Connecting33148
-Node: Troubleshooting35486
-Ref: Troubleshooting-Footnote-138537
-Node: Interacting39081
-Node: Setting Up41811
-Node: Email45305
-Node: Web page47631
-Ref: Web page-Footnote-150436
-Node: Primitive Service50633
-Node: Interacting Service53367
-Ref: Interacting Service-Footnote-162496
-Node: CGI Lib62528
-Node: Simple Server69489
-Ref: Simple Server-Footnote-177219
-Node: Caveats77320
-Node: Challenges78463
-Node: Some Applications and Techniques87130
-Node: PANIC89587
-Node: GETURL91305
-Node: REMCONF93928
-Node: URLCHK99404
-Node: WEBGRAB103239
-Node: STATIST107689
-Ref: STATIST-Footnote-1119397
-Node: MAZE119842
-Node: MOBAGWHO126030
-Ref: MOBAGWHO-Footnote-1139974
-Node: STOXPRED140029
-Node: PROTBASE154284
-Node: Links167366
-Node: GNU Free Documentation License170800
-Node: Index193204
+Node: Top2003
+Node: Preface5691
+Node: Introduction7066
+Node: Stream Communications8092
+Node: Datagram Communications9265
+Node: The TCP/IP Protocols10896
+Ref: The TCP/IP Protocols-Footnote-111580
+Node: Basic Protocols11737
+Node: Ports13059
+Node: Making Connections14464
+Ref: Making Connections-Footnote-117045
+Ref: Making Connections-Footnote-217092
+Node: Using Networking17273
+Node: Gawk Special Files19627
+Node: Special File Fields21631
+Ref: table-inet-components25381
+Node: Comparing Protocols27293
+Node: File /inet/tcp27882
+Node: File /inet/udp28908
+Node: File /inet/raw30029
+Ref: File /inet/raw-Footnote-133062
+Node: TCP Connecting33142
+Node: Troubleshooting35480
+Ref: Troubleshooting-Footnote-138531
+Node: Interacting39075
+Node: Setting Up41805
+Node: Email45299
+Node: Web page47625
+Ref: Web page-Footnote-150430
+Node: Primitive Service50627
+Node: Interacting Service53361
+Ref: Interacting Service-Footnote-162490
+Node: CGI Lib62522
+Node: Simple Server69483
+Ref: Simple Server-Footnote-177206
+Node: Caveats77307
+Node: Challenges78450
+Node: Some Applications and Techniques87117
+Node: PANIC89574
+Node: GETURL91292
+Node: REMCONF93915
+Node: URLCHK99391
+Node: WEBGRAB103226
+Node: STATIST107676
+Ref: STATIST-Footnote-1119384
+Node: MAZE119829
+Node: MOBAGWHO126017
+Ref: MOBAGWHO-Footnote-1139961
+Node: STOXPRED140016
+Node: PROTBASE154271
+Node: Links167353
+Node: GNU Free Documentation License170787
+Node: Index195926

End Tag Table
diff --git a/doc/gawkinet.texi b/doc/gawkinet.texi
index f1b66073..6abd7ea7 100644
--- a/doc/gawkinet.texi
+++ b/doc/gawkinet.texi
@@ -62,20 +62,20 @@
@set TITLE TCP/IP Internetworking With @command{gawk}
@set EDITION 1.1
-@set UPDATE-MONTH January, 2004
+@set UPDATE-MONTH July, 2009
@c gawk versions:
@set VERSION 3.1
-@set PATCHLEVEL 4
+@set PATCHLEVEL 7
@copying
This is Edition @value{EDITION} of @cite{@value{TITLE}},
for the @value{VERSION}.@value{PATCHLEVEL} (or later) version of the GNU
implementation of AWK.
@sp 2
-Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2004, 2009 Free Software Foundation, Inc.
@sp 2
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``GNU General Public License'', the Front-Cover
texts being (a) (see below), and with the Back-Cover Texts being (b)
@@ -87,9 +87,9 @@ texts being (a) (see below), and with the Back-Cover Texts being (b)
``A GNU Manual''
@item
-``You have freedom to copy and modify this GNU Manual, like GNU
-software. Copies published by the Free Software Foundation raise
-funds for GNU development.''
+``You have the freedom to
+copy and modify this GNU manual. Buying copies from the FSF
+supports it in developing GNU and promoting software freedom.''
@end enumerate
@end copying
@@ -2092,7 +2092,7 @@ function HandleGET() @{
@} else if (MENU[2] == "AboutELIZA") @{
Document = "This is an implementation of the famous ELIZA\
program by Joseph Weizenbaum. It is written in GAWK and\
-/bin/sh: expad: command not found
+ uses an HTML GUI."
@} else if (MENU[2] == "StartELIZA") @{
gsub(/\+/, " ", GETARG["YouSay"])
# Here we also have to substitute coded special characters
@@ -4723,17 +4723,20 @@ They are presented in the order in which they appear.
@end table
+@c The GNU Free Documentation License.
@node GNU Free Documentation License
@unnumbered GNU Free Documentation License
-
@cindex FDL (Free Documentation License)
@cindex Free Documentation License (FDL)
@cindex GNU Free Documentation License
-@center Version 1.2, November 2002
+@center Version 1.3, 3 November 2008
+
+@c This file is intended to be included within another document,
+@c hence no sectioning command or @node.
@display
-Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc.
-51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+@uref{http://fsf.org/}
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -4838,6 +4841,9 @@ formats which do not have any title page as such, ``Title Page'' means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.
+The ``publisher'' means any person or entity that distributes copies
+of the Document to the public.
+
A section ``Entitled XYZ'' means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
@@ -5070,7 +5076,7 @@ and independent documents or works, in or on a volume of a storage or
distribution medium, is called an ``aggregate'' if the copyright
resulting from the compilation is not used to limit the legal rights
of the compilation's users beyond what the individual works permit.
-When the Document is included an aggregate, this License does not
+When the Document is included in an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
@@ -5106,13 +5112,30 @@ title.
@item
TERMINATION
-You may not copy, modify, sublicense, or distribute the Document except
-as expressly provided for under this License. Any other attempt to
-copy, modify, sublicense or distribute the Document is void, and will
-automatically terminate your rights under this License. However,
-parties who have received copies, or rights, from you under this
-License will not have their licenses terminated so long as such
-parties remain in full compliance.
+You may not copy, modify, sublicense, or distribute the Document
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense, or distribute it is void, and
+will automatically terminate your rights under this License.
+
+However, if you cease all violation of this License, then your license
+from a particular copyright holder is reinstated (a) provisionally,
+unless and until the copyright holder explicitly and finally
+terminates your license, and (b) permanently, if the copyright holder
+fails to notify you of the violation by some reasonable means prior to
+60 days after the cessation.
+
+Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, receipt of a copy of some or all of the same material does
+not give you any rights to use it.
@item
FUTURE REVISIONS OF THIS LICENSE
@@ -5130,7 +5153,42 @@ following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation. If the Document does not specify a version
number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.
+as a draft) by the Free Software Foundation. If the Document
+specifies that a proxy can decide which future versions of this
+License can be used, that proxy's public statement of acceptance of a
+version permanently authorizes you to choose that version for the
+Document.
+
+@item
+RELICENSING
+
+``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any
+World Wide Web server that publishes copyrightable works and also
+provides prominent facilities for anybody to edit those works. A
+public wiki that anybody can edit is an example of such a server. A
+``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the
+site means any set of copyrightable works thus published on the MMC
+site.
+
+``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0
+license published by Creative Commons Corporation, a not-for-profit
+corporation with a principal place of business in San Francisco,
+California, as well as future copyleft versions of that license
+published by that same organization.
+
+``Incorporate'' means to publish or republish a Document, in whole or
+in part, as part of another Document.
+
+An MMC is ``eligible for relicensing'' if it is licensed under this
+License, and if all works that were first published under this License
+somewhere other than this MMC, and subsequently incorporated in whole
+or in part into the MMC, (1) had no cover texts or invariant sections,
+and (2) were thus incorporated prior to November 1, 2008.
+
+The operator of an MMC Site may republish an MMC contained in the site
+under CC-BY-SA on the same site at any time before August 1, 2009,
+provided the MMC is eligible for relicensing.
+
@end enumerate
@c fakenode --- for prepinfo
@@ -5144,16 +5202,16 @@ license notices just after the title page:
@group
Copyright (C) @var{year} @var{your name}.
Permission is granted to copy, distribute and/or modify this document
- under the terms of the GNU Free Documentation License, Version 1.2
+ under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
- with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
- A copy of the license is included in the section entitled ``GNU
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
@end group
@end smallexample
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
-replace the ``with...Texts.'' line with this:
+replace the ``with@dots{}Texts.'' line with this:
@smallexample
@group
diff --git a/eval.c b/eval.c
index 59077134..f3d279da 100644
--- a/eval.c
+++ b/eval.c
@@ -148,6 +148,73 @@ char casetable[] = {
C('\360'), C('\361'), C('\362'), C('\363'), C('\364'), C('\365'), C('\366'), C('\367'),
C('\370'), C('\371'), C('\372'), C('\373'), C('\374'), C('\375'), C('\376'), C('\377'),
};
+#elif 'a' == 0x81 /* it's EBCDIC */
+char casetable[] = {
+ /*00 NU SH SX EX PF HT LC DL */
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ /*08 SM VT FF CR SO SI */
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
+ /*10 DE D1 D2 TM RS NL BS IL */
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+ /*18 CN EM CC C1 FS GS RS US */
+ 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F,
+ /*20 DS SS FS BP LF EB EC */
+ 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+ /*28 SM C2 EQ AK BL */
+ 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F,
+ /*30 SY PN RS UC ET */
+ 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+ /*38 C3 D4 NK SU */
+ 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F,
+ /*40 SP */
+ 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
+ /*48 CENT . < ( + | */
+ 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F,
+ /*50 & */
+ 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
+ /*58 ! $ * ) ; ^ */
+ 0x58, 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F,
+ /*60 - / */
+ 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
+ /*68 | , % _ > ? */
+ 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F,
+ /*70 */
+ 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
+ /*78 ` : # @ ' = " */
+ 0x78, 0x79, 0x7A, 0x7B, 0x7C, 0x7D, 0x7E, 0x7F,
+ /*80 a b c d e f g */
+ 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+ /*88 h i { */
+ 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F,
+ /*90 j k l m n o p */
+ 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+ /*98 q r } */
+ 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F,
+ /*A0 ~ s t u v w x */
+ 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7,
+ /*A8 y z [ */
+ 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,
+ /*B0 */
+ 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7,
+ /*B8 ] */
+ 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF,
+ /*C0 { A B C D E F G */
+ 0xC0, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+ /*C8 H I */
+ 0x88, 0x89, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF,
+ /*D0 } J K L M N O P */
+ 0xD0, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+ /*D8 Q R */
+ 0x98, 0x99, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,
+ /*E0 \ S T U V W X */
+ 0xE0, 0xE1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7,
+ /*E8 Y Z */
+ 0xA8, 0xA9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF,
+ /*F0 0 1 2 3 4 5 6 7 */
+ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
+ /*F8 8 9 */
+ 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF
+};
#else
#include "You lose. You will need a translation table for your character set."
#endif
@@ -174,11 +241,13 @@ load_casetable(void)
if (cp == NULL || strcmp(cp, "C") == 0 || strcmp(cp, "POSIX") == 0)
return;
+#ifndef ZOS_USS
for (i = 0200; i <= 0377; i++) {
if (isalpha(i) && islower(i) && i != toupper(i))
casetable[i] = toupper(i);
}
#endif
+#endif
}
/*
@@ -849,6 +918,14 @@ interpret(register NODE *volatile tree)
if (tree->lnode != NULL) {
t = tree_eval(tree->lnode);
exit_val = (int) force_number(t);
+#ifdef VMS
+ if (exit_val == 0)
+ exit_val = EXIT_SUCCESS;
+ else if (exit_val == 1)
+ exit_val = EXIT_FAILURE;
+ /* else
+ just pass anything else on through */
+#endif
free_temp(t);
}
longjmp(rule_tag, TAG_BREAK);
@@ -903,7 +980,7 @@ calc_exp_posint(AWKNUM x, long n)
/* calc_exp --- calculate x1^x2 */
-static AWKNUM
+AWKNUM
calc_exp(AWKNUM x1, AWKNUM x2)
{
long lx;
@@ -1140,7 +1217,7 @@ r_tree_eval(register NODE *tree, int iscond)
case Node_assign_concat:
{
Func_ptr after_assign = NULL;
- NODE *l, *r;
+ NODE *l, *r, *t;
/*
* Note that something lovely like this:
@@ -1157,8 +1234,30 @@ r_tree_eval(register NODE *tree, int iscond)
lhs = get_lhs(tree->lnode, &after_assign, FALSE);
*lhs = force_string(*lhs);
l = *lhs;
+
+ /*
+ * This is a hack. We temporarily increase the reference count
+ * on l in case evaluating r might change the original value
+ * of l. We have to be careful about reducing it afterwards.
+ * In particular, if the lhs changed during evaluation of the
+ * rhs, we have to compensate.
+ *
+ * See test/nasty.awk.
+ */
+ t = dupnode(l);
r = force_string(tree_eval(tree->rnode));
+ if (l != *lhs) {
+ /*
+ * Something happened to the original
+ * during the evaluation of the rhs.
+ */
+ unref(*lhs);
+ *lhs = l;
+ }
+ else
+ unref(t);
+
/*
* Don't clobber string constants!
*
@@ -1789,6 +1888,7 @@ func_call(NODE *tree)
int volatile save_loop_tag_valid = FALSE;
NODE *save_ret_node;
extern NODE *ret_node;
+ size_t current_nloops_active = 0;
/* tree->rnode is a Node_val giving function name */
/* tree->lnode is Node_expression_list of calling args. */
@@ -1831,12 +1931,16 @@ func_call(NODE *tree)
loop_tag_valid = FALSE;
}
PUSH_BINDING(func_tag_stack, func_tag, func_tag_valid);
+ current_nloops_active = nloops_active;
save_ret_node = ret_node;
ret_node = Nnull_string; /* default return value */
INCREMENT(f->exec_count); /* count function calls */
if (setjmp(func_tag) == 0)
(void) interpret(f->rnode);
+ while (nloops_active > current_nloops_active)
+ pop_forloop();
+
r = ret_node;
ret_node = (NODE *) save_ret_node;
RESTORE_BINDING(func_tag_stack, func_tag, func_tag_valid);
@@ -2146,9 +2250,8 @@ void
set_BINMODE()
{
static short warned = FALSE;
- char *p, *cp, save;
+ char *p;
NODE *v;
- int digits = FALSE;
if ((do_lint || do_traditional) && ! warned) {
warned = TRUE;
@@ -2156,41 +2259,67 @@ set_BINMODE()
}
if (do_traditional)
BINMODE = 0;
+ else if ((BINMODE_node->var_value->flags & NUMBER) != 0) {
+ BINMODE = (int) force_number(BINMODE_node->var_value);
+ /* Make sure the value is rational. */
+ if (BINMODE < 0)
+ BINMODE = 0;
+ else if (BINMODE > 3)
+ BINMODE = 3;
+ }
else if ((BINMODE_node->var_value->flags & STRING) != 0) {
v = BINMODE_node->var_value;
p = v->stptr;
- save = p[v->stlen];
- p[v->stlen] = '\0';
- for (cp = p; *cp != '\0'; cp++) {
- if (ISDIGIT(*cp)) {
- digits = TRUE;
+ /*
+ * Allow only one of the following:
+ * "0", "1", "2", "3",
+ * "r", "w", "rw", "wr"
+ * ANYTHING ELSE goes to 3. So there.
+ */
+ switch (v->stlen) {
+ case 1:
+ switch (p[0]) {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ BINMODE = p[0] - '0';
break;
- }
- }
-
- if (! digits && (BINMODE_node->var_value->flags & MAYBE_NUM) == 0) {
- BINMODE = 0;
- if (strcmp(p, "r") == 0)
+ case 'r':
BINMODE = 1;
- else if (strcmp(p, "w") == 0)
+ break;
+ case 'w':
BINMODE = 2;
- else if (strcmp(p, "rw") == 0 || strcmp(p, "wr") == 0)
+ break;
+ default:
BINMODE = 3;
-
- if (BINMODE == 0 && v->stlen != 0) {
- /* arbitrary string, assume both */
+ goto bad_value;
+ break;
+ }
+ break;
+ case 2:
+ switch (p[0]) {
+ case 'r':
BINMODE = 3;
- warning("BINMODE: arbitrary string value treated as \"rw\"");
+ if (p[1] != 'w')
+ goto bad_value;
+ break;
+ case 'w':
+ BINMODE = 3;
+ if (p[1] != 'r')
+ goto bad_value;
+ break;
+ break;
+ default:
+ bad_value:
+ lintwarn(_("BINMODE value `%s' is invalid, treated as 3"), p);
+ break;
}
- } else
- BINMODE = (int) force_number(BINMODE_node->var_value);
-
- p[v->stlen] = save;
- } else if ((BINMODE_node->var_value->flags & NUMBER) != 0)
- BINMODE = (int) force_number(BINMODE_node->var_value);
+ }
+ }
else
- BINMODE = 0; /* shouldn't happen */
+ BINMODE = 3; /* shouldn't happen */
}
/* set_OFS --- update OFS related variables when OFS assigned to */
@@ -2387,6 +2516,8 @@ assign_val(NODE **lhs_p, NODE *rhs)
*/
unref(*lhs_p);
*lhs_p = dupnode(rhs);
+ if ((*lhs_p)->type != Node_val)
+ (*lhs_p)->funcbody = NULL;
}
return *lhs_p;
}
diff --git a/ext.c b/ext.c
index 60ba61f2..e0a99753 100644
--- a/ext.c
+++ b/ext.c
@@ -7,7 +7,7 @@
*/
/*
- * Copyright (C) 1995 - 2001, 2003-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1995 - 2001, 2003-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
diff --git a/extension/ChangeLog b/extension/ChangeLog
index 55c9f616..beca2481 100644
--- a/extension/ChangeLog
+++ b/extension/ChangeLog
@@ -1,3 +1,23 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon May 18 21:31:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c (write_value, read_value): Use htonl / ntohl to write /
+ read the code for double / string. Test read-in code for != 0
+ to handle stuff written before this change.
+
+Sat May 16 22:52:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c (do_reada, read_elem, read_value): Made the code
+ actually work.
+
+Fri May 15 16:01:06 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c, rwarray.awk: New files.
+ * steps: Updated.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/extension/rwarray.awk b/extension/rwarray.awk
new file mode 100644
index 00000000..1057b396
--- /dev/null
+++ b/extension/rwarray.awk
@@ -0,0 +1,28 @@
+BEGIN {
+ extension("./rwarray.so","dlload")
+
+ while ((getline word < "/usr/share/dict/words") > 0)
+ dict[word] = word word
+
+ for (i in dict)
+ printf("dict[%s] = %s\n", i, dict[i]) > "orig.out"
+ close("orig.out");
+
+ writea("orig.bin", dict)
+
+ reada("orig.bin", dict)
+
+ for (i in dict)
+ printf("dict[%s] = %s\n", i, dict[i]) > "new.out"
+ close("new.out");
+
+ ret = system("cmp orig.out new.out")
+
+ if (ret == 0)
+ print "old and new are equal - GOOD"
+ else
+ print "old and new are not equal - BAD"
+
+ if (ret == 0 && !("keepit" in ENVIRON))
+ system("rm orig.bin orig.out new.out")
+}
diff --git a/extension/rwarray.c b/extension/rwarray.c
new file mode 100644
index 00000000..72a331c3
--- /dev/null
+++ b/extension/rwarray.c
@@ -0,0 +1,425 @@
+/*
+ * rwarray.c - Builtin functions to binary read / write arrays to a file.
+ *
+ * Arnold Robbins
+ * May 2009
+ */
+
+/*
+ * Copyright (C) 2009 the Free Software Foundation, Inc.
+ *
+ * This file is part of GAWK, the GNU implementation of the
+ * AWK Programming Language.
+ *
+ * GAWK 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 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GAWK 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 "awk.h"
+#include <arpa/inet.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+
+
+#define MAGIC "awkrulz\n"
+#define MAJOR 1
+#define MINOR 0
+
+static int write_elem(int fd, int index, NODE *item);
+static int write_chain(int fd, int index, NODE *item);
+static int write_value(int fd, NODE *val);
+
+static NODE *read_elem(int fd, int *index, int *eof);
+static NODE *read_value(int fd);
+
+/*
+ * Format of array info:
+ *
+ * MAGIC 8 bytes
+ * Major version 4 bytes - network order
+ * Minor version 4 bytes - network order
+ * Element count 4 bytes - network order
+ * Array size 4 bytes - network order
+ * Elements
+ *
+ * For each element:
+ * Bucket number: 4 bytes - network order
+ * Hash of index val: 4 bytes - network order
+ * Length of index val: 4 bytes - network order
+ * Index val as characters (N bytes)
+ * Value type 1 byte (0 = string, 1 = number)
+ * IF string:
+ * Length of value 4 bytes
+ * Value as characters (N bytes)
+ * ELSE
+ * 8 bytes as native double
+ */
+
+/* do_writea --- write an array */
+
+static NODE *
+do_writea(tree)
+NODE *tree;
+{
+ NODE *file, *array;
+ int ret;
+ int fd;
+ uint32_t major = MAJOR;
+ uint32_t minor = MINOR;
+ uint32_t count;
+ uint32_t array_sz;
+ int i;
+
+ if (do_lint && get_curfunc_arg_count() > 2)
+ lintwarn("writea: called with too many arguments");
+
+ /* directory is first arg, array to dump is second */
+ file = get_scalar_argument(tree, 0, FALSE);
+ array = get_array_argument(tree, 1, TRUE);
+
+ /* open the file, if error, set ERRNO and return */
+ (void) force_string(file);
+ fd = creat(file->stptr, 0600);
+ if (fd < 0) {
+ goto done1;
+ }
+
+ if (write(fd, MAGIC, strlen(MAGIC)) != strlen(MAGIC))
+ goto done1;
+
+ major = htonl(major);
+ if (write(fd, & major, sizeof(major)) != sizeof(major))
+ goto done1;
+
+ minor = htonl(minor);
+ if (write(fd, & minor, sizeof(minor)) != sizeof(minor))
+ goto done1;
+
+ count = htonl(array->table_size);
+ if (write(fd, & count, sizeof(count)) != sizeof(count))
+ goto done1;
+
+ array_sz = htonl(array->array_size);
+ if (write(fd, & array_sz, sizeof(array_sz)) != sizeof(array_sz))
+ goto done1;
+
+ for (i = 0; i < array->array_size; i++) {
+ ret = write_chain(fd, i, array->var_array[i]);
+ if (ret != 0)
+ goto done1;
+ }
+
+ ret = 0;
+ goto done0;
+
+done1:
+ ret = -1;
+ update_ERRNO();
+ unlink(file->stptr);
+
+done0:
+ free_temp(file);
+ close(fd);
+
+ /* Set the return value */
+ set_value(tmp_number((AWKNUM) ret));
+
+ /* Just to make the interpreter happy */
+ return tmp_number((AWKNUM) 0);
+}
+
+/* write_chain --- write out a whole hash chain */
+
+/*
+ * Write elements in the chain in reverse order so that
+ * when we read the elements back in we can just push them
+ * onto the front and thus recreate the array as it was.
+ */
+
+static int
+write_chain(int fd, int index, NODE *bucket)
+{
+ int ret;
+
+ if (bucket == NULL)
+ return 0;
+
+ ret = write_chain(fd, index, bucket->ahnext);
+ if (ret != 0)
+ return ret;
+
+ return write_elem(fd, index, bucket);
+}
+
+/* write_elem --- write out a single element */
+
+static int
+write_elem(int fd, int index, NODE *item)
+{
+ uint32_t hashval, indexval_len;
+
+ index = htonl(index);
+ if (write(fd, & index, sizeof(index)) != sizeof(index))
+ return -1;
+
+ hashval = htonl(item->ahcode);
+ if (write(fd, & hashval, sizeof(hashval)) != sizeof(hashval))
+ return -1;
+
+ indexval_len = htonl(item->ahname_len);
+ if (write(fd, & indexval_len, sizeof(indexval_len)) != sizeof(indexval_len))
+ return -1;
+
+ if (write(fd, item->ahname_str, item->ahname_len) != item->ahname_len)
+ return -1;
+
+ return write_value(fd, item->ahvalue);
+}
+
+/* write_value --- write a number or a string */
+
+static int
+write_value(int fd, NODE *val)
+{
+ int code, len;
+
+ if ((val->flags & NUMBER) != 0) {
+ code = htonl(1);
+ if (write(fd, & code, sizeof(code)) != sizeof(code))
+ return -1;
+
+ if (write(fd, & val->numbr, sizeof(val->numbr)) != sizeof(val->numbr))
+ return -1;
+ } else {
+ code = 0;
+ if (write(fd, & code, sizeof(code)) != sizeof(code))
+ return -1;
+
+ len = htonl(val->stlen);
+ if (write(fd, & len, sizeof(len)) != sizeof(len))
+ return -1;
+
+ if (write(fd, val->stptr, val->stlen) != val->stlen)
+ return -1;
+ }
+
+ return 0;
+}
+
+/* do_reada --- read an array */
+
+static NODE *
+do_reada(tree)
+NODE *tree;
+{
+ NODE *file, *array;
+ int ret;
+ int fd;
+ uint32_t major;
+ uint32_t minor;
+ uint32_t count;
+ uint32_t array_sz;
+ char magic_buf[30];
+ int index;
+ NODE *new_elem;
+ int eof;
+
+ if (do_lint && get_curfunc_arg_count() > 2)
+ lintwarn("reada: called with too many arguments");
+
+ /* directory is first arg, array to dump is second */
+ file = get_scalar_argument(tree, 0, FALSE);
+ array = get_array_argument(tree, 1, TRUE);
+
+ (void) force_string(file);
+ fd = open(file->stptr, O_RDONLY);
+ if (fd < 0) {
+ goto done1;
+ }
+
+ memset(magic_buf, '\0', sizeof(magic_buf));
+ if (read(fd, magic_buf, strlen(MAGIC)) != strlen(MAGIC)) {
+ goto done1;
+ }
+
+ if (strcmp(magic_buf, MAGIC) != 0) {
+ goto done1;
+ }
+
+ if (read(fd, & major, sizeof(major)) != sizeof(major)) {
+ goto done1;
+ }
+ major = ntohl(major);
+
+ if (major != MAJOR) {
+ goto done1;
+ }
+
+ if (read(fd, & minor, sizeof(minor)) != sizeof(minor)) {
+ goto done1;
+ }
+ minor = ntohl(minor);
+ if (minor != MINOR) {
+ goto done1;
+ }
+
+ assoc_clear(array);
+
+ if (read(fd, & count, sizeof(count)) != sizeof(count)) {
+ goto done1;
+ }
+ array->table_size = ntohl(count);
+
+ if (read(fd, & array_sz, sizeof(array_sz)) != sizeof(array_sz)) {
+ goto done1;
+ }
+ array->array_size = ntohl(array_sz);
+
+ /* malloc var_array */
+ array->var_array = (NODE **) malloc(array->array_size * sizeof(NODE *));
+ memset(array->var_array, '\0', array->array_size * sizeof(NODE *));
+
+ while ((new_elem = read_elem(fd, & index, & eof)) != NULL) {
+ new_elem->ahnext = array->var_array[index];
+ array->var_array[index] = new_elem;
+ }
+
+ if (eof) {
+ ret = 0;
+ goto done0;
+ }
+
+done1:
+ ret = -1;
+ update_ERRNO();
+
+done0:
+ free_temp(file);
+ close(fd);
+
+ /* Set the return value */
+ set_value(tmp_number((AWKNUM) ret));
+
+ /* Just to make the interpreter happy */
+ return tmp_number((AWKNUM) 0);
+}
+
+/* read_elem --- read in a single element */
+
+static NODE *
+read_elem(int fd, int *the_index, int *eof)
+{
+ uint32_t hashval, indexval_len, index;
+ NODE *item;
+ int ret;
+
+ *the_index = 0;
+ *eof = FALSE;
+
+ if ((ret = read(fd, & index, sizeof(index))) != sizeof(index)) {
+ if (ret == 0) {
+ *eof = TRUE;
+ }
+ return NULL;
+ }
+ *the_index = index = ntohl(index);
+
+ getnode(item);
+ memset(item, 0, sizeof(*item));
+ item->type = Node_ahash;
+ item->flags = MALLOC;
+
+ if (read(fd, & hashval, sizeof(hashval)) != sizeof(hashval)) {
+ return NULL;
+ }
+
+ item->ahcode = ntohl(hashval);
+
+ if (read(fd, & indexval_len, sizeof(indexval_len)) != sizeof(indexval_len)) {
+ return NULL;
+ }
+ item->ahname_len = ntohl(indexval_len);
+
+ item->ahname_str = malloc(item->ahname_len + 2);
+ if (read(fd, item->ahname_str, item->ahname_len) != item->ahname_len) {
+ return NULL;
+ }
+ item->ahname_str[item->ahname_len] = '\0';
+ item->ahname_ref = 1;
+
+ item->ahvalue = read_value(fd);
+ if (item->ahvalue == NULL) {
+ return NULL;
+ }
+
+ return item;
+}
+
+/* read_value --- read a number or a string */
+
+static NODE *
+read_value(int fd)
+{
+ NODE *val;
+ int code, len;
+
+ getnode(val);
+ memset(val, 0, sizeof(*val));
+ val->type = Node_val;
+
+ if (read(fd, & code, sizeof(code)) != sizeof(code)) {
+ return NULL;
+ }
+ code = ntohl(code);
+
+ /*
+ * Very very early versions of this did not write out the code using htonl.
+ * Thus this check for `!= 0' instead of '== 1'.
+ */
+ if (code != 0) {
+ if (read(fd, & val->numbr, sizeof(val->numbr)) != sizeof(val->numbr)) {
+ return NULL;
+ }
+ val->flags = NUMBER|NUMCUR|MALLOC;
+ } else {
+ if (read(fd, & len, sizeof(len)) != sizeof(len)) {
+ return NULL;
+ }
+ val->stlen = ntohl(len);
+ val->stptr = malloc(val->stlen + 2);
+ memset(val->stptr, '\0', val->stlen + 2);
+
+ if (read(fd, val->stptr, val->stlen) != val->stlen) {
+ return NULL;
+ }
+
+ val->flags = STRING|STRCUR|MALLOC;
+ }
+
+ return val;
+}
+
+/* dlload --- load new builtins in this library */
+
+NODE *
+dlload(tree, dl)
+NODE *tree;
+void *dl;
+{
+ make_builtin("writea", do_writea, 2);
+ make_builtin("reada", do_reada, 2);
+
+ return tmp_number((AWKNUM) 0);
+}
diff --git a/extension/steps b/extension/steps
index 7ff5265f..0ced6657 100755
--- a/extension/steps
+++ b/extension/steps
@@ -3,6 +3,7 @@
# Sun Aug 26 16:03:58 IDT 2001
# Sun Apr 28 15:59:57 IDT 2002
# Mon Jun 21 17:03:37 IDT 2004
+# Fri May 15 15:48:45 IDT 2009
gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. dl.c
gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. filefuncs.c
@@ -11,6 +12,7 @@ gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. ordchr.c
gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. arrayparm.c
gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. readfile.c
gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. testarg.c
+gcc -shared -Wall -DHAVE_CONFIG_H -c -O -g -I.. rwarray.c
ld -o dl.so -shared dl.o
ld -o filefuncs.so -shared filefuncs.o
ld -o fork.so -shared fork.o
@@ -18,3 +20,4 @@ ld -o ordchr.so -shared ordchr.o
ld -o arrayparm.so -shared arrayparm.o
ld -o readfile.so -shared readfile.o
ld -o testarg.so -shared testarg.o
+ld -o rwarray.so -shared rwarray.o
diff --git a/field.c b/field.c
index 467cca8c..6604d1ba 100644
--- a/field.c
+++ b/field.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -39,20 +39,20 @@ is_blank(int c)
typedef void (* Setfunc) P((long, char *, long, NODE *));
static long (*parse_field) P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static void rebuild_record P((void));
static long re_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static long def_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static long posix_def_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static long null_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static long sc_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static long fw_parse_field P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
static void set_element P((long num, char * str, long len, NODE *arr));
static void grow_fields_arr P((long num));
static void set_field P((long num, char *str, long len, NODE *dummy));
@@ -364,12 +364,14 @@ re_parse_field(long up_to, /* parse only up to this field number */
NODE *fs ATTRIBUTE_UNUSED,
Regexp *rp,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle)
{
register char *scan = *buf;
register long nf = parse_high_water;
register char *field;
register char *end = scan + len;
+ int regex_flags = RE_NEED_START;
#ifdef MBS_SUPPORT
size_t mbclen = 0;
mbstate_t mbs;
@@ -377,6 +379,9 @@ re_parse_field(long up_to, /* parse only up to this field number */
memset(&mbs, 0, sizeof(mbstate_t));
#endif
+ if (in_middle)
+ regex_flags |= RE_NO_BOL;
+
if (up_to == UNLIMITED)
nf = 0;
if (len == 0)
@@ -387,8 +392,9 @@ re_parse_field(long up_to, /* parse only up to this field number */
scan++;
field = scan;
while (scan < end
- && research(rp, scan, 0, (end - scan), RE_NEED_START) != -1
+ && research(rp, scan, 0, (end - scan), regex_flags) != -1
&& nf < up_to) {
+ regex_flags |= RE_NO_BOL;
if (REEND(rp, scan) == RESTART(rp, scan)) { /* null match */
#ifdef MBS_SUPPORT
if (gawk_mb_cur_max > 1) {
@@ -439,7 +445,8 @@ def_parse_field(long up_to, /* parse only up to this field number */
NODE *fs,
Regexp *rp ATTRIBUTE_UNUSED,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle ATTRIBUTE_UNUSED)
{
register char *scan = *buf;
register long nf = parse_high_water;
@@ -506,7 +513,8 @@ posix_def_parse_field(long up_to, /* parse only up to this field number */
NODE *fs,
Regexp *rp ATTRIBUTE_UNUSED,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle ATTRIBUTE_UNUSED)
{
register char *scan = *buf;
register long nf = parse_high_water;
@@ -570,7 +578,8 @@ null_parse_field(long up_to, /* parse only up to this field number */
NODE *fs ATTRIBUTE_UNUSED,
Regexp *rp ATTRIBUTE_UNUSED,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle ATTRIBUTE_UNUSED)
{
register char *scan = *buf;
register long nf = parse_high_water;
@@ -618,7 +627,8 @@ sc_parse_field(long up_to, /* parse only up to this field number */
NODE *fs,
Regexp *rp ATTRIBUTE_UNUSED,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle ATTRIBUTE_UNUSED)
{
register char *scan = *buf;
register char fschar;
@@ -695,21 +705,60 @@ fw_parse_field(long up_to, /* parse only up to this field number */
NODE *fs ATTRIBUTE_UNUSED,
Regexp *rp ATTRIBUTE_UNUSED,
Setfunc set, /* routine to set the value of the parsed field */
- NODE *n)
+ NODE *n,
+ int in_middle ATTRIBUTE_UNUSED)
{
register char *scan = *buf;
register long nf = parse_high_water;
register char *end = scan + len;
+#ifdef MBS_SUPPORT
+ int nmbc;
+ size_t mbclen;
+ size_t mbslen;
+ size_t lenrest;
+ char *mbscan;
+ mbstate_t mbs;
+
+ memset(&mbs, 0, sizeof(mbstate_t));
+#endif
if (up_to == UNLIMITED)
nf = 0;
if (len == 0)
return nf;
for (; nf < up_to && (len = FIELDWIDTHS[nf+1]) != -1; ) {
- if (len > end - scan)
- len = end - scan;
- (*set)(++nf, scan, (long) len, n);
- scan += len;
+#ifdef MBS_SUPPORT
+ if (gawk_mb_cur_max > 1) {
+ nmbc = 0;
+ mbslen = 0;
+ mbscan = scan;
+ lenrest = end - scan;
+ while (nmbc < len && mbslen < lenrest) {
+ mbclen = mbrlen(mbscan, end - mbscan, &mbs);
+ if ( mbclen == 1
+ || mbclen == (size_t) -1
+ || mbclen == (size_t) -2
+ || mbclen == 0) {
+ /* We treat it as a singlebyte character. */
+ mbclen = 1;
+ }
+ if (mbclen <= end - mbscan) {
+ mbscan += mbclen;
+ mbslen += mbclen;
+ ++nmbc;
+ }
+ }
+ (*set)(++nf, scan, (long) mbslen, n);
+ scan += mbslen;
+ }
+ else
+#endif
+ {
+ if (len > end - scan)
+ len = end - scan;
+ (*set)(++nf, scan, (long) len, n);
+ scan += len;
+ }
}
if (len == -1)
*buf = end;
@@ -725,6 +774,7 @@ fw_parse_field(long up_to, /* parse only up to this field number */
NODE **
get_field(register long requested, Func_ptr *assign)
{
+ int in_middle = FALSE;
/*
* if requesting whole line but some other field has been altered,
* then the whole line must be rebuilt
@@ -737,7 +787,7 @@ get_field(register long requested, Func_ptr *assign)
fields_arr[0]->stlen -
(parse_extent - fields_arr[0]->stptr),
save_FS, FS_regexp, set_field,
- (NODE *) NULL);
+ (NODE *) NULL, in_middle);
parse_high_water = NF;
}
rebuild_record();
@@ -762,9 +812,11 @@ get_field(register long requested, Func_ptr *assign)
*/
if (parse_high_water == 0) /* starting at the beginning */
parse_extent = fields_arr[0]->stptr;
+ else
+ in_middle = TRUE;
parse_high_water = (*parse_field)(requested, &parse_extent,
fields_arr[0]->stlen - (parse_extent - fields_arr[0]->stptr),
- save_FS, FS_regexp, set_field, (NODE *) NULL);
+ save_FS, FS_regexp, set_field, (NODE *) NULL, in_middle);
/*
* if we reached the end of the record, set NF to the number of
@@ -813,7 +865,7 @@ do_split(NODE *tree)
NODE *src, *arr, *sep, *fs, *src2, *fs2, *tmp;
char *s;
long (*parseit) P((long, char **, int, NODE *,
- Regexp *, Setfunc, NODE *));
+ Regexp *, Setfunc, NODE *, int));
Regexp *rp = NULL;
src = force_string(tree_eval(tree->lnode));
@@ -832,7 +884,7 @@ do_split(NODE *tree)
/*
* Evaluate sep if it may have side effects.
*/
- if ((sep->re_flags & (FS_DFLT|CONST)) == 0)
+ if ((sep->re_flags & (FS_DFLT|CONSTANT)) == 0)
free_temp(tree_eval(sep->re_exp));
/*
* And now we can safely turn off the array.
@@ -856,7 +908,7 @@ do_split(NODE *tree)
warned = TRUE;
lintwarn(_("split: null string for third arg is a gawk extension"));
}
- } else if (fs->stlen == 1 && (sep->re_flags & CONST) == 0) {
+ } else if (fs->stlen == 1 && (sep->re_flags & CONSTANT) == 0) {
if (fs->stptr[0] == ' ') {
if (do_posix)
parseit = posix_def_parse_field;
@@ -886,7 +938,7 @@ do_split(NODE *tree)
s = src2->stptr;
tmp = tmp_number((AWKNUM) (*parseit)(UNLIMITED, &s, (int) src2->stlen,
- fs2, rp, set_element, arr));
+ fs2, rp, set_element, arr, FALSE));
unref(src2);
unref(fs2);
return tmp;
diff --git a/floatcomp.c b/floatcomp.c
index 44db96d7..ff6a4708 100644
--- a/floatcomp.c
+++ b/floatcomp.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
diff --git a/floatmagic.h b/floatmagic.h
new file mode 100644
index 00000000..c6aabd92
--- /dev/null
+++ b/floatmagic.h
@@ -0,0 +1,54 @@
+/*
+ * floatmagic.h -- Definitions of isnan and isinf for gawk.
+ */
+
+/*
+ * Copyright (C) 2009 the Free Software Foundation, Inc.
+ *
+ * This file is part of GAWK, the GNU implementation of the
+ * AWK Programming Language.
+ *
+ * GAWK 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 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GAWK 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
+ */
+
+/*
+ * NOTE: <math.h> MUST be included before this file. Also <config.h>.
+ *
+ * These definitions are taken from the Autoconf 2.63 manual. Not pretty.
+ */
+
+#ifndef HAVE_ISNAN
+#ifndef isnan
+# define isnan(x) \
+ (sizeof (x) == sizeof (long double) ? isnan_ld (x) \
+ : sizeof (x) == sizeof (double) ? isnan_d (x) \
+ : isnan_f (x))
+static inline int isnan_f (float x) { return x != x; }
+static inline int isnan_d (double x) { return x != x; }
+static inline int isnan_ld (long double x) { return x != x; }
+#endif
+#endif
+
+#ifndef HAVE_ISINF
+#ifndef isinf
+# define isinf(x) \
+ (sizeof (x) == sizeof (long double) ? isinf_ld (x) \
+ : sizeof (x) == sizeof (double) ? isinf_d (x) \
+ : isinf_f (x))
+static inline int isinf_f (float x) { return isnan (x - x); }
+static inline int isinf_d (double x) { return isnan (x - x); }
+static inline int isinf_ld (long double x) { return isnan (x - x); }
+#endif
+#endif
diff --git a/getopt.c b/getopt.c
index b1cecd31..965bfdd3 100644
--- a/getopt.c
+++ b/getopt.c
@@ -1,9 +1,8 @@
/* Getopt for GNU.
- NOTE: getopt is now part of the C library, so if you don't know what
+ NOTE: getopt is part of the C library, so if you don't know what
"Keep this file name-space clean" means, talk to drepper@gnu.org
before changing it!
- Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003,2004
- Free Software Foundation, Inc.
+ Copyright (C) 1987-1996,1998-2004,2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -568,7 +567,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
- if (__asprintf (&buf, _("%s: option `%s' is ambiguous\n"),
+ if (__asprintf (&buf, _("%s: option '%s' is ambiguous\n"),
argv[0], argv[d->optind]) >= 0)
{
_IO_flockfile (stderr);
@@ -584,7 +583,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
free (buf);
}
#else
- fprintf (stderr, _("%s: option `%s' is ambiguous\n"),
+ fprintf (stderr, _("%s: option '%s' is ambiguous\n"),
argv[0], argv[d->optind]);
#endif
}
@@ -618,11 +617,11 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
/* --option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("\
-%s: option `--%s' doesn't allow an argument\n"),
+%s: option '--%s' doesn't allow an argument\n"),
argv[0], pfound->name);
#else
fprintf (stderr, _("\
-%s: option `--%s' doesn't allow an argument\n"),
+%s: option '--%s' doesn't allow an argument\n"),
argv[0], pfound->name);
#endif
}
@@ -631,12 +630,12 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
/* +option or -option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("\
-%s: option `%c%s' doesn't allow an argument\n"),
+%s: option '%c%s' doesn't allow an argument\n"),
argv[0], argv[d->optind - 1][0],
pfound->name);
#else
fprintf (stderr, _("\
-%s: option `%c%s' doesn't allow an argument\n"),
+%s: option '%c%s' doesn't allow an argument\n"),
argv[0], argv[d->optind - 1][0],
pfound->name);
#endif
@@ -679,7 +678,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
char *buf;
if (__asprintf (&buf, _("\
-%s: option `%s' requires an argument\n"),
+%s: option '%s' requires an argument\n"),
argv[0], argv[d->optind - 1]) >= 0)
{
_IO_flockfile (stderr);
@@ -697,7 +696,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
}
#else
fprintf (stderr,
- _("%s: option `%s' requires an argument\n"),
+ _("%s: option '%s' requires an argument\n"),
argv[0], argv[d->optind - 1]);
#endif
}
@@ -735,10 +734,10 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
{
/* --option */
#if defined _LIBC && defined USE_IN_LIBIO
- n = __asprintf (&buf, _("%s: unrecognized option `--%s'\n"),
+ n = __asprintf (&buf, _("%s: unrecognized option '--%s'\n"),
argv[0], d->__nextchar);
#else
- fprintf (stderr, _("%s: unrecognized option `--%s'\n"),
+ fprintf (stderr, _("%s: unrecognized option '--%s'\n"),
argv[0], d->__nextchar);
#endif
}
@@ -746,10 +745,10 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
{
/* +option or -option */
#if defined _LIBC && defined USE_IN_LIBIO
- n = __asprintf (&buf, _("%s: unrecognized option `%c%s'\n"),
+ n = __asprintf (&buf, _("%s: unrecognized option '%c%s'\n"),
argv[0], argv[d->optind][0], d->__nextchar);
#else
- fprintf (stderr, _("%s: unrecognized option `%c%s'\n"),
+ fprintf (stderr, _("%s: unrecognized option '%c%s'\n"),
argv[0], argv[d->optind][0], d->__nextchar);
#endif
}
@@ -793,29 +792,16 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
if (print_errors)
{
#if defined _LIBC && defined USE_IN_LIBIO
- char *buf;
- int n;
+ char *buf;
+ int n;
#endif
- if (d->__posixly_correct)
- {
- /* 1003.2 specifies the format of this message. */
-#if defined _LIBC && defined USE_IN_LIBIO
- n = __asprintf (&buf, _("%s: illegal option -- %c\n"),
- argv[0], c);
-#else
- fprintf (stderr, _("%s: illegal option -- %c\n"), argv[0], c);
-#endif
- }
- else
- {
#if defined _LIBC && defined USE_IN_LIBIO
- n = __asprintf (&buf, _("%s: invalid option -- %c\n"),
- argv[0], c);
+ n = __asprintf (&buf, _("%s: invalid option -- '%c'\n"),
+ argv[0], c);
#else
- fprintf (stderr, _("%s: invalid option -- %c\n"), argv[0], c);
+ fprintf (stderr, _("%s: invalid option -- '%c'\n"), argv[0], c);
#endif
- }
#if defined _LIBC && defined USE_IN_LIBIO
if (n >= 0)
@@ -860,12 +846,11 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
{
if (print_errors)
{
- /* 1003.2 specifies the format of this message. */
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf,
- _("%s: option requires an argument -- %c\n"),
+ _("%s: option requires an argument -- '%c'\n"),
argv[0], c) >= 0)
{
_IO_flockfile (stderr);
@@ -881,7 +866,8 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
free (buf);
}
#else
- fprintf (stderr, _("%s: option requires an argument -- %c\n"),
+ fprintf (stderr,
+ _("%s: option requires an argument -- '%c'\n"),
argv[0], c);
#endif
}
@@ -934,7 +920,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
- if (__asprintf (&buf, _("%s: option `-W %s' is ambiguous\n"),
+ if (__asprintf (&buf, _("%s: option '-W %s' is ambiguous\n"),
argv[0], argv[d->optind]) >= 0)
{
_IO_flockfile (stderr);
@@ -950,7 +936,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
free (buf);
}
#else
- fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"),
+ fprintf (stderr, _("%s: option '-W %s' is ambiguous\n"),
argv[0], argv[d->optind]);
#endif
}
@@ -975,7 +961,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
char *buf;
if (__asprintf (&buf, _("\
-%s: option `-W %s' doesn't allow an argument\n"),
+%s: option '-W %s' doesn't allow an argument\n"),
argv[0], pfound->name) >= 0)
{
_IO_flockfile (stderr);
@@ -993,7 +979,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
}
#else
fprintf (stderr, _("\
-%s: option `-W %s' doesn't allow an argument\n"),
+%s: option '-W %s' doesn't allow an argument\n"),
argv[0], pfound->name);
#endif
}
@@ -1014,7 +1000,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
char *buf;
if (__asprintf (&buf, _("\
-%s: option `%s' requires an argument\n"),
+%s: option '%s' requires an argument\n"),
argv[0], argv[d->optind - 1]) >= 0)
{
_IO_flockfile (stderr);
@@ -1032,7 +1018,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
}
#else
fprintf (stderr,
- _("%s: option `%s' requires an argument\n"),
+ _("%s: option '%s' requires an argument\n"),
argv[0], argv[d->optind - 1]);
#endif
}
@@ -1081,12 +1067,11 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
{
if (print_errors)
{
- /* 1003.2 specifies the format of this message. */
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("\
-%s: option requires an argument -- %c\n"),
+%s: option requires an argument -- '%c'\n"),
argv[0], c) >= 0)
{
_IO_flockfile (stderr);
@@ -1103,7 +1088,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
}
#else
fprintf (stderr,
- _("%s: option requires an argument -- %c\n"),
+ _("%s: option requires an argument -- '%c'\n"),
argv[0], c);
#endif
}
@@ -1200,7 +1185,7 @@ main (int argc, char **argv)
break;
case 'c':
- printf ("option c with value `%s'\n", optarg);
+ printf ("option c with value '%s'\n", optarg);
break;
case '?':
diff --git a/io.c b/io.c
index 6e728def..9ea6f87e 100644
--- a/io.c
+++ b/io.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -206,6 +206,8 @@ static RECVALUE (*matchrec) P((IOBUF *iop, struct recmatch *recm, SCANSTATE *sta
static int get_a_record P((char **out, IOBUF *iop, int *errcode));
+static void free_rp P((struct redirect *rp));
+
#if defined(HAVE_POPEN_H)
#include "popen.h"
#endif
@@ -316,6 +318,11 @@ nextfile(int skipping)
if (isdir && do_traditional)
continue;
#endif
+ if (whiny_users) {
+ warning(_("cannot open file `%s' for reading (%s)"),
+ fname, strerror(errno));
+ continue;
+ }
goto give_up;
}
curfile->flag |= IOP_NOFREE_OBJ;
@@ -341,7 +348,7 @@ nextfile(int skipping)
}
return curfile;
- give_up:
+give_up:
fatal(_("cannot open file `%s' for reading (%s)"),
fname, strerror(errno));
/* NOTREACHED */
@@ -542,6 +549,7 @@ redirect(NODE *tree, int *errflg)
int fd;
const char *what = NULL;
int isdir = FALSE;
+ int new_rp = FALSE;
switch (tree->type) {
case Node_redirect_append:
@@ -635,6 +643,7 @@ redirect(NODE *tree, int *errflg)
}
if (rp == NULL) {
+ new_rp = TRUE;
emalloc(rp, struct redirect *, sizeof(struct redirect),
"redirect");
emalloc(str, char *, tmp->stlen+1, "redirect");
@@ -646,17 +655,11 @@ redirect(NODE *tree, int *errflg)
rp->iop = NULL;
rp->pid = -1;
rp->status = 0;
- /* maintain list in most-recently-used first order */
- if (red_head != NULL)
- red_head->prev = rp;
- rp->prev = NULL;
- rp->next = red_head;
- red_head = rp;
} else
str = rp->value; /* get \0 terminated string */
while (rp->fp == NULL && rp->iop == NULL) {
- if (rp->flag & RED_EOF)
+ if (! new_rp && rp->flag & RED_EOF)
/*
* encountered EOF on file or pipe -- must be cleared
* by explicit close() before reading more
@@ -694,8 +697,11 @@ redirect(NODE *tree, int *errflg)
case Node_redirect_input:
direction = "from";
rp->iop = iop_open(str, binmode("r"), NULL, & isdir);
- if (isdir)
- fatal(_("file `%s' is a directory"), str);
+ if (isdir) {
+ *errflg = EISDIR;
+ free_rp(rp);
+ return NULL;
+ }
break;
case Node_redirect_twoway:
direction = "to/from";
@@ -741,8 +747,9 @@ redirect(NODE *tree, int *errflg)
}
if (rp->fp != NULL && isatty(fd))
rp->flag |= RED_NOBUF;
+
/* Move rp to the head of the list. */
- if (red_head != rp) {
+ if (! new_rp && red_head != rp) {
if ((rp->prev->next = rp->next) != NULL)
rp->next->prev = rp->prev;
red_head->prev = rp;
@@ -790,12 +797,26 @@ redirect(NODE *tree, int *errflg)
str, strerror(errno));
} else {
free_temp(tmp);
+ free_rp(rp);
return NULL;
}
}
}
}
free_temp(tmp);
+
+ if (new_rp) {
+ /*
+ * It opened successfully, hook it into the list.
+ * Maintain the list in most-recently-used first order.
+ */
+ if (red_head != NULL)
+ red_head->prev = rp;
+ rp->prev = NULL;
+ rp->next = red_head;
+ red_head = rp;
+ }
+
return rp;
}
@@ -889,10 +910,12 @@ do_close(NODE *tree)
lintwarn(_("close: `%.*s' is not an open file, pipe or co-process"),
(int) tmp->stlen, tmp->stptr);
- /* update ERRNO manually, using errno = ENOENT is a stretch. */
- cp = _("close of redirection that was never opened");
- unref(ERRNO_node->var_value);
- ERRNO_node->var_value = make_string(cp, strlen(cp));
+ if (! do_traditional) {
+ /* update ERRNO manually, using errno = ENOENT is a stretch. */
+ cp = _("close of redirection that was never opened");
+ unref(ERRNO_node->var_value);
+ ERRNO_node->var_value = make_string(cp, strlen(cp));
+ }
free_temp(tmp);
return tmp_number((AWKNUM) -1.0);
@@ -1046,8 +1069,7 @@ checkwarn:
rp->prev->next = rp->next;
else
red_head = rp->next;
- free(rp->value);
- free((char *) rp);
+ free_rp(rp);
}
return status;
@@ -1208,7 +1230,7 @@ socketopen(int type, const char *localpname, const char *remotepname,
rhints.ai_family = lhints.ai_family;
rhints.ai_protocol = lhints.ai_protocol;
- rerror = getaddrinfo (remotehostname, remotepname, &rhints, &rres);
+ rerror = getaddrinfo (any_remote_host ? NULL : remotehostname, remotepname, &rhints, &rres);
if (rerror) {
if (lres0 != NULL)
freeaddrinfo(lres0);
@@ -1432,7 +1454,31 @@ devopen(const char *name, const char *mode)
fatal(_("must supply a remote port to `/inet'"));
}
- openfd = socketopen(protocol, localpname, cp, hostname);
+ {
+#define DEFAULT_RETRIES 20
+ static unsigned long def_retries = DEFAULT_RETRIES;
+ static int first_time = TRUE;
+ unsigned long retries = 0;
+
+ if (first_time) {
+ char *cp, *end;
+ unsigned long count = 0;
+
+ first_time = FALSE;
+ if ((cp = getenv("GAWK_SOCK_RETRIES")) != NULL) {
+ count = strtoul(cp, &end, 10);
+ if (end != cp && count > 0)
+ def_retries = count;
+ }
+ }
+ retries = def_retries;
+
+ do {
+ openfd = socketopen(protocol, localpname, cp, hostname);
+ retries--;
+ } while (openfd == INVALID_HANDLE && retries >= 0 && sleep(1) == 0);
+ }
+
*localpnamelastcharp = '/';
*hostnameslastcharp = '/';
#else /* ! HAVE_SOCKETS */
@@ -1724,22 +1770,24 @@ two_way_open(const char *str, struct redirect *rp)
pid_t pid;
struct stat statb;
struct termios st;
+ /* Use array of chars to avoid ascii / ebcdic issues */
+ static char pty_chars[] = "pqrstuvwxyzabcdefghijklmno";
+ int i;
if (! initialized) {
initialized = TRUE;
#ifdef HAVE_GRANTPT
have_dev_ptmx = (stat("/dev/ptmx", &statb) >= 0);
#endif
- c = 'p';
+ i = 0;
do {
+ c = pty_chars[i++];
sprintf(slavenam, "/dev/pty%c0", c);
if (stat(slavenam, &statb) >= 0) {
first_pty_letter = c;
break;
}
- if (++c > 'z')
- c = 'a';
- } while (c != 'p');
+ } while (pty_chars[i] != '\0');
}
#ifdef HAVE_GRANTPT
@@ -1770,6 +1818,8 @@ two_way_open(const char *str, struct redirect *rp)
c = first_pty_letter;
do {
int i;
+ char *cp;
+
for (i = 0; i < 16; i++) {
sprintf(slavenam, "/dev/pty%c%x", c, i);
if (stat(slavenam, &statb) < 0) {
@@ -1784,8 +1834,13 @@ two_way_open(const char *str, struct redirect *rp)
close(master);
}
}
- if (++c > 'z')
- c = 'a';
+ /* move to next character */
+ cp = strchr(pty_chars, c);
+ if (cp[1] != '\0')
+ cp++;
+ else
+ cp = pty_chars;
+ c = *cp;
} while (c != first_pty_letter);
} else
no_ptys = TRUE;
@@ -2484,7 +2539,7 @@ void
fatal(const char *s)
{
printf("%s\n", s);
- exit(1);
+ exit(EXIT_FAILURE);
}
#endif
@@ -3231,3 +3286,12 @@ iopflags2str(int flag)
return genflags2str(flag, values);
}
+
+/* free_rp --- release the memory used by rp */
+
+static void
+free_rp(struct redirect *rp)
+{
+ free(rp->value);
+ free(rp);
+}
diff --git a/libsigsegv/AUTHORS b/libsigsegv/AUTHORS
new file mode 100644
index 00000000..9fc8a0d2
--- /dev/null
+++ b/libsigsegv/AUTHORS
@@ -0,0 +1,4 @@
+Authors of GNU libsigsegv.
+
+Bruno Haible <bruno@clisp.org> Versions 1.0 and 2.0
+Paolo Bonzini <bonzini@gnu.org> HP-UX, MacOS X, Cygwin support
diff --git a/libsigsegv/COPYING b/libsigsegv/COPYING
new file mode 100644
index 00000000..3296a046
--- /dev/null
+++ b/libsigsegv/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ Appendix: How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ 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 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/libsigsegv/ChangeLog b/libsigsegv/ChangeLog
new file mode 100644
index 00000000..6756db0e
--- /dev/null
+++ b/libsigsegv/ChangeLog
@@ -0,0 +1,870 @@
+2009-06-8 Arnold Robbins <arnold@skeeve.com>
+
+ Update to Autoconf 2.63, Automake 1.11, Libtool 2.2.6a
+ This makes change of 2008-08-01 actually work!
+
+ * m4/*, ltmain.sh, configure.ac: Updated to latest libtool.
+ * configure, Makfile.in, */Makefile.in: Regenerated.
+
+2008-08-1 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (install): Do nothing for inclusion with gawk.
+
+2009-06-23 Bruno Haible <bruno@clisp.org>
+
+ * Makefile.am (check-next): No longer ask for copies of config.log.
+
+2009-06-23 Bruno Haible <bruno@clisp.org>
+
+ Improve support for MirBSD 10.
+ * configure.ac (CFG_FAULT, FAULT_CONTEXT): Treat MirBSD/i386 like
+ OpenBSD/i386.
+
+2009-06-23 Bruno Haible <bruno@clisp.org>
+
+ Add support for platforms that follow POSIX:2008, not POSIX:2001.
+ * configure.ac (POSIX): Add MirBSD to known list.
+ (CFG_FAULT, FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE): Define appropriately
+ when <ucontext.h> does not exist.
+ * src/fault-posix-ucontext.h: Renamed from src/fault-posix.h.
+ * src/fault-posix.h: New file.
+ * src/fault-aix5.h: Update.
+ * src/fault-hpux-hppa.h: Update.
+ * src/fault-netbsd.h: Update.
+ * src/fault-solaris.h: Update.
+ * src/Makefile.am (noinst_HEADERS): Add fault-posix-ucontext.h.
+
+2009-06-23 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac (FAULT_CONTEXT_INCLUDE): Reinstall the AC_SUBST
+ invocation.
+
+2009-05-21 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac (FAULT_CONTEXT_INCLUDE): Don't substitute into
+ Makefiles.
+
+2009-05-21 Bruno Haible <bruno@clisp.org>
+
+ * tests/Makefile.am (AUTOMAKE_OPTIONS): Assume automake >= 1.11.
+ Use color-tests option.
+
+2009-01-14 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: More consistent m4 quoting.
+
+2008-09-27 Bruno Haible <bruno@clisp.org>
+
+ * build-aux/config.sub: Update to GNU version 2008-09-08.
+
+2008-09-23 Eric Blake <ebb9@byu.net>
+
+ Use 2 * SIGSTKSZ consistently in configuration checks.
+ * m4/sigaltstack.m4 (SV_SIGALTSTACK): Work around IRIX sigaltstack bug.
+ * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
+ * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
+ Likewise.
+
+2008-09-21 Bruno Haible <bruno@clisp.org>
+
+ * src/Makefile.am (LIBSIGSEGV_VERSION_INFO): New variable.
+ (libsigsegv_la_LDFLAGS): Pass -rpath and -version-info option.
+ Reported by Thomas Klausner <tk@giga.or.at>.
+
+2008-09-21 Eric Blake <ebb9@byu.net>
+ Bruno Haible <bruno@clisp.org>
+
+ Detect and work around bug in Irix 5.3 sigaltstack.
+ * m4/sigaltstack.m4 (SV_SIGALTSTACK): Test for broken stack_t direction
+ in sigaltstack.
+ * src/handler-unix.c (stackoverflow_install_handler): Adjust stack
+ accordingly.
+ * tests/stackoverflow1.c (stack_lower_bound, stack_upper_bound): New
+ variables.
+ (stackoverflow_handler): Use them to expose IRIX bug.
+ (main): Initialize them.
+
+2008-09-07 Bruno Haible <bruno@clisp.org>
+
+ * m4/libtool.m4: Update from libtool-2.2.6.
+ * m4/ltoptions.m4: Likewise.
+ * m4/ltsugar.m4: Likewise.
+ * m4/ltversion.m4: Likewise.
+ * build-aux/ltmain.sh: Likewise.
+
+2008-08-25 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.6 released.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Treat Dragonfly BSD platforms like FreeBSD.
+ Reported by Thomas Klausner <tk@giga.or.at>.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ * src/stackvma-mincore.c (mincore_is_near_this): Improve logic. Needed
+ for reliable NULL pointer access classification as SIGSEGV on AIX 4.3.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ * m4/sigaltstack.m4: Change 'volatile int' return type to 'int'. Needed
+ for AIX 4.3 xlc.
+ * m4/sigaltstack-longjmp.m4: Likewise.
+ * m4/sigaltstack-siglongjmp.m4: Likewise.
+ * tests/stackoverflow1.c (recurse): Likewise.
+ * tests/stackoverflow2.c (recurse): Likewise.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ * tests/sigsegv1.c: Include <config.h>.
+ * tests/sigsegv2.c: Likewise.
+ * tests/sigsegv3.c: Include <config.h> before all other headers.
+ * tests/stackoverflow1.c: Likewise.
+ * tests/stackoverflow2.c: Likewise.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ Fix the sigsegv3 test on MacOS X.
+ * src/sigsegv.h.in (sigsegv_leave_handler): Take 4 arguments.
+ * NEWS: Mention the change.
+ * src/handler-macos.c (our_exception_thread, signalled_thread): New
+ variables.
+ (catch_exception_raise): Set signalled_thread during the user_handler
+ invocation.
+ (mach_exception_thread): Initialize our_exception_thread.
+ (sigsegv_leave_handler): Take 4 arguments. When called from within
+ the exception thread, let the signalled thread do a hyperjump.
+ * src/handler-unix.c (sigsegv_leave_handler): Take 4 arguments.
+ * src/handler-win32.c (sigsegv_leave_handler): Likewise.
+ * src/handler-none.c (sigsegv_leave_handler): Likewise.
+ * src/machfault-macos.h (SIGSEGV_INTEGER_ARGUMENT_1,
+ SIGSEGV_INTEGER_ARGUMENT_2, SIGSEGV_INTEGER_ARGUMENT_3,
+ SIGSEGV_FRAME_POINTER): New macros.
+ * tests/sigsegv3.c (handler_continuation): New function.
+ (handler): Update to new API.
+ * tests/stackoverflow1.c (stackoverflow_handler_continuation): New
+ function.
+ (stackoverflow_handler): Update to new API.
+ * tests/stackoverflow2.c (stackoverflow_handler_continuation): New
+ function.
+ (stackoverflow_handler, sigsegv_handler): Update to new API.
+
+2008-08-24 Bruno Haible <bruno@clisp.org>
+
+ Test the use of sigsegv_leave_handler from within a SIGSEGV handler.
+ * tests/sigsegv3.c: New file.
+ * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add sigsegv3.
+
+2008-08-23 Eric Blake <ebb9@byu.net>
+
+ * src/Makefile.am (noinst_HEADERS): Remove machfault-macos-powerpc.h
+ and machfault-macos-i386.h. Add machfault-macos.h.
+
+2008-08-17 Bruno Haible <bruno@clisp.org>
+
+ Allow building universal binaries on MacOS X.
+ * src/machfault-macos.h: New file, combining
+ src/machfault-macos-powerpc.h and src/machfault-macos-i386.h.
+ * src/machfault-macos-powerpc.h: Remove file.
+ * src/machfault-macos-i386.h: Remove file.
+ * configure.ac (CFG_MACHFAULT): Set to machfault-macos.h.
+ (FAULT_CONTEXT_INCLUDE) [MacOSX]: Set to #ifdefs for all four possible
+ architectures.
+
+2008-07-20 Bruno Haible <bruno@clisp.org>
+
+ Make sigsegv_get_vma async-safe.
+ * src/sigsegv.h.in (sigsegv_handler_t, stackoverflow_handler_t):
+ Mention async-safety constraints.
+ + src/stackvma-rofile.c: New file.
+ * src/stackvma-freebsd.c: Include stackvma-rofile.c.
+ (sigsegv_get_vma): Use struct rofile instead of FILE.
+ * src/stackvma-linux.c: Include stackvma-rofile.c.
+ (sigsegv_get_vma): Use struct rofile instead of FILE.
+ * src/stackvma-procfs.c: Include <sys/mman.h> instead of <stdlib.h> and
+ <stdio.h>.
+ (sigsegv_get_vma): Avoid using sprintf. Ensure pagesize is initialized.
+ Use mmap/munmap instead of malloc/free.
+ * src/Makefile.am (EXTRA_DIST): Add stackvma-rofile.c.
+ Reported by Eric Blake <ebb9@byu.net>.
+
+2008-07-20 Bruno Haible <bruno@clisp.org>
+
+ * src/handler-unix.c (sigsegv_handler): Preserve errno.
+
+2008-07-20 Eric Blake <ebb9@byu.net>
+
+ * src/stackvma-mincore.c (mincore_is_near_this): Fix logic.
+
+2008-07-20 Bruno Haible <bruno@clisp.org>
+
+ * tests/stackoverflow2.c (main): Test also a NULL pointer access.
+ Reported by Eric Blake <ebb9@byu.net>.
+
+2008-06-23 Bruno Haible <bruno@clisp.org>
+
+ * build-aux/config.guess: Update to GNU version 2008-06-16.
+ * build-aux/config.sub: Likewise.
+
+2008-05-31 Bruno Haible <bruno@clisp.org>
+
+ Make cross-compile from MacOS X 10.5 to MacOS X 10.4 work.
+ * src/handler-macos.c (MacOS_X_10_5_HEADERS): New macro.
+ * src/machfault-macos-i386.h: Use it.
+ * src/machfault-macos-powerpc.h: Likewise.
+ Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
+
+2008-05-31 Bruno Haible <bruno@clisp.org>
+
+ * m4/mmap-anon.m4 (SV_MMAP_ANON): Add known cross-compile results for
+ MacOS X.
+ Reported by Dr Tomaž Slivnik <slivnik@tomaz.name>.
+
+2008-05-27 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Require at least autoconf 2.62. Merge
+ FAULT_CONTEXT_INCLUDE2 variable into FAULT_CONTEXT_INCLUDE.
+ * src/sigsegv.h.in: Remove FAULT_CONTEXT_INCLUDE2 substitution.
+ * src/Makefile.am (sigsegv.h.msvc): Update.
+
+2008-05-27 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Bump version number to 2.6.
+ * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
+
+2008-05-27 Bruno Haible <bruno@clisp.org>
+
+ Support for 64-bit mode on MacOS X 10.5.
+ * src/handler-macos.c (catch_exception_raise): Align the stack pointer
+ also on x86_64. Needed for MMX instructions.
+ * src/machfault-macos-i386.h: Choose among 64-bit and 32-bit flavours.
+ Use new names for the 32-bit flavour when possible.
+ * src/machfault-macos-powerpc.h: Choose among 64-bit and 32-bit
+ flavours.
+ * configure.ac (FAULT_CONTEXT, FAULT_CONTEXT_INCLUDE2): Choose
+ right flavour (ppc_thread_state_t/ppc_thread_state64_t or
+ i386_thread_state_t/x86_thread_state32_t/x86_thread_state64_t) at
+ compile time.
+
+2008-05-18 Bruno Haible <bruno@clisp.org>
+
+ * m4/libtool.m4: Update from libtool-2.2.4.
+ * m4/ltoptions.m4: Likewise.
+ * m4/ltversion.m4: Likewise.
+ * m4/lt~obsolete.m4: Likewise.
+ * build-aux/ltmain.sh: Likewise.
+
+2008-04-06 Bruno Haible <bruno@clisp.org>
+
+ * m4/libtool.m4: Update from libtool-2.2.2.
+ * m4/ltoptions.m4: New file, from libtool-2.2.2.
+ * m4/ltsugar.m4: New file, from libtool-2.2.2.
+ * m4/ltversion.m4: New file, from libtool-2.2.2.
+ * m4/lt~obsolete.m4: New file, from libtool-2.2.2.
+ * build-aux/ltmain.sh: New file, from libtool-2.2.2.
+ * configure.ac: Use LT_INIT instead of AC_PROG_LIBTOOL.
+
+2007-11-16 Bruno Haible <bruno@clisp.org>
+
+ * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Use sc_rsp
+ also on x86_64-freebsd platform.
+ Reported by Dmitri Hrapof <hrapof@common-lisp.ru> and
+ Petr Salinger <Petr.Salinger@seznam.cz>.
+
+2007-11-15 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac (CFG_SIGNALS, CFG_FAULT): Port to i586-kfreebsd-gnu
+ and x86_64-kfreebsd-gnu.
+ * src/fault-freebsd-i386.h (SIGSEGV_FAULT_STACKPOINTER): Likewise.
+ Based on patch by Petr Salinger <Petr.Salinger@seznam.cz>.
+
+2007-11-11 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.5 released.
+
+2007-11-11 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Bump version number to 2.5.
+ * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
+
+2007-10-28 Bruno Haible <bruno@clisp.org>
+
+ * src/handler-macos.c (catch_exception_raise): Align the new stack
+ pointer on a 16-byte boundary.
+ * src/handler-win32.c (main_exception_filter): Correct alignment:
+ %esp must be aligned to == -4 mod 16 upon function entry.
+
+2007-10-28 Bruno Haible <bruno@clisp.org>
+
+ * src/sigsegv.h.in (stackoverflow_install_handler): Avoid comment
+ inside comment.
+ Reported by Chris Willmore <willmc@rpi.edu>.
+
+2007-10-28 Bruno Haible <bruno@clisp.org>
+
+ * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS,
+ SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Add __DARWIN_UNIX03
+ conditional.
+ * src/machfault-macos-i386.h (SIGSEGV_FAULT_ADDRESS,
+ SIGSEGV_STACK_POINTER, SIGSEGV_PROGRAM_COUNTER): Likewise.
+ * src/fault-macosdarwin7-powerpc.h (SIGSEGV_FAULT_STACKPOINTER):
+ Likewise.
+ * src/fault-macosdarwin7-powerpc.c (get_fault_addr): Likewise.
+ Reported by Chris Willmore <willmc@rpi.edu>.
+
+2007-01-12 Bruno Haible <bruno@clisp.org>
+
+ * Makefile.am (check-next): Don't ask for reports from x86_64-*-linux*
+ platforms.
+
+2006-07-14 Bruno Haible <bruno@clisp.org>
+
+ * m4/sigaltstack.m4 (SV_SIGALTSTACK): Use SIGSTKSZ instead of
+ hardcoding 16384.
+ * m4/sigaltstack-longjmp.m4 (SV_TRY_LEAVE_HANDLER_LONGJMP): Likewise.
+ * m4/sigaltstack-siglongjmp.m4 (SV_TRY_LEAVE_HANDLER_SIGLONGJMP):
+ Likewise.
+ * tests/stackoverflow1.c (main): Likewise.
+ * tests/stackoverflow2.c (main): Likewise.
+ * src/sigsegv.h.in (stackoverflow_install_handler): Update
+ recommendation for extra_stack_size.
+ Needed for ia64.
+ Reported by Peter Van Eynde <pvaneynd@users.sourceforge.net>.
+
+2006-06-23 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.4 released.
+
+2006-06-23 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Bump version number to 2.4.
+ * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
+
+2006-06-17 Bruno Haible <bruno@clisp.org>
+
+ * src/Makefile.am (noinst_HEADERS): Add fault-netbsd.h.
+
+2006-06-17 Bruno Haible <bruno@clisp.org>
+
+ * m4/sigaltstack.m4: Insert 'volatile' and pass a pointer, to defeat
+ GCC 4 optimizations.
+ * m4/sigaltstack-longjmp.m4: Likewise.
+ * m4/sigaltstack-siglongjmp.m4: Likewise.
+
+2006-06-17 Bruno Haible <bruno@clisp.org>
+
+ * tests/stackoverflow1.c (recurse): Remove useless cast.
+ * tests/stackoverflow2.c (recurse): Likewise.
+
+2006-06-17 Bruno Haible <bruno@clisp.org>
+
+ * src/stackvma-freebsd.c (sigsegv_get_vma): Test whether mincore()
+ works as expected before using it.
+
+2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]: Avoid warning when
+ "parsing" /etc/ld.so.conf and empty /etc/ld.so.conf.d.
+
+2006-06-13 Bruno Haible <bruno@clisp.org>
+
+ Make NetBSD/i386 stack overflow detection work even without mincore.
+ * src/fault-netbsd.h: New file.
+ * configure.ac (CFG_FAULT): Choose it when appropriate.
+
+2006-05-16 Bruno Haible <bruno@clisp.org>
+
+ Don't allow the compiler to reorder instructions in the tests.
+ * tests/sigsegv1.c (crashes): Use volatile in pointer access.
+ * tests/sigsegv2.c (main): Likewise.
+ * tests/stackoverflow2.c (main): Likewise.
+
+2006-05-14 Bruno Haible <bruno@clisp.org>
+
+ Exploit the mincore() system call where available.
+ * src/stackvma-mincore.c: New file.
+ * src/Makefile.am (EXTRA_DIST): Add it.
+ * src/stackvma.h: Add double-inclusion guard.
+ * src/stackvma-freebsd.c: If mincore() is available, include also
+ stackvma-mincore.c.
+ (sigsegv_get_vma): If mincore() is available, use it as fallback.
+ * src/stackvma-linux.c: If mincore() is available, include also
+ stackvma-mincore.c.
+ (sigsegv_get_vma): If mincore() is available, use it as fallback.
+ * src/stackvma-procfs.c: If mincore() is available, include also
+ stackvma-mincore.c.
+ (sigsegv_get_vma): If mincore() is available, use it as fallback.
+ * configure.ac: Test for mincore.
+ (CFG_STACKVMA): Set to stackvma-mincore.c if nothing else is available.
+
+2006-05-14 Bruno Haible <bruno@clisp.org>
+
+ * src/stackvma-simple.c: New file, extracted from handler-unix.c.
+ * src/Makefile.am (EXTRA_DIST): Add it.
+ * src/stackvma-beos.c: Include stackvma-simple.c.
+ (sigsegv_get_vma): Fill the vma's is_near_this field.
+ * src/stackvma-freebsd.c: Include stackvma-simple.c.
+ (sigsegv_get_vma): Fill the vma's is_near_this field.
+ * src/stackvma-linux.c: Include stackvma-simple.c.
+ (sigsegv_get_vma): Fill the vma's is_near_this field.
+ * src/stackvma-mach.c: Include stackvma-simple.c.
+ (sigsegv_get_vma): Fill the vma's is_near_this field.
+ * src/stackvma-procfs.c: Include stackvma-simple.c.
+ (sigsegv_get_vma): Fill the vma's is_near_this field.
+ * src/stackvma.h (vma_struct): Add is_near_this field.
+ * src/handler-unix.c (sigsegv_handler): Use the vma's is_near_this
+ function.
+
+2006-04-28 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.3 released.
+
+2006-04-28 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Bump version number to 2.3.
+ * src/sigsegv.h.in (LIBSIGSEGV_VERSION): Likewise.
+
+ * build-aux/config.guess, build-aux/config.sub: Update to GNU version
+ 2006-04-26.
+
+ * build-aux/install-sh: Update from automake-1.9.6.
+ * build-aux/missing: Likewise.
+
+ * build-aux/ltmain.sh: Update from libtool-1.5.22.
+ * m4/libtool.m4: Likewise.
+
+2006-04-28 Bruno Haible <bruno@clisp.org>
+
+ * build-aux: Renamed from autoconf.
+ * configure.ac (AC_CONFIG_AUX_DIR): Set to build-aux.
+
+2006-04-22 Bruno Haible <bruno@clisp.org>
+
+ * configure.ac: Renamed from configure.in.
+
+2006-04-21 Bruno Haible <bruno@clisp.org>
+
+ * src/machfault-macos-i386.h: Rewritten for Darwin 8.6.1.
+ * configure.in: Change FAULT_CONTEXT for i?86-darwin.
+
+2005-06-21 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure.in: For handler-macos.c, include mach/thread_status.h.
+ * configure: Regenerate.
+
+2005-06-21 Paolo Bonzini <bonzini@gnu.org>
+
+ * tests/stackoverflow1.c (recurse): Make more resilient to compiler
+ optimization.
+ (recurse_1): New.
+ * tests/stackoverflow2.c: Likewise.
+
+2005-05-24 Bruno Haible <bruno@clisp.org>
+
+ * src/handler-win32.c (main_exception_filter): Copy CONTEXT structure
+ to safe area on the stack.
+ Based on patch by Doug Currie <e@flavors.com>.
+
+ * src/handler-win32.c (main_exception_filter): Swap arguments passed
+ to stack_overflow_handler.
+ Patch by Doug Currie <e@flavors.com>.
+
+ * src/handler-win32.c (main_exception_filter): Align %esp on a 16-byte
+ boundary.
+
+2005-03-02 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.2 released.
+
+2005-03-02 Bruno Haible <bruno@clisp.org>
+
+ * autoconf/config.guess: Update.
+ * autoconf/config.sub: Update.
+ * autoconf/missing: Update from automake-1.9.5.
+
+ * m4/libtool.m4: Upgrade to libtool-1.5.14 with gettext modifications.
+ * autoconf/ltmain.sh: Likewise.
+
+2005-03-02 Bruno Haible <bruno@clisp.org>
+
+ * src/fault-aix5.h: New file.
+ * src/fault-aix5-powerpc.h: New file.
+ * src/Makefile.am (noinst_HEADERS): Add them.
+ * configure.in: Choose them when the POSIX test succeeds on AIX.
+
+ * src/fault-aix3-powerpc.h: Renamed from src/fault-aix-powerpc.h.
+ * src/fault-aix3.h: Renamed from src/fault-aix.h.
+ * src/Makefile.am (noinst_HEADERS): Update.
+ * configure.in: Update. When cross-compiling, assume the AIX test
+ succeeds only on AIX 3 and AIX 4.
+
+2005-03-01 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Fix test of CFG_MACHFAULT.
+
+2005-02-27 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Skip tests that are not needed on MacOS X >= 10.2.
+ * m4/sigaltstack.m4 (SV_SIGALTSTACK): Don't perform the test on
+ MacOS X >= 10.2.
+
+2005-02-18 Bruno Haible <bruno@clisp.org>
+
+ * tests/sigsegv1.c (handler_called): Declare as volatile.
+ * tests/sigsegv2.c (logcount, logdata): Likewise.
+ * tests/stackoverflow1.c (pass): Likewise.
+ * tests/stackoverflow2.c (pass): Likewise.
+
+2005-01-29 Bruno Haible <bruno@clisp.org>
+
+ * src/sigsegv.h.in (LIBSIGSEGV_VERSION): New macro.
+ (libsigsegv_version): New declaration.
+ * src/version.c: New file.
+ * src/Makefile.am (libsigsegv_la_SOURCES): Add version.c.
+ * Makefile.msvc (OBJECTS): Add version.obj.
+ (version.obj): New rule.
+ Suggested by Sam Steingold.
+
+2004-08-25 Bruno Haible <bruno@clisp.org>
+
+ * m4/libtool.m4: Upgrade to libtool-1.5.6.
+ * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
+
+2004-08-18 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Bump version number to 2.2.
+
+2004-08-17 Bruno Haible <bruno@clisp.org>
+
+ Finish the Mach-based MacOS X support.
+ * src/handler-macos.c: Don't include mach/vm_map.h.
+ Include machfault.h instead of fault.h.
+ (save_exc_state): Remove variable.
+ (save_thread_state): New variable.
+ (terminating_handler): New function.
+ (altstack_handler): Pass the save_thread_state, not the save_exc_state,
+ to the user's handler.
+ (catch_exception_raise): Make it work also for platforms which don't
+ have an exc_state type. Call SIGSEGV_FAULT_ADDRESS with 2 arguments.
+ Don't clobber the exc_state; instead set the thread's program counter
+ to terminating_handler or altstack_handler, depending on the case.
+ Return KERN_SUCCESS at the end.
+ * src/machfault.h: New file.
+ * src/machfault-macos-powerpc.h (SIGSEGV_FAULT_ADDRESS): Add a second
+ argument.
+ * src/machfault-macos-i386.h: New file.
+ * src/Makefile.am (EXTRA_DIST): Add handler-macos.c.
+ (NOINST_HEADERS): Add machfault.h, machfault-macos-i386.h,
+ machfault-macos-powerpc.h.
+ * configure.in (CFG_HANDLER): Initialize to empty.
+ (CFG_MACHFAULT): New substituted variable.
+ On MacOS X PowerPC+i386, use CFG_HANDLER=handler-macos.c
+ unconditionally.
+ (sv_cv_fault_include, sv_cv_have_stack_overflow_recovery): Set
+ correctly also in the handler-macos.c case.
+
+2004-08-16 Bruno Haible <bruno@clisp.org>
+
+ Support for MacOS X 10.3 on PowerPC.
+ * src/fault-macosdarwin5-powerpc.h: Renamed from
+ src/fault-macos-powerpc.h.
+ * src/fault-macosdarwin5-powerpc.c: Renamed from
+ src/fault-macos-powerpc.c.
+ * src/fault-macosdarwin7-powerpc.h: New file.
+ * src/fault-macosdarwin7-powerpc.c: New file.
+ * src/Makefile.am (noinst_HEADERS): Update.
+ * configure.in: Test the method for MacOSX/Darwin5 PowerPC only after
+ the method for MacOSX/Darwin7 PowerPC failed.
+ Substitute FAULT_CONTEXT_INCLUDE2.
+ * src/sigsegv.h.in: Insert @FAULT_CONTEXT_INCLUDE2@.
+ * src/Makefile.am (sigsegv.h.msvc): Replace @FAULT_CONTEXT_INCLUDE2@.
+
+2003-12-09 Paolo Bonzini <bonzini@gnu.org>
+
+ * src/handler-macos.c: Completed; removed dependency on
+ signals.
+ * src/machfault-macos-powerpc.h: Reorganized.
+
+2003-12-08 Paolo Bonzini <bonzini@gnu.org>
+ Bruno Haible <bruno@clisp.org>
+
+ * src/handler-macos.c: New file.
+ * src/machfault.h: New file.
+ * src/machfault-macos-powerpc.h: New file.
+
+2003-12-05 Bruno Haible <bruno@clisp.org>
+
+ * m4/fault.m4: Tweak indentation. Bump serial number.
+ * m4/getpagesize.m4: Likewise.
+ * m4/mmap-anon.m4: Likewise.
+ * m4/sigaltstack.m4: Likewise.
+ * m4/sigaltstack-longjmp.m4: Likewise.
+ * m4/sigaltstack-siglongjmp.m4: Likewise.
+
+2003-12-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * aclocal.m4: Regenerate with Automake 1.7h.
+ * configure.in: Drop m4/Makefile from list of generated files.
+ * configure: Regenerate.
+ * Makefile.am (install-data-hook): New name of the install-am
+ target, for Automake 1.8 compatibility. Other -am targets
+ are not affected because Automake does not have anything to
+ do to make them.
+ (AUTOMAKE_OPTIONS): Bump minimum Automake requirement to 1.7h.
+ (SUBDIRS): Remove m4.
+ ($(srcdir)/config.h.msvc): New target for config.h.msvc.
+ * Makefile.in: Regenerate with Automake 1.7h.
+ * m4/Makefile.am: Delete, Automake 1.7h takes care of it.
+ * m4/Makefile.in: Delete.
+ * src/Makefile.am (installdirs): Delete, Automake 1.7h adds it.
+ * src/Makefile.in: Regenerate with Automake 1.7h.
+ * tests/Makefile.in: Regenerate with Automake 1.7h.
+
+ * autoconf/config.guess: Update from automake-1.7h.
+ * autoconf/config.sub: Likewise.
+ * autoconf/install.sh: Likewise.
+ * autoconf/missing: Likewise.
+ * autoconf/mkinstalldirs: Delete.
+ * m4/fault.m4: autoupdate and manually tweak.
+ * m4/sigaltstack.m4: Likewise.
+ * m4/sigaltstack-longjmp.m4: Likewise.
+ * m4/sigaltstack-siglongjmp.m4: Likewise.
+ * m4/mmap-anon.m4: Likewise.
+ * m4/getpagesize.m4: Likewise.
+
+2003-10-29 Bruno Haible <bruno@clisp.org>
+
+ * tests/sigsegv1.c (main): Add a check whether mprotect with
+ PROT_READ_WRITE really works.
+ * tests/sigsegv2.c (main): Likewise.
+ Reported by Ullal Devappa Kini <wmbfqj@vsnl.net>.
+
+2003-08-21 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.1 released.
+
+2003-06-24 Paolo Bonzini <bonzini@gnu.org>
+
+ * m4/fault.m4: Exit if we detect an infinite loop.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-06-18 Bruno Haible <bruno@clisp.org>
+
+ * autoconf/install-sh: Update from automake-1.7.5.
+
+2003-05-14 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure.in: Use signals-bsd.h for OpenBSD and NetBSD too.
+ Support instruction decoding to get fault address for Alphas.
+ * src/fault-netbsd-alpha.h: New file.
+ * src/fault-netbsd-alpha.c: New file.
+ * src/Makefile.am (noinst_HEADERS): Add them.
+
+2003-05-14 Paolo Bonzini <bonzini@gnu.org>
+
+ * src/dispatcher.c (insert): Fix lossage in 64-bit environments
+ (cast from void* to unsigned int).
+
+2003-05-10 Bruno Haible <bruno@clisp.org>
+
+ * tests/Makefile.am (../src/libsigsegv.la): New rule.
+
+ * Makefile.msvc (handler.obj): Complete the dependencies.
+ (stackoverflow2.exe): New rule.
+ (check): Depend on it.
+ (clean): Remove it.
+
+2003-05-10 Paolo Bonzini <bonzini@gnu.org>
+ Bruno Haible <bruno@clisp.org>
+
+ * configure.in: AC_SUBST of CFG_STACKVMA, CFG_LEAVE, CFG_HANDLER.
+ * src/Makefile.am: Add dependencies for the object files.
+
+2003-05-08 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure.in: Add $srcdir/ to #include statements. Needed when
+ builddir != srcdir.
+
+ * src/signals-macos.h (SIGSEGV_FOR_ALL_SIGNALS): Add SIGSEGV.
+
+2003-05-03 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure.in: Tweak 2003-04-26 patch so that it works on mingw32 and
+ Cygwin.
+
+2003-05-02 Bruno Haible <bruno@clisp.org>
+
+ * src/handler-unix.c: Add special case for stack handling on IA-64.
+ * src/fault-linux-ia64.h: Complete the port.
+ * configure.in: Improve Linux/IA-64 support.
+
+2003-05-01 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Don't use fault-hurd.h on NetBSD/alpha. It does not
+ work.
+
+2003-05-01 Bruno Haible <bruno@clisp.org>
+
+ Support for Linux/HPPA.
+ * fault-linux-hppa.h: Don't include <siginfo.h>.
+ (SIGSEGV_FAULT_ADDRESS): Change.
+ (SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO): Define it, otherwise the value
+ passed for sip is 0.
+ (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): Remove macros.
+ * configure.in: Improve Linux/HPPA support.
+
+2003-05-01 Bruno Haible <bruno@clisp.org>
+
+ Support for OpenBSD/i386.
+ * src/fault-openbsd.h: New file.
+ * src/fault-openbsd-i386.h: New file.
+ * src/Makefile.am (noinst_HEADERS): Add them.
+ * configure.in: If the POSIX test works and the OS is OpenBSD, use
+ fault-openbsd.h instead of fault-posix.h.
+
+2003-05-01 Bruno Haible <bruno@clisp.org>
+
+ * src/fault-hpux-hppa.h: Make it work on machines with 64-bit registers
+ as well.
+ * configure.in: Likewise.
+
+2003-04-29 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Define HAVE_STACKVMA if CFG_STACKVMA is nontrivial.
+ * src/handler-unix.c: Test HAVE_STACKVMA instead of CFG_STACKVMA.
+
+ * m4/fault.m4 (SV_TRY_FAULT): On HP-UX, always pass 0 as first argument
+ of mmap().
+ * tests/mmaputil.h (mmap_zeromap): Likewise.
+
+2003-04-28 Bruno Haible <bruno@clisp.org>
+
+ * src/stackvma-freebsd.c (sigsegv_get_vma): Fix logic error.
+
+2002-04-17 Paolo Bonzini <bonzini@gnu.org>
+
+ Support for Cygwin.
+ * configure.in: Treat cygwin* like mingw*.
+ * src/handler-win32.c [CYGWIN] (exception_list, _except_list,
+ debug_get_except_list, cygwin_exception_handler,
+ libsigsegv_exception_handler, do_install_main_exception_filter): New
+ definitions.
+ (install_main_exception_filter): New function.
+ (sigsegv_install_handler, stackoverflow_install_handler): Call it.
+
+2003-04-26 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Don't set sv_cv_have_stack_overflow_recovery=yes if
+ not all of the fault-*.h and stackvma-*.h premises are fulfilled.
+ Reported by Paolo Bonzini <bonzini@gnu.org> for NetBSD/Alpha.
+
+2003-04-03 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Add --enable-relocatable option.
+ * m4/relocatable.m4: New file, from GNU gettext.
+ * m4/Makefile.am (EXTRA_DIST): Add it.
+
+ * m4/libtool.m4: Update from GNU gettext, based on libtool-1.4.3.
+ * autoconf/ltmain.sh: Likewise.
+
+2003-04-02 Bruno Haible <bruno@clisp.org>
+
+ * configure.in: Bump version number to 2.1.
+
+ * tests/stackoverflow2.c: New file, based on code by Paolo Bonzini.
+ * tests/Makefile.am (TESTS, noinst_PROGRAMS): Add stackoverflow2.
+
+2003-04-02 Paolo Bonzini <bonzini@gnu.org>
+ Bruno Haible <bruno@clisp.org>
+
+ Complete the port to MacOS X (Darwin).
+ * m4/fault.m4: Include sys/signal.h. Have an exit status of 3 instead
+ of 1 if fault_address is misdetected.
+ * m4/sigaltstack.m4: Define stack_t to struct sigaltstack if absent.
+ Include <sys/signal.h>.
+ * configure.in: Add check for sys/signal.h.
+ Add support for catching stack overflow on MacOSX.
+ Add support for MacOSX on i386.
+ Provide a fallback for SS_ONSTACK before using it.
+ * src/fault-macos-i386.h: New file.
+ * src/stackvma-mach.c: New file.
+ * src/fault-macos-powerpc.h (SIGSEGV_FAULT_STACKPOINTER): Change.
+ * src/handler-unix.c: Include <sys/signal.h>.
+ (SS_DISABLE): Provide a fallback.
+ * src/leave-sigaltstack.c: Include sys/signal.h.
+ (SS_ONSTACK): Provide a fallback.
+ * src/Makefile.am (noinst_HEADERS): Add fault-macos-i386.h.
+ (EXTRA_DIST): Add stackvma-mach.c.
+ * tests/sigsegv1.c: Abort after 10 handler invocations.
+ (main): Drop SKIP message, now emitted by automake 1.7.x.
+ * tests/sigsegv2.c: Abort after 10 handler invocations.
+ (main): Drop SKIP message, now emitted by automake 1.7.x.
+ * tests/stackoverflow1.c (main): Drop SKIP message, now emitted by
+ automake 1.7.x.
+
+2002-10-14 Bruno Haible <bruno@clisp.org>
+
+ * src/fault-none.h: New file.
+ * src/fault.h: Include CFG_FAULT unconditionally.
+ * src/leave-none.c: New file.
+ * src/leave.c: Include CFG_LEAVE unconditionally.
+ * src/stackvma.c: Include CFG_STACKVMA unconditionally.
+ * configure.in (CFG_LEAVE, CFG_STACKVMA): Define always.
+ * src/Makefile.am (noinst_HEADERS): Add fault-none.h.
+ (EXTRA_DIST): Add leave-none.c.
+ Reported by Paolo Bonzini <bonzini@gnu.org>.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ * src/Makefile.am (noinst_HEADERS): Add fault-hurd.h,
+ fault-linux-m68k.c, fault-macos-powerpc.h, fault-macos-powerpc.c,
+ signals-hurd.h, signals-macos.h.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ * Makefile.am (check-next): Don't ask for reports from i?86-*-linux*
+ platforms.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ Better Linux/PowerPC support.
+ * configure.in: Change Linux/PowerPC support.
+ * src/fault-linux-powerpc.h (SIGSEGV_FAULT_ADDRESS): New macro.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ Better Linux/m68k support.
+ * configure.in: Change Linux/m68k support.
+ * src/fault-linux-m68k.c: New file.
+ * src/fault-linux-m68k.h: Use it.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ Tentative Hurd support.
+ * configure.in: Add Hurd support.
+ * src/signals-hurd.h: New file.
+ * src/fault-hurd.h: New file.
+
+2002-09-30 Bruno Haible <bruno@clisp.org>
+
+ MacOSX/PowerPC support.
+ * configure.in: Add MacOSX/PowerPC support.
+ * src/signals-macos.h: New file.
+ * src/fault-macos-powerpc.c: New file.
+ * src/fault-macos-powerpc.h: New file.
+
+2002-09-16 Bruno Haible <bruno@clisp.org>
+
+ * src/fault-posix.h: Don't include <siginfo.h>. Needed for hppa-linux.
+ Reported by Will Newton <will@misconception.org.uk>.
+
+2002-08-28 Bruno Haible <bruno@clisp.org>
+
+ * Version 2.0 released.
+
+2002-07-28 Bruno Haible <bruno@clisp.org>
+
+ Big reorganization and rewrite. Every file changed.
+
diff --git a/libsigsegv/ChangeLog.1 b/libsigsegv/ChangeLog.1
new file mode 100644
index 00000000..e3a1d79c
--- /dev/null
+++ b/libsigsegv/ChangeLog.1
@@ -0,0 +1,295 @@
+2002-07-15 Bruno Haible <bruno@clisp.org>
+
+ * sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Define also on FreeBSD.
+ (stackoverflow_context_t): Define as 'struct sigcontext *' on FreeBSD.
+ * handler.c (SIGSEGV_ALL_SIGNALS) [FreeBSD]: Add SIGSEGV; this is the
+ signal that gets sent on stack overflow.
+ (get_vma) [FreeBSD]: New.
+ (reset_onstack_flag) [FreeBSD]: New .
+
+2002-05-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * sigsegv.h.in [__hpux, hpux]: Define HAVE_SIGSEGV_RECOVERY.
+ * handler.c (UNIX_HPUX) [__hpux, hpux]: New macro.
+ Define the hacks to access CR21.
+ * test1.c (mmap_zeromap): Return the address.
+ (handler): Don't hardcode the correct fault address.
+ (main): Set page to the result of mmap_zeromap.
+ * test2.c (mmap_zeromap): Return the address.
+ (main): Set area1/area2/area3 to the result of mmap_zeromap.
+
+2002-05-06 Bruno Haible <bruno@clisp.org>
+
+ * test1.c: Include <stdlib.h>, for exit().
+ * test2.c: Likewise.
+ * test3.c: Likewise.
+
+2002-04-28 Bruno Haible <bruno@clisp.org>
+
+ * Makefile.devel (ACLOCAL): Remove variable.
+ (ACSELECT): Remove variable.
+ (OTHERMACROS): Remove variable.
+ (m4/*.m4): New rules.
+ (autoconf/aclocal.m4): Construct using aclocal instead of acselect.
+
+2001-08-25 Bruno Haible <haible@clisp.cons.org>
+
+ Upgrade to autoconf-2.52.
+ * autoconf/autoconf: Upgrade to autoconf-2.52.
+ * autoconf/acgeneral.m4: Remove file.
+ * autoconf/acspecific.m4: Remove file.
+ * autoconf/autoconf.m4f: New file, from autoconf-2.52.
+ * autoconf/aclocal.m4: Require autoconf-2.52.
+ (CL_CANONICAL_HOST): Call AC_CANONICAL_HOST. Don't cache the result,
+ AC_CANONICAL_HOST does it itself. Add $SHELL in front of
+ $ac_config_guess and $ac_config_sub.
+ (CL_SIGACTION_REINSTALL): Include <string.h>, for memset declaration.
+ * Makefile.devel (AUTOCONF_FILES): Remove acgeneral.m4, acspecific.m4.
+ Add autoconf.m4f.
+ (configure): Use autoconf options -A, -l instead of -m.
+ * config.h.in: Don't define HAVE_MEMSET.
+ (MPROTECT_CONST, SETRLIMIT_CONST): Use #undef, not #define, to work
+ around an autoconf bug.
+
+2001-08-05 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/acgeneral.m4 (AC_MSG_RESULTPROTO): Remove macro.
+ (AC_LANG_EXTERN): Move to aclocal.m4.
+ * autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved here from acgeneral.m4.
+ (CL_PROTO): Use AC_MSG_RESULT directly, instead of AC_MSG_RESULTPROTO.
+ (CL_SILENT): No need to pushdef AC_MSG_RESULTPROTO.
+
+2001-06-08 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/ltmain.sh: Upgrade to libtool-1.4.
+ * autoconf/ltconfig: Remove file.
+
+2001-06-08 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/config.guess: Update to GNU version 2001-05-11.
+ * autoconf/config.sub: Likewise.
+
+2001-05-09 Bruno Haible <haible@clisp.cons.org>
+
+ * sigsegv.h.in: Recognize __arm__ as CPU indicator on Linux.
+ * handler.c: Likewise.
+
+2001-03-19 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
+ ac_config_guess and ac_config_sub. Then ignore requests for
+ AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.
+
+2001-03-19 Bruno Haible <haible@clisp.cons.org>
+
+ * ltconfig, ltmain.sh: Upgrade to libtool-1.3.5.
+
+2001-02-20 Bruno Haible <haible@clisp.cons.org>
+
+ * Makefile.in (libdir, includedir): Use the autoconf determined value,
+ in order to respect the configure arguments.
+ (mandir): Remove unused variable.
+ * Makefile.msvc (mandir): LIkewise.
+
+ * Makefile.in (install, installdirs, uninstall): Support DESTDIR.
+
+2000-12-08 Bruno Haible <haible@clisp.cons.org>
+
+ * Makefile.in (exec_prefix): Use configure's --exec-prefix argument.
+
+2000-11-15 Bruno Haible <haible@clisp.cons.org>
+
+ * Makefile.msvc: Add support for MFLAGS and DEBUG parameters.
+
+2000-11-12 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
+ version from GNU CVS.
+
+2000-11-08 Bruno Haible <haible@clisp.cons.org>
+
+ * aclocal.m4 (CL_SIGNAL_UNBLOCK): Enable 'volatile' for gotsig,
+ wasblocked.
+ (CL_SIGNAL_BLOCK_OTHERS): Enable 'volatile' for gotsig,
+ somewereblocked.
+ (CL_SIGACTION_UNBLOCK): Enable 'volatile' for gotsig, wasblocked.
+
+2000-09-29 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Fix bug in 2000-05-23
+ change.
+
+2000-05-29 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
+ Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
+
+2000-05-25 Bruno Haible <haible@clisp.cons.org>
+
+ * Makefile.msvc: Use 'copy' and 'ren' instead of 'cp' and 'mv'.
+
+2000-05-23 Bruno Haible <haible@clisp.cons.org>
+
+ * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
+ host_vendor, host_os correctly if $host has more than two hyphens.
+
+2000-04-02 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ Allow building on filesystems lacking symlinks and hard links.
+ * Makefile.devel (autoconf/aclocal.m4): Replace AC_PROG_LN_S with
+ CL_PROG_LN_S.
+ * configure.in: Add CL_PROG_LN_S.
+ * src/Makefile.in (LN): Remove.
+
+1999-06-18 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * handler.c (user_handler): Define also on WIN32.
+
+1999-06-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * sigsegv.h.in (stackoverflow_context_t): More precise definition on
+ Solaris, Irix, OSF/1.
+
+1999-05-30 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * Makefile.in (install-lib): New target.
+
+1999-05-29 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * Makefile.in (install): Make sure the directories $(prefix) and
+ $(exec_prefix) exist.
+
+1999-05-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ Libtoolify.
+ * autoconf/ltconfig, autoconf/ltmain.sh: New files, from libtool-1.2.
+ * Makefile.devel (OTHERMACROS): New macro.
+ (autoconf/aclocal.m4): Add the contents of $(OTHERMACROS).
+ * configure.in: Call CL_CANONICAL_HOST and AM_PROG_LIBTOOL.
+ * Makefile.in (LIBTOOL, LIBTOOL_COMPILE, LIBTOOL_LINK,
+ LIBTOOL_INSTALL, LIBTOOL_UNINSTALL): New macros.
+ (top_builddir): New macro.
+ (OBJECTS): Change .o to .lo.
+ (all): Change .a to .la.
+ (handler.lo): Renamed from handler.o. Use $(LIBTOOL_COMPILE).
+ (dispatcher.lo): Renamed from dispatcher.o. Use $(LIBTOOL_COMPILE).
+ (libsigsegv.la): Renamed from libsigsegv.a. Use $(LIBTOOL_LINK).
+ (install): Use $(LIBTOOL_INSTALL). Copy ./sigsegv.h not
+ $(srcdir)/sigsegv.h.
+ (uninstall): Use $(LIBTOOL_UNINSTALL).
+ (test1, test2, test3): Change .a to .la. Use $(LIBTOOL_LINK).
+ (clean): Also remove *.lo *.la .libs _libs.
+ (distclean): Also remove libtool.
+
+1999-05-16 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ For Linux 2.0.x with glibc2.0.
+ * aclocal.m4 (CL_SIGALTSTACK): Define HAVE_SIGALTSTACK only if the
+ sigaction flags macro SA_ONSTACK is also defined.
+
+1999-05-15 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ For DEC OSF/1 3.2.
+ * sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Undefine if test3
+ doesn't work.
+ * Makefile.in (SEDPREPARE0, SEDCOMMAND3): New macros.
+ (sigsegv.h): Also try running test3.
+
+1999-05-09 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Also define on Solaris,
+ Irix, OSF/1.
+ * handler.c: Use symbolic UNIX_* macros for various Unix brands.
+ (SIGSEGV_FAULT_HANDLER_ARGLIST, SIGSEGV_ALL_SIGNALS): Define also
+ when HAVE_SIGSEGV_RECOVERY is not defined. Add support for
+ Linux/m68k, Linux/mips, Linux/alpha, Linux/arm.
+ (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): New macros.
+ (get_vma) [UNIX_LINUX]: No need to initialize prev twice.
+ (reset_onstack_flag) [UNIX_LINUX]: New function.
+ (get_vma, reset_onstack_flag) [UNIX_SUNOS, UNIX_IRIX, UNIX_OSF]: New
+ functions.
+ (sigsegv_leave_handler): If SIGACTION_NEED_UNBLOCK is defined,
+ unblock the signal itself. Call reset_onstack_flag.
+ (stackoverflow_deinstall_handler): Print something if sigaltstack
+ fails.
+ * aclocal.m4 (CL_SIGNAL_UNBLOCK, CL_SIGNAL_BLOCK_OTHERS,
+ CL_SIGACTION_UNBLOCK): Perform the test if either POSIX or BSD
+ signal mask primitives are available. Otherwise,
+ SIGACTION_NEED_UNBLOCK would not be defined on Solaris.
+
+1999-05-07 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * test3.c (main): Make more verbose.
+
+ Avoid a "make check" failure with "cc" on DEC OSF/1 4.0.
+ * test2.c (barrier): New function.
+ (main): Call it at the right moment.
+
+ * Makefile.in (SEDPREPARE1, SEDCOMMAND2): Don't use # as literal.
+ Only GNU make understands \#, other `make's don't.
+
+1999-05-02 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ Support for catching stack overflow on Unix, using sigaltstack().
+ * aclocal.m4 (CL_SIGALTSTACK): New macro.
+ * configure.in: Add CL_SIGALTSTACK and CL_RLIMIT.
+ * config.h.in: Add HAVE_SIGALTSTACK, HAVE_SETRLIMIT,
+ RLIMIT_RESOURCE_T, SETRLIMIT_CONST.
+ * Makefile.in (SEDPREPARE1, SEDCOMMAND1, SEDCOMMAND2): New macros.
+ (sigsegv.h): Use them. Depend on config.h.
+ * sigsegv.h.in: Test __linux__ instead of linux.
+ Conditionally define HAVE_STACK_OVERFLOW_RECOVERY for Linux.
+ (sigsegv_handler_t): Add `serious' argument.
+ (stackoverflow_context_t): New type.
+ (stackoverflow_handler_t, stackoverflow_install_handler,
+ stackoverflow_deinstall_handler): Declare unconditionally.
+ (stackoverflow_handler_t): Add `scp' argument.
+ (stackoverflow_install_handler): Change return type to `int'.
+ * handler.c: Test __linux__ instead of linux.
+ Move Win32 section to the end.
+ On Unix, install SIGSEGV handler if HAVE_SIGSEGV_RECOVERY or
+ HAVE_STACK_OVERFLOW_RECOVERY.
+ (vma_struct): New type.
+ (get_vma): New function.
+ (SIGSEGV_FAULT_CONTEXT, SIGSEGV_FAULT_STACKPOINTER): New macros.
+ (stack_top): New variable.
+ (remember_stack_top): New function.
+ (stk_user_handler, stk_extra_stack, stk_extra_stack_size): New
+ variables.
+ (no_user_handler): Remove, use NULL instead.
+ (sigsegv_handler): Extend to support HAVE_STACK_OVERFLOW_RECOVERY.
+ (install_for): Add SA_ONSTACK to sigaction flags if needed.
+ (sigsegv_deinstall_handler): Deinstall handlers only if
+ not needed for stk_user_handler.
+ (stackoverflow_install_handler, stackoverflow_deinstall_handler):
+ New functions.
+ (stack_overflow_handler) [WIN32]: Add context argument.
+ (main_exception_filter): Pass context argument.
+ * test1.c (handler): Add `serious' argument.
+ * test2.c (handler): Likewise.
+ * test3.c (stackoverflow_handler): Add `scp' argument. Use
+ sigsegv_leave_handler instead of complicated #ifdef spaghetti.
+ (main): Call setrlimit, to make sure the recursion doesn't kill the
+ machine. If stackoverflow_install_handler returns -1, bypass the
+ test, because it would crash.
+
+1999-03-15 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * configure.in: Add CL_CC_GCC.
+ * Makefile.in: Use "-x none" option where appropriate.
+ * dispatcher.c: In C++ mode, don't define a function named `delete'.
+
+1999-02-08 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * sigsegv/sigsegv.h.in: Renamed from sigsegv/sigsegv.h.
+ Added "#undef HAVE_SIGSEGV_RECOVERY", commented out.
+ * Makefile.in (sigsegv.h): Try compiling and running test1. If it
+ fails, like on Solaris 2.5 and 2.5.1, uncomment "#undef
+ HAVE_SIGSEGV_RECOVERY".
+ * Makefile.msvc: Update.
+
+1999-01-29 Bruno Haible <bruno@linuix.math.u-bordeaux.fr>
+
+ * sigsegv.h [linux && sparc]: Disable HAVE_SIGSEGV_RECOVERY. It does
+ not work any more.
+
diff --git a/libsigsegv/INSTALL b/libsigsegv/INSTALL
new file mode 100644
index 00000000..49cba996
--- /dev/null
+++ b/libsigsegv/INSTALL
@@ -0,0 +1,234 @@
+Basic Installation
+==================
+
+ These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, a file
+`config.cache' that saves the results of its tests to speed up
+reconfiguring, and a file `config.log' containing compiler output
+(useful mainly for debugging `configure').
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If at some point `config.cache'
+contains results you don't want to keep, you may remove or edit it.
+
+ The file `configure.in' is used to create `configure' by a program
+called `autoconf'. You only need `configure.in' if you want to change
+it or regenerate `configure' using a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. You can give `configure'
+initial values for variables by setting them in the environment. Using
+a Bourne-compatible shell, you can do that on the command line like
+this:
+ CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
+
+Or on systems that have the `env' program, you can do it like this:
+ env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not supports the `VPATH'
+variable, you have to compile the package for one architecture at a time
+in the source code directory. After you have installed the package for
+one architecture, use `make distclean' before reconfiguring for another
+architecture.
+
+ On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple '-arch' options to the
+compiler but only a single '-arch' option to the preprocessor. Like
+this:
+
+ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CPP="gcc -E" CXXCPP="g++ -E"
+
+ This is not guaranteed to produce working output in all cases. You
+may have to build one architecture at a time and combine the results
+using the 'lipo' tool if you have problems.
+
+Installation Names
+==================
+
+ By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc. You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PATH'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+give `configure' the option `--exec-prefix=PATH', the package will use
+PATH as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=PATH' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+ For packages that use the GNU libiconv library, you can use the
+`configure' option `--with-libiconv-prefix' to specify the prefix you
+used while installing libiconv.
+
+Particular Systems
+==================
+
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC
+is not installed, it is recommended to use the following options in order
+to use an ANSI C compiler:
+
+ ./configure CC="cc -Ae"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+ On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file. The option `-nodtk' can be used as
+a workaround. If GNU CC is not installed, it is therefore recommended
+to try
+
+ ./configure CC="cc"
+
+and if that doesn't work, try
+
+ ./configure CC="cc -nodtk"
+
+ On AIX 3, the C include files by default don't define some necessary
+prototype declarations. If GNU CC is not installed, it is recommended to
+use the following options:
+
+ ./configure CC="xlc -D_ALL_SOURCE"
+
+ On BeOS, user installed software goes in /boot/home/config, not
+/usr/local. It is recommended to use the following options:
+
+ ./configure --prefix=/boot/home/config
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' can not figure out
+automatically, but needs to determine by the type of host the package
+will run on. Usually `configure' can figure that out, but if it prints
+a message saying it can not guess the host type, give it the
+`--host=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name with three fields:
+ CPU-COMPANY-SYSTEM
+
+See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the host type.
+
+ If you are building compiler tools for cross-compiling, you can also
+use the `--target=TYPE' option to select the type of system they will
+produce code for and the `--build=TYPE' option to select the type of
+system on which you are compiling the package.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Operation Controls
+==================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--cache-file=FILE'
+ Use and save the results of the tests in FILE instead of
+ `./config.cache'. Set FILE to `/dev/null' to disable caching, for
+ debugging `configure'.
+
+`--help'
+ Print a summary of the options to `configure', and exit.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`--version'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`configure' also accepts some other, not widely useful, options.
+
diff --git a/libsigsegv/Makefile.am b/libsigsegv/Makefile.am
new file mode 100644
index 00000000..59b508a3
--- /dev/null
+++ b/libsigsegv/Makefile.am
@@ -0,0 +1,76 @@
+## Makefile for libsigsegv.
+## Copyright (C) 2002-2003, 2007, 2009 Bruno Haible <bruno@clisp.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.
+
+## Process this file with automake to produce Makefile.in.
+
+AUTOMAKE_OPTIONS = 1.7h gnu no-dependencies
+ACLOCAL_AMFLAGS = -I m4
+
+SUBDIRS = src tests
+
+EXTRA_DIST = ChangeLog.1 PORTING README.woe32 Makefile.msvc config.h.msvc
+
+DISTCLEANFILES = termbold termnorm
+
+
+# Lead the user through the installation, in the hope that he will help us
+# by sending his config.log.
+
+TARGETSTACK =
+AM_MAKEFLAGS = TARGETSTACK="$(TARGETSTACK) $@"
+
+all-am: all-next
+all-next:
+ @if echo "$(TARGETSTACK)" | grep check-recursive > /dev/null; then :; else \
+ if echo "$(TARGETSTACK)" | grep install-recursive > /dev/null; then :; else \
+ echo; echo "Now please type '"`cat termbold`"make check"`cat termnorm`"' to run a quick test suite. Hope it works."; echo; \
+ fi; \
+ fi
+
+check-am: check-next
+check-next:
+ @when="Now"; \
+ if grep '^@PLATFORM@ .* @VERSION@$$' $(srcdir)/PORTING > /dev/null; then :; else \
+ case '@PLATFORM@' in \
+ i?86-*-linux* | x86_64-*-linux*) ;; \
+ *) \
+ echo; \
+ echo "Please send the following summary line via email to the author"; \
+ echo "Bruno Haible <bruno@clisp.org> for inclusion into the list of"; \
+ echo "successfully tested platforms (see PORTING file)."; echo; \
+ if test @HAVE_SIGSEGV_RECOVERY@ = 1; then have1=yes; else have1=no; fi; \
+ if test @HAVE_STACK_OVERFLOW_RECOVERY@ = 1; then have2=yes; else have2=no; fi; \
+ echo `cat termbold`"libsigsegv: @PLATFORM@ | $$have1 | $$have2 | @VERSION@"`cat termnorm`; \
+ when="Then"; \
+ ;; \
+ esac; \
+ fi; \
+ echo; echo "$$when please type '"`cat termbold`"make install"`cat termnorm`"' to install the package."; echo
+
+install-data-hook: install-next
+install-next:
+ @echo; echo "Now use the package; you can remove it later via '"`cat termbold`"make uninstall"`cat termnorm`"'."; echo
+
+# ADR: For gawk, install should do nothing
+install:
+ @echo make install suppressed for gawk
+
+# Rules for "make dist".
+
+$(srcdir)/config.h.msvc : config.h.in
+ sed -e 's/#undef CFG_HANDLER/#define CFG_HANDLER "handler-win32.c"/' < $(srcdir)/config.h.in > $@
diff --git a/libsigsegv/Makefile.in b/libsigsegv/Makefile.in
new file mode 100644
index 00000000..13288e45
--- /dev/null
+++ b/libsigsegv/Makefile.in
@@ -0,0 +1,782 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+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 = .
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
+ build-aux/config.guess build-aux/config.sub \
+ build-aux/install-sh build-aux/ltmain.sh build-aux/missing
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/bold.m4 \
+ $(top_srcdir)/m4/fault.m4 $(top_srcdir)/m4/getpagesize.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/mmap-anon.m4 \
+ $(top_srcdir)/m4/relocatable.m4 \
+ $(top_srcdir)/m4/sigaltstack-longjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack-siglongjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno config.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+depcomp =
+am__depfiles_maybe =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir dist dist-all distcheck
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+ { test ! -d "$(distdir)" \
+ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr "$(distdir)"; }; }
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFG_HANDLER = @CFG_HANDLER@
+CFG_LEAVE = @CFG_LEAVE@
+CFG_STACKVMA = @CFG_STACKVMA@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FAULT_CONTEXT = @FAULT_CONTEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_SIGSEGV_RECOVERY = @HAVE_SIGSEGV_RECOVERY@
+HAVE_STACK_OVERFLOW_RECOVERY = @HAVE_STACK_OVERFLOW_RECOVERY@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+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@
+PLATFORM = @PLATFORM@
+RANLIB = @RANLIB@
+RELOCATABLE = @RELOCATABLE@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+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@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+AUTOMAKE_OPTIONS = 1.7h gnu no-dependencies
+ACLOCAL_AMFLAGS = -I m4
+SUBDIRS = src tests
+EXTRA_DIST = ChangeLog.1 PORTING README.woe32 Makefile.msvc config.h.msvc
+DISTCLEANFILES = termbold termnorm
+
+# Lead the user through the installation, in the hope that he will help us
+# by sending his config.log.
+TARGETSTACK =
+AM_MAKEFLAGS = TARGETSTACK="$(TARGETSTACK) $@"
+all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+am--refresh:
+ @:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
+ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ echo ' $(SHELL) ./config.status'; \
+ $(SHELL) ./config.status;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ $(am__cd) $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
+
+config.h: stamp-h1
+ @if test ! -f $@; then \
+ rm -f stamp-h1; \
+ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
+ else :; fi
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+ @rm -f stamp-h1
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
+$(srcdir)/config.h.in: $(am__configure_deps)
+ ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
+ rm -f stamp-h1
+ touch $@
+
+distclean-hdr:
+ -rm -f config.h stamp-h1
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool config.lt
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) config.h.in $(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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ test -d "$(distdir)" || mkdir "$(distdir)"
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ -test -n "$(am__skip_mode_fix)" \
+ || find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r "$(distdir)"
+dist-gzip: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist-bzip2: distdir
+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+ $(am__remove_distdir)
+
+dist-lzma: distdir
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+ $(am__remove_distdir)
+
+dist-xz: distdir
+ tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
+ $(am__remove_distdir)
+
+dist-tarZ: distdir
+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+ $(am__remove_distdir)
+
+dist-shar: distdir
+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ $(am__remove_distdir)
+
+dist-zip: distdir
+ -rm -f $(distdir).zip
+ zip -rq $(distdir).zip $(distdir)
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ case '$(DIST_ARCHIVES)' in \
+ *.tar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+ *.tar.bz2*) \
+ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.lzma*) \
+ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.xz*) \
+ xz -dc $(distdir).tar.xz | $(am__untar) ;;\
+ *.tar.Z*) \
+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+ *.shar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+ *.zip*) \
+ unzip $(distdir).zip ;;\
+ esac
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ test -d $(distdir)/_build || exit 0; \
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && am__cwd=`pwd` \
+ && $(am__cd) $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist \
+ && rm -rf $(DIST_ARCHIVES) \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+ && cd "$$am__cwd" \
+ || exit 1
+ $(am__remove_distdir)
+ @(echo "$(distdir) archives ready for distribution: "; \
+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
+distuninstallcheck:
+ @$(am__cd) '$(distuninstallcheck_dir)' \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile config.h
+installdirs: installdirs-recursive
+installdirs-am:
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+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:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr \
+ distclean-libtool distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
+ ctags-recursive install-am install-data-am install-strip \
+ tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am am--refresh check check-am clean clean-generic \
+ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
+ dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
+ distcheck distclean distclean-generic distclean-hdr \
+ distclean-libtool distclean-tags distcleancheck distdir \
+ distuninstallcheck dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am \
+ install-data-hook install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+all-am: all-next
+all-next:
+ @if echo "$(TARGETSTACK)" | grep check-recursive > /dev/null; then :; else \
+ if echo "$(TARGETSTACK)" | grep install-recursive > /dev/null; then :; else \
+ echo; echo "Now please type '"`cat termbold`"make check"`cat termnorm`"' to run a quick test suite. Hope it works."; echo; \
+ fi; \
+ fi
+
+check-am: check-next
+check-next:
+ @when="Now"; \
+ if grep '^@PLATFORM@ .* @VERSION@$$' $(srcdir)/PORTING > /dev/null; then :; else \
+ case '@PLATFORM@' in \
+ i?86-*-linux* | x86_64-*-linux*) ;; \
+ *) \
+ echo; \
+ echo "Please send the following summary line via email to the author"; \
+ echo "Bruno Haible <bruno@clisp.org> for inclusion into the list of"; \
+ echo "successfully tested platforms (see PORTING file)."; echo; \
+ if test @HAVE_SIGSEGV_RECOVERY@ = 1; then have1=yes; else have1=no; fi; \
+ if test @HAVE_STACK_OVERFLOW_RECOVERY@ = 1; then have2=yes; else have2=no; fi; \
+ echo `cat termbold`"libsigsegv: @PLATFORM@ | $$have1 | $$have2 | @VERSION@"`cat termnorm`; \
+ when="Then"; \
+ ;; \
+ esac; \
+ fi; \
+ echo; echo "$$when please type '"`cat termbold`"make install"`cat termnorm`"' to install the package."; echo
+
+install-data-hook: install-next
+install-next:
+ @echo; echo "Now use the package; you can remove it later via '"`cat termbold`"make uninstall"`cat termnorm`"'."; echo
+
+# ADR: For gawk, install should do nothing
+install:
+ @echo make install suppressed for gawk
+
+# Rules for "make dist".
+
+$(srcdir)/config.h.msvc : config.h.in
+ sed -e 's/#undef CFG_HANDLER/#define CFG_HANDLER "handler-win32.c"/' < $(srcdir)/config.h.in > $@
+
+# 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:
diff --git a/libsigsegv/Makefile.msvc b/libsigsegv/Makefile.msvc
new file mode 100644
index 00000000..a2f50168
--- /dev/null
+++ b/libsigsegv/Makefile.msvc
@@ -0,0 +1,123 @@
+# -*- Makefile -*- for libsigsegv
+
+#### Start of system configuration section. ####
+
+# Flags that can be set on the nmake command line:
+# MFLAGS={-ML|-MT|-MD} for defining the compilation model
+# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib
+# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib
+# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib
+# DEBUG=1 for compiling with debugging information
+# Note that nmake command line flags are automatically passed to subdirectory
+# Makefiles. Therefore we don't need to pass them explicitly to subdirectory
+# Makefiles, but the subdirectory Makefiles need to have the same defaults.
+# Building as a DLL not supported yet.
+DLL=0
+!if !defined(DEBUG)
+DEBUG=0
+!endif
+!if !defined(MFLAGS)
+!if !$(DLL)
+MFLAGS=
+!else
+MFLAGS=-MD
+!endif
+!endif
+
+!if $(DEBUG)
+OPTIMFLAGS = -Od -Z7
+!else
+OPTIMFLAGS = -D_NDEBUG -O1
+!endif
+
+# Directories used by "make":
+srcdir = .
+
+# Directories used by "make install":
+prefix = /usr/local
+local_prefix = /usr/local
+exec_prefix = $(prefix)
+libdir = $(exec_prefix)/lib
+includedir = $(prefix)/include
+
+# Programs used by "make":
+CC = cl
+CFLAGS = $(MFLAGS) $(OPTIMFLAGS)
+CPP = cl -E
+INCLUDES = -I. -I$(srcdir)
+AR = lib
+AR_FLAGS = /out:
+MV = ren
+CP = copy
+LN = copy
+RM = -del
+
+# Programs used by "make install":
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+
+#### End of system configuration section. ####
+
+SHELL = /bin/sh
+
+OBJECTS = handler.obj dispatcher.obj version.obj
+
+all : sigsegv.lib
+
+config.h : config.h.msvc
+ $(CP) $(srcdir)\config.h.msvc config.h
+
+sigsegv.h : src/sigsegv.h.msvc
+ $(CP) $(srcdir)\src\sigsegv.h.msvc sigsegv.h
+
+handler.obj : $(srcdir)/src/handler.c $(srcdir)/src/handler-win32.c sigsegv.h config.h
+ $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/src/handler.c
+
+dispatcher.obj : $(srcdir)/src/dispatcher.c sigsegv.h config.h
+ $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/src/dispatcher.c
+
+version.obj : $(srcdir)/src/version.c sigsegv.h
+ $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/src/version.c
+
+!if !$(DLL)
+sigsegv.lib : $(OBJECTS)
+ $(RM) sigsegv.lib
+ $(AR) $(AR_FLAGS)sigsegv.lib $(OBJECTS)
+!else
+# sigsegv.dll and sigsegv.lib are created together.
+sigsegv.lib : $(OBJECTS)
+ $(CC) $(MFLAGS) -LD $(OBJECTS) -Fesigsegv.dll
+!endif
+
+sigsegv1.exe : $(srcdir)/tests/sigsegv1.c sigsegv.h sigsegv.lib
+ $(CC) $(CFLAGS) $(INCLUDES) $(srcdir)/tests/sigsegv1.c sigsegv.lib /Fesigsegv1
+
+sigsegv2.exe : $(srcdir)/tests/sigsegv2.c sigsegv.h sigsegv.lib
+ $(CC) $(CFLAGS) $(INCLUDES) $(srcdir)/tests/sigsegv2.c sigsegv.lib /Fesigsegv2
+
+stackoverflow1.exe : $(srcdir)/tests/stackoverflow1.c sigsegv.h sigsegv.lib
+ $(CC) $(CFLAGS) $(INCLUDES) $(srcdir)/tests/stackoverflow1.c sigsegv.lib /Festackoverflow1
+
+stackoverflow2.exe : $(srcdir)/tests/stackoverflow2.c sigsegv.h sigsegv.lib
+ $(CC) $(CFLAGS) $(INCLUDES) $(srcdir)/tests/stackoverflow2.c sigsegv.lib /Festackoverflow2
+
+check : all sigsegv1.exe sigsegv2.exe stackoverflow1.exe stackoverflow2.exe
+ sigsegv1.exe
+ sigsegv2.exe
+ stackoverflow1.exe
+ stackoverflow2.exe
+
+mostlyclean : clean
+
+clean : force
+ $(RM) sigsegv.h *.obj *.lib *.exp *.dll core
+ $(RM) sigsegv1.exe sigsegv2.exe stackoverflow1.exe stackoverflow2.exe
+
+distclean : clean
+ $(RM) config.status config.log config.cache Makefile config.h
+
+maintainer-clean : distclean
+
+force :
+
diff --git a/libsigsegv/NEWS b/libsigsegv/NEWS
new file mode 100644
index 00000000..90a95b24
--- /dev/null
+++ b/libsigsegv/NEWS
@@ -0,0 +1,96 @@
+New in 2.7:
+
+* Support for platforms that follow POSIX:2008, not POSIX:2001.
+* Support for MirBSD 10.
+* Support for IRIX 5.3. Contributed by Eric Blake.
+
+New in 2.6:
+
+* sigsegv_leave_handler is changed. Previously it was a normal function with
+ no arguments. Now it is a function that take a non-returning continuation
+ function and three arguments for it as arguments.
+ Where you had code like
+ int my_handler(void* fault_address, int serious)
+ {
+ ...code_before()...;
+ sigsegv_leave_handler();
+ ...code_after()...;
+ longjmp(...);
+ }
+ you now have to write
+ void my_handler_tail(void* arg1, void* arg2, void* arg3)
+ {
+ ...code_after()...;
+ longjmp(...);
+ }
+ int my_handler(void* fault_address, int serious)
+ {
+ ...code_before()...;
+ #if LIBSIGSEGV_VERSION >= 0x0206
+ return sigsegv_leave_handler(my_handler_tail, arg, NULL, NULL);
+ #else
+ sigsegv_leave_handler();
+ my_handler_tail(arg, NULL, NULL);
+ /* NOTREACHED */
+ abort();
+ #endif
+ }
+* sigsegv_leave_handler now works correctly on MacOS X.
+* Support for 64-bit ABI on MacOS X 10.5.
+* Support for building universal binaries on MacOS X.
+* Improved distinction between stack overflow and other fault on NetBSD,
+ OpenBSD, FreeBSD, Linux, AIX, Solaris. Contributed by Eric Blake.
+* GNU gnulib now has an autoconf macro for locating libsigsegv:
+ http://www.gnu.org/software/gnulib/MODULES.html#module=libsigsegv
+
+New in 2.5:
+
+* Support for MacOS X 10.5.
+
+New in 2.4:
+
+* Support for GCC 4 on more platforms.
+* Added support for catching stack overflow on NetBSD.
+* Improved support for catching stack overflow on Linux, Solaris:
+ Works also when /proc is not mounted or lacks read permissions.
+
+New in 2.3:
+
+* Support for GCC 4 on some platforms contributed by Paolo Bonzini.
+* Support for MacOS X i386 contributed by Bruno Haible.
+* Improved support for Woe32 contributed by Doug Currie.
+
+New in 2.2:
+
+* Support for new versions of MacOS X contributed by Paolo Bonzini.
+* Improved support for AIX 5, contributed by Bruno Haible.
+
+New in 2.1:
+
+* Support for MacOS X contributed by Paolo Bonzini.
+* Support for Cygwin contributed by Paolo Bonzini.
+* Support for Linux/ia64 and Linux/hppa contributed by Bruno Haible.
+* Support for OpenBSD/i386 contributed by Bruno Haible.
+* Support for NetBSD/alpha contributed by Paolo Bonzini.
+
+New in 2.0:
+
+* Modernized infrastructure.
+* Added support for catching stack overflow on AIX 4, HP-UX, and BeOS.
+* Dropped support for NeXTstep.
+* The function sigsegv_leave_handler() no longer restores the signal mask.
+ This must now be done by the calling handler (either through sigprocmask
+ or through siglongjmp).
+
+New in 1.2:
+
+* Support for HP-UX contributed by Paolo Bonzini.
+
+New in 1.1:
+
+* Catching stack overflow now works on some Unix systems:
+ - Linux 2.2.x with glibc-2.1,
+ - Sun Solaris,
+ - DEC OSF/1 4.0,
+ - SGI Irix.
+
diff --git a/libsigsegv/PORTING b/libsigsegv/PORTING
new file mode 100644
index 00000000..0132ce77
--- /dev/null
+++ b/libsigsegv/PORTING
@@ -0,0 +1,249 @@
+Successfully tested platforms
+=============================
+
+__PLATFORM__________________________________SIGSEGV__STACK_OVERFLOW__VERSION___
+ | | |
+alpha-dec-osf4.0d | yes | yes | 2.1
+alpha-dec-osf4.0f | yes | yes | 2.1
+alphaev56-dec-osf4.0d | yes | yes | 2.6
+alphaev56-dec-osf4.0f | yes | yes | 2.6
+alpha-dec-osf4.0g | yes | yes | 2.1
+alpha-dec-osf5.1 | yes | yes | 2.1
+alphaev67-dec-osf5.1 | yes | yes | 2.2
+alphaev67-dec-osf5.1a | yes | yes | 2.6
+alphaev6-dec-osf5.1b | yes | yes | 2.6
+alpha-unknown-freebsd4.8 | yes | yes | 2.1
+alpha-portbld-freebsd5.5 | yes | yes | 2.3
+alphaev67-unknown-linux2.4.17-gnu-glibc2.1 | yes | yes | 1.95
+alphaev6-unknown-linux2.2.19-gnu-glibc2.2 | yes | yes | 2.1
+alphaev67-unknown-linux2.2.20-gnu-glibc2.2 | yes | yes | 2.1
+alphaev67-unknown-linux2.4.4-gnu-glibc2.2 | yes | yes | 2.1
+alphaev6-unknown-linux2.4.9-gnu-glibc2.2 | yes | yes | 2.1
+alphaev67-unknown-linux2.4.9-gnu-glibc2.2 | yes | yes | 2.1
+alphaev6-unknown-linux2.4.18-gnu-glibc2.2 | yes | yes | 2.1
+alphaev67-unknown-linux2.4.18-gnu-glibc2.2 | yes | yes | 2.1
+alpha-unknown-linux2.4.19-gnu-glibc2.3 | yes | yes | 2.6
+alphaev68-unknown-linux2.6.11-gnu-glibc2.3 | yes | yes | 2.2
+alpha-unknown-openbsd3.7 | yes | yes | 2.2
+alpha-unknown-netbsd1.6 | yes | yes | 2.1
+armv4l-unknown-linux2.4.0-gnu-glibc2.2 | no | yes | 2.1
+armv4l-unknown-linux2.4.3-gnu-glibc2.2 | yes | yes | 2.1
+armv4l-unknown-linux2.4.9-gnu-glibc2.2 | no | yes | 2.0.1
+armv5tel-unknown-linux2.4.20-gnu-glibc2.2 | yes | yes | 2.2
+armv6l-unknown-linux2.6.18-gnu-glibc2.3 | yes | yes | 2.4
+arm-angstrom-linux2.6.23-gnueabi-glibc2.4 | yes | yes | 2.5
+hppa1.1-hp-hpux11.00 | yes | yes | 2.1
+hppa2.0-hp-hpux10.20 | yes | yes | 2.2
+hppa2.0w-hp-hpux11.00 | yes | yes | 2.6
+hppa2.0w-hp-hpux11.11 | yes | yes | 2.6
+hppa2.0w-hp-hpux11.31 | yes | yes | 2.6
+hppa-unknown-linux2.4.19-gnu-glibc2.2 | yes | yes | 2.0.1
+hppa64-unknown-linux2.4.17-gnu-glibc2.2 | yes | yes | 2.1
+hppa2.0-unknown-linux2.6.20.1-gnu-glibc2.3 | yes | no | 2.4
+i370-ibm-openedition | no | no | 2.6
+i586-pc-beos | no | yes | 2.1
+i686-pc-cygwin | yes | yes | 2.02
+i686-pc-cygwin | yes | yes | 2.4
+i386-apple-darwin8.6.1 | yes | yes | 2.3
+i686-apple-darwin8.6.1 | yes | yes | 2.3
+i386-apple-darwin8.8.1 | yes | yes | 2.4
+i386-apple-darwin8.8.2 | yes | yes | 2.4
+i386-apple-darwin8.8.3 | yes | yes | 2.4
+i386-apple-darwin8.9.1 | yes | yes | 2.4
+i386-apple-darwin8.10.1 | yes | yes | 2.4
+i386-apple-darwin8.11.1 | yes | yes | 2.6
+i386-apple-darwin9.0.0 | yes | yes | 2.5
+i386-apple-darwin9.1.0 | yes | yes | 2.5
+i386-apple-darwin9.2.2 | yes | yes | 2.5
+i386-apple-darwin9.3.0 | yes | yes | 2.6
+i386-apple-darwin9.4.0 | yes | yes | 2.5
+i386-apple-darwin9.5.0 | yes | yes | 2.5
+i586-pc-linux2.2.14-gnu-glibc2.1 | yes | yes | 2.1
+i686-pc-linux2.2.14-gnu-glibc2.1 | yes | yes | 2.0
+i686-pc-linux2.2.19-gnu-glibc2.1 | yes | yes | 1.95
+i486-pc-linux2.2.21-gnu-glibc2.1 | yes | yes | 2.0
+i586-pc-linux2.4.18-gnu-glibc2.1 | yes | yes | 2.0
+i686-pc-linux2.4.19-gnu-glibc2.1 | yes | yes | 2.2
+i686-pc-linux2.2.16-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.2.19-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.4.7-gnu-glibc2.2 | yes | yes | 2.1
+i586-pc-linux2.4.9-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.4.9-gnu-glibc2.2 | yes | yes | 2.0
+i386-pc-linux2.4.18-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.4.18-gnu-glibc2.2 | yes | yes | 2.0
+i586-pc-linux2.4.19-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.4.19-gnu-glibc2.2 | yes | yes | 2.0
+i686-pc-linux2.4.20-gnu-glibc2.2 | yes | yes | 2.0
+i586-pc-linux2.2.19-gnu-glibc2.3 | yes | yes | 2.1
+i686-pc-linux2.4.18-gnu-glibc2.3 | yes | yes | 1.97
+i486-pc-linux2.4.20-gnu-glibc2.3 | yes | yes | 2.0
+i586-pc-linux2.4.20-gnu-glibc2.3 | yes | yes | 2.0
+i686-pc-linux2.4.20-gnu-glibc2.3 | yes | yes | 2.0
+i686-pc-linux2.4.21-gnu-glibc2.3 | yes | yes | 2.6
+i586-pc-linux2.4.22-gnu-glibc2.3 | yes | yes | 2.0
+i386-pc-mingw32 | yes | yes | 2.4
+i586-pc-mingw32 | yes | yes | 2.1
+i686-pc-mingw32 | yes | yes | 2.6
+i386-unknown-mirbsd10 | yes | yes | 2.7
+i386-pc-os2-emx | no | no | 2.5
+i386-pc-solaris2.9 | yes | yes | 2.2
+i386-pc-solaris2.10 | yes | yes | 2.6
+i386-pc-solaris2.11 | yes | yes | 2.2
+i686-pc-win32-msvc6 | yes | yes | 1.96
+i386-unknown-freebsd4.0 | yes | yes | 2.1
+i386-unknown-freebsd4.0-gnu-glibc2.3 | yes | yes | 2.1
+i386-unknown-freebsd4.6 | yes | yes | 1.95
+i386-unknown-freebsd4.7 | yes | yes | 2.1
+i386-unknown-freebsd4.8 | yes | yes | 2.1
+i386-unknown-freebsd4.9 | yes | yes | 2.2
+i386-unknown-freebsd4.10 | yes | yes | 2.2
+i386-unknown-freebsd5.0 | yes | yes | 2.6
+i386-portbld-freebsd6.0 | yes | yes | 2.3
+i386-unknown-freebsd6.2 | yes | yes | 2.6
+i686-unknown-kfreebsd6.2-gnu-glibc2.6 | yes | yes | 2.5+
+i386-unknown-netbsdelf1.6 | no | no | 2.6
+i386-unknown-netbsdelf2.0.2 | yes | yes | 2.4
+i386-unknown-netbsdelf3.0 | yes | yes | 2.4
+i386-unknown-netbsd | yes | no | 2.2
+i386-unknown-openbsd3.2 | yes | yes | 2.3
+i386-unknown-openbsd3.3 | yes | yes | 2.1
+i386-unknown-openbsd3.4 | yes | yes | 2.2
+i386-unknown-openbsd3.6 | yes | yes | 2.1
+i386-unknown-openbsd3.8 | yes | yes | 2.4
+i386-unknown-openbsd3.9 | yes | yes | 2.6
+i386-unknown-openbsd4.0 | yes | yes | 2.6
+ia64-portbld-freebsd7.0 | yes | no | 2.3
+ia64-hp-hpux11.22 | yes | no | 2.1
+ia64-hp-hpux11.23 | yes | no | 2.2
+ia64-hp-hpux11.31 | yes | no | 2.6
+ia64-unknown-linux2.4.18-gnu-glibc2.2 | yes | yes | 2.4
+ia64-unknown-linux2.4.21-gnu-glibc2.3 | yes | yes | 2.6
+ia64-unknown-linux2.6.9-gnu-glibc2.3 | yes | yes | 2.6
+ia64-unknown-linux2.6.16.27-gnu-glibc2.4 | yes | yes | 2.6
+mips-sgi-irix5.3 | yes | yes | 2.6+
+mips-sgi-irix6.2 | yes | yes | 2.6+
+mips-sgi-irix6.5 | yes | yes | 2.6+
+mips-unknown-linux2.4.27-gnu-glibc2.3 | yes | yes | 2.6
+nsr-tandem-nsk | no | no | 2.1
+rs6000-ibm-aix3.2.5 | yes | no | 2.2
+rs6000-ibm-aix4.2.0.0 | yes | yes | 2.2
+rs6000-ibm-aix4.2.1.0 | yes | yes | 2.1
+powerpc-ibm-aix4.3.2.0 | yes | yes | 2.6
+powerpc-ibm-aix4.3.3.0 | yes | yes | 1.95
+powerpc-ibm-aix5.1.0.0 | yes | yes | 2.6
+powerpc-ibm-aix5.2.0.0 | yes | yes | 2.5
+powerpc-ibm-aix5.3.0.0 | yes | yes | 2.5
+powerpc-apple-darwin5.5 | yes | yes | 2.2
+powerpc-apple-darwin6.0 | yes | yes | 2.4
+powerpc-apple-darwin6.8 | yes | yes | 2.2
+powerpc-apple-darwin7.7.0 | yes | yes | 2.2
+powerpc-apple-darwin7.8.0 | yes | yes | 2.2
+powerpc-apple-darwin7.9.0 | yes | yes | 2.6
+powerpc-apple-darwin8.1.0 | yes | yes | 2.2
+powerpc-apple-darwin8.3.0 | yes | yes | 2.2
+powerpc-apple-darwin8.4.0 | yes | yes | 2.2
+powerpc-apple-darwin8.7.0 | yes | yes | 2.4
+powerpc-apple-darwin8.8.0 | yes | yes | 2.4
+powerpc-apple-darwin8.9.0 | yes | yes | 2.4
+powerpc-apple-darwin8.10.0 | yes | yes | 2.5
+powerpc-apple-darwin8.11.0 | yes | yes | 2.6
+powerpc-apple-darwin8.11.1 | yes | yes | 2.5
+powerpc-apple-darwin9.2.0 | yes | yes | 2.5
+powerpc-unknown-linux2.2.17-gnu-glibc2.1 | no | yes | 1.95
+powerpc-unknown-linux2.2.17-gnu-glibc2.2 | yes | yes | 2.0.1
+powerpc-unknown-linux2.4.19-gnu-glibc2.2 | yes | yes | 2.4
+powerpc-unknown-linux2.4.28-gnu-glibc2.2 | yes | yes | 2.1
+powerpc-unknown-linux2.4.26-gnu-glibc2.3 | yes | yes | 2.1
+powerpc-unknown-linux2.6.10-gnu-glibc2.3 | yes | yes | 2.2
+powerpc-unknown-linux2.6.16-gnu-glibc2.3 | yes | yes | 2.4
+powerpc-unknown-linux2.6.16-gnu-glibc2.4 | yes | yes | 2.6
+powerpc-unknown-netbsd2.0 | yes | no | 2.1
+powerpc-unknown-netbsd3.99.23 | yes | yes | 2.4
+powerpc-unknown-openbsd4.0 | yes | yes | 2.4
+powerpc-unknown-openbsd4.1 | yes | yes | 2.4
+powerpc64-unknown-linux2.6.5-gnu-glibc2.3 | yes | yes | 2.4
+s390x-ibm-linux2.6.16.46-gnu-glibc2.4 | no | yes | 2.5
+sparc-unknown-linux2.4.32-gnu-glibc2.3 | yes | no | 2.1
+sparc-unknown-openbsd3.9 | yes | no | 2.4
+sparc-sun-solaris2.5.1 | yes | yes | 2.2
+sparc-sun-solaris2.6 | yes | yes | 2.2
+sparc-sun-solaris2.7 | yes | yes | 2.6
+sparc-sun-solaris2.8 | yes | yes | 2.6
+sparc-sun-solaris2.9 | yes | yes | 2.6
+sparc-sun-solaris2.10 | yes | yes | 2.6
+sparc-sun-solaris2.11 | yes | yes | 2.4
+sparc64-unknown-linux2.2.18-gnu-glibc2.1 | no | no | 1.95
+sparc64-unknown-linux2.4.28-gnu-glibc2.3 | yes | no | 2.6
+sparc64-unknown-openbsd3.6 | no | no | 2.2
+x86_64-unknown-kfreebsd6.2-gnu-glibc2.6 | yes | yes | 2.5+
+x86_64-unknown-linux2.4.21-gnu-glibc2.2 | yes | yes | 2.1
+x86_64-unknown-linux2.4.21-gnu-glibc2.3 | yes | yes | 2.1
+x86_64-unknown-linux2.6.3-gnu-glibc2.3 | yes | yes | 2.1
+x86_64-unknown-linux2.6.9-gnu-glibc2.3 | yes | yes | 2.4
+x86_64-unknown-linux2.6.11.4-gnu-glibc2.3 | yes | yes | 2.4
+x86_64-unknown-linux2.6.13-gnu-glibc2.3 | yes | yes | 2.4
+x86_64-unknown-linux2.6.16-gnu-glibc2.4 | yes | yes | 2.4
+x86_64-unknown-linux2.6.16.13-gnu-glibc2.4 | yes | yes | 2.4
+x86_64-unknown-linux2.6.16.21-gnu-glibc2.4 | yes | yes | 2.4
+x86_64-unknown-linux2.6.16.27-gnu-glibc2.4 | yes | yes | 2.6
+x86_64-unknown-linux2.6.17-gnu-glibc2.4 | yes | yes | 2.4
+x86_64-unknown-linux2.6.20-gnu-glibc2.5 | yes | yes | 2.4
+x86_64-unknown-linux2.6.20.1-gnu-glibc2.5 | yes | yes | 2.4
+x86_64-unknown-linux2.6.21-gnu-glibc2.6 | yes | yes | 2.4
+x86_64-unknown-netbsd3.0 | yes | yes | 2.4
+x86_64-unknown-netbsd4.99.72 | yes | yes | 2.5
+amd64-portbld-freebsd5.4 | yes | yes | 2.2
+amd64-portbld-freebsd6.0 | yes | yes | 2.3
+amd64-portbld-freebsd7.0 | yes | yes | 2.3
+
+
+On FreeBSD 5.2, libsigsegv works best if the /proc filesystem is mounted.
+(It is not mounted by default.)
+
+
+Porting to new platforms
+========================
+
+On Unix systems, where faults are notified to the program through a signal
+handler, the core routines in handler-unix.c can be used without
+modifications. But they need the following bits of information. Each of
+them is stored in a platform dependent file; the file is chosen in configure.
+
+ * List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows.
+ This is a file among signals-*.h.
+ configure chooses and sets the variable CFG_SIGNALS.
+
+ * What arguments are passed to a fault handler.
+ This is a file among fault-*.h.
+ configure chooses and sets the variable CFG_FAULT.
+
+ * How to determine the stack's virtual memory area.
+ This is a file among stackvma-*.c.
+ configure chooses and sets the variable CFG_STACKVMA.
+
+ * How to leave a signal handler that is executing on the alternate
+ signal stack.
+ This is a file among leave-*.c.
+ configure chooses and sets the variable CFG_LEAVE.
+
+For each of these, the approach should be:
+
+ - Find a way to implement the needed functionality. This might involve
+ study of the system include files (in particular <signal.h> and
+ <ucontext.h>) and of the kernel sources.
+ For CFG_FAULT, the best starting point is to run the tests/sigsegv1
+ program with a breakpoint set at 'sigsegv_handler'.
+
+ - Add to configure.in a test whether your new code works. This will
+ help portability to platforms similar to yours.
+ Then regenerate the configure script (run "autoconf") and verify
+ that the test says "yes" on your platform.
+
+ - Create a platform dependent file (e.g. fault-<os>-<cpu>.h) and change
+ configure.in to choose this particular file when your test says "yes".
+ Then regenerate the configure script (run "autoconf").
+
+ - Verify that "make" and "make check" pass.
+
+For non-Unix systems, a separate handler-<os>.c is likely to be needed.
diff --git a/libsigsegv/README b/libsigsegv/README
new file mode 100644
index 00000000..2f4e7651
--- /dev/null
+++ b/libsigsegv/README
@@ -0,0 +1,123 @@
+ GNU libsigsegv - Handling page faults in user mode
+
+This is a library for handling page faults in user mode. A page fault
+occurs when a program tries to access to a region of memory that is
+currently not available. Catching and handling a page fault is a useful
+technique for implementing:
+
+ - pageable virtual memory,
+ - memory-mapped access to persistent databases,
+ - generational garbage collectors,
+ - stack overflow handlers,
+ - distributed shared memory,
+ - ...
+
+This library supports three sets of functions, all defined in <sigsegv.h>:
+
+ - Global SIGSEGV handlers:
+ sigsegv_install_handler, sigsegv_deinstall_handler.
+
+ - Local SIGSEGV handlers (a handler per memory area):
+ sigsegv_init, sigsegv_register, sigsegv_unregister, sigsegv_dispatch.
+
+ - Stack overflow handlers:
+ stackoverflow_install_handler, stackoverflow_deinstall_handler.
+
+Each of the three APIs can be used independently or simultaneously.
+For examples of the use of the APIs, see:
+
+ - Global SIGSEGV handlers: see tests/sigsegv1.c.
+ - Local SIGSEGV handlers: see tests/sigsegv2.c.
+ - Stack overflow handlers: see tests/stackoverflow1.c.
+
+
+About portability.
+
+Some platforms don't support this functionality. In <sigsegv.h>, the
+preprocessor macro HAVE_SIGSEGV_RECOVERY will be defined if global and
+local SIGSEGV handlers are available, and the preprocessor macro
+HAVE_STACK_OVERFLOW_RECOVERY will be defined if stack overflow handlers
+are available. Note that the declared functions are available in all cases;
+on platforms where HAVE_SIGSEGV_RECOVERY or HAVE_STACK_OVERFLOW_RECOVERY is
+not defined, they will simply always return an error code or do nothing.
+
+The list of platforms where this library is known to work is contained in
+the file PORTING.
+
+
+About pageable virtual memory.
+
+Pageable virtual memory is usually done in the operating system's kernel.
+This library helps in implementing the others.
+
+Installing a page fault handler is usually more efficient than doing
+access checks in software at every access, because it's effectively the
+hardware (the MMU) which checks whether a page is present or not.
+
+Note that if you use system calls (like read()) to write into write-
+protected pages, the system will react by returning -1 and setting
+errno to EFAULT, instead of signalling SIGSEGV and restarting the system
+call. In this case, the program has to do what the SIGSEGV handler would
+do, and then restart the read() operation. Some buggy systems (SunOS 4)
+go into an endless loop on this occasion; on these systems you have to
+make sure that an area is writable _before_ you call read() on it,
+
+
+About stack overflow handlers.
+
+In some applications, the stack overflow handler performs some cleanup or
+notifies the user and then immediately terminates the application. In
+other applications, the stack overflow handler longjmps back to a central
+point in the application. This library supports both uses. In the second
+case, the handler must ensure to restore the normal signal mask (because
+many signals are blocked while the handler is executed), and must also
+call sigsegv_leave_handler() to transfer control; then only it can longjmp
+away.
+
+
+About shared libraries.
+
+This library builds as a static library by default. This seems useful
+because of the small size of the library (4 KB). Of course, you can build
+it as a shared library by specifying the configure option '--enable-shared'.
+
+
+Installation instructions on Unix:
+
+ ./configure
+ make
+ make check
+ make install
+
+Installation instructions on Woe32:
+
+ See README.woe32.
+
+
+Using libsigsegv in your package:
+ - For the APIs, see the comments in the <sigsegv.h> file (generated from
+ src/sigsegv.h.in).
+ - An autoconf macro for determining where libsigsegv is installed and how to
+ link with it is part of GNU gnulib, see
+ <http://www.gnu.org/software/gnulib/MODULES.html#module=libsigsegv>
+
+
+Copyright notice:
+
+Copyright 1998-1999, 2002-2008 Bruno Haible <bruno@clisp.org>
+Copyright 2002-2005 Paolo Bonzini <bonzini@gnu.org>
+Copyright 2008 Eric Blake <ebb9@byu.net>
+
+This is free software distributed under the GNU General Public Licence
+described in the file COPYING. There is ABSOLUTELY NO WARRANTY, explicit or
+implied, on this software.
+
+
+Download:
+
+ftp://ftp.gnu.org/pub/gnu/libsigsegv/libsigsegv-2.6.tar.gz
+http://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.6.tar.gz
+
+Homepage:
+
+http://libsigsegv.sourceforge.net/
diff --git a/libsigsegv/README.woe32 b/libsigsegv/README.woe32
new file mode 100644
index 00000000..e189d8f7
--- /dev/null
+++ b/libsigsegv/README.woe32
@@ -0,0 +1,59 @@
+Installation on Woe32 (WinNT/2000/XP/Vista, Win95/98/ME):
+
+===============================================================================
+Installation instructions on Woe32 with Cygwin, compiling for mingw32:
+
+- Requires the cygwin tools, with the mingw32 compiler and runtime packages.
+
+- Build instructions:
+
+ Make sure that cygwin's 'bin' directory is the first entry in PATH.
+
+ Run bash.
+
+ CC="gcc -mno-cygwin" ./configure --host=i386-pc-mingw32
+ make
+ make check
+ make install
+
+===============================================================================
+Installation instructions on Woe32 with MS Visual C/C++ 4.0, 5.0, 6.0, or 7.0:
+
+- Requires MS Visual C/C++ 4.0 or 5.0 or 6.0 or 7.0.
+
+ Note that binaries created with MSVC 7.0 should not be distributed: They
+ depend on a closed-source library 'msvcr70.dll' which is not normally part
+ of a Woe32 installation. You cannot distribute 'msvcr70.dll' with the
+ binaries - this would be a violation of the GPL and of the Microsoft EULA.
+ You can distribute the binaries without including 'msvcr70.dll', but this
+ will cause problems for users that don't have this library on their system.
+ Therefore it is not recommended. This problem does not occur with MSVC 6.0
+ and earlier.
+
+- Cannot build in a separate directory.
+
+- Build instructions:
+
+ Make sure that the MSVC4.0 or MSVC5.0 or MSVC6.0 utilities ("cl" etc.) are
+ found in PATH.
+
+ For shared library (DLL): **NOT YET SUPPORTED**
+
+ nmake -f Makefile.msvc DLL=1 MFLAGS=-MD check
+
+ For static library:
+
+ nmake -f Makefile.msvc check
+
+ If you want to build both the shared and static library, you have to
+ unpack the libsigsegv sources twice in different directories. Don't mix
+ the two formats; you cannot use the sigsegv.h generated for the static
+ library together with the shared library or vice versa.
+
+- Installation:
+
+ Copy sigsegv.h to your header file repository.
+ Copy sigsegv.lib to your library repository.
+ If you built for shared library, also copy sigsegv.dll into one of the
+ directories listed in your PATH, or into the directory containing the
+ executable which shall make use of libsigsegv.
diff --git a/libsigsegv/aclocal.m4 b/libsigsegv/aclocal.m4
new file mode 100644
index 00000000..8245dd15
--- /dev/null
+++ b/libsigsegv/aclocal.m4
@@ -0,0 +1,976 @@
+# generated automatically by aclocal 1.11 -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2006, 2007, 2008, 2009 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 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.
+
+m4_ifndef([AC_AUTOCONF_VERSION],
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.63],,
+[m4_warning([this file was generated for autoconf 2.63.
+You have another version of autoconf. It may work, but is not guaranteed to.
+If you have problems, you may need to regenerate the build system entirely.
+To do so, use the procedure documented by the package, typically `autoreconf'.])])
+
+# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 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.
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+# (This private macro should not be called outside this file.)
+AC_DEFUN([AM_AUTOMAKE_VERSION],
+[am__api_version='1.11'
+dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
+dnl require some minimum version. Point them to the right macro.
+m4_if([$1], [1.11], [],
+ [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
+])
+
+# _AM_AUTOCONF_VERSION(VERSION)
+# -----------------------------
+# aclocal traces this macro to find the Autoconf version.
+# This is a private macro too. Using m4_define simplifies
+# the logic in aclocal, which can simply ignore this definition.
+m4_define([_AM_AUTOCONF_VERSION], [])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
+# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+[AM_AUTOMAKE_VERSION([1.11])dnl
+m4_ifndef([AC_AUTOCONF_VERSION],
+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
+
+# AM_AUX_DIR_EXPAND -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005 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.
+
+# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
+# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
+# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory. The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run. This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+# fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+# fails if $ac_aux_dir is absolute,
+# fails when called from a subdirectory in a VPATH build with
+# a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir. In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
+# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+# MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH. The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
+
+AC_DEFUN([AM_AUX_DIR_EXPAND],
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+
+# AM_CONDITIONAL -*- Autoconf -*-
+
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
+# 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.
+
+# serial 9
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])dnl
+AC_SUBST([$1_FALSE])dnl
+_AM_SUBST_NOTMAKE([$1_TRUE])dnl
+_AM_SUBST_NOTMAKE([$1_FALSE])dnl
+m4_define([_AM_COND_VALUE_$1], [$2])dnl
+if $2; then
+ $1_TRUE=
+ $1_FALSE='#'
+else
+ $1_TRUE='#'
+ $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+ AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
+# 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.
+
+# serial 10
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery. Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
+ [$1], CXX, [depcc="$CXX" am_compiler_list=],
+ [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+ [$1], UPC, [depcc="$UPC" am_compiler_list=],
+ [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
+ [depcc="$$1" am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+ [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_$1_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+ fi
+ am__universal=false
+ m4_case([$1], [CC],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac],
+ [CXX],
+ [case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac])
+
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
+ case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
+ none) break ;;
+ esac
+ if depmode=$depmode \
+ source=sub/conftest.c object=$am__obj \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_$1_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+
+
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+
+
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])dnl
+_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
+])
+
+# Generate code to set up dependency tracking. -*- Autoconf -*-
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
+# 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.
+
+#serial 5
+
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[{
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`AS_DIRNAME("$mf")`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`AS_DIRNAME(["$file"])`
+ AS_MKDIR_P([$dirpart/$fdir])
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+ done
+}
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+
+
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled. FIXME. This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# 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.
+
+# serial 8
+
+# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
+AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
+
+# Do all the work for Automake. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2006, 2008, 2009 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.
+
+# serial 16
+
+# This macro actually does too much. Some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
+
+# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
+# AM_INIT_AUTOMAKE([OPTIONS])
+# -----------------------------------------------
+# The call with PACKAGE and VERSION arguments is the old style
+# call (pre autoconf-2.50), which is being phased out. PACKAGE
+# and VERSION should now be passed to AC_INIT and removed from
+# the call to AM_INIT_AUTOMAKE.
+# We support both call styles for the transition. After
+# the next Automake release, Autoconf can make the AC_INIT
+# arguments mandatory, and then we can depend on a new Autoconf
+# release and drop the old call support.
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_PREREQ([2.62])dnl
+dnl Autoconf wants to disallow AM_ names. We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+if test "`cd $srcdir && pwd`" != "`pwd`"; then
+ # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
+ # is not polluted with repeated "-I."
+ AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
+ # test to see if srcdir already configured
+ if test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+ fi
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
+m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
+ [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+ [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+ [_AM_DEPENDENCIES(CC)],
+ [define([AC_PROG_CC],
+ defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [_AM_DEPENDENCIES(CXX)],
+ [define([AC_PROG_CXX],
+ defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_OBJC],
+ [_AM_DEPENDENCIES(OBJC)],
+ [define([AC_PROG_OBJC],
+ defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+])
+_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
+dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
+dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
+dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_CONFIG_COMMANDS_PRE(dnl
+[m4_provide_if([_AM_COMPILER_EXEEXT],
+ [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
+])
+
+dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
+dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
+dnl mangled by Autoconf and run in a shell conditional statement.
+m4_define([_AC_COMPILER_EXEEXT],
+m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
+
+
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated. The stamp files are numbered to have different names.
+
+# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
+# loop where config.status creates the headers, so we can generate
+# our stamp files there.
+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+[# Compute $1's index in $config_headers.
+_am_arg=$1
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ $_am_arg | $_am_arg:* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
+
+# Copyright (C) 2001, 2003, 2005, 2008 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.
+
+# AM_PROG_INSTALL_SH
+# ------------------
+# Define $install_sh.
+AC_DEFUN([AM_PROG_INSTALL_SH],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+if test x"${install_sh}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+ *)
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
+ esac
+fi
+AC_SUBST(install_sh)])
+
+# Copyright (C) 2003, 2005 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.
+
+# serial 2
+
+# Check whether the underlying file-system supports filenames
+# with a leading dot. For instance MS-DOS doesn't.
+AC_DEFUN([AM_SET_LEADING_DOT],
+[rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+
+# Check to see how 'make' treats includes. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005, 2009 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.
+
+# serial 4
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo this is the am__doit target
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+ am__include=include
+ am__quote=
+ _am_result=GNU
+ ;;
+esac
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ case `$am_make -s -f confmf 2> /dev/null` in #(
+ *the\ am__doit\ target*)
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ ;;
+ esac
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+
+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
+# 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.
+
+# serial 6
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([missing])dnl
+if test x"${MISSING+set}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+ *)
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
+ esac
+fi
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+# Copyright (C) 2003, 2004, 2005, 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.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check for `mkdir -p'.
+AC_DEFUN([AM_PROG_MKDIR_P],
+[AC_PREREQ([2.60])dnl
+AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
+dnl while keeping a definition of mkdir_p for backward compatibility.
+dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
+dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
+dnl Makefile.ins that do not define MKDIR_P, so we do our own
+dnl adjustment using top_builddir (which is defined more often than
+dnl MKDIR_P).
+AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
+case $mkdir_p in
+ [[\\/$]]* | ?:[[\\/]]*) ;;
+ */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
+])
+
+# Helper functions for option handling. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005, 2008 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.
+
+# serial 4
+
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+
+# _AM_SET_OPTION(NAME)
+# ------------------------------
+# Set option NAME. Presently that only means defining a flag for this option.
+AC_DEFUN([_AM_SET_OPTION],
+[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+
+# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+# -------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+AC_DEFUN([_AM_IF_OPTION],
+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
+# 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.
+
+# serial 5
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name. Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+ *[[\\\"\#\$\&\'\`$am_lf]]*)
+ AC_MSG_ERROR([unsafe absolute working directory name]);;
+esac
+case $srcdir in
+ *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
+ AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+esac
+
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+ if test "$[*]" = "X"; then
+ # -L didn't work.
+ set X `ls -t "$srcdir/configure" conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "$[2]" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+
+# Copyright (C) 2001, 2003, 2005 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.
+
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries. This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+ AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Copyright (C) 2006, 2008 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.
+
+# serial 2
+
+# _AM_SUBST_NOTMAKE(VARIABLE)
+# ---------------------------
+# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
+# This macro is traced by Automake.
+AC_DEFUN([_AM_SUBST_NOTMAKE])
+
+# AM_SUBST_NOTMAKE(VARIABLE)
+# ---------------------------
+# Public sister of _AM_SUBST_NOTMAKE.
+AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
+
+# Check how to create a tarball. -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005 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.
+
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
+#
+# Substitute a variable $(am__tar) that is a command
+# writing to stdout a FORMAT-tarball containing the directory
+# $tardir.
+# tardir=directory && $(am__tar) > result.tar
+#
+# Substitute a variable $(am__untar) that extract such
+# a tarball read from stdin.
+# $(am__untar) < result.tar
+AC_DEFUN([_AM_PROG_TAR],
+[# Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+ [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+ [m4_case([$1], [ustar],, [pax],,
+ [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar;
+ do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
+
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+]) # _AM_PROG_TAR
+
+m4_include([m4/bold.m4])
+m4_include([m4/fault.m4])
+m4_include([m4/getpagesize.m4])
+m4_include([m4/libtool.m4])
+m4_include([m4/ltoptions.m4])
+m4_include([m4/ltsugar.m4])
+m4_include([m4/ltversion.m4])
+m4_include([m4/lt~obsolete.m4])
+m4_include([m4/mmap-anon.m4])
+m4_include([m4/relocatable.m4])
+m4_include([m4/sigaltstack-longjmp.m4])
+m4_include([m4/sigaltstack-siglongjmp.m4])
+m4_include([m4/sigaltstack.m4])
diff --git a/libsigsegv/build-aux/config.guess b/libsigsegv/build-aux/config.guess
new file mode 100755
index 00000000..c7607c74
--- /dev/null
+++ b/libsigsegv/build-aux/config.guess
@@ -0,0 +1,1526 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+# Free Software Foundation, Inc.
+
+timestamp='2008-04-14'
+
+# 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
+# the Free Software Foundation; either version 2 of the License, 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.
+#
+# 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.
+
+
+# Originally written by Per Bothner <per@bothner.com>.
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub. If it succeeds, it prints the system name on stdout, and
+# exits with 0. Otherwise, it exits with 1.
+#
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help" >&2
+ exit 1 ;;
+ * )
+ break ;;
+ esac
+done
+
+if test $# != 0; then
+ echo "$me: too many arguments$help" >&2
+ exit 1
+fi
+
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,) echo "int x;" > $dummy.c ;
+ for c in cc gcc c89 c99 ; do
+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$c"; break ;
+ fi ;
+ done ;
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found ;
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+esac ; set_cc_for_build= ;'
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi@noc.rutgers.edu 1994-08-24)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+ PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+ # compatibility and a consistent mechanism for selecting the
+ # object file format.
+ #
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ sysctl="sysctl -n hw.machine_arch"
+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+ case "${UNAME_MACHINE_ARCH}" in
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+ sh5el) machine=sh5le-unknown ;;
+ *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+ # to ELF recently, or will in the future.
+ case "${UNAME_MACHINE_ARCH}" in
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+ eval $set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep __ELF__ >/dev/null
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+ os=netbsd
+ else
+ os=netbsdelf
+ fi
+ ;;
+ *)
+ os=netbsd
+ ;;
+ esac
+ # The OS release
+ # Debian GNU/NetBSD machines have a different userland, and
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+ case "${UNAME_VERSION}" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ ;;
+ esac
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+ echo "${machine}-${os}${release}"
+ exit ;;
+ *:OpenBSD:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ exit ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit ;;
+ *:SolidBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ exit ;;
+ macppc:MirBSD:*:*)
+ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+ exit ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit ;;
+ alpha:OSF1:*:*)
+ case $UNAME_RELEASE in
+ *4.0)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+ ;;
+ *5.*)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ ;;
+ esac
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+ # types through head -n 1, so we only detect the type of CPU 0.
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "EV4.5 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "LCA4 (21066/21068)")
+ UNAME_MACHINE="alpha" ;;
+ "EV5 (21164)")
+ UNAME_MACHINE="alphaev5" ;;
+ "EV5.6 (21164A)")
+ UNAME_MACHINE="alphaev56" ;;
+ "EV5.6 (21164PC)")
+ UNAME_MACHINE="alphapca56" ;;
+ "EV5.7 (21164PC)")
+ UNAME_MACHINE="alphapca57" ;;
+ "EV6 (21264)")
+ UNAME_MACHINE="alphaev6" ;;
+ "EV6.7 (21264A)")
+ UNAME_MACHINE="alphaev67" ;;
+ "EV6.8CB (21264C)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8AL (21264B)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8CX (21264D)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.9A (21264/EV69A)")
+ UNAME_MACHINE="alphaev69" ;;
+ "EV7 (21364)")
+ UNAME_MACHINE="alphaev7" ;;
+ "EV7.9 (21364A)")
+ UNAME_MACHINE="alphaev79" ;;
+ esac
+ # A Pn.n version is a patched version.
+ # A Vn.n version is a released version.
+ # A Tn.n version is a released field test version.
+ # A Xn.n version is an unreleased experimental baselevel.
+ # 1.2 uses "1.2" for uname -r.
+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ exit ;;
+ Alpha\ *:Windows_NT*:*)
+ # How do we know it's Interix rather than the generic POSIX subsystem?
+ # Should we change UNAME_MACHINE based on the output of uname instead
+ # of the specific Alpha model?
+ echo alpha-pc-interix
+ exit ;;
+ 21064:Windows_NT:50:3)
+ echo alpha-dec-winnt3.5
+ exit ;;
+ Amiga*:UNIX_System_V:4.0:*)
+ echo m68k-unknown-sysv4
+ exit ;;
+ *:[Aa]miga[Oo][Ss]:*:*)
+ echo ${UNAME_MACHINE}-unknown-amigaos
+ exit ;;
+ *:[Mm]orph[Oo][Ss]:*:*)
+ echo ${UNAME_MACHINE}-unknown-morphos
+ exit ;;
+ *:OS/390:*:*)
+ echo i370-ibm-openedition
+ exit ;;
+ *:z/VM:*:*)
+ echo s390-ibm-zvmoe
+ exit ;;
+ *:OS400:*:*)
+ echo powerpc-ibm-os400
+ exit ;;
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+ echo arm-acorn-riscix${UNAME_RELEASE}
+ exit ;;
+ arm:riscos:*:*|arm:RISCOS:*:*)
+ echo arm-unknown-riscos
+ exit ;;
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ echo hppa1.1-hitachi-hiuxmpp
+ exit ;;
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ if test "`(/bin/universe) 2>/dev/null`" = att ; then
+ echo pyramid-pyramid-sysv3
+ else
+ echo pyramid-pyramid-bsd
+ fi
+ exit ;;
+ NILE*:*:*:dcosx)
+ echo pyramid-pyramid-svr4
+ exit ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+ exit ;;
+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ case `/usr/bin/uname -p` in
+ sparc) echo sparc-icl-nx7; exit ;;
+ esac ;;
+ sun4H:SunOS:5.*:*)
+ echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+ echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:6*:*)
+ # According to config.sub, this is the proper way to canonicalize
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
+ # it's likely to be more like Solaris than SunOS4.
+ echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:*:*)
+ case "`/usr/bin/arch -k`" in
+ Series*|S4*)
+ UNAME_RELEASE=`uname -v`
+ ;;
+ esac
+ # Japanese Language versions have a version number like `4.1.3-JL'.
+ echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+ exit ;;
+ sun3*:SunOS:*:*)
+ echo m68k-sun-sunos${UNAME_RELEASE}
+ exit ;;
+ sun*:*:4.2BSD:*)
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+ test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+ case "`/bin/arch`" in
+ sun3)
+ echo m68k-sun-sunos${UNAME_RELEASE}
+ ;;
+ sun4)
+ echo sparc-sun-sunos${UNAME_RELEASE}
+ ;;
+ esac
+ exit ;;
+ aushp:SunOS:*:*)
+ echo sparc-auspex-sunos${UNAME_RELEASE}
+ exit ;;
+ # The situation for MiNT is a little confusing. The machine name
+ # can be virtually everything (everything which is not
+ # "atarist" or "atariste" at least should have a processor
+ # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
+ # to the lowercase version "mint" (or "freemint"). Finally
+ # the system name "TOS" denotes a system which is actually not
+ # MiNT. But MiNT is downward compatible to TOS, so this should
+ # be no problem.
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+ echo m68k-milan-mint${UNAME_RELEASE}
+ exit ;;
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+ echo m68k-hades-mint${UNAME_RELEASE}
+ exit ;;
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+ echo m68k-unknown-mint${UNAME_RELEASE}
+ exit ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten${UNAME_RELEASE}
+ exit ;;
+ powerpc:machten:*:*)
+ echo powerpc-apple-machten${UNAME_RELEASE}
+ exit ;;
+ RISC*:Mach:*:*)
+ echo mips-dec-mach_bsd4.3
+ exit ;;
+ RISC*:ULTRIX:*:*)
+ echo mips-dec-ultrix${UNAME_RELEASE}
+ exit ;;
+ VAX*:ULTRIX*:*:*)
+ echo vax-dec-ultrix${UNAME_RELEASE}
+ exit ;;
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
+ echo clipper-intergraph-clix${UNAME_RELEASE}
+ exit ;;
+ mips:*:*:UMIPS | mips:*:*:RISCos)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h> /* for printf() prototype */
+ int main (int argc, char *argv[]) {
+#else
+ int main (argc, argv) int argc; char *argv[]; {
+#endif
+ #if defined (host_mips) && defined (MIPSEB)
+ #if defined (SYSTYPE_SYSV)
+ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_SVR4)
+ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+ #endif
+ #endif
+ exit (-1);
+ }
+EOF
+ $CC_FOR_BUILD -o $dummy $dummy.c &&
+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+ SYSTEM_NAME=`$dummy $dummyarg` &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo mips-mips-riscos${UNAME_RELEASE}
+ exit ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+ exit ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:Power_UNIX:*:*)
+ echo powerpc-harris-powerunix
+ exit ;;
+ m88k:CX/UX:7*:*)
+ echo m88k-harris-cxux7
+ exit ;;
+ m88k:*:4*:R4*)
+ echo m88k-motorola-sysv4
+ exit ;;
+ m88k:*:3*:R3*)
+ echo m88k-motorola-sysv3
+ exit ;;
+ AViiON:dgux:*:*)
+ # DG/UX returns AViiON for all architectures
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ then
+ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+ [ ${TARGET_BINARY_INTERFACE}x = x ]
+ then
+ echo m88k-dg-dgux${UNAME_RELEASE}
+ else
+ echo m88k-dg-dguxbcs${UNAME_RELEASE}
+ fi
+ else
+ echo i586-dg-dgux${UNAME_RELEASE}
+ fi
+ exit ;;
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
+ echo m88k-dolphin-sysv3
+ exit ;;
+ M88*:*:R3*:*)
+ # Delta 88k system running SVR3
+ echo m88k-motorola-sysv3
+ exit ;;
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ echo m88k-tektronix-sysv3
+ exit ;;
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ echo m68k-tektronix-bsd
+ exit ;;
+ *:IRIX*:*:*)
+ echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+ exit ;;
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ i*86:AIX:*:*)
+ echo i386-ibm-aix
+ exit ;;
+ ia64:AIX:*:*)
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ fi
+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+ exit ;;
+ *:AIX:2:3)
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <sys/systemcfg.h>
+
+ main()
+ {
+ if (!__power_pc())
+ exit(1);
+ puts("powerpc-ibm-aix3.2.5");
+ exit(0);
+ }
+EOF
+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+ then
+ echo "$SYSTEM_NAME"
+ else
+ echo rs6000-ibm-aix3.2.5
+ fi
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ echo rs6000-ibm-aix3.2.4
+ else
+ echo rs6000-ibm-aix3.2
+ fi
+ exit ;;
+ *:AIX:*:[456])
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ IBM_ARCH=rs6000
+ else
+ IBM_ARCH=powerpc
+ fi
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ fi
+ echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+ exit ;;
+ *:AIX:*:*)
+ echo rs6000-ibm-aix
+ exit ;;
+ ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ echo romp-ibm-bsd4.4
+ exit ;;
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
+ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+ exit ;; # report: romp-ibm BSD 4.3
+ *:BOSX:*:*)
+ echo rs6000-bull-bosx
+ exit ;;
+ DPX/2?00:B.O.S.:*:*)
+ echo m68k-bull-sysv3
+ exit ;;
+ 9000/[34]??:4.3bsd:1.*:*)
+ echo m68k-hp-bsd
+ exit ;;
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ echo m68k-hp-bsd4.4
+ exit ;;
+ 9000/[34678]??:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ case "${UNAME_MACHINE}" in
+ 9000/31? ) HP_ARCH=m68000 ;;
+ 9000/[34]?? ) HP_ARCH=m68k ;;
+ 9000/[678][0-9][0-9])
+ if [ -x /usr/bin/getconf ]; then
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+ case "${sc_cpu_version}" in
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "${sc_kernel_bits}" in
+ 32) HP_ARCH="hppa2.0n" ;;
+ 64) HP_ARCH="hppa2.0w" ;;
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+ esac ;;
+ esac
+ fi
+ if [ "${HP_ARCH}" = "" ]; then
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+
+ #define _HPUX_SOURCE
+ #include <stdlib.h>
+ #include <unistd.h>
+
+ int main ()
+ {
+ #if defined(_SC_KERNEL_BITS)
+ long bits = sysconf(_SC_KERNEL_BITS);
+ #endif
+ long cpu = sysconf (_SC_CPU_VERSION);
+
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+ case CPU_PA_RISC2_0:
+ #if defined(_SC_KERNEL_BITS)
+ switch (bits)
+ {
+ case 64: puts ("hppa2.0w"); break;
+ case 32: puts ("hppa2.0n"); break;
+ default: puts ("hppa2.0"); break;
+ } break;
+ #else /* !defined(_SC_KERNEL_BITS) */
+ puts ("hppa2.0"); break;
+ #endif
+ default: puts ("hppa1.0"); break;
+ }
+ exit (0);
+ }
+EOF
+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ test -z "$HP_ARCH" && HP_ARCH=hppa
+ fi ;;
+ esac
+ if [ ${HP_ARCH} = "hppa2.0w" ]
+ then
+ eval $set_cc_for_build
+
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
+ # generating 64-bit code. GNU and HP use different nomenclature:
+ #
+ # $ CC_FOR_BUILD=cc ./config.guess
+ # => hppa2.0w-hp-hpux11.23
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+ # => hppa64-hp-hpux11.23
+
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+ grep __LP64__ >/dev/null
+ then
+ HP_ARCH="hppa2.0w"
+ else
+ HP_ARCH="hppa64"
+ fi
+ fi
+ echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+ exit ;;
+ ia64:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ echo ia64-hp-hpux${HPUX_REV}
+ exit ;;
+ 3050*:HI-UX:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <unistd.h>
+ int
+ main ()
+ {
+ long cpu = sysconf (_SC_CPU_VERSION);
+ /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
+ results, however. */
+ if (CPU_IS_PA_RISC (cpu))
+ {
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+ default: puts ("hppa-hitachi-hiuxwe2"); break;
+ }
+ }
+ else if (CPU_IS_HP_MC68K (cpu))
+ puts ("m68k-hitachi-hiuxwe2");
+ else puts ("unknown-hitachi-hiuxwe2");
+ exit (0);
+ }
+EOF
+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo unknown-hitachi-hiuxwe2
+ exit ;;
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ echo hppa1.1-hp-bsd
+ exit ;;
+ 9000/8??:4.3bsd:*:*)
+ echo hppa1.0-hp-bsd
+ exit ;;
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ echo hppa1.0-hp-mpeix
+ exit ;;
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ echo hppa1.1-hp-osf
+ exit ;;
+ hp8??:OSF1:*:*)
+ echo hppa1.0-hp-osf
+ exit ;;
+ i*86:OSF1:*:*)
+ if [ -x /usr/sbin/sysversion ] ; then
+ echo ${UNAME_MACHINE}-unknown-osf1mk
+ else
+ echo ${UNAME_MACHINE}-unknown-osf1
+ fi
+ exit ;;
+ parisc*:Lites*:*:*)
+ echo hppa1.1-hp-lites
+ exit ;;
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ echo c1-convex-bsd
+ exit ;;
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+ exit ;;
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ echo c34-convex-bsd
+ exit ;;
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ echo c38-convex-bsd
+ exit ;;
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ echo c4-convex-bsd
+ exit ;;
+ CRAY*Y-MP:*:*:*)
+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*[A-Z]90:*:*:*)
+ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*TS:*:*:*)
+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*T3E:*:*:*)
+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*SV1:*:*:*)
+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ *:UNICOS/mp:*:*)
+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+ exit ;;
+ sparc*:BSD/OS:*:*)
+ echo sparc-unknown-bsdi${UNAME_RELEASE}
+ exit ;;
+ *:BSD/OS:*:*)
+ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+ exit ;;
+ *:FreeBSD:*:*)
+ case ${UNAME_MACHINE} in
+ pc98)
+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ amd64)
+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ *)
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ esac
+ exit ;;
+ i*:CYGWIN*:*)
+ echo ${UNAME_MACHINE}-pc-cygwin
+ exit ;;
+ *:MINGW*:*)
+ echo ${UNAME_MACHINE}-pc-mingw32
+ exit ;;
+ i*:windows32*:*)
+ # uname -m includes "-pc" on this system.
+ echo ${UNAME_MACHINE}-mingw32
+ exit ;;
+ i*:PW*:*)
+ echo ${UNAME_MACHINE}-pc-pw32
+ exit ;;
+ *:Interix*:[3456]*)
+ case ${UNAME_MACHINE} in
+ x86)
+ echo i586-pc-interix${UNAME_RELEASE}
+ exit ;;
+ EM64T | authenticamd)
+ echo x86_64-unknown-interix${UNAME_RELEASE}
+ exit ;;
+ IA64)
+ echo ia64-unknown-interix${UNAME_RELEASE}
+ exit ;;
+ esac ;;
+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+ echo i${UNAME_MACHINE}-pc-mks
+ exit ;;
+ i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+ # How do we know it's Interix rather than the generic POSIX subsystem?
+ # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+ # UNAME_MACHINE based on the output of uname instead of i386?
+ echo i586-pc-interix
+ exit ;;
+ i*:UWIN*:*)
+ echo ${UNAME_MACHINE}-pc-uwin
+ exit ;;
+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+ echo x86_64-unknown-cygwin
+ exit ;;
+ p*:CYGWIN*:*)
+ echo powerpcle-unknown-cygwin
+ exit ;;
+ prep*:SunOS:5.*:*)
+ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ *:GNU:*:*)
+ # the GNU system
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ exit ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ exit ;;
+ i*86:Minix:*:*)
+ echo ${UNAME_MACHINE}-pc-minix
+ exit ;;
+ arm*:Linux:*:*)
+ eval $set_cc_for_build
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ else
+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ fi
+ exit ;;
+ avr32*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ cris:Linux:*:*)
+ echo cris-axis-linux-gnu
+ exit ;;
+ crisv32:Linux:*:*)
+ echo crisv32-axis-linux-gnu
+ exit ;;
+ frv:Linux:*:*)
+ echo frv-unknown-linux-gnu
+ exit ;;
+ ia64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ m32r*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ m68*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ mips:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips
+ #undef mipsel
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mipsel
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^CPU/{
+ s: ::g
+ p
+ }'`"
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ ;;
+ mips64:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips64
+ #undef mips64el
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mips64el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips64
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^CPU/{
+ s: ::g
+ p
+ }'`"
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ ;;
+ or32:Linux:*:*)
+ echo or32-unknown-linux-gnu
+ exit ;;
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-gnu
+ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-gnu
+ exit ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ exit ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+ PA7*) echo hppa1.1-unknown-linux-gnu ;;
+ PA8*) echo hppa2.0-unknown-linux-gnu ;;
+ *) echo hppa-unknown-linux-gnu ;;
+ esac
+ exit ;;
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-unknown-linux-gnu
+ exit ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+ echo ${UNAME_MACHINE}-ibm-linux
+ exit ;;
+ sh64*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ sh*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ vax:Linux:*:*)
+ echo ${UNAME_MACHINE}-dec-linux-gnu
+ exit ;;
+ x86_64:Linux:*:*)
+ echo x86_64-unknown-linux-gnu
+ exit ;;
+ xtensa*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ i*86:Linux:*:*)
+ # The BFD linker knows what the default object file format is, so
+ # first see if it will tell us. cd to the root directory to prevent
+ # problems with other programs or directories called `ld' in the path.
+ # Set LC_ALL=C to ensure ld outputs messages in English.
+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+ | sed -ne '/supported targets:/!d
+ s/[ ][ ]*/ /g
+ s/.*supported targets: *//
+ s/ .*//
+ p'`
+ case "$ld_supported_targets" in
+ elf32-i386)
+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+ ;;
+ a.out-i386-linux)
+ echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+ exit ;;
+ "")
+ # Either a pre-BFD a.out linker (linux-gnuoldld) or
+ # one that does not give us useful --help.
+ echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+ exit ;;
+ esac
+ # Determine whether the default compiler is a.out or elf
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <features.h>
+ #ifdef __ELF__
+ # ifdef __GLIBC__
+ # if __GLIBC__ >= 2
+ LIBC=gnu
+ # else
+ LIBC=gnulibc1
+ # endif
+ # else
+ LIBC=gnulibc1
+ # endif
+ #else
+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+ LIBC=gnu
+ #else
+ LIBC=gnuaout
+ #endif
+ #endif
+ #ifdef __dietlibc__
+ LIBC=dietlibc
+ #endif
+EOF
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^LIBC/{
+ s: ::g
+ p
+ }'`"
+ test x"${LIBC}" != x && {
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+ exit
+ }
+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+ ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
+ echo i386-sequent-sysv4
+ exit ;;
+ i*86:UNIX_SV:4.2MP:2.*)
+ # Unixware is an offshoot of SVR4, but it has its own version
+ # number series starting with 2...
+ # I am not positive that other SVR4 systems won't match this,
+ # I just have to hope. -- rms.
+ # Use sysv4.2uw... so that sysv4* matches it.
+ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+ exit ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+ echo ${UNAME_MACHINE}-pc-os2-emx
+ exit ;;
+ i*86:XTS-300:*:STOP)
+ echo ${UNAME_MACHINE}-unknown-stop
+ exit ;;
+ i*86:atheos:*:*)
+ echo ${UNAME_MACHINE}-unknown-atheos
+ exit ;;
+ i*86:syllable:*:*)
+ echo ${UNAME_MACHINE}-pc-syllable
+ exit ;;
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+ echo i386-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ i*86:*DOS:*:*)
+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ exit ;;
+ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+ else
+ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ fi
+ exit ;;
+ i*86:*:5:[678]*)
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ case `/bin/uname -X | grep "^Machine"` in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ exit ;;
+ i*86:*:3.2:*)
+ if test -f /usr/options/cb.name; then
+ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+ elif /bin/uname -X 2>/dev/null >/dev/null ; then
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+ && UNAME_MACHINE=i586
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+ && UNAME_MACHINE=i686
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+ && UNAME_MACHINE=i686
+ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+ else
+ echo ${UNAME_MACHINE}-pc-sysv32
+ fi
+ exit ;;
+ pc:*:*:*)
+ # Left here for compatibility:
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
+ # the processor, so we play safe by assuming i386.
+ echo i386-pc-msdosdjgpp
+ exit ;;
+ Intel:Mach:3*:*)
+ echo i386-pc-mach3
+ exit ;;
+ paragon:*:*:*)
+ echo i860-intel-osf1
+ exit ;;
+ i860:*:4.*:*) # i860-SVR4
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+ echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ else # Add other i860-SVR4 vendors below as they are discovered.
+ echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ fi
+ exit ;;
+ mini*:CTIX:SYS*5:*)
+ # "miniframe"
+ echo m68010-convergent-sysv
+ exit ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+ exit ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+ exit ;;
+ M68*:*:R3V[5678]*:*)
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+ OS_REL=''
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4; exit; } ;;
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+ echo m68k-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ mc68030:UNIX_System_V:4.*:*)
+ echo m68k-atari-sysv4
+ exit ;;
+ TSUNAMI:LynxOS:2.*:*)
+ echo sparc-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ rs6000:LynxOS:2.*:*)
+ echo rs6000-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ SM[BE]S:UNIX_SV:*:*)
+ echo mips-dde-sysv${UNAME_RELEASE}
+ exit ;;
+ RM*:ReliantUNIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ RM*:SINIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ *:SINIX-*:*:*)
+ if uname -p 2>/dev/null >/dev/null ; then
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ echo ${UNAME_MACHINE}-sni-sysv4
+ else
+ echo ns32k-sni-sysv
+ fi
+ exit ;;
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
+ echo i586-unisys-sysv4
+ exit ;;
+ *:UNIX_System_V:4*:FTX*)
+ # From Gerald Hewes <hewes@openmarket.com>.
+ # How about differentiating between stratus architectures? -djm
+ echo hppa1.1-stratus-sysv4
+ exit ;;
+ *:*:*:FTX*)
+ # From seanf@swdc.stratus.com.
+ echo i860-stratus-sysv4
+ exit ;;
+ i*86:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo ${UNAME_MACHINE}-stratus-vos
+ exit ;;
+ *:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo hppa1.1-stratus-vos
+ exit ;;
+ mc68*:A/UX:*:*)
+ echo m68k-apple-aux${UNAME_RELEASE}
+ exit ;;
+ news*:NEWS-OS:6*:*)
+ echo mips-sony-newsos6
+ exit ;;
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ if [ -d /usr/nec ]; then
+ echo mips-nec-sysv${UNAME_RELEASE}
+ else
+ echo mips-unknown-sysv${UNAME_RELEASE}
+ fi
+ exit ;;
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
+ echo powerpc-be-beos
+ exit ;;
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
+ echo powerpc-apple-beos
+ exit ;;
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+ echo i586-pc-beos
+ exit ;;
+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
+ echo i586-pc-haiku
+ exit ;;
+ SX-4:SUPER-UX:*:*)
+ echo sx4-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-5:SUPER-UX:*:*)
+ echo sx5-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-6:SUPER-UX:*:*)
+ echo sx6-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-7:SUPER-UX:*:*)
+ echo sx7-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8:SUPER-UX:*:*)
+ echo sx8-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8R:SUPER-UX:*:*)
+ echo sx8r-nec-superux${UNAME_RELEASE}
+ exit ;;
+ Power*:Rhapsody:*:*)
+ echo powerpc-apple-rhapsody${UNAME_RELEASE}
+ exit ;;
+ *:Rhapsody:*:*)
+ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+ exit ;;
+ *:Darwin:*:*)
+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+ case $UNAME_PROCESSOR in
+ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ exit ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=`uname -p`
+ if test "$UNAME_PROCESSOR" = "x86"; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+ exit ;;
+ *:QNX:*:4*)
+ echo i386-pc-qnx
+ exit ;;
+ NSE-?:NONSTOP_KERNEL:*:*)
+ echo nse-tandem-nsk${UNAME_RELEASE}
+ exit ;;
+ NSR-?:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk${UNAME_RELEASE}
+ exit ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+ exit ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+ exit ;;
+ DS/*:UNIX_System_V:*:*)
+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ exit ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+ if test "$cputype" = "386"; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+ echo ${UNAME_MACHINE}-unknown-plan9
+ exit ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+ exit ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+ exit ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+ exit ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+ exit ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+ exit ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+ exit ;;
+ SEI:*:*:SEIUX)
+ echo mips-sei-seiux${UNAME_RELEASE}
+ exit ;;
+ *:DragonFly:*:*)
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit ;;
+ *:*VMS:*:*)
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ case "${UNAME_MACHINE}" in
+ A*) echo alpha-dec-vms ; exit ;;
+ I*) echo ia64-dec-vms ; exit ;;
+ V*) echo vax-dec-vms ; exit ;;
+ esac ;;
+ *:XENIX:*:SysV)
+ echo i386-pc-xenix
+ exit ;;
+ i*86:skyos:*:*)
+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+ exit ;;
+ i*86:rdos:*:*)
+ echo ${UNAME_MACHINE}-pc-rdos
+ exit ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
+ I don't know.... */
+ printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+ printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+ "4"
+#else
+ ""
+#endif
+ ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+ printf ("arm-acorn-riscix\n"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+ printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+ int version;
+ version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+ if (version < 4)
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+ else
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+ exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+ printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+ printf ("ns32k-encore-mach\n"); exit (0);
+#else
+ printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+ printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+ printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+ printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+ struct utsname un;
+
+ uname(&un);
+
+ if (strncmp(un.version, "V2", 2) == 0) {
+ printf ("i386-sequent-ptx2\n"); exit (0);
+ }
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+ printf ("i386-sequent-ptx1\n"); exit (0);
+ }
+ printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+# include <sys/param.h>
+# if defined (BSD)
+# if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+# else
+# if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# endif
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# else
+ printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+ printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+ exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+ case `getsysinfo -f cpu_type` in
+ c1*)
+ echo c1-convex-bsd
+ exit ;;
+ c2*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+ exit ;;
+ c34*)
+ echo c34-convex-bsd
+ exit ;;
+ c38*)
+ echo c38-convex-bsd
+ exit ;;
+ c4*)
+ echo c4-convex-bsd
+ exit ;;
+ esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+and
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo = `(hostinfo) 2>/dev/null`
+/bin/universe = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/libsigsegv/build-aux/config.sub b/libsigsegv/build-aux/config.sub
new file mode 100755
index 00000000..053e7381
--- /dev/null
+++ b/libsigsegv/build-aux/config.sub
@@ -0,0 +1,1677 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+# Free Software Foundation, Inc.
+
+timestamp='2008-09-08'
+
+# This file is (in principle) common to ALL GNU software.
+# The presence of a machine in this file suggests that SOME GNU software
+# can handle that machine. It does not imply ALL GNU software can.
+#
+# 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
+# the Free Software Foundation; either version 2 of the License, 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.
+#
+# 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.
+
+
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support. The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+ $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help"
+ exit 1 ;;
+
+ *local*)
+ # First pass through any local machine types.
+ echo $1
+ exit ;;
+
+ * )
+ break ;;
+ esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+ exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+ exit 1;;
+esac
+
+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
+# Here we must recognize all the valid KERNEL-OS combinations.
+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+case $maybe_os in
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
+ os=-$maybe_os
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+ ;;
+ *)
+ basic_machine=`echo $1 | sed 's/-[^-]*$//'`
+ if [ $basic_machine != $1 ]
+ then os=`echo $1 | sed 's/.*-/-/'`
+ else os=; fi
+ ;;
+esac
+
+### Let's recognize common machines as not being operating systems so
+### that things like config.sub decstation-3100 work. We also
+### recognize some manufacturers as not being operating systems, so we
+### can provide default operating systems below.
+case $os in
+ -sun*os*)
+ # Prevent following clause from handling this invalid input.
+ ;;
+ -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
+ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
+ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
+ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
+ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
+ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
+ -apple | -axis | -knuth | -cray)
+ os=
+ basic_machine=$1
+ ;;
+ -sim | -cisco | -oki | -wec | -winbond)
+ os=
+ basic_machine=$1
+ ;;
+ -scout)
+ ;;
+ -wrs)
+ os=-vxworks
+ basic_machine=$1
+ ;;
+ -chorusos*)
+ os=-chorusos
+ basic_machine=$1
+ ;;
+ -chorusrdb)
+ os=-chorusrdb
+ basic_machine=$1
+ ;;
+ -hiux*)
+ os=-hiuxwe2
+ ;;
+ -sco6)
+ os=-sco5v6
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco5)
+ os=-sco3.2v5
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco4)
+ os=-sco3.2v4
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco3.2.[4-9]*)
+ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco3.2v[4-9]*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco*)
+ os=-sco3.2v2
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -udk*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -isc)
+ os=-isc2.2
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -clix*)
+ basic_machine=clipper-intergraph
+ ;;
+ -isc*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -lynx*)
+ os=-lynxos
+ ;;
+ -ptx*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+ ;;
+ -windowsnt*)
+ os=`echo $os | sed -e 's/windowsnt/winnt/'`
+ ;;
+ -psos*)
+ os=-psos
+ ;;
+ -mint | -mint[0-9]*)
+ basic_machine=m68k-atari
+ os=-mint
+ ;;
+esac
+
+# Decode aliases for certain CPU-COMPANY combinations.
+case $basic_machine in
+ # Recognize the basic CPU types without company name.
+ # Some are omitted here because they have special meanings below.
+ 1750a | 580 \
+ | a29k \
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+ | am33_2.0 \
+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+ | bfin \
+ | c4x | clipper \
+ | d10v | d30v | dlx | dsp16xx \
+ | fido | fr30 | frv \
+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | i370 | i860 | i960 | ia64 \
+ | ip2k | iq2000 \
+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
+ | maxq | mb | microblaze | mcore | mep | metag \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64el \
+ | mips64octeon | mips64octeonel \
+ | mips64orion | mips64orionel \
+ | mips64r5900 | mips64r5900el \
+ | mips64vr | mips64vrel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa32r2 | mipsisa32r2el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipsisa64sr71k | mipsisa64sr71kel \
+ | mipstx39 | mipstx39el \
+ | mn10200 | mn10300 \
+ | mt \
+ | msp430 \
+ | nios | nios2 \
+ | ns16k | ns32k \
+ | or32 \
+ | pdp10 | pdp11 | pj | pjl \
+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+ | pyramid \
+ | score \
+ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+ | sh64 | sh64le \
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+ | spu | strongarm \
+ | tahoe | thumb | tic4x | tic80 | tron \
+ | v850 | v850e \
+ | we32k \
+ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | z8k | z80)
+ basic_machine=$basic_machine-unknown
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12)
+ # Motorola 68HC11/12.
+ basic_machine=$basic_machine-unknown
+ os=-none
+ ;;
+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ ;;
+ ms1)
+ basic_machine=mt-unknown
+ ;;
+
+ # We use `pc' rather than `unknown'
+ # because (1) that's what they normally are, and
+ # (2) the word "unknown" tends to confuse beginning users.
+ i*86 | x86_64)
+ basic_machine=$basic_machine-pc
+ ;;
+ # Object if more than one company name word.
+ *-*-*)
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ exit 1
+ ;;
+ # Recognize the basic CPU types with company name.
+ 580-* \
+ | a29k-* \
+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
+ | avr-* | avr32-* \
+ | bfin-* | bs2000-* \
+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+ | clipper-* | craynv-* | cydra-* \
+ | d10v-* | d30v-* | dlx-* \
+ | elxsi-* \
+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+ | h8300-* | h8500-* \
+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+ | i*86-* | i860-* | i960-* | ia64-* \
+ | ip2k-* | iq2000-* \
+ | m32c-* | m32r-* | m32rle-* \
+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+ | mips16-* \
+ | mips64-* | mips64el-* \
+ | mips64octeon-* | mips64octeonel-* \
+ | mips64orion-* | mips64orionel-* \
+ | mips64r5900-* | mips64r5900el-* \
+ | mips64vr-* | mips64vrel-* \
+ | mips64vr4100-* | mips64vr4100el-* \
+ | mips64vr4300-* | mips64vr4300el-* \
+ | mips64vr5000-* | mips64vr5000el-* \
+ | mips64vr5900-* | mips64vr5900el-* \
+ | mipsisa32-* | mipsisa32el-* \
+ | mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa64-* | mipsisa64el-* \
+ | mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64sb1-* | mipsisa64sb1el-* \
+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipstx39-* | mipstx39el-* \
+ | mmix-* \
+ | mt-* \
+ | msp430-* \
+ | nios-* | nios2-* \
+ | none-* | np1-* | ns16k-* | ns32k-* \
+ | orion-* \
+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+ | pyramid-* \
+ | romp-* | rs6000-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+ | sparclite-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
+ | tahoe-* | thumb-* \
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
+ | tron-* \
+ | v850-* | v850e-* | vax-* \
+ | we32k-* \
+ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | xstormy16-* | xtensa*-* \
+ | ymp-* \
+ | z8k-* | z80-*)
+ ;;
+ # Recognize the basic CPU types without company name, with glob match.
+ xtensa*)
+ basic_machine=$basic_machine-unknown
+ ;;
+ # Recognize the various machine names and aliases which stand
+ # for a CPU type and a company and sometimes even an OS.
+ 386bsd)
+ basic_machine=i386-unknown
+ os=-bsd
+ ;;
+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+ basic_machine=m68000-att
+ ;;
+ 3b*)
+ basic_machine=we32k-att
+ ;;
+ a29khif)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
+ adobe68k)
+ basic_machine=m68010-adobe
+ os=-scout
+ ;;
+ alliant | fx80)
+ basic_machine=fx80-alliant
+ ;;
+ altos | altos3068)
+ basic_machine=m68k-altos
+ ;;
+ am29k)
+ basic_machine=a29k-none
+ os=-bsd
+ ;;
+ amd64)
+ basic_machine=x86_64-pc
+ ;;
+ amd64-*)
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ amdahl)
+ basic_machine=580-amdahl
+ os=-sysv
+ ;;
+ amiga | amiga-*)
+ basic_machine=m68k-unknown
+ ;;
+ amigaos | amigados)
+ basic_machine=m68k-unknown
+ os=-amigaos
+ ;;
+ amigaunix | amix)
+ basic_machine=m68k-unknown
+ os=-sysv4
+ ;;
+ apollo68)
+ basic_machine=m68k-apollo
+ os=-sysv
+ ;;
+ apollo68bsd)
+ basic_machine=m68k-apollo
+ os=-bsd
+ ;;
+ aux)
+ basic_machine=m68k-apple
+ os=-aux
+ ;;
+ balance)
+ basic_machine=ns32k-sequent
+ os=-dynix
+ ;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=-linux
+ ;;
+ blackfin-*)
+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
+ c90)
+ basic_machine=c90-cray
+ os=-unicos
+ ;;
+ cegcc)
+ basic_machine=arm-unknown
+ os=-cegcc
+ ;;
+ convex-c1)
+ basic_machine=c1-convex
+ os=-bsd
+ ;;
+ convex-c2)
+ basic_machine=c2-convex
+ os=-bsd
+ ;;
+ convex-c32)
+ basic_machine=c32-convex
+ os=-bsd
+ ;;
+ convex-c34)
+ basic_machine=c34-convex
+ os=-bsd
+ ;;
+ convex-c38)
+ basic_machine=c38-convex
+ os=-bsd
+ ;;
+ cray | j90)
+ basic_machine=j90-cray
+ os=-unicos
+ ;;
+ craynv)
+ basic_machine=craynv-cray
+ os=-unicosmp
+ ;;
+ cr16)
+ basic_machine=cr16-unknown
+ os=-elf
+ ;;
+ crds | unos)
+ basic_machine=m68k-crds
+ ;;
+ crisv32 | crisv32-* | etraxfs*)
+ basic_machine=crisv32-axis
+ ;;
+ cris | cris-* | etrax*)
+ basic_machine=cris-axis
+ ;;
+ crx)
+ basic_machine=crx-unknown
+ os=-elf
+ ;;
+ da30 | da30-*)
+ basic_machine=m68k-da30
+ ;;
+ decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
+ basic_machine=mips-dec
+ ;;
+ decsystem10* | dec10*)
+ basic_machine=pdp10-dec
+ os=-tops10
+ ;;
+ decsystem20* | dec20*)
+ basic_machine=pdp10-dec
+ os=-tops20
+ ;;
+ delta | 3300 | motorola-3300 | motorola-delta \
+ | 3300-motorola | delta-motorola)
+ basic_machine=m68k-motorola
+ ;;
+ delta88)
+ basic_machine=m88k-motorola
+ os=-sysv3
+ ;;
+ dicos)
+ basic_machine=i686-pc
+ os=-dicos
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ os=-msdosdjgpp
+ ;;
+ dpx20 | dpx20-*)
+ basic_machine=rs6000-bull
+ os=-bosx
+ ;;
+ dpx2* | dpx2*-bull)
+ basic_machine=m68k-bull
+ os=-sysv3
+ ;;
+ ebmon29k)
+ basic_machine=a29k-amd
+ os=-ebmon
+ ;;
+ elxsi)
+ basic_machine=elxsi-elxsi
+ os=-bsd
+ ;;
+ encore | umax | mmax)
+ basic_machine=ns32k-encore
+ ;;
+ es1800 | OSE68k | ose68k | ose | OSE)
+ basic_machine=m68k-ericsson
+ os=-ose
+ ;;
+ fx2800)
+ basic_machine=i860-alliant
+ ;;
+ genix)
+ basic_machine=ns32k-ns
+ ;;
+ gmicro)
+ basic_machine=tron-gmicro
+ os=-sysv
+ ;;
+ go32)
+ basic_machine=i386-pc
+ os=-go32
+ ;;
+ h3050r* | hiux*)
+ basic_machine=hppa1.1-hitachi
+ os=-hiuxwe2
+ ;;
+ h8300hms)
+ basic_machine=h8300-hitachi
+ os=-hms
+ ;;
+ h8300xray)
+ basic_machine=h8300-hitachi
+ os=-xray
+ ;;
+ h8500hms)
+ basic_machine=h8500-hitachi
+ os=-hms
+ ;;
+ harris)
+ basic_machine=m88k-harris
+ os=-sysv3
+ ;;
+ hp300-*)
+ basic_machine=m68k-hp
+ ;;
+ hp300bsd)
+ basic_machine=m68k-hp
+ os=-bsd
+ ;;
+ hp300hpux)
+ basic_machine=m68k-hp
+ os=-hpux
+ ;;
+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hp9k2[0-9][0-9] | hp9k31[0-9])
+ basic_machine=m68000-hp
+ ;;
+ hp9k3[2-9][0-9])
+ basic_machine=m68k-hp
+ ;;
+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k78[0-9] | hp78[0-9])
+ # FIXME: really hppa2.0-hp
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+ # FIXME: really hppa2.0-hp
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[0-9][13679] | hp8[0-9][13679])
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hppa-next)
+ os=-nextstep3
+ ;;
+ hppaosf)
+ basic_machine=hppa1.1-hp
+ os=-osf
+ ;;
+ hppro)
+ basic_machine=hppa1.1-hp
+ os=-proelf
+ ;;
+ i370-ibm* | ibm*)
+ basic_machine=i370-ibm
+ ;;
+# I'm not sure what "Sysv32" means. Should this be sysv3.2?
+ i*86v32)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv32
+ ;;
+ i*86v4*)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv4
+ ;;
+ i*86v)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv
+ ;;
+ i*86sol2)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-solaris2
+ ;;
+ i386mach)
+ basic_machine=i386-mach
+ os=-mach
+ ;;
+ i386-vsta | vsta)
+ basic_machine=i386-unknown
+ os=-vsta
+ ;;
+ iris | iris4d)
+ basic_machine=mips-sgi
+ case $os in
+ -irix*)
+ ;;
+ *)
+ os=-irix4
+ ;;
+ esac
+ ;;
+ isi68 | isi)
+ basic_machine=m68k-isi
+ os=-sysv
+ ;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=-linux
+ ;;
+ m68knommu-*)
+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
+ m88k-omron*)
+ basic_machine=m88k-omron
+ ;;
+ magnum | m3230)
+ basic_machine=mips-mips
+ os=-sysv
+ ;;
+ merlin)
+ basic_machine=ns32k-utek
+ os=-sysv
+ ;;
+ mingw32)
+ basic_machine=i386-pc
+ os=-mingw32
+ ;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ os=-mingw32ce
+ ;;
+ miniframe)
+ basic_machine=m68000-convergent
+ ;;
+ *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+ basic_machine=m68k-atari
+ os=-mint
+ ;;
+ mips3*-*)
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+ ;;
+ mips3*)
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+ ;;
+ monitor)
+ basic_machine=m68k-rom68k
+ os=-coff
+ ;;
+ morphos)
+ basic_machine=powerpc-unknown
+ os=-morphos
+ ;;
+ msdos)
+ basic_machine=i386-pc
+ os=-msdos
+ ;;
+ ms1-*)
+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+ ;;
+ mvs)
+ basic_machine=i370-ibm
+ os=-mvs
+ ;;
+ ncr3000)
+ basic_machine=i486-ncr
+ os=-sysv4
+ ;;
+ netbsd386)
+ basic_machine=i386-unknown
+ os=-netbsd
+ ;;
+ netwinder)
+ basic_machine=armv4l-rebel
+ os=-linux
+ ;;
+ news | news700 | news800 | news900)
+ basic_machine=m68k-sony
+ os=-newsos
+ ;;
+ news1000)
+ basic_machine=m68030-sony
+ os=-newsos
+ ;;
+ news-3600 | risc-news)
+ basic_machine=mips-sony
+ os=-newsos
+ ;;
+ necv70)
+ basic_machine=v70-nec
+ os=-sysv
+ ;;
+ next | m*-next )
+ basic_machine=m68k-next
+ case $os in
+ -nextstep* )
+ ;;
+ -ns2*)
+ os=-nextstep2
+ ;;
+ *)
+ os=-nextstep3
+ ;;
+ esac
+ ;;
+ nh3000)
+ basic_machine=m68k-harris
+ os=-cxux
+ ;;
+ nh[45]000)
+ basic_machine=m88k-harris
+ os=-cxux
+ ;;
+ nindy960)
+ basic_machine=i960-intel
+ os=-nindy
+ ;;
+ mon960)
+ basic_machine=i960-intel
+ os=-mon960
+ ;;
+ nonstopux)
+ basic_machine=mips-compaq
+ os=-nonstopux
+ ;;
+ np1)
+ basic_machine=np1-gould
+ ;;
+ nsr-tandem)
+ basic_machine=nsr-tandem
+ ;;
+ op50n-* | op60c-*)
+ basic_machine=hppa1.1-oki
+ os=-proelf
+ ;;
+ openrisc | openrisc-*)
+ basic_machine=or32-unknown
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ os=-os400
+ ;;
+ OSE68000 | ose68000)
+ basic_machine=m68000-ericsson
+ os=-ose
+ ;;
+ os68k)
+ basic_machine=m68k-none
+ os=-os68k
+ ;;
+ pa-hitachi)
+ basic_machine=hppa1.1-hitachi
+ os=-hiuxwe2
+ ;;
+ paragon)
+ basic_machine=i860-intel
+ os=-osf
+ ;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=-linux
+ ;;
+ parisc-*)
+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
+ pbd)
+ basic_machine=sparc-tti
+ ;;
+ pbb)
+ basic_machine=m68k-tti
+ ;;
+ pc532 | pc532-*)
+ basic_machine=ns32k-pc532
+ ;;
+ pc98)
+ basic_machine=i386-pc
+ ;;
+ pc98-*)
+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentium | p5 | k5 | k6 | nexgen | viac3)
+ basic_machine=i586-pc
+ ;;
+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
+ basic_machine=i686-pc
+ ;;
+ pentiumii | pentium2 | pentiumiii | pentium3)
+ basic_machine=i686-pc
+ ;;
+ pentium4)
+ basic_machine=i786-pc
+ ;;
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+ basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentium4-*)
+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pn)
+ basic_machine=pn-gould
+ ;;
+ power) basic_machine=power-ibm
+ ;;
+ ppc) basic_machine=powerpc-unknown
+ ;;
+ ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppcle | powerpclittle | ppc-le | powerpc-little)
+ basic_machine=powerpcle-unknown
+ ;;
+ ppcle-* | powerpclittle-*)
+ basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppc64) basic_machine=powerpc64-unknown
+ ;;
+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+ basic_machine=powerpc64le-unknown
+ ;;
+ ppc64le-* | powerpc64little-*)
+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ps2)
+ basic_machine=i386-ibm
+ ;;
+ pw32)
+ basic_machine=i586-unknown
+ os=-pw32
+ ;;
+ rdos)
+ basic_machine=i386-pc
+ os=-rdos
+ ;;
+ rom68k)
+ basic_machine=m68k-rom68k
+ os=-coff
+ ;;
+ rm[46]00)
+ basic_machine=mips-siemens
+ ;;
+ rtpc | rtpc-*)
+ basic_machine=romp-ibm
+ ;;
+ s390 | s390-*)
+ basic_machine=s390-ibm
+ ;;
+ s390x | s390x-*)
+ basic_machine=s390x-ibm
+ ;;
+ sa29200)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ sb1)
+ basic_machine=mipsisa64sb1-unknown
+ ;;
+ sb1el)
+ basic_machine=mipsisa64sb1el-unknown
+ ;;
+ sde)
+ basic_machine=mipsisa32-sde
+ os=-elf
+ ;;
+ sei)
+ basic_machine=mips-sei
+ os=-seiux
+ ;;
+ sequent)
+ basic_machine=i386-sequent
+ ;;
+ sh)
+ basic_machine=sh-hitachi
+ os=-hms
+ ;;
+ sh5el)
+ basic_machine=sh5le-unknown
+ ;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
+ sparclite-wrs | simso-wrs)
+ basic_machine=sparclite-wrs
+ os=-vxworks
+ ;;
+ sps7)
+ basic_machine=m68k-bull
+ os=-sysv2
+ ;;
+ spur)
+ basic_machine=spur-unknown
+ ;;
+ st2000)
+ basic_machine=m68k-tandem
+ ;;
+ stratus)
+ basic_machine=i860-stratus
+ os=-sysv4
+ ;;
+ sun2)
+ basic_machine=m68000-sun
+ ;;
+ sun2os3)
+ basic_machine=m68000-sun
+ os=-sunos3
+ ;;
+ sun2os4)
+ basic_machine=m68000-sun
+ os=-sunos4
+ ;;
+ sun3os3)
+ basic_machine=m68k-sun
+ os=-sunos3
+ ;;
+ sun3os4)
+ basic_machine=m68k-sun
+ os=-sunos4
+ ;;
+ sun4os3)
+ basic_machine=sparc-sun
+ os=-sunos3
+ ;;
+ sun4os4)
+ basic_machine=sparc-sun
+ os=-sunos4
+ ;;
+ sun4sol2)
+ basic_machine=sparc-sun
+ os=-solaris2
+ ;;
+ sun3 | sun3-*)
+ basic_machine=m68k-sun
+ ;;
+ sun4)
+ basic_machine=sparc-sun
+ ;;
+ sun386 | sun386i | roadrunner)
+ basic_machine=i386-sun
+ ;;
+ sv1)
+ basic_machine=sv1-cray
+ os=-unicos
+ ;;
+ symmetry)
+ basic_machine=i386-sequent
+ os=-dynix
+ ;;
+ t3e)
+ basic_machine=alphaev5-cray
+ os=-unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
+ os=-unicos
+ ;;
+ tic54x | c54x*)
+ basic_machine=tic54x-unknown
+ os=-coff
+ ;;
+ tic55x | c55x*)
+ basic_machine=tic55x-unknown
+ os=-coff
+ ;;
+ tic6x | c6x*)
+ basic_machine=tic6x-unknown
+ os=-coff
+ ;;
+ tile*)
+ basic_machine=tile-unknown
+ os=-linux-gnu
+ ;;
+ tx39)
+ basic_machine=mipstx39-unknown
+ ;;
+ tx39el)
+ basic_machine=mipstx39el-unknown
+ ;;
+ toad1)
+ basic_machine=pdp10-xkl
+ os=-tops20
+ ;;
+ tower | tower-32)
+ basic_machine=m68k-ncr
+ ;;
+ tpf)
+ basic_machine=s390x-ibm
+ os=-tpf
+ ;;
+ udi29k)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ ultra3)
+ basic_machine=a29k-nyu
+ os=-sym1
+ ;;
+ v810 | necv810)
+ basic_machine=v810-nec
+ os=-none
+ ;;
+ vaxv)
+ basic_machine=vax-dec
+ os=-sysv
+ ;;
+ vms)
+ basic_machine=vax-dec
+ os=-vms
+ ;;
+ vpp*|vx|vx-*)
+ basic_machine=f301-fujitsu
+ ;;
+ vxworks960)
+ basic_machine=i960-wrs
+ os=-vxworks
+ ;;
+ vxworks68)
+ basic_machine=m68k-wrs
+ os=-vxworks
+ ;;
+ vxworks29k)
+ basic_machine=a29k-wrs
+ os=-vxworks
+ ;;
+ w65*)
+ basic_machine=w65-wdc
+ os=-none
+ ;;
+ w89k-*)
+ basic_machine=hppa1.1-winbond
+ os=-proelf
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ os=-mingw32
+ ;;
+ xps | xps100)
+ basic_machine=xps100-honeywell
+ ;;
+ ymp)
+ basic_machine=ymp-cray
+ os=-unicos
+ ;;
+ z8k-*-coff)
+ basic_machine=z8k-unknown
+ os=-sim
+ ;;
+ z80-*-coff)
+ basic_machine=z80-unknown
+ os=-sim
+ ;;
+ none)
+ basic_machine=none-none
+ os=-none
+ ;;
+
+# Here we handle the default manufacturer of certain CPU types. It is in
+# some cases the only manufacturer, in others, it is the most popular.
+ w89k)
+ basic_machine=hppa1.1-winbond
+ ;;
+ op50n)
+ basic_machine=hppa1.1-oki
+ ;;
+ op60c)
+ basic_machine=hppa1.1-oki
+ ;;
+ romp)
+ basic_machine=romp-ibm
+ ;;
+ mmix)
+ basic_machine=mmix-knuth
+ ;;
+ rs6000)
+ basic_machine=rs6000-ibm
+ ;;
+ vax)
+ basic_machine=vax-dec
+ ;;
+ pdp10)
+ # there are many clones, so DEC is not a safe bet
+ basic_machine=pdp10-unknown
+ ;;
+ pdp11)
+ basic_machine=pdp11-dec
+ ;;
+ we32k)
+ basic_machine=we32k-att
+ ;;
+ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+ basic_machine=sh-unknown
+ ;;
+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
+ basic_machine=sparc-sun
+ ;;
+ cydra)
+ basic_machine=cydra-cydrome
+ ;;
+ orion)
+ basic_machine=orion-highlevel
+ ;;
+ orion105)
+ basic_machine=clipper-highlevel
+ ;;
+ mac | mpw | mac-mpw)
+ basic_machine=m68k-apple
+ ;;
+ pmac | pmac-mpw)
+ basic_machine=powerpc-apple
+ ;;
+ *-unknown)
+ # Make sure to match an already-canonicalized machine name.
+ ;;
+ *)
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $basic_machine in
+ *-digital*)
+ basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+ ;;
+ *-commodore*)
+ basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+ ;;
+ *)
+ ;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if [ x"$os" != x"" ]
+then
+case $os in
+ # First match some system type aliases
+ # that might get confused with valid system types.
+ # -solaris* is a basic system type, with this one exception.
+ -solaris1 | -solaris1.*)
+ os=`echo $os | sed -e 's|solaris1|sunos4|'`
+ ;;
+ -solaris)
+ os=-solaris2
+ ;;
+ -svr4*)
+ os=-sysv4
+ ;;
+ -unixware*)
+ os=-sysv4.2uw
+ ;;
+ -gnu/linux*)
+ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+ ;;
+ # First accept the basic system types.
+ # The portable systems comes first.
+ # Each alternative MUST END IN A *, to match a version number.
+ # -sysv* is not here because it comes later, after sysvr4.
+ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+ | -aos* \
+ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+ | -openbsd* | -solidbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+ | -chorusos* | -chorusrdb* | -cegcc* \
+ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+ | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
+ # Remember, each alternative MUST END IN *, to match a version number.
+ ;;
+ -qnx*)
+ case $basic_machine in
+ x86-* | i*86-*)
+ ;;
+ *)
+ os=-nto$os
+ ;;
+ esac
+ ;;
+ -nto-qnx*)
+ ;;
+ -nto*)
+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
+ ;;
+ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+ ;;
+ -mac*)
+ os=`echo $os | sed -e 's|mac|macos|'`
+ ;;
+ -linux-dietlibc)
+ os=-linux-dietlibc
+ ;;
+ -linux*)
+ os=`echo $os | sed -e 's|linux|linux-gnu|'`
+ ;;
+ -sunos5*)
+ os=`echo $os | sed -e 's|sunos5|solaris2|'`
+ ;;
+ -sunos6*)
+ os=`echo $os | sed -e 's|sunos6|solaris3|'`
+ ;;
+ -opened*)
+ os=-openedition
+ ;;
+ -os400*)
+ os=-os400
+ ;;
+ -wince*)
+ os=-wince
+ ;;
+ -osfrose*)
+ os=-osfrose
+ ;;
+ -osf*)
+ os=-osf
+ ;;
+ -utek*)
+ os=-bsd
+ ;;
+ -dynix*)
+ os=-bsd
+ ;;
+ -acis*)
+ os=-aos
+ ;;
+ -atheos*)
+ os=-atheos
+ ;;
+ -syllable*)
+ os=-syllable
+ ;;
+ -386bsd)
+ os=-bsd
+ ;;
+ -ctix* | -uts*)
+ os=-sysv
+ ;;
+ -nova*)
+ os=-rtmk-nova
+ ;;
+ -ns2 )
+ os=-nextstep2
+ ;;
+ -nsk*)
+ os=-nsk
+ ;;
+ # Preserve the version number of sinix5.
+ -sinix5.*)
+ os=`echo $os | sed -e 's|sinix|sysv|'`
+ ;;
+ -sinix*)
+ os=-sysv4
+ ;;
+ -tpf*)
+ os=-tpf
+ ;;
+ -triton*)
+ os=-sysv3
+ ;;
+ -oss*)
+ os=-sysv3
+ ;;
+ -svr4)
+ os=-sysv4
+ ;;
+ -svr3)
+ os=-sysv3
+ ;;
+ -sysvr4)
+ os=-sysv4
+ ;;
+ # This must come after -sysvr4.
+ -sysv*)
+ ;;
+ -ose*)
+ os=-ose
+ ;;
+ -es1800*)
+ os=-ose
+ ;;
+ -xenix)
+ os=-xenix
+ ;;
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ os=-mint
+ ;;
+ -aros*)
+ os=-aros
+ ;;
+ -kaos*)
+ os=-kaos
+ ;;
+ -zvmoe)
+ os=-zvmoe
+ ;;
+ -dicos*)
+ os=-dicos
+ ;;
+ -none)
+ ;;
+ *)
+ # Get rid of the `-' at the beginning of $os.
+ os=`echo $os | sed 's/[^-]*-//'`
+ echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+else
+
+# Here we handle the default operating systems that come with various machines.
+# The value should be what the vendor currently ships out the door with their
+# machine or put another way, the most popular os provided with the machine.
+
+# Note that if you're going to try to match "-MANUFACTURER" here (say,
+# "-sun"), then you have to tell the case statement up towards the top
+# that MANUFACTURER isn't an operating system. Otherwise, code above
+# will signal an error saying that MANUFACTURER isn't an operating
+# system, and we'll never get to this point.
+
+case $basic_machine in
+ score-*)
+ os=-elf
+ ;;
+ spu-*)
+ os=-elf
+ ;;
+ *-acorn)
+ os=-riscix1.2
+ ;;
+ arm*-rebel)
+ os=-linux
+ ;;
+ arm*-semi)
+ os=-aout
+ ;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
+ # This must come before the *-dec entry.
+ pdp10-*)
+ os=-tops20
+ ;;
+ pdp11-*)
+ os=-none
+ ;;
+ *-dec | vax-*)
+ os=-ultrix4.2
+ ;;
+ m68*-apollo)
+ os=-domain
+ ;;
+ i386-sun)
+ os=-sunos4.0.2
+ ;;
+ m68000-sun)
+ os=-sunos3
+ # This also exists in the configure program, but was not the
+ # default.
+ # os=-sunos4
+ ;;
+ m68*-cisco)
+ os=-aout
+ ;;
+ mep-*)
+ os=-elf
+ ;;
+ mips*-cisco)
+ os=-elf
+ ;;
+ mips*-*)
+ os=-elf
+ ;;
+ or32-*)
+ os=-coff
+ ;;
+ *-tti) # must be before sparc entry or we get the wrong os.
+ os=-sysv3
+ ;;
+ sparc-* | *-sun)
+ os=-sunos4.1.1
+ ;;
+ *-be)
+ os=-beos
+ ;;
+ *-haiku)
+ os=-haiku
+ ;;
+ *-ibm)
+ os=-aix
+ ;;
+ *-knuth)
+ os=-mmixware
+ ;;
+ *-wec)
+ os=-proelf
+ ;;
+ *-winbond)
+ os=-proelf
+ ;;
+ *-oki)
+ os=-proelf
+ ;;
+ *-hp)
+ os=-hpux
+ ;;
+ *-hitachi)
+ os=-hiux
+ ;;
+ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
+ os=-sysv
+ ;;
+ *-cbm)
+ os=-amigaos
+ ;;
+ *-dg)
+ os=-dgux
+ ;;
+ *-dolphin)
+ os=-sysv3
+ ;;
+ m68k-ccur)
+ os=-rtu
+ ;;
+ m88k-omron*)
+ os=-luna
+ ;;
+ *-next )
+ os=-nextstep
+ ;;
+ *-sequent)
+ os=-ptx
+ ;;
+ *-crds)
+ os=-unos
+ ;;
+ *-ns)
+ os=-genix
+ ;;
+ i370-*)
+ os=-mvs
+ ;;
+ *-next)
+ os=-nextstep3
+ ;;
+ *-gould)
+ os=-sysv
+ ;;
+ *-highlevel)
+ os=-bsd
+ ;;
+ *-encore)
+ os=-bsd
+ ;;
+ *-sgi)
+ os=-irix
+ ;;
+ *-siemens)
+ os=-sysv4
+ ;;
+ *-masscomp)
+ os=-rtu
+ ;;
+ f30[01]-fujitsu | f700-fujitsu)
+ os=-uxpv
+ ;;
+ *-rom68k)
+ os=-coff
+ ;;
+ *-*bug)
+ os=-coff
+ ;;
+ *-apple)
+ os=-macos
+ ;;
+ *-atari*)
+ os=-mint
+ ;;
+ *)
+ os=-none
+ ;;
+esac
+fi
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer. We pick the logical manufacturer.
+vendor=unknown
+case $basic_machine in
+ *-unknown)
+ case $os in
+ -riscix*)
+ vendor=acorn
+ ;;
+ -sunos*)
+ vendor=sun
+ ;;
+ -aix*)
+ vendor=ibm
+ ;;
+ -beos*)
+ vendor=be
+ ;;
+ -hpux*)
+ vendor=hp
+ ;;
+ -mpeix*)
+ vendor=hp
+ ;;
+ -hiux*)
+ vendor=hitachi
+ ;;
+ -unos*)
+ vendor=crds
+ ;;
+ -dgux*)
+ vendor=dg
+ ;;
+ -luna*)
+ vendor=omron
+ ;;
+ -genix*)
+ vendor=ns
+ ;;
+ -mvs* | -opened*)
+ vendor=ibm
+ ;;
+ -os400*)
+ vendor=ibm
+ ;;
+ -ptx*)
+ vendor=sequent
+ ;;
+ -tpf*)
+ vendor=ibm
+ ;;
+ -vxsim* | -vxworks* | -windiss*)
+ vendor=wrs
+ ;;
+ -aux*)
+ vendor=apple
+ ;;
+ -hms*)
+ vendor=hitachi
+ ;;
+ -mpw* | -macos*)
+ vendor=apple
+ ;;
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ vendor=atari
+ ;;
+ -vos*)
+ vendor=stratus
+ ;;
+ esac
+ basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+ ;;
+esac
+
+echo $basic_machine$os
+exit
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/libsigsegv/build-aux/install-sh b/libsigsegv/build-aux/install-sh
new file mode 100755
index 00000000..4d4a9519
--- /dev/null
+++ b/libsigsegv/build-aux/install-sh
@@ -0,0 +1,323 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2005-05-14.22
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch. It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+chmodcmd="$chmodprog 0755"
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+ or: $0 [OPTION]... SRCFILES... DIRECTORY
+ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+ or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c (ignored)
+-d create directories instead of installing files.
+-g GROUP $chgrpprog installed files to GROUP.
+-m MODE $chmodprog installed files to MODE.
+-o USER $chownprog installed files to USER.
+-s $stripprog installed files.
+-t DIRECTORY install into DIRECTORY.
+-T report an error if DSTFILE is a directory.
+--help display this help and exit.
+--version display version info and exit.
+
+Environment variables override the default commands:
+ CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test -n "$1"; do
+ case $1 in
+ -c) shift
+ continue;;
+
+ -d) dir_arg=true
+ shift
+ continue;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift
+ shift
+ continue;;
+
+ --help) echo "$usage"; exit $?;;
+
+ -m) chmodcmd="$chmodprog $2"
+ shift
+ shift
+ continue;;
+
+ -o) chowncmd="$chownprog $2"
+ shift
+ shift
+ continue;;
+
+ -s) stripcmd=$stripprog
+ shift
+ continue;;
+
+ -t) dstarg=$2
+ shift
+ shift
+ continue;;
+
+ -T) no_target_directory=true
+ shift
+ continue;;
+
+ --version) echo "$0 $scriptversion"; exit $?;;
+
+ *) # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ test -n "$dir_arg$dstarg" && break
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dstarg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dstarg"
+ shift # fnord
+ fi
+ shift # arg
+ dstarg=$arg
+ done
+ break;;
+ esac
+done
+
+if test -z "$1"; then
+ if test -z "$dir_arg"; then
+ echo "$0: no input file specified." >&2
+ exit 1
+ fi
+ # It's OK to call `install-sh -d' without argument.
+ # This can happen when creating conditional directories.
+ exit 0
+fi
+
+for src
+do
+ # Protect names starting with `-'.
+ case $src in
+ -*) src=./$src ;;
+ esac
+
+ if test -n "$dir_arg"; then
+ dst=$src
+ src=
+
+ if test -d "$dst"; then
+ mkdircmd=:
+ chmodcmd=
+ else
+ mkdircmd=$mkdirprog
+ fi
+ else
+ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+ # might cause directories to be created, which would be especially bad
+ # if $src (and thus $dsttmp) contains '*'.
+ if test ! -f "$src" && test ! -d "$src"; then
+ echo "$0: $src does not exist." >&2
+ exit 1
+ fi
+
+ if test -z "$dstarg"; then
+ echo "$0: no destination specified." >&2
+ exit 1
+ fi
+
+ dst=$dstarg
+ # Protect names starting with `-'.
+ case $dst in
+ -*) dst=./$dst ;;
+ esac
+
+ # If destination is a directory, append the input filename; won't work
+ # if double slashes aren't ignored.
+ if test -d "$dst"; then
+ if test -n "$no_target_directory"; then
+ echo "$0: $dstarg: Is a directory" >&2
+ exit 1
+ fi
+ dst=$dst/`basename "$src"`
+ fi
+ fi
+
+ # This sed command emulates the dirname command.
+ dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+
+ # Make sure that the destination directory exists.
+
+ # Skip lots of stat calls in the usual case.
+ if test ! -d "$dstdir"; then
+ defaultIFS='
+ '
+ IFS="${IFS-$defaultIFS}"
+
+ oIFS=$IFS
+ # Some sh's can't handle IFS=/ for some reason.
+ IFS='%'
+ set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+ shift
+ IFS=$oIFS
+
+ pathcomp=
+
+ while test $# -ne 0 ; do
+ pathcomp=$pathcomp$1
+ shift
+ if test ! -d "$pathcomp"; then
+ $mkdirprog "$pathcomp"
+ # mkdir can fail with a `File exist' error in case several
+ # install-sh are creating the directory concurrently. This
+ # is OK.
+ test -d "$pathcomp" || exit
+ fi
+ pathcomp=$pathcomp/
+ done
+ fi
+
+ if test -n "$dir_arg"; then
+ $doit $mkdircmd "$dst" \
+ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
+
+ else
+ dstfile=`basename "$dst"`
+
+ # Make a couple of temp file names in the proper directory.
+ dsttmp=$dstdir/_inst.$$_
+ rmtmp=$dstdir/_rm.$$_
+
+ # Trap to clean up those temp files at exit.
+ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Copy the file name to the temp name.
+ $doit $cpprog "$src" "$dsttmp" &&
+
+ # and set any options; do chmod last to preserve setuid bits.
+ #
+ # If any of these fail, we abort the whole thing. If we want to
+ # ignore errors from any of these, just make sure not to ignore
+ # errors from the above "$doit $cpprog $src $dsttmp" command.
+ #
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
+
+ # Now rename the file to the real destination.
+ { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
+ || {
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ if test -f "$dstdir/$dstfile"; then
+ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+ || {
+ echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+ (exit 1); exit 1
+ }
+ else
+ :
+ fi
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+ }
+ }
+ fi || { (exit 1); exit 1; }
+done
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+{
+ (exit 0); exit 0
+}
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/libsigsegv/build-aux/ltmain.sh b/libsigsegv/build-aux/ltmain.sh
new file mode 100755
index 00000000..b36c4ad3
--- /dev/null
+++ b/libsigsegv/build-aux/ltmain.sh
@@ -0,0 +1,8406 @@
+# Generated from ltmain.m4sh.
+
+# ltmain.sh (GNU libtool) 2.2.6
+# Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions. There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool 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 of the License, or
+# (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# Usage: $progname [OPTION]... [MODE-ARG]...
+#
+# Provide generalized library-building support services.
+#
+# --config show all configuration variables
+# --debug enable verbose shell tracing
+# -n, --dry-run display commands without modifying any files
+# --features display basic configuration information and exit
+# --mode=MODE use operation mode MODE
+# --preserve-dup-deps don't remove duplicate dependency libraries
+# --quiet, --silent don't print informational messages
+# --tag=TAG use configuration variables from tag TAG
+# -v, --verbose print informational messages (default)
+# --version print version information
+# -h, --help print short or long help message
+#
+# MODE must be one of the following:
+#
+# clean remove files from the build directory
+# compile compile a source file into a libtool object
+# execute automatically set library path, then run a program
+# finish complete the installation of libtool libraries
+# install install libraries or executables
+# link create a library or an executable
+# uninstall remove libraries from an installed directory
+#
+# MODE-ARGS vary depending on the MODE.
+# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
+#
+# When reporting a bug, please describe a test case to reproduce it and
+# include the following information:
+#
+# host-triplet: $host
+# shell: $SHELL
+# compiler: $LTCC
+# compiler flags: $LTCFLAGS
+# linker: $LD (gnu? $with_gnu_ld)
+# $progname: (GNU libtool) 2.2.6
+# automake: $automake_version
+# autoconf: $autoconf_version
+#
+# Report bugs to <bug-libtool@gnu.org>.
+
+PROGRAM=ltmain.sh
+PACKAGE=libtool
+VERSION=2.2.6
+TIMESTAMP=""
+package_revision=1.3012
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# NLS nuisances: We save the old values to restore during execute mode.
+# Only set LANG and LC_ALL to C if already set.
+# These must not be set unconditionally because not all systems understand
+# e.g. LANG=C (notably SCO).
+lt_user_locale=
+lt_safe_locale=
+for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+do
+ eval "if test \"\${$lt_var+set}\" = set; then
+ save_$lt_var=\$$lt_var
+ $lt_var=C
+ export $lt_var
+ lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
+ lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
+ fi"
+done
+
+$lt_unset CDPATH
+
+
+
+
+
+: ${CP="cp -f"}
+: ${ECHO="echo"}
+: ${EGREP="/usr/bin/grep -E"}
+: ${FGREP="/usr/bin/grep -F"}
+: ${GREP="/usr/bin/grep"}
+: ${LN_S="ln -s"}
+: ${MAKE="make"}
+: ${MKDIR="mkdir"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+: ${SED="/opt/local/bin/gsed"}
+: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
+: ${Xsed="$SED -e 1s/^X//"}
+
+# Global variables:
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing.
+EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake.
+
+exit_status=$EXIT_SUCCESS
+
+# Make sure IFS has a sensible default
+lt_nl='
+'
+IFS=" $lt_nl"
+
+dirname="s,/[^/]*$,,"
+basename="s,^.*/,,"
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+# Generated shell functions inserted here.
+
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
+# is ksh but when the shell is invoked as "sh" and the current value of
+# the _XPG environment variable is not equal to 1 (one), the special
+# positional parameter $0, within a function call, is the name of the
+# function.
+progpath="$0"
+
+# The name of this program:
+# In the unlikely event $progname began with a '-', it would play havoc with
+# func_echo (imagine progname=-n), so we prepend ./ in that case:
+func_dirname_and_basename "$progpath"
+progname=$func_basename_result
+case $progname in
+ -*) progname=./$progname ;;
+esac
+
+# Make sure we have an absolute path for reexecution:
+case $progpath in
+ [\\/]*|[A-Za-z]:\\*) ;;
+ *[\\/]*)
+ progdir=$func_dirname_result
+ progdir=`cd "$progdir" && pwd`
+ progpath="$progdir/$progname"
+ ;;
+ *)
+ save_IFS="$IFS"
+ IFS=:
+ for progdir in $PATH; do
+ IFS="$save_IFS"
+ test -x "$progdir/$progname" && break
+ done
+ IFS="$save_IFS"
+ test -n "$progdir" || progdir=`pwd`
+ progpath="$progdir/$progname"
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed="${SED}"' -e 1s/^X//'
+sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\(["`\\]\)/\\\1/g'
+
+# Re-`\' parameter expansions in output of double_quote_subst that were
+# `\'-ed in input to the same. If an odd number of `\' preceded a '$'
+# in input to double_quote_subst, that '$' was protected from expansion.
+# Since each input `\' is now two `\'s, look for any number of runs of
+# four `\'s followed by two `\'s and then a '$'. `\' that '$'.
+bs='\\'
+bs2='\\\\'
+bs4='\\\\\\\\'
+dollar='\$'
+sed_double_backslash="\
+ s/$bs4/&\\
+/g
+ s/^$bs2$dollar/$bs&/
+ s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
+ s/\n//g"
+
+# Standard options:
+opt_dry_run=false
+opt_help=false
+opt_quiet=false
+opt_verbose=false
+opt_warning=:
+
+# func_echo arg...
+# Echo program name prefixed message, along with the current mode
+# name if it has been set yet.
+func_echo ()
+{
+ $ECHO "$progname${mode+: }$mode: $*"
+}
+
+# func_verbose arg...
+# Echo program name prefixed message in verbose mode only.
+func_verbose ()
+{
+ $opt_verbose && func_echo ${1+"$@"}
+
+ # A bug in bash halts the script if the last line of a function
+ # fails when set -e is in force, so we need another command to
+ # work around that:
+ :
+}
+
+# func_error arg...
+# Echo program name prefixed message to standard error.
+func_error ()
+{
+ $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2
+}
+
+# func_warning arg...
+# Echo program name prefixed warning message to standard error.
+func_warning ()
+{
+ $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2
+
+ # bash bug again:
+ :
+}
+
+# func_fatal_error arg...
+# Echo program name prefixed message to standard error, and exit.
+func_fatal_error ()
+{
+ func_error ${1+"$@"}
+ exit $EXIT_FAILURE
+}
+
+# func_fatal_help arg...
+# Echo program name prefixed message to standard error, followed by
+# a help hint, and exit.
+func_fatal_help ()
+{
+ func_error ${1+"$@"}
+ func_fatal_error "$help"
+}
+help="Try \`$progname --help' for more information." ## default
+
+
+# func_grep expression filename
+# Check whether EXPRESSION matches any line of FILENAME, without output.
+func_grep ()
+{
+ $GREP "$1" "$2" >/dev/null 2>&1
+}
+
+
+# func_mkdir_p directory-path
+# Make sure the entire path to DIRECTORY-PATH is available.
+func_mkdir_p ()
+{
+ my_directory_path="$1"
+ my_dir_list=
+
+ if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
+
+ # Protect directory names starting with `-'
+ case $my_directory_path in
+ -*) my_directory_path="./$my_directory_path" ;;
+ esac
+
+ # While some portion of DIR does not yet exist...
+ while test ! -d "$my_directory_path"; do
+ # ...make a list in topmost first order. Use a colon delimited
+ # list incase some portion of path contains whitespace.
+ my_dir_list="$my_directory_path:$my_dir_list"
+
+ # If the last portion added has no slash in it, the list is done
+ case $my_directory_path in */*) ;; *) break ;; esac
+
+ # ...otherwise throw away the child directory and loop
+ my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"`
+ done
+ my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'`
+
+ save_mkdir_p_IFS="$IFS"; IFS=':'
+ for my_dir in $my_dir_list; do
+ IFS="$save_mkdir_p_IFS"
+ # mkdir can fail with a `File exist' error if two processes
+ # try to create one of the directories concurrently. Don't
+ # stop in that case!
+ $MKDIR "$my_dir" 2>/dev/null || :
+ done
+ IFS="$save_mkdir_p_IFS"
+
+ # Bail out if we (or some other process) failed to create a directory.
+ test -d "$my_directory_path" || \
+ func_fatal_error "Failed to create \`$1'"
+ fi
+}
+
+
+# func_mktempdir [string]
+# Make a temporary directory that won't clash with other running
+# libtool processes, and avoids race conditions if possible. If
+# given, STRING is the basename for that directory.
+func_mktempdir ()
+{
+ my_template="${TMPDIR-/tmp}/${1-$progname}"
+
+ if test "$opt_dry_run" = ":"; then
+ # Return a directory name, but don't create it in dry-run mode
+ my_tmpdir="${my_template}-$$"
+ else
+
+ # If mktemp works, use that first and foremost
+ my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
+
+ if test ! -d "$my_tmpdir"; then
+ # Failing that, at least try and use $RANDOM to avoid a race
+ my_tmpdir="${my_template}-${RANDOM-0}$$"
+
+ save_mktempdir_umask=`umask`
+ umask 0077
+ $MKDIR "$my_tmpdir"
+ umask $save_mktempdir_umask
+ fi
+
+ # If we're not in dry-run mode, bomb out on failure
+ test -d "$my_tmpdir" || \
+ func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
+ fi
+
+ $ECHO "X$my_tmpdir" | $Xsed
+}
+
+
+# func_quote_for_eval arg
+# Aesthetically quote ARG to be evaled later.
+# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
+# is double-quoted, suitable for a subsequent eval, whereas
+# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
+# which are still active within double quotes backslashified.
+func_quote_for_eval ()
+{
+ case $1 in
+ *[\\\`\"\$]*)
+ func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;;
+ *)
+ func_quote_for_eval_unquoted_result="$1" ;;
+ esac
+
+ case $func_quote_for_eval_unquoted_result in
+ # Double-quote args containing shell metacharacters to delay
+ # word splitting, command substitution and and variable
+ # expansion for a subsequent eval.
+ # Many Bourne shells cannot handle close brackets correctly
+ # in scan sets, so we specify it separately.
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
+ ;;
+ *)
+ func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
+ esac
+}
+
+
+# func_quote_for_expand arg
+# Aesthetically quote ARG to be evaled later; same as above,
+# but do not quote variable references.
+func_quote_for_expand ()
+{
+ case $1 in
+ *[\\\`\"]*)
+ my_arg=`$ECHO "X$1" | $Xsed \
+ -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
+ *)
+ my_arg="$1" ;;
+ esac
+
+ case $my_arg in
+ # Double-quote args containing shell metacharacters to delay
+ # word splitting and command substitution for a subsequent eval.
+ # Many Bourne shells cannot handle close brackets correctly
+ # in scan sets, so we specify it separately.
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ my_arg="\"$my_arg\""
+ ;;
+ esac
+
+ func_quote_for_expand_result="$my_arg"
+}
+
+
+# func_show_eval cmd [fail_exp]
+# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
+# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.
+func_show_eval ()
+{
+ my_cmd="$1"
+ my_fail_exp="${2-:}"
+
+ ${opt_silent-false} || {
+ func_quote_for_expand "$my_cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+
+ if ${opt_dry_run-false}; then :; else
+ eval "$my_cmd"
+ my_status=$?
+ if test "$my_status" -eq 0; then :; else
+ eval "(exit $my_status); $my_fail_exp"
+ fi
+ fi
+}
+
+
+# func_show_eval_locale cmd [fail_exp]
+# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
+# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it. Use the saved locale for evaluation.
+func_show_eval_locale ()
+{
+ my_cmd="$1"
+ my_fail_exp="${2-:}"
+
+ ${opt_silent-false} || {
+ func_quote_for_expand "$my_cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+
+ if ${opt_dry_run-false}; then :; else
+ eval "$lt_user_locale
+ $my_cmd"
+ my_status=$?
+ eval "$lt_safe_locale"
+ if test "$my_status" -eq 0; then :; else
+ eval "(exit $my_status); $my_fail_exp"
+ fi
+ fi
+}
+
+
+
+
+
+# func_version
+# Echo version message to standard output and exit.
+func_version ()
+{
+ $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / {
+ s/^# //
+ s/^# *$//
+ s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
+ p
+ }' < "$progpath"
+ exit $?
+}
+
+# func_usage
+# Echo short help message to standard output and exit.
+func_usage ()
+{
+ $SED -n '/^# Usage:/,/# -h/ {
+ s/^# //
+ s/^# *$//
+ s/\$progname/'$progname'/
+ p
+ }' < "$progpath"
+ $ECHO
+ $ECHO "run \`$progname --help | more' for full usage"
+ exit $?
+}
+
+# func_help
+# Echo long help message to standard output and exit.
+func_help ()
+{
+ $SED -n '/^# Usage:/,/# Report bugs to/ {
+ s/^# //
+ s/^# *$//
+ s*\$progname*'$progname'*
+ s*\$host*'"$host"'*
+ s*\$SHELL*'"$SHELL"'*
+ s*\$LTCC*'"$LTCC"'*
+ s*\$LTCFLAGS*'"$LTCFLAGS"'*
+ s*\$LD*'"$LD"'*
+ s/\$with_gnu_ld/'"$with_gnu_ld"'/
+ s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/
+ s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/
+ p
+ }' < "$progpath"
+ exit $?
+}
+
+# func_missing_arg argname
+# Echo program name prefixed message to standard error and set global
+# exit_cmd.
+func_missing_arg ()
+{
+ func_error "missing argument for $1"
+ exit_cmd=exit
+}
+
+exit_cmd=:
+
+
+
+
+
+# Check that we have a working $ECHO.
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X$1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell, and then maybe $ECHO will work.
+ exec $SHELL "$progpath" --no-reexec ${1+"$@"}
+fi
+
+if test "X$1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<EOF
+$*
+EOF
+ exit $EXIT_SUCCESS
+fi
+
+magic="%%%MAGIC variable%%%"
+magic_exe="%%%MAGIC EXE variable%%%"
+
+# Global variables.
+# $mode is unset
+nonopt=
+execute_dlfiles=
+preserve_args=
+lo2o="s/\\.lo\$/.${objext}/"
+o2lo="s/\\.${objext}\$/.lo/"
+extracted_archives=
+extracted_serial=0
+
+opt_dry_run=false
+opt_duplicate_deps=false
+opt_silent=false
+opt_debug=:
+
+# If this variable is set in any of the actions, the command in it
+# will be execed at the end. This prevents here-documents from being
+# left over by shells.
+exec_cmd=
+
+# func_fatal_configuration arg...
+# Echo program name prefixed message to standard error, followed by
+# a configuration failure hint, and exit.
+func_fatal_configuration ()
+{
+ func_error ${1+"$@"}
+ func_error "See the $PACKAGE documentation for more information."
+ func_fatal_error "Fatal configuration error."
+}
+
+
+# func_config
+# Display the configuration for all the tags in this script.
+func_config ()
+{
+ re_begincf='^# ### BEGIN LIBTOOL'
+ re_endcf='^# ### END LIBTOOL'
+
+ # Default configuration.
+ $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
+
+ # Now print the configurations for the tags.
+ for tagname in $taglist; do
+ $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
+ done
+
+ exit $?
+}
+
+# func_features
+# Display the features supported by this script.
+func_features ()
+{
+ $ECHO "host: $host"
+ if test "$build_libtool_libs" = yes; then
+ $ECHO "enable shared libraries"
+ else
+ $ECHO "disable shared libraries"
+ fi
+ if test "$build_old_libs" = yes; then
+ $ECHO "enable static libraries"
+ else
+ $ECHO "disable static libraries"
+ fi
+
+ exit $?
+}
+
+# func_enable_tag tagname
+# Verify that TAGNAME is valid, and either flag an error and exit, or
+# enable the TAGNAME tag. We also add TAGNAME to the global $taglist
+# variable here.
+func_enable_tag ()
+{
+ # Global variable:
+ tagname="$1"
+
+ re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
+ re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
+ sed_extractcf="/$re_begincf/,/$re_endcf/p"
+
+ # Validate tagname.
+ case $tagname in
+ *[!-_A-Za-z0-9,/]*)
+ func_fatal_error "invalid tag name: $tagname"
+ ;;
+ esac
+
+ # Don't test for the "default" C tag, as we know it's
+ # there but not specially marked.
+ case $tagname in
+ CC) ;;
+ *)
+ if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
+ taglist="$taglist $tagname"
+
+ # Evaluate the configuration. Be careful to quote the path
+ # and the sed script, to avoid splitting on whitespace, but
+ # also don't use non-portable quotes within backquotes within
+ # quotes we have to do it in 2 steps:
+ extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
+ eval "$extractedcf"
+ else
+ func_error "ignoring unknown tag $tagname"
+ fi
+ ;;
+ esac
+}
+
+# Parse options once, thoroughly. This comes as soon as possible in
+# the script to make things like `libtool --version' happen quickly.
+{
+
+ # Shorthand for --mode=foo, only valid as the first argument
+ case $1 in
+ clean|clea|cle|cl)
+ shift; set dummy --mode clean ${1+"$@"}; shift
+ ;;
+ compile|compil|compi|comp|com|co|c)
+ shift; set dummy --mode compile ${1+"$@"}; shift
+ ;;
+ execute|execut|execu|exec|exe|ex|e)
+ shift; set dummy --mode execute ${1+"$@"}; shift
+ ;;
+ finish|finis|fini|fin|fi|f)
+ shift; set dummy --mode finish ${1+"$@"}; shift
+ ;;
+ install|instal|insta|inst|ins|in|i)
+ shift; set dummy --mode install ${1+"$@"}; shift
+ ;;
+ link|lin|li|l)
+ shift; set dummy --mode link ${1+"$@"}; shift
+ ;;
+ uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+ shift; set dummy --mode uninstall ${1+"$@"}; shift
+ ;;
+ esac
+
+ # Parse non-mode specific arguments:
+ while test "$#" -gt 0; do
+ opt="$1"
+ shift
+
+ case $opt in
+ --config) func_config ;;
+
+ --debug) preserve_args="$preserve_args $opt"
+ func_echo "enabling shell trace mode"
+ opt_debug='set -x'
+ $opt_debug
+ ;;
+
+ -dlopen) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ execute_dlfiles="$execute_dlfiles $1"
+ shift
+ ;;
+
+ --dry-run | -n) opt_dry_run=: ;;
+ --features) func_features ;;
+ --finish) mode="finish" ;;
+
+ --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ case $1 in
+ # Valid mode arguments:
+ clean) ;;
+ compile) ;;
+ execute) ;;
+ finish) ;;
+ install) ;;
+ link) ;;
+ relink) ;;
+ uninstall) ;;
+
+ # Catch anything else as an error
+ *) func_error "invalid argument for $opt"
+ exit_cmd=exit
+ break
+ ;;
+ esac
+
+ mode="$1"
+ shift
+ ;;
+
+ --preserve-dup-deps)
+ opt_duplicate_deps=: ;;
+
+ --quiet|--silent) preserve_args="$preserve_args $opt"
+ opt_silent=:
+ ;;
+
+ --verbose| -v) preserve_args="$preserve_args $opt"
+ opt_silent=false
+ ;;
+
+ --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ preserve_args="$preserve_args $opt $1"
+ func_enable_tag "$1" # tagname is set here
+ shift
+ ;;
+
+ # Separate optargs to long options:
+ -dlopen=*|--mode=*|--tag=*)
+ func_opt_split "$opt"
+ set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}
+ shift
+ ;;
+
+ -\?|-h) func_usage ;;
+ --help) opt_help=: ;;
+ --version) func_version ;;
+
+ -*) func_fatal_help "unrecognized option \`$opt'" ;;
+
+ *) nonopt="$opt"
+ break
+ ;;
+ esac
+ done
+
+
+ case $host in
+ *cygwin* | *mingw* | *pw32* | *cegcc*)
+ # don't eliminate duplications in $postdeps and $predeps
+ opt_duplicate_compiler_generated_deps=:
+ ;;
+ *)
+ opt_duplicate_compiler_generated_deps=$opt_duplicate_deps
+ ;;
+ esac
+
+ # Having warned about all mis-specified options, bail out if
+ # anything was wrong.
+ $exit_cmd $EXIT_FAILURE
+}
+
+# func_check_version_match
+# Ensure that we are using m4 macros, and libtool script from the same
+# release of libtool.
+func_check_version_match ()
+{
+ if test "$package_revision" != "$macro_revision"; then
+ if test "$VERSION" != "$macro_version"; then
+ if test -z "$macro_version"; then
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from an older release.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+ else
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+ fi
+ else
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision,
+$progname: but the definition of this LT_INIT comes from revision $macro_revision.
+$progname: You should recreate aclocal.m4 with macros from revision $package_revision
+$progname: of $PACKAGE $VERSION and run autoconf again.
+_LT_EOF
+ fi
+
+ exit $EXIT_MISMATCH
+ fi
+}
+
+
+## ----------- ##
+## Main. ##
+## ----------- ##
+
+$opt_help || {
+ # Sanity checks first:
+ func_check_version_match
+
+ if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
+ func_fatal_configuration "not configured to build any kind of library"
+ fi
+
+ test -z "$mode" && func_fatal_error "error: you must specify a MODE."
+
+
+ # Darwin sucks
+ eval std_shrext=\"$shrext_cmds\"
+
+
+ # Only execute mode is allowed to have -dlopen flags.
+ if test -n "$execute_dlfiles" && test "$mode" != execute; then
+ func_error "unrecognized option \`-dlopen'"
+ $ECHO "$help" 1>&2
+ exit $EXIT_FAILURE
+ fi
+
+ # Change the help message to a mode-specific one.
+ generic_help="$help"
+ help="Try \`$progname --help --mode=$mode' for more information."
+}
+
+
+# func_lalib_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_lalib_p ()
+{
+ test -f "$1" &&
+ $SED -e 4q "$1" 2>/dev/null \
+ | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+}
+
+# func_lalib_unsafe_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function implements the same check as func_lalib_p without
+# resorting to external programs. To this end, it redirects stdin and
+# closes it afterwards, without saving the original file descriptor.
+# As a safety measure, use it only where a negative result would be
+# fatal anyway. Works if `file' does not exist.
+func_lalib_unsafe_p ()
+{
+ lalib_p=no
+ if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
+ for lalib_p_l in 1 2 3 4
+ do
+ read lalib_p_line
+ case "$lalib_p_line" in
+ \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
+ esac
+ done
+ exec 0<&5 5<&-
+ fi
+ test "$lalib_p" = yes
+}
+
+# func_ltwrapper_script_p file
+# True iff FILE is a libtool wrapper script
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_script_p ()
+{
+ func_lalib_p "$1"
+}
+
+# func_ltwrapper_executable_p file
+# True iff FILE is a libtool wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_executable_p ()
+{
+ func_ltwrapper_exec_suffix=
+ case $1 in
+ *.exe) ;;
+ *) func_ltwrapper_exec_suffix=.exe ;;
+ esac
+ $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
+}
+
+# func_ltwrapper_scriptname file
+# Assumes file is an ltwrapper_executable
+# uses $file to determine the appropriate filename for a
+# temporary ltwrapper_script.
+func_ltwrapper_scriptname ()
+{
+ func_ltwrapper_scriptname_result=""
+ if func_ltwrapper_executable_p "$1"; then
+ func_dirname_and_basename "$1" "" "."
+ func_stripname '' '.exe' "$func_basename_result"
+ func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
+ fi
+}
+
+# func_ltwrapper_p file
+# True iff FILE is a libtool wrapper script or wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_p ()
+{
+ func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
+}
+
+
+# func_execute_cmds commands fail_cmd
+# Execute tilde-delimited COMMANDS.
+# If FAIL_CMD is given, eval that upon failure.
+# FAIL_CMD may read-access the current command in variable CMD!
+func_execute_cmds ()
+{
+ $opt_debug
+ save_ifs=$IFS; IFS='~'
+ for cmd in $1; do
+ IFS=$save_ifs
+ eval cmd=\"$cmd\"
+ func_show_eval "$cmd" "${2-:}"
+ done
+ IFS=$save_ifs
+}
+
+
+# func_source file
+# Source FILE, adding directory component if necessary.
+# Note that it is not necessary on cygwin/mingw to append a dot to
+# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
+# behavior happens only for exec(3), not for open(2)! Also, sourcing
+# `FILE.' does not work on cygwin managed mounts.
+func_source ()
+{
+ $opt_debug
+ case $1 in
+ */* | *\\*) . "$1" ;;
+ *) . "./$1" ;;
+ esac
+}
+
+
+# func_infer_tag arg
+# Infer tagged configuration to use if any are available and
+# if one wasn't chosen via the "--tag" command line option.
+# Only attempt this if the compiler in the base compile
+# command doesn't match the default compiler.
+# arg is usually of the form 'gcc ...'
+func_infer_tag ()
+{
+ $opt_debug
+ if test -n "$available_tags" && test -z "$tagname"; then
+ CC_quoted=
+ for arg in $CC; do
+ func_quote_for_eval "$arg"
+ CC_quoted="$CC_quoted $func_quote_for_eval_result"
+ done
+ case $@ in
+ # Blanks in the command may have been stripped by the calling shell,
+ # but not from the CC environment variable when configure was run.
+ " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;
+ # Blanks at the start of $base_compile will cause this to fail
+ # if we don't check for them as well.
+ *)
+ for z in $available_tags; do
+ if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
+ # Evaluate the configuration.
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+ CC_quoted=
+ for arg in $CC; do
+ # Double-quote args containing other shell metacharacters.
+ func_quote_for_eval "$arg"
+ CC_quoted="$CC_quoted $func_quote_for_eval_result"
+ done
+ case "$@ " in
+ " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)
+ # The compiler in the base compile command matches
+ # the one in the tagged configuration.
+ # Assume this is the tagged configuration we want.
+ tagname=$z
+ break
+ ;;
+ esac
+ fi
+ done
+ # If $tagname still isn't set, then no tagged configuration
+ # was found and let the user know that the "--tag" command
+ # line option must be used.
+ if test -z "$tagname"; then
+ func_echo "unable to infer tagged configuration"
+ func_fatal_error "specify a tag with \`--tag'"
+# else
+# func_verbose "using $tagname tagged configuration"
+ fi
+ ;;
+ esac
+ fi
+}
+
+
+
+# func_write_libtool_object output_name pic_name nonpic_name
+# Create a libtool object file (analogous to a ".la" file),
+# but don't create it if we're doing a dry run.
+func_write_libtool_object ()
+{
+ write_libobj=${1}
+ if test "$build_libtool_libs" = yes; then
+ write_lobj=\'${2}\'
+ else
+ write_lobj=none
+ fi
+
+ if test "$build_old_libs" = yes; then
+ write_oldobj=\'${3}\'
+ else
+ write_oldobj=none
+ fi
+
+ $opt_dry_run || {
+ cat >${write_libobj}T <<EOF
+# $write_libobj - a libtool object file
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# Name of the PIC object.
+pic_object=$write_lobj
+
+# Name of the non-PIC object
+non_pic_object=$write_oldobj
+
+EOF
+ $MV "${write_libobj}T" "${write_libobj}"
+ }
+}
+
+# func_mode_compile arg...
+func_mode_compile ()
+{
+ $opt_debug
+ # Get the compilation command and the source file.
+ base_compile=
+ srcfile="$nonopt" # always keep a non-empty value in "srcfile"
+ suppress_opt=yes
+ suppress_output=
+ arg_mode=normal
+ libobj=
+ later=
+ pie_flag=
+
+ for arg
+ do
+ case $arg_mode in
+ arg )
+ # do not "continue". Instead, add this to base_compile
+ lastarg="$arg"
+ arg_mode=normal
+ ;;
+
+ target )
+ libobj="$arg"
+ arg_mode=normal
+ continue
+ ;;
+
+ normal )
+ # Accept any command-line options.
+ case $arg in
+ -o)
+ test -n "$libobj" && \
+ func_fatal_error "you cannot specify \`-o' more than once"
+ arg_mode=target
+ continue
+ ;;
+
+ -pie | -fpie | -fPIE)
+ pie_flag="$pie_flag $arg"
+ continue
+ ;;
+
+ -shared | -static | -prefer-pic | -prefer-non-pic)
+ later="$later $arg"
+ continue
+ ;;
+
+ -no-suppress)
+ suppress_opt=no
+ continue
+ ;;
+
+ -Xcompiler)
+ arg_mode=arg # the next one goes into the "base_compile" arg list
+ continue # The current "srcfile" will either be retained or
+ ;; # replaced later. I would guess that would be a bug.
+
+ -Wc,*)
+ func_stripname '-Wc,' '' "$arg"
+ args=$func_stripname_result
+ lastarg=
+ save_ifs="$IFS"; IFS=','
+ for arg in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$arg"
+ lastarg="$lastarg $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$lastarg"
+ lastarg=$func_stripname_result
+
+ # Add the arguments to base_compile.
+ base_compile="$base_compile $lastarg"
+ continue
+ ;;
+
+ *)
+ # Accept the current argument as the source file.
+ # The previous "srcfile" becomes the current argument.
+ #
+ lastarg="$srcfile"
+ srcfile="$arg"
+ ;;
+ esac # case $arg
+ ;;
+ esac # case $arg_mode
+
+ # Aesthetically quote the previous argument.
+ func_quote_for_eval "$lastarg"
+ base_compile="$base_compile $func_quote_for_eval_result"
+ done # for arg
+
+ case $arg_mode in
+ arg)
+ func_fatal_error "you must specify an argument for -Xcompile"
+ ;;
+ target)
+ func_fatal_error "you must specify a target with \`-o'"
+ ;;
+ *)
+ # Get the name of the library object.
+ test -z "$libobj" && {
+ func_basename "$srcfile"
+ libobj="$func_basename_result"
+ }
+ ;;
+ esac
+
+ # Recognize several different file suffixes.
+ # If the user specifies -o file.o, it is replaced with file.lo
+ case $libobj in
+ *.[cCFSifmso] | \
+ *.ada | *.adb | *.ads | *.asm | \
+ *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
+ *.[fF][09]? | *.for | *.java | *.obj | *.sx)
+ func_xform "$libobj"
+ libobj=$func_xform_result
+ ;;
+ esac
+
+ case $libobj in
+ *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
+ *)
+ func_fatal_error "cannot determine name of library object from \`$libobj'"
+ ;;
+ esac
+
+ func_infer_tag $base_compile
+
+ for arg in $later; do
+ case $arg in
+ -shared)
+ test "$build_libtool_libs" != yes && \
+ func_fatal_configuration "can not build a shared library"
+ build_old_libs=no
+ continue
+ ;;
+
+ -static)
+ build_libtool_libs=no
+ build_old_libs=yes
+ continue
+ ;;
+
+ -prefer-pic)
+ pic_mode=yes
+ continue
+ ;;
+
+ -prefer-non-pic)
+ pic_mode=no
+ continue
+ ;;
+ esac
+ done
+
+ func_quote_for_eval "$libobj"
+ test "X$libobj" != "X$func_quote_for_eval_result" \
+ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
+ && func_warning "libobj name \`$libobj' may not contain shell special characters."
+ func_dirname_and_basename "$obj" "/" ""
+ objname="$func_basename_result"
+ xdir="$func_dirname_result"
+ lobj=${xdir}$objdir/$objname
+
+ test -z "$base_compile" && \
+ func_fatal_help "you must specify a compilation command"
+
+ # Delete any leftover library objects.
+ if test "$build_old_libs" = yes; then
+ removelist="$obj $lobj $libobj ${libobj}T"
+ else
+ removelist="$lobj $libobj ${libobj}T"
+ fi
+
+ # On Cygwin there's no "real" PIC flag so we must build both object types
+ case $host_os in
+ cygwin* | mingw* | pw32* | os2* | cegcc*)
+ pic_mode=default
+ ;;
+ esac
+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+ # non-PIC code in shared libraries is not supported
+ pic_mode=default
+ fi
+
+ # Calculate the filename of the output object if compiler does
+ # not support -o with -c
+ if test "$compiler_c_o" = no; then
+ output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
+ lockfile="$output_obj.lock"
+ else
+ output_obj=
+ need_locks=no
+ lockfile=
+ fi
+
+ # Lock this critical section if it is needed
+ # We use this script file to make the link, it avoids creating a new file
+ if test "$need_locks" = yes; then
+ until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
+ func_echo "Waiting for $lockfile to be removed"
+ sleep 2
+ done
+ elif test "$need_locks" = warn; then
+ if test -f "$lockfile"; then
+ $ECHO "\
+*** ERROR, $lockfile exists and contains:
+`cat $lockfile 2>/dev/null`
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+ removelist="$removelist $output_obj"
+ $ECHO "$srcfile" > "$lockfile"
+ fi
+
+ $opt_dry_run || $RM $removelist
+ removelist="$removelist $lockfile"
+ trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
+
+ if test -n "$fix_srcfile_path"; then
+ eval srcfile=\"$fix_srcfile_path\"
+ fi
+ func_quote_for_eval "$srcfile"
+ qsrcfile=$func_quote_for_eval_result
+
+ # Only build a PIC object if we are building libtool libraries.
+ if test "$build_libtool_libs" = yes; then
+ # Without this assignment, base_compile gets emptied.
+ fbsd_hideous_sh_bug=$base_compile
+
+ if test "$pic_mode" != no; then
+ command="$base_compile $qsrcfile $pic_flag"
+ else
+ # Don't build PIC code
+ command="$base_compile $qsrcfile"
+ fi
+
+ func_mkdir_p "$xdir$objdir"
+
+ if test -z "$output_obj"; then
+ # Place PIC objects in $objdir
+ command="$command -o $lobj"
+ fi
+
+ func_show_eval_locale "$command" \
+ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
+
+ if test "$need_locks" = warn &&
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+ $ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+
+ # Just move the object if needed, then go on to compile the next one
+ if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
+ func_show_eval '$MV "$output_obj" "$lobj"' \
+ 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+ fi
+
+ # Allow error messages only from the first compilation.
+ if test "$suppress_opt" = yes; then
+ suppress_output=' >/dev/null 2>&1'
+ fi
+ fi
+
+ # Only build a position-dependent object if we build old libraries.
+ if test "$build_old_libs" = yes; then
+ if test "$pic_mode" != yes; then
+ # Don't build PIC code
+ command="$base_compile $qsrcfile$pie_flag"
+ else
+ command="$base_compile $qsrcfile $pic_flag"
+ fi
+ if test "$compiler_c_o" = yes; then
+ command="$command -o $obj"
+ fi
+
+ # Suppress compiler output if we already did a PIC compilation.
+ command="$command$suppress_output"
+ func_show_eval_locale "$command" \
+ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
+
+ if test "$need_locks" = warn &&
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+ $ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+
+ # Just move the object if needed
+ if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
+ func_show_eval '$MV "$output_obj" "$obj"' \
+ 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+ fi
+ fi
+
+ $opt_dry_run || {
+ func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
+
+ # Unlock the critical section if it was locked
+ if test "$need_locks" != no; then
+ removelist=$lockfile
+ $RM "$lockfile"
+ fi
+ }
+
+ exit $EXIT_SUCCESS
+}
+
+$opt_help || {
+test "$mode" = compile && func_mode_compile ${1+"$@"}
+}
+
+func_mode_help ()
+{
+ # We need to display help for each of the modes.
+ case $mode in
+ "")
+ # Generic help is extracted from the usage comments
+ # at the start of this file.
+ func_help
+ ;;
+
+ clean)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
+
+Remove files from the build directory.
+
+RM is the name of the program to use to delete files associated with each FILE
+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
+to RM.
+
+If FILE is a libtool library, object or program, all the files associated
+with it are deleted. Otherwise, only FILE itself is deleted using RM."
+ ;;
+
+ compile)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
+
+Compile a source file into a libtool library object.
+
+This mode accepts the following additional options:
+
+ -o OUTPUT-FILE set the output file name to OUTPUT-FILE
+ -no-suppress do not suppress compiler output for multiple passes
+ -prefer-pic try to building PIC objects only
+ -prefer-non-pic try to building non-PIC objects only
+ -shared do not build a \`.o' file suitable for static linking
+ -static only build a \`.o' file suitable for static linking
+
+COMPILE-COMMAND is a command to be used in creating a \`standard' object file
+from the given SOURCEFILE.
+
+The output file name is determined by removing the directory component from
+SOURCEFILE, then substituting the C source code suffix \`.c' with the
+library object suffix, \`.lo'."
+ ;;
+
+ execute)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
+
+Automatically set library path, then run a program.
+
+This mode accepts the following additional options:
+
+ -dlopen FILE add the directory containing FILE to the library path
+
+This mode sets the library path environment variable according to \`-dlopen'
+flags.
+
+If any of the ARGS are libtool executable wrappers, then they are translated
+into their corresponding uninstalled binary, and any of their required library
+directories are added to the library path.
+
+Then, COMMAND is executed, with ARGS as arguments."
+ ;;
+
+ finish)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
+
+Complete the installation of libtool libraries.
+
+Each LIBDIR is a directory that contains libtool libraries.
+
+The commands that this mode executes may require superuser privileges. Use
+the \`--dry-run' option if you just want to see what would be executed."
+ ;;
+
+ install)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
+
+Install executables or libraries.
+
+INSTALL-COMMAND is the installation command. The first component should be
+either the \`install' or \`cp' program.
+
+The following components of INSTALL-COMMAND are treated specially:
+
+ -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation
+
+The rest of the components are interpreted as arguments to that command (only
+BSD-compatible install options are recognized)."
+ ;;
+
+ link)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
+
+Link object files or libraries together to form another library, or to
+create an executable program.
+
+LINK-COMMAND is a command using the C compiler that you would use to create
+a program from several object files.
+
+The following components of LINK-COMMAND are treated specially:
+
+ -all-static do not do any dynamic linking at all
+ -avoid-version do not add a version suffix if possible
+ -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
+ -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
+ -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
+ -export-symbols SYMFILE
+ try to export only the symbols listed in SYMFILE
+ -export-symbols-regex REGEX
+ try to export only the symbols matching REGEX
+ -LLIBDIR search LIBDIR for required installed libraries
+ -lNAME OUTPUT-FILE requires the installed library libNAME
+ -module build a library that can dlopened
+ -no-fast-install disable the fast-install mode
+ -no-install link a not-installable executable
+ -no-undefined declare that a library does not refer to external symbols
+ -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
+ -objectlist FILE Use a list of object files found in FILE to specify objects
+ -precious-files-regex REGEX
+ don't remove output files matching REGEX
+ -release RELEASE specify package release information
+ -rpath LIBDIR the created library will eventually be installed in LIBDIR
+ -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
+ -shared only do dynamic linking of libtool libraries
+ -shrext SUFFIX override the standard shared library file extension
+ -static do not do any dynamic linking of uninstalled libtool libraries
+ -static-libtool-libs
+ do not do any dynamic linking of libtool libraries
+ -version-info CURRENT[:REVISION[:AGE]]
+ specify library version info [each variable defaults to 0]
+ -weak LIBNAME declare that the target provides the LIBNAME interface
+
+All other options (arguments beginning with \`-') are ignored.
+
+Every other argument is treated as a filename. Files ending in \`.la' are
+treated as uninstalled libtool libraries, other files are standard or library
+object files.
+
+If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
+only library objects (\`.lo' files) may be specified, and \`-rpath' is
+required, except when creating a convenience library.
+
+If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
+using \`ar' and \`ranlib', or on Windows using \`lib'.
+
+If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
+is created, otherwise an executable program is created."
+ ;;
+
+ uninstall)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
+
+Remove libraries from an installation directory.
+
+RM is the name of the program to use to delete files associated with each FILE
+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
+to RM.
+
+If FILE is a libtool library, all the files associated with it are deleted.
+Otherwise, only FILE itself is deleted using RM."
+ ;;
+
+ *)
+ func_fatal_help "invalid operation mode \`$mode'"
+ ;;
+ esac
+
+ $ECHO
+ $ECHO "Try \`$progname --help' for more information about other modes."
+
+ exit $?
+}
+
+ # Now that we've collected a possible --mode arg, show help if necessary
+ $opt_help && func_mode_help
+
+
+# func_mode_execute arg...
+func_mode_execute ()
+{
+ $opt_debug
+ # The first argument is the command name.
+ cmd="$nonopt"
+ test -z "$cmd" && \
+ func_fatal_help "you must specify a COMMAND"
+
+ # Handle -dlopen flags immediately.
+ for file in $execute_dlfiles; do
+ test -f "$file" \
+ || func_fatal_help "\`$file' is not a file"
+
+ dir=
+ case $file in
+ *.la)
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$file" \
+ || func_fatal_help "\`$lib' is not a valid libtool archive"
+
+ # Read the libtool library.
+ dlname=
+ library_names=
+ func_source "$file"
+
+ # Skip this library if it cannot be dlopened.
+ if test -z "$dlname"; then
+ # Warn if it was a shared library.
+ test -n "$library_names" && \
+ func_warning "\`$file' was not linked with \`-export-dynamic'"
+ continue
+ fi
+
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+
+ if test -f "$dir/$objdir/$dlname"; then
+ dir="$dir/$objdir"
+ else
+ if test ! -f "$dir/$dlname"; then
+ func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
+ fi
+ fi
+ ;;
+
+ *.lo)
+ # Just add the directory containing the .lo file.
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+ ;;
+
+ *)
+ func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
+ continue
+ ;;
+ esac
+
+ # Get the absolute pathname.
+ absdir=`cd "$dir" && pwd`
+ test -n "$absdir" && dir="$absdir"
+
+ # Now add the directory to shlibpath_var.
+ if eval "test -z \"\$$shlibpath_var\""; then
+ eval "$shlibpath_var=\"\$dir\""
+ else
+ eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
+ fi
+ done
+
+ # This variable tells wrapper scripts just to set shlibpath_var
+ # rather than running their programs.
+ libtool_execute_magic="$magic"
+
+ # Check if any of the arguments is a wrapper script.
+ args=
+ for file
+ do
+ case $file in
+ -*) ;;
+ *)
+ # Do a test to see if this is really a libtool program.
+ if func_ltwrapper_script_p "$file"; then
+ func_source "$file"
+ # Transform arg to wrapped name.
+ file="$progdir/$program"
+ elif func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ func_source "$func_ltwrapper_scriptname_result"
+ # Transform arg to wrapped name.
+ file="$progdir/$program"
+ fi
+ ;;
+ esac
+ # Quote arguments (to preserve shell metacharacters).
+ func_quote_for_eval "$file"
+ args="$args $func_quote_for_eval_result"
+ done
+
+ if test "X$opt_dry_run" = Xfalse; then
+ if test -n "$shlibpath_var"; then
+ # Export the shlibpath_var.
+ eval "export $shlibpath_var"
+ fi
+
+ # Restore saved environment variables
+ for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+ do
+ eval "if test \"\${save_$lt_var+set}\" = set; then
+ $lt_var=\$save_$lt_var; export $lt_var
+ else
+ $lt_unset $lt_var
+ fi"
+ done
+
+ # Now prepare to actually exec the command.
+ exec_cmd="\$cmd$args"
+ else
+ # Display what would be done.
+ if test -n "$shlibpath_var"; then
+ eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
+ $ECHO "export $shlibpath_var"
+ fi
+ $ECHO "$cmd$args"
+ exit $EXIT_SUCCESS
+ fi
+}
+
+test "$mode" = execute && func_mode_execute ${1+"$@"}
+
+
+# func_mode_finish arg...
+func_mode_finish ()
+{
+ $opt_debug
+ libdirs="$nonopt"
+ admincmds=
+
+ if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
+ for dir
+ do
+ libdirs="$libdirs $dir"
+ done
+
+ for libdir in $libdirs; do
+ if test -n "$finish_cmds"; then
+ # Do each command in the finish commands.
+ func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
+'"$cmd"'"'
+ fi
+ if test -n "$finish_eval"; then
+ # Do the single finish_eval.
+ eval cmds=\"$finish_eval\"
+ $opt_dry_run || eval "$cmds" || admincmds="$admincmds
+ $cmds"
+ fi
+ done
+ fi
+
+ # Exit here if they wanted silent mode.
+ $opt_silent && exit $EXIT_SUCCESS
+
+ $ECHO "X----------------------------------------------------------------------" | $Xsed
+ $ECHO "Libraries have been installed in:"
+ for libdir in $libdirs; do
+ $ECHO " $libdir"
+ done
+ $ECHO
+ $ECHO "If you ever happen to want to link against installed libraries"
+ $ECHO "in a given directory, LIBDIR, you must either use libtool, and"
+ $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'"
+ $ECHO "flag during linking and do at least one of the following:"
+ if test -n "$shlibpath_var"; then
+ $ECHO " - add LIBDIR to the \`$shlibpath_var' environment variable"
+ $ECHO " during execution"
+ fi
+ if test -n "$runpath_var"; then
+ $ECHO " - add LIBDIR to the \`$runpath_var' environment variable"
+ $ECHO " during linking"
+ fi
+ if test -n "$hardcode_libdir_flag_spec"; then
+ libdir=LIBDIR
+ eval flag=\"$hardcode_libdir_flag_spec\"
+
+ $ECHO " - use the \`$flag' linker flag"
+ fi
+ if test -n "$admincmds"; then
+ $ECHO " - have your system administrator run these commands:$admincmds"
+ fi
+ if test -f /etc/ld.so.conf; then
+ $ECHO " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
+ fi
+ $ECHO
+
+ $ECHO "See any operating system documentation about shared libraries for"
+ case $host in
+ solaris2.[6789]|solaris2.1[0-9])
+ $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual"
+ $ECHO "pages."
+ ;;
+ *)
+ $ECHO "more information, such as the ld(1) and ld.so(8) manual pages."
+ ;;
+ esac
+ $ECHO "X----------------------------------------------------------------------" | $Xsed
+ exit $EXIT_SUCCESS
+}
+
+test "$mode" = finish && func_mode_finish ${1+"$@"}
+
+
+# func_mode_install arg...
+func_mode_install ()
+{
+ $opt_debug
+ # There may be an optional sh(1) argument at the beginning of
+ # install_prog (especially on Windows NT).
+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
+ # Allow the use of GNU shtool's install command.
+ $ECHO "X$nonopt" | $GREP shtool >/dev/null; then
+ # Aesthetically quote it.
+ func_quote_for_eval "$nonopt"
+ install_prog="$func_quote_for_eval_result "
+ arg=$1
+ shift
+ else
+ install_prog=
+ arg=$nonopt
+ fi
+
+ # The real first argument should be the name of the installation program.
+ # Aesthetically quote it.
+ func_quote_for_eval "$arg"
+ install_prog="$install_prog$func_quote_for_eval_result"
+
+ # We need to accept at least all the BSD install flags.
+ dest=
+ files=
+ opts=
+ prev=
+ install_type=
+ isdir=no
+ stripme=
+ for arg
+ do
+ if test -n "$dest"; then
+ files="$files $dest"
+ dest=$arg
+ continue
+ fi
+
+ case $arg in
+ -d) isdir=yes ;;
+ -f)
+ case " $install_prog " in
+ *[\\\ /]cp\ *) ;;
+ *) prev=$arg ;;
+ esac
+ ;;
+ -g | -m | -o)
+ prev=$arg
+ ;;
+ -s)
+ stripme=" -s"
+ continue
+ ;;
+ -*)
+ ;;
+ *)
+ # If the previous option needed an argument, then skip it.
+ if test -n "$prev"; then
+ prev=
+ else
+ dest=$arg
+ continue
+ fi
+ ;;
+ esac
+
+ # Aesthetically quote the argument.
+ func_quote_for_eval "$arg"
+ install_prog="$install_prog $func_quote_for_eval_result"
+ done
+
+ test -z "$install_prog" && \
+ func_fatal_help "you must specify an install program"
+
+ test -n "$prev" && \
+ func_fatal_help "the \`$prev' option requires an argument"
+
+ if test -z "$files"; then
+ if test -z "$dest"; then
+ func_fatal_help "no file or destination specified"
+ else
+ func_fatal_help "you must specify a destination"
+ fi
+ fi
+
+ # Strip any trailing slash from the destination.
+ func_stripname '' '/' "$dest"
+ dest=$func_stripname_result
+
+ # Check to see that the destination is a directory.
+ test -d "$dest" && isdir=yes
+ if test "$isdir" = yes; then
+ destdir="$dest"
+ destname=
+ else
+ func_dirname_and_basename "$dest" "" "."
+ destdir="$func_dirname_result"
+ destname="$func_basename_result"
+
+ # Not a directory, so check to see that there is only one file specified.
+ set dummy $files; shift
+ test "$#" -gt 1 && \
+ func_fatal_help "\`$dest' is not a directory"
+ fi
+ case $destdir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ for file in $files; do
+ case $file in
+ *.lo) ;;
+ *)
+ func_fatal_help "\`$destdir' must be an absolute directory name"
+ ;;
+ esac
+ done
+ ;;
+ esac
+
+ # This variable tells wrapper scripts just to set variables rather
+ # than running their programs.
+ libtool_install_magic="$magic"
+
+ staticlibs=
+ future_libdirs=
+ current_libdirs=
+ for file in $files; do
+
+ # Do each installation.
+ case $file in
+ *.$libext)
+ # Do the static libraries later.
+ staticlibs="$staticlibs $file"
+ ;;
+
+ *.la)
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$file" \
+ || func_fatal_help "\`$file' is not a valid libtool archive"
+
+ library_names=
+ old_library=
+ relink_command=
+ func_source "$file"
+
+ # Add the libdir to current_libdirs if it is the destination.
+ if test "X$destdir" = "X$libdir"; then
+ case "$current_libdirs " in
+ *" $libdir "*) ;;
+ *) current_libdirs="$current_libdirs $libdir" ;;
+ esac
+ else
+ # Note the libdir as a future libdir.
+ case "$future_libdirs " in
+ *" $libdir "*) ;;
+ *) future_libdirs="$future_libdirs $libdir" ;;
+ esac
+ fi
+
+ func_dirname "$file" "/" ""
+ dir="$func_dirname_result"
+ dir="$dir$objdir"
+
+ if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+ test "$inst_prefix_dir" = "$destdir" && \
+ func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"`
+ fi
+
+ func_warning "relinking \`$file'"
+ func_show_eval "$relink_command" \
+ 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
+ fi
+
+ # See the names of the shared library.
+ set dummy $library_names; shift
+ if test -n "$1"; then
+ realname="$1"
+ shift
+
+ srcname="$realname"
+ test -n "$relink_command" && srcname="$realname"T
+
+ # Install the shared library and build the symlinks.
+ func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \
+ 'exit $?'
+ tstripme="$stripme"
+ case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ case $realname in
+ *.dll.a)
+ tstripme=""
+ ;;
+ esac
+ ;;
+ esac
+ if test -n "$tstripme" && test -n "$striplib"; then
+ func_show_eval "$striplib $destdir/$realname" 'exit $?'
+ fi
+
+ if test "$#" -gt 0; then
+ # Delete the old symlinks, and create new ones.
+ # Try `ln -sf' first, because the `ln' binary might depend on
+ # the symlink we replace! Solaris /bin/ln does not understand -f,
+ # so we also need to try rm && ln -s.
+ for linkname
+ do
+ test "$linkname" != "$realname" \
+ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
+ done
+ fi
+
+ # Do each command in the postinstall commands.
+ lib="$destdir/$realname"
+ func_execute_cmds "$postinstall_cmds" 'exit $?'
+ fi
+
+ # Install the pseudo-library for information purposes.
+ func_basename "$file"
+ name="$func_basename_result"
+ instname="$dir/$name"i
+ func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
+
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
+
+ *.lo)
+ # Install (i.e. copy) a libtool object.
+
+ # Figure out destination file name, if it wasn't already specified.
+ if test -n "$destname"; then
+ destfile="$destdir/$destname"
+ else
+ func_basename "$file"
+ destfile="$func_basename_result"
+ destfile="$destdir/$destfile"
+ fi
+
+ # Deduce the name of the destination old-style object file.
+ case $destfile in
+ *.lo)
+ func_lo2o "$destfile"
+ staticdest=$func_lo2o_result
+ ;;
+ *.$objext)
+ staticdest="$destfile"
+ destfile=
+ ;;
+ *)
+ func_fatal_help "cannot copy a libtool object to \`$destfile'"
+ ;;
+ esac
+
+ # Install the libtool object if requested.
+ test -n "$destfile" && \
+ func_show_eval "$install_prog $file $destfile" 'exit $?'
+
+ # Install the old object if enabled.
+ if test "$build_old_libs" = yes; then
+ # Deduce the name of the old-style object file.
+ func_lo2o "$file"
+ staticobj=$func_lo2o_result
+ func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
+ fi
+ exit $EXIT_SUCCESS
+ ;;
+
+ *)
+ # Figure out destination file name, if it wasn't already specified.
+ if test -n "$destname"; then
+ destfile="$destdir/$destname"
+ else
+ func_basename "$file"
+ destfile="$func_basename_result"
+ destfile="$destdir/$destfile"
+ fi
+
+ # If the file is missing, and there is a .exe on the end, strip it
+ # because it is most likely a libtool script we actually want to
+ # install
+ stripped_ext=""
+ case $file in
+ *.exe)
+ if test ! -f "$file"; then
+ func_stripname '' '.exe' "$file"
+ file=$func_stripname_result
+ stripped_ext=".exe"
+ fi
+ ;;
+ esac
+
+ # Do a test to see if this is really a libtool program.
+ case $host in
+ *cygwin* | *mingw*)
+ if func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ wrapper=$func_ltwrapper_scriptname_result
+ else
+ func_stripname '' '.exe' "$file"
+ wrapper=$func_stripname_result
+ fi
+ ;;
+ *)
+ wrapper=$file
+ ;;
+ esac
+ if func_ltwrapper_script_p "$wrapper"; then
+ notinst_deplibs=
+ relink_command=
+
+ func_source "$wrapper"
+
+ # Check the variables that should have been set.
+ test -z "$generated_by_libtool_version" && \
+ func_fatal_error "invalid libtool wrapper script \`$wrapper'"
+
+ finalize=yes
+ for lib in $notinst_deplibs; do
+ # Check to see that each library is installed.
+ libdir=
+ if test -f "$lib"; then
+ func_source "$lib"
+ fi
+ libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
+ if test -n "$libdir" && test ! -f "$libfile"; then
+ func_warning "\`$lib' has not been installed in \`$libdir'"
+ finalize=no
+ fi
+ done
+
+ relink_command=
+ func_source "$wrapper"
+
+ outputname=
+ if test "$fast_install" = no && test -n "$relink_command"; then
+ $opt_dry_run || {
+ if test "$finalize" = yes; then
+ tmpdir=`func_mktempdir`
+ func_basename "$file$stripped_ext"
+ file="$func_basename_result"
+ outputname="$tmpdir/$file"
+ # Replace the output file specification.
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
+
+ $opt_silent || {
+ func_quote_for_expand "$relink_command"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ if eval "$relink_command"; then :
+ else
+ func_error "error: relink \`$file' with the above command before installing it"
+ $opt_dry_run || ${RM}r "$tmpdir"
+ continue
+ fi
+ file="$outputname"
+ else
+ func_warning "cannot relink \`$file'"
+ fi
+ }
+ else
+ # Install the binary that we compiled earlier.
+ file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
+ fi
+ fi
+
+ # remove .exe since cygwin /usr/bin/install will append another
+ # one anyway
+ case $install_prog,$host in
+ */usr/bin/install*,*cygwin*)
+ case $file:$destfile in
+ *.exe:*.exe)
+ # this is ok
+ ;;
+ *.exe:*)
+ destfile=$destfile.exe
+ ;;
+ *:*.exe)
+ func_stripname '' '.exe' "$destfile"
+ destfile=$func_stripname_result
+ ;;
+ esac
+ ;;
+ esac
+ func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
+ $opt_dry_run || if test -n "$outputname"; then
+ ${RM}r "$tmpdir"
+ fi
+ ;;
+ esac
+ done
+
+ for file in $staticlibs; do
+ func_basename "$file"
+ name="$func_basename_result"
+
+ # Set up the ranlib parameters.
+ oldlib="$destdir/$name"
+
+ func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
+
+ if test -n "$stripme" && test -n "$old_striplib"; then
+ func_show_eval "$old_striplib $oldlib" 'exit $?'
+ fi
+
+ # Do each command in the postinstall commands.
+ func_execute_cmds "$old_postinstall_cmds" 'exit $?'
+ done
+
+ test -n "$future_libdirs" && \
+ func_warning "remember to run \`$progname --finish$future_libdirs'"
+
+ if test -n "$current_libdirs"; then
+ # Maybe just do a dry run.
+ $opt_dry_run && current_libdirs=" -n$current_libdirs"
+ exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
+ else
+ exit $EXIT_SUCCESS
+ fi
+}
+
+test "$mode" = install && func_mode_install ${1+"$@"}
+
+
+# func_generate_dlsyms outputname originator pic_p
+# Extract symbols from dlprefiles and create ${outputname}S.o with
+# a dlpreopen symbol table.
+func_generate_dlsyms ()
+{
+ $opt_debug
+ my_outputname="$1"
+ my_originator="$2"
+ my_pic_p="${3-no}"
+ my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
+ my_dlsyms=
+
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ if test -n "$NM" && test -n "$global_symbol_pipe"; then
+ my_dlsyms="${my_outputname}S.c"
+ else
+ func_error "not configured to extract global symbols from dlpreopened files"
+ fi
+ fi
+
+ if test -n "$my_dlsyms"; then
+ case $my_dlsyms in
+ "") ;;
+ *.c)
+ # Discover the nlist of each of the dlfiles.
+ nlist="$output_objdir/${my_outputname}.nm"
+
+ func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
+
+ # Parse the name list into a source file.
+ func_verbose "creating $output_objdir/$my_dlsyms"
+
+ $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
+/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
+/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
+
+#ifdef __cplusplus
+extern \"C\" {
+#endif
+
+/* External symbol declarations for the compiler. */\
+"
+
+ if test "$dlself" = yes; then
+ func_verbose "generating symbol list for \`$output'"
+
+ $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
+
+ # Add our own program objects to the symbol list.
+ progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ for progfile in $progfiles; do
+ func_verbose "extracting global C symbols from \`$progfile'"
+ $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"
+ done
+
+ if test -n "$exclude_expsyms"; then
+ $opt_dry_run || {
+ eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ }
+ fi
+
+ if test -n "$export_symbols_regex"; then
+ $opt_dry_run || {
+ eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ }
+ fi
+
+ # Prepare the list of exported symbols
+ if test -z "$export_symbols"; then
+ export_symbols="$output_objdir/$outputname.exp"
+ $opt_dry_run || {
+ $RM $export_symbols
+ eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+ eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
+ ;;
+ esac
+ }
+ else
+ $opt_dry_run || {
+ eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
+ eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ case $host in
+ *cygwin | *mingw* | *cegcc* )
+ eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+ eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
+ ;;
+ esac
+ }
+ fi
+ fi
+
+ for dlprefile in $dlprefiles; do
+ func_verbose "extracting global C symbols from \`$dlprefile'"
+ func_basename "$dlprefile"
+ name="$func_basename_result"
+ $opt_dry_run || {
+ eval '$ECHO ": $name " >> "$nlist"'
+ eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"
+ }
+ done
+
+ $opt_dry_run || {
+ # Make sure we have at least an empty file.
+ test -f "$nlist" || : > "$nlist"
+
+ if test -n "$exclude_expsyms"; then
+ $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
+ $MV "$nlist"T "$nlist"
+ fi
+
+ # Try sorting and uniquifying the output.
+ if $GREP -v "^: " < "$nlist" |
+ if sort -k 3 </dev/null >/dev/null 2>&1; then
+ sort -k 3
+ else
+ sort +2
+ fi |
+ uniq > "$nlist"S; then
+ :
+ else
+ $GREP -v "^: " < "$nlist" > "$nlist"S
+ fi
+
+ if test -f "$nlist"S; then
+ eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
+ else
+ $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"
+ fi
+
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+
+/* The mapping between symbol names and symbols. */
+typedef struct {
+ const char *name;
+ void *address;
+} lt_dlsymlist;
+"
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+/* DATA imports from DLLs on WIN32 con't be const, because
+ runtime relocations are performed -- see ld's documentation
+ on pseudo-relocs. */"
+ lt_dlsym_const= ;;
+ *osf5*)
+ echo >> "$output_objdir/$my_dlsyms" "\
+/* This system does not cope well with relocations in const data */"
+ lt_dlsym_const= ;;
+ *)
+ lt_dlsym_const=const ;;
+ esac
+
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+extern $lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[];
+$lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[] =
+{\
+ { \"$my_originator\", (void *) 0 },"
+
+ case $need_lib_prefix in
+ no)
+ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
+ ;;
+ *)
+ eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
+ ;;
+ esac
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt_${my_prefix}_LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif\
+"
+ } # !$opt_dry_run
+
+ pic_flag_for_symtable=
+ case "$compile_command " in
+ *" -static "*) ;;
+ *)
+ case $host in
+ # compiling the symbol table file with pic_flag works around
+ # a FreeBSD bug that causes programs to crash when -lm is
+ # linked before any other PIC object. But we must not use
+ # pic_flag when linking with -static. The problem exists in
+ # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
+ pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
+ *-*-hpux*)
+ pic_flag_for_symtable=" $pic_flag" ;;
+ *)
+ if test "X$my_pic_p" != Xno; then
+ pic_flag_for_symtable=" $pic_flag"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ symtab_cflags=
+ for arg in $LTCFLAGS; do
+ case $arg in
+ -pie | -fpie | -fPIE) ;;
+ *) symtab_cflags="$symtab_cflags $arg" ;;
+ esac
+ done
+
+ # Now compile the dynamic symbol file.
+ func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
+
+ # Clean up the generated files.
+ func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
+
+ # Transform the symbol file into the correct name.
+ symfileobj="$output_objdir/${my_outputname}S.$objext"
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ if test -f "$output_objdir/$my_outputname.def"; then
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+ else
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ fi
+ ;;
+ *)
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ ;;
+ esac
+ ;;
+ *)
+ func_fatal_error "unknown suffix for \`$my_dlsyms'"
+ ;;
+ esac
+ else
+ # We keep going just in case the user didn't refer to
+ # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
+ # really was required.
+
+ # Nullify the symbol file.
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+ fi
+}
+
+# func_win32_libid arg
+# return the library type of file 'arg'
+#
+# Need a lot of goo to handle *both* DLLs and import libs
+# Has to be a shell function in order to 'eat' the argument
+# that is supplied when $file_magic_command is called.
+func_win32_libid ()
+{
+ $opt_debug
+ win32_libid_type="unknown"
+ win32_fileres=`file -L $1 2>/dev/null`
+ case $win32_fileres in
+ *ar\ archive\ import\ library*) # definitely import
+ win32_libid_type="x86 archive import"
+ ;;
+ *ar\ archive*) # could be an import, or static
+ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
+ $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
+ win32_nmres=`eval $NM -f posix -A $1 |
+ $SED -n -e '
+ 1,100{
+ / I /{
+ s,.*,import,
+ p
+ q
+ }
+ }'`
+ case $win32_nmres in
+ import*) win32_libid_type="x86 archive import";;
+ *) win32_libid_type="x86 archive static";;
+ esac
+ fi
+ ;;
+ *DLL*)
+ win32_libid_type="x86 DLL"
+ ;;
+ *executable*) # but shell scripts are "executable" too...
+ case $win32_fileres in
+ *MS\ Windows\ PE\ Intel*)
+ win32_libid_type="x86 DLL"
+ ;;
+ esac
+ ;;
+ esac
+ $ECHO "$win32_libid_type"
+}
+
+
+
+# func_extract_an_archive dir oldlib
+func_extract_an_archive ()
+{
+ $opt_debug
+ f_ex_an_ar_dir="$1"; shift
+ f_ex_an_ar_oldlib="$1"
+ func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?'
+ if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
+ :
+ else
+ func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
+ fi
+}
+
+
+# func_extract_archives gentop oldlib ...
+func_extract_archives ()
+{
+ $opt_debug
+ my_gentop="$1"; shift
+ my_oldlibs=${1+"$@"}
+ my_oldobjs=""
+ my_xlib=""
+ my_xabs=""
+ my_xdir=""
+
+ for my_xlib in $my_oldlibs; do
+ # Extract the objects.
+ case $my_xlib in
+ [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
+ *) my_xabs=`pwd`"/$my_xlib" ;;
+ esac
+ func_basename "$my_xlib"
+ my_xlib="$func_basename_result"
+ my_xlib_u=$my_xlib
+ while :; do
+ case " $extracted_archives " in
+ *" $my_xlib_u "*)
+ func_arith $extracted_serial + 1
+ extracted_serial=$func_arith_result
+ my_xlib_u=lt$extracted_serial-$my_xlib ;;
+ *) break ;;
+ esac
+ done
+ extracted_archives="$extracted_archives $my_xlib_u"
+ my_xdir="$my_gentop/$my_xlib_u"
+
+ func_mkdir_p "$my_xdir"
+
+ case $host in
+ *-darwin*)
+ func_verbose "Extracting $my_xabs"
+ # Do not bother doing anything if just a dry run
+ $opt_dry_run || {
+ darwin_orig_dir=`pwd`
+ cd $my_xdir || exit $?
+ darwin_archive=$my_xabs
+ darwin_curdir=`pwd`
+ darwin_base_archive=`basename "$darwin_archive"`
+ darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
+ if test -n "$darwin_arches"; then
+ darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
+ darwin_arch=
+ func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
+ for darwin_arch in $darwin_arches ; do
+ func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+ $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
+ cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+ func_extract_an_archive "`pwd`" "${darwin_base_archive}"
+ cd "$darwin_curdir"
+ $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
+ done # $darwin_arches
+ ## Okay now we've a bunch of thin objects, gotta fatten them up :)
+ darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
+ darwin_file=
+ darwin_files=
+ for darwin_file in $darwin_filelist; do
+ darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
+ $LIPO -create -output "$darwin_file" $darwin_files
+ done # $darwin_filelist
+ $RM -rf unfat-$$
+ cd "$darwin_orig_dir"
+ else
+ cd $darwin_orig_dir
+ func_extract_an_archive "$my_xdir" "$my_xabs"
+ fi # $darwin_arches
+ } # !$opt_dry_run
+ ;;
+ *)
+ func_extract_an_archive "$my_xdir" "$my_xabs"
+ ;;
+ esac
+ my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
+ done
+
+ func_extract_archives_result="$my_oldobjs"
+}
+
+
+
+# func_emit_wrapper_part1 [arg=no]
+#
+# Emit the first part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part1 ()
+{
+ func_emit_wrapper_part1_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_part1_arg1=$1
+ fi
+
+ $ECHO "\
+#! $SHELL
+
+# $output - temporary wrapper script for $objdir/$outputname
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# The $output program cannot be directly executed until all the libtool
+# libraries that it depends on are installed.
+#
+# This wrapper script should never be moved out of the build directory.
+# If it is, it will not operate correctly.
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='${SED} -e 1s/^X//'
+sed_quote_subst='$sed_quote_subst'
+
+# Be Bourne compatible
+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+relink_command=\"$relink_command\"
+
+# This environment variable determines our operation mode.
+if test \"\$libtool_install_magic\" = \"$magic\"; then
+ # install mode needs the following variables:
+ generated_by_libtool_version='$macro_version'
+ notinst_deplibs='$notinst_deplibs'
+else
+ # When we are sourced in execute mode, \$file and \$ECHO are already set.
+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
+ ECHO=\"$qecho\"
+ file=\"\$0\"
+ # Make sure echo works.
+ if test \"X\$1\" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+ elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then
+ # Yippee, \$ECHO works!
+ :
+ else
+ # Restart under the correct shell, and then maybe \$ECHO will work.
+ exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
+ fi
+ fi\
+"
+ $ECHO "\
+
+ # Find the directory that this script lives in.
+ thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
+ test \"x\$thisdir\" = \"x\$file\" && thisdir=.
+
+ # Follow symbolic links until we get to the real thisdir.
+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
+ while test -n \"\$file\"; do
+ destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
+
+ # If there was a directory component, then change thisdir.
+ if test \"x\$destdir\" != \"x\$file\"; then
+ case \"\$destdir\" in
+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
+ *) thisdir=\"\$thisdir/\$destdir\" ;;
+ esac
+ fi
+
+ file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
+ done
+"
+}
+# end: func_emit_wrapper_part1
+
+# func_emit_wrapper_part2 [arg=no]
+#
+# Emit the second part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part2 ()
+{
+ func_emit_wrapper_part2_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_part2_arg1=$1
+ fi
+
+ $ECHO "\
+
+ # Usually 'no', except on cygwin/mingw when embedded into
+ # the cwrapper.
+ WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1
+ if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
+ # special case for '.'
+ if test \"\$thisdir\" = \".\"; then
+ thisdir=\`pwd\`
+ fi
+ # remove .libs from thisdir
+ case \"\$thisdir\" in
+ *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;;
+ $objdir ) thisdir=. ;;
+ esac
+ fi
+
+ # Try to get the absolute directory name.
+ absdir=\`cd \"\$thisdir\" && pwd\`
+ test -n \"\$absdir\" && thisdir=\"\$absdir\"
+"
+
+ if test "$fast_install" = yes; then
+ $ECHO "\
+ program=lt-'$outputname'$exeext
+ progdir=\"\$thisdir/$objdir\"
+
+ if test ! -f \"\$progdir/\$program\" ||
+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
+ test \"X\$file\" != \"X\$progdir/\$program\"; }; then
+
+ file=\"\$\$-\$program\"
+
+ if test ! -d \"\$progdir\"; then
+ $MKDIR \"\$progdir\"
+ else
+ $RM \"\$progdir/\$file\"
+ fi"
+
+ $ECHO "\
+
+ # relink executable if necessary
+ if test -n \"\$relink_command\"; then
+ if relink_command_output=\`eval \$relink_command 2>&1\`; then :
+ else
+ $ECHO \"\$relink_command_output\" >&2
+ $RM \"\$progdir/\$file\"
+ exit 1
+ fi
+ fi
+
+ $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
+ { $RM \"\$progdir/\$program\";
+ $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
+ $RM \"\$progdir/\$file\"
+ fi"
+ else
+ $ECHO "\
+ program='$outputname'
+ progdir=\"\$thisdir/$objdir\"
+"
+ fi
+
+ $ECHO "\
+
+ if test -f \"\$progdir/\$program\"; then"
+
+ # Export our shlibpath_var if we have one.
+ if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+ $ECHO "\
+ # Add our own library path to $shlibpath_var
+ $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
+
+ # Some systems cannot cope with colon-terminated $shlibpath_var
+ # The second colon is a workaround for a bug in BeOS R4 sed
+ $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
+
+ export $shlibpath_var
+"
+ fi
+
+ # fixup the dll searchpath if we need to.
+ if test -n "$dllsearchpath"; then
+ $ECHO "\
+ # Add the dll search path components to the executable PATH
+ PATH=$dllsearchpath:\$PATH
+"
+ fi
+
+ $ECHO "\
+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
+ # Run the actual program with our arguments.
+"
+ case $host in
+ # Backslashes separate directories on plain windows
+ *-*-mingw | *-*-os2* | *-cegcc*)
+ $ECHO "\
+ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
+"
+ ;;
+
+ *)
+ $ECHO "\
+ exec \"\$progdir/\$program\" \${1+\"\$@\"}
+"
+ ;;
+ esac
+ $ECHO "\
+ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
+ exit 1
+ fi
+ else
+ # The program doesn't exist.
+ \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
+ \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
+ $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
+ exit 1
+ fi
+fi\
+"
+}
+# end: func_emit_wrapper_part2
+
+
+# func_emit_wrapper [arg=no]
+#
+# Emit a libtool wrapper script on stdout.
+# Don't directly open a file because we may want to
+# incorporate the script contents within a cygwin/mingw
+# wrapper executable. Must ONLY be called from within
+# func_mode_link because it depends on a number of variables
+# set therein.
+#
+# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
+# variable will take. If 'yes', then the emitted script
+# will assume that the directory in which it is stored is
+# the $objdir directory. This is a cygwin/mingw-specific
+# behavior.
+func_emit_wrapper ()
+{
+ func_emit_wrapper_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_arg1=$1
+ fi
+
+ # split this up so that func_emit_cwrapperexe_src
+ # can call each part independently.
+ func_emit_wrapper_part1 "${func_emit_wrapper_arg1}"
+ func_emit_wrapper_part2 "${func_emit_wrapper_arg1}"
+}
+
+
+# func_to_host_path arg
+#
+# Convert paths to host format when used with build tools.
+# Intended for use with "native" mingw (where libtool itself
+# is running under the msys shell), or in the following cross-
+# build environments:
+# $build $host
+# mingw (msys) mingw [e.g. native]
+# cygwin mingw
+# *nix + wine mingw
+# where wine is equipped with the `winepath' executable.
+# In the native mingw case, the (msys) shell automatically
+# converts paths for any non-msys applications it launches,
+# but that facility isn't available from inside the cwrapper.
+# Similar accommodations are necessary for $host mingw and
+# $build cygwin. Calling this function does no harm for other
+# $host/$build combinations not listed above.
+#
+# ARG is the path (on $build) that should be converted to
+# the proper representation for $host. The result is stored
+# in $func_to_host_path_result.
+func_to_host_path ()
+{
+ func_to_host_path_result="$1"
+ if test -n "$1" ; then
+ case $host in
+ *mingw* )
+ lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+ case $build in
+ *mingw* ) # actually, msys
+ # awkward: cmd appends spaces to result
+ lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+ func_to_host_path_tmp1=`( cmd //c echo "$1" |\
+ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ *cygwin* )
+ func_to_host_path_tmp1=`cygpath -w "$1"`
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ * )
+ # Unfortunately, winepath does not exit with a non-zero
+ # error code, so we are forced to check the contents of
+ # stdout. On the other hand, if the command is not
+ # found, the shell will set an exit code of 127 and print
+ # *an error message* to stdout. So we must check for both
+ # error code of zero AND non-empty stdout, which explains
+ # the odd construction:
+ func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null`
+ if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ else
+ # Allow warning below.
+ func_to_host_path_result=""
+ fi
+ ;;
+ esac
+ if test -z "$func_to_host_path_result" ; then
+ func_error "Could not determine host path corresponding to"
+ func_error " '$1'"
+ func_error "Continuing, but uninstalled executables may not work."
+ # Fallback:
+ func_to_host_path_result="$1"
+ fi
+ ;;
+ esac
+ fi
+}
+# end: func_to_host_path
+
+# func_to_host_pathlist arg
+#
+# Convert pathlists to host format when used with build tools.
+# See func_to_host_path(), above. This function supports the
+# following $build/$host combinations (but does no harm for
+# combinations not listed here):
+# $build $host
+# mingw (msys) mingw [e.g. native]
+# cygwin mingw
+# *nix + wine mingw
+#
+# Path separators are also converted from $build format to
+# $host format. If ARG begins or ends with a path separator
+# character, it is preserved (but converted to $host format)
+# on output.
+#
+# ARG is a pathlist (on $build) that should be converted to
+# the proper representation on $host. The result is stored
+# in $func_to_host_pathlist_result.
+func_to_host_pathlist ()
+{
+ func_to_host_pathlist_result="$1"
+ if test -n "$1" ; then
+ case $host in
+ *mingw* )
+ lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+ # Remove leading and trailing path separator characters from
+ # ARG. msys behavior is inconsistent here, cygpath turns them
+ # into '.;' and ';.', and winepath ignores them completely.
+ func_to_host_pathlist_tmp2="$1"
+ # Once set for this call, this variable should not be
+ # reassigned. It is used in tha fallback case.
+ func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e 's|^:*||' -e 's|:*$||'`
+ case $build in
+ *mingw* ) # Actually, msys.
+ # Awkward: cmd appends spaces to result.
+ lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+ func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\
+ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ *cygwin* )
+ func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"`
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ * )
+ # unfortunately, winepath doesn't convert pathlists
+ func_to_host_pathlist_result=""
+ func_to_host_pathlist_oldIFS=$IFS
+ IFS=:
+ for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do
+ IFS=$func_to_host_pathlist_oldIFS
+ if test -n "$func_to_host_pathlist_f" ; then
+ func_to_host_path "$func_to_host_pathlist_f"
+ if test -n "$func_to_host_path_result" ; then
+ if test -z "$func_to_host_pathlist_result" ; then
+ func_to_host_pathlist_result="$func_to_host_path_result"
+ else
+ func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result"
+ fi
+ fi
+ fi
+ IFS=:
+ done
+ IFS=$func_to_host_pathlist_oldIFS
+ ;;
+ esac
+ if test -z "$func_to_host_pathlist_result" ; then
+ func_error "Could not determine the host path(s) corresponding to"
+ func_error " '$1'"
+ func_error "Continuing, but uninstalled executables may not work."
+ # Fallback. This may break if $1 contains DOS-style drive
+ # specifications. The fix is not to complicate the expression
+ # below, but for the user to provide a working wine installation
+ # with winepath so that path translation in the cross-to-mingw
+ # case works properly.
+ lt_replace_pathsep_nix_to_dos="s|:|;|g"
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\
+ $SED -e "$lt_replace_pathsep_nix_to_dos"`
+ fi
+ # Now, add the leading and trailing path separators back
+ case "$1" in
+ :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result"
+ ;;
+ esac
+ case "$1" in
+ *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+}
+# end: func_to_host_pathlist
+
+# func_emit_cwrapperexe_src
+# emit the source code for a wrapper executable on stdout
+# Must ONLY be called from within func_mode_link because
+# it depends on a number of variable set therein.
+func_emit_cwrapperexe_src ()
+{
+ cat <<EOF
+
+/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
+ Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+
+ The $output program cannot be directly executed until all the libtool
+ libraries that it depends on are installed.
+
+ This wrapper executable should never be moved out of the build directory.
+ If it is, it will not operate correctly.
+
+ Currently, it simply execs the wrapper *script* "$SHELL $output",
+ but could eventually absorb all of the scripts functionality and
+ exec $objdir/$outputname directly.
+*/
+EOF
+ cat <<"EOF"
+#include <stdio.h>
+#include <stdlib.h>
+#ifdef _MSC_VER
+# include <direct.h>
+# include <process.h>
+# include <io.h>
+# define setmode _setmode
+#else
+# include <unistd.h>
+# include <stdint.h>
+# ifdef __CYGWIN__
+# include <io.h>
+# define HAVE_SETENV
+# ifdef __STRICT_ANSI__
+char *realpath (const char *, char *);
+int putenv (char *);
+int setenv (const char *, const char *, int);
+# endif
+# endif
+#endif
+#include <malloc.h>
+#include <stdarg.h>
+#include <assert.h>
+#include <string.h>
+#include <ctype.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+
+#if defined(PATH_MAX)
+# define LT_PATHMAX PATH_MAX
+#elif defined(MAXPATHLEN)
+# define LT_PATHMAX MAXPATHLEN
+#else
+# define LT_PATHMAX 1024
+#endif
+
+#ifndef S_IXOTH
+# define S_IXOTH 0
+#endif
+#ifndef S_IXGRP
+# define S_IXGRP 0
+#endif
+
+#ifdef _MSC_VER
+# define S_IXUSR _S_IEXEC
+# define stat _stat
+# ifndef _INTPTR_T_DEFINED
+# define intptr_t int
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR
+# define DIR_SEPARATOR '/'
+# define PATH_SEPARATOR ':'
+#endif
+
+#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
+ defined (__OS2__)
+# define HAVE_DOS_BASED_FILE_SYSTEM
+# define FOPEN_WB "wb"
+# ifndef DIR_SEPARATOR_2
+# define DIR_SEPARATOR_2 '\\'
+# endif
+# ifndef PATH_SEPARATOR_2
+# define PATH_SEPARATOR_2 ';'
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR_2
+# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
+#else /* DIR_SEPARATOR_2 */
+# define IS_DIR_SEPARATOR(ch) \
+ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
+#endif /* DIR_SEPARATOR_2 */
+
+#ifndef PATH_SEPARATOR_2
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
+#else /* PATH_SEPARATOR_2 */
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
+#endif /* PATH_SEPARATOR_2 */
+
+#ifdef __CYGWIN__
+# define FOPEN_WB "wb"
+#endif
+
+#ifndef FOPEN_WB
+# define FOPEN_WB "w"
+#endif
+#ifndef _O_BINARY
+# define _O_BINARY 0
+#endif
+
+#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
+#define XFREE(stale) do { \
+ if (stale) { free ((void *) stale); stale = 0; } \
+} while (0)
+
+#undef LTWRAPPER_DEBUGPRINTF
+#if defined DEBUGWRAPPER
+# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args
+static void
+ltwrapper_debugprintf (const char *fmt, ...)
+{
+ va_list args;
+ va_start (args, fmt);
+ (void) vfprintf (stderr, fmt, args);
+ va_end (args);
+}
+#else
+# define LTWRAPPER_DEBUGPRINTF(args)
+#endif
+
+const char *program_name = NULL;
+
+void *xmalloc (size_t num);
+char *xstrdup (const char *string);
+const char *base_name (const char *name);
+char *find_executable (const char *wrapper);
+char *chase_symlinks (const char *pathspec);
+int make_executable (const char *path);
+int check_executable (const char *path);
+char *strendzap (char *str, const char *pat);
+void lt_fatal (const char *message, ...);
+void lt_setenv (const char *name, const char *value);
+char *lt_extend_str (const char *orig_value, const char *add, int to_end);
+void lt_opt_process_env_set (const char *arg);
+void lt_opt_process_env_prepend (const char *arg);
+void lt_opt_process_env_append (const char *arg);
+int lt_split_name_value (const char *arg, char** name, char** value);
+void lt_update_exe_path (const char *name, const char *value);
+void lt_update_lib_path (const char *name, const char *value);
+
+static const char *script_text_part1 =
+EOF
+
+ func_emit_wrapper_part1 yes |
+ $SED -e 's/\([\\"]\)/\\\1/g' \
+ -e 's/^/ "/' -e 's/$/\\n"/'
+ echo ";"
+ cat <<EOF
+
+static const char *script_text_part2 =
+EOF
+ func_emit_wrapper_part2 yes |
+ $SED -e 's/\([\\"]\)/\\\1/g' \
+ -e 's/^/ "/' -e 's/$/\\n"/'
+ echo ";"
+
+ cat <<EOF
+const char * MAGIC_EXE = "$magic_exe";
+const char * LIB_PATH_VARNAME = "$shlibpath_var";
+EOF
+
+ if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+ func_to_host_pathlist "$temp_rpath"
+ cat <<EOF
+const char * LIB_PATH_VALUE = "$func_to_host_pathlist_result";
+EOF
+ else
+ cat <<"EOF"
+const char * LIB_PATH_VALUE = "";
+EOF
+ fi
+
+ if test -n "$dllsearchpath"; then
+ func_to_host_pathlist "$dllsearchpath:"
+ cat <<EOF
+const char * EXE_PATH_VARNAME = "PATH";
+const char * EXE_PATH_VALUE = "$func_to_host_pathlist_result";
+EOF
+ else
+ cat <<"EOF"
+const char * EXE_PATH_VARNAME = "";
+const char * EXE_PATH_VALUE = "";
+EOF
+ fi
+
+ if test "$fast_install" = yes; then
+ cat <<EOF
+const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
+EOF
+ else
+ cat <<EOF
+const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
+EOF
+ fi
+
+
+ cat <<"EOF"
+
+#define LTWRAPPER_OPTION_PREFIX "--lt-"
+#define LTWRAPPER_OPTION_PREFIX_LENGTH 5
+
+static const size_t opt_prefix_len = LTWRAPPER_OPTION_PREFIX_LENGTH;
+static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
+
+static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";
+
+static const size_t env_set_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;
+static const char *env_set_opt = LTWRAPPER_OPTION_PREFIX "env-set";
+ /* argument is putenv-style "foo=bar", value of foo is set to bar */
+
+static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;
+static const char *env_prepend_opt = LTWRAPPER_OPTION_PREFIX "env-prepend";
+ /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */
+
+static const size_t env_append_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;
+static const char *env_append_opt = LTWRAPPER_OPTION_PREFIX "env-append";
+ /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */
+
+int
+main (int argc, char *argv[])
+{
+ char **newargz;
+ int newargc;
+ char *tmp_pathspec;
+ char *actual_cwrapper_path;
+ char *actual_cwrapper_name;
+ char *target_name;
+ char *lt_argv_zero;
+ intptr_t rval = 127;
+
+ int i;
+
+ program_name = (char *) xstrdup (base_name (argv[0]));
+ LTWRAPPER_DEBUGPRINTF (("(main) argv[0] : %s\n", argv[0]));
+ LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name));
+
+ /* very simple arg parsing; don't want to rely on getopt */
+ for (i = 1; i < argc; i++)
+ {
+ if (strcmp (argv[i], dumpscript_opt) == 0)
+ {
+EOF
+ case "$host" in
+ *mingw* | *cygwin* )
+ # make stdout use "unix" line endings
+ echo " setmode(1,_O_BINARY);"
+ ;;
+ esac
+
+ cat <<"EOF"
+ printf ("%s", script_text_part1);
+ printf ("%s", script_text_part2);
+ return 0;
+ }
+ }
+
+ newargz = XMALLOC (char *, argc + 1);
+ tmp_pathspec = find_executable (argv[0]);
+ if (tmp_pathspec == NULL)
+ lt_fatal ("Couldn't find %s", argv[0]);
+ LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n",
+ tmp_pathspec));
+
+ actual_cwrapper_path = chase_symlinks (tmp_pathspec);
+ LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n",
+ actual_cwrapper_path));
+ XFREE (tmp_pathspec);
+
+ actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));
+ strendzap (actual_cwrapper_path, actual_cwrapper_name);
+
+ /* wrapper name transforms */
+ strendzap (actual_cwrapper_name, ".exe");
+ tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
+ XFREE (actual_cwrapper_name);
+ actual_cwrapper_name = tmp_pathspec;
+ tmp_pathspec = 0;
+
+ /* target_name transforms -- use actual target program name; might have lt- prefix */
+ target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
+ strendzap (target_name, ".exe");
+ tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
+ XFREE (target_name);
+ target_name = tmp_pathspec;
+ tmp_pathspec = 0;
+
+ LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n",
+ target_name));
+EOF
+
+ cat <<EOF
+ newargz[0] =
+ XMALLOC (char, (strlen (actual_cwrapper_path) +
+ strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
+ strcpy (newargz[0], actual_cwrapper_path);
+ strcat (newargz[0], "$objdir");
+ strcat (newargz[0], "/");
+EOF
+
+ cat <<"EOF"
+ /* stop here, and copy so we don't have to do this twice */
+ tmp_pathspec = xstrdup (newargz[0]);
+
+ /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
+ strcat (newargz[0], actual_cwrapper_name);
+
+ /* DO want the lt- prefix here if it exists, so use target_name */
+ lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
+ XFREE (tmp_pathspec);
+ tmp_pathspec = NULL;
+EOF
+
+ case $host_os in
+ mingw*)
+ cat <<"EOF"
+ {
+ char* p;
+ while ((p = strchr (newargz[0], '\\')) != NULL)
+ {
+ *p = '/';
+ }
+ while ((p = strchr (lt_argv_zero, '\\')) != NULL)
+ {
+ *p = '/';
+ }
+ }
+EOF
+ ;;
+ esac
+
+ cat <<"EOF"
+ XFREE (target_name);
+ XFREE (actual_cwrapper_path);
+ XFREE (actual_cwrapper_name);
+
+ lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
+ lt_setenv ("DUALCASE", "1"); /* for MSK sh */
+ lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
+ lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
+
+ newargc=0;
+ for (i = 1; i < argc; i++)
+ {
+ if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0)
+ {
+ if (argv[i][env_set_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_set_opt_len + 1;
+ lt_opt_process_env_set (p);
+ }
+ else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_set (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_set_opt);
+ continue;
+ }
+ if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0)
+ {
+ if (argv[i][env_prepend_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_prepend_opt_len + 1;
+ lt_opt_process_env_prepend (p);
+ }
+ else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_prepend (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_prepend_opt);
+ continue;
+ }
+ if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0)
+ {
+ if (argv[i][env_append_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_append_opt_len + 1;
+ lt_opt_process_env_append (p);
+ }
+ else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_append (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_append_opt);
+ continue;
+ }
+ if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0)
+ {
+ /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
+ namespace, but it is not one of the ones we know about and
+ have already dealt with, above (inluding dump-script), then
+ report an error. Otherwise, targets might begin to believe
+ they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
+ namespace. The first time any user complains about this, we'll
+ need to make LTWRAPPER_OPTION_PREFIX a configure-time option
+ or a configure.ac-settable value.
+ */
+ lt_fatal ("Unrecognized option in %s namespace: '%s'",
+ ltwrapper_option_prefix, argv[i]);
+ }
+ /* otherwise ... */
+ newargz[++newargc] = xstrdup (argv[i]);
+ }
+ newargz[++newargc] = NULL;
+
+ LTWRAPPER_DEBUGPRINTF (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>")));
+ for (i = 0; i < newargc; i++)
+ {
+ LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>")));
+ }
+
+EOF
+
+ case $host_os in
+ mingw*)
+ cat <<"EOF"
+ /* execv doesn't actually work on mingw as expected on unix */
+ rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
+ if (rval == -1)
+ {
+ /* failed to start process */
+ LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno));
+ return 127;
+ }
+ return rval;
+EOF
+ ;;
+ *)
+ cat <<"EOF"
+ execv (lt_argv_zero, newargz);
+ return rval; /* =127, but avoids unused variable warning */
+EOF
+ ;;
+ esac
+
+ cat <<"EOF"
+}
+
+void *
+xmalloc (size_t num)
+{
+ void *p = (void *) malloc (num);
+ if (!p)
+ lt_fatal ("Memory exhausted");
+
+ return p;
+}
+
+char *
+xstrdup (const char *string)
+{
+ return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
+ string) : NULL;
+}
+
+const char *
+base_name (const char *name)
+{
+ const char *base;
+
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ /* Skip over the disk name in MSDOS pathnames. */
+ if (isalpha ((unsigned char) name[0]) && name[1] == ':')
+ name += 2;
+#endif
+
+ for (base = name; *name; name++)
+ if (IS_DIR_SEPARATOR (*name))
+ base = name + 1;
+ return base;
+}
+
+int
+check_executable (const char *path)
+{
+ struct stat st;
+
+ LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\n",
+ path ? (*path ? path : "EMPTY!") : "NULL!"));
+ if ((!path) || (!*path))
+ return 0;
+
+ if ((stat (path, &st) >= 0)
+ && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
+ return 1;
+ else
+ return 0;
+}
+
+int
+make_executable (const char *path)
+{
+ int rval = 0;
+ struct stat st;
+
+ LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\n",
+ path ? (*path ? path : "EMPTY!") : "NULL!"));
+ if ((!path) || (!*path))
+ return 0;
+
+ if (stat (path, &st) >= 0)
+ {
+ rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
+ }
+ return rval;
+}
+
+/* Searches for the full path of the wrapper. Returns
+ newly allocated full path name if found, NULL otherwise
+ Does not chase symlinks, even on platforms that support them.
+*/
+char *
+find_executable (const char *wrapper)
+{
+ int has_slash = 0;
+ const char *p;
+ const char *p_next;
+ /* static buffer for getcwd */
+ char tmp[LT_PATHMAX + 1];
+ int tmp_len;
+ char *concat_name;
+
+ LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\n",
+ wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));
+
+ if ((wrapper == NULL) || (*wrapper == '\0'))
+ return NULL;
+
+ /* Absolute path? */
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
+ {
+ concat_name = xstrdup (wrapper);
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+ else
+ {
+#endif
+ if (IS_DIR_SEPARATOR (wrapper[0]))
+ {
+ concat_name = xstrdup (wrapper);
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ }
+#endif
+
+ for (p = wrapper; *p; p++)
+ if (*p == '/')
+ {
+ has_slash = 1;
+ break;
+ }
+ if (!has_slash)
+ {
+ /* no slashes; search PATH */
+ const char *path = getenv ("PATH");
+ if (path != NULL)
+ {
+ for (p = path; *p; p = p_next)
+ {
+ const char *q;
+ size_t p_len;
+ for (q = p; *q; q++)
+ if (IS_PATH_SEPARATOR (*q))
+ break;
+ p_len = q - p;
+ p_next = (*q == '\0' ? q : q + 1);
+ if (p_len == 0)
+ {
+ /* empty path: current directory */
+ if (getcwd (tmp, LT_PATHMAX) == NULL)
+ lt_fatal ("getcwd failed");
+ tmp_len = strlen (tmp);
+ concat_name =
+ XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, tmp, tmp_len);
+ concat_name[tmp_len] = '/';
+ strcpy (concat_name + tmp_len + 1, wrapper);
+ }
+ else
+ {
+ concat_name =
+ XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, p, p_len);
+ concat_name[p_len] = '/';
+ strcpy (concat_name + p_len + 1, wrapper);
+ }
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+ }
+ /* not found in PATH; assume curdir */
+ }
+ /* Relative path | not found in path: prepend cwd */
+ if (getcwd (tmp, LT_PATHMAX) == NULL)
+ lt_fatal ("getcwd failed");
+ tmp_len = strlen (tmp);
+ concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, tmp, tmp_len);
+ concat_name[tmp_len] = '/';
+ strcpy (concat_name + tmp_len + 1, wrapper);
+
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ return NULL;
+}
+
+char *
+chase_symlinks (const char *pathspec)
+{
+#ifndef S_ISLNK
+ return xstrdup (pathspec);
+#else
+ char buf[LT_PATHMAX];
+ struct stat s;
+ char *tmp_pathspec = xstrdup (pathspec);
+ char *p;
+ int has_symlinks = 0;
+ while (strlen (tmp_pathspec) && !has_symlinks)
+ {
+ LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n",
+ tmp_pathspec));
+ if (lstat (tmp_pathspec, &s) == 0)
+ {
+ if (S_ISLNK (s.st_mode) != 0)
+ {
+ has_symlinks = 1;
+ break;
+ }
+
+ /* search backwards for last DIR_SEPARATOR */
+ p = tmp_pathspec + strlen (tmp_pathspec) - 1;
+ while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+ p--;
+ if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+ {
+ /* no more DIR_SEPARATORS left */
+ break;
+ }
+ *p = '\0';
+ }
+ else
+ {
+ char *errstr = strerror (errno);
+ lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);
+ }
+ }
+ XFREE (tmp_pathspec);
+
+ if (!has_symlinks)
+ {
+ return xstrdup (pathspec);
+ }
+
+ tmp_pathspec = realpath (pathspec, buf);
+ if (tmp_pathspec == 0)
+ {
+ lt_fatal ("Could not follow symlinks for %s", pathspec);
+ }
+ return xstrdup (tmp_pathspec);
+#endif
+}
+
+char *
+strendzap (char *str, const char *pat)
+{
+ size_t len, patlen;
+
+ assert (str != NULL);
+ assert (pat != NULL);
+
+ len = strlen (str);
+ patlen = strlen (pat);
+
+ if (patlen <= len)
+ {
+ str += len - patlen;
+ if (strcmp (str, pat) == 0)
+ *str = '\0';
+ }
+ return str;
+}
+
+static void
+lt_error_core (int exit_status, const char *mode,
+ const char *message, va_list ap)
+{
+ fprintf (stderr, "%s: %s: ", program_name, mode);
+ vfprintf (stderr, message, ap);
+ fprintf (stderr, ".\n");
+
+ if (exit_status >= 0)
+ exit (exit_status);
+}
+
+void
+lt_fatal (const char *message, ...)
+{
+ va_list ap;
+ va_start (ap, message);
+ lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
+ va_end (ap);
+}
+
+void
+lt_setenv (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+ {
+#ifdef HAVE_SETENV
+ /* always make a copy, for consistency with !HAVE_SETENV */
+ char *str = xstrdup (value);
+ setenv (name, str, 1);
+#else
+ int len = strlen (name) + 1 + strlen (value) + 1;
+ char *str = XMALLOC (char, len);
+ sprintf (str, "%s=%s", name, value);
+ if (putenv (str) != EXIT_SUCCESS)
+ {
+ XFREE (str);
+ }
+#endif
+ }
+}
+
+char *
+lt_extend_str (const char *orig_value, const char *add, int to_end)
+{
+ char *new_value;
+ if (orig_value && *orig_value)
+ {
+ int orig_value_len = strlen (orig_value);
+ int add_len = strlen (add);
+ new_value = XMALLOC (char, add_len + orig_value_len + 1);
+ if (to_end)
+ {
+ strcpy (new_value, orig_value);
+ strcpy (new_value + orig_value_len, add);
+ }
+ else
+ {
+ strcpy (new_value, add);
+ strcpy (new_value + add_len, orig_value);
+ }
+ }
+ else
+ {
+ new_value = xstrdup (add);
+ }
+ return new_value;
+}
+
+int
+lt_split_name_value (const char *arg, char** name, char** value)
+{
+ const char *p;
+ int len;
+ if (!arg || !*arg)
+ return 1;
+
+ p = strchr (arg, (int)'=');
+
+ if (!p)
+ return 1;
+
+ *value = xstrdup (++p);
+
+ len = strlen (arg) - strlen (*value);
+ *name = XMALLOC (char, len);
+ strncpy (*name, arg, len-1);
+ (*name)[len - 1] = '\0';
+
+ return 0;
+}
+
+void
+lt_opt_process_env_set (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg);
+ }
+
+ lt_setenv (name, value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_opt_process_env_prepend (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+ char *new_value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg);
+ }
+
+ new_value = lt_extend_str (getenv (name), value, 0);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_opt_process_env_append (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+ char *new_value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg);
+ }
+
+ new_value = lt_extend_str (getenv (name), value, 1);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_update_exe_path (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+
+ if (name && *name && value && *value)
+ {
+ char *new_value = lt_extend_str (getenv (name), value, 0);
+ /* some systems can't cope with a ':'-terminated path #' */
+ int len = strlen (new_value);
+ while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
+ {
+ new_value[len-1] = '\0';
+ }
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ }
+}
+
+void
+lt_update_lib_path (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+
+ if (name && *name && value && *value)
+ {
+ char *new_value = lt_extend_str (getenv (name), value, 0);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ }
+}
+
+
+EOF
+}
+# end: func_emit_cwrapperexe_src
+
+# func_mode_link arg...
+func_mode_link ()
+{
+ $opt_debug
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ # It is impossible to link a dll without this setting, and
+ # we shouldn't force the makefile maintainer to figure out
+ # which system we are compiling for in order to pass an extra
+ # flag for every libtool invocation.
+ # allow_undefined=no
+
+ # FIXME: Unfortunately, there are problems with the above when trying
+ # to make a dll which has undefined symbols, in which case not
+ # even a static library is built. For now, we need to specify
+ # -no-undefined on the libtool link line when we can be certain
+ # that all symbols are satisfied, otherwise we get a static library.
+ allow_undefined=yes
+ ;;
+ *)
+ allow_undefined=yes
+ ;;
+ esac
+ libtool_args=$nonopt
+ base_compile="$nonopt $@"
+ compile_command=$nonopt
+ finalize_command=$nonopt
+
+ compile_rpath=
+ finalize_rpath=
+ compile_shlibpath=
+ finalize_shlibpath=
+ convenience=
+ old_convenience=
+ deplibs=
+ old_deplibs=
+ compiler_flags=
+ linker_flags=
+ dllsearchpath=
+ lib_search_path=`pwd`
+ inst_prefix_dir=
+ new_inherited_linker_flags=
+
+ avoid_version=no
+ dlfiles=
+ dlprefiles=
+ dlself=no
+ export_dynamic=no
+ export_symbols=
+ export_symbols_regex=
+ generated=
+ libobjs=
+ ltlibs=
+ module=no
+ no_install=no
+ objs=
+ non_pic_objects=
+ precious_files_regex=
+ prefer_static_libs=no
+ preload=no
+ prev=
+ prevarg=
+ release=
+ rpath=
+ xrpath=
+ perm_rpath=
+ temp_rpath=
+ thread_safe=no
+ vinfo=
+ vinfo_number=no
+ weak_libs=
+ single_module="${wl}-single_module"
+ func_infer_tag $base_compile
+
+ # We need to know -static, to get the right output filenames.
+ for arg
+ do
+ case $arg in
+ -shared)
+ test "$build_libtool_libs" != yes && \
+ func_fatal_configuration "can not build a shared library"
+ build_old_libs=no
+ break
+ ;;
+ -all-static | -static | -static-libtool-libs)
+ case $arg in
+ -all-static)
+ if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
+ func_warning "complete static linking is impossible in this configuration"
+ fi
+ if test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ -static)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=built
+ ;;
+ -static-libtool-libs)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ esac
+ build_libtool_libs=no
+ build_old_libs=yes
+ break
+ ;;
+ esac
+ done
+
+ # See if our shared archives depend on static archives.
+ test -n "$old_archive_from_new_cmds" && build_old_libs=yes
+
+ # Go through the arguments, transforming them on the way.
+ while test "$#" -gt 0; do
+ arg="$1"
+ shift
+ func_quote_for_eval "$arg"
+ qarg=$func_quote_for_eval_unquoted_result
+ func_append libtool_args " $func_quote_for_eval_result"
+
+ # If the previous option needs an argument, assign it.
+ if test -n "$prev"; then
+ case $prev in
+ output)
+ func_append compile_command " @OUTPUT@"
+ func_append finalize_command " @OUTPUT@"
+ ;;
+ esac
+
+ case $prev in
+ dlfiles|dlprefiles)
+ if test "$preload" = no; then
+ # Add the symbol object into the linking commands.
+ func_append compile_command " @SYMFILE@"
+ func_append finalize_command " @SYMFILE@"
+ preload=yes
+ fi
+ case $arg in
+ *.la | *.lo) ;; # We handle these cases below.
+ force)
+ if test "$dlself" = no; then
+ dlself=needless
+ export_dynamic=yes
+ fi
+ prev=
+ continue
+ ;;
+ self)
+ if test "$prev" = dlprefiles; then
+ dlself=yes
+ elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
+ dlself=yes
+ else
+ dlself=needless
+ export_dynamic=yes
+ fi
+ prev=
+ continue
+ ;;
+ *)
+ if test "$prev" = dlfiles; then
+ dlfiles="$dlfiles $arg"
+ else
+ dlprefiles="$dlprefiles $arg"
+ fi
+ prev=
+ continue
+ ;;
+ esac
+ ;;
+ expsyms)
+ export_symbols="$arg"
+ test -f "$arg" \
+ || func_fatal_error "symbol file \`$arg' does not exist"
+ prev=
+ continue
+ ;;
+ expsyms_regex)
+ export_symbols_regex="$arg"
+ prev=
+ continue
+ ;;
+ framework)
+ case $host in
+ *-*-darwin*)
+ case "$deplibs " in
+ *" $qarg.ltframework "*) ;;
+ *) deplibs="$deplibs $qarg.ltframework" # this is fixed later
+ ;;
+ esac
+ ;;
+ esac
+ prev=
+ continue
+ ;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
+ objectlist)
+ if test -f "$arg"; then
+ save_arg=$arg
+ moreargs=
+ for fil in `cat "$save_arg"`
+ do
+# moreargs="$moreargs $fil"
+ arg=$fil
+ # A libtool-controlled object.
+
+ # Check to see that this really is a libtool object.
+ if func_lalib_unsafe_p "$arg"; then
+ pic_object=
+ non_pic_object=
+
+ # Read the .lo file
+ func_source "$arg"
+
+ if test -z "$pic_object" ||
+ test -z "$non_pic_object" ||
+ test "$pic_object" = none &&
+ test "$non_pic_object" = none; then
+ func_fatal_error "cannot find name of object for \`$arg'"
+ fi
+
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ if test "$pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ pic_object="$xdir$pic_object"
+
+ if test "$prev" = dlfiles; then
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+ dlfiles="$dlfiles $pic_object"
+ prev=
+ continue
+ else
+ # If libtool objects are unsupported, then we need to preload.
+ prev=dlprefiles
+ fi
+ fi
+
+ # CHECK ME: I think I busted this. -Ossama
+ if test "$prev" = dlprefiles; then
+ # Preload the old-style object.
+ dlprefiles="$dlprefiles $pic_object"
+ prev=
+ fi
+
+ # A PIC object.
+ func_append libobjs " $pic_object"
+ arg="$pic_object"
+ fi
+
+ # Non-PIC object.
+ if test "$non_pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ non_pic_object="$xdir$non_pic_object"
+
+ # A standard non-PIC object
+ func_append non_pic_objects " $non_pic_object"
+ if test -z "$pic_object" || test "$pic_object" = none ; then
+ arg="$non_pic_object"
+ fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ fi
+ else
+ # Only an error if not doing a dry-run.
+ if $opt_dry_run; then
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ func_lo2o "$arg"
+ pic_object=$xdir$objdir/$func_lo2o_result
+ non_pic_object=$xdir$func_lo2o_result
+ func_append libobjs " $pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ else
+ func_fatal_error "\`$arg' is not a valid libtool object"
+ fi
+ fi
+ done
+ else
+ func_fatal_error "link input file \`$arg' does not exist"
+ fi
+ arg=$save_arg
+ prev=
+ continue
+ ;;
+ precious_regex)
+ precious_files_regex="$arg"
+ prev=
+ continue
+ ;;
+ release)
+ release="-$arg"
+ prev=
+ continue
+ ;;
+ rpath | xrpath)
+ # We need an absolute path.
+ case $arg in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ func_fatal_error "only absolute run-paths are allowed"
+ ;;
+ esac
+ if test "$prev" = rpath; then
+ case "$rpath " in
+ *" $arg "*) ;;
+ *) rpath="$rpath $arg" ;;
+ esac
+ else
+ case "$xrpath " in
+ *" $arg "*) ;;
+ *) xrpath="$xrpath $arg" ;;
+ esac
+ fi
+ prev=
+ continue
+ ;;
+ shrext)
+ shrext_cmds="$arg"
+ prev=
+ continue
+ ;;
+ weak)
+ weak_libs="$weak_libs $arg"
+ prev=
+ continue
+ ;;
+ xcclinker)
+ linker_flags="$linker_flags $qarg"
+ compiler_flags="$compiler_flags $qarg"
+ prev=
+ func_append compile_command " $qarg"
+ func_append finalize_command " $qarg"
+ continue
+ ;;
+ xcompiler)
+ compiler_flags="$compiler_flags $qarg"
+ prev=
+ func_append compile_command " $qarg"
+ func_append finalize_command " $qarg"
+ continue
+ ;;
+ xlinker)
+ linker_flags="$linker_flags $qarg"
+ compiler_flags="$compiler_flags $wl$qarg"
+ prev=
+ func_append compile_command " $wl$qarg"
+ func_append finalize_command " $wl$qarg"
+ continue
+ ;;
+ *)
+ eval "$prev=\"\$arg\""
+ prev=
+ continue
+ ;;
+ esac
+ fi # test -n "$prev"
+
+ prevarg="$arg"
+
+ case $arg in
+ -all-static)
+ if test -n "$link_static_flag"; then
+ # See comment for -static flag below, for more details.
+ func_append compile_command " $link_static_flag"
+ func_append finalize_command " $link_static_flag"
+ fi
+ continue
+ ;;
+
+ -allow-undefined)
+ # FIXME: remove this flag sometime in the future.
+ func_fatal_error "\`-allow-undefined' must not be used because it is the default"
+ ;;
+
+ -avoid-version)
+ avoid_version=yes
+ continue
+ ;;
+
+ -dlopen)
+ prev=dlfiles
+ continue
+ ;;
+
+ -dlpreopen)
+ prev=dlprefiles
+ continue
+ ;;
+
+ -export-dynamic)
+ export_dynamic=yes
+ continue
+ ;;
+
+ -export-symbols | -export-symbols-regex)
+ if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
+ func_fatal_error "more than one -exported-symbols argument is not allowed"
+ fi
+ if test "X$arg" = "X-export-symbols"; then
+ prev=expsyms
+ else
+ prev=expsyms_regex
+ fi
+ continue
+ ;;
+
+ -framework)
+ prev=framework
+ continue
+ ;;
+
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
+ # so, if we see these flags be careful not to treat them like -L
+ -L[A-Z][A-Z]*:*)
+ case $with_gcc/$host in
+ no/*-*-irix* | /*-*-irix*)
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ ;;
+ esac
+ continue
+ ;;
+
+ -L*)
+ func_stripname '-L' '' "$arg"
+ dir=$func_stripname_result
+ if test -z "$dir"; then
+ if test "$#" -gt 0; then
+ func_fatal_error "require no space between \`-L' and \`$1'"
+ else
+ func_fatal_error "need path for \`-L' option"
+ fi
+ fi
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ absdir=`cd "$dir" && pwd`
+ test -z "$absdir" && \
+ func_fatal_error "cannot determine absolute directory name of \`$dir'"
+ dir="$absdir"
+ ;;
+ esac
+ case "$deplibs " in
+ *" -L$dir "*) ;;
+ *)
+ deplibs="$deplibs -L$dir"
+ lib_search_path="$lib_search_path $dir"
+ ;;
+ esac
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
+ case :$dllsearchpath: in
+ *":$dir:"*) ;;
+ ::) dllsearchpath=$dir;;
+ *) dllsearchpath="$dllsearchpath:$dir";;
+ esac
+ case :$dllsearchpath: in
+ *":$testbindir:"*) ;;
+ ::) dllsearchpath=$testbindir;;
+ *) dllsearchpath="$dllsearchpath:$testbindir";;
+ esac
+ ;;
+ esac
+ continue
+ ;;
+
+ -l*)
+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)
+ # These systems don't actually have a C or math library (as such)
+ continue
+ ;;
+ *-*-os2*)
+ # These systems don't actually have a C library (as such)
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc due to us having libc/libc_r.
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C and math libraries are in the System framework
+ deplibs="$deplibs System.ltframework"
+ continue
+ ;;
+ *-*-sco3.2v5* | *-*-sco5v6*)
+ # Causes problems with __ctype
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
+ # Compiler inserts libc in the correct place for threads to work
+ test "X$arg" = "X-lc" && continue
+ ;;
+ esac
+ elif test "X$arg" = "X-lc_r"; then
+ case $host in
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc_r directly, use -pthread flag.
+ continue
+ ;;
+ esac
+ fi
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
+ -module)
+ module=yes
+ continue
+ ;;
+
+ # Tru64 UNIX uses -model [arg] to determine the layout of C++
+ # classes, name mangling, and exception handling.
+ # Darwin uses the -arch flag to determine output architecture.
+ -model|-arch|-isysroot)
+ compiler_flags="$compiler_flags $arg"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ prev=xcompiler
+ continue
+ ;;
+
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ compiler_flags="$compiler_flags $arg"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ case "$new_inherited_linker_flags " in
+ *" $arg "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
+ esac
+ continue
+ ;;
+
+ -multi_module)
+ single_module="${wl}-multi_module"
+ continue
+ ;;
+
+ -no-fast-install)
+ fast_install=no
+ continue
+ ;;
+
+ -no-install)
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
+ # The PATH hackery in wrapper scripts is required on Windows
+ # and Darwin in order for the loader to find any dlls it needs.
+ func_warning "\`-no-install' is ignored for $host"
+ func_warning "assuming \`-no-fast-install' instead"
+ fast_install=no
+ ;;
+ *) no_install=yes ;;
+ esac
+ continue
+ ;;
+
+ -no-undefined)
+ allow_undefined=no
+ continue
+ ;;
+
+ -objectlist)
+ prev=objectlist
+ continue
+ ;;
+
+ -o) prev=output ;;
+
+ -precious-files-regex)
+ prev=precious_regex
+ continue
+ ;;
+
+ -release)
+ prev=release
+ continue
+ ;;
+
+ -rpath)
+ prev=rpath
+ continue
+ ;;
+
+ -R)
+ prev=xrpath
+ continue
+ ;;
+
+ -R*)
+ func_stripname '-R' '' "$arg"
+ dir=$func_stripname_result
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ func_fatal_error "only absolute run-paths are allowed"
+ ;;
+ esac
+ case "$xrpath " in
+ *" $dir "*) ;;
+ *) xrpath="$xrpath $dir" ;;
+ esac
+ continue
+ ;;
+
+ -shared)
+ # The effects of -shared are defined in a previous loop.
+ continue
+ ;;
+
+ -shrext)
+ prev=shrext
+ continue
+ ;;
+
+ -static | -static-libtool-libs)
+ # The effects of -static are defined in a previous loop.
+ # We used to do the same as -all-static on platforms that
+ # didn't have a PIC flag, but the assumption that the effects
+ # would be equivalent was wrong. It would break on at least
+ # Digital Unix and AIX.
+ continue
+ ;;
+
+ -thread-safe)
+ thread_safe=yes
+ continue
+ ;;
+
+ -version-info)
+ prev=vinfo
+ continue
+ ;;
+
+ -version-number)
+ prev=vinfo
+ vinfo_number=yes
+ continue
+ ;;
+
+ -weak)
+ prev=weak
+ continue
+ ;;
+
+ -Wc,*)
+ func_stripname '-Wc,' '' "$arg"
+ args=$func_stripname_result
+ arg=
+ save_ifs="$IFS"; IFS=','
+ for flag in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$flag"
+ arg="$arg $wl$func_quote_for_eval_result"
+ compiler_flags="$compiler_flags $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$arg"
+ arg=$func_stripname_result
+ ;;
+
+ -Wl,*)
+ func_stripname '-Wl,' '' "$arg"
+ args=$func_stripname_result
+ arg=
+ save_ifs="$IFS"; IFS=','
+ for flag in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$flag"
+ arg="$arg $wl$func_quote_for_eval_result"
+ compiler_flags="$compiler_flags $wl$func_quote_for_eval_result"
+ linker_flags="$linker_flags $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$arg"
+ arg=$func_stripname_result
+ ;;
+
+ -Xcompiler)
+ prev=xcompiler
+ continue
+ ;;
+
+ -Xlinker)
+ prev=xlinker
+ continue
+ ;;
+
+ -XCClinker)
+ prev=xcclinker
+ continue
+ ;;
+
+ # -msg_* for osf cc
+ -msg_*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+
+ # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
+ # -r[0-9][0-9]* specifies the processor on the SGI compiler
+ # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
+ # +DA*, +DD* enable 64-bit mode on the HP compiler
+ # -q* pass through compiler args for the IBM compiler
+ # -m*, -t[45]*, -txscale* pass through architecture-specific
+ # compiler args for GCC
+ # -F/path gives path to uninstalled frameworks, gcc on darwin
+ # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
+ # @file GCC response files
+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ compiler_flags="$compiler_flags $arg"
+ continue
+ ;;
+
+ # Some other compiler flag.
+ -* | +*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+
+ *.$objext)
+ # A standard object.
+ objs="$objs $arg"
+ ;;
+
+ *.lo)
+ # A libtool-controlled object.
+
+ # Check to see that this really is a libtool object.
+ if func_lalib_unsafe_p "$arg"; then
+ pic_object=
+ non_pic_object=
+
+ # Read the .lo file
+ func_source "$arg"
+
+ if test -z "$pic_object" ||
+ test -z "$non_pic_object" ||
+ test "$pic_object" = none &&
+ test "$non_pic_object" = none; then
+ func_fatal_error "cannot find name of object for \`$arg'"
+ fi
+
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ if test "$pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ pic_object="$xdir$pic_object"
+
+ if test "$prev" = dlfiles; then
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+ dlfiles="$dlfiles $pic_object"
+ prev=
+ continue
+ else
+ # If libtool objects are unsupported, then we need to preload.
+ prev=dlprefiles
+ fi
+ fi
+
+ # CHECK ME: I think I busted this. -Ossama
+ if test "$prev" = dlprefiles; then
+ # Preload the old-style object.
+ dlprefiles="$dlprefiles $pic_object"
+ prev=
+ fi
+
+ # A PIC object.
+ func_append libobjs " $pic_object"
+ arg="$pic_object"
+ fi
+
+ # Non-PIC object.
+ if test "$non_pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ non_pic_object="$xdir$non_pic_object"
+
+ # A standard non-PIC object
+ func_append non_pic_objects " $non_pic_object"
+ if test -z "$pic_object" || test "$pic_object" = none ; then
+ arg="$non_pic_object"
+ fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ fi
+ else
+ # Only an error if not doing a dry-run.
+ if $opt_dry_run; then
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ func_lo2o "$arg"
+ pic_object=$xdir$objdir/$func_lo2o_result
+ non_pic_object=$xdir$func_lo2o_result
+ func_append libobjs " $pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ else
+ func_fatal_error "\`$arg' is not a valid libtool object"
+ fi
+ fi
+ ;;
+
+ *.$libext)
+ # An archive.
+ deplibs="$deplibs $arg"
+ old_deplibs="$old_deplibs $arg"
+ continue
+ ;;
+
+ *.la)
+ # A libtool-controlled library.
+
+ if test "$prev" = dlfiles; then
+ # This library was specified with -dlopen.
+ dlfiles="$dlfiles $arg"
+ prev=
+ elif test "$prev" = dlprefiles; then
+ # The library was specified with -dlpreopen.
+ dlprefiles="$dlprefiles $arg"
+ prev=
+ else
+ deplibs="$deplibs $arg"
+ fi
+ continue
+ ;;
+
+ # Some other compiler argument.
+ *)
+ # Unknown arguments in both finalize_command and compile_command need
+ # to be aesthetically quoted because they are evaled later.
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+ esac # arg
+
+ # Now actually substitute the argument into the commands.
+ if test -n "$arg"; then
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ fi
+ done # argument parsing loop
+
+ test -n "$prev" && \
+ func_fatal_help "the \`$prevarg' option requires an argument"
+
+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
+ eval arg=\"$export_dynamic_flag_spec\"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ fi
+
+ oldlibs=
+ # calculate the name of the file, without its directory
+ func_basename "$output"
+ outputname="$func_basename_result"
+ libobjs_save="$libobjs"
+
+ if test -n "$shlibpath_var"; then
+ # get the directories listed in $shlibpath_var
+ eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
+ else
+ shlib_search_path=
+ fi
+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
+
+ func_dirname "$output" "/" ""
+ output_objdir="$func_dirname_result$objdir"
+ # Create the object directory.
+ func_mkdir_p "$output_objdir"
+
+ # Determine the type of output
+ case $output in
+ "")
+ func_fatal_help "you must specify an output file"
+ ;;
+ *.$libext) linkmode=oldlib ;;
+ *.lo | *.$objext) linkmode=obj ;;
+ *.la) linkmode=lib ;;
+ *) linkmode=prog ;; # Anything else should be a program.
+ esac
+
+ specialdeplibs=
+
+ libs=
+ # Find all interdependent deplibs by searching for libraries
+ # that are linked more than once (e.g. -la -lb -la)
+ for deplib in $deplibs; do
+ if $opt_duplicate_deps ; then
+ case "$libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ libs="$libs $deplib"
+ done
+
+ if test "$linkmode" = lib; then
+ libs="$predeps $libs $compiler_lib_search_path $postdeps"
+
+ # Compute libraries that are listed more than once in $predeps
+ # $postdeps and mark them as special (i.e., whose duplicates are
+ # not to be eliminated).
+ pre_post_deps=
+ if $opt_duplicate_compiler_generated_deps; then
+ for pre_post_dep in $predeps $postdeps; do
+ case "$pre_post_deps " in
+ *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
+ esac
+ pre_post_deps="$pre_post_deps $pre_post_dep"
+ done
+ fi
+ pre_post_deps=
+ fi
+
+ deplibs=
+ newdependency_libs=
+ newlib_search_path=
+ need_relink=no # whether we're linking any uninstalled libtool libraries
+ notinst_deplibs= # not-installed libtool libraries
+ notinst_path= # paths that contain not-installed libtool libraries
+
+ case $linkmode in
+ lib)
+ passes="conv dlpreopen link"
+ for file in $dlfiles $dlprefiles; do
+ case $file in
+ *.la) ;;
+ *)
+ func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
+ ;;
+ esac
+ done
+ ;;
+ prog)
+ compile_deplibs=
+ finalize_deplibs=
+ alldeplibs=no
+ newdlfiles=
+ newdlprefiles=
+ passes="conv scan dlopen dlpreopen link"
+ ;;
+ *) passes="conv"
+ ;;
+ esac
+
+ for pass in $passes; do
+ # The preopen pass in lib mode reverses $deplibs; put it back here
+ # so that -L comes before libs that need it for instance...
+ if test "$linkmode,$pass" = "lib,link"; then
+ ## FIXME: Find the place where the list is rebuilt in the wrong
+ ## order, and fix it there properly
+ tmp_deplibs=
+ for deplib in $deplibs; do
+ tmp_deplibs="$deplib $tmp_deplibs"
+ done
+ deplibs="$tmp_deplibs"
+ fi
+
+ if test "$linkmode,$pass" = "lib,link" ||
+ test "$linkmode,$pass" = "prog,scan"; then
+ libs="$deplibs"
+ deplibs=
+ fi
+ if test "$linkmode" = prog; then
+ case $pass in
+ dlopen) libs="$dlfiles" ;;
+ dlpreopen) libs="$dlprefiles" ;;
+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+ esac
+ fi
+ if test "$linkmode,$pass" = "lib,dlpreopen"; then
+ # Collect and forward deplibs of preopened libtool libs
+ for lib in $dlprefiles; do
+ # Ignore non-libtool-libs
+ dependency_libs=
+ case $lib in
+ *.la) func_source "$lib" ;;
+ esac
+
+ # Collect preopened libtool deplibs, except any this library
+ # has declared as weak libs
+ for deplib in $dependency_libs; do
+ deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"`
+ case " $weak_libs " in
+ *" $deplib_base "*) ;;
+ *) deplibs="$deplibs $deplib" ;;
+ esac
+ done
+ done
+ libs="$dlprefiles"
+ fi
+ if test "$pass" = dlopen; then
+ # Collect dlpreopened libraries
+ save_deplibs="$deplibs"
+ deplibs=
+ fi
+
+ for deplib in $libs; do
+ lib=
+ found=no
+ case $deplib in
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ compiler_flags="$compiler_flags $deplib"
+ if test "$linkmode" = lib ; then
+ case "$new_inherited_linker_flags " in
+ *" $deplib "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
+ esac
+ fi
+ fi
+ continue
+ ;;
+ -l*)
+ if test "$linkmode" != lib && test "$linkmode" != prog; then
+ func_warning "\`-l' is ignored for archives/objects"
+ continue
+ fi
+ func_stripname '-l' '' "$deplib"
+ name=$func_stripname_result
+ if test "$linkmode" = lib; then
+ searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
+ else
+ searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
+ fi
+ for searchdir in $searchdirs; do
+ for search_ext in .la $std_shrext .so .a; do
+ # Search the libtool library
+ lib="$searchdir/lib${name}${search_ext}"
+ if test -f "$lib"; then
+ if test "$search_ext" = ".la"; then
+ found=yes
+ else
+ found=no
+ fi
+ break 2
+ fi
+ done
+ done
+ if test "$found" != yes; then
+ # deplib doesn't seem to be a libtool library
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+ fi
+ continue
+ else # deplib is a libtool library
+ # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
+ # We need to do some special things here, and not later.
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $deplib "*)
+ if func_lalib_p "$lib"; then
+ library_names=
+ old_library=
+ func_source "$lib"
+ for l in $old_library $library_names; do
+ ll="$l"
+ done
+ if test "X$ll" = "X$old_library" ; then # only static version available
+ found=no
+ func_dirname "$lib" "" "."
+ ladir="$func_dirname_result"
+ lib=$ladir/$old_library
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+ fi
+ continue
+ fi
+ fi
+ ;;
+ *) ;;
+ esac
+ fi
+ fi
+ ;; # -l
+ *.ltframework)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ if test "$linkmode" = lib ; then
+ case "$new_inherited_linker_flags " in
+ *" $deplib "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
+ esac
+ fi
+ fi
+ continue
+ ;;
+ -L*)
+ case $linkmode in
+ lib)
+ deplibs="$deplib $deplibs"
+ test "$pass" = conv && continue
+ newdependency_libs="$deplib $newdependency_libs"
+ func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ prog)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ continue
+ fi
+ if test "$pass" = scan; then
+ deplibs="$deplib $deplibs"
+ else
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ fi
+ func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ *)
+ func_warning "\`-L' is ignored for archives/objects"
+ ;;
+ esac # linkmode
+ continue
+ ;; # -L
+ -R*)
+ if test "$pass" = link; then
+ func_stripname '-R' '' "$deplib"
+ dir=$func_stripname_result
+ # Make sure the xrpath contains only unique directories.
+ case "$xrpath " in
+ *" $dir "*) ;;
+ *) xrpath="$xrpath $dir" ;;
+ esac
+ fi
+ deplibs="$deplib $deplibs"
+ continue
+ ;;
+ *.la) lib="$deplib" ;;
+ *.$libext)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ continue
+ fi
+ case $linkmode in
+ lib)
+ # Linking convenience modules into shared libraries is allowed,
+ # but linking other static libraries is non-portable.
+ case " $dlpreconveniencelibs " in
+ *" $deplib "*) ;;
+ *)
+ valid_a_lib=no
+ case $deplibs_check_method in
+ match_pattern*)
+ set dummy $deplibs_check_method; shift
+ match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 10q \
+ | $EGREP "$match_pattern_regex" > /dev/null; then
+ valid_a_lib=yes
+ fi
+ ;;
+ pass_all)
+ valid_a_lib=yes
+ ;;
+ esac
+ if test "$valid_a_lib" != yes; then
+ $ECHO
+ $ECHO "*** Warning: Trying to link with static lib archive $deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because the file extensions .$libext of this argument makes me believe"
+ $ECHO "*** that it is just a static archive that I should not use here."
+ else
+ $ECHO
+ $ECHO "*** Warning: Linking the shared library $output against the"
+ $ECHO "*** static library $deplib is not portable!"
+ deplibs="$deplib $deplibs"
+ fi
+ ;;
+ esac
+ continue
+ ;;
+ prog)
+ if test "$pass" != link; then
+ deplibs="$deplib $deplibs"
+ else
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ fi
+ continue
+ ;;
+ esac # linkmode
+ ;; # *.$libext
+ *.lo | *.$objext)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ elif test "$linkmode" = prog; then
+ if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+ # If there is no dlopen support or we're linking statically,
+ # we need to preload.
+ newdlprefiles="$newdlprefiles $deplib"
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ newdlfiles="$newdlfiles $deplib"
+ fi
+ fi
+ continue
+ ;;
+ %DEPLIBS%)
+ alldeplibs=yes
+ continue
+ ;;
+ esac # case $deplib
+
+ if test "$found" = yes || test -f "$lib"; then :
+ else
+ func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
+ fi
+
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$lib" \
+ || func_fatal_error "\`$lib' is not a valid libtool archive"
+
+ func_dirname "$lib" "" "."
+ ladir="$func_dirname_result"
+
+ dlname=
+ dlopen=
+ dlpreopen=
+ libdir=
+ library_names=
+ old_library=
+ inherited_linker_flags=
+ # If the library was installed with an old release of libtool,
+ # it will not redefine variables installed, or shouldnotlink
+ installed=yes
+ shouldnotlink=no
+ avoidtemprpath=
+
+
+ # Read the .la file
+ func_source "$lib"
+
+ # Convert "-framework foo" to "foo.ltframework"
+ if test -n "$inherited_linker_flags"; then
+ tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
+ for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
+ case " $new_inherited_linker_flags " in
+ *" $tmp_inherited_linker_flag "*) ;;
+ *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";;
+ esac
+ done
+ fi
+ dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ if test "$linkmode,$pass" = "lib,link" ||
+ test "$linkmode,$pass" = "prog,scan" ||
+ { test "$linkmode" != prog && test "$linkmode" != lib; }; then
+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
+ fi
+
+ if test "$pass" = conv; then
+ # Only check for convenience libraries
+ deplibs="$lib $deplibs"
+ if test -z "$libdir"; then
+ if test -z "$old_library"; then
+ func_fatal_error "cannot find name of link library for \`$lib'"
+ fi
+ # It is a libtool convenience library, so add in its objects.
+ convenience="$convenience $ladir/$objdir/$old_library"
+ old_convenience="$old_convenience $ladir/$objdir/$old_library"
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
+ func_fatal_error "\`$lib' is not a convenience library"
+ fi
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ deplibs="$deplib $deplibs"
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done
+ continue
+ fi # $pass = conv
+
+
+ # Get the name of the library we link against.
+ linklib=
+ for l in $old_library $library_names; do
+ linklib="$l"
+ done
+ if test -z "$linklib"; then
+ func_fatal_error "cannot find name of link library for \`$lib'"
+ fi
+
+ # This library was specified with -dlopen.
+ if test "$pass" = dlopen; then
+ if test -z "$libdir"; then
+ func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
+ fi
+ if test -z "$dlname" ||
+ test "$dlopen_support" != yes ||
+ test "$build_libtool_libs" = no; then
+ # If there is no dlname, no dlopen support or we're linking
+ # statically, we need to preload. We also need to preload any
+ # dependent libraries so libltdl's deplib preloader doesn't
+ # bomb out in the load deplibs phase.
+ dlprefiles="$dlprefiles $lib $dependency_libs"
+ else
+ newdlfiles="$newdlfiles $lib"
+ fi
+ continue
+ fi # $pass = dlopen
+
+ # We need an absolute path.
+ case $ladir in
+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
+ *)
+ abs_ladir=`cd "$ladir" && pwd`
+ if test -z "$abs_ladir"; then
+ func_warning "cannot determine absolute directory name of \`$ladir'"
+ func_warning "passing it literally to the linker, although it might fail"
+ abs_ladir="$ladir"
+ fi
+ ;;
+ esac
+ func_basename "$lib"
+ laname="$func_basename_result"
+
+ # Find the relevant object directory and library name.
+ if test "X$installed" = Xyes; then
+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+ func_warning "library \`$lib' was moved."
+ dir="$ladir"
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+ dir="$libdir"
+ absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+ dir="$ladir"
+ absdir="$abs_ladir"
+ # Remove this search path later
+ notinst_path="$notinst_path $abs_ladir"
+ else
+ dir="$ladir/$objdir"
+ absdir="$abs_ladir/$objdir"
+ # Remove this search path later
+ notinst_path="$notinst_path $abs_ladir"
+ fi
+ fi # $installed = yes
+ func_stripname 'lib' '.la' "$laname"
+ name=$func_stripname_result
+
+ # This library was specified with -dlpreopen.
+ if test "$pass" = dlpreopen; then
+ if test -z "$libdir" && test "$linkmode" = prog; then
+ func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
+ fi
+ # Prefer using a static library (so that no silly _DYNAMIC symbols
+ # are required to link).
+ if test -n "$old_library"; then
+ newdlprefiles="$newdlprefiles $dir/$old_library"
+ # Keep a list of preopened convenience libraries to check
+ # that they are being used correctly in the link pass.
+ test -z "$libdir" && \
+ dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"
+ # Otherwise, use the dlname, so that lt_dlopen finds it.
+ elif test -n "$dlname"; then
+ newdlprefiles="$newdlprefiles $dir/$dlname"
+ else
+ newdlprefiles="$newdlprefiles $dir/$linklib"
+ fi
+ fi # $pass = dlpreopen
+
+ if test -z "$libdir"; then
+ # Link the convenience library
+ if test "$linkmode" = lib; then
+ deplibs="$dir/$old_library $deplibs"
+ elif test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$dir/$old_library $compile_deplibs"
+ finalize_deplibs="$dir/$old_library $finalize_deplibs"
+ else
+ deplibs="$lib $deplibs" # used for prog,scan pass
+ fi
+ continue
+ fi
+
+
+ if test "$linkmode" = prog && test "$pass" != link; then
+ newlib_search_path="$newlib_search_path $ladir"
+ deplibs="$lib $deplibs"
+
+ linkalldeplibs=no
+ if test "$link_all_deplibs" != no || test -z "$library_names" ||
+ test "$build_libtool_libs" = no; then
+ linkalldeplibs=yes
+ fi
+
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ case $deplib in
+ -L*) func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ esac
+ # Need to link against all dependency_libs?
+ if test "$linkalldeplibs" = yes; then
+ deplibs="$deplib $deplibs"
+ else
+ # Need to hardcode shared library paths
+ # or/and link against static libraries
+ newdependency_libs="$deplib $newdependency_libs"
+ fi
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done # for deplib
+ continue
+ fi # $linkmode = prog...
+
+ if test "$linkmode,$pass" = "prog,link"; then
+ if test -n "$library_names" &&
+ { { test "$prefer_static_libs" = no ||
+ test "$prefer_static_libs,$installed" = "built,yes"; } ||
+ test -z "$old_library"; }; then
+ # We need to hardcode the library path
+ if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
+ # Make sure the rpath contains only unique directories.
+ case "$temp_rpath:" in
+ *"$absdir:"*) ;;
+ *) temp_rpath="$temp_rpath$absdir:" ;;
+ esac
+ fi
+
+ # Hardcode the library path.
+ # Skip directories that are in the system default run-time
+ # search path.
+ case " $sys_lib_dlsearch_path " in
+ *" $absdir "*) ;;
+ *)
+ case "$compile_rpath " in
+ *" $absdir "*) ;;
+ *) compile_rpath="$compile_rpath $absdir"
+ esac
+ ;;
+ esac
+ case " $sys_lib_dlsearch_path " in
+ *" $libdir "*) ;;
+ *)
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir"
+ esac
+ ;;
+ esac
+ fi # $linkmode,$pass = prog,link...
+
+ if test "$alldeplibs" = yes &&
+ { test "$deplibs_check_method" = pass_all ||
+ { test "$build_libtool_libs" = yes &&
+ test -n "$library_names"; }; }; then
+ # We only need to search for static libraries
+ continue
+ fi
+ fi
+
+ link_static=no # Whether the deplib will be linked statically
+ use_static_libs=$prefer_static_libs
+ if test "$use_static_libs" = built && test "$installed" = yes; then
+ use_static_libs=no
+ fi
+ if test -n "$library_names" &&
+ { test "$use_static_libs" = no || test -z "$old_library"; }; then
+ case $host in
+ *cygwin* | *mingw* | *cegcc*)
+ # No point in relinking DLLs because paths are not encoded
+ notinst_deplibs="$notinst_deplibs $lib"
+ need_relink=no
+ ;;
+ *)
+ if test "$installed" = no; then
+ notinst_deplibs="$notinst_deplibs $lib"
+ need_relink=yes
+ fi
+ ;;
+ esac
+ # This is a shared library
+
+ # Warn about portability, can't link against -module's on some
+ # systems (darwin). Don't bleat about dlopened modules though!
+ dlopenmodule=""
+ for dlpremoduletest in $dlprefiles; do
+ if test "X$dlpremoduletest" = "X$lib"; then
+ dlopenmodule="$dlpremoduletest"
+ break
+ fi
+ done
+ if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
+ $ECHO
+ if test "$linkmode" = prog; then
+ $ECHO "*** Warning: Linking the executable $output against the loadable module"
+ else
+ $ECHO "*** Warning: Linking the shared library $output against the loadable module"
+ fi
+ $ECHO "*** $linklib is not portable!"
+ fi
+ if test "$linkmode" = lib &&
+ test "$hardcode_into_libs" = yes; then
+ # Hardcode the library path.
+ # Skip directories that are in the system default run-time
+ # search path.
+ case " $sys_lib_dlsearch_path " in
+ *" $absdir "*) ;;
+ *)
+ case "$compile_rpath " in
+ *" $absdir "*) ;;
+ *) compile_rpath="$compile_rpath $absdir"
+ esac
+ ;;
+ esac
+ case " $sys_lib_dlsearch_path " in
+ *" $libdir "*) ;;
+ *)
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir"
+ esac
+ ;;
+ esac
+ fi
+
+ if test -n "$old_archive_from_expsyms_cmds"; then
+ # figure out the soname
+ set dummy $library_names
+ shift
+ realname="$1"
+ shift
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ # use dlname if we got it. it's perfectly good, no?
+ if test -n "$dlname"; then
+ soname="$dlname"
+ elif test -n "$soname_spec"; then
+ # bleh windows
+ case $host in
+ *cygwin* | mingw* | *cegcc*)
+ func_arith $current - $age
+ major=$func_arith_result
+ versuffix="-$major"
+ ;;
+ esac
+ eval soname=\"$soname_spec\"
+ else
+ soname="$realname"
+ fi
+
+ # Make a new name for the extract_expsyms_cmds to use
+ soroot="$soname"
+ func_basename "$soroot"
+ soname="$func_basename_result"
+ func_stripname 'lib' '.dll' "$soname"
+ newlib=libimp-$func_stripname_result.a
+
+ # If the library has no export list, then create one now
+ if test -f "$output_objdir/$soname-def"; then :
+ else
+ func_verbose "extracting exported symbol list from \`$soname'"
+ func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
+ fi
+
+ # Create $newlib
+ if test -f "$output_objdir/$newlib"; then :; else
+ func_verbose "generating import library for \`$soname'"
+ func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
+ fi
+ # make sure the library variables are pointing to the new library
+ dir=$output_objdir
+ linklib=$newlib
+ fi # test -n "$old_archive_from_expsyms_cmds"
+
+ if test "$linkmode" = prog || test "$mode" != relink; then
+ add_shlibpath=
+ add_dir=
+ add=
+ lib_linked=yes
+ case $hardcode_action in
+ immediate | unsupported)
+ if test "$hardcode_direct" = no; then
+ add="$dir/$linklib"
+ case $host in
+ *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
+ *-*-sysv4*uw2*) add_dir="-L$dir" ;;
+ *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
+ *-*-unixware7*) add_dir="-L$dir" ;;
+ *-*-darwin* )
+ # if the lib is a (non-dlopened) module then we can not
+ # link against it, someone is ignoring the earlier warnings
+ if /usr/bin/file -L $add 2> /dev/null |
+ $GREP ": [^:]* bundle" >/dev/null ; then
+ if test "X$dlopenmodule" != "X$lib"; then
+ $ECHO "*** Warning: lib $linklib is a module, not a shared library"
+ if test -z "$old_library" ; then
+ $ECHO
+ $ECHO "*** And there doesn't seem to be a static archive available"
+ $ECHO "*** The link will probably fail, sorry"
+ else
+ add="$dir/$old_library"
+ fi
+ elif test -n "$old_library"; then
+ add="$dir/$old_library"
+ fi
+ fi
+ esac
+ elif test "$hardcode_minus_L" = no; then
+ case $host in
+ *-*-sunos*) add_shlibpath="$dir" ;;
+ esac
+ add_dir="-L$dir"
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = no; then
+ add_shlibpath="$dir"
+ add="-l$name"
+ else
+ lib_linked=no
+ fi
+ ;;
+ relink)
+ if test "$hardcode_direct" = yes &&
+ test "$hardcode_direct_absolute" = no; then
+ add="$dir/$linklib"
+ elif test "$hardcode_minus_L" = yes; then
+ add_dir="-L$dir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = yes; then
+ add_shlibpath="$dir"
+ add="-l$name"
+ else
+ lib_linked=no
+ fi
+ ;;
+ *) lib_linked=no ;;
+ esac
+
+ if test "$lib_linked" != yes; then
+ func_fatal_configuration "unsupported hardcode properties"
+ fi
+
+ if test -n "$add_shlibpath"; then
+ case :$compile_shlibpath: in
+ *":$add_shlibpath:"*) ;;
+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
+ esac
+ fi
+ if test "$linkmode" = prog; then
+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
+ test -n "$add" && compile_deplibs="$add $compile_deplibs"
+ else
+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
+ test -n "$add" && deplibs="$add $deplibs"
+ if test "$hardcode_direct" != yes &&
+ test "$hardcode_minus_L" != yes &&
+ test "$hardcode_shlibpath_var" = yes; then
+ case :$finalize_shlibpath: in
+ *":$libdir:"*) ;;
+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
+ esac
+ fi
+ fi
+ fi
+
+ if test "$linkmode" = prog || test "$mode" = relink; then
+ add_shlibpath=
+ add_dir=
+ add=
+ # Finalize command for both is simple: just hardcode it.
+ if test "$hardcode_direct" = yes &&
+ test "$hardcode_direct_absolute" = no; then
+ add="$libdir/$linklib"
+ elif test "$hardcode_minus_L" = yes; then
+ add_dir="-L$libdir"
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = yes; then
+ case :$finalize_shlibpath: in
+ *":$libdir:"*) ;;
+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
+ esac
+ add="-l$name"
+ elif test "$hardcode_automatic" = yes; then
+ if test -n "$inst_prefix_dir" &&
+ test -f "$inst_prefix_dir$libdir/$linklib" ; then
+ add="$inst_prefix_dir$libdir/$linklib"
+ else
+ add="$libdir/$linklib"
+ fi
+ else
+ # We cannot seem to hardcode it, guess we'll fake it.
+ add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add="-l$name"
+ fi
+
+ if test "$linkmode" = prog; then
+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
+ else
+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
+ test -n "$add" && deplibs="$add $deplibs"
+ fi
+ fi
+ elif test "$linkmode" = prog; then
+ # Here we assume that one of hardcode_direct or hardcode_minus_L
+ # is not unsupported. This is valid on all known static and
+ # shared platforms.
+ if test "$hardcode_direct" != unsupported; then
+ test -n "$old_library" && linklib="$old_library"
+ compile_deplibs="$dir/$linklib $compile_deplibs"
+ finalize_deplibs="$dir/$linklib $finalize_deplibs"
+ else
+ compile_deplibs="-l$name -L$dir $compile_deplibs"
+ finalize_deplibs="-l$name -L$dir $finalize_deplibs"
+ fi
+ elif test "$build_libtool_libs" = yes; then
+ # Not a shared library
+ if test "$deplibs_check_method" != pass_all; then
+ # We're trying link a shared library against a static one
+ # but the system doesn't support it.
+
+ # Just print a warning and add the library to dependency_libs so
+ # that the program can be linked against the static library.
+ $ECHO
+ $ECHO "*** Warning: This system can not link to static lib archive $lib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have."
+ if test "$module" = yes; then
+ $ECHO "*** But as you try to build a module library, libtool will still create "
+ $ECHO "*** a static module, that should work as long as the dlopening application"
+ $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime."
+ if test -z "$global_symbol_pipe"; then
+ $ECHO
+ $ECHO "*** However, this would only work if libtool was able to extract symbol"
+ $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
+ $ECHO "*** not find such a program. So, this module is probably useless."
+ $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
+ fi
+ if test "$build_old_libs" = no; then
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ fi
+ else
+ deplibs="$dir/$old_library $deplibs"
+ link_static=yes
+ fi
+ fi # link shared/static library?
+
+ if test "$linkmode" = lib; then
+ if test -n "$dependency_libs" &&
+ { test "$hardcode_into_libs" != yes ||
+ test "$build_old_libs" = yes ||
+ test "$link_static" = yes; }; then
+ # Extract -R from dependency_libs
+ temp_deplibs=
+ for libdir in $dependency_libs; do
+ case $libdir in
+ -R*) func_stripname '-R' '' "$libdir"
+ temp_xrpath=$func_stripname_result
+ case " $xrpath " in
+ *" $temp_xrpath "*) ;;
+ *) xrpath="$xrpath $temp_xrpath";;
+ esac;;
+ *) temp_deplibs="$temp_deplibs $libdir";;
+ esac
+ done
+ dependency_libs="$temp_deplibs"
+ fi
+
+ newlib_search_path="$newlib_search_path $absdir"
+ # Link against this library
+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
+ # ... and its dependency_libs
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ newdependency_libs="$deplib $newdependency_libs"
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done
+
+ if test "$link_all_deplibs" != no; then
+ # Add the search paths of all dependency libraries
+ for deplib in $dependency_libs; do
+ case $deplib in
+ -L*) path="$deplib" ;;
+ *.la)
+ func_dirname "$deplib" "" "."
+ dir="$func_dirname_result"
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
+ *)
+ absdir=`cd "$dir" && pwd`
+ if test -z "$absdir"; then
+ func_warning "cannot determine absolute directory name of \`$dir'"
+ absdir="$dir"
+ fi
+ ;;
+ esac
+ if $GREP "^installed=no" $deplib > /dev/null; then
+ case $host in
+ *-*-darwin*)
+ depdepl=
+ eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+ if test -n "$deplibrary_names" ; then
+ for tmp in $deplibrary_names ; do
+ depdepl=$tmp
+ done
+ if test -f "$absdir/$objdir/$depdepl" ; then
+ depdepl="$absdir/$objdir/$depdepl"
+ darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+ if test -z "$darwin_install_name"; then
+ darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+ fi
+ compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
+ linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}"
+ path=
+ fi
+ fi
+ ;;
+ *)
+ path="-L$absdir/$objdir"
+ ;;
+ esac
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$deplib' is not a valid libtool archive"
+ test "$absdir" != "$libdir" && \
+ func_warning "\`$deplib' seems to be moved"
+
+ path="-L$absdir"
+ fi
+ ;;
+ esac
+ case " $deplibs " in
+ *" $path "*) ;;
+ *) deplibs="$path $deplibs" ;;
+ esac
+ done
+ fi # link_all_deplibs != no
+ fi # linkmode = lib
+ done # for deplib in $libs
+ if test "$pass" = link; then
+ if test "$linkmode" = "prog"; then
+ compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
+ finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
+ else
+ compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ fi
+ fi
+ dependency_libs="$newdependency_libs"
+ if test "$pass" = dlpreopen; then
+ # Link the dlpreopened libraries before other libraries
+ for deplib in $save_deplibs; do
+ deplibs="$deplib $deplibs"
+ done
+ fi
+ if test "$pass" != dlopen; then
+ if test "$pass" != conv; then
+ # Make sure lib_search_path contains only unique directories.
+ lib_search_path=
+ for dir in $newlib_search_path; do
+ case "$lib_search_path " in
+ *" $dir "*) ;;
+ *) lib_search_path="$lib_search_path $dir" ;;
+ esac
+ done
+ newlib_search_path=
+ fi
+
+ if test "$linkmode,$pass" != "prog,link"; then
+ vars="deplibs"
+ else
+ vars="compile_deplibs finalize_deplibs"
+ fi
+ for var in $vars dependency_libs; do
+ # Add libraries to $var in reverse order
+ eval tmp_libs=\"\$$var\"
+ new_libs=
+ for deplib in $tmp_libs; do
+ # FIXME: Pedantically, this is the right thing to do, so
+ # that some nasty dependency loop isn't accidentally
+ # broken:
+ #new_libs="$deplib $new_libs"
+ # Pragmatically, this seems to cause very few problems in
+ # practice:
+ case $deplib in
+ -L*) new_libs="$deplib $new_libs" ;;
+ -R*) ;;
+ *)
+ # And here is the reason: when a library appears more
+ # than once as an explicit dependence of a library, or
+ # is implicitly linked in more than once by the
+ # compiler, it is considered special, and multiple
+ # occurrences thereof are not removed. Compare this
+ # with having the same library being listed as a
+ # dependency of multiple other libraries: in this case,
+ # we know (pedantically, we assume) the library does not
+ # need to be listed more than once, so we keep only the
+ # last copy. This is not always right, but it is rare
+ # enough that we require users that really mean to play
+ # such unportable linking tricks to link the library
+ # using -Wl,-lname, so that libtool does not consider it
+ # for duplicate removal.
+ case " $specialdeplibs " in
+ *" $deplib "*) new_libs="$deplib $new_libs" ;;
+ *)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$deplib $new_libs" ;;
+ esac
+ ;;
+ esac
+ ;;
+ esac
+ done
+ tmp_libs=
+ for deplib in $new_libs; do
+ case $deplib in
+ -L*)
+ case " $tmp_libs " in
+ *" $deplib "*) ;;
+ *) tmp_libs="$tmp_libs $deplib" ;;
+ esac
+ ;;
+ *) tmp_libs="$tmp_libs $deplib" ;;
+ esac
+ done
+ eval $var=\"$tmp_libs\"
+ done # for var
+ fi
+ # Last step: remove runtime libs from dependency_libs
+ # (they stay in deplibs)
+ tmp_libs=
+ for i in $dependency_libs ; do
+ case " $predeps $postdeps $compiler_lib_search_path " in
+ *" $i "*)
+ i=""
+ ;;
+ esac
+ if test -n "$i" ; then
+ tmp_libs="$tmp_libs $i"
+ fi
+ done
+ dependency_libs=$tmp_libs
+ done # for pass
+ if test "$linkmode" = prog; then
+ dlfiles="$newdlfiles"
+ fi
+ if test "$linkmode" = prog || test "$linkmode" = lib; then
+ dlprefiles="$newdlprefiles"
+ fi
+
+ case $linkmode in
+ oldlib)
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ func_warning "\`-dlopen' is ignored for archives"
+ fi
+
+ case " $deplibs" in
+ *\ -l* | *\ -L*)
+ func_warning "\`-l' and \`-L' are ignored for archives" ;;
+ esac
+
+ test -n "$rpath" && \
+ func_warning "\`-rpath' is ignored for archives"
+
+ test -n "$xrpath" && \
+ func_warning "\`-R' is ignored for archives"
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info/-version-number' is ignored for archives"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for archives"
+
+ test -n "$export_symbols$export_symbols_regex" && \
+ func_warning "\`-export-symbols' is ignored for archives"
+
+ # Now set the variables for building old libraries.
+ build_libtool_libs=no
+ oldlibs="$output"
+ objs="$objs$old_deplibs"
+ ;;
+
+ lib)
+ # Make sure we only generate libraries of the form `libNAME.la'.
+ case $outputname in
+ lib*)
+ func_stripname 'lib' '.la' "$outputname"
+ name=$func_stripname_result
+ eval shared_ext=\"$shrext_cmds\"
+ eval libname=\"$libname_spec\"
+ ;;
+ *)
+ test "$module" = no && \
+ func_fatal_help "libtool library \`$output' must begin with \`lib'"
+
+ if test "$need_lib_prefix" != no; then
+ # Add the "lib" prefix for modules if required
+ func_stripname '' '.la' "$outputname"
+ name=$func_stripname_result
+ eval shared_ext=\"$shrext_cmds\"
+ eval libname=\"$libname_spec\"
+ else
+ func_stripname '' '.la' "$outputname"
+ libname=$func_stripname_result
+ fi
+ ;;
+ esac
+
+ if test -n "$objs"; then
+ if test "$deplibs_check_method" != pass_all; then
+ func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
+ else
+ $ECHO
+ $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
+ $ECHO "*** objects $objs is not portable!"
+ libobjs="$libobjs $objs"
+ fi
+ fi
+
+ test "$dlself" != no && \
+ func_warning "\`-dlopen self' is ignored for libtool libraries"
+
+ set dummy $rpath
+ shift
+ test "$#" -gt 1 && \
+ func_warning "ignoring multiple \`-rpath's for a libtool library"
+
+ install_libdir="$1"
+
+ oldlibs=
+ if test -z "$rpath"; then
+ if test "$build_libtool_libs" = yes; then
+ # Building a libtool convenience library.
+ # Some compilers have problems with a `.al' extension so
+ # convenience libraries should have the same extension an
+ # archive normally would.
+ oldlibs="$output_objdir/$libname.$libext $oldlibs"
+ build_libtool_libs=convenience
+ build_old_libs=yes
+ fi
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for convenience libraries"
+ else
+
+ # Parse the version information argument.
+ save_ifs="$IFS"; IFS=':'
+ set dummy $vinfo 0 0 0
+ shift
+ IFS="$save_ifs"
+
+ test -n "$7" && \
+ func_fatal_help "too many parameters to \`-version-info'"
+
+ # convert absolute version numbers to libtool ages
+ # this retains compatibility with .la files and attempts
+ # to make the code below a bit more comprehensible
+
+ case $vinfo_number in
+ yes)
+ number_major="$1"
+ number_minor="$2"
+ number_revision="$3"
+ #
+ # There are really only two kinds -- those that
+ # use the current revision as the major version
+ # and those that subtract age and use age as
+ # a minor version. But, then there is irix
+ # which has an extra 1 added just for fun
+ #
+ case $version_type in
+ darwin|linux|osf|windows|none)
+ func_arith $number_major + $number_minor
+ current=$func_arith_result
+ age="$number_minor"
+ revision="$number_revision"
+ ;;
+ freebsd-aout|freebsd-elf|sunos)
+ current="$number_major"
+ revision="$number_minor"
+ age="0"
+ ;;
+ irix|nonstopux)
+ func_arith $number_major + $number_minor
+ current=$func_arith_result
+ age="$number_minor"
+ revision="$number_minor"
+ lt_irix_increment=no
+ ;;
+ esac
+ ;;
+ no)
+ current="$1"
+ revision="$2"
+ age="$3"
+ ;;
+ esac
+
+ # Check that each of the things are valid numbers.
+ case $current in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "CURRENT \`$current' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ case $revision in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "REVISION \`$revision' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ case $age in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "AGE \`$age' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ if test "$age" -gt "$current"; then
+ func_error "AGE \`$age' is greater than the current interface number \`$current'"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ fi
+
+ # Calculate the version variables.
+ major=
+ versuffix=
+ verstring=
+ case $version_type in
+ none) ;;
+
+ darwin)
+ # Like Linux, but with the current version available in
+ # verstring for coding it into the library header
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix="$major.$age.$revision"
+ # Darwin ld doesn't like 0 for these options...
+ func_arith $current + 1
+ minor_current=$func_arith_result
+ xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+ ;;
+
+ freebsd-aout)
+ major=".$current"
+ versuffix=".$current.$revision";
+ ;;
+
+ freebsd-elf)
+ major=".$current"
+ versuffix=".$current"
+ ;;
+
+ irix | nonstopux)
+ if test "X$lt_irix_increment" = "Xno"; then
+ func_arith $current - $age
+ else
+ func_arith $current - $age + 1
+ fi
+ major=$func_arith_result
+
+ case $version_type in
+ nonstopux) verstring_prefix=nonstopux ;;
+ *) verstring_prefix=sgi ;;
+ esac
+ verstring="$verstring_prefix$major.$revision"
+
+ # Add in all the interfaces that we are compatible with.
+ loop=$revision
+ while test "$loop" -ne 0; do
+ func_arith $revision - $loop
+ iface=$func_arith_result
+ func_arith $loop - 1
+ loop=$func_arith_result
+ verstring="$verstring_prefix$major.$iface:$verstring"
+ done
+
+ # Before this point, $major must not contain `.'.
+ major=.$major
+ versuffix="$major.$revision"
+ ;;
+
+ linux)
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix="$major.$age.$revision"
+ ;;
+
+ osf)
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix=".$current.$age.$revision"
+ verstring="$current.$age.$revision"
+
+ # Add in all the interfaces that we are compatible with.
+ loop=$age
+ while test "$loop" -ne 0; do
+ func_arith $current - $loop
+ iface=$func_arith_result
+ func_arith $loop - 1
+ loop=$func_arith_result
+ verstring="$verstring:${iface}.0"
+ done
+
+ # Make executables depend on our current version.
+ verstring="$verstring:${current}.0"
+ ;;
+
+ qnx)
+ major=".$current"
+ versuffix=".$current"
+ ;;
+
+ sunos)
+ major=".$current"
+ versuffix=".$current.$revision"
+ ;;
+
+ windows)
+ # Use '-' rather than '.', since we only want one
+ # extension on DOS 8.3 filesystems.
+ func_arith $current - $age
+ major=$func_arith_result
+ versuffix="-$major"
+ ;;
+
+ *)
+ func_fatal_configuration "unknown library version type \`$version_type'"
+ ;;
+ esac
+
+ # Clear the version info if we defaulted, and they specified a release.
+ if test -z "$vinfo" && test -n "$release"; then
+ major=
+ case $version_type in
+ darwin)
+ # we can't check for "0.0" in archive_cmds due to quoting
+ # problems, so we reset it completely
+ verstring=
+ ;;
+ *)
+ verstring="0.0"
+ ;;
+ esac
+ if test "$need_version" = no; then
+ versuffix=
+ else
+ versuffix=".0.0"
+ fi
+ fi
+
+ # Remove version info from name if versioning should be avoided
+ if test "$avoid_version" = yes && test "$need_version" = no; then
+ major=
+ versuffix=
+ verstring=""
+ fi
+
+ # Check to see if the archive will have undefined symbols.
+ if test "$allow_undefined" = yes; then
+ if test "$allow_undefined_flag" = unsupported; then
+ func_warning "undefined symbols not allowed in $host shared libraries"
+ build_libtool_libs=no
+ build_old_libs=yes
+ fi
+ else
+ # Don't allow undefined symbols.
+ allow_undefined_flag="$no_undefined_flag"
+ fi
+
+ fi
+
+ func_generate_dlsyms "$libname" "$libname" "yes"
+ libobjs="$libobjs $symfileobj"
+ test "X$libobjs" = "X " && libobjs=
+
+ if test "$mode" != relink; then
+ # Remove our outputs, but don't remove object files since they
+ # may have been created when compiling PIC objects.
+ removelist=
+ tempremovelist=`$ECHO "$output_objdir/*"`
+ for p in $tempremovelist; do
+ case $p in
+ *.$objext | *.gcno)
+ ;;
+ $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
+ if test "X$precious_files_regex" != "X"; then
+ if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
+ then
+ continue
+ fi
+ fi
+ removelist="$removelist $p"
+ ;;
+ *) ;;
+ esac
+ done
+ test -n "$removelist" && \
+ func_show_eval "${RM}r \$removelist"
+ fi
+
+ # Now set the variables for building old libraries.
+ if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
+ oldlibs="$oldlibs $output_objdir/$libname.$libext"
+
+ # Transform .lo files to .o files.
+ oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
+ fi
+
+ # Eliminate all temporary directories.
+ #for path in $notinst_path; do
+ # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"`
+ # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"`
+ # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"`
+ #done
+
+ if test -n "$xrpath"; then
+ # If the user specified any rpath flags, then add them.
+ temp_xrpath=
+ for libdir in $xrpath; do
+ temp_xrpath="$temp_xrpath -R$libdir"
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir" ;;
+ esac
+ done
+ if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
+ dependency_libs="$temp_xrpath $dependency_libs"
+ fi
+ fi
+
+ # Make sure dlfiles contains only unique files that won't be dlpreopened
+ old_dlfiles="$dlfiles"
+ dlfiles=
+ for lib in $old_dlfiles; do
+ case " $dlprefiles $dlfiles " in
+ *" $lib "*) ;;
+ *) dlfiles="$dlfiles $lib" ;;
+ esac
+ done
+
+ # Make sure dlprefiles contains only unique files
+ old_dlprefiles="$dlprefiles"
+ dlprefiles=
+ for lib in $old_dlprefiles; do
+ case "$dlprefiles " in
+ *" $lib "*) ;;
+ *) dlprefiles="$dlprefiles $lib" ;;
+ esac
+ done
+
+ if test "$build_libtool_libs" = yes; then
+ if test -n "$rpath"; then
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)
+ # these systems don't actually have a c library (as such)!
+ ;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C library is in the System framework
+ deplibs="$deplibs System.ltframework"
+ ;;
+ *-*-netbsd*)
+ # Don't link with libc until the a.out ld.so is fixed.
+ ;;
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc due to us having libc/libc_r.
+ ;;
+ *-*-sco3.2v5* | *-*-sco5v6*)
+ # Causes problems with __ctype
+ ;;
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
+ # Compiler inserts libc in the correct place for threads to work
+ ;;
+ *)
+ # Add libc to deplibs on all other systems if necessary.
+ if test "$build_libtool_need_lc" = "yes"; then
+ deplibs="$deplibs -lc"
+ fi
+ ;;
+ esac
+ fi
+
+ # Transform deplibs into only deplibs that can be linked in shared.
+ name_save=$name
+ libname_save=$libname
+ release_save=$release
+ versuffix_save=$versuffix
+ major_save=$major
+ # I'm not sure if I'm treating the release correctly. I think
+ # release should show up in the -l (ie -lgmp5) so we don't want to
+ # add it in twice. Is that correct?
+ release=""
+ versuffix=""
+ major=""
+ newdeplibs=
+ droppeddeps=no
+ case $deplibs_check_method in
+ pass_all)
+ # Don't check for shared/static. Everything works.
+ # This might be a little naive. We might want to check
+ # whether the library exists or not. But this is on
+ # osf3 & osf4 and I'm not really sure... Just
+ # implementing what was already the behavior.
+ newdeplibs=$deplibs
+ ;;
+ test_compile)
+ # This code stresses the "libraries are programs" paradigm to its
+ # limits. Maybe even breaks it. We compile a program, linking it
+ # against the deplibs as a proxy for the library. Then we can check
+ # whether they linked in statically or dynamically with ldd.
+ $opt_dry_run || $RM conftest.c
+ cat > conftest.c <<EOF
+ int main() { return 0; }
+EOF
+ $opt_dry_run || $RM conftest
+ if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
+ ldd_output=`ldd conftest`
+ for i in $deplibs; do
+ case $i in
+ -l*)
+ func_stripname -l '' "$i"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $i "*)
+ newdeplibs="$newdeplibs $i"
+ i=""
+ ;;
+ esac
+ fi
+ if test -n "$i" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
+ set dummy $deplib_matches; shift
+ deplib_match=$1
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+ newdeplibs="$newdeplibs $i"
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: dynamic linker does not accept needed library $i."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which I believe you do not have"
+ $ECHO "*** because a test_compile did reveal that the linker did not use it for"
+ $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."
+ fi
+ fi
+ ;;
+ *)
+ newdeplibs="$newdeplibs $i"
+ ;;
+ esac
+ done
+ else
+ # Error occurred in the first compile. Let's try to salvage
+ # the situation: Compile a separate program for each library.
+ for i in $deplibs; do
+ case $i in
+ -l*)
+ func_stripname -l '' "$i"
+ name=$func_stripname_result
+ $opt_dry_run || $RM conftest
+ if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
+ ldd_output=`ldd conftest`
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $i "*)
+ newdeplibs="$newdeplibs $i"
+ i=""
+ ;;
+ esac
+ fi
+ if test -n "$i" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
+ set dummy $deplib_matches; shift
+ deplib_match=$1
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+ newdeplibs="$newdeplibs $i"
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: dynamic linker does not accept needed library $i."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because a test_compile did reveal that the linker did not use this one"
+ $ECHO "*** as a dynamic dependency that programs can get resolved with at runtime."
+ fi
+ fi
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning! Library $i is needed by this library but I was not able to"
+ $ECHO "*** make it link in! You will probably need to install it or some"
+ $ECHO "*** library that it depends on before this library will be fully"
+ $ECHO "*** functional. Installing it before continuing would be even better."
+ fi
+ ;;
+ *)
+ newdeplibs="$newdeplibs $i"
+ ;;
+ esac
+ done
+ fi
+ ;;
+ file_magic*)
+ set dummy $deplibs_check_method; shift
+ file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ for a_deplib in $deplibs; do
+ case $a_deplib in
+ -l*)
+ func_stripname -l '' "$a_deplib"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $a_deplib "*)
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ ;;
+ esac
+ fi
+ if test -n "$a_deplib" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
+ for potent_lib in $potential_libs; do
+ # Follow soft links.
+ if ls -lLd "$potent_lib" 2>/dev/null |
+ $GREP " -> " >/dev/null; then
+ continue
+ fi
+ # The statement above tries to avoid entering an
+ # endless loop below, in case of cyclic links.
+ # We might still enter an endless loop, since a link
+ # loop can be closed while we follow links,
+ # but so what?
+ potlib="$potent_lib"
+ while test -h "$potlib" 2>/dev/null; do
+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
+ case $potliblink in
+ [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
+ *) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
+ esac
+ done
+ if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
+ $SED -e 10q |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ break 2
+ fi
+ done
+ done
+ fi
+ if test -n "$a_deplib" ; then
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because I did check the linker path looking for a file starting"
+ if test -z "$potlib" ; then
+ $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
+ else
+ $ECHO "*** with $libname and none of the candidates passed a file format test"
+ $ECHO "*** using a file magic. Last file checked: $potlib"
+ fi
+ fi
+ ;;
+ *)
+ # Add a -L argument.
+ newdeplibs="$newdeplibs $a_deplib"
+ ;;
+ esac
+ done # Gone through all deplibs.
+ ;;
+ match_pattern*)
+ set dummy $deplibs_check_method; shift
+ match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ for a_deplib in $deplibs; do
+ case $a_deplib in
+ -l*)
+ func_stripname -l '' "$a_deplib"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $a_deplib "*)
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ ;;
+ esac
+ fi
+ if test -n "$a_deplib" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
+ for potent_lib in $potential_libs; do
+ potlib="$potent_lib" # see symlink-check above in file_magic test
+ if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \
+ $EGREP "$match_pattern_regex" > /dev/null; then
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ break 2
+ fi
+ done
+ done
+ fi
+ if test -n "$a_deplib" ; then
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because I did check the linker path looking for a file starting"
+ if test -z "$potlib" ; then
+ $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
+ else
+ $ECHO "*** with $libname and none of the candidates passed a file format test"
+ $ECHO "*** using a regex pattern. Last file checked: $potlib"
+ fi
+ fi
+ ;;
+ *)
+ # Add a -L argument.
+ newdeplibs="$newdeplibs $a_deplib"
+ ;;
+ esac
+ done # Gone through all deplibs.
+ ;;
+ none | unknown | *)
+ newdeplibs=""
+ tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \
+ -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'`
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ for i in $predeps $postdeps ; do
+ # can't use Xsed below, because $i might contain '/'
+ tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`
+ done
+ fi
+ if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' |
+ $GREP . >/dev/null; then
+ $ECHO
+ if test "X$deplibs_check_method" = "Xnone"; then
+ $ECHO "*** Warning: inter-library dependencies are not supported in this platform."
+ else
+ $ECHO "*** Warning: inter-library dependencies are not known to be supported."
+ fi
+ $ECHO "*** All declared inter-library dependencies are being dropped."
+ droppeddeps=yes
+ fi
+ ;;
+ esac
+ versuffix=$versuffix_save
+ major=$major_save
+ release=$release_save
+ libname=$libname_save
+ name=$name_save
+
+ case $host in
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # On Rhapsody replace the C library with the System framework
+ newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ ;;
+ esac
+
+ if test "$droppeddeps" = yes; then
+ if test "$module" = yes; then
+ $ECHO
+ $ECHO "*** Warning: libtool could not satisfy all declared inter-library"
+ $ECHO "*** dependencies of module $libname. Therefore, libtool will create"
+ $ECHO "*** a static module, that should work as long as the dlopening"
+ $ECHO "*** application is linked with the -dlopen flag."
+ if test -z "$global_symbol_pipe"; then
+ $ECHO
+ $ECHO "*** However, this would only work if libtool was able to extract symbol"
+ $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
+ $ECHO "*** not find such a program. So, this module is probably useless."
+ $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
+ fi
+ if test "$build_old_libs" = no; then
+ oldlibs="$output_objdir/$libname.$libext"
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ else
+ $ECHO "*** The inter-library dependencies that have been dropped here will be"
+ $ECHO "*** automatically added whenever a program is linked with this library"
+ $ECHO "*** or is declared to -dlopen it."
+
+ if test "$allow_undefined" = no; then
+ $ECHO
+ $ECHO "*** Since this library must not contain undefined symbols,"
+ $ECHO "*** because either the platform does not support them or"
+ $ECHO "*** it was explicitly requested with -no-undefined,"
+ $ECHO "*** libtool will only create a static version of it."
+ if test "$build_old_libs" = no; then
+ oldlibs="$output_objdir/$libname.$libext"
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ fi
+ fi
+ fi
+ # Done checking deplibs!
+ deplibs=$newdeplibs
+ fi
+ # Time to change all our "foo.ltframework" stuff back to "-framework foo"
+ case $host in
+ *-*-darwin*)
+ newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ deplibs=`$ECHO "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ ;;
+ esac
+
+ # move library search paths that coincide with paths to not yet
+ # installed libraries to the beginning of the library search list
+ new_libs=
+ for path in $notinst_path; do
+ case " $new_libs " in
+ *" -L$path/$objdir "*) ;;
+ *)
+ case " $deplibs " in
+ *" -L$path/$objdir "*)
+ new_libs="$new_libs -L$path/$objdir" ;;
+ esac
+ ;;
+ esac
+ done
+ for deplib in $deplibs; do
+ case $deplib in
+ -L*)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ done
+ deplibs="$new_libs"
+
+ # All the library-specific variables (install_libdir is set above).
+ library_names=
+ old_library=
+ dlname=
+
+ # Test again, we may have decided not to build it any more
+ if test "$build_libtool_libs" = yes; then
+ if test "$hardcode_into_libs" = yes; then
+ # Hardcode the library paths
+ hardcode_libdirs=
+ dep_rpath=
+ rpath="$finalize_rpath"
+ test "$mode" != relink && rpath="$compile_rpath$rpath"
+ for libdir in $rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ dep_rpath="$dep_rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$perm_rpath " in
+ *" $libdir "*) ;;
+ *) perm_rpath="$perm_rpath $libdir" ;;
+ esac
+ fi
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ if test -n "$hardcode_libdir_flag_spec_ld"; then
+ eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
+ else
+ eval dep_rpath=\"$hardcode_libdir_flag_spec\"
+ fi
+ fi
+ if test -n "$runpath_var" && test -n "$perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
+ fi
+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
+ fi
+
+ shlibpath="$finalize_shlibpath"
+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
+ if test -n "$shlibpath"; then
+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
+ fi
+
+ # Get the real and link names of the library.
+ eval shared_ext=\"$shrext_cmds\"
+ eval library_names=\"$library_names_spec\"
+ set dummy $library_names
+ shift
+ realname="$1"
+ shift
+
+ if test -n "$soname_spec"; then
+ eval soname=\"$soname_spec\"
+ else
+ soname="$realname"
+ fi
+ if test -z "$dlname"; then
+ dlname=$soname
+ fi
+
+ lib="$output_objdir/$realname"
+ linknames=
+ for link
+ do
+ linknames="$linknames $link"
+ done
+
+ # Use standard objects if they are pic
+ test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ test "X$libobjs" = "X " && libobjs=
+
+ delfiles=
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
+ export_symbols="$output_objdir/$libname.uexp"
+ delfiles="$delfiles $export_symbols"
+ fi
+
+ orig_export_symbols=
+ case $host_os in
+ cygwin* | mingw* | cegcc*)
+ if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
+ # exporting using user supplied symfile
+ if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
+ # and it's NOT already a .def file. Must figure out
+ # which of the given symbols are data symbols and tag
+ # them as such. So, trigger use of export_symbols_cmds.
+ # export_symbols gets reassigned inside the "prepare
+ # the list of exported symbols" if statement, so the
+ # include_expsyms logic still works.
+ orig_export_symbols="$export_symbols"
+ export_symbols=
+ always_export_symbols=yes
+ fi
+ fi
+ ;;
+ esac
+
+ # Prepare the list of exported symbols
+ if test -z "$export_symbols"; then
+ if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
+ func_verbose "generating symbol list for \`$libname.la'"
+ export_symbols="$output_objdir/$libname.exp"
+ $opt_dry_run || $RM $export_symbols
+ cmds=$export_symbols_cmds
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ eval cmd=\"$cmd\"
+ func_len " $cmd"
+ len=$func_len_result
+ if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ func_show_eval "$cmd" 'exit $?'
+ skipped_export=false
+ else
+ # The command line is too long to execute in one step.
+ func_verbose "using reloadable object file for export list..."
+ skipped_export=:
+ # Break out early, otherwise skipped_export may be
+ # set to false by a later but shorter cmd.
+ break
+ fi
+ done
+ IFS="$save_ifs"
+ if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
+ func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
+ func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
+ fi
+ fi
+ fi
+
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ tmp_export_symbols="$export_symbols"
+ test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+ $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
+ fi
+
+ if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
+ # The given exports_symbols file has to be filtered, so filter it.
+ func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+ # FIXME: $output_objdir/$libname.filter potentially contains lots of
+ # 's' commands which not all seds can handle. GNU sed should be fine
+ # though. Also, the filter scales superlinearly with the number of
+ # global variables. join(1) would be nice here, but unfortunately
+ # isn't a blessed tool.
+ $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
+ delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
+ export_symbols=$output_objdir/$libname.def
+ $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
+ fi
+
+ tmp_deplibs=
+ for test_deplib in $deplibs; do
+ case " $convenience " in
+ *" $test_deplib "*) ;;
+ *)
+ tmp_deplibs="$tmp_deplibs $test_deplib"
+ ;;
+ esac
+ done
+ deplibs="$tmp_deplibs"
+
+ if test -n "$convenience"; then
+ if test -n "$whole_archive_flag_spec" &&
+ test "$compiler_needs_object" = yes &&
+ test -z "$libobjs"; then
+ # extract the archives, so we have objects to list.
+ # TODO: could optimize this to just extract one archive.
+ whole_archive_flag_spec=
+ fi
+ if test -n "$whole_archive_flag_spec"; then
+ save_libobjs=$libobjs
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
+ test "X$libobjs" = "X " && libobjs=
+ else
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $convenience
+ libobjs="$libobjs $func_extract_archives_result"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+ fi
+
+ if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
+ eval flag=\"$thread_safe_flag_spec\"
+ linker_flags="$linker_flags $flag"
+ fi
+
+ # Make a backup of the uninstalled library when relinking
+ if test "$mode" = relink; then
+ $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
+ fi
+
+ # Do each of the archive commands.
+ if test "$module" = yes && test -n "$module_cmds" ; then
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
+ eval test_cmds=\"$module_expsym_cmds\"
+ cmds=$module_expsym_cmds
+ else
+ eval test_cmds=\"$module_cmds\"
+ cmds=$module_cmds
+ fi
+ else
+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
+ eval test_cmds=\"$archive_expsym_cmds\"
+ cmds=$archive_expsym_cmds
+ else
+ eval test_cmds=\"$archive_cmds\"
+ cmds=$archive_cmds
+ fi
+ fi
+
+ if test "X$skipped_export" != "X:" &&
+ func_len " $test_cmds" &&
+ len=$func_len_result &&
+ test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ :
+ else
+ # The command line is too long to link in one step, link piecewise
+ # or, if using GNU ld and skipped_export is not :, use a linker
+ # script.
+
+ # Save the value of $output and $libobjs because we want to
+ # use them later. If we have whole_archive_flag_spec, we
+ # want to use save_libobjs as it was before
+ # whole_archive_flag_spec was expanded, because we can't
+ # assume the linker understands whole_archive_flag_spec.
+ # This may have to be revisited, in case too many
+ # convenience libraries get linked in and end up exceeding
+ # the spec.
+ if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
+ save_libobjs=$libobjs
+ fi
+ save_output=$output
+ output_la=`$ECHO "X$output" | $Xsed -e "$basename"`
+
+ # Clear the reloadable object creation command queue and
+ # initialize k to one.
+ test_cmds=
+ concat_cmds=
+ objlist=
+ last_robj=
+ k=1
+
+ if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
+ output=${output_objdir}/${output_la}.lnkscript
+ func_verbose "creating GNU ld script: $output"
+ $ECHO 'INPUT (' > $output
+ for obj in $save_libobjs
+ do
+ $ECHO "$obj" >> $output
+ done
+ $ECHO ')' >> $output
+ delfiles="$delfiles $output"
+ elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
+ output=${output_objdir}/${output_la}.lnk
+ func_verbose "creating linker input file list: $output"
+ : > $output
+ set x $save_libobjs
+ shift
+ firstobj=
+ if test "$compiler_needs_object" = yes; then
+ firstobj="$1 "
+ shift
+ fi
+ for obj
+ do
+ $ECHO "$obj" >> $output
+ done
+ delfiles="$delfiles $output"
+ output=$firstobj\"$file_list_spec$output\"
+ else
+ if test -n "$save_libobjs"; then
+ func_verbose "creating reloadable object files..."
+ output=$output_objdir/$output_la-${k}.$objext
+ eval test_cmds=\"$reload_cmds\"
+ func_len " $test_cmds"
+ len0=$func_len_result
+ len=$len0
+
+ # Loop over the list of objects to be linked.
+ for obj in $save_libobjs
+ do
+ func_len " $obj"
+ func_arith $len + $func_len_result
+ len=$func_arith_result
+ if test "X$objlist" = X ||
+ test "$len" -lt "$max_cmd_len"; then
+ func_append objlist " $obj"
+ else
+ # The command $test_cmds is almost too long, add a
+ # command to the queue.
+ if test "$k" -eq 1 ; then
+ # The first file doesn't have a previous command to add.
+ eval concat_cmds=\"$reload_cmds $objlist $last_robj\"
+ else
+ # All subsequent reloadable object files will link in
+ # the last one created.
+ eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\"
+ fi
+ last_robj=$output_objdir/$output_la-${k}.$objext
+ func_arith $k + 1
+ k=$func_arith_result
+ output=$output_objdir/$output_la-${k}.$objext
+ objlist=$obj
+ func_len " $last_robj"
+ func_arith $len0 + $func_len_result
+ len=$func_arith_result
+ fi
+ done
+ # Handle the remaining objects by creating one last
+ # reloadable object file. All subsequent reloadable object
+ # files will link in the last one created.
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
+ if test -n "$last_robj"; then
+ eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
+ fi
+ delfiles="$delfiles $output"
+
+ else
+ output=
+ fi
+
+ if ${skipped_export-false}; then
+ func_verbose "generating symbol list for \`$libname.la'"
+ export_symbols="$output_objdir/$libname.exp"
+ $opt_dry_run || $RM $export_symbols
+ libobjs=$output
+ # Append the command to create the export file.
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
+ if test -n "$last_robj"; then
+ eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
+ fi
+ fi
+
+ test -n "$save_libobjs" &&
+ func_verbose "creating a temporary reloadable object file: $output"
+
+ # Loop through the commands generated above and execute them.
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $concat_cmds; do
+ IFS="$save_ifs"
+ $opt_silent || {
+ func_quote_for_expand "$cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ $opt_dry_run || eval "$cmd" || {
+ lt_exit=$?
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ ( cd "$output_objdir" && \
+ $RM "${realname}T" && \
+ $MV "${realname}U" "$realname" )
+ fi
+
+ exit $lt_exit
+ }
+ done
+ IFS="$save_ifs"
+
+ if test -n "$export_symbols_regex" && ${skipped_export-false}; then
+ func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
+ func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
+ fi
+ fi
+
+ if ${skipped_export-false}; then
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ tmp_export_symbols="$export_symbols"
+ test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+ $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
+ fi
+
+ if test -n "$orig_export_symbols"; then
+ # The given exports_symbols file has to be filtered, so filter it.
+ func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+ # FIXME: $output_objdir/$libname.filter potentially contains lots of
+ # 's' commands which not all seds can handle. GNU sed should be fine
+ # though. Also, the filter scales superlinearly with the number of
+ # global variables. join(1) would be nice here, but unfortunately
+ # isn't a blessed tool.
+ $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
+ delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
+ export_symbols=$output_objdir/$libname.def
+ $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
+ fi
+ fi
+
+ libobjs=$output
+ # Restore the value of output.
+ output=$save_output
+
+ if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+ # Expand the library linking commands again to reset the
+ # value of $libobjs for piecewise linking.
+
+ # Do each of the archive commands.
+ if test "$module" = yes && test -n "$module_cmds" ; then
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
+ cmds=$module_expsym_cmds
+ else
+ cmds=$module_cmds
+ fi
+ else
+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
+ cmds=$archive_expsym_cmds
+ else
+ cmds=$archive_cmds
+ fi
+ fi
+ fi
+
+ if test -n "$delfiles"; then
+ # Append the command to remove temporary files to $cmds.
+ eval cmds=\"\$cmds~\$RM $delfiles\"
+ fi
+
+ # Add any objects from preloaded convenience libraries
+ if test -n "$dlprefiles"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $dlprefiles
+ libobjs="$libobjs $func_extract_archives_result"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ eval cmd=\"$cmd\"
+ $opt_silent || {
+ func_quote_for_expand "$cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ $opt_dry_run || eval "$cmd" || {
+ lt_exit=$?
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ ( cd "$output_objdir" && \
+ $RM "${realname}T" && \
+ $MV "${realname}U" "$realname" )
+ fi
+
+ exit $lt_exit
+ }
+ done
+ IFS="$save_ifs"
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
+
+ if test -n "$convenience"; then
+ if test -z "$whole_archive_flag_spec"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+ fi
+
+ exit $EXIT_SUCCESS
+ fi
+
+ # Create links to the real library.
+ for linkname in $linknames; do
+ if test "$realname" != "$linkname"; then
+ func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
+ fi
+ done
+
+ # If -module or -export-dynamic was specified, set the dlname.
+ if test "$module" = yes || test "$export_dynamic" = yes; then
+ # On all known operating systems, these are identical.
+ dlname="$soname"
+ fi
+ fi
+ ;;
+
+ obj)
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ func_warning "\`-dlopen' is ignored for objects"
+ fi
+
+ case " $deplibs" in
+ *\ -l* | *\ -L*)
+ func_warning "\`-l' and \`-L' are ignored for objects" ;;
+ esac
+
+ test -n "$rpath" && \
+ func_warning "\`-rpath' is ignored for objects"
+
+ test -n "$xrpath" && \
+ func_warning "\`-R' is ignored for objects"
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info' is ignored for objects"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for objects"
+
+ case $output in
+ *.lo)
+ test -n "$objs$old_deplibs" && \
+ func_fatal_error "cannot build library object \`$output' from non-libtool objects"
+
+ libobj=$output
+ func_lo2o "$libobj"
+ obj=$func_lo2o_result
+ ;;
+ *)
+ libobj=
+ obj="$output"
+ ;;
+ esac
+
+ # Delete the old objects.
+ $opt_dry_run || $RM $obj $libobj
+
+ # Objects from convenience libraries. This assumes
+ # single-version convenience libraries. Whenever we create
+ # different ones for PIC/non-PIC, this we'll have to duplicate
+ # the extraction.
+ reload_conv_objs=
+ gentop=
+ # reload_cmds runs $LD directly, so let us get rid of
+ # -Wl from whole_archive_flag_spec and hope we can get by with
+ # turning comma into space..
+ wl=
+
+ if test -n "$convenience"; then
+ if test -n "$whole_archive_flag_spec"; then
+ eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
+ reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
+ else
+ gentop="$output_objdir/${obj}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $convenience
+ reload_conv_objs="$reload_objs $func_extract_archives_result"
+ fi
+ fi
+
+ # Create the old-style object.
+ reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
+
+ output="$obj"
+ func_execute_cmds "$reload_cmds" 'exit $?'
+
+ # Exit if we aren't doing a library object file.
+ if test -z "$libobj"; then
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ exit $EXIT_SUCCESS
+ fi
+
+ if test "$build_libtool_libs" != yes; then
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ # Create an invalid libtool object if no PIC, so that we don't
+ # accidentally link it into a program.
+ # $show "echo timestamp > $libobj"
+ # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
+ exit $EXIT_SUCCESS
+ fi
+
+ if test -n "$pic_flag" || test "$pic_mode" != default; then
+ # Only do commands if we really have different PIC objects.
+ reload_objs="$libobjs $reload_conv_objs"
+ output="$libobj"
+ func_execute_cmds "$reload_cmds" 'exit $?'
+ fi
+
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ exit $EXIT_SUCCESS
+ ;;
+
+ prog)
+ case $host in
+ *cygwin*) func_stripname '' '.exe' "$output"
+ output=$func_stripname_result.exe;;
+ esac
+ test -n "$vinfo" && \
+ func_warning "\`-version-info' is ignored for programs"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for programs"
+
+ test "$preload" = yes \
+ && test "$dlopen_support" = unknown \
+ && test "$dlopen_self" = unknown \
+ && test "$dlopen_self_static" = unknown && \
+ func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
+
+ case $host in
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # On Rhapsody replace the C library is the System framework
+ compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ ;;
+ esac
+
+ case $host in
+ *-*-darwin*)
+ # Don't allow lazy linking, it breaks C++ global constructors
+ # But is supposedly fixed on 10.4 or later (yay!).
+ if test "$tagname" = CXX ; then
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
+ 10.[0123])
+ compile_command="$compile_command ${wl}-bind_at_load"
+ finalize_command="$finalize_command ${wl}-bind_at_load"
+ ;;
+ esac
+ fi
+ # Time to change all our "foo.ltframework" stuff back to "-framework foo"
+ compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ ;;
+ esac
+
+
+ # move library search paths that coincide with paths to not yet
+ # installed libraries to the beginning of the library search list
+ new_libs=
+ for path in $notinst_path; do
+ case " $new_libs " in
+ *" -L$path/$objdir "*) ;;
+ *)
+ case " $compile_deplibs " in
+ *" -L$path/$objdir "*)
+ new_libs="$new_libs -L$path/$objdir" ;;
+ esac
+ ;;
+ esac
+ done
+ for deplib in $compile_deplibs; do
+ case $deplib in
+ -L*)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ done
+ compile_deplibs="$new_libs"
+
+
+ compile_command="$compile_command $compile_deplibs"
+ finalize_command="$finalize_command $finalize_deplibs"
+
+ if test -n "$rpath$xrpath"; then
+ # If the user specified any rpath flags, then add them.
+ for libdir in $rpath $xrpath; do
+ # This is the magic to use -rpath.
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir" ;;
+ esac
+ done
+ fi
+
+ # Now hardcode the library paths
+ rpath=
+ hardcode_libdirs=
+ for libdir in $compile_rpath $finalize_rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ rpath="$rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$perm_rpath " in
+ *" $libdir "*) ;;
+ *) perm_rpath="$perm_rpath $libdir" ;;
+ esac
+ fi
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
+ case :$dllsearchpath: in
+ *":$libdir:"*) ;;
+ ::) dllsearchpath=$libdir;;
+ *) dllsearchpath="$dllsearchpath:$libdir";;
+ esac
+ case :$dllsearchpath: in
+ *":$testbindir:"*) ;;
+ ::) dllsearchpath=$testbindir;;
+ *) dllsearchpath="$dllsearchpath:$testbindir";;
+ esac
+ ;;
+ esac
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ eval rpath=\" $hardcode_libdir_flag_spec\"
+ fi
+ compile_rpath="$rpath"
+
+ rpath=
+ hardcode_libdirs=
+ for libdir in $finalize_rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ rpath="$rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$finalize_perm_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
+ esac
+ fi
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ eval rpath=\" $hardcode_libdir_flag_spec\"
+ fi
+ finalize_rpath="$rpath"
+
+ if test -n "$libobjs" && test "$build_old_libs" = yes; then
+ # Transform all the library objects into standard objects.
+ compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ fi
+
+ func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
+
+ # template prelinking step
+ if test -n "$prelink_cmds"; then
+ func_execute_cmds "$prelink_cmds" 'exit $?'
+ fi
+
+ wrappers_required=yes
+ case $host in
+ *cygwin* | *mingw* )
+ if test "$build_libtool_libs" != yes; then
+ wrappers_required=no
+ fi
+ ;;
+ *cegcc)
+ # Disable wrappers for cegcc, we are cross compiling anyway.
+ wrappers_required=no
+ ;;
+ *)
+ if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
+ wrappers_required=no
+ fi
+ ;;
+ esac
+ if test "$wrappers_required" = no; then
+ # Replace the output file specification.
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ link_command="$compile_command$compile_rpath"
+
+ # We have no uninstalled library dependencies, so finalize right now.
+ exit_status=0
+ func_show_eval "$link_command" 'exit_status=$?'
+
+ # Delete the generated files.
+ if test -f "$output_objdir/${outputname}S.${objext}"; then
+ func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
+ fi
+
+ exit $exit_status
+ fi
+
+ if test -n "$compile_shlibpath$finalize_shlibpath"; then
+ compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
+ fi
+ if test -n "$finalize_shlibpath"; then
+ finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
+ fi
+
+ compile_var=
+ finalize_var=
+ if test -n "$runpath_var"; then
+ if test -n "$perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
+ fi
+ if test -n "$finalize_perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $finalize_perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
+ fi
+ fi
+
+ if test "$no_install" = yes; then
+ # We don't need to create a wrapper script.
+ link_command="$compile_var$compile_command$compile_rpath"
+ # Replace the output file specification.
+ link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ # Delete the old output file.
+ $opt_dry_run || $RM $output
+ # Link the executable and exit
+ func_show_eval "$link_command" 'exit $?'
+ exit $EXIT_SUCCESS
+ fi
+
+ if test "$hardcode_action" = relink; then
+ # Fast installation is not supported
+ link_command="$compile_var$compile_command$compile_rpath"
+ relink_command="$finalize_var$finalize_command$finalize_rpath"
+
+ func_warning "this platform does not like uninstalled shared libraries"
+ func_warning "\`$output' will be relinked during installation"
+ else
+ if test "$fast_install" != no; then
+ link_command="$finalize_var$compile_command$finalize_rpath"
+ if test "$fast_install" = yes; then
+ relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+ else
+ # fast_install is set to needless
+ relink_command=
+ fi
+ else
+ link_command="$compile_var$compile_command$compile_rpath"
+ relink_command="$finalize_var$finalize_command$finalize_rpath"
+ fi
+ fi
+
+ # Replace the output file specification.
+ link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
+
+ # Delete the old output files.
+ $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
+
+ func_show_eval "$link_command" 'exit $?'
+
+ # Now create the wrapper script.
+ func_verbose "creating $output"
+
+ # Quote the relink command for shipping.
+ if test -n "$relink_command"; then
+ # Preserve any variables that may affect compiler behavior
+ for var in $variables_saved_for_relink; do
+ if eval test -z \"\${$var+set}\"; then
+ relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
+ elif eval var_value=\$$var; test -z "$var_value"; then
+ relink_command="$var=; export $var; $relink_command"
+ else
+ func_quote_for_eval "$var_value"
+ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+ fi
+ done
+ relink_command="(cd `pwd`; $relink_command)"
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ fi
+
+ # Quote $ECHO for shipping.
+ if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then
+ case $progpath in
+ [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
+ *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
+ esac
+ qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"`
+ else
+ qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"`
+ fi
+
+ # Only actually do things if not in dry run mode.
+ $opt_dry_run || {
+ # win32 will think the script is a binary if it has
+ # a .exe suffix, so we strip it off here.
+ case $output in
+ *.exe) func_stripname '' '.exe' "$output"
+ output=$func_stripname_result ;;
+ esac
+ # test for cygwin because mv fails w/o .exe extensions
+ case $host in
+ *cygwin*)
+ exeext=.exe
+ func_stripname '' '.exe' "$outputname"
+ outputname=$func_stripname_result ;;
+ *) exeext= ;;
+ esac
+ case $host in
+ *cygwin* | *mingw* )
+ func_dirname_and_basename "$output" "" "."
+ output_name=$func_basename_result
+ output_path=$func_dirname_result
+ cwrappersource="$output_path/$objdir/lt-$output_name.c"
+ cwrapper="$output_path/$output_name.exe"
+ $RM $cwrappersource $cwrapper
+ trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
+
+ func_emit_cwrapperexe_src > $cwrappersource
+
+ # The wrapper executable is built using the $host compiler,
+ # because it contains $host paths and files. If cross-
+ # compiling, it, like the target executable, must be
+ # executed on the $host or under an emulation environment.
+ $opt_dry_run || {
+ $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
+ $STRIP $cwrapper
+ }
+
+ # Now, create the wrapper script for func_source use:
+ func_ltwrapper_scriptname $cwrapper
+ $RM $func_ltwrapper_scriptname_result
+ trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
+ $opt_dry_run || {
+ # note: this script will not be executed, so do not chmod.
+ if test "x$build" = "x$host" ; then
+ $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
+ else
+ func_emit_wrapper no > $func_ltwrapper_scriptname_result
+ fi
+ }
+ ;;
+ * )
+ $RM $output
+ trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
+
+ func_emit_wrapper no > $output
+ chmod +x $output
+ ;;
+ esac
+ }
+ exit $EXIT_SUCCESS
+ ;;
+ esac
+
+ # See if we need to build an old-fashioned archive.
+ for oldlib in $oldlibs; do
+
+ if test "$build_libtool_libs" = convenience; then
+ oldobjs="$libobjs_save $symfileobj"
+ addlibs="$convenience"
+ build_libtool_libs=no
+ else
+ if test "$build_libtool_libs" = module; then
+ oldobjs="$libobjs_save"
+ build_libtool_libs=no
+ else
+ oldobjs="$old_deplibs $non_pic_objects"
+ if test "$preload" = yes && test -f "$symfileobj"; then
+ oldobjs="$oldobjs $symfileobj"
+ fi
+ fi
+ addlibs="$old_convenience"
+ fi
+
+ if test -n "$addlibs"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $addlibs
+ oldobjs="$oldobjs $func_extract_archives_result"
+ fi
+
+ # Do each command in the archive commands.
+ if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
+ cmds=$old_archive_from_new_cmds
+ else
+
+ # Add any objects from preloaded convenience libraries
+ if test -n "$dlprefiles"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $dlprefiles
+ oldobjs="$oldobjs $func_extract_archives_result"
+ fi
+
+ # POSIX demands no paths to be encoded in archives. We have
+ # to avoid creating archives with duplicate basenames if we
+ # might have to extract them afterwards, e.g., when creating a
+ # static archive out of a convenience library, or when linking
+ # the entirety of a libtool archive into another (currently
+ # not supported by libtool).
+ if (for obj in $oldobjs
+ do
+ func_basename "$obj"
+ $ECHO "$func_basename_result"
+ done | sort | sort -uc >/dev/null 2>&1); then
+ :
+ else
+ $ECHO "copying selected object files to avoid basename conflicts..."
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+ func_mkdir_p "$gentop"
+ save_oldobjs=$oldobjs
+ oldobjs=
+ counter=1
+ for obj in $save_oldobjs
+ do
+ func_basename "$obj"
+ objbase="$func_basename_result"
+ case " $oldobjs " in
+ " ") oldobjs=$obj ;;
+ *[\ /]"$objbase "*)
+ while :; do
+ # Make sure we don't pick an alternate name that also
+ # overlaps.
+ newobj=lt$counter-$objbase
+ func_arith $counter + 1
+ counter=$func_arith_result
+ case " $oldobjs " in
+ *[\ /]"$newobj "*) ;;
+ *) if test ! -f "$gentop/$newobj"; then break; fi ;;
+ esac
+ done
+ func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
+ oldobjs="$oldobjs $gentop/$newobj"
+ ;;
+ *) oldobjs="$oldobjs $obj" ;;
+ esac
+ done
+ fi
+ eval cmds=\"$old_archive_cmds\"
+
+ func_len " $cmds"
+ len=$func_len_result
+ if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ cmds=$old_archive_cmds
+ else
+ # the command line is too long to link in one step, link in parts
+ func_verbose "using piecewise archive linking..."
+ save_RANLIB=$RANLIB
+ RANLIB=:
+ objlist=
+ concat_cmds=
+ save_oldobjs=$oldobjs
+ oldobjs=
+ # Is there a better way of finding the last object in the list?
+ for obj in $save_oldobjs
+ do
+ last_oldobj=$obj
+ done
+ eval test_cmds=\"$old_archive_cmds\"
+ func_len " $test_cmds"
+ len0=$func_len_result
+ len=$len0
+ for obj in $save_oldobjs
+ do
+ func_len " $obj"
+ func_arith $len + $func_len_result
+ len=$func_arith_result
+ func_append objlist " $obj"
+ if test "$len" -lt "$max_cmd_len"; then
+ :
+ else
+ # the above command should be used before it gets too long
+ oldobjs=$objlist
+ if test "$obj" = "$last_oldobj" ; then
+ RANLIB=$save_RANLIB
+ fi
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
+ objlist=
+ len=$len0
+ fi
+ done
+ RANLIB=$save_RANLIB
+ oldobjs=$objlist
+ if test "X$oldobjs" = "X" ; then
+ eval cmds=\"\$concat_cmds\"
+ else
+ eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
+ fi
+ fi
+ fi
+ func_execute_cmds "$cmds" 'exit $?'
+ done
+
+ test -n "$generated" && \
+ func_show_eval "${RM}r$generated"
+
+ # Now create the libtool archive.
+ case $output in
+ *.la)
+ old_library=
+ test "$build_old_libs" = yes && old_library="$libname.$libext"
+ func_verbose "creating $output"
+
+ # Preserve any variables that may affect compiler behavior
+ for var in $variables_saved_for_relink; do
+ if eval test -z \"\${$var+set}\"; then
+ relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
+ elif eval var_value=\$$var; test -z "$var_value"; then
+ relink_command="$var=; export $var; $relink_command"
+ else
+ func_quote_for_eval "$var_value"
+ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+ fi
+ done
+ # Quote the link command for shipping.
+ relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ if test "$hardcode_automatic" = yes ; then
+ relink_command=
+ fi
+
+ # Only create the output if not a dry run.
+ $opt_dry_run || {
+ for installed in no yes; do
+ if test "$installed" = yes; then
+ if test -z "$install_libdir"; then
+ break
+ fi
+ output="$output_objdir/$outputname"i
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
+ case $deplib in
+ *.la)
+ func_basename "$deplib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$deplib' is not a valid libtool archive"
+ newdependency_libs="$newdependency_libs $libdir/$name"
+ ;;
+ *) newdependency_libs="$newdependency_libs $deplib" ;;
+ esac
+ done
+ dependency_libs="$newdependency_libs"
+ newdlfiles=
+
+ for lib in $dlfiles; do
+ case $lib in
+ *.la)
+ func_basename "$lib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$lib' is not a valid libtool archive"
+ newdlfiles="$newdlfiles $libdir/$name"
+ ;;
+ *) newdlfiles="$newdlfiles $lib" ;;
+ esac
+ done
+ dlfiles="$newdlfiles"
+ newdlprefiles=
+ for lib in $dlprefiles; do
+ case $lib in
+ *.la)
+ # Only pass preopened files to the pseudo-archive (for
+ # eventual linking with the app. that links it) if we
+ # didn't already link the preopened objects directly into
+ # the library:
+ func_basename "$lib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$lib' is not a valid libtool archive"
+ newdlprefiles="$newdlprefiles $libdir/$name"
+ ;;
+ esac
+ done
+ dlprefiles="$newdlprefiles"
+ else
+ newdlfiles=
+ for lib in $dlfiles; do
+ case $lib in
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+ *) abs=`pwd`"/$lib" ;;
+ esac
+ newdlfiles="$newdlfiles $abs"
+ done
+ dlfiles="$newdlfiles"
+ newdlprefiles=
+ for lib in $dlprefiles; do
+ case $lib in
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+ *) abs=`pwd`"/$lib" ;;
+ esac
+ newdlprefiles="$newdlprefiles $abs"
+ done
+ dlprefiles="$newdlprefiles"
+ fi
+ $RM $output
+ # place dlname in correct position for cygwin
+ tdlname=$dlname
+ case $host,$output,$installed,$module,$dlname in
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+ esac
+ $ECHO > $output "\
+# $outputname - a libtool library file
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='$tdlname'
+
+# Names of this library.
+library_names='$library_names'
+
+# The name of the static archive.
+old_library='$old_library'
+
+# Linker flags that can not go in dependency_libs.
+inherited_linker_flags='$new_inherited_linker_flags'
+
+# Libraries that this one depends upon.
+dependency_libs='$dependency_libs'
+
+# Names of additional weak libraries provided by this library
+weak_library_names='$weak_libs'
+
+# Version information for $libname.
+current=$current
+age=$age
+revision=$revision
+
+# Is this an already installed library?
+installed=$installed
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=$module
+
+# Files to dlopen/dlpreopen
+dlopen='$dlfiles'
+dlpreopen='$dlprefiles'
+
+# Directory that this library needs to be installed in:
+libdir='$install_libdir'"
+ if test "$installed" = no && test "$need_relink" = yes; then
+ $ECHO >> $output "\
+relink_command=\"$relink_command\""
+ fi
+ done
+ }
+
+ # Do a symbolic link so that the libtool archive can be found in
+ # LD_LIBRARY_PATH before the program is installed.
+ func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
+ ;;
+ esac
+ exit $EXIT_SUCCESS
+}
+
+{ test "$mode" = link || test "$mode" = relink; } &&
+ func_mode_link ${1+"$@"}
+
+
+# func_mode_uninstall arg...
+func_mode_uninstall ()
+{
+ $opt_debug
+ RM="$nonopt"
+ files=
+ rmforce=
+ exit_status=0
+
+ # This variable tells wrapper scripts just to set variables rather
+ # than running their programs.
+ libtool_install_magic="$magic"
+
+ for arg
+ do
+ case $arg in
+ -f) RM="$RM $arg"; rmforce=yes ;;
+ -*) RM="$RM $arg" ;;
+ *) files="$files $arg" ;;
+ esac
+ done
+
+ test -z "$RM" && \
+ func_fatal_help "you must specify an RM program"
+
+ rmdirs=
+
+ origobjdir="$objdir"
+ for file in $files; do
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+ if test "X$dir" = X.; then
+ objdir="$origobjdir"
+ else
+ objdir="$dir/$origobjdir"
+ fi
+ func_basename "$file"
+ name="$func_basename_result"
+ test "$mode" = uninstall && objdir="$dir"
+
+ # Remember objdir for removal later, being careful to avoid duplicates
+ if test "$mode" = clean; then
+ case " $rmdirs " in
+ *" $objdir "*) ;;
+ *) rmdirs="$rmdirs $objdir" ;;
+ esac
+ fi
+
+ # Don't error if the file doesn't exist and rm -f was used.
+ if { test -L "$file"; } >/dev/null 2>&1 ||
+ { test -h "$file"; } >/dev/null 2>&1 ||
+ test -f "$file"; then
+ :
+ elif test -d "$file"; then
+ exit_status=1
+ continue
+ elif test "$rmforce" = yes; then
+ continue
+ fi
+
+ rmfiles="$file"
+
+ case $name in
+ *.la)
+ # Possibly a libtool archive, so verify it.
+ if func_lalib_p "$file"; then
+ func_source $dir/$name
+
+ # Delete the libtool libraries and symlinks.
+ for n in $library_names; do
+ rmfiles="$rmfiles $objdir/$n"
+ done
+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
+
+ case "$mode" in
+ clean)
+ case " $library_names " in
+ # " " in the beginning catches empty $dlname
+ *" $dlname "*) ;;
+ *) rmfiles="$rmfiles $objdir/$dlname" ;;
+ esac
+ test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
+ ;;
+ uninstall)
+ if test -n "$library_names"; then
+ # Do each command in the postuninstall commands.
+ func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+ fi
+
+ if test -n "$old_library"; then
+ # Do each command in the old_postuninstall commands.
+ func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+ fi
+ # FIXME: should reinstall the best remaining shared library.
+ ;;
+ esac
+ fi
+ ;;
+
+ *.lo)
+ # Possibly a libtool object, so verify it.
+ if func_lalib_p "$file"; then
+
+ # Read the .lo file
+ func_source $dir/$name
+
+ # Add PIC object to the list of files to remove.
+ if test -n "$pic_object" &&
+ test "$pic_object" != none; then
+ rmfiles="$rmfiles $dir/$pic_object"
+ fi
+
+ # Add non-PIC object to the list of files to remove.
+ if test -n "$non_pic_object" &&
+ test "$non_pic_object" != none; then
+ rmfiles="$rmfiles $dir/$non_pic_object"
+ fi
+ fi
+ ;;
+
+ *)
+ if test "$mode" = clean ; then
+ noexename=$name
+ case $file in
+ *.exe)
+ func_stripname '' '.exe' "$file"
+ file=$func_stripname_result
+ func_stripname '' '.exe' "$name"
+ noexename=$func_stripname_result
+ # $file with .exe has already been added to rmfiles,
+ # add $file without .exe
+ rmfiles="$rmfiles $file"
+ ;;
+ esac
+ # Do a test to see if this is a libtool program.
+ if func_ltwrapper_p "$file"; then
+ if func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ relink_command=
+ func_source $func_ltwrapper_scriptname_result
+ rmfiles="$rmfiles $func_ltwrapper_scriptname_result"
+ else
+ relink_command=
+ func_source $dir/$noexename
+ fi
+
+ # note $name still contains .exe if it was in $file originally
+ # as does the version of $file that was added into $rmfiles
+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
+ if test "$fast_install" = yes && test -n "$relink_command"; then
+ rmfiles="$rmfiles $objdir/lt-$name"
+ fi
+ if test "X$noexename" != "X$name" ; then
+ rmfiles="$rmfiles $objdir/lt-${noexename}.c"
+ fi
+ fi
+ fi
+ ;;
+ esac
+ func_show_eval "$RM $rmfiles" 'exit_status=1'
+ done
+ objdir="$origobjdir"
+
+ # Try to remove the ${objdir}s in the directories where we deleted files
+ for dir in $rmdirs; do
+ if test -d "$dir"; then
+ func_show_eval "rmdir $dir >/dev/null 2>&1"
+ fi
+ done
+
+ exit $exit_status
+}
+
+{ test "$mode" = uninstall || test "$mode" = clean; } &&
+ func_mode_uninstall ${1+"$@"}
+
+test -z "$mode" && {
+ help="$generic_help"
+ func_fatal_help "you must specify a MODE"
+}
+
+test -z "$exec_cmd" && \
+ func_fatal_help "invalid operation mode \`$mode'"
+
+if test -n "$exec_cmd"; then
+ eval exec "$exec_cmd"
+ exit $EXIT_FAILURE
+fi
+
+exit $exit_status
+
+
+# The TAGs below are defined such that we never get into a situation
+# in which we disable both kinds of libraries. Given conflicting
+# choices, we go for a static library, that is the most portable,
+# since we can't tell whether shared libraries were disabled because
+# the user asked for that or because the platform doesn't support
+# them. This is particularly important on AIX, because we don't
+# support having both static and shared libraries enabled at the same
+# time on that platform, so we default to a shared-only configuration.
+# If a disable-shared tag is given, we'll fallback to a static-only
+# configuration. But we'll never go from static-only to shared-only.
+
+# ### BEGIN LIBTOOL TAG CONFIG: disable-shared
+build_libtool_libs=no
+build_old_libs=yes
+# ### END LIBTOOL TAG CONFIG: disable-shared
+
+# ### BEGIN LIBTOOL TAG CONFIG: disable-static
+build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
+# ### END LIBTOOL TAG CONFIG: disable-static
+
+# Local Variables:
+# mode:shell-script
+# sh-indentation:2
+# End:
+# vi:sw=2
+
diff --git a/libsigsegv/build-aux/missing b/libsigsegv/build-aux/missing
new file mode 100755
index 00000000..894e786e
--- /dev/null
+++ b/libsigsegv/build-aux/missing
@@ -0,0 +1,360 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2005-06-08.21
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+
+# 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.
+
+# 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.
+
+if test $# -eq 0; then
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+fi
+
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+ configure_ac=configure.ac
+else
+ configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case "$1" in
+--run)
+ # Try to run requested program, and just exit if it succeeds.
+ run=
+ shift
+ "$@" && exit 0
+ # Exit code 63 means version mismatch. This often happens
+ # when the user try to use an ancient version of a tool on
+ # a file that requires a minimum version. In this case we
+ # we should proceed has if the program had been absent, or
+ # if --run hadn't been passed.
+ if test $? = 63; then
+ run=:
+ msg="probably too old"
+ fi
+ ;;
+
+ -h|--h|--he|--hel|--help)
+ echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+ -h, --help display this help and exit
+ -v, --version output version information and exit
+ --run try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ help2man touch the output file
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ tar try tar, gnutar, gtar, then tar without non-portable flags
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake@gnu.org>."
+ exit $?
+ ;;
+
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "missing $scriptversion (GNU Automake)"
+ exit $?
+ ;;
+
+ -*)
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+ ;;
+
+esac
+
+# Now exit if we have it, but it failed. Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+ lex|yacc)
+ # Not GNU programs, they don't have --version.
+ ;;
+
+ tar)
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ exit 1
+ fi
+ ;;
+
+ *)
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+ # We have it, but it failed.
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ # Could not run --version or --help. This is probably someone
+ # running `$TOOL --version' or `$TOOL --help' to check whether
+ # $TOOL exists and not knowing $TOOL uses missing.
+ exit 1
+ fi
+ ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+ aclocal*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
+
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`${configure_ac}'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+ test -z "$files" && files="config.h"
+ touch_files=
+ for f in $files; do
+ case "$f" in
+ *:*) touch_files="$touch_files "`echo "$f" |
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+ *) touch_files="$touch_files $f.in";;
+ esac
+ done
+ touch $touch_files
+ ;;
+
+ automake*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print |
+ sed 's/\.am$/.in/' |
+ while read f; do touch "$f"; done
+ ;;
+
+ autom4te)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them.
+ You can get \`$1' as part of \`Autoconf' from any GNU
+ archive site."
+
+ file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
+ test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ if test -f "$file"; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo "#! /bin/sh"
+ echo "# Created by GNU Automake missing as a replacement of"
+ echo "# $ $@"
+ echo "exit 0"
+ chmod +x $file
+ exit 1
+ fi
+ ;;
+
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' $msg. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
+ ;;
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ help2man)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a dependency of a manual page. You may need the
+ \`Help2man' package in order for those modifications to take
+ effect. You can get \`Help2man' from any GNU archive site."
+
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+ fi
+ if [ -f "$file" ]; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo ".ab help2man is required to generate this page"
+ exit 1
+ fi
+ ;;
+
+ makeinfo)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ 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'`
+ if test -z "$file"; then
+ # ... or it is the one specified with @setfilename ...
+ 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
+ # If the file does not exist, the user really needs makeinfo;
+ # let's fail without touching anything.
+ test -f $file || exit 1
+ touch $file
+ ;;
+
+ tar)
+ shift
+
+ # We have already tried tar in the generic part.
+ # Look for gnutar/gtar before invocation to avoid ugly error
+ # messages.
+ if (gnutar --version > /dev/null 2>&1); then
+ gnutar "$@" && exit 0
+ fi
+ if (gtar --version > /dev/null 2>&1); then
+ gtar "$@" && exit 0
+ fi
+ firstarg="$1"
+ if shift; then
+ case "$firstarg" in
+ *o*)
+ firstarg=`echo "$firstarg" | sed s/o//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ case "$firstarg" in
+ *h*)
+ firstarg=`echo "$firstarg" | sed s/h//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ fi
+
+ echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+ You may want to install GNU tar or Free paxutils, or check the
+ command line arguments."
+ exit 1
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequisites for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/libsigsegv/config.h.in b/libsigsegv/config.h.in
new file mode 100644
index 00000000..215777cb
--- /dev/null
+++ b/libsigsegv/config.h.in
@@ -0,0 +1,134 @@
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* The name of the include file describing the fault handler. */
+#undef CFG_FAULT
+
+/* The name of the file implementing the handler functionality. */
+#undef CFG_HANDLER
+
+/* The name of the file implementing sigsegv_reset_onstack_flag. */
+#undef CFG_LEAVE
+
+/* The name of the include file describing the Mach fault handler. */
+#undef CFG_MACHFAULT
+
+/* The name of the include file describing the fault signals. */
+#undef CFG_SIGNALS
+
+/* The name of the file determining the stack virtual memory area. */
+#undef CFG_STACKVMA
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define if getpagesize() is available as a function or a macro. */
+#undef HAVE_GETPAGESIZE
+
+/* Define to 1 if you have the `getrlimit' function. */
+#undef HAVE_GETRLIMIT
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define to 1 if you have the `mincore' function. */
+#undef HAVE_MINCORE
+
+/* Define if <sys/mman.h> defines MAP_ANON and mmaping with MAP_ANON works. */
+#undef HAVE_MMAP_ANON
+
+/* Define if <sys/mman.h> defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS
+ works. */
+#undef HAVE_MMAP_ANONYMOUS
+
+/* Define if mmaping of the special device /dev/zero works. */
+#undef HAVE_MMAP_DEVZERO
+
+/* Define if PAGESIZE is available as a macro. */
+#undef HAVE_PAGESIZE
+
+/* Define to 1 if you have the `setrlimit' function. */
+#undef HAVE_SETRLIMIT
+
+/* Define to 1 if you have the `sigaltstack' function. */
+#undef HAVE_SIGALTSTACK
+
+/* Define if CFG_STACKVMA is set to a nontrivial source file. */
+#undef HAVE_STACKVMA
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define if sysconf(_SC_PAGESIZE) is available as a function or a macro. */
+#undef HAVE_SYSCONF_PAGESIZE
+
+/* Define to 1 if you have the <sys/signal.h> header file. */
+#undef HAVE_SYS_SIGNAL_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <ucontext.h> header file. */
+#undef HAVE_UCONTEXT_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define if you have the sigaltstack() function and it works. */
+#undef HAVE_WORKING_SIGALTSTACK
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#undef LT_OBJDIR
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define if sigaltstack() interprets the stack_t.ss_sp field incorrectly, as
+ the highest address of the alternate stack range rather than as the lowest
+ address. */
+#undef SIGALTSTACK_SS_REVERSED
+
+/* Define as the direction of stack growth for your system. STACK_DIRECTION >
+ 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward
+ lower addresses STACK_DIRECTION = 0 => spaghetti stack. */
+#undef STACK_DIRECTION
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Version number of package */
+#undef VERSION
+
+/* Define to 'struct sigaltstack' if that's the type of the argument to
+ sigaltstack */
+#undef stack_t
diff --git a/libsigsegv/config.h.msvc b/libsigsegv/config.h.msvc
new file mode 100644
index 00000000..aed89ef9
--- /dev/null
+++ b/libsigsegv/config.h.msvc
@@ -0,0 +1,134 @@
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* The name of the include file describing the fault handler. */
+#undef CFG_FAULT
+
+/* The name of the file implementing the handler functionality. */
+#define CFG_HANDLER "handler-win32.c"
+
+/* The name of the file implementing sigsegv_reset_onstack_flag. */
+#undef CFG_LEAVE
+
+/* The name of the include file describing the Mach fault handler. */
+#undef CFG_MACHFAULT
+
+/* The name of the include file describing the fault signals. */
+#undef CFG_SIGNALS
+
+/* The name of the file determining the stack virtual memory area. */
+#undef CFG_STACKVMA
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define if getpagesize() is available as a function or a macro. */
+#undef HAVE_GETPAGESIZE
+
+/* Define to 1 if you have the `getrlimit' function. */
+#undef HAVE_GETRLIMIT
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define to 1 if you have the `mincore' function. */
+#undef HAVE_MINCORE
+
+/* Define if <sys/mman.h> defines MAP_ANON and mmaping with MAP_ANON works. */
+#undef HAVE_MMAP_ANON
+
+/* Define if <sys/mman.h> defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS
+ works. */
+#undef HAVE_MMAP_ANONYMOUS
+
+/* Define if mmaping of the special device /dev/zero works. */
+#undef HAVE_MMAP_DEVZERO
+
+/* Define if PAGESIZE is available as a macro. */
+#undef HAVE_PAGESIZE
+
+/* Define to 1 if you have the `setrlimit' function. */
+#undef HAVE_SETRLIMIT
+
+/* Define to 1 if you have the `sigaltstack' function. */
+#undef HAVE_SIGALTSTACK
+
+/* Define if CFG_STACKVMA is set to a nontrivial source file. */
+#undef HAVE_STACKVMA
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define if sysconf(_SC_PAGESIZE) is available as a function or a macro. */
+#undef HAVE_SYSCONF_PAGESIZE
+
+/* Define to 1 if you have the <sys/signal.h> header file. */
+#undef HAVE_SYS_SIGNAL_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <ucontext.h> header file. */
+#undef HAVE_UCONTEXT_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define if you have the sigaltstack() function and it works. */
+#undef HAVE_WORKING_SIGALTSTACK
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#undef LT_OBJDIR
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define if sigaltstack() interprets the stack_t.ss_sp field incorrectly, as
+ the highest address of the alternate stack range rather than as the lowest
+ address. */
+#undef SIGALTSTACK_SS_REVERSED
+
+/* Define as the direction of stack growth for your system. STACK_DIRECTION >
+ 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward
+ lower addresses STACK_DIRECTION = 0 => spaghetti stack. */
+#undef STACK_DIRECTION
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Version number of package */
+#undef VERSION
+
+/* Define to 'struct sigaltstack' if that's the type of the argument to
+ sigaltstack */
+#undef stack_t
diff --git a/libsigsegv/configure b/libsigsegv/configure
new file mode 100755
index 00000000..1f2b5cde
--- /dev/null
+++ b/libsigsegv/configure
@@ -0,0 +1,20151 @@
+#! /bin/sh
+# Guess values for system-dependent variables and create Makefiles.
+# Generated by GNU Autoconf 2.63.
+#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization. ##
+## --------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+
+
+# PATH needs CR
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
+fi
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ { (exit 1); exit 1; }
+fi
+
+# Work around bugs in pre-3.0 UWIN ksh.
+for as_var in ENV MAIL MAILPATH
+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+
+# CDPATH.
+$as_unset CDPATH
+
+
+if test "x$CONFIG_SHELL" = x; then
+ if (eval ":") 2>/dev/null; then
+ as_have_required=yes
+else
+ as_have_required=no
+fi
+
+ if test $as_have_required = yes && (eval ":
+(as_func_return () {
+ (exit \$1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0) || { (exit 1); exit 1; }
+
+(
+ as_lineno_1=\$LINENO
+ as_lineno_2=\$LINENO
+ test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
+ test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
+") 2> /dev/null; then
+ :
+else
+ as_candidate_shells=
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ case $as_dir in
+ /*)
+ for as_base in sh bash ksh sh5; do
+ as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+ done;;
+ esac
+done
+IFS=$as_save_IFS
+
+
+ for as_shell in $as_candidate_shells $SHELL; do
+ # Try only shells that exist, to save several forks.
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { ("$as_shell") 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+_ASEOF
+}; then
+ CONFIG_SHELL=$as_shell
+ as_have_required=yes
+ if { "$as_shell" 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+(as_func_return () {
+ (exit $1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = "$1" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test $exitcode = 0) || { (exit 1); exit 1; }
+
+(
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
+
+_ASEOF
+}; then
+ break
+fi
+
+fi
+
+ done
+
+ if test "x$CONFIG_SHELL" != x; then
+ for as_var in BASH_ENV ENV
+ do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+ done
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+fi
+
+
+ if test $as_have_required = no; then
+ echo This script requires a shell more modern than all the
+ echo shells that I found on your system. Please install a
+ echo modern shell, or manually run the script under such a
+ echo shell if you do have one.
+ { (exit 1); exit 1; }
+fi
+
+
+fi
+
+fi
+
+
+
+(eval "as_func_return () {
+ (exit \$1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0") || {
+ echo No shell found that supports shell functions.
+ echo Please tell bug-autoconf@gnu.org about your system,
+ echo including any error possibly output before this message.
+ echo This can help us improve future autoconf versions.
+ echo Configuration will now proceed without shell functions.
+}
+
+
+
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
+
+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+ # uniformly replaced by the line number. The first 'sed' inserts a
+ # line-number line after each line using $LINENO; the second 'sed'
+ # does the real work. The second script uses 'N' to pair each
+ # line-number line with the line containing $LINENO, and appends
+ # trailing '-' during substitution so that $LINENO is not a special
+ # case at line end.
+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+ # scripts with optimization help from Paolo Bonzini. Blame Lee
+ # E. McMahon (1931-1989) for sed's syntax. :-)
+ sed -n '
+ p
+ /[$]LINENO/=
+ ' <$as_myself |
+ sed '
+ s/[$]LINENO.*/&-/
+ t lineno
+ b
+ :lineno
+ N
+ :loop
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+ t loop
+ s/-\n.*//
+ ' >$as_me.lineno &&
+ chmod +x "$as_me.lineno" ||
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { (exit 1); exit 1; }; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensitive to this).
+ . "./$as_me.lineno"
+ # Exit status is that of the last command.
+ exit
+}
+
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in
+-n*)
+ case `echo 'x\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ *) ECHO_C='\c';;
+ esac;;
+*)
+ ECHO_N='-n';;
+esac
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
+else
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
+ fi
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p=:
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+
+
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$lt_ECHO in
+X*--fallback-echo)
+ # Remove one level of quotation (which was required for Make).
+ ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','`
+ ;;
+esac
+
+ECHO=${lt_ECHO-echo}
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X$1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell.
+ exec $SHELL "$0" --no-reexec ${1+"$@"}
+fi
+
+if test "X$1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<_LT_EOF
+$*
+_LT_EOF
+ exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test -z "$lt_ECHO"; then
+ if test "X${echo_test_string+set}" != Xset; then
+ # find a string as large as possible, as long as the shell can cope with it
+ for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+ if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+ { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+ then
+ break
+ fi
+ done
+ fi
+
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ :
+ else
+ # The Solaris, AIX, and Digital Unix default echo programs unquote
+ # backslashes. This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ #
+ # So, first we look for a working echo in the user's PATH.
+
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for dir in $PATH /usr/ucb; do
+ IFS="$lt_save_ifs"
+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$dir/echo"
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ if test "X$ECHO" = Xecho; then
+ # We didn't find a better echo, so look for alternatives.
+ if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # This shell has a builtin print -r that does the trick.
+ ECHO='print -r'
+ elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+ test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running configure again with it.
+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ export ORIGINAL_CONFIG_SHELL
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
+ else
+ # Try using printf.
+ ECHO='printf %s\n'
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # Cool, printf works
+ :
+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+ export CONFIG_SHELL
+ SHELL="$CONFIG_SHELL"
+ export SHELL
+ ECHO="$CONFIG_SHELL $0 --fallback-echo"
+ elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$CONFIG_SHELL $0 --fallback-echo"
+ else
+ # maybe with a smaller string...
+ prev=:
+
+ for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
+ if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+ then
+ break
+ fi
+ prev="$cmd"
+ done
+
+ if test "$prev" != 'sed 50q "$0"'; then
+ echo_test_string=`eval $prev`
+ export echo_test_string
+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
+ else
+ # Oops. We lost completely, so just stick with echo.
+ ECHO=echo
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+lt_ECHO=$ECHO
+if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
+ lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
+fi
+
+
+
+
+exec 7<&0 </dev/null 6>&1
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_clean_files=
+ac_config_libobj_dir=.
+LIBOBJS=
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
+
+ac_unique_file="src/sigsegv.h.in"
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_STRING_H
+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
+# include <memory.h>
+# endif
+# include <string.h>
+#endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_INTTYPES_H
+# include <inttypes.h>
+#endif
+#ifdef HAVE_STDINT_H
+# include <stdint.h>
+#endif
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+ac_subst_vars='am__EXEEXT_FALSE
+am__EXEEXT_TRUE
+LTLIBOBJS
+LIBOBJS
+RELOCATABLE
+CFG_HANDLER
+CFG_LEAVE
+HAVE_STACK_OVERFLOW_RECOVERY
+CFG_STACKVMA
+HAVE_SIGSEGV_RECOVERY
+FAULT_CONTEXT_INCLUDE
+FAULT_CONTEXT
+OTOOL64
+OTOOL
+LIPO
+NMEDIT
+DSYMUTIL
+lt_ECHO
+RANLIB
+AR
+LN_S
+NM
+ac_ct_DUMPBIN
+DUMPBIN
+LD
+FGREP
+EGREP
+GREP
+SED
+LIBTOOL
+PLATFORM
+host_os
+host_vendor
+host_cpu
+host
+build_os
+build_vendor
+build_cpu
+build
+CPP
+am__fastdepCC_FALSE
+am__fastdepCC_TRUE
+CCDEPMODE
+AMDEPBACKSLASH
+AMDEP_FALSE
+AMDEP_TRUE
+am__quote
+am__include
+DEPDIR
+OBJEXT
+EXEEXT
+ac_ct_CC
+CPPFLAGS
+LDFLAGS
+CFLAGS
+CC
+am__untar
+am__tar
+AMTAR
+am__leading_dot
+SET_MAKE
+AWK
+mkdir_p
+MKDIR_P
+INSTALL_STRIP_PROGRAM
+STRIP
+install_sh
+MAKEINFO
+AUTOHEADER
+AUTOMAKE
+AUTOCONF
+ACLOCAL
+VERSION
+PACKAGE
+CYGPATH_W
+am__isrc
+INSTALL_DATA
+INSTALL_SCRIPT
+INSTALL_PROGRAM
+target_alias
+host_alias
+build_alias
+LIBS
+ECHO_T
+ECHO_N
+ECHO_C
+DEFS
+mandir
+localedir
+libdir
+psdir
+pdfdir
+dvidir
+htmldir
+infodir
+docdir
+oldincludedir
+includedir
+localstatedir
+sharedstatedir
+sysconfdir
+datadir
+datarootdir
+libexecdir
+sbindir
+bindir
+program_transform_name
+prefix
+exec_prefix
+PACKAGE_BUGREPORT
+PACKAGE_STRING
+PACKAGE_VERSION
+PACKAGE_TARNAME
+PACKAGE_NAME
+PATH_SEPARATOR
+SHELL'
+ac_subst_files=''
+ac_user_opts='
+enable_option_checking
+enable_dependency_tracking
+enable_shared
+enable_static
+with_pic
+enable_fast_install
+with_gnu_ld
+enable_libtool_lock
+enable_relocatable
+'
+ ac_precious_vars='build_alias
+host_alias
+target_alias
+CC
+CFLAGS
+LDFLAGS
+LIBS
+CPPFLAGS
+CPP'
+
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+ac_unrecognized_opts=
+ac_unrecognized_sep=
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+# (The list follows the same order as the GNU Coding Standards.)
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datarootdir='${prefix}/share'
+datadir='${datarootdir}'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+docdir='${datarootdir}/doc/${PACKAGE}'
+infodir='${datarootdir}/info'
+htmldir='${docdir}'
+dvidir='${docdir}'
+pdfdir='${docdir}'
+psdir='${docdir}'
+libdir='${exec_prefix}/lib'
+localedir='${datarootdir}/locale'
+mandir='${datarootdir}/man'
+
+ac_prev=
+ac_dashdash=
+for ac_option
+do
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval $ac_prev=\$ac_option
+ ac_prev=
+ continue
+ fi
+
+ case $ac_option in
+ *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *) ac_optarg=yes ;;
+ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case $ac_dashdash$ac_option in
+ --)
+ ac_dashdash=yes ;;
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir=$ac_optarg ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build_alias ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build_alias=$ac_optarg ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file=$ac_optarg ;;
+
+ --config-cache | -C)
+ cache_file=config.cache ;;
+
+ -datadir | --datadir | --datadi | --datad)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=*)
+ datadir=$ac_optarg ;;
+
+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
+ | --dataroo | --dataro | --datar)
+ ac_prev=datarootdir ;;
+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
+ datarootdir=$ac_optarg ;;
+
+ -disable-* | --disable-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
+ { (exit 1); exit 1; }; }
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=no ;;
+
+ -docdir | --docdir | --docdi | --doc | --do)
+ ac_prev=docdir ;;
+ -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
+ docdir=$ac_optarg ;;
+
+ -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
+ ac_prev=dvidir ;;
+ -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
+ dvidir=$ac_optarg ;;
+
+ -enable-* | --enable-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
+ { (exit 1); exit 1; }; }
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=\$ac_optarg ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix=$ac_optarg ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he | -h)
+ ac_init_help=long ;;
+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+ ac_init_help=recursive ;;
+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+ ac_init_help=short ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host_alias ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host_alias=$ac_optarg ;;
+
+ -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
+ ac_prev=htmldir ;;
+ -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
+ | --ht=*)
+ htmldir=$ac_optarg ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir=$ac_optarg ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir=$ac_optarg ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir=$ac_optarg ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir=$ac_optarg ;;
+
+ -localedir | --localedir | --localedi | --localed | --locale)
+ ac_prev=localedir ;;
+ -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
+ localedir=$ac_optarg ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst | --locals)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
+ localstatedir=$ac_optarg ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir=$ac_optarg ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c | -n)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir=$ac_optarg ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix=$ac_optarg ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix=$ac_optarg ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix=$ac_optarg ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name=$ac_optarg ;;
+
+ -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
+ ac_prev=pdfdir ;;
+ -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
+ pdfdir=$ac_optarg ;;
+
+ -psdir | --psdir | --psdi | --psd | --ps)
+ ac_prev=psdir ;;
+ -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
+ psdir=$ac_optarg ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir=$ac_optarg ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir=$ac_optarg ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site=$ac_optarg ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir=$ac_optarg ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir=$ac_optarg ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target_alias ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target_alias=$ac_optarg ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers | -V)
+ ac_init_version=: ;;
+
+ -with-* | --with-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
+ { (exit 1); exit 1; }; }
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=\$ac_optarg ;;
+
+ -without-* | --without-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
+ { (exit 1); exit 1; }; }
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=no ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes=$ac_optarg ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries=$ac_optarg ;;
+
+ -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+ { (exit 1); exit 1; }; }
+ ;;
+
+ *=*)
+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+ { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+ { (exit 1); exit 1; }; }
+ eval $ac_envvar=\$ac_optarg
+ export $ac_envvar ;;
+
+ *)
+ # FIXME: should be removed in autoconf 3.0.
+ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ { $as_echo "$as_me: error: missing argument to $ac_option" >&2
+ { (exit 1); exit 1; }; }
+fi
+
+if test -n "$ac_unrecognized_opts"; then
+ case $enable_option_checking in
+ no) ;;
+ fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
+ { (exit 1); exit 1; }; } ;;
+ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+ esac
+fi
+
+# Check all directory arguments for consistency.
+for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
+ datadir sysconfdir sharedstatedir localstatedir includedir \
+ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
+ libdir localedir mandir
+do
+ eval ac_val=\$$ac_var
+ # Remove trailing slashes.
+ case $ac_val in
+ */ )
+ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
+ eval $ac_var=\$ac_val;;
+ esac
+ # Be sure to have absolute directory names.
+ case $ac_val in
+ [\\/$]* | ?:[\\/]* ) continue;;
+ NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
+ esac
+ { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+ { (exit 1); exit 1; }; }
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+ if test "x$build_alias" = x; then
+ cross_compiling=maybe
+ $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used." >&2
+ elif test "x$build_alias" != "x$host_alias"; then
+ cross_compiling=yes
+ fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
+ac_ls_di=`ls -di .` &&
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
+ { $as_echo "$as_me: error: working directory cannot be determined" >&2
+ { (exit 1); exit 1; }; }
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
+ { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
+ { (exit 1); exit 1; }; }
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+ ac_srcdir_defaulted=yes
+ # Try the directory containing this script, then the parent directory.
+ ac_confdir=`$as_dirname -- "$as_myself" ||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_myself" : 'X\(//\)[^/]' \| \
+ X"$as_myself" : 'X\(//\)$' \| \
+ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_myself" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ srcdir=$ac_confdir
+ if test ! -r "$srcdir/$ac_unique_file"; then
+ srcdir=..
+ fi
+else
+ ac_srcdir_defaulted=no
+fi
+if test ! -r "$srcdir/$ac_unique_file"; then
+ test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
+ { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
+ { (exit 1); exit 1; }; }
+fi
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
+ac_abs_confdir=`(
+ cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
+ { (exit 1); exit 1; }; }
+ pwd)`
+# When building in place, set srcdir=.
+if test "$ac_abs_confdir" = "$ac_pwd"; then
+ srcdir=.
+fi
+# Remove unnecessary trailing slashes from srcdir.
+# Double slashes in file names in object file debugging info
+# mess up M-x gdb in Emacs.
+case $srcdir in
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
+esac
+for ac_var in $ac_precious_vars; do
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_env_${ac_var}_value=\$${ac_var}
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat <<_ACEOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE. See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+ -h, --help display this help and exit
+ --help=short display options specific to this package
+ --help=recursive display the short help of all the included packages
+ -V, --version display version information and exit
+ -q, --quiet, --silent do not print \`checking...' messages
+ --cache-file=FILE cache test results in FILE [disabled]
+ -C, --config-cache alias for \`--cache-file=config.cache'
+ -n, --no-create do not create output files
+ --srcdir=DIR find the sources in DIR [configure dir or \`..']
+
+Installation directories:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
+ --infodir=DIR info documentation [DATAROOTDIR/info]
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ --mandir=DIR man documentation [DATAROOTDIR/man]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
+ --htmldir=DIR html documentation [DOCDIR]
+ --dvidir=DIR dvi documentation [DOCDIR]
+ --pdfdir=DIR pdf documentation [DOCDIR]
+ --psdir=DIR ps documentation [DOCDIR]
+_ACEOF
+
+ cat <<\_ACEOF
+
+Program names:
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM run sed PROGRAM on installed program names
+
+System types:
+ --build=BUILD configure for building on BUILD [guessed]
+ --host=HOST cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+
+ cat <<\_ACEOF
+
+Optional Features:
+ --disable-option-checking ignore unrecognized --enable/--with options
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors
+ --enable-shared[=PKGS] build shared libraries [default=no]
+ --enable-static[=PKGS] build static libraries [default=yes]
+ --enable-fast-install[=PKGS]
+ optimize for fast installation [default=yes]
+ --disable-libtool-lock avoid locking (might break parallel builds)
+ --enable-relocatable install a package that can be moved in the filesystem
+
+Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-pic try to use only PIC/non-PIC objects [default=use
+ both]
+ --with-gnu-ld assume the C compiler uses GNU ld [default=no]
+
+Some influential environment variables:
+ CC C compiler command
+ CFLAGS C compiler flags
+ LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
+ nonstandard directory <lib dir>
+ LIBS libraries to pass to the linker, e.g. -l<library>
+ CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+ you have headers in a nonstandard directory <include dir>
+ CPP C preprocessor
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+_ACEOF
+ac_status=$?
+fi
+
+if test "$ac_init_help" = "recursive"; then
+ # If there are subdirs, report their specific --help.
+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+ test -d "$ac_dir" ||
+ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
+ continue
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+ cd "$ac_dir" || { ac_status=$?; continue; }
+ # Check for guested configure.
+ if test -f "$ac_srcdir/configure.gnu"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_srcdir/configure"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure" --help=recursive
+ else
+ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ fi || ac_status=$?
+ cd "$ac_pwd" || { ac_status=$?; break; }
+ done
+fi
+
+test -n "$ac_init_help" && exit $ac_status
+if $ac_init_version; then
+ cat <<\_ACEOF
+configure
+generated by GNU Autoconf 2.63
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+ exit
+fi
+cat >config.log <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.63. Invocation command line was
+
+ $ $0 $@
+
+_ACEOF
+exec 5>>config.log
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
+
+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ $as_echo "PATH: $as_dir"
+done
+IFS=$as_save_IFS
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+ for ac_arg
+ do
+ case $ac_arg in
+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ continue ;;
+ *\'*)
+ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ case $ac_pass in
+ 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 2)
+ ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ if test $ac_must_keep_next = true; then
+ ac_must_keep_next=false # Got value, back to normal.
+ else
+ case $ac_arg in
+ *=* | --config-cache | -C | -disable-* | --disable-* \
+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+ | -with-* | --with-* | -without-* | --without-* | --x)
+ case "$ac_configure_args0 " in
+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+ esac
+ ;;
+ -* ) ac_must_keep_next=true ;;
+ esac
+ fi
+ ac_configure_args="$ac_configure_args '$ac_arg'"
+ ;;
+ esac
+ done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log. We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Use '\'' to represent an apostrophe within the trap.
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
+trap 'exit_status=$?
+ # Save into config.log some information that might help in debugging.
+ {
+ echo
+
+ cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+ echo
+ # The following way of writing the cache mishandles newlines in values,
+(
+ for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) $as_unset $ac_var ;;
+ esac ;;
+ esac
+ done
+ (set) 2>&1 |
+ case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ sed -n \
+ "s/'\''/'\''\\\\'\'''\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
+ ;; #(
+ *)
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+ ;;
+ esac |
+ sort
+)
+ echo
+
+ cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_vars
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+
+ if test -n "$ac_subst_files"; then
+ cat <<\_ASBOX
+## ------------------- ##
+## File substitutions. ##
+## ------------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_files
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+ fi
+
+ if test -s confdefs.h; then
+ cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+ echo
+ cat confdefs.h
+ echo
+ fi
+ test "$ac_signal" != 0 &&
+ $as_echo "$as_me: caught signal $ac_signal"
+ $as_echo "$as_me: exit $exit_status"
+ } >&5
+ rm -f core *.core core.conftest.* &&
+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
+ exit $exit_status
+' 0
+for ac_signal in 1 2 13 15; do
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -f -r conftest* confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer an explicitly selected file to automatically selected ones.
+ac_site_file1=NONE
+ac_site_file2=NONE
+if test -n "$CONFIG_SITE"; then
+ ac_site_file1=$CONFIG_SITE
+elif test "x$prefix" != xNONE; then
+ ac_site_file1=$prefix/share/config.site
+ ac_site_file2=$prefix/etc/config.site
+else
+ ac_site_file1=$ac_default_prefix/share/config.site
+ ac_site_file2=$ac_default_prefix/etc/config.site
+fi
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+do
+ test "x$ac_site_file" = xNONE && continue
+ if test -r "$ac_site_file"; then
+ { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+ sed 's/^/| /' "$ac_site_file" >&5
+ . "$ac_site_file"
+ fi
+done
+
+if test -r "$cache_file"; then
+ # Some versions of bash will fail to source /dev/null (special
+ # files actually), so we avoid doing that.
+ if test -f "$cache_file"; then
+ { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
+$as_echo "$as_me: loading cache $cache_file" >&6;}
+ case $cache_file in
+ [\\/]* | ?:[\\/]* ) . "$cache_file";;
+ *) . "./$cache_file";;
+ esac
+ fi
+else
+ { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
+$as_echo "$as_me: creating cache $cache_file" >&6;}
+ >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in $ac_precious_vars; do
+ eval ac_old_set=\$ac_cv_env_${ac_var}_set
+ eval ac_new_set=\$ac_env_${ac_var}_set
+ eval ac_old_val=\$ac_cv_env_${ac_var}_value
+ eval ac_new_val=\$ac_env_${ac_var}_value
+ case $ac_old_set,$ac_new_set in
+ set,)
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,set)
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,);;
+ *)
+ if test "x$ac_old_val" != "x$ac_new_val"; then
+ # differences in whitespace do not lead to failure.
+ ac_old_val_w=`echo x $ac_old_val`
+ ac_new_val_w=`echo x $ac_new_val`
+ if test "$ac_old_val_w" != "$ac_new_val_w"; then
+ { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ ac_cache_corrupted=:
+ else
+ { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+ eval $ac_var=\$ac_old_val
+ fi
+ { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5
+$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
+ { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5
+$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
+ fi;;
+ esac
+ # Pass precious variables to config.status.
+ if test "$ac_new_set" = set; then
+ case $ac_new_val in
+ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *) ac_arg=$ac_var=$ac_new_val ;;
+ esac
+ case " $ac_configure_args " in
+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
+ *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ esac
+ fi
+done
+if $ac_cache_corrupted; then
+ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+ac_aux_dir=
+for ac_dir in build-aux "$srcdir"/build-aux; do
+ if test -f "$ac_dir/install-sh"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install-sh -c"
+ break
+ elif test -f "$ac_dir/install.sh"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install.sh -c"
+ break
+ elif test -f "$ac_dir/shtool"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/shtool install -c"
+ break
+ fi
+done
+if test -z "$ac_aux_dir"; then
+ { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in build-aux \"$srcdir\"/build-aux" >&5
+$as_echo "$as_me: error: cannot find install-sh or install.sh in build-aux \"$srcdir\"/build-aux" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
+ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
+ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
+
+
+
+
+
+ case $TERM in
+ # for the most important terminal types we directly know the sequences
+ xterm*|vt220*)
+ term_bold=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c", 27, 91, 49, 109); }' </dev/null 2>/dev/null`
+ term_norm=`${AWK:-awk} 'BEGIN { printf("%c%c%c", 27, 91, 109); }' </dev/null 2>/dev/null`
+ ;;
+ vt100*)
+ term_bold=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c%c%c", 27, 91, 49, 109, 0, 0); }' </dev/null 2>/dev/null`
+ term_norm=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c%c", 27, 91, 109, 0, 0); }' </dev/null 2>/dev/null`
+ ;;
+ # for all others, we try to use a possibly existing `tput' or `tcout' utility
+ *)
+ paths=`echo "$PATH" | sed -e 's/:/ /g'`
+ for tool in tput tcout; do
+ for dir in $paths; do
+ if test -r "$dir/$tool"; then
+ for seq in bold md smso; do # 'smso' is last
+ bold="`$dir/$tool $seq 2>/dev/null`"
+ if test -n "$bold"; then
+ term_bold="$bold"
+ break
+ fi
+ done
+ if test -n "$term_bold"; then
+ for seq in sgr0 me rmso reset; do # 'reset' is last
+ norm="`$dir/$tool $seq 2>/dev/null`"
+ if test -n "$norm"; then
+ term_norm="$norm"
+ break
+ fi
+ done
+ fi
+ break
+ fi
+ done
+ if test -n "$term_bold" && test -n "$term_norm"; then
+ break
+ fi
+ done
+ ;;
+ esac
+ echo "$term_bold" | tr -d '\n' > termbold
+ echo "$term_norm" | tr -d '\n' > termnorm
+
+
+{ echo; echo "${term_bold}Build Tools:${term_norm}"; } >& 6
+
+am__api_version='1.11'
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+
+done
+IFS=$as_save_IFS
+
+rm -rf conftest.one conftest.two conftest.dir
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ INSTALL=$ac_install_sh
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+{ $as_echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+$as_echo_n "checking whether build environment is sane... " >&6; }
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name. Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+ *[\\\"\#\$\&\'\`$am_lf]*)
+ { { $as_echo "$as_me:$LINENO: error: unsafe absolute working directory name" >&5
+$as_echo "$as_me: error: unsafe absolute working directory name" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+case $srcdir in
+ *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
+ { { $as_echo "$as_me:$LINENO: error: unsafe srcdir value: \`$srcdir'" >&5
+$as_echo "$as_me: error: unsafe srcdir value: \`$srcdir'" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+ if test "$*" = "X"; then
+ # -L didn't work.
+ set X `ls -t "$srcdir/configure" conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$*" != "X $srcdir/configure conftest.file" \
+ && test "$*" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ { { $as_echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
+alias in your environment" >&5
+$as_echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
+alias in your environment" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+
+ test "$2" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ { { $as_echo "$as_me:$LINENO: error: newly created file is older than distributed files!
+Check your system clock" >&5
+$as_echo "$as_me: error: newly created file is older than distributed files!
+Check your system clock" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+{ $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+test "$program_prefix" != NONE &&
+ program_transform_name="s&^&$program_prefix&;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+ program_transform_name="s&\$&$program_suffix&;$program_transform_name"
+# Double any \ or $.
+# By default was `s,x,x', remove it if useless.
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+if test x"${MISSING+set}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+ *)
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
+ esac
+fi
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if test x"${install_sh}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+ *)
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
+ esac
+fi
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
+
+{ $as_echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5
+$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+if test -z "$MKDIR_P"; then
+ if test "${ac_cv_path_mkdir+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in mkdir gmkdir; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+ case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
+ 'mkdir (GNU coreutils) '* | \
+ 'mkdir (coreutils) '* | \
+ 'mkdir (fileutils) '4.1*)
+ ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+ break 3;;
+ esac
+ done
+ done
+done
+IFS=$as_save_IFS
+
+fi
+
+ if test "${ac_cv_path_mkdir+set}" = set; then
+ MKDIR_P="$ac_cv_path_mkdir -p"
+ else
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for MKDIR_P within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ test -d ./--version && rmdir ./--version
+ MKDIR_P="$ac_install_sh -d"
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $MKDIR_P" >&5
+$as_echo "$MKDIR_P" >&6; }
+
+mkdir_p="$MKDIR_P"
+case $mkdir_p in
+ [\\/$]* | ?:[\\/]*) ;;
+ */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
+
+for ac_prog in gawk mawk nawk awk
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AWK+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AWK"; then
+ ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_AWK="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+ { $as_echo "$as_me:$LINENO: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$AWK" && break
+done
+
+{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
+esac
+rm -f conftest.make
+fi
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ SET_MAKE=
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+if test "`cd $srcdir && pwd`" != "`pwd`"; then
+ # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
+ # is not polluted with repeated "-I."
+ am__isrc=' -I$(srcdir)'
+ # test to see if srcdir already configured
+ if test -f $srcdir/config.status; then
+ { { $as_echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
+$as_echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE=libsigsegv
+ VERSION=2.7-pre1
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE "$PACKAGE"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+ac_config_headers="$ac_config_headers config.h"
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ fi
+fi
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# != 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl.exe
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:$LINENO: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl.exe
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_CC" && break
+done
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+fi
+
+fi
+
+
+test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+
+# Provide some information about the compiler.
+$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+{ (ac_try="$ac_compiler --version >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler --version >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -v >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler -v >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -V >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compiler -V >&5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+
+# The possible output files:
+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
+
+ac_rmfiles=
+for ac_file in $ac_files
+do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
+ * ) ac_rmfiles="$ac_rmfiles $ac_file";;
+ esac
+done
+rm -f $ac_rmfiles
+
+if { (ac_try="$ac_link_default"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link_default") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
+# in a Makefile. We should not override ac_cv_exeext if it was cached,
+# so that the user can short-circuit this test for compilers unknown to
+# Autoconf.
+for ac_file in $ac_files ''
+do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
+ ;;
+ [ab].out )
+ # We found the default executable, but exeext='' is most
+ # certainly right.
+ break;;
+ *.* )
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ then :; else
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ fi
+ # We set ac_cv_exeext here because the later test for it is not
+ # safe: cross compilers may not add the suffix if given an `-o'
+ # argument, so we may need to know it at that point already.
+ # Even if this section looks crufty: it has the advantage of
+ # actually working.
+ break;;
+ * )
+ break;;
+ esac
+done
+test "$ac_cv_exeext" = no && ac_cv_exeext=
+
+else
+ ac_file=''
+fi
+
+{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
+if test -z "$ac_file"; then
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+ if { ac_try='./$ac_file'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+ fi
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
+$as_echo_n "checking for suffix of executables... " >&6; }
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ break;;
+ * ) break;;
+ esac
+done
+else
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+$as_echo "$ac_cv_exeext" >&6; }
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
+$as_echo_n "checking for suffix of object files... " >&6; }
+if test "${ac_cv_objext+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ for ac_file in conftest.o conftest.obj conftest.*; do
+ test -f "$ac_file" || continue;
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+ break;;
+ esac
+done
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+$as_echo "$ac_cv_objext" >&6; }
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_compiler_gnu=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_compiler_gnu=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_g=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ CFLAGS=""
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_g=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_c89=$ac_arg
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { $as_echo "$as_me:$LINENO: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+ xno)
+ { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
+ *)
+ CC="$CC $ac_cv_prog_cc_c89"
+ { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo this is the am__doit target
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+{ $as_echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+ am__include=include
+ am__quote=
+ _am_result=GNU
+ ;;
+esac
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ case `$am_make -s -f confmf 2> /dev/null` in #(
+ *the\ am__doit\ target*)
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ ;;
+ esac
+fi
+
+
+{ $as_echo "$as_me:$LINENO: result: $_am_result" >&5
+$as_echo "$_am_result" >&6; }
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking was given.
+if test "${enable_dependency_tracking+set}" = set; then
+ enableval=$enable_dependency_tracking;
+fi
+
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+ if test "x$enable_dependency_tracking" != xno; then
+ AMDEP_TRUE=
+ AMDEP_FALSE='#'
+else
+ AMDEP_TRUE='#'
+ AMDEP_FALSE=
+fi
+
+
+
+depcc="$CC" am_compiler_list=
+
+{ $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CC_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
+ case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
+ none) break ;;
+ esac
+ if depmode=$depmode \
+ source=sub/conftest.c object=$am__obj \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CC_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+ if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+ am__fastdepCC_TRUE=
+ am__fastdepCC_FALSE='#'
+else
+ am__fastdepCC_TRUE='#'
+ am__fastdepCC_FALSE=
+fi
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+ { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
+$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
+ { (exit 1); exit 1; }; }
+
+{ $as_echo "$as_me:$LINENO: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if test "${ac_cv_build+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+ { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+ { (exit 1); exit 1; }; }
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
+$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
+$as_echo "$as_me: error: invalid value of canonical build" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:$LINENO: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if test "${ac_cv_host+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
+$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
+$as_echo "$as_me: error: invalid value of canonical host" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:$LINENO: checking host platform" >&5
+$as_echo_n "checking host platform... " >&6; }
+sv_cv_host="$host"
+case "$host_os" in
+ linux | linux-*)
+ kernelversion=`uname -r | sed -e 's/^\([0-9.]*\).*/\1/'`
+ sv_cv_host=`echo $sv_cv_host | sed -e "s/linux/linux$kernelversion/"`
+ ;;
+esac
+cat > conftest.c << EOF
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+Version __GLIBC__ . __GLIBC_MINOR__
+#endif
+EOF
+glibcversion=`$CPP $CPPFLAGS conftest.c 2>/dev/null | grep Version | sed -e 's/Version//' -e 's/ //g'`
+if test -n "$glibcversion"; then
+ sv_cv_host="$sv_cv_host-glibc$glibcversion"
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_host" >&5
+$as_echo "$sv_cv_host" >&6; }
+PLATFORM="$sv_cv_host"
+
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+
+done
+IFS=$as_save_IFS
+
+rm -rf conftest.one conftest.two conftest.dir
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ INSTALL=$ac_install_sh
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+
+case `pwd` in
+ *\ * | *\ *)
+ { $as_echo "$as_me:$LINENO: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+esac
+
+
+
+macro_version='2.2.6'
+macro_revision='1.3012'
+
+
+
+
+
+
+
+
+
+
+
+
+
+ltmain="$ac_aux_dir/ltmain.sh"
+
+{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
+$as_echo_n "checking for a sed that does not truncate output... " >&6; }
+if test "${ac_cv_path_SED+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+ for ac_i in 1 2 3 4 5 6 7; do
+ ac_script="$ac_script$as_nl$ac_script"
+ done
+ echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
+ $as_unset ac_script || ac_script=
+ if test -z "$SED"; then
+ ac_path_SED_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
+# Check for GNU ac_path_SED and select it if it is found.
+ # Check for GNU $ac_path_SED
+case `"$ac_path_SED" --version 2>&1` in
+*GNU*)
+ ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo '' >> "conftest.nl"
+ "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_SED_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_SED="$ac_path_SED"
+ ac_path_SED_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_SED_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_SED"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_SED=$SED
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
+$as_echo "$ac_cv_path_SED" >&6; }
+ SED="$ac_cv_path_SED"
+ rm -f conftest.sed
+
+test -z "$SED" && SED=sed
+Xsed="$SED -e 1s/^X//"
+
+
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:$LINENO: checking for fgrep" >&5
+$as_echo_n "checking for fgrep... " >&6; }
+if test "${ac_cv_path_FGREP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
+ then ac_cv_path_FGREP="$GREP -F"
+ else
+ if test -z "$FGREP"; then
+ ac_path_FGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in fgrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
+# Check for GNU ac_path_FGREP and select it if it is found.
+ # Check for GNU $ac_path_FGREP
+case `"$ac_path_FGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'FGREP' >> "conftest.nl"
+ "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_FGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_FGREP="$ac_path_FGREP"
+ ac_path_FGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_FGREP_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_FGREP"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+$as_echo "$as_me: error: no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_FGREP=$FGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_FGREP" >&5
+$as_echo "$ac_cv_path_FGREP" >&6; }
+ FGREP="$ac_cv_path_FGREP"
+
+
+test -z "$GREP" && GREP=grep
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Check whether --with-gnu-ld was given.
+if test "${with_gnu_ld+set}" = set; then
+ withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
+else
+ with_gnu_ld=no
+fi
+
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ { $as_echo "$as_me:$LINENO: checking for ld used by $CC" >&5
+$as_echo_n "checking for ld used by $CC... " >&6; }
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [\\/]* | ?:[\\/]*)
+ re_direlt='/[^/][^/]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ { $as_echo "$as_me:$LINENO: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
+else
+ { $as_echo "$as_me:$LINENO: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
+fi
+if test "${lt_cv_path_LD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$LD"; then
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+else
+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
+fi
+fi
+
+LD="$lt_cv_path_LD"
+if test -n "$LD"; then
+ { $as_echo "$as_me:$LINENO: result: $LD" >&5
+$as_echo "$LD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+test -z "$LD" && { { $as_echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
+ { (exit 1); exit 1; }; }
+{ $as_echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
+if test "${lt_cv_prog_gnu_ld+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5
+$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+with_gnu_ld=$lt_cv_prog_gnu_ld
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for BSD- or MS-compatible name lister (nm)" >&5
+$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test "${lt_cv_path_NM+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM="$NM"
+else
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+ done
+ : ${lt_cv_path_NM=no}
+fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5
+$as_echo "$lt_cv_path_NM" >&6; }
+if test "$lt_cv_path_NM" != "no"; then
+ NM="$lt_cv_path_NM"
+else
+ # Didn't find any BSD compatible name lister, look for dumpbin.
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in "dumpbin -symbols" "link -dump -symbols"
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_DUMPBIN+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DUMPBIN"; then
+ ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DUMPBIN=$ac_cv_prog_DUMPBIN
+if test -n "$DUMPBIN"; then
+ { $as_echo "$as_me:$LINENO: result: $DUMPBIN" >&5
+$as_echo "$DUMPBIN" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$DUMPBIN" && break
+ done
+fi
+if test -z "$DUMPBIN"; then
+ ac_ct_DUMPBIN=$DUMPBIN
+ for ac_prog in "dumpbin -symbols" "link -dump -symbols"
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DUMPBIN"; then
+ ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
+if test -n "$ac_ct_DUMPBIN"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_DUMPBIN" >&5
+$as_echo "$ac_ct_DUMPBIN" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_DUMPBIN" && break
+done
+
+ if test "x$ac_ct_DUMPBIN" = x; then
+ DUMPBIN=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ DUMPBIN=$ac_ct_DUMPBIN
+ fi
+fi
+
+
+ if test "$DUMPBIN" != ":"; then
+ NM="$DUMPBIN"
+ fi
+fi
+test -z "$NM" && NM=nm
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking the name lister ($NM) interface" >&5
+$as_echo_n "checking the name lister ($NM) interface... " >&6; }
+if test "${lt_cv_nm_interface+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_nm_interface="BSD nm"
+ echo "int some_variable = 0;" > conftest.$ac_ext
+ (eval echo "\"\$as_me:4772: $ac_compile\"" >&5)
+ (eval "$ac_compile" 2>conftest.err)
+ cat conftest.err >&5
+ (eval echo "\"\$as_me:4775: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+ cat conftest.err >&5
+ (eval echo "\"\$as_me:4778: output\"" >&5)
+ cat conftest.out >&5
+ if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+ lt_cv_nm_interface="MS dumpbin"
+ fi
+ rm -f conftest*
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_nm_interface" >&5
+$as_echo "$lt_cv_nm_interface" >&6; }
+
+{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5
+$as_echo_n "checking whether ln -s works... " >&6; }
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5
+$as_echo "no, using $LN_S" >&6; }
+fi
+
+# find the maximum length of command line arguments
+{ $as_echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5
+$as_echo_n "checking the maximum length of command line arguments... " >&6; }
+if test "${lt_cv_sys_max_cmd_len+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ i=0
+ teststring="ABCD"
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ amigaos*)
+ # On AmigaOS with pdksh, this test takes hours, literally.
+ # So we just punt and use a minimum line length of 8192.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ ;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
+ osf*)
+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+ # nice to cause kernel panics so lets avoid the loop below.
+ # First set a reasonable default.
+ lt_cv_sys_max_cmd_len=16384
+ #
+ if test -x /sbin/sysconfig; then
+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
+ esac
+ fi
+ ;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
+ *)
+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+ if test -n "$lt_cv_sys_max_cmd_len"; then
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ else
+ # Make teststring a little bigger before we do anything with it.
+ # a 1K string should be a reasonable start.
+ for i in 1 2 3 4 5 6 7 8 ; do
+ teststring=$teststring$teststring
+ done
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+ = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ teststring=$teststring$teststring
+ done
+ # Only check the string length outside the loop.
+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+ teststring=
+ # Add a significant safety factor because C++ compilers can tack on
+ # massive amounts of additional arguments before passing them to the
+ # linker. It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ fi
+ ;;
+ esac
+
+fi
+
+if test -n $lt_cv_sys_max_cmd_len ; then
+ { $as_echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5
+$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: none" >&5
+$as_echo "none" >&6; }
+fi
+max_cmd_len=$lt_cv_sys_max_cmd_len
+
+
+
+
+
+
+: ${CP="cp -f"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+
+{ $as_echo "$as_me:$LINENO: checking whether the shell understands some XSI constructs" >&5
+$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
+# Try some XSI features
+xsi_shell=no
+( _lt_dummy="a/b/c"
+ test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+ = c,a/b,, \
+ && eval 'test $(( 1 + 1 )) -eq 2 \
+ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+ && xsi_shell=yes
+{ $as_echo "$as_me:$LINENO: result: $xsi_shell" >&5
+$as_echo "$xsi_shell" >&6; }
+
+
+{ $as_echo "$as_me:$LINENO: checking whether the shell understands \"+=\"" >&5
+$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
+lt_shell_append=no
+( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
+ >/dev/null 2>&1 \
+ && lt_shell_append=yes
+{ $as_echo "$as_me:$LINENO: result: $lt_shell_append" >&5
+$as_echo "$lt_shell_append" >&6; }
+
+
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ lt_unset=unset
+else
+ lt_unset=false
+fi
+
+
+
+
+
+# test EBCDIC or ASCII
+case `echo X|tr X '\101'` in
+ A) # ASCII based system
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+ lt_SP2NL='tr \040 \012'
+ lt_NL2SP='tr \015\012 \040\040'
+ ;;
+ *) # EBCDIC based system
+ lt_SP2NL='tr \100 \n'
+ lt_NL2SP='tr \r\n \100\100'
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5
+$as_echo_n "checking for $LD option to reload object files... " >&6; }
+if test "${lt_cv_ld_reload_flag+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ld_reload_flag='-r'
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5
+$as_echo "$lt_cv_ld_reload_flag" >&6; }
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
+$as_echo_n "checking how to recognize dependent libraries... " >&6; }
+if test "${lt_cv_deplibs_check_method+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given extended regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix[4-9]*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi[45]*)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ # func_win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ ;;
+
+mingw* | pw32*)
+ # Base MSYS/MinGW do not provide the 'file' command needed by
+ # func_win32_libid shell function, so use a weaker test based on 'objdump',
+ # unless we find 'file', for example because we are cross-compiling.
+ if ( file / ) >/dev/null 2>&1; then
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+
+darwin* | rhapsody*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | dragonfly*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ case $host_cpu in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+interix[3-9]*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+*nto* | *qnx*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+openbsd*)
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+rdos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv4 | sysv4.3*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+tpf*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5
+$as_echo "$lt_cv_deplibs_check_method" >&6; }
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+
+
+
+
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AR+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AR"; then
+ ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_AR="${ac_tool_prefix}ar"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+ { $as_echo "$as_me:$LINENO: result: $AR" >&5
+$as_echo "$AR" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+ ac_ct_AR=$AR
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_AR"; then
+ ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_AR="ar"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_AR" >&5
+$as_echo "$ac_ct_AR" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_AR" = x; then
+ AR="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AR=$ac_ct_AR
+ fi
+else
+ AR="$ac_cv_prog_AR"
+fi
+
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+
+
+
+
+
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+test -z "$STRIP" && STRIP=:
+
+
+
+
+
+
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$RANLIB"; then
+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+ { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5
+$as_echo "$RANLIB" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+ ac_ct_RANLIB=$RANLIB
+ # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_RANLIB"; then
+ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_RANLIB="ranlib"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+$as_echo "$ac_ct_RANLIB" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_RANLIB" = x; then
+ RANLIB=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ RANLIB=$ac_ct_RANLIB
+ fi
+else
+ RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+test -z "$RANLIB" && RANLIB=:
+
+
+
+
+
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ openbsd*)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+ ;;
+ *)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+
+
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+{ $as_echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5
+$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
+if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[BCDEGRST]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[BCDT]'
+ ;;
+cygwin* | mingw* | pw32*)
+ symcode='[ABCDGISTW]'
+ ;;
+hpux*)
+ if test "$host_cpu" = ia64; then
+ symcode='[ABCDEGRST]'
+ fi
+ ;;
+irix* | nonstopux*)
+ symcode='[BCDEGRST]'
+ ;;
+osf*)
+ symcode='[BCDEGQRST]'
+ ;;
+solaris*)
+ symcode='[BDRT]'
+ ;;
+sco3.2v5*)
+ symcode='[DT]'
+ ;;
+sysv4.2uw2*)
+ symcode='[DT]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[ABDT]'
+ ;;
+sysv4)
+ symcode='[DFNSTU]'
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[ABCDGIRSTW]' ;;
+esac
+
+# Transform an extracted symbol line into a proper C declaration.
+# Some systems (esp. on ia64) link data and code symbols differently,
+# so use this general approach.
+lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# Try without a prefix underscore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+ symxfrm="\\1 $ac_symprfx\\2 \\2"
+
+ # Write the raw and C identifiers.
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Fake it for dumpbin and say T for any non-static function
+ # and D for any global variable.
+ # Also find C++ and __fastcall symbols from MSVC++,
+ # which start with @ or ?.
+ lt_cv_sys_global_symbol_pipe="$AWK '"\
+" {last_section=section; section=\$ 3};"\
+" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+" \$ 0!~/External *\|/{next};"\
+" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+" {if(hide[section]) next};"\
+" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+" s[1]~/^[@?]/{print s[1], s[1]; next};"\
+" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+" ' prfx=^$ac_symprfx"
+ else
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<_LT_EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(void);
+void nm_test_func(void){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+_LT_EOF
+
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5
+ (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_LT_EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+/* The mapping between symbol names and symbols. */
+const struct {
+ const char *name;
+ void *address;
+}
+lt__PROGRAM__LTX_preloaded_symbols[] =
+{
+ { "@PROGRAM@", (void *) 0 },
+_LT_EOF
+ $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+ cat <<\_LT_EOF >> conftest.$ac_ext
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt__PROGRAM__LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+_LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_save_LIBS="$LIBS"
+ lt_save_CFLAGS="$CFLAGS"
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+ LIBS="$lt_save_LIBS"
+ CFLAGS="$lt_save_CFLAGS"
+ else
+ echo "cannot find nm_test_func in $nlist" >&5
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&5
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
+ fi
+ else
+ echo "$progname: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ fi
+ rm -rf conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test "$pipe_works" = yes; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+
+fi
+
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ { $as_echo "$as_me:$LINENO: result: failed" >&5
+$as_echo "failed" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: ok" >&5
+$as_echo "ok" >&6; }
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Check whether --enable-libtool-lock was given.
+if test "${enable_libtool_lock+set}" = set; then
+ enableval=$enable_libtool_lock;
+fi
+
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE="32"
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE="64"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out which ABI we are using.
+ echo '#line 5877 "configure"' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.o` in
+ *32-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_i386_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ ppc64-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_x86_64_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ ppc*-*linux*|powerpc*-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ { $as_echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5
+$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
+if test "${lt_cv_cc_needs_belf+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ lt_cv_cc_needs_belf=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ lt_cv_cc_needs_belf=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5
+$as_echo "$lt_cv_cc_needs_belf" >&6; }
+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS="$SAVE_CFLAGS"
+ fi
+ ;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *)
+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+ LD="${LD-ld} -64"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+esac
+
+need_locks="$enable_libtool_lock"
+
+
+ case $host_os in
+ rhapsody* | darwin*)
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DSYMUTIL"; then
+ ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+ { $as_echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+$as_echo "$DSYMUTIL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+ ac_ct_DSYMUTIL=$DSYMUTIL
+ # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DSYMUTIL"; then
+ ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+$as_echo "$ac_ct_DSYMUTIL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_DSYMUTIL" = x; then
+ DSYMUTIL=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ DSYMUTIL=$ac_ct_DSYMUTIL
+ fi
+else
+ DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$NMEDIT"; then
+ ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+ { $as_echo "$as_me:$LINENO: result: $NMEDIT" >&5
+$as_echo "$NMEDIT" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+ ac_ct_NMEDIT=$NMEDIT
+ # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_NMEDIT"; then
+ ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_NMEDIT="nmedit"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+$as_echo "$ac_ct_NMEDIT" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_NMEDIT" = x; then
+ NMEDIT=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ NMEDIT=$ac_ct_NMEDIT
+ fi
+else
+ NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
+set dummy ${ac_tool_prefix}lipo; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_LIPO+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$LIPO"; then
+ ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+LIPO=$ac_cv_prog_LIPO
+if test -n "$LIPO"; then
+ { $as_echo "$as_me:$LINENO: result: $LIPO" >&5
+$as_echo "$LIPO" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_LIPO"; then
+ ac_ct_LIPO=$LIPO
+ # Extract the first word of "lipo", so it can be a program name with args.
+set dummy lipo; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_LIPO"; then
+ ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_LIPO="lipo"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
+if test -n "$ac_ct_LIPO"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_LIPO" >&5
+$as_echo "$ac_ct_LIPO" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_LIPO" = x; then
+ LIPO=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ LIPO=$ac_ct_LIPO
+ fi
+else
+ LIPO="$ac_cv_prog_LIPO"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_OTOOL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OTOOL"; then
+ ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+ { $as_echo "$as_me:$LINENO: result: $OTOOL" >&5
+$as_echo "$OTOOL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+ ac_ct_OTOOL=$OTOOL
+ # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OTOOL"; then
+ ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_OTOOL="otool"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL" >&5
+$as_echo "$ac_ct_OTOOL" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OTOOL" = x; then
+ OTOOL=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OTOOL=$ac_ct_OTOOL
+ fi
+else
+ OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_OTOOL64+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$OTOOL64"; then
+ ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+ { $as_echo "$as_me:$LINENO: result: $OTOOL64" >&5
+$as_echo "$OTOOL64" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+ ac_ct_OTOOL64=$OTOOL64
+ # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_OTOOL64"; then
+ ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_OTOOL64="otool64"
+ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+ { $as_echo "$as_me:$LINENO: result: $ac_ct_OTOOL64" >&5
+$as_echo "$ac_ct_OTOOL64" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_OTOOL64" = x; then
+ OTOOL64=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ OTOOL64=$ac_ct_OTOOL64
+ fi
+else
+ OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+$as_echo_n "checking for -single_module linker flag... " >&6; }
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_apple_cc_single_mod=no
+ if test -z "${LT_MULTI_MODULE}"; then
+ # By default we will add the -single_module flag. You can override
+ # by either setting the environment variable LT_MULTI_MODULE
+ # non-empty at configure time, or by adding -multi_module to the
+ # link flags.
+ rm -rf libconftest.dylib*
+ echo "int foo(void){return 1;}" > conftest.c
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+ _lt_result=$?
+ if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+ lt_cv_apple_cc_single_mod=yes
+ else
+ cat conftest.err >&5
+ fi
+ rm -rf libconftest.dylib*
+ rm -f conftest.*
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+ { $as_echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ld_exported_symbols_list=no
+ save_LDFLAGS=$LDFLAGS
+ echo "_main" > conftest.sym
+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ lt_cv_ld_exported_symbols_list=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ lt_cv_ld_exported_symbols_list=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$save_LDFLAGS"
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+ case $host_os in
+ rhapsody* | darwin1.[012])
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+ darwin1.*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ darwin*) # darwin 5.x on
+ # if running on 10.5 or later, the deployment target defaults
+ # to the OS version, if on x86, and 10.4, the deployment
+ # target defaults to 10.4. Don't you love it?
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ 10.[012]*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 10.*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
+ esac
+ if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+ _lt_dar_single_mod='$single_module'
+ fi
+ if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+ _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+ else
+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ if test "$DSYMUTIL" != ":"; then
+ _lt_dsymutil='~$DSYMUTIL $lib || :'
+ else
+ _lt_dsymutil=
+ fi
+ ;;
+ esac
+
+
+{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_header_stdc=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_stdc=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then
+ :
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ctype.h>
+#include <stdlib.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ return 2;
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define STDC_HEADERS 1
+_ACEOF
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+for ac_header in dlfcn.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+# Set options
+# Check whether --enable-shared was given.
+if test "${enable_shared+set}" = set; then
+ enableval=$enable_shared; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_shared=no
+fi
+
+
+
+
+
+
+
+
+
+
+ enable_dlopen=no
+
+
+ enable_win32_dll=no
+
+
+
+ # Check whether --enable-static was given.
+if test "${enable_static+set}" = set; then
+ enableval=$enable_static; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_static=yes
+fi
+
+
+
+
+
+
+
+
+
+
+# Check whether --with-pic was given.
+if test "${with_pic+set}" = set; then
+ withval=$with_pic; pic_mode="$withval"
+else
+ pic_mode=default
+fi
+
+
+test -z "$pic_mode" && pic_mode=default
+
+
+
+
+
+
+
+ # Check whether --enable-fast-install was given.
+if test "${enable_fast_install+set}" = set; then
+ enableval=$enable_fast_install; p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac
+else
+ enable_fast_install=yes
+fi
+
+
+
+
+
+
+
+
+
+
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ltmain"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+test -z "$LN_S" && LN_S="ln -s"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+{ $as_echo "$as_me:$LINENO: checking for objdir" >&5
+$as_echo_n "checking for objdir... " >&6; }
+if test "${lt_cv_objdir+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5
+$as_echo "$lt_cv_objdir" >&6; }
+objdir=$lt_cv_objdir
+
+
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define LT_OBJDIR "$lt_cv_objdir/"
+_ACEOF
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\(["`\\]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to delay expansion of an escaped single quote.
+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+
+# Global variables:
+ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+test -z "$LD" && LD=ld
+test -z "$ac_objext" && ac_objext=o
+
+for cc_temp in $compiler""; do
+ case $cc_temp in
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+
+
+# Only perform the check for file, if the check method requires it
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ { $as_echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5
+$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ case $MAGIC_CMD in
+[\\/*] | ?:[\\/]*)
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/${ac_tool_prefix}file; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+$as_echo "$MAGIC_CMD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ { $as_echo "$as_me:$LINENO: checking for file" >&5
+$as_echo_n "checking for file... " >&6; }
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ case $MAGIC_CMD in
+[\\/*] | ?:[\\/]*)
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/file; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/file"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ { $as_echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5
+$as_echo "$MAGIC_CMD" >&6; }
+else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ else
+ MAGIC_CMD=:
+ fi
+fi
+
+ fi
+ ;;
+esac
+
+# Use C for the default configuration in the libtool script
+
+lt_save_CC="$CC"
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+objext=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}'
+
+
+
+
+
+
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+
+# Save the default compiler, since it gets overwritten when the other
+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+compiler_DEFAULT=$CC
+
+# save warnings/boilerplate of simple test code
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_compiler_boilerplate=`cat conftest.err`
+$RM conftest*
+
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_linker_boilerplate=`cat conftest.err`
+$RM -r conftest*
+
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+
+lt_prog_compiler_no_builtin_flag=
+
+if test "$GCC" = yes; then
+ lt_prog_compiler_no_builtin_flag=' -fno-builtin'
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_rtti_exceptions=no
+ ac_outfile=conftest.$ac_objext
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="-fno-rtti -fno-exceptions"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:7497: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&5
+ echo "$as_me:7501: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_rtti_exceptions=yes
+ fi
+ fi
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+
+if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
+ lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
+else
+ :
+fi
+
+fi
+
+
+
+
+
+
+ lt_prog_compiler_wl=
+lt_prog_compiler_pic=
+lt_prog_compiler_static=
+
+{ $as_echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+
+ if test "$GCC" = yes; then
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_static='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ lt_prog_compiler_static='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | cygwin* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ lt_prog_compiler_pic='-DDLL_EXPORT'
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ lt_prog_compiler_pic='-fno-common'
+ ;;
+
+ hpux*)
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ esac
+ ;;
+
+ interix[3-9]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ lt_prog_compiler_can_build_shared=no
+ enable_shared=no
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ lt_prog_compiler_pic='-fPIC -shared'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ lt_prog_compiler_pic=-Kconform_pic
+ fi
+ ;;
+
+ *)
+ lt_prog_compiler_pic='-fPIC'
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ lt_prog_compiler_wl='-Wl,'
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ lt_prog_compiler_static='-Bstatic'
+ else
+ lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ mingw* | cygwin* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ lt_prog_compiler_pic='-DDLL_EXPORT'
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ lt_prog_compiler_wl='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ lt_prog_compiler_pic='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ lt_prog_compiler_static='${wl}-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ lt_prog_compiler_wl='-Wl,'
+ # PIC (with -KPIC) is the default.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ icc* | ecc* | ifort*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-static'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-fpic'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+ ccc*)
+ lt_prog_compiler_wl='-Wl,'
+ # All Alpha code is PIC.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+ xl*)
+ # IBM XL C 8.0/Fortran 10.1 on PPC
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-qpic'
+ lt_prog_compiler_static='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C 5.9
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ lt_prog_compiler_wl='-Wl,'
+ ;;
+ *Sun\ F*)
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ lt_prog_compiler_wl=''
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ newsos6)
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ lt_prog_compiler_pic='-fPIC -shared'
+ ;;
+
+ osf3* | osf4* | osf5*)
+ lt_prog_compiler_wl='-Wl,'
+ # All OSF/1 code is PIC.
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ rdos*)
+ lt_prog_compiler_static='-non_shared'
+ ;;
+
+ solaris*)
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ case $cc_basename in
+ f77* | f90* | f95*)
+ lt_prog_compiler_wl='-Qoption ld ';;
+ *)
+ lt_prog_compiler_wl='-Wl,';;
+ esac
+ ;;
+
+ sunos4*)
+ lt_prog_compiler_wl='-Qoption ld '
+ lt_prog_compiler_pic='-PIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec ;then
+ lt_prog_compiler_pic='-Kconform_pic'
+ lt_prog_compiler_static='-Bstatic'
+ fi
+ ;;
+
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ unicos*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_can_build_shared=no
+ ;;
+
+ uts4*)
+ lt_prog_compiler_pic='-pic'
+ lt_prog_compiler_static='-Bstatic'
+ ;;
+
+ *)
+ lt_prog_compiler_can_build_shared=no
+ ;;
+ esac
+ fi
+
+case $host_os in
+ # For platforms which do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ lt_prog_compiler_pic=
+ ;;
+ *)
+ lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5
+$as_echo "$lt_prog_compiler_pic" >&6; }
+
+
+
+
+
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$lt_prog_compiler_pic"; then
+ { $as_echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic_works=no
+ ac_outfile=conftest.$ac_objext
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:7821: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&5
+ echo "$as_me:7825: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_pic_works=yes
+ fi
+ fi
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
+ case $lt_prog_compiler_pic in
+ "" | " "*) ;;
+ *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
+ esac
+else
+ lt_prog_compiler_pic=
+ lt_prog_compiler_can_build_shared=no
+fi
+
+fi
+
+
+
+
+
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
+{ $as_echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_static_works=no
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The linker can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&5
+ $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if diff conftest.exp conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_static_works=yes
+ fi
+ else
+ lt_cv_prog_compiler_static_works=yes
+ fi
+ fi
+ $RM -r conftest*
+ LDFLAGS="$save_LDFLAGS"
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
+ :
+else
+ lt_prog_compiler_static=
+fi
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_c_o=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:7926: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&5
+ echo "$as_me:7930: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_c_o=yes
+ fi
+ fi
+ chmod u+w . 2>&5
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
+$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test "${lt_cv_prog_compiler_c_o+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_c_o=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:7981: $lt_compile\"" >&5)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&5
+ echo "$as_me:7985: \$? = $ac_status" >&5
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ lt_cv_prog_compiler_c_o=yes
+ fi
+ fi
+ chmod u+w . 2>&5
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5
+$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+
+
+
+
+hard_links="nottested"
+if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
+ # do not overwrite the value of need_locks provided by the user
+ { $as_echo "$as_me:$LINENO: checking if we can lock with hard links" >&5
+$as_echo_n "checking if we can lock with hard links... " >&6; }
+ hard_links=yes
+ $RM conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ { $as_echo "$as_me:$LINENO: result: $hard_links" >&5
+$as_echo "$hard_links" >&6; }
+ if test "$hard_links" = no; then
+ { $as_echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
+$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+
+ runpath_var=
+ allow_undefined_flag=
+ always_export_symbols=no
+ archive_cmds=
+ archive_expsym_cmds=
+ compiler_needs_object=no
+ enable_shared_with_static_runtimes=no
+ export_dynamic_flag_spec=
+ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ hardcode_automatic=no
+ hardcode_direct=no
+ hardcode_direct_absolute=no
+ hardcode_libdir_flag_spec=
+ hardcode_libdir_flag_spec_ld=
+ hardcode_libdir_separator=
+ hardcode_minus_L=no
+ hardcode_shlibpath_var=unsupported
+ inherit_rpath=no
+ link_all_deplibs=unknown
+ module_cmds=
+ module_expsym_cmds=
+ old_archive_from_new_cmds=
+ old_archive_from_expsyms_cmds=
+ thread_safe_flag_spec=
+ whole_archive_flag_spec=
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ include_expsyms=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ` (' and `)$', so one must not match beginning or
+ # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+ # as well as any symbol that contains `d'.
+ exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ # Exclude shared library initialization/finalization symbols.
+ extract_expsyms_cmds=
+
+ 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
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='${wl}'
+
+ # 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.
+ runpath_var=LD_RUN_PATH
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ export_dynamic_flag_spec='${wl}--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ whole_archive_flag_spec=
+ fi
+ supports_anon_versioning=no
+ case `$LD -v 2>&1` in
+ *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix[3-9]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ ld_shlibs=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+_LT_EOF
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds=''
+ ;;
+ m68k)
+ archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ allow_undefined_flag=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
+ # as there is no search path for DLLs.
+ hardcode_libdir_flag_spec='-L$libdir'
+ allow_undefined_flag=unsupported
+ always_export_symbols=no
+ enable_shared_with_static_runtimes=yes
+ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ interix[3-9]*)
+ hardcode_direct=no
+ hardcode_shlibpath_var=no
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ export_dynamic_flag_spec='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
+ gnu* | linux* | tpf* | k*bsd*-gnu)
+ tmp_diet=no
+ if test "$host_os" = linux-dietlibc; then
+ case $cc_basename in
+ diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
+ esac
+ fi
+ if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+ && test "$tmp_diet" = no
+ then
+ tmp_addflag=
+ tmp_sharedflag='-shared'
+ case $cc_basename,$host_cpu in
+ pgcc*) # Portland Group C compiler
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag -Mnomain' ;;
+ ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
+ tmp_addflag=' -i_dynamic' ;;
+ efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
+ tmp_addflag=' -i_dynamic -nofor_main' ;;
+ ifc* | ifort*) # Intel Fortran compiler
+ tmp_addflag=' -nofor_main' ;;
+ xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
+ tmp_sharedflag='-qmkshrobj'
+ tmp_addflag= ;;
+ esac
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*) # Sun C 5.9
+ whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ compiler_needs_object=yes
+ tmp_sharedflag='-G' ;;
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+ archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+
+ case $cc_basename in
+ xlf*)
+ # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+ whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+ hardcode_libdir_flag_spec=
+ hardcode_libdir_flag_spec_ld='-rpath $libdir'
+ archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris*)
+ if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+ ld_shlibs=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ 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
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ ;;
+
+ sunos4*)
+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+
+ if test "$ld_shlibs" = no; then
+ runpath_var=
+ hardcode_libdir_flag_spec=
+ export_dynamic_flag_spec=
+ whole_archive_flag_spec=
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ allow_undefined_flag=unsupported
+ always_export_symbols=yes
+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ hardcode_minus_L=yes
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ hardcode_direct=unsupported
+ fi
+ ;;
+
+ aix[4-9]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ 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].*|aix[5-9]*)
+ 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
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ archive_cmds=''
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ hardcode_libdir_separator=':'
+ link_all_deplibs=yes
+ file_list_spec='${wl}-f,'
+
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ hardcode_direct=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ hardcode_minus_L=yes
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_libdir_separator=
+ fi
+ ;;
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to export.
+ always_export_symbols=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ allow_undefined_flag='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+ allow_undefined_flag="-z nodefs"
+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ no_undefined_flag=' ${wl}-bernotok'
+ allow_undefined_flag=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ whole_archive_flag_spec='$convenience'
+ archive_cmds_need_lc=yes
+ # This is similar to how AIX traditionally builds its shared libraries.
+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds=''
+ ;;
+ m68k)
+ archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+
+ bsdi[45]*)
+ export_dynamic_flag_spec=-rdynamic
+ ;;
+
+ 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=' '
+ allow_undefined_flag=unsupported
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=".dll"
+ # FIXME: Setting linknames here is a bad hack.
+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ old_archive_from_new_cmds='true'
+ # FIXME: Should let the user specify the lib program.
+ old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
+ fix_srcfile_path='`cygpath -w "$srcfile"`'
+ enable_shared_with_static_runtimes=yes
+ ;;
+
+ darwin* | rhapsody*)
+
+
+ archive_cmds_need_lc=no
+ hardcode_direct=no
+ hardcode_automatic=yes
+ hardcode_shlibpath_var=unsupported
+ whole_archive_flag_spec=''
+ link_all_deplibs=yes
+ allow_undefined_flag="$_lt_dar_allow_undefined"
+ if test "$GCC" = "yes"; then
+ output_verbose_link_cmd=echo
+ archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+ module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+ archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+ module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+
+ else
+ ld_shlibs=no
+ fi
+
+ ;;
+
+ dgux*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_shlibpath_var=no
+ ;;
+
+ freebsd1*)
+ ld_shlibs=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly*)
+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ hpux9*)
+ if test "$GCC" = yes; then
+ archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+ 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
+ export_dynamic_flag_spec='${wl}-E'
+ ;;
+
+ hpux10*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_flag_spec_ld='+b $libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ export_dynamic_flag_spec='${wl}-E'
+ # 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 "$GCC" = yes -a "$with_gnu_ld" = no; then
+ case $host_cpu in
+ hppa*64*)
+ archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ archive_cmds='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+ case $host_cpu in
+ hppa*64*)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ fi
+ 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_shlibpath_var=no
+ ;;
+ *)
+ hardcode_direct=yes
+ hardcode_direct_absolute=yes
+ export_dynamic_flag_spec='${wl}-E'
+
+ # 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*)
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+ cat >conftest.$ac_ext <<_ACEOF
+int foo(void) {}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="$save_LDFLAGS"
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ inherit_rpath=yes
+ link_all_deplibs=yes
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ newsos6)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_shlibpath_var=no
+ ;;
+
+ *nto* | *qnx*)
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ hardcode_direct_absolute=yes
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ export_dynamic_flag_spec='${wl}-E'
+ else
+ case $host_os in
+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ *)
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ os2*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ allow_undefined_flag=unsupported
+ archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+ ;;
+
+ osf3*)
+ if test "$GCC" = yes; then
+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ allow_undefined_flag=' -expect_unresolved \*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ else
+ allow_undefined_flag=' -expect_unresolved \*'
+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ hardcode_libdir_flag_spec='-rpath $libdir'
+ fi
+ archive_cmds_need_lc='no'
+ hardcode_libdir_separator=:
+ ;;
+
+ solaris*)
+ no_undefined_flag=' -z defs'
+ if test "$GCC" = yes; then
+ wlarc='${wl}'
+ archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+ wlarc=''
+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+ ;;
+ *)
+ wlarc='${wl}'
+ archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ ;;
+ esac
+ fi
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_shlibpath_var=no
+ case $host_os in
+ solaris2.[0-5] | solaris2.[0-5].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'. GCC discards it without `$wl',
+ # but is careful enough not to reorder.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ if test "$GCC" = yes; then
+ whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ else
+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
+ fi
+ ;;
+ esac
+ link_all_deplibs=yes
+ ;;
+
+ sunos4*)
+ if test "x$host_vendor" = xsequent; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ reload_cmds='$CC -r -o $output$reload_objs'
+ hardcode_direct=no
+ ;;
+ motorola)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ hardcode_shlibpath_var=no
+ ;;
+
+ sysv4.3*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_shlibpath_var=no
+ export_dynamic_flag_spec='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_shlibpath_var=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ ld_shlibs=yes
+ fi
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
+ no_undefined_flag='${wl}-z,text'
+ archive_cmds_need_lc=no
+ hardcode_shlibpath_var=no
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ no_undefined_flag='${wl}-z,text'
+ allow_undefined_flag='${wl}-z,nodefs'
+ archive_cmds_need_lc=no
+ hardcode_shlibpath_var=no
+ hardcode_libdir_flag_spec='${wl}-R,$libdir'
+ hardcode_libdir_separator=':'
+ link_all_deplibs=yes
+ export_dynamic_flag_spec='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ uts4*)
+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_shlibpath_var=no
+ ;;
+
+ *)
+ ld_shlibs=no
+ ;;
+ esac
+
+ if test x$host_vendor = xsni; then
+ case $host in
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ export_dynamic_flag_spec='${wl}-Blargedynsym'
+ ;;
+ esac
+ fi
+ fi
+
+{ $as_echo "$as_me:$LINENO: result: $ld_shlibs" >&5
+$as_echo "$ld_shlibs" >&6; }
+test "$ld_shlibs" = no && can_build_shared=no
+
+with_gnu_ld=$with_gnu_ld
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$archive_cmds_need_lc" in
+x|xyes)
+ # Assume -lc should be added
+ archive_cmds_need_lc=yes
+
+ if test "$enable_shared" = yes && test "$GCC" = yes; then
+ case $archive_cmds in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ { $as_echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
+$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
+ $RM conftest*
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$lt_prog_compiler_wl
+ pic_flag=$lt_prog_compiler_pic
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$allow_undefined_flag
+ allow_undefined_flag=
+ if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\"") >&5
+ (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+ then
+ archive_cmds_need_lc=no
+ else
+ archive_cmds_need_lc=yes
+ fi
+ allow_undefined_flag=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $RM conftest*
+ { $as_echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5
+$as_echo "$archive_cmds_need_lc" >&6; }
+ ;;
+ esac
+ fi
+ ;;
+esac
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5
+$as_echo_n "checking dynamic linker characteristics... " >&6; }
+
+if test "$GCC" = yes; then
+ case $host_os in
+ darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+ *) lt_awk_arg="/^libraries:/" ;;
+ esac
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+ # if the path contains ";" then we assume it to be the separator
+ # otherwise default to the standard path separator (i.e. ":") - it is
+ # assumed that no part of a normal pathname contains ";" but that should
+ # okay in the real world where ";" in dirpaths is itself problematic.
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ # Ok, now we have the path, separated by spaces, we can step through it
+ # and add multilib dir if necessary.
+ lt_tmp_lt_search_path_spec=
+ lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+ for lt_sys_path in $lt_search_path_spec; do
+ if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+ else
+ test -d "$lt_sys_path" && \
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+ fi
+ done
+ lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+ lt_foo="";
+ lt_count=0;
+ for (lt_i = NF; lt_i > 0; lt_i--) {
+ if ($lt_i != "" && $lt_i != ".") {
+ if ($lt_i == "..") {
+ lt_count++;
+ } else {
+ if (lt_count == 0) {
+ lt_foo="/" $lt_i lt_foo;
+ } else {
+ lt_count--;
+ }
+ }
+ }
+ }
+ if (lt_foo != "") { lt_freq[lt_foo]++; }
+ if (lt_freq[lt_foo] == 1) { print lt_foo; }
+}'`
+ sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+else
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+fi
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext_cmds=".so"
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+case $host_os in
+aix3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+
+aix[4-9]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test "$host_cpu" = ia64; then
+ # AIX 5 supports IA64
+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[01] | aix4.[01].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ if test "$aix_use_runtimelinking" = yes; then
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ else
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='${libname}${release}.a $libname.a'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ fi
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ case $host_cpu in
+ powerpc)
+ # Since July 2007 AmigaOS4 officially supports .so libraries.
+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ ;;
+ m68k)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+ ;;
+ esac
+ ;;
+
+beos*)
+ library_names_spec='${libname}${shared_ext}'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi[45]*)
+ version_type=linux
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32*)
+ version_type=windows
+ shrext_cmds=".dll"
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$host_os in
+ yes,cygwin* | yes,mingw* | yes,pw32*)
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+ ;;
+ mingw*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
+ # It is most probably a Windows format PATH printed by
+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
+ # path with ; separators, and with drive letters. We can handle the
+ # drive letters (cygwin fileutils understands them), so leave them,
+ # especially as we might pass files found there to a mingw objdump,
+ # which wouldn't understand a cygwinified path. Ahh.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
+ ;;
+
+ *)
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ soname_spec='${libname}${release}${major}$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd1*)
+ dynamic_linker=no
+ ;;
+
+freebsd* | dragonfly*)
+ # DragonFly does not have aout. When/if they implement a new
+ # versioning mechanism, adjust this.
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[123]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[01]* | freebsdelf3.[01]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
+ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ *) # from 4.6 on, and DragonFly
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case $host_cpu in
+ ia64*)
+ shrext_cmds='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ if test "X$HPUX_IA64_MODE" = X32; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ hppa*64*)
+ shrext_cmds='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext_cmds='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
+ postinstall_cmds='chmod 555 $lib'
+ ;;
+
+interix[3-9]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ version_type=linux
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # Some binutils ld are patched to set DT_RUNPATH
+ save_LDFLAGS=$LDFLAGS
+ save_libdir=$libdir
+ eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
+ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then
+ shlibpath_overrides_runpath=yes
+fi
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS=$save_LDFLAGS
+ libdir=$save_libdir
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # Append ld.so.conf contents to the search path
+ if test -f /etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ fi
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+*nto* | *qnx*)
+ version_type=qnx
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='ldqnx.so'
+ ;;
+
+openbsd*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
+ need_lib_prefix=no
+ # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+ case $host_os in
+ openbsd3.3 | openbsd3.3.*) need_version=yes ;;
+ *) need_version=no ;;
+ esac
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ case $host_os in
+ openbsd2.[89] | openbsd2.[89].*)
+ shlibpath_overrides_runpath=no
+ ;;
+ *)
+ shlibpath_overrides_runpath=yes
+ ;;
+ esac
+ else
+ shlibpath_overrides_runpath=yes
+ fi
+ ;;
+
+os2*)
+ libname_spec='$name'
+ shrext_cmds=".dll"
+ need_lib_prefix=no
+ library_names_spec='$libname${shared_ext} $libname.a'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=LIBPATH
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ ;;
+
+rdos*)
+ dynamic_linker=no
+ ;;
+
+solaris*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test "$with_gnu_ld" = yes; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec ;then
+ version_type=linux
+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+ soname_spec='$libname${shared_ext}.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
+tpf*)
+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+uts4*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: result: $dynamic_linker" >&5
+$as_echo "$dynamic_linker" >&6; }
+test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+ sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+ sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5
+$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+hardcode_action=
+if test -n "$hardcode_libdir_flag_spec" ||
+ test -n "$runpath_var" ||
+ test "X$hardcode_automatic" = "Xyes" ; then
+
+ # We can hardcode non-existent directories.
+ if test "$hardcode_direct" != no &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
+ test "$hardcode_minus_L" != no; then
+ # Linking always hardcodes the temporary library directory.
+ hardcode_action=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ hardcode_action=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ hardcode_action=unsupported
+fi
+{ $as_echo "$as_me:$LINENO: result: $hardcode_action" >&5
+$as_echo "$hardcode_action" >&6; }
+
+if test "$hardcode_action" = relink ||
+ test "$inherit_rpath" = yes; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+ test "$enable_shared" = no; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+
+
+
+
+
+
+ if test "x$enable_dlopen" != xyes; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen="load_add_on"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32*)
+ lt_cv_dlopen="LoadLibrary"
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen="dlopen"
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+$as_echo_n "checking for dlopen in -ldl... " >&6; }
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dl_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dl_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+else
+
+ lt_cv_dlopen="dyld"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+
+fi
+
+ ;;
+
+ *)
+ { $as_echo "$as_me:$LINENO: checking for shl_load" >&5
+$as_echo_n "checking for shl_load... " >&6; }
+if test "${ac_cv_func_shl_load+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define shl_load to an innocuous variant, in case <limits.h> declares shl_load.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define shl_load innocuous_shl_load
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char shl_load (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef shl_load
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char shl_load ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_shl_load || defined __stub___shl_load
+choke me
+#endif
+
+int
+main ()
+{
+return shl_load ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_func_shl_load=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_shl_load=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5
+$as_echo "$ac_cv_func_shl_load" >&6; }
+if test "x$ac_cv_func_shl_load" = x""yes; then
+ lt_cv_dlopen="shl_load"
+else
+ { $as_echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5
+$as_echo_n "checking for shl_load in -ldld... " >&6; }
+if test "${ac_cv_lib_dld_shl_load+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char shl_load ();
+int
+main ()
+{
+return shl_load ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dld_shl_load=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dld_shl_load=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
+$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = x""yes; then
+ lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen" >&5
+$as_echo_n "checking for dlopen... " >&6; }
+if test "${ac_cv_func_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define dlopen to an innocuous variant, in case <limits.h> declares dlopen.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define dlopen innocuous_dlopen
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char dlopen (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef dlopen
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_dlopen || defined __stub___dlopen
+choke me
+#endif
+
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_func_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5
+$as_echo "$ac_cv_func_dlopen" >&6; }
+if test "x$ac_cv_func_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+$as_echo_n "checking for dlopen in -ldl... " >&6; }
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dl_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dl_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+else
+ { $as_echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5
+$as_echo_n "checking for dlopen in -lsvld... " >&6; }
+if test "${ac_cv_lib_svld_dlopen+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsvld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_svld_dlopen=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_svld_dlopen=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5
+$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = x""yes; then
+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
+else
+ { $as_echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5
+$as_echo_n "checking for dld_link in -ldld... " >&6; }
+if test "${ac_cv_lib_dld_dld_link+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dld_link ();
+int
+main ()
+{
+return dld_link ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ ac_cv_lib_dld_dld_link=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dld_dld_link=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
+$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = x""yes; then
+ lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+ ;;
+ esac
+
+ if test "x$lt_cv_dlopen" != xno; then
+ enable_dlopen=yes
+ else
+ enable_dlopen=no
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS="$CPPFLAGS"
+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS="$LDFLAGS"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS="$LIBS"
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ { $as_echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5
+$as_echo_n "checking whether a program can dlopen itself... " >&6; }
+if test "${lt_cv_dlopen_self+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ lt_cv_dlopen_self=cross
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+#line 10773 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ exit (status);
+}
+_LT_EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&5 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
+ x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
+ x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
+ esac
+ else :
+ # compilation failed
+ lt_cv_dlopen_self=no
+ fi
+fi
+rm -fr conftest*
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5
+$as_echo "$lt_cv_dlopen_self" >&6; }
+
+ if test "x$lt_cv_dlopen_self" = xyes; then
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+ { $as_echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5
+$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
+if test "${lt_cv_dlopen_self_static+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ lt_cv_dlopen_self_static=cross
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+#line 10873 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ exit (status);
+}
+_LT_EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&5 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
+ x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
+ x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
+ esac
+ else :
+ # compilation failed
+ lt_cv_dlopen_self_static=no
+ fi
+fi
+rm -fr conftest*
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5
+$as_echo "$lt_cv_dlopen_self_static" >&6; }
+ fi
+
+ CPPFLAGS="$save_CPPFLAGS"
+ LDFLAGS="$save_LDFLAGS"
+ LIBS="$save_LIBS"
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+striplib=
+old_striplib=
+{ $as_echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5
+$as_echo_n "checking whether stripping libraries is possible... " >&6; }
+if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+# FIXME - insert some real tests, host_os isn't really good enough
+ case $host_os in
+ darwin*)
+ if test -n "$STRIP" ; then
+ striplib="$STRIP -x"
+ old_striplib="$STRIP -S"
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+ ;;
+ *)
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ ;;
+ esac
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+ # Report which library types will actually be built
+ { $as_echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5
+$as_echo_n "checking if libtool supports shared libraries... " >&6; }
+ { $as_echo "$as_me:$LINENO: result: $can_build_shared" >&5
+$as_echo "$can_build_shared" >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether to build shared libraries" >&5
+$as_echo_n "checking whether to build shared libraries... " >&6; }
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+ aix[4-9]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ { $as_echo "$as_me:$LINENO: result: $enable_shared" >&5
+$as_echo "$enable_shared" >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether to build static libraries" >&5
+$as_echo_n "checking whether to build static libraries... " >&6; }
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ { $as_echo "$as_me:$LINENO: result: $enable_static" >&5
+$as_echo "$enable_static" >&6; }
+
+
+
+
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+CC="$lt_save_CC"
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ac_config_commands="$ac_config_commands libtool"
+
+
+
+
+# Only expand once:
+
+
+
+# For testing cross-compilation behaviour.
+#cross_compiling=yes
+
+{ echo; echo "${term_bold}Optional Platform Environment:${term_norm}"; } >& 6
+
+
+for ac_header in sys/signal.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+
+fi
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+case "$host_os" in
+ sunos4* | freebsd* | dragonfly* | openbsd* | netbsd* | kfreebsd* | knetbsd*)
+ CFG_SIGNALS=signals-bsd.h ;;
+ hpux*)
+ CFG_SIGNALS=signals-hpux.h ;;
+ macos* | darwin*)
+ CFG_SIGNALS=signals-macos.h ;;
+ gnu*)
+ CFG_SIGNALS=signals-hurd.h ;;
+ *)
+ CFG_SIGNALS=signals.h ;;
+esac
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_SIGNALS "$CFG_SIGNALS"
+_ACEOF
+
+
+# How to determine the memory page size.
+
+
+
+
+for ac_header in unistd.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+
+fi
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+ { $as_echo "$as_me:$LINENO: checking for getpagesize" >&5
+$as_echo_n "checking for getpagesize... " >&6; }
+if test "${sv_cv_func_getpagesize+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#if HAVE_UNISTD_H
+#include <sys/types.h>
+#include <unistd.h>
+#endif
+
+int
+main ()
+{
+int pgsz = getpagesize();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_func_getpagesize=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_func_getpagesize=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_func_getpagesize" >&5
+$as_echo "$sv_cv_func_getpagesize" >&6; }
+ if test $sv_cv_func_getpagesize = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GETPAGESIZE 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking for sysconf(_SC_PAGESIZE)" >&5
+$as_echo_n "checking for sysconf(_SC_PAGESIZE)... " >&6; }
+if test "${sv_cv_func_sysconf_pagesize+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#if HAVE_UNISTD_H
+#include <sys/types.h>
+#include <unistd.h>
+#endif
+
+int
+main ()
+{
+int pgsz = sysconf (_SC_PAGESIZE);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_func_sysconf_pagesize=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_func_sysconf_pagesize=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_func_sysconf_pagesize" >&5
+$as_echo "$sv_cv_func_sysconf_pagesize" >&6; }
+ if test $sv_cv_func_sysconf_pagesize = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SYSCONF_PAGESIZE 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking for PAGESIZE in limits.h" >&5
+$as_echo_n "checking for PAGESIZE in limits.h... " >&6; }
+if test "${sv_cv_macro_pagesize+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <limits.h>
+int
+main ()
+{
+int pgsz = PAGESIZE;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_macro_pagesize=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_macro_pagesize=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_macro_pagesize" >&5
+$as_echo "$sv_cv_macro_pagesize" >&6; }
+ if test $sv_cv_macro_pagesize = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_PAGESIZE 1
+_ACEOF
+
+ fi
+
+
+
+# How to allocate fresh memory using mmap.
+# (We need mmap, because mprotect() doesn't work on malloc()ed memory on
+# some systems.)
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking for mmap with MAP_ANON" >&5
+$as_echo_n "checking for mmap with MAP_ANON... " >&6; }
+if test "${sv_cv_func_mmap_anon+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+
+ case "$host_os" in
+ freebsd* | linux* | osf* | darwin*)
+ sv_cv_func_mmap_anon=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+
+int
+main ()
+{
+mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_func_mmap_anon="guessing yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_func_mmap_anon=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+int main ()
+{
+ void *p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0);
+ return (p == (void *)(-1));
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_func_mmap_anon=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_func_mmap_anon=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_func_mmap_anon" >&5
+$as_echo "$sv_cv_func_mmap_anon" >&6; }
+ if test "$sv_cv_func_mmap_anon" != no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_MMAP_ANON 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking for mmap with MAP_ANONYMOUS" >&5
+$as_echo_n "checking for mmap with MAP_ANONYMOUS... " >&6; }
+if test "${sv_cv_func_mmap_anonymous+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+
+ case "$host_os" in
+ hpux* | linux* | osf*)
+ sv_cv_func_mmap_anonymous=yes ;;
+ darwin*)
+ sv_cv_func_mmap_anonymous=no ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+
+int
+main ()
+{
+mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_func_mmap_anonymous="guessing yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_func_mmap_anonymous=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+int main ()
+{
+ void *p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ return (p == (void *)(-1));
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_func_mmap_anonymous=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_func_mmap_anonymous=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_func_mmap_anonymous" >&5
+$as_echo "$sv_cv_func_mmap_anonymous" >&6; }
+ if test "$sv_cv_func_mmap_anonymous" != no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_MMAP_ANONYMOUS 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking for mmap of /dev/zero" >&5
+$as_echo_n "checking for mmap of /dev/zero... " >&6; }
+if test "${sv_cv_func_mmap_devzero+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+
+ case "$host_os" in
+ freebsd* | irix* | linux* | osf* | solaris* | sunos4*)
+ sv_cv_func_mmap_devzero=yes ;;
+ darwin*)
+ sv_cv_func_mmap_devzero=no ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+
+int
+main ()
+{
+mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_FILE | MAP_PRIVATE, 7, 0);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_func_mmap_devzero="guessing yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_func_mmap_devzero=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#include <fcntl.h>
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+int main ()
+{
+ int fd;
+ void *p;
+ fd = open ("/dev/zero", O_RDONLY, 0666);
+ if (fd < 0) return 1;
+ p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_FILE | MAP_PRIVATE, fd, 0);
+ return (p == (void *)(-1));
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_func_mmap_devzero=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_func_mmap_devzero=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_func_mmap_devzero" >&5
+$as_echo "$sv_cv_func_mmap_devzero" >&6; }
+ if test "$sv_cv_func_mmap_devzero" != no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_MMAP_DEVZERO 1
+_ACEOF
+
+ fi
+
+
+# How to write a SIGSEGV handler with access to the fault address.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 5 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[6-9]* | darwin[1-9][0-9]*) ;;
+ *)
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to POSIX works" >&5
+$as_echo_n "checking whether a fault handler according to POSIX works... " >&6; }
+if test "${sv_cv_fault_posix+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-solaris2.[7-9] | i?86-*-linux2.[4-9]* | i?86-*-freebsd[4-9]* | i?86-*-mirbsd1[0-9] | alpha*-dec-osf[4-9]* | *-*-hpux11* | mips-sgi-irix6*) sv_cv_fault_posix=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, siginfo_t *sip, void *ucp)
+{
+ void *fault_address = (void *) (sip->si_addr);
+}
+
+int
+main ()
+{
+struct sigaction action;
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_posix="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_posix=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, siginfo_t *sip, void *ucp)
+{
+ void *fault_address = (void *) (sip->si_addr);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_posix=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_posix=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_posix" >&5
+$as_echo "$sv_cv_fault_posix" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to Linux/i386 works" >&5
+$as_echo_n "checking whether a fault handler according to Linux/i386 works... " >&6; }
+if test "${sv_cv_fault_linux_i386+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ i?86-*-linux2.[2-9]*) sv_cv_fault_linux_i386=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include <asm/sigcontext.h>
+void sigsegv_handler (int sig, struct sigcontext sc)
+{
+ void *fault_address = (void *) (sc.cr2);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_linux_i386="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_linux_i386=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include <asm/sigcontext.h>
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, struct sigcontext sc)
+{
+ void *fault_address = (void *) (sc.cr2);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_linux_i386=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_linux_i386=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_linux_i386" >&5
+$as_echo "$sv_cv_fault_linux_i386" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to old Linux/i386 works" >&5
+$as_echo_n "checking whether a fault handler according to old Linux/i386 works... " >&6; }
+if test "${sv_cv_fault_linux_i386_old+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ i?86-*-linux2.[2-9]*) sv_cv_fault_linux_i386_old=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, unsigned int more)
+{
+ void *fault_address = (void *) (((unsigned long *) &more) [21]);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_linux_i386_old="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_linux_i386_old=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, unsigned int more)
+{
+ void *fault_address = (void *) (((unsigned long *) &more) [21]);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_linux_i386_old=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_linux_i386_old=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_linux_i386_old" >&5
+$as_echo "$sv_cv_fault_linux_i386_old" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to Linux/m68k works" >&5
+$as_echo_n "checking whether a fault handler according to Linux/m68k works... " >&6; }
+if test "${sv_cv_fault_linux_m68k+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include <asm/sigcontext.h>
+#include "$srcdir/src/fault-linux-m68k.c"
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_linux_m68k="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_linux_m68k=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include <asm/sigcontext.h>
+#include "$srcdir/src/fault-linux-m68k.c"
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_linux_m68k=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_linux_m68k=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_linux_m68k" >&5
+$as_echo "$sv_cv_fault_linux_m68k" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to Linux/PowerPC works" >&5
+$as_echo_n "checking whether a fault handler according to Linux/PowerPC works... " >&6; }
+if test "${sv_cv_fault_linux_powerpc+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include <asm/sigcontext.h>
+void sigsegv_handler (int sig, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->regs->dar);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_linux_powerpc="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_linux_powerpc=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include <asm/sigcontext.h>
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->regs->dar);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_linux_powerpc=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_linux_powerpc=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_linux_powerpc" >&5
+$as_echo "$sv_cv_fault_linux_powerpc" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to Linux/HPPA works" >&5
+$as_echo_n "checking whether a fault handler according to Linux/HPPA works... " >&6; }
+if test "${sv_cv_fault_linux_hppa+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, siginfo_t *sip, void *ucp)
+{
+ void *fault_address = (void *) (sip->si_ptr);
+}
+
+int
+main ()
+{
+struct sigaction action;
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_linux_hppa="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_linux_hppa=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, siginfo_t *sip, void *ucp)
+{
+ void *fault_address = (void *) (sip->si_ptr);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_linux_hppa=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_linux_hppa=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_linux_hppa" >&5
+$as_echo "$sv_cv_fault_linux_hppa" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to BSD works" >&5
+$as_echo_n "checking whether a fault handler according to BSD works... " >&6; }
+if test "${sv_cv_fault_bsd+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ i?86-*-freebsd[4-9]*) sv_cv_fault_bsd=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp, void *addr)
+{
+ void *fault_address = (void *) (addr);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_bsd="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_bsd=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp, void *addr)
+{
+ void *fault_address = (void *) (addr);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_bsd=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_bsd=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_bsd" >&5
+$as_echo "$sv_cv_fault_bsd" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to IRIX works" >&5
+$as_echo_n "checking whether a fault handler according to IRIX works... " >&6; }
+if test "${sv_cv_fault_irix+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ mips-sgi-irix6*) sv_cv_fault_irix=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) ((unsigned long) scp->sc_badvaddr);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_irix="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_irix=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) ((unsigned long) scp->sc_badvaddr);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_irix=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_irix=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_irix" >&5
+$as_echo "$sv_cv_fault_irix" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to HP-UX HPPA works" >&5
+$as_echo_n "checking whether a fault handler according to HP-UX HPPA works... " >&6; }
+if test "${sv_cv_fault_hpux_hppa+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ hppa*-*-hpux11*) sv_cv_fault_hpux_hppa=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+#define USE_64BIT_REGS(mc) \
+ (((mc).ss_flags & SS_WIDEREGS) && ((mc).ss_flags & SS_NARROWISINVALID))
+#define GET_CR21(mc) \
+ (USE_64BIT_REGS(mc) ? (mc).ss_wide.ss_64.ss_cr21 : (mc).ss_narrow.ss_cr21)
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (GET_CR21 (scp->sc_sl.sl_ss));
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_hpux_hppa="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_hpux_hppa=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#define USE_64BIT_REGS(mc) \
+ (((mc).ss_flags & SS_WIDEREGS) && ((mc).ss_flags & SS_NARROWISINVALID))
+#define GET_CR21(mc) \
+ (USE_64BIT_REGS(mc) ? (mc).ss_wide.ss_64.ss_cr21 : (mc).ss_narrow.ss_cr21)
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (GET_CR21 (scp->sc_sl.sl_ss));
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_hpux_hppa=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_hpux_hppa=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_hpux_hppa" >&5
+$as_echo "$sv_cv_fault_hpux_hppa" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to OSF/1 Alpha works" >&5
+$as_echo_n "checking whether a fault handler according to OSF/1 Alpha works... " >&6; }
+if test "${sv_cv_fault_osf_alpha+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ alpha*-*-osf[4-9]* | alpha*-*-linux2.[4-9]*) sv_cv_fault_osf_alpha=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->sc_traparg_a0);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_osf_alpha="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_osf_alpha=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->sc_traparg_a0);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_osf_alpha=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_osf_alpha=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_osf_alpha" >&5
+$as_echo "$sv_cv_fault_osf_alpha" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to NetBSD Alpha works" >&5
+$as_echo_n "checking whether a fault handler according to NetBSD Alpha works... " >&6; }
+if test "${sv_cv_fault_netbsd_alpha+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ alpha*-*-osf[4-9]* | alpha-*-*bsd*) sv_cv_fault_netbsd_alpha=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include "$srcdir/src/fault-netbsd-alpha.c"
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_netbsd_alpha="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_netbsd_alpha=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include "$srcdir/src/fault-netbsd-alpha.c"
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_netbsd_alpha=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_netbsd_alpha=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_netbsd_alpha" >&5
+$as_echo "$sv_cv_fault_netbsd_alpha" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to AIX works" >&5
+$as_echo_n "checking whether a fault handler according to AIX works... " >&6; }
+if test "${sv_cv_fault_aix+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-aix[34]*) sv_cv_fault_aix=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->sc_jmpbuf.jmp_context.o_vaddr);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_aix="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_aix=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (scp->sc_jmpbuf.jmp_context.o_vaddr);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_aix=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_aix=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_aix" >&5
+$as_echo "$sv_cv_fault_aix" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to MacOSX/Darwin7 PowerPC works" >&5
+$as_echo_n "checking whether a fault handler according to MacOSX/Darwin7 PowerPC works... " >&6; }
+if test "${sv_cv_fault_macosdarwin7_ppc+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ powerpc-*-darwin7*) sv_cv_fault_macosdarwin7_ppc=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include "$srcdir/src/fault-macosdarwin7-powerpc.c"
+void sigsegv_handler (int sig, siginfo_t *sip, ucontext_t *ucp)
+{
+ void *fault_address = (void *) (get_fault_addr (sip, ucp));
+}
+
+int
+main ()
+{
+struct sigaction action;
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_macosdarwin7_ppc="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_macosdarwin7_ppc=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include "$srcdir/src/fault-macosdarwin7-powerpc.c"
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, siginfo_t *sip, ucontext_t *ucp)
+{
+ void *fault_address = (void *) (get_fault_addr (sip, ucp));
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_macosdarwin7_ppc=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_macosdarwin7_ppc=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_macosdarwin7_ppc" >&5
+$as_echo "$sv_cv_fault_macosdarwin7_ppc" >&6; }
+
+
+if test "$sv_cv_fault_macosdarwin7_ppc" != yes; then
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to MacOSX/Darwin5 PowerPC works" >&5
+$as_echo_n "checking whether a fault handler according to MacOSX/Darwin5 PowerPC works... " >&6; }
+if test "${sv_cv_fault_macosdarwin5_ppc+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ powerpc-*-darwin5*) sv_cv_fault_macosdarwin5_ppc=yes ;;
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#include "$srcdir/src/fault-macosdarwin5-powerpc.c"
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_macosdarwin5_ppc="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_macosdarwin5_ppc=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include "$srcdir/src/fault-macosdarwin5-powerpc.c"
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (get_fault_addr (scp));
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_macosdarwin5_ppc=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_macosdarwin5_ppc=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_macosdarwin5_ppc" >&5
+$as_echo "$sv_cv_fault_macosdarwin5_ppc" >&6; }
+
+fi
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a fault handler according to Hurd works" >&5
+$as_echo_n "checking whether a fault handler according to Hurd works... " >&6; }
+if test "${sv_cv_fault_hurd+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (code);
+}
+
+int
+main ()
+{
+struct sigaction action;
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_fault_hurd="guessing no"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_fault_hurd=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler (int sig, int code, struct sigcontext *scp)
+{
+ void *fault_address = (void *) (code);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_fault_hurd=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_fault_hurd=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_hurd" >&5
+$as_echo "$sv_cv_fault_hurd" >&6; }
+
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+CFG_HANDLER=
+CFG_FAULT=
+CFG_MACHFAULT=
+FAULT_CONTEXT=void
+FAULT_CONTEXT_INCLUDE=
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_aix" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-aix3-powerpc.h ;;
+ *) CFG_FAULT=fault-aix3.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_irix" = yes; then
+ case "$host_cpu" in
+ mips*) CFG_FAULT=fault-irix-mips.h ;;
+ *) CFG_FAULT=fault-irix.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_hpux_hppa" = yes; then
+ case "$host_cpu" in
+ hppa* | parisc*) CFG_FAULT=fault-hpux-hppa.h ;;
+ *) CFG_FAULT=fault-hpux.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_osf_alpha" = yes; then
+ case "$host_cpu" in
+ alpha*) CFG_FAULT=fault-osf-alpha.h ;;
+ *) CFG_FAULT=fault-osf.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_netbsd_alpha" = yes; then
+ case "$host_cpu" in
+ alpha*) CFG_FAULT=fault-netbsd-alpha.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_i386" = yes; then
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-linux-i386.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_i386_old" = yes; then
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-linux-i386-old.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_powerpc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-linux-powerpc.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_hppa" = yes; then
+ case "$host_cpu" in
+ hppa* | parisc*) CFG_FAULT=fault-linux-hppa.h ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_hurd" = yes; then
+ case "$host_os" in
+ netbsd*) # A false positive.
+ ;;
+ *)
+ CFG_FAULT=fault-hurd.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_bsd" = yes; then
+ case "$host_os" in
+ freebsd* | dragonfly* | kfreebsd*)
+ case "$host_cpu" in
+ i?86 | x86_64)
+ CFG_FAULT=fault-freebsd-i386.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ *)
+ CFG_FAULT=fault-bsd.h
+ FAULT_CONTEXT='void'
+ ;;
+ esac
+ ;;
+ *)
+ CFG_FAULT=fault-bsd.h
+ FAULT_CONTEXT='void'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_posix" = yes; then
+ case "$host_os" in
+ openbsd*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-openbsd-i386.h ;;
+ *) CFG_FAULT=fault-openbsd.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ mirbsd*)
+ case "$host_cpu" in
+ i?86 | x86_64)
+ CFG_FAULT=fault-openbsd-i386.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ linux*)
+ case "$host_cpu" in
+ ia64)
+ CFG_FAULT=fault-linux-ia64.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ esac
+ if test -z "$CFG_FAULT"; then
+
+for ac_header in ucontext.h
+do
+as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
+$as_echo_n "checking $ac_header usability... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
+$as_echo_n "checking $ac_header presence... " >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
+$as_echo_n "checking for $ac_header... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+
+fi
+as_val=`eval 'as_val=${'$as_ac_Header'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+ if test $ac_cv_header_ucontext_h = yes; then
+ case "$host_os" in
+ solaris*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-solaris-i386.h ;;
+ sparc*) CFG_FAULT=fault-solaris-sparc.h ;;
+ *) CFG_FAULT=fault-solaris.h ;;
+ esac
+ ;;
+ aix*)
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-aix5-powerpc.h ;;
+ *) CFG_FAULT=fault-aix5.h ;;
+ esac
+ ;;
+ netbsd*)
+ CFG_FAULT=fault-netbsd.h
+ ;;
+ *)
+ CFG_FAULT=fault-posix-ucontext.h
+ ;;
+ esac
+ FAULT_CONTEXT='ucontext_t'
+ FAULT_CONTEXT_INCLUDE='#include <ucontext.h>'
+ else
+ CFG_FAULT=fault-posix.h
+ FAULT_CONTEXT='void'
+ fi
+ fi
+fi
+if test -z "$CFG_FAULT"; then
+ case "$host_os" in
+ macos* | darwin[6-9]* | darwin[1-9][0-9]*)
+ case "$host_cpu" in
+ powerpc* | rs6000 | i?86 | x86_64)
+ CFG_MACHFAULT=machfault-macos.h
+ FAULT_CONTEXT_INCLUDE='#include <signal.h>
+#include <mach/thread_status.h>
+#if defined __ppc64__
+#define sigsegv_thread_state_t ppc_thread_state64_t
+#elif defined __ppc__
+#define sigsegv_thread_state_t ppc_thread_state_t
+#endif
+#if defined __x86_64__
+#define sigsegv_thread_state_t x86_thread_state64_t
+#elif defined __i386__
+#if defined x86_THREAD_STATE32
+#define sigsegv_thread_state_t x86_thread_state32_t
+#else
+#define sigsegv_thread_state_t i386_thread_state_t
+#endif
+#endif'
+ FAULT_CONTEXT='sigsegv_thread_state_t'
+ ;;
+ esac
+ if test -n "$CFG_MACHFAULT"; then
+ CFG_HANDLER=handler-macos.c
+ CFG_FAULT=fault-macos.h # nonexistent, just a dummy
+ fi
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_m68k" = yes; then
+ case "$host_cpu" in
+ m68*)
+ CFG_FAULT=fault-linux-m68k.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_macosdarwin7_ppc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000)
+ CFG_FAULT=fault-macosdarwin7-powerpc.h
+ FAULT_CONTEXT='ucontext_t'
+ FAULT_CONTEXT_INCLUDE='#include <signal.h>
+#include <ucontext.h>'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_macosdarwin5_ppc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000)
+ CFG_FAULT=fault-macosdarwin5-powerpc.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT"; then
+ case "$host_os" in
+ mingw* | cygwin*)
+ FAULT_CONTEXT='CONTEXT'
+ FAULT_CONTEXT_INCLUDE='#include <windows.h>'
+ CFG_FAULT=fault-win32.h # nonexistent, just a dummy
+ ;;
+ esac
+fi
+if test -n "$CFG_FAULT"; then
+ sv_cv_have_sigsegv_recovery=yes
+else
+ sv_cv_have_sigsegv_recovery=no
+ case "$host_os" in
+ linux*)
+ case "$host_cpu" in
+ alpha*)
+ CFG_FAULT=fault-linux-alpha.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ arm* | strongarm* | xscale*)
+ CFG_FAULT=fault-linux-arm.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ cris)
+ CFG_FAULT=fault-linux-cris.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ mips*)
+ CFG_FAULT=fault-linux-mips.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ s390*)
+ CFG_FAULT=fault-linux-s390.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ sh*)
+ CFG_FAULT=fault-linux-sh.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ sparc*)
+ CFG_FAULT=fault-linux-sparc.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ x86_64)
+ CFG_FAULT=fault-linux-x86_64.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ beos*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-beos-i386.h ;;
+ *) CFG_FAULT=fault-beos.h ;;
+ esac
+ FAULT_CONTEXT='struct vregs'
+ ;;
+ macos* | darwin*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-macos-i386.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+{ $as_echo "$as_me:$LINENO: checking for the fault handler specifics" >&5
+$as_echo_n "checking for the fault handler specifics... " >&6; }
+if test -n "$CFG_FAULT"; then
+ sv_cv_fault_include=$CFG_FAULT
+else
+ if test -n "$CFG_MACHFAULT"; then
+ sv_cv_fault_include=$CFG_MACHFAULT
+ else
+ sv_cv_fault_include=none
+ fi
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_fault_include" >&5
+$as_echo "$sv_cv_fault_include" >&6; }
+if test -z "$CFG_FAULT"; then
+ CFG_FAULT=fault-none.h
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_FAULT "$CFG_FAULT"
+_ACEOF
+
+if test -z "$CFG_MACHFAULT"; then
+ CFG_MACHFAULT=fault-none.h
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_MACHFAULT "$CFG_MACHFAULT"
+_ACEOF
+
+
+
+
+
+{ $as_echo "$as_me:$LINENO: checking if the system supports catching SIGSEGV" >&5
+$as_echo_n "checking if the system supports catching SIGSEGV... " >&6; }
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_have_sigsegv_recovery" >&5
+$as_echo "$sv_cv_have_sigsegv_recovery" >&6; }
+if test $sv_cv_have_sigsegv_recovery != no; then
+ HAVE_SIGSEGV_RECOVERY=1
+else
+ HAVE_SIGSEGV_RECOVERY=0
+fi
+
+
+
+{ $as_echo "$as_me:$LINENO: checking for stack direction" >&5
+$as_echo_n "checking for stack direction... " >&6; }
+if test "${sv_cv_stack_direction_msg+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ case "$host_cpu" in
+ a29k | \
+ alpha* | \
+ arc | \
+ arm* | strongarm* | xscale* | \
+ avr | \
+ c1 | c2 | c32 | c34 | c38 | \
+ clipper | \
+ cris | \
+ d30v | \
+ elxsi | \
+ fr30 | \
+ h8300 | \
+ i?86 | x86_64 | \
+ i860 | \
+ ia64 | \
+ m32r | \
+ m68* | \
+ m88k | \
+ mcore | \
+ mips* | \
+ mmix | \
+ mn10200 | \
+ mn10300 | \
+ ns32k | \
+ pdp11 | \
+ pj* | \
+ powerpc* | rs6000 | \
+ romp | \
+ s390* | \
+ sh* | \
+ sparc* | \
+ v850 | \
+ vax | \
+ xtensa)
+ sv_cv_stack_direction=-1 ;;
+ c4x | \
+ dsp16xx | \
+ i960 | \
+ hppa* | parisc* | \
+ stormy16 | \
+ we32k)
+ sv_cv_stack_direction=1 ;;
+ *)
+ if test $cross_compiling = no; then
+ cat > conftest.c <<EOF
+#include <stdio.h>
+int
+get_stack_direction ()
+{
+ auto char dummy;
+ static char *dummyaddr = (char *)0;
+ if (dummyaddr != (char *)0)
+ return &dummy > dummyaddr ? 1 : &dummy < dummyaddr ? -1 : 0;
+ else
+ {
+ dummyaddr = &dummy;
+ {
+ int result = get_stack_direction ();
+ /* The next assignment avoids tail recursion elimination
+ (IRIX 6.4 CC). */
+ dummyaddr = (char *)0;
+ return result;
+ }
+ }
+}
+int
+main ()
+{
+ printf ("%d\n", get_stack_direction ());
+ return 0;
+}
+EOF
+ { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+ sv_cv_stack_direction=`./conftest`
+ else
+ sv_cv_stack_direction=0
+ fi
+ ;;
+ esac
+ case $sv_cv_stack_direction in
+ 1) sv_cv_stack_direction_msg="grows up";;
+ -1) sv_cv_stack_direction_msg="grows down";;
+ *) sv_cv_stack_direction_msg="unknown";;
+ esac
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_stack_direction_msg" >&5
+$as_echo "$sv_cv_stack_direction_msg" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define STACK_DIRECTION $sv_cv_stack_direction
+_ACEOF
+
+
+{ $as_echo "$as_me:$LINENO: checking for PIOCMAP in sys/procfs.h" >&5
+$as_echo_n "checking for PIOCMAP in sys/procfs.h... " >&6; }
+if test "${sv_cv_procfsvma+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <sys/procfs.h>
+int
+main ()
+{
+int x = PIOCNMAP + PIOCMAP; prmap_t y;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_procfsvma=yes
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_procfsvma=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_procfsvma" >&5
+$as_echo "$sv_cv_procfsvma" >&6; }
+
+for ac_func in mincore
+do
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$ac_func || defined __stub___$ac_func
+choke me
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ eval "$as_ac_var=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+CFG_STACKVMA=
+if test $sv_cv_procfsvma = yes; then
+ CFG_STACKVMA=stackvma-procfs.c
+else
+ case "$host_os" in
+ linux*) CFG_STACKVMA=stackvma-linux.c ;;
+ freebsd* | dragonfly*) CFG_STACKVMA=stackvma-freebsd.c ;;
+ beos*) CFG_STACKVMA=stackvma-beos.c ;;
+ macos* | darwin*) CFG_STACKVMA=stackvma-mach.c ;;
+ esac
+fi
+if test -z "$CFG_STACKVMA" && test $ac_cv_func_mincore = yes; then
+ CFG_STACKVMA=stackvma-mincore.c
+fi
+if test -n "$CFG_STACKVMA"; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_STACKVMA 1
+_ACEOF
+
+else
+ CFG_STACKVMA=stackvma-none.c
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_STACKVMA "$CFG_STACKVMA"
+_ACEOF
+
+
+
+
+
+for ac_func in getrlimit setrlimit
+do
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$ac_func || defined __stub___$ac_func
+choke me
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ eval "$as_ac_var=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+
+
+
+
+
+for ac_func in sigaltstack
+do
+as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+$as_echo_n "checking for $ac_func... " >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$ac_func || defined __stub___$ac_func
+choke me
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ eval "$as_ac_var=yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_var'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+ if test "$ac_cv_func_sigaltstack" = yes; then
+ { $as_echo "$as_me:$LINENO: checking for stack_t" >&5
+$as_echo_n "checking for stack_t... " >&6; }
+if test "${ac_cv_type_stack_t+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_type_stack_t=no
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+
+int
+main ()
+{
+if (sizeof (stack_t))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+
+int
+main ()
+{
+if (sizeof ((stack_t)))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_stack_t=yes
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_stack_t" >&5
+$as_echo "$ac_cv_type_stack_t" >&6; }
+if test "x$ac_cv_type_stack_t" = x""yes; then
+ :
+else
+
+cat >>confdefs.h <<\_ACEOF
+#define stack_t struct sigaltstack
+_ACEOF
+
+
+fi
+
+ fi
+
+ { $as_echo "$as_me:$LINENO: checking for working sigaltstack" >&5
+$as_echo_n "checking for working sigaltstack... " >&6; }
+if test "${sv_cv_sigaltstack+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$ac_cv_func_sigaltstack" = yes; then
+ case "$host_os" in
+ macos* | darwin[6-9]* | darwin[1-9][0-9]*)
+ # On MacOS X 10.2 or newer, just assume that if it compiles, it will
+ # work. If we were to perform the real test, 1 Crash Report dialog
+ # window would pop up.
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <signal.h>
+int
+main ()
+{
+int x = SA_ONSTACK; stack_t ss; sigaltstack ((stack_t*)0, &ss);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_sigaltstack="guessing yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_sigaltstack=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ *)
+ if test "$cross_compiling" = yes; then
+
+ case "$host_os" in
+ *)
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <signal.h>
+int
+main ()
+{
+int x = SA_ONSTACK; stack_t ss; sigaltstack ((stack_t*)0, &ss);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+ sv_cv_sigaltstack="guessing yes"
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ sv_cv_sigaltstack=no
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+void stackoverflow_handler (int sig)
+{
+ /* If we get here, the stack overflow was caught. */
+ exit (0);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke a stack overflow. */
+ recurse (0);
+ exit (2);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_sigaltstack=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_sigaltstack=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+ ;;
+ esac
+ else
+ sv_cv_sigaltstack=no
+ fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_sigaltstack" >&5
+$as_echo "$sv_cv_sigaltstack" >&6; }
+ if test "$sv_cv_sigaltstack" != no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_WORKING_SIGALTSTACK 1
+_ACEOF
+
+
+ { $as_echo "$as_me:$LINENO: checking for correct stack_t interpretation" >&5
+$as_echo_n "checking for correct stack_t interpretation... " >&6; }
+if test "${sv_cv_sigaltstack_low_base+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+
+ case "$host_os" in
+ irix5*) sv_cv_sigaltstack_low_base="no" ;;
+ *) sv_cv_sigaltstack_low_base="guessing yes" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+volatile char *stack_lower_bound;
+volatile char *stack_upper_bound;
+static void check_stack_location (volatile char *addr)
+{
+ if (addr >= stack_lower_bound && addr <= stack_upper_bound)
+ exit (0);
+ else
+ exit (1);
+}
+static void stackoverflow_handler (int sig)
+{
+ char dummy;
+ check_stack_location (&dummy);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ /* Install the alternate stack. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ stack_lower_bound = (char *) altstack.ss_sp;
+ stack_upper_bound = (char *) altstack.ss_sp + altstack.ss_size - 1;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ if (sigaction (SIGSEGV, &action, (struct sigaction *) NULL) < 0)
+ exit(3);
+ /* Provoke a SIGSEGV. */
+ raise (SIGSEGV);
+ exit (3);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_sigaltstack_low_base=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_sigaltstack_low_base=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_sigaltstack_low_base" >&5
+$as_echo "$sv_cv_sigaltstack_low_base" >&6; }
+ if test "$sv_cv_sigaltstack_low_base" = no; then
+
+cat >>confdefs.h <<\_ACEOF
+#define SIGALTSTACK_SS_REVERSED 1
+_ACEOF
+
+ fi
+ fi
+
+
+{ $as_echo "$as_me:$LINENO: checking if the system supports catching stack overflow" >&5
+$as_echo_n "checking if the system supports catching stack overflow... " >&6; }
+if test "${sv_cv_have_stack_overflow_recovery+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$CFG_MACHFAULT" != fault-none.h; then
+ sv_cv_have_stack_overflow_recovery=yes
+ else
+ if test "$sv_cv_sigaltstack" != no; then
+ sv_cv_have_stack_overflow_recovery=maybe
+ else
+ case "$host_os" in
+ beos*) sv_cv_have_stack_overflow_recovery=maybe ;;
+ mingw* | cygwin*) sv_cv_have_stack_overflow_recovery=yes ;;
+ *) sv_cv_have_stack_overflow_recovery=no ;;
+ esac
+ fi
+ fi
+ if test $sv_cv_have_stack_overflow_recovery = maybe; then
+ if test -n "$CFG_FAULT"; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include "$srcdir/src/$CFG_FAULT"
+#ifdef SIGSEGV_FAULT_HANDLER_ARGLIST
+#ifdef SIGSEGV_FAULT_ADDRESS
+xyzzy
+#endif
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "xyzzy" >/dev/null 2>&1; then
+ condA=true
+else
+ condA=false
+fi
+rm -f conftest*
+
+ else
+ condA=false
+ fi
+ if test -n "$CFG_FAULT"; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include "$srcdir/src/$CFG_FAULT"
+#ifdef SIGSEGV_FAULT_HANDLER_ARGLIST
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+xyzzy
+#endif
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "xyzzy" >/dev/null 2>&1; then
+ condB=true
+else
+ condB=false
+fi
+rm -f conftest*
+
+ else
+ condB=false
+ fi
+ if test "$CFG_STACKVMA" != "stackvma-none.c"; then
+ condC=true
+ else
+ condC=false
+ fi
+ if { $condA && $condB; } || { $condA && $condC; } || { $condB && $condC; }; then
+ sv_cv_have_stack_overflow_recovery=yes
+ else
+ sv_cv_have_stack_overflow_recovery=no
+ fi
+ fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_have_stack_overflow_recovery" >&5
+$as_echo "$sv_cv_have_stack_overflow_recovery" >&6; }
+if test $sv_cv_have_stack_overflow_recovery != no; then
+ HAVE_STACK_OVERFLOW_RECOVERY=1
+else
+ HAVE_STACK_OVERFLOW_RECOVERY=0
+fi
+
+
+# How to longjmp out of a signal handler, in such a way that the
+# alternate signal stack remains functional.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 2 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[6-9]* | darwin[1-9][0-9]*) ;;
+ *)
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through longjmp" >&5
+$as_echo_n "checking whether a signal handler can be left through longjmp... " >&6; }
+if test "${sv_cv_leave_handler_longjmp+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-osf[4-9]* | *-*-hpux11* | *-*-linux2.[2-9]*) sv_cv_leave_handler_longjmp=yes ;;
+ *) sv_cv_leave_handler_longjmp="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+jmp_buf mainloop;
+sigset_t mainsigset;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ { }
+ longjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ sigset_t emptyset;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+ /* Provoke two stack overflows in a row. */
+ if (setjmp (mainloop) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_longjmp=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_longjmp=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_longjmp" >&5
+$as_echo "$sv_cv_leave_handler_longjmp" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through longjmp and sigaltstack" >&5
+$as_echo_n "checking whether a signal handler can be left through longjmp and sigaltstack... " >&6; }
+if test "${sv_cv_leave_handler_longjmp_sigaltstack+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-freebsd*) sv_cv_leave_handler_longjmp_sigaltstack=yes ;;
+ *) sv_cv_leave_handler_longjmp_sigaltstack="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+jmp_buf mainloop;
+sigset_t mainsigset;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ { stack_t ss;
+ if (sigaltstack (NULL, &ss) >= 0)
+ {
+ ss.ss_flags &= ~SS_ONSTACK;
+ sigaltstack (&ss, NULL);
+ }
+ }
+ longjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ sigset_t emptyset;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+ /* Provoke two stack overflows in a row. */
+ if (setjmp (mainloop) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_longjmp_sigaltstack=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_longjmp_sigaltstack=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_longjmp_sigaltstack" >&5
+$as_echo "$sv_cv_leave_handler_longjmp_sigaltstack" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through longjmp and setcontext" >&5
+$as_echo_n "checking whether a signal handler can be left through longjmp and setcontext... " >&6; }
+if test "${sv_cv_leave_handler_longjmp_setcontext+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-irix* | *-*-solaris*) sv_cv_leave_handler_longjmp_setcontext=yes ;;
+ *) sv_cv_leave_handler_longjmp_setcontext="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+#include <ucontext.h>
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+jmp_buf mainloop;
+sigset_t mainsigset;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ { static int fl;
+ static ucontext_t uc;
+ fl = 0;
+ if (getcontext (&uc) >= 0)
+ if (fl == 0)
+ if (uc.uc_stack.ss_flags & SS_ONSTACK)
+ {
+ uc.uc_stack.ss_flags &= ~SS_ONSTACK;
+ fl = 1;
+ setcontext (&uc);
+ }
+ }
+ longjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ sigset_t emptyset;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+ /* Provoke two stack overflows in a row. */
+ if (setjmp (mainloop) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_longjmp_setcontext=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_longjmp_setcontext=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_longjmp_setcontext" >&5
+$as_echo "$sv_cv_leave_handler_longjmp_setcontext" >&6; }
+
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+# How to siglongjmp out of a signal handler, in such a way that the
+# alternate signal stack remains functional.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 2 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[6-9]* | darwin[1-9][0-9]*) ;;
+ *)
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through siglongjmp" >&5
+$as_echo_n "checking whether a signal handler can be left through siglongjmp... " >&6; }
+if test "${sv_cv_leave_handler_siglongjmp+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-osf[4-9]* | *-*-hpux11* | *-*-linux2.[2-9]* | *-*-irix* | *-*-solaris*) sv_cv_leave_handler_siglongjmp=yes ;;
+ *) sv_cv_leave_handler_siglongjmp="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+sigjmp_buf mainloop;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ { }
+ siglongjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#ifdef __BEOS__
+ /* On BeOS, this would hang, burning CPU time. Better fail than hang. */
+ exit (1);
+#endif
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke two stack overflows in a row. */
+ if (sigsetjmp (mainloop, 1) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_siglongjmp=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_siglongjmp=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_siglongjmp" >&5
+$as_echo "$sv_cv_leave_handler_siglongjmp" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through siglongjmp and sigaltstack" >&5
+$as_echo_n "checking whether a signal handler can be left through siglongjmp and sigaltstack... " >&6; }
+if test "${sv_cv_leave_handler_siglongjmp_sigaltstack+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+ *-*-freebsd*) sv_cv_leave_handler_siglongjmp_sigaltstack=yes ;;
+ *) sv_cv_leave_handler_siglongjmp_sigaltstack="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+sigjmp_buf mainloop;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ { stack_t ss;
+ if (sigaltstack (NULL, &ss) >= 0)
+ {
+ ss.ss_flags &= ~SS_ONSTACK;
+ sigaltstack (&ss, NULL);
+ }
+ }
+ siglongjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#ifdef __BEOS__
+ /* On BeOS, this would hang, burning CPU time. Better fail than hang. */
+ exit (1);
+#endif
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke two stack overflows in a row. */
+ if (sigsetjmp (mainloop, 1) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_siglongjmp_sigaltstack=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_siglongjmp_sigaltstack=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_siglongjmp_sigaltstack" >&5
+$as_echo "$sv_cv_leave_handler_siglongjmp_sigaltstack" >&6; }
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether a signal handler can be left through siglongjmp and setcontext" >&5
+$as_echo_n "checking whether a signal handler can be left through siglongjmp and setcontext... " >&6; }
+if test "${sv_cv_leave_handler_siglongjmp_setcontext+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then
+ case "$host" in
+
+ *) sv_cv_leave_handler_siglongjmp_setcontext="guessing no" ;;
+ esac
+
+else
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+#include <ucontext.h>
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+sigjmp_buf mainloop;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ { static int fl;
+ static ucontext_t uc;
+ fl = 0;
+ if (getcontext(&uc) >= 0)
+ if (fl == 0)
+ if (uc.uc_stack.ss_flags & SS_ONSTACK)
+ {
+ uc.uc_stack.ss_flags &= ~SS_ONSTACK;
+ fl = 1;
+ setcontext(&uc);
+ }
+ }
+ siglongjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#ifdef __BEOS__
+ /* On BeOS, this would hang, burning CPU time. Better fail than hang. */
+ exit (1);
+#endif
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke two stack overflows in a row. */
+ if (sigsetjmp (mainloop, 1) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ sv_cv_leave_handler_siglongjmp_setcontext=yes
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+sv_cv_leave_handler_siglongjmp_setcontext=no
+fi
+rm -rf conftest.dSYM
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $sv_cv_leave_handler_siglongjmp_setcontext" >&5
+$as_echo "$sv_cv_leave_handler_siglongjmp_setcontext" >&6; }
+
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+CFG_LEAVE=
+if test "$sv_cv_leave_handler_longjmp" != no; then
+ CFG_LEAVE=leave-nop.c
+else
+ if test "$sv_cv_leave_handler_longjmp_sigaltstack" != no; then
+ CFG_LEAVE=leave-sigaltstack.c
+ else
+ if test "$sv_cv_leave_handler_longjmp_setcontext" != no; then
+ CFG_LEAVE=leave-setcontext.c
+ fi
+ fi
+fi
+case "$host_os" in
+ # On BeOS, the 6 tests fail because sigaltstack() doesn't exist.
+ # If one uses set_signal_stack() instead of sigaltstack(), the first
+ # test actually works. i.e. sv_cv_leave_handler_longjmp would be 'yes'.
+ beos*) CFG_LEAVE=leave-nop.c ;;
+esac
+if test -z "$CFG_LEAVE"; then
+ CFG_LEAVE=leave-none.c
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_LEAVE "$CFG_LEAVE"
+_ACEOF
+
+
+
+case "$host_os" in
+ mingw* | cygwin*) CFG_HANDLER=handler-win32.c ;;
+ *)
+ if test -z "$CFG_HANDLER"; then
+ if test $sv_cv_have_sigsegv_recovery = no \
+ && test $sv_cv_have_stack_overflow_recovery = no; then
+ CFG_HANDLER=handler-none.c
+ else
+ CFG_HANDLER=handler-unix.c
+ fi
+ fi
+ ;;
+esac
+
+cat >>confdefs.h <<_ACEOF
+#define CFG_HANDLER "$CFG_HANDLER"
+_ACEOF
+
+
+
+{ echo; echo "${term_bold}Build Parameters:${term_norm}"; } >& 6
+
+
+ { $as_echo "$as_me:$LINENO: checking whether to activate relocatable installation" >&5
+$as_echo_n "checking whether to activate relocatable installation... " >&6; }
+ # Check whether --enable-relocatable was given.
+if test "${enable_relocatable+set}" = set; then
+ enableval=$enable_relocatable; if test "$enableval" != no; then
+ RELOCATABLE=yes
+ else
+ RELOCATABLE=no
+ fi
+
+else
+ RELOCATABLE=no
+fi
+
+
+ { $as_echo "$as_me:$LINENO: result: $RELOCATABLE" >&5
+$as_echo "$RELOCATABLE" >&6; }
+
+
+{ echo; echo "${term_bold}Output Substitution:${term_norm}"; } >& 6
+
+ac_config_files="$ac_config_files Makefile src/Makefile src/sigsegv.h tests/Makefile"
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems. If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, we kill variables containing newlines.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(
+ for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) $as_unset $ac_var ;;
+ esac ;;
+ esac
+ done
+
+ (set) 2>&1 |
+ case $as_nl`(ac_space=' '; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ # `set' does not quote correctly, so add quotes (double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \).
+ sed -n \
+ "s/'/'\\\\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+ ;; #(
+ *)
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+ ;;
+ esac |
+ sort
+) |
+ sed '
+ /^ac_cv_env_/b end
+ t clear
+ :clear
+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ t end
+ s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+ :end' >>confcache
+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
+ if test -w "$cache_file"; then
+ test "x$cache_file" != "x/dev/null" &&
+ { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
+$as_echo "$as_me: updating cache $cache_file" >&6;}
+ cat confcache >$cache_file
+ else
+ { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+ fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+ # 1. Remove the extension, and $U if already installed.
+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
+ ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+ # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
+ # will be set to the directory where LIBOBJS objects are built.
+ ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+ ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
+done
+LIBOBJS=$ac_libobjs
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+ if test -n "$EXEEXT"; then
+ am__EXEEXT_TRUE=
+ am__EXEEXT_FALSE='#'
+else
+ am__EXEEXT_TRUE='#'
+ am__EXEEXT_FALSE=
+fi
+
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+ { { $as_echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+$as_echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+ { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+$as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_write_fail=0
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+## --------------------- ##
+## M4sh Initialization. ##
+## --------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+
+
+# PATH needs CR
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
+fi
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ { (exit 1); exit 1; }
+fi
+
+# Work around bugs in pre-3.0 UWIN ksh.
+for as_var in ENV MAIL MAILPATH
+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+
+# CDPATH.
+$as_unset CDPATH
+
+
+
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
+
+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+ # uniformly replaced by the line number. The first 'sed' inserts a
+ # line-number line after each line using $LINENO; the second 'sed'
+ # does the real work. The second script uses 'N' to pair each
+ # line-number line with the line containing $LINENO, and appends
+ # trailing '-' during substitution so that $LINENO is not a special
+ # case at line end.
+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+ # scripts with optimization help from Paolo Bonzini. Blame Lee
+ # E. McMahon (1931-1989) for sed's syntax. :-)
+ sed -n '
+ p
+ /[$]LINENO/=
+ ' <$as_myself |
+ sed '
+ s/[$]LINENO.*/&-/
+ t lineno
+ b
+ :lineno
+ N
+ :loop
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+ t loop
+ s/-\n.*//
+ ' >$as_me.lineno &&
+ chmod +x "$as_me.lineno" ||
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { (exit 1); exit 1; }; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensitive to this).
+ . "./$as_me.lineno"
+ # Exit status is that of the last command.
+ exit
+}
+
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in
+-n*)
+ case `echo 'x\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ *) ECHO_C='\c';;
+ esac;;
+*)
+ ECHO_N='-n';;
+esac
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
+else
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
+ fi
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p=:
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+exec 6>&1
+
+# Save the log message, to keep $[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.
+ac_log="
+This file was extended by $as_me, which was
+generated by GNU Autoconf 2.63. Invocation command line was
+
+ CONFIG_FILES = $CONFIG_FILES
+ CONFIG_HEADERS = $CONFIG_HEADERS
+ CONFIG_LINKS = $CONFIG_LINKS
+ CONFIG_COMMANDS = $CONFIG_COMMANDS
+ $ $0 $@
+
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
+"
+
+_ACEOF
+
+case $ac_config_files in *"
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
+esac
+
+case $ac_config_headers in *"
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
+esac
+
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+# Files that config.status was made for.
+config_files="$ac_config_files"
+config_headers="$ac_config_headers"
+config_commands="$ac_config_commands"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTION]... [FILE]...
+
+ -h, --help print this help, then exit
+ -V, --version print version number and configuration settings, then exit
+ -q, --quiet, --silent
+ do not print progress messages
+ -d, --debug don't remove temporary files
+ --recheck update $as_me by reconfiguring in the same conditions
+ --file=FILE[:TEMPLATE]
+ instantiate the configuration file FILE
+ --header=FILE[:TEMPLATE]
+ instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration commands:
+$config_commands
+
+Report bugs to <bug-autoconf@gnu.org>."
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_version="\\
+config.status
+configured by $0, generated by GNU Autoconf 2.63,
+ with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2008 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+
+ac_pwd='$ac_pwd'
+srcdir='$srcdir'
+INSTALL='$INSTALL'
+MKDIR_P='$MKDIR_P'
+AWK='$AWK'
+test -n "\$AWK" || AWK=awk
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# The default lists apply if the user does not specify any file.
+ac_need_defaults=:
+while test $# != 0
+do
+ case $1 in
+ --*=*)
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
+ ac_shift=:
+ ;;
+ *)
+ ac_option=$1
+ ac_optarg=$2
+ ac_shift=shift
+ ;;
+ esac
+
+ case $ac_option in
+ # Handling of the options.
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ ac_cs_recheck=: ;;
+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
+ $as_echo "$ac_cs_version"; exit ;;
+ --debug | --debu | --deb | --de | --d | -d )
+ debug=: ;;
+ --file | --fil | --fi | --f )
+ $ac_shift
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
+ ac_need_defaults=false;;
+ --header | --heade | --head | --hea )
+ $ac_shift
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
+ ac_need_defaults=false;;
+ --he | --h)
+ # Conflict between --help and --header
+ { $as_echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2
+ { (exit 1); exit 1; }; };;
+ --help | --hel | -h )
+ $as_echo "$ac_cs_usage"; exit ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil | --si | --s)
+ ac_cs_silent=: ;;
+
+ # This is an error.
+ -*) { $as_echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2
+ { (exit 1); exit 1; }; } ;;
+
+ *) ac_config_targets="$ac_config_targets $1"
+ ac_need_defaults=false ;;
+
+ esac
+ shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+ exec 6>/dev/null
+ ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+if \$ac_cs_recheck; then
+ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ shift
+ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+ CONFIG_SHELL='$SHELL'
+ export CONFIG_SHELL
+ exec "\$@"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+exec 5>>config.log
+{
+ echo
+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+ $as_echo "$ac_log"
+} >&5
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+#
+# INIT-COMMANDS
+#
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+sed_quote_subst='$sed_quote_subst'
+double_quote_subst='$double_quote_subst'
+delay_variable_subst='$delay_variable_subst'
+macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`'
+macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`'
+enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`'
+enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`'
+pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`'
+enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`'
+host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`'
+host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`'
+host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`'
+build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`'
+build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`'
+build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`'
+SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`'
+Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`'
+GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`'
+EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`'
+FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`'
+LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`'
+NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`'
+LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`'
+max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`'
+ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`'
+exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`'
+lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`'
+lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`'
+lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
+reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
+reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
+file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
+AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
+AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`'
+STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`'
+RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`'
+old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`'
+CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`'
+compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`'
+GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
+objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
+SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
+ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
+MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
+need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
+DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
+NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
+LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
+OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
+libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
+shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`'
+enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`'
+export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`'
+allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
+no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`'
+inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`'
+link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`'
+fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`'
+always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`'
+export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
+include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
+prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`'
+variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`'
+need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
+need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`'
+version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`'
+runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
+shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`'
+libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`'
+library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`'
+soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`'
+postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`'
+finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`'
+sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
+sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`'
+enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`'
+old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`'
+striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`'
+LD_='`$ECHO "X$LD_" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_cmds_='`$ECHO "X$old_archive_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+compiler_='`$ECHO "X$compiler_" | $Xsed -e "$delay_single_quote_subst"`'
+GCC_='`$ECHO "X$GCC_" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_no_builtin_flag_='`$ECHO "X$lt_prog_compiler_no_builtin_flag_" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_wl_='`$ECHO "X$lt_prog_compiler_wl_" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_pic_='`$ECHO "X$lt_prog_compiler_pic_" | $Xsed -e "$delay_single_quote_subst"`'
+lt_prog_compiler_static_='`$ECHO "X$lt_prog_compiler_static_" | $Xsed -e "$delay_single_quote_subst"`'
+lt_cv_prog_compiler_c_o_='`$ECHO "X$lt_cv_prog_compiler_c_o_" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds_need_lc_='`$ECHO "X$archive_cmds_need_lc_" | $Xsed -e "$delay_single_quote_subst"`'
+enable_shared_with_static_runtimes_='`$ECHO "X$enable_shared_with_static_runtimes_" | $Xsed -e "$delay_single_quote_subst"`'
+export_dynamic_flag_spec_='`$ECHO "X$export_dynamic_flag_spec_" | $Xsed -e "$delay_single_quote_subst"`'
+whole_archive_flag_spec_='`$ECHO "X$whole_archive_flag_spec_" | $Xsed -e "$delay_single_quote_subst"`'
+compiler_needs_object_='`$ECHO "X$compiler_needs_object_" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_new_cmds_='`$ECHO "X$old_archive_from_new_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+old_archive_from_expsyms_cmds_='`$ECHO "X$old_archive_from_expsyms_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+archive_cmds_='`$ECHO "X$archive_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+archive_expsym_cmds_='`$ECHO "X$archive_expsym_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+module_cmds_='`$ECHO "X$module_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+module_expsym_cmds_='`$ECHO "X$module_expsym_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+with_gnu_ld_='`$ECHO "X$with_gnu_ld_" | $Xsed -e "$delay_single_quote_subst"`'
+allow_undefined_flag_='`$ECHO "X$allow_undefined_flag_" | $Xsed -e "$delay_single_quote_subst"`'
+no_undefined_flag_='`$ECHO "X$no_undefined_flag_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec_='`$ECHO "X$hardcode_libdir_flag_spec_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_flag_spec_ld_='`$ECHO "X$hardcode_libdir_flag_spec_ld_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_libdir_separator_='`$ECHO "X$hardcode_libdir_separator_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct_='`$ECHO "X$hardcode_direct_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_direct_absolute_='`$ECHO "X$hardcode_direct_absolute_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_minus_L_='`$ECHO "X$hardcode_minus_L_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_shlibpath_var_='`$ECHO "X$hardcode_shlibpath_var_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_automatic_='`$ECHO "X$hardcode_automatic_" | $Xsed -e "$delay_single_quote_subst"`'
+inherit_rpath_='`$ECHO "X$inherit_rpath_" | $Xsed -e "$delay_single_quote_subst"`'
+link_all_deplibs_='`$ECHO "X$link_all_deplibs_" | $Xsed -e "$delay_single_quote_subst"`'
+fix_srcfile_path_='`$ECHO "X$fix_srcfile_path_" | $Xsed -e "$delay_single_quote_subst"`'
+always_export_symbols_='`$ECHO "X$always_export_symbols_" | $Xsed -e "$delay_single_quote_subst"`'
+export_symbols_cmds_='`$ECHO "X$export_symbols_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+exclude_expsyms_='`$ECHO "X$exclude_expsyms_" | $Xsed -e "$delay_single_quote_subst"`'
+include_expsyms_='`$ECHO "X$include_expsyms_" | $Xsed -e "$delay_single_quote_subst"`'
+prelink_cmds_='`$ECHO "X$prelink_cmds_" | $Xsed -e "$delay_single_quote_subst"`'
+file_list_spec_='`$ECHO "X$file_list_spec_" | $Xsed -e "$delay_single_quote_subst"`'
+hardcode_action_='`$ECHO "X$hardcode_action_" | $Xsed -e "$delay_single_quote_subst"`'
+
+LTCC='$LTCC'
+LTCFLAGS='$LTCFLAGS'
+compiler='$compiler_DEFAULT'
+
+# Quote evaled strings.
+for var in SED \
+GREP \
+EGREP \
+FGREP \
+LD \
+NM \
+LN_S \
+lt_SP2NL \
+lt_NL2SP \
+reload_flag \
+deplibs_check_method \
+file_magic_cmd \
+AR \
+AR_FLAGS \
+STRIP \
+RANLIB \
+CC \
+CFLAGS \
+compiler \
+lt_cv_sys_global_symbol_pipe \
+lt_cv_sys_global_symbol_to_cdecl \
+lt_cv_sys_global_symbol_to_c_name_address \
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
+SHELL \
+ECHO \
+lt_prog_compiler_no_builtin_flag \
+lt_prog_compiler_wl \
+lt_prog_compiler_pic \
+lt_prog_compiler_static \
+lt_cv_prog_compiler_c_o \
+need_locks \
+DSYMUTIL \
+NMEDIT \
+LIPO \
+OTOOL \
+OTOOL64 \
+shrext_cmds \
+export_dynamic_flag_spec \
+whole_archive_flag_spec \
+compiler_needs_object \
+with_gnu_ld \
+allow_undefined_flag \
+no_undefined_flag \
+hardcode_libdir_flag_spec \
+hardcode_libdir_flag_spec_ld \
+hardcode_libdir_separator \
+fix_srcfile_path \
+exclude_expsyms \
+include_expsyms \
+file_list_spec \
+variables_saved_for_relink \
+libname_spec \
+library_names_spec \
+soname_spec \
+finish_eval \
+old_striplib \
+striplib \
+LD_ \
+compiler_ \
+lt_prog_compiler_no_builtin_flag_ \
+lt_prog_compiler_wl_ \
+lt_prog_compiler_pic_ \
+lt_prog_compiler_static_ \
+lt_cv_prog_compiler_c_o_ \
+export_dynamic_flag_spec_ \
+whole_archive_flag_spec_ \
+compiler_needs_object_ \
+with_gnu_ld_ \
+allow_undefined_flag_ \
+no_undefined_flag_ \
+hardcode_libdir_flag_spec_ \
+hardcode_libdir_flag_spec_ld_ \
+hardcode_libdir_separator_ \
+fix_srcfile_path_ \
+exclude_expsyms_ \
+include_expsyms_ \
+file_list_spec_; do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[\\\\\\\`\\"\\\$]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Double-quote double-evaled strings.
+for var in reload_cmds \
+old_postinstall_cmds \
+old_postuninstall_cmds \
+old_archive_cmds \
+extract_expsyms_cmds \
+old_archive_from_new_cmds \
+old_archive_from_expsyms_cmds \
+archive_cmds \
+archive_expsym_cmds \
+module_cmds \
+module_expsym_cmds \
+export_symbols_cmds \
+prelink_cmds \
+postinstall_cmds \
+postuninstall_cmds \
+finish_cmds \
+sys_lib_search_path_spec \
+sys_lib_dlsearch_path_spec \
+old_archive_cmds_ \
+old_archive_from_new_cmds_ \
+old_archive_from_expsyms_cmds_ \
+archive_cmds_ \
+archive_expsym_cmds_ \
+module_cmds_ \
+module_expsym_cmds_ \
+export_symbols_cmds_ \
+prelink_cmds_; do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[\\\\\\\`\\"\\\$]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Fix-up fallback echo if it was mangled by the above quoting rules.
+case \$lt_ECHO in
+*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\`
+ ;;
+esac
+
+ac_aux_dir='$ac_aux_dir'
+xsi_shell='$xsi_shell'
+lt_shell_append='$lt_shell_append'
+
+# See if we are running on zsh, and set the options which allow our
+# commands through without removal of \ escapes INIT.
+if test -n "\${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+
+ PACKAGE='$PACKAGE'
+ VERSION='$VERSION'
+ TIMESTAMP='$TIMESTAMP'
+ RM='$RM'
+ ofile='$ofile'
+
+
+
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+
+# Handling of arguments.
+for ac_config_target in $ac_config_targets
+do
+ case $ac_config_target in
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+ "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+ "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
+ "src/sigsegv.h") CONFIG_FILES="$CONFIG_FILES src/sigsegv.h" ;;
+ "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
+
+ *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+done
+
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used. Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience. Make it in the build tree
+# simply because there is no reason against having it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Hook for its removal unless debugging.
+# Note that there is a small window in which the directory will not be cleaned:
+# after its creation but before its name has been assigned to `$tmp'.
+$debug ||
+{
+ tmp=
+ trap 'exit_status=$?
+ { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+' 0
+ trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+# Create a (secure) tmp directory for tmp files.
+
+{
+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
+ test -n "$tmp" && test -d "$tmp"
+} ||
+{
+ tmp=./conf$$-$RANDOM
+ (umask 077 && mkdir "$tmp")
+} ||
+{
+ $as_echo "$as_me: cannot create a temporary directory in ." >&2
+ { (exit 1); exit 1; }
+}
+
+# Set up the scripts for CONFIG_FILES section.
+# No need to generate them if there are no CONFIG_FILES.
+# This happens for instance with `./config.status config.h'.
+if test -n "$CONFIG_FILES"; then
+
+
+ac_cr=' '
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
+ ac_cs_awk_cr='\\r'
+else
+ ac_cs_awk_cr=$ac_cr
+fi
+
+echo 'BEGIN {' >"$tmp/subs1.awk" &&
+_ACEOF
+
+
+{
+ echo "cat >conf$$subs.awk <<_ACEOF" &&
+ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
+ echo "_ACEOF"
+} >conf$$subs.sh ||
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+ac_delim='%!_!# '
+for ac_last_try in false false false false false :; do
+ . ./conf$$subs.sh ||
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+
+ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
+ if test $ac_delim_n = $ac_delim_num; then
+ break
+ elif $ac_last_try; then
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+rm -f conf$$subs.sh
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+_ACEOF
+sed -n '
+h
+s/^/S["/; s/!.*/"]=/
+p
+g
+s/^[^!]*!//
+:repl
+t repl
+s/'"$ac_delim"'$//
+t delim
+:nl
+h
+s/\(.\{148\}\).*/\1/
+t more1
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
+p
+n
+b repl
+:more1
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t nl
+:delim
+h
+s/\(.\{148\}\).*/\1/
+t more2
+s/["\\]/\\&/g; s/^/"/; s/$/"/
+p
+b
+:more2
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t delim
+' <conf$$subs.awk | sed '
+/^[^""]/{
+ N
+ s/\n//
+}
+' >>$CONFIG_STATUS || ac_write_fail=1
+rm -f conf$$subs.awk
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+_ACAWK
+cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+ for (key in S) S_is_set[key] = 1
+ FS = ""
+
+}
+{
+ line = $ 0
+ nfields = split(line, field, "@")
+ substed = 0
+ len = length(field[1])
+ for (i = 2; i < nfields; i++) {
+ key = field[i]
+ keylen = length(key)
+ if (S_is_set[key]) {
+ value = S[key]
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+ len += length(value) + length(field[++i])
+ substed = 1
+ } else
+ len += 1 + keylen
+ }
+
+ print line
+}
+
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
+ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
+else
+ cat
+fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+ || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
+$as_echo "$as_me: error: could not setup config files machinery" >&2;}
+ { (exit 1); exit 1; }; }
+_ACEOF
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
+s/:*\$(srcdir):*/:/
+s/:*\${srcdir}:*/:/
+s/:*@srcdir@:*/:/
+s/^\([^=]*=[ ]*\):*/\1/
+s/:*$//
+s/^[^=]*=[ ]*$//
+}'
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+fi # test -n "$CONFIG_FILES"
+
+# Set up the scripts for CONFIG_HEADERS section.
+# No need to generate them if there are no CONFIG_HEADERS.
+# This happens for instance with `./config.status Makefile'.
+if test -n "$CONFIG_HEADERS"; then
+cat >"$tmp/defines.awk" <<\_ACAWK ||
+BEGIN {
+_ACEOF
+
+# Transform confdefs.h into an awk script `defines.awk', embedded as
+# here-document in config.status, that substitutes the proper values into
+# config.h.in to produce config.h.
+
+# Create a delimiter string that does not exist in confdefs.h, to ease
+# handling of long lines.
+ac_delim='%!_!# '
+for ac_last_try in false false :; do
+ ac_t=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_t"; then
+ break
+ elif $ac_last_try; then
+ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
+$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
+ { (exit 1); exit 1; }; }
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+
+# For the awk script, D is an array of macro values keyed by name,
+# likewise P contains macro parameters if any. Preserve backslash
+# newline sequences.
+
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
+sed -n '
+s/.\{148\}/&'"$ac_delim"'/g
+t rset
+:rset
+s/^[ ]*#[ ]*define[ ][ ]*/ /
+t def
+d
+:def
+s/\\$//
+t bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3"/p
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
+d
+:bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3\\\\\\n"\\/p
+t cont
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
+t cont
+d
+:cont
+n
+s/.\{148\}/&'"$ac_delim"'/g
+t clear
+:clear
+s/\\$//
+t bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
+d
+:bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
+b cont
+' <confdefs.h | sed '
+s/'"$ac_delim"'/"\\\
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ for (key in D) D_is_set[key] = 1
+ FS = ""
+}
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
+ line = \$ 0
+ split(line, arg, " ")
+ if (arg[1] == "#") {
+ defundef = arg[2]
+ mac1 = arg[3]
+ } else {
+ defundef = substr(arg[1], 2)
+ mac1 = arg[2]
+ }
+ split(mac1, mac2, "(") #)
+ macro = mac2[1]
+ prefix = substr(line, 1, index(line, defundef) - 1)
+ if (D_is_set[macro]) {
+ # Preserve the white space surrounding the "#".
+ print prefix "define", macro P[macro] D[macro]
+ next
+ } else {
+ # Replace #undef with comments. This is necessary, for example,
+ # in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+ if (defundef == "undef") {
+ print "/*", prefix defundef, macro, "*/"
+ next
+ }
+ }
+}
+{ print }
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
+$as_echo "$as_me: error: could not setup config headers machinery" >&2;}
+ { (exit 1); exit 1; }; }
+fi # test -n "$CONFIG_HEADERS"
+
+
+eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
+shift
+for ac_tag
+do
+ case $ac_tag in
+ :[FHLC]) ac_mode=$ac_tag; continue;;
+ esac
+ case $ac_mode$ac_tag in
+ :[FHL]*:*);;
+ :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
+$as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
+ { (exit 1); exit 1; }; };;
+ :[FH]-) ac_tag=-:-;;
+ :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
+ esac
+ ac_save_IFS=$IFS
+ IFS=:
+ set x $ac_tag
+ IFS=$ac_save_IFS
+ shift
+ ac_file=$1
+ shift
+
+ case $ac_mode in
+ :L) ac_source=$1;;
+ :[FH])
+ ac_file_inputs=
+ for ac_f
+ do
+ case $ac_f in
+ -) ac_f="$tmp/stdin";;
+ *) # Look for the file first in the build tree, then in the source tree
+ # (if the path is not absolute). The absolute path cannot be DOS-style,
+ # because $ac_f cannot contain `:'.
+ test -f "$ac_f" ||
+ case $ac_f in
+ [\\/$]*) false;;
+ *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
+ esac ||
+ { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
+$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+ ac_file_inputs="$ac_file_inputs '$ac_f'"
+ done
+
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
+ # use $as_me), people would be surprised to read:
+ # /* config.h. Generated by config.status. */
+ configure_input='Generated from '`
+ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+ `' by configure.'
+ if test x"$ac_file" != x-; then
+ configure_input="$ac_file. $configure_input"
+ { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
+$as_echo "$as_me: creating $ac_file" >&6;}
+ fi
+ # Neutralize special characters interpreted by sed in replacement strings.
+ case $configure_input in #(
+ *\&* | *\|* | *\\* )
+ ac_sed_conf_input=`$as_echo "$configure_input" |
+ sed 's/[\\\\&|]/\\\\&/g'`;; #(
+ *) ac_sed_conf_input=$configure_input;;
+ esac
+
+ case $ac_tag in
+ *:-:* | *:-) cat >"$tmp/stdin" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+ ;;
+ esac
+
+ ac_dir=`$as_dirname -- "$ac_file" ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_file" : 'X\(//\)[^/]' \| \
+ X"$ac_file" : 'X\(//\)$' \| \
+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ { as_dir="$ac_dir"
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
+$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
+ { (exit 1); exit 1; }; }; }
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+
+ case $ac_mode in
+ :F)
+ #
+ # CONFIG_FILE
+ #
+
+ case $INSTALL in
+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+ *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
+ esac
+ ac_MKDIR_P=$MKDIR_P
+ case $MKDIR_P in
+ [\\/$]* | ?:[\\/]* ) ;;
+ */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
+ esac
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# If the template does not know about datarootdir, expand it.
+# FIXME: This hack should be removed a few years after 2.60.
+ac_datarootdir_hack=; ac_datarootdir_seen=
+
+ac_sed_dataroot='
+/datarootdir/ {
+ p
+ q
+}
+/@datadir@/p
+/@docdir@/p
+/@infodir@/p
+/@localedir@/p
+/@mandir@/p
+'
+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
+*datarootdir*) ac_datarootdir_seen=yes;;
+*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ ac_datarootdir_hack='
+ s&@datadir@&$datadir&g
+ s&@docdir@&$docdir&g
+ s&@infodir@&$infodir&g
+ s&@localedir@&$localedir&g
+ s&@mandir@&$mandir&g
+ s&\\\${datarootdir}&$datarootdir&g' ;;
+esac
+_ACEOF
+
+# Neutralize VPATH when `$srcdir' = `.'.
+# Shell code in configure.ac might set extrasub.
+# FIXME: do we really want to maintain this feature?
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_sed_extra="$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s|@configure_input@|$ac_sed_conf_input|;t t
+s&@top_builddir@&$ac_top_builddir_sub&;t t
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
+s&@srcdir@&$ac_srcdir&;t t
+s&@abs_srcdir@&$ac_abs_srcdir&;t t
+s&@top_srcdir@&$ac_top_srcdir&;t t
+s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
+s&@builddir@&$ac_builddir&;t t
+s&@abs_builddir@&$ac_abs_builddir&;t t
+s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
+s&@INSTALL@&$ac_INSTALL&;t t
+s&@MKDIR_P@&$ac_MKDIR_P&;t t
+$ac_datarootdir_hack
+"
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
+
+test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
+ { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+ { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&5
+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&2;}
+
+ rm -f "$tmp/stdin"
+ case $ac_file in
+ -) cat "$tmp/out" && rm -f "$tmp/out";;
+ *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ esac \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
+ ;;
+ :H)
+ #
+ # CONFIG_HEADER
+ #
+ if test x"$ac_file" != x-; then
+ {
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
+ } >"$tmp/config.h" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
+ if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
+ else
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
+$as_echo "$as_me: error: could not create $ac_file" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ else
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
+ || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
+$as_echo "$as_me: error: could not create -" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+# Compute "$ac_file"'s index in $config_headers.
+_am_arg="$ac_file"
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ $_am_arg | $_am_arg:* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
+$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$_am_arg" : 'X\(//\)[^/]' \| \
+ X"$_am_arg" : 'X\(//\)$' \| \
+ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$_am_arg" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`/stamp-h$_am_stamp_count
+ ;;
+
+ :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5
+$as_echo "$as_me: executing $ac_file commands" >&6;}
+ ;;
+ esac
+
+
+ case $ac_file$ac_mode in
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$mf" : 'X\(//\)[^/]' \| \
+ X"$mf" : 'X\(//\)$' \| \
+ X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$mf" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$file" : 'X\(//\)[^/]' \| \
+ X"$file" : 'X\(//\)$' \| \
+ X"$file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ { as_dir=$dirpart/$fdir
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
+$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
+ { (exit 1); exit 1; }; }; }
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+ done
+}
+ ;;
+ "libtool":C)
+
+ # See if we are running on zsh, and set the options which allow our
+ # commands through without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+ fi
+
+ cfgfile="${ofile}T"
+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+ $RM "$cfgfile"
+
+ cat <<_LT_EOF >> "$cfgfile"
+#! $SHELL
+
+# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 1996
+#
+# This file is part of GNU Libtool.
+#
+# GNU Libtool 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 of
+# the License, or (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+
+# The names of the tagged configurations supported by this script.
+available_tags=""
+
+# ### BEGIN LIBTOOL CONFIG
+
+# Which release of libtool.m4 was used?
+macro_version=$macro_version
+macro_revision=$macro_revision
+
+# Whether or not to build shared libraries.
+build_libtool_libs=$enable_shared
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
+# What type of objects to build.
+pic_mode=$pic_mode
+
+# Whether or not to optimize for fast installation.
+fast_install=$enable_fast_install
+
+# The host system.
+host_alias=$host_alias
+host=$host
+host_os=$host_os
+
+# The build system.
+build_alias=$build_alias
+build=$build
+build_os=$build_os
+
+# A sed program that does not truncate output.
+SED=$lt_SED
+
+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
+Xsed="\$SED -e 1s/^X//"
+
+# A grep program that handles long lines.
+GREP=$lt_GREP
+
+# An ERE matcher.
+EGREP=$lt_EGREP
+
+# A literal string matcher.
+FGREP=$lt_FGREP
+
+# A BSD- or MS-compatible name lister.
+NM=$lt_NM
+
+# Whether we need soft or hard links.
+LN_S=$lt_LN_S
+
+# What is the maximum length of a command?
+max_cmd_len=$max_cmd_len
+
+# Object file suffix (normally "o").
+objext=$ac_objext
+
+# Executable file suffix (normally "").
+exeext=$exeext
+
+# whether the shell understands "unset".
+lt_unset=$lt_unset
+
+# turn spaces into newlines.
+SP2NL=$lt_lt_SP2NL
+
+# turn newlines into spaces.
+NL2SP=$lt_lt_NL2SP
+
+# How to create reloadable object files.
+reload_flag=$lt_reload_flag
+reload_cmds=$lt_reload_cmds
+
+# Method to check whether dependent libraries are shared objects.
+deplibs_check_method=$lt_deplibs_check_method
+
+# Command to use when deplibs_check_method == "file_magic".
+file_magic_cmd=$lt_file_magic_cmd
+
+# The archiver.
+AR=$lt_AR
+AR_FLAGS=$lt_AR_FLAGS
+
+# A symbol stripping program.
+STRIP=$lt_STRIP
+
+# Commands used to install an old-style archive.
+RANLIB=$lt_RANLIB
+old_postinstall_cmds=$lt_old_postinstall_cmds
+old_postuninstall_cmds=$lt_old_postuninstall_cmds
+
+# A C compiler.
+LTCC=$lt_CC
+
+# LTCC compiler flags.
+LTCFLAGS=$lt_CFLAGS
+
+# Take the output of nm and produce a listing of raw symbols and C names.
+global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
+
+# Transform the output of nm in a proper C declaration.
+global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
+
+# Transform the output of nm in a C name address pair.
+global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+
+# Transform the output of nm in a C name address pair when lib prefix is needed.
+global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
+# The name of the directory that contains temporary libtool files.
+objdir=$objdir
+
+# Shell to use when invoking shell scripts.
+SHELL=$lt_SHELL
+
+# An echo program that does not interpret backslashes.
+ECHO=$lt_ECHO
+
+# Used to examine libraries when file_magic_cmd begins with "file".
+MAGIC_CMD=$MAGIC_CMD
+
+# Must we lock files when doing compilation?
+need_locks=$lt_need_locks
+
+# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+DSYMUTIL=$lt_DSYMUTIL
+
+# Tool to change global to local symbols on Mac OS X.
+NMEDIT=$lt_NMEDIT
+
+# Tool to manipulate fat objects and archives on Mac OS X.
+LIPO=$lt_LIPO
+
+# ldd/readelf like tool for Mach-O binaries on Mac OS X.
+OTOOL=$lt_OTOOL
+
+# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
+OTOOL64=$lt_OTOOL64
+
+# Old archive suffix (normally "a").
+libext=$libext
+
+# Shared library suffix (normally ".so").
+shrext_cmds=$lt_shrext_cmds
+
+# The commands to extract the exported symbol list from a shared archive.
+extract_expsyms_cmds=$lt_extract_expsyms_cmds
+
+# Variables whose values should be saved in libtool wrapper scripts and
+# restored at link time.
+variables_saved_for_relink=$lt_variables_saved_for_relink
+
+# Do we need the "lib" prefix for modules?
+need_lib_prefix=$need_lib_prefix
+
+# Do we need a version for libraries?
+need_version=$need_version
+
+# Library versioning type.
+version_type=$version_type
+
+# Shared library runtime path variable.
+runpath_var=$runpath_var
+
+# Shared library path variable.
+shlibpath_var=$shlibpath_var
+
+# Is shlibpath searched before the hard-coded library search path?
+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
+
+# Format of library name prefix.
+libname_spec=$lt_libname_spec
+
+# List of archive names. First name is the real one, the rest are links.
+# The last name is the one that the linker finds with -lNAME
+library_names_spec=$lt_library_names_spec
+
+# The coded name of the library, if different from the real name.
+soname_spec=$lt_soname_spec
+
+# Command to use after installation of a shared archive.
+postinstall_cmds=$lt_postinstall_cmds
+
+# Command to use after uninstallation of a shared archive.
+postuninstall_cmds=$lt_postuninstall_cmds
+
+# Commands used to finish a libtool library installation in a directory.
+finish_cmds=$lt_finish_cmds
+
+# As "finish_cmds", except a single script fragment to be evaled but
+# not shown.
+finish_eval=$lt_finish_eval
+
+# Whether we should hardcode library paths into libraries.
+hardcode_into_libs=$hardcode_into_libs
+
+# Compile-time system search path for libraries.
+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+
+# Run-time system search path for libraries.
+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+
+# Whether dlopen is supported.
+dlopen_support=$enable_dlopen
+
+# Whether dlopen of programs is supported.
+dlopen_self=$enable_dlopen_self
+
+# Whether dlopen of statically linked programs is supported.
+dlopen_self_static=$enable_dlopen_self_static
+
+# Commands to strip libraries.
+old_striplib=$lt_old_striplib
+striplib=$lt_striplib
+
+
+# The linker used to build libraries.
+LD=$lt_LD
+
+# Commands used to build an old-style archive.
+old_archive_cmds=$lt_old_archive_cmds
+
+# A language specific compiler.
+CC=$lt_compiler
+
+# Is the compiler the GNU compiler?
+with_gcc=$GCC
+
+# Compiler flag to turn off builtin functions.
+no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
+
+# How to pass a linker flag through the compiler.
+wl=$lt_lt_prog_compiler_wl
+
+# Additional compiler flags for building library objects.
+pic_flag=$lt_lt_prog_compiler_pic
+
+# Compiler flag to prevent dynamic linking.
+link_static_flag=$lt_lt_prog_compiler_static
+
+# Does compiler simultaneously support -c and -o options?
+compiler_c_o=$lt_lt_cv_prog_compiler_c_o
+
+# Whether or not to add -lc for building shared libraries.
+build_libtool_need_lc=$archive_cmds_need_lc
+
+# Whether or not to disallow shared libs when runtime libs are static.
+allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
+
+# Compiler flag to allow reflexive dlopens.
+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
+
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec=$lt_whole_archive_flag_spec
+
+# Whether the compiler copes with passing no objects directly.
+compiler_needs_object=$lt_compiler_needs_object
+
+# Create an old-style archive from a shared archive.
+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
+
+# Create a temporary old-style archive to link instead of a shared archive.
+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
+
+# Commands used to build a shared archive.
+archive_cmds=$lt_archive_cmds
+archive_expsym_cmds=$lt_archive_expsym_cmds
+
+# Commands used to build a loadable module if different from building
+# a shared archive.
+module_cmds=$lt_module_cmds
+module_expsym_cmds=$lt_module_expsym_cmds
+
+# Whether we are building with GNU ld or not.
+with_gnu_ld=$lt_with_gnu_ld
+
+# Flag that allows shared libraries with undefined symbols to be built.
+allow_undefined_flag=$lt_allow_undefined_flag
+
+# Flag that enforces no undefined symbols.
+no_undefined_flag=$lt_no_undefined_flag
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist
+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
+
+# If ld is used when linking, flag to hardcode \$libdir into a binary
+# during linking. This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
+
+# Whether we need a single "-rpath" flag with a separated argument.
+hardcode_libdir_separator=$lt_hardcode_libdir_separator
+
+# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# DIR into the resulting binary.
+hardcode_direct=$hardcode_direct
+
+# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# DIR into the resulting binary and the resulting library dependency is
+# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
+# library is relocated.
+hardcode_direct_absolute=$hardcode_direct_absolute
+
+# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+# into the resulting binary.
+hardcode_minus_L=$hardcode_minus_L
+
+# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+# into the resulting binary.
+hardcode_shlibpath_var=$hardcode_shlibpath_var
+
+# Set to "yes" if building a shared library automatically hardcodes DIR
+# into the library and all subsequent libraries and executables linked
+# against it.
+hardcode_automatic=$hardcode_automatic
+
+# Set to yes if linker adds runtime paths of dependent libraries
+# to runtime path list.
+inherit_rpath=$inherit_rpath
+
+# Whether libtool must link a program against all its dependency libraries.
+link_all_deplibs=$link_all_deplibs
+
+# Fix the shell variable \$srcfile for the compiler.
+fix_srcfile_path=$lt_fix_srcfile_path
+
+# Set to "yes" if exported symbols are required.
+always_export_symbols=$always_export_symbols
+
+# The commands to list exported symbols.
+export_symbols_cmds=$lt_export_symbols_cmds
+
+# Symbols that should not be listed in the preloaded symbols.
+exclude_expsyms=$lt_exclude_expsyms
+
+# Symbols that must always be exported.
+include_expsyms=$lt_include_expsyms
+
+# Commands necessary for linking programs (against libraries) with templates.
+prelink_cmds=$lt_prelink_cmds
+
+# Specify filename containing input files.
+file_list_spec=$lt_file_list_spec
+
+# How to hardcode a shared library path into an executable.
+hardcode_action=$hardcode_action
+
+# ### END LIBTOOL CONFIG
+
+_LT_EOF
+
+ case $host_os in
+ aix3*)
+ cat <<\_LT_EOF >> "$cfgfile"
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+_LT_EOF
+ ;;
+ esac
+
+
+ltmain="$ac_aux_dir/ltmain.sh"
+
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ case $xsi_shell in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result="${1##*/}"
+}
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+ func_basename_result="${1##*/}"
+}
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+func_stripname ()
+{
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+ # positional parameters, so assign one to ordinary parameter first.
+ func_stripname_result=${3}
+ func_stripname_result=${func_stripname_result#"${1}"}
+ func_stripname_result=${func_stripname_result%"${2}"}
+}
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=${1%%=*}
+ func_opt_split_arg=${1#*=}
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ case ${1} in
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+ *) func_lo2o_result=${1} ;;
+ esac
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=$(( $* ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=${#1}
+}
+
+_LT_EOF
+ ;;
+ *) # Bourne compatible functions.
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+# func_strip_suffix prefix name
+func_stripname ()
+{
+ case ${2} in
+ .*) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+ *) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+ esac
+}
+
+# sed scripts:
+my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
+my_sed_long_arg='1s/^-[^=]*=//'
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+ func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=`expr "$@"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
+_LT_EOF
+esac
+
+case $lt_shell_append in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$1+=\$2"
+}
+_LT_EOF
+ ;;
+ *)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$1=\$$1\$2"
+}
+
+_LT_EOF
+ ;;
+ esac
+
+
+ sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+
+ ;;
+
+ esac
+done # for ac_tag
+
+
+{ (exit 0); exit 0; }
+_ACEOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+test $ac_write_fail = 0 ||
+ { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
+ { (exit 1); exit 1; }; }
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded. So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status. When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+ ac_cs_success=:
+ ac_config_status_args=
+ test "$silent" = yes &&
+ ac_config_status_args="$ac_config_status_args --quiet"
+ exec 5>/dev/null
+ $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+ exec 5>>config.log
+ # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+ # would make configure fail if this is the last instruction.
+ $ac_cs_success || { (exit 1); exit 1; }
+fi
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
+ { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+fi
+
+
+{ echo; echo "Now please type '${term_bold}make${term_norm}' to compile. Good luck."; echo; } >& 6
diff --git a/libsigsegv/configure.ac b/libsigsegv/configure.ac
new file mode 100644
index 00000000..468991d8
--- /dev/null
+++ b/libsigsegv/configure.ac
@@ -0,0 +1,912 @@
+dnl Autoconf configuration for libsigsegv.
+dnl Process this file with autoconf to produce a configure script.
+dnl
+dnl Copyright (C) 2002-2009 Bruno Haible <bruno@clisp.org>
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 2, or (at your option)
+dnl any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; if not, write to the Free Software Foundation,
+dnl Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+AC_PREREQ([2.62])
+AC_INIT
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_SRCDIR([src/sigsegv.h.in])
+AC_CONFIG_AUX_DIR([build-aux])
+
+RSE_BOLD
+
+{ echo; echo "${term_bold}Build Tools:${term_norm}"; } >& AS_MESSAGE_FD
+
+AM_INIT_AUTOMAKE(libsigsegv, 2.7-pre1)
+AM_CONFIG_HEADER(config.h)
+
+AC_PROG_CC
+AC_PROG_CPP
+
+AC_CANONICAL_HOST
+AC_MSG_CHECKING([host platform])
+sv_cv_host="$host"
+changequote(,)dnl Autoconf 2.52 brokenness
+case "$host_os" in
+ linux | linux-*)
+ kernelversion=`uname -r | sed -e 's/^\([0-9.]*\).*/\1/'`
+ sv_cv_host=`echo $sv_cv_host | sed -e "s/linux/linux$kernelversion/"`
+ ;;
+esac
+changequote([,])dnl Autoconf 2.52 brokenness
+cat > conftest.c << EOF
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+Version __GLIBC__ . __GLIBC_MINOR__
+#endif
+EOF
+glibcversion=`$CPP $CPPFLAGS conftest.c 2>/dev/null | grep Version | sed -e 's/Version//' -e 's/ //g'`
+if test -n "$glibcversion"; then
+ sv_cv_host="$sv_cv_host-glibc$glibcversion"
+fi
+AC_MSG_RESULT([$sv_cv_host])
+PLATFORM="$sv_cv_host"
+AC_SUBST([PLATFORM])
+
+AC_PROG_INSTALL
+
+LT_INIT([disable-shared])
+
+# For testing cross-compilation behaviour.
+#cross_compiling=yes
+
+{ echo; echo "${term_bold}Optional Platform Environment:${term_norm}"; } >& AS_MESSAGE_FD
+
+dnl Headers to be included with <signal.h>. On MacOS X (Darwin) one also
+dnl needs <sys/signal.h>.
+AC_CHECK_HEADERS([sys/signal.h])
+
+dnl List of signals that are sent when an invalid virtual memory address
+dnl is accessed, or when the stack overflows.
+case "$host_os" in
+ sunos4* | freebsd* | dragonfly* | openbsd* | netbsd* | kfreebsd* | knetbsd*)
+ CFG_SIGNALS=signals-bsd.h ;;
+ hpux*)
+ CFG_SIGNALS=signals-hpux.h ;;
+ macos* | darwin*)
+ CFG_SIGNALS=signals-macos.h ;;
+ gnu*)
+ CFG_SIGNALS=signals-hurd.h ;;
+ *)
+ CFG_SIGNALS=signals.h ;;
+esac
+AC_DEFINE_UNQUOTED([CFG_SIGNALS], ["$CFG_SIGNALS"],
+ [The name of the include file describing the fault signals.])
+
+# How to determine the memory page size.
+SV_GETPAGESIZE
+
+# How to allocate fresh memory using mmap.
+# (We need mmap, because mprotect() doesn't work on malloc()ed memory on
+# some systems.)
+SV_MMAP_ANON
+
+# How to write a SIGSEGV handler with access to the fault address.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 5 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[[6-9]]* | darwin[[1-9]][[0-9]]*) ;;
+ *)
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([POSIX], sv_cv_fault_posix,
+ [*-*-solaris2.[7-9] | i?86-*-linux2.[4-9]* | i?86-*-freebsd[4-9]* | i?86-*-mirbsd1[0-9] | alpha*-dec-osf[4-9]* | *-*-hpux11* | mips-sgi-irix6*],
+ [],
+ [int sig, siginfo_t *sip, void *ucp],
+ [sip->si_addr],
+ [action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;])
+
+SV_TRY_FAULT([Linux/i386], sv_cv_fault_linux_i386, [i?86-*-linux2.[2-9]*],
+ [#include <asm/sigcontext.h>],
+ [int sig, struct sigcontext sc],
+ [sc.cr2])
+
+SV_TRY_FAULT([old Linux/i386], sv_cv_fault_linux_i386_old,
+ [i?86-*-linux2.[2-9]*],
+ [],
+ [int sig, unsigned int more],
+ [((unsigned long *) &more) [21]])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([Linux/m68k], sv_cv_fault_linux_m68k, [],
+ [#include <asm/sigcontext.h>
+#include "$srcdir/src/fault-linux-m68k.c"],
+ [int sig, int code, struct sigcontext *scp],
+ [get_fault_addr (scp)])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([Linux/PowerPC], sv_cv_fault_linux_powerpc, [],
+ [#include <asm/sigcontext.h>],
+ [int sig, struct sigcontext *scp],
+ [scp->regs->dar])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([Linux/HPPA], sv_cv_fault_linux_hppa, [],
+ [],
+ [int sig, siginfo_t *sip, void *ucp],
+ [sip->si_ptr],
+ [action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([BSD], sv_cv_fault_bsd, [i?86-*-freebsd[4-9]*],
+ [],
+ [int sig, int code, struct sigcontext *scp, void *addr],
+ [addr])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([IRIX], sv_cv_fault_irix, [mips-sgi-irix6*],
+ [],
+ [int sig, int code, struct sigcontext *scp],
+ [(unsigned long) scp->sc_badvaddr])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([HP-UX HPPA], sv_cv_fault_hpux_hppa, [hppa*-*-hpux11*],
+ [
+#define USE_64BIT_REGS(mc) \
+ (((mc).ss_flags & SS_WIDEREGS) && ((mc).ss_flags & SS_NARROWISINVALID))
+#define GET_CR21(mc) \
+ (USE_64BIT_REGS(mc) ? (mc).ss_wide.ss_64.ss_cr21 : (mc).ss_narrow.ss_cr21)
+],
+ [int sig, int code, struct sigcontext *scp],
+ [GET_CR21 (scp->sc_sl.sl_ss)])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([OSF/1 Alpha], sv_cv_fault_osf_alpha,
+ [alpha*-*-osf[4-9]* | alpha*-*-linux2.[4-9]*],
+ [],
+ [int sig, int code, struct sigcontext *scp],
+ [scp->sc_traparg_a0])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([NetBSD Alpha], sv_cv_fault_netbsd_alpha,
+ [alpha*-*-osf[4-9]* | alpha-*-*bsd*],
+ [#include "$srcdir/src/fault-netbsd-alpha.c"],
+ [int sig, int code, struct sigcontext *scp],
+ [get_fault_addr (scp)])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([AIX], sv_cv_fault_aix, [*-*-aix[34]*],
+ [],
+ [int sig, int code, struct sigcontext *scp],
+ [scp->sc_jmpbuf.jmp_context.o_vaddr])
+
+SV_TRY_FAULT([MacOSX/Darwin7 PowerPC], sv_cv_fault_macosdarwin7_ppc,
+ [powerpc-*-darwin7*],
+ [#include "$srcdir/src/fault-macosdarwin7-powerpc.c"],
+ [int sig, siginfo_t *sip, ucontext_t *ucp],
+ [get_fault_addr (sip, ucp)],
+ [action.sa_sigaction = &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;])
+
+if test "$sv_cv_fault_macosdarwin7_ppc" != yes; then
+SV_TRY_FAULT([MacOSX/Darwin5 PowerPC], sv_cv_fault_macosdarwin5_ppc,
+ [powerpc-*-darwin5*],
+ [#include "$srcdir/src/fault-macosdarwin5-powerpc.c"],
+ [int sig, int code, struct sigcontext *scp],
+ [get_fault_addr (scp)])
+fi
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_FAULT([Hurd], sv_cv_fault_hurd, [],
+ [],
+ [int sig, int code, struct sigcontext *scp],
+ [code])
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+dnl Now determine the fault handler include file.
+dnl We prefer the platform specific include files to the generic fault-posix.h
+dnl because the former often defines SIGSEGV_FAULT_STACKPOINTER.
+dnl Also we put the BSD test second-to-last, because the test may produce
+dnl false positives.
+CFG_HANDLER=
+CFG_FAULT=
+CFG_MACHFAULT=
+FAULT_CONTEXT=void
+FAULT_CONTEXT_INCLUDE=
+dnl
+dnl First the cases where the OS provides the fault address.
+dnl
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_aix" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-aix3-powerpc.h ;;
+ *) CFG_FAULT=fault-aix3.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_irix" = yes; then
+ case "$host_cpu" in
+ mips*) CFG_FAULT=fault-irix-mips.h ;;
+ *) CFG_FAULT=fault-irix.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_hpux_hppa" = yes; then
+ case "$host_cpu" in
+ hppa* | parisc*) CFG_FAULT=fault-hpux-hppa.h ;;
+ *) CFG_FAULT=fault-hpux.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_osf_alpha" = yes; then
+ case "$host_cpu" in
+ alpha*) CFG_FAULT=fault-osf-alpha.h ;;
+ *) CFG_FAULT=fault-osf.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_netbsd_alpha" = yes; then
+ case "$host_cpu" in
+ alpha*) CFG_FAULT=fault-netbsd-alpha.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_i386" = yes; then
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-linux-i386.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_i386_old" = yes; then
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-linux-i386-old.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_powerpc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-linux-powerpc.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_hppa" = yes; then
+ case "$host_cpu" in
+ hppa* | parisc*) CFG_FAULT=fault-linux-hppa.h ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_hurd" = yes; then
+ case "$host_os" in
+ netbsd*) # A false positive.
+ ;;
+ *)
+ CFG_FAULT=fault-hurd.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_bsd" = yes; then
+ case "$host_os" in
+ freebsd* | dragonfly* | kfreebsd*)
+ case "$host_cpu" in
+ i?86 | x86_64)
+ CFG_FAULT=fault-freebsd-i386.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ *)
+ CFG_FAULT=fault-bsd.h
+ FAULT_CONTEXT='void'
+ ;;
+ esac
+ ;;
+ *)
+ CFG_FAULT=fault-bsd.h
+ FAULT_CONTEXT='void'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_posix" = yes; then
+ case "$host_os" in
+ openbsd*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-openbsd-i386.h ;;
+ *) CFG_FAULT=fault-openbsd.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ mirbsd*)
+ case "$host_cpu" in
+ i?86 | x86_64)
+ CFG_FAULT=fault-openbsd-i386.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ linux*)
+ case "$host_cpu" in
+ ia64)
+ CFG_FAULT=fault-linux-ia64.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ esac
+ if test -z "$CFG_FAULT"; then
+ dnl <ucontext.h> was required by POSIX:2001, and many systems have it. But
+ dnl POSIX:2008 does not require it any more, and MirBSD does not have it.
+ AC_CHECK_HEADERS([ucontext.h])
+ if test $ac_cv_header_ucontext_h = yes; then
+ case "$host_os" in
+ solaris*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-solaris-i386.h ;;
+ sparc*) CFG_FAULT=fault-solaris-sparc.h ;;
+ *) CFG_FAULT=fault-solaris.h ;;
+ esac
+ ;;
+ aix*)
+ case "$host_cpu" in
+ powerpc* | rs6000) CFG_FAULT=fault-aix5-powerpc.h ;;
+ *) CFG_FAULT=fault-aix5.h ;;
+ esac
+ ;;
+ netbsd*)
+ CFG_FAULT=fault-netbsd.h
+ ;;
+ *)
+ CFG_FAULT=fault-posix-ucontext.h
+ ;;
+ esac
+ FAULT_CONTEXT='ucontext_t'
+ FAULT_CONTEXT_INCLUDE='#include <ucontext.h>'
+ else
+ CFG_FAULT=fault-posix.h
+ FAULT_CONTEXT='void'
+ fi
+ fi
+fi
+if test -z "$CFG_FAULT"; then
+ case "$host_os" in
+ macos* | darwin[[6-9]]* | darwin[[1-9]][[0-9]]*)
+ case "$host_cpu" in
+ powerpc* | rs6000 | i?86 | x86_64)
+ CFG_MACHFAULT=machfault-macos.h
+ FAULT_CONTEXT_INCLUDE='#include <signal.h>
+#include <mach/thread_status.h>
+#if defined __ppc64__
+#define sigsegv_thread_state_t ppc_thread_state64_t
+#elif defined __ppc__
+#define sigsegv_thread_state_t ppc_thread_state_t
+#endif
+#if defined __x86_64__
+#define sigsegv_thread_state_t x86_thread_state64_t
+#elif defined __i386__
+#if defined x86_THREAD_STATE32
+#define sigsegv_thread_state_t x86_thread_state32_t
+#else
+#define sigsegv_thread_state_t i386_thread_state_t
+#endif
+#endif'
+ FAULT_CONTEXT='sigsegv_thread_state_t'
+ ;;
+ esac
+ if test -n "$CFG_MACHFAULT"; then
+ CFG_HANDLER=handler-macos.c
+ CFG_FAULT=fault-macos.h # nonexistent, just a dummy
+ fi
+ ;;
+ esac
+fi
+dnl
+dnl Next, the cases where there is a hairy CPU dependent way to get the
+dnl fault address.
+dnl
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_linux_m68k" = yes; then
+ case "$host_cpu" in
+ m68*)
+ CFG_FAULT=fault-linux-m68k.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_macosdarwin7_ppc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000)
+ CFG_FAULT=fault-macosdarwin7-powerpc.h
+ FAULT_CONTEXT='ucontext_t'
+ FAULT_CONTEXT_INCLUDE='#include <signal.h>
+#include <ucontext.h>'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT" && test "$sv_cv_fault_macosdarwin5_ppc" = yes; then
+ case "$host_cpu" in
+ powerpc* | rs6000)
+ CFG_FAULT=fault-macosdarwin5-powerpc.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+if test -z "$CFG_FAULT"; then
+ case "$host_os" in
+ mingw* | cygwin*)
+ FAULT_CONTEXT='CONTEXT'
+ FAULT_CONTEXT_INCLUDE='#include <windows.h>'
+ CFG_FAULT=fault-win32.h # nonexistent, just a dummy
+ ;;
+ esac
+fi
+if test -n "$CFG_FAULT"; then
+ sv_cv_have_sigsegv_recovery=yes
+else
+ sv_cv_have_sigsegv_recovery=no
+ dnl
+ dnl No way to get the fault address. But other information is available.
+ dnl
+ case "$host_os" in
+ linux*)
+ case "$host_cpu" in
+ alpha*)
+ CFG_FAULT=fault-linux-alpha.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ arm* | strongarm* | xscale*)
+ CFG_FAULT=fault-linux-arm.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ cris)
+ CFG_FAULT=fault-linux-cris.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ mips*)
+ CFG_FAULT=fault-linux-mips.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ s390*)
+ CFG_FAULT=fault-linux-s390.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ sh*)
+ CFG_FAULT=fault-linux-sh.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ sparc*)
+ CFG_FAULT=fault-linux-sparc.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ x86_64)
+ CFG_FAULT=fault-linux-x86_64.h
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+ ;;
+ beos*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-beos-i386.h ;;
+ *) CFG_FAULT=fault-beos.h ;;
+ esac
+ FAULT_CONTEXT='struct vregs'
+ ;;
+ macos* | darwin*)
+ case "$host_cpu" in
+ i?86 | x86_64) CFG_FAULT=fault-macos-i386.h ;;
+ esac
+ FAULT_CONTEXT='struct sigcontext'
+ ;;
+ esac
+fi
+AC_MSG_CHECKING([for the fault handler specifics])
+if test -n "$CFG_FAULT"; then
+ sv_cv_fault_include=$CFG_FAULT
+else
+ if test -n "$CFG_MACHFAULT"; then
+ sv_cv_fault_include=$CFG_MACHFAULT
+ else
+ sv_cv_fault_include=none
+ fi
+fi
+AC_MSG_RESULT([$sv_cv_fault_include])
+if test -z "$CFG_FAULT"; then
+ CFG_FAULT=fault-none.h
+fi
+AC_DEFINE_UNQUOTED([CFG_FAULT], ["$CFG_FAULT"],
+ [The name of the include file describing the fault handler.])
+if test -z "$CFG_MACHFAULT"; then
+ CFG_MACHFAULT=fault-none.h
+fi
+AC_DEFINE_UNQUOTED([CFG_MACHFAULT], ["$CFG_MACHFAULT"],
+ [The name of the include file describing the Mach fault handler.])
+AC_SUBST([FAULT_CONTEXT])
+AC_SUBST([FAULT_CONTEXT_INCLUDE])
+dnl AM_SUBST_NOTMAKE, because FAULT_CONTEXT_INCLUDE may have a multiline value.
+AM_SUBST_NOTMAKE([FAULT_CONTEXT_INCLUDE])
+
+AC_MSG_CHECKING([if the system supports catching SIGSEGV])
+AC_MSG_RESULT([$sv_cv_have_sigsegv_recovery])
+if test $sv_cv_have_sigsegv_recovery != no; then
+ HAVE_SIGSEGV_RECOVERY=1
+else
+ HAVE_SIGSEGV_RECOVERY=0
+fi
+AC_SUBST([HAVE_SIGSEGV_RECOVERY])
+
+dnl The stackoverflow_context_t type depends on the CFG_FAULT include file.
+
+dnl Stack direction.
+AC_CACHE_CHECK([for stack direction], sv_cv_stack_direction_msg, [
+ case "$host_cpu" in
+ dnl See the #define STACK_GROWS_DOWNWARD in gcc-3.1/gcc/config/*/*.h.
+ a29k | \
+ alpha* | \
+ arc | \
+ arm* | strongarm* | xscale* | \
+ avr | \
+ c1 | c2 | c32 | c34 | c38 | \
+ clipper | \
+ cris | \
+ d30v | \
+ elxsi | \
+ fr30 | \
+ h8300 | \
+ i?86 | x86_64 | \
+ i860 | \
+ ia64 | \
+ m32r | \
+ m68* | \
+ m88k | \
+ mcore | \
+ mips* | \
+ mmix | \
+ mn10200 | \
+ mn10300 | \
+ ns32k | \
+ pdp11 | \
+ pj* | \
+ powerpc* | rs6000 | \
+ romp | \
+ s390* | \
+ sh* | \
+ sparc* | \
+ v850 | \
+ vax | \
+ xtensa)
+ sv_cv_stack_direction=-1 ;;
+ c4x | \
+ dsp16xx | \
+ i960 | \
+ hppa* | parisc* | \
+ stormy16 | \
+ we32k)
+ sv_cv_stack_direction=1 ;;
+ *)
+ if test $cross_compiling = no; then
+ cat > conftest.c <<EOF
+#include <stdio.h>
+int
+get_stack_direction ()
+{
+ auto char dummy;
+ static char *dummyaddr = (char *)0;
+ if (dummyaddr != (char *)0)
+ return &dummy > dummyaddr ? 1 : &dummy < dummyaddr ? -1 : 0;
+ else
+ {
+ dummyaddr = &dummy;
+ {
+ int result = get_stack_direction ();
+ /* The next assignment avoids tail recursion elimination
+ (IRIX 6.4 CC). */
+ dummyaddr = (char *)0;
+ return result;
+ }
+ }
+}
+int
+main ()
+{
+ printf ("%d\n", get_stack_direction ());
+ return 0;
+}
+EOF
+ AC_TRY_EVAL([ac_link])
+ sv_cv_stack_direction=`./conftest`
+ else
+ sv_cv_stack_direction=0
+ fi
+ ;;
+ esac
+ case $sv_cv_stack_direction in
+ 1) sv_cv_stack_direction_msg="grows up";;
+ -1) sv_cv_stack_direction_msg="grows down";;
+ *) sv_cv_stack_direction_msg="unknown";;
+ esac
+])
+AC_DEFINE_UNQUOTED([STACK_DIRECTION], [$sv_cv_stack_direction],
+ [Define as the direction of stack growth for your system.
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => spaghetti stack.])
+
+dnl Determination of the stack's virtual memory area.
+AC_CACHE_CHECK([for PIOCMAP in sys/procfs.h], [sv_cv_procfsvma], [
+ AC_TRY_LINK([#include <sys/procfs.h>],
+ [int x = PIOCNMAP + PIOCMAP; prmap_t y;],
+ [sv_cv_procfsvma=yes], [sv_cv_procfsvma=no])
+])
+AC_CHECK_FUNCS([mincore])
+CFG_STACKVMA=
+if test $sv_cv_procfsvma = yes; then
+ CFG_STACKVMA=stackvma-procfs.c
+else
+ case "$host_os" in
+ linux*) CFG_STACKVMA=stackvma-linux.c ;;
+ freebsd* | dragonfly*) CFG_STACKVMA=stackvma-freebsd.c ;;
+ beos*) CFG_STACKVMA=stackvma-beos.c ;;
+ macos* | darwin*) CFG_STACKVMA=stackvma-mach.c ;;
+ esac
+fi
+if test -z "$CFG_STACKVMA" && test $ac_cv_func_mincore = yes; then
+ CFG_STACKVMA=stackvma-mincore.c
+fi
+if test -n "$CFG_STACKVMA"; then
+ AC_DEFINE([HAVE_STACKVMA], [1],
+ [Define if CFG_STACKVMA is set to a nontrivial source file.])
+else
+ CFG_STACKVMA=stackvma-none.c
+fi
+AC_DEFINE_UNQUOTED([CFG_STACKVMA], ["$CFG_STACKVMA"],
+ [The name of the file determining the stack virtual memory area.])
+AC_SUBST([CFG_STACKVMA])
+
+AC_CHECK_FUNCS([getrlimit setrlimit])
+
+dnl Catching stack overflow requires an alternate signal stack.
+dnl The old "install a guard page" trick would be unreliable, because
+dnl we don't know where exactly to place the guard page.
+SV_SIGALTSTACK
+
+AC_CACHE_CHECK([if the system supports catching stack overflow],
+ [sv_cv_have_stack_overflow_recovery],
+[
+ dnl On Mach, it requires a machfault-*.h (see src/handler-macos.c).
+ dnl On Unix, it requires either sigaltstack() or the BeOS set_signal_stack()
+ dnl function, and on Unix it requires a fault-*.h or a stackvma-*.c with
+ dnl certain properties (see src/handler-unix.c).
+ if test "$CFG_MACHFAULT" != fault-none.h; then
+ sv_cv_have_stack_overflow_recovery=yes
+ else
+ if test "$sv_cv_sigaltstack" != no; then
+ sv_cv_have_stack_overflow_recovery=maybe
+ else
+ case "$host_os" in
+ beos*) sv_cv_have_stack_overflow_recovery=maybe ;;
+ mingw* | cygwin*) sv_cv_have_stack_overflow_recovery=yes ;;
+ *) sv_cv_have_stack_overflow_recovery=no ;;
+ esac
+ fi
+ fi
+ if test $sv_cv_have_stack_overflow_recovery = maybe; then
+ if test -n "$CFG_FAULT"; then
+ AC_EGREP_CPP([xyzzy], [
+#include "$srcdir/src/$CFG_FAULT"
+#ifdef SIGSEGV_FAULT_HANDLER_ARGLIST
+#ifdef SIGSEGV_FAULT_ADDRESS
+xyzzy
+#endif
+#endif
+], [condA=true], [condA=false])
+ else
+ condA=false
+ fi
+ if test -n "$CFG_FAULT"; then
+ AC_EGREP_CPP([xyzzy], [
+#include "$srcdir/src/$CFG_FAULT"
+#ifdef SIGSEGV_FAULT_HANDLER_ARGLIST
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+xyzzy
+#endif
+#endif
+], [condB=true], [condB=false])
+ else
+ condB=false
+ fi
+ if test "$CFG_STACKVMA" != "stackvma-none.c"; then
+ condC=true
+ else
+ condC=false
+ fi
+ if { $condA && $condB; } || { $condA && $condC; } || { $condB && $condC; }; then
+ sv_cv_have_stack_overflow_recovery=yes
+ else
+ sv_cv_have_stack_overflow_recovery=no
+ fi
+ fi
+])
+if test $sv_cv_have_stack_overflow_recovery != no; then
+ HAVE_STACK_OVERFLOW_RECOVERY=1
+else
+ HAVE_STACK_OVERFLOW_RECOVERY=0
+fi
+AC_SUBST([HAVE_STACK_OVERFLOW_RECOVERY])
+
+# How to longjmp out of a signal handler, in such a way that the
+# alternate signal stack remains functional.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 2 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[[6-9]]* | darwin[[1-9]][[0-9]]*) ;;
+ *)
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_LONGJMP([], sv_cv_leave_handler_longjmp,
+ [*-*-osf[4-9]* | *-*-hpux11* | *-*-linux2.[2-9]*],
+ [], [])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_LONGJMP([ and sigaltstack],
+ sv_cv_leave_handler_longjmp_sigaltstack,
+ [*-*-freebsd*],
+ [
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+ ],
+ [stack_t ss;
+ if (sigaltstack (NULL, &ss) >= 0)
+ {
+ ss.ss_flags &= ~SS_ONSTACK;
+ sigaltstack (&ss, NULL);
+ }
+ ])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_LONGJMP([ and setcontext],
+ sv_cv_leave_handler_longjmp_setcontext,
+ [*-*-irix* | *-*-solaris*],
+ [#include <ucontext.h>
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+ ],
+ [static int fl;
+ static ucontext_t uc;
+ fl = 0;
+ if (getcontext (&uc) >= 0)
+ if (fl == 0)
+ if (uc.uc_stack.ss_flags & SS_ONSTACK)
+ {
+ uc.uc_stack.ss_flags &= ~SS_ONSTACK;
+ fl = 1;
+ setcontext (&uc);
+ }
+ ])
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+# How to siglongjmp out of a signal handler, in such a way that the
+# alternate signal stack remains functional.
+
+# On MacOS X 10.2 or newer, we don't need these tests, because we'll end up
+# using handler-macos.c anyway. If we were to perform the tests, 2 Crash Report
+# dialog windows would pop up.
+case "$host_os" in
+ macos* | darwin[[6-9]]* | darwin[[1-9]][[0-9]]*) ;;
+ *)
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_SIGLONGJMP([], sv_cv_leave_handler_siglongjmp,
+ [*-*-osf[4-9]* | *-*-hpux11* | *-*-linux2.[2-9]* | *-*-irix* | *-*-solaris*],
+ [], [])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_SIGLONGJMP([ and sigaltstack],
+ sv_cv_leave_handler_siglongjmp_sigaltstack,
+ [*-*-freebsd*],
+ [
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+ ],
+ [stack_t ss;
+ if (sigaltstack (NULL, &ss) >= 0)
+ {
+ ss.ss_flags &= ~SS_ONSTACK;
+ sigaltstack (&ss, NULL);
+ }
+ ])
+
+dnl FIXME: Put in some more known values into the third argument.
+SV_TRY_LEAVE_HANDLER_SIGLONGJMP([ and setcontext],
+ sv_cv_leave_handler_siglongjmp_setcontext,
+ [],
+ [#include <ucontext.h>
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+ ],
+ [static int fl;
+ static ucontext_t uc;
+ fl = 0;
+ if (getcontext(&uc) >= 0)
+ if (fl == 0)
+ if (uc.uc_stack.ss_flags & SS_ONSTACK)
+ {
+ uc.uc_stack.ss_flags &= ~SS_ONSTACK;
+ fl = 1;
+ setcontext(&uc);
+ }
+ ])
+
+# End of MacOS X special casing.
+ ;;
+esac
+
+CFG_LEAVE=
+if test "$sv_cv_leave_handler_longjmp" != no; then
+ CFG_LEAVE=leave-nop.c
+else
+ if test "$sv_cv_leave_handler_longjmp_sigaltstack" != no; then
+ CFG_LEAVE=leave-sigaltstack.c
+ else
+ if test "$sv_cv_leave_handler_longjmp_setcontext" != no; then
+ CFG_LEAVE=leave-setcontext.c
+ fi
+ fi
+fi
+case "$host_os" in
+ # On BeOS, the 6 tests fail because sigaltstack() doesn't exist.
+ # If one uses set_signal_stack() instead of sigaltstack(), the first
+ # test actually works. i.e. sv_cv_leave_handler_longjmp would be 'yes'.
+ beos*) CFG_LEAVE=leave-nop.c ;;
+esac
+if test -z "$CFG_LEAVE"; then
+ CFG_LEAVE=leave-none.c
+fi
+AC_DEFINE_UNQUOTED([CFG_LEAVE], ["$CFG_LEAVE"],
+ [The name of the file implementing sigsegv_reset_onstack_flag.])
+AC_SUBST([CFG_LEAVE])
+
+case "$host_os" in
+ mingw* | cygwin*) CFG_HANDLER=handler-win32.c ;;
+ *)
+ if test -z "$CFG_HANDLER"; then
+ if test $sv_cv_have_sigsegv_recovery = no \
+ && test $sv_cv_have_stack_overflow_recovery = no; then
+ CFG_HANDLER=handler-none.c
+ else
+ CFG_HANDLER=handler-unix.c
+ fi
+ fi
+ ;;
+esac
+AC_DEFINE_UNQUOTED([CFG_HANDLER], ["$CFG_HANDLER"],
+ [The name of the file implementing the handler functionality.])
+AC_SUBST([CFG_HANDLER])
+
+{ echo; echo "${term_bold}Build Parameters:${term_norm}"; } >& AS_MESSAGE_FD
+
+dnl Relocatability is a nop for this package.
+AC_RELOCATABLE_NOP
+
+{ echo; echo "${term_bold}Output Substitution:${term_norm}"; } >& AS_MESSAGE_FD
+
+dnl AC_OUTPUT([Makefile])
+AC_OUTPUT([Makefile
+ src/Makefile src/sigsegv.h
+ tests/Makefile])
+
+{ echo; echo "Now please type '${term_bold}make${term_norm}' to compile. Good luck."; echo; } >& AS_MESSAGE_FD
diff --git a/libsigsegv/m4/bold.m4 b/libsigsegv/m4/bold.m4
new file mode 100644
index 00000000..5f5420ec
--- /dev/null
+++ b/libsigsegv/m4/bold.m4
@@ -0,0 +1,59 @@
+# bold.m4 serial 1 (libsigsegv-2.0)
+dnl Copyright (C) 1999-2002 Ralf S. Engelschall <rse@engelschall.com>
+dnl Copyright (C) 2002 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+# Determine the escape sequences for switching bold output on and off.
+AC_DEFUN([RSE_BOLD],
+[
+ dnl Not pretty.
+ dnl AC_REQUIRE([AC_PROG_AWK])
+
+ case $TERM in
+ # for the most important terminal types we directly know the sequences
+ xterm*|vt220*)
+ term_bold=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c", 27, 91, 49, 109); }' </dev/null 2>/dev/null`
+ term_norm=`${AWK:-awk} 'BEGIN { printf("%c%c%c", 27, 91, 109); }' </dev/null 2>/dev/null`
+ ;;
+ vt100*)
+ term_bold=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c%c%c", 27, 91, 49, 109, 0, 0); }' </dev/null 2>/dev/null`
+ term_norm=`${AWK:-awk} 'BEGIN { printf("%c%c%c%c%c", 27, 91, 109, 0, 0); }' </dev/null 2>/dev/null`
+ ;;
+ # for all others, we try to use a possibly existing `tput' or `tcout' utility
+ *)
+ paths=`echo "$PATH" | sed -e 's/:/ /g'`
+ for tool in tput tcout; do
+ for dir in $paths; do
+ if test -r "$dir/$tool"; then
+ for seq in bold md smso; do # 'smso' is last
+ bold="`$dir/$tool $seq 2>/dev/null`"
+ if test -n "$bold"; then
+ term_bold="$bold"
+ break
+ fi
+ done
+ if test -n "$term_bold"; then
+ for seq in sgr0 me rmso reset; do # 'reset' is last
+ norm="`$dir/$tool $seq 2>/dev/null`"
+ if test -n "$norm"; then
+ term_norm="$norm"
+ break
+ fi
+ done
+ fi
+ break
+ fi
+ done
+ if test -n "$term_bold" && test -n "$term_norm"; then
+ break
+ fi
+ done
+ ;;
+ esac
+ echo "$term_bold" | tr -d '\n' > termbold
+ echo "$term_norm" | tr -d '\n' > termnorm
+])
diff --git a/libsigsegv/m4/fault.m4 b/libsigsegv/m4/fault.m4
new file mode 100644
index 00000000..2dd89f83
--- /dev/null
+++ b/libsigsegv/m4/fault.m4
@@ -0,0 +1,125 @@
+# fault.m4 serial 5 (libsigsegv-2.2)
+dnl Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+dnl How to write a SIGSEGV handler with access to the fault address.
+dnl SV_TRY_FAULT(KIND, CACHESYMBOL, KNOWN-SYSTEMS,
+dnl INCLUDES, FAULT_HANDLER_ARGLIST, FAULT_ADDRESS, [INSTALLCODE])
+AC_DEFUN([SV_TRY_FAULT], [
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
+
+ AC_CACHE_CHECK([whether a fault handler according to $1 works], [$2], [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+$4
+#include <sys/types.h>
+#include <sys/mman.h>
+#if HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+#endif
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+unsigned long page;
+int handler_called = 0;
+void sigsegv_handler ($5)
+{
+ void *fault_address = (void *) ($6);
+ handler_called++;
+ if (handler_called == 10)
+ exit (4);
+ if (fault_address != (void*)(page + 0x678))
+ exit (3);
+ if (mprotect ((void *) page, 0x10000, PROT_READ | PROT_WRITE) < 0)
+ exit (2);
+}
+void crasher (unsigned long p)
+{
+ *(int *) (p + 0x678) = 42;
+}
+int main ()
+{
+ void *p;
+ struct sigaction action;
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ /* Setup some mmaped memory. */
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ p = mmap ((void *) 0, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#else
+ p = mmap ((void *) 0x12340000, 0x10000, PROT_READ | PROT_WRITE, map_flags, zero_fd, 0);
+#endif
+ if (p == (void *)(-1))
+ exit (2);
+ page = (unsigned long) p;
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x10000, PROT_READ) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset(&action.sa_mask);
+]m4_if([$7], [], [
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+ action.sa_flags = 0;
+], [$7])[
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ return 0;
+}]])],
+ [$2=yes],
+ [$2=no],
+ [case "$host" in
+ m4_if([$3], [], [], [[$3]) $2=yes ;;])
+ *)
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#include <signal.h>
+$4
+void sigsegv_handler ($5)
+{
+ void *fault_address = (void *) ($6);
+}
+]],
+ [[struct sigaction action;
+$7]])],
+ [$2="guessing no"],
+ [$2=no])
+ ;;
+ esac
+ ])
+ ])
+])
diff --git a/libsigsegv/m4/getpagesize.m4 b/libsigsegv/m4/getpagesize.m4
new file mode 100644
index 00000000..551a20e8
--- /dev/null
+++ b/libsigsegv/m4/getpagesize.m4
@@ -0,0 +1,66 @@
+# getpagesize.m4 serial 2 (libsigsegv-2.2)
+dnl Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+# How to determine the memory page size.
+AC_DEFUN([SV_GETPAGESIZE],
+[
+ AC_REQUIRE([AC_PROG_CC])
+
+ AC_CHECK_HEADERS(unistd.h)
+
+ dnl 1) getpagesize().
+
+ AC_CACHE_CHECK([for getpagesize], sv_cv_func_getpagesize, [
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#if HAVE_UNISTD_H
+#include <sys/types.h>
+#include <unistd.h>
+#endif
+]],
+ [[int pgsz = getpagesize();]])],
+ [sv_cv_func_getpagesize=yes],
+ [sv_cv_func_getpagesize=no])])
+ if test $sv_cv_func_getpagesize = yes; then
+ AC_DEFINE(HAVE_GETPAGESIZE, 1,
+ [Define if getpagesize() is available as a function or a macro.])
+ fi
+
+ dnl 2) sysconf(_SC_PAGESIZE).
+
+ AC_CACHE_CHECK([for sysconf(_SC_PAGESIZE)], sv_cv_func_sysconf_pagesize, [
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#if HAVE_UNISTD_H
+#include <sys/types.h>
+#include <unistd.h>
+#endif
+]],
+ [[int pgsz = sysconf (_SC_PAGESIZE);]])],
+ [sv_cv_func_sysconf_pagesize=yes],
+ [sv_cv_func_sysconf_pagesize=no])])
+ if test $sv_cv_func_sysconf_pagesize = yes; then
+ AC_DEFINE(HAVE_SYSCONF_PAGESIZE, 1,
+ [Define if sysconf(_SC_PAGESIZE) is available as a function or a macro.])
+ fi
+
+ dnl 3) PAGESIZE.
+
+ AC_CACHE_CHECK([for PAGESIZE in limits.h], sv_cv_macro_pagesize, [
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[#include <limits.h>]],
+ [[int pgsz = PAGESIZE;]])],
+ [sv_cv_macro_pagesize=yes],
+ [sv_cv_macro_pagesize=no])])
+ if test $sv_cv_macro_pagesize = yes; then
+ AC_DEFINE(HAVE_PAGESIZE, 1,
+ [Define if PAGESIZE is available as a macro.])
+ fi
+
+ dnl 4) On BeOS, you need to include <OS.h> and use B_PAGE_SIZE.
+])
diff --git a/libsigsegv/m4/libtool.m4 b/libsigsegv/m4/libtool.m4
new file mode 100644
index 00000000..4ceb7f12
--- /dev/null
+++ b/libsigsegv/m4/libtool.m4
@@ -0,0 +1,7309 @@
+# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+#
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 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.
+
+m4_define([_LT_COPYING], [dnl
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 1996
+#
+# This file is part of GNU Libtool.
+#
+# GNU Libtool 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 of
+# the License, or (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+])
+
+# serial 56 LT_INIT
+
+
+# LT_PREREQ(VERSION)
+# ------------------
+# Complain and exit if this libtool version is less that VERSION.
+m4_defun([LT_PREREQ],
+[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
+ [m4_default([$3],
+ [m4_fatal([Libtool version $1 or higher is required],
+ 63)])],
+ [$2])])
+
+
+# _LT_CHECK_BUILDDIR
+# ------------------
+# Complain if the absolute build directory name contains unusual characters
+m4_defun([_LT_CHECK_BUILDDIR],
+[case `pwd` in
+ *\ * | *\ *)
+ AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+esac
+])
+
+
+# LT_INIT([OPTIONS])
+# ------------------
+AC_DEFUN([LT_INIT],
+[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+AC_BEFORE([$0], [LT_LANG])dnl
+AC_BEFORE([$0], [LT_OUTPUT])dnl
+AC_BEFORE([$0], [LTDL_INIT])dnl
+m4_require([_LT_CHECK_BUILDDIR])dnl
+
+dnl Autoconf doesn't catch unexpanded LT_ macros by default:
+m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
+m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
+dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
+dnl unless we require an AC_DEFUNed macro:
+AC_REQUIRE([LTOPTIONS_VERSION])dnl
+AC_REQUIRE([LTSUGAR_VERSION])dnl
+AC_REQUIRE([LTVERSION_VERSION])dnl
+AC_REQUIRE([LTOBSOLETE_VERSION])dnl
+m4_require([_LT_PROG_LTMAIN])dnl
+
+dnl Parse OPTIONS
+_LT_SET_OPTIONS([$0], [$1])
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ltmain"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+AC_SUBST(LIBTOOL)dnl
+
+_LT_SETUP
+
+# Only expand once:
+m4_define([LT_INIT])
+])# LT_INIT
+
+# Old names:
+AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
+AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
+dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
+
+
+# _LT_CC_BASENAME(CC)
+# -------------------
+# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
+m4_defun([_LT_CC_BASENAME],
+[for cc_temp in $1""; do
+ case $cc_temp in
+ compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+ distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+])
+
+
+# _LT_FILEUTILS_DEFAULTS
+# ----------------------
+# It is okay to use these file commands and assume they have been set
+# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+m4_defun([_LT_FILEUTILS_DEFAULTS],
+[: ${CP="cp -f"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+])# _LT_FILEUTILS_DEFAULTS
+
+
+# _LT_SETUP
+# ---------
+m4_defun([_LT_SETUP],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+_LT_DECL([], [host_alias], [0], [The host system])dnl
+_LT_DECL([], [host], [0])dnl
+_LT_DECL([], [host_os], [0])dnl
+dnl
+_LT_DECL([], [build_alias], [0], [The build system])dnl
+_LT_DECL([], [build], [0])dnl
+_LT_DECL([], [build_os], [0])dnl
+dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+dnl
+AC_REQUIRE([AC_PROG_LN_S])dnl
+test -z "$LN_S" && LN_S="ln -s"
+_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
+dnl
+AC_REQUIRE([LT_CMD_MAX_LEN])dnl
+_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
+_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_CMD_RELOAD])dnl
+m4_require([_LT_CHECK_MAGIC_METHOD])dnl
+m4_require([_LT_CMD_OLD_ARCHIVE])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+
+_LT_CONFIG_LIBTOOL_INIT([
+# See if we are running on zsh, and set the options which allow our
+# commands through without removal of \ escapes INIT.
+if test -n "\${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+])
+if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+_LT_CHECK_OBJDIR
+
+m4_require([_LT_TAG_COMPILER])dnl
+_LT_PROG_ECHO_BACKSLASH
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\([["`\\]]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to delay expansion of an escaped single quote.
+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+
+# Global variables:
+ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+test -z "$LD" && LD=ld
+test -z "$ac_objext" && ac_objext=o
+
+_LT_CC_BASENAME([$compiler])
+
+# Only perform the check for file, if the check method requires it
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ _LT_PATH_MAGIC
+ fi
+ ;;
+esac
+
+# Use C for the default configuration in the libtool script
+LT_SUPPORTED_TAG([CC])
+_LT_LANG_C_CONFIG
+_LT_LANG_DEFAULT_CONFIG
+_LT_CONFIG_COMMANDS
+])# _LT_SETUP
+
+
+# _LT_PROG_LTMAIN
+# ---------------
+# Note that this code is called both from `configure', and `config.status'
+# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
+# `config.status' has no value for ac_aux_dir unless we are using Automake,
+# so we pass a copy along to make sure it has a sensible value anyway.
+m4_defun([_LT_PROG_LTMAIN],
+[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
+_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
+ltmain="$ac_aux_dir/ltmain.sh"
+])# _LT_PROG_LTMAIN
+
+
+## ------------------------------------- ##
+## Accumulate code for creating libtool. ##
+## ------------------------------------- ##
+
+# So that we can recreate a full libtool script including additional
+# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
+# in macros and then make a single call at the end using the `libtool'
+# label.
+
+
+# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
+# ----------------------------------------
+# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL_INIT],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_INIT])
+
+
+# _LT_CONFIG_LIBTOOL([COMMANDS])
+# ------------------------------
+# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
+
+
+# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
+# -----------------------------------------------------
+m4_defun([_LT_CONFIG_SAVE_COMMANDS],
+[_LT_CONFIG_LIBTOOL([$1])
+_LT_CONFIG_LIBTOOL_INIT([$2])
+])
+
+
+# _LT_FORMAT_COMMENT([COMMENT])
+# -----------------------------
+# Add leading comment marks to the start of each line, and a trailing
+# full-stop to the whole comment if one is not present already.
+m4_define([_LT_FORMAT_COMMENT],
+[m4_ifval([$1], [
+m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
+ [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
+)])
+
+
+
+## ------------------------ ##
+## FIXME: Eliminate VARNAME ##
+## ------------------------ ##
+
+
+# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
+# -------------------------------------------------------------------
+# CONFIGNAME is the name given to the value in the libtool script.
+# VARNAME is the (base) name used in the configure script.
+# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
+# VARNAME. Any other value will be used directly.
+m4_define([_LT_DECL],
+[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
+ [m4_ifval([$1], [$1], [$2])])
+ lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
+ m4_ifval([$4],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
+ lt_dict_add_subkey([lt_decl_dict], [$2],
+ [tagged?], [m4_ifval([$5], [yes], [no])])])
+])
+
+
+# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
+# --------------------------------------------------------
+m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
+
+
+# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_tag_varnames],
+[_lt_decl_filter([tagged?], [yes], $@)])
+
+
+# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
+# ---------------------------------------------------------
+m4_define([_lt_decl_filter],
+[m4_case([$#],
+ [0], [m4_fatal([$0: too few arguments: $#])],
+ [1], [m4_fatal([$0: too few arguments: $#: $1])],
+ [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
+ [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
+ [lt_dict_filter([lt_decl_dict], $@)])[]dnl
+])
+
+
+# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
+# --------------------------------------------------
+m4_define([lt_decl_quote_varnames],
+[_lt_decl_filter([value], [1], $@)])
+
+
+# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_dquote_varnames],
+[_lt_decl_filter([value], [2], $@)])
+
+
+# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_varnames_tagged],
+[_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_quote(m4_if([$2], [],
+ m4_quote(lt_decl_tag_varnames),
+ m4_quote(m4_shift($@)))),
+ m4_split(m4_normalize(m4_quote(_LT_TAGS))))])
+m4_define([_lt_decl_varnames_tagged], [lt_combine([$1], [$2], [_], $3)])
+
+
+# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_all_varnames],
+[_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_if([$2], [],
+ m4_quote(lt_decl_varnames),
+ m4_quote(m4_shift($@))))[]dnl
+])
+m4_define([_lt_decl_all_varnames],
+[lt_join($@, lt_decl_varnames_tagged([$1],
+ lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
+])
+
+
+# _LT_CONFIG_STATUS_DECLARE([VARNAME])
+# ------------------------------------
+# Quote a variable value, and forward it to `config.status' so that its
+# declaration there will have the same value as in `configure'. VARNAME
+# must have a single quote delimited value for this to work.
+m4_define([_LT_CONFIG_STATUS_DECLARE],
+[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
+
+
+# _LT_CONFIG_STATUS_DECLARATIONS
+# ------------------------------
+# We delimit libtool config variables with single quotes, so when
+# we write them to config.status, we have to be sure to quote all
+# embedded single quotes properly. In configure, this macro expands
+# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
+#
+# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
+m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
+ [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAGS
+# ----------------
+# Output comment and list of tags supported by the script
+m4_defun([_LT_LIBTOOL_TAGS],
+[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
+available_tags="_LT_TAGS"dnl
+])
+
+
+# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
+# -----------------------------------
+# Extract the dictionary values for VARNAME (optionally with TAG) and
+# expand to a commented shell variable setting:
+#
+# # Some comment about what VAR is for.
+# visible_name=$lt_internal_name
+m4_define([_LT_LIBTOOL_DECLARE],
+[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
+ [description])))[]dnl
+m4_pushdef([_libtool_name],
+ m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
+m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
+ [0], [_libtool_name=[$]$1],
+ [1], [_libtool_name=$lt_[]$1],
+ [2], [_libtool_name=$lt_[]$1],
+ [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
+m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
+])
+
+
+# _LT_LIBTOOL_CONFIG_VARS
+# -----------------------
+# Produce commented declarations of non-tagged libtool config variables
+# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
+# section) are produced by _LT_LIBTOOL_TAG_VARS.
+m4_defun([_LT_LIBTOOL_CONFIG_VARS],
+[m4_foreach([_lt_var],
+ m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAG_VARS(TAG)
+# -------------------------
+m4_define([_LT_LIBTOOL_TAG_VARS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
+
+
+# _LT_TAGVAR(VARNAME, [TAGNAME])
+# ------------------------------
+m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
+
+
+# _LT_CONFIG_COMMANDS
+# -------------------
+# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
+# variables for single and double quote escaping we saved from calls
+# to _LT_DECL, we can put quote escaped variables declarations
+# into `config.status', and then the shell code to quote escape them in
+# for loops in `config.status'. Finally, any additional code accumulated
+# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
+m4_defun([_LT_CONFIG_COMMANDS],
+[AC_PROVIDE_IFELSE([LT_OUTPUT],
+ dnl If the libtool generation code has been placed in $CONFIG_LT,
+ dnl instead of duplicating it all over again into config.status,
+ dnl then we will have config.status run $CONFIG_LT later, so it
+ dnl needs to know what name is stored there:
+ [AC_CONFIG_COMMANDS([libtool],
+ [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
+ dnl If the libtool generation code is destined for config.status,
+ dnl expand the accumulated commands and init code now:
+ [AC_CONFIG_COMMANDS([libtool],
+ [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
+])#_LT_CONFIG_COMMANDS
+
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
+[
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+sed_quote_subst='$sed_quote_subst'
+double_quote_subst='$double_quote_subst'
+delay_variable_subst='$delay_variable_subst'
+_LT_CONFIG_STATUS_DECLARATIONS
+LTCC='$LTCC'
+LTCFLAGS='$LTCFLAGS'
+compiler='$compiler_DEFAULT'
+
+# Quote evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_quote_varnames); do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Double-quote double-evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_dquote_varnames); do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Fix-up fallback echo if it was mangled by the above quoting rules.
+case \$lt_ECHO in
+*'\\\[$]0 --fallback-echo"')dnl "
+ lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
+ ;;
+esac
+
+_LT_OUTPUT_LIBTOOL_INIT
+])
+
+
+# LT_OUTPUT
+# ---------
+# This macro allows early generation of the libtool script (before
+# AC_OUTPUT is called), incase it is used in configure for compilation
+# tests.
+AC_DEFUN([LT_OUTPUT],
+[: ${CONFIG_LT=./config.lt}
+AC_MSG_NOTICE([creating $CONFIG_LT])
+cat >"$CONFIG_LT" <<_LTEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate a libtool stub with the current configuration.
+
+lt_cl_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_LTEOF
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+AS_SHELL_SANITIZE
+_AS_PREPARE
+
+exec AS_MESSAGE_FD>&1
+exec AS_MESSAGE_LOG_FD>>config.log
+{
+ echo
+ AS_BOX([Running $as_me.])
+} >&AS_MESSAGE_LOG_FD
+
+lt_cl_help="\
+\`$as_me' creates a local libtool stub from the current configuration,
+for use in further configure time tests before the real libtool is
+generated.
+
+Usage: $[0] [[OPTIONS]]
+
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -q, --quiet do not print progress messages
+ -d, --debug don't remove temporary files
+
+Report bugs to <bug-libtool@gnu.org>."
+
+lt_cl_version="\
+m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
+configured by $[0], generated by m4_PACKAGE_STRING.
+
+Copyright (C) 2008 Free Software Foundation, Inc.
+This config.lt script is free software; the Free Software Foundation
+gives unlimited permision to copy, distribute and modify it."
+
+while test $[#] != 0
+do
+ case $[1] in
+ --version | --v* | -V )
+ echo "$lt_cl_version"; exit 0 ;;
+ --help | --h* | -h )
+ echo "$lt_cl_help"; exit 0 ;;
+ --debug | --d* | -d )
+ debug=: ;;
+ --quiet | --q* | --silent | --s* | -q )
+ lt_cl_silent=: ;;
+
+ -*) AC_MSG_ERROR([unrecognized option: $[1]
+Try \`$[0] --help' for more information.]) ;;
+
+ *) AC_MSG_ERROR([unrecognized argument: $[1]
+Try \`$[0] --help' for more information.]) ;;
+ esac
+ shift
+done
+
+if $lt_cl_silent; then
+ exec AS_MESSAGE_FD>/dev/null
+fi
+_LTEOF
+
+cat >>"$CONFIG_LT" <<_LTEOF
+_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
+_LTEOF
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+AC_MSG_NOTICE([creating $ofile])
+_LT_OUTPUT_LIBTOOL_COMMANDS
+AS_EXIT(0)
+_LTEOF
+chmod +x "$CONFIG_LT"
+
+# configure is writing to config.log, but config.lt does its own redirection,
+# appending to config.log, which fails on DOS, as config.log is still kept
+# open by configure. Here we exec the FD to /dev/null, effectively closing
+# config.log, so it can be properly (re)opened and appended to by config.lt.
+if test "$no_create" != yes; then
+ lt_cl_success=:
+ test "$silent" = yes &&
+ lt_config_lt_args="$lt_config_lt_args --quiet"
+ exec AS_MESSAGE_LOG_FD>/dev/null
+ $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
+ exec AS_MESSAGE_LOG_FD>>config.log
+ $lt_cl_success || AS_EXIT(1)
+fi
+])# LT_OUTPUT
+
+
+# _LT_CONFIG(TAG)
+# ---------------
+# If TAG is the built-in tag, create an initial libtool script with a
+# default configuration from the untagged config vars. Otherwise add code
+# to config.status for appending the configuration named by TAG from the
+# matching tagged config vars.
+m4_defun([_LT_CONFIG],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_CONFIG_SAVE_COMMANDS([
+ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
+ m4_if(_LT_TAG, [C], [
+ # See if we are running on zsh, and set the options which allow our
+ # commands through without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+ fi
+
+ cfgfile="${ofile}T"
+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+ $RM "$cfgfile"
+
+ cat <<_LT_EOF >> "$cfgfile"
+#! $SHELL
+
+# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+_LT_COPYING
+_LT_LIBTOOL_TAGS
+
+# ### BEGIN LIBTOOL CONFIG
+_LT_LIBTOOL_CONFIG_VARS
+_LT_LIBTOOL_TAG_VARS
+# ### END LIBTOOL CONFIG
+
+_LT_EOF
+
+ case $host_os in
+ aix3*)
+ cat <<\_LT_EOF >> "$cfgfile"
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+_LT_EOF
+ ;;
+ esac
+
+ _LT_PROG_LTMAIN
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ _LT_PROG_XSI_SHELLFNS
+
+ sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+],
+[cat <<_LT_EOF >> "$ofile"
+
+dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
+dnl in a comment (ie after a #).
+# ### BEGIN LIBTOOL TAG CONFIG: $1
+_LT_LIBTOOL_TAG_VARS(_LT_TAG)
+# ### END LIBTOOL TAG CONFIG: $1
+_LT_EOF
+])dnl /m4_if
+],
+[m4_if([$1], [], [
+ PACKAGE='$PACKAGE'
+ VERSION='$VERSION'
+ TIMESTAMP='$TIMESTAMP'
+ RM='$RM'
+ ofile='$ofile'], [])
+])dnl /_LT_CONFIG_SAVE_COMMANDS
+])# _LT_CONFIG
+
+
+# LT_SUPPORTED_TAG(TAG)
+# ---------------------
+# Trace this macro to discover what tags are supported by the libtool
+# --tag option, using:
+# autoconf --trace 'LT_SUPPORTED_TAG:$1'
+AC_DEFUN([LT_SUPPORTED_TAG], [])
+
+
+# C support is built-in for now
+m4_define([_LT_LANG_C_enabled], [])
+m4_define([_LT_TAGS], [])
+
+
+# LT_LANG(LANG)
+# -------------
+# Enable libtool support for the given language if not already enabled.
+AC_DEFUN([LT_LANG],
+[AC_BEFORE([$0], [LT_OUTPUT])dnl
+m4_case([$1],
+ [C], [_LT_LANG(C)],
+ [C++], [_LT_LANG(CXX)],
+ [Java], [_LT_LANG(GCJ)],
+ [Fortran 77], [_LT_LANG(F77)],
+ [Fortran], [_LT_LANG(FC)],
+ [Windows Resource], [_LT_LANG(RC)],
+ [m4_ifdef([_LT_LANG_]$1[_CONFIG],
+ [_LT_LANG($1)],
+ [m4_fatal([$0: unsupported language: "$1"])])])dnl
+])# LT_LANG
+
+
+# _LT_LANG(LANGNAME)
+# ------------------
+m4_defun([_LT_LANG],
+[m4_ifdef([_LT_LANG_]$1[_enabled], [],
+ [LT_SUPPORTED_TAG([$1])dnl
+ m4_append([_LT_TAGS], [$1 ])dnl
+ m4_define([_LT_LANG_]$1[_enabled], [])dnl
+ _LT_LANG_$1_CONFIG($1)])dnl
+])# _LT_LANG
+
+
+# _LT_LANG_DEFAULT_CONFIG
+# -----------------------
+m4_defun([_LT_LANG_DEFAULT_CONFIG],
+[AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [LT_LANG(CXX)],
+ [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_F77],
+ [LT_LANG(F77)],
+ [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_FC],
+ [LT_LANG(FC)],
+ [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
+
+dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
+dnl pulling things in needlessly.
+AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [m4_ifdef([AC_PROG_GCJ],
+ [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([A][M_PROG_GCJ],
+ [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([LT_PROG_GCJ],
+ [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
+
+AC_PROVIDE_IFELSE([LT_PROG_RC],
+ [LT_LANG(RC)],
+ [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
+])# _LT_LANG_DEFAULT_CONFIG
+
+# Obsolete macros:
+AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
+AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
+AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
+AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
+dnl AC_DEFUN([AC_LIBTOOL_F77], [])
+dnl AC_DEFUN([AC_LIBTOOL_FC], [])
+dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
+
+
+# _LT_TAG_COMPILER
+# ----------------
+m4_defun([_LT_TAG_COMPILER],
+[AC_REQUIRE([AC_PROG_CC])dnl
+
+_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
+_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
+_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
+_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+])# _LT_TAG_COMPILER
+
+
+# _LT_COMPILER_BOILERPLATE
+# ------------------------
+# Check for compiler boilerplate output or warnings with
+# the simple compiler test code.
+m4_defun([_LT_COMPILER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_compiler_boilerplate=`cat conftest.err`
+$RM conftest*
+])# _LT_COMPILER_BOILERPLATE
+
+
+# _LT_LINKER_BOILERPLATE
+# ----------------------
+# Check for linker boilerplate output or warnings with
+# the simple link test code.
+m4_defun([_LT_LINKER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_linker_boilerplate=`cat conftest.err`
+$RM -r conftest*
+])# _LT_LINKER_BOILERPLATE
+
+# _LT_REQUIRED_DARWIN_CHECKS
+# -------------------------
+m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+ case $host_os in
+ rhapsody* | darwin*)
+ AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+ AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+ AC_CHECK_TOOL([LIPO], [lipo], [:])
+ AC_CHECK_TOOL([OTOOL], [otool], [:])
+ AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+ _LT_DECL([], [DSYMUTIL], [1],
+ [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+ _LT_DECL([], [NMEDIT], [1],
+ [Tool to change global to local symbols on Mac OS X])
+ _LT_DECL([], [LIPO], [1],
+ [Tool to manipulate fat objects and archives on Mac OS X])
+ _LT_DECL([], [OTOOL], [1],
+ [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+ _LT_DECL([], [OTOOL64], [1],
+ [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+
+ AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+ [lt_cv_apple_cc_single_mod=no
+ if test -z "${LT_MULTI_MODULE}"; then
+ # By default we will add the -single_module flag. You can override
+ # by either setting the environment variable LT_MULTI_MODULE
+ # non-empty at configure time, or by adding -multi_module to the
+ # link flags.
+ rm -rf libconftest.dylib*
+ echo "int foo(void){return 1;}" > conftest.c
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+ _lt_result=$?
+ if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+ lt_cv_apple_cc_single_mod=yes
+ else
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ fi
+ rm -rf libconftest.dylib*
+ rm -f conftest.*
+ fi])
+ AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+ [lt_cv_ld_exported_symbols_list],
+ [lt_cv_ld_exported_symbols_list=no
+ save_LDFLAGS=$LDFLAGS
+ echo "_main" > conftest.sym
+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [lt_cv_ld_exported_symbols_list=yes],
+ [lt_cv_ld_exported_symbols_list=no])
+ LDFLAGS="$save_LDFLAGS"
+ ])
+ case $host_os in
+ rhapsody* | darwin1.[[012]])
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+ darwin1.*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ darwin*) # darwin 5.x on
+ # if running on 10.5 or later, the deployment target defaults
+ # to the OS version, if on x86, and 10.4, the deployment
+ # target defaults to 10.4. Don't you love it?
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ 10.[[012]]*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 10.*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
+ esac
+ if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+ _lt_dar_single_mod='$single_module'
+ fi
+ if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+ _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+ else
+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ if test "$DSYMUTIL" != ":"; then
+ _lt_dsymutil='~$DSYMUTIL $lib || :'
+ else
+ _lt_dsymutil=
+ fi
+ ;;
+ esac
+])
+
+
+# _LT_DARWIN_LINKER_FEATURES
+# --------------------------
+# Checks for linker and compiler features on darwin
+m4_defun([_LT_DARWIN_LINKER_FEATURES],
+[
+ m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+ if test "$GCC" = "yes"; then
+ output_verbose_link_cmd=echo
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+ _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+ _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+ m4_if([$1], [CXX],
+[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+ fi
+],[])
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+])
+
+# _LT_SYS_MODULE_PATH_AIX
+# -----------------------
+# Links a minimal program and checks the executable
+# for the system default hardcoded library path. In most cases,
+# this is /usr/lib:/lib, but when the MPI compilers are used
+# the location of the communication and MPI libs are included too.
+# If we don't find anything, use the default library path according
+# to the aix ld manual.
+m4_defun([_LT_SYS_MODULE_PATH_AIX],
+[m4_require([_LT_DECL_SED])dnl
+AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi],[])
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+])# _LT_SYS_MODULE_PATH_AIX
+
+
+# _LT_SHELL_INIT(ARG)
+# -------------------
+m4_define([_LT_SHELL_INIT],
+[ifdef([AC_DIVERSION_NOTICE],
+ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+ [AC_DIVERT_PUSH(NOTICE)])
+$1
+AC_DIVERT_POP
+])# _LT_SHELL_INIT
+
+
+# _LT_PROG_ECHO_BACKSLASH
+# -----------------------
+# Add some code to the start of the generated configure script which
+# will find an echo command which doesn't interpret backslashes.
+m4_defun([_LT_PROG_ECHO_BACKSLASH],
+[_LT_SHELL_INIT([
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$lt_ECHO in
+X*--fallback-echo)
+ # Remove one level of quotation (which was required for Make).
+ ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+ ;;
+esac
+
+ECHO=${lt_ECHO-echo}
+if test "X[$]1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X[$]1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell.
+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+fi
+
+if test "X[$]1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<_LT_EOF
+[$]*
+_LT_EOF
+ exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test -z "$lt_ECHO"; then
+ if test "X${echo_test_string+set}" != Xset; then
+ # find a string as large as possible, as long as the shell can cope with it
+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+ if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+ { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+ then
+ break
+ fi
+ done
+ fi
+
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ :
+ else
+ # The Solaris, AIX, and Digital Unix default echo programs unquote
+ # backslashes. This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ #
+ # So, first we look for a working echo in the user's PATH.
+
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for dir in $PATH /usr/ucb; do
+ IFS="$lt_save_ifs"
+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$dir/echo"
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ if test "X$ECHO" = Xecho; then
+ # We didn't find a better echo, so look for alternatives.
+ if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # This shell has a builtin print -r that does the trick.
+ ECHO='print -r'
+ elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+ test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running configure again with it.
+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ export ORIGINAL_CONFIG_SHELL
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+ else
+ # Try using printf.
+ ECHO='printf %s\n'
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # Cool, printf works
+ :
+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+ export CONFIG_SHELL
+ SHELL="$CONFIG_SHELL"
+ export SHELL
+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+ else
+ # maybe with a smaller string...
+ prev=:
+
+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+ if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+ then
+ break
+ fi
+ prev="$cmd"
+ done
+
+ if test "$prev" != 'sed 50q "[$]0"'; then
+ echo_test_string=`eval $prev`
+ export echo_test_string
+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+ else
+ # Oops. We lost completely, so just stick with echo.
+ ECHO=echo
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+lt_ECHO=$ECHO
+if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+ lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+fi
+
+AC_SUBST(lt_ECHO)
+])
+_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
+_LT_DECL([], [ECHO], [1],
+ [An echo program that does not interpret backslashes])
+])# _LT_PROG_ECHO_BACKSLASH
+
+
+# _LT_ENABLE_LOCK
+# ---------------
+m4_defun([_LT_ENABLE_LOCK],
+[AC_ARG_ENABLE([libtool-lock],
+ [AS_HELP_STRING([--disable-libtool-lock],
+ [avoid locking (might break parallel builds)])])
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE="32"
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE="64"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out which ABI we are using.
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *32-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_i386_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ ppc64-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_x86_64_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ ppc*-*linux*|powerpc*-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+ [AC_LANG_PUSH(C)
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+ AC_LANG_POP])
+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS="$SAVE_CFLAGS"
+ fi
+ ;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *)
+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+ LD="${LD-ld} -64"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+esac
+
+need_locks="$enable_libtool_lock"
+])# _LT_ENABLE_LOCK
+
+
+# _LT_CMD_OLD_ARCHIVE
+# -------------------
+m4_defun([_LT_CMD_OLD_ARCHIVE],
+[AC_CHECK_TOOL(AR, ar, false)
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+_LT_DECL([], [AR], [1], [The archiver])
+_LT_DECL([], [AR_FLAGS], [1])
+
+AC_CHECK_TOOL(STRIP, strip, :)
+test -z "$STRIP" && STRIP=:
+_LT_DECL([], [STRIP], [1], [A symbol stripping program])
+
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+test -z "$RANLIB" && RANLIB=:
+_LT_DECL([], [RANLIB], [1],
+ [Commands used to install an old-style archive])
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ openbsd*)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+ ;;
+ *)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+_LT_DECL([], [old_postinstall_cmds], [2])
+_LT_DECL([], [old_postuninstall_cmds], [2])
+_LT_TAGDECL([], [old_archive_cmds], [2],
+ [Commands used to build an old-style archive])
+])# _LT_CMD_OLD_ARCHIVE
+
+
+# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------------------
+# Check whether the given compiler option works
+AC_DEFUN([_LT_COMPILER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$3"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ fi
+ $RM conftest*
+])
+
+if test x"[$]$2" = xyes; then
+ m4_if([$5], , :, [$5])
+else
+ m4_if([$6], , :, [$6])
+fi
+])# _LT_COMPILER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
+
+
+# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------
+# Check whether the given linker option works
+AC_DEFUN([_LT_LINKER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $3"
+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The linker can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&AS_MESSAGE_LOG_FD
+ $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ else
+ $2=yes
+ fi
+ fi
+ $RM -r conftest*
+ LDFLAGS="$save_LDFLAGS"
+])
+
+if test x"[$]$2" = xyes; then
+ m4_if([$4], , :, [$4])
+else
+ m4_if([$5], , :, [$5])
+fi
+])# _LT_LINKER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
+
+
+# LT_CMD_MAX_LEN
+#---------------
+AC_DEFUN([LT_CMD_MAX_LEN],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+# find the maximum length of command line arguments
+AC_MSG_CHECKING([the maximum length of command line arguments])
+AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+ i=0
+ teststring="ABCD"
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ amigaos*)
+ # On AmigaOS with pdksh, this test takes hours, literally.
+ # So we just punt and use a minimum line length of 8192.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ ;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
+ osf*)
+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+ # nice to cause kernel panics so lets avoid the loop below.
+ # First set a reasonable default.
+ lt_cv_sys_max_cmd_len=16384
+ #
+ if test -x /sbin/sysconfig; then
+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
+ esac
+ fi
+ ;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
+ *)
+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+ if test -n "$lt_cv_sys_max_cmd_len"; then
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ else
+ # Make teststring a little bigger before we do anything with it.
+ # a 1K string should be a reasonable start.
+ for i in 1 2 3 4 5 6 7 8 ; do
+ teststring=$teststring$teststring
+ done
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+ = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ teststring=$teststring$teststring
+ done
+ # Only check the string length outside the loop.
+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+ teststring=
+ # Add a significant safety factor because C++ compilers can tack on
+ # massive amounts of additional arguments before passing them to the
+ # linker. It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ fi
+ ;;
+ esac
+])
+if test -n $lt_cv_sys_max_cmd_len ; then
+ AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+else
+ AC_MSG_RESULT(none)
+fi
+max_cmd_len=$lt_cv_sys_max_cmd_len
+_LT_DECL([], [max_cmd_len], [0],
+ [What is the maximum length of a command?])
+])# LT_CMD_MAX_LEN
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
+
+
+# _LT_HEADER_DLFCN
+# ----------------
+m4_defun([_LT_HEADER_DLFCN],
+[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
+])# _LT_HEADER_DLFCN
+
+
+# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+# ----------------------------------------------------------------
+m4_defun([_LT_TRY_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test "$cross_compiling" = yes; then :
+ [$4]
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+[#line __oline__ "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ exit (status);
+}]
+_LT_EOF
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) $1 ;;
+ x$lt_dlneed_uscore) $2 ;;
+ x$lt_dlunknown|x*) $3 ;;
+ esac
+ else :
+ # compilation failed
+ $3
+ fi
+fi
+rm -fr conftest*
+])# _LT_TRY_DLOPEN_SELF
+
+
+# LT_SYS_DLOPEN_SELF
+# ------------------
+AC_DEFUN([LT_SYS_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test "x$enable_dlopen" != xyes; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen="load_add_on"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32*)
+ lt_cv_dlopen="LoadLibrary"
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen="dlopen"
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
+ lt_cv_dlopen="dyld"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ])
+ ;;
+
+ *)
+ AC_CHECK_FUNC([shl_load],
+ [lt_cv_dlopen="shl_load"],
+ [AC_CHECK_LIB([dld], [shl_load],
+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+ [AC_CHECK_FUNC([dlopen],
+ [lt_cv_dlopen="dlopen"],
+ [AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+ [AC_CHECK_LIB([svld], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+ [AC_CHECK_LIB([dld], [dld_link],
+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+ ])
+ ])
+ ])
+ ])
+ ])
+ ;;
+ esac
+
+ if test "x$lt_cv_dlopen" != xno; then
+ enable_dlopen=yes
+ else
+ enable_dlopen=no
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS="$CPPFLAGS"
+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS="$LDFLAGS"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS="$LIBS"
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ AC_CACHE_CHECK([whether a program can dlopen itself],
+ lt_cv_dlopen_self, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+ ])
+
+ if test "x$lt_cv_dlopen_self" = xyes; then
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+ lt_cv_dlopen_self_static, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
+ ])
+ fi
+
+ CPPFLAGS="$save_CPPFLAGS"
+ LDFLAGS="$save_LDFLAGS"
+ LIBS="$save_LIBS"
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+_LT_DECL([dlopen_support], [enable_dlopen], [0],
+ [Whether dlopen is supported])
+_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
+ [Whether dlopen of programs is supported])
+_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
+ [Whether dlopen of statically linked programs is supported])
+])# LT_SYS_DLOPEN_SELF
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
+
+
+# _LT_COMPILER_C_O([TAGNAME])
+# ---------------------------
+# Check to see if options -c and -o are simultaneously supported by compiler.
+# This macro does not hard code the compiler like AC_PROG_CC_C_O.
+m4_defun([_LT_COMPILER_C_O],
+[m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+ fi
+ fi
+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+])
+_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
+ [Does compiler simultaneously support -c and -o options?])
+])# _LT_COMPILER_C_O
+
+
+# _LT_COMPILER_FILE_LOCKS([TAGNAME])
+# ----------------------------------
+# Check to see if we can do hard links to lock some files if needed
+m4_defun([_LT_COMPILER_FILE_LOCKS],
+[m4_require([_LT_ENABLE_LOCK])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_COMPILER_C_O([$1])
+
+hard_links="nottested"
+if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+ # do not overwrite the value of need_locks provided by the user
+ AC_MSG_CHECKING([if we can lock with hard links])
+ hard_links=yes
+ $RM conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ AC_MSG_RESULT([$hard_links])
+ if test "$hard_links" = no; then
+ AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
+])# _LT_COMPILER_FILE_LOCKS
+
+
+# _LT_CHECK_OBJDIR
+# ----------------
+m4_defun([_LT_CHECK_OBJDIR],
+[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+[rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null])
+objdir=$lt_cv_objdir
+_LT_DECL([], [objdir], [0],
+ [The name of the directory that contains temporary libtool files])dnl
+m4_pattern_allow([LT_OBJDIR])dnl
+AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
+ [Define to the sub-directory in which libtool stores uninstalled libraries.])
+])# _LT_CHECK_OBJDIR
+
+
+# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
+# --------------------------------------
+# Check hardcoding attributes.
+m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
+[AC_MSG_CHECKING([how to hardcode library paths into programs])
+_LT_TAGVAR(hardcode_action, $1)=
+if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
+ test -n "$_LT_TAGVAR(runpath_var, $1)" ||
+ test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+
+ # We can hardcode non-existent directories.
+ if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
+ test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+ # Linking always hardcodes the temporary library directory.
+ _LT_TAGVAR(hardcode_action, $1)=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ _LT_TAGVAR(hardcode_action, $1)=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ _LT_TAGVAR(hardcode_action, $1)=unsupported
+fi
+AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
+
+if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
+ test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+ test "$enable_shared" = no; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+_LT_TAGDECL([], [hardcode_action], [0],
+ [How to hardcode a shared library path into an executable])
+])# _LT_LINKER_HARDCODE_LIBPATH
+
+
+# _LT_CMD_STRIPLIB
+# ----------------
+m4_defun([_LT_CMD_STRIPLIB],
+[m4_require([_LT_DECL_EGREP])
+striplib=
+old_striplib=
+AC_MSG_CHECKING([whether stripping libraries is possible])
+if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+ AC_MSG_RESULT([yes])
+else
+# FIXME - insert some real tests, host_os isn't really good enough
+ case $host_os in
+ darwin*)
+ if test -n "$STRIP" ; then
+ striplib="$STRIP -x"
+ old_striplib="$STRIP -S"
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ fi
+ ;;
+ *)
+ AC_MSG_RESULT([no])
+ ;;
+ esac
+fi
+_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
+_LT_DECL([], [striplib], [1])
+])# _LT_CMD_STRIPLIB
+
+
+# _LT_SYS_DYNAMIC_LINKER([TAG])
+# -----------------------------
+# PORTME Fill in your ld.so characteristics
+m4_defun([_LT_SYS_DYNAMIC_LINKER],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_MSG_CHECKING([dynamic linker characteristics])
+m4_if([$1],
+ [], [
+if test "$GCC" = yes; then
+ case $host_os in
+ darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+ *) lt_awk_arg="/^libraries:/" ;;
+ esac
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+ # if the path contains ";" then we assume it to be the separator
+ # otherwise default to the standard path separator (i.e. ":") - it is
+ # assumed that no part of a normal pathname contains ";" but that should
+ # okay in the real world where ";" in dirpaths is itself problematic.
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ # Ok, now we have the path, separated by spaces, we can step through it
+ # and add multilib dir if necessary.
+ lt_tmp_lt_search_path_spec=
+ lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+ for lt_sys_path in $lt_search_path_spec; do
+ if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+ else
+ test -d "$lt_sys_path" && \
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+ fi
+ done
+ lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+ lt_foo="";
+ lt_count=0;
+ for (lt_i = NF; lt_i > 0; lt_i--) {
+ if ($lt_i != "" && $lt_i != ".") {
+ if ($lt_i == "..") {
+ lt_count++;
+ } else {
+ if (lt_count == 0) {
+ lt_foo="/" $lt_i lt_foo;
+ } else {
+ lt_count--;
+ }
+ }
+ }
+ }
+ if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+ if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+}'`
+ sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+else
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+fi])
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext_cmds=".so"
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+case $host_os in
+aix3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+
+aix[[4-9]]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test "$host_cpu" = ia64; then
+ # AIX 5 supports IA64
+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[[01]] | aix4.[[01]].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ if test "$aix_use_runtimelinking" = yes; then
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ else
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='${libname}${release}.a $libname.a'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ fi
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ case $host_cpu in
+ powerpc)
+ # Since July 2007 AmigaOS4 officially supports .so libraries.
+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ ;;
+ m68k)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+ ;;
+ esac
+ ;;
+
+beos*)
+ library_names_spec='${libname}${shared_ext}'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi[[45]]*)
+ version_type=linux
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32*)
+ version_type=windows
+ shrext_cmds=".dll"
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$host_os in
+ yes,cygwin* | yes,mingw* | yes,pw32*)
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+ ;;
+ mingw*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
+ # It is most probably a Windows format PATH printed by
+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
+ # path with ; separators, and with drive letters. We can handle the
+ # drive letters (cygwin fileutils understands them), so leave them,
+ # especially as we might pass files found there to a mingw objdump,
+ # which wouldn't understand a cygwinified path. Ahh.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
+ ;;
+
+ *)
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ soname_spec='${libname}${release}${major}$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+m4_if([$1], [],[
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd1*)
+ dynamic_linker=no
+ ;;
+
+freebsd* | dragonfly*)
+ # DragonFly does not have aout. When/if they implement a new
+ # versioning mechanism, adjust this.
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[[123]]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[[01]]* | freebsdelf3.[[01]]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ *) # from 4.6 on, and DragonFly
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case $host_cpu in
+ ia64*)
+ shrext_cmds='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ if test "X$HPUX_IA64_MODE" = X32; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ hppa*64*)
+ shrext_cmds='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext_cmds='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
+ postinstall_cmds='chmod 555 $lib'
+ ;;
+
+interix[[3-9]]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ version_type=linux
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # Some binutils ld are patched to set DT_RUNPATH
+ save_LDFLAGS=$LDFLAGS
+ save_libdir=$libdir
+ eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
+ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
+ [shlibpath_overrides_runpath=yes])])
+ LDFLAGS=$save_LDFLAGS
+ libdir=$save_libdir
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # Append ld.so.conf contents to the search path
+ if test -f /etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ fi
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+*nto* | *qnx*)
+ version_type=qnx
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='ldqnx.so'
+ ;;
+
+openbsd*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
+ need_lib_prefix=no
+ # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+ case $host_os in
+ openbsd3.3 | openbsd3.3.*) need_version=yes ;;
+ *) need_version=no ;;
+ esac
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ case $host_os in
+ openbsd2.[[89]] | openbsd2.[[89]].*)
+ shlibpath_overrides_runpath=no
+ ;;
+ *)
+ shlibpath_overrides_runpath=yes
+ ;;
+ esac
+ else
+ shlibpath_overrides_runpath=yes
+ fi
+ ;;
+
+os2*)
+ libname_spec='$name'
+ shrext_cmds=".dll"
+ need_lib_prefix=no
+ library_names_spec='$libname${shared_ext} $libname.a'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=LIBPATH
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ ;;
+
+rdos*)
+ dynamic_linker=no
+ ;;
+
+solaris*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test "$with_gnu_ld" = yes; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec ;then
+ version_type=linux
+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+ soname_spec='$libname${shared_ext}.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
+tpf*)
+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_name_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+uts4*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+AC_MSG_RESULT([$dynamic_linker])
+test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+ sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+ sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
+_LT_DECL([], [variables_saved_for_relink], [1],
+ [Variables whose values should be saved in libtool wrapper scripts and
+ restored at link time])
+_LT_DECL([], [need_lib_prefix], [0],
+ [Do we need the "lib" prefix for modules?])
+_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
+_LT_DECL([], [version_type], [0], [Library versioning type])
+_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
+_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
+_LT_DECL([], [shlibpath_overrides_runpath], [0],
+ [Is shlibpath searched before the hard-coded library search path?])
+_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+_LT_DECL([], [library_names_spec], [1],
+ [[List of archive names. First name is the real one, the rest are links.
+ The last name is the one that the linker finds with -lNAME]])
+_LT_DECL([], [soname_spec], [1],
+ [[The coded name of the library, if different from the real name]])
+_LT_DECL([], [postinstall_cmds], [2],
+ [Command to use after installation of a shared archive])
+_LT_DECL([], [postuninstall_cmds], [2],
+ [Command to use after uninstallation of a shared archive])
+_LT_DECL([], [finish_cmds], [2],
+ [Commands used to finish a libtool library installation in a directory])
+_LT_DECL([], [finish_eval], [1],
+ [[As "finish_cmds", except a single script fragment to be evaled but
+ not shown]])
+_LT_DECL([], [hardcode_into_libs], [0],
+ [Whether we should hardcode library paths into libraries])
+_LT_DECL([], [sys_lib_search_path_spec], [2],
+ [Compile-time system search path for libraries])
+_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
+ [Run-time system search path for libraries])
+])# _LT_SYS_DYNAMIC_LINKER
+
+
+# _LT_PATH_TOOL_PREFIX(TOOL)
+# --------------------------
+# find a file program which can recognize shared library
+AC_DEFUN([_LT_PATH_TOOL_PREFIX],
+[m4_require([_LT_DECL_EGREP])dnl
+AC_MSG_CHECKING([for $1])
+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+[case $MAGIC_CMD in
+[[\\/*] | ?:[\\/]*])
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+dnl $ac_dummy forces splitting on constant user-supplied paths.
+dnl POSIX.2 word splitting is done only on the output of word expansions,
+dnl not every word. This closes a longstanding sh security hole.
+ ac_dummy="m4_if([$2], , $PATH, [$2])"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$1; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac])
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ AC_MSG_RESULT($MAGIC_CMD)
+else
+ AC_MSG_RESULT(no)
+fi
+_LT_DECL([], [MAGIC_CMD], [0],
+ [Used to examine libraries when file_magic_cmd begins with "file"])dnl
+])# _LT_PATH_TOOL_PREFIX
+
+# Old name:
+AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
+
+
+# _LT_PATH_MAGIC
+# --------------
+# find a file program which can recognize a shared library
+m4_defun([_LT_PATH_MAGIC],
+[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+ else
+ MAGIC_CMD=:
+ fi
+fi
+])# _LT_PATH_MAGIC
+
+
+# LT_PATH_LD
+# ----------
+# find the pathname to the GNU or non-GNU linker
+AC_DEFUN([LT_PATH_LD],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+
+AC_ARG_WITH([gnu-ld],
+ [AS_HELP_STRING([--with-gnu-ld],
+ [assume the C compiler uses GNU ld @<:@default=no@:>@])],
+ [test "$withval" = no || with_gnu_ld=yes],
+ [with_gnu_ld=no])dnl
+
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ AC_MSG_CHECKING([for ld used by $CC])
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [[\\/]]* | ?:[[\\/]]*)
+ re_direlt='/[[^/]][[^/]]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ AC_MSG_CHECKING([for GNU ld])
+else
+ AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(lt_cv_path_LD,
+[if test -z "$LD"; then
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+else
+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$lt_cv_path_LD"
+if test -n "$LD"; then
+ AC_MSG_RESULT($LD)
+else
+ AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+_LT_PATH_LD_GNU
+AC_SUBST([LD])
+
+_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
+])# LT_PATH_LD
+
+# Old names:
+AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
+AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_LD], [])
+dnl AC_DEFUN([AC_PROG_LD], [])
+
+
+# _LT_PATH_LD_GNU
+#- --------------
+m4_defun([_LT_PATH_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac])
+with_gnu_ld=$lt_cv_prog_gnu_ld
+])# _LT_PATH_LD_GNU
+
+
+# _LT_CMD_RELOAD
+# --------------
+# find reload flag for linker
+# -- PORTME Some linkers may need a different reload flag.
+m4_defun([_LT_CMD_RELOAD],
+[AC_CACHE_CHECK([for $LD option to reload object files],
+ lt_cv_ld_reload_flag,
+ [lt_cv_ld_reload_flag='-r'])
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
+_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
+_LT_DECL([], [reload_cmds], [2])dnl
+])# _LT_CMD_RELOAD
+
+
+# _LT_CHECK_MAGIC_METHOD
+# ----------------------
+# how to check for library dependencies
+# -- PORTME fill in with the dynamic library characteristics
+m4_defun([_LT_CHECK_MAGIC_METHOD],
+[m4_require([_LT_DECL_EGREP])
+AC_CACHE_CHECK([how to recognize dependent libraries],
+lt_cv_deplibs_check_method,
+[lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given extended regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix[[4-9]]*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi[[45]]*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ # func_win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ ;;
+
+mingw* | pw32*)
+ # Base MSYS/MinGW do not provide the 'file' command needed by
+ # func_win32_libid shell function, so use a weaker test based on 'objdump',
+ # unless we find 'file', for example because we are cross-compiling.
+ if ( file / ) >/dev/null 2>&1; then
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+
+darwin* | rhapsody*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | dragonfly*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ case $host_cpu in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+interix[[3-9]]*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+*nto* | *qnx*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+openbsd*)
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+rdos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv4 | sysv4.3*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+tpf*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+])
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+_LT_DECL([], [deplibs_check_method], [1],
+ [Method to check whether dependent libraries are shared objects])
+_LT_DECL([], [file_magic_cmd], [1],
+ [Command to use when deplibs_check_method == "file_magic"])
+])# _LT_CHECK_MAGIC_METHOD
+
+
+# LT_PATH_NM
+# ----------
+# find the pathname to a BSD- or MS-compatible name lister
+AC_DEFUN([LT_PATH_NM],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
+[if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM="$NM"
+else
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+ done
+ : ${lt_cv_path_NM=no}
+fi])
+if test "$lt_cv_path_NM" != "no"; then
+ NM="$lt_cv_path_NM"
+else
+ # Didn't find any BSD compatible name lister, look for dumpbin.
+ AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
+ AC_SUBST([DUMPBIN])
+ if test "$DUMPBIN" != ":"; then
+ NM="$DUMPBIN"
+ fi
+fi
+test -z "$NM" && NM=nm
+AC_SUBST([NM])
+_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
+
+AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
+ [lt_cv_nm_interface="BSD nm"
+ echo "int some_variable = 0;" > conftest.$ac_ext
+ (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$ac_compile" 2>conftest.err)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
+ cat conftest.out >&AS_MESSAGE_LOG_FD
+ if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+ lt_cv_nm_interface="MS dumpbin"
+ fi
+ rm -f conftest*])
+])# LT_PATH_NM
+
+# Old names:
+AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
+AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_NM], [])
+dnl AC_DEFUN([AC_PROG_NM], [])
+
+
+# LT_LIB_M
+# --------
+# check for math library
+AC_DEFUN([LT_LIB_M],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+LIBM=
+case $host in
+*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+ # These system don't have libm, or don't need it
+ ;;
+*-ncr-sysv4.3*)
+ AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+ AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+ ;;
+*)
+ AC_CHECK_LIB(m, cos, LIBM="-lm")
+ ;;
+esac
+AC_SUBST([LIBM])
+])# LT_LIB_M
+
+# Old name:
+AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_CHECK_LIBM], [])
+
+
+# _LT_COMPILER_NO_RTTI([TAGNAME])
+# -------------------------------
+m4_defun([_LT_COMPILER_NO_RTTI],
+[m4_require([_LT_TAG_COMPILER])dnl
+
+_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+
+if test "$GCC" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+
+ _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+ lt_cv_prog_compiler_rtti_exceptions,
+ [-fno-rtti -fno-exceptions], [],
+ [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+fi
+_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
+ [Compiler flag to turn off builtin functions])
+])# _LT_COMPILER_NO_RTTI
+
+
+# _LT_CMD_GLOBAL_SYMBOLS
+# ----------------------
+m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+[
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[[BCDEGRST]]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[[BCDT]]'
+ ;;
+cygwin* | mingw* | pw32*)
+ symcode='[[ABCDGISTW]]'
+ ;;
+hpux*)
+ if test "$host_cpu" = ia64; then
+ symcode='[[ABCDEGRST]]'
+ fi
+ ;;
+irix* | nonstopux*)
+ symcode='[[BCDEGRST]]'
+ ;;
+osf*)
+ symcode='[[BCDEGQRST]]'
+ ;;
+solaris*)
+ symcode='[[BDRT]]'
+ ;;
+sco3.2v5*)
+ symcode='[[DT]]'
+ ;;
+sysv4.2uw2*)
+ symcode='[[DT]]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[[ABDT]]'
+ ;;
+sysv4)
+ symcode='[[DFNSTU]]'
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[[ABCDGIRSTW]]' ;;
+esac
+
+# Transform an extracted symbol line into a proper C declaration.
+# Some systems (esp. on ia64) link data and code symbols differently,
+# so use this general approach.
+lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# Try without a prefix underscore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+ symxfrm="\\1 $ac_symprfx\\2 \\2"
+
+ # Write the raw and C identifiers.
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Fake it for dumpbin and say T for any non-static function
+ # and D for any global variable.
+ # Also find C++ and __fastcall symbols from MSVC++,
+ # which start with @ or ?.
+ lt_cv_sys_global_symbol_pipe="$AWK ['"\
+" {last_section=section; section=\$ 3};"\
+" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+" \$ 0!~/External *\|/{next};"\
+" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+" {if(hide[section]) next};"\
+" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+" s[1]~/^[@?]/{print s[1], s[1]; next};"\
+" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+" ' prfx=^$ac_symprfx]"
+ else
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<_LT_EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(void);
+void nm_test_func(void){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+_LT_EOF
+
+ if AC_TRY_EVAL(ac_compile); then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_LT_EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+/* The mapping between symbol names and symbols. */
+const struct {
+ const char *name;
+ void *address;
+}
+lt__PROGRAM__LTX_preloaded_symbols[[]] =
+{
+ { "@PROGRAM@", (void *) 0 },
+_LT_EOF
+ $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+ cat <<\_LT_EOF >> conftest.$ac_ext
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt__PROGRAM__LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+_LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_save_LIBS="$LIBS"
+ lt_save_CFLAGS="$CFLAGS"
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+ LIBS="$lt_save_LIBS"
+ CFLAGS="$lt_save_CFLAGS"
+ else
+ echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+ cat conftest.$ac_ext >&5
+ fi
+ rm -rf conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test "$pipe_works" = yes; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+])
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ AC_MSG_RESULT(failed)
+else
+ AC_MSG_RESULT(ok)
+fi
+
+_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
+ [Take the output of nm and produce a listing of raw symbols and C names])
+_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
+ [Transform the output of nm in a proper C declaration])
+_LT_DECL([global_symbol_to_c_name_address],
+ [lt_cv_sys_global_symbol_to_c_name_address], [1],
+ [Transform the output of nm in a C name address pair])
+_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+ [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+ [Transform the output of nm in a C name address pair when lib prefix is needed])
+]) # _LT_CMD_GLOBAL_SYMBOLS
+
+
+# _LT_COMPILER_PIC([TAGNAME])
+# ---------------------------
+m4_defun([_LT_COMPILER_PIC],
+[m4_require([_LT_TAG_COMPILER])dnl
+_LT_TAGVAR(lt_prog_compiler_wl, $1)=
+_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+_LT_TAGVAR(lt_prog_compiler_static, $1)=
+
+AC_MSG_CHECKING([for $compiler option to produce PIC])
+m4_if([$1], [CXX], [
+ # C++ specific cases for pic, static, wl, etc.
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+ mingw* | cygwin* | os2* | pw32*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+ *djgpp*)
+ # DJGPP does not support shared libraries at all
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+ hpux*)
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ case $host_os in
+ aix[[4-9]]*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+ chorus*)
+ case $cc_basename in
+ cxch68*)
+ # Green Hills C++ Compiler
+ # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+ ;;
+ esac
+ ;;
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ freebsd* | dragonfly*)
+ # FreeBSD uses GNU C++
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ if test "$host_cpu" != ia64; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ fi
+ ;;
+ aCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ interix*)
+ # This is c89, which is MS Visual C++ (no shared libs)
+ # Anyone wants to do a port?
+ ;;
+ irix5* | irix6* | nonstopux*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ # CC pic flag -KPIC is the default.
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ KCC*)
+ # KAI C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ icpc* | ecpc* )
+ # Intel C++
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ cxx*)
+ # Compaq C++
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xlc* | xlC*)
+ # IBM XL 8.0 on PPC
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ lynxos*)
+ ;;
+ m88k*)
+ ;;
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ netbsd*)
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ cxx*)
+ # Digital/Compaq C++
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ psos*)
+ ;;
+ solaris*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ lcc*)
+ # Lucid
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
+ ;;
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ vxworks*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+],
+[
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | cygwin* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+
+ hpux*)
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ enable_shared=no
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ mingw* | cygwin* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC (with -KPIC) is the default.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ icc* | ecc* | ifort*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ ccc*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All Alpha code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xl*)
+ # IBM XL C 8.0/Fortran 10.1 on PPC
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ ;;
+ *Sun\ F*)
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ osf3* | osf4* | osf5*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All OSF/1 code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ rdos*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ case $cc_basename in
+ f77* | f90* | f95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec ;then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ unicos*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+])
+case $host_os in
+ # For platforms which do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
+ ;;
+esac
+AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
+_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
+ [How to pass a linker flag through the compiler])
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+ _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
+ [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
+ [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
+ "" | " "*) ;;
+ *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+ esac],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+fi
+_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
+ [Additional compiler flags for building library objects])
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
+_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+ _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
+ $lt_tmp_static_flag,
+ [],
+ [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
+_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+ [Compiler flag to prevent dynamic linking])
+])# _LT_COMPILER_PIC
+
+
+# _LT_LINKER_SHLIBS([TAGNAME])
+# ----------------------------
+# See if the linker supports building shared libraries.
+m4_defun([_LT_LINKER_SHLIBS],
+[AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+m4_if([$1], [CXX], [
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ case $host_os in
+ aix[[4-9]]*)
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ ;;
+ pw32*)
+ _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+ ;;
+ cygwin* | mingw*)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ *)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ esac
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+], [
+ runpath_var=
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(archive_cmds, $1)=
+ _LT_TAGVAR(archive_expsym_cmds, $1)=
+ _LT_TAGVAR(compiler_needs_object, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(hardcode_automatic, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ _LT_TAGVAR(hardcode_minus_L, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_TAGVAR(inherit_rpath, $1)=no
+ _LT_TAGVAR(link_all_deplibs, $1)=unknown
+ _LT_TAGVAR(module_cmds, $1)=
+ _LT_TAGVAR(module_expsym_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+ _LT_TAGVAR(thread_safe_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ _LT_TAGVAR(include_expsyms, $1)=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ` (' and `)$', so one must not match beginning or
+ # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+ # as well as any symbol that contains `d'.
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
+ extract_expsyms_cmds=
+
+ 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
+
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ if test "$with_gnu_ld" = yes; then
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='${wl}'
+
+ # 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.
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ supports_anon_versioning=no
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix[[3-9]]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+_LT_EOF
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
+ gnu* | linux* | tpf* | k*bsd*-gnu)
+ tmp_diet=no
+ if test "$host_os" = linux-dietlibc; then
+ case $cc_basename in
+ diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
+ esac
+ fi
+ if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+ && test "$tmp_diet" = no
+ then
+ tmp_addflag=
+ tmp_sharedflag='-shared'
+ case $cc_basename,$host_cpu in
+ pgcc*) # Portland Group C compiler
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag -Mnomain' ;;
+ ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
+ tmp_addflag=' -i_dynamic' ;;
+ efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
+ tmp_addflag=' -i_dynamic -nofor_main' ;;
+ ifc* | ifort*) # Intel Fortran compiler
+ tmp_addflag=' -nofor_main' ;;
+ xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
+ tmp_sharedflag='-qmkshrobj'
+ tmp_addflag= ;;
+ esac
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*) # Sun C 5.9
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+ tmp_sharedflag='-G' ;;
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+
+ case $cc_basename in
+ xlf*)
+ # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris*)
+ if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+
+ if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+ runpath_var=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ 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]].*|aix[[5-9]]*)
+ 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
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ ;;
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds its shared libraries.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ bsdi[[45]]*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+ ;;
+
+ 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.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=".dll"
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+ # FIXME: Should let the user specify the lib program.
+ _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
+ _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ ;;
+
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ dgux*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ freebsd1*)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ hpux9*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+
+ hpux10*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ fi
+ ;;
+
+ hpux11*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ fi
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+ AC_LINK_IFELSE(int foo(void) {},
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+ )
+ LDFLAGS="$save_LDFLAGS"
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *nto* | *qnx*)
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ else
+ case $host_os in
+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ os2*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+ ;;
+
+ osf3*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
+ if test "$GCC" = yes; then
+ wlarc='${wl}'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+ wlarc=''
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+ ;;
+ *)
+ wlarc='${wl}'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ ;;
+ esac
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'. GCC discards it without `$wl',
+ # but is careful enough not to reorder.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ fi
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ sunos4*)
+ if test "x$host_vendor" = xsequent; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ ;;
+ motorola)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4.3*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ fi
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ if test x$host_vendor = xsni; then
+ case $host in
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+ ;;
+ esac
+ fi
+ fi
+])
+AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
+
+_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
+_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
+_LT_DECL([], [extract_expsyms_cmds], [2],
+ [The commands to extract the exported symbol list from a shared archive])
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
+x|xyes)
+ # Assume -lc should be added
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+
+ if test "$enable_shared" = yes && test "$GCC" = yes; then
+ case $_LT_TAGVAR(archive_cmds, $1) in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+ $RM conftest*
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
+ pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
+ then
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ else
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ fi
+ _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $RM conftest*
+ AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
+ ;;
+ esac
+ fi
+ ;;
+esac
+
+_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
+ [Whether or not to add -lc for building shared libraries])
+_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
+ [enable_shared_with_static_runtimes], [0],
+ [Whether or not to disallow shared libs when runtime libs are static])
+_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
+ [Compiler flag to allow reflexive dlopens])
+_LT_TAGDECL([], [whole_archive_flag_spec], [1],
+ [Compiler flag to generate shared objects directly from archives])
+_LT_TAGDECL([], [compiler_needs_object], [1],
+ [Whether the compiler copes with passing no objects directly])
+_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
+ [Create an old-style archive from a shared archive])
+_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
+ [Create a temporary old-style archive to link instead of a shared archive])
+_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
+_LT_TAGDECL([], [archive_expsym_cmds], [2])
+_LT_TAGDECL([], [module_cmds], [2],
+ [Commands used to build a loadable module if different from building
+ a shared archive.])
+_LT_TAGDECL([], [module_expsym_cmds], [2])
+_LT_TAGDECL([], [with_gnu_ld], [1],
+ [Whether we are building with GNU ld or not])
+_LT_TAGDECL([], [allow_undefined_flag], [1],
+ [Flag that allows shared libraries with undefined symbols to be built])
+_LT_TAGDECL([], [no_undefined_flag], [1],
+ [Flag that enforces no undefined symbols])
+_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
+ [Flag to hardcode $libdir into a binary during linking.
+ This must work even if $libdir does not exist])
+_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
+ [[If ld is used when linking, flag to hardcode $libdir into a binary
+ during linking. This must work even if $libdir does not exist]])
+_LT_TAGDECL([], [hardcode_libdir_separator], [1],
+ [Whether we need a single "-rpath" flag with a separated argument])
+_LT_TAGDECL([], [hardcode_direct], [0],
+ [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+ DIR into the resulting binary])
+_LT_TAGDECL([], [hardcode_direct_absolute], [0],
+ [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+ DIR into the resulting binary and the resulting library dependency is
+ "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+ library is relocated])
+_LT_TAGDECL([], [hardcode_minus_L], [0],
+ [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
+ [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_automatic], [0],
+ [Set to "yes" if building a shared library automatically hardcodes DIR
+ into the library and all subsequent libraries and executables linked
+ against it])
+_LT_TAGDECL([], [inherit_rpath], [0],
+ [Set to yes if linker adds runtime paths of dependent libraries
+ to runtime path list])
+_LT_TAGDECL([], [link_all_deplibs], [0],
+ [Whether libtool must link a program against all its dependency libraries])
+_LT_TAGDECL([], [fix_srcfile_path], [1],
+ [Fix the shell variable $srcfile for the compiler])
+_LT_TAGDECL([], [always_export_symbols], [0],
+ [Set to "yes" if exported symbols are required])
+_LT_TAGDECL([], [export_symbols_cmds], [2],
+ [The commands to list exported symbols])
+_LT_TAGDECL([], [exclude_expsyms], [1],
+ [Symbols that should not be listed in the preloaded symbols])
+_LT_TAGDECL([], [include_expsyms], [1],
+ [Symbols that must always be exported])
+_LT_TAGDECL([], [prelink_cmds], [2],
+ [Commands necessary for linking programs (against libraries) with templates])
+_LT_TAGDECL([], [file_list_spec], [1],
+ [Specify filename containing input files])
+dnl FIXME: Not yet implemented
+dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
+dnl [Compiler flag to generate thread safe objects])
+])# _LT_LINKER_SHLIBS
+
+
+# _LT_LANG_C_CONFIG([TAG])
+# ------------------------
+# Ensure that the configuration variables for a C compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_C_CONFIG],
+[m4_require([_LT_DECL_EGREP])dnl
+lt_save_CC="$CC"
+AC_LANG_PUSH(C)
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}'
+
+_LT_TAG_COMPILER
+# Save the default compiler, since it gets overwritten when the other
+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+compiler_DEFAULT=$CC
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+ LT_SYS_DLOPEN_SELF
+ _LT_CMD_STRIPLIB
+
+ # Report which library types will actually be built
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_CONFIG($1)
+fi
+AC_LANG_POP
+CC="$lt_save_CC"
+])# _LT_LANG_C_CONFIG
+
+
+# _LT_PROG_CXX
+# ------------
+# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
+# compiler, we have our own version here.
+m4_defun([_LT_PROG_CXX],
+[
+pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
+AC_PROG_CXX
+if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+ ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
+ (test "X$CXX" != "Xg++"))) ; then
+ AC_PROG_CXXCPP
+else
+ _lt_caught_CXX_error=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_CXX
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_CXX], [])
+
+
+# _LT_LANG_CXX_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a C++ compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_CXX_CONFIG],
+[AC_REQUIRE([_LT_PROG_CXX])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+
+AC_LANG_PUSH(C++)
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(compiler_needs_object, $1)=no
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for C++ test sources.
+ac_ext=cpp
+
+# Object file extension for compiled C++ test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the CXX compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_caught_CXX_error" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="int some_variable = 0;"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC=$CC
+ lt_save_LD=$LD
+ lt_save_GCC=$GCC
+ GCC=$GXX
+ lt_save_with_gnu_ld=$with_gnu_ld
+ lt_save_path_LD=$lt_cv_path_LD
+ if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+ lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+ else
+ $as_unset lt_cv_prog_gnu_ld
+ fi
+ if test -n "${lt_cv_path_LDCXX+set}"; then
+ lt_cv_path_LD=$lt_cv_path_LDCXX
+ else
+ $as_unset lt_cv_path_LD
+ fi
+ test -z "${LDCXX+set}" || LD=$LDCXX
+ CC=${CXX-"c++"}
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ # We don't want -fno-exception when compiling C++ code, so set the
+ # no_builtin_flag separately
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+ else
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+ fi
+
+ if test "$GXX" = yes; then
+ # Set up default GNU C++ configuration
+
+ LT_PATH_LD
+
+ # Check if GNU C++ uses GNU ld as the underlying linker, since the
+ # archiving commands below assume that GNU ld is being used.
+ if test "$with_gnu_ld" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+ # investigate it a little bit more. (MM)
+ wlarc='${wl}'
+
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if eval "`$CC -print-prog-name=ld` --help 2>&1" |
+ $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ with_gnu_ld=no
+ wlarc=
+
+ # A generic and very simple default shared library creation
+ # command for GNU C++ for the case where it uses the native
+ # linker, instead of GNU ld. If possible, this setting should
+ # overridden to take advantage of the native linker features on
+ # the platform it is being used on.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ fi
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+
+ else
+ GXX=no
+ with_gnu_ld=no
+ wlarc=
+ fi
+
+ # PORTME: fill in a description of your system's C++ link characteristics
+ AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ case $host_os in
+ aix3*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aix[[4-9]]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ 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]].*|aix[[5-9]]*)
+ for ld_flag in $LDFLAGS; do
+ case $ld_flag in
+ *-brtl*)
+ aix_use_runtimelinking=yes
+ break
+ ;;
+ esac
+ done
+ ;;
+ esac
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+
+ if test "$GXX" = yes; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to
+ # export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an empty
+ # executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds its shared
+ # libraries.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ chorus*)
+ case $cc_basename in
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ freebsd[[12]]*)
+ # C++ shared libraries reported to be fairly broken before
+ # switch to ELF
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ freebsd-elf*)
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ ;;
+
+ freebsd* | dragonfly*)
+ # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+ # conventions
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ gnu*)
+ ;;
+
+ hpux9*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ hpux10*|hpux11*)
+ if test $with_gnu_ld = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ ;;
+ *)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+ esac
+ fi
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+ ;;
+ esac
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test $with_gnu_ld = no; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ fi
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+ irix5* | irix6*)
+ case $cc_basename in
+ CC*)
+ # SGI C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+
+ # Archives containing C++ object files must be created using
+ # "CC -ar", where "CC" is the IRIX C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
+ fi
+ fi
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+ esac
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # Archives containing C++ object files must be created using
+ # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+ ;;
+ icpc* | ecpc* )
+ # Intel C++
+ with_gnu_ld=yes
+ # version 8.0 and above of icpc choke on multiply defined symbols
+ # if we add $predep_objects and $postdep_objects, however 7.1 and
+ # earlier do not add the objects themselves.
+ case `$CC -V 2>&1` in
+ *"Version 7."*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ *) # Version 8.0 or newer
+ tmp_idyn=
+ case $host_cpu in
+ ia64*) tmp_idyn=' -i_dynamic';;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ esac
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ case `$CC -V` in
+ *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
+ _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+ compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
+ _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
+ $RANLIB $oldlib'
+ _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+ ;;
+ *) # Version 6 will use weak symbols
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ ;;
+ cxx*)
+ # Compaq C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ xl*)
+ # IBM XL 8.0 on PPC, with GNU ld
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+
+ # Not sure whether something based on
+ # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+ # would be better.
+ output_verbose_link_cmd='echo'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ lynxos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ m88k*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ fi
+ # Workaround some broken pre-1.5 toolchains
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ ;;
+
+ *nto* | *qnx*)
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ openbsd2*)
+ # C++ shared libraries are fairly broken
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ fi
+ output_verbose_link_cmd=echo
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Archives containing C++ object files must be created using
+ # the KAI C++ compiler.
+ case $host in
+ osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
+ *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
+ esac
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ cxx*)
+ case $host in
+ osf3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ ;;
+ *)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+ echo "-hidden">> $lib.exp~
+ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
+ $RM $lib.exp'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ case $host in
+ osf3*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ psos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ lcc*)
+ # Lucid
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ solaris*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+
+ output_verbose_link_cmd='echo'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+
+ # The C++ compiler must be used to create the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+ ;;
+ *)
+ # GNU C++ compiler with Solaris linker
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+ if $CC --version | $GREP -v '^2\.7' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+ else
+ # g++ 2.7 appears to require `-G' NOT `-shared' on this
+ # platform.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+ fi
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ vxworks*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+ test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+ _LT_TAGVAR(GCC, $1)="$GXX"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ CC=$lt_save_CC
+ LDCXX=$LD
+ LD=$lt_save_LD
+ GCC=$lt_save_GCC
+ with_gnu_ld=$lt_save_with_gnu_ld
+ lt_cv_path_LDCXX=$lt_cv_path_LD
+ lt_cv_path_LD=$lt_save_path_LD
+ lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+fi # test "$_lt_caught_CXX_error" != yes
+
+AC_LANG_POP
+])# _LT_LANG_CXX_CONFIG
+
+
+# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
+# ---------------------------------
+# Figure out "hidden" library dependencies from verbose
+# compiler output when linking a shared library.
+# Parse the compiler output and extract the necessary
+# objects, libraries and library flags.
+m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+# Dependencies to place before and after the object being linked:
+_LT_TAGVAR(predep_objects, $1)=
+_LT_TAGVAR(postdep_objects, $1)=
+_LT_TAGVAR(predeps, $1)=
+_LT_TAGVAR(postdeps, $1)=
+_LT_TAGVAR(compiler_lib_search_path, $1)=
+
+dnl we can't use the lt_simple_compile_test_code here,
+dnl because it contains code intended for an executable,
+dnl not a library. It's possible we should let each
+dnl tag define a new lt_????_link_test_code variable,
+dnl but it's only used here...
+m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
+int a;
+void foo (void) { a = 0; }
+_LT_EOF
+], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
+class Foo
+{
+public:
+ Foo (void) { a = 0; }
+private:
+ int a;
+};
+_LT_EOF
+], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer*4 a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
+public class foo {
+ private int a;
+ public void bar (void) {
+ a = 0;
+ }
+};
+_LT_EOF
+])
+dnl Parse the compiler output and extract the necessary
+dnl objects, libraries and library flags.
+if AC_TRY_EVAL(ac_compile); then
+ # Parse the compiler output and extract the necessary
+ # objects, libraries and library flags.
+
+ # Sentinel used to keep track of whether or not we are before
+ # the conftest object file.
+ pre_test_object_deps_done=no
+
+ for p in `eval "$output_verbose_link_cmd"`; do
+ case $p in
+
+ -L* | -R* | -l*)
+ # Some compilers place space between "-{L,R}" and the path.
+ # Remove the space.
+ if test $p = "-L" ||
+ test $p = "-R"; then
+ prev=$p
+ continue
+ else
+ prev=
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ case $p in
+ -L* | -R*)
+ # Internal compiler library paths should come after those
+ # provided the user. The postdeps already come after the
+ # user supplied libs so there is no need to process them.
+ if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
+ _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+ else
+ _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+ fi
+ ;;
+ # The "-l" case would never come before the object being
+ # linked, so don't bother handling this case.
+ esac
+ else
+ if test -z "$_LT_TAGVAR(postdeps, $1)"; then
+ _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+ else
+ _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+ fi
+ fi
+ ;;
+
+ *.$objext)
+ # This assumes that the test object file only shows up
+ # once in the compiler output.
+ if test "$p" = "conftest.$objext"; then
+ pre_test_object_deps_done=yes
+ continue
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
+ _LT_TAGVAR(predep_objects, $1)="$p"
+ else
+ _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
+ fi
+ else
+ if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
+ _LT_TAGVAR(postdep_objects, $1)="$p"
+ else
+ _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
+ fi
+ fi
+ ;;
+
+ *) ;; # Ignore the rest.
+
+ esac
+ done
+
+ # Clean up.
+ rm -f a.out a.exe
+else
+ echo "libtool.m4: error: problem compiling $1 test program"
+fi
+
+$RM -f confest.$objext
+
+# PORTME: override above test on systems where it is broken
+m4_if([$1], [CXX],
+[case $host_os in
+interix[[3-9]]*)
+ # Interix 3.5 installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ _LT_TAGVAR(predep_objects,$1)=
+ _LT_TAGVAR(postdep_objects,$1)=
+ _LT_TAGVAR(postdeps,$1)=
+ ;;
+
+linux*)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+
+ # The more standards-conforming stlport4 library is
+ # incompatible with the Cstd library. Avoid specifying
+ # it if it's in CXXFLAGS. Ignore libCrun as
+ # -library=stlport4 depends on it.
+ case " $CXX $CXXFLAGS " in
+ *" -library=stlport4 "*)
+ solaris_use_stlport4=yes
+ ;;
+ esac
+
+ if test "$solaris_use_stlport4" != yes; then
+ _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+ fi
+ ;;
+ esac
+ ;;
+
+solaris*)
+ case $cc_basename in
+ CC*)
+ # The more standards-conforming stlport4 library is
+ # incompatible with the Cstd library. Avoid specifying
+ # it if it's in CXXFLAGS. Ignore libCrun as
+ # -library=stlport4 depends on it.
+ case " $CXX $CXXFLAGS " in
+ *" -library=stlport4 "*)
+ solaris_use_stlport4=yes
+ ;;
+ esac
+
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ if test "$solaris_use_stlport4" != yes; then
+ _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+ fi
+ ;;
+ esac
+ ;;
+esac
+])
+
+case " $_LT_TAGVAR(postdeps, $1) " in
+*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+esac
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+ [The directories searched by this compiler when creating a shared library])
+_LT_TAGDECL([], [predep_objects], [1],
+ [Dependencies to place before and after the objects being linked to
+ create a shared library])
+_LT_TAGDECL([], [postdep_objects], [1])
+_LT_TAGDECL([], [predeps], [1])
+_LT_TAGDECL([], [postdeps], [1])
+_LT_TAGDECL([], [compiler_lib_search_path], [1],
+ [The library search path used internally by the compiler when linking
+ a shared library])
+])# _LT_SYS_HIDDEN_LIBDEPS
+
+
+# _LT_PROG_F77
+# ------------
+# Since AC_PROG_F77 is broken, in that it returns the empty string
+# if there is no fortran compiler, we have our own version here.
+m4_defun([_LT_PROG_F77],
+[
+pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
+AC_PROG_F77
+if test -z "$F77" || test "X$F77" = "Xno"; then
+ _lt_disable_F77=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_F77
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_F77], [])
+
+
+# _LT_LANG_F77_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a Fortran 77 compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_F77_CONFIG],
+[AC_REQUIRE([_LT_PROG_F77])dnl
+AC_LANG_PUSH(Fortran 77)
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for f77 test sources.
+ac_ext=f
+
+# Object file extension for compiled f77 test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the F77 compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_disable_F77" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC="$CC"
+ lt_save_GCC=$GCC
+ CC=${F77-"f77"}
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+ GCC=$G77
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)="$G77"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC="$lt_save_CC"
+fi # test "$_lt_disable_F77" != yes
+
+AC_LANG_POP
+])# _LT_LANG_F77_CONFIG
+
+
+# _LT_PROG_FC
+# -----------
+# Since AC_PROG_FC is broken, in that it returns the empty string
+# if there is no fortran compiler, we have our own version here.
+m4_defun([_LT_PROG_FC],
+[
+pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
+AC_PROG_FC
+if test -z "$FC" || test "X$FC" = "Xno"; then
+ _lt_disable_FC=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_FC
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_FC], [])
+
+
+# _LT_LANG_FC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for a Fortran compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_FC_CONFIG],
+[AC_REQUIRE([_LT_PROG_FC])dnl
+AC_LANG_PUSH(Fortran)
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for fc test sources.
+ac_ext=${ac_fc_srcext-f}
+
+# Object file extension for compiled fc test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the FC compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_disable_FC" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC="$CC"
+ lt_save_GCC=$GCC
+ CC=${FC-"f95"}
+ compiler=$CC
+ GCC=$ac_cv_fc_compiler_gnu
+
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC="$lt_save_CC"
+fi # test "$_lt_disable_FC" != yes
+
+AC_LANG_POP
+])# _LT_LANG_FC_CONFIG
+
+
+# _LT_LANG_GCJ_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for the GNU Java Compiler compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_GCJ_CONFIG],
+[AC_REQUIRE([LT_PROG_GCJ])dnl
+AC_LANG_SAVE
+
+# Source file extension for Java test sources.
+ac_ext=java
+
+# Object file extension for compiled Java test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="class foo {}"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=yes
+CC=${GCJ-"gcj"}
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_TAGVAR(LD, $1)="$LD"
+_LT_CC_BASENAME([$compiler])
+
+# GCJ did not exist at the time GCC didn't implicitly link libc in.
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+fi
+
+AC_LANG_RESTORE
+
+GCC=$lt_save_GCC
+CC="$lt_save_CC"
+])# _LT_LANG_GCJ_CONFIG
+
+
+# _LT_LANG_RC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for the Windows resource compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_RC_CONFIG],
+[AC_REQUIRE([LT_PROG_RC])dnl
+AC_LANG_SAVE
+
+# Source file extension for RC test sources.
+ac_ext=rc
+
+# Object file extension for compiled RC test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
+
+# Code to be used in simple link tests
+lt_simple_link_test_code="$lt_simple_compile_test_code"
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=
+CC=${RC-"windres"}
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_CC_BASENAME([$compiler])
+_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+
+if test -n "$compiler"; then
+ :
+ _LT_CONFIG($1)
+fi
+
+GCC=$lt_save_GCC
+AC_LANG_RESTORE
+CC="$lt_save_CC"
+])# _LT_LANG_RC_CONFIG
+
+
+# LT_PROG_GCJ
+# -----------
+AC_DEFUN([LT_PROG_GCJ],
+[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
+ [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
+ [AC_CHECK_TOOL(GCJ, gcj,)
+ test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+ AC_SUBST(GCJFLAGS)])])[]dnl
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
+
+
+# LT_PROG_RC
+# ----------
+AC_DEFUN([LT_PROG_RC],
+[AC_CHECK_TOOL(RC, windres,)
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_RC], [])
+
+
+# _LT_DECL_EGREP
+# --------------
+# If we don't have a new enough Autoconf to choose the best grep
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_EGREP],
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+AC_REQUIRE([AC_PROG_FGREP])dnl
+test -z "$GREP" && GREP=grep
+_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
+_LT_DECL([], [EGREP], [1], [An ERE matcher])
+_LT_DECL([], [FGREP], [1], [A literal string matcher])
+dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
+AC_SUBST([GREP])
+])
+
+
+# _LT_DECL_SED
+# ------------
+# Check for a fully-functional sed program, that truncates
+# as few characters as possible. Prefer GNU sed if found.
+m4_defun([_LT_DECL_SED],
+[AC_PROG_SED
+test -z "$SED" && SED=sed
+Xsed="$SED -e 1s/^X//"
+_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
+_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
+ [Sed that helps us avoid accidentally triggering echo(1) options like -n])
+])# _LT_DECL_SED
+
+m4_ifndef([AC_PROG_SED], [
+############################################################
+# NOTE: This macro has been submitted for inclusion into #
+# GNU Autoconf as AC_PROG_SED. When it is available in #
+# a released version of Autoconf we should remove this #
+# macro and use it instead. #
+############################################################
+
+m4_defun([AC_PROG_SED],
+[AC_MSG_CHECKING([for a sed that does not truncate output])
+AC_CACHE_VAL(lt_cv_path_SED,
+[# Loop through the user's path and test for sed and gsed.
+# Then use that list of sed's as ones to test for truncation.
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for lt_ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+ lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+ fi
+ done
+ done
+done
+IFS=$as_save_IFS
+lt_ac_max=0
+lt_ac_count=0
+# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+# along with /bin/sed that truncates output.
+for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+ test ! -f $lt_ac_sed && continue
+ cat /dev/null > conftest.in
+ lt_ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+ # Check for GNU sed and select it if it is found.
+ if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+ lt_cv_path_SED=$lt_ac_sed
+ break
+ fi
+ while true; do
+ cat conftest.in conftest.in >conftest.tmp
+ mv conftest.tmp conftest.in
+ cp conftest.in conftest.nl
+ echo >>conftest.nl
+ $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+ cmp -s conftest.out conftest.nl || break
+ # 10000 chars as input seems more than enough
+ test $lt_ac_count -gt 10 && break
+ lt_ac_count=`expr $lt_ac_count + 1`
+ if test $lt_ac_count -gt $lt_ac_max; then
+ lt_ac_max=$lt_ac_count
+ lt_cv_path_SED=$lt_ac_sed
+ fi
+ done
+done
+])
+SED=$lt_cv_path_SED
+AC_SUBST([SED])
+AC_MSG_RESULT([$SED])
+])#AC_PROG_SED
+])#m4_ifndef
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_SED], [])
+
+
+# _LT_CHECK_SHELL_FEATURES
+# ------------------------
+# Find out whether the shell is Bourne or XSI compatible,
+# or has some other useful features.
+m4_defun([_LT_CHECK_SHELL_FEATURES],
+[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
+# Try some XSI features
+xsi_shell=no
+( _lt_dummy="a/b/c"
+ test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+ = c,a/b,, \
+ && eval 'test $(( 1 + 1 )) -eq 2 \
+ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+ && xsi_shell=yes
+AC_MSG_RESULT([$xsi_shell])
+_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
+
+AC_MSG_CHECKING([whether the shell understands "+="])
+lt_shell_append=no
+( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
+ >/dev/null 2>&1 \
+ && lt_shell_append=yes
+AC_MSG_RESULT([$lt_shell_append])
+_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
+
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ lt_unset=unset
+else
+ lt_unset=false
+fi
+_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
+
+# test EBCDIC or ASCII
+case `echo X|tr X '\101'` in
+ A) # ASCII based system
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+ lt_SP2NL='tr \040 \012'
+ lt_NL2SP='tr \015\012 \040\040'
+ ;;
+ *) # EBCDIC based system
+ lt_SP2NL='tr \100 \n'
+ lt_NL2SP='tr \r\n \100\100'
+ ;;
+esac
+_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
+_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+])# _LT_CHECK_SHELL_FEATURES
+
+
+# _LT_PROG_XSI_SHELLFNS
+# ---------------------
+# Bourne and XSI compatible variants of some useful shell functions.
+m4_defun([_LT_PROG_XSI_SHELLFNS],
+[case $xsi_shell in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result="${1##*/}"
+}
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+ func_basename_result="${1##*/}"
+}
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+func_stripname ()
+{
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+ # positional parameters, so assign one to ordinary parameter first.
+ func_stripname_result=${3}
+ func_stripname_result=${func_stripname_result#"${1}"}
+ func_stripname_result=${func_stripname_result%"${2}"}
+}
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=${1%%=*}
+ func_opt_split_arg=${1#*=}
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ case ${1} in
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+ *) func_lo2o_result=${1} ;;
+ esac
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=$(( $[*] ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=${#1}
+}
+
+_LT_EOF
+ ;;
+ *) # Bourne compatible functions.
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+dnl func_dirname_and_basename
+dnl A portable version of this function is already defined in general.m4sh
+dnl so there is no need for it here.
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+# func_strip_suffix prefix name
+func_stripname ()
+{
+ case ${2} in
+ .*) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+ *) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+ esac
+}
+
+# sed scripts:
+my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
+my_sed_long_arg='1s/^-[[^=]]*=//'
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+ func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=`expr "$[@]"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
+_LT_EOF
+esac
+
+case $lt_shell_append in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$[1]+=\$[2]"
+}
+_LT_EOF
+ ;;
+ *)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$[1]=\$$[1]\$[2]"
+}
+
+_LT_EOF
+ ;;
+ esac
+])
diff --git a/libsigsegv/m4/ltoptions.m4 b/libsigsegv/m4/ltoptions.m4
new file mode 100644
index 00000000..e9701194
--- /dev/null
+++ b/libsigsegv/m4/ltoptions.m4
@@ -0,0 +1,368 @@
+# Helper functions for option handling. -*- Autoconf -*-
+#
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# 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.
+
+# serial 6 ltoptions.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
+
+
+# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+# ------------------------------------------
+m4_define([_LT_MANGLE_OPTION],
+[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
+
+
+# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+# ---------------------------------------
+# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+# matching handler defined, dispatch to it. Other OPTION-NAMEs are
+# saved as a flag.
+m4_define([_LT_SET_OPTION],
+[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+ _LT_MANGLE_DEFUN([$1], [$2]),
+ [m4_warning([Unknown $1 option `$2'])])[]dnl
+])
+
+
+# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+# ------------------------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+m4_define([_LT_IF_OPTION],
+[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
+
+
+# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+# -------------------------------------------------------
+# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+# are set.
+m4_define([_LT_UNLESS_OPTIONS],
+[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
+ [m4_define([$0_found])])])[]dnl
+m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
+])[]dnl
+])
+
+
+# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+# ----------------------------------------
+# OPTION-LIST is a space-separated list of Libtool options associated
+# with MACRO-NAME. If any OPTION has a matching handler declared with
+# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+# the unknown option and exit.
+m4_defun([_LT_SET_OPTIONS],
+[# Set options
+m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [_LT_SET_OPTION([$1], _LT_Option)])
+
+m4_if([$1],[LT_INIT],[
+ dnl
+ dnl Simply set some default values (i.e off) if boolean options were not
+ dnl specified:
+ _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+ ])
+ _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+ ])
+ dnl
+ dnl If no reference was made to various pairs of opposing options, then
+ dnl we run the default mode handler for the pair. For example, if neither
+ dnl `shared' nor `disable-shared' was passed, we enable building of shared
+ dnl archives by default:
+ _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+ _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+ [_LT_ENABLE_FAST_INSTALL])
+ ])
+])# _LT_SET_OPTIONS
+
+
+## --------------------------------- ##
+## Macros to handle LT_INIT options. ##
+## --------------------------------- ##
+
+# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+# -----------------------------------------
+m4_define([_LT_MANGLE_DEFUN],
+[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
+
+
+# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+# -----------------------------------------------
+m4_define([LT_OPTION_DEFINE],
+[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
+])# LT_OPTION_DEFINE
+
+
+# dlopen
+# ------
+LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
+])
+
+AU_DEFUN([AC_LIBTOOL_DLOPEN],
+[_LT_SET_OPTION([LT_INIT], [dlopen])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `dlopen' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
+
+
+# win32-dll
+# ---------
+# Declare package support for building win32 dll's.
+LT_OPTION_DEFINE([LT_INIT], [win32-dll],
+[enable_win32_dll=yes
+
+case $host in
+*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+ AC_CHECK_TOOL(AS, as, false)
+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
+ ;;
+esac
+
+test -z "$AS" && AS=as
+_LT_DECL([], [AS], [0], [Assembler program])dnl
+
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
+])# win32-dll
+
+AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+_LT_SET_OPTION([LT_INIT], [win32-dll])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `win32-dll' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
+
+
+# _LT_ENABLE_SHARED([DEFAULT])
+# ----------------------------
+# implement the --enable-shared flag, and supports the `shared' and
+# `disable-shared' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_SHARED],
+[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([shared],
+ [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+ [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
+
+ _LT_DECL([build_libtool_libs], [enable_shared], [0],
+ [Whether or not to build shared libraries])
+])# _LT_ENABLE_SHARED
+
+LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
+])
+
+AC_DEFUN([AC_DISABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], [disable-shared])
+])
+
+AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_SHARED], [])
+dnl AC_DEFUN([AM_DISABLE_SHARED], [])
+
+
+
+# _LT_ENABLE_STATIC([DEFAULT])
+# ----------------------------
+# implement the --enable-static flag, and support the `static' and
+# `disable-static' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_STATIC],
+[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([static],
+ [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+ [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
+
+ _LT_DECL([build_old_libs], [enable_static], [0],
+ [Whether or not to build static libraries])
+])# _LT_ENABLE_STATIC
+
+LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
+])
+
+AC_DEFUN([AC_DISABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], [disable-static])
+])
+
+AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_STATIC], [])
+dnl AC_DEFUN([AM_DISABLE_STATIC], [])
+
+
+
+# _LT_ENABLE_FAST_INSTALL([DEFAULT])
+# ----------------------------------
+# implement the --enable-fast-install flag, and support the `fast-install'
+# and `disable-fast-install' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_FAST_INSTALL],
+[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([fast-install],
+ [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+ [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
+
+_LT_DECL([fast_install], [enable_fast_install], [0],
+ [Whether or not to optimize for fast installation])dnl
+])# _LT_ENABLE_FAST_INSTALL
+
+LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+
+# Old names:
+AU_DEFUN([AC_ENABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the `fast-install' option into LT_INIT's first parameter.])
+])
+
+AU_DEFUN([AC_DISABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the `disable-fast-install' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
+dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+
+
+# _LT_WITH_PIC([MODE])
+# --------------------
+# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+# LT_INIT options.
+# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
+m4_define([_LT_WITH_PIC],
+[AC_ARG_WITH([pic],
+ [AS_HELP_STRING([--with-pic],
+ [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+ [pic_mode="$withval"],
+ [pic_mode=default])
+
+test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+
+_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
+])# _LT_WITH_PIC
+
+LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
+
+# Old name:
+AU_DEFUN([AC_LIBTOOL_PICMODE],
+[_LT_SET_OPTION([LT_INIT], [pic-only])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `pic-only' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+
+## ----------------- ##
+## LTDL_INIT Options ##
+## ----------------- ##
+
+m4_define([_LTDL_MODE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+ [m4_define([_LTDL_MODE], [nonrecursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+ [m4_define([_LTDL_MODE], [recursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+ [m4_define([_LTDL_MODE], [subproject])])
+
+m4_define([_LTDL_TYPE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [installable],
+ [m4_define([_LTDL_TYPE], [installable])])
+LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+ [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/libsigsegv/m4/ltsugar.m4 b/libsigsegv/m4/ltsugar.m4
new file mode 100644
index 00000000..9000a057
--- /dev/null
+++ b/libsigsegv/m4/ltsugar.m4
@@ -0,0 +1,123 @@
+# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
+#
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# 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.
+
+# serial 6 ltsugar.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
+
+
+# lt_join(SEP, ARG1, [ARG2...])
+# -----------------------------
+# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
+# associated separator.
+# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+# versions in m4sugar had bugs.
+m4_define([lt_join],
+[m4_if([$#], [1], [],
+ [$#], [2], [[$2]],
+ [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
+m4_define([_lt_join],
+[m4_if([$#$2], [2], [],
+ [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
+
+
+# lt_car(LIST)
+# lt_cdr(LIST)
+# ------------
+# Manipulate m4 lists.
+# These macros are necessary as long as will still need to support
+# Autoconf-2.59 which quotes differently.
+m4_define([lt_car], [[$1]])
+m4_define([lt_cdr],
+[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
+ [$#], 1, [],
+ [m4_dquote(m4_shift($@))])])
+m4_define([lt_unquote], $1)
+
+
+# lt_append(MACRO-NAME, STRING, [SEPARATOR])
+# ------------------------------------------
+# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
+# Note that neither SEPARATOR nor STRING are expanded; they are appended
+# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+# than defined and empty).
+#
+# This macro is needed until we can rely on Autoconf 2.62, since earlier
+# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
+m4_define([lt_append],
+[m4_define([$1],
+ m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
+
+
+
+# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
+# ----------------------------------------------------------
+# Produce a SEP delimited list of all paired combinations of elements of
+# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
+# has the form PREFIXmINFIXSUFFIXn.
+# Needed until we can rely on m4_combine added in Autoconf 2.62.
+m4_define([lt_combine],
+[m4_if(m4_eval([$# > 3]), [1],
+ [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+[[m4_foreach([_Lt_prefix], [$2],
+ [m4_foreach([_Lt_suffix],
+ ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+ [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
+
+
+# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
+# -----------------------------------------------------------------------
+# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
+# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
+m4_define([lt_if_append_uniq],
+[m4_ifdef([$1],
+ [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
+ [lt_append([$1], [$2], [$3])$4],
+ [$5])],
+ [lt_append([$1], [$2], [$3])$4])])
+
+
+# lt_dict_add(DICT, KEY, VALUE)
+# -----------------------------
+m4_define([lt_dict_add],
+[m4_define([$1($2)], [$3])])
+
+
+# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
+# --------------------------------------------
+m4_define([lt_dict_add_subkey],
+[m4_define([$1($2:$3)], [$4])])
+
+
+# lt_dict_fetch(DICT, KEY, [SUBKEY])
+# ----------------------------------
+m4_define([lt_dict_fetch],
+[m4_ifval([$3],
+ m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
+ m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
+
+
+# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
+# -----------------------------------------------------------------
+m4_define([lt_if_dict_fetch],
+[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
+ [$5],
+ [$6])])
+
+
+# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
+# --------------------------------------------------------------
+m4_define([lt_dict_filter],
+[m4_if([$5], [], [],
+ [lt_join(m4_quote(m4_default([$4], [[, ]])),
+ lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
+ [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
+])
diff --git a/libsigsegv/m4/ltversion.m4 b/libsigsegv/m4/ltversion.m4
new file mode 100644
index 00000000..b8e154fe
--- /dev/null
+++ b/libsigsegv/m4/ltversion.m4
@@ -0,0 +1,23 @@
+# ltversion.m4 -- version numbers -*- Autoconf -*-
+#
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Scott James Remnant, 2004
+#
+# 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.
+
+# Generated from ltversion.in.
+
+# serial 3012 ltversion.m4
+# This file is part of GNU Libtool
+
+m4_define([LT_PACKAGE_VERSION], [2.2.6])
+m4_define([LT_PACKAGE_REVISION], [1.3012])
+
+AC_DEFUN([LTVERSION_VERSION],
+[macro_version='2.2.6'
+macro_revision='1.3012'
+_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
+_LT_DECL(, macro_revision, 0)
+])
diff --git a/libsigsegv/m4/lt~obsolete.m4 b/libsigsegv/m4/lt~obsolete.m4
new file mode 100644
index 00000000..637bb206
--- /dev/null
+++ b/libsigsegv/m4/lt~obsolete.m4
@@ -0,0 +1,92 @@
+# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
+#
+# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+# Written by Scott James Remnant, 2004.
+#
+# 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.
+
+# serial 4 lt~obsolete.m4
+
+# These exist entirely to fool aclocal when bootstrapping libtool.
+#
+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
+# which have later been changed to m4_define as they aren't part of the
+# exported API, or moved to Autoconf or Automake where they belong.
+#
+# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
+# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
+# using a macro with the same name in our local m4/libtool.m4 it'll
+# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
+# and doesn't know about Autoconf macros at all.)
+#
+# So we provide this file, which has a silly filename so it's always
+# included after everything else. This provides aclocal with the
+# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
+# because those macros already exist, or will be overwritten later.
+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
+#
+# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
+# Yes, that means every name once taken will need to remain here until
+# we give up compatibility with versions before 1.7, at which point
+# we need to keep only those names which we still refer to.
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+
+m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
+m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
+m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
+m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
+m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
+m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
+m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
+m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
+m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
+m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
+m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
+m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
+m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
+m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
+m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
+m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
+m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
+m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
+m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
+m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
+m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
+m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
+m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
+m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
+m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
+m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
+m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
+m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
+m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
+m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
+m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
+m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
+m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
+m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
+m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
+m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
+m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
+m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
+m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
+m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
+m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
+m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
+m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
+m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
+m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
+m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
+m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
diff --git a/libsigsegv/m4/mmap-anon.m4 b/libsigsegv/m4/mmap-anon.m4
new file mode 100644
index 00000000..9f43ae67
--- /dev/null
+++ b/libsigsegv/m4/mmap-anon.m4
@@ -0,0 +1,140 @@
+# mmap-anon.m4 serial 3 (libsigsegv-2.6)
+dnl Copyright (C) 2002-2003, 2008 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+# How to allocate fresh memory using mmap.
+AC_DEFUN([SV_MMAP_ANON],
+[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
+
+ dnl 1) MAP_ANON
+
+ AC_CACHE_CHECK([for mmap with MAP_ANON], sv_cv_func_mmap_anon, [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <sys/types.h>
+#include <sys/mman.h>
+int main ()
+{
+ void *p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0);
+ return (p == (void *)(-1));
+}]])],
+ [sv_cv_func_mmap_anon=yes],
+ [sv_cv_func_mmap_anon=no],
+ [
+ dnl FIXME: Put in some more known values here.
+ case "$host_os" in
+ freebsd* | linux* | osf* | darwin*)
+ sv_cv_func_mmap_anon=yes ;;
+ *)
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#include <sys/types.h>
+#include <sys/mman.h>
+]],
+ [[mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0);]])],
+ [sv_cv_func_mmap_anon="guessing yes"],
+ [sv_cv_func_mmap_anon=no])
+ ;;
+ esac
+ ])
+ ])
+ if test "$sv_cv_func_mmap_anon" != no; then
+ AC_DEFINE(HAVE_MMAP_ANON, 1,
+ [Define if <sys/mman.h> defines MAP_ANON and mmaping with MAP_ANON works.])
+ fi
+
+ dnl 2) MAP_ANONYMOUS
+
+ AC_CACHE_CHECK([for mmap with MAP_ANONYMOUS], sv_cv_func_mmap_anonymous, [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <sys/types.h>
+#include <sys/mman.h>
+int main ()
+{
+ void *p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ return (p == (void *)(-1));
+}]])],
+ [sv_cv_func_mmap_anonymous=yes],
+ [sv_cv_func_mmap_anonymous=no],
+ [
+ dnl FIXME: Put in some more known values here.
+ case "$host_os" in
+ hpux* | linux* | osf*)
+ sv_cv_func_mmap_anonymous=yes ;;
+ darwin*)
+ sv_cv_func_mmap_anonymous=no ;;
+ *)
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#include <sys/types.h>
+#include <sys/mman.h>
+]],
+ [[mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);]])],
+ [sv_cv_func_mmap_anonymous="guessing yes"],
+ [sv_cv_func_mmap_anonymous=no])
+ ;;
+ esac
+ ])
+ ])
+ if test "$sv_cv_func_mmap_anonymous" != no; then
+ AC_DEFINE(HAVE_MMAP_ANONYMOUS, 1,
+ [Define if <sys/mman.h> defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS
+ works.])
+ fi
+
+ dnl 3) MAP_FILE of /dev/zero
+
+ AC_CACHE_CHECK([for mmap of /dev/zero], sv_cv_func_mmap_devzero, [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <sys/types.h>
+#include <sys/mman.h>
+#include <fcntl.h>
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+int main ()
+{
+ int fd;
+ void *p;
+ fd = open ("/dev/zero", O_RDONLY, 0666);
+ if (fd < 0) return 1;
+ p = mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_FILE | MAP_PRIVATE, fd, 0);
+ return (p == (void *)(-1));
+}]])],
+ [sv_cv_func_mmap_devzero=yes],
+ [sv_cv_func_mmap_devzero=no],
+ [
+ dnl FIXME: Put in some more known values here.
+ case "$host_os" in
+ freebsd* | irix* | linux* | osf* | solaris* | sunos4*)
+ sv_cv_func_mmap_devzero=yes ;;
+ darwin*)
+ sv_cv_func_mmap_devzero=no ;;
+ *)
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[
+#include <sys/types.h>
+#include <sys/mman.h>
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+]], [[mmap (0, 0x10000, PROT_READ | PROT_WRITE, MAP_FILE | MAP_PRIVATE, 7, 0);]])],
+ [sv_cv_func_mmap_devzero="guessing yes"],
+ [sv_cv_func_mmap_devzero=no])
+ ;;
+ esac
+ ])
+ ])
+ if test "$sv_cv_func_mmap_devzero" != no; then
+ AC_DEFINE(HAVE_MMAP_DEVZERO, 1,
+ [Define if mmaping of the special device /dev/zero works.])
+ fi
+])
diff --git a/libsigsegv/m4/relocatable.m4 b/libsigsegv/m4/relocatable.m4
new file mode 100644
index 00000000..febd0f5e
--- /dev/null
+++ b/libsigsegv/m4/relocatable.m4
@@ -0,0 +1,99 @@
+# relocatable.m4 serial 1 (gettext-0.12)
+dnl Copyright (C) 2003 Free Software Foundation, Inc.
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+dnl From Bruno Haible.
+
+dnl Support for relocateble programs.
+AC_DEFUN([AC_RELOCATABLE],
+[
+ AC_REQUIRE([AC_PROG_INSTALL])
+ AC_BEFORE([AC_PROG_INSTALL],[AC_RELOCATABLE])
+ AC_REQUIRE([AC_LIB_LIBPATH])
+ AC_REQUIRE([AC_RELOCATABLE_LIBRARY])
+ use_elf_origin_trick=no
+ if test $RELOCATABLE = yes; then
+ # --enable-relocatable implies --disable-rpath
+ enable_rpath=no
+ AC_LIBOBJ([relocatable])
+ AC_DEFINE([ENABLE_RELOCATABLE], 1,
+ [Define to 1 if the package shall run at any location in the filesystem.])
+ case "$host_os" in
+ linux*) use_elf_origin_trick=yes ;;
+ esac
+ if test $use_elf_origin_trick = yes; then
+ dnl Use the dynamic linker's support for relocatable programs.
+ case "$ac_aux_dir" in
+ /*) reloc_ldflags="$ac_aux_dir/reloc-ldflags" ;;
+ *) reloc_ldflags="\$(top_builddir)/$ac_aux_dir/reloc-ldflags" ;;
+ esac
+ SET_RELOCATABLE="RELOCATABLE_LDFLAGS = \"$reloc_ldflags\" \"@host@\" \"\$(RELOCATABLE_LIBRARY_PATH)\""
+ else
+ dnl Unfortunately we cannot define INSTALL_PROGRAM to a command
+ dnl consisting of more than one word - libtool doesn't support this.
+ dnl So we abuse the INSTALL_PROGRAM_ENV hook, originally meant for the
+ dnl 'install-strip' target.
+ SET_RELOCATABLE="INSTALL_PROGRAM_ENV = RELOC_LIBRARY_PATH_VAR=\"$shlibpath_var\" RELOC_LIBRARY_PATH_VALUE=\"\$(RELOCATABLE_LIBRARY_PATH)\" RELOC_PREFIX=\"\$(prefix)\" RELOC_COMPILE_COMMAND=\"\$(CC) \$(CPPFLAGS) \$(CFLAGS) \$(LDFLAGS)\" RELOC_SRCDIR=\"\$(RELOCATABLE_SRC_DIR)\" RELOC_BUILDDIR=\"\$(RELOCATABLE_BUILD_DIR)\" RELOC_CONFIG_H_DIR=\"\$(RELOCATABLE_CONFIG_H_DIR)\" RELOC_INSTALL_PROG=\"$INSTALL_PROGRAM\""
+ case "$ac_aux_dir" in
+ /*) INSTALL_PROGRAM="$ac_aux_dir/install-reloc" ;;
+ *) INSTALL_PROGRAM="\$(top_builddir)/$ac_aux_dir/install-reloc" ;;
+ esac
+ fi
+ else
+ SET_RELOCATABLE=
+ fi
+ AC_SUBST([SET_RELOCATABLE])
+ AM_CONDITIONAL([RELOCATABLE_VIA_LD],
+ [test $use_elf_origin_trick = yes])
+])
+
+dnl Support for relocatable libraries.
+AC_DEFUN([AC_RELOCATABLE_LIBRARY],
+[
+ AC_REQUIRE([AC_RELOCATABLE_NOP])
+ dnl Easier to put this here once, instead of into the DEFS of each Makefile.
+ if test "X$prefix" = "XNONE"; then
+ reloc_final_prefix="$ac_default_prefix"
+ else
+ reloc_final_prefix="$prefix"
+ fi
+ AC_DEFINE_UNQUOTED([INSTALLPREFIX], ["${reloc_final_prefix}"],
+ [Define to the value of ${prefix}, as a string.])
+])
+
+dnl Support for relocatable packages for which it is a nop.
+AC_DEFUN([AC_RELOCATABLE_NOP],
+[
+ AC_MSG_CHECKING([whether to activate relocatable installation])
+ AC_ARG_ENABLE(relocatable,
+ [ --enable-relocatable install a package that can be moved in the filesystem],
+ [if test "$enableval" != no; then
+ RELOCATABLE=yes
+ else
+ RELOCATABLE=no
+ fi
+ ], RELOCATABLE=no)
+ AC_SUBST(RELOCATABLE)
+ AC_MSG_RESULT([$RELOCATABLE])
+])
+
+dnl Determine the platform dependent parameters needed to use relocatability:
+dnl shlibpath_var.
+AC_DEFUN([AC_LIB_LIBPATH],
+[
+ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
+ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
+ AC_CACHE_CHECK([for shared library path variable], acl_cv_libpath, [
+ LD="$LD" \
+ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.libpath" "$host" > conftest.sh
+ . ./conftest.sh
+ rm -f ./conftest.sh
+ acl_cv_libpath=${acl_cv_shlibpath_var:-none}
+ ])
+ shlibpath_var="$acl_cv_shlibpath_var"
+])
diff --git a/libsigsegv/m4/sigaltstack-longjmp.m4 b/libsigsegv/m4/sigaltstack-longjmp.m4
new file mode 100644
index 00000000..1f72a19e
--- /dev/null
+++ b/libsigsegv/m4/sigaltstack-longjmp.m4
@@ -0,0 +1,100 @@
+# sigaltstack-longjmp.m4 serial 6 (libsigsegv-2.7)
+dnl Copyright (C) 2002-2003, 2006, 2008 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+dnl How to longjmp out of a signal handler, in such a way that the
+dnl alternate signal stack remains functional.
+dnl SV_TRY_LEAVE_HANDLER_LONGJMP(KIND, CACHESYMBOL, KNOWN-SYSTEMS,
+dnl INCLUDES, RESETCODE)
+AC_DEFUN([SV_TRY_LEAVE_HANDLER_LONGJMP],
+[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
+
+ AC_CACHE_CHECK([whether a signal handler can be left through longjmp$1], [$2], [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+$4
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+jmp_buf mainloop;
+sigset_t mainsigset;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ { $5 }
+ longjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ sigset_t emptyset;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+ /* Provoke two stack overflows in a row. */
+ if (setjmp (mainloop) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}]])],
+ [$2=yes],
+ [$2=no],
+ [case "$host" in
+ m4_if([$3], [], [], [[$3]) $2=yes ;;])
+ *) $2="guessing no" ;;
+ esac
+ ])
+ ])
+])
diff --git a/libsigsegv/m4/sigaltstack-siglongjmp.m4 b/libsigsegv/m4/sigaltstack-siglongjmp.m4
new file mode 100644
index 00000000..f35622cb
--- /dev/null
+++ b/libsigsegv/m4/sigaltstack-siglongjmp.m4
@@ -0,0 +1,98 @@
+# sigaltstack-siglongjmp.m4 serial 6 (libsigsegv-2.7)
+dnl Copyright (C) 2002-2003, 2006, 2008 Bruno Haible <bruno@clisp.org>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+dnl How to siglongjmp out of a signal handler, in such a way that the
+dnl alternate signal stack remains functional.
+dnl SV_TRY_LEAVE_HANDLER_SIGLONGJMP(KIND, CACHESYMBOL, KNOWN-SYSTEMS,
+dnl INCLUDES, RESETCODE)
+AC_DEFUN([SV_TRY_LEAVE_HANDLER_SIGLONGJMP],
+[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
+
+ AC_CACHE_CHECK([whether a signal handler can be left through siglongjmp$1], [$2], [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <stdlib.h>
+#include <signal.h>
+#include <setjmp.h>
+$4
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+sigjmp_buf mainloop;
+int pass = 0;
+void stackoverflow_handler (int sig)
+{
+ pass++;
+ { $5 }
+ siglongjmp (mainloop, pass);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#ifdef __BEOS__
+ /* On BeOS, this would hang, burning CPU time. Better fail than hang. */
+ exit (1);
+#endif
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke two stack overflows in a row. */
+ if (sigsetjmp (mainloop, 1) < 2)
+ {
+ recurse (0);
+ exit (2);
+ }
+ exit (0);
+}]])],
+ [$2=yes],
+ [$2=no],
+ [case "$host" in
+ m4_if([$3], [], [], [[$3]) $2=yes ;;])
+ *) $2="guessing no" ;;
+ esac
+ ])
+ ])
+])
diff --git a/libsigsegv/m4/sigaltstack.m4 b/libsigsegv/m4/sigaltstack.m4
new file mode 100644
index 00000000..4f7d5d67
--- /dev/null
+++ b/libsigsegv/m4/sigaltstack.m4
@@ -0,0 +1,198 @@
+# sigaltstack.m4 serial 10 (libsigsegv-2.7)
+dnl Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.org>
+dnl Copyright (C) 2008 Eric Blake <ebb9@byu.net>
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License. As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+
+AC_DEFUN([SV_SIGALTSTACK],
+[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
+
+ AC_CHECK_FUNCS(sigaltstack)
+
+ if test "$ac_cv_func_sigaltstack" = yes; then
+ AC_CHECK_TYPE(stack_t, ,
+ [AC_DEFINE(stack_t, [struct sigaltstack],
+ [Define to 'struct sigaltstack' if that's the type of the argument to sigaltstack])
+ ],
+ [
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+ ])
+ fi
+
+ AC_CACHE_CHECK([for working sigaltstack], sv_cv_sigaltstack, [
+ if test "$ac_cv_func_sigaltstack" = yes; then
+ case "$host_os" in
+ macos* | darwin[[6-9]]* | darwin[[1-9]][[0-9]]*)
+ # On MacOS X 10.2 or newer, just assume that if it compiles, it will
+ # work. If we were to perform the real test, 1 Crash Report dialog
+ # window would pop up.
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[#include <signal.h>]],
+ [[int x = SA_ONSTACK; stack_t ss; sigaltstack ((stack_t*)0, &ss);]])],
+ [sv_cv_sigaltstack="guessing yes"],
+ [sv_cv_sigaltstack=no])
+ ;;
+ *)
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+void stackoverflow_handler (int sig)
+{
+ /* If we get here, the stack overflow was caught. */
+ exit (0);
+}
+volatile int * recurse_1 (volatile int n, volatile int *p)
+{
+ if (n >= 0)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+int recurse (volatile int n)
+{
+ int sum = 0;
+ return *recurse_1 (n, &sum);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+#if defined HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+ /* Install the alternate stack. Use the midpoint of mystack, to guard
+ against a buggy interpretation of ss_sp on IRIX. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (1);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ sigaction (SIGSEGV, &action, (struct sigaction *) NULL);
+ sigaction (SIGBUS, &action, (struct sigaction *) NULL);
+ /* Provoke a stack overflow. */
+ recurse (0);
+ exit (2);
+}]])],
+ [sv_cv_sigaltstack=yes],
+ [sv_cv_sigaltstack=no],
+ [
+ dnl FIXME: Put in some more known values here.
+ case "$host_os" in
+ *)
+ AC_LINK_IFELSE([
+ AC_LANG_PROGRAM([[#include <signal.h>]],
+ [[int x = SA_ONSTACK; stack_t ss; sigaltstack ((stack_t*)0, &ss);]])],
+ [sv_cv_sigaltstack="guessing yes"],
+ [sv_cv_sigaltstack=no])
+ ;;
+ esac
+ ])
+ ;;
+ esac
+ else
+ sv_cv_sigaltstack=no
+ fi
+ ])
+ if test "$sv_cv_sigaltstack" != no; then
+ AC_DEFINE(HAVE_WORKING_SIGALTSTACK, 1,
+ [Define if you have the sigaltstack() function and it works.])
+
+ dnl The ss_sp field of a stack_t is, according to POSIX, the lowest address
+ dnl of the memory block designated as an alternate stack. But IRIX 5.3
+ dnl interprets it as the highest address!
+ AC_CACHE_CHECK([for correct stack_t interpretation],
+ [sv_cv_sigaltstack_low_base], [
+ AC_RUN_IFELSE([
+ AC_LANG_SOURCE([[
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+volatile char *stack_lower_bound;
+volatile char *stack_upper_bound;
+static void check_stack_location (volatile char *addr)
+{
+ if (addr >= stack_lower_bound && addr <= stack_upper_bound)
+ exit (0);
+ else
+ exit (1);
+}
+static void stackoverflow_handler (int sig)
+{
+ char dummy;
+ check_stack_location (&dummy);
+}
+int main ()
+{
+ char mystack[2 * SIGSTKSZ];
+ stack_t altstack;
+ struct sigaction action;
+ /* Install the alternate stack. */
+ altstack.ss_sp = mystack + SIGSTKSZ;
+ altstack.ss_size = SIGSTKSZ;
+ stack_lower_bound = (char *) altstack.ss_sp;
+ stack_upper_bound = (char *) altstack.ss_sp + altstack.ss_size - 1;
+ altstack.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&altstack, NULL) < 0)
+ exit (2);
+ /* Install the SIGSEGV handler. */
+ sigemptyset (&action.sa_mask);
+ action.sa_handler = &stackoverflow_handler;
+ action.sa_flags = SA_ONSTACK;
+ if (sigaction (SIGSEGV, &action, (struct sigaction *) NULL) < 0)
+ exit(3);
+ /* Provoke a SIGSEGV. */
+ raise (SIGSEGV);
+ exit (3);
+}]])],
+ [sv_cv_sigaltstack_low_base=yes],
+ [sv_cv_sigaltstack_low_base=no],
+ [
+ dnl FIXME: Put in some more known values here.
+ case "$host_os" in
+ irix5*) sv_cv_sigaltstack_low_base="no" ;;
+ *) sv_cv_sigaltstack_low_base="guessing yes" ;;
+ esac
+ ])
+ ])
+ if test "$sv_cv_sigaltstack_low_base" = no; then
+ AC_DEFINE([SIGALTSTACK_SS_REVERSED], [1],
+ [Define if sigaltstack() interprets the stack_t.ss_sp field incorrectly,
+ as the highest address of the alternate stack range rather than as the
+ lowest address.])
+ fi
+ fi
+])
diff --git a/libsigsegv/src/Makefile.am b/libsigsegv/src/Makefile.am
new file mode 100644
index 00000000..7e57dad2
--- /dev/null
+++ b/libsigsegv/src/Makefile.am
@@ -0,0 +1,104 @@
+## Makefile for libsigsegv/src.
+## Copyright (C) 2002-2006, 2008-2009 Bruno Haible <bruno@clisp.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.
+
+## Process this file with automake to produce Makefile.in.
+
+AUTOMAKE_OPTIONS = 1.5 gnits no-dependencies
+
+RM = rm -f
+
+lib_LTLIBRARIES = libsigsegv.la
+
+noinst_HEADERS = \
+ fault.h fault-aix3.h fault-aix3-powerpc.h fault-aix5.h fault-aix5-powerpc.h \
+ fault-beos.h fault-beos-i386.h \
+ fault-bsd.h fault-freebsd-i386.h \
+ fault-hpux.h fault-hpux-hppa.h fault-hurd.h fault-irix.h fault-irix-mips.h \
+ fault-linux.h fault-linux-alpha.h fault-linux-arm.h fault-linux-cris.h \
+ fault-linux-hppa.h fault-linux-i386.h fault-linux-i386-old.h \
+ fault-linux-ia64.h fault-linux-m68k.h fault-linux-m68k.c fault-linux-mips.h \
+ fault-linux-powerpc.h fault-linux-s390.h fault-linux-sh.h \
+ fault-linux-sparc.h fault-linux-x86_64.h \
+ fault-macos-i386.h \
+ fault-macosdarwin5-powerpc.h fault-macosdarwin5-powerpc.c \
+ fault-macosdarwin7-powerpc.h fault-macosdarwin7-powerpc.c \
+ fault-netbsd.h fault-netbsd-alpha.h fault-netbsd-alpha.c \
+ fault-none.h \
+ fault-openbsd.h fault-openbsd-i386.h \
+ fault-osf.h fault-osf-alpha.h \
+ fault-posix.h fault-posix-ucontext.h \
+ fault-solaris.h fault-solaris-i386.h fault-solaris-sparc.h \
+ machfault.h machfault-macos.h \
+ signals.h signals-bsd.h signals-hpux.h signals-hurd.h signals-macos.h \
+ leave.h \
+ stackvma.h
+
+EXTRA_DIST = \
+ handler-none.c handler-unix.c handler-macos.c handler-win32.c \
+ stackvma-none.c stackvma-simple.c stackvma-linux.c stackvma-freebsd.c \
+ stackvma-procfs.c stackvma-beos.c stackvma-mach.c stackvma-mincore.c \
+ stackvma-rofile.c \
+ leave-none.c leave-nop.c leave-sigaltstack.c leave-setcontext.c \
+ sigsegv.h.msvc
+
+INCLUDES = -I. -I$(srcdir)
+DEFS = @DEFS@
+
+libsigsegv_la_SOURCES = handler.c stackvma.c leave.c dispatcher.c version.c
+
+libsigsegv_la_LDFLAGS = \
+ -rpath $(libdir) \
+ -version-info $(LIBSIGSEGV_VERSION_INFO) \
+ -lc -no-undefined
+
+# Before making a release, change this according to the libtool documentation,
+# section "Library interface versions".
+LIBSIGSEGV_VERSION_INFO = 1:0:0
+
+# Dependencies.
+handler.$(OBJEXT) : ../config.h sigsegv.h @CFG_HANDLER@ $(noinst_HEADERS)
+stackvma.$(OBJEXT) : ../config.h @CFG_STACKVMA@ stackvma.h
+leave.$(OBJEXT) : ../config.h @CFG_LEAVE@
+dispatcher.$(OBJEXT) : sigsegv.h
+
+
+# Special rules for installing sigsegv.h.
+
+install-data-local:
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) sigsegv.h $(DESTDIR)$(includedir)/sigsegv.h
+
+installdirs-local:
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+
+uninstall-local:
+ $(RM) $(DESTDIR)$(includedir)/sigsegv.h
+
+
+DISTCLEANFILES = sigsegv.h
+
+
+# Rules for "make dist".
+
+sigsegv.h.msvc : sigsegv.h.in
+ sed -e 's/@''FAULT_CONTEXT_INCLUDE''@/#include <windows.h>/' \
+ -e 's/@''FAULT_CONTEXT''@/CONTEXT/' \
+ -e 's/@''HAVE_SIGSEGV_RECOVERY''@/1/' \
+ -e 's/@''HAVE_STACK_OVERFLOW_RECOVERY''@/1/' \
+ < $(srcdir)/sigsegv.h.in > $@
+
diff --git a/libsigsegv/src/Makefile.in b/libsigsegv/src/Makefile.in
new file mode 100644
index 00000000..8f18748d
--- /dev/null
+++ b/libsigsegv/src/Makefile.in
@@ -0,0 +1,591 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@
+
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+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 = src
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(srcdir)/sigsegv.h.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/bold.m4 \
+ $(top_srcdir)/m4/fault.m4 $(top_srcdir)/m4/getpagesize.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/mmap-anon.m4 \
+ $(top_srcdir)/m4/relocatable.m4 \
+ $(top_srcdir)/m4/sigaltstack-longjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack-siglongjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES = sigsegv.h
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(libdir)"
+LTLIBRARIES = $(lib_LTLIBRARIES)
+libsigsegv_la_LIBADD =
+am_libsigsegv_la_OBJECTS = handler.lo stackvma.lo leave.lo \
+ dispatcher.lo version.lo
+libsigsegv_la_OBJECTS = $(am_libsigsegv_la_OBJECTS)
+libsigsegv_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(libsigsegv_la_LDFLAGS) $(LDFLAGS) -o $@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp =
+am__depfiles_maybe =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(libsigsegv_la_SOURCES)
+DIST_SOURCES = $(libsigsegv_la_SOURCES)
+HEADERS = $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFG_HANDLER = @CFG_HANDLER@
+CFG_LEAVE = @CFG_LEAVE@
+CFG_STACKVMA = @CFG_STACKVMA@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FAULT_CONTEXT = @FAULT_CONTEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_SIGSEGV_RECOVERY = @HAVE_SIGSEGV_RECOVERY@
+HAVE_STACK_OVERFLOW_RECOVERY = @HAVE_STACK_OVERFLOW_RECOVERY@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+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@
+PLATFORM = @PLATFORM@
+RANLIB = @RANLIB@
+RELOCATABLE = @RELOCATABLE@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+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@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+AUTOMAKE_OPTIONS = 1.5 gnits no-dependencies
+RM = rm -f
+lib_LTLIBRARIES = libsigsegv.la
+noinst_HEADERS = \
+ fault.h fault-aix3.h fault-aix3-powerpc.h fault-aix5.h fault-aix5-powerpc.h \
+ fault-beos.h fault-beos-i386.h \
+ fault-bsd.h fault-freebsd-i386.h \
+ fault-hpux.h fault-hpux-hppa.h fault-hurd.h fault-irix.h fault-irix-mips.h \
+ fault-linux.h fault-linux-alpha.h fault-linux-arm.h fault-linux-cris.h \
+ fault-linux-hppa.h fault-linux-i386.h fault-linux-i386-old.h \
+ fault-linux-ia64.h fault-linux-m68k.h fault-linux-m68k.c fault-linux-mips.h \
+ fault-linux-powerpc.h fault-linux-s390.h fault-linux-sh.h \
+ fault-linux-sparc.h fault-linux-x86_64.h \
+ fault-macos-i386.h \
+ fault-macosdarwin5-powerpc.h fault-macosdarwin5-powerpc.c \
+ fault-macosdarwin7-powerpc.h fault-macosdarwin7-powerpc.c \
+ fault-netbsd.h fault-netbsd-alpha.h fault-netbsd-alpha.c \
+ fault-none.h \
+ fault-openbsd.h fault-openbsd-i386.h \
+ fault-osf.h fault-osf-alpha.h \
+ fault-posix.h fault-posix-ucontext.h \
+ fault-solaris.h fault-solaris-i386.h fault-solaris-sparc.h \
+ machfault.h machfault-macos.h \
+ signals.h signals-bsd.h signals-hpux.h signals-hurd.h signals-macos.h \
+ leave.h \
+ stackvma.h
+
+EXTRA_DIST = \
+ handler-none.c handler-unix.c handler-macos.c handler-win32.c \
+ stackvma-none.c stackvma-simple.c stackvma-linux.c stackvma-freebsd.c \
+ stackvma-procfs.c stackvma-beos.c stackvma-mach.c stackvma-mincore.c \
+ stackvma-rofile.c \
+ leave-none.c leave-nop.c leave-sigaltstack.c leave-setcontext.c \
+ sigsegv.h.msvc
+
+INCLUDES = -I. -I$(srcdir)
+libsigsegv_la_SOURCES = handler.c stackvma.c leave.c dispatcher.c version.c
+libsigsegv_la_LDFLAGS = \
+ -rpath $(libdir) \
+ -version-info $(LIBSIGSEGV_VERSION_INFO) \
+ -lc -no-undefined
+
+
+# Before making a release, change this according to the libtool documentation,
+# section "Library interface versions".
+LIBSIGSEGV_VERSION_INFO = 1:0:0
+DISTCLEANFILES = sigsegv.h
+all: 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 ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits src/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnits src/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
+$(am__aclocal_m4_deps):
+sigsegv.h: $(top_builddir)/config.status $(srcdir)/sigsegv.h.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
+ if test -f $$p; then \
+ list2="$$list2 $$p"; \
+ else :; fi; \
+ done; \
+ test -z "$$list2" || { \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
+ }
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_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
+libsigsegv.la: $(libsigsegv_la_OBJECTS) $(libsigsegv_la_DEPENDENCIES)
+ $(libsigsegv_la_LINK) -rpath $(libdir) $(libsigsegv_la_OBJECTS) $(libsigsegv_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+.c.o:
+ $(COMPILE) -c $<
+
+.c.obj:
+ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+ $(LTCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ 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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ 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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__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)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$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: check-am
+all-am: Makefile $(LTLIBRARIES) $(HEADERS)
+installdirs: installdirs-local
+ for dir in "$(DESTDIR)$(libdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: 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:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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."
+clean: clean-am
+
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am: install-libLTLIBRARIES
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-libLTLIBRARIES uninstall-local
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool 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-data-local install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-libLTLIBRARIES install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs installdirs-local \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ uninstall-libLTLIBRARIES uninstall-local
+
+
+# Dependencies.
+handler.$(OBJEXT) : ../config.h sigsegv.h @CFG_HANDLER@ $(noinst_HEADERS)
+stackvma.$(OBJEXT) : ../config.h @CFG_STACKVMA@ stackvma.h
+leave.$(OBJEXT) : ../config.h @CFG_LEAVE@
+dispatcher.$(OBJEXT) : sigsegv.h
+
+# Special rules for installing sigsegv.h.
+
+install-data-local:
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+ $(INSTALL_DATA) sigsegv.h $(DESTDIR)$(includedir)/sigsegv.h
+
+installdirs-local:
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+
+uninstall-local:
+ $(RM) $(DESTDIR)$(includedir)/sigsegv.h
+
+# Rules for "make dist".
+
+sigsegv.h.msvc : sigsegv.h.in
+ sed -e 's/@''FAULT_CONTEXT_INCLUDE''@/#include <windows.h>/' \
+ -e 's/@''FAULT_CONTEXT''@/CONTEXT/' \
+ -e 's/@''HAVE_SIGSEGV_RECOVERY''@/1/' \
+ -e 's/@''HAVE_STACK_OVERFLOW_RECOVERY''@/1/' \
+ < $(srcdir)/sigsegv.h.in > $@
+
+# 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:
diff --git a/libsigsegv/src/dispatcher.c b/libsigsegv/src/dispatcher.c
new file mode 100644
index 00000000..2619e65d
--- /dev/null
+++ b/libsigsegv/src/dispatcher.c
@@ -0,0 +1,255 @@
+/* Dispatch signal to right virtual memory area.
+ Copyright (C) 1993-1999, 2002-2003 Bruno Haible <bruno@clisp.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 "sigsegv.h"
+
+#include <stddef.h> /* needed for NULL on SunOS4 */
+#include <stdlib.h>
+#ifdef _WIN32
+#include <malloc.h>
+#endif
+
+/*
+ * A dispatcher contains an AVL tree of non-empty intervals, sorted according
+ * to their starting address.
+ */
+typedef
+struct node_t
+{
+ /* AVL tree management. */
+ struct node_t *left;
+ struct node_t *right;
+ unsigned int height;
+ /* Representation of interval. */
+ unsigned long address;
+ unsigned long len;
+ /* User handler. */
+ sigsegv_area_handler_t handler;
+ void *handler_arg;
+}
+node_t;
+
+#define empty ((node_t *) 0)
+#define heightof(tree) ((tree) == empty ? 0 : (tree)->height)
+#define MAXHEIGHT 41
+
+static void
+rebalance (node_t ***nodeplaces_ptr, unsigned int count)
+{
+ if (count > 0)
+ do
+ {
+ node_t **nodeplace = *--nodeplaces_ptr;
+ node_t *node = *nodeplace;
+ node_t *nodeleft = node->left;
+ node_t *noderight = node->right;
+ unsigned int heightleft = heightof (nodeleft);
+ unsigned int heightright = heightof (noderight);
+ if (heightright + 1 < heightleft)
+ {
+ node_t *nodeleftleft = nodeleft->left;
+ node_t *nodeleftright = nodeleft->right;
+ unsigned int heightleftright = heightof (nodeleftright);
+ if (heightof (nodeleftleft) >= heightleftright)
+ {
+ node->left = nodeleftright; nodeleft->right = node;
+ nodeleft->height = 1 + (node->height = 1 + heightleftright);
+ *nodeplace = nodeleft;
+ }
+ else
+ {
+ nodeleft->right = nodeleftright->left;
+ node->left = nodeleftright->right;
+ nodeleftright->left = nodeleft;
+ nodeleftright->right = node;
+ nodeleft->height = node->height = heightleftright;
+ nodeleftright->height = heightleft;
+ *nodeplace = nodeleftright;
+ }
+ }
+ else if (heightleft + 1 < heightright)
+ {
+ node_t *noderightright = noderight->right;
+ node_t *noderightleft = noderight->left;
+ unsigned int heightrightleft = heightof (noderightleft);
+ if (heightof (noderightright) >= heightrightleft)
+ {
+ node->right = noderightleft; noderight->left = node;
+ noderight->height = 1 + (node->height = 1 + heightrightleft);
+ *nodeplace = noderight;
+ }
+ else
+ {
+ noderight->left = noderightleft->right;
+ node->right = noderightleft->left;
+ noderightleft->right = noderight;
+ noderightleft->left = node;
+ noderight->height = node->height = heightrightleft;
+ noderightleft->height = heightright;
+ *nodeplace = noderightleft;
+ }
+ }
+ else
+ {
+ unsigned int height =
+ (heightleft<heightright ? heightright : heightleft) + 1;
+ if (height == node->height)
+ break;
+ node->height = height;
+ }
+ }
+ while (--count > 0);
+}
+
+static node_t *
+insert (node_t *new_node, node_t *tree)
+{
+ unsigned long key = new_node->address;
+ node_t **nodeplace = &tree;
+ node_t **stack[MAXHEIGHT];
+ unsigned int stack_count = 0;
+ node_t ***stack_ptr = &stack[0];
+ for (;;)
+ {
+ node_t *node = *nodeplace;
+ if (node == empty)
+ break;
+ *stack_ptr++ = nodeplace; stack_count++;
+ if (key < node->address)
+ nodeplace = &node->left;
+ else
+ nodeplace = &node->right;
+ }
+ new_node->left = empty;
+ new_node->right = empty;
+ new_node->height = 1;
+ *nodeplace = new_node;
+ rebalance (stack_ptr, stack_count);
+ return tree;
+}
+
+static node_t *
+delete (node_t *node_to_delete, node_t *tree)
+{
+ unsigned long key = node_to_delete->address;
+ node_t **nodeplace = &tree;
+ node_t **stack[MAXHEIGHT];
+ unsigned int stack_count = 0;
+ node_t ***stack_ptr = &stack[0];
+ for (;;)
+ {
+ node_t *node = *nodeplace;
+ if (node == empty)
+ return tree;
+ *stack_ptr++ = nodeplace; stack_count++;
+ if (key == node->address)
+ {
+ if (node != node_to_delete)
+ abort ();
+ break;
+ }
+ if (key < node->address)
+ nodeplace = &node->left;
+ else
+ nodeplace = &node->right;
+ }
+ {
+ node_t **nodeplace_to_delete = nodeplace;
+ if (node_to_delete->left == empty)
+ {
+ *nodeplace_to_delete = node_to_delete->right;
+ stack_ptr--; stack_count--;
+ }
+ else
+ {
+ node_t ***stack_ptr_to_delete = stack_ptr;
+ node_t **nodeplace = &node_to_delete->left;
+ node_t *node;
+ for (;;)
+ {
+ node = *nodeplace;
+ if (node->right == empty)
+ break;
+ *stack_ptr++ = nodeplace; stack_count++;
+ nodeplace = &node->right;
+ }
+ *nodeplace = node->left;
+ node->left = node_to_delete->left;
+ node->right = node_to_delete->right;
+ node->height = node_to_delete->height;
+ *nodeplace_to_delete = node;
+ *stack_ptr_to_delete = &node->left;
+ }
+ }
+ rebalance (stack_ptr, stack_count);
+ return tree;
+}
+
+void
+sigsegv_init (sigsegv_dispatcher *dispatcher)
+{
+ dispatcher->tree = empty;
+}
+
+void *
+sigsegv_register (sigsegv_dispatcher *dispatcher,
+ void *address, unsigned long len,
+ sigsegv_area_handler_t handler, void *handler_arg)
+{
+ if (len == 0)
+ return NULL;
+ else
+ {
+ node_t *new_node = (node_t *) malloc (sizeof (node_t));
+ new_node->address = (unsigned long) address;
+ new_node->len = len;
+ new_node->handler = handler;
+ new_node->handler_arg = handler_arg;
+ dispatcher->tree = insert (new_node, (node_t *) dispatcher->tree);
+ return new_node;
+ }
+}
+
+void
+sigsegv_unregister (sigsegv_dispatcher *dispatcher, void *ticket)
+{
+ if (ticket != NULL)
+ {
+ node_t *node_to_delete = (node_t *) ticket;
+ dispatcher->tree = delete (node_to_delete, (node_t *) dispatcher->tree);
+ free (node_to_delete);
+ }
+}
+
+int
+sigsegv_dispatch (sigsegv_dispatcher *dispatcher, void *fault_address)
+{
+ unsigned long key = (unsigned long) fault_address;
+ node_t *tree = (node_t *) dispatcher->tree;
+ for (;;)
+ {
+ if (tree == empty)
+ return 0;
+ if (key < tree->address)
+ tree = tree->left;
+ else if (key - tree->address >= tree->len)
+ tree = tree->right;
+ else
+ break;
+ }
+ return (*tree->handler) (fault_address, tree->handler_arg);
+}
diff --git a/libsigsegv/src/fault-aix3-powerpc.h b/libsigsegv/src/fault-aix3-powerpc.h
new file mode 100644
index 00000000..057846ce
--- /dev/null
+++ b/libsigsegv/src/fault-aix3-powerpc.h
@@ -0,0 +1,20 @@
+/* Fault handler information. AIX3/PowerPC and AIX4/PowerPC version.
+ Copyright (C) 2002-2005 Bruno Haible <bruno@clisp.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 "fault-aix3.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_jmpbuf.jmp_context.gpr[1]
diff --git a/libsigsegv/src/fault-aix3.h b/libsigsegv/src/fault-aix3.h
new file mode 100644
index 00000000..2c91bc99
--- /dev/null
+++ b/libsigsegv/src/fault-aix3.h
@@ -0,0 +1,20 @@
+/* Fault handler information. AIX 3 and AIX 4 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS scp->sc_jmpbuf.jmp_context.o_vaddr
+#define SIGSEGV_FAULT_CONTEXT scp
diff --git a/libsigsegv/src/fault-aix5-powerpc.h b/libsigsegv/src/fault-aix5-powerpc.h
new file mode 100644
index 00000000..bfc1a905
--- /dev/null
+++ b/libsigsegv/src/fault-aix5-powerpc.h
@@ -0,0 +1,20 @@
+/* Fault handler information. AIX5/PowerPC version.
+ Copyright (C) 2005 Bruno Haible <bruno@clisp.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 "fault-aix5.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.jmp_context.gpr[1]
diff --git a/libsigsegv/src/fault-aix5.h b/libsigsegv/src/fault-aix5.h
new file mode 100644
index 00000000..a915a852
--- /dev/null
+++ b/libsigsegv/src/fault-aix5.h
@@ -0,0 +1,18 @@
+/* Fault handler information. AIX 5 version.
+ Copyright (C) 2005, 2009 Bruno Haible <bruno@clisp.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 "fault-posix-ucontext.h"
diff --git a/libsigsegv/src/fault-beos-i386.h b/libsigsegv/src/fault-beos-i386.h
new file mode 100644
index 00000000..af030db4
--- /dev/null
+++ b/libsigsegv/src/fault-beos-i386.h
@@ -0,0 +1,22 @@
+/* Fault handler information. BeOS/i386 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <OS.h>
+
+#include "fault-beos.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER vrp->esp
diff --git a/libsigsegv/src/fault-beos.h b/libsigsegv/src/fault-beos.h
new file mode 100644
index 00000000..29e27daf
--- /dev/null
+++ b/libsigsegv/src/fault-beos.h
@@ -0,0 +1,19 @@
+/* Fault handler information. BeOS version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, void *userdata, struct vregs *vrp
+#define SIGSEGV_FAULT_CONTEXT vrp
diff --git a/libsigsegv/src/fault-bsd.h b/libsigsegv/src/fault-bsd.h
new file mode 100644
index 00000000..5e91845c
--- /dev/null
+++ b/libsigsegv/src/fault-bsd.h
@@ -0,0 +1,19 @@
+/* Fault handler information. BSD Unix version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, void *scp, void *addr
+#define SIGSEGV_FAULT_ADDRESS addr
diff --git a/libsigsegv/src/fault-freebsd-i386.h b/libsigsegv/src/fault-freebsd-i386.h
new file mode 100644
index 00000000..ffc1b6af
--- /dev/null
+++ b/libsigsegv/src/fault-freebsd-i386.h
@@ -0,0 +1,27 @@
+/* Fault handler information. FreeBSD/i386 version.
+ Copyright (C) 2002, 2007 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp, void *addr
+#define SIGSEGV_FAULT_ADDRESS addr
+#define SIGSEGV_FAULT_CONTEXT scp
+#if defined __x86_64__
+/* 64 bit registers */
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_rsp
+#else
+/* 32 bit registers */
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_esp
+#endif
diff --git a/libsigsegv/src/fault-hpux-hppa.h b/libsigsegv/src/fault-hpux-hppa.h
new file mode 100644
index 00000000..cbdf5a8b
--- /dev/null
+++ b/libsigsegv/src/fault-hpux-hppa.h
@@ -0,0 +1,46 @@
+/* Fault handler information. HP-UX HPPA version.
+ Copyright (C) 2002 Paolo Bonzini <bonzini@gnu.org>
+ Copyright (C) 2002-2003, 2009 Bruno Haible <bruno@clisp.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. */
+
+#define USE_64BIT_REGS(mc) \
+ (((mc).ss_flags & SS_WIDEREGS) && ((mc).ss_flags & SS_NARROWISINVALID))
+
+/* Extract the cr21 register from an mcontext_t.
+ See the comments in /usr/include/machine/save_state.h. */
+#define GET_CR21(mc) \
+ (USE_64BIT_REGS(mc) ? (mc).ss_wide.ss_64.ss_cr21 : (mc).ss_narrow.ss_cr21)
+
+/* Extract the stack pointer from an mcontext_t.
+ See the comments in /usr/include/machine/save_state.h. */
+#define GET_SP(mc) \
+ (USE_64BIT_REGS(mc) ? (mc).ss_wide.ss_64.ss_sp : (mc).ss_narrow.ss_sp)
+
+/* Both of these alternatives work on HP-UX 10.20 and HP-UX 11.00. */
+#if 1
+
+#include "fault-hpux.h"
+
+#define SIGSEGV_FAULT_ADDRESS GET_CR21 (scp->sc_sl.sl_ss)
+#define SIGSEGV_FAULT_STACKPOINTER GET_SP (scp->sc_ctxt.sl.sl_ss)
+
+#else
+
+#include "fault-posix-ucontext.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER GET_SP (((ucontext_t *) ucp)->uc_mcontext)
+
+#endif
diff --git a/libsigsegv/src/fault-hpux.h b/libsigsegv/src/fault-hpux.h
new file mode 100644
index 00000000..632e0de3
--- /dev/null
+++ b/libsigsegv/src/fault-hpux.h
@@ -0,0 +1,19 @@
+/* Fault handler information. HP-UX version.
+ Copyright (C) 2002 Paolo Bonzini <bonzini@gnu.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
diff --git a/libsigsegv/src/fault-hurd.h b/libsigsegv/src/fault-hurd.h
new file mode 100644
index 00000000..d0272218
--- /dev/null
+++ b/libsigsegv/src/fault-hurd.h
@@ -0,0 +1,20 @@
+/* Fault handler information. Hurd version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS (unsigned long) code
+#define SIGSEGV_FAULT_CONTEXT scp
diff --git a/libsigsegv/src/fault-irix-mips.h b/libsigsegv/src/fault-irix-mips.h
new file mode 100644
index 00000000..2051e6e8
--- /dev/null
+++ b/libsigsegv/src/fault-irix-mips.h
@@ -0,0 +1,20 @@
+/* Fault handler information. IRIX MIPS version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 "fault-irix.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_regs[29]
diff --git a/libsigsegv/src/fault-irix.h b/libsigsegv/src/fault-irix.h
new file mode 100644
index 00000000..239a8604
--- /dev/null
+++ b/libsigsegv/src/fault-irix.h
@@ -0,0 +1,20 @@
+/* Fault handler information. IRIX version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS (unsigned long) scp->sc_badvaddr
+#define SIGSEGV_FAULT_CONTEXT scp
diff --git a/libsigsegv/src/fault-linux-alpha.h b/libsigsegv/src/fault-linux-alpha.h
new file mode 100644
index 00000000..0b49da0c
--- /dev/null
+++ b/libsigsegv/src/fault-linux-alpha.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/Alpha version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_regs[30]
diff --git a/libsigsegv/src/fault-linux-arm.h b/libsigsegv/src/fault-linux-arm.h
new file mode 100644
index 00000000..08c92c1f
--- /dev/null
+++ b/libsigsegv/src/fault-linux-arm.h
@@ -0,0 +1,26 @@
+/* Fault handler information. Linux/ARM version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* This file supports only kernels >= 2.2.14 or >= 2.3.35. Support for older
+ kernels would be more complicated, see file
+ glibc/sysdeps/unix/sysv/linux/arm/bits/armsigctx.h. */
+
+#include <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int r1, int r2, int r3, struct sigcontext sc
+#define SIGSEGV_FAULT_CONTEXT &sc
+#define SIGSEGV_FAULT_STACKPOINTER sc.arm_sp
diff --git a/libsigsegv/src/fault-linux-cris.h b/libsigsegv/src/fault-linux-cris.h
new file mode 100644
index 00000000..b12b046c
--- /dev/null
+++ b/libsigsegv/src/fault-linux-cris.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/cris version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int r11, int r12, int r13, struct sigcontext sc
+#define SIGSEGV_FAULT_CONTEXT (&sc)
+#define SIGSEGV_FAULT_STACKPOINTER sc.usp
diff --git a/libsigsegv/src/fault-linux-hppa.h b/libsigsegv/src/fault-linux-hppa.h
new file mode 100644
index 00000000..4b83a0d0
--- /dev/null
+++ b/libsigsegv/src/fault-linux-hppa.h
@@ -0,0 +1,27 @@
+/* Fault handler information. Linux/HPPA version.
+ Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.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 <ucontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, void *ucp
+#define SIGSEGV_FAULT_ADDRESS sip->si_ptr
+#define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
+
+#if 0
+#define SIGSEGV_FAULT_CONTEXT ((ucontext_t *) ucp)
+#define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs.g_regs[30]
+#endif
diff --git a/libsigsegv/src/fault-linux-i386-old.h b/libsigsegv/src/fault-linux-i386-old.h
new file mode 100644
index 00000000..fc949860
--- /dev/null
+++ b/libsigsegv/src/fault-linux-i386-old.h
@@ -0,0 +1,23 @@
+/* Fault handler information. Linux/i386 version, supports old kernels.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* Don't include <asm/sigcontext.h> here, because some older kernels don't
+ have it or don't define `struct sigcontext' in it. */
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, unsigned long more
+#define SIGSEGV_FAULT_ADDRESS ((unsigned long *) &more) [21]
+#define SIGSEGV_FAULT_CONTEXT ((struct sigcontext *) &more)
+#define SIGSEGV_FAULT_STACKPOINTER ((unsigned long *) &more) [7]
diff --git a/libsigsegv/src/fault-linux-i386.h b/libsigsegv/src/fault-linux-i386.h
new file mode 100644
index 00000000..709ca3a1
--- /dev/null
+++ b/libsigsegv/src/fault-linux-i386.h
@@ -0,0 +1,21 @@
+/* Fault handler information. Linux/i386 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, struct sigcontext sc
+#define SIGSEGV_FAULT_ADDRESS sc.cr2
+#define SIGSEGV_FAULT_CONTEXT (&sc)
+#define SIGSEGV_FAULT_STACKPOINTER sc.esp /* same value as sc.esp_at_signal */
diff --git a/libsigsegv/src/fault-linux-ia64.h b/libsigsegv/src/fault-linux-ia64.h
new file mode 100644
index 00000000..f9cf6b12
--- /dev/null
+++ b/libsigsegv/src/fault-linux-ia64.h
@@ -0,0 +1,29 @@
+/* Fault handler information. Linux/IA-64 version.
+ Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS sip->si_addr
+#define SIGSEGV_FAULT_CONTEXT scp
+
+/* IA-64 has two stack pointers, one that grows down, called $r12, and one
+ that grows up, called $bsp/$bspstore. */
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_gr[12]
+
+/* It would be better to access $bspstore instead of $bsp but I don't know
+ where to find it in 'struct sigcontext'. Anyway, it doesn't matter
+ because $bsp and $bspstore never differ by more than ca. 1 KB. */
+#define SIGSEGV_FAULT_BSP_POINTER scp->sc_ar_bsp
diff --git a/libsigsegv/src/fault-linux-m68k.c b/libsigsegv/src/fault-linux-m68k.c
new file mode 100644
index 00000000..8562e30e
--- /dev/null
+++ b/libsigsegv/src/fault-linux-m68k.c
@@ -0,0 +1,44 @@
+/* Fault handler information subroutine. Linux/m68k version.
+ * Taken from gcc-3.2/boehm-gc/os_dep.c.
+ *
+ * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
+ * Copyright (c) 1991-1995 by Xerox Corporation. All rights reserved.
+ * Copyright (c) 1996-1999 by Silicon Graphics. All rights reserved.
+ * Copyright (c) 1999 by Hewlett-Packard Company. All rights reserved.
+ *
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ */
+
+static void *
+get_fault_addr (struct sigcontext *scp)
+{
+ int format = (scp->sc_formatvec >> 12) & 0xf;
+ unsigned long *framedata = (unsigned long *) (scp + 1);
+ unsigned long ea;
+
+ switch (format)
+ {
+ case 10: case 11: /* 68020/030 */
+ ea = framedata[2];
+ return (void *) ea;
+ case 7: /* 68040 */
+ ea = framedata[3];
+ break;
+ case 4: /* 68060 */
+ ea = framedata[0];
+ break;
+ default:
+ return (void *) 0;
+ }
+ if (framedata[1] & 0x08000000)
+ /* Correct addr on misaligned access. */
+ ea = (ea + 4095) & ~4095;
+ return (void *) ea;
+}
diff --git a/libsigsegv/src/fault-linux-m68k.h b/libsigsegv/src/fault-linux-m68k.h
new file mode 100644
index 00000000..4623d902
--- /dev/null
+++ b/libsigsegv/src/fault-linux-m68k.h
@@ -0,0 +1,24 @@
+/* Fault handler information. Linux/m68k version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+#include "fault-linux-m68k.c"
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS (unsigned long) get_fault_addr (scp)
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_usp
diff --git a/libsigsegv/src/fault-linux-mips.h b/libsigsegv/src/fault-linux-mips.h
new file mode 100644
index 00000000..fa80dc3e
--- /dev/null
+++ b/libsigsegv/src/fault-linux-mips.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/MIPS version
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_regs[29]
diff --git a/libsigsegv/src/fault-linux-powerpc.h b/libsigsegv/src/fault-linux-powerpc.h
new file mode 100644
index 00000000..ea398f00
--- /dev/null
+++ b/libsigsegv/src/fault-linux-powerpc.h
@@ -0,0 +1,23 @@
+/* Fault handler information. Linux/PowerPC version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS scp->regs->dar
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->regs->gpr[1]
diff --git a/libsigsegv/src/fault-linux-s390.h b/libsigsegv/src/fault-linux-s390.h
new file mode 100644
index 00000000..29056ffc
--- /dev/null
+++ b/libsigsegv/src/fault-linux-s390.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/S390 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sregs->regs.gprs[15]
diff --git a/libsigsegv/src/fault-linux-sh.h b/libsigsegv/src/fault-linux-sh.h
new file mode 100644
index 00000000..3db1aee1
--- /dev/null
+++ b/libsigsegv/src/fault-linux-sh.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/SH version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int r1, int r2, int r3, struct sigcontext sc
+#define SIGSEGV_FAULT_CONTEXT (&sc)
+#define SIGSEGV_FAULT_STACKPOINTER sc.sc_regs[15]
diff --git a/libsigsegv/src/fault-linux-sparc.h b/libsigsegv/src/fault-linux-sparc.h
new file mode 100644
index 00000000..fcc77933
--- /dev/null
+++ b/libsigsegv/src/fault-linux-sparc.h
@@ -0,0 +1,23 @@
+/* Fault handler information. Linux/SPARC version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp, void *addr /* FIXME */
+#define SIGSEGV_FAULT_ADDRESS addr /* in case of SunOS4 signal frames */
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sigc_sp /* FIXME: not scp->si_regs.u_regs[14] ? */
diff --git a/libsigsegv/src/fault-linux-x86_64.h b/libsigsegv/src/fault-linux-x86_64.h
new file mode 100644
index 00000000..70b08f08
--- /dev/null
+++ b/libsigsegv/src/fault-linux-x86_64.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux/x86_64 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <asm/sigcontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, struct sigcontext sc
+#define SIGSEGV_FAULT_CONTEXT (&sc)
+#define SIGSEGV_FAULT_STACKPOINTER sc.rsp
diff --git a/libsigsegv/src/fault-linux.h b/libsigsegv/src/fault-linux.h
new file mode 100644
index 00000000..b7cf9dbc
--- /dev/null
+++ b/libsigsegv/src/fault-linux.h
@@ -0,0 +1,22 @@
+/* Fault handler information. Linux stub version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* For SIGSEGV_FAULT_HANDLER_ARGLIST, see the definition of SIGCONTEXT in
+ glibc/sysdeps/unix/sysv/linux/<cpu>/sigcontextinfo.h. */
+
+/* For SIGSEGV_FAULT_STACKPOINTER, see the definition of GET_STACK in
+ glibc/sysdeps/unix/sysv/linux/<cpu>/sigcontextinfo.h. */
diff --git a/libsigsegv/src/fault-macos-i386.h b/libsigsegv/src/fault-macos-i386.h
new file mode 100644
index 00000000..83d40cb5
--- /dev/null
+++ b/libsigsegv/src/fault-macos-i386.h
@@ -0,0 +1,20 @@
+/* Fault handler information. MacOSX/i386 version.
+ Copyright (C) 2003 Paolo Bonzini <bonzini@gnu.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_esp
diff --git a/libsigsegv/src/fault-macosdarwin5-powerpc.c b/libsigsegv/src/fault-macosdarwin5-powerpc.c
new file mode 100644
index 00000000..a2f59d8f
--- /dev/null
+++ b/libsigsegv/src/fault-macosdarwin5-powerpc.c
@@ -0,0 +1,124 @@
+/* Fault handler information subroutine. MacOSX/Darwin5/PowerPC version.
+ * Taken from gcc-3.2/boehm-gc/os_dep.c.
+ *
+ * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
+ * Copyright (c) 1991-1995 by Xerox Corporation. All rights reserved.
+ * Copyright (c) 1996-1999 by Silicon Graphics. All rights reserved.
+ * Copyright (c) 1999 by Hewlett-Packard Company. All rights reserved.
+ *
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ */
+
+/* Decodes the machine instruction which was responsible for the sending of the
+ SIGBUS signal. Sadly this is the only way to find the faulting address
+ because the signal handler doesn't get it directly from the kernel (although
+ it is available on the Mach level, but dropped by the BSD personality before
+ it calls our signal handler...)
+ This code should be able to deal correctly with all PPCs starting from the
+ 601 up to and including the G4s (including Velocity Engine). */
+#define EXTRACT_OP1(iw) (((iw) & 0xFC000000) >> 26)
+#define EXTRACT_OP2(iw) (((iw) & 0x000007FE) >> 1)
+#define EXTRACT_REGA(iw) (((iw) & 0x001F0000) >> 16)
+#define EXTRACT_REGB(iw) (((iw) & 0x03E00000) >> 21)
+#define EXTRACT_REGC(iw) (((iw) & 0x0000F800) >> 11)
+#define EXTRACT_DISP(iw) ((short *) &(iw))[1]
+
+static void *
+get_fault_addr (struct sigcontext *scp)
+{
+ unsigned int instr = *((unsigned int *) scp->sc_ir);
+ unsigned int *regs = &((unsigned int *) scp->sc_regs)[2];
+ int disp = 0;
+ int tmp;
+ unsigned int baseA = 0;
+ unsigned int baseB = 0;
+ unsigned int addr;
+ unsigned int alignmask = 0xFFFFFFFF;
+
+ switch (EXTRACT_OP1 (instr))
+ {
+ case 38: /* stb */
+ case 39: /* stbu */
+ case 54: /* stfd */
+ case 55: /* stfdu */
+ case 52: /* stfs */
+ case 53: /* stfsu */
+ case 44: /* sth */
+ case 45: /* sthu */
+ case 47: /* stmw */
+ case 36: /* stw */
+ case 37: /* stwu */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ disp = EXTRACT_DISP (instr);
+ break;
+ case 31:
+ switch (EXTRACT_OP2 (instr))
+ {
+ case 86: /* dcbf */
+ case 54: /* dcbst */
+ case 1014: /* dcbz */
+ case 247: /* stbux */
+ case 215: /* stbx */
+ case 759: /* stfdux */
+ case 727: /* stfdx */
+ case 983: /* stfiwx */
+ case 695: /* stfsux */
+ case 663: /* stfsx */
+ case 918: /* sthbrx */
+ case 439: /* sthux */
+ case 407: /* sthx */
+ case 661: /* stswx */
+ case 662: /* stwbrx */
+ case 150: /* stwcx. */
+ case 183: /* stwux */
+ case 151: /* stwx */
+ case 135: /* stvebx */
+ case 167: /* stvehx */
+ case 199: /* stvewx */
+ case 231: /* stvx */
+ case 487: /* stvxl */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ baseB = regs[EXTRACT_REGC (instr)];
+ /* Determine Altivec alignment mask. */
+ switch (EXTRACT_OP2 (instr))
+ {
+ case 167: /* stvehx */
+ alignmask = 0xFFFFFFFE;
+ break;
+ case 199: /* stvewx */
+ alignmask = 0xFFFFFFFC;
+ break;
+ case 231: /* stvx */
+ case 487: /* stvxl */
+ alignmask = 0xFFFFFFF0;
+ break;
+ }
+ break;
+ case 725: /* stswi */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ break;
+ default: /* ignore instruction */
+ return (void *) 0;
+ }
+ break;
+ default: /* ignore instruction */
+ return (void *) 0;
+ }
+
+ addr = (baseA + baseB) + disp;
+ addr &= alignmask;
+ return (void *) addr;
+}
diff --git a/libsigsegv/src/fault-macosdarwin5-powerpc.h b/libsigsegv/src/fault-macosdarwin5-powerpc.h
new file mode 100644
index 00000000..9998061c
--- /dev/null
+++ b/libsigsegv/src/fault-macosdarwin5-powerpc.h
@@ -0,0 +1,26 @@
+/* Fault handler information. MacOSX/Darwin5/PowerPC version.
+ Copyright (C) 2002-2004 Bruno Haible <bruno@clisp.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 "fault-macosdarwin5-powerpc.c"
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS (unsigned long) get_fault_addr (scp)
+#define SIGSEGV_FAULT_CONTEXT scp
+#if 0
+#define SIGSEGV_FAULT_STACKPOINTER (&((unsigned int *) scp->sc_regs)[2])[1]
+#endif
+#define SIGSEGV_FAULT_STACKPOINTER (scp->sc_regs ? ((unsigned int *) scp->sc_regs)[3] : scp->sc_sp)
diff --git a/libsigsegv/src/fault-macosdarwin7-powerpc.c b/libsigsegv/src/fault-macosdarwin7-powerpc.c
new file mode 100644
index 00000000..e8e9337a
--- /dev/null
+++ b/libsigsegv/src/fault-macosdarwin7-powerpc.c
@@ -0,0 +1,131 @@
+/* Fault handler information subroutine. MacOSX/Darwin7/PowerPC version.
+ * Taken from gcc-3.2/boehm-gc/os_dep.c.
+ *
+ * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
+ * Copyright (c) 1991-1995 by Xerox Corporation. All rights reserved.
+ * Copyright (c) 1996-1999 by Silicon Graphics. All rights reserved.
+ * Copyright (c) 1999 by Hewlett-Packard Company. All rights reserved.
+ *
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ */
+
+#include <ucontext.h>
+
+/* Decodes the machine instruction which was responsible for the sending of the
+ SIGBUS signal. Sadly this is the only way to find the faulting address
+ because the signal handler doesn't get it directly from the kernel (although
+ it is available on the Mach level, but dropped by the BSD personality before
+ it calls our signal handler...)
+ This code should be able to deal correctly with all PPCs starting from the
+ 601 up to and including the G4s (including Velocity Engine). */
+#define EXTRACT_OP1(iw) (((iw) & 0xFC000000) >> 26)
+#define EXTRACT_OP2(iw) (((iw) & 0x000007FE) >> 1)
+#define EXTRACT_REGA(iw) (((iw) & 0x001F0000) >> 16)
+#define EXTRACT_REGB(iw) (((iw) & 0x03E00000) >> 21)
+#define EXTRACT_REGC(iw) (((iw) & 0x0000F800) >> 11)
+#define EXTRACT_DISP(iw) ((short *) &(iw))[1]
+
+static void *
+get_fault_addr (siginfo_t *sip, ucontext_t *ucp)
+{
+ unsigned int instr = *(unsigned int *) sip->si_addr;
+ unsigned int *regs =
+#if __DARWIN_UNIX03
+ &ucp->uc_mcontext->ss.__r0; /* r0..r31 */
+#else
+ &ucp->uc_mcontext->ss.r0; /* r0..r31 */
+#endif
+ int disp = 0;
+ int tmp;
+ unsigned int baseA = 0;
+ unsigned int baseB = 0;
+ unsigned int addr;
+ unsigned int alignmask = 0xFFFFFFFF;
+
+ switch (EXTRACT_OP1 (instr))
+ {
+ case 38: /* stb */
+ case 39: /* stbu */
+ case 54: /* stfd */
+ case 55: /* stfdu */
+ case 52: /* stfs */
+ case 53: /* stfsu */
+ case 44: /* sth */
+ case 45: /* sthu */
+ case 47: /* stmw */
+ case 36: /* stw */
+ case 37: /* stwu */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ disp = EXTRACT_DISP (instr);
+ break;
+ case 31:
+ switch (EXTRACT_OP2 (instr))
+ {
+ case 86: /* dcbf */
+ case 54: /* dcbst */
+ case 1014: /* dcbz */
+ case 247: /* stbux */
+ case 215: /* stbx */
+ case 759: /* stfdux */
+ case 727: /* stfdx */
+ case 983: /* stfiwx */
+ case 695: /* stfsux */
+ case 663: /* stfsx */
+ case 918: /* sthbrx */
+ case 439: /* sthux */
+ case 407: /* sthx */
+ case 661: /* stswx */
+ case 662: /* stwbrx */
+ case 150: /* stwcx. */
+ case 183: /* stwux */
+ case 151: /* stwx */
+ case 135: /* stvebx */
+ case 167: /* stvehx */
+ case 199: /* stvewx */
+ case 231: /* stvx */
+ case 487: /* stvxl */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ baseB = regs[EXTRACT_REGC (instr)];
+ /* Determine Altivec alignment mask. */
+ switch (EXTRACT_OP2 (instr))
+ {
+ case 167: /* stvehx */
+ alignmask = 0xFFFFFFFE;
+ break;
+ case 199: /* stvewx */
+ alignmask = 0xFFFFFFFC;
+ break;
+ case 231: /* stvx */
+ case 487: /* stvxl */
+ alignmask = 0xFFFFFFF0;
+ break;
+ }
+ break;
+ case 725: /* stswi */
+ tmp = EXTRACT_REGA (instr);
+ if (tmp > 0)
+ baseA = regs[tmp];
+ break;
+ default: /* ignore instruction */
+ return (void *) 0;
+ }
+ break;
+ default: /* ignore instruction */
+ return (void *) 0;
+ }
+
+ addr = (baseA + baseB) + disp;
+ addr &= alignmask;
+ return (void *) addr;
+}
diff --git a/libsigsegv/src/fault-macosdarwin7-powerpc.h b/libsigsegv/src/fault-macosdarwin7-powerpc.h
new file mode 100644
index 00000000..02a26bd8
--- /dev/null
+++ b/libsigsegv/src/fault-macosdarwin7-powerpc.h
@@ -0,0 +1,28 @@
+/* Fault handler information. MacOSX/Darwin7/PowerPC version.
+ Copyright (C) 2002-2004, 2007 Bruno Haible <bruno@clisp.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 "fault-macosdarwin7-powerpc.c"
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, ucontext_t *ucp
+#define SIGSEGV_FAULT_ADDRESS (unsigned long) get_fault_addr (sip, ucp)
+#define SIGSEGV_FAULT_CONTEXT ucp
+#define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
+#if __DARWIN_UNIX03
+#define SIGSEGV_FAULT_STACKPOINTER ucp->uc_mcontext->ss.__r1
+#else
+#define SIGSEGV_FAULT_STACKPOINTER ucp->uc_mcontext->ss.r1
+#endif
diff --git a/libsigsegv/src/fault-netbsd-alpha.c b/libsigsegv/src/fault-netbsd-alpha.c
new file mode 100644
index 00000000..6ca67bc1
--- /dev/null
+++ b/libsigsegv/src/fault-netbsd-alpha.c
@@ -0,0 +1,39 @@
+/* Fault handler information subroutine. NetBSD/Alpha version.
+ * Taken from gcc-3.3/boehm-gc/os_dep.c.
+ *
+ * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
+ * Copyright (c) 1991-1995 by Xerox Corporation. All rights reserved.
+ * Copyright (c) 1996-1999 by Silicon Graphics. All rights reserved.
+ * Copyright (c) 1999 by Hewlett-Packard Company. All rights reserved.
+ *
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ */
+
+/* Decodes the machine instruction which was responsible for the sending of the
+ SIGBUS signal. Luckily this is much easier than, say, on the PowerPC. */
+
+static void *
+get_fault_addr (struct sigcontext *scp)
+{
+ unsigned int instr = *((unsigned int *)(scp->sc_pc));
+ unsigned long faultaddr;
+
+ /* Instructions which access memory have operands of the form ARG_MEM or
+ ARG_FMEM, consisting of
+ - a base register specification (PRB) in bits 20..16,
+ - a memory displacement (MDISP) in bits 15..0,
+ - an general register specification (RA) or a floating-point register
+ specification (FA) in bits 25..21.
+ See binutils-2.13.90.0.16/opcodes/alpha-opc.c. */
+
+ faultaddr = scp->sc_regs[(instr >> 16) & 0x1f];
+ faultaddr += (unsigned long) (long) (((int)instr << 16) >> 16);
+ return (void *) faultaddr;
+}
diff --git a/libsigsegv/src/fault-netbsd-alpha.h b/libsigsegv/src/fault-netbsd-alpha.h
new file mode 100644
index 00000000..595faf57
--- /dev/null
+++ b/libsigsegv/src/fault-netbsd-alpha.h
@@ -0,0 +1,26 @@
+/* Fault handler information. NetBSD/Alpha version.
+ Copyright (C) 2003 Paolo Bonzini <bonzini@gnu.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. */
+
+/* NetBSD's sc_sp field depends on machine/reg.h's definition of R_SP. */
+#include <machine/reg.h>
+
+#include "fault-netbsd-alpha.c"
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS ((unsigned long) get_fault_addr (scp))
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_STACKPOINTER ((unsigned int *) scp->sc_sp)
diff --git a/libsigsegv/src/fault-netbsd.h b/libsigsegv/src/fault-netbsd.h
new file mode 100644
index 00000000..a9f2b17c
--- /dev/null
+++ b/libsigsegv/src/fault-netbsd.h
@@ -0,0 +1,29 @@
+/* Fault handler information. NetBSD version.
+ Copyright (C) 2006, 2009 Bruno Haible <bruno@clisp.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 "fault-posix-ucontext.h"
+
+/* _UC_MACHINE_SP is a platform independent macro.
+ Defined in <machine/mcontext.h>, see
+ http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/$arch/include/mcontext.h
+ Supported on alpha, amd64, i386, ia64, m68k, mips, powerpc, sparc since
+ NetBSD 2.0.
+ On i386, _UC_MACHINE_SP is the same as ->uc_mcontext.__gregs[_REG_UESP],
+ and apparently the same value as ->uc_mcontext.__gregs[_REG_ESP]. */
+#ifdef _UC_MACHINE_SP
+#define SIGSEGV_FAULT_STACKPOINTER _UC_MACHINE_SP ((ucontext_t *) ucp)
+#endif
diff --git a/libsigsegv/src/fault-none.h b/libsigsegv/src/fault-none.h
new file mode 100644
index 00000000..064a3f0c
--- /dev/null
+++ b/libsigsegv/src/fault-none.h
@@ -0,0 +1,17 @@
+/* Fault handler information. Version for platforms lacking support,
+ or with a self-contained handler.c.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
diff --git a/libsigsegv/src/fault-openbsd-i386.h b/libsigsegv/src/fault-openbsd-i386.h
new file mode 100644
index 00000000..23339eda
--- /dev/null
+++ b/libsigsegv/src/fault-openbsd-i386.h
@@ -0,0 +1,20 @@
+/* Fault handler information. OpenBSD/i386 version.
+ Copyright (C) 2003 Bruno Haible <bruno@clisp.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 "fault-openbsd.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_esp
diff --git a/libsigsegv/src/fault-openbsd.h b/libsigsegv/src/fault-openbsd.h
new file mode 100644
index 00000000..c784023e
--- /dev/null
+++ b/libsigsegv/src/fault-openbsd.h
@@ -0,0 +1,21 @@
+/* Fault handler information. OpenBSD version.
+ Copyright (C) 2003 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, struct sigcontext *scp
+#define SIGSEGV_FAULT_ADDRESS sip->si_addr
+#define SIGSEGV_FAULT_CONTEXT scp
+#define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
diff --git a/libsigsegv/src/fault-osf-alpha.h b/libsigsegv/src/fault-osf-alpha.h
new file mode 100644
index 00000000..e56a6539
--- /dev/null
+++ b/libsigsegv/src/fault-osf-alpha.h
@@ -0,0 +1,21 @@
+/* Fault handler information. OSF/1 Alpha version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 "fault-osf.h"
+
+#define SIGSEGV_FAULT_ADDRESS scp->sc_traparg_a0
+#define SIGSEGV_FAULT_STACKPOINTER scp->sc_regs[30]
diff --git a/libsigsegv/src/fault-osf.h b/libsigsegv/src/fault-osf.h
new file mode 100644
index 00000000..8b939578
--- /dev/null
+++ b/libsigsegv/src/fault-osf.h
@@ -0,0 +1,19 @@
+/* Fault handler information. OSF/1 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp
+#define SIGSEGV_FAULT_CONTEXT scp
diff --git a/libsigsegv/src/fault-posix-ucontext.h b/libsigsegv/src/fault-posix-ucontext.h
new file mode 100644
index 00000000..78bdd976
--- /dev/null
+++ b/libsigsegv/src/fault-posix-ucontext.h
@@ -0,0 +1,23 @@
+/* Fault handler information. POSIX:2001 (= SUSV3 = XPG 6) version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <ucontext.h>
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, void *ucp
+#define SIGSEGV_FAULT_ADDRESS sip->si_addr
+#define SIGSEGV_FAULT_CONTEXT ((ucontext_t *) ucp)
+#define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
diff --git a/libsigsegv/src/fault-posix.h b/libsigsegv/src/fault-posix.h
new file mode 100644
index 00000000..85cd7df5
--- /dev/null
+++ b/libsigsegv/src/fault-posix.h
@@ -0,0 +1,21 @@
+/* Fault handler information. POSIX:2008 (XPG 7) version.
+ Copyright (C) 2002, 2009 Bruno Haible <bruno@clisp.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. */
+
+#define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, void *context
+#define SIGSEGV_FAULT_ADDRESS sip->si_addr
+#define SIGSEGV_FAULT_CONTEXT context
+#define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
diff --git a/libsigsegv/src/fault-solaris-i386.h b/libsigsegv/src/fault-solaris-i386.h
new file mode 100644
index 00000000..40035c70
--- /dev/null
+++ b/libsigsegv/src/fault-solaris-i386.h
@@ -0,0 +1,20 @@
+/* Fault handler information. Solaris/i386 version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 "fault-solaris.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[ESP]
diff --git a/libsigsegv/src/fault-solaris-sparc.h b/libsigsegv/src/fault-solaris-sparc.h
new file mode 100644
index 00000000..878fe849
--- /dev/null
+++ b/libsigsegv/src/fault-solaris-sparc.h
@@ -0,0 +1,20 @@
+/* Fault handler information. Solaris/SPARC version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 "fault-solaris.h"
+
+#define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[REG_O6]
diff --git a/libsigsegv/src/fault-solaris.h b/libsigsegv/src/fault-solaris.h
new file mode 100644
index 00000000..76135671
--- /dev/null
+++ b/libsigsegv/src/fault-solaris.h
@@ -0,0 +1,18 @@
+/* Fault handler information. Solaris version.
+ Copyright (C) 2002, 2009 Bruno Haible <bruno@clisp.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 "fault-posix-ucontext.h"
diff --git a/libsigsegv/src/fault.h b/libsigsegv/src/fault.h
new file mode 100644
index 00000000..060c83c4
--- /dev/null
+++ b/libsigsegv/src/fault.h
@@ -0,0 +1,37 @@
+/* Fault handler information.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* The included file defines:
+
+ SIGSEGV_FAULT_HANDLER_ARGLIST
+ is the argument list for the actual fault handler.
+
+ SIGSEGV_FAULT_ADDRESS
+ is a macro for fetching the fault address.
+
+ and if available (optional):
+
+ SIGSEGV_FAULT_CONTEXT
+ is a macro giving a pointer to the entire fault context (i.e.
+ the register set etc.).
+
+ SIGSEGV_FAULT_STACKPOINTER
+ is a macro for fetching the stackpointer at the moment the fault
+ occurred.
+ */
+
+#include CFG_FAULT
diff --git a/libsigsegv/src/handler-macos.c b/libsigsegv/src/handler-macos.c
new file mode 100644
index 00000000..3a39e727
--- /dev/null
+++ b/libsigsegv/src/handler-macos.c
@@ -0,0 +1,563 @@
+/* Fault handler information. MacOSX version.
+ Copyright (C) 1993-1999, 2002-2003, 2007-2008 Bruno Haible <bruno@clisp.org>
+ Copyright (C) 2003 Paolo Bonzini <bonzini@gnu.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 "sigsegv.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+#include <mach/mach.h>
+#include <mach/mach_error.h>
+#include <mach/thread_status.h>
+#include <mach/exception.h>
+#include <mach/task.h>
+#include <pthread.h>
+
+/* For MacOSX. */
+#ifndef SS_DISABLE
+#define SS_DISABLE SA_DISABLE
+#endif
+
+/* In the header files of MacOS X >= 10.5, when compiling with flags that lead
+ to __DARWIN_UNIX03=1 (see <sys/cdefs.h>), the register names are prefixed
+ with '__'. To test for MacOS X >= 10.5 versus < 10.5, we cannot use a
+ predefined macro such as __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
+ because that does not change when a cross-compile via -isysroot is
+ activated. Instead use some macro defined inside the header files and which
+ changed in 10.5, such as
+ File Macro 10.4 10.5
+ <mach/machine/exception.h> EXC_TYPES_COUNT 10 11
+ <mach/exception_types.h> EXC_CRASH -- 10
+ <mach/mach_vm.h> mach_vm_MSG_COUNT 18 19
+ <mach/machine.h> CPU_TYPE_ARM -- ...
+ <mach/memory_object_control.h> memory_object_control_MSG_COUNT 11 12
+ <mach/memory_object_types.h> UPL_ABORT_REFERENCE -- 0x80
+ <mach/message.h> MACH_RCV_TRAILER_AV -- 8
+ <mach/port.h> MACH_PORT_RIGHT_LABELH -- ...
+ <mach/thread_policy.h> THREAD_AFFINITY_POLICY -- 4
+ <mach/vm_region.h> VM_REGION_SUBMAP_SHORT_INFO_COUNT_64 ...
+ */
+#if EXC_TYPES_COUNT >= 11
+# define MacOS_X_10_5_HEADERS 1
+#endif
+
+#include "machfault.h"
+
+/* The following sources were used as a *reference* for this exception handling
+ code:
+ 1. Apple's mach/xnu documentation
+ 2. Timothy J. Wood's "Mach Exception Handlers 101" post to the
+ omnigroup's macosx-dev list.
+ www.omnigroup.com/mailman/archive/macosx-dev/2000-June/002030.html */
+
+/* This is not defined in any header, although documented. */
+
+/* http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/exc_server.html says:
+ The exc_server function is the MIG generated server handling function
+ to handle messages from the kernel relating to the occurrence of an
+ exception in a thread. Such messages are delivered to the exception port
+ set via thread_set_exception_ports or task_set_exception_ports. When an
+ exception occurs in a thread, the thread sends an exception message to its
+ exception port, blocking in the kernel waiting for the receipt of a reply.
+ The exc_server function performs all necessary argument handling for this
+ kernel message and calls catch_exception_raise, catch_exception_raise_state
+ or catch_exception_raise_state_identity, which should handle the exception.
+ If the called routine returns KERN_SUCCESS, a reply message will be sent,
+ allowing the thread to continue from the point of the exception; otherwise,
+ no reply message is sent and the called routine must have dealt with the
+ exception thread directly. */
+extern boolean_t
+ exc_server (mach_msg_header_t *request_msg,
+ mach_msg_header_t *reply_msg);
+
+
+/* http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/catch_exception_raise.html
+ These functions are defined in this file, and called by exc_server.
+ FIXME: What needs to be done when this code is put into a shared library? */
+kern_return_t
+catch_exception_raise (mach_port_t exception_port,
+ mach_port_t thread,
+ mach_port_t task,
+ exception_type_t exception,
+ exception_data_t code,
+ mach_msg_type_number_t code_count);
+kern_return_t
+catch_exception_raise_state (mach_port_t exception_port,
+ exception_type_t exception,
+ exception_data_t code,
+ mach_msg_type_number_t code_count,
+ thread_state_flavor_t *flavor,
+ thread_state_t in_state,
+ mach_msg_type_number_t in_state_count,
+ thread_state_t out_state,
+ mach_msg_type_number_t *out_state_count);
+kern_return_t
+catch_exception_raise_state_identity (mach_port_t exception_port,
+ mach_port_t thread,
+ mach_port_t task,
+ exception_type_t exception,
+ exception_data_t code,
+ mach_msg_type_number_t codeCnt,
+ thread_state_flavor_t *flavor,
+ thread_state_t in_state,
+ mach_msg_type_number_t in_state_count,
+ thread_state_t out_state,
+ mach_msg_type_number_t *out_state_count);
+
+
+/* Our exception thread. */
+static mach_port_t our_exception_thread;
+
+/* The exception port on which our thread listens. */
+static mach_port_t our_exception_port;
+
+
+/* mach_initialize() status:
+ 0: not yet called
+ 1: called and succeeded
+ -1: called and failed */
+static int mach_initialized = 0;
+
+/* Communication area for the exception state and thread state. */
+static SIGSEGV_THREAD_STATE_TYPE save_thread_state;
+
+/* Check for reentrant signals. */
+static int emergency = -1;
+
+/* User's stack overflow handler. */
+static stackoverflow_handler_t stk_user_handler = (stackoverflow_handler_t)NULL;
+static unsigned long stk_extra_stack;
+static unsigned long stk_extra_stack_size;
+
+/* User's fault handler. */
+static sigsegv_handler_t user_handler = (sigsegv_handler_t)NULL;
+
+/* Thread that signalled the exception. Only set while user_handler is being
+ invoked. */
+static mach_port_t signalled_thread = (mach_port_t) 0;
+
+/* A handler that is called in the faulting thread. It terminates the thread. */
+static void
+terminating_handler ()
+{
+ /* Dump core. */
+ raise (SIGSEGV);
+
+ /* Seriously. */
+ abort ();
+}
+
+/* A handler that is called in the faulting thread, on an alternate stack.
+ It calls the user installed stack overflow handler. */
+static void
+altstack_handler ()
+{
+ /* We arrive here when the user refused to handle a fault. */
+
+ /* Check if it is plausibly a stack overflow, and the user installed
+ a stack overflow handler. */
+ if (stk_user_handler)
+ {
+ emergency++;
+ /* Call user's handler. */
+ (*stk_user_handler) (emergency, &save_thread_state);
+ }
+
+ /* Else, terminate the thread. */
+ terminating_handler ();
+}
+
+
+/* Handle an exception by invoking the user's fault handler and/or forwarding
+ the duty to the previously installed handlers. */
+kern_return_t
+catch_exception_raise (mach_port_t exception_port,
+ mach_port_t thread,
+ mach_port_t task,
+ exception_type_t exception,
+ exception_data_t code,
+ mach_msg_type_number_t code_count)
+{
+#ifdef SIGSEGV_EXC_STATE_TYPE
+ SIGSEGV_EXC_STATE_TYPE exc_state;
+#endif
+ SIGSEGV_THREAD_STATE_TYPE thread_state;
+ mach_msg_type_number_t state_count;
+ unsigned long addr;
+ unsigned long sp;
+
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Exception: 0x%x Code: 0x%x 0x%x in catch....\n",
+ exception,
+ code_count > 0 ? code[0] : -1,
+ code_count > 1 ? code[1] : -1);
+#endif
+
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/thread_get_state.html. */
+#ifdef SIGSEGV_EXC_STATE_TYPE
+ state_count = SIGSEGV_EXC_STATE_COUNT;
+ if (thread_get_state (thread, SIGSEGV_EXC_STATE_FLAVOR,
+ (void *) &exc_state, &state_count)
+ != KERN_SUCCESS)
+ {
+ /* The thread is supposed to be suspended while the exception handler
+ is called. This shouldn't fail. */
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "thread_get_state failed for exception state\n");
+#endif
+ return KERN_FAILURE;
+ }
+#endif
+
+ state_count = SIGSEGV_THREAD_STATE_COUNT;
+ if (thread_get_state (thread, SIGSEGV_THREAD_STATE_FLAVOR,
+ (void *) &thread_state, &state_count)
+ != KERN_SUCCESS)
+ {
+ /* The thread is supposed to be suspended while the exception handler
+ is called. This shouldn't fail. */
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "thread_get_state failed for thread state\n");
+#endif
+ return KERN_FAILURE;
+ }
+
+ addr = (unsigned long) (SIGSEGV_FAULT_ADDRESS (thread_state, exc_state));
+ sp = (unsigned long) (SIGSEGV_STACK_POINTER (thread_state));
+
+ /* Got the thread's state. Now extract the address that caused the
+ fault and invoke the user's handler. */
+ save_thread_state = thread_state;
+
+ /* If the fault address is near the stack pointer, it's a stack overflow.
+ Otherwise, treat it like a normal SIGSEGV. */
+ if (addr <= sp + 4096 && sp <= addr + 4096)
+ {
+ unsigned long new_safe_esp;
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Treating as stack overflow, sp = 0x%lx\n", (char *) sp);
+#endif
+ new_safe_esp =
+#if STACK_DIRECTION < 0
+ stk_extra_stack + stk_extra_stack_size - 256;
+#else
+ stk_extra_stack + 256;
+#endif
+#if defined __x86_64__ || defined __i386__
+ new_safe_esp &= -16; /* align */
+ new_safe_esp -= sizeof (void *); /* make room for (unused) return address slot */
+#endif
+ SIGSEGV_STACK_POINTER (thread_state) = new_safe_esp;
+ /* Continue handling this fault in the faulting thread. (We cannot longjmp while
+ in the exception handling thread, so we need to mimic what signals do!) */
+ SIGSEGV_PROGRAM_COUNTER (thread_state) = (unsigned long) altstack_handler;
+ }
+ else
+ {
+ if (user_handler)
+ {
+ int done;
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Calling user handler, addr = 0x%lx\n", (char *) addr);
+#endif
+ signalled_thread = thread;
+ done = (*user_handler) ((void *) addr, 1);
+ signalled_thread = (mach_port_t) 0;
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Back from user handler\n");
+#endif
+ if (done)
+ return KERN_SUCCESS;
+ }
+ SIGSEGV_PROGRAM_COUNTER (thread_state) = (unsigned long) terminating_handler;
+ }
+
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/thread_set_state.html. */
+ if (thread_set_state (thread, SIGSEGV_THREAD_STATE_FLAVOR,
+ (void *) &thread_state, state_count)
+ != KERN_SUCCESS)
+ {
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "thread_set_state failed for altstack state\n");
+#endif
+ return KERN_FAILURE;
+ }
+ return KERN_SUCCESS;
+}
+
+
+/* The main function of the thread listening for exceptions. */
+static void *
+mach_exception_thread (void *arg)
+{
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_thread_self.html. */
+ our_exception_thread = mach_thread_self ();
+
+ for (;;)
+ {
+ /* These two structures contain some private kernel data. We don't need
+ to access any of it so we don't bother defining a proper struct. The
+ correct definitions are in the xnu source code. */
+ /* Buffer for a message to be received. */
+ struct
+ {
+ mach_msg_header_t head;
+ mach_msg_body_t msgh_body;
+ char data[1024];
+ }
+ msg;
+ /* Buffer for a reply message. */
+ struct
+ {
+ mach_msg_header_t head;
+ char data[1024];
+ }
+ reply;
+
+ mach_msg_return_t retval;
+
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Exception thread going to sleep\n");
+#endif
+
+ /* Wait for a message on the exception port. */
+ retval = mach_msg (&msg.head, MACH_RCV_MSG | MACH_RCV_LARGE, 0,
+ sizeof (msg), our_exception_port,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL);
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Exception thread woke up\n");
+#endif
+ if (retval != MACH_MSG_SUCCESS)
+ {
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "mach_msg receive failed with %d %s\n",
+ (int) retval, mach_error_string (retval));
+#endif
+ abort ();
+ }
+
+ /* Handle the message: Call exc_server, which will call
+ catch_exception_raise and produce a reply message. */
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Calling exc_server\n");
+#endif
+ exc_server (&msg.head, &reply.head);
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Finished exc_server\n");
+#endif
+
+ /* Send the reply. */
+ if (mach_msg (&reply.head, MACH_SEND_MSG, reply.head.msgh_size,
+ 0, MACH_PORT_NULL,
+ MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL)
+ != MACH_MSG_SUCCESS)
+ {
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "mach_msg send failed\n");
+#endif
+ abort ();
+ }
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "Reply successful\n");
+#endif
+ }
+}
+
+
+/* Initialize the Mach exception handler thread.
+ Return 0 if OK, -1 on error. */
+static int
+mach_initialize ()
+{
+ mach_port_t self;
+ exception_mask_t mask;
+ pthread_attr_t attr;
+ pthread_t thread;
+
+ self = mach_task_self ();
+
+ /* Allocate a port on which the thread shall listen for exceptions. */
+ if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port)
+ != KERN_SUCCESS)
+ return -1;
+
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */
+ if (mach_port_insert_right (self, our_exception_port, our_exception_port,
+ MACH_MSG_TYPE_MAKE_SEND)
+ != KERN_SUCCESS)
+ return -1;
+
+ /* The exceptions we want to catch. Only EXC_BAD_ACCESS is interesting
+ for us (see above in function catch_exception_raise). */
+ mask = EXC_MASK_BAD_ACCESS;
+
+ /* Create the thread listening on the exception port. */
+ if (pthread_attr_init (&attr) != 0)
+ return -1;
+ if (pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED) != 0)
+ return -1;
+ if (pthread_create (&thread, &attr, mach_exception_thread, NULL) != 0)
+ return -1;
+ pthread_attr_destroy (&attr);
+
+ /* Replace the exception port info for these exceptions with our own.
+ Note that we replace the exception port for the entire task, not only
+ for a particular thread. This has the effect that when our exception
+ port gets the message, the thread specific exception port has already
+ been asked, and we don't need to bother about it.
+ See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */
+ if (task_set_exception_ports (self, mask, our_exception_port,
+ EXCEPTION_DEFAULT, MACHINE_THREAD_STATE)
+ != KERN_SUCCESS)
+ return -1;
+
+ return 0;
+}
+
+
+int
+sigsegv_install_handler (sigsegv_handler_t handler)
+{
+ if (!mach_initialized)
+ mach_initialized = (mach_initialize () >= 0 ? 1 : -1);
+ if (mach_initialized < 0)
+ return -1;
+
+ user_handler = handler;
+
+ return 0;
+}
+
+void
+sigsegv_deinstall_handler (void)
+{
+ user_handler = (sigsegv_handler_t)NULL;
+}
+
+int
+sigsegv_leave_handler (void (*continuation) (void*, void*, void*),
+ void* cont_arg1, void* cont_arg2, void* cont_arg3)
+{
+ emergency--;
+ if (mach_thread_self () == our_exception_thread)
+ {
+ /* Inside user_handler invocation. */
+ mach_port_t thread;
+ SIGSEGV_THREAD_STATE_TYPE thread_state;
+ mach_msg_type_number_t state_count;
+
+ thread = signalled_thread;
+ if (thread == (mach_port_t) 0)
+ {
+ /* The variable signalled_thread was supposed to be set! */
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "sigsegv_leave_handler: signalled_thread not set\n");
+#endif
+ return 0;
+ }
+
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/thread_get_state.html. */
+ state_count = SIGSEGV_THREAD_STATE_COUNT;
+ if (thread_get_state (thread, SIGSEGV_THREAD_STATE_FLAVOR,
+ (void *) &thread_state, &state_count)
+ != KERN_SUCCESS)
+ {
+ /* The thread was supposed to be suspended! */
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "sigsegv_leave_handler: thread_get_state failed for thread state\n");
+#endif
+ return 0;
+ }
+
+#if defined __ppc64__ || defined __ppc__ || defined __x86_64__
+ /* Store arguments in registers. */
+ SIGSEGV_INTEGER_ARGUMENT_1 (thread_state) = (unsigned long) cont_arg1;
+ SIGSEGV_INTEGER_ARGUMENT_2 (thread_state) = (unsigned long) cont_arg2;
+ SIGSEGV_INTEGER_ARGUMENT_3 (thread_state) = (unsigned long) cont_arg3;
+#endif
+#if defined __x86_64__
+ /* Align stack. */
+ {
+ unsigned long new_esp = SIGSEGV_STACK_POINTER (thread_state);
+ new_esp &= -16; /* align */
+ new_esp -= sizeof (void *); *(void **)new_esp = SIGSEGV_FRAME_POINTER (thread_state); /* push %rbp */
+ SIGSEGV_STACK_POINTER (thread_state) = new_esp;
+ SIGSEGV_FRAME_POINTER (thread_state) = new_esp; /* mov %rsp,%rbp */
+ }
+#elif defined __i386__
+ /* Push arguments onto the stack. */
+ {
+ unsigned long new_esp = SIGSEGV_STACK_POINTER (thread_state);
+ new_esp &= -16; /* align */
+ new_esp -= sizeof (void *); /* unused room, alignment */
+ new_esp -= sizeof (void *); *(void **)new_esp = cont_arg3;
+ new_esp -= sizeof (void *); *(void **)new_esp = cont_arg2;
+ new_esp -= sizeof (void *); *(void **)new_esp = cont_arg1;
+ new_esp -= sizeof (void *); /* make room for (unused) return address slot */
+ SIGSEGV_STACK_POINTER (thread_state) = new_esp;
+ }
+#endif
+ /* Point program counter to continuation to be executed. */
+ SIGSEGV_PROGRAM_COUNTER (thread_state) = (unsigned long) continuation;
+
+ /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/thread_set_state.html. */
+ if (thread_set_state (thread, SIGSEGV_THREAD_STATE_FLAVOR,
+ (void *) &thread_state, state_count)
+ != KERN_SUCCESS)
+ {
+#ifdef DEBUG_EXCEPTION_HANDLING
+ fprintf (stderr, "sigsegv_leave_handler: thread_set_state failed\n");
+#endif
+ return 0;
+ }
+
+ return 1;
+ }
+ else
+ {
+ /* Inside stk_user_handler invocation. Stay in the same thread. */
+ (*continuation) (cont_arg1, cont_arg2, cont_arg3);
+ return 1;
+ }
+}
+
+int
+stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void *extra_stack, unsigned long extra_stack_size)
+{
+ if (!mach_initialized)
+ mach_initialized = (mach_initialize () >= 0 ? 1 : -1);
+ if (mach_initialized < 0)
+ return -1;
+
+ stk_user_handler = handler;
+ stk_extra_stack = (unsigned long) extra_stack;
+ stk_extra_stack_size = extra_stack_size;
+ return 0;
+}
+
+void
+stackoverflow_deinstall_handler (void)
+{
+ stk_user_handler = (stackoverflow_handler_t) NULL;
+}
diff --git a/libsigsegv/src/handler-none.c b/libsigsegv/src/handler-none.c
new file mode 100644
index 00000000..51a13f6f
--- /dev/null
+++ b/libsigsegv/src/handler-none.c
@@ -0,0 +1,49 @@
+/* Fault handler information.
+ Copyright (C) 1993-1999, 2002, 2008 Bruno Haible <bruno@clisp.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 "sigsegv.h"
+
+int
+sigsegv_install_handler (sigsegv_handler_t handler)
+{
+ return -1;
+}
+
+void
+sigsegv_deinstall_handler (void)
+{
+}
+
+int
+sigsegv_leave_handler (void (*continuation) (void*, void*, void*),
+ void* cont_arg1, void* cont_arg2, void* cont_arg3)
+{
+ (*continuation) (cont_arg1, cont_arg2, cont_arg3);
+ return 1;
+}
+
+int
+stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void *extra_stack, unsigned long extra_stack_size)
+{
+ return -1;
+}
+
+void
+stackoverflow_deinstall_handler (void)
+{
+}
diff --git a/libsigsegv/src/handler-unix.c b/libsigsegv/src/handler-unix.c
new file mode 100644
index 00000000..3718eb98
--- /dev/null
+++ b/libsigsegv/src/handler-unix.c
@@ -0,0 +1,542 @@
+/* Fault handler information. Unix version.
+ Copyright (C) 1993-1999, 2002-2003, 2006, 2008 Bruno Haible <bruno@clisp.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 "sigsegv.h"
+
+/* On the average Unix platform, we define
+
+ HAVE_SIGSEGV_RECOVERY
+ if there is a fault-*.h include file which defines
+ SIGSEGV_FAULT_HANDLER_ARGLIST and SIGSEGV_FAULT_ADDRESS.
+
+ HAVE_STACK_OVERFLOW_RECOVERY
+ if HAVE_SIGALTSTACK is set and
+ at least two of the following are true:
+ A) There is a fault-*.h include file which defines
+ SIGSEGV_FAULT_HANDLER_ARGLIST and SIGSEGV_FAULT_ADDRESS.
+ B) There is a fault-*.h include file which defines
+ SIGSEGV_FAULT_HANDLER_ARGLIST and SIGSEGV_FAULT_STACKPOINTER.
+ C) There is a stackvma-*.c, other than stackvma-none.c, which
+ defines sigsegv_get_vma.
+
+ Why? Obviously, to catch stack overflow, we need an alternate signal
+ stack; this requires kernel support. But we also need to distinguish
+ (with a reasonable confidence) a stack overflow from a regular SIGSEGV.
+ If we have A) and B), we use the
+ Heuristic AB: If the fault address is near the stack pointer, it's a
+ stack overflow.
+ If we have A) and C), we use the
+ Heuristic AC: If the fault address is near and beyond the bottom of
+ the stack's virtual memory area, it's a stack overflow.
+ If we have B) and C), we use the
+ Heuristic BC: If the stack pointer is near the bottom of the stack's
+ virtual memory area, it's a stack overflow.
+ This heuristic comes in two flavours: On OSes which let the stack's
+ VMA grow continuously, we determine the bottom by use of getrlimit().
+ On OSes which preallocate the stack's VMA with its maximum size
+ (like BeOS), we use the stack's VMA directly.
+ */
+
+#include <stddef.h> /* needed for NULL on SunOS4 */
+#include <stdlib.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+#include <errno.h>
+
+/* For MacOSX. */
+#ifndef SS_DISABLE
+#define SS_DISABLE SA_DISABLE
+#endif
+
+#include "fault.h"
+#include CFG_SIGNALS
+
+#if HAVE_STACK_OVERFLOW_RECOVERY
+
+#include <stdio.h> /* perror */
+
+#if HAVE_GETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h> /* declares struct rlimit */
+#endif
+
+/* Platform dependent:
+ Determine the virtual memory area of a given address. */
+#include "stackvma.h"
+
+/* Platform dependent:
+ Leaving a signal handler executing on the alternate stack. */
+#include "leave.h"
+
+#if HAVE_STACKVMA
+
+/* Address of the last byte belonging to the stack vma. */
+static unsigned long stack_top = 0;
+
+/* Needs to be called once only. */
+static void
+remember_stack_top (void *some_variable_on_stack)
+{
+ struct vma_struct vma;
+
+ if (sigsegv_get_vma ((unsigned long) some_variable_on_stack, &vma) >= 0)
+ stack_top = vma.end - 1;
+}
+
+#endif /* HAVE_STACKVMA */
+
+static stackoverflow_handler_t stk_user_handler = (stackoverflow_handler_t)NULL;
+static unsigned long stk_extra_stack;
+static unsigned long stk_extra_stack_size;
+
+#endif /* HAVE_STACK_OVERFLOW_RECOVERY */
+
+#if HAVE_SIGSEGV_RECOVERY
+
+/* User's SIGSEGV handler. */
+static sigsegv_handler_t user_handler = (sigsegv_handler_t)NULL;
+
+#endif /* HAVE_SIGSEGV_RECOVERY */
+
+
+/* Our SIGSEGV handler, with OS dependent argument list. */
+
+#if HAVE_SIGSEGV_RECOVERY
+
+static void
+sigsegv_handler (SIGSEGV_FAULT_HANDLER_ARGLIST)
+{
+ void *address = (void *) (SIGSEGV_FAULT_ADDRESS);
+
+#if HAVE_STACK_OVERFLOW_RECOVERY
+#if !(HAVE_STACKVMA || defined SIGSEGV_FAULT_STACKPOINTER)
+#error "Insufficient heuristics for detecting a stack overflow. Either define CFG_STACKVMA and HAVE_STACKVMA correctly, or define SIGSEGV_FAULT_STACKPOINTER correctly, or undefine HAVE_STACK_OVERFLOW_RECOVERY!"
+#endif
+
+ /* Call user's handler. */
+ if (user_handler && (*user_handler) (address, 0))
+ {
+ /* Handler successful. */
+ }
+ else
+ {
+ /* Handler declined responsibility. */
+
+ /* Did the user install a stack overflow handler? */
+ if (stk_user_handler)
+ {
+ /* See whether it was a stack overflow. If so, longjump away. */
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+ unsigned long old_sp = (unsigned long) (SIGSEGV_FAULT_STACKPOINTER);
+#ifdef __ia64
+ unsigned long old_bsp = (unsigned long) (SIGSEGV_FAULT_BSP_POINTER);
+#endif
+#endif
+
+#if HAVE_STACKVMA
+ /* Were we able to determine the stack top? */
+ if (stack_top)
+ {
+ /* Determine stack bounds. */
+ int saved_errno;
+ struct vma_struct vma;
+ int ret;
+
+ saved_errno = errno;
+ ret = sigsegv_get_vma (stack_top, &vma);
+ errno = saved_errno;
+ if (ret >= 0)
+ {
+ /* Heuristic AC: If the fault_address is nearer to the stack
+ segment's [start,end] than to the previous segment, we
+ consider it a stack overflow.
+ In the case of IA-64, we know that the previous segment
+ is the up-growing bsp segment, and either of the two
+ stacks can overflow. */
+ unsigned long addr = (unsigned long) address;
+
+#ifdef __ia64
+ if (addr >= vma.prev_end && addr <= vma.end - 1)
+#else
+#if STACK_DIRECTION < 0
+ if (addr >= vma.start
+ ? (addr <= vma.end - 1)
+ : vma.is_near_this (addr, &vma))
+#else
+ if (addr <= vma.end - 1
+ ? (addr >= vma.start)
+ : vma.is_near_this (addr, &vma))
+#endif
+#endif
+#else
+ /* Heuristic AB: If the fault address is near the stack pointer,
+ it's a stack overflow. */
+ unsigned long addr = (unsigned long) address;
+
+ if ((addr <= old_sp + 4096 && old_sp <= addr + 4096)
+#ifdef __ia64
+ || (addr <= old_bsp + 4096 && old_bsp <= addr + 4096)
+#endif
+ )
+ {
+ {
+#endif
+ {
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+ int emergency =
+ (old_sp >= stk_extra_stack
+ && old_sp <= stk_extra_stack + stk_extra_stack_size);
+ stackoverflow_context_t context = (SIGSEGV_FAULT_CONTEXT);
+#else
+ int emergency = 0;
+ stackoverflow_context_t context = (void *) 0;
+#endif
+ /* Call user's handler. */
+ (*stk_user_handler) (emergency, context);
+ }
+ }
+ }
+ }
+#endif /* HAVE_STACK_OVERFLOW_RECOVERY */
+
+ if (user_handler && (*user_handler) (address, 1))
+ {
+ /* Handler successful. */
+ }
+ else
+ {
+ /* Handler declined responsibility for real. */
+
+ /* Remove ourselves and dump core. */
+ SIGSEGV_FOR_ALL_SIGNALS (sig, signal (sig, SIG_DFL);)
+ }
+
+#if HAVE_STACK_OVERFLOW_RECOVERY
+ }
+#endif /* HAVE_STACK_OVERFLOW_RECOVERY */
+}
+
+#elif HAVE_STACK_OVERFLOW_RECOVERY
+
+static void
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+sigsegv_handler (SIGSEGV_FAULT_HANDLER_ARGLIST)
+#else
+sigsegv_handler (int sig)
+#endif
+{
+#if !((HAVE_GETRLIMIT && defined RLIMIT_STACK) || defined SIGSEGV_FAULT_STACKPOINTER)
+#error "Insufficient heuristics for detecting a stack overflow. Either define SIGSEGV_FAULT_STACKPOINTER correctly, or undefine HAVE_STACK_OVERFLOW_RECOVERY!"
+#endif
+
+ /* Did the user install a handler? */
+ if (stk_user_handler)
+ {
+ /* See whether it was a stack overflow. If so, longjump away. */
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+ unsigned long old_sp = (unsigned long) (SIGSEGV_FAULT_STACKPOINTER);
+#endif
+
+ /* Were we able to determine the stack top? */
+ if (stack_top)
+ {
+ /* Determine stack bounds. */
+ int saved_errno;
+ struct vma_struct vma;
+
+ saved_errno = errno;
+ if (sigsegv_get_vma (stack_top, &vma) >= 0)
+ {
+#if HAVE_GETRLIMIT && defined RLIMIT_STACK
+ /* Heuristic BC: If the stack size has reached its maximal size,
+ and old_sp is near the low end, we consider it a stack
+ overflow. */
+ struct rlimit rl;
+
+ if (getrlimit (RLIMIT_STACK, &rl) >= 0)
+ {
+ unsigned long current_stack_size = vma.end - vma.start;
+ unsigned long max_stack_size = rl.rlim_cur;
+ if (current_stack_size <= max_stack_size + 4096
+ && max_stack_size <= current_stack_size + 4096
+#else
+ {
+ if (1
+#endif
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+ /* Heuristic BC: If we know old_sp, and it is neither
+ near the low end, nor in the alternate stack, then
+ it's probably not a stack overflow. */
+ && ((old_sp >= stk_extra_stack
+ && old_sp <= stk_extra_stack + stk_extra_stack_size)
+#if STACK_DIRECTION < 0
+ || (old_sp <= vma.start + 4096
+ && vma.start <= old_sp + 4096))
+#else
+ || (old_sp <= vma.end + 4096
+ && vma.end <= old_sp + 4096))
+#endif
+#endif
+ )
+ {
+#ifdef SIGSEGV_FAULT_STACKPOINTER
+ int emergency =
+ (old_sp >= stk_extra_stack
+ && old_sp <= stk_extra_stack + stk_extra_stack_size);
+ stackoverflow_context_t context = (SIGSEGV_FAULT_CONTEXT);
+#else
+ int emergency = 0;
+ stackoverflow_context_t context = (void *) 0;
+#endif
+ /* Call user's handler. */
+ (*stk_user_handler)(emergency,context);
+ }
+ }
+ }
+ errno = saved_errno;
+ }
+ }
+
+ /* Remove ourselves and dump core. */
+ SIGSEGV_FOR_ALL_SIGNALS (sig, signal (sig, SIG_DFL);)
+}
+
+#endif
+
+
+static void
+install_for (int sig)
+{
+ struct sigaction action;
+
+#ifdef SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
+ action.sa_sigaction = &sigsegv_handler;
+#else
+ action.sa_handler = (void (*) (int)) &sigsegv_handler;
+#endif
+ /* Block most signals while SIGSEGV is being handled. */
+ /* Signals SIGKILL, SIGSTOP cannot be blocked. */
+ /* Signals SIGCONT, SIGTSTP, SIGTTIN, SIGTTOU are not blocked because
+ dealing with these signals seems dangerous. */
+ /* Signals SIGILL, SIGABRT, SIGFPE, SIGSEGV, SIGTRAP, SIGIOT, SIGEMT, SIGBUS,
+ SIGSYS, SIGSTKFLT are not blocked because these are synchronous signals,
+ which may require immediate intervention, otherwise the process may
+ starve. */
+ sigemptyset (&action.sa_mask);
+#ifdef SIGHUP
+ sigaddset (&action.sa_mask,SIGHUP);
+#endif
+#ifdef SIGINT
+ sigaddset (&action.sa_mask,SIGINT);
+#endif
+#ifdef SIGQUIT
+ sigaddset (&action.sa_mask,SIGQUIT);
+#endif
+#ifdef SIGPIPE
+ sigaddset (&action.sa_mask,SIGPIPE);
+#endif
+#ifdef SIGALRM
+ sigaddset (&action.sa_mask,SIGALRM);
+#endif
+#ifdef SIGTERM
+ sigaddset (&action.sa_mask,SIGTERM);
+#endif
+#ifdef SIGUSR1
+ sigaddset (&action.sa_mask,SIGUSR1);
+#endif
+#ifdef SIGUSR2
+ sigaddset (&action.sa_mask,SIGUSR2);
+#endif
+#ifdef SIGCHLD
+ sigaddset (&action.sa_mask,SIGCHLD);
+#endif
+#ifdef SIGCLD
+ sigaddset (&action.sa_mask,SIGCLD);
+#endif
+#ifdef SIGURG
+ sigaddset (&action.sa_mask,SIGURG);
+#endif
+#ifdef SIGIO
+ sigaddset (&action.sa_mask,SIGIO);
+#endif
+#ifdef SIGPOLL
+ sigaddset (&action.sa_mask,SIGPOLL);
+#endif
+#ifdef SIGXCPU
+ sigaddset (&action.sa_mask,SIGXCPU);
+#endif
+#ifdef SIGXFSZ
+ sigaddset (&action.sa_mask,SIGXFSZ);
+#endif
+#ifdef SIGVTALRM
+ sigaddset (&action.sa_mask,SIGVTALRM);
+#endif
+#ifdef SIGPROF
+ sigaddset (&action.sa_mask,SIGPROF);
+#endif
+#ifdef SIGPWR
+ sigaddset (&action.sa_mask,SIGPWR);
+#endif
+#ifdef SIGLOST
+ sigaddset (&action.sa_mask,SIGLOST);
+#endif
+#ifdef SIGWINCH
+ sigaddset (&action.sa_mask,SIGWINCH);
+#endif
+ /* Note that sigaction() implicitly adds sig itself to action.sa_mask. */
+ /* Ask the OS to provide a structure siginfo_t to the handler. */
+#ifdef SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO
+ action.sa_flags = SA_SIGINFO;
+#else
+ action.sa_flags = 0;
+#endif
+#if HAVE_STACK_OVERFLOW_RECOVERY && HAVE_SIGALTSTACK /* not BeOS */
+ /* Work around Linux 2.2.5 bug: If SA_ONSTACK is specified but sigaltstack()
+ has not been called, the kernel will busy loop, eating CPU time. So
+ avoid setting SA_ONSTACK until the user has requested stack overflow
+ handling. */
+ if (stk_user_handler)
+ action.sa_flags |= SA_ONSTACK;
+#endif
+ sigaction (sig, &action, (struct sigaction *) NULL);
+}
+
+int
+sigsegv_install_handler (sigsegv_handler_t handler)
+{
+#if HAVE_SIGSEGV_RECOVERY
+ user_handler = handler;
+
+ SIGSEGV_FOR_ALL_SIGNALS (sig, install_for (sig);)
+
+ return 0;
+#else
+ return -1;
+#endif
+}
+
+void
+sigsegv_deinstall_handler (void)
+{
+#if HAVE_SIGSEGV_RECOVERY
+ user_handler = (sigsegv_handler_t)NULL;
+
+#if HAVE_STACK_OVERFLOW_RECOVERY
+ if (!stk_user_handler)
+#endif
+ {
+ SIGSEGV_FOR_ALL_SIGNALS (sig, signal (sig, SIG_DFL);)
+ }
+#endif
+}
+
+int
+sigsegv_leave_handler (void (*continuation) (void*, void*, void*),
+ void* cont_arg1, void* cont_arg2, void* cont_arg3)
+{
+#if HAVE_STACK_OVERFLOW_RECOVERY
+ /*
+ * Reset the system's knowledge that we are executing on the alternate
+ * stack. If we didn't do that, siglongjmp would be needed instead of
+ * longjmp to leave the signal handler.
+ */
+ sigsegv_reset_onstack_flag ();
+#endif
+ (*continuation) (cont_arg1, cont_arg2, cont_arg3);
+ return 1;
+}
+
+int
+stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void *extra_stack, unsigned long extra_stack_size)
+{
+#if HAVE_STACK_OVERFLOW_RECOVERY
+#if HAVE_STACKVMA
+ if (!stack_top)
+ {
+ int dummy;
+ remember_stack_top (&dummy);
+ if (!stack_top)
+ return -1;
+ }
+#endif
+
+ stk_user_handler = handler;
+ stk_extra_stack = (unsigned long) extra_stack;
+ stk_extra_stack_size = extra_stack_size;
+#ifdef __BEOS__
+ set_signal_stack (extra_stack, extra_stack_size);
+#else /* HAVE_SIGALTSTACK */
+ {
+ stack_t ss;
+#if SIGALTSTACK_SS_REVERSED
+ ss.ss_sp = (char *) extra_stack + extra_stack_size - sizeof (void *);
+ ss.ss_size = extra_stack_size - sizeof (void *);
+#else
+ ss.ss_sp = extra_stack;
+ ss.ss_size = extra_stack_size;
+#endif
+ ss.ss_flags = 0; /* no SS_DISABLE */
+ if (sigaltstack (&ss, (stack_t*)0) < 0)
+ return -1;
+ }
+#endif
+
+ /* Install the signal handlers with SA_ONSTACK. */
+ SIGSEGV_FOR_ALL_SIGNALS (sig, install_for (sig);)
+ return 0;
+#else
+ return -1;
+#endif
+}
+
+void
+stackoverflow_deinstall_handler (void)
+{
+#if HAVE_STACK_OVERFLOW_RECOVERY
+ stk_user_handler = (stackoverflow_handler_t) NULL;
+
+#if HAVE_SIGSEGV_RECOVERY
+ if (user_handler)
+ {
+ /* Reinstall the signal handlers without SA_ONSTACK, to avoid Linux
+ bug. */
+ SIGSEGV_FOR_ALL_SIGNALS (sig, install_for (sig);)
+ }
+ else
+#endif
+ {
+ SIGSEGV_FOR_ALL_SIGNALS (sig, signal (sig, SIG_DFL);)
+ }
+
+#ifdef __BEOS__
+ /* We cannot undo the effect of set_signal_stack. */
+ fprintf (stderr, "libsigsegv (stackoverflow_deinstall_handler): not supported on this platform\n");
+#else /* HAVE_SIGALTSTACK */
+ {
+ stack_t ss;
+ ss.ss_flags = SS_DISABLE;
+ if (sigaltstack (&ss, (stack_t *) 0) < 0)
+ perror ("libsigsegv (stackoverflow_deinstall_handler)");
+ }
+#endif
+
+#endif
+}
diff --git a/libsigsegv/src/handler-win32.c b/libsigsegv/src/handler-win32.c
new file mode 100644
index 00000000..479bd030
--- /dev/null
+++ b/libsigsegv/src/handler-win32.c
@@ -0,0 +1,317 @@
+/* Fault handler information. Woe32 version.
+ Copyright (C) 1993-1999, 2002-2003, 2007-2008 Bruno Haible <bruno@clisp.org>
+ Copyright (C) 2003 Paolo Bonzini <bonzini@gnu.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 "sigsegv.h"
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+#include <winerror.h>
+/*
+ * extern LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter (LPTOP_LEVEL_EXCEPTION_FILTER TopLevelExceptionFilter);
+ * extern DWORD VirtualQuery (LPCVOID Address, PMEMORY_BASIC_INFORMATION Buffer, DWORD Length);
+ * extern BOOL VirtualProtect (LPVOID Address, DWORD Size, DWORD NewProtect, PDWORD OldProtect);
+ * extern DWORD GetLastError (void);
+ */
+
+/* User's SIGSEGV handler. */
+static sigsegv_handler_t user_handler = (sigsegv_handler_t) NULL;
+
+/* Stack overflow handling is tricky:
+ First, we must catch a STATUS_STACK_OVERFLOW exception. This is signalled
+ when the guard page at the end of the stack has been touched. The operating
+ system remaps the page with protection PAGE_READWRITE and only then calls
+ our exception handler. Actually, it's even more complicated: The stack has
+ the following layout:
+
+ | |guard|----------stack-----------|
+
+ and when the guard page is touched, the system maps it PAGE_READWRITE and
+ allocates a new guard page below it:
+
+ | |guard|-------------stack--------------|
+
+ Only when no new guard page can be allocated (because the maximum stack
+ size has been reached), will we see an exception.
+
+ |guard|-------------------------stack--------------------------|
+
+ Second, we must reinstall the guard page. Otherwise, on the next stack
+ overflow, the application will simply crash (on WinNT: silently, on Win95:
+ with an error message box and freezing the system).
+ But since we don't know where %esp points to during the exception handling,
+ we must first leave the exception handler, before we can restore the guard
+ page. And %esp must be made to point to a reasonable value before we do
+ this.
+
+ Note: On WinNT, the guard page has protection PAGE_READWRITE|PAGE_GUARD.
+ On Win95, which doesn't know PAGE_GUARD, it has protection PAGE_NOACCESS.
+ */
+
+static stackoverflow_handler_t stk_user_handler =
+ (stackoverflow_handler_t) NULL;
+static unsigned long stk_extra_stack;
+static unsigned long stk_extra_stack_size;
+
+static void
+stack_overflow_handler (unsigned long faulting_page_address, stackoverflow_context_t context)
+{
+ MEMORY_BASIC_INFORMATION info;
+ DWORD oldprot;
+ unsigned long base;
+ unsigned long address;
+
+ /* First get stack's base address. */
+ if (VirtualQuery ((void*) faulting_page_address, &info, sizeof (info))
+ != sizeof (info))
+ goto failed;
+ base = (unsigned long) info.AllocationBase;
+
+ /* Now search for the first existing page. */
+ address = base;
+ for (;;)
+ {
+ if (VirtualQuery ((void*) address, &info, sizeof (info)) != sizeof (info))
+ goto failed;
+ if (address != (unsigned long) info.BaseAddress)
+ goto failed;
+ if (info.State != MEM_FREE)
+ {
+ if ((unsigned long) info.AllocationBase != base)
+ goto failed;
+ if (info.State == MEM_COMMIT)
+ break;
+ }
+ address = (unsigned long) info.BaseAddress + info.RegionSize;
+ }
+
+ /* Now add the PAGE_GUARD bit to the first existing page. */
+ /* On WinNT this works... */
+ if (VirtualProtect (info.BaseAddress, 0x1000, info.Protect | PAGE_GUARD,
+ &oldprot))
+ goto ok;
+ if (GetLastError () == ERROR_INVALID_PARAMETER)
+ /* ... but on Win95 we need this: */
+ if (VirtualProtect (info.BaseAddress, 0x1000, PAGE_NOACCESS, &oldprot))
+ goto ok;
+ failed:
+ for (;;)
+ (*stk_user_handler) (1, context);
+ ok:
+ for (;;)
+ (*stk_user_handler) (0, context);
+}
+
+/* This is the stack overflow and page fault handler. */
+static LONG WINAPI
+main_exception_filter (EXCEPTION_POINTERS *ExceptionInfo)
+{
+ if ((stk_user_handler
+ && ExceptionInfo->ExceptionRecord->ExceptionCode == STATUS_STACK_OVERFLOW
+ )
+ ||
+ (user_handler != (sigsegv_handler_t)NULL
+ && ExceptionInfo->ExceptionRecord->ExceptionCode == EXCEPTION_ACCESS_VIOLATION
+ ))
+ {
+#if 0 /* for debugging only */
+ printf ("Exception!\n");
+ printf ("Code = 0x%x\n",
+ ExceptionInfo->ExceptionRecord->ExceptionCode);
+ printf ("Flags = 0x%x\n",
+ ExceptionInfo->ExceptionRecord->ExceptionFlags);
+ printf ("Address = 0x%x\n",
+ ExceptionInfo->ExceptionRecord->ExceptionAddress);
+ printf ("Params:");
+ {
+ DWORD i;
+ for (i = 0; i < ExceptionInfo->ExceptionRecord->NumberParameters; i++)
+ printf (" 0x%x,",
+ ExceptionInfo->ExceptionRecord->ExceptionInformation[i]);
+ }
+ printf ("\n");
+ printf ("Registers:\n");
+ printf ("eip = 0x%x\n", ExceptionInfo->ContextRecord->Eip);
+ printf ("eax = 0x%x, ", ExceptionInfo->ContextRecord->Eax);
+ printf ("ebx = 0x%x, ", ExceptionInfo->ContextRecord->Ebx);
+ printf ("ecx = 0x%x, ", ExceptionInfo->ContextRecord->Ecx);
+ printf ("edx = 0x%x\n", ExceptionInfo->ContextRecord->Edx);
+ printf ("esi = 0x%x, ", ExceptionInfo->ContextRecord->Esi);
+ printf ("edi = 0x%x, ", ExceptionInfo->ContextRecord->Edi);
+ printf ("ebp = 0x%x, ", ExceptionInfo->ContextRecord->Ebp);
+ printf ("esp = 0x%x\n", ExceptionInfo->ContextRecord->Esp);
+#endif
+ if (ExceptionInfo->ExceptionRecord->NumberParameters == 2)
+ {
+ if (stk_user_handler
+ && ExceptionInfo->ExceptionRecord->ExceptionCode == STATUS_STACK_OVERFLOW)
+ {
+ char *address = (char *) ExceptionInfo->ExceptionRecord->ExceptionInformation[1];
+ /* Restart the program, giving it a sane value for %esp.
+ At the same time, copy the contents of
+ ExceptionInfo->ContextRecord (which, on Windows XP, happens
+ to be allocated in the guard page, where it will be
+ inaccessible as soon as we restore the PAGE_GUARD bit!) to
+ this new stack. */
+ unsigned long faulting_page_address = (unsigned long)address & -0x1000;
+ unsigned long new_safe_esp = ((stk_extra_stack + stk_extra_stack_size) & -16);
+ CONTEXT *orig_context = ExceptionInfo->ContextRecord;
+ CONTEXT *safe_context = (CONTEXT *) (new_safe_esp -= sizeof (CONTEXT)); /* make room */
+ memcpy (safe_context, orig_context, sizeof (CONTEXT));
+ new_safe_esp -= 8; /* make room for arguments */
+ new_safe_esp &= -16; /* align */
+ new_safe_esp -= 4; /* make room for (unused) return address slot */
+ ExceptionInfo->ContextRecord->Esp = new_safe_esp;
+ /* Call stack_overflow_handler(faulting_page_address,safe_context). */
+ ExceptionInfo->ContextRecord->Eip = (unsigned long)&stack_overflow_handler;
+ *(unsigned long *)(new_safe_esp + 4) = faulting_page_address;
+ *(unsigned long *)(new_safe_esp + 8) = (unsigned long) safe_context;
+ return EXCEPTION_CONTINUE_EXECUTION;
+ }
+ if (user_handler != (sigsegv_handler_t) NULL
+ && ExceptionInfo->ExceptionRecord->ExceptionCode == EXCEPTION_ACCESS_VIOLATION)
+ {
+ /* ExceptionInfo->ExceptionRecord->ExceptionInformation[0] is 1
+ if it's a write access, 0 if it's a read access. But we don't
+ need this info because we don't have it on Unix either. */
+ void *address = (void *) ExceptionInfo->ExceptionRecord->ExceptionInformation[1];
+ if ((*user_handler) (address, 1))
+ return EXCEPTION_CONTINUE_EXECUTION;
+ }
+ }
+ }
+ return EXCEPTION_CONTINUE_SEARCH;
+}
+
+#if defined __CYGWIN__ && defined __i386__
+
+/* In Cygwin programs, SetUnhandledExceptionFilter has no effect because Cygwin
+ installs a global exception handler. We have to dig deep in order to install
+ our main_exception_filter. */
+
+/* Data structures for the current thread's exception handler chain.
+ On the x86 Windows uses register fs, offset 0 to point to the current
+ exception handler; Cygwin mucks with it, so we must do the same... :-/ */
+
+/* Magic taken from winsup/cygwin/include/exceptions.h. */
+
+struct exception_list
+ {
+ struct exception_list *prev;
+ int (*handler) (EXCEPTION_RECORD *, void *, CONTEXT *, void *);
+ };
+typedef struct exception_list exception_list;
+
+/* Magic taken from winsup/cygwin/exceptions.cc. */
+
+__asm__ (".equ __except_list,0");
+
+extern exception_list *_except_list __asm__ ("%fs:__except_list");
+
+/* For debugging. _except_list is not otherwise accessible from gdb. */
+static exception_list *
+debug_get_except_list ()
+{
+ return _except_list;
+}
+
+/* Cygwin's original exception handler. */
+static int (*cygwin_exception_handler) (EXCEPTION_RECORD *, void *, CONTEXT *, void *);
+
+/* Our exception handler. */
+static int
+libsigsegv_exception_handler (EXCEPTION_RECORD *exception, void *frame, CONTEXT *context, void *dispatch)
+{
+ EXCEPTION_POINTERS ExceptionInfo;
+ ExceptionInfo.ExceptionRecord = exception;
+ ExceptionInfo.ContextRecord = context;
+ if (main_exception_filter (&ExceptionInfo) == EXCEPTION_CONTINUE_SEARCH)
+ return cygwin_exception_handler (exception, frame, context, dispatch);
+ else
+ return 0;
+}
+
+static void
+do_install_main_exception_filter ()
+{
+ /* We cannot insert any handler into the chain, because such handlers
+ must lie on the stack (?). Instead, we have to replace(!) Cygwin's
+ global exception handler. */
+ cygwin_exception_handler = _except_list->handler;
+ _except_list->handler = libsigsegv_exception_handler;
+}
+
+#else
+
+static void
+do_install_main_exception_filter ()
+{
+ SetUnhandledExceptionFilter ((LPTOP_LEVEL_EXCEPTION_FILTER) &main_exception_filter);
+}
+
+#endif
+
+static void
+install_main_exception_filter ()
+{
+ static int main_exception_filter_installed = 0;
+
+ if (!main_exception_filter_installed)
+ {
+ do_install_main_exception_filter ();
+ main_exception_filter_installed = 1;
+ }
+}
+
+int
+sigsegv_install_handler (sigsegv_handler_t handler)
+{
+ user_handler = handler;
+ install_main_exception_filter ();
+ return 0;
+}
+
+void
+sigsegv_deinstall_handler (void)
+{
+ user_handler = (sigsegv_handler_t) NULL;
+}
+
+int
+sigsegv_leave_handler (void (*continuation) (void*, void*, void*),
+ void* cont_arg1, void* cont_arg2, void* cont_arg3)
+{
+ (*continuation) (cont_arg1, cont_arg2, cont_arg3);
+ return 1;
+}
+
+int
+stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void *extra_stack, unsigned long extra_stack_size)
+{
+ stk_user_handler = handler;
+ stk_extra_stack = (unsigned long) extra_stack;
+ stk_extra_stack_size = extra_stack_size;
+ install_main_exception_filter ();
+ return 0;
+}
+
+void
+stackoverflow_deinstall_handler (void)
+{
+ stk_user_handler = (stackoverflow_handler_t) NULL;
+}
diff --git a/libsigsegv/src/handler.c b/libsigsegv/src/handler.c
new file mode 100644
index 00000000..4fd1cbac
--- /dev/null
+++ b/libsigsegv/src/handler.c
@@ -0,0 +1,20 @@
+/* Fault handler information.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 CFG_HANDLER
diff --git a/libsigsegv/src/leave-none.c b/libsigsegv/src/leave-none.c
new file mode 100644
index 00000000..deeb7b89
--- /dev/null
+++ b/libsigsegv/src/leave-none.c
@@ -0,0 +1,18 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* No need to define sigsegv_reset_onstack_flag() on this platform. */
diff --git a/libsigsegv/src/leave-nop.c b/libsigsegv/src/leave-nop.c
new file mode 100644
index 00000000..88674bda
--- /dev/null
+++ b/libsigsegv/src/leave-nop.c
@@ -0,0 +1,23 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+void
+sigsegv_reset_onstack_flag (void)
+{
+ /* Nothing to do. sigaltstack() simply looks at the stack pointer,
+ therefore SS_ONSTACK is not sticky. */
+}
diff --git a/libsigsegv/src/leave-setcontext.c b/libsigsegv/src/leave-setcontext.c
new file mode 100644
index 00000000..e383cf96
--- /dev/null
+++ b/libsigsegv/src/leave-setcontext.c
@@ -0,0 +1,38 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 <signal.h>
+#include <ucontext.h>
+
+void
+sigsegv_reset_onstack_flag (void)
+{
+ ucontext_t uc;
+
+ if (getcontext (&uc) >= 0)
+ /* getcontext returns twice. We are interested in the returned context
+ only the first time, i.e. when the SS_ONSTACK bit is set. */
+ if (uc.uc_stack.ss_flags & SS_ONSTACK)
+ {
+ uc.uc_stack.ss_flags &= ~SS_ONSTACK;
+ /* Note that setcontext() does not refill uc. Therefore if
+ setcontext() keeps SS_ONSTACK set in the kernel, either
+ setcontext() will return -1 or getcontext() will return a
+ second time, with the SS_ONSTACK bit being cleared. */
+ setcontext (&uc);
+ }
+}
diff --git a/libsigsegv/src/leave-sigaltstack.c b/libsigsegv/src/leave-sigaltstack.c
new file mode 100644
index 00000000..39749a55
--- /dev/null
+++ b/libsigsegv/src/leave-sigaltstack.c
@@ -0,0 +1,39 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.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 <stddef.h>
+#include <signal.h>
+#if HAVE_SYS_SIGNAL_H
+# include <sys/signal.h>
+#endif
+
+/* For MacOSX. */
+#ifndef SS_ONSTACK
+#define SS_ONSTACK SA_ONSTACK
+#endif
+
+void
+sigsegv_reset_onstack_flag (void)
+{
+ stack_t ss;
+
+ if (sigaltstack (NULL, &ss) >= 0)
+ {
+ ss.ss_flags &= ~SS_ONSTACK;
+ sigaltstack (&ss, NULL);
+ }
+}
diff --git a/libsigsegv/src/leave.c b/libsigsegv/src/leave.c
new file mode 100644
index 00000000..e7d7024a
--- /dev/null
+++ b/libsigsegv/src/leave.c
@@ -0,0 +1,20 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 CFG_LEAVE
diff --git a/libsigsegv/src/leave.h b/libsigsegv/src/leave.h
new file mode 100644
index 00000000..9a279c76
--- /dev/null
+++ b/libsigsegv/src/leave.h
@@ -0,0 +1,18 @@
+/* Leaving a signal handler executing on the alternate stack.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+extern void sigsegv_reset_onstack_flag (void);
diff --git a/libsigsegv/src/machfault-macos.h b/libsigsegv/src/machfault-macos.h
new file mode 100644
index 00000000..3fb49d7b
--- /dev/null
+++ b/libsigsegv/src/machfault-macos.h
@@ -0,0 +1,120 @@
+/* Fault handler information. MacOSX version (both PowerPC and i386).
+ Copyright (C) 2003-2004, 2006-2008 Bruno Haible <bruno@clisp.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. */
+
+#if defined __ppc__ || defined __ppc64__
+
+#if defined __ppc64__
+/* 64 bit registers */
+
+#define SIGSEGV_EXC_STATE_TYPE ppc_exception_state64_t
+#define SIGSEGV_EXC_STATE_FLAVOR PPC_EXCEPTION_STATE64
+#define SIGSEGV_EXC_STATE_COUNT PPC_EXCEPTION_STATE64_COUNT
+#define SIGSEGV_THREAD_STATE_TYPE ppc_thread_state64_t
+#define SIGSEGV_THREAD_STATE_FLAVOR PPC_THREAD_STATE64
+#define SIGSEGV_THREAD_STATE_COUNT PPC_THREAD_STATE64_COUNT
+
+#else
+/* 32 bit registers */
+
+#define SIGSEGV_EXC_STATE_TYPE ppc_exception_state_t
+#define SIGSEGV_EXC_STATE_FLAVOR PPC_EXCEPTION_STATE
+#define SIGSEGV_EXC_STATE_COUNT PPC_EXCEPTION_STATE_COUNT
+#define SIGSEGV_THREAD_STATE_TYPE ppc_thread_state_t
+#define SIGSEGV_THREAD_STATE_FLAVOR PPC_THREAD_STATE
+#define SIGSEGV_THREAD_STATE_COUNT PPC_THREAD_STATE_COUNT
+
+#endif
+
+#if MacOS_X_10_5_HEADERS && __DARWIN_UNIX03
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).__dar
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).__r1
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).__srr0
+#define SIGSEGV_INTEGER_ARGUMENT_1(thr_state) (thr_state).__r3
+#define SIGSEGV_INTEGER_ARGUMENT_2(thr_state) (thr_state).__r4
+#define SIGSEGV_INTEGER_ARGUMENT_3(thr_state) (thr_state).__r5
+#else
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).dar
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).r1
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).srr0
+#define SIGSEGV_INTEGER_ARGUMENT_1(thr_state) (thr_state).r3
+#define SIGSEGV_INTEGER_ARGUMENT_2(thr_state) (thr_state).r4
+#define SIGSEGV_INTEGER_ARGUMENT_3(thr_state) (thr_state).r5
+#endif
+
+#endif
+
+#if defined __i386__ || defined __x86_64__
+
+#if defined __x86_64__
+/* 64 bit registers */
+
+#define SIGSEGV_THREAD_STATE_TYPE x86_thread_state64_t
+#define SIGSEGV_THREAD_STATE_FLAVOR x86_THREAD_STATE64
+#define SIGSEGV_THREAD_STATE_COUNT x86_THREAD_STATE64_COUNT
+#define SIGSEGV_EXC_STATE_TYPE x86_exception_state64_t
+#define SIGSEGV_EXC_STATE_FLAVOR x86_EXCEPTION_STATE64
+#define SIGSEGV_EXC_STATE_COUNT x86_EXCEPTION_STATE64_COUNT
+#if MacOS_X_10_5_HEADERS && __DARWIN_UNIX03
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).__faultvaddr
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).__rsp
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).__rip
+#define SIGSEGV_FRAME_POINTER(thr_state) (thr_state).__rbp
+#define SIGSEGV_INTEGER_ARGUMENT_1(thr_state) (thr_state).__rdi
+#define SIGSEGV_INTEGER_ARGUMENT_2(thr_state) (thr_state).__rsi
+#define SIGSEGV_INTEGER_ARGUMENT_3(thr_state) (thr_state).__rdx
+#else
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).faultvaddr
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).rsp
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).rip
+#define SIGSEGV_FRAME_POINTER(thr_state) (thr_state).rbp
+#define SIGSEGV_INTEGER_ARGUMENT_1(thr_state) (thr_state).rdi
+#define SIGSEGV_INTEGER_ARGUMENT_2(thr_state) (thr_state).rsi
+#define SIGSEGV_INTEGER_ARGUMENT_3(thr_state) (thr_state).rdx
+#endif
+
+#else
+/* 32 bit registers */
+
+#if defined x86_THREAD_STATE32
+/* MacOS X 10.5 or newer introduces the new names and deprecates the old ones */
+#define SIGSEGV_THREAD_STATE_TYPE x86_thread_state32_t
+#define SIGSEGV_THREAD_STATE_FLAVOR x86_THREAD_STATE32
+#define SIGSEGV_THREAD_STATE_COUNT x86_THREAD_STATE32_COUNT
+#define SIGSEGV_EXC_STATE_TYPE x86_exception_state32_t
+#define SIGSEGV_EXC_STATE_FLAVOR x86_EXCEPTION_STATE32
+#define SIGSEGV_EXC_STATE_COUNT x86_EXCEPTION_STATE32_COUNT
+#else
+#define SIGSEGV_THREAD_STATE_TYPE i386_thread_state_t
+#define SIGSEGV_THREAD_STATE_FLAVOR i386_THREAD_STATE
+#define SIGSEGV_THREAD_STATE_COUNT i386_THREAD_STATE_COUNT
+#define SIGSEGV_EXC_STATE_TYPE i386_exception_state_t
+#define SIGSEGV_EXC_STATE_FLAVOR i386_EXCEPTION_STATE
+#define SIGSEGV_EXC_STATE_COUNT i386_EXCEPTION_STATE_COUNT
+#endif
+#if MacOS_X_10_5_HEADERS && __DARWIN_UNIX03
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).__faultvaddr
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).__esp
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).__eip
+#else
+#define SIGSEGV_FAULT_ADDRESS(thr_state,exc_state) (exc_state).faultvaddr
+#define SIGSEGV_STACK_POINTER(thr_state) (thr_state).esp
+#define SIGSEGV_PROGRAM_COUNTER(thr_state) (thr_state).eip
+#endif
+
+#endif
+
+#endif
diff --git a/libsigsegv/src/machfault.h b/libsigsegv/src/machfault.h
new file mode 100644
index 00000000..fd182a05
--- /dev/null
+++ b/libsigsegv/src/machfault.h
@@ -0,0 +1,54 @@
+/* Fault handler information.
+ Copyright (C) 2004 Bruno Haible <bruno@clisp.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. */
+
+/* The included file defines:
+
+ SIGSEGV_EXC_STATE_TYPE
+ is a type containing state describing details of an exception,
+ excluding the thread state.
+ SIGSEGV_EXC_STATE_FLAVOR
+ is a macro expanding to a constant int value denoting the
+ SIGSEGV_EXC_STATE_TYPE type.
+ SIGSEGV_EXC_STATE_COUNT
+ is a macro expanding to the number of words of the
+ SIGSEGV_EXC_STATE_TYPE type.
+
+ SIGSEGV_THREAD_STATE_TYPE
+ is a type containing the state of a (stopped or interrupted) thread.
+ SIGSEGV_THREAD_STATE_FLAVOR
+ is a macro expanding to a constant int value denoting the
+ SIGSEGV_THREAD_STATE_TYPE type.
+ SIGSEGV_THREAD_STATE_COUNT
+ is a macro expanding to the number of words of the
+ SIGSEGV_THREAD_STATE_TYPE type.
+
+ SIGSEGV_FAULT_ADDRESS(thr_state, exc_state)
+ is a macro for fetching the fault address.
+
+ SIGSEGV_STACK_POINTER(thr_state)
+ is a macro, expanding to an lvalue, for fetching the stackpointer at
+ the moment the fault occurred, and for setting the stackpointer in
+ effect when the thread continues.
+
+ SIGSEGV_PROGRAM_COUNTER(thr_state)
+ is a macro, expanding to an lvalue, for fetching the program counter
+ (= instruction pointer) at the moment the fault occurred, and for
+ setting the program counter before letting the thread continue.
+
+ */
+
+#include CFG_MACHFAULT
diff --git a/libsigsegv/src/signals-bsd.h b/libsigsegv/src/signals-bsd.h
new file mode 100644
index 00000000..4b57f069
--- /dev/null
+++ b/libsigsegv/src/signals-bsd.h
@@ -0,0 +1,21 @@
+/* List of signals. BSD version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows. */
+#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+ { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
diff --git a/libsigsegv/src/signals-hpux.h b/libsigsegv/src/signals-hpux.h
new file mode 100644
index 00000000..0061d21c
--- /dev/null
+++ b/libsigsegv/src/signals-hpux.h
@@ -0,0 +1,21 @@
+/* List of signals. HP-UX version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows. */
+#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+ { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
diff --git a/libsigsegv/src/signals-hurd.h b/libsigsegv/src/signals-hurd.h
new file mode 100644
index 00000000..b191fe4d
--- /dev/null
+++ b/libsigsegv/src/signals-hurd.h
@@ -0,0 +1,21 @@
+/* List of signals. Hurd version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows. */
+#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+ { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
diff --git a/libsigsegv/src/signals-macos.h b/libsigsegv/src/signals-macos.h
new file mode 100644
index 00000000..a9fc9a81
--- /dev/null
+++ b/libsigsegv/src/signals-macos.h
@@ -0,0 +1,24 @@
+/* List of signals. MacOSX version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.org>
+ Copyright (C) 2003 Paolo Bonzini <bonzini@gnu.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. */
+
+/* List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows.
+ On MacOS X, accessing an invalid memory address gives a SIGBUS, but a
+ stack overflow gives a SIGSEGV. */
+#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+ { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
diff --git a/libsigsegv/src/signals.h b/libsigsegv/src/signals.h
new file mode 100644
index 00000000..b6203ee5
--- /dev/null
+++ b/libsigsegv/src/signals.h
@@ -0,0 +1,21 @@
+/* List of signals. Generic Unix version.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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. */
+
+/* List of signals that are sent when an invalid virtual memory address
+ is accessed, or when the stack overflows. */
+#define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+ { int var; var = SIGSEGV; { body } }
diff --git a/libsigsegv/src/sigsegv.h.in b/libsigsegv/src/sigsegv.h.in
new file mode 100644
index 00000000..e6689d28
--- /dev/null
+++ b/libsigsegv/src/sigsegv.h.in
@@ -0,0 +1,201 @@
+/* Page fault handling library.
+ Copyright (C) 1998-1999, 2002, 2004-2008 Bruno Haible <bruno@clisp.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 _SIGSEGV_H
+#define _SIGSEGV_H
+
+@FAULT_CONTEXT_INCLUDE@
+
+/* HAVE_SIGSEGV_RECOVERY
+ is defined if the system supports catching SIGSEGV. */
+#if @HAVE_SIGSEGV_RECOVERY@
+# define HAVE_SIGSEGV_RECOVERY 1
+#endif
+
+/* HAVE_STACK_OVERFLOW_RECOVERY
+ is defined if stack overflow can be caught. */
+#if @HAVE_STACK_OVERFLOW_RECOVERY@
+# define HAVE_STACK_OVERFLOW_RECOVERY 1
+#endif
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define LIBSIGSEGV_VERSION 0x0206 /* version number: (major<<8) + minor */
+extern int libsigsegv_version; /* Likewise */
+
+/* -------------------------------------------------------------------------- */
+
+/*
+ * The type of a global SIGSEGV handler.
+ * The fault address is passed as argument.
+ * The access type (read access or write access) is not passed; your handler
+ * has to know itself how to distinguish these two cases.
+ * The second argument is 0, meaning it could also be a stack overflow, or 1,
+ * meaning the handler should seriously try to fix the fault.
+ * The return value should be nonzero if the handler has done its job
+ * and no other handler should be called, or 0 if the handler declines
+ * responsibility for the given address.
+ *
+ * The handler is run at a moment when nothing about the global state of the
+ * program is known. Therefore it cannot use facilities that manipulate global
+ * variables or locks. In particular, it cannot use malloc(); use mmap()
+ * instead. It cannot use fopen(); use open() instead. Etc. All global
+ * variables that are accessed by the handler should be marked 'volatile'.
+ */
+typedef int (*sigsegv_handler_t) (void* fault_address, int serious);
+
+/*
+ * Installs a global SIGSEGV handler.
+ * This should be called once only, and it ignores any previously installed
+ * SIGSEGV handler.
+ * Returns 0 on success, or -1 if the system doesn't support catching SIGSEGV.
+ */
+extern int sigsegv_install_handler (sigsegv_handler_t handler);
+
+/*
+ * Deinstalls the global SIGSEGV handler.
+ * This goes back to the state where no SIGSEGV handler is installed.
+ */
+extern void sigsegv_deinstall_handler (void);
+
+#if LIBSIGSEGV_VERSION >= 0x0206
+/*
+ * Prepares leaving a SIGSEGV handler (through longjmp or similar means).
+ * Control is transferred by calling CONTINUATION with CONT_ARG1, CONT_ARG2,
+ * CONT_ARG3 as arguments.
+ * CONTINUATION must not return.
+ * The sigsegv_leave_handler function may return if called from a SIGSEGV
+ * handler; its return value should be used as the handler's return value.
+ * The sigsegv_leave_handler function does not return if called from a
+ * stack overflow handler.
+ */
+extern int sigsegv_leave_handler (void (*continuation) (void*, void*, void*), void* cont_arg1, void* cont_arg2, void* cont_arg3);
+#else /* older versions of libsigsegv */
+/*
+ * Prepares leaving a SIGSEGV handler (through longjmp or similar means).
+ * Limitation: This function could only be called once on MacOS X.
+ */
+extern void sigsegv_leave_handler (void);
+#endif
+
+/*
+ * The type of a context passed to a stack overflow handler.
+ * This type is system dependent; on some platforms it is an 'ucontext_t *',
+ * on some platforms it is a 'struct sigcontext *', on others merely an
+ * opaque 'void *'.
+ */
+typedef @FAULT_CONTEXT@ *stackoverflow_context_t;
+
+/*
+ * The type of a stack overflow handler.
+ * Such a handler should perform a longjmp call in order to reduce the amount
+ * of stack needed. It must not return.
+ * The emergency argument is 0 when the stack could be repared, or 1 if the
+ * application should better save its state and exit now.
+ *
+ * The handler is run at a moment when nothing about the global state of the
+ * program is known. Therefore it cannot use facilities that manipulate global
+ * variables or locks. In particular, it cannot use malloc(); use mmap()
+ * instead. It cannot use fopen(); use open() instead. Etc. All global
+ * variables that are accessed by the handler should be marked 'volatile'.
+ */
+typedef void (*stackoverflow_handler_t) (int emergency, stackoverflow_context_t scp);
+
+/*
+ * Installs a stack overflow handler.
+ * The extra_stack argument is a pointer to a pre-allocated area used as a
+ * stack for executing the handler. It is typically allocated by use of
+ * `alloca' during `main'. Its size should be sufficiently large.
+ * The following code determines an appropriate size:
+ * #include <signal.h>
+ * #ifndef SIGSTKSZ / * glibc defines SIGSTKSZ for this purpose * /
+ * # define SIGSTKSZ 16384 / * on most platforms, 16 KB are sufficient * /
+ * #endif
+ * Returns 0 on success, or -1 if the system doesn't support catching stack
+ * overflow.
+ */
+extern int stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void* extra_stack, unsigned long extra_stack_size);
+
+/*
+ * Deinstalls the stack overflow handler.
+ */
+extern void stackoverflow_deinstall_handler (void);
+
+/* -------------------------------------------------------------------------- */
+
+/*
+ * The following structure and functions permit to define different SIGSEGV
+ * policies on different address ranges.
+ */
+
+/*
+ * The type of a local SIGSEGV handler.
+ * The fault address is passed as argument.
+ * The second argument is fixed arbitrary user data.
+ * The return value should be nonzero if the handler has done its job
+ * and no other handler should be called, or 0 if the handler declines
+ * responsibility for the given address.
+ */
+typedef int (*sigsegv_area_handler_t) (void* fault_address, void* user_arg);
+
+/*
+ * This structure represents a table of memory areas (address range intervals),
+ * with an local SIGSEGV handler for each.
+ */
+typedef
+struct sigsegv_dispatcher {
+ void* tree;
+}
+sigsegv_dispatcher;
+
+/*
+ * Initializes a sigsegv_dispatcher structure.
+ */
+extern void sigsegv_init (sigsegv_dispatcher* dispatcher);
+
+/*
+ * Adds a local SIGSEGV handler to a sigsegv_dispatcher structure.
+ * It will cover the interval [address..address+len-1].
+ * Returns a "ticket" that can be used to remove the handler later.
+ */
+extern void* sigsegv_register (sigsegv_dispatcher* dispatcher,
+ void* address, unsigned long len,
+ sigsegv_area_handler_t handler, void* handler_arg);
+
+/*
+ * Removes a local SIGSEGV handler.
+ */
+extern void sigsegv_unregister (sigsegv_dispatcher* dispatcher, void* ticket);
+
+/*
+ * Call the local SIGSEGV handler responsible for the given fault address.
+ * Return the handler's return value. 0 means that no handler has been found,
+ * or that a handler was found but declined responsibility.
+ */
+extern int sigsegv_dispatch (sigsegv_dispatcher* dispatcher, void* fault_address);
+
+/* -------------------------------------------------------------------------- */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SIGSEGV_H */
diff --git a/libsigsegv/src/sigsegv.h.msvc b/libsigsegv/src/sigsegv.h.msvc
new file mode 100644
index 00000000..a586b48a
--- /dev/null
+++ b/libsigsegv/src/sigsegv.h.msvc
@@ -0,0 +1,201 @@
+/* Page fault handling library.
+ Copyright (C) 1998-1999, 2002, 2004-2008 Bruno Haible <bruno@clisp.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 _SIGSEGV_H
+#define _SIGSEGV_H
+
+#include <windows.h>
+
+/* HAVE_SIGSEGV_RECOVERY
+ is defined if the system supports catching SIGSEGV. */
+#if 1
+# define HAVE_SIGSEGV_RECOVERY 1
+#endif
+
+/* HAVE_STACK_OVERFLOW_RECOVERY
+ is defined if stack overflow can be caught. */
+#if 1
+# define HAVE_STACK_OVERFLOW_RECOVERY 1
+#endif
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define LIBSIGSEGV_VERSION 0x0206 /* version number: (major<<8) + minor */
+extern int libsigsegv_version; /* Likewise */
+
+/* -------------------------------------------------------------------------- */
+
+/*
+ * The type of a global SIGSEGV handler.
+ * The fault address is passed as argument.
+ * The access type (read access or write access) is not passed; your handler
+ * has to know itself how to distinguish these two cases.
+ * The second argument is 0, meaning it could also be a stack overflow, or 1,
+ * meaning the handler should seriously try to fix the fault.
+ * The return value should be nonzero if the handler has done its job
+ * and no other handler should be called, or 0 if the handler declines
+ * responsibility for the given address.
+ *
+ * The handler is run at a moment when nothing about the global state of the
+ * program is known. Therefore it cannot use facilities that manipulate global
+ * variables or locks. In particular, it cannot use malloc(); use mmap()
+ * instead. It cannot use fopen(); use open() instead. Etc. All global
+ * variables that are accessed by the handler should be marked 'volatile'.
+ */
+typedef int (*sigsegv_handler_t) (void* fault_address, int serious);
+
+/*
+ * Installs a global SIGSEGV handler.
+ * This should be called once only, and it ignores any previously installed
+ * SIGSEGV handler.
+ * Returns 0 on success, or -1 if the system doesn't support catching SIGSEGV.
+ */
+extern int sigsegv_install_handler (sigsegv_handler_t handler);
+
+/*
+ * Deinstalls the global SIGSEGV handler.
+ * This goes back to the state where no SIGSEGV handler is installed.
+ */
+extern void sigsegv_deinstall_handler (void);
+
+#if LIBSIGSEGV_VERSION >= 0x0206
+/*
+ * Prepares leaving a SIGSEGV handler (through longjmp or similar means).
+ * Control is transferred by calling CONTINUATION with CONT_ARG1, CONT_ARG2,
+ * CONT_ARG3 as arguments.
+ * CONTINUATION must not return.
+ * The sigsegv_leave_handler function may return if called from a SIGSEGV
+ * handler; its return value should be used as the handler's return value.
+ * The sigsegv_leave_handler function does not return if called from a
+ * stack overflow handler.
+ */
+extern int sigsegv_leave_handler (void (*continuation) (void*, void*, void*), void* cont_arg1, void* cont_arg2, void* cont_arg3);
+#else /* older versions of libsigsegv */
+/*
+ * Prepares leaving a SIGSEGV handler (through longjmp or similar means).
+ * Limitation: This function could only be called once on MacOS X.
+ */
+extern void sigsegv_leave_handler (void);
+#endif
+
+/*
+ * The type of a context passed to a stack overflow handler.
+ * This type is system dependent; on some platforms it is an 'ucontext_t *',
+ * on some platforms it is a 'struct sigcontext *', on others merely an
+ * opaque 'void *'.
+ */
+typedef CONTEXT *stackoverflow_context_t;
+
+/*
+ * The type of a stack overflow handler.
+ * Such a handler should perform a longjmp call in order to reduce the amount
+ * of stack needed. It must not return.
+ * The emergency argument is 0 when the stack could be repared, or 1 if the
+ * application should better save its state and exit now.
+ *
+ * The handler is run at a moment when nothing about the global state of the
+ * program is known. Therefore it cannot use facilities that manipulate global
+ * variables or locks. In particular, it cannot use malloc(); use mmap()
+ * instead. It cannot use fopen(); use open() instead. Etc. All global
+ * variables that are accessed by the handler should be marked 'volatile'.
+ */
+typedef void (*stackoverflow_handler_t) (int emergency, stackoverflow_context_t scp);
+
+/*
+ * Installs a stack overflow handler.
+ * The extra_stack argument is a pointer to a pre-allocated area used as a
+ * stack for executing the handler. It is typically allocated by use of
+ * `alloca' during `main'. Its size should be sufficiently large.
+ * The following code determines an appropriate size:
+ * #include <signal.h>
+ * #ifndef SIGSTKSZ / * glibc defines SIGSTKSZ for this purpose * /
+ * # define SIGSTKSZ 16384 / * on most platforms, 16 KB are sufficient * /
+ * #endif
+ * Returns 0 on success, or -1 if the system doesn't support catching stack
+ * overflow.
+ */
+extern int stackoverflow_install_handler (stackoverflow_handler_t handler,
+ void* extra_stack, unsigned long extra_stack_size);
+
+/*
+ * Deinstalls the stack overflow handler.
+ */
+extern void stackoverflow_deinstall_handler (void);
+
+/* -------------------------------------------------------------------------- */
+
+/*
+ * The following structure and functions permit to define different SIGSEGV
+ * policies on different address ranges.
+ */
+
+/*
+ * The type of a local SIGSEGV handler.
+ * The fault address is passed as argument.
+ * The second argument is fixed arbitrary user data.
+ * The return value should be nonzero if the handler has done its job
+ * and no other handler should be called, or 0 if the handler declines
+ * responsibility for the given address.
+ */
+typedef int (*sigsegv_area_handler_t) (void* fault_address, void* user_arg);
+
+/*
+ * This structure represents a table of memory areas (address range intervals),
+ * with an local SIGSEGV handler for each.
+ */
+typedef
+struct sigsegv_dispatcher {
+ void* tree;
+}
+sigsegv_dispatcher;
+
+/*
+ * Initializes a sigsegv_dispatcher structure.
+ */
+extern void sigsegv_init (sigsegv_dispatcher* dispatcher);
+
+/*
+ * Adds a local SIGSEGV handler to a sigsegv_dispatcher structure.
+ * It will cover the interval [address..address+len-1].
+ * Returns a "ticket" that can be used to remove the handler later.
+ */
+extern void* sigsegv_register (sigsegv_dispatcher* dispatcher,
+ void* address, unsigned long len,
+ sigsegv_area_handler_t handler, void* handler_arg);
+
+/*
+ * Removes a local SIGSEGV handler.
+ */
+extern void sigsegv_unregister (sigsegv_dispatcher* dispatcher, void* ticket);
+
+/*
+ * Call the local SIGSEGV handler responsible for the given fault address.
+ * Return the handler's return value. 0 means that no handler has been found,
+ * or that a handler was found but declined responsibility.
+ */
+extern int sigsegv_dispatch (sigsegv_dispatcher* dispatcher, void* fault_address);
+
+/* -------------------------------------------------------------------------- */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SIGSEGV_H */
diff --git a/libsigsegv/src/stackvma-beos.c b/libsigsegv/src/stackvma-beos.c
new file mode 100644
index 00000000..3bcebac2
--- /dev/null
+++ b/libsigsegv/src/stackvma-beos.c
@@ -0,0 +1,62 @@
+/* Determine the virtual memory area of a given address. BeOS version.
+ Copyright (C) 2002, 2006 Bruno Haible <bruno@clisp.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 "stackvma.h"
+#include <OS.h>
+
+#include "stackvma-simple.c"
+
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ area_info info;
+ int32 cookie;
+ unsigned long start, end;
+#if STACK_DIRECTION < 0
+ unsigned long prev;
+#endif
+
+#if STACK_DIRECTION < 0
+ prev = 0;
+#endif
+ cookie = 0;
+ while (get_next_area_info (0, &cookie, &info) == B_OK)
+ {
+ start = (unsigned long) info.address;
+ end = start + info.size;
+ if (address >= start && address <= end - 1)
+ {
+ vma->start = start;
+ vma->end = end;
+#if STACK_DIRECTION < 0
+ vma->prev_end = prev;
+#else
+ if (get_next_area_info (0, &cookie, &info) == B_OK)
+ vma->next_start = (unsigned long) info.address;
+ else
+ vma->next_start = 0;
+#endif
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+#if STACK_DIRECTION < 0
+ prev = end;
+#endif
+ }
+
+ return -1;
+}
diff --git a/libsigsegv/src/stackvma-freebsd.c b/libsigsegv/src/stackvma-freebsd.c
new file mode 100644
index 00000000..fd04ba85
--- /dev/null
+++ b/libsigsegv/src/stackvma-freebsd.c
@@ -0,0 +1,118 @@
+/* Determine the virtual memory area of a given address. FreeBSD version.
+ Copyright (C) 2002-2003, 2006, 2008 Bruno Haible <bruno@clisp.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 "stackvma.h"
+#include <stdio.h>
+
+#include "stackvma-simple.c"
+#include "stackvma-rofile.c"
+
+#if HAVE_MINCORE
+# define sigsegv_get_vma mincore_get_vma
+# define STATIC static
+# include "stackvma-mincore.c"
+# undef sigsegv_get_vma
+#endif
+
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ struct rofile rof;
+ int c;
+ /* The stack appears as multiple adjacents segments, therefore we
+ merge adjacent segments. */
+ unsigned long next_start, next_end, curr_start, curr_end;
+#if STACK_DIRECTION < 0
+ unsigned long prev_end;
+#endif
+
+ /* Open the current process' maps file. It describes one VMA per line. */
+ if (rof_open (&rof, "/proc/curproc/map") < 0)
+ goto failed;
+
+#if STACK_DIRECTION < 0
+ prev_end = 0;
+#endif
+ for (curr_start = curr_end = 0; ;)
+ {
+ if (!(rof_getchar (&rof) == '0'
+ && rof_getchar (&rof) == 'x'
+ && rof_scanf_lx (&rof, &next_start) >= 0))
+ break;
+ while (c = rof_peekchar (&rof), c == ' ' || c == '\t')
+ rof_getchar (&rof);
+ if (!(rof_getchar (&rof) == '0'
+ && rof_getchar (&rof) == 'x'
+ && rof_scanf_lx (&rof, &next_end) >= 0))
+ break;
+ while (c = rof_getchar (&rof), c != -1 && c != '\n')
+ continue;
+ if (next_start == curr_end)
+ {
+ /* Merge adjacent segments. */
+ curr_end = next_end;
+ }
+ else
+ {
+ if (curr_start < curr_end
+ && address >= curr_start && address <= curr_end-1)
+ goto found;
+#if STACK_DIRECTION < 0
+ prev_end = curr_end;
+#endif
+ curr_start = next_start; curr_end = next_end;
+ }
+ }
+ if (address >= curr_start && address <= curr_end-1)
+ found:
+ {
+ vma->start = curr_start;
+ vma->end = curr_end;
+#if STACK_DIRECTION < 0
+ vma->prev_end = prev_end;
+#else
+ if (rof_getchar (&rof) == '0'
+ && rof_getchar (&rof) == 'x'
+ && rof_scanf_lx (&rof, &vma->next_start) >= 0)
+ {
+ while (c = rof_peekchar (&rof), c == ' ' || c == '\t')
+ rof_getchar (&rof);
+ if (rof_getchar (&rof) == '0'
+ && rof_getchar (&rof) == 'x'
+ && rof_scanf_lx (&rof, &next_end) >= 0)
+ ;
+ else
+ vma->next_start = 0;
+ }
+ else
+ vma->next_start = 0;
+#endif
+ rof_close (&rof);
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+ rof_close (&rof);
+ failed:
+#if HAVE_MINCORE
+ /* FreeBSD 6.[01] doesn't allow to distinguish unmapped pages from
+ mapped but swapped-out pages. See whether it's fixed. */
+ if (!is_mapped (0))
+ /* OK, mincore() appears to work as expected. */
+ return mincore_get_vma (address, vma);
+#endif
+ return -1;
+}
diff --git a/libsigsegv/src/stackvma-linux.c b/libsigsegv/src/stackvma-linux.c
new file mode 100644
index 00000000..33842287
--- /dev/null
+++ b/libsigsegv/src/stackvma-linux.c
@@ -0,0 +1,83 @@
+/* Determine the virtual memory area of a given address. Linux version.
+ Copyright (C) 2002, 2006, 2008 Bruno Haible <bruno@clisp.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 "stackvma.h"
+#include <stdio.h>
+
+#include "stackvma-simple.c"
+#include "stackvma-rofile.c"
+
+#if HAVE_MINCORE
+# define sigsegv_get_vma mincore_get_vma
+# define STATIC static
+# include "stackvma-mincore.c"
+# undef sigsegv_get_vma
+#endif
+
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ struct rofile rof;
+ int c;
+ unsigned long start, end;
+#if STACK_DIRECTION < 0
+ unsigned long prev;
+#endif
+
+ /* Open the current process' maps file. It describes one VMA per line. */
+ if (rof_open (&rof, "/proc/self/maps") < 0)
+ goto failed;
+
+#if STACK_DIRECTION < 0
+ prev = 0;
+#endif
+ for (;;)
+ {
+ if (!(rof_scanf_lx (&rof, &start) >= 0
+ && rof_getchar (&rof) == '-'
+ && rof_scanf_lx (&rof, &end) >= 0))
+ break;
+ while (c = rof_getchar (&rof), c != -1 && c != '\n')
+ continue;
+ if (address >= start && address <= end - 1)
+ {
+ vma->start = start;
+ vma->end = end;
+#if STACK_DIRECTION < 0
+ vma->prev_end = prev;
+#else
+ if (!(rof_scanf_lx (&rof, &vma->next_start) >= 0
+ && rof_getchar (&rof) == '-'
+ && rof_scanf_lx (&rof, &end) >= 0))
+ vma->next_start = 0;
+#endif
+ rof_close (&rof);
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+#if STACK_DIRECTION < 0
+ prev = end;
+#endif
+ }
+ rof_close (&rof);
+ failed:
+#if HAVE_MINCORE
+ return mincore_get_vma (address, vma);
+#else
+ return -1;
+#endif
+}
diff --git a/libsigsegv/src/stackvma-mach.c b/libsigsegv/src/stackvma-mach.c
new file mode 100644
index 00000000..ae309a60
--- /dev/null
+++ b/libsigsegv/src/stackvma-mach.c
@@ -0,0 +1,119 @@
+/* Determine the virtual memory area of a given address. Mach version.
+ Copyright (C) 2003, 2006 Paolo Bonzini <bonzini@gnu.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 "stackvma.h"
+#include <stdio.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#include <libc.h>
+#include <nlist.h>
+#include <mach/mach.h>
+#ifndef NeXT
+#include <mach/machine/vm_param.h>
+#endif
+
+#include "stackvma-simple.c"
+
+int
+sigsegv_get_vma (unsigned long req_address, struct vma_struct *vma)
+{
+ unsigned long prev_address = 0, prev_size = 0;
+ unsigned long join_address = 0, join_size = 0;
+ int more = 1;
+ vm_address_t address;
+ vm_size_t size;
+ mach_port_t object_name;
+#ifdef VM_REGION_BASIC_INFO
+ task_t task = mach_task_self ();
+ struct vm_region_basic_info info;
+ mach_msg_type_number_t info_count = VM_REGION_BASIC_INFO_COUNT;
+#else
+ task_t task = task_self ();
+ vm_prot_t protection, max_protection;
+ vm_inherit_t inheritance;
+ boolean_t shared;
+ vm_offset_t offset;
+#endif
+
+ for (address = VM_MIN_ADDRESS; more; address += size)
+ {
+#ifdef VM_REGION_BASIC_INFO
+ more = (vm_region (task, &address, &size, VM_REGION_BASIC_INFO,
+ (vm_region_info_t)&info, &info_count, &object_name)
+ == KERN_SUCCESS);
+#else
+ more = (vm_region (task, &address, &size, &protection, &max_protection,
+ &inheritance, &shared, &object_name, &offset)
+ == KERN_SUCCESS);
+#endif
+ if (!more)
+ {
+ address = join_address + join_size;
+ size = 0;
+ }
+
+ if ((unsigned long) address == join_address + join_size)
+ join_size += size;
+ else
+ {
+ prev_address = join_address;
+ prev_size = join_size;
+ join_address = (unsigned long) address;
+ join_size = size;
+ }
+
+#ifdef VM_REGION_BASIC_INFO
+ if (object_name != MACH_PORT_NULL)
+ mach_port_deallocate (mach_task_self (), object_name);
+ info_count = VM_REGION_BASIC_INFO_COUNT;
+#endif
+
+#if STACK_DIRECTION < 0
+ if (join_address <= req_address && join_address + join_size > req_address)
+ {
+ vma->start = join_address;
+ vma->end = join_address + join_size;
+ vma->prev_end = prev_address + prev_size;
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+#else
+ if (prev_address <= req_address && prev_address + prev_size > req_address)
+ {
+ vma->start = prev_address;
+ vma->end = prev_address + prev_size;
+ vma->next_start = join_address;
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+#endif
+ }
+
+#if STACK_DIRECTION > 0
+ if (join_address <= req_address && join_address + size > req_address)
+ {
+ vma->start = prev_address;
+ vma->end = prev_address + prev_size;
+ vma->next_start = ~0UL;
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+ }
+#endif
+
+ return -1;
+}
diff --git a/libsigsegv/src/stackvma-mincore.c b/libsigsegv/src/stackvma-mincore.c
new file mode 100644
index 00000000..1b51ef23
--- /dev/null
+++ b/libsigsegv/src/stackvma-mincore.c
@@ -0,0 +1,275 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2006, 2008 Bruno Haible <bruno@clisp.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. */
+
+/* mincore() is a system call that allows to inquire the status of a
+ range of pages of virtual memory. In particular, it allows to inquire
+ whether a page is mapped at all.
+ As of 2006, mincore() is supported by: possible bits:
+ - Linux, since Linux 2.4 and glibc 2.2, 1
+ - Solaris, since Solaris 9, 1
+ - MacOS X, since MacOS X 10.3 (at least), 1
+ - FreeBSD, since FreeBSD 6.0, MINCORE_{INCORE,REFERENCED,MODIFIED}
+ - NetBSD, since NetBSD 3.0 (at least), 1
+ - OpenBSD, since OpenBSD 2.6 (at least), 1
+ However, while the API allows to easily determine the bounds of mapped
+ virtual memory, it does not make it easy the bounds of _unmapped_ virtual
+ memory ranges. We try to work around this, but it may still be slow. */
+
+#include "stackvma.h"
+#include <limits.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#include <sys/types.h>
+#include <sys/mman.h>
+
+/* Cache for getpagesize(). */
+static unsigned long pagesize;
+
+/* Initialize pagesize. */
+static void
+init_pagesize (void)
+{
+#if HAVE_GETPAGESIZE
+ pagesize = getpagesize ();
+#elif HAVE_SYSCONF_PAGESIZE
+ pagesize = sysconf (_SC_PAGESIZE);
+#else
+ pagesize = PAGESIZE;
+#endif
+}
+
+/* Test whether the page starting at ADDR is among the address range.
+ ADDR must be a multiple of pagesize. */
+static int
+is_mapped (unsigned long addr)
+{
+ char vec[1];
+ return mincore ((void *) addr, pagesize, vec) >= 0;
+}
+
+/* Assuming that the page starting at ADDR is among the address range,
+ return the start of its virtual memory range.
+ ADDR must be a multiple of pagesize. */
+static unsigned long
+mapped_range_start (unsigned long addr)
+{
+ /* Use a moderately sized VEC here, small enough that it fits on the stack
+ (without requiring malloc). */
+ char vec[2048];
+ unsigned long stepsize = sizeof (vec);
+
+ for (;;)
+ {
+ unsigned long max_remaining;
+
+ if (addr == 0)
+ return addr;
+
+ max_remaining = addr / pagesize;
+ if (stepsize > max_remaining)
+ stepsize = max_remaining;
+ if (mincore ((void *) (addr - stepsize * pagesize),
+ stepsize * pagesize, vec) < 0)
+ /* Time to search in smaller steps. */
+ break;
+ /* The entire range exists. Continue searching in large steps. */
+ addr -= stepsize * pagesize;
+ }
+ for (;;)
+ {
+ unsigned long halfstepsize1;
+ unsigned long halfstepsize2;
+
+ if (stepsize == 1)
+ return addr;
+
+ /* Here we know that less than stepsize pages exist starting at addr. */
+ halfstepsize1 = (stepsize + 1) / 2;
+ halfstepsize2 = stepsize / 2;
+ /* halfstepsize1 + halfstepsize2 = stepsize. */
+
+ if (mincore ((void *) (addr - halfstepsize1 * pagesize),
+ halfstepsize1 * pagesize, vec) < 0)
+ stepsize = halfstepsize1;
+ else
+ {
+ addr -= halfstepsize1 * pagesize;
+ stepsize = halfstepsize2;
+ }
+ }
+}
+
+/* Assuming that the page starting at ADDR is among the address range,
+ return the end of its virtual memory range + 1.
+ ADDR must be a multiple of pagesize. */
+static unsigned long
+mapped_range_end (unsigned long addr)
+{
+ /* Use a moderately sized VEC here, small enough that it fits on the stack
+ (without requiring malloc). */
+ char vec[2048];
+ unsigned long stepsize = sizeof (vec);
+
+ addr += pagesize;
+ for (;;)
+ {
+ unsigned long max_remaining;
+
+ if (addr == 0) /* wrapped around? */
+ return addr;
+
+ max_remaining = (- addr) / pagesize;
+ if (stepsize > max_remaining)
+ stepsize = max_remaining;
+ if (mincore ((void *) addr, stepsize * pagesize, vec) < 0)
+ /* Time to search in smaller steps. */
+ break;
+ /* The entire range exists. Continue searching in large steps. */
+ addr += stepsize * pagesize;
+ }
+ for (;;)
+ {
+ unsigned long halfstepsize1;
+ unsigned long halfstepsize2;
+
+ if (stepsize == 1)
+ return addr;
+
+ /* Here we know that less than stepsize pages exist starting at addr. */
+ halfstepsize1 = (stepsize + 1) / 2;
+ halfstepsize2 = stepsize / 2;
+ /* halfstepsize1 + halfstepsize2 = stepsize. */
+
+ if (mincore ((void *) addr, halfstepsize1 * pagesize, vec) < 0)
+ stepsize = halfstepsize1;
+ else
+ {
+ addr += halfstepsize1 * pagesize;
+ stepsize = halfstepsize2;
+ }
+ }
+}
+
+/* Determine whether an address range [ADDR1..ADDR2] is completely unmapped.
+ ADDR1 must be <= ADDR2. */
+static int
+is_unmapped (unsigned long addr1, unsigned long addr2)
+{
+ unsigned long count;
+ unsigned long stepsize;
+
+ /* Round addr1 down. */
+ addr1 = (addr1 / pagesize) * pagesize;
+ /* Round addr2 up and turn it into an exclusive bound. */
+ addr2 = ((addr2 / pagesize) + 1) * pagesize;
+
+ /* This is slow: mincore() does not provide a way to determine the bounds
+ of the gaps directly. So we have to use mincore() on individual pages
+ over and over again. Only after we've verified that all pages are
+ unmapped, we know that the range is completely unmapped.
+ If we were to traverse the pages from bottom to top or from top to bottom,
+ it would be slow even in the average case. To speed up the search, we
+ exploit the fact that mapped memory ranges are larger than one page on
+ average, therefore we have good chances of hitting a mapped area if we
+ traverse only every second, or only fourth page, etc. This doesn't
+ decrease the worst-case runtime, only the average runtime. */
+ count = (addr2 - addr1) / pagesize;
+ /* We have to test is_mapped (addr1 + i * pagesize) for 0 <= i < count. */
+ for (stepsize = 1; stepsize < count; )
+ stepsize = 2 * stepsize;
+ for (;;)
+ {
+ unsigned long addr_stepsize;
+ unsigned long i;
+ unsigned long addr;
+
+ stepsize = stepsize / 2;
+ if (stepsize == 0)
+ break;
+ addr_stepsize = stepsize * pagesize;
+ for (i = stepsize, addr = addr1 + addr_stepsize;
+ i < count;
+ i += 2 * stepsize, addr += 2 * addr_stepsize)
+ /* Here addr = addr1 + i * pagesize. */
+ if (is_mapped (addr))
+ return 0;
+ }
+ return 1;
+}
+
+#if STACK_DIRECTION < 0
+
+/* Info about the gap between this VMA and the previous one.
+ addr must be < vma->start. */
+static int
+mincore_is_near_this (unsigned long addr, struct vma_struct *vma)
+{
+ /* vma->start - addr <= (vma->start - vma->prev_end) / 2
+ is mathematically equivalent to
+ vma->prev_end <= 2 * addr - vma->start
+ <==> is_unmapped (2 * addr - vma->start, vma->start - 1).
+ But be careful about overflow: if 2 * addr - vma->start is negative,
+ we consider a tiny "guard page" mapping [0, 0] to be present around
+ NULL; it intersects the range (2 * addr - vma->start, vma->start - 1),
+ therefore return false. */
+ unsigned long testaddr = addr - (vma->start - addr);
+ if (testaddr > addr) /* overflow? */
+ return 0;
+ /* Here testaddr <= addr < vma->start. */
+ return is_unmapped (testaddr, vma->start - 1);
+}
+
+#endif
+#if STACK_DIRECTION > 0
+
+/* Info about the gap between this VMA and the next one.
+ addr must be > vma->end - 1. */
+static int
+mincore_is_near_this (unsigned long addr, struct vma_struct *vma)
+{
+ /* addr - vma->end < (vma->next_start - vma->end) / 2
+ is mathematically equivalent to
+ vma->next_start > 2 * addr - vma->end
+ <==> is_unmapped (vma->end, 2 * addr - vma->end).
+ But be careful about overflow: if 2 * addr - vma->end is > ~0UL,
+ we consider a tiny "guard page" mapping [0, 0] to be present around
+ NULL; it intersects the range (vma->end, 2 * addr - vma->end),
+ therefore return false. */
+ unsigned long testaddr = addr + (addr - vma->end);
+ if (testaddr < addr) /* overflow? */
+ return 0;
+ /* Here vma->end - 1 < addr <= testaddr. */
+ return is_unmapped (vma->end, testaddr);
+}
+
+#endif
+
+#ifdef STATIC
+STATIC
+#endif
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ if (pagesize == 0)
+ init_pagesize ();
+ address = (address / pagesize) * pagesize;
+ vma->start = mapped_range_start (address);
+ vma->end = mapped_range_end (address);
+ vma->is_near_this = mincore_is_near_this;
+ return 0;
+}
diff --git a/libsigsegv/src/stackvma-none.c b/libsigsegv/src/stackvma-none.c
new file mode 100644
index 00000000..3ffeb8e3
--- /dev/null
+++ b/libsigsegv/src/stackvma-none.c
@@ -0,0 +1,25 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 "stackvma.h"
+
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ /* No way. */
+ return -1;
+}
diff --git a/libsigsegv/src/stackvma-procfs.c b/libsigsegv/src/stackvma-procfs.c
new file mode 100644
index 00000000..24c90a1a
--- /dev/null
+++ b/libsigsegv/src/stackvma-procfs.c
@@ -0,0 +1,188 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2002, 2006, 2008 Bruno Haible <bruno@clisp.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 "stackvma.h"
+#include <unistd.h> /* open, close */
+#include <fcntl.h> /* open */
+#include <sys/types.h>
+#include <sys/mman.h> /* mmap, munmap */
+#include <sys/procfs.h> /* PIOC*, prmap_t */
+
+#include "stackvma-simple.c"
+
+#if HAVE_MINCORE
+# define sigsegv_get_vma mincore_get_vma
+# define STATIC static
+# include "stackvma-mincore.c"
+# undef sigsegv_get_vma
+#else
+/* Cache for getpagesize(). */
+static unsigned long pagesize;
+/* Initialize pagesize. */
+static void
+init_pagesize (void)
+{
+ pagesize = getpagesize ();
+}
+#endif
+
+int
+sigsegv_get_vma (unsigned long address, struct vma_struct *vma)
+{
+ char fnamebuf[6+10+1];
+ char *fname;
+ int fd;
+ int nmaps;
+ size_t memneed;
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS
+#else
+ int zero_fd;
+# define map_flags 0
+#endif
+ void *auxmap;
+ unsigned long auxmap_start;
+ unsigned long auxmap_end;
+ prmap_t* maps;
+ prmap_t* mp;
+ unsigned long start, end;
+#if STACK_DIRECTION < 0
+ unsigned long prev;
+#endif
+
+ if (pagesize == 0)
+ init_pagesize ();
+
+ /* Construct fname = sprintf (fnamebuf+i, "/proc/%u", getpid ()). */
+ fname = fnamebuf + sizeof (fnamebuf) - 1;
+ *fname = '\0';
+ {
+ unsigned int value = getpid ();
+ do
+ *--fname = (value % 10) + '0';
+ while ((value = value / 10) > 0);
+ }
+ fname -= 6;
+ memcpy (fname, "/proc/", 6);
+
+ fd = open (fname, O_RDONLY);
+ if (fd < 0)
+ goto failed;
+
+ if (ioctl (fd, PIOCNMAP, &nmaps) < 0)
+ goto fail2;
+
+ memneed = (nmaps + 10) * sizeof (prmap_t);
+ /* Allocate memneed bytes of memory.
+ We cannot use alloca here, because we are low on stack space.
+ We also cannot use malloc here, because a malloc() call may have been
+ interrupted.
+ So use mmap(), and ignore the resulting VMA. */
+ memneed = ((memneed - 1) / pagesize + 1) * pagesize;
+#if !(HAVE_MMAP_ANON || HAVE_MMAP_ANONYMOUS)
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+ if (zero_fd < 0)
+ goto fail2;
+#endif
+ auxmap = (void *) mmap ((void *) 0, memneed, PROT_READ | PROT_WRITE, map_flags | MAP_PRIVATE, zero_fd, 0);
+#if !(HAVE_MMAP_ANON || HAVE_MMAP_ANONYMOUS)
+ close (zero_fd);
+#endif
+ if (auxmap == (void *) -1)
+ goto fail2;
+ auxmap_start = (unsigned long) auxmap;
+ auxmap_end = auxmap_start + memneed;
+ maps = (prmap_t *) auxmap;
+
+ if (ioctl (fd, PIOCMAP, maps) < 0)
+ goto fail1;
+
+#if STACK_DIRECTION < 0
+ prev = 0;
+#endif
+ for (mp = maps;;)
+ {
+ start = (unsigned long) mp->pr_vaddr;
+ end = start + mp->pr_size;
+ if (start == 0 && end == 0)
+ break;
+ mp++;
+ if (start <= auxmap_start && auxmap_end - 1 <= end - 1)
+ {
+ /* Consider [start,end-1] \ [auxmap_start,auxmap_end-1]
+ = [start,auxmap_start-1] u [auxmap_end,end-1]. */
+ if (start != auxmap_start)
+ {
+ if (address >= start && address <= auxmap_start - 1)
+ {
+ end = auxmap_start;
+ goto found;
+ }
+#if STACK_DIRECTION < 0
+ prev = auxmap_start;
+#endif
+ }
+ if (end != auxmap_end)
+ {
+ if (address >= auxmap_end && address <= end - 1)
+ {
+ start = auxmap_end;
+ goto found;
+ }
+#if STACK_DIRECTION < 0
+ prev = end;
+#endif
+ }
+ }
+ else
+ {
+ if (address >= start && address <= end - 1)
+ goto found;
+#if STACK_DIRECTION < 0
+ prev = end;
+#endif
+ }
+ }
+
+ fail1:
+ munmap (auxmap, memneed);
+ fail2:
+ close (fd);
+ failed:
+#if HAVE_MINCORE
+ return mincore_get_vma (address, vma);
+#else
+ return -1;
+#endif
+
+ found:
+ vma->start = start;
+ vma->end = end;
+#if STACK_DIRECTION < 0
+ vma->prev_end = prev;
+#else
+ vma->next_start = (unsigned long) mp->pr_vaddr;
+#endif
+ munmap (auxmap, memneed);
+ close (fd);
+ vma->is_near_this = simple_is_near_this;
+ return 0;
+}
diff --git a/libsigsegv/src/stackvma-rofile.c b/libsigsegv/src/stackvma-rofile.c
new file mode 100644
index 00000000..d6d19394
--- /dev/null
+++ b/libsigsegv/src/stackvma-rofile.c
@@ -0,0 +1,121 @@
+/* Buffered read-only streams.
+ Copyright (C) 2008 Bruno Haible <bruno@clisp.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 <errno.h> /* errno, EINTR */
+#include <fcntl.h> /* O_RDONLY */
+#include <stddef.h> /* size_t */
+#include <unistd.h> /* read, close */
+
+/* Buffered read-only streams.
+ We cannot use <stdio.h> here, because fopen() calls malloc(), and a malloc()
+ call may have been interrupted. */
+
+struct rofile
+ {
+ int fd;
+ size_t position;
+ size_t filled;
+ int eof_seen;
+ char buffer[4096];
+ };
+
+/* Open a read-only file stream. */
+static int
+rof_open (struct rofile *rof, const char *filename)
+{
+ int fd = open (filename, O_RDONLY);
+ if (fd < 0)
+ return -1;
+ rof->fd = fd;
+ rof->position = 0;
+ rof->filled = 0;
+ rof->eof_seen = 0;
+ return 0;
+}
+
+/* Return the next byte from a read-only file stream without consuming it,
+ or -1 at EOF. */
+static int
+rof_peekchar (struct rofile *rof)
+{
+ if (rof->position == rof->filled)
+ {
+ if (rof->eof_seen)
+ return -1;
+ else
+ for (;;)
+ {
+ int n = read (rof->fd, rof->buffer, sizeof (rof->buffer));
+#ifdef EINTR
+ if (n < 0 && errno == EINTR)
+ continue;
+#endif
+ if (n <= 0)
+ {
+ rof->eof_seen = 1;
+ return -1;
+ }
+ rof->filled = n;
+ rof->position = 0;
+ break;
+ }
+ }
+ return (unsigned char) rof->buffer[rof->position];
+}
+
+/* Return the next byte from a read-only file stream, or -1 at EOF. */
+static int
+rof_getchar (struct rofile *rof)
+{
+ int c = rof_peekchar (rof);
+ if (c >= 0)
+ rof->position++;
+ return c;
+}
+
+/* Parse an unsigned hexadecimal number from a read-only file stream. */
+static int
+rof_scanf_lx (struct rofile *rof, unsigned long *valuep)
+{
+ unsigned long value = 0;
+ unsigned int numdigits = 0;
+ for (;;)
+ {
+ int c = rof_peekchar (rof);
+ if (c >= '0' && c <= '9')
+ value = (value << 4) + (c - '0');
+ else if (c >= 'A' && c <= 'F')
+ value = (value << 4) + (c - 'A' + 10);
+ else if (c >= 'a' && c <= 'f')
+ value = (value << 4) + (c - 'a' + 10);
+ else
+ break;
+ rof_getchar (rof);
+ numdigits++;
+ }
+ if (numdigits == 0)
+ return -1;
+ *valuep = value;
+ return 0;
+}
+
+/* Close a read-only file stream. */
+static void
+rof_close (struct rofile *rof)
+{
+ close (rof->fd);
+}
diff --git a/libsigsegv/src/stackvma-simple.c b/libsigsegv/src/stackvma-simple.c
new file mode 100644
index 00000000..3e800373
--- /dev/null
+++ b/libsigsegv/src/stackvma-simple.c
@@ -0,0 +1,42 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2006 Bruno Haible <bruno@clisp.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. */
+
+/* This file contains the proximity test function for the simple cases, where
+ the OS has an API for enumerating the mapped ranges of virtual memory. */
+
+#if STACK_DIRECTION < 0
+
+/* Info about the gap between this VMA and the previous one.
+ addr must be < vma->start. */
+static int
+simple_is_near_this (unsigned long addr, struct vma_struct *vma)
+{
+ return (vma->start - addr <= (vma->start - vma->prev_end) / 2);
+}
+
+#endif
+#if STACK_DIRECTION > 0
+
+/* Info about the gap between this VMA and the next one.
+ addr must be > vma->end - 1. */
+static int
+simple_is_near_this (unsigned long addr, struct vma_struct *vma)
+{
+ return (addr - vma->end < (vma->next_start - vma->end) / 2);
+}
+
+#endif
diff --git a/libsigsegv/src/stackvma.c b/libsigsegv/src/stackvma.c
new file mode 100644
index 00000000..17fd8e51
--- /dev/null
+++ b/libsigsegv/src/stackvma.c
@@ -0,0 +1,20 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2002 Bruno Haible <bruno@clisp.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 CFG_STACKVMA
diff --git a/libsigsegv/src/stackvma.h b/libsigsegv/src/stackvma.h
new file mode 100644
index 00000000..cc475d51
--- /dev/null
+++ b/libsigsegv/src/stackvma.h
@@ -0,0 +1,48 @@
+/* Determine the virtual memory area of a given address.
+ Copyright (C) 2002, 2006 Bruno Haible <bruno@clisp.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 _STACKVMA_H
+#define _STACKVMA_H
+
+/* Describes a virtual memory area, with some info about the gap between
+ it and the next or previous virtual memory area. */
+struct vma_struct
+{
+ unsigned long start;
+ unsigned long end;
+#if STACK_DIRECTION < 0
+ /* Info about the gap between this VMA and the previous one.
+ addr must be < vma->start. */
+ int (*is_near_this) (unsigned long addr, struct vma_struct *vma);
+ /* Private field, not provided by all sigsegv_get_vma implementations. */
+ unsigned long prev_end;
+#endif
+#if STACK_DIRECTION > 0
+ /* Info about the gap between this VMA and the next one.
+ addr must be > vma->end - 1. */
+ int (*is_near_this) (unsigned long addr, struct vma_struct *vma);
+ /* Private field, not provided by all sigsegv_get_vma implementations. */
+ unsigned long next_start;
+#endif
+};
+
+/* Determines the virtual memory area to which a given address belongs,
+ and returns 0. Returns -1 if it cannot be determined.
+ This function is used to determine the stack extent when a fault occurs. */
+extern int sigsegv_get_vma (unsigned long address, struct vma_struct *vma);
+
+#endif /* _STACKVMA_H */
diff --git a/libsigsegv/src/version.c b/libsigsegv/src/version.c
new file mode 100644
index 00000000..80bffce2
--- /dev/null
+++ b/libsigsegv/src/version.c
@@ -0,0 +1,20 @@
+/* Version number.
+ Copyright (C) 2005 Bruno Haible <bruno@clisp.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 "sigsegv.h"
+
+int libsigsegv_version = LIBSIGSEGV_VERSION;
diff --git a/libsigsegv/tests/Makefile.am b/libsigsegv/tests/Makefile.am
new file mode 100644
index 00000000..45615fed
--- /dev/null
+++ b/libsigsegv/tests/Makefile.am
@@ -0,0 +1,34 @@
+## Makefile for libsigsegv/tests.
+## Copyright (C) 2002-2003, 2008-2009 Bruno Haible <bruno@clisp.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.
+
+## Process this file with automake to produce Makefile.in.
+
+AUTOMAKE_OPTIONS = 1.11 gnits no-dependencies color-tests
+
+TESTS = sigsegv1 sigsegv2 sigsegv3 stackoverflow1 stackoverflow2
+
+EXTRA_DIST = mmaputil.h
+
+INCLUDES = -I../src
+DEFS = @DEFS@
+LDADD = ../src/libsigsegv.la
+noinst_PROGRAMS = sigsegv1 sigsegv2 sigsegv3 stackoverflow1 stackoverflow2
+
+# The following rule is necessary to avoid a toplevel "make -n" failure.
+../src/libsigsegv.la :
+ cd ../src && $(MAKE) libsigsegv.la
diff --git a/libsigsegv/tests/Makefile.in b/libsigsegv/tests/Makefile.in
new file mode 100644
index 00000000..91dc9e24
--- /dev/null
+++ b/libsigsegv/tests/Makefile.in
@@ -0,0 +1,612 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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@
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+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@
+TESTS = sigsegv1$(EXEEXT) sigsegv2$(EXEEXT) sigsegv3$(EXEEXT) \
+ stackoverflow1$(EXEEXT) stackoverflow2$(EXEEXT)
+noinst_PROGRAMS = sigsegv1$(EXEEXT) sigsegv2$(EXEEXT) \
+ sigsegv3$(EXEEXT) stackoverflow1$(EXEEXT) \
+ stackoverflow2$(EXEEXT)
+subdir = tests
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/bold.m4 \
+ $(top_srcdir)/m4/fault.m4 $(top_srcdir)/m4/getpagesize.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/mmap-anon.m4 \
+ $(top_srcdir)/m4/relocatable.m4 \
+ $(top_srcdir)/m4/sigaltstack-longjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack-siglongjmp.m4 \
+ $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+sigsegv1_SOURCES = sigsegv1.c
+sigsegv1_OBJECTS = sigsegv1.$(OBJEXT)
+sigsegv1_LDADD = $(LDADD)
+sigsegv1_DEPENDENCIES = ../src/libsigsegv.la
+sigsegv2_SOURCES = sigsegv2.c
+sigsegv2_OBJECTS = sigsegv2.$(OBJEXT)
+sigsegv2_LDADD = $(LDADD)
+sigsegv2_DEPENDENCIES = ../src/libsigsegv.la
+sigsegv3_SOURCES = sigsegv3.c
+sigsegv3_OBJECTS = sigsegv3.$(OBJEXT)
+sigsegv3_LDADD = $(LDADD)
+sigsegv3_DEPENDENCIES = ../src/libsigsegv.la
+stackoverflow1_SOURCES = stackoverflow1.c
+stackoverflow1_OBJECTS = stackoverflow1.$(OBJEXT)
+stackoverflow1_LDADD = $(LDADD)
+stackoverflow1_DEPENDENCIES = ../src/libsigsegv.la
+stackoverflow2_SOURCES = stackoverflow2.c
+stackoverflow2_OBJECTS = stackoverflow2.$(OBJEXT)
+stackoverflow2_LDADD = $(LDADD)
+stackoverflow2_DEPENDENCIES = ../src/libsigsegv.la
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp =
+am__depfiles_maybe =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = sigsegv1.c sigsegv2.c sigsegv3.c stackoverflow1.c \
+ stackoverflow2.c
+DIST_SOURCES = sigsegv1.c sigsegv2.c sigsegv3.c stackoverflow1.c \
+ stackoverflow2.c
+ETAGS = etags
+CTAGS = ctags
+# If stdout is a non-dumb tty, use colors. If test -t is not supported,
+# then this fails; a conservative approach. Of course do not redirect
+# stdout here, just stderr.
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=; \
+test "X$(AM_COLOR_TESTS)" != Xno \
+&& test "X$$TERM" != Xdumb \
+&& { test "X$(AM_COLOR_TESTS)" = Xalways || test -t 1 2>/dev/null; } \
+&& { \
+ red=''; \
+ grn=''; \
+ lgn=''; \
+ blu=''; \
+ std=''; \
+}
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFG_HANDLER = @CFG_HANDLER@
+CFG_LEAVE = @CFG_LEAVE@
+CFG_STACKVMA = @CFG_STACKVMA@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FAULT_CONTEXT = @FAULT_CONTEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_SIGSEGV_RECOVERY = @HAVE_SIGSEGV_RECOVERY@
+HAVE_STACK_OVERFLOW_RECOVERY = @HAVE_STACK_OVERFLOW_RECOVERY@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+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@
+PLATFORM = @PLATFORM@
+RANLIB = @RANLIB@
+RELOCATABLE = @RELOCATABLE@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+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@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+AUTOMAKE_OPTIONS = 1.11 gnits no-dependencies color-tests
+EXTRA_DIST = mmaputil.h
+INCLUDES = -I../src
+LDADD = ../src/libsigsegv.la
+all: 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 ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits tests/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnits tests/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
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+sigsegv1$(EXEEXT): $(sigsegv1_OBJECTS) $(sigsegv1_DEPENDENCIES)
+ @rm -f sigsegv1$(EXEEXT)
+ $(LINK) $(sigsegv1_OBJECTS) $(sigsegv1_LDADD) $(LIBS)
+sigsegv2$(EXEEXT): $(sigsegv2_OBJECTS) $(sigsegv2_DEPENDENCIES)
+ @rm -f sigsegv2$(EXEEXT)
+ $(LINK) $(sigsegv2_OBJECTS) $(sigsegv2_LDADD) $(LIBS)
+sigsegv3$(EXEEXT): $(sigsegv3_OBJECTS) $(sigsegv3_DEPENDENCIES)
+ @rm -f sigsegv3$(EXEEXT)
+ $(LINK) $(sigsegv3_OBJECTS) $(sigsegv3_LDADD) $(LIBS)
+stackoverflow1$(EXEEXT): $(stackoverflow1_OBJECTS) $(stackoverflow1_DEPENDENCIES)
+ @rm -f stackoverflow1$(EXEEXT)
+ $(LINK) $(stackoverflow1_OBJECTS) $(stackoverflow1_LDADD) $(LIBS)
+stackoverflow2$(EXEEXT): $(stackoverflow2_OBJECTS) $(stackoverflow2_DEPENDENCIES)
+ @rm -f stackoverflow2$(EXEEXT)
+ $(LINK) $(stackoverflow2_OBJECTS) $(stackoverflow2_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+.c.o:
+ $(COMPILE) -c $<
+
+.c.obj:
+ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+ $(LTCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ 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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ 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; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ echo "$$grn$$dashes"; \
+ else \
+ echo "$$red$$dashes"; \
+ fi; \
+ echo "$$banner"; \
+ test -z "$$skipped" || echo "$$skipped"; \
+ test -z "$$report" || echo "$$report"; \
+ echo "$$dashes$$std"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$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
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: 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:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
+ clean-generic clean-libtool clean-noinstPROGRAMS 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-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am
+
+
+# The following rule is necessary to avoid a toplevel "make -n" failure.
+../src/libsigsegv.la :
+ cd ../src && $(MAKE) libsigsegv.la
+
+# 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:
diff --git a/libsigsegv/tests/mmaputil.h b/libsigsegv/tests/mmaputil.h
new file mode 100644
index 00000000..707b34c5
--- /dev/null
+++ b/libsigsegv/tests/mmaputil.h
@@ -0,0 +1,105 @@
+/* Some auxiliary stuff for using mmap & friends.
+ Copyright (C) 2002-2003 Bruno Haible <bruno@clisp.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. */
+
+#if defined _WIN32 && !defined __CYGWIN__
+# define HAVE_WIN32_VM
+#else
+# include "config.h"
+#endif
+
+#ifdef HAVE_WIN32_VM
+
+/* ------------------------ Windows ------------------------ */
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+#include <winerror.h>
+#define PROT_NONE PAGE_NOACCESS
+#define PROT_READ PAGE_READONLY
+#define PROT_READ_WRITE PAGE_READWRITE
+
+static void *
+mmap_zeromap (void *map_addr_hint, unsigned long map_len)
+{
+ if (VirtualAlloc ((void *)((unsigned long) map_addr_hint & -0x10000),
+ (((unsigned long) map_addr_hint + map_len - 1) | 0xffff) + 1
+ - ((unsigned long) map_addr_hint & -0x10000),
+ MEM_RESERVE, PAGE_NOACCESS)
+ && VirtualAlloc (map_addr_hint, map_len, MEM_COMMIT, PAGE_READWRITE))
+ return map_addr_hint;
+ else
+ return (void *)(-1);
+}
+
+int munmap (void *addr, unsigned long len)
+{
+ if (VirtualFree (addr, len, MEM_DECOMMIT))
+ return 0;
+ else
+ return -1;
+}
+
+int mprotect (void *addr, unsigned long len, int prot)
+{
+ DWORD oldprot;
+
+ if (VirtualProtect (addr, len, prot, &oldprot))
+ return 0;
+ else
+ return -1;
+}
+
+#else
+
+/* ------------------------ Unix ------------------------ */
+
+#include <sys/types.h>
+#include <sys/mman.h>
+
+#ifndef PROT_NONE
+# define PROT_NONE 0
+#endif
+#define PROT_READ_WRITE (PROT_READ|PROT_WRITE)
+
+#if HAVE_MMAP_ANON
+# define zero_fd -1
+# define map_flags MAP_ANON | MAP_PRIVATE
+#elif HAVE_MMAP_ANONYMOUS
+# define zero_fd -1
+# define map_flags MAP_ANONYMOUS | MAP_PRIVATE
+#elif HAVE_MMAP_DEVZERO
+# include <fcntl.h>
+# ifndef MAP_FILE
+# define MAP_FILE 0
+# endif
+static int zero_fd;
+# define map_flags MAP_FILE | MAP_PRIVATE
+#endif
+
+static void *
+mmap_zeromap (void *map_addr_hint, unsigned long map_len)
+{
+#ifdef __hpux
+ /* HP-UX 10 mmap() often fails when given a hint. So give the OS complete
+ freedom about the address range. */
+ return (void *) mmap ((void *) 0, map_len, PROT_READ_WRITE, map_flags, zero_fd, 0);
+#else
+ return (void *) mmap (map_addr_hint, map_len, PROT_READ_WRITE, map_flags, zero_fd, 0);
+#endif
+}
+
+#endif
diff --git a/libsigsegv/tests/sigsegv1.c b/libsigsegv/tests/sigsegv1.c
new file mode 100644
index 00000000..ce006428
--- /dev/null
+++ b/libsigsegv/tests/sigsegv1.c
@@ -0,0 +1,111 @@
+/* Test that the handler is called, with the right fault address.
+ Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.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 _MSC_VER
+# include <config.h>
+#endif
+
+#include "sigsegv.h"
+#include <stdio.h>
+
+#if HAVE_SIGSEGV_RECOVERY
+
+#include "mmaputil.h"
+#include <stdlib.h>
+
+unsigned long page;
+
+volatile int handler_called = 0;
+
+int
+handler (void *fault_address, int serious)
+{
+ handler_called++;
+ if (handler_called > 10)
+ abort ();
+ if (fault_address != (void *)(page + 0x678))
+ abort ();
+ if (mprotect ((void *) page, 0x4000, PROT_READ_WRITE) == 0)
+ return 1;
+ return 0;
+}
+
+void
+crasher (unsigned long p)
+{
+ *(volatile int *) (p + 0x678) = 42;
+}
+
+int
+main ()
+{
+ void *p;
+
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+
+ /* Setup some mmaped memory. */
+ p = mmap_zeromap ((void *) 0x12340000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ page = (unsigned long) p;
+
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+ /* Test whether it's possible to make it read-write after it was read-only.
+ This is not possible on Cygwin. */
+ if (mprotect ((void *) page, 0x4000, PROT_READ_WRITE) < 0
+ || mprotect ((void *) page, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+
+ /* Install the SIGSEGV handler. */
+ sigsegv_install_handler (&handler);
+
+ /* The first write access should invoke the handler and then complete. */
+ crasher (page);
+ /* The second write access should not invoke the handler. */
+ crasher (page);
+
+ /* Check that the handler was called only once. */
+ if (handler_called != 1)
+ exit (1);
+ /* Test passed! */
+ printf ("Test passed.\n");
+ return 0;
+}
+
+#else
+
+int
+main ()
+{
+ return 77;
+}
+
+#endif
diff --git a/libsigsegv/tests/sigsegv2.c b/libsigsegv/tests/sigsegv2.c
new file mode 100644
index 00000000..39961a6a
--- /dev/null
+++ b/libsigsegv/tests/sigsegv2.c
@@ -0,0 +1,150 @@
+/* Test the dispatcher.
+ Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.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 _MSC_VER
+# include <config.h>
+#endif
+
+#include "sigsegv.h"
+#include <stdio.h>
+
+#if HAVE_SIGSEGV_RECOVERY
+
+#include "mmaputil.h"
+#include <stdlib.h>
+
+static sigsegv_dispatcher dispatcher;
+
+static volatile unsigned int logcount = 0;
+static volatile unsigned long logdata[10];
+
+static int
+area_handler (void *fault_address, void *user_arg)
+{
+ unsigned long area = *(unsigned long *)user_arg;
+ logdata[logcount++] = area;
+ if (logcount >= sizeof (logdata) / sizeof (logdata[0]))
+ abort ();
+ if (!((unsigned long)fault_address >= area
+ && (unsigned long)fault_address - area < 0x4000))
+ abort ();
+ if (mprotect ((void *) area, 0x4000, PROT_READ_WRITE) == 0)
+ return 1;
+ return 0;
+}
+
+static int
+handler (void *fault_address, int serious)
+{
+ return sigsegv_dispatch (&dispatcher, fault_address);
+}
+
+static void
+barrier ()
+{
+}
+
+int
+main ()
+{
+ void *p;
+ unsigned long area1;
+ unsigned long area2;
+ unsigned long area3;
+
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+ sigsegv_init (&dispatcher);
+ sigsegv_install_handler (&handler);
+
+ /* Setup some mmaped memory. */
+
+ p = mmap_zeromap ((void *) 0x12340000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ area1 = (unsigned long) p;
+ sigsegv_register (&dispatcher, (void *) area1, 0x4000, &area_handler, &area1);
+ if (mprotect ((void *) area1, 0x4000, PROT_NONE) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+
+ p = mmap_zeromap ((void *) 0x0BEE0000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ area2 = (unsigned long) p;
+ sigsegv_register (&dispatcher, (void *) area2, 0x4000, &area_handler, &area2);
+ if (mprotect ((void *) area2, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+ if (mprotect ((void *) area2, 0x4000, PROT_READ_WRITE) < 0
+ || mprotect ((void *) area2, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+
+ p = mmap_zeromap ((void *) 0x06990000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ area3 = (unsigned long) p;
+ sigsegv_register (&dispatcher, (void *) area3, 0x4000, &area_handler, &area3);
+ mprotect ((void *) area3, 0x4000, PROT_READ);
+
+ /* This access should call the handler. */
+ ((volatile int *)area2)[230] = 22;
+ /* This access should call the handler. */
+ ((volatile int *)area3)[412] = 33;
+ /* This access should not give a signal. */
+ ((volatile int *)area2)[135] = 22;
+ /* This access should call the handler. */
+ ((volatile int *)area1)[612] = 11;
+
+ barrier();
+
+ /* Check that the handler was called three times. */
+ if (logcount != 3)
+ exit (1);
+ if (!(logdata[0] == area2 && logdata[1] == area3 && logdata[2] == area1))
+ exit (1);
+ printf ("Test passed.\n");
+ return 0;
+}
+
+#else
+
+int
+main ()
+{
+ return 77;
+}
+
+#endif
diff --git a/libsigsegv/tests/sigsegv3.c b/libsigsegv/tests/sigsegv3.c
new file mode 100644
index 00000000..1ea0ec40
--- /dev/null
+++ b/libsigsegv/tests/sigsegv3.c
@@ -0,0 +1,134 @@
+/* Test that the handler can be exited multiple times.
+ Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.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 _MSC_VER
+# include <config.h>
+#endif
+
+#include "sigsegv.h"
+#include <stdio.h>
+
+#if HAVE_SIGSEGV_RECOVERY
+
+#if defined _WIN32 && !defined __CYGWIN__
+ /* Windows doesn't have sigset_t. */
+ typedef int sigset_t;
+# define sigemptyset(set)
+# define sigprocmask(how,set,oldset)
+#endif
+
+#include "mmaputil.h"
+#include <stdlib.h> /* for abort, exit */
+#include <signal.h>
+#include <setjmp.h>
+
+jmp_buf mainloop;
+sigset_t mainsigset;
+
+volatile int pass = 0;
+unsigned long page;
+
+volatile int handler_called = 0;
+
+static void
+handler_continuation (void *arg1, void *arg2, void *arg3)
+{
+ longjmp (mainloop, pass);
+}
+
+int
+handler (void *fault_address, int serious)
+{
+ handler_called++;
+ if (handler_called > 10)
+ abort ();
+ if (fault_address != (void *)(page + 0x678 + 8 * pass))
+ abort ();
+ pass++;
+ printf ("Stack overflow %d caught.\n", pass);
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ return sigsegv_leave_handler (handler_continuation, NULL, NULL, NULL);
+}
+
+void
+crasher (unsigned long p)
+{
+ *(volatile int *) (p + 0x678 + 8 * pass) = 42;
+}
+
+int
+main ()
+{
+ sigset_t emptyset;
+ void *p;
+
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+
+ /* Setup some mmaped memory. */
+ p = mmap_zeromap ((void *) 0x12340000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ page = (unsigned long) p;
+
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+
+ /* Install the SIGSEGV handler. */
+ if (sigsegv_install_handler (&handler) < 0)
+ exit (2);
+
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+
+ /* Provoke two SIGSEGVs in a row. */
+ switch (setjmp (mainloop))
+ {
+ case 0: case 1:
+ printf ("Doing SIGSEGV pass %d.\n", pass + 1);
+ crasher (page);
+ printf ("no SIGSEGV?!\n"); exit (1);
+ case 2:
+ break;
+ default:
+ abort ();
+ }
+
+ /* Test passed! */
+ printf ("Test passed.\n");
+ return 0;
+}
+
+#else
+
+int
+main ()
+{
+ return 77;
+}
+
+#endif
diff --git a/libsigsegv/tests/stackoverflow1.c b/libsigsegv/tests/stackoverflow1.c
new file mode 100644
index 00000000..0970e794
--- /dev/null
+++ b/libsigsegv/tests/stackoverflow1.c
@@ -0,0 +1,147 @@
+/* Test the stack overflow handler.
+ Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.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 _MSC_VER
+# include <config.h>
+#endif
+
+#include "sigsegv.h"
+#include <stdio.h>
+#include <limits.h>
+
+#if HAVE_STACK_OVERFLOW_RECOVERY
+
+#if defined _WIN32 && !defined __CYGWIN__
+ /* Windows doesn't have sigset_t. */
+ typedef int sigset_t;
+# define sigemptyset(set)
+# define sigprocmask(how,set,oldset)
+#endif
+
+#include <stddef.h> /* needed for NULL on SunOS4 */
+#include <stdlib.h> /* for abort, exit */
+#include <signal.h>
+#include <setjmp.h>
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+
+jmp_buf mainloop;
+sigset_t mainsigset;
+
+volatile int pass = 0;
+
+volatile char *stack_lower_bound;
+volatile char *stack_upper_bound;
+
+static void
+stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3)
+{
+ int arg = (int) (long) arg1;
+ longjmp (mainloop, arg);
+}
+
+void
+stackoverflow_handler (int emergency, stackoverflow_context_t scp)
+{
+ char dummy;
+ volatile char *addr = &dummy;
+ if (!(addr >= stack_lower_bound && addr <= stack_upper_bound))
+ abort ();
+ pass++;
+ printf ("Stack overflow %d caught.\n", pass);
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ sigsegv_leave_handler (stackoverflow_handler_continuation,
+ (void *) (long) (emergency ? -1 : pass), NULL, NULL);
+}
+
+volatile int *
+recurse_1 (int n, volatile int *p)
+{
+ if (n < INT_MAX)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+
+int
+recurse (volatile int n)
+{
+ return *recurse_1 (n, &n);
+}
+
+int
+main ()
+{
+ /* glibc says: Users should use SIGSTKSZ as the size of user-supplied
+ buffers. */
+ char mystack[SIGSTKSZ];
+ sigset_t emptyset;
+
+#if HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+
+ /* Install the stack overflow handler. */
+ if (stackoverflow_install_handler (&stackoverflow_handler,
+ mystack, sizeof (mystack))
+ < 0)
+ exit (2);
+ stack_lower_bound = mystack;
+ stack_upper_bound = mystack + sizeof (mystack) - 1;
+
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+
+ /* Provoke two stack overflows in a row. */
+ switch (setjmp (mainloop))
+ {
+ case -1:
+ printf ("emergency exit\n"); exit (1);
+ case 0: case 1:
+ printf ("Starting recursion pass %d.\n", pass + 1);
+ recurse (0);
+ printf ("no endless recursion?!\n"); exit (1);
+ case 2:
+ break;
+ default:
+ abort ();
+ }
+
+ printf ("Test passed.\n");
+ exit (0);
+}
+
+#else
+
+int
+main ()
+{
+ return 77;
+}
+
+#endif
diff --git a/libsigsegv/tests/stackoverflow2.c b/libsigsegv/tests/stackoverflow2.c
new file mode 100644
index 00000000..2475bf21
--- /dev/null
+++ b/libsigsegv/tests/stackoverflow2.c
@@ -0,0 +1,198 @@
+/* Test that stack overflow and SIGSEGV are correctly distinguished.
+ Copyright (C) 2002-2006, 2008 Bruno Haible <bruno@clisp.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 _MSC_VER
+# include <config.h>
+#endif
+
+#include "sigsegv.h"
+#include <stdio.h>
+#include <limits.h>
+
+#if HAVE_STACK_OVERFLOW_RECOVERY && HAVE_SIGSEGV_RECOVERY
+
+#if defined _WIN32 && !defined __CYGWIN__
+ /* Windows doesn't have sigset_t. */
+ typedef int sigset_t;
+# define sigemptyset(set)
+# define sigprocmask(how,set,oldset)
+#endif
+
+#include "mmaputil.h"
+#include <stddef.h> /* needed for NULL on SunOS4 */
+#include <stdlib.h> /* for abort, exit */
+#include <signal.h>
+#include <setjmp.h>
+#if HAVE_SETRLIMIT
+# include <sys/types.h>
+# include <sys/time.h>
+# include <sys/resource.h>
+#endif
+#ifndef SIGSTKSZ
+# define SIGSTKSZ 16384
+#endif
+
+jmp_buf mainloop;
+sigset_t mainsigset;
+
+volatile int pass = 0;
+unsigned long page;
+
+static void
+stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3)
+{
+ int arg = (int) (long) arg1;
+ longjmp (mainloop, arg);
+}
+
+void
+stackoverflow_handler (int emergency, stackoverflow_context_t scp)
+{
+ pass++;
+ if (pass <= 2)
+ printf ("Stack overflow %d caught.\n", pass);
+ else
+ {
+ printf ("Segmentation violation misdetected as stack overflow.\n");
+ exit (1);
+ }
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ sigsegv_leave_handler (stackoverflow_handler_continuation,
+ (void *) (long) (emergency ? -1 : pass), NULL, NULL);
+}
+
+int
+sigsegv_handler (void *address, int emergency)
+{
+ /* This test is necessary to distinguish stack overflow and SIGSEGV. */
+ if (!emergency)
+ return 0;
+
+ pass++;
+ if (pass <= 2)
+ {
+ printf ("Stack overflow %d missed.\n", pass);
+ exit (1);
+ }
+ else
+ printf ("Segmentation violation correctly detected.\n");
+ sigprocmask (SIG_SETMASK, &mainsigset, NULL);
+ return sigsegv_leave_handler (stackoverflow_handler_continuation,
+ (void *) (long) pass, NULL, NULL);
+}
+
+volatile int *
+recurse_1 (int n, volatile int *p)
+{
+ if (n < INT_MAX)
+ *recurse_1 (n + 1, p) += n;
+ return p;
+}
+
+int
+recurse (volatile int n)
+{
+ return *recurse_1 (n, &n);
+}
+
+int
+main ()
+{
+ /* glibc says: Users should use SIGSTKSZ as the size of user-supplied
+ buffers. */
+ char mystack[SIGSTKSZ];
+ sigset_t emptyset;
+ void *p;
+
+#if HAVE_SETRLIMIT && defined RLIMIT_STACK
+ /* Before starting the endless recursion, try to be friendly to the user's
+ machine. On some Linux 2.2.x systems, there is no stack limit for user
+ processes at all. We don't want to kill such systems. */
+ struct rlimit rl;
+ rl.rlim_cur = rl.rlim_max = 0x100000; /* 1 MB */
+ setrlimit (RLIMIT_STACK, &rl);
+#endif
+
+ /* Install the stack overflow handler. */
+ if (stackoverflow_install_handler (&stackoverflow_handler,
+ mystack, sizeof (mystack))
+ < 0)
+ exit (2);
+
+ /* Preparations. */
+#if !HAVE_MMAP_ANON && !HAVE_MMAP_ANONYMOUS && HAVE_MMAP_DEVZERO
+ zero_fd = open ("/dev/zero", O_RDONLY, 0644);
+#endif
+
+ /* Setup some mmaped memory. */
+ p = mmap_zeromap ((void *) 0x12340000, 0x4000);
+ if (p == (void *)(-1))
+ {
+ fprintf (stderr, "mmap_zeromap failed.\n");
+ exit (2);
+ }
+ page = (unsigned long) p;
+
+ /* Make it read-only. */
+ if (mprotect ((void *) page, 0x4000, PROT_READ) < 0)
+ {
+ fprintf (stderr, "mprotect failed.\n");
+ exit (2);
+ }
+
+ /* Install the SIGSEGV handler. */
+ if (sigsegv_install_handler (&sigsegv_handler) < 0)
+ exit (2);
+
+ /* Save the current signal mask. */
+ sigemptyset (&emptyset);
+ sigprocmask (SIG_BLOCK, &emptyset, &mainsigset);
+
+ /* Provoke two stack overflows in a row. */
+ switch (setjmp (mainloop))
+ {
+ case -1:
+ printf ("emergency exit\n"); exit (1);
+ case 0: case 1:
+ printf ("Starting recursion pass %d.\n", pass + 1);
+ recurse (0);
+ printf ("no endless recursion?!\n"); exit (1);
+ case 2:
+ *(volatile int *) (page + 0x678) = 42;
+ break;
+ case 3:
+ *(volatile int *) 0 = 42;
+ break;
+ case 4:
+ break;
+ default:
+ abort ();
+ }
+
+ printf ("Test passed.\n");
+ exit (0);
+}
+
+#else
+
+int
+main ()
+{
+ return 77;
+}
+
+#endif
diff --git a/ltmain.sh b/ltmain.sh
new file mode 100755
index 00000000..b36c4ad3
--- /dev/null
+++ b/ltmain.sh
@@ -0,0 +1,8406 @@
+# Generated from ltmain.m4sh.
+
+# ltmain.sh (GNU libtool) 2.2.6
+# Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions. There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool 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 of the License, or
+# (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# Usage: $progname [OPTION]... [MODE-ARG]...
+#
+# Provide generalized library-building support services.
+#
+# --config show all configuration variables
+# --debug enable verbose shell tracing
+# -n, --dry-run display commands without modifying any files
+# --features display basic configuration information and exit
+# --mode=MODE use operation mode MODE
+# --preserve-dup-deps don't remove duplicate dependency libraries
+# --quiet, --silent don't print informational messages
+# --tag=TAG use configuration variables from tag TAG
+# -v, --verbose print informational messages (default)
+# --version print version information
+# -h, --help print short or long help message
+#
+# MODE must be one of the following:
+#
+# clean remove files from the build directory
+# compile compile a source file into a libtool object
+# execute automatically set library path, then run a program
+# finish complete the installation of libtool libraries
+# install install libraries or executables
+# link create a library or an executable
+# uninstall remove libraries from an installed directory
+#
+# MODE-ARGS vary depending on the MODE.
+# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
+#
+# When reporting a bug, please describe a test case to reproduce it and
+# include the following information:
+#
+# host-triplet: $host
+# shell: $SHELL
+# compiler: $LTCC
+# compiler flags: $LTCFLAGS
+# linker: $LD (gnu? $with_gnu_ld)
+# $progname: (GNU libtool) 2.2.6
+# automake: $automake_version
+# autoconf: $autoconf_version
+#
+# Report bugs to <bug-libtool@gnu.org>.
+
+PROGRAM=ltmain.sh
+PACKAGE=libtool
+VERSION=2.2.6
+TIMESTAMP=""
+package_revision=1.3012
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# NLS nuisances: We save the old values to restore during execute mode.
+# Only set LANG and LC_ALL to C if already set.
+# These must not be set unconditionally because not all systems understand
+# e.g. LANG=C (notably SCO).
+lt_user_locale=
+lt_safe_locale=
+for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+do
+ eval "if test \"\${$lt_var+set}\" = set; then
+ save_$lt_var=\$$lt_var
+ $lt_var=C
+ export $lt_var
+ lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
+ lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
+ fi"
+done
+
+$lt_unset CDPATH
+
+
+
+
+
+: ${CP="cp -f"}
+: ${ECHO="echo"}
+: ${EGREP="/usr/bin/grep -E"}
+: ${FGREP="/usr/bin/grep -F"}
+: ${GREP="/usr/bin/grep"}
+: ${LN_S="ln -s"}
+: ${MAKE="make"}
+: ${MKDIR="mkdir"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+: ${SED="/opt/local/bin/gsed"}
+: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
+: ${Xsed="$SED -e 1s/^X//"}
+
+# Global variables:
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing.
+EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake.
+
+exit_status=$EXIT_SUCCESS
+
+# Make sure IFS has a sensible default
+lt_nl='
+'
+IFS=" $lt_nl"
+
+dirname="s,/[^/]*$,,"
+basename="s,^.*/,,"
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+# Generated shell functions inserted here.
+
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
+# is ksh but when the shell is invoked as "sh" and the current value of
+# the _XPG environment variable is not equal to 1 (one), the special
+# positional parameter $0, within a function call, is the name of the
+# function.
+progpath="$0"
+
+# The name of this program:
+# In the unlikely event $progname began with a '-', it would play havoc with
+# func_echo (imagine progname=-n), so we prepend ./ in that case:
+func_dirname_and_basename "$progpath"
+progname=$func_basename_result
+case $progname in
+ -*) progname=./$progname ;;
+esac
+
+# Make sure we have an absolute path for reexecution:
+case $progpath in
+ [\\/]*|[A-Za-z]:\\*) ;;
+ *[\\/]*)
+ progdir=$func_dirname_result
+ progdir=`cd "$progdir" && pwd`
+ progpath="$progdir/$progname"
+ ;;
+ *)
+ save_IFS="$IFS"
+ IFS=:
+ for progdir in $PATH; do
+ IFS="$save_IFS"
+ test -x "$progdir/$progname" && break
+ done
+ IFS="$save_IFS"
+ test -n "$progdir" || progdir=`pwd`
+ progpath="$progdir/$progname"
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed="${SED}"' -e 1s/^X//'
+sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\(["`\\]\)/\\\1/g'
+
+# Re-`\' parameter expansions in output of double_quote_subst that were
+# `\'-ed in input to the same. If an odd number of `\' preceded a '$'
+# in input to double_quote_subst, that '$' was protected from expansion.
+# Since each input `\' is now two `\'s, look for any number of runs of
+# four `\'s followed by two `\'s and then a '$'. `\' that '$'.
+bs='\\'
+bs2='\\\\'
+bs4='\\\\\\\\'
+dollar='\$'
+sed_double_backslash="\
+ s/$bs4/&\\
+/g
+ s/^$bs2$dollar/$bs&/
+ s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
+ s/\n//g"
+
+# Standard options:
+opt_dry_run=false
+opt_help=false
+opt_quiet=false
+opt_verbose=false
+opt_warning=:
+
+# func_echo arg...
+# Echo program name prefixed message, along with the current mode
+# name if it has been set yet.
+func_echo ()
+{
+ $ECHO "$progname${mode+: }$mode: $*"
+}
+
+# func_verbose arg...
+# Echo program name prefixed message in verbose mode only.
+func_verbose ()
+{
+ $opt_verbose && func_echo ${1+"$@"}
+
+ # A bug in bash halts the script if the last line of a function
+ # fails when set -e is in force, so we need another command to
+ # work around that:
+ :
+}
+
+# func_error arg...
+# Echo program name prefixed message to standard error.
+func_error ()
+{
+ $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2
+}
+
+# func_warning arg...
+# Echo program name prefixed warning message to standard error.
+func_warning ()
+{
+ $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2
+
+ # bash bug again:
+ :
+}
+
+# func_fatal_error arg...
+# Echo program name prefixed message to standard error, and exit.
+func_fatal_error ()
+{
+ func_error ${1+"$@"}
+ exit $EXIT_FAILURE
+}
+
+# func_fatal_help arg...
+# Echo program name prefixed message to standard error, followed by
+# a help hint, and exit.
+func_fatal_help ()
+{
+ func_error ${1+"$@"}
+ func_fatal_error "$help"
+}
+help="Try \`$progname --help' for more information." ## default
+
+
+# func_grep expression filename
+# Check whether EXPRESSION matches any line of FILENAME, without output.
+func_grep ()
+{
+ $GREP "$1" "$2" >/dev/null 2>&1
+}
+
+
+# func_mkdir_p directory-path
+# Make sure the entire path to DIRECTORY-PATH is available.
+func_mkdir_p ()
+{
+ my_directory_path="$1"
+ my_dir_list=
+
+ if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
+
+ # Protect directory names starting with `-'
+ case $my_directory_path in
+ -*) my_directory_path="./$my_directory_path" ;;
+ esac
+
+ # While some portion of DIR does not yet exist...
+ while test ! -d "$my_directory_path"; do
+ # ...make a list in topmost first order. Use a colon delimited
+ # list incase some portion of path contains whitespace.
+ my_dir_list="$my_directory_path:$my_dir_list"
+
+ # If the last portion added has no slash in it, the list is done
+ case $my_directory_path in */*) ;; *) break ;; esac
+
+ # ...otherwise throw away the child directory and loop
+ my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"`
+ done
+ my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'`
+
+ save_mkdir_p_IFS="$IFS"; IFS=':'
+ for my_dir in $my_dir_list; do
+ IFS="$save_mkdir_p_IFS"
+ # mkdir can fail with a `File exist' error if two processes
+ # try to create one of the directories concurrently. Don't
+ # stop in that case!
+ $MKDIR "$my_dir" 2>/dev/null || :
+ done
+ IFS="$save_mkdir_p_IFS"
+
+ # Bail out if we (or some other process) failed to create a directory.
+ test -d "$my_directory_path" || \
+ func_fatal_error "Failed to create \`$1'"
+ fi
+}
+
+
+# func_mktempdir [string]
+# Make a temporary directory that won't clash with other running
+# libtool processes, and avoids race conditions if possible. If
+# given, STRING is the basename for that directory.
+func_mktempdir ()
+{
+ my_template="${TMPDIR-/tmp}/${1-$progname}"
+
+ if test "$opt_dry_run" = ":"; then
+ # Return a directory name, but don't create it in dry-run mode
+ my_tmpdir="${my_template}-$$"
+ else
+
+ # If mktemp works, use that first and foremost
+ my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
+
+ if test ! -d "$my_tmpdir"; then
+ # Failing that, at least try and use $RANDOM to avoid a race
+ my_tmpdir="${my_template}-${RANDOM-0}$$"
+
+ save_mktempdir_umask=`umask`
+ umask 0077
+ $MKDIR "$my_tmpdir"
+ umask $save_mktempdir_umask
+ fi
+
+ # If we're not in dry-run mode, bomb out on failure
+ test -d "$my_tmpdir" || \
+ func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
+ fi
+
+ $ECHO "X$my_tmpdir" | $Xsed
+}
+
+
+# func_quote_for_eval arg
+# Aesthetically quote ARG to be evaled later.
+# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
+# is double-quoted, suitable for a subsequent eval, whereas
+# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
+# which are still active within double quotes backslashified.
+func_quote_for_eval ()
+{
+ case $1 in
+ *[\\\`\"\$]*)
+ func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;;
+ *)
+ func_quote_for_eval_unquoted_result="$1" ;;
+ esac
+
+ case $func_quote_for_eval_unquoted_result in
+ # Double-quote args containing shell metacharacters to delay
+ # word splitting, command substitution and and variable
+ # expansion for a subsequent eval.
+ # Many Bourne shells cannot handle close brackets correctly
+ # in scan sets, so we specify it separately.
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
+ ;;
+ *)
+ func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
+ esac
+}
+
+
+# func_quote_for_expand arg
+# Aesthetically quote ARG to be evaled later; same as above,
+# but do not quote variable references.
+func_quote_for_expand ()
+{
+ case $1 in
+ *[\\\`\"]*)
+ my_arg=`$ECHO "X$1" | $Xsed \
+ -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
+ *)
+ my_arg="$1" ;;
+ esac
+
+ case $my_arg in
+ # Double-quote args containing shell metacharacters to delay
+ # word splitting and command substitution for a subsequent eval.
+ # Many Bourne shells cannot handle close brackets correctly
+ # in scan sets, so we specify it separately.
+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
+ my_arg="\"$my_arg\""
+ ;;
+ esac
+
+ func_quote_for_expand_result="$my_arg"
+}
+
+
+# func_show_eval cmd [fail_exp]
+# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
+# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.
+func_show_eval ()
+{
+ my_cmd="$1"
+ my_fail_exp="${2-:}"
+
+ ${opt_silent-false} || {
+ func_quote_for_expand "$my_cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+
+ if ${opt_dry_run-false}; then :; else
+ eval "$my_cmd"
+ my_status=$?
+ if test "$my_status" -eq 0; then :; else
+ eval "(exit $my_status); $my_fail_exp"
+ fi
+ fi
+}
+
+
+# func_show_eval_locale cmd [fail_exp]
+# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
+# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it. Use the saved locale for evaluation.
+func_show_eval_locale ()
+{
+ my_cmd="$1"
+ my_fail_exp="${2-:}"
+
+ ${opt_silent-false} || {
+ func_quote_for_expand "$my_cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+
+ if ${opt_dry_run-false}; then :; else
+ eval "$lt_user_locale
+ $my_cmd"
+ my_status=$?
+ eval "$lt_safe_locale"
+ if test "$my_status" -eq 0; then :; else
+ eval "(exit $my_status); $my_fail_exp"
+ fi
+ fi
+}
+
+
+
+
+
+# func_version
+# Echo version message to standard output and exit.
+func_version ()
+{
+ $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / {
+ s/^# //
+ s/^# *$//
+ s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
+ p
+ }' < "$progpath"
+ exit $?
+}
+
+# func_usage
+# Echo short help message to standard output and exit.
+func_usage ()
+{
+ $SED -n '/^# Usage:/,/# -h/ {
+ s/^# //
+ s/^# *$//
+ s/\$progname/'$progname'/
+ p
+ }' < "$progpath"
+ $ECHO
+ $ECHO "run \`$progname --help | more' for full usage"
+ exit $?
+}
+
+# func_help
+# Echo long help message to standard output and exit.
+func_help ()
+{
+ $SED -n '/^# Usage:/,/# Report bugs to/ {
+ s/^# //
+ s/^# *$//
+ s*\$progname*'$progname'*
+ s*\$host*'"$host"'*
+ s*\$SHELL*'"$SHELL"'*
+ s*\$LTCC*'"$LTCC"'*
+ s*\$LTCFLAGS*'"$LTCFLAGS"'*
+ s*\$LD*'"$LD"'*
+ s/\$with_gnu_ld/'"$with_gnu_ld"'/
+ s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/
+ s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/
+ p
+ }' < "$progpath"
+ exit $?
+}
+
+# func_missing_arg argname
+# Echo program name prefixed message to standard error and set global
+# exit_cmd.
+func_missing_arg ()
+{
+ func_error "missing argument for $1"
+ exit_cmd=exit
+}
+
+exit_cmd=:
+
+
+
+
+
+# Check that we have a working $ECHO.
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X$1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell, and then maybe $ECHO will work.
+ exec $SHELL "$progpath" --no-reexec ${1+"$@"}
+fi
+
+if test "X$1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<EOF
+$*
+EOF
+ exit $EXIT_SUCCESS
+fi
+
+magic="%%%MAGIC variable%%%"
+magic_exe="%%%MAGIC EXE variable%%%"
+
+# Global variables.
+# $mode is unset
+nonopt=
+execute_dlfiles=
+preserve_args=
+lo2o="s/\\.lo\$/.${objext}/"
+o2lo="s/\\.${objext}\$/.lo/"
+extracted_archives=
+extracted_serial=0
+
+opt_dry_run=false
+opt_duplicate_deps=false
+opt_silent=false
+opt_debug=:
+
+# If this variable is set in any of the actions, the command in it
+# will be execed at the end. This prevents here-documents from being
+# left over by shells.
+exec_cmd=
+
+# func_fatal_configuration arg...
+# Echo program name prefixed message to standard error, followed by
+# a configuration failure hint, and exit.
+func_fatal_configuration ()
+{
+ func_error ${1+"$@"}
+ func_error "See the $PACKAGE documentation for more information."
+ func_fatal_error "Fatal configuration error."
+}
+
+
+# func_config
+# Display the configuration for all the tags in this script.
+func_config ()
+{
+ re_begincf='^# ### BEGIN LIBTOOL'
+ re_endcf='^# ### END LIBTOOL'
+
+ # Default configuration.
+ $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
+
+ # Now print the configurations for the tags.
+ for tagname in $taglist; do
+ $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
+ done
+
+ exit $?
+}
+
+# func_features
+# Display the features supported by this script.
+func_features ()
+{
+ $ECHO "host: $host"
+ if test "$build_libtool_libs" = yes; then
+ $ECHO "enable shared libraries"
+ else
+ $ECHO "disable shared libraries"
+ fi
+ if test "$build_old_libs" = yes; then
+ $ECHO "enable static libraries"
+ else
+ $ECHO "disable static libraries"
+ fi
+
+ exit $?
+}
+
+# func_enable_tag tagname
+# Verify that TAGNAME is valid, and either flag an error and exit, or
+# enable the TAGNAME tag. We also add TAGNAME to the global $taglist
+# variable here.
+func_enable_tag ()
+{
+ # Global variable:
+ tagname="$1"
+
+ re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
+ re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
+ sed_extractcf="/$re_begincf/,/$re_endcf/p"
+
+ # Validate tagname.
+ case $tagname in
+ *[!-_A-Za-z0-9,/]*)
+ func_fatal_error "invalid tag name: $tagname"
+ ;;
+ esac
+
+ # Don't test for the "default" C tag, as we know it's
+ # there but not specially marked.
+ case $tagname in
+ CC) ;;
+ *)
+ if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
+ taglist="$taglist $tagname"
+
+ # Evaluate the configuration. Be careful to quote the path
+ # and the sed script, to avoid splitting on whitespace, but
+ # also don't use non-portable quotes within backquotes within
+ # quotes we have to do it in 2 steps:
+ extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
+ eval "$extractedcf"
+ else
+ func_error "ignoring unknown tag $tagname"
+ fi
+ ;;
+ esac
+}
+
+# Parse options once, thoroughly. This comes as soon as possible in
+# the script to make things like `libtool --version' happen quickly.
+{
+
+ # Shorthand for --mode=foo, only valid as the first argument
+ case $1 in
+ clean|clea|cle|cl)
+ shift; set dummy --mode clean ${1+"$@"}; shift
+ ;;
+ compile|compil|compi|comp|com|co|c)
+ shift; set dummy --mode compile ${1+"$@"}; shift
+ ;;
+ execute|execut|execu|exec|exe|ex|e)
+ shift; set dummy --mode execute ${1+"$@"}; shift
+ ;;
+ finish|finis|fini|fin|fi|f)
+ shift; set dummy --mode finish ${1+"$@"}; shift
+ ;;
+ install|instal|insta|inst|ins|in|i)
+ shift; set dummy --mode install ${1+"$@"}; shift
+ ;;
+ link|lin|li|l)
+ shift; set dummy --mode link ${1+"$@"}; shift
+ ;;
+ uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+ shift; set dummy --mode uninstall ${1+"$@"}; shift
+ ;;
+ esac
+
+ # Parse non-mode specific arguments:
+ while test "$#" -gt 0; do
+ opt="$1"
+ shift
+
+ case $opt in
+ --config) func_config ;;
+
+ --debug) preserve_args="$preserve_args $opt"
+ func_echo "enabling shell trace mode"
+ opt_debug='set -x'
+ $opt_debug
+ ;;
+
+ -dlopen) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ execute_dlfiles="$execute_dlfiles $1"
+ shift
+ ;;
+
+ --dry-run | -n) opt_dry_run=: ;;
+ --features) func_features ;;
+ --finish) mode="finish" ;;
+
+ --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ case $1 in
+ # Valid mode arguments:
+ clean) ;;
+ compile) ;;
+ execute) ;;
+ finish) ;;
+ install) ;;
+ link) ;;
+ relink) ;;
+ uninstall) ;;
+
+ # Catch anything else as an error
+ *) func_error "invalid argument for $opt"
+ exit_cmd=exit
+ break
+ ;;
+ esac
+
+ mode="$1"
+ shift
+ ;;
+
+ --preserve-dup-deps)
+ opt_duplicate_deps=: ;;
+
+ --quiet|--silent) preserve_args="$preserve_args $opt"
+ opt_silent=:
+ ;;
+
+ --verbose| -v) preserve_args="$preserve_args $opt"
+ opt_silent=false
+ ;;
+
+ --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break
+ preserve_args="$preserve_args $opt $1"
+ func_enable_tag "$1" # tagname is set here
+ shift
+ ;;
+
+ # Separate optargs to long options:
+ -dlopen=*|--mode=*|--tag=*)
+ func_opt_split "$opt"
+ set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}
+ shift
+ ;;
+
+ -\?|-h) func_usage ;;
+ --help) opt_help=: ;;
+ --version) func_version ;;
+
+ -*) func_fatal_help "unrecognized option \`$opt'" ;;
+
+ *) nonopt="$opt"
+ break
+ ;;
+ esac
+ done
+
+
+ case $host in
+ *cygwin* | *mingw* | *pw32* | *cegcc*)
+ # don't eliminate duplications in $postdeps and $predeps
+ opt_duplicate_compiler_generated_deps=:
+ ;;
+ *)
+ opt_duplicate_compiler_generated_deps=$opt_duplicate_deps
+ ;;
+ esac
+
+ # Having warned about all mis-specified options, bail out if
+ # anything was wrong.
+ $exit_cmd $EXIT_FAILURE
+}
+
+# func_check_version_match
+# Ensure that we are using m4 macros, and libtool script from the same
+# release of libtool.
+func_check_version_match ()
+{
+ if test "$package_revision" != "$macro_revision"; then
+ if test "$VERSION" != "$macro_version"; then
+ if test -z "$macro_version"; then
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from an older release.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+ else
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
+$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
+$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
+$progname: and run autoconf again.
+_LT_EOF
+ fi
+ else
+ cat >&2 <<_LT_EOF
+$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision,
+$progname: but the definition of this LT_INIT comes from revision $macro_revision.
+$progname: You should recreate aclocal.m4 with macros from revision $package_revision
+$progname: of $PACKAGE $VERSION and run autoconf again.
+_LT_EOF
+ fi
+
+ exit $EXIT_MISMATCH
+ fi
+}
+
+
+## ----------- ##
+## Main. ##
+## ----------- ##
+
+$opt_help || {
+ # Sanity checks first:
+ func_check_version_match
+
+ if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
+ func_fatal_configuration "not configured to build any kind of library"
+ fi
+
+ test -z "$mode" && func_fatal_error "error: you must specify a MODE."
+
+
+ # Darwin sucks
+ eval std_shrext=\"$shrext_cmds\"
+
+
+ # Only execute mode is allowed to have -dlopen flags.
+ if test -n "$execute_dlfiles" && test "$mode" != execute; then
+ func_error "unrecognized option \`-dlopen'"
+ $ECHO "$help" 1>&2
+ exit $EXIT_FAILURE
+ fi
+
+ # Change the help message to a mode-specific one.
+ generic_help="$help"
+ help="Try \`$progname --help --mode=$mode' for more information."
+}
+
+
+# func_lalib_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_lalib_p ()
+{
+ test -f "$1" &&
+ $SED -e 4q "$1" 2>/dev/null \
+ | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+}
+
+# func_lalib_unsafe_p file
+# True iff FILE is a libtool `.la' library or `.lo' object file.
+# This function implements the same check as func_lalib_p without
+# resorting to external programs. To this end, it redirects stdin and
+# closes it afterwards, without saving the original file descriptor.
+# As a safety measure, use it only where a negative result would be
+# fatal anyway. Works if `file' does not exist.
+func_lalib_unsafe_p ()
+{
+ lalib_p=no
+ if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
+ for lalib_p_l in 1 2 3 4
+ do
+ read lalib_p_line
+ case "$lalib_p_line" in
+ \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
+ esac
+ done
+ exec 0<&5 5<&-
+ fi
+ test "$lalib_p" = yes
+}
+
+# func_ltwrapper_script_p file
+# True iff FILE is a libtool wrapper script
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_script_p ()
+{
+ func_lalib_p "$1"
+}
+
+# func_ltwrapper_executable_p file
+# True iff FILE is a libtool wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_executable_p ()
+{
+ func_ltwrapper_exec_suffix=
+ case $1 in
+ *.exe) ;;
+ *) func_ltwrapper_exec_suffix=.exe ;;
+ esac
+ $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
+}
+
+# func_ltwrapper_scriptname file
+# Assumes file is an ltwrapper_executable
+# uses $file to determine the appropriate filename for a
+# temporary ltwrapper_script.
+func_ltwrapper_scriptname ()
+{
+ func_ltwrapper_scriptname_result=""
+ if func_ltwrapper_executable_p "$1"; then
+ func_dirname_and_basename "$1" "" "."
+ func_stripname '' '.exe' "$func_basename_result"
+ func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
+ fi
+}
+
+# func_ltwrapper_p file
+# True iff FILE is a libtool wrapper script or wrapper executable
+# This function is only a basic sanity check; it will hardly flush out
+# determined imposters.
+func_ltwrapper_p ()
+{
+ func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
+}
+
+
+# func_execute_cmds commands fail_cmd
+# Execute tilde-delimited COMMANDS.
+# If FAIL_CMD is given, eval that upon failure.
+# FAIL_CMD may read-access the current command in variable CMD!
+func_execute_cmds ()
+{
+ $opt_debug
+ save_ifs=$IFS; IFS='~'
+ for cmd in $1; do
+ IFS=$save_ifs
+ eval cmd=\"$cmd\"
+ func_show_eval "$cmd" "${2-:}"
+ done
+ IFS=$save_ifs
+}
+
+
+# func_source file
+# Source FILE, adding directory component if necessary.
+# Note that it is not necessary on cygwin/mingw to append a dot to
+# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
+# behavior happens only for exec(3), not for open(2)! Also, sourcing
+# `FILE.' does not work on cygwin managed mounts.
+func_source ()
+{
+ $opt_debug
+ case $1 in
+ */* | *\\*) . "$1" ;;
+ *) . "./$1" ;;
+ esac
+}
+
+
+# func_infer_tag arg
+# Infer tagged configuration to use if any are available and
+# if one wasn't chosen via the "--tag" command line option.
+# Only attempt this if the compiler in the base compile
+# command doesn't match the default compiler.
+# arg is usually of the form 'gcc ...'
+func_infer_tag ()
+{
+ $opt_debug
+ if test -n "$available_tags" && test -z "$tagname"; then
+ CC_quoted=
+ for arg in $CC; do
+ func_quote_for_eval "$arg"
+ CC_quoted="$CC_quoted $func_quote_for_eval_result"
+ done
+ case $@ in
+ # Blanks in the command may have been stripped by the calling shell,
+ # but not from the CC environment variable when configure was run.
+ " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;
+ # Blanks at the start of $base_compile will cause this to fail
+ # if we don't check for them as well.
+ *)
+ for z in $available_tags; do
+ if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
+ # Evaluate the configuration.
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+ CC_quoted=
+ for arg in $CC; do
+ # Double-quote args containing other shell metacharacters.
+ func_quote_for_eval "$arg"
+ CC_quoted="$CC_quoted $func_quote_for_eval_result"
+ done
+ case "$@ " in
+ " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)
+ # The compiler in the base compile command matches
+ # the one in the tagged configuration.
+ # Assume this is the tagged configuration we want.
+ tagname=$z
+ break
+ ;;
+ esac
+ fi
+ done
+ # If $tagname still isn't set, then no tagged configuration
+ # was found and let the user know that the "--tag" command
+ # line option must be used.
+ if test -z "$tagname"; then
+ func_echo "unable to infer tagged configuration"
+ func_fatal_error "specify a tag with \`--tag'"
+# else
+# func_verbose "using $tagname tagged configuration"
+ fi
+ ;;
+ esac
+ fi
+}
+
+
+
+# func_write_libtool_object output_name pic_name nonpic_name
+# Create a libtool object file (analogous to a ".la" file),
+# but don't create it if we're doing a dry run.
+func_write_libtool_object ()
+{
+ write_libobj=${1}
+ if test "$build_libtool_libs" = yes; then
+ write_lobj=\'${2}\'
+ else
+ write_lobj=none
+ fi
+
+ if test "$build_old_libs" = yes; then
+ write_oldobj=\'${3}\'
+ else
+ write_oldobj=none
+ fi
+
+ $opt_dry_run || {
+ cat >${write_libobj}T <<EOF
+# $write_libobj - a libtool object file
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# Name of the PIC object.
+pic_object=$write_lobj
+
+# Name of the non-PIC object
+non_pic_object=$write_oldobj
+
+EOF
+ $MV "${write_libobj}T" "${write_libobj}"
+ }
+}
+
+# func_mode_compile arg...
+func_mode_compile ()
+{
+ $opt_debug
+ # Get the compilation command and the source file.
+ base_compile=
+ srcfile="$nonopt" # always keep a non-empty value in "srcfile"
+ suppress_opt=yes
+ suppress_output=
+ arg_mode=normal
+ libobj=
+ later=
+ pie_flag=
+
+ for arg
+ do
+ case $arg_mode in
+ arg )
+ # do not "continue". Instead, add this to base_compile
+ lastarg="$arg"
+ arg_mode=normal
+ ;;
+
+ target )
+ libobj="$arg"
+ arg_mode=normal
+ continue
+ ;;
+
+ normal )
+ # Accept any command-line options.
+ case $arg in
+ -o)
+ test -n "$libobj" && \
+ func_fatal_error "you cannot specify \`-o' more than once"
+ arg_mode=target
+ continue
+ ;;
+
+ -pie | -fpie | -fPIE)
+ pie_flag="$pie_flag $arg"
+ continue
+ ;;
+
+ -shared | -static | -prefer-pic | -prefer-non-pic)
+ later="$later $arg"
+ continue
+ ;;
+
+ -no-suppress)
+ suppress_opt=no
+ continue
+ ;;
+
+ -Xcompiler)
+ arg_mode=arg # the next one goes into the "base_compile" arg list
+ continue # The current "srcfile" will either be retained or
+ ;; # replaced later. I would guess that would be a bug.
+
+ -Wc,*)
+ func_stripname '-Wc,' '' "$arg"
+ args=$func_stripname_result
+ lastarg=
+ save_ifs="$IFS"; IFS=','
+ for arg in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$arg"
+ lastarg="$lastarg $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$lastarg"
+ lastarg=$func_stripname_result
+
+ # Add the arguments to base_compile.
+ base_compile="$base_compile $lastarg"
+ continue
+ ;;
+
+ *)
+ # Accept the current argument as the source file.
+ # The previous "srcfile" becomes the current argument.
+ #
+ lastarg="$srcfile"
+ srcfile="$arg"
+ ;;
+ esac # case $arg
+ ;;
+ esac # case $arg_mode
+
+ # Aesthetically quote the previous argument.
+ func_quote_for_eval "$lastarg"
+ base_compile="$base_compile $func_quote_for_eval_result"
+ done # for arg
+
+ case $arg_mode in
+ arg)
+ func_fatal_error "you must specify an argument for -Xcompile"
+ ;;
+ target)
+ func_fatal_error "you must specify a target with \`-o'"
+ ;;
+ *)
+ # Get the name of the library object.
+ test -z "$libobj" && {
+ func_basename "$srcfile"
+ libobj="$func_basename_result"
+ }
+ ;;
+ esac
+
+ # Recognize several different file suffixes.
+ # If the user specifies -o file.o, it is replaced with file.lo
+ case $libobj in
+ *.[cCFSifmso] | \
+ *.ada | *.adb | *.ads | *.asm | \
+ *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
+ *.[fF][09]? | *.for | *.java | *.obj | *.sx)
+ func_xform "$libobj"
+ libobj=$func_xform_result
+ ;;
+ esac
+
+ case $libobj in
+ *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
+ *)
+ func_fatal_error "cannot determine name of library object from \`$libobj'"
+ ;;
+ esac
+
+ func_infer_tag $base_compile
+
+ for arg in $later; do
+ case $arg in
+ -shared)
+ test "$build_libtool_libs" != yes && \
+ func_fatal_configuration "can not build a shared library"
+ build_old_libs=no
+ continue
+ ;;
+
+ -static)
+ build_libtool_libs=no
+ build_old_libs=yes
+ continue
+ ;;
+
+ -prefer-pic)
+ pic_mode=yes
+ continue
+ ;;
+
+ -prefer-non-pic)
+ pic_mode=no
+ continue
+ ;;
+ esac
+ done
+
+ func_quote_for_eval "$libobj"
+ test "X$libobj" != "X$func_quote_for_eval_result" \
+ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
+ && func_warning "libobj name \`$libobj' may not contain shell special characters."
+ func_dirname_and_basename "$obj" "/" ""
+ objname="$func_basename_result"
+ xdir="$func_dirname_result"
+ lobj=${xdir}$objdir/$objname
+
+ test -z "$base_compile" && \
+ func_fatal_help "you must specify a compilation command"
+
+ # Delete any leftover library objects.
+ if test "$build_old_libs" = yes; then
+ removelist="$obj $lobj $libobj ${libobj}T"
+ else
+ removelist="$lobj $libobj ${libobj}T"
+ fi
+
+ # On Cygwin there's no "real" PIC flag so we must build both object types
+ case $host_os in
+ cygwin* | mingw* | pw32* | os2* | cegcc*)
+ pic_mode=default
+ ;;
+ esac
+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+ # non-PIC code in shared libraries is not supported
+ pic_mode=default
+ fi
+
+ # Calculate the filename of the output object if compiler does
+ # not support -o with -c
+ if test "$compiler_c_o" = no; then
+ output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
+ lockfile="$output_obj.lock"
+ else
+ output_obj=
+ need_locks=no
+ lockfile=
+ fi
+
+ # Lock this critical section if it is needed
+ # We use this script file to make the link, it avoids creating a new file
+ if test "$need_locks" = yes; then
+ until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
+ func_echo "Waiting for $lockfile to be removed"
+ sleep 2
+ done
+ elif test "$need_locks" = warn; then
+ if test -f "$lockfile"; then
+ $ECHO "\
+*** ERROR, $lockfile exists and contains:
+`cat $lockfile 2>/dev/null`
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+ removelist="$removelist $output_obj"
+ $ECHO "$srcfile" > "$lockfile"
+ fi
+
+ $opt_dry_run || $RM $removelist
+ removelist="$removelist $lockfile"
+ trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
+
+ if test -n "$fix_srcfile_path"; then
+ eval srcfile=\"$fix_srcfile_path\"
+ fi
+ func_quote_for_eval "$srcfile"
+ qsrcfile=$func_quote_for_eval_result
+
+ # Only build a PIC object if we are building libtool libraries.
+ if test "$build_libtool_libs" = yes; then
+ # Without this assignment, base_compile gets emptied.
+ fbsd_hideous_sh_bug=$base_compile
+
+ if test "$pic_mode" != no; then
+ command="$base_compile $qsrcfile $pic_flag"
+ else
+ # Don't build PIC code
+ command="$base_compile $qsrcfile"
+ fi
+
+ func_mkdir_p "$xdir$objdir"
+
+ if test -z "$output_obj"; then
+ # Place PIC objects in $objdir
+ command="$command -o $lobj"
+ fi
+
+ func_show_eval_locale "$command" \
+ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
+
+ if test "$need_locks" = warn &&
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+ $ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+
+ # Just move the object if needed, then go on to compile the next one
+ if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
+ func_show_eval '$MV "$output_obj" "$lobj"' \
+ 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+ fi
+
+ # Allow error messages only from the first compilation.
+ if test "$suppress_opt" = yes; then
+ suppress_output=' >/dev/null 2>&1'
+ fi
+ fi
+
+ # Only build a position-dependent object if we build old libraries.
+ if test "$build_old_libs" = yes; then
+ if test "$pic_mode" != yes; then
+ # Don't build PIC code
+ command="$base_compile $qsrcfile$pie_flag"
+ else
+ command="$base_compile $qsrcfile $pic_flag"
+ fi
+ if test "$compiler_c_o" = yes; then
+ command="$command -o $obj"
+ fi
+
+ # Suppress compiler output if we already did a PIC compilation.
+ command="$command$suppress_output"
+ func_show_eval_locale "$command" \
+ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
+
+ if test "$need_locks" = warn &&
+ test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
+ $ECHO "\
+*** ERROR, $lockfile contains:
+`cat $lockfile 2>/dev/null`
+
+but it should contain:
+$srcfile
+
+This indicates that another process is trying to use the same
+temporary object file, and libtool could not work around it because
+your compiler does not support \`-c' and \`-o' together. If you
+repeat this compilation, it may succeed, by chance, but you had better
+avoid parallel builds (make -j) in this platform, or get a better
+compiler."
+
+ $opt_dry_run || $RM $removelist
+ exit $EXIT_FAILURE
+ fi
+
+ # Just move the object if needed
+ if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
+ func_show_eval '$MV "$output_obj" "$obj"' \
+ 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
+ fi
+ fi
+
+ $opt_dry_run || {
+ func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
+
+ # Unlock the critical section if it was locked
+ if test "$need_locks" != no; then
+ removelist=$lockfile
+ $RM "$lockfile"
+ fi
+ }
+
+ exit $EXIT_SUCCESS
+}
+
+$opt_help || {
+test "$mode" = compile && func_mode_compile ${1+"$@"}
+}
+
+func_mode_help ()
+{
+ # We need to display help for each of the modes.
+ case $mode in
+ "")
+ # Generic help is extracted from the usage comments
+ # at the start of this file.
+ func_help
+ ;;
+
+ clean)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
+
+Remove files from the build directory.
+
+RM is the name of the program to use to delete files associated with each FILE
+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
+to RM.
+
+If FILE is a libtool library, object or program, all the files associated
+with it are deleted. Otherwise, only FILE itself is deleted using RM."
+ ;;
+
+ compile)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
+
+Compile a source file into a libtool library object.
+
+This mode accepts the following additional options:
+
+ -o OUTPUT-FILE set the output file name to OUTPUT-FILE
+ -no-suppress do not suppress compiler output for multiple passes
+ -prefer-pic try to building PIC objects only
+ -prefer-non-pic try to building non-PIC objects only
+ -shared do not build a \`.o' file suitable for static linking
+ -static only build a \`.o' file suitable for static linking
+
+COMPILE-COMMAND is a command to be used in creating a \`standard' object file
+from the given SOURCEFILE.
+
+The output file name is determined by removing the directory component from
+SOURCEFILE, then substituting the C source code suffix \`.c' with the
+library object suffix, \`.lo'."
+ ;;
+
+ execute)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
+
+Automatically set library path, then run a program.
+
+This mode accepts the following additional options:
+
+ -dlopen FILE add the directory containing FILE to the library path
+
+This mode sets the library path environment variable according to \`-dlopen'
+flags.
+
+If any of the ARGS are libtool executable wrappers, then they are translated
+into their corresponding uninstalled binary, and any of their required library
+directories are added to the library path.
+
+Then, COMMAND is executed, with ARGS as arguments."
+ ;;
+
+ finish)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
+
+Complete the installation of libtool libraries.
+
+Each LIBDIR is a directory that contains libtool libraries.
+
+The commands that this mode executes may require superuser privileges. Use
+the \`--dry-run' option if you just want to see what would be executed."
+ ;;
+
+ install)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
+
+Install executables or libraries.
+
+INSTALL-COMMAND is the installation command. The first component should be
+either the \`install' or \`cp' program.
+
+The following components of INSTALL-COMMAND are treated specially:
+
+ -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation
+
+The rest of the components are interpreted as arguments to that command (only
+BSD-compatible install options are recognized)."
+ ;;
+
+ link)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
+
+Link object files or libraries together to form another library, or to
+create an executable program.
+
+LINK-COMMAND is a command using the C compiler that you would use to create
+a program from several object files.
+
+The following components of LINK-COMMAND are treated specially:
+
+ -all-static do not do any dynamic linking at all
+ -avoid-version do not add a version suffix if possible
+ -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
+ -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
+ -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
+ -export-symbols SYMFILE
+ try to export only the symbols listed in SYMFILE
+ -export-symbols-regex REGEX
+ try to export only the symbols matching REGEX
+ -LLIBDIR search LIBDIR for required installed libraries
+ -lNAME OUTPUT-FILE requires the installed library libNAME
+ -module build a library that can dlopened
+ -no-fast-install disable the fast-install mode
+ -no-install link a not-installable executable
+ -no-undefined declare that a library does not refer to external symbols
+ -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
+ -objectlist FILE Use a list of object files found in FILE to specify objects
+ -precious-files-regex REGEX
+ don't remove output files matching REGEX
+ -release RELEASE specify package release information
+ -rpath LIBDIR the created library will eventually be installed in LIBDIR
+ -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
+ -shared only do dynamic linking of libtool libraries
+ -shrext SUFFIX override the standard shared library file extension
+ -static do not do any dynamic linking of uninstalled libtool libraries
+ -static-libtool-libs
+ do not do any dynamic linking of libtool libraries
+ -version-info CURRENT[:REVISION[:AGE]]
+ specify library version info [each variable defaults to 0]
+ -weak LIBNAME declare that the target provides the LIBNAME interface
+
+All other options (arguments beginning with \`-') are ignored.
+
+Every other argument is treated as a filename. Files ending in \`.la' are
+treated as uninstalled libtool libraries, other files are standard or library
+object files.
+
+If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
+only library objects (\`.lo' files) may be specified, and \`-rpath' is
+required, except when creating a convenience library.
+
+If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
+using \`ar' and \`ranlib', or on Windows using \`lib'.
+
+If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
+is created, otherwise an executable program is created."
+ ;;
+
+ uninstall)
+ $ECHO \
+"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
+
+Remove libraries from an installation directory.
+
+RM is the name of the program to use to delete files associated with each FILE
+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
+to RM.
+
+If FILE is a libtool library, all the files associated with it are deleted.
+Otherwise, only FILE itself is deleted using RM."
+ ;;
+
+ *)
+ func_fatal_help "invalid operation mode \`$mode'"
+ ;;
+ esac
+
+ $ECHO
+ $ECHO "Try \`$progname --help' for more information about other modes."
+
+ exit $?
+}
+
+ # Now that we've collected a possible --mode arg, show help if necessary
+ $opt_help && func_mode_help
+
+
+# func_mode_execute arg...
+func_mode_execute ()
+{
+ $opt_debug
+ # The first argument is the command name.
+ cmd="$nonopt"
+ test -z "$cmd" && \
+ func_fatal_help "you must specify a COMMAND"
+
+ # Handle -dlopen flags immediately.
+ for file in $execute_dlfiles; do
+ test -f "$file" \
+ || func_fatal_help "\`$file' is not a file"
+
+ dir=
+ case $file in
+ *.la)
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$file" \
+ || func_fatal_help "\`$lib' is not a valid libtool archive"
+
+ # Read the libtool library.
+ dlname=
+ library_names=
+ func_source "$file"
+
+ # Skip this library if it cannot be dlopened.
+ if test -z "$dlname"; then
+ # Warn if it was a shared library.
+ test -n "$library_names" && \
+ func_warning "\`$file' was not linked with \`-export-dynamic'"
+ continue
+ fi
+
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+
+ if test -f "$dir/$objdir/$dlname"; then
+ dir="$dir/$objdir"
+ else
+ if test ! -f "$dir/$dlname"; then
+ func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
+ fi
+ fi
+ ;;
+
+ *.lo)
+ # Just add the directory containing the .lo file.
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+ ;;
+
+ *)
+ func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
+ continue
+ ;;
+ esac
+
+ # Get the absolute pathname.
+ absdir=`cd "$dir" && pwd`
+ test -n "$absdir" && dir="$absdir"
+
+ # Now add the directory to shlibpath_var.
+ if eval "test -z \"\$$shlibpath_var\""; then
+ eval "$shlibpath_var=\"\$dir\""
+ else
+ eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
+ fi
+ done
+
+ # This variable tells wrapper scripts just to set shlibpath_var
+ # rather than running their programs.
+ libtool_execute_magic="$magic"
+
+ # Check if any of the arguments is a wrapper script.
+ args=
+ for file
+ do
+ case $file in
+ -*) ;;
+ *)
+ # Do a test to see if this is really a libtool program.
+ if func_ltwrapper_script_p "$file"; then
+ func_source "$file"
+ # Transform arg to wrapped name.
+ file="$progdir/$program"
+ elif func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ func_source "$func_ltwrapper_scriptname_result"
+ # Transform arg to wrapped name.
+ file="$progdir/$program"
+ fi
+ ;;
+ esac
+ # Quote arguments (to preserve shell metacharacters).
+ func_quote_for_eval "$file"
+ args="$args $func_quote_for_eval_result"
+ done
+
+ if test "X$opt_dry_run" = Xfalse; then
+ if test -n "$shlibpath_var"; then
+ # Export the shlibpath_var.
+ eval "export $shlibpath_var"
+ fi
+
+ # Restore saved environment variables
+ for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+ do
+ eval "if test \"\${save_$lt_var+set}\" = set; then
+ $lt_var=\$save_$lt_var; export $lt_var
+ else
+ $lt_unset $lt_var
+ fi"
+ done
+
+ # Now prepare to actually exec the command.
+ exec_cmd="\$cmd$args"
+ else
+ # Display what would be done.
+ if test -n "$shlibpath_var"; then
+ eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
+ $ECHO "export $shlibpath_var"
+ fi
+ $ECHO "$cmd$args"
+ exit $EXIT_SUCCESS
+ fi
+}
+
+test "$mode" = execute && func_mode_execute ${1+"$@"}
+
+
+# func_mode_finish arg...
+func_mode_finish ()
+{
+ $opt_debug
+ libdirs="$nonopt"
+ admincmds=
+
+ if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
+ for dir
+ do
+ libdirs="$libdirs $dir"
+ done
+
+ for libdir in $libdirs; do
+ if test -n "$finish_cmds"; then
+ # Do each command in the finish commands.
+ func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
+'"$cmd"'"'
+ fi
+ if test -n "$finish_eval"; then
+ # Do the single finish_eval.
+ eval cmds=\"$finish_eval\"
+ $opt_dry_run || eval "$cmds" || admincmds="$admincmds
+ $cmds"
+ fi
+ done
+ fi
+
+ # Exit here if they wanted silent mode.
+ $opt_silent && exit $EXIT_SUCCESS
+
+ $ECHO "X----------------------------------------------------------------------" | $Xsed
+ $ECHO "Libraries have been installed in:"
+ for libdir in $libdirs; do
+ $ECHO " $libdir"
+ done
+ $ECHO
+ $ECHO "If you ever happen to want to link against installed libraries"
+ $ECHO "in a given directory, LIBDIR, you must either use libtool, and"
+ $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'"
+ $ECHO "flag during linking and do at least one of the following:"
+ if test -n "$shlibpath_var"; then
+ $ECHO " - add LIBDIR to the \`$shlibpath_var' environment variable"
+ $ECHO " during execution"
+ fi
+ if test -n "$runpath_var"; then
+ $ECHO " - add LIBDIR to the \`$runpath_var' environment variable"
+ $ECHO " during linking"
+ fi
+ if test -n "$hardcode_libdir_flag_spec"; then
+ libdir=LIBDIR
+ eval flag=\"$hardcode_libdir_flag_spec\"
+
+ $ECHO " - use the \`$flag' linker flag"
+ fi
+ if test -n "$admincmds"; then
+ $ECHO " - have your system administrator run these commands:$admincmds"
+ fi
+ if test -f /etc/ld.so.conf; then
+ $ECHO " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
+ fi
+ $ECHO
+
+ $ECHO "See any operating system documentation about shared libraries for"
+ case $host in
+ solaris2.[6789]|solaris2.1[0-9])
+ $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual"
+ $ECHO "pages."
+ ;;
+ *)
+ $ECHO "more information, such as the ld(1) and ld.so(8) manual pages."
+ ;;
+ esac
+ $ECHO "X----------------------------------------------------------------------" | $Xsed
+ exit $EXIT_SUCCESS
+}
+
+test "$mode" = finish && func_mode_finish ${1+"$@"}
+
+
+# func_mode_install arg...
+func_mode_install ()
+{
+ $opt_debug
+ # There may be an optional sh(1) argument at the beginning of
+ # install_prog (especially on Windows NT).
+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
+ # Allow the use of GNU shtool's install command.
+ $ECHO "X$nonopt" | $GREP shtool >/dev/null; then
+ # Aesthetically quote it.
+ func_quote_for_eval "$nonopt"
+ install_prog="$func_quote_for_eval_result "
+ arg=$1
+ shift
+ else
+ install_prog=
+ arg=$nonopt
+ fi
+
+ # The real first argument should be the name of the installation program.
+ # Aesthetically quote it.
+ func_quote_for_eval "$arg"
+ install_prog="$install_prog$func_quote_for_eval_result"
+
+ # We need to accept at least all the BSD install flags.
+ dest=
+ files=
+ opts=
+ prev=
+ install_type=
+ isdir=no
+ stripme=
+ for arg
+ do
+ if test -n "$dest"; then
+ files="$files $dest"
+ dest=$arg
+ continue
+ fi
+
+ case $arg in
+ -d) isdir=yes ;;
+ -f)
+ case " $install_prog " in
+ *[\\\ /]cp\ *) ;;
+ *) prev=$arg ;;
+ esac
+ ;;
+ -g | -m | -o)
+ prev=$arg
+ ;;
+ -s)
+ stripme=" -s"
+ continue
+ ;;
+ -*)
+ ;;
+ *)
+ # If the previous option needed an argument, then skip it.
+ if test -n "$prev"; then
+ prev=
+ else
+ dest=$arg
+ continue
+ fi
+ ;;
+ esac
+
+ # Aesthetically quote the argument.
+ func_quote_for_eval "$arg"
+ install_prog="$install_prog $func_quote_for_eval_result"
+ done
+
+ test -z "$install_prog" && \
+ func_fatal_help "you must specify an install program"
+
+ test -n "$prev" && \
+ func_fatal_help "the \`$prev' option requires an argument"
+
+ if test -z "$files"; then
+ if test -z "$dest"; then
+ func_fatal_help "no file or destination specified"
+ else
+ func_fatal_help "you must specify a destination"
+ fi
+ fi
+
+ # Strip any trailing slash from the destination.
+ func_stripname '' '/' "$dest"
+ dest=$func_stripname_result
+
+ # Check to see that the destination is a directory.
+ test -d "$dest" && isdir=yes
+ if test "$isdir" = yes; then
+ destdir="$dest"
+ destname=
+ else
+ func_dirname_and_basename "$dest" "" "."
+ destdir="$func_dirname_result"
+ destname="$func_basename_result"
+
+ # Not a directory, so check to see that there is only one file specified.
+ set dummy $files; shift
+ test "$#" -gt 1 && \
+ func_fatal_help "\`$dest' is not a directory"
+ fi
+ case $destdir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ for file in $files; do
+ case $file in
+ *.lo) ;;
+ *)
+ func_fatal_help "\`$destdir' must be an absolute directory name"
+ ;;
+ esac
+ done
+ ;;
+ esac
+
+ # This variable tells wrapper scripts just to set variables rather
+ # than running their programs.
+ libtool_install_magic="$magic"
+
+ staticlibs=
+ future_libdirs=
+ current_libdirs=
+ for file in $files; do
+
+ # Do each installation.
+ case $file in
+ *.$libext)
+ # Do the static libraries later.
+ staticlibs="$staticlibs $file"
+ ;;
+
+ *.la)
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$file" \
+ || func_fatal_help "\`$file' is not a valid libtool archive"
+
+ library_names=
+ old_library=
+ relink_command=
+ func_source "$file"
+
+ # Add the libdir to current_libdirs if it is the destination.
+ if test "X$destdir" = "X$libdir"; then
+ case "$current_libdirs " in
+ *" $libdir "*) ;;
+ *) current_libdirs="$current_libdirs $libdir" ;;
+ esac
+ else
+ # Note the libdir as a future libdir.
+ case "$future_libdirs " in
+ *" $libdir "*) ;;
+ *) future_libdirs="$future_libdirs $libdir" ;;
+ esac
+ fi
+
+ func_dirname "$file" "/" ""
+ dir="$func_dirname_result"
+ dir="$dir$objdir"
+
+ if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+ test "$inst_prefix_dir" = "$destdir" && \
+ func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"`
+ fi
+
+ func_warning "relinking \`$file'"
+ func_show_eval "$relink_command" \
+ 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
+ fi
+
+ # See the names of the shared library.
+ set dummy $library_names; shift
+ if test -n "$1"; then
+ realname="$1"
+ shift
+
+ srcname="$realname"
+ test -n "$relink_command" && srcname="$realname"T
+
+ # Install the shared library and build the symlinks.
+ func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \
+ 'exit $?'
+ tstripme="$stripme"
+ case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ case $realname in
+ *.dll.a)
+ tstripme=""
+ ;;
+ esac
+ ;;
+ esac
+ if test -n "$tstripme" && test -n "$striplib"; then
+ func_show_eval "$striplib $destdir/$realname" 'exit $?'
+ fi
+
+ if test "$#" -gt 0; then
+ # Delete the old symlinks, and create new ones.
+ # Try `ln -sf' first, because the `ln' binary might depend on
+ # the symlink we replace! Solaris /bin/ln does not understand -f,
+ # so we also need to try rm && ln -s.
+ for linkname
+ do
+ test "$linkname" != "$realname" \
+ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
+ done
+ fi
+
+ # Do each command in the postinstall commands.
+ lib="$destdir/$realname"
+ func_execute_cmds "$postinstall_cmds" 'exit $?'
+ fi
+
+ # Install the pseudo-library for information purposes.
+ func_basename "$file"
+ name="$func_basename_result"
+ instname="$dir/$name"i
+ func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
+
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
+
+ *.lo)
+ # Install (i.e. copy) a libtool object.
+
+ # Figure out destination file name, if it wasn't already specified.
+ if test -n "$destname"; then
+ destfile="$destdir/$destname"
+ else
+ func_basename "$file"
+ destfile="$func_basename_result"
+ destfile="$destdir/$destfile"
+ fi
+
+ # Deduce the name of the destination old-style object file.
+ case $destfile in
+ *.lo)
+ func_lo2o "$destfile"
+ staticdest=$func_lo2o_result
+ ;;
+ *.$objext)
+ staticdest="$destfile"
+ destfile=
+ ;;
+ *)
+ func_fatal_help "cannot copy a libtool object to \`$destfile'"
+ ;;
+ esac
+
+ # Install the libtool object if requested.
+ test -n "$destfile" && \
+ func_show_eval "$install_prog $file $destfile" 'exit $?'
+
+ # Install the old object if enabled.
+ if test "$build_old_libs" = yes; then
+ # Deduce the name of the old-style object file.
+ func_lo2o "$file"
+ staticobj=$func_lo2o_result
+ func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
+ fi
+ exit $EXIT_SUCCESS
+ ;;
+
+ *)
+ # Figure out destination file name, if it wasn't already specified.
+ if test -n "$destname"; then
+ destfile="$destdir/$destname"
+ else
+ func_basename "$file"
+ destfile="$func_basename_result"
+ destfile="$destdir/$destfile"
+ fi
+
+ # If the file is missing, and there is a .exe on the end, strip it
+ # because it is most likely a libtool script we actually want to
+ # install
+ stripped_ext=""
+ case $file in
+ *.exe)
+ if test ! -f "$file"; then
+ func_stripname '' '.exe' "$file"
+ file=$func_stripname_result
+ stripped_ext=".exe"
+ fi
+ ;;
+ esac
+
+ # Do a test to see if this is really a libtool program.
+ case $host in
+ *cygwin* | *mingw*)
+ if func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ wrapper=$func_ltwrapper_scriptname_result
+ else
+ func_stripname '' '.exe' "$file"
+ wrapper=$func_stripname_result
+ fi
+ ;;
+ *)
+ wrapper=$file
+ ;;
+ esac
+ if func_ltwrapper_script_p "$wrapper"; then
+ notinst_deplibs=
+ relink_command=
+
+ func_source "$wrapper"
+
+ # Check the variables that should have been set.
+ test -z "$generated_by_libtool_version" && \
+ func_fatal_error "invalid libtool wrapper script \`$wrapper'"
+
+ finalize=yes
+ for lib in $notinst_deplibs; do
+ # Check to see that each library is installed.
+ libdir=
+ if test -f "$lib"; then
+ func_source "$lib"
+ fi
+ libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
+ if test -n "$libdir" && test ! -f "$libfile"; then
+ func_warning "\`$lib' has not been installed in \`$libdir'"
+ finalize=no
+ fi
+ done
+
+ relink_command=
+ func_source "$wrapper"
+
+ outputname=
+ if test "$fast_install" = no && test -n "$relink_command"; then
+ $opt_dry_run || {
+ if test "$finalize" = yes; then
+ tmpdir=`func_mktempdir`
+ func_basename "$file$stripped_ext"
+ file="$func_basename_result"
+ outputname="$tmpdir/$file"
+ # Replace the output file specification.
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
+
+ $opt_silent || {
+ func_quote_for_expand "$relink_command"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ if eval "$relink_command"; then :
+ else
+ func_error "error: relink \`$file' with the above command before installing it"
+ $opt_dry_run || ${RM}r "$tmpdir"
+ continue
+ fi
+ file="$outputname"
+ else
+ func_warning "cannot relink \`$file'"
+ fi
+ }
+ else
+ # Install the binary that we compiled earlier.
+ file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
+ fi
+ fi
+
+ # remove .exe since cygwin /usr/bin/install will append another
+ # one anyway
+ case $install_prog,$host in
+ */usr/bin/install*,*cygwin*)
+ case $file:$destfile in
+ *.exe:*.exe)
+ # this is ok
+ ;;
+ *.exe:*)
+ destfile=$destfile.exe
+ ;;
+ *:*.exe)
+ func_stripname '' '.exe' "$destfile"
+ destfile=$func_stripname_result
+ ;;
+ esac
+ ;;
+ esac
+ func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
+ $opt_dry_run || if test -n "$outputname"; then
+ ${RM}r "$tmpdir"
+ fi
+ ;;
+ esac
+ done
+
+ for file in $staticlibs; do
+ func_basename "$file"
+ name="$func_basename_result"
+
+ # Set up the ranlib parameters.
+ oldlib="$destdir/$name"
+
+ func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
+
+ if test -n "$stripme" && test -n "$old_striplib"; then
+ func_show_eval "$old_striplib $oldlib" 'exit $?'
+ fi
+
+ # Do each command in the postinstall commands.
+ func_execute_cmds "$old_postinstall_cmds" 'exit $?'
+ done
+
+ test -n "$future_libdirs" && \
+ func_warning "remember to run \`$progname --finish$future_libdirs'"
+
+ if test -n "$current_libdirs"; then
+ # Maybe just do a dry run.
+ $opt_dry_run && current_libdirs=" -n$current_libdirs"
+ exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
+ else
+ exit $EXIT_SUCCESS
+ fi
+}
+
+test "$mode" = install && func_mode_install ${1+"$@"}
+
+
+# func_generate_dlsyms outputname originator pic_p
+# Extract symbols from dlprefiles and create ${outputname}S.o with
+# a dlpreopen symbol table.
+func_generate_dlsyms ()
+{
+ $opt_debug
+ my_outputname="$1"
+ my_originator="$2"
+ my_pic_p="${3-no}"
+ my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
+ my_dlsyms=
+
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ if test -n "$NM" && test -n "$global_symbol_pipe"; then
+ my_dlsyms="${my_outputname}S.c"
+ else
+ func_error "not configured to extract global symbols from dlpreopened files"
+ fi
+ fi
+
+ if test -n "$my_dlsyms"; then
+ case $my_dlsyms in
+ "") ;;
+ *.c)
+ # Discover the nlist of each of the dlfiles.
+ nlist="$output_objdir/${my_outputname}.nm"
+
+ func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
+
+ # Parse the name list into a source file.
+ func_verbose "creating $output_objdir/$my_dlsyms"
+
+ $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
+/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
+/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
+
+#ifdef __cplusplus
+extern \"C\" {
+#endif
+
+/* External symbol declarations for the compiler. */\
+"
+
+ if test "$dlself" = yes; then
+ func_verbose "generating symbol list for \`$output'"
+
+ $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
+
+ # Add our own program objects to the symbol list.
+ progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ for progfile in $progfiles; do
+ func_verbose "extracting global C symbols from \`$progfile'"
+ $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"
+ done
+
+ if test -n "$exclude_expsyms"; then
+ $opt_dry_run || {
+ eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ }
+ fi
+
+ if test -n "$export_symbols_regex"; then
+ $opt_dry_run || {
+ eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ }
+ fi
+
+ # Prepare the list of exported symbols
+ if test -z "$export_symbols"; then
+ export_symbols="$output_objdir/$outputname.exp"
+ $opt_dry_run || {
+ $RM $export_symbols
+ eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+ eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
+ ;;
+ esac
+ }
+ else
+ $opt_dry_run || {
+ eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
+ eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
+ eval '$MV "$nlist"T "$nlist"'
+ case $host in
+ *cygwin | *mingw* | *cegcc* )
+ eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
+ eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
+ ;;
+ esac
+ }
+ fi
+ fi
+
+ for dlprefile in $dlprefiles; do
+ func_verbose "extracting global C symbols from \`$dlprefile'"
+ func_basename "$dlprefile"
+ name="$func_basename_result"
+ $opt_dry_run || {
+ eval '$ECHO ": $name " >> "$nlist"'
+ eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"
+ }
+ done
+
+ $opt_dry_run || {
+ # Make sure we have at least an empty file.
+ test -f "$nlist" || : > "$nlist"
+
+ if test -n "$exclude_expsyms"; then
+ $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
+ $MV "$nlist"T "$nlist"
+ fi
+
+ # Try sorting and uniquifying the output.
+ if $GREP -v "^: " < "$nlist" |
+ if sort -k 3 </dev/null >/dev/null 2>&1; then
+ sort -k 3
+ else
+ sort +2
+ fi |
+ uniq > "$nlist"S; then
+ :
+ else
+ $GREP -v "^: " < "$nlist" > "$nlist"S
+ fi
+
+ if test -f "$nlist"S; then
+ eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
+ else
+ $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"
+ fi
+
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+
+/* The mapping between symbol names and symbols. */
+typedef struct {
+ const char *name;
+ void *address;
+} lt_dlsymlist;
+"
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+/* DATA imports from DLLs on WIN32 con't be const, because
+ runtime relocations are performed -- see ld's documentation
+ on pseudo-relocs. */"
+ lt_dlsym_const= ;;
+ *osf5*)
+ echo >> "$output_objdir/$my_dlsyms" "\
+/* This system does not cope well with relocations in const data */"
+ lt_dlsym_const= ;;
+ *)
+ lt_dlsym_const=const ;;
+ esac
+
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+extern $lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[];
+$lt_dlsym_const lt_dlsymlist
+lt_${my_prefix}_LTX_preloaded_symbols[] =
+{\
+ { \"$my_originator\", (void *) 0 },"
+
+ case $need_lib_prefix in
+ no)
+ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
+ ;;
+ *)
+ eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
+ ;;
+ esac
+ $ECHO >> "$output_objdir/$my_dlsyms" "\
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt_${my_prefix}_LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif\
+"
+ } # !$opt_dry_run
+
+ pic_flag_for_symtable=
+ case "$compile_command " in
+ *" -static "*) ;;
+ *)
+ case $host in
+ # compiling the symbol table file with pic_flag works around
+ # a FreeBSD bug that causes programs to crash when -lm is
+ # linked before any other PIC object. But we must not use
+ # pic_flag when linking with -static. The problem exists in
+ # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
+ pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
+ *-*-hpux*)
+ pic_flag_for_symtable=" $pic_flag" ;;
+ *)
+ if test "X$my_pic_p" != Xno; then
+ pic_flag_for_symtable=" $pic_flag"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ symtab_cflags=
+ for arg in $LTCFLAGS; do
+ case $arg in
+ -pie | -fpie | -fPIE) ;;
+ *) symtab_cflags="$symtab_cflags $arg" ;;
+ esac
+ done
+
+ # Now compile the dynamic symbol file.
+ func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
+
+ # Clean up the generated files.
+ func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
+
+ # Transform the symbol file into the correct name.
+ symfileobj="$output_objdir/${my_outputname}S.$objext"
+ case $host in
+ *cygwin* | *mingw* | *cegcc* )
+ if test -f "$output_objdir/$my_outputname.def"; then
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
+ else
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ fi
+ ;;
+ *)
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
+ ;;
+ esac
+ ;;
+ *)
+ func_fatal_error "unknown suffix for \`$my_dlsyms'"
+ ;;
+ esac
+ else
+ # We keep going just in case the user didn't refer to
+ # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
+ # really was required.
+
+ # Nullify the symbol file.
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
+ finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+ fi
+}
+
+# func_win32_libid arg
+# return the library type of file 'arg'
+#
+# Need a lot of goo to handle *both* DLLs and import libs
+# Has to be a shell function in order to 'eat' the argument
+# that is supplied when $file_magic_command is called.
+func_win32_libid ()
+{
+ $opt_debug
+ win32_libid_type="unknown"
+ win32_fileres=`file -L $1 2>/dev/null`
+ case $win32_fileres in
+ *ar\ archive\ import\ library*) # definitely import
+ win32_libid_type="x86 archive import"
+ ;;
+ *ar\ archive*) # could be an import, or static
+ if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
+ $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
+ win32_nmres=`eval $NM -f posix -A $1 |
+ $SED -n -e '
+ 1,100{
+ / I /{
+ s,.*,import,
+ p
+ q
+ }
+ }'`
+ case $win32_nmres in
+ import*) win32_libid_type="x86 archive import";;
+ *) win32_libid_type="x86 archive static";;
+ esac
+ fi
+ ;;
+ *DLL*)
+ win32_libid_type="x86 DLL"
+ ;;
+ *executable*) # but shell scripts are "executable" too...
+ case $win32_fileres in
+ *MS\ Windows\ PE\ Intel*)
+ win32_libid_type="x86 DLL"
+ ;;
+ esac
+ ;;
+ esac
+ $ECHO "$win32_libid_type"
+}
+
+
+
+# func_extract_an_archive dir oldlib
+func_extract_an_archive ()
+{
+ $opt_debug
+ f_ex_an_ar_dir="$1"; shift
+ f_ex_an_ar_oldlib="$1"
+ func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?'
+ if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
+ :
+ else
+ func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
+ fi
+}
+
+
+# func_extract_archives gentop oldlib ...
+func_extract_archives ()
+{
+ $opt_debug
+ my_gentop="$1"; shift
+ my_oldlibs=${1+"$@"}
+ my_oldobjs=""
+ my_xlib=""
+ my_xabs=""
+ my_xdir=""
+
+ for my_xlib in $my_oldlibs; do
+ # Extract the objects.
+ case $my_xlib in
+ [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
+ *) my_xabs=`pwd`"/$my_xlib" ;;
+ esac
+ func_basename "$my_xlib"
+ my_xlib="$func_basename_result"
+ my_xlib_u=$my_xlib
+ while :; do
+ case " $extracted_archives " in
+ *" $my_xlib_u "*)
+ func_arith $extracted_serial + 1
+ extracted_serial=$func_arith_result
+ my_xlib_u=lt$extracted_serial-$my_xlib ;;
+ *) break ;;
+ esac
+ done
+ extracted_archives="$extracted_archives $my_xlib_u"
+ my_xdir="$my_gentop/$my_xlib_u"
+
+ func_mkdir_p "$my_xdir"
+
+ case $host in
+ *-darwin*)
+ func_verbose "Extracting $my_xabs"
+ # Do not bother doing anything if just a dry run
+ $opt_dry_run || {
+ darwin_orig_dir=`pwd`
+ cd $my_xdir || exit $?
+ darwin_archive=$my_xabs
+ darwin_curdir=`pwd`
+ darwin_base_archive=`basename "$darwin_archive"`
+ darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
+ if test -n "$darwin_arches"; then
+ darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
+ darwin_arch=
+ func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
+ for darwin_arch in $darwin_arches ; do
+ func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+ $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
+ cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
+ func_extract_an_archive "`pwd`" "${darwin_base_archive}"
+ cd "$darwin_curdir"
+ $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
+ done # $darwin_arches
+ ## Okay now we've a bunch of thin objects, gotta fatten them up :)
+ darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
+ darwin_file=
+ darwin_files=
+ for darwin_file in $darwin_filelist; do
+ darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
+ $LIPO -create -output "$darwin_file" $darwin_files
+ done # $darwin_filelist
+ $RM -rf unfat-$$
+ cd "$darwin_orig_dir"
+ else
+ cd $darwin_orig_dir
+ func_extract_an_archive "$my_xdir" "$my_xabs"
+ fi # $darwin_arches
+ } # !$opt_dry_run
+ ;;
+ *)
+ func_extract_an_archive "$my_xdir" "$my_xabs"
+ ;;
+ esac
+ my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
+ done
+
+ func_extract_archives_result="$my_oldobjs"
+}
+
+
+
+# func_emit_wrapper_part1 [arg=no]
+#
+# Emit the first part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part1 ()
+{
+ func_emit_wrapper_part1_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_part1_arg1=$1
+ fi
+
+ $ECHO "\
+#! $SHELL
+
+# $output - temporary wrapper script for $objdir/$outputname
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# The $output program cannot be directly executed until all the libtool
+# libraries that it depends on are installed.
+#
+# This wrapper script should never be moved out of the build directory.
+# If it is, it will not operate correctly.
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='${SED} -e 1s/^X//'
+sed_quote_subst='$sed_quote_subst'
+
+# Be Bourne compatible
+if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
+fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+relink_command=\"$relink_command\"
+
+# This environment variable determines our operation mode.
+if test \"\$libtool_install_magic\" = \"$magic\"; then
+ # install mode needs the following variables:
+ generated_by_libtool_version='$macro_version'
+ notinst_deplibs='$notinst_deplibs'
+else
+ # When we are sourced in execute mode, \$file and \$ECHO are already set.
+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
+ ECHO=\"$qecho\"
+ file=\"\$0\"
+ # Make sure echo works.
+ if test \"X\$1\" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+ elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then
+ # Yippee, \$ECHO works!
+ :
+ else
+ # Restart under the correct shell, and then maybe \$ECHO will work.
+ exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
+ fi
+ fi\
+"
+ $ECHO "\
+
+ # Find the directory that this script lives in.
+ thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
+ test \"x\$thisdir\" = \"x\$file\" && thisdir=.
+
+ # Follow symbolic links until we get to the real thisdir.
+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
+ while test -n \"\$file\"; do
+ destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
+
+ # If there was a directory component, then change thisdir.
+ if test \"x\$destdir\" != \"x\$file\"; then
+ case \"\$destdir\" in
+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
+ *) thisdir=\"\$thisdir/\$destdir\" ;;
+ esac
+ fi
+
+ file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
+ done
+"
+}
+# end: func_emit_wrapper_part1
+
+# func_emit_wrapper_part2 [arg=no]
+#
+# Emit the second part of a libtool wrapper script on stdout.
+# For more information, see the description associated with
+# func_emit_wrapper(), below.
+func_emit_wrapper_part2 ()
+{
+ func_emit_wrapper_part2_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_part2_arg1=$1
+ fi
+
+ $ECHO "\
+
+ # Usually 'no', except on cygwin/mingw when embedded into
+ # the cwrapper.
+ WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1
+ if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
+ # special case for '.'
+ if test \"\$thisdir\" = \".\"; then
+ thisdir=\`pwd\`
+ fi
+ # remove .libs from thisdir
+ case \"\$thisdir\" in
+ *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;;
+ $objdir ) thisdir=. ;;
+ esac
+ fi
+
+ # Try to get the absolute directory name.
+ absdir=\`cd \"\$thisdir\" && pwd\`
+ test -n \"\$absdir\" && thisdir=\"\$absdir\"
+"
+
+ if test "$fast_install" = yes; then
+ $ECHO "\
+ program=lt-'$outputname'$exeext
+ progdir=\"\$thisdir/$objdir\"
+
+ if test ! -f \"\$progdir/\$program\" ||
+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
+ test \"X\$file\" != \"X\$progdir/\$program\"; }; then
+
+ file=\"\$\$-\$program\"
+
+ if test ! -d \"\$progdir\"; then
+ $MKDIR \"\$progdir\"
+ else
+ $RM \"\$progdir/\$file\"
+ fi"
+
+ $ECHO "\
+
+ # relink executable if necessary
+ if test -n \"\$relink_command\"; then
+ if relink_command_output=\`eval \$relink_command 2>&1\`; then :
+ else
+ $ECHO \"\$relink_command_output\" >&2
+ $RM \"\$progdir/\$file\"
+ exit 1
+ fi
+ fi
+
+ $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
+ { $RM \"\$progdir/\$program\";
+ $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
+ $RM \"\$progdir/\$file\"
+ fi"
+ else
+ $ECHO "\
+ program='$outputname'
+ progdir=\"\$thisdir/$objdir\"
+"
+ fi
+
+ $ECHO "\
+
+ if test -f \"\$progdir/\$program\"; then"
+
+ # Export our shlibpath_var if we have one.
+ if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+ $ECHO "\
+ # Add our own library path to $shlibpath_var
+ $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
+
+ # Some systems cannot cope with colon-terminated $shlibpath_var
+ # The second colon is a workaround for a bug in BeOS R4 sed
+ $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
+
+ export $shlibpath_var
+"
+ fi
+
+ # fixup the dll searchpath if we need to.
+ if test -n "$dllsearchpath"; then
+ $ECHO "\
+ # Add the dll search path components to the executable PATH
+ PATH=$dllsearchpath:\$PATH
+"
+ fi
+
+ $ECHO "\
+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
+ # Run the actual program with our arguments.
+"
+ case $host in
+ # Backslashes separate directories on plain windows
+ *-*-mingw | *-*-os2* | *-cegcc*)
+ $ECHO "\
+ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
+"
+ ;;
+
+ *)
+ $ECHO "\
+ exec \"\$progdir/\$program\" \${1+\"\$@\"}
+"
+ ;;
+ esac
+ $ECHO "\
+ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
+ exit 1
+ fi
+ else
+ # The program doesn't exist.
+ \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
+ \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
+ $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
+ exit 1
+ fi
+fi\
+"
+}
+# end: func_emit_wrapper_part2
+
+
+# func_emit_wrapper [arg=no]
+#
+# Emit a libtool wrapper script on stdout.
+# Don't directly open a file because we may want to
+# incorporate the script contents within a cygwin/mingw
+# wrapper executable. Must ONLY be called from within
+# func_mode_link because it depends on a number of variables
+# set therein.
+#
+# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
+# variable will take. If 'yes', then the emitted script
+# will assume that the directory in which it is stored is
+# the $objdir directory. This is a cygwin/mingw-specific
+# behavior.
+func_emit_wrapper ()
+{
+ func_emit_wrapper_arg1=no
+ if test -n "$1" ; then
+ func_emit_wrapper_arg1=$1
+ fi
+
+ # split this up so that func_emit_cwrapperexe_src
+ # can call each part independently.
+ func_emit_wrapper_part1 "${func_emit_wrapper_arg1}"
+ func_emit_wrapper_part2 "${func_emit_wrapper_arg1}"
+}
+
+
+# func_to_host_path arg
+#
+# Convert paths to host format when used with build tools.
+# Intended for use with "native" mingw (where libtool itself
+# is running under the msys shell), or in the following cross-
+# build environments:
+# $build $host
+# mingw (msys) mingw [e.g. native]
+# cygwin mingw
+# *nix + wine mingw
+# where wine is equipped with the `winepath' executable.
+# In the native mingw case, the (msys) shell automatically
+# converts paths for any non-msys applications it launches,
+# but that facility isn't available from inside the cwrapper.
+# Similar accommodations are necessary for $host mingw and
+# $build cygwin. Calling this function does no harm for other
+# $host/$build combinations not listed above.
+#
+# ARG is the path (on $build) that should be converted to
+# the proper representation for $host. The result is stored
+# in $func_to_host_path_result.
+func_to_host_path ()
+{
+ func_to_host_path_result="$1"
+ if test -n "$1" ; then
+ case $host in
+ *mingw* )
+ lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+ case $build in
+ *mingw* ) # actually, msys
+ # awkward: cmd appends spaces to result
+ lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+ func_to_host_path_tmp1=`( cmd //c echo "$1" |\
+ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ *cygwin* )
+ func_to_host_path_tmp1=`cygpath -w "$1"`
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ * )
+ # Unfortunately, winepath does not exit with a non-zero
+ # error code, so we are forced to check the contents of
+ # stdout. On the other hand, if the command is not
+ # found, the shell will set an exit code of 127 and print
+ # *an error message* to stdout. So we must check for both
+ # error code of zero AND non-empty stdout, which explains
+ # the odd construction:
+ func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null`
+ if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then
+ func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ else
+ # Allow warning below.
+ func_to_host_path_result=""
+ fi
+ ;;
+ esac
+ if test -z "$func_to_host_path_result" ; then
+ func_error "Could not determine host path corresponding to"
+ func_error " '$1'"
+ func_error "Continuing, but uninstalled executables may not work."
+ # Fallback:
+ func_to_host_path_result="$1"
+ fi
+ ;;
+ esac
+ fi
+}
+# end: func_to_host_path
+
+# func_to_host_pathlist arg
+#
+# Convert pathlists to host format when used with build tools.
+# See func_to_host_path(), above. This function supports the
+# following $build/$host combinations (but does no harm for
+# combinations not listed here):
+# $build $host
+# mingw (msys) mingw [e.g. native]
+# cygwin mingw
+# *nix + wine mingw
+#
+# Path separators are also converted from $build format to
+# $host format. If ARG begins or ends with a path separator
+# character, it is preserved (but converted to $host format)
+# on output.
+#
+# ARG is a pathlist (on $build) that should be converted to
+# the proper representation on $host. The result is stored
+# in $func_to_host_pathlist_result.
+func_to_host_pathlist ()
+{
+ func_to_host_pathlist_result="$1"
+ if test -n "$1" ; then
+ case $host in
+ *mingw* )
+ lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+ # Remove leading and trailing path separator characters from
+ # ARG. msys behavior is inconsistent here, cygpath turns them
+ # into '.;' and ';.', and winepath ignores them completely.
+ func_to_host_pathlist_tmp2="$1"
+ # Once set for this call, this variable should not be
+ # reassigned. It is used in tha fallback case.
+ func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e 's|^:*||' -e 's|:*$||'`
+ case $build in
+ *mingw* ) # Actually, msys.
+ # Awkward: cmd appends spaces to result.
+ lt_sed_strip_trailing_spaces="s/[ ]*\$//"
+ func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\
+ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ *cygwin* )
+ func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"`
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
+ $SED -e "$lt_sed_naive_backslashify"`
+ ;;
+ * )
+ # unfortunately, winepath doesn't convert pathlists
+ func_to_host_pathlist_result=""
+ func_to_host_pathlist_oldIFS=$IFS
+ IFS=:
+ for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do
+ IFS=$func_to_host_pathlist_oldIFS
+ if test -n "$func_to_host_pathlist_f" ; then
+ func_to_host_path "$func_to_host_pathlist_f"
+ if test -n "$func_to_host_path_result" ; then
+ if test -z "$func_to_host_pathlist_result" ; then
+ func_to_host_pathlist_result="$func_to_host_path_result"
+ else
+ func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result"
+ fi
+ fi
+ fi
+ IFS=:
+ done
+ IFS=$func_to_host_pathlist_oldIFS
+ ;;
+ esac
+ if test -z "$func_to_host_pathlist_result" ; then
+ func_error "Could not determine the host path(s) corresponding to"
+ func_error " '$1'"
+ func_error "Continuing, but uninstalled executables may not work."
+ # Fallback. This may break if $1 contains DOS-style drive
+ # specifications. The fix is not to complicate the expression
+ # below, but for the user to provide a working wine installation
+ # with winepath so that path translation in the cross-to-mingw
+ # case works properly.
+ lt_replace_pathsep_nix_to_dos="s|:|;|g"
+ func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\
+ $SED -e "$lt_replace_pathsep_nix_to_dos"`
+ fi
+ # Now, add the leading and trailing path separators back
+ case "$1" in
+ :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result"
+ ;;
+ esac
+ case "$1" in
+ *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+}
+# end: func_to_host_pathlist
+
+# func_emit_cwrapperexe_src
+# emit the source code for a wrapper executable on stdout
+# Must ONLY be called from within func_mode_link because
+# it depends on a number of variable set therein.
+func_emit_cwrapperexe_src ()
+{
+ cat <<EOF
+
+/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
+ Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+
+ The $output program cannot be directly executed until all the libtool
+ libraries that it depends on are installed.
+
+ This wrapper executable should never be moved out of the build directory.
+ If it is, it will not operate correctly.
+
+ Currently, it simply execs the wrapper *script* "$SHELL $output",
+ but could eventually absorb all of the scripts functionality and
+ exec $objdir/$outputname directly.
+*/
+EOF
+ cat <<"EOF"
+#include <stdio.h>
+#include <stdlib.h>
+#ifdef _MSC_VER
+# include <direct.h>
+# include <process.h>
+# include <io.h>
+# define setmode _setmode
+#else
+# include <unistd.h>
+# include <stdint.h>
+# ifdef __CYGWIN__
+# include <io.h>
+# define HAVE_SETENV
+# ifdef __STRICT_ANSI__
+char *realpath (const char *, char *);
+int putenv (char *);
+int setenv (const char *, const char *, int);
+# endif
+# endif
+#endif
+#include <malloc.h>
+#include <stdarg.h>
+#include <assert.h>
+#include <string.h>
+#include <ctype.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+
+#if defined(PATH_MAX)
+# define LT_PATHMAX PATH_MAX
+#elif defined(MAXPATHLEN)
+# define LT_PATHMAX MAXPATHLEN
+#else
+# define LT_PATHMAX 1024
+#endif
+
+#ifndef S_IXOTH
+# define S_IXOTH 0
+#endif
+#ifndef S_IXGRP
+# define S_IXGRP 0
+#endif
+
+#ifdef _MSC_VER
+# define S_IXUSR _S_IEXEC
+# define stat _stat
+# ifndef _INTPTR_T_DEFINED
+# define intptr_t int
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR
+# define DIR_SEPARATOR '/'
+# define PATH_SEPARATOR ':'
+#endif
+
+#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
+ defined (__OS2__)
+# define HAVE_DOS_BASED_FILE_SYSTEM
+# define FOPEN_WB "wb"
+# ifndef DIR_SEPARATOR_2
+# define DIR_SEPARATOR_2 '\\'
+# endif
+# ifndef PATH_SEPARATOR_2
+# define PATH_SEPARATOR_2 ';'
+# endif
+#endif
+
+#ifndef DIR_SEPARATOR_2
+# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
+#else /* DIR_SEPARATOR_2 */
+# define IS_DIR_SEPARATOR(ch) \
+ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
+#endif /* DIR_SEPARATOR_2 */
+
+#ifndef PATH_SEPARATOR_2
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
+#else /* PATH_SEPARATOR_2 */
+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
+#endif /* PATH_SEPARATOR_2 */
+
+#ifdef __CYGWIN__
+# define FOPEN_WB "wb"
+#endif
+
+#ifndef FOPEN_WB
+# define FOPEN_WB "w"
+#endif
+#ifndef _O_BINARY
+# define _O_BINARY 0
+#endif
+
+#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
+#define XFREE(stale) do { \
+ if (stale) { free ((void *) stale); stale = 0; } \
+} while (0)
+
+#undef LTWRAPPER_DEBUGPRINTF
+#if defined DEBUGWRAPPER
+# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args
+static void
+ltwrapper_debugprintf (const char *fmt, ...)
+{
+ va_list args;
+ va_start (args, fmt);
+ (void) vfprintf (stderr, fmt, args);
+ va_end (args);
+}
+#else
+# define LTWRAPPER_DEBUGPRINTF(args)
+#endif
+
+const char *program_name = NULL;
+
+void *xmalloc (size_t num);
+char *xstrdup (const char *string);
+const char *base_name (const char *name);
+char *find_executable (const char *wrapper);
+char *chase_symlinks (const char *pathspec);
+int make_executable (const char *path);
+int check_executable (const char *path);
+char *strendzap (char *str, const char *pat);
+void lt_fatal (const char *message, ...);
+void lt_setenv (const char *name, const char *value);
+char *lt_extend_str (const char *orig_value, const char *add, int to_end);
+void lt_opt_process_env_set (const char *arg);
+void lt_opt_process_env_prepend (const char *arg);
+void lt_opt_process_env_append (const char *arg);
+int lt_split_name_value (const char *arg, char** name, char** value);
+void lt_update_exe_path (const char *name, const char *value);
+void lt_update_lib_path (const char *name, const char *value);
+
+static const char *script_text_part1 =
+EOF
+
+ func_emit_wrapper_part1 yes |
+ $SED -e 's/\([\\"]\)/\\\1/g' \
+ -e 's/^/ "/' -e 's/$/\\n"/'
+ echo ";"
+ cat <<EOF
+
+static const char *script_text_part2 =
+EOF
+ func_emit_wrapper_part2 yes |
+ $SED -e 's/\([\\"]\)/\\\1/g' \
+ -e 's/^/ "/' -e 's/$/\\n"/'
+ echo ";"
+
+ cat <<EOF
+const char * MAGIC_EXE = "$magic_exe";
+const char * LIB_PATH_VARNAME = "$shlibpath_var";
+EOF
+
+ if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+ func_to_host_pathlist "$temp_rpath"
+ cat <<EOF
+const char * LIB_PATH_VALUE = "$func_to_host_pathlist_result";
+EOF
+ else
+ cat <<"EOF"
+const char * LIB_PATH_VALUE = "";
+EOF
+ fi
+
+ if test -n "$dllsearchpath"; then
+ func_to_host_pathlist "$dllsearchpath:"
+ cat <<EOF
+const char * EXE_PATH_VARNAME = "PATH";
+const char * EXE_PATH_VALUE = "$func_to_host_pathlist_result";
+EOF
+ else
+ cat <<"EOF"
+const char * EXE_PATH_VARNAME = "";
+const char * EXE_PATH_VALUE = "";
+EOF
+ fi
+
+ if test "$fast_install" = yes; then
+ cat <<EOF
+const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
+EOF
+ else
+ cat <<EOF
+const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
+EOF
+ fi
+
+
+ cat <<"EOF"
+
+#define LTWRAPPER_OPTION_PREFIX "--lt-"
+#define LTWRAPPER_OPTION_PREFIX_LENGTH 5
+
+static const size_t opt_prefix_len = LTWRAPPER_OPTION_PREFIX_LENGTH;
+static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
+
+static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";
+
+static const size_t env_set_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;
+static const char *env_set_opt = LTWRAPPER_OPTION_PREFIX "env-set";
+ /* argument is putenv-style "foo=bar", value of foo is set to bar */
+
+static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;
+static const char *env_prepend_opt = LTWRAPPER_OPTION_PREFIX "env-prepend";
+ /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */
+
+static const size_t env_append_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;
+static const char *env_append_opt = LTWRAPPER_OPTION_PREFIX "env-append";
+ /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */
+
+int
+main (int argc, char *argv[])
+{
+ char **newargz;
+ int newargc;
+ char *tmp_pathspec;
+ char *actual_cwrapper_path;
+ char *actual_cwrapper_name;
+ char *target_name;
+ char *lt_argv_zero;
+ intptr_t rval = 127;
+
+ int i;
+
+ program_name = (char *) xstrdup (base_name (argv[0]));
+ LTWRAPPER_DEBUGPRINTF (("(main) argv[0] : %s\n", argv[0]));
+ LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name));
+
+ /* very simple arg parsing; don't want to rely on getopt */
+ for (i = 1; i < argc; i++)
+ {
+ if (strcmp (argv[i], dumpscript_opt) == 0)
+ {
+EOF
+ case "$host" in
+ *mingw* | *cygwin* )
+ # make stdout use "unix" line endings
+ echo " setmode(1,_O_BINARY);"
+ ;;
+ esac
+
+ cat <<"EOF"
+ printf ("%s", script_text_part1);
+ printf ("%s", script_text_part2);
+ return 0;
+ }
+ }
+
+ newargz = XMALLOC (char *, argc + 1);
+ tmp_pathspec = find_executable (argv[0]);
+ if (tmp_pathspec == NULL)
+ lt_fatal ("Couldn't find %s", argv[0]);
+ LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n",
+ tmp_pathspec));
+
+ actual_cwrapper_path = chase_symlinks (tmp_pathspec);
+ LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n",
+ actual_cwrapper_path));
+ XFREE (tmp_pathspec);
+
+ actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));
+ strendzap (actual_cwrapper_path, actual_cwrapper_name);
+
+ /* wrapper name transforms */
+ strendzap (actual_cwrapper_name, ".exe");
+ tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
+ XFREE (actual_cwrapper_name);
+ actual_cwrapper_name = tmp_pathspec;
+ tmp_pathspec = 0;
+
+ /* target_name transforms -- use actual target program name; might have lt- prefix */
+ target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
+ strendzap (target_name, ".exe");
+ tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
+ XFREE (target_name);
+ target_name = tmp_pathspec;
+ tmp_pathspec = 0;
+
+ LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n",
+ target_name));
+EOF
+
+ cat <<EOF
+ newargz[0] =
+ XMALLOC (char, (strlen (actual_cwrapper_path) +
+ strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
+ strcpy (newargz[0], actual_cwrapper_path);
+ strcat (newargz[0], "$objdir");
+ strcat (newargz[0], "/");
+EOF
+
+ cat <<"EOF"
+ /* stop here, and copy so we don't have to do this twice */
+ tmp_pathspec = xstrdup (newargz[0]);
+
+ /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
+ strcat (newargz[0], actual_cwrapper_name);
+
+ /* DO want the lt- prefix here if it exists, so use target_name */
+ lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
+ XFREE (tmp_pathspec);
+ tmp_pathspec = NULL;
+EOF
+
+ case $host_os in
+ mingw*)
+ cat <<"EOF"
+ {
+ char* p;
+ while ((p = strchr (newargz[0], '\\')) != NULL)
+ {
+ *p = '/';
+ }
+ while ((p = strchr (lt_argv_zero, '\\')) != NULL)
+ {
+ *p = '/';
+ }
+ }
+EOF
+ ;;
+ esac
+
+ cat <<"EOF"
+ XFREE (target_name);
+ XFREE (actual_cwrapper_path);
+ XFREE (actual_cwrapper_name);
+
+ lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
+ lt_setenv ("DUALCASE", "1"); /* for MSK sh */
+ lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
+ lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
+
+ newargc=0;
+ for (i = 1; i < argc; i++)
+ {
+ if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0)
+ {
+ if (argv[i][env_set_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_set_opt_len + 1;
+ lt_opt_process_env_set (p);
+ }
+ else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_set (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_set_opt);
+ continue;
+ }
+ if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0)
+ {
+ if (argv[i][env_prepend_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_prepend_opt_len + 1;
+ lt_opt_process_env_prepend (p);
+ }
+ else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_prepend (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_prepend_opt);
+ continue;
+ }
+ if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0)
+ {
+ if (argv[i][env_append_opt_len] == '=')
+ {
+ const char *p = argv[i] + env_append_opt_len + 1;
+ lt_opt_process_env_append (p);
+ }
+ else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc)
+ {
+ lt_opt_process_env_append (argv[++i]); /* don't copy */
+ }
+ else
+ lt_fatal ("%s missing required argument", env_append_opt);
+ continue;
+ }
+ if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0)
+ {
+ /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
+ namespace, but it is not one of the ones we know about and
+ have already dealt with, above (inluding dump-script), then
+ report an error. Otherwise, targets might begin to believe
+ they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
+ namespace. The first time any user complains about this, we'll
+ need to make LTWRAPPER_OPTION_PREFIX a configure-time option
+ or a configure.ac-settable value.
+ */
+ lt_fatal ("Unrecognized option in %s namespace: '%s'",
+ ltwrapper_option_prefix, argv[i]);
+ }
+ /* otherwise ... */
+ newargz[++newargc] = xstrdup (argv[i]);
+ }
+ newargz[++newargc] = NULL;
+
+ LTWRAPPER_DEBUGPRINTF (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>")));
+ for (i = 0; i < newargc; i++)
+ {
+ LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>")));
+ }
+
+EOF
+
+ case $host_os in
+ mingw*)
+ cat <<"EOF"
+ /* execv doesn't actually work on mingw as expected on unix */
+ rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
+ if (rval == -1)
+ {
+ /* failed to start process */
+ LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno));
+ return 127;
+ }
+ return rval;
+EOF
+ ;;
+ *)
+ cat <<"EOF"
+ execv (lt_argv_zero, newargz);
+ return rval; /* =127, but avoids unused variable warning */
+EOF
+ ;;
+ esac
+
+ cat <<"EOF"
+}
+
+void *
+xmalloc (size_t num)
+{
+ void *p = (void *) malloc (num);
+ if (!p)
+ lt_fatal ("Memory exhausted");
+
+ return p;
+}
+
+char *
+xstrdup (const char *string)
+{
+ return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
+ string) : NULL;
+}
+
+const char *
+base_name (const char *name)
+{
+ const char *base;
+
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ /* Skip over the disk name in MSDOS pathnames. */
+ if (isalpha ((unsigned char) name[0]) && name[1] == ':')
+ name += 2;
+#endif
+
+ for (base = name; *name; name++)
+ if (IS_DIR_SEPARATOR (*name))
+ base = name + 1;
+ return base;
+}
+
+int
+check_executable (const char *path)
+{
+ struct stat st;
+
+ LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\n",
+ path ? (*path ? path : "EMPTY!") : "NULL!"));
+ if ((!path) || (!*path))
+ return 0;
+
+ if ((stat (path, &st) >= 0)
+ && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
+ return 1;
+ else
+ return 0;
+}
+
+int
+make_executable (const char *path)
+{
+ int rval = 0;
+ struct stat st;
+
+ LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\n",
+ path ? (*path ? path : "EMPTY!") : "NULL!"));
+ if ((!path) || (!*path))
+ return 0;
+
+ if (stat (path, &st) >= 0)
+ {
+ rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
+ }
+ return rval;
+}
+
+/* Searches for the full path of the wrapper. Returns
+ newly allocated full path name if found, NULL otherwise
+ Does not chase symlinks, even on platforms that support them.
+*/
+char *
+find_executable (const char *wrapper)
+{
+ int has_slash = 0;
+ const char *p;
+ const char *p_next;
+ /* static buffer for getcwd */
+ char tmp[LT_PATHMAX + 1];
+ int tmp_len;
+ char *concat_name;
+
+ LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\n",
+ wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));
+
+ if ((wrapper == NULL) || (*wrapper == '\0'))
+ return NULL;
+
+ /* Absolute path? */
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
+ {
+ concat_name = xstrdup (wrapper);
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+ else
+ {
+#endif
+ if (IS_DIR_SEPARATOR (wrapper[0]))
+ {
+ concat_name = xstrdup (wrapper);
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+ }
+#endif
+
+ for (p = wrapper; *p; p++)
+ if (*p == '/')
+ {
+ has_slash = 1;
+ break;
+ }
+ if (!has_slash)
+ {
+ /* no slashes; search PATH */
+ const char *path = getenv ("PATH");
+ if (path != NULL)
+ {
+ for (p = path; *p; p = p_next)
+ {
+ const char *q;
+ size_t p_len;
+ for (q = p; *q; q++)
+ if (IS_PATH_SEPARATOR (*q))
+ break;
+ p_len = q - p;
+ p_next = (*q == '\0' ? q : q + 1);
+ if (p_len == 0)
+ {
+ /* empty path: current directory */
+ if (getcwd (tmp, LT_PATHMAX) == NULL)
+ lt_fatal ("getcwd failed");
+ tmp_len = strlen (tmp);
+ concat_name =
+ XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, tmp, tmp_len);
+ concat_name[tmp_len] = '/';
+ strcpy (concat_name + tmp_len + 1, wrapper);
+ }
+ else
+ {
+ concat_name =
+ XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, p, p_len);
+ concat_name[p_len] = '/';
+ strcpy (concat_name + p_len + 1, wrapper);
+ }
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ }
+ }
+ /* not found in PATH; assume curdir */
+ }
+ /* Relative path | not found in path: prepend cwd */
+ if (getcwd (tmp, LT_PATHMAX) == NULL)
+ lt_fatal ("getcwd failed");
+ tmp_len = strlen (tmp);
+ concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
+ memcpy (concat_name, tmp, tmp_len);
+ concat_name[tmp_len] = '/';
+ strcpy (concat_name + tmp_len + 1, wrapper);
+
+ if (check_executable (concat_name))
+ return concat_name;
+ XFREE (concat_name);
+ return NULL;
+}
+
+char *
+chase_symlinks (const char *pathspec)
+{
+#ifndef S_ISLNK
+ return xstrdup (pathspec);
+#else
+ char buf[LT_PATHMAX];
+ struct stat s;
+ char *tmp_pathspec = xstrdup (pathspec);
+ char *p;
+ int has_symlinks = 0;
+ while (strlen (tmp_pathspec) && !has_symlinks)
+ {
+ LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n",
+ tmp_pathspec));
+ if (lstat (tmp_pathspec, &s) == 0)
+ {
+ if (S_ISLNK (s.st_mode) != 0)
+ {
+ has_symlinks = 1;
+ break;
+ }
+
+ /* search backwards for last DIR_SEPARATOR */
+ p = tmp_pathspec + strlen (tmp_pathspec) - 1;
+ while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+ p--;
+ if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
+ {
+ /* no more DIR_SEPARATORS left */
+ break;
+ }
+ *p = '\0';
+ }
+ else
+ {
+ char *errstr = strerror (errno);
+ lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);
+ }
+ }
+ XFREE (tmp_pathspec);
+
+ if (!has_symlinks)
+ {
+ return xstrdup (pathspec);
+ }
+
+ tmp_pathspec = realpath (pathspec, buf);
+ if (tmp_pathspec == 0)
+ {
+ lt_fatal ("Could not follow symlinks for %s", pathspec);
+ }
+ return xstrdup (tmp_pathspec);
+#endif
+}
+
+char *
+strendzap (char *str, const char *pat)
+{
+ size_t len, patlen;
+
+ assert (str != NULL);
+ assert (pat != NULL);
+
+ len = strlen (str);
+ patlen = strlen (pat);
+
+ if (patlen <= len)
+ {
+ str += len - patlen;
+ if (strcmp (str, pat) == 0)
+ *str = '\0';
+ }
+ return str;
+}
+
+static void
+lt_error_core (int exit_status, const char *mode,
+ const char *message, va_list ap)
+{
+ fprintf (stderr, "%s: %s: ", program_name, mode);
+ vfprintf (stderr, message, ap);
+ fprintf (stderr, ".\n");
+
+ if (exit_status >= 0)
+ exit (exit_status);
+}
+
+void
+lt_fatal (const char *message, ...)
+{
+ va_list ap;
+ va_start (ap, message);
+ lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
+ va_end (ap);
+}
+
+void
+lt_setenv (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+ {
+#ifdef HAVE_SETENV
+ /* always make a copy, for consistency with !HAVE_SETENV */
+ char *str = xstrdup (value);
+ setenv (name, str, 1);
+#else
+ int len = strlen (name) + 1 + strlen (value) + 1;
+ char *str = XMALLOC (char, len);
+ sprintf (str, "%s=%s", name, value);
+ if (putenv (str) != EXIT_SUCCESS)
+ {
+ XFREE (str);
+ }
+#endif
+ }
+}
+
+char *
+lt_extend_str (const char *orig_value, const char *add, int to_end)
+{
+ char *new_value;
+ if (orig_value && *orig_value)
+ {
+ int orig_value_len = strlen (orig_value);
+ int add_len = strlen (add);
+ new_value = XMALLOC (char, add_len + orig_value_len + 1);
+ if (to_end)
+ {
+ strcpy (new_value, orig_value);
+ strcpy (new_value + orig_value_len, add);
+ }
+ else
+ {
+ strcpy (new_value, add);
+ strcpy (new_value + add_len, orig_value);
+ }
+ }
+ else
+ {
+ new_value = xstrdup (add);
+ }
+ return new_value;
+}
+
+int
+lt_split_name_value (const char *arg, char** name, char** value)
+{
+ const char *p;
+ int len;
+ if (!arg || !*arg)
+ return 1;
+
+ p = strchr (arg, (int)'=');
+
+ if (!p)
+ return 1;
+
+ *value = xstrdup (++p);
+
+ len = strlen (arg) - strlen (*value);
+ *name = XMALLOC (char, len);
+ strncpy (*name, arg, len-1);
+ (*name)[len - 1] = '\0';
+
+ return 0;
+}
+
+void
+lt_opt_process_env_set (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg);
+ }
+
+ lt_setenv (name, value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_opt_process_env_prepend (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+ char *new_value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg);
+ }
+
+ new_value = lt_extend_str (getenv (name), value, 0);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_opt_process_env_append (const char *arg)
+{
+ char *name = NULL;
+ char *value = NULL;
+ char *new_value = NULL;
+
+ if (lt_split_name_value (arg, &name, &value) != 0)
+ {
+ XFREE (name);
+ XFREE (value);
+ lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg);
+ }
+
+ new_value = lt_extend_str (getenv (name), value, 1);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ XFREE (name);
+ XFREE (value);
+}
+
+void
+lt_update_exe_path (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+
+ if (name && *name && value && *value)
+ {
+ char *new_value = lt_extend_str (getenv (name), value, 0);
+ /* some systems can't cope with a ':'-terminated path #' */
+ int len = strlen (new_value);
+ while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
+ {
+ new_value[len-1] = '\0';
+ }
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ }
+}
+
+void
+lt_update_lib_path (const char *name, const char *value)
+{
+ LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
+ (name ? name : "<NULL>"),
+ (value ? value : "<NULL>")));
+
+ if (name && *name && value && *value)
+ {
+ char *new_value = lt_extend_str (getenv (name), value, 0);
+ lt_setenv (name, new_value);
+ XFREE (new_value);
+ }
+}
+
+
+EOF
+}
+# end: func_emit_cwrapperexe_src
+
+# func_mode_link arg...
+func_mode_link ()
+{
+ $opt_debug
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ # It is impossible to link a dll without this setting, and
+ # we shouldn't force the makefile maintainer to figure out
+ # which system we are compiling for in order to pass an extra
+ # flag for every libtool invocation.
+ # allow_undefined=no
+
+ # FIXME: Unfortunately, there are problems with the above when trying
+ # to make a dll which has undefined symbols, in which case not
+ # even a static library is built. For now, we need to specify
+ # -no-undefined on the libtool link line when we can be certain
+ # that all symbols are satisfied, otherwise we get a static library.
+ allow_undefined=yes
+ ;;
+ *)
+ allow_undefined=yes
+ ;;
+ esac
+ libtool_args=$nonopt
+ base_compile="$nonopt $@"
+ compile_command=$nonopt
+ finalize_command=$nonopt
+
+ compile_rpath=
+ finalize_rpath=
+ compile_shlibpath=
+ finalize_shlibpath=
+ convenience=
+ old_convenience=
+ deplibs=
+ old_deplibs=
+ compiler_flags=
+ linker_flags=
+ dllsearchpath=
+ lib_search_path=`pwd`
+ inst_prefix_dir=
+ new_inherited_linker_flags=
+
+ avoid_version=no
+ dlfiles=
+ dlprefiles=
+ dlself=no
+ export_dynamic=no
+ export_symbols=
+ export_symbols_regex=
+ generated=
+ libobjs=
+ ltlibs=
+ module=no
+ no_install=no
+ objs=
+ non_pic_objects=
+ precious_files_regex=
+ prefer_static_libs=no
+ preload=no
+ prev=
+ prevarg=
+ release=
+ rpath=
+ xrpath=
+ perm_rpath=
+ temp_rpath=
+ thread_safe=no
+ vinfo=
+ vinfo_number=no
+ weak_libs=
+ single_module="${wl}-single_module"
+ func_infer_tag $base_compile
+
+ # We need to know -static, to get the right output filenames.
+ for arg
+ do
+ case $arg in
+ -shared)
+ test "$build_libtool_libs" != yes && \
+ func_fatal_configuration "can not build a shared library"
+ build_old_libs=no
+ break
+ ;;
+ -all-static | -static | -static-libtool-libs)
+ case $arg in
+ -all-static)
+ if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
+ func_warning "complete static linking is impossible in this configuration"
+ fi
+ if test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ -static)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=built
+ ;;
+ -static-libtool-libs)
+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
+ dlopen_self=$dlopen_self_static
+ fi
+ prefer_static_libs=yes
+ ;;
+ esac
+ build_libtool_libs=no
+ build_old_libs=yes
+ break
+ ;;
+ esac
+ done
+
+ # See if our shared archives depend on static archives.
+ test -n "$old_archive_from_new_cmds" && build_old_libs=yes
+
+ # Go through the arguments, transforming them on the way.
+ while test "$#" -gt 0; do
+ arg="$1"
+ shift
+ func_quote_for_eval "$arg"
+ qarg=$func_quote_for_eval_unquoted_result
+ func_append libtool_args " $func_quote_for_eval_result"
+
+ # If the previous option needs an argument, assign it.
+ if test -n "$prev"; then
+ case $prev in
+ output)
+ func_append compile_command " @OUTPUT@"
+ func_append finalize_command " @OUTPUT@"
+ ;;
+ esac
+
+ case $prev in
+ dlfiles|dlprefiles)
+ if test "$preload" = no; then
+ # Add the symbol object into the linking commands.
+ func_append compile_command " @SYMFILE@"
+ func_append finalize_command " @SYMFILE@"
+ preload=yes
+ fi
+ case $arg in
+ *.la | *.lo) ;; # We handle these cases below.
+ force)
+ if test "$dlself" = no; then
+ dlself=needless
+ export_dynamic=yes
+ fi
+ prev=
+ continue
+ ;;
+ self)
+ if test "$prev" = dlprefiles; then
+ dlself=yes
+ elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
+ dlself=yes
+ else
+ dlself=needless
+ export_dynamic=yes
+ fi
+ prev=
+ continue
+ ;;
+ *)
+ if test "$prev" = dlfiles; then
+ dlfiles="$dlfiles $arg"
+ else
+ dlprefiles="$dlprefiles $arg"
+ fi
+ prev=
+ continue
+ ;;
+ esac
+ ;;
+ expsyms)
+ export_symbols="$arg"
+ test -f "$arg" \
+ || func_fatal_error "symbol file \`$arg' does not exist"
+ prev=
+ continue
+ ;;
+ expsyms_regex)
+ export_symbols_regex="$arg"
+ prev=
+ continue
+ ;;
+ framework)
+ case $host in
+ *-*-darwin*)
+ case "$deplibs " in
+ *" $qarg.ltframework "*) ;;
+ *) deplibs="$deplibs $qarg.ltframework" # this is fixed later
+ ;;
+ esac
+ ;;
+ esac
+ prev=
+ continue
+ ;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
+ objectlist)
+ if test -f "$arg"; then
+ save_arg=$arg
+ moreargs=
+ for fil in `cat "$save_arg"`
+ do
+# moreargs="$moreargs $fil"
+ arg=$fil
+ # A libtool-controlled object.
+
+ # Check to see that this really is a libtool object.
+ if func_lalib_unsafe_p "$arg"; then
+ pic_object=
+ non_pic_object=
+
+ # Read the .lo file
+ func_source "$arg"
+
+ if test -z "$pic_object" ||
+ test -z "$non_pic_object" ||
+ test "$pic_object" = none &&
+ test "$non_pic_object" = none; then
+ func_fatal_error "cannot find name of object for \`$arg'"
+ fi
+
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ if test "$pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ pic_object="$xdir$pic_object"
+
+ if test "$prev" = dlfiles; then
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+ dlfiles="$dlfiles $pic_object"
+ prev=
+ continue
+ else
+ # If libtool objects are unsupported, then we need to preload.
+ prev=dlprefiles
+ fi
+ fi
+
+ # CHECK ME: I think I busted this. -Ossama
+ if test "$prev" = dlprefiles; then
+ # Preload the old-style object.
+ dlprefiles="$dlprefiles $pic_object"
+ prev=
+ fi
+
+ # A PIC object.
+ func_append libobjs " $pic_object"
+ arg="$pic_object"
+ fi
+
+ # Non-PIC object.
+ if test "$non_pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ non_pic_object="$xdir$non_pic_object"
+
+ # A standard non-PIC object
+ func_append non_pic_objects " $non_pic_object"
+ if test -z "$pic_object" || test "$pic_object" = none ; then
+ arg="$non_pic_object"
+ fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ fi
+ else
+ # Only an error if not doing a dry-run.
+ if $opt_dry_run; then
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ func_lo2o "$arg"
+ pic_object=$xdir$objdir/$func_lo2o_result
+ non_pic_object=$xdir$func_lo2o_result
+ func_append libobjs " $pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ else
+ func_fatal_error "\`$arg' is not a valid libtool object"
+ fi
+ fi
+ done
+ else
+ func_fatal_error "link input file \`$arg' does not exist"
+ fi
+ arg=$save_arg
+ prev=
+ continue
+ ;;
+ precious_regex)
+ precious_files_regex="$arg"
+ prev=
+ continue
+ ;;
+ release)
+ release="-$arg"
+ prev=
+ continue
+ ;;
+ rpath | xrpath)
+ # We need an absolute path.
+ case $arg in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ func_fatal_error "only absolute run-paths are allowed"
+ ;;
+ esac
+ if test "$prev" = rpath; then
+ case "$rpath " in
+ *" $arg "*) ;;
+ *) rpath="$rpath $arg" ;;
+ esac
+ else
+ case "$xrpath " in
+ *" $arg "*) ;;
+ *) xrpath="$xrpath $arg" ;;
+ esac
+ fi
+ prev=
+ continue
+ ;;
+ shrext)
+ shrext_cmds="$arg"
+ prev=
+ continue
+ ;;
+ weak)
+ weak_libs="$weak_libs $arg"
+ prev=
+ continue
+ ;;
+ xcclinker)
+ linker_flags="$linker_flags $qarg"
+ compiler_flags="$compiler_flags $qarg"
+ prev=
+ func_append compile_command " $qarg"
+ func_append finalize_command " $qarg"
+ continue
+ ;;
+ xcompiler)
+ compiler_flags="$compiler_flags $qarg"
+ prev=
+ func_append compile_command " $qarg"
+ func_append finalize_command " $qarg"
+ continue
+ ;;
+ xlinker)
+ linker_flags="$linker_flags $qarg"
+ compiler_flags="$compiler_flags $wl$qarg"
+ prev=
+ func_append compile_command " $wl$qarg"
+ func_append finalize_command " $wl$qarg"
+ continue
+ ;;
+ *)
+ eval "$prev=\"\$arg\""
+ prev=
+ continue
+ ;;
+ esac
+ fi # test -n "$prev"
+
+ prevarg="$arg"
+
+ case $arg in
+ -all-static)
+ if test -n "$link_static_flag"; then
+ # See comment for -static flag below, for more details.
+ func_append compile_command " $link_static_flag"
+ func_append finalize_command " $link_static_flag"
+ fi
+ continue
+ ;;
+
+ -allow-undefined)
+ # FIXME: remove this flag sometime in the future.
+ func_fatal_error "\`-allow-undefined' must not be used because it is the default"
+ ;;
+
+ -avoid-version)
+ avoid_version=yes
+ continue
+ ;;
+
+ -dlopen)
+ prev=dlfiles
+ continue
+ ;;
+
+ -dlpreopen)
+ prev=dlprefiles
+ continue
+ ;;
+
+ -export-dynamic)
+ export_dynamic=yes
+ continue
+ ;;
+
+ -export-symbols | -export-symbols-regex)
+ if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
+ func_fatal_error "more than one -exported-symbols argument is not allowed"
+ fi
+ if test "X$arg" = "X-export-symbols"; then
+ prev=expsyms
+ else
+ prev=expsyms_regex
+ fi
+ continue
+ ;;
+
+ -framework)
+ prev=framework
+ continue
+ ;;
+
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
+ # so, if we see these flags be careful not to treat them like -L
+ -L[A-Z][A-Z]*:*)
+ case $with_gcc/$host in
+ no/*-*-irix* | /*-*-irix*)
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ ;;
+ esac
+ continue
+ ;;
+
+ -L*)
+ func_stripname '-L' '' "$arg"
+ dir=$func_stripname_result
+ if test -z "$dir"; then
+ if test "$#" -gt 0; then
+ func_fatal_error "require no space between \`-L' and \`$1'"
+ else
+ func_fatal_error "need path for \`-L' option"
+ fi
+ fi
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ absdir=`cd "$dir" && pwd`
+ test -z "$absdir" && \
+ func_fatal_error "cannot determine absolute directory name of \`$dir'"
+ dir="$absdir"
+ ;;
+ esac
+ case "$deplibs " in
+ *" -L$dir "*) ;;
+ *)
+ deplibs="$deplibs -L$dir"
+ lib_search_path="$lib_search_path $dir"
+ ;;
+ esac
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
+ case :$dllsearchpath: in
+ *":$dir:"*) ;;
+ ::) dllsearchpath=$dir;;
+ *) dllsearchpath="$dllsearchpath:$dir";;
+ esac
+ case :$dllsearchpath: in
+ *":$testbindir:"*) ;;
+ ::) dllsearchpath=$testbindir;;
+ *) dllsearchpath="$dllsearchpath:$testbindir";;
+ esac
+ ;;
+ esac
+ continue
+ ;;
+
+ -l*)
+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)
+ # These systems don't actually have a C or math library (as such)
+ continue
+ ;;
+ *-*-os2*)
+ # These systems don't actually have a C library (as such)
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc due to us having libc/libc_r.
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C and math libraries are in the System framework
+ deplibs="$deplibs System.ltframework"
+ continue
+ ;;
+ *-*-sco3.2v5* | *-*-sco5v6*)
+ # Causes problems with __ctype
+ test "X$arg" = "X-lc" && continue
+ ;;
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
+ # Compiler inserts libc in the correct place for threads to work
+ test "X$arg" = "X-lc" && continue
+ ;;
+ esac
+ elif test "X$arg" = "X-lc_r"; then
+ case $host in
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc_r directly, use -pthread flag.
+ continue
+ ;;
+ esac
+ fi
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
+ -module)
+ module=yes
+ continue
+ ;;
+
+ # Tru64 UNIX uses -model [arg] to determine the layout of C++
+ # classes, name mangling, and exception handling.
+ # Darwin uses the -arch flag to determine output architecture.
+ -model|-arch|-isysroot)
+ compiler_flags="$compiler_flags $arg"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ prev=xcompiler
+ continue
+ ;;
+
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ compiler_flags="$compiler_flags $arg"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ case "$new_inherited_linker_flags " in
+ *" $arg "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
+ esac
+ continue
+ ;;
+
+ -multi_module)
+ single_module="${wl}-multi_module"
+ continue
+ ;;
+
+ -no-fast-install)
+ fast_install=no
+ continue
+ ;;
+
+ -no-install)
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
+ # The PATH hackery in wrapper scripts is required on Windows
+ # and Darwin in order for the loader to find any dlls it needs.
+ func_warning "\`-no-install' is ignored for $host"
+ func_warning "assuming \`-no-fast-install' instead"
+ fast_install=no
+ ;;
+ *) no_install=yes ;;
+ esac
+ continue
+ ;;
+
+ -no-undefined)
+ allow_undefined=no
+ continue
+ ;;
+
+ -objectlist)
+ prev=objectlist
+ continue
+ ;;
+
+ -o) prev=output ;;
+
+ -precious-files-regex)
+ prev=precious_regex
+ continue
+ ;;
+
+ -release)
+ prev=release
+ continue
+ ;;
+
+ -rpath)
+ prev=rpath
+ continue
+ ;;
+
+ -R)
+ prev=xrpath
+ continue
+ ;;
+
+ -R*)
+ func_stripname '-R' '' "$arg"
+ dir=$func_stripname_result
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) ;;
+ *)
+ func_fatal_error "only absolute run-paths are allowed"
+ ;;
+ esac
+ case "$xrpath " in
+ *" $dir "*) ;;
+ *) xrpath="$xrpath $dir" ;;
+ esac
+ continue
+ ;;
+
+ -shared)
+ # The effects of -shared are defined in a previous loop.
+ continue
+ ;;
+
+ -shrext)
+ prev=shrext
+ continue
+ ;;
+
+ -static | -static-libtool-libs)
+ # The effects of -static are defined in a previous loop.
+ # We used to do the same as -all-static on platforms that
+ # didn't have a PIC flag, but the assumption that the effects
+ # would be equivalent was wrong. It would break on at least
+ # Digital Unix and AIX.
+ continue
+ ;;
+
+ -thread-safe)
+ thread_safe=yes
+ continue
+ ;;
+
+ -version-info)
+ prev=vinfo
+ continue
+ ;;
+
+ -version-number)
+ prev=vinfo
+ vinfo_number=yes
+ continue
+ ;;
+
+ -weak)
+ prev=weak
+ continue
+ ;;
+
+ -Wc,*)
+ func_stripname '-Wc,' '' "$arg"
+ args=$func_stripname_result
+ arg=
+ save_ifs="$IFS"; IFS=','
+ for flag in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$flag"
+ arg="$arg $wl$func_quote_for_eval_result"
+ compiler_flags="$compiler_flags $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$arg"
+ arg=$func_stripname_result
+ ;;
+
+ -Wl,*)
+ func_stripname '-Wl,' '' "$arg"
+ args=$func_stripname_result
+ arg=
+ save_ifs="$IFS"; IFS=','
+ for flag in $args; do
+ IFS="$save_ifs"
+ func_quote_for_eval "$flag"
+ arg="$arg $wl$func_quote_for_eval_result"
+ compiler_flags="$compiler_flags $wl$func_quote_for_eval_result"
+ linker_flags="$linker_flags $func_quote_for_eval_result"
+ done
+ IFS="$save_ifs"
+ func_stripname ' ' '' "$arg"
+ arg=$func_stripname_result
+ ;;
+
+ -Xcompiler)
+ prev=xcompiler
+ continue
+ ;;
+
+ -Xlinker)
+ prev=xlinker
+ continue
+ ;;
+
+ -XCClinker)
+ prev=xcclinker
+ continue
+ ;;
+
+ # -msg_* for osf cc
+ -msg_*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+
+ # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
+ # -r[0-9][0-9]* specifies the processor on the SGI compiler
+ # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
+ # +DA*, +DD* enable 64-bit mode on the HP compiler
+ # -q* pass through compiler args for the IBM compiler
+ # -m*, -t[45]*, -txscale* pass through architecture-specific
+ # compiler args for GCC
+ # -F/path gives path to uninstalled frameworks, gcc on darwin
+ # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
+ # @file GCC response files
+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ compiler_flags="$compiler_flags $arg"
+ continue
+ ;;
+
+ # Some other compiler flag.
+ -* | +*)
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+
+ *.$objext)
+ # A standard object.
+ objs="$objs $arg"
+ ;;
+
+ *.lo)
+ # A libtool-controlled object.
+
+ # Check to see that this really is a libtool object.
+ if func_lalib_unsafe_p "$arg"; then
+ pic_object=
+ non_pic_object=
+
+ # Read the .lo file
+ func_source "$arg"
+
+ if test -z "$pic_object" ||
+ test -z "$non_pic_object" ||
+ test "$pic_object" = none &&
+ test "$non_pic_object" = none; then
+ func_fatal_error "cannot find name of object for \`$arg'"
+ fi
+
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ if test "$pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ pic_object="$xdir$pic_object"
+
+ if test "$prev" = dlfiles; then
+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+ dlfiles="$dlfiles $pic_object"
+ prev=
+ continue
+ else
+ # If libtool objects are unsupported, then we need to preload.
+ prev=dlprefiles
+ fi
+ fi
+
+ # CHECK ME: I think I busted this. -Ossama
+ if test "$prev" = dlprefiles; then
+ # Preload the old-style object.
+ dlprefiles="$dlprefiles $pic_object"
+ prev=
+ fi
+
+ # A PIC object.
+ func_append libobjs " $pic_object"
+ arg="$pic_object"
+ fi
+
+ # Non-PIC object.
+ if test "$non_pic_object" != none; then
+ # Prepend the subdirectory the object is found in.
+ non_pic_object="$xdir$non_pic_object"
+
+ # A standard non-PIC object
+ func_append non_pic_objects " $non_pic_object"
+ if test -z "$pic_object" || test "$pic_object" = none ; then
+ arg="$non_pic_object"
+ fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ fi
+ else
+ # Only an error if not doing a dry-run.
+ if $opt_dry_run; then
+ # Extract subdirectory from the argument.
+ func_dirname "$arg" "/" ""
+ xdir="$func_dirname_result"
+
+ func_lo2o "$arg"
+ pic_object=$xdir$objdir/$func_lo2o_result
+ non_pic_object=$xdir$func_lo2o_result
+ func_append libobjs " $pic_object"
+ func_append non_pic_objects " $non_pic_object"
+ else
+ func_fatal_error "\`$arg' is not a valid libtool object"
+ fi
+ fi
+ ;;
+
+ *.$libext)
+ # An archive.
+ deplibs="$deplibs $arg"
+ old_deplibs="$old_deplibs $arg"
+ continue
+ ;;
+
+ *.la)
+ # A libtool-controlled library.
+
+ if test "$prev" = dlfiles; then
+ # This library was specified with -dlopen.
+ dlfiles="$dlfiles $arg"
+ prev=
+ elif test "$prev" = dlprefiles; then
+ # The library was specified with -dlpreopen.
+ dlprefiles="$dlprefiles $arg"
+ prev=
+ else
+ deplibs="$deplibs $arg"
+ fi
+ continue
+ ;;
+
+ # Some other compiler argument.
+ *)
+ # Unknown arguments in both finalize_command and compile_command need
+ # to be aesthetically quoted because they are evaled later.
+ func_quote_for_eval "$arg"
+ arg="$func_quote_for_eval_result"
+ ;;
+ esac # arg
+
+ # Now actually substitute the argument into the commands.
+ if test -n "$arg"; then
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ fi
+ done # argument parsing loop
+
+ test -n "$prev" && \
+ func_fatal_help "the \`$prevarg' option requires an argument"
+
+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
+ eval arg=\"$export_dynamic_flag_spec\"
+ func_append compile_command " $arg"
+ func_append finalize_command " $arg"
+ fi
+
+ oldlibs=
+ # calculate the name of the file, without its directory
+ func_basename "$output"
+ outputname="$func_basename_result"
+ libobjs_save="$libobjs"
+
+ if test -n "$shlibpath_var"; then
+ # get the directories listed in $shlibpath_var
+ eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
+ else
+ shlib_search_path=
+ fi
+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
+
+ func_dirname "$output" "/" ""
+ output_objdir="$func_dirname_result$objdir"
+ # Create the object directory.
+ func_mkdir_p "$output_objdir"
+
+ # Determine the type of output
+ case $output in
+ "")
+ func_fatal_help "you must specify an output file"
+ ;;
+ *.$libext) linkmode=oldlib ;;
+ *.lo | *.$objext) linkmode=obj ;;
+ *.la) linkmode=lib ;;
+ *) linkmode=prog ;; # Anything else should be a program.
+ esac
+
+ specialdeplibs=
+
+ libs=
+ # Find all interdependent deplibs by searching for libraries
+ # that are linked more than once (e.g. -la -lb -la)
+ for deplib in $deplibs; do
+ if $opt_duplicate_deps ; then
+ case "$libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ libs="$libs $deplib"
+ done
+
+ if test "$linkmode" = lib; then
+ libs="$predeps $libs $compiler_lib_search_path $postdeps"
+
+ # Compute libraries that are listed more than once in $predeps
+ # $postdeps and mark them as special (i.e., whose duplicates are
+ # not to be eliminated).
+ pre_post_deps=
+ if $opt_duplicate_compiler_generated_deps; then
+ for pre_post_dep in $predeps $postdeps; do
+ case "$pre_post_deps " in
+ *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
+ esac
+ pre_post_deps="$pre_post_deps $pre_post_dep"
+ done
+ fi
+ pre_post_deps=
+ fi
+
+ deplibs=
+ newdependency_libs=
+ newlib_search_path=
+ need_relink=no # whether we're linking any uninstalled libtool libraries
+ notinst_deplibs= # not-installed libtool libraries
+ notinst_path= # paths that contain not-installed libtool libraries
+
+ case $linkmode in
+ lib)
+ passes="conv dlpreopen link"
+ for file in $dlfiles $dlprefiles; do
+ case $file in
+ *.la) ;;
+ *)
+ func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
+ ;;
+ esac
+ done
+ ;;
+ prog)
+ compile_deplibs=
+ finalize_deplibs=
+ alldeplibs=no
+ newdlfiles=
+ newdlprefiles=
+ passes="conv scan dlopen dlpreopen link"
+ ;;
+ *) passes="conv"
+ ;;
+ esac
+
+ for pass in $passes; do
+ # The preopen pass in lib mode reverses $deplibs; put it back here
+ # so that -L comes before libs that need it for instance...
+ if test "$linkmode,$pass" = "lib,link"; then
+ ## FIXME: Find the place where the list is rebuilt in the wrong
+ ## order, and fix it there properly
+ tmp_deplibs=
+ for deplib in $deplibs; do
+ tmp_deplibs="$deplib $tmp_deplibs"
+ done
+ deplibs="$tmp_deplibs"
+ fi
+
+ if test "$linkmode,$pass" = "lib,link" ||
+ test "$linkmode,$pass" = "prog,scan"; then
+ libs="$deplibs"
+ deplibs=
+ fi
+ if test "$linkmode" = prog; then
+ case $pass in
+ dlopen) libs="$dlfiles" ;;
+ dlpreopen) libs="$dlprefiles" ;;
+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+ esac
+ fi
+ if test "$linkmode,$pass" = "lib,dlpreopen"; then
+ # Collect and forward deplibs of preopened libtool libs
+ for lib in $dlprefiles; do
+ # Ignore non-libtool-libs
+ dependency_libs=
+ case $lib in
+ *.la) func_source "$lib" ;;
+ esac
+
+ # Collect preopened libtool deplibs, except any this library
+ # has declared as weak libs
+ for deplib in $dependency_libs; do
+ deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"`
+ case " $weak_libs " in
+ *" $deplib_base "*) ;;
+ *) deplibs="$deplibs $deplib" ;;
+ esac
+ done
+ done
+ libs="$dlprefiles"
+ fi
+ if test "$pass" = dlopen; then
+ # Collect dlpreopened libraries
+ save_deplibs="$deplibs"
+ deplibs=
+ fi
+
+ for deplib in $libs; do
+ lib=
+ found=no
+ case $deplib in
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ compiler_flags="$compiler_flags $deplib"
+ if test "$linkmode" = lib ; then
+ case "$new_inherited_linker_flags " in
+ *" $deplib "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
+ esac
+ fi
+ fi
+ continue
+ ;;
+ -l*)
+ if test "$linkmode" != lib && test "$linkmode" != prog; then
+ func_warning "\`-l' is ignored for archives/objects"
+ continue
+ fi
+ func_stripname '-l' '' "$deplib"
+ name=$func_stripname_result
+ if test "$linkmode" = lib; then
+ searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
+ else
+ searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
+ fi
+ for searchdir in $searchdirs; do
+ for search_ext in .la $std_shrext .so .a; do
+ # Search the libtool library
+ lib="$searchdir/lib${name}${search_ext}"
+ if test -f "$lib"; then
+ if test "$search_ext" = ".la"; then
+ found=yes
+ else
+ found=no
+ fi
+ break 2
+ fi
+ done
+ done
+ if test "$found" != yes; then
+ # deplib doesn't seem to be a libtool library
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+ fi
+ continue
+ else # deplib is a libtool library
+ # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
+ # We need to do some special things here, and not later.
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $deplib "*)
+ if func_lalib_p "$lib"; then
+ library_names=
+ old_library=
+ func_source "$lib"
+ for l in $old_library $library_names; do
+ ll="$l"
+ done
+ if test "X$ll" = "X$old_library" ; then # only static version available
+ found=no
+ func_dirname "$lib" "" "."
+ ladir="$func_dirname_result"
+ lib=$ladir/$old_library
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+ fi
+ continue
+ fi
+ fi
+ ;;
+ *) ;;
+ esac
+ fi
+ fi
+ ;; # -l
+ *.ltframework)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ if test "$linkmode" = lib ; then
+ case "$new_inherited_linker_flags " in
+ *" $deplib "*) ;;
+ * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
+ esac
+ fi
+ fi
+ continue
+ ;;
+ -L*)
+ case $linkmode in
+ lib)
+ deplibs="$deplib $deplibs"
+ test "$pass" = conv && continue
+ newdependency_libs="$deplib $newdependency_libs"
+ func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ prog)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ continue
+ fi
+ if test "$pass" = scan; then
+ deplibs="$deplib $deplibs"
+ else
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ fi
+ func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ *)
+ func_warning "\`-L' is ignored for archives/objects"
+ ;;
+ esac # linkmode
+ continue
+ ;; # -L
+ -R*)
+ if test "$pass" = link; then
+ func_stripname '-R' '' "$deplib"
+ dir=$func_stripname_result
+ # Make sure the xrpath contains only unique directories.
+ case "$xrpath " in
+ *" $dir "*) ;;
+ *) xrpath="$xrpath $dir" ;;
+ esac
+ fi
+ deplibs="$deplib $deplibs"
+ continue
+ ;;
+ *.la) lib="$deplib" ;;
+ *.$libext)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ continue
+ fi
+ case $linkmode in
+ lib)
+ # Linking convenience modules into shared libraries is allowed,
+ # but linking other static libraries is non-portable.
+ case " $dlpreconveniencelibs " in
+ *" $deplib "*) ;;
+ *)
+ valid_a_lib=no
+ case $deplibs_check_method in
+ match_pattern*)
+ set dummy $deplibs_check_method; shift
+ match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 10q \
+ | $EGREP "$match_pattern_regex" > /dev/null; then
+ valid_a_lib=yes
+ fi
+ ;;
+ pass_all)
+ valid_a_lib=yes
+ ;;
+ esac
+ if test "$valid_a_lib" != yes; then
+ $ECHO
+ $ECHO "*** Warning: Trying to link with static lib archive $deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because the file extensions .$libext of this argument makes me believe"
+ $ECHO "*** that it is just a static archive that I should not use here."
+ else
+ $ECHO
+ $ECHO "*** Warning: Linking the shared library $output against the"
+ $ECHO "*** static library $deplib is not portable!"
+ deplibs="$deplib $deplibs"
+ fi
+ ;;
+ esac
+ continue
+ ;;
+ prog)
+ if test "$pass" != link; then
+ deplibs="$deplib $deplibs"
+ else
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ fi
+ continue
+ ;;
+ esac # linkmode
+ ;; # *.$libext
+ *.lo | *.$objext)
+ if test "$pass" = conv; then
+ deplibs="$deplib $deplibs"
+ elif test "$linkmode" = prog; then
+ if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+ # If there is no dlopen support or we're linking statically,
+ # we need to preload.
+ newdlprefiles="$newdlprefiles $deplib"
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ newdlfiles="$newdlfiles $deplib"
+ fi
+ fi
+ continue
+ ;;
+ %DEPLIBS%)
+ alldeplibs=yes
+ continue
+ ;;
+ esac # case $deplib
+
+ if test "$found" = yes || test -f "$lib"; then :
+ else
+ func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
+ fi
+
+ # Check to see that this really is a libtool archive.
+ func_lalib_unsafe_p "$lib" \
+ || func_fatal_error "\`$lib' is not a valid libtool archive"
+
+ func_dirname "$lib" "" "."
+ ladir="$func_dirname_result"
+
+ dlname=
+ dlopen=
+ dlpreopen=
+ libdir=
+ library_names=
+ old_library=
+ inherited_linker_flags=
+ # If the library was installed with an old release of libtool,
+ # it will not redefine variables installed, or shouldnotlink
+ installed=yes
+ shouldnotlink=no
+ avoidtemprpath=
+
+
+ # Read the .la file
+ func_source "$lib"
+
+ # Convert "-framework foo" to "foo.ltframework"
+ if test -n "$inherited_linker_flags"; then
+ tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
+ for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
+ case " $new_inherited_linker_flags " in
+ *" $tmp_inherited_linker_flag "*) ;;
+ *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";;
+ esac
+ done
+ fi
+ dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ if test "$linkmode,$pass" = "lib,link" ||
+ test "$linkmode,$pass" = "prog,scan" ||
+ { test "$linkmode" != prog && test "$linkmode" != lib; }; then
+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
+ fi
+
+ if test "$pass" = conv; then
+ # Only check for convenience libraries
+ deplibs="$lib $deplibs"
+ if test -z "$libdir"; then
+ if test -z "$old_library"; then
+ func_fatal_error "cannot find name of link library for \`$lib'"
+ fi
+ # It is a libtool convenience library, so add in its objects.
+ convenience="$convenience $ladir/$objdir/$old_library"
+ old_convenience="$old_convenience $ladir/$objdir/$old_library"
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
+ func_fatal_error "\`$lib' is not a convenience library"
+ fi
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ deplibs="$deplib $deplibs"
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done
+ continue
+ fi # $pass = conv
+
+
+ # Get the name of the library we link against.
+ linklib=
+ for l in $old_library $library_names; do
+ linklib="$l"
+ done
+ if test -z "$linklib"; then
+ func_fatal_error "cannot find name of link library for \`$lib'"
+ fi
+
+ # This library was specified with -dlopen.
+ if test "$pass" = dlopen; then
+ if test -z "$libdir"; then
+ func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
+ fi
+ if test -z "$dlname" ||
+ test "$dlopen_support" != yes ||
+ test "$build_libtool_libs" = no; then
+ # If there is no dlname, no dlopen support or we're linking
+ # statically, we need to preload. We also need to preload any
+ # dependent libraries so libltdl's deplib preloader doesn't
+ # bomb out in the load deplibs phase.
+ dlprefiles="$dlprefiles $lib $dependency_libs"
+ else
+ newdlfiles="$newdlfiles $lib"
+ fi
+ continue
+ fi # $pass = dlopen
+
+ # We need an absolute path.
+ case $ladir in
+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
+ *)
+ abs_ladir=`cd "$ladir" && pwd`
+ if test -z "$abs_ladir"; then
+ func_warning "cannot determine absolute directory name of \`$ladir'"
+ func_warning "passing it literally to the linker, although it might fail"
+ abs_ladir="$ladir"
+ fi
+ ;;
+ esac
+ func_basename "$lib"
+ laname="$func_basename_result"
+
+ # Find the relevant object directory and library name.
+ if test "X$installed" = Xyes; then
+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+ func_warning "library \`$lib' was moved."
+ dir="$ladir"
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+ dir="$libdir"
+ absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+ dir="$ladir"
+ absdir="$abs_ladir"
+ # Remove this search path later
+ notinst_path="$notinst_path $abs_ladir"
+ else
+ dir="$ladir/$objdir"
+ absdir="$abs_ladir/$objdir"
+ # Remove this search path later
+ notinst_path="$notinst_path $abs_ladir"
+ fi
+ fi # $installed = yes
+ func_stripname 'lib' '.la' "$laname"
+ name=$func_stripname_result
+
+ # This library was specified with -dlpreopen.
+ if test "$pass" = dlpreopen; then
+ if test -z "$libdir" && test "$linkmode" = prog; then
+ func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
+ fi
+ # Prefer using a static library (so that no silly _DYNAMIC symbols
+ # are required to link).
+ if test -n "$old_library"; then
+ newdlprefiles="$newdlprefiles $dir/$old_library"
+ # Keep a list of preopened convenience libraries to check
+ # that they are being used correctly in the link pass.
+ test -z "$libdir" && \
+ dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"
+ # Otherwise, use the dlname, so that lt_dlopen finds it.
+ elif test -n "$dlname"; then
+ newdlprefiles="$newdlprefiles $dir/$dlname"
+ else
+ newdlprefiles="$newdlprefiles $dir/$linklib"
+ fi
+ fi # $pass = dlpreopen
+
+ if test -z "$libdir"; then
+ # Link the convenience library
+ if test "$linkmode" = lib; then
+ deplibs="$dir/$old_library $deplibs"
+ elif test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$dir/$old_library $compile_deplibs"
+ finalize_deplibs="$dir/$old_library $finalize_deplibs"
+ else
+ deplibs="$lib $deplibs" # used for prog,scan pass
+ fi
+ continue
+ fi
+
+
+ if test "$linkmode" = prog && test "$pass" != link; then
+ newlib_search_path="$newlib_search_path $ladir"
+ deplibs="$lib $deplibs"
+
+ linkalldeplibs=no
+ if test "$link_all_deplibs" != no || test -z "$library_names" ||
+ test "$build_libtool_libs" = no; then
+ linkalldeplibs=yes
+ fi
+
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ case $deplib in
+ -L*) func_stripname '-L' '' "$deplib"
+ newlib_search_path="$newlib_search_path $func_stripname_result"
+ ;;
+ esac
+ # Need to link against all dependency_libs?
+ if test "$linkalldeplibs" = yes; then
+ deplibs="$deplib $deplibs"
+ else
+ # Need to hardcode shared library paths
+ # or/and link against static libraries
+ newdependency_libs="$deplib $newdependency_libs"
+ fi
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done # for deplib
+ continue
+ fi # $linkmode = prog...
+
+ if test "$linkmode,$pass" = "prog,link"; then
+ if test -n "$library_names" &&
+ { { test "$prefer_static_libs" = no ||
+ test "$prefer_static_libs,$installed" = "built,yes"; } ||
+ test -z "$old_library"; }; then
+ # We need to hardcode the library path
+ if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
+ # Make sure the rpath contains only unique directories.
+ case "$temp_rpath:" in
+ *"$absdir:"*) ;;
+ *) temp_rpath="$temp_rpath$absdir:" ;;
+ esac
+ fi
+
+ # Hardcode the library path.
+ # Skip directories that are in the system default run-time
+ # search path.
+ case " $sys_lib_dlsearch_path " in
+ *" $absdir "*) ;;
+ *)
+ case "$compile_rpath " in
+ *" $absdir "*) ;;
+ *) compile_rpath="$compile_rpath $absdir"
+ esac
+ ;;
+ esac
+ case " $sys_lib_dlsearch_path " in
+ *" $libdir "*) ;;
+ *)
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir"
+ esac
+ ;;
+ esac
+ fi # $linkmode,$pass = prog,link...
+
+ if test "$alldeplibs" = yes &&
+ { test "$deplibs_check_method" = pass_all ||
+ { test "$build_libtool_libs" = yes &&
+ test -n "$library_names"; }; }; then
+ # We only need to search for static libraries
+ continue
+ fi
+ fi
+
+ link_static=no # Whether the deplib will be linked statically
+ use_static_libs=$prefer_static_libs
+ if test "$use_static_libs" = built && test "$installed" = yes; then
+ use_static_libs=no
+ fi
+ if test -n "$library_names" &&
+ { test "$use_static_libs" = no || test -z "$old_library"; }; then
+ case $host in
+ *cygwin* | *mingw* | *cegcc*)
+ # No point in relinking DLLs because paths are not encoded
+ notinst_deplibs="$notinst_deplibs $lib"
+ need_relink=no
+ ;;
+ *)
+ if test "$installed" = no; then
+ notinst_deplibs="$notinst_deplibs $lib"
+ need_relink=yes
+ fi
+ ;;
+ esac
+ # This is a shared library
+
+ # Warn about portability, can't link against -module's on some
+ # systems (darwin). Don't bleat about dlopened modules though!
+ dlopenmodule=""
+ for dlpremoduletest in $dlprefiles; do
+ if test "X$dlpremoduletest" = "X$lib"; then
+ dlopenmodule="$dlpremoduletest"
+ break
+ fi
+ done
+ if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
+ $ECHO
+ if test "$linkmode" = prog; then
+ $ECHO "*** Warning: Linking the executable $output against the loadable module"
+ else
+ $ECHO "*** Warning: Linking the shared library $output against the loadable module"
+ fi
+ $ECHO "*** $linklib is not portable!"
+ fi
+ if test "$linkmode" = lib &&
+ test "$hardcode_into_libs" = yes; then
+ # Hardcode the library path.
+ # Skip directories that are in the system default run-time
+ # search path.
+ case " $sys_lib_dlsearch_path " in
+ *" $absdir "*) ;;
+ *)
+ case "$compile_rpath " in
+ *" $absdir "*) ;;
+ *) compile_rpath="$compile_rpath $absdir"
+ esac
+ ;;
+ esac
+ case " $sys_lib_dlsearch_path " in
+ *" $libdir "*) ;;
+ *)
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir"
+ esac
+ ;;
+ esac
+ fi
+
+ if test -n "$old_archive_from_expsyms_cmds"; then
+ # figure out the soname
+ set dummy $library_names
+ shift
+ realname="$1"
+ shift
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ # use dlname if we got it. it's perfectly good, no?
+ if test -n "$dlname"; then
+ soname="$dlname"
+ elif test -n "$soname_spec"; then
+ # bleh windows
+ case $host in
+ *cygwin* | mingw* | *cegcc*)
+ func_arith $current - $age
+ major=$func_arith_result
+ versuffix="-$major"
+ ;;
+ esac
+ eval soname=\"$soname_spec\"
+ else
+ soname="$realname"
+ fi
+
+ # Make a new name for the extract_expsyms_cmds to use
+ soroot="$soname"
+ func_basename "$soroot"
+ soname="$func_basename_result"
+ func_stripname 'lib' '.dll' "$soname"
+ newlib=libimp-$func_stripname_result.a
+
+ # If the library has no export list, then create one now
+ if test -f "$output_objdir/$soname-def"; then :
+ else
+ func_verbose "extracting exported symbol list from \`$soname'"
+ func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
+ fi
+
+ # Create $newlib
+ if test -f "$output_objdir/$newlib"; then :; else
+ func_verbose "generating import library for \`$soname'"
+ func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
+ fi
+ # make sure the library variables are pointing to the new library
+ dir=$output_objdir
+ linklib=$newlib
+ fi # test -n "$old_archive_from_expsyms_cmds"
+
+ if test "$linkmode" = prog || test "$mode" != relink; then
+ add_shlibpath=
+ add_dir=
+ add=
+ lib_linked=yes
+ case $hardcode_action in
+ immediate | unsupported)
+ if test "$hardcode_direct" = no; then
+ add="$dir/$linklib"
+ case $host in
+ *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
+ *-*-sysv4*uw2*) add_dir="-L$dir" ;;
+ *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
+ *-*-unixware7*) add_dir="-L$dir" ;;
+ *-*-darwin* )
+ # if the lib is a (non-dlopened) module then we can not
+ # link against it, someone is ignoring the earlier warnings
+ if /usr/bin/file -L $add 2> /dev/null |
+ $GREP ": [^:]* bundle" >/dev/null ; then
+ if test "X$dlopenmodule" != "X$lib"; then
+ $ECHO "*** Warning: lib $linklib is a module, not a shared library"
+ if test -z "$old_library" ; then
+ $ECHO
+ $ECHO "*** And there doesn't seem to be a static archive available"
+ $ECHO "*** The link will probably fail, sorry"
+ else
+ add="$dir/$old_library"
+ fi
+ elif test -n "$old_library"; then
+ add="$dir/$old_library"
+ fi
+ fi
+ esac
+ elif test "$hardcode_minus_L" = no; then
+ case $host in
+ *-*-sunos*) add_shlibpath="$dir" ;;
+ esac
+ add_dir="-L$dir"
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = no; then
+ add_shlibpath="$dir"
+ add="-l$name"
+ else
+ lib_linked=no
+ fi
+ ;;
+ relink)
+ if test "$hardcode_direct" = yes &&
+ test "$hardcode_direct_absolute" = no; then
+ add="$dir/$linklib"
+ elif test "$hardcode_minus_L" = yes; then
+ add_dir="-L$dir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = yes; then
+ add_shlibpath="$dir"
+ add="-l$name"
+ else
+ lib_linked=no
+ fi
+ ;;
+ *) lib_linked=no ;;
+ esac
+
+ if test "$lib_linked" != yes; then
+ func_fatal_configuration "unsupported hardcode properties"
+ fi
+
+ if test -n "$add_shlibpath"; then
+ case :$compile_shlibpath: in
+ *":$add_shlibpath:"*) ;;
+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
+ esac
+ fi
+ if test "$linkmode" = prog; then
+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
+ test -n "$add" && compile_deplibs="$add $compile_deplibs"
+ else
+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
+ test -n "$add" && deplibs="$add $deplibs"
+ if test "$hardcode_direct" != yes &&
+ test "$hardcode_minus_L" != yes &&
+ test "$hardcode_shlibpath_var" = yes; then
+ case :$finalize_shlibpath: in
+ *":$libdir:"*) ;;
+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
+ esac
+ fi
+ fi
+ fi
+
+ if test "$linkmode" = prog || test "$mode" = relink; then
+ add_shlibpath=
+ add_dir=
+ add=
+ # Finalize command for both is simple: just hardcode it.
+ if test "$hardcode_direct" = yes &&
+ test "$hardcode_direct_absolute" = no; then
+ add="$libdir/$linklib"
+ elif test "$hardcode_minus_L" = yes; then
+ add_dir="-L$libdir"
+ add="-l$name"
+ elif test "$hardcode_shlibpath_var" = yes; then
+ case :$finalize_shlibpath: in
+ *":$libdir:"*) ;;
+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
+ esac
+ add="-l$name"
+ elif test "$hardcode_automatic" = yes; then
+ if test -n "$inst_prefix_dir" &&
+ test -f "$inst_prefix_dir$libdir/$linklib" ; then
+ add="$inst_prefix_dir$libdir/$linklib"
+ else
+ add="$libdir/$linklib"
+ fi
+ else
+ # We cannot seem to hardcode it, guess we'll fake it.
+ add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add="-l$name"
+ fi
+
+ if test "$linkmode" = prog; then
+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
+ else
+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
+ test -n "$add" && deplibs="$add $deplibs"
+ fi
+ fi
+ elif test "$linkmode" = prog; then
+ # Here we assume that one of hardcode_direct or hardcode_minus_L
+ # is not unsupported. This is valid on all known static and
+ # shared platforms.
+ if test "$hardcode_direct" != unsupported; then
+ test -n "$old_library" && linklib="$old_library"
+ compile_deplibs="$dir/$linklib $compile_deplibs"
+ finalize_deplibs="$dir/$linklib $finalize_deplibs"
+ else
+ compile_deplibs="-l$name -L$dir $compile_deplibs"
+ finalize_deplibs="-l$name -L$dir $finalize_deplibs"
+ fi
+ elif test "$build_libtool_libs" = yes; then
+ # Not a shared library
+ if test "$deplibs_check_method" != pass_all; then
+ # We're trying link a shared library against a static one
+ # but the system doesn't support it.
+
+ # Just print a warning and add the library to dependency_libs so
+ # that the program can be linked against the static library.
+ $ECHO
+ $ECHO "*** Warning: This system can not link to static lib archive $lib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have."
+ if test "$module" = yes; then
+ $ECHO "*** But as you try to build a module library, libtool will still create "
+ $ECHO "*** a static module, that should work as long as the dlopening application"
+ $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime."
+ if test -z "$global_symbol_pipe"; then
+ $ECHO
+ $ECHO "*** However, this would only work if libtool was able to extract symbol"
+ $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
+ $ECHO "*** not find such a program. So, this module is probably useless."
+ $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
+ fi
+ if test "$build_old_libs" = no; then
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ fi
+ else
+ deplibs="$dir/$old_library $deplibs"
+ link_static=yes
+ fi
+ fi # link shared/static library?
+
+ if test "$linkmode" = lib; then
+ if test -n "$dependency_libs" &&
+ { test "$hardcode_into_libs" != yes ||
+ test "$build_old_libs" = yes ||
+ test "$link_static" = yes; }; then
+ # Extract -R from dependency_libs
+ temp_deplibs=
+ for libdir in $dependency_libs; do
+ case $libdir in
+ -R*) func_stripname '-R' '' "$libdir"
+ temp_xrpath=$func_stripname_result
+ case " $xrpath " in
+ *" $temp_xrpath "*) ;;
+ *) xrpath="$xrpath $temp_xrpath";;
+ esac;;
+ *) temp_deplibs="$temp_deplibs $libdir";;
+ esac
+ done
+ dependency_libs="$temp_deplibs"
+ fi
+
+ newlib_search_path="$newlib_search_path $absdir"
+ # Link against this library
+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
+ # ... and its dependency_libs
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ newdependency_libs="$deplib $newdependency_libs"
+ if $opt_duplicate_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+ esac
+ fi
+ tmp_libs="$tmp_libs $deplib"
+ done
+
+ if test "$link_all_deplibs" != no; then
+ # Add the search paths of all dependency libraries
+ for deplib in $dependency_libs; do
+ case $deplib in
+ -L*) path="$deplib" ;;
+ *.la)
+ func_dirname "$deplib" "" "."
+ dir="$func_dirname_result"
+ # We need an absolute path.
+ case $dir in
+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
+ *)
+ absdir=`cd "$dir" && pwd`
+ if test -z "$absdir"; then
+ func_warning "cannot determine absolute directory name of \`$dir'"
+ absdir="$dir"
+ fi
+ ;;
+ esac
+ if $GREP "^installed=no" $deplib > /dev/null; then
+ case $host in
+ *-*-darwin*)
+ depdepl=
+ eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+ if test -n "$deplibrary_names" ; then
+ for tmp in $deplibrary_names ; do
+ depdepl=$tmp
+ done
+ if test -f "$absdir/$objdir/$depdepl" ; then
+ depdepl="$absdir/$objdir/$depdepl"
+ darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+ if test -z "$darwin_install_name"; then
+ darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+ fi
+ compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
+ linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}"
+ path=
+ fi
+ fi
+ ;;
+ *)
+ path="-L$absdir/$objdir"
+ ;;
+ esac
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$deplib' is not a valid libtool archive"
+ test "$absdir" != "$libdir" && \
+ func_warning "\`$deplib' seems to be moved"
+
+ path="-L$absdir"
+ fi
+ ;;
+ esac
+ case " $deplibs " in
+ *" $path "*) ;;
+ *) deplibs="$path $deplibs" ;;
+ esac
+ done
+ fi # link_all_deplibs != no
+ fi # linkmode = lib
+ done # for deplib in $libs
+ if test "$pass" = link; then
+ if test "$linkmode" = "prog"; then
+ compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
+ finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
+ else
+ compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ fi
+ fi
+ dependency_libs="$newdependency_libs"
+ if test "$pass" = dlpreopen; then
+ # Link the dlpreopened libraries before other libraries
+ for deplib in $save_deplibs; do
+ deplibs="$deplib $deplibs"
+ done
+ fi
+ if test "$pass" != dlopen; then
+ if test "$pass" != conv; then
+ # Make sure lib_search_path contains only unique directories.
+ lib_search_path=
+ for dir in $newlib_search_path; do
+ case "$lib_search_path " in
+ *" $dir "*) ;;
+ *) lib_search_path="$lib_search_path $dir" ;;
+ esac
+ done
+ newlib_search_path=
+ fi
+
+ if test "$linkmode,$pass" != "prog,link"; then
+ vars="deplibs"
+ else
+ vars="compile_deplibs finalize_deplibs"
+ fi
+ for var in $vars dependency_libs; do
+ # Add libraries to $var in reverse order
+ eval tmp_libs=\"\$$var\"
+ new_libs=
+ for deplib in $tmp_libs; do
+ # FIXME: Pedantically, this is the right thing to do, so
+ # that some nasty dependency loop isn't accidentally
+ # broken:
+ #new_libs="$deplib $new_libs"
+ # Pragmatically, this seems to cause very few problems in
+ # practice:
+ case $deplib in
+ -L*) new_libs="$deplib $new_libs" ;;
+ -R*) ;;
+ *)
+ # And here is the reason: when a library appears more
+ # than once as an explicit dependence of a library, or
+ # is implicitly linked in more than once by the
+ # compiler, it is considered special, and multiple
+ # occurrences thereof are not removed. Compare this
+ # with having the same library being listed as a
+ # dependency of multiple other libraries: in this case,
+ # we know (pedantically, we assume) the library does not
+ # need to be listed more than once, so we keep only the
+ # last copy. This is not always right, but it is rare
+ # enough that we require users that really mean to play
+ # such unportable linking tricks to link the library
+ # using -Wl,-lname, so that libtool does not consider it
+ # for duplicate removal.
+ case " $specialdeplibs " in
+ *" $deplib "*) new_libs="$deplib $new_libs" ;;
+ *)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$deplib $new_libs" ;;
+ esac
+ ;;
+ esac
+ ;;
+ esac
+ done
+ tmp_libs=
+ for deplib in $new_libs; do
+ case $deplib in
+ -L*)
+ case " $tmp_libs " in
+ *" $deplib "*) ;;
+ *) tmp_libs="$tmp_libs $deplib" ;;
+ esac
+ ;;
+ *) tmp_libs="$tmp_libs $deplib" ;;
+ esac
+ done
+ eval $var=\"$tmp_libs\"
+ done # for var
+ fi
+ # Last step: remove runtime libs from dependency_libs
+ # (they stay in deplibs)
+ tmp_libs=
+ for i in $dependency_libs ; do
+ case " $predeps $postdeps $compiler_lib_search_path " in
+ *" $i "*)
+ i=""
+ ;;
+ esac
+ if test -n "$i" ; then
+ tmp_libs="$tmp_libs $i"
+ fi
+ done
+ dependency_libs=$tmp_libs
+ done # for pass
+ if test "$linkmode" = prog; then
+ dlfiles="$newdlfiles"
+ fi
+ if test "$linkmode" = prog || test "$linkmode" = lib; then
+ dlprefiles="$newdlprefiles"
+ fi
+
+ case $linkmode in
+ oldlib)
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ func_warning "\`-dlopen' is ignored for archives"
+ fi
+
+ case " $deplibs" in
+ *\ -l* | *\ -L*)
+ func_warning "\`-l' and \`-L' are ignored for archives" ;;
+ esac
+
+ test -n "$rpath" && \
+ func_warning "\`-rpath' is ignored for archives"
+
+ test -n "$xrpath" && \
+ func_warning "\`-R' is ignored for archives"
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info/-version-number' is ignored for archives"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for archives"
+
+ test -n "$export_symbols$export_symbols_regex" && \
+ func_warning "\`-export-symbols' is ignored for archives"
+
+ # Now set the variables for building old libraries.
+ build_libtool_libs=no
+ oldlibs="$output"
+ objs="$objs$old_deplibs"
+ ;;
+
+ lib)
+ # Make sure we only generate libraries of the form `libNAME.la'.
+ case $outputname in
+ lib*)
+ func_stripname 'lib' '.la' "$outputname"
+ name=$func_stripname_result
+ eval shared_ext=\"$shrext_cmds\"
+ eval libname=\"$libname_spec\"
+ ;;
+ *)
+ test "$module" = no && \
+ func_fatal_help "libtool library \`$output' must begin with \`lib'"
+
+ if test "$need_lib_prefix" != no; then
+ # Add the "lib" prefix for modules if required
+ func_stripname '' '.la' "$outputname"
+ name=$func_stripname_result
+ eval shared_ext=\"$shrext_cmds\"
+ eval libname=\"$libname_spec\"
+ else
+ func_stripname '' '.la' "$outputname"
+ libname=$func_stripname_result
+ fi
+ ;;
+ esac
+
+ if test -n "$objs"; then
+ if test "$deplibs_check_method" != pass_all; then
+ func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
+ else
+ $ECHO
+ $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
+ $ECHO "*** objects $objs is not portable!"
+ libobjs="$libobjs $objs"
+ fi
+ fi
+
+ test "$dlself" != no && \
+ func_warning "\`-dlopen self' is ignored for libtool libraries"
+
+ set dummy $rpath
+ shift
+ test "$#" -gt 1 && \
+ func_warning "ignoring multiple \`-rpath's for a libtool library"
+
+ install_libdir="$1"
+
+ oldlibs=
+ if test -z "$rpath"; then
+ if test "$build_libtool_libs" = yes; then
+ # Building a libtool convenience library.
+ # Some compilers have problems with a `.al' extension so
+ # convenience libraries should have the same extension an
+ # archive normally would.
+ oldlibs="$output_objdir/$libname.$libext $oldlibs"
+ build_libtool_libs=convenience
+ build_old_libs=yes
+ fi
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for convenience libraries"
+ else
+
+ # Parse the version information argument.
+ save_ifs="$IFS"; IFS=':'
+ set dummy $vinfo 0 0 0
+ shift
+ IFS="$save_ifs"
+
+ test -n "$7" && \
+ func_fatal_help "too many parameters to \`-version-info'"
+
+ # convert absolute version numbers to libtool ages
+ # this retains compatibility with .la files and attempts
+ # to make the code below a bit more comprehensible
+
+ case $vinfo_number in
+ yes)
+ number_major="$1"
+ number_minor="$2"
+ number_revision="$3"
+ #
+ # There are really only two kinds -- those that
+ # use the current revision as the major version
+ # and those that subtract age and use age as
+ # a minor version. But, then there is irix
+ # which has an extra 1 added just for fun
+ #
+ case $version_type in
+ darwin|linux|osf|windows|none)
+ func_arith $number_major + $number_minor
+ current=$func_arith_result
+ age="$number_minor"
+ revision="$number_revision"
+ ;;
+ freebsd-aout|freebsd-elf|sunos)
+ current="$number_major"
+ revision="$number_minor"
+ age="0"
+ ;;
+ irix|nonstopux)
+ func_arith $number_major + $number_minor
+ current=$func_arith_result
+ age="$number_minor"
+ revision="$number_minor"
+ lt_irix_increment=no
+ ;;
+ esac
+ ;;
+ no)
+ current="$1"
+ revision="$2"
+ age="$3"
+ ;;
+ esac
+
+ # Check that each of the things are valid numbers.
+ case $current in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "CURRENT \`$current' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ case $revision in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "REVISION \`$revision' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ case $age in
+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
+ *)
+ func_error "AGE \`$age' must be a nonnegative integer"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ ;;
+ esac
+
+ if test "$age" -gt "$current"; then
+ func_error "AGE \`$age' is greater than the current interface number \`$current'"
+ func_fatal_error "\`$vinfo' is not valid version information"
+ fi
+
+ # Calculate the version variables.
+ major=
+ versuffix=
+ verstring=
+ case $version_type in
+ none) ;;
+
+ darwin)
+ # Like Linux, but with the current version available in
+ # verstring for coding it into the library header
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix="$major.$age.$revision"
+ # Darwin ld doesn't like 0 for these options...
+ func_arith $current + 1
+ minor_current=$func_arith_result
+ xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+ ;;
+
+ freebsd-aout)
+ major=".$current"
+ versuffix=".$current.$revision";
+ ;;
+
+ freebsd-elf)
+ major=".$current"
+ versuffix=".$current"
+ ;;
+
+ irix | nonstopux)
+ if test "X$lt_irix_increment" = "Xno"; then
+ func_arith $current - $age
+ else
+ func_arith $current - $age + 1
+ fi
+ major=$func_arith_result
+
+ case $version_type in
+ nonstopux) verstring_prefix=nonstopux ;;
+ *) verstring_prefix=sgi ;;
+ esac
+ verstring="$verstring_prefix$major.$revision"
+
+ # Add in all the interfaces that we are compatible with.
+ loop=$revision
+ while test "$loop" -ne 0; do
+ func_arith $revision - $loop
+ iface=$func_arith_result
+ func_arith $loop - 1
+ loop=$func_arith_result
+ verstring="$verstring_prefix$major.$iface:$verstring"
+ done
+
+ # Before this point, $major must not contain `.'.
+ major=.$major
+ versuffix="$major.$revision"
+ ;;
+
+ linux)
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix="$major.$age.$revision"
+ ;;
+
+ osf)
+ func_arith $current - $age
+ major=.$func_arith_result
+ versuffix=".$current.$age.$revision"
+ verstring="$current.$age.$revision"
+
+ # Add in all the interfaces that we are compatible with.
+ loop=$age
+ while test "$loop" -ne 0; do
+ func_arith $current - $loop
+ iface=$func_arith_result
+ func_arith $loop - 1
+ loop=$func_arith_result
+ verstring="$verstring:${iface}.0"
+ done
+
+ # Make executables depend on our current version.
+ verstring="$verstring:${current}.0"
+ ;;
+
+ qnx)
+ major=".$current"
+ versuffix=".$current"
+ ;;
+
+ sunos)
+ major=".$current"
+ versuffix=".$current.$revision"
+ ;;
+
+ windows)
+ # Use '-' rather than '.', since we only want one
+ # extension on DOS 8.3 filesystems.
+ func_arith $current - $age
+ major=$func_arith_result
+ versuffix="-$major"
+ ;;
+
+ *)
+ func_fatal_configuration "unknown library version type \`$version_type'"
+ ;;
+ esac
+
+ # Clear the version info if we defaulted, and they specified a release.
+ if test -z "$vinfo" && test -n "$release"; then
+ major=
+ case $version_type in
+ darwin)
+ # we can't check for "0.0" in archive_cmds due to quoting
+ # problems, so we reset it completely
+ verstring=
+ ;;
+ *)
+ verstring="0.0"
+ ;;
+ esac
+ if test "$need_version" = no; then
+ versuffix=
+ else
+ versuffix=".0.0"
+ fi
+ fi
+
+ # Remove version info from name if versioning should be avoided
+ if test "$avoid_version" = yes && test "$need_version" = no; then
+ major=
+ versuffix=
+ verstring=""
+ fi
+
+ # Check to see if the archive will have undefined symbols.
+ if test "$allow_undefined" = yes; then
+ if test "$allow_undefined_flag" = unsupported; then
+ func_warning "undefined symbols not allowed in $host shared libraries"
+ build_libtool_libs=no
+ build_old_libs=yes
+ fi
+ else
+ # Don't allow undefined symbols.
+ allow_undefined_flag="$no_undefined_flag"
+ fi
+
+ fi
+
+ func_generate_dlsyms "$libname" "$libname" "yes"
+ libobjs="$libobjs $symfileobj"
+ test "X$libobjs" = "X " && libobjs=
+
+ if test "$mode" != relink; then
+ # Remove our outputs, but don't remove object files since they
+ # may have been created when compiling PIC objects.
+ removelist=
+ tempremovelist=`$ECHO "$output_objdir/*"`
+ for p in $tempremovelist; do
+ case $p in
+ *.$objext | *.gcno)
+ ;;
+ $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
+ if test "X$precious_files_regex" != "X"; then
+ if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
+ then
+ continue
+ fi
+ fi
+ removelist="$removelist $p"
+ ;;
+ *) ;;
+ esac
+ done
+ test -n "$removelist" && \
+ func_show_eval "${RM}r \$removelist"
+ fi
+
+ # Now set the variables for building old libraries.
+ if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
+ oldlibs="$oldlibs $output_objdir/$libname.$libext"
+
+ # Transform .lo files to .o files.
+ oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
+ fi
+
+ # Eliminate all temporary directories.
+ #for path in $notinst_path; do
+ # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"`
+ # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"`
+ # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"`
+ #done
+
+ if test -n "$xrpath"; then
+ # If the user specified any rpath flags, then add them.
+ temp_xrpath=
+ for libdir in $xrpath; do
+ temp_xrpath="$temp_xrpath -R$libdir"
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir" ;;
+ esac
+ done
+ if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
+ dependency_libs="$temp_xrpath $dependency_libs"
+ fi
+ fi
+
+ # Make sure dlfiles contains only unique files that won't be dlpreopened
+ old_dlfiles="$dlfiles"
+ dlfiles=
+ for lib in $old_dlfiles; do
+ case " $dlprefiles $dlfiles " in
+ *" $lib "*) ;;
+ *) dlfiles="$dlfiles $lib" ;;
+ esac
+ done
+
+ # Make sure dlprefiles contains only unique files
+ old_dlprefiles="$dlprefiles"
+ dlprefiles=
+ for lib in $old_dlprefiles; do
+ case "$dlprefiles " in
+ *" $lib "*) ;;
+ *) dlprefiles="$dlprefiles $lib" ;;
+ esac
+ done
+
+ if test "$build_libtool_libs" = yes; then
+ if test -n "$rpath"; then
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)
+ # these systems don't actually have a c library (as such)!
+ ;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C library is in the System framework
+ deplibs="$deplibs System.ltframework"
+ ;;
+ *-*-netbsd*)
+ # Don't link with libc until the a.out ld.so is fixed.
+ ;;
+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+ # Do not include libc due to us having libc/libc_r.
+ ;;
+ *-*-sco3.2v5* | *-*-sco5v6*)
+ # Causes problems with __ctype
+ ;;
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
+ # Compiler inserts libc in the correct place for threads to work
+ ;;
+ *)
+ # Add libc to deplibs on all other systems if necessary.
+ if test "$build_libtool_need_lc" = "yes"; then
+ deplibs="$deplibs -lc"
+ fi
+ ;;
+ esac
+ fi
+
+ # Transform deplibs into only deplibs that can be linked in shared.
+ name_save=$name
+ libname_save=$libname
+ release_save=$release
+ versuffix_save=$versuffix
+ major_save=$major
+ # I'm not sure if I'm treating the release correctly. I think
+ # release should show up in the -l (ie -lgmp5) so we don't want to
+ # add it in twice. Is that correct?
+ release=""
+ versuffix=""
+ major=""
+ newdeplibs=
+ droppeddeps=no
+ case $deplibs_check_method in
+ pass_all)
+ # Don't check for shared/static. Everything works.
+ # This might be a little naive. We might want to check
+ # whether the library exists or not. But this is on
+ # osf3 & osf4 and I'm not really sure... Just
+ # implementing what was already the behavior.
+ newdeplibs=$deplibs
+ ;;
+ test_compile)
+ # This code stresses the "libraries are programs" paradigm to its
+ # limits. Maybe even breaks it. We compile a program, linking it
+ # against the deplibs as a proxy for the library. Then we can check
+ # whether they linked in statically or dynamically with ldd.
+ $opt_dry_run || $RM conftest.c
+ cat > conftest.c <<EOF
+ int main() { return 0; }
+EOF
+ $opt_dry_run || $RM conftest
+ if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
+ ldd_output=`ldd conftest`
+ for i in $deplibs; do
+ case $i in
+ -l*)
+ func_stripname -l '' "$i"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $i "*)
+ newdeplibs="$newdeplibs $i"
+ i=""
+ ;;
+ esac
+ fi
+ if test -n "$i" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
+ set dummy $deplib_matches; shift
+ deplib_match=$1
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+ newdeplibs="$newdeplibs $i"
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: dynamic linker does not accept needed library $i."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which I believe you do not have"
+ $ECHO "*** because a test_compile did reveal that the linker did not use it for"
+ $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."
+ fi
+ fi
+ ;;
+ *)
+ newdeplibs="$newdeplibs $i"
+ ;;
+ esac
+ done
+ else
+ # Error occurred in the first compile. Let's try to salvage
+ # the situation: Compile a separate program for each library.
+ for i in $deplibs; do
+ case $i in
+ -l*)
+ func_stripname -l '' "$i"
+ name=$func_stripname_result
+ $opt_dry_run || $RM conftest
+ if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
+ ldd_output=`ldd conftest`
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $i "*)
+ newdeplibs="$newdeplibs $i"
+ i=""
+ ;;
+ esac
+ fi
+ if test -n "$i" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
+ set dummy $deplib_matches; shift
+ deplib_match=$1
+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+ newdeplibs="$newdeplibs $i"
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: dynamic linker does not accept needed library $i."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because a test_compile did reveal that the linker did not use this one"
+ $ECHO "*** as a dynamic dependency that programs can get resolved with at runtime."
+ fi
+ fi
+ else
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning! Library $i is needed by this library but I was not able to"
+ $ECHO "*** make it link in! You will probably need to install it or some"
+ $ECHO "*** library that it depends on before this library will be fully"
+ $ECHO "*** functional. Installing it before continuing would be even better."
+ fi
+ ;;
+ *)
+ newdeplibs="$newdeplibs $i"
+ ;;
+ esac
+ done
+ fi
+ ;;
+ file_magic*)
+ set dummy $deplibs_check_method; shift
+ file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ for a_deplib in $deplibs; do
+ case $a_deplib in
+ -l*)
+ func_stripname -l '' "$a_deplib"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $a_deplib "*)
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ ;;
+ esac
+ fi
+ if test -n "$a_deplib" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
+ for potent_lib in $potential_libs; do
+ # Follow soft links.
+ if ls -lLd "$potent_lib" 2>/dev/null |
+ $GREP " -> " >/dev/null; then
+ continue
+ fi
+ # The statement above tries to avoid entering an
+ # endless loop below, in case of cyclic links.
+ # We might still enter an endless loop, since a link
+ # loop can be closed while we follow links,
+ # but so what?
+ potlib="$potent_lib"
+ while test -h "$potlib" 2>/dev/null; do
+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
+ case $potliblink in
+ [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
+ *) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
+ esac
+ done
+ if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
+ $SED -e 10q |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ break 2
+ fi
+ done
+ done
+ fi
+ if test -n "$a_deplib" ; then
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because I did check the linker path looking for a file starting"
+ if test -z "$potlib" ; then
+ $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
+ else
+ $ECHO "*** with $libname and none of the candidates passed a file format test"
+ $ECHO "*** using a file magic. Last file checked: $potlib"
+ fi
+ fi
+ ;;
+ *)
+ # Add a -L argument.
+ newdeplibs="$newdeplibs $a_deplib"
+ ;;
+ esac
+ done # Gone through all deplibs.
+ ;;
+ match_pattern*)
+ set dummy $deplibs_check_method; shift
+ match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
+ for a_deplib in $deplibs; do
+ case $a_deplib in
+ -l*)
+ func_stripname -l '' "$a_deplib"
+ name=$func_stripname_result
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ case " $predeps $postdeps " in
+ *" $a_deplib "*)
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ ;;
+ esac
+ fi
+ if test -n "$a_deplib" ; then
+ libname=`eval "\\$ECHO \"$libname_spec\""`
+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
+ for potent_lib in $potential_libs; do
+ potlib="$potent_lib" # see symlink-check above in file_magic test
+ if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \
+ $EGREP "$match_pattern_regex" > /dev/null; then
+ newdeplibs="$newdeplibs $a_deplib"
+ a_deplib=""
+ break 2
+ fi
+ done
+ done
+ fi
+ if test -n "$a_deplib" ; then
+ droppeddeps=yes
+ $ECHO
+ $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
+ $ECHO "*** I have the capability to make that library automatically link in when"
+ $ECHO "*** you link to this library. But I can only do this if you have a"
+ $ECHO "*** shared version of the library, which you do not appear to have"
+ $ECHO "*** because I did check the linker path looking for a file starting"
+ if test -z "$potlib" ; then
+ $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
+ else
+ $ECHO "*** with $libname and none of the candidates passed a file format test"
+ $ECHO "*** using a regex pattern. Last file checked: $potlib"
+ fi
+ fi
+ ;;
+ *)
+ # Add a -L argument.
+ newdeplibs="$newdeplibs $a_deplib"
+ ;;
+ esac
+ done # Gone through all deplibs.
+ ;;
+ none | unknown | *)
+ newdeplibs=""
+ tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \
+ -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'`
+ if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+ for i in $predeps $postdeps ; do
+ # can't use Xsed below, because $i might contain '/'
+ tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`
+ done
+ fi
+ if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' |
+ $GREP . >/dev/null; then
+ $ECHO
+ if test "X$deplibs_check_method" = "Xnone"; then
+ $ECHO "*** Warning: inter-library dependencies are not supported in this platform."
+ else
+ $ECHO "*** Warning: inter-library dependencies are not known to be supported."
+ fi
+ $ECHO "*** All declared inter-library dependencies are being dropped."
+ droppeddeps=yes
+ fi
+ ;;
+ esac
+ versuffix=$versuffix_save
+ major=$major_save
+ release=$release_save
+ libname=$libname_save
+ name=$name_save
+
+ case $host in
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # On Rhapsody replace the C library with the System framework
+ newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ ;;
+ esac
+
+ if test "$droppeddeps" = yes; then
+ if test "$module" = yes; then
+ $ECHO
+ $ECHO "*** Warning: libtool could not satisfy all declared inter-library"
+ $ECHO "*** dependencies of module $libname. Therefore, libtool will create"
+ $ECHO "*** a static module, that should work as long as the dlopening"
+ $ECHO "*** application is linked with the -dlopen flag."
+ if test -z "$global_symbol_pipe"; then
+ $ECHO
+ $ECHO "*** However, this would only work if libtool was able to extract symbol"
+ $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
+ $ECHO "*** not find such a program. So, this module is probably useless."
+ $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
+ fi
+ if test "$build_old_libs" = no; then
+ oldlibs="$output_objdir/$libname.$libext"
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ else
+ $ECHO "*** The inter-library dependencies that have been dropped here will be"
+ $ECHO "*** automatically added whenever a program is linked with this library"
+ $ECHO "*** or is declared to -dlopen it."
+
+ if test "$allow_undefined" = no; then
+ $ECHO
+ $ECHO "*** Since this library must not contain undefined symbols,"
+ $ECHO "*** because either the platform does not support them or"
+ $ECHO "*** it was explicitly requested with -no-undefined,"
+ $ECHO "*** libtool will only create a static version of it."
+ if test "$build_old_libs" = no; then
+ oldlibs="$output_objdir/$libname.$libext"
+ build_libtool_libs=module
+ build_old_libs=yes
+ else
+ build_libtool_libs=no
+ fi
+ fi
+ fi
+ fi
+ # Done checking deplibs!
+ deplibs=$newdeplibs
+ fi
+ # Time to change all our "foo.ltframework" stuff back to "-framework foo"
+ case $host in
+ *-*-darwin*)
+ newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ deplibs=`$ECHO "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ ;;
+ esac
+
+ # move library search paths that coincide with paths to not yet
+ # installed libraries to the beginning of the library search list
+ new_libs=
+ for path in $notinst_path; do
+ case " $new_libs " in
+ *" -L$path/$objdir "*) ;;
+ *)
+ case " $deplibs " in
+ *" -L$path/$objdir "*)
+ new_libs="$new_libs -L$path/$objdir" ;;
+ esac
+ ;;
+ esac
+ done
+ for deplib in $deplibs; do
+ case $deplib in
+ -L*)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ done
+ deplibs="$new_libs"
+
+ # All the library-specific variables (install_libdir is set above).
+ library_names=
+ old_library=
+ dlname=
+
+ # Test again, we may have decided not to build it any more
+ if test "$build_libtool_libs" = yes; then
+ if test "$hardcode_into_libs" = yes; then
+ # Hardcode the library paths
+ hardcode_libdirs=
+ dep_rpath=
+ rpath="$finalize_rpath"
+ test "$mode" != relink && rpath="$compile_rpath$rpath"
+ for libdir in $rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ dep_rpath="$dep_rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$perm_rpath " in
+ *" $libdir "*) ;;
+ *) perm_rpath="$perm_rpath $libdir" ;;
+ esac
+ fi
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ if test -n "$hardcode_libdir_flag_spec_ld"; then
+ eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
+ else
+ eval dep_rpath=\"$hardcode_libdir_flag_spec\"
+ fi
+ fi
+ if test -n "$runpath_var" && test -n "$perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
+ fi
+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
+ fi
+
+ shlibpath="$finalize_shlibpath"
+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
+ if test -n "$shlibpath"; then
+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
+ fi
+
+ # Get the real and link names of the library.
+ eval shared_ext=\"$shrext_cmds\"
+ eval library_names=\"$library_names_spec\"
+ set dummy $library_names
+ shift
+ realname="$1"
+ shift
+
+ if test -n "$soname_spec"; then
+ eval soname=\"$soname_spec\"
+ else
+ soname="$realname"
+ fi
+ if test -z "$dlname"; then
+ dlname=$soname
+ fi
+
+ lib="$output_objdir/$realname"
+ linknames=
+ for link
+ do
+ linknames="$linknames $link"
+ done
+
+ # Use standard objects if they are pic
+ test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ test "X$libobjs" = "X " && libobjs=
+
+ delfiles=
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
+ export_symbols="$output_objdir/$libname.uexp"
+ delfiles="$delfiles $export_symbols"
+ fi
+
+ orig_export_symbols=
+ case $host_os in
+ cygwin* | mingw* | cegcc*)
+ if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
+ # exporting using user supplied symfile
+ if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
+ # and it's NOT already a .def file. Must figure out
+ # which of the given symbols are data symbols and tag
+ # them as such. So, trigger use of export_symbols_cmds.
+ # export_symbols gets reassigned inside the "prepare
+ # the list of exported symbols" if statement, so the
+ # include_expsyms logic still works.
+ orig_export_symbols="$export_symbols"
+ export_symbols=
+ always_export_symbols=yes
+ fi
+ fi
+ ;;
+ esac
+
+ # Prepare the list of exported symbols
+ if test -z "$export_symbols"; then
+ if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
+ func_verbose "generating symbol list for \`$libname.la'"
+ export_symbols="$output_objdir/$libname.exp"
+ $opt_dry_run || $RM $export_symbols
+ cmds=$export_symbols_cmds
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ eval cmd=\"$cmd\"
+ func_len " $cmd"
+ len=$func_len_result
+ if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ func_show_eval "$cmd" 'exit $?'
+ skipped_export=false
+ else
+ # The command line is too long to execute in one step.
+ func_verbose "using reloadable object file for export list..."
+ skipped_export=:
+ # Break out early, otherwise skipped_export may be
+ # set to false by a later but shorter cmd.
+ break
+ fi
+ done
+ IFS="$save_ifs"
+ if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
+ func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
+ func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
+ fi
+ fi
+ fi
+
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ tmp_export_symbols="$export_symbols"
+ test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+ $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
+ fi
+
+ if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
+ # The given exports_symbols file has to be filtered, so filter it.
+ func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+ # FIXME: $output_objdir/$libname.filter potentially contains lots of
+ # 's' commands which not all seds can handle. GNU sed should be fine
+ # though. Also, the filter scales superlinearly with the number of
+ # global variables. join(1) would be nice here, but unfortunately
+ # isn't a blessed tool.
+ $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
+ delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
+ export_symbols=$output_objdir/$libname.def
+ $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
+ fi
+
+ tmp_deplibs=
+ for test_deplib in $deplibs; do
+ case " $convenience " in
+ *" $test_deplib "*) ;;
+ *)
+ tmp_deplibs="$tmp_deplibs $test_deplib"
+ ;;
+ esac
+ done
+ deplibs="$tmp_deplibs"
+
+ if test -n "$convenience"; then
+ if test -n "$whole_archive_flag_spec" &&
+ test "$compiler_needs_object" = yes &&
+ test -z "$libobjs"; then
+ # extract the archives, so we have objects to list.
+ # TODO: could optimize this to just extract one archive.
+ whole_archive_flag_spec=
+ fi
+ if test -n "$whole_archive_flag_spec"; then
+ save_libobjs=$libobjs
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
+ test "X$libobjs" = "X " && libobjs=
+ else
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $convenience
+ libobjs="$libobjs $func_extract_archives_result"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+ fi
+
+ if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
+ eval flag=\"$thread_safe_flag_spec\"
+ linker_flags="$linker_flags $flag"
+ fi
+
+ # Make a backup of the uninstalled library when relinking
+ if test "$mode" = relink; then
+ $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
+ fi
+
+ # Do each of the archive commands.
+ if test "$module" = yes && test -n "$module_cmds" ; then
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
+ eval test_cmds=\"$module_expsym_cmds\"
+ cmds=$module_expsym_cmds
+ else
+ eval test_cmds=\"$module_cmds\"
+ cmds=$module_cmds
+ fi
+ else
+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
+ eval test_cmds=\"$archive_expsym_cmds\"
+ cmds=$archive_expsym_cmds
+ else
+ eval test_cmds=\"$archive_cmds\"
+ cmds=$archive_cmds
+ fi
+ fi
+
+ if test "X$skipped_export" != "X:" &&
+ func_len " $test_cmds" &&
+ len=$func_len_result &&
+ test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ :
+ else
+ # The command line is too long to link in one step, link piecewise
+ # or, if using GNU ld and skipped_export is not :, use a linker
+ # script.
+
+ # Save the value of $output and $libobjs because we want to
+ # use them later. If we have whole_archive_flag_spec, we
+ # want to use save_libobjs as it was before
+ # whole_archive_flag_spec was expanded, because we can't
+ # assume the linker understands whole_archive_flag_spec.
+ # This may have to be revisited, in case too many
+ # convenience libraries get linked in and end up exceeding
+ # the spec.
+ if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
+ save_libobjs=$libobjs
+ fi
+ save_output=$output
+ output_la=`$ECHO "X$output" | $Xsed -e "$basename"`
+
+ # Clear the reloadable object creation command queue and
+ # initialize k to one.
+ test_cmds=
+ concat_cmds=
+ objlist=
+ last_robj=
+ k=1
+
+ if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
+ output=${output_objdir}/${output_la}.lnkscript
+ func_verbose "creating GNU ld script: $output"
+ $ECHO 'INPUT (' > $output
+ for obj in $save_libobjs
+ do
+ $ECHO "$obj" >> $output
+ done
+ $ECHO ')' >> $output
+ delfiles="$delfiles $output"
+ elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
+ output=${output_objdir}/${output_la}.lnk
+ func_verbose "creating linker input file list: $output"
+ : > $output
+ set x $save_libobjs
+ shift
+ firstobj=
+ if test "$compiler_needs_object" = yes; then
+ firstobj="$1 "
+ shift
+ fi
+ for obj
+ do
+ $ECHO "$obj" >> $output
+ done
+ delfiles="$delfiles $output"
+ output=$firstobj\"$file_list_spec$output\"
+ else
+ if test -n "$save_libobjs"; then
+ func_verbose "creating reloadable object files..."
+ output=$output_objdir/$output_la-${k}.$objext
+ eval test_cmds=\"$reload_cmds\"
+ func_len " $test_cmds"
+ len0=$func_len_result
+ len=$len0
+
+ # Loop over the list of objects to be linked.
+ for obj in $save_libobjs
+ do
+ func_len " $obj"
+ func_arith $len + $func_len_result
+ len=$func_arith_result
+ if test "X$objlist" = X ||
+ test "$len" -lt "$max_cmd_len"; then
+ func_append objlist " $obj"
+ else
+ # The command $test_cmds is almost too long, add a
+ # command to the queue.
+ if test "$k" -eq 1 ; then
+ # The first file doesn't have a previous command to add.
+ eval concat_cmds=\"$reload_cmds $objlist $last_robj\"
+ else
+ # All subsequent reloadable object files will link in
+ # the last one created.
+ eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\"
+ fi
+ last_robj=$output_objdir/$output_la-${k}.$objext
+ func_arith $k + 1
+ k=$func_arith_result
+ output=$output_objdir/$output_la-${k}.$objext
+ objlist=$obj
+ func_len " $last_robj"
+ func_arith $len0 + $func_len_result
+ len=$func_arith_result
+ fi
+ done
+ # Handle the remaining objects by creating one last
+ # reloadable object file. All subsequent reloadable object
+ # files will link in the last one created.
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
+ if test -n "$last_robj"; then
+ eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
+ fi
+ delfiles="$delfiles $output"
+
+ else
+ output=
+ fi
+
+ if ${skipped_export-false}; then
+ func_verbose "generating symbol list for \`$libname.la'"
+ export_symbols="$output_objdir/$libname.exp"
+ $opt_dry_run || $RM $export_symbols
+ libobjs=$output
+ # Append the command to create the export file.
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
+ if test -n "$last_robj"; then
+ eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
+ fi
+ fi
+
+ test -n "$save_libobjs" &&
+ func_verbose "creating a temporary reloadable object file: $output"
+
+ # Loop through the commands generated above and execute them.
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $concat_cmds; do
+ IFS="$save_ifs"
+ $opt_silent || {
+ func_quote_for_expand "$cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ $opt_dry_run || eval "$cmd" || {
+ lt_exit=$?
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ ( cd "$output_objdir" && \
+ $RM "${realname}T" && \
+ $MV "${realname}U" "$realname" )
+ fi
+
+ exit $lt_exit
+ }
+ done
+ IFS="$save_ifs"
+
+ if test -n "$export_symbols_regex" && ${skipped_export-false}; then
+ func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
+ func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
+ fi
+ fi
+
+ if ${skipped_export-false}; then
+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
+ tmp_export_symbols="$export_symbols"
+ test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+ $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
+ fi
+
+ if test -n "$orig_export_symbols"; then
+ # The given exports_symbols file has to be filtered, so filter it.
+ func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+ # FIXME: $output_objdir/$libname.filter potentially contains lots of
+ # 's' commands which not all seds can handle. GNU sed should be fine
+ # though. Also, the filter scales superlinearly with the number of
+ # global variables. join(1) would be nice here, but unfortunately
+ # isn't a blessed tool.
+ $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
+ delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
+ export_symbols=$output_objdir/$libname.def
+ $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
+ fi
+ fi
+
+ libobjs=$output
+ # Restore the value of output.
+ output=$save_output
+
+ if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+ # Expand the library linking commands again to reset the
+ # value of $libobjs for piecewise linking.
+
+ # Do each of the archive commands.
+ if test "$module" = yes && test -n "$module_cmds" ; then
+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
+ cmds=$module_expsym_cmds
+ else
+ cmds=$module_cmds
+ fi
+ else
+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
+ cmds=$archive_expsym_cmds
+ else
+ cmds=$archive_cmds
+ fi
+ fi
+ fi
+
+ if test -n "$delfiles"; then
+ # Append the command to remove temporary files to $cmds.
+ eval cmds=\"\$cmds~\$RM $delfiles\"
+ fi
+
+ # Add any objects from preloaded convenience libraries
+ if test -n "$dlprefiles"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $dlprefiles
+ libobjs="$libobjs $func_extract_archives_result"
+ test "X$libobjs" = "X " && libobjs=
+ fi
+
+ save_ifs="$IFS"; IFS='~'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ eval cmd=\"$cmd\"
+ $opt_silent || {
+ func_quote_for_expand "$cmd"
+ eval "func_echo $func_quote_for_expand_result"
+ }
+ $opt_dry_run || eval "$cmd" || {
+ lt_exit=$?
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ ( cd "$output_objdir" && \
+ $RM "${realname}T" && \
+ $MV "${realname}U" "$realname" )
+ fi
+
+ exit $lt_exit
+ }
+ done
+ IFS="$save_ifs"
+
+ # Restore the uninstalled library and exit
+ if test "$mode" = relink; then
+ $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
+
+ if test -n "$convenience"; then
+ if test -z "$whole_archive_flag_spec"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+ fi
+
+ exit $EXIT_SUCCESS
+ fi
+
+ # Create links to the real library.
+ for linkname in $linknames; do
+ if test "$realname" != "$linkname"; then
+ func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
+ fi
+ done
+
+ # If -module or -export-dynamic was specified, set the dlname.
+ if test "$module" = yes || test "$export_dynamic" = yes; then
+ # On all known operating systems, these are identical.
+ dlname="$soname"
+ fi
+ fi
+ ;;
+
+ obj)
+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+ func_warning "\`-dlopen' is ignored for objects"
+ fi
+
+ case " $deplibs" in
+ *\ -l* | *\ -L*)
+ func_warning "\`-l' and \`-L' are ignored for objects" ;;
+ esac
+
+ test -n "$rpath" && \
+ func_warning "\`-rpath' is ignored for objects"
+
+ test -n "$xrpath" && \
+ func_warning "\`-R' is ignored for objects"
+
+ test -n "$vinfo" && \
+ func_warning "\`-version-info' is ignored for objects"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for objects"
+
+ case $output in
+ *.lo)
+ test -n "$objs$old_deplibs" && \
+ func_fatal_error "cannot build library object \`$output' from non-libtool objects"
+
+ libobj=$output
+ func_lo2o "$libobj"
+ obj=$func_lo2o_result
+ ;;
+ *)
+ libobj=
+ obj="$output"
+ ;;
+ esac
+
+ # Delete the old objects.
+ $opt_dry_run || $RM $obj $libobj
+
+ # Objects from convenience libraries. This assumes
+ # single-version convenience libraries. Whenever we create
+ # different ones for PIC/non-PIC, this we'll have to duplicate
+ # the extraction.
+ reload_conv_objs=
+ gentop=
+ # reload_cmds runs $LD directly, so let us get rid of
+ # -Wl from whole_archive_flag_spec and hope we can get by with
+ # turning comma into space..
+ wl=
+
+ if test -n "$convenience"; then
+ if test -n "$whole_archive_flag_spec"; then
+ eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
+ reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
+ else
+ gentop="$output_objdir/${obj}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $convenience
+ reload_conv_objs="$reload_objs $func_extract_archives_result"
+ fi
+ fi
+
+ # Create the old-style object.
+ reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
+
+ output="$obj"
+ func_execute_cmds "$reload_cmds" 'exit $?'
+
+ # Exit if we aren't doing a library object file.
+ if test -z "$libobj"; then
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ exit $EXIT_SUCCESS
+ fi
+
+ if test "$build_libtool_libs" != yes; then
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ # Create an invalid libtool object if no PIC, so that we don't
+ # accidentally link it into a program.
+ # $show "echo timestamp > $libobj"
+ # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
+ exit $EXIT_SUCCESS
+ fi
+
+ if test -n "$pic_flag" || test "$pic_mode" != default; then
+ # Only do commands if we really have different PIC objects.
+ reload_objs="$libobjs $reload_conv_objs"
+ output="$libobj"
+ func_execute_cmds "$reload_cmds" 'exit $?'
+ fi
+
+ if test -n "$gentop"; then
+ func_show_eval '${RM}r "$gentop"'
+ fi
+
+ exit $EXIT_SUCCESS
+ ;;
+
+ prog)
+ case $host in
+ *cygwin*) func_stripname '' '.exe' "$output"
+ output=$func_stripname_result.exe;;
+ esac
+ test -n "$vinfo" && \
+ func_warning "\`-version-info' is ignored for programs"
+
+ test -n "$release" && \
+ func_warning "\`-release' is ignored for programs"
+
+ test "$preload" = yes \
+ && test "$dlopen_support" = unknown \
+ && test "$dlopen_self" = unknown \
+ && test "$dlopen_self_static" = unknown && \
+ func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
+
+ case $host in
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # On Rhapsody replace the C library is the System framework
+ compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
+ ;;
+ esac
+
+ case $host in
+ *-*-darwin*)
+ # Don't allow lazy linking, it breaks C++ global constructors
+ # But is supposedly fixed on 10.4 or later (yay!).
+ if test "$tagname" = CXX ; then
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
+ 10.[0123])
+ compile_command="$compile_command ${wl}-bind_at_load"
+ finalize_command="$finalize_command ${wl}-bind_at_load"
+ ;;
+ esac
+ fi
+ # Time to change all our "foo.ltframework" stuff back to "-framework foo"
+ compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
+ ;;
+ esac
+
+
+ # move library search paths that coincide with paths to not yet
+ # installed libraries to the beginning of the library search list
+ new_libs=
+ for path in $notinst_path; do
+ case " $new_libs " in
+ *" -L$path/$objdir "*) ;;
+ *)
+ case " $compile_deplibs " in
+ *" -L$path/$objdir "*)
+ new_libs="$new_libs -L$path/$objdir" ;;
+ esac
+ ;;
+ esac
+ done
+ for deplib in $compile_deplibs; do
+ case $deplib in
+ -L*)
+ case " $new_libs " in
+ *" $deplib "*) ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ ;;
+ *) new_libs="$new_libs $deplib" ;;
+ esac
+ done
+ compile_deplibs="$new_libs"
+
+
+ compile_command="$compile_command $compile_deplibs"
+ finalize_command="$finalize_command $finalize_deplibs"
+
+ if test -n "$rpath$xrpath"; then
+ # If the user specified any rpath flags, then add them.
+ for libdir in $rpath $xrpath; do
+ # This is the magic to use -rpath.
+ case "$finalize_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_rpath="$finalize_rpath $libdir" ;;
+ esac
+ done
+ fi
+
+ # Now hardcode the library paths
+ rpath=
+ hardcode_libdirs=
+ for libdir in $compile_rpath $finalize_rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ rpath="$rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$perm_rpath " in
+ *" $libdir "*) ;;
+ *) perm_rpath="$perm_rpath $libdir" ;;
+ esac
+ fi
+ case $host in
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
+ testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
+ case :$dllsearchpath: in
+ *":$libdir:"*) ;;
+ ::) dllsearchpath=$libdir;;
+ *) dllsearchpath="$dllsearchpath:$libdir";;
+ esac
+ case :$dllsearchpath: in
+ *":$testbindir:"*) ;;
+ ::) dllsearchpath=$testbindir;;
+ *) dllsearchpath="$dllsearchpath:$testbindir";;
+ esac
+ ;;
+ esac
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ eval rpath=\" $hardcode_libdir_flag_spec\"
+ fi
+ compile_rpath="$rpath"
+
+ rpath=
+ hardcode_libdirs=
+ for libdir in $finalize_rpath; do
+ if test -n "$hardcode_libdir_flag_spec"; then
+ if test -n "$hardcode_libdir_separator"; then
+ if test -z "$hardcode_libdirs"; then
+ hardcode_libdirs="$libdir"
+ else
+ # Just accumulate the unique libdirs.
+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+ ;;
+ *)
+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+ ;;
+ esac
+ fi
+ else
+ eval flag=\"$hardcode_libdir_flag_spec\"
+ rpath="$rpath $flag"
+ fi
+ elif test -n "$runpath_var"; then
+ case "$finalize_perm_rpath " in
+ *" $libdir "*) ;;
+ *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
+ esac
+ fi
+ done
+ # Substitute the hardcoded libdirs into the rpath.
+ if test -n "$hardcode_libdir_separator" &&
+ test -n "$hardcode_libdirs"; then
+ libdir="$hardcode_libdirs"
+ eval rpath=\" $hardcode_libdir_flag_spec\"
+ fi
+ finalize_rpath="$rpath"
+
+ if test -n "$libobjs" && test "$build_old_libs" = yes; then
+ # Transform all the library objects into standard objects.
+ compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+ fi
+
+ func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
+
+ # template prelinking step
+ if test -n "$prelink_cmds"; then
+ func_execute_cmds "$prelink_cmds" 'exit $?'
+ fi
+
+ wrappers_required=yes
+ case $host in
+ *cygwin* | *mingw* )
+ if test "$build_libtool_libs" != yes; then
+ wrappers_required=no
+ fi
+ ;;
+ *cegcc)
+ # Disable wrappers for cegcc, we are cross compiling anyway.
+ wrappers_required=no
+ ;;
+ *)
+ if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
+ wrappers_required=no
+ fi
+ ;;
+ esac
+ if test "$wrappers_required" = no; then
+ # Replace the output file specification.
+ compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ link_command="$compile_command$compile_rpath"
+
+ # We have no uninstalled library dependencies, so finalize right now.
+ exit_status=0
+ func_show_eval "$link_command" 'exit_status=$?'
+
+ # Delete the generated files.
+ if test -f "$output_objdir/${outputname}S.${objext}"; then
+ func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
+ fi
+
+ exit $exit_status
+ fi
+
+ if test -n "$compile_shlibpath$finalize_shlibpath"; then
+ compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
+ fi
+ if test -n "$finalize_shlibpath"; then
+ finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
+ fi
+
+ compile_var=
+ finalize_var=
+ if test -n "$runpath_var"; then
+ if test -n "$perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
+ fi
+ if test -n "$finalize_perm_rpath"; then
+ # We should set the runpath_var.
+ rpath=
+ for dir in $finalize_perm_rpath; do
+ rpath="$rpath$dir:"
+ done
+ finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
+ fi
+ fi
+
+ if test "$no_install" = yes; then
+ # We don't need to create a wrapper script.
+ link_command="$compile_var$compile_command$compile_rpath"
+ # Replace the output file specification.
+ link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+ # Delete the old output file.
+ $opt_dry_run || $RM $output
+ # Link the executable and exit
+ func_show_eval "$link_command" 'exit $?'
+ exit $EXIT_SUCCESS
+ fi
+
+ if test "$hardcode_action" = relink; then
+ # Fast installation is not supported
+ link_command="$compile_var$compile_command$compile_rpath"
+ relink_command="$finalize_var$finalize_command$finalize_rpath"
+
+ func_warning "this platform does not like uninstalled shared libraries"
+ func_warning "\`$output' will be relinked during installation"
+ else
+ if test "$fast_install" != no; then
+ link_command="$finalize_var$compile_command$finalize_rpath"
+ if test "$fast_install" = yes; then
+ relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+ else
+ # fast_install is set to needless
+ relink_command=
+ fi
+ else
+ link_command="$compile_var$compile_command$compile_rpath"
+ relink_command="$finalize_var$finalize_command$finalize_rpath"
+ fi
+ fi
+
+ # Replace the output file specification.
+ link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
+
+ # Delete the old output files.
+ $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
+
+ func_show_eval "$link_command" 'exit $?'
+
+ # Now create the wrapper script.
+ func_verbose "creating $output"
+
+ # Quote the relink command for shipping.
+ if test -n "$relink_command"; then
+ # Preserve any variables that may affect compiler behavior
+ for var in $variables_saved_for_relink; do
+ if eval test -z \"\${$var+set}\"; then
+ relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
+ elif eval var_value=\$$var; test -z "$var_value"; then
+ relink_command="$var=; export $var; $relink_command"
+ else
+ func_quote_for_eval "$var_value"
+ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+ fi
+ done
+ relink_command="(cd `pwd`; $relink_command)"
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ fi
+
+ # Quote $ECHO for shipping.
+ if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then
+ case $progpath in
+ [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
+ *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
+ esac
+ qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"`
+ else
+ qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"`
+ fi
+
+ # Only actually do things if not in dry run mode.
+ $opt_dry_run || {
+ # win32 will think the script is a binary if it has
+ # a .exe suffix, so we strip it off here.
+ case $output in
+ *.exe) func_stripname '' '.exe' "$output"
+ output=$func_stripname_result ;;
+ esac
+ # test for cygwin because mv fails w/o .exe extensions
+ case $host in
+ *cygwin*)
+ exeext=.exe
+ func_stripname '' '.exe' "$outputname"
+ outputname=$func_stripname_result ;;
+ *) exeext= ;;
+ esac
+ case $host in
+ *cygwin* | *mingw* )
+ func_dirname_and_basename "$output" "" "."
+ output_name=$func_basename_result
+ output_path=$func_dirname_result
+ cwrappersource="$output_path/$objdir/lt-$output_name.c"
+ cwrapper="$output_path/$output_name.exe"
+ $RM $cwrappersource $cwrapper
+ trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
+
+ func_emit_cwrapperexe_src > $cwrappersource
+
+ # The wrapper executable is built using the $host compiler,
+ # because it contains $host paths and files. If cross-
+ # compiling, it, like the target executable, must be
+ # executed on the $host or under an emulation environment.
+ $opt_dry_run || {
+ $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
+ $STRIP $cwrapper
+ }
+
+ # Now, create the wrapper script for func_source use:
+ func_ltwrapper_scriptname $cwrapper
+ $RM $func_ltwrapper_scriptname_result
+ trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
+ $opt_dry_run || {
+ # note: this script will not be executed, so do not chmod.
+ if test "x$build" = "x$host" ; then
+ $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
+ else
+ func_emit_wrapper no > $func_ltwrapper_scriptname_result
+ fi
+ }
+ ;;
+ * )
+ $RM $output
+ trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
+
+ func_emit_wrapper no > $output
+ chmod +x $output
+ ;;
+ esac
+ }
+ exit $EXIT_SUCCESS
+ ;;
+ esac
+
+ # See if we need to build an old-fashioned archive.
+ for oldlib in $oldlibs; do
+
+ if test "$build_libtool_libs" = convenience; then
+ oldobjs="$libobjs_save $symfileobj"
+ addlibs="$convenience"
+ build_libtool_libs=no
+ else
+ if test "$build_libtool_libs" = module; then
+ oldobjs="$libobjs_save"
+ build_libtool_libs=no
+ else
+ oldobjs="$old_deplibs $non_pic_objects"
+ if test "$preload" = yes && test -f "$symfileobj"; then
+ oldobjs="$oldobjs $symfileobj"
+ fi
+ fi
+ addlibs="$old_convenience"
+ fi
+
+ if test -n "$addlibs"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $addlibs
+ oldobjs="$oldobjs $func_extract_archives_result"
+ fi
+
+ # Do each command in the archive commands.
+ if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
+ cmds=$old_archive_from_new_cmds
+ else
+
+ # Add any objects from preloaded convenience libraries
+ if test -n "$dlprefiles"; then
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+
+ func_extract_archives $gentop $dlprefiles
+ oldobjs="$oldobjs $func_extract_archives_result"
+ fi
+
+ # POSIX demands no paths to be encoded in archives. We have
+ # to avoid creating archives with duplicate basenames if we
+ # might have to extract them afterwards, e.g., when creating a
+ # static archive out of a convenience library, or when linking
+ # the entirety of a libtool archive into another (currently
+ # not supported by libtool).
+ if (for obj in $oldobjs
+ do
+ func_basename "$obj"
+ $ECHO "$func_basename_result"
+ done | sort | sort -uc >/dev/null 2>&1); then
+ :
+ else
+ $ECHO "copying selected object files to avoid basename conflicts..."
+ gentop="$output_objdir/${outputname}x"
+ generated="$generated $gentop"
+ func_mkdir_p "$gentop"
+ save_oldobjs=$oldobjs
+ oldobjs=
+ counter=1
+ for obj in $save_oldobjs
+ do
+ func_basename "$obj"
+ objbase="$func_basename_result"
+ case " $oldobjs " in
+ " ") oldobjs=$obj ;;
+ *[\ /]"$objbase "*)
+ while :; do
+ # Make sure we don't pick an alternate name that also
+ # overlaps.
+ newobj=lt$counter-$objbase
+ func_arith $counter + 1
+ counter=$func_arith_result
+ case " $oldobjs " in
+ *[\ /]"$newobj "*) ;;
+ *) if test ! -f "$gentop/$newobj"; then break; fi ;;
+ esac
+ done
+ func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
+ oldobjs="$oldobjs $gentop/$newobj"
+ ;;
+ *) oldobjs="$oldobjs $obj" ;;
+ esac
+ done
+ fi
+ eval cmds=\"$old_archive_cmds\"
+
+ func_len " $cmds"
+ len=$func_len_result
+ if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
+ cmds=$old_archive_cmds
+ else
+ # the command line is too long to link in one step, link in parts
+ func_verbose "using piecewise archive linking..."
+ save_RANLIB=$RANLIB
+ RANLIB=:
+ objlist=
+ concat_cmds=
+ save_oldobjs=$oldobjs
+ oldobjs=
+ # Is there a better way of finding the last object in the list?
+ for obj in $save_oldobjs
+ do
+ last_oldobj=$obj
+ done
+ eval test_cmds=\"$old_archive_cmds\"
+ func_len " $test_cmds"
+ len0=$func_len_result
+ len=$len0
+ for obj in $save_oldobjs
+ do
+ func_len " $obj"
+ func_arith $len + $func_len_result
+ len=$func_arith_result
+ func_append objlist " $obj"
+ if test "$len" -lt "$max_cmd_len"; then
+ :
+ else
+ # the above command should be used before it gets too long
+ oldobjs=$objlist
+ if test "$obj" = "$last_oldobj" ; then
+ RANLIB=$save_RANLIB
+ fi
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
+ objlist=
+ len=$len0
+ fi
+ done
+ RANLIB=$save_RANLIB
+ oldobjs=$objlist
+ if test "X$oldobjs" = "X" ; then
+ eval cmds=\"\$concat_cmds\"
+ else
+ eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
+ fi
+ fi
+ fi
+ func_execute_cmds "$cmds" 'exit $?'
+ done
+
+ test -n "$generated" && \
+ func_show_eval "${RM}r$generated"
+
+ # Now create the libtool archive.
+ case $output in
+ *.la)
+ old_library=
+ test "$build_old_libs" = yes && old_library="$libname.$libext"
+ func_verbose "creating $output"
+
+ # Preserve any variables that may affect compiler behavior
+ for var in $variables_saved_for_relink; do
+ if eval test -z \"\${$var+set}\"; then
+ relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
+ elif eval var_value=\$$var; test -z "$var_value"; then
+ relink_command="$var=; export $var; $relink_command"
+ else
+ func_quote_for_eval "$var_value"
+ relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
+ fi
+ done
+ # Quote the link command for shipping.
+ relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
+ relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
+ if test "$hardcode_automatic" = yes ; then
+ relink_command=
+ fi
+
+ # Only create the output if not a dry run.
+ $opt_dry_run || {
+ for installed in no yes; do
+ if test "$installed" = yes; then
+ if test -z "$install_libdir"; then
+ break
+ fi
+ output="$output_objdir/$outputname"i
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
+ case $deplib in
+ *.la)
+ func_basename "$deplib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$deplib' is not a valid libtool archive"
+ newdependency_libs="$newdependency_libs $libdir/$name"
+ ;;
+ *) newdependency_libs="$newdependency_libs $deplib" ;;
+ esac
+ done
+ dependency_libs="$newdependency_libs"
+ newdlfiles=
+
+ for lib in $dlfiles; do
+ case $lib in
+ *.la)
+ func_basename "$lib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$lib' is not a valid libtool archive"
+ newdlfiles="$newdlfiles $libdir/$name"
+ ;;
+ *) newdlfiles="$newdlfiles $lib" ;;
+ esac
+ done
+ dlfiles="$newdlfiles"
+ newdlprefiles=
+ for lib in $dlprefiles; do
+ case $lib in
+ *.la)
+ # Only pass preopened files to the pseudo-archive (for
+ # eventual linking with the app. that links it) if we
+ # didn't already link the preopened objects directly into
+ # the library:
+ func_basename "$lib"
+ name="$func_basename_result"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+ test -z "$libdir" && \
+ func_fatal_error "\`$lib' is not a valid libtool archive"
+ newdlprefiles="$newdlprefiles $libdir/$name"
+ ;;
+ esac
+ done
+ dlprefiles="$newdlprefiles"
+ else
+ newdlfiles=
+ for lib in $dlfiles; do
+ case $lib in
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+ *) abs=`pwd`"/$lib" ;;
+ esac
+ newdlfiles="$newdlfiles $abs"
+ done
+ dlfiles="$newdlfiles"
+ newdlprefiles=
+ for lib in $dlprefiles; do
+ case $lib in
+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+ *) abs=`pwd`"/$lib" ;;
+ esac
+ newdlprefiles="$newdlprefiles $abs"
+ done
+ dlprefiles="$newdlprefiles"
+ fi
+ $RM $output
+ # place dlname in correct position for cygwin
+ tdlname=$dlname
+ case $host,$output,$installed,$module,$dlname in
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+ esac
+ $ECHO > $output "\
+# $outputname - a libtool library file
+# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='$tdlname'
+
+# Names of this library.
+library_names='$library_names'
+
+# The name of the static archive.
+old_library='$old_library'
+
+# Linker flags that can not go in dependency_libs.
+inherited_linker_flags='$new_inherited_linker_flags'
+
+# Libraries that this one depends upon.
+dependency_libs='$dependency_libs'
+
+# Names of additional weak libraries provided by this library
+weak_library_names='$weak_libs'
+
+# Version information for $libname.
+current=$current
+age=$age
+revision=$revision
+
+# Is this an already installed library?
+installed=$installed
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=$module
+
+# Files to dlopen/dlpreopen
+dlopen='$dlfiles'
+dlpreopen='$dlprefiles'
+
+# Directory that this library needs to be installed in:
+libdir='$install_libdir'"
+ if test "$installed" = no && test "$need_relink" = yes; then
+ $ECHO >> $output "\
+relink_command=\"$relink_command\""
+ fi
+ done
+ }
+
+ # Do a symbolic link so that the libtool archive can be found in
+ # LD_LIBRARY_PATH before the program is installed.
+ func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
+ ;;
+ esac
+ exit $EXIT_SUCCESS
+}
+
+{ test "$mode" = link || test "$mode" = relink; } &&
+ func_mode_link ${1+"$@"}
+
+
+# func_mode_uninstall arg...
+func_mode_uninstall ()
+{
+ $opt_debug
+ RM="$nonopt"
+ files=
+ rmforce=
+ exit_status=0
+
+ # This variable tells wrapper scripts just to set variables rather
+ # than running their programs.
+ libtool_install_magic="$magic"
+
+ for arg
+ do
+ case $arg in
+ -f) RM="$RM $arg"; rmforce=yes ;;
+ -*) RM="$RM $arg" ;;
+ *) files="$files $arg" ;;
+ esac
+ done
+
+ test -z "$RM" && \
+ func_fatal_help "you must specify an RM program"
+
+ rmdirs=
+
+ origobjdir="$objdir"
+ for file in $files; do
+ func_dirname "$file" "" "."
+ dir="$func_dirname_result"
+ if test "X$dir" = X.; then
+ objdir="$origobjdir"
+ else
+ objdir="$dir/$origobjdir"
+ fi
+ func_basename "$file"
+ name="$func_basename_result"
+ test "$mode" = uninstall && objdir="$dir"
+
+ # Remember objdir for removal later, being careful to avoid duplicates
+ if test "$mode" = clean; then
+ case " $rmdirs " in
+ *" $objdir "*) ;;
+ *) rmdirs="$rmdirs $objdir" ;;
+ esac
+ fi
+
+ # Don't error if the file doesn't exist and rm -f was used.
+ if { test -L "$file"; } >/dev/null 2>&1 ||
+ { test -h "$file"; } >/dev/null 2>&1 ||
+ test -f "$file"; then
+ :
+ elif test -d "$file"; then
+ exit_status=1
+ continue
+ elif test "$rmforce" = yes; then
+ continue
+ fi
+
+ rmfiles="$file"
+
+ case $name in
+ *.la)
+ # Possibly a libtool archive, so verify it.
+ if func_lalib_p "$file"; then
+ func_source $dir/$name
+
+ # Delete the libtool libraries and symlinks.
+ for n in $library_names; do
+ rmfiles="$rmfiles $objdir/$n"
+ done
+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
+
+ case "$mode" in
+ clean)
+ case " $library_names " in
+ # " " in the beginning catches empty $dlname
+ *" $dlname "*) ;;
+ *) rmfiles="$rmfiles $objdir/$dlname" ;;
+ esac
+ test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
+ ;;
+ uninstall)
+ if test -n "$library_names"; then
+ # Do each command in the postuninstall commands.
+ func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+ fi
+
+ if test -n "$old_library"; then
+ # Do each command in the old_postuninstall commands.
+ func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+ fi
+ # FIXME: should reinstall the best remaining shared library.
+ ;;
+ esac
+ fi
+ ;;
+
+ *.lo)
+ # Possibly a libtool object, so verify it.
+ if func_lalib_p "$file"; then
+
+ # Read the .lo file
+ func_source $dir/$name
+
+ # Add PIC object to the list of files to remove.
+ if test -n "$pic_object" &&
+ test "$pic_object" != none; then
+ rmfiles="$rmfiles $dir/$pic_object"
+ fi
+
+ # Add non-PIC object to the list of files to remove.
+ if test -n "$non_pic_object" &&
+ test "$non_pic_object" != none; then
+ rmfiles="$rmfiles $dir/$non_pic_object"
+ fi
+ fi
+ ;;
+
+ *)
+ if test "$mode" = clean ; then
+ noexename=$name
+ case $file in
+ *.exe)
+ func_stripname '' '.exe' "$file"
+ file=$func_stripname_result
+ func_stripname '' '.exe' "$name"
+ noexename=$func_stripname_result
+ # $file with .exe has already been added to rmfiles,
+ # add $file without .exe
+ rmfiles="$rmfiles $file"
+ ;;
+ esac
+ # Do a test to see if this is a libtool program.
+ if func_ltwrapper_p "$file"; then
+ if func_ltwrapper_executable_p "$file"; then
+ func_ltwrapper_scriptname "$file"
+ relink_command=
+ func_source $func_ltwrapper_scriptname_result
+ rmfiles="$rmfiles $func_ltwrapper_scriptname_result"
+ else
+ relink_command=
+ func_source $dir/$noexename
+ fi
+
+ # note $name still contains .exe if it was in $file originally
+ # as does the version of $file that was added into $rmfiles
+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
+ if test "$fast_install" = yes && test -n "$relink_command"; then
+ rmfiles="$rmfiles $objdir/lt-$name"
+ fi
+ if test "X$noexename" != "X$name" ; then
+ rmfiles="$rmfiles $objdir/lt-${noexename}.c"
+ fi
+ fi
+ fi
+ ;;
+ esac
+ func_show_eval "$RM $rmfiles" 'exit_status=1'
+ done
+ objdir="$origobjdir"
+
+ # Try to remove the ${objdir}s in the directories where we deleted files
+ for dir in $rmdirs; do
+ if test -d "$dir"; then
+ func_show_eval "rmdir $dir >/dev/null 2>&1"
+ fi
+ done
+
+ exit $exit_status
+}
+
+{ test "$mode" = uninstall || test "$mode" = clean; } &&
+ func_mode_uninstall ${1+"$@"}
+
+test -z "$mode" && {
+ help="$generic_help"
+ func_fatal_help "you must specify a MODE"
+}
+
+test -z "$exec_cmd" && \
+ func_fatal_help "invalid operation mode \`$mode'"
+
+if test -n "$exec_cmd"; then
+ eval exec "$exec_cmd"
+ exit $EXIT_FAILURE
+fi
+
+exit $exit_status
+
+
+# The TAGs below are defined such that we never get into a situation
+# in which we disable both kinds of libraries. Given conflicting
+# choices, we go for a static library, that is the most portable,
+# since we can't tell whether shared libraries were disabled because
+# the user asked for that or because the platform doesn't support
+# them. This is particularly important on AIX, because we don't
+# support having both static and shared libraries enabled at the same
+# time on that platform, so we default to a shared-only configuration.
+# If a disable-shared tag is given, we'll fallback to a static-only
+# configuration. But we'll never go from static-only to shared-only.
+
+# ### BEGIN LIBTOOL TAG CONFIG: disable-shared
+build_libtool_libs=no
+build_old_libs=yes
+# ### END LIBTOOL TAG CONFIG: disable-shared
+
+# ### BEGIN LIBTOOL TAG CONFIG: disable-static
+build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
+# ### END LIBTOOL TAG CONFIG: disable-static
+
+# Local Variables:
+# mode:shell-script
+# sh-indentation:2
+# End:
+# vi:sw=2
+
diff --git a/m4/ChangeLog b/m4/ChangeLog
index 3c9a5184..7f91a5b2 100644
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -1,3 +1,19 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.17.
+ * iconv.m4: Upgrade to gettext-0.17.
+ * lib-link.m4: Upgrade to gettext-0.17.
+ * po.m4: Upgrade to gettext-0.17.
+
+Mon Jun 8 22:15:29 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libtool.m4, lt~obsolete.m4 ltsugar.m4 ltversion.m4,
+ ltoptions.m4: New files.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/m4/arch.m4 b/m4/arch.m4
index 4698f082..97b43e64 100644
--- a/m4/arch.m4
+++ b/m4/arch.m4
@@ -57,3 +57,18 @@ fi
])dnl
AC_MSG_RESULT([${gawk_cv_linux_alpha_hack}])
])dnl
+
+dnl Check for z/OS Unix Systems Services
+AC_DEFUN([AC_ZOS_USS], [
+AC_MSG_CHECKING([for z/OS USS compilation])
+if test "OS/390" = "`uname`"
+then
+ CFLAGS="$CFLAGS -D_ALL_SOURCE -DZOS_USS -DUSE_EBCDIC"
+ # Must rebuild awkgram.c from Bison for EBCDIC
+ rm -f awkgram.c
+ ac_cv_zos_uss=yes
+else
+ ac_cv_zos_uss=no
+fi
+AC_MSG_RESULT([${ac_cv_zos_uss}])
+])dnl
diff --git a/m4/gettext.m4 b/m4/gettext.m4
index 91c345e9..c9ae1f7d 100644
--- a/m4/gettext.m4
+++ b/m4/gettext.m4
@@ -1,5 +1,5 @@
-# gettext.m4 serial 59 (gettext-0.16.1)
-dnl Copyright (C) 1995-2006 Free Software Foundation, Inc.
+# gettext.m4 serial 60 (gettext-0.17)
+dnl Copyright (C) 1995-2007 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.
@@ -362,44 +362,6 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_a
])
-dnl Checks for special options needed on MacOS X.
-dnl Defines INTL_MACOSX_LIBS.
-AC_DEFUN([gt_INTL_MACOSX],
-[
- dnl Check for API introduced in MacOS X 10.2.
- AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
- gt_cv_func_CFPreferencesCopyAppValue,
- [gt_save_LIBS="$LIBS"
- LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
- AC_TRY_LINK([#include <CoreFoundation/CFPreferences.h>],
- [CFPreferencesCopyAppValue(NULL, NULL)],
- [gt_cv_func_CFPreferencesCopyAppValue=yes],
- [gt_cv_func_CFPreferencesCopyAppValue=no])
- LIBS="$gt_save_LIBS"])
- if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
- AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1,
- [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
- fi
- dnl Check for API introduced in MacOS X 10.3.
- AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent,
- [gt_save_LIBS="$LIBS"
- LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
- AC_TRY_LINK([#include <CoreFoundation/CFLocale.h>], [CFLocaleCopyCurrent();],
- [gt_cv_func_CFLocaleCopyCurrent=yes],
- [gt_cv_func_CFLocaleCopyCurrent=no])
- LIBS="$gt_save_LIBS"])
- if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
- AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1,
- [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
- fi
- INTL_MACOSX_LIBS=
- if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
- INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
- fi
- AC_SUBST([INTL_MACOSX_LIBS])
-])
-
-
dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized.
m4_define([gt_NEEDS_INIT],
[
diff --git a/m4/iconv.m4 b/m4/iconv.m4
index 654c4158..66bc76f4 100644
--- a/m4/iconv.m4
+++ b/m4/iconv.m4
@@ -1,5 +1,5 @@
-# iconv.m4 serial AM4 (gettext-0.11.3)
-dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
+# iconv.m4 serial AM6 (gettext-0.17)
+dnl Copyright (C) 2000-2002, 2007 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.
@@ -21,6 +21,7 @@ AC_DEFUN([AM_ICONV_LINK],
[
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
dnl those with the standalone portable GNU libiconv installed).
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
dnl accordingly.
@@ -33,7 +34,7 @@ AC_DEFUN([AM_ICONV_LINK],
am_save_CPPFLAGS="$CPPFLAGS"
AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
- AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
+ AC_CACHE_CHECK([for iconv], am_cv_func_iconv, [
am_cv_func_iconv="no, consider installing GNU libiconv"
am_cv_lib_iconv=no
AC_TRY_LINK([#include <stdlib.h>
@@ -56,7 +57,85 @@ AC_DEFUN([AM_ICONV_LINK],
fi
])
if test "$am_cv_func_iconv" = yes; then
- AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
+ AC_CACHE_CHECK([for working iconv], am_cv_func_iconv_works, [
+ dnl This tests against bugs in AIX 5.1 and HP-UX 11.11.
+ am_save_LIBS="$LIBS"
+ if test $am_cv_lib_iconv = yes; then
+ LIBS="$LIBS $LIBICONV"
+ fi
+ AC_TRY_RUN([
+#include <iconv.h>
+#include <string.h>
+int main ()
+{
+ /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
+ returns. */
+ {
+ iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
+ if (cd_utf8_to_88591 != (iconv_t)(-1))
+ {
+ static const char input[] = "\342\202\254"; /* EURO SIGN */
+ char buf[10];
+ const char *inptr = input;
+ size_t inbytesleft = strlen (input);
+ char *outptr = buf;
+ size_t outbytesleft = sizeof (buf);
+ size_t res = iconv (cd_utf8_to_88591,
+ (char **) &inptr, &inbytesleft,
+ &outptr, &outbytesleft);
+ if (res == 0)
+ return 1;
+ }
+ }
+#if 0 /* This bug could be worked around by the caller. */
+ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */
+ {
+ iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
+ if (cd_88591_to_utf8 != (iconv_t)(-1))
+ {
+ static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
+ char buf[50];
+ const char *inptr = input;
+ size_t inbytesleft = strlen (input);
+ char *outptr = buf;
+ size_t outbytesleft = sizeof (buf);
+ size_t res = iconv (cd_88591_to_utf8,
+ (char **) &inptr, &inbytesleft,
+ &outptr, &outbytesleft);
+ if ((int)res > 0)
+ return 1;
+ }
+ }
+#endif
+ /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
+ provided. */
+ if (/* Try standardized names. */
+ iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
+ /* Try IRIX, OSF/1 names. */
+ && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
+ /* Try AIX names. */
+ && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
+ /* Try HP-UX names. */
+ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
+ return 1;
+ return 0;
+}], [am_cv_func_iconv_works=yes], [am_cv_func_iconv_works=no],
+ [case "$host_os" in
+ aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
+ *) am_cv_func_iconv_works="guessing yes" ;;
+ esac])
+ LIBS="$am_save_LIBS"
+ ])
+ case "$am_cv_func_iconv_works" in
+ *no) am_func_iconv=no am_cv_lib_iconv=no ;;
+ *) am_func_iconv=yes ;;
+ esac
+ else
+ am_func_iconv=no am_cv_lib_iconv=no
+ fi
+ if test "$am_func_iconv" = yes; then
+ AC_DEFINE(HAVE_ICONV, 1,
+ [Define if you have the iconv() function and it works.])
fi
if test "$am_cv_lib_iconv" = yes; then
AC_MSG_CHECKING([how to link with libiconv])
diff --git a/m4/inttypes.m4 b/m4/inttypes.m4
index 779bcea0..50677025 100644
--- a/m4/inttypes.m4
+++ b/m4/inttypes.m4
@@ -11,15 +11,20 @@ dnl From Paul Eggert.
AC_DEFUN([gt_HEADER_INTTYPES_H],
[
- AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h,
- [
- AC_TRY_COMPILE(
- [#include <sys/types.h>
+ if test "OS/390" = "`uname`"
+ then
+ gt_cv_header_inttypes_h=no
+ else
+ AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h,
+ [
+ AC_TRY_COMPILE(
+ [#include <sys/types.h>
#include <inttypes.h>],
- [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no)
- ])
- if test $gt_cv_header_inttypes_h = yes; then
- AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1,
- [Define if <inttypes.h> exists and doesn't clash with <sys/types.h>.])
+ [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no)
+ ])
+ if test $gt_cv_header_inttypes_h = yes; then
+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1,
+ [Define if <inttypes.h> exists and doesn't clash with <sys/types.h>.])
+ fi
fi
])
diff --git a/m4/inttypes_h.m4 b/m4/inttypes_h.m4
index edc8ecb2..76171888 100644
--- a/m4/inttypes_h.m4
+++ b/m4/inttypes_h.m4
@@ -11,16 +11,21 @@ dnl From Paul Eggert.
AC_DEFUN([gl_AC_HEADER_INTTYPES_H],
[
- AC_CACHE_CHECK([for inttypes.h], gl_cv_header_inttypes_h,
- [AC_TRY_COMPILE(
- [#include <sys/types.h>
+ if test "OS/390" = "`uname`"
+ then
+ gl_cv_header_inttypes_h=no
+ else
+ AC_CACHE_CHECK([for inttypes.h], gl_cv_header_inttypes_h,
+ [AC_TRY_COMPILE(
+ [#include <sys/types.h>
#include <inttypes.h>],
- [uintmax_t i = (uintmax_t) -1; return !i;],
- gl_cv_header_inttypes_h=yes,
- gl_cv_header_inttypes_h=no)])
- if test $gl_cv_header_inttypes_h = yes; then
- AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1,
- [Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
- and declares uintmax_t. ])
+ [uintmax_t i = (uintmax_t) -1; return !i;],
+ gl_cv_header_inttypes_h=yes,
+ gl_cv_header_inttypes_h=no)])
+ if test $gl_cv_header_inttypes_h = yes; then
+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1,
+ [Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
+ and declares uintmax_t. ])
+ fi
fi
])
diff --git a/m4/lib-link.m4 b/m4/lib-link.m4
index f95b7ba8..e3d26fc4 100644
--- a/m4/lib-link.m4
+++ b/m4/lib-link.m4
@@ -1,17 +1,19 @@
-# lib-link.m4 serial 9 (gettext-0.16)
-dnl Copyright (C) 2001-2006 Free Software Foundation, Inc.
+# lib-link.m4 serial 13 (gettext-0.17)
+dnl Copyright (C) 2001-2007 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.
-AC_PREREQ(2.50)
+AC_PREREQ(2.54)
dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
dnl the libraries corresponding to explicit and implicit dependencies.
dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
dnl augments the CPPFLAGS variable.
+dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
+dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
AC_DEFUN([AC_LIB_LINKFLAGS],
[
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
@@ -24,13 +26,16 @@ AC_DEFUN([AC_LIB_LINKFLAGS],
ac_cv_lib[]Name[]_libs="$LIB[]NAME"
ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
+ ac_cv_lib[]Name[]_prefix="$LIB[]NAME[]_PREFIX"
])
LIB[]NAME="$ac_cv_lib[]Name[]_libs"
LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
+ LIB[]NAME[]_PREFIX="$ac_cv_lib[]Name[]_prefix"
AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
AC_SUBST([LIB]NAME)
AC_SUBST([LTLIB]NAME)
+ AC_SUBST([LIB]NAME[_PREFIX])
dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
dnl results of this search when this library appears as a dependency.
HAVE_LIB[]NAME=yes
@@ -46,6 +51,8 @@ dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
+dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
+dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
[
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
@@ -82,17 +89,23 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
CPPFLAGS="$ac_save_CPPFLAGS"
LIB[]NAME=
LTLIB[]NAME=
+ LIB[]NAME[]_PREFIX=
fi
AC_SUBST([HAVE_LIB]NAME)
AC_SUBST([LIB]NAME)
AC_SUBST([LTLIB]NAME)
+ AC_SUBST([LIB]NAME[_PREFIX])
undefine([Name])
undefine([NAME])
])
dnl Determine the platform dependent parameters needed to use rpath:
-dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
-dnl hardcode_direct, hardcode_minus_L.
+dnl acl_libext,
+dnl acl_shlibext,
+dnl acl_hardcode_libdir_flag_spec,
+dnl acl_hardcode_libdir_separator,
+dnl acl_hardcode_direct,
+dnl acl_hardcode_minus_L.
AC_DEFUN([AC_LIB_RPATH],
[
dnl Tell automake >= 1.10 to complain if config.rpath is missing.
@@ -109,12 +122,14 @@ AC_DEFUN([AC_LIB_RPATH],
acl_cv_rpath=done
])
wl="$acl_cv_wl"
- libext="$acl_cv_libext"
- shlibext="$acl_cv_shlibext"
- hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
- hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
- hardcode_direct="$acl_cv_hardcode_direct"
- hardcode_minus_L="$acl_cv_hardcode_minus_L"
+ acl_libext="$acl_cv_libext"
+ acl_shlibext="$acl_cv_shlibext"
+ acl_libname_spec="$acl_cv_libname_spec"
+ acl_library_names_spec="$acl_cv_library_names_spec"
+ acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
+ acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
+ acl_hardcode_direct="$acl_cv_hardcode_direct"
+ acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
dnl Determine whether the user wants rpath handling at all.
AC_ARG_ENABLE(rpath,
[ --disable-rpath do not hardcode runtime library paths],
@@ -124,20 +139,24 @@ AC_DEFUN([AC_LIB_RPATH],
dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
dnl the libraries corresponding to explicit and implicit dependencies.
dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
+dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found
+dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
[
AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
+ dnl Autoconf >= 2.61 supports dots in --with options.
+ define([N_A_M_E],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[translit([$1],[.],[_])],[$1])])
dnl By default, look in $includedir and $libdir.
use_additional=yes
AC_LIB_WITH_FINAL_PREFIX([
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
])
- AC_LIB_ARG_WITH([lib$1-prefix],
-[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
- --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
+ AC_LIB_ARG_WITH([lib]N_A_M_E[-prefix],
+[ --with-lib]N_A_M_E[-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
+ --without-lib]N_A_M_E[-prefix don't search for lib$1 in includedir and libdir],
[
if test "X$withval" = "Xno"; then
use_additional=no
@@ -158,6 +177,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
LIB[]NAME=
LTLIB[]NAME=
INC[]NAME=
+ LIB[]NAME[]_PREFIX=
rpathdirs=
ltrpathdirs=
names_already_handled=
@@ -197,27 +217,53 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
found_la=
found_so=
found_a=
+ eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
+ if test -n "$acl_shlibext"; then
+ shrext=".$acl_shlibext" # typically: shrext=.so
+ else
+ shrext=
+ fi
if test $use_additional = yes; then
- if test -n "$shlibext" \
- && { test -f "$additional_libdir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
- found_dir="$additional_libdir"
- if test -f "$additional_libdir/lib$name.$shlibext"; then
- found_so="$additional_libdir/lib$name.$shlibext"
+ dir="$additional_libdir"
+ dnl The same code as in the loop below:
+ dnl First look for a shared library.
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$additional_libdir/lib$name.dll.a"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
+ fi
+ dnl Then look for a static library.
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
+ found_dir="$dir"
+ found_a="$dir/$libname.$acl_libext"
fi
- else
- if test -f "$additional_libdir/lib$name.$libext"; then
- found_dir="$additional_libdir"
- found_a="$additional_libdir/lib$name.$libext"
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
- fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
fi
@@ -227,26 +273,44 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
case "$x" in
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
- if test -n "$shlibext" \
- && { test -f "$dir/lib$name.$shlibext" \
- || { test "$shlibext" = dll \
- && test -f "$dir/lib$name.dll.a"; }; }; then
- found_dir="$dir"
- if test -f "$dir/lib$name.$shlibext"; then
- found_so="$dir/lib$name.$shlibext"
+ dnl First look for a shared library.
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
else
- found_so="$dir/lib$name.dll.a"
- fi
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
fi
- else
- if test -f "$dir/lib$name.$libext"; then
+ fi
+ dnl Then look for a static library.
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext"; then
found_dir="$dir"
- found_a="$dir/lib$name.$libext"
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
- fi
+ found_a="$dir/$libname.$acl_libext"
+ fi
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
fi
fi
;;
@@ -282,12 +346,12 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
ltrpathdirs="$ltrpathdirs $found_dir"
fi
dnl The hardcoding into $LIBNAME is system dependent.
- if test "$hardcode_direct" = yes; then
+ if test "$acl_hardcode_direct" = yes; then
dnl Using DIR/libNAME.so during linking hardcodes DIR into the
dnl resulting binary.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
else
- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
dnl Use an explicit option to hardcode DIR into the resulting
dnl binary.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
@@ -318,13 +382,13 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
if test -z "$haveit"; then
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
fi
- if test "$hardcode_minus_L" != no; then
+ if test "$acl_hardcode_minus_L" != no; then
dnl FIXME: Not sure whether we should use
dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
dnl here.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
else
- dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
+ dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH
dnl here, because this doesn't fit in flags passed to the
dnl compiler. So give up. No hardcoding. This affects only
dnl very old systems.
@@ -351,6 +415,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
case "$found_dir" in
*/$acl_libdirstem | */$acl_libdirstem/)
basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
+ LIB[]NAME[]_PREFIX="$basedir"
additional_includedir="$basedir/include"
;;
esac
@@ -512,18 +577,18 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
done
done
if test "X$rpathdirs" != "X"; then
- if test -n "$hardcode_libdir_separator"; then
+ if test -n "$acl_hardcode_libdir_separator"; then
dnl Weird platform: only the last -rpath option counts, the user must
dnl pass all path elements in one option. We can arrange that for a
dnl single library, but not when more than one $LIBNAMEs are used.
alldirs=
for found_dir in $rpathdirs; do
- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
+ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
done
- dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
+ dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl.
acl_save_libdir="$libdir"
libdir="$alldirs"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
else
@@ -531,7 +596,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
for found_dir in $rpathdirs; do
acl_save_libdir="$libdir"
libdir="$found_dir"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
done
@@ -580,7 +645,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
$1=
if test "$enable_rpath" != no; then
- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
dnl Use an explicit option to hardcode directories into the resulting
dnl binary.
rpathdirs=
@@ -614,16 +679,16 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
done
else
dnl The linker is used for linking directly.
- if test -n "$hardcode_libdir_separator"; then
+ if test -n "$acl_hardcode_libdir_separator"; then
dnl Weird platform: only the last -rpath option counts, the user
dnl must pass all path elements in one option.
alldirs=
for dir in $rpathdirs; do
- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$dir"
+ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir"
done
acl_save_libdir="$libdir"
libdir="$alldirs"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
$1="$flag"
else
@@ -631,7 +696,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
for dir in $rpathdirs; do
acl_save_libdir="$libdir"
libdir="$dir"
- eval flag=\"$hardcode_libdir_flag_spec\"
+ eval flag=\"$acl_hardcode_libdir_flag_spec\"
libdir="$acl_save_libdir"
$1="${$1}${$1:+ }$flag"
done
diff --git a/m4/libtool.m4 b/m4/libtool.m4
new file mode 100644
index 00000000..39ba996c
--- /dev/null
+++ b/m4/libtool.m4
@@ -0,0 +1,7357 @@
+# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+#
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 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.
+
+m4_define([_LT_COPYING], [dnl
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+# 2006, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gordon Matzigkeit, 1996
+#
+# This file is part of GNU Libtool.
+#
+# GNU Libtool 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 of
+# the License, or (at your option) any later version.
+#
+# As a special exception to the GNU General Public License,
+# if you distribute this file as part of a program or library that
+# is built using GNU Libtool, you may include this file under the
+# same distribution terms that you use for the rest of that program.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
+# obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+])
+
+# serial 56 LT_INIT
+
+
+# LT_PREREQ(VERSION)
+# ------------------
+# Complain and exit if this libtool version is less that VERSION.
+m4_defun([LT_PREREQ],
+[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
+ [m4_default([$3],
+ [m4_fatal([Libtool version $1 or higher is required],
+ 63)])],
+ [$2])])
+
+
+# _LT_CHECK_BUILDDIR
+# ------------------
+# Complain if the absolute build directory name contains unusual characters
+m4_defun([_LT_CHECK_BUILDDIR],
+[case `pwd` in
+ *\ * | *\ *)
+ AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
+esac
+])
+
+
+# LT_INIT([OPTIONS])
+# ------------------
+AC_DEFUN([LT_INIT],
+[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+AC_BEFORE([$0], [LT_LANG])dnl
+AC_BEFORE([$0], [LT_OUTPUT])dnl
+AC_BEFORE([$0], [LTDL_INIT])dnl
+m4_require([_LT_CHECK_BUILDDIR])dnl
+
+dnl Autoconf doesn't catch unexpanded LT_ macros by default:
+m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
+m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
+dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
+dnl unless we require an AC_DEFUNed macro:
+AC_REQUIRE([LTOPTIONS_VERSION])dnl
+AC_REQUIRE([LTSUGAR_VERSION])dnl
+AC_REQUIRE([LTVERSION_VERSION])dnl
+AC_REQUIRE([LTOBSOLETE_VERSION])dnl
+m4_require([_LT_PROG_LTMAIN])dnl
+
+dnl Parse OPTIONS
+_LT_SET_OPTIONS([$0], [$1])
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ltmain"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+AC_SUBST(LIBTOOL)dnl
+
+_LT_SETUP
+
+# Only expand once:
+m4_define([LT_INIT])
+])# LT_INIT
+
+# Old names:
+AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
+AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
+dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
+
+
+# _LT_CC_BASENAME(CC)
+# -------------------
+# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
+m4_defun([_LT_CC_BASENAME],
+[for cc_temp in $1""; do
+ case $cc_temp in
+ compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+ distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
+])
+
+
+# _LT_FILEUTILS_DEFAULTS
+# ----------------------
+# It is okay to use these file commands and assume they have been set
+# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+m4_defun([_LT_FILEUTILS_DEFAULTS],
+[: ${CP="cp -f"}
+: ${MV="mv -f"}
+: ${RM="rm -f"}
+])# _LT_FILEUTILS_DEFAULTS
+
+
+# _LT_SETUP
+# ---------
+m4_defun([_LT_SETUP],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+_LT_DECL([], [host_alias], [0], [The host system])dnl
+_LT_DECL([], [host], [0])dnl
+_LT_DECL([], [host_os], [0])dnl
+dnl
+_LT_DECL([], [build_alias], [0], [The build system])dnl
+_LT_DECL([], [build], [0])dnl
+_LT_DECL([], [build_os], [0])dnl
+dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+dnl
+AC_REQUIRE([AC_PROG_LN_S])dnl
+test -z "$LN_S" && LN_S="ln -s"
+_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
+dnl
+AC_REQUIRE([LT_CMD_MAX_LEN])dnl
+_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
+_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_CMD_RELOAD])dnl
+m4_require([_LT_CHECK_MAGIC_METHOD])dnl
+m4_require([_LT_CMD_OLD_ARCHIVE])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+
+_LT_CONFIG_LIBTOOL_INIT([
+# See if we are running on zsh, and set the options which allow our
+# commands through without removal of \ escapes INIT.
+if test -n "\${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+])
+if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+fi
+
+_LT_CHECK_OBJDIR
+
+m4_require([_LT_TAG_COMPILER])dnl
+_LT_PROG_ECHO_BACKSLASH
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\([["`\\]]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to delay expansion of an escaped single quote.
+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+
+# Global variables:
+ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
+test -z "$LD" && LD=ld
+test -z "$ac_objext" && ac_objext=o
+
+_LT_CC_BASENAME([$compiler])
+
+# Only perform the check for file, if the check method requires it
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ _LT_PATH_MAGIC
+ fi
+ ;;
+esac
+
+# Use C for the default configuration in the libtool script
+LT_SUPPORTED_TAG([CC])
+_LT_LANG_C_CONFIG
+_LT_LANG_DEFAULT_CONFIG
+_LT_CONFIG_COMMANDS
+])# _LT_SETUP
+
+
+# _LT_PROG_LTMAIN
+# ---------------
+# Note that this code is called both from `configure', and `config.status'
+# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
+# `config.status' has no value for ac_aux_dir unless we are using Automake,
+# so we pass a copy along to make sure it has a sensible value anyway.
+m4_defun([_LT_PROG_LTMAIN],
+[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
+_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
+ltmain="$ac_aux_dir/ltmain.sh"
+])# _LT_PROG_LTMAIN
+
+
+## ------------------------------------- ##
+## Accumulate code for creating libtool. ##
+## ------------------------------------- ##
+
+# So that we can recreate a full libtool script including additional
+# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
+# in macros and then make a single call at the end using the `libtool'
+# label.
+
+
+# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
+# ----------------------------------------
+# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL_INIT],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_INIT])
+
+
+# _LT_CONFIG_LIBTOOL([COMMANDS])
+# ------------------------------
+# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
+m4_define([_LT_CONFIG_LIBTOOL],
+[m4_ifval([$1],
+ [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
+ [$1
+])])])
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
+
+
+# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
+# -----------------------------------------------------
+m4_defun([_LT_CONFIG_SAVE_COMMANDS],
+[_LT_CONFIG_LIBTOOL([$1])
+_LT_CONFIG_LIBTOOL_INIT([$2])
+])
+
+
+# _LT_FORMAT_COMMENT([COMMENT])
+# -----------------------------
+# Add leading comment marks to the start of each line, and a trailing
+# full-stop to the whole comment if one is not present already.
+m4_define([_LT_FORMAT_COMMENT],
+[m4_ifval([$1], [
+m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
+ [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
+)])
+
+
+
+## ------------------------ ##
+## FIXME: Eliminate VARNAME ##
+## ------------------------ ##
+
+
+# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
+# -------------------------------------------------------------------
+# CONFIGNAME is the name given to the value in the libtool script.
+# VARNAME is the (base) name used in the configure script.
+# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
+# VARNAME. Any other value will be used directly.
+m4_define([_LT_DECL],
+[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
+ [m4_ifval([$1], [$1], [$2])])
+ lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
+ m4_ifval([$4],
+ [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
+ lt_dict_add_subkey([lt_decl_dict], [$2],
+ [tagged?], [m4_ifval([$5], [yes], [no])])])
+])
+
+
+# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
+# --------------------------------------------------------
+m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
+
+
+# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_tag_varnames],
+[_lt_decl_filter([tagged?], [yes], $@)])
+
+
+# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
+# ---------------------------------------------------------
+m4_define([_lt_decl_filter],
+[m4_case([$#],
+ [0], [m4_fatal([$0: too few arguments: $#])],
+ [1], [m4_fatal([$0: too few arguments: $#: $1])],
+ [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
+ [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
+ [lt_dict_filter([lt_decl_dict], $@)])[]dnl
+])
+
+
+# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
+# --------------------------------------------------
+m4_define([lt_decl_quote_varnames],
+[_lt_decl_filter([value], [1], $@)])
+
+
+# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_dquote_varnames],
+[_lt_decl_filter([value], [2], $@)])
+
+
+# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
+# ---------------------------------------------------
+m4_define([lt_decl_varnames_tagged],
+[m4_assert([$# <= 2])dnl
+_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
+ m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
+m4_define([_lt_decl_varnames_tagged],
+[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
+
+
+# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
+# ------------------------------------------------
+m4_define([lt_decl_all_varnames],
+[_$0(m4_quote(m4_default([$1], [[, ]])),
+ m4_if([$2], [],
+ m4_quote(lt_decl_varnames),
+ m4_quote(m4_shift($@))))[]dnl
+])
+m4_define([_lt_decl_all_varnames],
+[lt_join($@, lt_decl_varnames_tagged([$1],
+ lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
+])
+
+
+# _LT_CONFIG_STATUS_DECLARE([VARNAME])
+# ------------------------------------
+# Quote a variable value, and forward it to `config.status' so that its
+# declaration there will have the same value as in `configure'. VARNAME
+# must have a single quote delimited value for this to work.
+m4_define([_LT_CONFIG_STATUS_DECLARE],
+[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
+
+
+# _LT_CONFIG_STATUS_DECLARATIONS
+# ------------------------------
+# We delimit libtool config variables with single quotes, so when
+# we write them to config.status, we have to be sure to quote all
+# embedded single quotes properly. In configure, this macro expands
+# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
+#
+# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
+m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
+ [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAGS
+# ----------------
+# Output comment and list of tags supported by the script
+m4_defun([_LT_LIBTOOL_TAGS],
+[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
+available_tags="_LT_TAGS"dnl
+])
+
+
+# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
+# -----------------------------------
+# Extract the dictionary values for VARNAME (optionally with TAG) and
+# expand to a commented shell variable setting:
+#
+# # Some comment about what VAR is for.
+# visible_name=$lt_internal_name
+m4_define([_LT_LIBTOOL_DECLARE],
+[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
+ [description])))[]dnl
+m4_pushdef([_libtool_name],
+ m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
+m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
+ [0], [_libtool_name=[$]$1],
+ [1], [_libtool_name=$lt_[]$1],
+ [2], [_libtool_name=$lt_[]$1],
+ [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
+m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
+])
+
+
+# _LT_LIBTOOL_CONFIG_VARS
+# -----------------------
+# Produce commented declarations of non-tagged libtool config variables
+# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
+# section) are produced by _LT_LIBTOOL_TAG_VARS.
+m4_defun([_LT_LIBTOOL_CONFIG_VARS],
+[m4_foreach([_lt_var],
+ m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
+
+
+# _LT_LIBTOOL_TAG_VARS(TAG)
+# -------------------------
+m4_define([_LT_LIBTOOL_TAG_VARS],
+[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
+
+
+# _LT_TAGVAR(VARNAME, [TAGNAME])
+# ------------------------------
+m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
+
+
+# _LT_CONFIG_COMMANDS
+# -------------------
+# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
+# variables for single and double quote escaping we saved from calls
+# to _LT_DECL, we can put quote escaped variables declarations
+# into `config.status', and then the shell code to quote escape them in
+# for loops in `config.status'. Finally, any additional code accumulated
+# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
+m4_defun([_LT_CONFIG_COMMANDS],
+[AC_PROVIDE_IFELSE([LT_OUTPUT],
+ dnl If the libtool generation code has been placed in $CONFIG_LT,
+ dnl instead of duplicating it all over again into config.status,
+ dnl then we will have config.status run $CONFIG_LT later, so it
+ dnl needs to know what name is stored there:
+ [AC_CONFIG_COMMANDS([libtool],
+ [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
+ dnl If the libtool generation code is destined for config.status,
+ dnl expand the accumulated commands and init code now:
+ [AC_CONFIG_COMMANDS([libtool],
+ [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
+])#_LT_CONFIG_COMMANDS
+
+
+# Initialize.
+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
+[
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+sed_quote_subst='$sed_quote_subst'
+double_quote_subst='$double_quote_subst'
+delay_variable_subst='$delay_variable_subst'
+_LT_CONFIG_STATUS_DECLARATIONS
+LTCC='$LTCC'
+LTCFLAGS='$LTCFLAGS'
+compiler='$compiler_DEFAULT'
+
+# Quote evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_quote_varnames); do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Double-quote double-evaled strings.
+for var in lt_decl_all_varnames([[ \
+]], lt_decl_dquote_varnames); do
+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+ *[[\\\\\\\`\\"\\\$]]*)
+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+ ;;
+ *)
+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+ ;;
+ esac
+done
+
+# Fix-up fallback echo if it was mangled by the above quoting rules.
+case \$lt_ECHO in
+*'\\\[$]0 --fallback-echo"')dnl "
+ lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
+ ;;
+esac
+
+_LT_OUTPUT_LIBTOOL_INIT
+])
+
+
+# LT_OUTPUT
+# ---------
+# This macro allows early generation of the libtool script (before
+# AC_OUTPUT is called), incase it is used in configure for compilation
+# tests.
+AC_DEFUN([LT_OUTPUT],
+[: ${CONFIG_LT=./config.lt}
+AC_MSG_NOTICE([creating $CONFIG_LT])
+cat >"$CONFIG_LT" <<_LTEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate a libtool stub with the current configuration.
+
+lt_cl_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_LTEOF
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+AS_SHELL_SANITIZE
+_AS_PREPARE
+
+exec AS_MESSAGE_FD>&1
+exec AS_MESSAGE_LOG_FD>>config.log
+{
+ echo
+ AS_BOX([Running $as_me.])
+} >&AS_MESSAGE_LOG_FD
+
+lt_cl_help="\
+\`$as_me' creates a local libtool stub from the current configuration,
+for use in further configure time tests before the real libtool is
+generated.
+
+Usage: $[0] [[OPTIONS]]
+
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -q, --quiet do not print progress messages
+ -d, --debug don't remove temporary files
+
+Report bugs to <bug-libtool@gnu.org>."
+
+lt_cl_version="\
+m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
+configured by $[0], generated by m4_PACKAGE_STRING.
+
+Copyright (C) 2008 Free Software Foundation, Inc.
+This config.lt script is free software; the Free Software Foundation
+gives unlimited permision to copy, distribute and modify it."
+
+while test $[#] != 0
+do
+ case $[1] in
+ --version | --v* | -V )
+ echo "$lt_cl_version"; exit 0 ;;
+ --help | --h* | -h )
+ echo "$lt_cl_help"; exit 0 ;;
+ --debug | --d* | -d )
+ debug=: ;;
+ --quiet | --q* | --silent | --s* | -q )
+ lt_cl_silent=: ;;
+
+ -*) AC_MSG_ERROR([unrecognized option: $[1]
+Try \`$[0] --help' for more information.]) ;;
+
+ *) AC_MSG_ERROR([unrecognized argument: $[1]
+Try \`$[0] --help' for more information.]) ;;
+ esac
+ shift
+done
+
+if $lt_cl_silent; then
+ exec AS_MESSAGE_FD>/dev/null
+fi
+_LTEOF
+
+cat >>"$CONFIG_LT" <<_LTEOF
+_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
+_LTEOF
+
+cat >>"$CONFIG_LT" <<\_LTEOF
+AC_MSG_NOTICE([creating $ofile])
+_LT_OUTPUT_LIBTOOL_COMMANDS
+AS_EXIT(0)
+_LTEOF
+chmod +x "$CONFIG_LT"
+
+# configure is writing to config.log, but config.lt does its own redirection,
+# appending to config.log, which fails on DOS, as config.log is still kept
+# open by configure. Here we exec the FD to /dev/null, effectively closing
+# config.log, so it can be properly (re)opened and appended to by config.lt.
+if test "$no_create" != yes; then
+ lt_cl_success=:
+ test "$silent" = yes &&
+ lt_config_lt_args="$lt_config_lt_args --quiet"
+ exec AS_MESSAGE_LOG_FD>/dev/null
+ $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
+ exec AS_MESSAGE_LOG_FD>>config.log
+ $lt_cl_success || AS_EXIT(1)
+fi
+])# LT_OUTPUT
+
+
+# _LT_CONFIG(TAG)
+# ---------------
+# If TAG is the built-in tag, create an initial libtool script with a
+# default configuration from the untagged config vars. Otherwise add code
+# to config.status for appending the configuration named by TAG from the
+# matching tagged config vars.
+m4_defun([_LT_CONFIG],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_CONFIG_SAVE_COMMANDS([
+ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
+ m4_if(_LT_TAG, [C], [
+ # See if we are running on zsh, and set the options which allow our
+ # commands through without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+ fi
+
+ cfgfile="${ofile}T"
+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
+ $RM "$cfgfile"
+
+ cat <<_LT_EOF >> "$cfgfile"
+#! $SHELL
+
+# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+_LT_COPYING
+_LT_LIBTOOL_TAGS
+
+# ### BEGIN LIBTOOL CONFIG
+_LT_LIBTOOL_CONFIG_VARS
+_LT_LIBTOOL_TAG_VARS
+# ### END LIBTOOL CONFIG
+
+_LT_EOF
+
+ case $host_os in
+ aix3*)
+ cat <<\_LT_EOF >> "$cfgfile"
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+_LT_EOF
+ ;;
+ esac
+
+ _LT_PROG_LTMAIN
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ _LT_PROG_XSI_SHELLFNS
+
+ sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+],
+[cat <<_LT_EOF >> "$ofile"
+
+dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
+dnl in a comment (ie after a #).
+# ### BEGIN LIBTOOL TAG CONFIG: $1
+_LT_LIBTOOL_TAG_VARS(_LT_TAG)
+# ### END LIBTOOL TAG CONFIG: $1
+_LT_EOF
+])dnl /m4_if
+],
+[m4_if([$1], [], [
+ PACKAGE='$PACKAGE'
+ VERSION='$VERSION'
+ TIMESTAMP='$TIMESTAMP'
+ RM='$RM'
+ ofile='$ofile'], [])
+])dnl /_LT_CONFIG_SAVE_COMMANDS
+])# _LT_CONFIG
+
+
+# LT_SUPPORTED_TAG(TAG)
+# ---------------------
+# Trace this macro to discover what tags are supported by the libtool
+# --tag option, using:
+# autoconf --trace 'LT_SUPPORTED_TAG:$1'
+AC_DEFUN([LT_SUPPORTED_TAG], [])
+
+
+# C support is built-in for now
+m4_define([_LT_LANG_C_enabled], [])
+m4_define([_LT_TAGS], [])
+
+
+# LT_LANG(LANG)
+# -------------
+# Enable libtool support for the given language if not already enabled.
+AC_DEFUN([LT_LANG],
+[AC_BEFORE([$0], [LT_OUTPUT])dnl
+m4_case([$1],
+ [C], [_LT_LANG(C)],
+ [C++], [_LT_LANG(CXX)],
+ [Java], [_LT_LANG(GCJ)],
+ [Fortran 77], [_LT_LANG(F77)],
+ [Fortran], [_LT_LANG(FC)],
+ [Windows Resource], [_LT_LANG(RC)],
+ [m4_ifdef([_LT_LANG_]$1[_CONFIG],
+ [_LT_LANG($1)],
+ [m4_fatal([$0: unsupported language: "$1"])])])dnl
+])# LT_LANG
+
+
+# _LT_LANG(LANGNAME)
+# ------------------
+m4_defun([_LT_LANG],
+[m4_ifdef([_LT_LANG_]$1[_enabled], [],
+ [LT_SUPPORTED_TAG([$1])dnl
+ m4_append([_LT_TAGS], [$1 ])dnl
+ m4_define([_LT_LANG_]$1[_enabled], [])dnl
+ _LT_LANG_$1_CONFIG($1)])dnl
+])# _LT_LANG
+
+
+# _LT_LANG_DEFAULT_CONFIG
+# -----------------------
+m4_defun([_LT_LANG_DEFAULT_CONFIG],
+[AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [LT_LANG(CXX)],
+ [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_F77],
+ [LT_LANG(F77)],
+ [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
+
+AC_PROVIDE_IFELSE([AC_PROG_FC],
+ [LT_LANG(FC)],
+ [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
+
+dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
+dnl pulling things in needlessly.
+AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
+ [LT_LANG(GCJ)],
+ [m4_ifdef([AC_PROG_GCJ],
+ [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([A][M_PROG_GCJ],
+ [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
+ m4_ifdef([LT_PROG_GCJ],
+ [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
+
+AC_PROVIDE_IFELSE([LT_PROG_RC],
+ [LT_LANG(RC)],
+ [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
+])# _LT_LANG_DEFAULT_CONFIG
+
+# Obsolete macros:
+AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
+AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
+AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
+AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
+dnl AC_DEFUN([AC_LIBTOOL_F77], [])
+dnl AC_DEFUN([AC_LIBTOOL_FC], [])
+dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
+
+
+# _LT_TAG_COMPILER
+# ----------------
+m4_defun([_LT_TAG_COMPILER],
+[AC_REQUIRE([AC_PROG_CC])dnl
+
+_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
+_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
+_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
+_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# If no C compiler flags were specified, use CFLAGS.
+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+])# _LT_TAG_COMPILER
+
+
+# _LT_COMPILER_BOILERPLATE
+# ------------------------
+# Check for compiler boilerplate output or warnings with
+# the simple compiler test code.
+m4_defun([_LT_COMPILER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_compiler_boilerplate=`cat conftest.err`
+$RM conftest*
+])# _LT_COMPILER_BOILERPLATE
+
+
+# _LT_LINKER_BOILERPLATE
+# ----------------------
+# Check for linker boilerplate output or warnings with
+# the simple link test code.
+m4_defun([_LT_LINKER_BOILERPLATE],
+[m4_require([_LT_DECL_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
+_lt_linker_boilerplate=`cat conftest.err`
+$RM -r conftest*
+])# _LT_LINKER_BOILERPLATE
+
+# _LT_REQUIRED_DARWIN_CHECKS
+# -------------------------
+m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
+ case $host_os in
+ rhapsody* | darwin*)
+ AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+ AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+ AC_CHECK_TOOL([LIPO], [lipo], [:])
+ AC_CHECK_TOOL([OTOOL], [otool], [:])
+ AC_CHECK_TOOL([OTOOL64], [otool64], [:])
+ _LT_DECL([], [DSYMUTIL], [1],
+ [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
+ _LT_DECL([], [NMEDIT], [1],
+ [Tool to change global to local symbols on Mac OS X])
+ _LT_DECL([], [LIPO], [1],
+ [Tool to manipulate fat objects and archives on Mac OS X])
+ _LT_DECL([], [OTOOL], [1],
+ [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+ _LT_DECL([], [OTOOL64], [1],
+ [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
+
+ AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+ [lt_cv_apple_cc_single_mod=no
+ if test -z "${LT_MULTI_MODULE}"; then
+ # By default we will add the -single_module flag. You can override
+ # by either setting the environment variable LT_MULTI_MODULE
+ # non-empty at configure time, or by adding -multi_module to the
+ # link flags.
+ rm -rf libconftest.dylib*
+ echo "int foo(void){return 1;}" > conftest.c
+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+ _lt_result=$?
+ if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
+ lt_cv_apple_cc_single_mod=yes
+ else
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ fi
+ rm -rf libconftest.dylib*
+ rm -f conftest.*
+ fi])
+ AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+ [lt_cv_ld_exported_symbols_list],
+ [lt_cv_ld_exported_symbols_list=no
+ save_LDFLAGS=$LDFLAGS
+ echo "_main" > conftest.sym
+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [lt_cv_ld_exported_symbols_list=yes],
+ [lt_cv_ld_exported_symbols_list=no])
+ LDFLAGS="$save_LDFLAGS"
+ ])
+ case $host_os in
+ rhapsody* | darwin1.[[012]])
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+ darwin1.*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ darwin*) # darwin 5.x on
+ # if running on 10.5 or later, the deployment target defaults
+ # to the OS version, if on x86, and 10.4, the deployment
+ # target defaults to 10.4. Don't you love it?
+ case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ 10.[[012]]*)
+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 10.*)
+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+ esac
+ ;;
+ esac
+ if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+ _lt_dar_single_mod='$single_module'
+ fi
+ if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+ _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+ else
+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ if test "$DSYMUTIL" != ":"; then
+ _lt_dsymutil='~$DSYMUTIL $lib || :'
+ else
+ _lt_dsymutil=
+ fi
+ ;;
+ esac
+])
+
+
+# _LT_DARWIN_LINKER_FEATURES
+# --------------------------
+# Checks for linker and compiler features on darwin
+m4_defun([_LT_DARWIN_LINKER_FEATURES],
+[
+ m4_require([_LT_REQUIRED_DARWIN_CHECKS])
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=''
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+ case $cc_basename in
+ ifort*) _lt_dar_can_shared=yes ;;
+ *) _lt_dar_can_shared=$GCC ;;
+ esac
+ if test "$_lt_dar_can_shared" = "yes"; then
+ output_verbose_link_cmd=echo
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+ _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+ _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+ m4_if([$1], [CXX],
+[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+ _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+ fi
+],[])
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+])
+
+# _LT_SYS_MODULE_PATH_AIX
+# -----------------------
+# Links a minimal program and checks the executable
+# for the system default hardcoded library path. In most cases,
+# this is /usr/lib:/lib, but when the MPI compilers are used
+# the location of the communication and MPI libs are included too.
+# If we don't find anything, use the default library path according
+# to the aix ld manual.
+m4_defun([_LT_SYS_MODULE_PATH_AIX],
+[m4_require([_LT_DECL_SED])dnl
+AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+lt_aix_libpath_sed='
+ /Import File Strings/,/^$/ {
+ /^0/ {
+ s/^0 *\(.*\)$/\1/
+ p
+ }
+ }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi],[])
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+])# _LT_SYS_MODULE_PATH_AIX
+
+
+# _LT_SHELL_INIT(ARG)
+# -------------------
+m4_define([_LT_SHELL_INIT],
+[ifdef([AC_DIVERSION_NOTICE],
+ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+ [AC_DIVERT_PUSH(NOTICE)])
+$1
+AC_DIVERT_POP
+])# _LT_SHELL_INIT
+
+
+# _LT_PROG_ECHO_BACKSLASH
+# -----------------------
+# Add some code to the start of the generated configure script which
+# will find an echo command which doesn't interpret backslashes.
+m4_defun([_LT_PROG_ECHO_BACKSLASH],
+[_LT_SHELL_INIT([
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$lt_ECHO in
+X*--fallback-echo)
+ # Remove one level of quotation (which was required for Make).
+ ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+ ;;
+esac
+
+ECHO=${lt_ECHO-echo}
+if test "X[$]1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X[$]1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
+ # Yippee, $ECHO works!
+ :
+else
+ # Restart under the correct shell.
+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+fi
+
+if test "X[$]1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<_LT_EOF
+[$]*
+_LT_EOF
+ exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test -z "$lt_ECHO"; then
+ if test "X${echo_test_string+set}" != Xset; then
+ # find a string as large as possible, as long as the shell can cope with it
+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+ if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
+ { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
+ then
+ break
+ fi
+ done
+ fi
+
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ :
+ else
+ # The Solaris, AIX, and Digital Unix default echo programs unquote
+ # backslashes. This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ #
+ # So, first we look for a working echo in the user's PATH.
+
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for dir in $PATH /usr/ucb; do
+ IFS="$lt_save_ifs"
+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$dir/echo"
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ if test "X$ECHO" = Xecho; then
+ # We didn't find a better echo, so look for alternatives.
+ if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # This shell has a builtin print -r that does the trick.
+ ECHO='print -r'
+ elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
+ test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running configure again with it.
+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ export ORIGINAL_CONFIG_SHELL
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+ else
+ # Try using printf.
+ ECHO='printf %s\n'
+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # Cool, printf works
+ :
+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+ export CONFIG_SHELL
+ SHELL="$CONFIG_SHELL"
+ export SHELL
+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
+ else
+ # maybe with a smaller string...
+ prev=:
+
+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+ if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
+ then
+ break
+ fi
+ prev="$cmd"
+ done
+
+ if test "$prev" != 'sed 50q "[$]0"'; then
+ echo_test_string=`eval $prev`
+ export echo_test_string
+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+ else
+ # Oops. We lost completely, so just stick with echo.
+ ECHO=echo
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+lt_ECHO=$ECHO
+if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+ lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+fi
+
+AC_SUBST(lt_ECHO)
+])
+_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
+_LT_DECL([], [ECHO], [1],
+ [An echo program that does not interpret backslashes])
+])# _LT_PROG_ECHO_BACKSLASH
+
+
+# _LT_ENABLE_LOCK
+# ---------------
+m4_defun([_LT_ENABLE_LOCK],
+[AC_ARG_ENABLE([libtool-lock],
+ [AS_HELP_STRING([--disable-libtool-lock],
+ [avoid locking (might break parallel builds)])])
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE="32"
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE="64"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out which ABI we are using.
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *32-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_i386_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ ppc64-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ case $host in
+ x86_64-*kfreebsd*-gnu)
+ LD="${LD-ld} -m elf_x86_64_fbsd"
+ ;;
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ ppc*-*linux*|powerpc*-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+ [AC_LANG_PUSH(C)
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+ AC_LANG_POP])
+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS="$SAVE_CFLAGS"
+ fi
+ ;;
+sparc*-*solaris*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.o` in
+ *64-bit*)
+ case $lt_cv_prog_gnu_ld in
+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
+ *)
+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+ LD="${LD-ld} -64"
+ fi
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+esac
+
+need_locks="$enable_libtool_lock"
+])# _LT_ENABLE_LOCK
+
+
+# _LT_CMD_OLD_ARCHIVE
+# -------------------
+m4_defun([_LT_CMD_OLD_ARCHIVE],
+[AC_CHECK_TOOL(AR, ar, false)
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+_LT_DECL([], [AR], [1], [The archiver])
+_LT_DECL([], [AR_FLAGS], [1])
+
+AC_CHECK_TOOL(STRIP, strip, :)
+test -z "$STRIP" && STRIP=:
+_LT_DECL([], [STRIP], [1], [A symbol stripping program])
+
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+test -z "$RANLIB" && RANLIB=:
+_LT_DECL([], [RANLIB], [1],
+ [Commands used to install an old-style archive])
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ openbsd*)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
+ ;;
+ *)
+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+_LT_DECL([], [old_postinstall_cmds], [2])
+_LT_DECL([], [old_postuninstall_cmds], [2])
+_LT_TAGDECL([], [old_archive_cmds], [2],
+ [Commands used to build an old-style archive])
+])# _LT_CMD_OLD_ARCHIVE
+
+
+# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------------------
+# Check whether the given compiler option works
+AC_DEFUN([_LT_COMPILER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$3"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings other than the usual output.
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ fi
+ $RM conftest*
+])
+
+if test x"[$]$2" = xyes; then
+ m4_if([$5], , :, [$5])
+else
+ m4_if([$6], , :, [$6])
+fi
+])# _LT_COMPILER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
+
+
+# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------
+# Check whether the given linker option works
+AC_DEFUN([_LT_LINKER_OPTION],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $3"
+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The linker can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&AS_MESSAGE_LOG_FD
+ $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
+ if diff conftest.exp conftest.er2 >/dev/null; then
+ $2=yes
+ fi
+ else
+ $2=yes
+ fi
+ fi
+ $RM -r conftest*
+ LDFLAGS="$save_LDFLAGS"
+])
+
+if test x"[$]$2" = xyes; then
+ m4_if([$4], , :, [$4])
+else
+ m4_if([$5], , :, [$5])
+fi
+])# _LT_LINKER_OPTION
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
+
+
+# LT_CMD_MAX_LEN
+#---------------
+AC_DEFUN([LT_CMD_MAX_LEN],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+# find the maximum length of command line arguments
+AC_MSG_CHECKING([the maximum length of command line arguments])
+AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+ i=0
+ teststring="ABCD"
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw* | cegcc*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ amigaos*)
+ # On AmigaOS with pdksh, this test takes hours, literally.
+ # So we just punt and use a minimum line length of 8192.
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+ # This has been around since 386BSD, at least. Likely further.
+ if test -x /sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
+ elif test -x /usr/sbin/sysctl; then
+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
+ else
+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
+ fi
+ # And add a safety zone
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ ;;
+
+ interix*)
+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
+ lt_cv_sys_max_cmd_len=196608
+ ;;
+
+ osf*)
+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
+ # nice to cause kernel panics so lets avoid the loop below.
+ # First set a reasonable default.
+ lt_cv_sys_max_cmd_len=16384
+ #
+ if test -x /sbin/sysconfig; then
+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
+ esac
+ fi
+ ;;
+ sco3.2v5*)
+ lt_cv_sys_max_cmd_len=102400
+ ;;
+ sysv5* | sco5v6* | sysv4.2uw2*)
+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
+ if test -n "$kargmax"; then
+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
+ else
+ lt_cv_sys_max_cmd_len=32768
+ fi
+ ;;
+ *)
+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+ if test -n "$lt_cv_sys_max_cmd_len"; then
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+ else
+ # Make teststring a little bigger before we do anything with it.
+ # a 1K string should be a reasonable start.
+ for i in 1 2 3 4 5 6 7 8 ; do
+ teststring=$teststring$teststring
+ done
+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
+ = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ teststring=$teststring$teststring
+ done
+ # Only check the string length outside the loop.
+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
+ teststring=
+ # Add a significant safety factor because C++ compilers can tack on
+ # massive amounts of additional arguments before passing them to the
+ # linker. It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ fi
+ ;;
+ esac
+])
+if test -n $lt_cv_sys_max_cmd_len ; then
+ AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+else
+ AC_MSG_RESULT(none)
+fi
+max_cmd_len=$lt_cv_sys_max_cmd_len
+_LT_DECL([], [max_cmd_len], [0],
+ [What is the maximum length of a command?])
+])# LT_CMD_MAX_LEN
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
+
+
+# _LT_HEADER_DLFCN
+# ----------------
+m4_defun([_LT_HEADER_DLFCN],
+[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
+])# _LT_HEADER_DLFCN
+
+
+# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+# ----------------------------------------------------------------
+m4_defun([_LT_TRY_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test "$cross_compiling" = yes; then :
+ [$4]
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+[#line __oline__ "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+ else
+ puts (dlerror ());
+
+ return status;
+}]
+_LT_EOF
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) $1 ;;
+ x$lt_dlneed_uscore) $2 ;;
+ x$lt_dlunknown|x*) $3 ;;
+ esac
+ else :
+ # compilation failed
+ $3
+ fi
+fi
+rm -fr conftest*
+])# _LT_TRY_DLOPEN_SELF
+
+
+# LT_SYS_DLOPEN_SELF
+# ------------------
+AC_DEFUN([LT_SYS_DLOPEN_SELF],
+[m4_require([_LT_HEADER_DLFCN])dnl
+if test "x$enable_dlopen" != xyes; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen="load_add_on"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32* | cegcc*)
+ lt_cv_dlopen="LoadLibrary"
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen="dlopen"
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
+ lt_cv_dlopen="dyld"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ])
+ ;;
+
+ *)
+ AC_CHECK_FUNC([shl_load],
+ [lt_cv_dlopen="shl_load"],
+ [AC_CHECK_LIB([dld], [shl_load],
+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+ [AC_CHECK_FUNC([dlopen],
+ [lt_cv_dlopen="dlopen"],
+ [AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+ [AC_CHECK_LIB([svld], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+ [AC_CHECK_LIB([dld], [dld_link],
+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+ ])
+ ])
+ ])
+ ])
+ ])
+ ;;
+ esac
+
+ if test "x$lt_cv_dlopen" != xno; then
+ enable_dlopen=yes
+ else
+ enable_dlopen=no
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS="$CPPFLAGS"
+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS="$LDFLAGS"
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS="$LIBS"
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ AC_CACHE_CHECK([whether a program can dlopen itself],
+ lt_cv_dlopen_self, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+ ])
+
+ if test "x$lt_cv_dlopen_self" = xyes; then
+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+ lt_cv_dlopen_self_static, [dnl
+ _LT_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
+ ])
+ fi
+
+ CPPFLAGS="$save_CPPFLAGS"
+ LDFLAGS="$save_LDFLAGS"
+ LIBS="$save_LIBS"
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+_LT_DECL([dlopen_support], [enable_dlopen], [0],
+ [Whether dlopen is supported])
+_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
+ [Whether dlopen of programs is supported])
+_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
+ [Whether dlopen of statically linked programs is supported])
+])# LT_SYS_DLOPEN_SELF
+
+# Old name:
+AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
+
+
+# _LT_COMPILER_C_O([TAGNAME])
+# ---------------------------
+# Check to see if options -c and -o are simultaneously supported by compiler.
+# This macro does not hard code the compiler like AC_PROG_CC_C_O.
+m4_defun([_LT_COMPILER_C_O],
+[m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+ $RM -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
+ _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+ fi
+ fi
+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
+ $RM conftest*
+ # SGI C++ compiler will create directory out/ii_files/ for
+ # template instantiation
+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
+ $RM out/* && rmdir out
+ cd ..
+ $RM -r conftest
+ $RM conftest*
+])
+_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
+ [Does compiler simultaneously support -c and -o options?])
+])# _LT_COMPILER_C_O
+
+
+# _LT_COMPILER_FILE_LOCKS([TAGNAME])
+# ----------------------------------
+# Check to see if we can do hard links to lock some files if needed
+m4_defun([_LT_COMPILER_FILE_LOCKS],
+[m4_require([_LT_ENABLE_LOCK])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+_LT_COMPILER_C_O([$1])
+
+hard_links="nottested"
+if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+ # do not overwrite the value of need_locks provided by the user
+ AC_MSG_CHECKING([if we can lock with hard links])
+ hard_links=yes
+ $RM conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ AC_MSG_RESULT([$hard_links])
+ if test "$hard_links" = no; then
+ AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
+])# _LT_COMPILER_FILE_LOCKS
+
+
+# _LT_CHECK_OBJDIR
+# ----------------
+m4_defun([_LT_CHECK_OBJDIR],
+[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+[rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null])
+objdir=$lt_cv_objdir
+_LT_DECL([], [objdir], [0],
+ [The name of the directory that contains temporary libtool files])dnl
+m4_pattern_allow([LT_OBJDIR])dnl
+AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
+ [Define to the sub-directory in which libtool stores uninstalled libraries.])
+])# _LT_CHECK_OBJDIR
+
+
+# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
+# --------------------------------------
+# Check hardcoding attributes.
+m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
+[AC_MSG_CHECKING([how to hardcode library paths into programs])
+_LT_TAGVAR(hardcode_action, $1)=
+if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
+ test -n "$_LT_TAGVAR(runpath_var, $1)" ||
+ test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+
+ # We can hardcode non-existent directories.
+ if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
+ test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+ # Linking always hardcodes the temporary library directory.
+ _LT_TAGVAR(hardcode_action, $1)=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ _LT_TAGVAR(hardcode_action, $1)=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ _LT_TAGVAR(hardcode_action, $1)=unsupported
+fi
+AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
+
+if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
+ test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+ test "$enable_shared" = no; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+_LT_TAGDECL([], [hardcode_action], [0],
+ [How to hardcode a shared library path into an executable])
+])# _LT_LINKER_HARDCODE_LIBPATH
+
+
+# _LT_CMD_STRIPLIB
+# ----------------
+m4_defun([_LT_CMD_STRIPLIB],
+[m4_require([_LT_DECL_EGREP])
+striplib=
+old_striplib=
+AC_MSG_CHECKING([whether stripping libraries is possible])
+if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+ AC_MSG_RESULT([yes])
+else
+# FIXME - insert some real tests, host_os isn't really good enough
+ case $host_os in
+ darwin*)
+ if test -n "$STRIP" ; then
+ striplib="$STRIP -x"
+ old_striplib="$STRIP -S"
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ fi
+ ;;
+ *)
+ AC_MSG_RESULT([no])
+ ;;
+ esac
+fi
+_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
+_LT_DECL([], [striplib], [1])
+])# _LT_CMD_STRIPLIB
+
+
+# _LT_SYS_DYNAMIC_LINKER([TAG])
+# -----------------------------
+# PORTME Fill in your ld.so characteristics
+m4_defun([_LT_SYS_DYNAMIC_LINKER],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_OBJDUMP])dnl
+m4_require([_LT_DECL_SED])dnl
+AC_MSG_CHECKING([dynamic linker characteristics])
+m4_if([$1],
+ [], [
+if test "$GCC" = yes; then
+ case $host_os in
+ darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+ *) lt_awk_arg="/^libraries:/" ;;
+ esac
+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
+ # if the path contains ";" then we assume it to be the separator
+ # otherwise default to the standard path separator (i.e. ":") - it is
+ # assumed that no part of a normal pathname contains ";" but that should
+ # okay in the real world where ";" in dirpaths is itself problematic.
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ # Ok, now we have the path, separated by spaces, we can step through it
+ # and add multilib dir if necessary.
+ lt_tmp_lt_search_path_spec=
+ lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+ for lt_sys_path in $lt_search_path_spec; do
+ if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+ else
+ test -d "$lt_sys_path" && \
+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+ fi
+ done
+ lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+ lt_foo="";
+ lt_count=0;
+ for (lt_i = NF; lt_i > 0; lt_i--) {
+ if ($lt_i != "" && $lt_i != ".") {
+ if ($lt_i == "..") {
+ lt_count++;
+ } else {
+ if (lt_count == 0) {
+ lt_foo="/" $lt_i lt_foo;
+ } else {
+ lt_count--;
+ }
+ }
+ }
+ }
+ if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+ if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+}'`
+ sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
+else
+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+fi])
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext_cmds=".so"
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+case $host_os in
+aix3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+
+aix[[4-9]]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test "$host_cpu" = ia64; then
+ # AIX 5 supports IA64
+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[[01]] | aix4.[[01]].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ if test "$aix_use_runtimelinking" = yes; then
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ else
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='${libname}${release}.a $libname.a'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ fi
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ case $host_cpu in
+ powerpc)
+ # Since July 2007 AmigaOS4 officially supports .so libraries.
+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ ;;
+ m68k)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+ ;;
+ esac
+ ;;
+
+beos*)
+ library_names_spec='${libname}${shared_ext}'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi[[45]]*)
+ version_type=linux
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32* | cegcc*)
+ version_type=windows
+ shrext_cmds=".dll"
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$host_os in
+ yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname~
+ chmod a+x \$dldir/$dlname~
+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+ fi'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $RM \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+ ;;
+ mingw* | cegcc*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
+ # It is most probably a Windows format PATH printed by
+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
+ # path with ; separators, and with drive letters. We can handle the
+ # drive letters (cygwin fileutils understands them), so leave them,
+ # especially as we might pass files found there to a mingw objdump,
+ # which wouldn't understand a cygwinified path. Ahh.
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
+ ;;
+
+ *)
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ soname_spec='${libname}${release}${major}$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+m4_if([$1], [],[
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd1*)
+ dynamic_linker=no
+ ;;
+
+freebsd* | dragonfly*)
+ # DragonFly does not have aout. When/if they implement a new
+ # versioning mechanism, adjust this.
+ if test -x /usr/bin/objformat; then
+ objformat=`/usr/bin/objformat`
+ else
+ case $host_os in
+ freebsd[[123]]*) objformat=aout ;;
+ *) objformat=elf ;;
+ esac
+ fi
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[[01]]* | freebsdelf3.[[01]]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ *) # from 4.6 on, and DragonFly
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case $host_cpu in
+ ia64*)
+ shrext_cmds='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ if test "X$HPUX_IA64_MODE" = X32; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ hppa*64*)
+ shrext_cmds='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext_cmds='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
+ postinstall_cmds='chmod 555 $lib'
+ ;;
+
+interix[[3-9]]*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ version_type=linux
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # Some binutils ld are patched to set DT_RUNPATH
+ save_LDFLAGS=$LDFLAGS
+ save_libdir=$libdir
+ eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
+ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+ [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
+ [shlibpath_overrides_runpath=yes])])
+ LDFLAGS=$save_LDFLAGS
+ libdir=$save_libdir
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # Append ld.so.conf contents to the search path
+ if test -f /etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ fi
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+*nto* | *qnx*)
+ version_type=qnx
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='ldqnx.so'
+ ;;
+
+openbsd*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
+ need_lib_prefix=no
+ # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
+ case $host_os in
+ openbsd3.3 | openbsd3.3.*) need_version=yes ;;
+ *) need_version=no ;;
+ esac
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ case $host_os in
+ openbsd2.[[89]] | openbsd2.[[89]].*)
+ shlibpath_overrides_runpath=no
+ ;;
+ *)
+ shlibpath_overrides_runpath=yes
+ ;;
+ esac
+ else
+ shlibpath_overrides_runpath=yes
+ fi
+ ;;
+
+os2*)
+ libname_spec='$name'
+ shrext_cmds=".dll"
+ need_lib_prefix=no
+ library_names_spec='$libname${shared_ext} $libname.a'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=LIBPATH
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ 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"
+ ;;
+
+rdos*)
+ dynamic_linker=no
+ ;;
+
+solaris*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test "$with_gnu_ld" = yes; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec ;then
+ version_type=linux
+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+ soname_spec='$libname${shared_ext}.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ version_type=freebsd-elf
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ if test "$with_gnu_ld" = yes; then
+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
+ else
+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+ case $host_os in
+ sco3.2v5*)
+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
+ ;;
+ esac
+ fi
+ sys_lib_dlsearch_path_spec='/usr/lib'
+ ;;
+
+tpf*)
+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
+uts4*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+AC_MSG_RESULT([$dynamic_linker])
+test "$dynamic_linker" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+ sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+fi
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+ sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+fi
+
+_LT_DECL([], [variables_saved_for_relink], [1],
+ [Variables whose values should be saved in libtool wrapper scripts and
+ restored at link time])
+_LT_DECL([], [need_lib_prefix], [0],
+ [Do we need the "lib" prefix for modules?])
+_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
+_LT_DECL([], [version_type], [0], [Library versioning type])
+_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
+_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
+_LT_DECL([], [shlibpath_overrides_runpath], [0],
+ [Is shlibpath searched before the hard-coded library search path?])
+_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+_LT_DECL([], [library_names_spec], [1],
+ [[List of archive names. First name is the real one, the rest are links.
+ The last name is the one that the linker finds with -lNAME]])
+_LT_DECL([], [soname_spec], [1],
+ [[The coded name of the library, if different from the real name]])
+_LT_DECL([], [postinstall_cmds], [2],
+ [Command to use after installation of a shared archive])
+_LT_DECL([], [postuninstall_cmds], [2],
+ [Command to use after uninstallation of a shared archive])
+_LT_DECL([], [finish_cmds], [2],
+ [Commands used to finish a libtool library installation in a directory])
+_LT_DECL([], [finish_eval], [1],
+ [[As "finish_cmds", except a single script fragment to be evaled but
+ not shown]])
+_LT_DECL([], [hardcode_into_libs], [0],
+ [Whether we should hardcode library paths into libraries])
+_LT_DECL([], [sys_lib_search_path_spec], [2],
+ [Compile-time system search path for libraries])
+_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
+ [Run-time system search path for libraries])
+])# _LT_SYS_DYNAMIC_LINKER
+
+
+# _LT_PATH_TOOL_PREFIX(TOOL)
+# --------------------------
+# find a file program which can recognize shared library
+AC_DEFUN([_LT_PATH_TOOL_PREFIX],
+[m4_require([_LT_DECL_EGREP])dnl
+AC_MSG_CHECKING([for $1])
+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+[case $MAGIC_CMD in
+[[\\/*] | ?:[\\/]*])
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+dnl $ac_dummy forces splitting on constant user-supplied paths.
+dnl POSIX.2 word splitting is done only on the output of word expansions,
+dnl not every word. This closes a longstanding sh security hole.
+ ac_dummy="m4_if([$2], , $PATH, [$2])"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$1; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+_LT_EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac])
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ AC_MSG_RESULT($MAGIC_CMD)
+else
+ AC_MSG_RESULT(no)
+fi
+_LT_DECL([], [MAGIC_CMD], [0],
+ [Used to examine libraries when file_magic_cmd begins with "file"])dnl
+])# _LT_PATH_TOOL_PREFIX
+
+# Old name:
+AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
+
+
+# _LT_PATH_MAGIC
+# --------------
+# find a file program which can recognize a shared library
+m4_defun([_LT_PATH_MAGIC],
+[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+ else
+ MAGIC_CMD=:
+ fi
+fi
+])# _LT_PATH_MAGIC
+
+
+# LT_PATH_LD
+# ----------
+# find the pathname to the GNU or non-GNU linker
+AC_DEFUN([LT_PATH_LD],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+
+AC_ARG_WITH([gnu-ld],
+ [AS_HELP_STRING([--with-gnu-ld],
+ [assume the C compiler uses GNU ld @<:@default=no@:>@])],
+ [test "$withval" = no || with_gnu_ld=yes],
+ [with_gnu_ld=no])dnl
+
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ AC_MSG_CHECKING([for ld used by $CC])
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [[\\/]]* | ?:[[\\/]]*)
+ re_direlt='/[[^/]][[^/]]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
+ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ AC_MSG_CHECKING([for GNU ld])
+else
+ AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(lt_cv_path_LD,
+[if test -z "$LD"; then
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+else
+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$lt_cv_path_LD"
+if test -n "$LD"; then
+ AC_MSG_RESULT($LD)
+else
+ AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+_LT_PATH_LD_GNU
+AC_SUBST([LD])
+
+_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
+])# LT_PATH_LD
+
+# Old names:
+AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
+AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_LD], [])
+dnl AC_DEFUN([AC_PROG_LD], [])
+
+
+# _LT_PATH_LD_GNU
+#- --------------
+m4_defun([_LT_PATH_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac])
+with_gnu_ld=$lt_cv_prog_gnu_ld
+])# _LT_PATH_LD_GNU
+
+
+# _LT_CMD_RELOAD
+# --------------
+# find reload flag for linker
+# -- PORTME Some linkers may need a different reload flag.
+m4_defun([_LT_CMD_RELOAD],
+[AC_CACHE_CHECK([for $LD option to reload object files],
+ lt_cv_ld_reload_flag,
+ [lt_cv_ld_reload_flag='-r'])
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+case $host_os in
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+ else
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ fi
+ ;;
+esac
+_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
+_LT_DECL([], [reload_cmds], [2])dnl
+])# _LT_CMD_RELOAD
+
+
+# _LT_CHECK_MAGIC_METHOD
+# ----------------------
+# how to check for library dependencies
+# -- PORTME fill in with the dynamic library characteristics
+m4_defun([_LT_CHECK_MAGIC_METHOD],
+[m4_require([_LT_DECL_EGREP])
+m4_require([_LT_DECL_OBJDUMP])
+AC_CACHE_CHECK([how to recognize dependent libraries],
+lt_cv_deplibs_check_method,
+[lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given extended regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix[[4-9]]*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi[[45]]*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ # func_win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ ;;
+
+mingw* | pw32*)
+ # Base MSYS/MinGW do not provide the 'file' command needed by
+ # func_win32_libid shell function, so use a weaker test based on 'objdump',
+ # unless we find 'file', for example because we are cross-compiling.
+ if ( file / ) >/dev/null 2>&1; then
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+
+cegcc)
+ # use the weaker test based on 'objdump'. See mingw*.
+ lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ ;;
+
+darwin* | rhapsody*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | dragonfly*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ case $host_cpu in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+interix[[3-9]]*)
+ # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be Linux ELF.
+linux* | k*bsd*-gnu)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+*nto* | *qnx*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+openbsd*)
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+rdos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sysv4 | sysv4.3*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ pc)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+tpf*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+])
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+_LT_DECL([], [deplibs_check_method], [1],
+ [Method to check whether dependent libraries are shared objects])
+_LT_DECL([], [file_magic_cmd], [1],
+ [Command to use when deplibs_check_method == "file_magic"])
+])# _LT_CHECK_MAGIC_METHOD
+
+
+# LT_PATH_NM
+# ----------
+# find the pathname to a BSD- or MS-compatible name lister
+AC_DEFUN([LT_PATH_NM],
+[AC_REQUIRE([AC_PROG_CC])dnl
+AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
+[if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM="$NM"
+else
+ lt_nm_to_check="${ac_tool_prefix}nm"
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
+ lt_nm_to_check="$lt_nm_to_check nm"
+ fi
+ for lt_tmp_nm in $lt_nm_to_check; do
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/$lt_tmp_nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+ done
+ : ${lt_cv_path_NM=no}
+fi])
+if test "$lt_cv_path_NM" != "no"; then
+ NM="$lt_cv_path_NM"
+else
+ # Didn't find any BSD compatible name lister, look for dumpbin.
+ AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
+ AC_SUBST([DUMPBIN])
+ if test "$DUMPBIN" != ":"; then
+ NM="$DUMPBIN"
+ fi
+fi
+test -z "$NM" && NM=nm
+AC_SUBST([NM])
+_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
+
+AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
+ [lt_cv_nm_interface="BSD nm"
+ echo "int some_variable = 0;" > conftest.$ac_ext
+ (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$ac_compile" 2>conftest.err)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
+ cat conftest.out >&AS_MESSAGE_LOG_FD
+ if $GREP 'External.*some_variable' conftest.out > /dev/null; then
+ lt_cv_nm_interface="MS dumpbin"
+ fi
+ rm -f conftest*])
+])# LT_PATH_NM
+
+# Old names:
+AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
+AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_PROG_NM], [])
+dnl AC_DEFUN([AC_PROG_NM], [])
+
+
+# LT_LIB_M
+# --------
+# check for math library
+AC_DEFUN([LT_LIB_M],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+LIBM=
+case $host in
+*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+ # These system don't have libm, or don't need it
+ ;;
+*-ncr-sysv4.3*)
+ AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+ AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+ ;;
+*)
+ AC_CHECK_LIB(m, cos, LIBM="-lm")
+ ;;
+esac
+AC_SUBST([LIBM])
+])# LT_LIB_M
+
+# Old name:
+AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_CHECK_LIBM], [])
+
+
+# _LT_COMPILER_NO_RTTI([TAGNAME])
+# -------------------------------
+m4_defun([_LT_COMPILER_NO_RTTI],
+[m4_require([_LT_TAG_COMPILER])dnl
+
+_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+
+if test "$GCC" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+
+ _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+ lt_cv_prog_compiler_rtti_exceptions,
+ [-fno-rtti -fno-exceptions], [],
+ [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+fi
+_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
+ [Compiler flag to turn off builtin functions])
+])# _LT_COMPILER_NO_RTTI
+
+
+# _LT_CMD_GLOBAL_SYMBOLS
+# ----------------------
+m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+AC_REQUIRE([LT_PATH_LD])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+[
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[[BCDEGRST]]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[[BCDT]]'
+ ;;
+cygwin* | mingw* | pw32* | cegcc*)
+ symcode='[[ABCDGISTW]]'
+ ;;
+hpux*)
+ if test "$host_cpu" = ia64; then
+ symcode='[[ABCDEGRST]]'
+ fi
+ ;;
+irix* | nonstopux*)
+ symcode='[[BCDEGRST]]'
+ ;;
+osf*)
+ symcode='[[BCDEGQRST]]'
+ ;;
+solaris*)
+ symcode='[[BDRT]]'
+ ;;
+sco3.2v5*)
+ symcode='[[DT]]'
+ ;;
+sysv4.2uw2*)
+ symcode='[[DT]]'
+ ;;
+sysv5* | sco5v6* | unixware* | OpenUNIX*)
+ symcode='[[ABDT]]'
+ ;;
+sysv4)
+ symcode='[[DFNSTU]]'
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[[ABCDGIRSTW]]' ;;
+esac
+
+# Transform an extracted symbol line into a proper C declaration.
+# Some systems (esp. on ia64) link data and code symbols differently,
+# so use this general approach.
+lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# Try without a prefix underscore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
+ symxfrm="\\1 $ac_symprfx\\2 \\2"
+
+ # Write the raw and C identifiers.
+ if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+ # Fake it for dumpbin and say T for any non-static function
+ # and D for any global variable.
+ # Also find C++ and __fastcall symbols from MSVC++,
+ # which start with @ or ?.
+ lt_cv_sys_global_symbol_pipe="$AWK ['"\
+" {last_section=section; section=\$ 3};"\
+" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+" \$ 0!~/External *\|/{next};"\
+" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
+" {if(hide[section]) next};"\
+" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
+" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
+" s[1]~/^[@?]/{print s[1], s[1]; next};"\
+" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+" ' prfx=^$ac_symprfx]"
+ else
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<_LT_EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(void);
+void nm_test_func(void){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+_LT_EOF
+
+ if AC_TRY_EVAL(ac_compile); then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_LT_EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
+
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+/* The mapping between symbol names and symbols. */
+const struct {
+ const char *name;
+ void *address;
+}
+lt__PROGRAM__LTX_preloaded_symbols[[]] =
+{
+ { "@PROGRAM@", (void *) 0 },
+_LT_EOF
+ $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+ cat <<\_LT_EOF >> conftest.$ac_ext
+ {0, (void *) 0}
+};
+
+/* This works around a problem in FreeBSD linker */
+#ifdef FREEBSD_WORKAROUND
+static const void *lt_preloaded_setup() {
+ return lt__PROGRAM__LTX_preloaded_symbols;
+}
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+_LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_save_LIBS="$LIBS"
+ lt_save_CFLAGS="$CFLAGS"
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+ LIBS="$lt_save_LIBS"
+ CFLAGS="$lt_save_CFLAGS"
+ else
+ echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+ cat conftest.$ac_ext >&5
+ fi
+ rm -rf conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test "$pipe_works" = yes; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+])
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ AC_MSG_RESULT(failed)
+else
+ AC_MSG_RESULT(ok)
+fi
+
+_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
+ [Take the output of nm and produce a listing of raw symbols and C names])
+_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
+ [Transform the output of nm in a proper C declaration])
+_LT_DECL([global_symbol_to_c_name_address],
+ [lt_cv_sys_global_symbol_to_c_name_address], [1],
+ [Transform the output of nm in a C name address pair])
+_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
+ [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
+ [Transform the output of nm in a C name address pair when lib prefix is needed])
+]) # _LT_CMD_GLOBAL_SYMBOLS
+
+
+# _LT_COMPILER_PIC([TAGNAME])
+# ---------------------------
+m4_defun([_LT_COMPILER_PIC],
+[m4_require([_LT_TAG_COMPILER])dnl
+_LT_TAGVAR(lt_prog_compiler_wl, $1)=
+_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+_LT_TAGVAR(lt_prog_compiler_static, $1)=
+
+AC_MSG_CHECKING([for $compiler option to produce PIC])
+m4_if([$1], [CXX], [
+ # C++ specific cases for pic, static, wl, etc.
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+ mingw* | cygwin* | os2* | pw32* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+ *djgpp*)
+ # DJGPP does not support shared libraries at all
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+ hpux*)
+ # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+ # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ case $host_cpu in
+ hppa*64*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ case $host_os in
+ aix[[4-9]]*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+ chorus*)
+ case $cc_basename in
+ cxch68*)
+ # Green Hills C++ Compiler
+ # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+ ;;
+ esac
+ ;;
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ freebsd* | dragonfly*)
+ # FreeBSD uses GNU C++
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ if test "$host_cpu" != ia64; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ fi
+ ;;
+ aCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ interix*)
+ # This is c89, which is MS Visual C++ (no shared libs)
+ # Anyone wants to do a port?
+ ;;
+ irix5* | irix6* | nonstopux*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ # CC pic flag -KPIC is the default.
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ KCC*)
+ # KAI C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ ecpc* )
+ # old Intel C++ for x86_64 which still supported -KPIC.
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ icpc* )
+ # Intel C++, used to be incompatible with GCC.
+ # ICC 10 doesn't accept -KPIC any more.
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ cxx*)
+ # Compaq C++
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xlc* | xlC*)
+ # IBM XL 8.0 on PPC
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ lynxos*)
+ ;;
+ m88k*)
+ ;;
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ netbsd*)
+ ;;
+ *qnx* | *nto*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ cxx*)
+ # Digital/Compaq C++
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ psos*)
+ ;;
+ solaris*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ lcc*)
+ # Lucid
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ esac
+ ;;
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ vxworks*)
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+],
+[
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ m68k)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ esac
+ ;;
+
+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ # Although the cygwin gcc ignores -fPIC, still need this for old-style
+ # (--disable-auto-import) libraries
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+
+ hpux*)
+ # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
+ # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ case $host_cpu in
+ hppa*64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ enable_shared=no
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ m4_if([$1], [GCJ], [],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case $host_cpu in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC (with -KPIC) is the default.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ # old Intel for x86_64 which still supported -KPIC.
+ ecc*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ # icc used to be incompatible with GCC.
+ # ICC 10 doesn't accept -KPIC any more.
+ icc* | ifort*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ # Lahey Fortran 8.1.
+ lf95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ ccc*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All Alpha code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ xl*)
+ # IBM XL C 8.0/Fortran 10.1 on PPC
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C 5.9
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ ;;
+ *Sun\ F*)
+ # Sun Fortran 8.3 passes all unrecognized flags to the linker
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *nto* | *qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
+ ;;
+
+ osf3* | osf4* | osf5*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All OSF/1 code is PIC.
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ rdos*)
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ case $cc_basename in
+ f77* | f90* | f95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec ;then
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ unicos*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *)
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+])
+case $host_os in
+ # For platforms which do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ *)
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
+ ;;
+esac
+AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
+_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
+ [How to pass a linker flag through the compiler])
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
+ _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
+ [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
+ [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
+ [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
+ "" | " "*) ;;
+ *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+ esac],
+ [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+fi
+_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
+ [Additional compiler flags for building library objects])
+
+#
+# Check to make sure the static flag actually works.
+#
+wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
+_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
+ _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
+ $lt_tmp_static_flag,
+ [],
+ [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
+_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+ [Compiler flag to prevent dynamic linking])
+])# _LT_COMPILER_PIC
+
+
+# _LT_LINKER_SHLIBS([TAGNAME])
+# ----------------------------
+# See if the linker supports building shared libraries.
+m4_defun([_LT_LINKER_SHLIBS],
+[AC_REQUIRE([LT_PATH_LD])dnl
+AC_REQUIRE([LT_PATH_NM])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+m4_require([_LT_DECL_SED])dnl
+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
+m4_require([_LT_TAG_COMPILER])dnl
+AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+m4_if([$1], [CXX], [
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ case $host_os in
+ aix[[4-9]]*)
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ ;;
+ pw32*)
+ _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+ ;;
+ cygwin* | mingw* | cegcc*)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ *)
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ esac
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+], [
+ runpath_var=
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(archive_cmds, $1)=
+ _LT_TAGVAR(archive_expsym_cmds, $1)=
+ _LT_TAGVAR(compiler_needs_object, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ _LT_TAGVAR(hardcode_automatic, $1)=no
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ _LT_TAGVAR(hardcode_minus_L, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_TAGVAR(inherit_rpath, $1)=no
+ _LT_TAGVAR(link_all_deplibs, $1)=unknown
+ _LT_TAGVAR(module_cmds, $1)=
+ _LT_TAGVAR(module_expsym_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)=
+ _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+ _LT_TAGVAR(thread_safe_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ _LT_TAGVAR(include_expsyms, $1)=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ` (' and `)$', so one must not match beginning or
+ # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+ # as well as any symbol that contains `d'.
+ _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
+ extract_expsyms_cmds=
+
+ case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ # 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
+
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ if test "$with_gnu_ld" = yes; then
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='${wl}'
+
+ # 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.
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ supports_anon_versioning=no
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix[[3-9]]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+_LT_EOF
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+
+ gnu* | linux* | tpf* | k*bsd*-gnu)
+ tmp_diet=no
+ if test "$host_os" = linux-dietlibc; then
+ case $cc_basename in
+ diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
+ esac
+ fi
+ if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
+ && test "$tmp_diet" = no
+ then
+ tmp_addflag=
+ tmp_sharedflag='-shared'
+ case $cc_basename,$host_cpu in
+ pgcc*) # Portland Group C compiler
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+ pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag -Mnomain' ;;
+ ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
+ tmp_addflag=' -i_dynamic' ;;
+ efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
+ tmp_addflag=' -i_dynamic -nofor_main' ;;
+ ifc* | ifort*) # Intel Fortran compiler
+ tmp_addflag=' -nofor_main' ;;
+ lf95*) # Lahey Fortran 8.1
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ tmp_sharedflag='--shared' ;;
+ xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
+ tmp_sharedflag='-qmkshrobj'
+ tmp_addflag= ;;
+ esac
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*) # Sun C 5.9
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+ tmp_sharedflag='-G' ;;
+ *Sun\ F*) # Sun Fortran 8.3
+ tmp_sharedflag='-G' ;;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+
+ case $cc_basename in
+ xlf*)
+ # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris*)
+ if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ cat <<_LT_EOF 1>&2
+
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** reliably create shared libraries on SCO systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+_LT_EOF
+ ;;
+ *)
+ # For security reasons, it is highly recommended that you always
+ # use absolute paths for naming shared libraries, and exclude the
+ # DT_RUNPATH tag from executables and libraries. But doing so
+ # requires that you compile everything twice, which is a pain.
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ sunos4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+
+ if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+ runpath_var=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+ fi
+ 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]].*|aix[[5-9]]*)
+ 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
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ ;;
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds its shared libraries.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ case $host_cpu in
+ powerpc)
+ # see comment about AmigaOS4 .so support
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)=''
+ ;;
+ m68k)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ ;;
+
+ bsdi[[45]]*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # 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.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext_cmds=".dll"
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
+ # FIXME: Should let the user specify the lib program.
+ _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
+ _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ ;;
+
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ dgux*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ freebsd1*)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ hpux9*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+
+ hpux10*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ fi
+ ;;
+
+ hpux11*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ fi
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ fi
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+ AC_LINK_IFELSE(int foo(void) {},
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+ )
+ LDFLAGS="$save_LDFLAGS"
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ newsos6)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *nto* | *qnx*)
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ else
+ case $host_os in
+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ os2*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+ _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+ ;;
+
+ osf3*)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ else
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
+ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ fi
+ _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ solaris*)
+ _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
+ if test "$GCC" = yes; then
+ wlarc='${wl}'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+ wlarc=''
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+ ;;
+ *)
+ wlarc='${wl}'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ ;;
+ esac
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'. GCC discards it without `$wl',
+ # but is careful enough not to reorder.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ fi
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ sunos4*)
+ if test "x$host_vendor" = xsequent; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ ;;
+ motorola)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4.3*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ fi
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ if test "$GCC" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ fi
+ ;;
+
+ uts4*)
+ _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ if test x$host_vendor = xsni; then
+ case $host in
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+ ;;
+ esac
+ fi
+ fi
+])
+AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
+
+_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
+_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
+_LT_DECL([], [extract_expsyms_cmds], [2],
+ [The commands to extract the exported symbol list from a shared archive])
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
+x|xyes)
+ # Assume -lc should be added
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+
+ if test "$enable_shared" = yes && test "$GCC" = yes; then
+ case $_LT_TAGVAR(archive_cmds, $1) in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+ $RM conftest*
+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
+ pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
+ _LT_TAGVAR(allow_undefined_flag, $1)=
+ if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
+ then
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ else
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ fi
+ _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $RM conftest*
+ AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
+ ;;
+ esac
+ fi
+ ;;
+esac
+
+_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
+ [Whether or not to add -lc for building shared libraries])
+_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
+ [enable_shared_with_static_runtimes], [0],
+ [Whether or not to disallow shared libs when runtime libs are static])
+_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
+ [Compiler flag to allow reflexive dlopens])
+_LT_TAGDECL([], [whole_archive_flag_spec], [1],
+ [Compiler flag to generate shared objects directly from archives])
+_LT_TAGDECL([], [compiler_needs_object], [1],
+ [Whether the compiler copes with passing no objects directly])
+_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
+ [Create an old-style archive from a shared archive])
+_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
+ [Create a temporary old-style archive to link instead of a shared archive])
+_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
+_LT_TAGDECL([], [archive_expsym_cmds], [2])
+_LT_TAGDECL([], [module_cmds], [2],
+ [Commands used to build a loadable module if different from building
+ a shared archive.])
+_LT_TAGDECL([], [module_expsym_cmds], [2])
+_LT_TAGDECL([], [with_gnu_ld], [1],
+ [Whether we are building with GNU ld or not])
+_LT_TAGDECL([], [allow_undefined_flag], [1],
+ [Flag that allows shared libraries with undefined symbols to be built])
+_LT_TAGDECL([], [no_undefined_flag], [1],
+ [Flag that enforces no undefined symbols])
+_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
+ [Flag to hardcode $libdir into a binary during linking.
+ This must work even if $libdir does not exist])
+_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
+ [[If ld is used when linking, flag to hardcode $libdir into a binary
+ during linking. This must work even if $libdir does not exist]])
+_LT_TAGDECL([], [hardcode_libdir_separator], [1],
+ [Whether we need a single "-rpath" flag with a separated argument])
+_LT_TAGDECL([], [hardcode_direct], [0],
+ [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+ DIR into the resulting binary])
+_LT_TAGDECL([], [hardcode_direct_absolute], [0],
+ [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+ DIR into the resulting binary and the resulting library dependency is
+ "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+ library is relocated])
+_LT_TAGDECL([], [hardcode_minus_L], [0],
+ [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
+ [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
+ into the resulting binary])
+_LT_TAGDECL([], [hardcode_automatic], [0],
+ [Set to "yes" if building a shared library automatically hardcodes DIR
+ into the library and all subsequent libraries and executables linked
+ against it])
+_LT_TAGDECL([], [inherit_rpath], [0],
+ [Set to yes if linker adds runtime paths of dependent libraries
+ to runtime path list])
+_LT_TAGDECL([], [link_all_deplibs], [0],
+ [Whether libtool must link a program against all its dependency libraries])
+_LT_TAGDECL([], [fix_srcfile_path], [1],
+ [Fix the shell variable $srcfile for the compiler])
+_LT_TAGDECL([], [always_export_symbols], [0],
+ [Set to "yes" if exported symbols are required])
+_LT_TAGDECL([], [export_symbols_cmds], [2],
+ [The commands to list exported symbols])
+_LT_TAGDECL([], [exclude_expsyms], [1],
+ [Symbols that should not be listed in the preloaded symbols])
+_LT_TAGDECL([], [include_expsyms], [1],
+ [Symbols that must always be exported])
+_LT_TAGDECL([], [prelink_cmds], [2],
+ [Commands necessary for linking programs (against libraries) with templates])
+_LT_TAGDECL([], [file_list_spec], [1],
+ [Specify filename containing input files])
+dnl FIXME: Not yet implemented
+dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
+dnl [Compiler flag to generate thread safe objects])
+])# _LT_LINKER_SHLIBS
+
+
+# _LT_LANG_C_CONFIG([TAG])
+# ------------------------
+# Ensure that the configuration variables for a C compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_C_CONFIG],
+[m4_require([_LT_DECL_EGREP])dnl
+lt_save_CC="$CC"
+AC_LANG_PUSH(C)
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}'
+
+_LT_TAG_COMPILER
+# Save the default compiler, since it gets overwritten when the other
+# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
+compiler_DEFAULT=$CC
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+ LT_SYS_DLOPEN_SELF
+ _LT_CMD_STRIPLIB
+
+ # Report which library types will actually be built
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_CONFIG($1)
+fi
+AC_LANG_POP
+CC="$lt_save_CC"
+])# _LT_LANG_C_CONFIG
+
+
+# _LT_PROG_CXX
+# ------------
+# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
+# compiler, we have our own version here.
+m4_defun([_LT_PROG_CXX],
+[
+pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
+AC_PROG_CXX
+if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
+ ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
+ (test "X$CXX" != "Xg++"))) ; then
+ AC_PROG_CXXCPP
+else
+ _lt_caught_CXX_error=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_CXX
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_CXX], [])
+
+
+# _LT_LANG_CXX_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a C++ compiler are suitably
+# defined. These variables are subsequently used by _LT_CONFIG to write
+# the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_CXX_CONFIG],
+[AC_REQUIRE([_LT_PROG_CXX])dnl
+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_EGREP])dnl
+
+AC_LANG_PUSH(C++)
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(compiler_needs_object, $1)=no
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for C++ test sources.
+ac_ext=cpp
+
+# Object file extension for compiled C++ test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the CXX compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_caught_CXX_error" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="int some_variable = 0;"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC=$CC
+ lt_save_LD=$LD
+ lt_save_GCC=$GCC
+ GCC=$GXX
+ lt_save_with_gnu_ld=$with_gnu_ld
+ lt_save_path_LD=$lt_cv_path_LD
+ if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+ lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+ else
+ $as_unset lt_cv_prog_gnu_ld
+ fi
+ if test -n "${lt_cv_path_LDCXX+set}"; then
+ lt_cv_path_LD=$lt_cv_path_LDCXX
+ else
+ $as_unset lt_cv_path_LD
+ fi
+ test -z "${LDCXX+set}" || LD=$LDCXX
+ CC=${CXX-"c++"}
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ # We don't want -fno-exception when compiling C++ code, so set the
+ # no_builtin_flag separately
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+ else
+ _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+ fi
+
+ if test "$GXX" = yes; then
+ # Set up default GNU C++ configuration
+
+ LT_PATH_LD
+
+ # Check if GNU C++ uses GNU ld as the underlying linker, since the
+ # archiving commands below assume that GNU ld is being used.
+ if test "$with_gnu_ld" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+ # investigate it a little bit more. (MM)
+ wlarc='${wl}'
+
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if eval "`$CC -print-prog-name=ld` --help 2>&1" |
+ $GREP 'no-whole-archive' > /dev/null; then
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ with_gnu_ld=no
+ wlarc=
+
+ # A generic and very simple default shared library creation
+ # command for GNU C++ for the case where it uses the native
+ # linker, instead of GNU ld. If possible, this setting should
+ # overridden to take advantage of the native linker features on
+ # the platform it is being used on.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ fi
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+
+ else
+ GXX=no
+ with_gnu_ld=no
+ wlarc=
+ fi
+
+ # PORTME: fill in a description of your system's C++ link characteristics
+ AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ case $host_os in
+ aix3*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aix[[4-9]]*)
+ 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
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ 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]].*|aix[[5-9]]*)
+ for ld_flag in $LDFLAGS; do
+ case $ld_flag in
+ *-brtl*)
+ aix_use_runtimelinking=yes
+ break
+ ;;
+ esac
+ done
+ ;;
+ esac
+
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_TAGVAR(archive_cmds, $1)=''
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+
+ if test "$GXX" = yes; then
+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" &&
+ strings "$collect2name" | $GREP resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ _LT_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ esac
+ shared_flag='-shared'
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag="$shared_flag "'${wl}-G'
+ fi
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='${wl}-G'
+ else
+ shared_flag='${wl}-bM:SRE'
+ fi
+ fi
+ fi
+
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+ # It seems that -bexpall does not export symbols beginning with
+ # underscore (_), so it is better to generate a list of symbols to
+ # export.
+ _LT_TAGVAR(always_export_symbols, $1)=yes
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an empty
+ # executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+ _LT_SYS_MODULE_PATH_AIX
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds its shared
+ # libraries.
+ _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ chorus*)
+ case $cc_basename in
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ cygwin* | mingw* | pw32* | cegcc*)
+ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_TAGVAR(always_export_symbols, $1)=no
+ _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ darwin* | rhapsody*)
+ _LT_DARWIN_LINKER_FEATURES($1)
+ ;;
+
+ dgux*)
+ case $cc_basename in
+ ec++*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ ghcx*)
+ # Green Hills C++ Compiler
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ freebsd[[12]]*)
+ # C++ shared libraries reported to be fairly broken before
+ # switch to ELF
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ freebsd-elf*)
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ ;;
+
+ freebsd* | dragonfly*)
+ # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+ # conventions
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ gnu*)
+ ;;
+
+ hpux9*)
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ hpux10*|hpux11*)
+ if test $with_gnu_ld = no; then
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ case $host_cpu in
+ hppa*64*|ia64*)
+ ;;
+ *)
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+ esac
+ fi
+ case $host_cpu in
+ hppa*64*|ia64*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ *)
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+ ;;
+ esac
+
+ case $cc_basename in
+ CC*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC*)
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test $with_gnu_ld = no; then
+ case $host_cpu in
+ hppa*64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ ia64*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ ;;
+ esac
+ fi
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ interix[[3-9]]*)
+ _LT_TAGVAR(hardcode_direct, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
+ # Instead, shared libraries are loaded at an image base (0x10000000 by
+ # default) and relocated if they conflict, which is a slow very memory
+ # consuming and fragmenting process. To avoid this, we pick a random,
+ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
+ # time. Moving up from 0x10000000 also allows more sbrk(2) space.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+ ;;
+ irix5* | irix6*)
+ case $cc_basename in
+ CC*)
+ # SGI C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+
+ # Archives containing C++ object files must be created using
+ # "CC -ar", where "CC" is the IRIX C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
+ fi
+ fi
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+ esac
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_TAGVAR(inherit_rpath, $1)=yes
+ ;;
+
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # Archives containing C++ object files must be created using
+ # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+ ;;
+ icpc* | ecpc* )
+ # Intel C++
+ with_gnu_ld=yes
+ # version 8.0 and above of icpc choke on multiply defined symbols
+ # if we add $predep_objects and $postdep_objects, however 7.1 and
+ # earlier do not add the objects themselves.
+ case `$CC -V 2>&1` in
+ *"Version 7."*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ *) # Version 8.0 or newer
+ tmp_idyn=
+ case $host_cpu in
+ ia64*) tmp_idyn=' -i_dynamic';;
+ esac
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ ;;
+ esac
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+ ;;
+ pgCC* | pgcpp*)
+ # Portland Group C++ compiler
+ case `$CC -V` in
+ *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
+ _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+ compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
+ _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
+ $RANLIB $oldlib'
+ _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
+ rm -rf $tpldir~
+ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+ ;;
+ *) # Version 6 will use weak symbols
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ ;;
+ cxx*)
+ # Compaq C++
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+
+ runpath_var=LD_RUN_PATH
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ xl*)
+ # IBM XL 8.0 on PPC, with GNU ld
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
+ _LT_TAGVAR(compiler_needs_object, $1)=yes
+
+ # Not sure whether something based on
+ # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+ # would be better.
+ output_verbose_link_cmd='echo'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+
+ lynxos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ m88k*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ mvs*)
+ case $cc_basename in
+ cxx*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+ wlarc=
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ fi
+ # Workaround some broken pre-1.5 toolchains
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ ;;
+
+ *nto* | *qnx*)
+ _LT_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+
+ openbsd2*)
+ # C++ shared libraries are fairly broken
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ _LT_TAGVAR(hardcode_direct, $1)=yes
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ fi
+ output_verbose_link_cmd=echo
+ else
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC*)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Archives containing C++ object files must be created using
+ # the KAI C++ compiler.
+ case $host in
+ osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
+ *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
+ esac
+ ;;
+ RCC*)
+ # Rational C++ 2.4.1
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ cxx*)
+ case $host in
+ osf3*)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ ;;
+ *)
+ _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+ echo "-hidden">> $lib.exp~
+ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
+ $RM $lib.exp'
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
+ ;;
+ *)
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ case $host in
+ osf3*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ ;;
+ esac
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+
+ else
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+
+ psos*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ sunos4*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.x
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ lcc*)
+ # Lucid
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ solaris*)
+ case $cc_basename in
+ CC*)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+ _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ # The compiler driver will combine and reorder linker options,
+ # but understands `-z linker_flag'.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+ ;;
+ esac
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+
+ output_verbose_link_cmd='echo'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ gcx*)
+ # Green Hills C++ Compiler
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+
+ # The C++ compiler must be used to create the archive.
+ _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+ ;;
+ *)
+ # GNU C++ compiler with Solaris linker
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+ if $CC --version | $GREP -v '^2\.7' > /dev/null; then
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+ else
+ # g++ 2.7 appears to require `-G' NOT `-shared' on this
+ # platform.
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
+ fi
+
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *)
+ _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ ;;
+
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ sysv5* | sco3.2v5* | sco5v6*)
+ # Note: We can NOT use -z defs as we might desire, because we do not
+ # link with -lc, and that would cause any symbols used from libc to
+ # always be unresolved, which means just about no library would
+ # ever link correctly. If we're not using GNU ld we use -z text
+ # though, which does catch some bad symbols but isn't as heavy-handed
+ # as -z defs.
+ _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+ _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+ _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_TAGVAR(link_all_deplibs, $1)=yes
+ _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var='LD_RUN_PATH'
+
+ case $cc_basename in
+ CC*)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+ _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ ;;
+
+ tandem*)
+ case $cc_basename in
+ NCC*)
+ # NonStop-UX NCC 3.20
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ vxworks*)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+
+ AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
+ test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+ _LT_TAGVAR(GCC, $1)="$GXX"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ CC=$lt_save_CC
+ LDCXX=$LD
+ LD=$lt_save_LD
+ GCC=$lt_save_GCC
+ with_gnu_ld=$lt_save_with_gnu_ld
+ lt_cv_path_LDCXX=$lt_cv_path_LD
+ lt_cv_path_LD=$lt_save_path_LD
+ lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+fi # test "$_lt_caught_CXX_error" != yes
+
+AC_LANG_POP
+])# _LT_LANG_CXX_CONFIG
+
+
+# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
+# ---------------------------------
+# Figure out "hidden" library dependencies from verbose
+# compiler output when linking a shared library.
+# Parse the compiler output and extract the necessary
+# objects, libraries and library flags.
+m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+# Dependencies to place before and after the object being linked:
+_LT_TAGVAR(predep_objects, $1)=
+_LT_TAGVAR(postdep_objects, $1)=
+_LT_TAGVAR(predeps, $1)=
+_LT_TAGVAR(postdeps, $1)=
+_LT_TAGVAR(compiler_lib_search_path, $1)=
+
+dnl we can't use the lt_simple_compile_test_code here,
+dnl because it contains code intended for an executable,
+dnl not a library. It's possible we should let each
+dnl tag define a new lt_????_link_test_code variable,
+dnl but it's only used here...
+m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
+int a;
+void foo (void) { a = 0; }
+_LT_EOF
+], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
+class Foo
+{
+public:
+ Foo (void) { a = 0; }
+private:
+ int a;
+};
+_LT_EOF
+], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer*4 a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
+ subroutine foo
+ implicit none
+ integer a
+ a=0
+ return
+ end
+_LT_EOF
+], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
+public class foo {
+ private int a;
+ public void bar (void) {
+ a = 0;
+ }
+};
+_LT_EOF
+])
+dnl Parse the compiler output and extract the necessary
+dnl objects, libraries and library flags.
+if AC_TRY_EVAL(ac_compile); then
+ # Parse the compiler output and extract the necessary
+ # objects, libraries and library flags.
+
+ # Sentinel used to keep track of whether or not we are before
+ # the conftest object file.
+ pre_test_object_deps_done=no
+
+ for p in `eval "$output_verbose_link_cmd"`; do
+ case $p in
+
+ -L* | -R* | -l*)
+ # Some compilers place space between "-{L,R}" and the path.
+ # Remove the space.
+ if test $p = "-L" ||
+ test $p = "-R"; then
+ prev=$p
+ continue
+ else
+ prev=
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ case $p in
+ -L* | -R*)
+ # Internal compiler library paths should come after those
+ # provided the user. The postdeps already come after the
+ # user supplied libs so there is no need to process them.
+ if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
+ _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+ else
+ _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+ fi
+ ;;
+ # The "-l" case would never come before the object being
+ # linked, so don't bother handling this case.
+ esac
+ else
+ if test -z "$_LT_TAGVAR(postdeps, $1)"; then
+ _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+ else
+ _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+ fi
+ fi
+ ;;
+
+ *.$objext)
+ # This assumes that the test object file only shows up
+ # once in the compiler output.
+ if test "$p" = "conftest.$objext"; then
+ pre_test_object_deps_done=yes
+ continue
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
+ _LT_TAGVAR(predep_objects, $1)="$p"
+ else
+ _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
+ fi
+ else
+ if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
+ _LT_TAGVAR(postdep_objects, $1)="$p"
+ else
+ _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
+ fi
+ fi
+ ;;
+
+ *) ;; # Ignore the rest.
+
+ esac
+ done
+
+ # Clean up.
+ rm -f a.out a.exe
+else
+ echo "libtool.m4: error: problem compiling $1 test program"
+fi
+
+$RM -f confest.$objext
+
+# PORTME: override above test on systems where it is broken
+m4_if([$1], [CXX],
+[case $host_os in
+interix[[3-9]]*)
+ # Interix 3.5 installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ _LT_TAGVAR(predep_objects,$1)=
+ _LT_TAGVAR(postdep_objects,$1)=
+ _LT_TAGVAR(postdeps,$1)=
+ ;;
+
+linux*)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ # Sun C++ 5.9
+
+ # The more standards-conforming stlport4 library is
+ # incompatible with the Cstd library. Avoid specifying
+ # it if it's in CXXFLAGS. Ignore libCrun as
+ # -library=stlport4 depends on it.
+ case " $CXX $CXXFLAGS " in
+ *" -library=stlport4 "*)
+ solaris_use_stlport4=yes
+ ;;
+ esac
+
+ if test "$solaris_use_stlport4" != yes; then
+ _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+ fi
+ ;;
+ esac
+ ;;
+
+solaris*)
+ case $cc_basename in
+ CC*)
+ # The more standards-conforming stlport4 library is
+ # incompatible with the Cstd library. Avoid specifying
+ # it if it's in CXXFLAGS. Ignore libCrun as
+ # -library=stlport4 depends on it.
+ case " $CXX $CXXFLAGS " in
+ *" -library=stlport4 "*)
+ solaris_use_stlport4=yes
+ ;;
+ esac
+
+ # Adding this requires a known-good setup of shared libraries for
+ # Sun compiler versions before 5.6, else PIC objects from an old
+ # archive will be linked into the output, leading to subtle bugs.
+ if test "$solaris_use_stlport4" != yes; then
+ _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+ fi
+ ;;
+ esac
+ ;;
+esac
+])
+
+case " $_LT_TAGVAR(postdeps, $1) " in
+*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+esac
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
+ [The directories searched by this compiler when creating a shared library])
+_LT_TAGDECL([], [predep_objects], [1],
+ [Dependencies to place before and after the objects being linked to
+ create a shared library])
+_LT_TAGDECL([], [postdep_objects], [1])
+_LT_TAGDECL([], [predeps], [1])
+_LT_TAGDECL([], [postdeps], [1])
+_LT_TAGDECL([], [compiler_lib_search_path], [1],
+ [The library search path used internally by the compiler when linking
+ a shared library])
+])# _LT_SYS_HIDDEN_LIBDEPS
+
+
+# _LT_PROG_F77
+# ------------
+# Since AC_PROG_F77 is broken, in that it returns the empty string
+# if there is no fortran compiler, we have our own version here.
+m4_defun([_LT_PROG_F77],
+[
+pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
+AC_PROG_F77
+if test -z "$F77" || test "X$F77" = "Xno"; then
+ _lt_disable_F77=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_F77
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_F77], [])
+
+
+# _LT_LANG_F77_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for a Fortran 77 compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_F77_CONFIG],
+[AC_REQUIRE([_LT_PROG_F77])dnl
+AC_LANG_PUSH(Fortran 77)
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for f77 test sources.
+ac_ext=f
+
+# Object file extension for compiled f77 test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the F77 compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_disable_F77" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC="$CC"
+ lt_save_GCC=$GCC
+ CC=${F77-"f77"}
+ compiler=$CC
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+ GCC=$G77
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)="$G77"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC="$lt_save_CC"
+fi # test "$_lt_disable_F77" != yes
+
+AC_LANG_POP
+])# _LT_LANG_F77_CONFIG
+
+
+# _LT_PROG_FC
+# -----------
+# Since AC_PROG_FC is broken, in that it returns the empty string
+# if there is no fortran compiler, we have our own version here.
+m4_defun([_LT_PROG_FC],
+[
+pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
+AC_PROG_FC
+if test -z "$FC" || test "X$FC" = "Xno"; then
+ _lt_disable_FC=yes
+fi
+popdef([AC_MSG_ERROR])
+])# _LT_PROG_FC
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([_LT_PROG_FC], [])
+
+
+# _LT_LANG_FC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for a Fortran compiler are
+# suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_FC_CONFIG],
+[AC_REQUIRE([_LT_PROG_FC])dnl
+AC_LANG_PUSH(Fortran)
+
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_TAGVAR(allow_undefined_flag, $1)=
+_LT_TAGVAR(always_export_symbols, $1)=no
+_LT_TAGVAR(archive_expsym_cmds, $1)=
+_LT_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_TAGVAR(hardcode_direct, $1)=no
+_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_TAGVAR(hardcode_minus_L, $1)=no
+_LT_TAGVAR(hardcode_automatic, $1)=no
+_LT_TAGVAR(inherit_rpath, $1)=no
+_LT_TAGVAR(module_cmds, $1)=
+_LT_TAGVAR(module_expsym_cmds, $1)=
+_LT_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_TAGVAR(no_undefined_flag, $1)=
+_LT_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for fc test sources.
+ac_ext=${ac_fc_srcext-f}
+
+# Object file extension for compiled fc test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# No sense in running all these tests if we already determined that
+# the FC compiler isn't working. Some variables (like enable_shared)
+# are currently assumed to apply to all compilers on this platform,
+# and will be corrupted by setting them based on a non-working compiler.
+if test "$_lt_disable_FC" != yes; then
+ # Code to be used in simple compile tests
+ lt_simple_compile_test_code="\
+ subroutine t
+ return
+ end
+"
+
+ # Code to be used in simple link tests
+ lt_simple_link_test_code="\
+ program t
+ end
+"
+
+ # ltmain only uses $CC for tagged configurations so make sure $CC is set.
+ _LT_TAG_COMPILER
+
+ # save warnings/boilerplate of simple test code
+ _LT_COMPILER_BOILERPLATE
+ _LT_LINKER_BOILERPLATE
+
+ # Allow CC to be a program name with arguments.
+ lt_save_CC="$CC"
+ lt_save_GCC=$GCC
+ CC=${FC-"f95"}
+ compiler=$CC
+ GCC=$ac_cv_fc_compiler_gnu
+
+ _LT_TAGVAR(compiler, $1)=$CC
+ _LT_CC_BASENAME([$compiler])
+
+ if test -n "$compiler"; then
+ AC_MSG_CHECKING([if libtool supports shared libraries])
+ AC_MSG_RESULT([$can_build_shared])
+
+ AC_MSG_CHECKING([whether to build shared libraries])
+ test "$can_build_shared" = "no" && enable_shared=no
+
+ # On AIX, shared libraries and static libraries use the same namespace, and
+ # are all built from PIC.
+ case $host_os in
+ aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+ aix[[4-9]]*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ esac
+ AC_MSG_RESULT([$enable_shared])
+
+ AC_MSG_CHECKING([whether to build static libraries])
+ # Make sure either enable_shared or enable_static is yes.
+ test "$enable_shared" = yes || enable_static=yes
+ AC_MSG_RESULT([$enable_static])
+
+ _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
+ _LT_TAGVAR(LD, $1)="$LD"
+
+ ## CAVEAT EMPTOR:
+ ## There is no encapsulation within the following macros, do not change
+ ## the running order or otherwise move them around unless you know exactly
+ ## what you are doing...
+ _LT_SYS_HIDDEN_LIBDEPS($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_SYS_DYNAMIC_LINKER($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+ fi # test -n "$compiler"
+
+ GCC=$lt_save_GCC
+ CC="$lt_save_CC"
+fi # test "$_lt_disable_FC" != yes
+
+AC_LANG_POP
+])# _LT_LANG_FC_CONFIG
+
+
+# _LT_LANG_GCJ_CONFIG([TAG])
+# --------------------------
+# Ensure that the configuration variables for the GNU Java Compiler compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_GCJ_CONFIG],
+[AC_REQUIRE([LT_PROG_GCJ])dnl
+AC_LANG_SAVE
+
+# Source file extension for Java test sources.
+ac_ext=java
+
+# Object file extension for compiled Java test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="class foo {}"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=yes
+CC=${GCJ-"gcj"}
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_TAGVAR(LD, $1)="$LD"
+_LT_CC_BASENAME([$compiler])
+
+# GCJ did not exist at the time GCC didn't implicitly link libc in.
+_LT_TAGVAR(archive_cmds_need_lc, $1)=no
+
+_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+if test -n "$compiler"; then
+ _LT_COMPILER_NO_RTTI($1)
+ _LT_COMPILER_PIC($1)
+ _LT_COMPILER_C_O($1)
+ _LT_COMPILER_FILE_LOCKS($1)
+ _LT_LINKER_SHLIBS($1)
+ _LT_LINKER_HARDCODE_LIBPATH($1)
+
+ _LT_CONFIG($1)
+fi
+
+AC_LANG_RESTORE
+
+GCC=$lt_save_GCC
+CC="$lt_save_CC"
+])# _LT_LANG_GCJ_CONFIG
+
+
+# _LT_LANG_RC_CONFIG([TAG])
+# -------------------------
+# Ensure that the configuration variables for the Windows resource compiler
+# are suitably defined. These variables are subsequently used by _LT_CONFIG
+# to write the compiler configuration to `libtool'.
+m4_defun([_LT_LANG_RC_CONFIG],
+[AC_REQUIRE([LT_PROG_RC])dnl
+AC_LANG_SAVE
+
+# Source file extension for RC test sources.
+ac_ext=rc
+
+# Object file extension for compiled RC test sources.
+objext=o
+_LT_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
+
+# Code to be used in simple link tests
+lt_simple_link_test_code="$lt_simple_compile_test_code"
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_TAG_COMPILER
+
+# save warnings/boilerplate of simple test code
+_LT_COMPILER_BOILERPLATE
+_LT_LINKER_BOILERPLATE
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+lt_save_GCC=$GCC
+GCC=
+CC=${RC-"windres"}
+compiler=$CC
+_LT_TAGVAR(compiler, $1)=$CC
+_LT_CC_BASENAME([$compiler])
+_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+
+if test -n "$compiler"; then
+ :
+ _LT_CONFIG($1)
+fi
+
+GCC=$lt_save_GCC
+AC_LANG_RESTORE
+CC="$lt_save_CC"
+])# _LT_LANG_RC_CONFIG
+
+
+# LT_PROG_GCJ
+# -----------
+AC_DEFUN([LT_PROG_GCJ],
+[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
+ [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
+ [AC_CHECK_TOOL(GCJ, gcj,)
+ test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+ AC_SUBST(GCJFLAGS)])])[]dnl
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
+
+
+# LT_PROG_RC
+# ----------
+AC_DEFUN([LT_PROG_RC],
+[AC_CHECK_TOOL(RC, windres,)
+])
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_RC], [])
+
+
+# _LT_DECL_EGREP
+# --------------
+# If we don't have a new enough Autoconf to choose the best grep
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_EGREP],
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+AC_REQUIRE([AC_PROG_FGREP])dnl
+test -z "$GREP" && GREP=grep
+_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
+_LT_DECL([], [EGREP], [1], [An ERE matcher])
+_LT_DECL([], [FGREP], [1], [A literal string matcher])
+dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
+AC_SUBST([GREP])
+])
+
+
+# _LT_DECL_OBJDUMP
+# --------------
+# If we don't have a new enough Autoconf to choose the best objdump
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_OBJDUMP],
+[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+AC_SUBST([OBJDUMP])
+])
+
+
+# _LT_DECL_SED
+# ------------
+# Check for a fully-functional sed program, that truncates
+# as few characters as possible. Prefer GNU sed if found.
+m4_defun([_LT_DECL_SED],
+[AC_PROG_SED
+test -z "$SED" && SED=sed
+Xsed="$SED -e 1s/^X//"
+_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
+_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
+ [Sed that helps us avoid accidentally triggering echo(1) options like -n])
+])# _LT_DECL_SED
+
+m4_ifndef([AC_PROG_SED], [
+############################################################
+# NOTE: This macro has been submitted for inclusion into #
+# GNU Autoconf as AC_PROG_SED. When it is available in #
+# a released version of Autoconf we should remove this #
+# macro and use it instead. #
+############################################################
+
+m4_defun([AC_PROG_SED],
+[AC_MSG_CHECKING([for a sed that does not truncate output])
+AC_CACHE_VAL(lt_cv_path_SED,
+[# Loop through the user's path and test for sed and gsed.
+# Then use that list of sed's as ones to test for truncation.
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for lt_ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+ lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+ fi
+ done
+ done
+done
+IFS=$as_save_IFS
+lt_ac_max=0
+lt_ac_count=0
+# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+# along with /bin/sed that truncates output.
+for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+ test ! -f $lt_ac_sed && continue
+ cat /dev/null > conftest.in
+ lt_ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+ # Check for GNU sed and select it if it is found.
+ if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+ lt_cv_path_SED=$lt_ac_sed
+ break
+ fi
+ while true; do
+ cat conftest.in conftest.in >conftest.tmp
+ mv conftest.tmp conftest.in
+ cp conftest.in conftest.nl
+ echo >>conftest.nl
+ $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+ cmp -s conftest.out conftest.nl || break
+ # 10000 chars as input seems more than enough
+ test $lt_ac_count -gt 10 && break
+ lt_ac_count=`expr $lt_ac_count + 1`
+ if test $lt_ac_count -gt $lt_ac_max; then
+ lt_ac_max=$lt_ac_count
+ lt_cv_path_SED=$lt_ac_sed
+ fi
+ done
+done
+])
+SED=$lt_cv_path_SED
+AC_SUBST([SED])
+AC_MSG_RESULT([$SED])
+])#AC_PROG_SED
+])#m4_ifndef
+
+# Old name:
+AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([LT_AC_PROG_SED], [])
+
+
+# _LT_CHECK_SHELL_FEATURES
+# ------------------------
+# Find out whether the shell is Bourne or XSI compatible,
+# or has some other useful features.
+m4_defun([_LT_CHECK_SHELL_FEATURES],
+[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
+# Try some XSI features
+xsi_shell=no
+( _lt_dummy="a/b/c"
+ test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+ = c,a/b,, \
+ && eval 'test $(( 1 + 1 )) -eq 2 \
+ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+ && xsi_shell=yes
+AC_MSG_RESULT([$xsi_shell])
+_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
+
+AC_MSG_CHECKING([whether the shell understands "+="])
+lt_shell_append=no
+( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
+ >/dev/null 2>&1 \
+ && lt_shell_append=yes
+AC_MSG_RESULT([$lt_shell_append])
+_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
+
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ lt_unset=unset
+else
+ lt_unset=false
+fi
+_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
+
+# test EBCDIC or ASCII
+case `echo X|tr X '\101'` in
+ A) # ASCII based system
+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
+ lt_SP2NL='tr \040 \012'
+ lt_NL2SP='tr \015\012 \040\040'
+ ;;
+ *) # EBCDIC based system
+ lt_SP2NL='tr \100 \n'
+ lt_NL2SP='tr \r\n \100\100'
+ ;;
+esac
+_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
+_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+])# _LT_CHECK_SHELL_FEATURES
+
+
+# _LT_PROG_XSI_SHELLFNS
+# ---------------------
+# Bourne and XSI compatible variants of some useful shell functions.
+m4_defun([_LT_PROG_XSI_SHELLFNS],
+[case $xsi_shell in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result="${1##*/}"
+}
+
+# func_dirname_and_basename file append nondir_replacement
+# perform func_basename and func_dirname in a single function
+# call:
+# dirname: Compute the dirname of FILE. If nonempty,
+# add APPEND to the result, otherwise set result
+# to NONDIR_REPLACEMENT.
+# value returned in "$func_dirname_result"
+# basename: Compute filename of FILE.
+# value retuned in "$func_basename_result"
+# Implementation must be kept synchronized with func_dirname
+# and func_basename. For efficiency, we do not delegate to
+# those functions but instead duplicate the functionality here.
+func_dirname_and_basename ()
+{
+ case ${1} in
+ */*) func_dirname_result="${1%/*}${2}" ;;
+ * ) func_dirname_result="${3}" ;;
+ esac
+ func_basename_result="${1##*/}"
+}
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+func_stripname ()
+{
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+ # positional parameters, so assign one to ordinary parameter first.
+ func_stripname_result=${3}
+ func_stripname_result=${func_stripname_result#"${1}"}
+ func_stripname_result=${func_stripname_result%"${2}"}
+}
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=${1%%=*}
+ func_opt_split_arg=${1#*=}
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ case ${1} in
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+ *) func_lo2o_result=${1} ;;
+ esac
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=${1%.*}.lo
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=$(( $[*] ))
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=${#1}
+}
+
+_LT_EOF
+ ;;
+ *) # Bourne compatible functions.
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_dirname file append nondir_replacement
+# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+func_dirname ()
+{
+ # Extract subdirectory from the argument.
+ func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
+ if test "X$func_dirname_result" = "X${1}"; then
+ func_dirname_result="${3}"
+ else
+ func_dirname_result="$func_dirname_result${2}"
+ fi
+}
+
+# func_basename file
+func_basename ()
+{
+ func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
+}
+
+dnl func_dirname_and_basename
+dnl A portable version of this function is already defined in general.m4sh
+dnl so there is no need for it here.
+
+# func_stripname prefix suffix name
+# strip PREFIX and SUFFIX off of NAME.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+# func_strip_suffix prefix name
+func_stripname ()
+{
+ case ${2} in
+ .*) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
+ *) func_stripname_result=`$ECHO "X${3}" \
+ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
+ esac
+}
+
+# sed scripts:
+my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
+my_sed_long_arg='1s/^-[[^=]]*=//'
+
+# func_opt_split
+func_opt_split ()
+{
+ func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
+ func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
+}
+
+# func_lo2o object
+func_lo2o ()
+{
+ func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
+}
+
+# func_xform libobj-or-source
+func_xform ()
+{
+ func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
+}
+
+# func_arith arithmetic-term...
+func_arith ()
+{
+ func_arith_result=`expr "$[@]"`
+}
+
+# func_len string
+# STRING may not start with a hyphen.
+func_len ()
+{
+ func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
+}
+
+_LT_EOF
+esac
+
+case $lt_shell_append in
+ yes)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$[1]+=\$[2]"
+}
+_LT_EOF
+ ;;
+ *)
+ cat << \_LT_EOF >> "$cfgfile"
+
+# func_append var value
+# Append VALUE to the end of shell variable VAR.
+func_append ()
+{
+ eval "$[1]=\$$[1]\$[2]"
+}
+
+_LT_EOF
+ ;;
+ esac
+])
diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4
new file mode 100644
index 00000000..34151a3b
--- /dev/null
+++ b/m4/ltoptions.m4
@@ -0,0 +1,368 @@
+# Helper functions for option handling. -*- Autoconf -*-
+#
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# 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.
+
+# serial 6 ltoptions.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
+
+
+# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
+# ------------------------------------------
+m4_define([_LT_MANGLE_OPTION],
+[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
+
+
+# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
+# ---------------------------------------
+# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
+# matching handler defined, dispatch to it. Other OPTION-NAMEs are
+# saved as a flag.
+m4_define([_LT_SET_OPTION],
+[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
+m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
+ _LT_MANGLE_DEFUN([$1], [$2]),
+ [m4_warning([Unknown $1 option `$2'])])[]dnl
+])
+
+
+# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
+# ------------------------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+m4_define([_LT_IF_OPTION],
+[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
+
+
+# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
+# -------------------------------------------------------
+# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
+# are set.
+m4_define([_LT_UNLESS_OPTIONS],
+[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
+ [m4_define([$0_found])])])[]dnl
+m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
+])[]dnl
+])
+
+
+# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
+# ----------------------------------------
+# OPTION-LIST is a space-separated list of Libtool options associated
+# with MACRO-NAME. If any OPTION has a matching handler declared with
+# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
+# the unknown option and exit.
+m4_defun([_LT_SET_OPTIONS],
+[# Set options
+m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
+ [_LT_SET_OPTION([$1], _LT_Option)])
+
+m4_if([$1],[LT_INIT],[
+ dnl
+ dnl Simply set some default values (i.e off) if boolean options were not
+ dnl specified:
+ _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
+ ])
+ _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
+ ])
+ dnl
+ dnl If no reference was made to various pairs of opposing options, then
+ dnl we run the default mode handler for the pair. For example, if neither
+ dnl `shared' nor `disable-shared' was passed, we enable building of shared
+ dnl archives by default:
+ _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
+ _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
+ _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
+ [_LT_ENABLE_FAST_INSTALL])
+ ])
+])# _LT_SET_OPTIONS
+
+
+## --------------------------------- ##
+## Macros to handle LT_INIT options. ##
+## --------------------------------- ##
+
+# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
+# -----------------------------------------
+m4_define([_LT_MANGLE_DEFUN],
+[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
+
+
+# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
+# -----------------------------------------------
+m4_define([LT_OPTION_DEFINE],
+[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
+])# LT_OPTION_DEFINE
+
+
+# dlopen
+# ------
+LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
+])
+
+AU_DEFUN([AC_LIBTOOL_DLOPEN],
+[_LT_SET_OPTION([LT_INIT], [dlopen])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `dlopen' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
+
+
+# win32-dll
+# ---------
+# Declare package support for building win32 dll's.
+LT_OPTION_DEFINE([LT_INIT], [win32-dll],
+[enable_win32_dll=yes
+
+case $host in
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
+ AC_CHECK_TOOL(AS, as, false)
+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
+ ;;
+esac
+
+test -z "$AS" && AS=as
+_LT_DECL([], [AS], [0], [Assembler program])dnl
+
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
+])# win32-dll
+
+AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+_LT_SET_OPTION([LT_INIT], [win32-dll])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `win32-dll' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
+
+
+# _LT_ENABLE_SHARED([DEFAULT])
+# ----------------------------
+# implement the --enable-shared flag, and supports the `shared' and
+# `disable-shared' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_SHARED],
+[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([shared],
+ [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+ [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
+
+ _LT_DECL([build_libtool_libs], [enable_shared], [0],
+ [Whether or not to build shared libraries])
+])# _LT_ENABLE_SHARED
+
+LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
+])
+
+AC_DEFUN([AC_DISABLE_SHARED],
+[_LT_SET_OPTION([LT_INIT], [disable-shared])
+])
+
+AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_SHARED], [])
+dnl AC_DEFUN([AM_DISABLE_SHARED], [])
+
+
+
+# _LT_ENABLE_STATIC([DEFAULT])
+# ----------------------------
+# implement the --enable-static flag, and support the `static' and
+# `disable-static' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_STATIC],
+[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([static],
+ [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+ [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
+
+ _LT_DECL([build_old_libs], [enable_static], [0],
+ [Whether or not to build static libraries])
+])# _LT_ENABLE_STATIC
+
+LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
+
+# Old names:
+AC_DEFUN([AC_ENABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
+])
+
+AC_DEFUN([AC_DISABLE_STATIC],
+[_LT_SET_OPTION([LT_INIT], [disable-static])
+])
+
+AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AM_ENABLE_STATIC], [])
+dnl AC_DEFUN([AM_DISABLE_STATIC], [])
+
+
+
+# _LT_ENABLE_FAST_INSTALL([DEFAULT])
+# ----------------------------------
+# implement the --enable-fast-install flag, and support the `fast-install'
+# and `disable-fast-install' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+m4_define([_LT_ENABLE_FAST_INSTALL],
+[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
+AC_ARG_ENABLE([fast-install],
+ [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+ [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
+
+_LT_DECL([fast_install], [enable_fast_install], [0],
+ [Whether or not to optimize for fast installation])dnl
+])# _LT_ENABLE_FAST_INSTALL
+
+LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
+
+# Old names:
+AU_DEFUN([AC_ENABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the `fast-install' option into LT_INIT's first parameter.])
+])
+
+AU_DEFUN([AC_DISABLE_FAST_INSTALL],
+[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you put
+the `disable-fast-install' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
+dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+
+
+# _LT_WITH_PIC([MODE])
+# --------------------
+# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+# LT_INIT options.
+# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
+m4_define([_LT_WITH_PIC],
+[AC_ARG_WITH([pic],
+ [AS_HELP_STRING([--with-pic],
+ [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+ [pic_mode="$withval"],
+ [pic_mode=default])
+
+test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+
+_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
+])# _LT_WITH_PIC
+
+LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
+LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
+
+# Old name:
+AU_DEFUN([AC_LIBTOOL_PICMODE],
+[_LT_SET_OPTION([LT_INIT], [pic-only])
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to _LT_SET_OPTION when you
+put the `pic-only' option into LT_INIT's first parameter.])
+])
+
+dnl aclocal-1.4 backwards compatibility:
+dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
+
+## ----------------- ##
+## LTDL_INIT Options ##
+## ----------------- ##
+
+m4_define([_LTDL_MODE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
+ [m4_define([_LTDL_MODE], [nonrecursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [recursive],
+ [m4_define([_LTDL_MODE], [recursive])])
+LT_OPTION_DEFINE([LTDL_INIT], [subproject],
+ [m4_define([_LTDL_MODE], [subproject])])
+
+m4_define([_LTDL_TYPE], [])
+LT_OPTION_DEFINE([LTDL_INIT], [installable],
+ [m4_define([_LTDL_TYPE], [installable])])
+LT_OPTION_DEFINE([LTDL_INIT], [convenience],
+ [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4
new file mode 100644
index 00000000..9000a057
--- /dev/null
+++ b/m4/ltsugar.m4
@@ -0,0 +1,123 @@
+# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
+#
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Written by Gary V. Vaughan, 2004
+#
+# 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.
+
+# serial 6 ltsugar.m4
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
+
+
+# lt_join(SEP, ARG1, [ARG2...])
+# -----------------------------
+# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
+# associated separator.
+# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
+# versions in m4sugar had bugs.
+m4_define([lt_join],
+[m4_if([$#], [1], [],
+ [$#], [2], [[$2]],
+ [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
+m4_define([_lt_join],
+[m4_if([$#$2], [2], [],
+ [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
+
+
+# lt_car(LIST)
+# lt_cdr(LIST)
+# ------------
+# Manipulate m4 lists.
+# These macros are necessary as long as will still need to support
+# Autoconf-2.59 which quotes differently.
+m4_define([lt_car], [[$1]])
+m4_define([lt_cdr],
+[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
+ [$#], 1, [],
+ [m4_dquote(m4_shift($@))])])
+m4_define([lt_unquote], $1)
+
+
+# lt_append(MACRO-NAME, STRING, [SEPARATOR])
+# ------------------------------------------
+# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
+# Note that neither SEPARATOR nor STRING are expanded; they are appended
+# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
+# No SEPARATOR is output if MACRO-NAME was previously undefined (different
+# than defined and empty).
+#
+# This macro is needed until we can rely on Autoconf 2.62, since earlier
+# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
+m4_define([lt_append],
+[m4_define([$1],
+ m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
+
+
+
+# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
+# ----------------------------------------------------------
+# Produce a SEP delimited list of all paired combinations of elements of
+# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
+# has the form PREFIXmINFIXSUFFIXn.
+# Needed until we can rely on m4_combine added in Autoconf 2.62.
+m4_define([lt_combine],
+[m4_if(m4_eval([$# > 3]), [1],
+ [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
+[[m4_foreach([_Lt_prefix], [$2],
+ [m4_foreach([_Lt_suffix],
+ ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
+ [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
+
+
+# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
+# -----------------------------------------------------------------------
+# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
+# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
+m4_define([lt_if_append_uniq],
+[m4_ifdef([$1],
+ [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
+ [lt_append([$1], [$2], [$3])$4],
+ [$5])],
+ [lt_append([$1], [$2], [$3])$4])])
+
+
+# lt_dict_add(DICT, KEY, VALUE)
+# -----------------------------
+m4_define([lt_dict_add],
+[m4_define([$1($2)], [$3])])
+
+
+# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
+# --------------------------------------------
+m4_define([lt_dict_add_subkey],
+[m4_define([$1($2:$3)], [$4])])
+
+
+# lt_dict_fetch(DICT, KEY, [SUBKEY])
+# ----------------------------------
+m4_define([lt_dict_fetch],
+[m4_ifval([$3],
+ m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
+ m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
+
+
+# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
+# -----------------------------------------------------------------
+m4_define([lt_if_dict_fetch],
+[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
+ [$5],
+ [$6])])
+
+
+# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
+# --------------------------------------------------------------
+m4_define([lt_dict_filter],
+[m4_if([$5], [], [],
+ [lt_join(m4_quote(m4_default([$4], [[, ]])),
+ lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
+ [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
+])
diff --git a/m4/ltversion.m4 b/m4/ltversion.m4
new file mode 100644
index 00000000..b8e154fe
--- /dev/null
+++ b/m4/ltversion.m4
@@ -0,0 +1,23 @@
+# ltversion.m4 -- version numbers -*- Autoconf -*-
+#
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Written by Scott James Remnant, 2004
+#
+# 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.
+
+# Generated from ltversion.in.
+
+# serial 3012 ltversion.m4
+# This file is part of GNU Libtool
+
+m4_define([LT_PACKAGE_VERSION], [2.2.6])
+m4_define([LT_PACKAGE_REVISION], [1.3012])
+
+AC_DEFUN([LTVERSION_VERSION],
+[macro_version='2.2.6'
+macro_revision='1.3012'
+_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
+_LT_DECL(, macro_revision, 0)
+])
diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4
new file mode 100644
index 00000000..637bb206
--- /dev/null
+++ b/m4/lt~obsolete.m4
@@ -0,0 +1,92 @@
+# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
+#
+# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+# Written by Scott James Remnant, 2004.
+#
+# 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.
+
+# serial 4 lt~obsolete.m4
+
+# These exist entirely to fool aclocal when bootstrapping libtool.
+#
+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
+# which have later been changed to m4_define as they aren't part of the
+# exported API, or moved to Autoconf or Automake where they belong.
+#
+# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
+# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
+# using a macro with the same name in our local m4/libtool.m4 it'll
+# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
+# and doesn't know about Autoconf macros at all.)
+#
+# So we provide this file, which has a silly filename so it's always
+# included after everything else. This provides aclocal with the
+# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
+# because those macros already exist, or will be overwritten later.
+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
+#
+# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
+# Yes, that means every name once taken will need to remain here until
+# we give up compatibility with versions before 1.7, at which point
+# we need to keep only those names which we still refer to.
+
+# This is to help aclocal find these macros, as it can't see m4_define.
+AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
+
+m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
+m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
+m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
+m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
+m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
+m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
+m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
+m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
+m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
+m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
+m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
+m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
+m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
+m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
+m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
+m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
+m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
+m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
+m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
+m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
+m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
+m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
+m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
+m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
+m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
+m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
+m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
+m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
+m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
+m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
+m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
+m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
+m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
+m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
+m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
+m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
+m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
+m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
+m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
+m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
+m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
+m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
+m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
+m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
+m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
+m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
+m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
+m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
+m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
diff --git a/m4/po.m4 b/m4/po.m4
index 00133ef3..0734762a 100644
--- a/m4/po.m4
+++ b/m4/po.m4
@@ -1,5 +1,5 @@
-# po.m4 serial 13 (gettext-0.15)
-dnl Copyright (C) 1995-2006 Free Software Foundation, Inc.
+# po.m4 serial 15 (gettext-0.17)
+dnl Copyright (C) 1995-2007 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.
@@ -27,6 +27,10 @@ AC_DEFUN([AM_PO_SUBDIRS],
AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
AC_REQUIRE([AM_NLS])dnl
+ dnl Release version of the gettext macros. This is used to ensure that
+ dnl the gettext macros and po/Makefile.in.in are in sync.
+ AC_SUBST([GETTEXT_MACRO_VERSION], [0.17])
+
dnl Perform the following tests also if --disable-nls has been given,
dnl because they are needed for "make dist" to work.
@@ -84,6 +88,10 @@ changequote([,])dnl
test -n "$localedir" || localedir='${datadir}/locale'
AC_SUBST([localedir])
+ dnl Support for AM_XGETTEXT_OPTION.
+ test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS=
+ AC_SUBST([XGETTEXT_EXTRA_OPTIONS])
+
AC_CONFIG_COMMANDS([po-directories], [[
for ac_file in $CONFIG_FILES; do
# Support "outfile[:infile[:infile...]]"
@@ -426,3 +434,16 @@ EOF
fi
mv "$ac_file.tmp" "$ac_file"
])
+
+dnl Initializes the accumulator used by AM_XGETTEXT_OPTION.
+AC_DEFUN([AM_XGETTEXT_OPTION_INIT],
+[
+ XGETTEXT_EXTRA_OPTIONS=
+])
+
+dnl Registers an option to be passed to xgettext in the po subdirectory.
+AC_DEFUN([AM_XGETTEXT_OPTION],
+[
+ AC_REQUIRE([AM_XGETTEXT_OPTION_INIT])
+ XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS $1"
+])
diff --git a/m4/stdint_h.m4 b/m4/stdint_h.m4
index db9a8ac4..86da6d78 100644
--- a/m4/stdint_h.m4
+++ b/m4/stdint_h.m4
@@ -11,16 +11,21 @@ dnl From Paul Eggert.
AC_DEFUN([gl_AC_HEADER_STDINT_H],
[
- AC_CACHE_CHECK([for stdint.h], gl_cv_header_stdint_h,
- [AC_TRY_COMPILE(
- [#include <sys/types.h>
+ if test "OS/390" = "`uname`"
+ then
+ gl_cv_header_stdint_h=no
+ else
+ AC_CACHE_CHECK([for stdint.h], gl_cv_header_stdint_h,
+ [AC_TRY_COMPILE(
+ [#include <sys/types.h>
#include <stdint.h>],
- [uintmax_t i = (uintmax_t) -1; return !i;],
- gl_cv_header_stdint_h=yes,
- gl_cv_header_stdint_h=no)])
- if test $gl_cv_header_stdint_h = yes; then
- AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1,
- [Define if <stdint.h> exists, doesn't clash with <sys/types.h>,
- and declares uintmax_t. ])
+ [uintmax_t i = (uintmax_t) -1; return !i;],
+ gl_cv_header_stdint_h=yes,
+ gl_cv_header_stdint_h=no)])
+ if test $gl_cv_header_stdint_h = yes; then
+ AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1,
+ [Define if <stdint.h> exists, doesn't clash with <sys/types.h>,
+ and declares uintmax_t. ])
+ fi
fi
])
diff --git a/main.c b/main.c
index 2d036781..1d959029 100644
--- a/main.c
+++ b/main.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -24,7 +24,7 @@
*/
/* FIX THIS BEFORE EVERY RELEASE: */
-#define UPDATE_YEAR 2007
+#define UPDATE_YEAR 2009
#include "awk.h"
#include "getopt.h"
@@ -36,6 +36,14 @@
#ifdef HAVE_MCHECK_H
#include <mcheck.h>
#endif
+#ifdef HAVE_SIGSEGV_H
+#include <sigsegv.h>
+#else
+typedef void *stackoverflow_context_t;
+#define sigsegv_install_handler(catchsegv) signal(SIGSEGV, catchsig)
+/* define as 0 rather than empty so that (void) cast on it works */
+#define stackoverflow_install_handler(catchstackoverflow, extra_stack, STACK_SIZE) 0
+#endif
#define DEFAULT_PROFILE "awkprof.out" /* where to put profile */
#define DEFAULT_VARFILE "awkvars.out" /* where to put vars */
@@ -45,12 +53,14 @@ static const char *varfile = DEFAULT_VARFILE;
static void usage P((int exitval, FILE *fp)) ATTRIBUTE_NORETURN;
static void copyleft P((void)) ATTRIBUTE_NORETURN;
static void cmdline_fs P((char *str));
-static void init_args P((int argc0, int argc, char *argv0, char **argv));
+static void init_args P((int argc0, int argc, const char *argv0, char **argv));
static void init_vars P((void));
static NODE *load_environ P((void));
static NODE *load_procinfo P((void));
static void add_src P((struct src **data, long *num, long *alloc, enum srctype stype, char *val));
static RETSIGTYPE catchsig P((int sig)) ATTRIBUTE_NORETURN;
+static int catchsegv P((void *fault_address, int serious));
+static void catchstackoverflow P((int emergency, stackoverflow_context_t scp));
static void nostalgia P((void)) ATTRIBUTE_NORETURN;
static void version P((void)) ATTRIBUTE_NORETURN;
static void init_fds P((void));
@@ -89,6 +99,7 @@ NODE *Nnull_string; /* The global null string */
#if defined(HAVE_LOCALE_H)
struct lconv loc; /* current locale */
+static void init_locale(struct lconv *l);
#endif /* defined(HAVE_LOCALE_H) */
/* The name the program was invoked under, for error messages */
@@ -101,7 +112,7 @@ NODE *begin_block = NULL;
NODE *end_block = NULL;
int exiting = FALSE; /* Was an "exit" statement executed? */
-int exit_val = 0; /* optional exit value */
+int exit_val = EXIT_SUCCESS; /* optional exit value */
#if defined(YYDEBUG) || defined(GAWKDEBUG)
extern int yydebug;
@@ -137,6 +148,7 @@ int do_intervals = FALSE; /* allow {...,...} in regexps */
int do_profiling = FALSE; /* profile and pretty print the program */
int do_dump_vars = FALSE; /* dump all global variables at end */
int do_tidy_mem = FALSE; /* release vars when done */
+int do_optimize = FALSE; /* apply any safe optimizations */
int in_begin_rule = FALSE; /* we're in a BEGIN rule */
int in_end_rule = FALSE; /* we're in an END rule */
@@ -175,6 +187,7 @@ static const struct option optab[] = {
{ "traditional", no_argument, & do_traditional, 1 },
{ "lint", optional_argument, NULL, 'l' },
{ "lint-old", no_argument, & do_lint_old, 1 },
+ { "optimize", no_argument, & do_optimize, 'O' },
{ "posix", no_argument, & do_posix, 1 },
{ "nostalgia", no_argument, & do_nostalgia, 1 },
{ "gen-po", no_argument, & do_intl, 1 },
@@ -212,7 +225,7 @@ main(int argc, char **argv)
int c;
char *scan;
/* the + on the front tells GNU getopt not to rearrange argv */
- const char *optlist = "+F:f:v:W;m:D";
+ const char *optlist = "+F:f:v:W;m:DO";
int stopped_early = FALSE;
int old_optind;
extern int optind;
@@ -220,6 +233,7 @@ main(int argc, char **argv)
extern char *optarg;
int i;
int stdio_problem = FALSE;
+ char *extra_stack;
/* do these checks early */
if (getenv("TIDYMEM") != NULL)
@@ -259,7 +273,7 @@ main(int argc, char **argv)
* the thousands separator for the %'d flag.
*/
setlocale(LC_NUMERIC, "");
- loc = *localeconv(); /* Make a local copy of locale numeric info, early on */
+ init_locale(& loc);
setlocale(LC_NUMERIC, "C");
#endif
#if defined(LC_TIME)
@@ -280,10 +294,16 @@ main(int argc, char **argv)
(void) textdomain(PACKAGE);
(void) signal(SIGFPE, catchsig);
- (void) signal(SIGSEGV, catchsig);
#ifdef SIGBUS
(void) signal(SIGBUS, catchsig);
#endif
+ (void) sigsegv_install_handler(catchsegv);
+#define STACK_SIZE (16*1024)
+ extra_stack = malloc(STACK_SIZE);
+ if (extra_stack == NULL)
+ fatal(_("out of memory"));
+ (void) stackoverflow_install_handler(catchstackoverflow, extra_stack, STACK_SIZE);
+#undef STACK_SIZE
myname = gawk_name(argv[0]);
argv[0] = (char *) myname;
@@ -346,6 +366,8 @@ main(int argc, char **argv)
* Research awk extension.
* -mf nnn set # fields, gawk ignores
* -mr nnn set record length, ditto
+ *
+ * As of at least 10/2007, Research awk also ignores it.
*/
if (do_lint)
lintwarn(_("`-m[fr]' option irrelevant in gawk"));
@@ -394,6 +416,10 @@ main(int argc, char **argv)
#endif
break;
+ case 'O':
+ do_optimize = TRUE;
+ break;
+
case 'p':
do_profiling = TRUE;
if (optarg != NULL)
@@ -560,7 +586,7 @@ out:
optind++;
}
- init_args(optind, argc, (char *) myname, argv);
+ init_args(optind, argc, myname, argv);
(void) tokexpand();
#if defined(LC_NUMERIC)
@@ -574,12 +600,12 @@ out:
/* Read in the program */
if (yyparse() != 0 || errcount != 0)
- exit(1);
+ exit(EXIT_FAILURE);
free(srcfiles);
if (do_intl)
- exit(0);
+ exit(EXIT_SUCCESS);
if (do_lint && begin_block == NULL && expression_value == NULL
&& end_block == NULL)
@@ -639,8 +665,8 @@ out:
* with stdout/stderr, so we reinstate a slightly different
* version of the above:
*/
- if (stdio_problem && ! exiting && exit_val == 0)
- exit_val = 1;
+ if (stdio_problem && ! exiting && exit_val == EXIT_SUCCESS)
+ exit_val = EXIT_FAILURE;
if (do_profiling) {
dump_prog(begin_block, expression_value, end_block);
@@ -699,6 +725,7 @@ usage(int exitval, FILE *fp)
fputs(_("\t-F fs\t\t\t--field-separator=fs\n"), fp);
fputs(_("\t-v var=val\t\t--assign=var=val\n"), fp);
fputs(_("\t-m[fr] val\n"), fp);
+ fputs(_("\t-O\t\t\t--optimize\n"), fp);
fputs(_("\t-W compat\t\t--compat\n"), fp);
fputs(_("\t-W copyleft\t\t--copyleft\n"), fp);
fputs(_("\t-W copyright\t\t--copyright\n"), fp);
@@ -747,7 +774,7 @@ By default it reads standard input and writes standard output.\n\n"), fp);
if (ferror(fp)) {
if (fp == stdout)
warning(_("error writing standard output (%s)"), strerror(errno));
- exit(1);
+ exit(EXIT_FAILURE);
}
exit(exitval);
@@ -789,10 +816,10 @@ along with this program. If not, see http://www.gnu.org/licenses/.\n");
if (ferror(stdout)) {
warning(_("error writing standard output (%s)"), strerror(errno));
- exit(1);
+ exit(EXIT_FAILURE);
}
- exit(0);
+ exit(EXIT_SUCCESS);
}
/* cmdline_fs --- set FS from the command line */
@@ -824,14 +851,14 @@ cmdline_fs(char *str)
/* init_args --- set up ARGV from stuff on the command line */
static void
-init_args(int argc0, int argc, char *argv0, char **argv)
+init_args(int argc0, int argc, const char *argv0, char **argv)
{
int i, j;
NODE **aptr;
ARGV_node = install("ARGV", node((NODE *) NULL, Node_var_array, (NODE *) NULL));
aptr = assoc_lookup(ARGV_node, tmp_number(0.0), FALSE);
- *aptr = make_string(argv0, strlen(argv0));
+ *aptr = make_string((char *) argv0, strlen(argv0));
(*aptr)->flags |= MAYBE_NUM;
for (i = argc0, j = 1; i < argc; i++) {
aptr = assoc_lookup(ARGV_node, tmp_number((AWKNUM) j), FALSE);
@@ -857,30 +884,38 @@ struct varinit {
const char *strval;
AWKNUM numval;
Func_ptr assign;
+ int flags;
+#define NO_INSTALL 0x01
+#define NON_STANDARD 0x02
};
+
static const struct varinit varinit[] = {
-{&CONVFMT_node, "CONVFMT", Node_CONVFMT, "%.6g", 0, set_CONVFMT },
-{&NF_node, "NF", Node_NF, NULL, -1, NULL },
-{&FIELDWIDTHS_node, "FIELDWIDTHS", Node_FIELDWIDTHS, "", 0, NULL },
-{&NR_node, "NR", Node_NR, NULL, 0, set_NR },
-{&FNR_node, "FNR", Node_FNR, NULL, 0, set_FNR },
-{&FS_node, "FS", Node_FS, " ", 0, NULL },
-{&RS_node, "RS", Node_RS, "\n", 0, set_RS },
-{&IGNORECASE_node, "IGNORECASE", Node_IGNORECASE, NULL, 0, NULL },
-{&FILENAME_node, "FILENAME", Node_var, "", 0, NULL },
-{&OFS_node, "OFS", Node_OFS, " ", 0, set_OFS },
-{&ORS_node, "ORS", Node_ORS, "\n", 0, set_ORS },
-{&OFMT_node, "OFMT", Node_OFMT, "%.6g", 0, set_OFMT },
-{&RLENGTH_node, "RLENGTH", Node_var, NULL, 0, NULL },
-{&RSTART_node, "RSTART", Node_var, NULL, 0, NULL },
-{&SUBSEP_node, "SUBSEP", Node_SUBSEP, "\034", 0, NULL },
-{&ARGIND_node, "ARGIND", Node_var, NULL, 0, NULL },
-{&ERRNO_node, "ERRNO", Node_var, NULL, 0, NULL },
-{&RT_node, "RT", Node_var, "", 0, NULL },
-{&BINMODE_node, "BINMODE", Node_BINMODE, NULL, 0, NULL },
-{&LINT_node, "LINT", Node_LINT, NULL, 0, NULL },
-{&TEXTDOMAIN_node, "TEXTDOMAIN", Node_TEXTDOMAIN, "messages", 0, set_TEXTDOMAIN },
-{0, NULL, Node_illegal, NULL, 0, NULL },
+{NULL, "ARGC", Node_illegal, NULL, 0, NULL, NO_INSTALL },
+{&ARGIND_node, "ARGIND", Node_var, NULL, 0, NULL, NON_STANDARD },
+{NULL, "ARGV", Node_illegal, NULL, 0, NULL, NO_INSTALL },
+{&BINMODE_node, "BINMODE", Node_BINMODE, NULL, 0, NULL, NON_STANDARD },
+{&CONVFMT_node, "CONVFMT", Node_CONVFMT, "%.6g", 0, set_CONVFMT, 0 },
+{NULL, "ENVIRON", Node_illegal, NULL, 0, NULL, NO_INSTALL },
+{&ERRNO_node, "ERRNO", Node_var, NULL, 0, NULL, NON_STANDARD },
+{&FIELDWIDTHS_node, "FIELDWIDTHS", Node_FIELDWIDTHS, "", 0, NULL, NON_STANDARD },
+{&FILENAME_node, "FILENAME", Node_var, "", 0, NULL, 0 },
+{&FNR_node, "FNR", Node_FNR, NULL, 0, set_FNR, 0 },
+{&FS_node, "FS", Node_FS, " ", 0, NULL, 0 },
+{&IGNORECASE_node, "IGNORECASE", Node_IGNORECASE, NULL, 0, NULL, NON_STANDARD },
+{&LINT_node, "LINT", Node_LINT, NULL, 0, NULL, NON_STANDARD },
+{&NF_node, "NF", Node_NF, NULL, -1, NULL, 0 },
+{&NR_node, "NR", Node_NR, NULL, 0, set_NR, 0 },
+{&OFMT_node, "OFMT", Node_OFMT, "%.6g", 0, set_OFMT, 0 },
+{&OFS_node, "OFS", Node_OFS, " ", 0, set_OFS, 0 },
+{&ORS_node, "ORS", Node_ORS, "\n", 0, set_ORS, 0 },
+{NULL, "PROCINFO", Node_illegal, NULL, 0, NULL, NO_INSTALL | NON_STANDARD },
+{&RLENGTH_node, "RLENGTH", Node_var, NULL, 0, NULL, 0 },
+{&RS_node, "RS", Node_RS, "\n", 0, set_RS, 0 },
+{&RSTART_node, "RSTART", Node_var, NULL, 0, NULL, 0 },
+{&RT_node, "RT", Node_var, "", 0, NULL, NON_STANDARD },
+{&SUBSEP_node, "SUBSEP", Node_SUBSEP, "\034", 0, NULL, 0 },
+{&TEXTDOMAIN_node, "TEXTDOMAIN", Node_TEXTDOMAIN, "messages", 0, set_TEXTDOMAIN, NON_STANDARD },
+{0, NULL, Node_illegal, NULL, 0, NULL, 0 },
};
/* init_vars --- actually initialize everything in the symbol table */
@@ -891,6 +926,9 @@ init_vars()
register const struct varinit *vp;
for (vp = varinit; vp->name; vp++) {
+ if ((vp->flags & NO_INSTALL) != 0)
+ continue;
+
*(vp->spec) = install((char *) vp->name,
node(vp->strval == NULL ? make_number(vp->numval)
: make_string((char *) vp->strval,
@@ -1035,6 +1073,25 @@ load_procinfo()
return PROCINFO_node;
}
+/* is_std_var --- return true if a variable is a standard variable */
+
+int
+is_std_var(const char *var)
+{
+ register const struct varinit *vp;
+
+ for (vp = varinit; vp->name; vp++) {
+ if (strcmp(vp->name, var) == 0) {
+ if ((do_traditional || do_posix) && (vp->flags & NON_STANDARD) != 0)
+ return FALSE;
+
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
/* arg_assign --- process a command-line assignment */
int
@@ -1134,6 +1191,30 @@ catchsig(int sig)
/* NOTREACHED */
}
+/* catchsegv --- for use with libsigsegv */
+
+static int
+catchsegv(void *fault_address, int serious)
+{
+ set_loc(__FILE__, __LINE__);
+ msg(_("fatal error: internal error: segfault"));
+ abort();
+ /*NOTREACHED*/
+ return 0;
+}
+
+/* catchstackoverflow --- for use with libsigsegv */
+
+static void
+catchstackoverflow(int emergency, stackoverflow_context_t scp)
+{
+ set_loc(__FILE__, __LINE__);
+ msg(_("fatal error: internal error: stack overflow"));
+ abort();
+ /*NOTREACHED*/
+ return;
+}
+
/* nostalgia --- print the famous error message and die */
static void
@@ -1159,7 +1240,7 @@ version()
* then exit successfully, do nothing else.
*/
copyleft();
- exit(0);
+ exit(EXIT_SUCCESS);
}
/* init_fds --- check for 0, 1, 2, open on /dev/null if possible */
@@ -1219,3 +1300,35 @@ init_groupset()
fatal(_("could not find groups: %s"), strerror(errno));
#endif
}
+
+#if defined(HAVE_LOCALE_H)
+
+/* init_locale --- initialize locale info. */
+
+/*
+ * On some operating systems, the pointers in the struct returned
+ * by localeconv() can become dangling pointers after a call to
+ * setlocale(). So we do a deep copy.
+ *
+ * Thanks to KIMURA Koichi <kimura.koichi@canon.co.jp>.
+ */
+
+static void
+init_locale(struct lconv *l)
+{
+ struct lconv *t;
+
+ t = localeconv();
+ *l = *t;
+ l->thousands_sep = strdup(t->thousands_sep);
+ l->decimal_point = strdup(t->decimal_point);
+ l->grouping = strdup(t->grouping);
+ l->int_curr_symbol = strdup(t->int_curr_symbol);
+ l->currency_symbol = strdup(t->currency_symbol);
+ l->mon_decimal_point = strdup(t->mon_decimal_point);
+ l->mon_thousands_sep = strdup(t->mon_thousands_sep);
+ l->mon_grouping = strdup(t->mon_grouping);
+ l->positive_sign = strdup(t->positive_sign);
+ l->negative_sign = strdup(t->negative_sign);
+}
+#endif /* LOCALE_H */
diff --git a/missing_d/ChangeLog b/missing_d/ChangeLog
index 261df786..7322aa33 100644
--- a/missing_d/ChangeLog
+++ b/missing_d/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/msg.c b/msg.c
index b6b42e07..f8bb9654 100644
--- a/msg.c
+++ b/msg.c
@@ -180,5 +180,5 @@ void
#ifdef GAWKDEBUG
abort();
#endif
- exit(2);
+ exit(EXIT_FATAL);
}
diff --git a/node.c b/node.c
index 0a7be425..e4d9079a 100644
--- a/node.c
+++ b/node.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991-2001, 2003-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2001, 2003-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -156,18 +156,35 @@ finish:
}
+/*
+ * the following lookup table is used as an optimization in force_string
+ * (more complicated) variations on this theme didn't seem to pay off, but
+ * systematic testing might be in order at some point
+ */
+static const char *values[] = {
+ "0",
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "6",
+ "7",
+ "8",
+ "9",
+};
+#define NVAL (sizeof(values)/sizeof(values[0]))
+
/* format_val --- format a numeric value based on format */
NODE *
format_val(const char *format, int index, register NODE *s)
{
+ char buf[BUFSIZ];
+ register char *sp = buf;
double val;
char *orig, *trans, save;
- NODE *dummy, *r;
- unsigned short oflags;
- extern NODE **fmt_list; /* declared in eval.c */
-
if (! do_traditional && (s->flags & INTLSTR) != 0) {
save = s->stptr[s->stlen];
s->stptr[s->stlen] = '\0';
@@ -185,32 +202,71 @@ format_val(const char *format, int index, register NODE *s)
* can use sprintf("%ld", val) on it, always format it ourselves.
* The only thing to worry about is that integral values always
* format as integers. %.0f does that very well.
+ *
+ * 6/2008: Would that things were so simple. Always using %.0f
+ * imposes a notable performance penalty for applications that
+ * do a lot of conversion of integers to strings. So, we reinstate
+ * the old code, but use %.0f for integral values that are outside
+ * the range of a long. This seems a reasonable compromise.
*/
- val = double_to_int(s->numbr);
-
- /* create dummy node for a sole use of format_tree */
- getnode(dummy);
- dummy->type = Node_expression_list;
- dummy->lnode = s;
- dummy->rnode = NULL;
- oflags = s->flags;
- s->flags |= PERM; /* prevent from freeing by format_tree() */
- if (val == s->numbr) {
- r = format_tree("%.0f", 4, dummy, 2);
- s->stfmt = -1;
+ /* not an integral value, or out of range */
+ if ((val = double_to_int(s->numbr)) != s->numbr
+ || val < LONG_MIN || val > LONG_MAX) {
+ /*
+ * Once upon a time, if GFMT_WORKAROUND wasn't defined,
+ * we just blindly did this:
+ * sprintf(sp, format, s->numbr);
+ * s->stlen = strlen(sp);
+ * s->stfmt = (char) index;
+ * but that's no good if, e.g., OFMT is %s. So we punt,
+ * and just always format the value ourselves.
+ */
+
+ NODE *dummy, *r;
+ unsigned short oflags;
+ extern NODE **fmt_list; /* declared in eval.c */
+
+ /* create dummy node for a sole use of format_tree */
+ getnode(dummy);
+ dummy->type = Node_expression_list;
+ dummy->lnode = s;
+ dummy->rnode = NULL;
+ oflags = s->flags;
+ s->flags |= PERM; /* prevent from freeing by format_tree() */
+ if (val == s->numbr) {
+ /* integral value, but outside range of %ld, use %.0f */
+ r = format_tree("%.0f", 4, dummy, 2);
+ s->stfmt = -1;
+ } else {
+ r = format_tree(format, fmt_list[index]->stlen, dummy, 2);
+ s->stfmt = (char) index;
+ }
+ s->flags = oflags;
+ s->stlen = r->stlen;
+ if ((s->flags & STRCUR) != 0)
+ free(s->stptr);
+ s->stptr = r->stptr;
+ freenode(r); /* Do not free_temp(r)! We want */
+ freenode(dummy); /* to keep s->stptr == r->stpr. */
+
+ goto no_malloc;
} else {
- r = format_tree(format, fmt_list[index]->stlen, dummy, 2);
- s->stfmt = (char) index;
+ /* integral value */
+ /* force conversion to long only once */
+ register long num = (long) val;
+ if (num < NVAL && num >= 0) {
+ sp = (char *) values[num];
+ s->stlen = 1;
+ } else {
+ (void) sprintf(sp, "%ld", num);
+ s->stlen = strlen(sp);
+ }
+ s->stfmt = -1;
}
- s->flags = oflags;
- s->stlen = r->stlen;
- if ((s->flags & STRCUR) != 0)
- free(s->stptr);
- s->stptr = r->stptr;
- freenode(r); /* Do not free_temp(r)! We want */
- freenode(dummy); /* to keep s->stptr == r->stpr. */
-
+ emalloc(s->stptr, char *, s->stlen + 2, "format_val");
+ memcpy(s->stptr, sp, s->stlen+1);
+no_malloc:
s->stref = 1;
s->flags |= STRCUR;
free_wstr(s);
@@ -539,6 +595,8 @@ parse_escape(const char **string_ptr)
register int c = *(*string_ptr)++;
register int i;
register int count;
+ int j;
+ const char *start;
if (do_lint_old) {
switch (c) {
@@ -605,8 +663,9 @@ parse_escape(const char **string_ptr)
warning(_("no hex digits in `\\x' escape sequence"));
return ('x');
}
- i = 0;
- for (;;) {
+ i = j = 0;
+ start = *string_ptr;
+ for (;; j++) {
/* do outside test to avoid multiple side effects */
c = *(*string_ptr)++;
if (ISXDIGIT(c)) {
@@ -622,6 +681,8 @@ parse_escape(const char **string_ptr)
break;
}
}
+ if (do_lint && j > 2)
+ lintwarn(_("hex escape \\x%.*s of %d characters probably not interpreted the way you expect"), j, start, j);
return i;
case '\\':
case '"':
diff --git a/pc/ChangeLog b/pc/ChangeLog
index 962a4cf8..5297b354 100644
--- a/pc/ChangeLog
+++ b/pc/ChangeLog
@@ -1,3 +1,23 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Jul 13 05:43:07 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Still more sync with mainline.
+
+Tue Jun 23 05:24:12 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: More sync with mainline.
+
+Thu Jun 18 06:24:29 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline.
+
+2008-07-26 Eli Zaretskii <eliz@gnu.org>
+
+ * config.h (WEXITSTATUS) [_MSC_VER || __MINGW32__]: Define.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/pc/Makefile.tst b/pc/Makefile.tst
index b5953a12..9c952671 100644
--- a/pc/Makefile.tst
+++ b/pc/Makefile.tst
@@ -42,8 +42,8 @@
# You should also have a UNIX-compatible date program.
#
# The makefile has only been tested with dmake 3.8 and DJGPP Make 3.74 or
-# later. After making all of these changes, typing "dmake bigtest extra"
-# or "make bigtest extra" (with DJGPP Make) should run successfully.
+# later. After making all of these changes, typing "dmake check extra"
+# or "make check extra" (with DJGPP Make) should run successfully.
# The Bash shell (compiled with djgpp) works very well with the
# MSC & djgpp-compiled gawks. It is currently the recommended shell to use
@@ -115,40 +115,48 @@ srcdir = .
CLEANFILES = core core.* fmtspcl.ok
# try to keep these sorted
-BASIC_TESTS = addcomma anchgsub argarray arrayparm arrayref arrymem1 \
- arrayprm2 arrayprm3 arryref2 arryref3 arryref4 arryref5 arynasty \
- arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
- aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \
- clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt datanonl defref \
- delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmtspcl fmttest fnamedat \
- fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \
- fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \
- getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \
- gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest intformat \
- intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \
- messages minusstr mmap8k mtchi18n nasty nasty2 negexp nested nfldstr \
- nfneg nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \
- noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \
- ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf ovrflow1 paramdup paramtyp \
- parse1 parsefld parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
- prt1eval prtoeval psx96sub rand rebt8b1 rebt8b2 redfilnm regeq \
- reindops reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 \
- rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \
- sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \
- strcat1 strtod strnum1 subamp subi18n subsepnm subslash substr swaplns \
- synerr1 synerr2 tradanch \
- tweakfld uninit2 uninit3 uninit4 uninitialized unterm wideidx wideidx2 \
- widesub widesub2 widesub3 widesub4 wjposer1 zeroe0 zeroflag zero2
+BASIC_TESTS = \
+ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 arrayref \
+ arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty arynocls \
+ aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 \
+ arysubnm asgext awkpath back89 backgsub childin clobber closebad \
+ clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt \
+ datanonl defref delarpm2 delarprm delfunc dynlj eofsplit exitval1 \
+ exitval2 fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm \
+ fnmisc fordel forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \
+ funstack getline getline2 getline3 getlnbuf getnr2tb getnr2tm \
+ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \
+ hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \
+ longsub longwrds manglprm math membug1 messages minusstr mmap8k \
+ mtchi18n nasty nasty2 negexp nested nfldstr nfneg nfset nlfldsep \
+ nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl noparms \
+ nors nulrsend numindex numsubstr octsub ofmt ofmtbig ofmtfidl ofmts \
+ onlynl opasnidx opasnslf paramdup paramres paramtyp parse1 parsefld \
+ parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
+ prt1eval prtoeval psx96sub rand rebt8b1 redfilnm regeq reindops \
+ reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \
+ rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin sortempty \
+ splitargv splitarr splitdef splitvar splitwht strcat1 strnum1 \
+ strtod subamp subi18n subsepnm subslash substr swaplns synerr1 \
+ synerr2 tradanch tweakfld uninit2 uninit3 uninit4 uninitialized \
+ unterm uparrfs wideidx wideidx2 widesub widesub2 widesub3 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
UNIX_TESTS = fflush getlnhd localenl pid pipeio1 pipeio2 poundbang space strftlng
-GAWK_EXT_TESTS = argtest asort asorti backw badargs binmode1 clos1way devfd devfd1 devfd2 double1 double2 \
- fieldwdth fsfwfs fwtest fwtest2 gensub gensub2 gnuops2 gnuops3 gnureops icasefs \
- icasers igncdym igncfs ignrcase ignrcas2 lint lintold match1 match2 manyfiles \
- nondec nondec2 posix procinfs printfbad1 regx8bit rebuf reint reint2 rsstart1 \
- rsstart2 rsstart3 rstest6 shadow sort1 strtonum strftime whiny
+GAWK_EXT_TESTS = \
+ argtest backw badargs binmode1 clos1way devfd devfd1 devfd2 fieldwdth \
+ fsfwfs funlen fwtest fwtest2 gensub gensub2 getlndir gnuops2 gnuops3 \
+ gnureops icasefs icasers igncdym igncfs ignrcas2 ignrcase lint lintold \
+ manyfiles match1 match2 match3 mbprintf3 mbstr1 nondec nondec2 posix \
+ printfbad1 printfbad2 procinfs rebuf regx8bit reint reint2 rsstart1 \
+ rsstart2 rsstart3 rstest6 shadow strftime strtonum
EXTRA_TESTS = regtest inftest
INET_TESTS = inetechu inetecht inetdayu inetdayt
+MACHINE_TESTS = double1 double2 fmtspcl intformat
+LOCALE_CHARSET_TESTS = asort asorti fmttest fnarydel fnparydl lc_num1 mbfw1 \
+ mbprintf1 mbprintf2 rebt8b2 sort1 sprintfc whiny
+
# List of the tests which should be run with --lint option:
NEED_LINT = defref fmtspcl noeffect nofmtch shadow uninit2 uninit3 uninit4 uninitialized
@@ -167,6 +175,8 @@ check: msg \
basic-msg-start basic basic-msg-end \
unix-msg-start unix-tests unix-msg-end \
extend-msg-start gawk-extensions extend-msg-end \
+ machine-msg-start machine-tests machine-msg-end \
+ charset-msg-start charset-tests charset-msg-end \
pass-fail
basic: $(BASIC_TESTS)
@@ -175,11 +185,14 @@ unix-tests: $(UNIX_TESTS)
gawk-extensions: $(GAWK_EXT_TESTS)
-#extra: $(EXTRA_TESTS) inet
-extra: $(EXTRA_TESTS) inetmesg
+charset-tests: $(LOCALE_CHARSET_TESTS)
+
+extra: $(EXTRA_TESTS) inet
inet: inetmesg $(INET_TESTS)
+machine-tests: $(MACHINE_TESTS)
+
msg::
@echo ""
@echo "Any output from $(CMP) is bad news, although some differences"
@@ -208,6 +221,25 @@ extend-msg-start:
extend-msg-end:
@echo "======== Done with gawk extension tests ========"
+machine-msg-start:
+ @echo "======== Starting machine-specific tests ========"
+
+machine-msg-end:
+ @echo "======== Done with machine-specific tests ========"
+
+charset-msg-start:
+ @echo "======== Starting tests that can vary based on character set or locale support ========"
+
+charset-msg-end:
+ @echo "======== Done with tests that can vary based on character set or locale support ========"
+
+lc_num1:
+ @echo $@
+ @echo Expect lc_num1 to fail with DJGPP.
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
# This test is a PITA because increasingly, /tmp is getting
# mounted noexec. So, we'll test it locally. Sigh.
#
@@ -220,7 +252,7 @@ poundbang::
@if ./_pbd.awk $(srcdir)/poundbang.awk > _`basename $@` ; \
then : ; \
else \
- sed "s;/tmp/gawk;./$(AWKPROG);" < $(srcdir)/poundbang.awk > ./_pbd.awk ; \
+ sed "s;/tmp/gawk;../$(AWKPROG);" < $(srcdir)/poundbang.awk > ./_pbd.awk ; \
chmod +x ./_pbd.awk ; \
LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C} ./_pbd.awk $(srcdir)/poundbang.awk > _`basename $@`; \
fi
@@ -294,7 +326,7 @@ badargs::
nonl::
@echo $@
- @-AWKPATH=$(srcdir) $(AWK) --lint -f nonl.awk NUL >_$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) --lint -f nonl.awk /dev/null >_$@ 2>&1
@-$(CMP) $(srcdir)/nonl.ok _$@ && rm -f _$@
strftime::
@@ -378,7 +410,6 @@ reint::
pipeio1::
@echo $@
- @echo Expect $@ to produce insignificant whitespace differences
@$(AWK) -f $(srcdir)/pipeio1.awk >_$@
@rm -f test1 test2
@-$(CMP) $(srcdir)/pipeio1.ok _$@ && rm -f _$@
@@ -411,21 +442,31 @@ inetmesg::
@echo file /etc/services and do "'netstat -a'".
inetechu::
+ @echo Expect inetechu to fail with DJGPP.
@echo This test is for establishing UDP connections
- @$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}'
+# @$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}'
+ @-$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}'
inetecht::
+ @echo Expect inetecht to fail with DJGPP.
@echo This test is for establishing TCP connections
- @$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}'
+# @$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}'
+ @-$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}'
inetdayu::
+ @echo Expect inetdayu to fail with DJGPP.
@echo This test is for bidirectional UDP transmission
- @$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \
+# @$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \
+# "/inet/udp/0/127.0.0.1/13" |& getline; print $0}'
+ @-$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \
"/inet/udp/0/127.0.0.1/13" |& getline; print $0}'
inetdayt::
+ @echo Expect inetdayt to fail with DJGPP.
@echo This test is for bidirectional TCP transmission
- @$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \
+# @$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \
+# "/inet/tcp/0/127.0.0.1/13" |& getline; print $0}'
+ @-$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \
"/inet/tcp/0/127.0.0.1/13" |& getline; print $0}'
redfilnm::
@@ -609,7 +650,49 @@ reint2::
localenl::
@echo $@
- @$(srcdir)/$@.sh >_$@
+ @$(srcdir)/$@.sh >_$@ 2>/dev/null
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf1::
+ @echo $@
+ @echo Expect mbprintf1 to fail with DJGPP.
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf2::
+ @echo $@
+ @GAWKLOCALE=ja_JP.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf3::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbfw1::
+ @echo $@
+ @echo Expect mbfw1 to fail with DJGPP.
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+gsubtst6::
+ @echo $@
+ @GAWKLOCALE=C ; $(AWK) -f $(srcdir)/$@.awk > _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbstr1::
+ @echo $@
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+printfbad2: printfbad2.ok
+ @echo $@
+ @$(AWK) --lint -f $(srcdir)/$@.awk $(srcdir)/$@.in 2>&1 | sed 's;\$(srcdir)/;;g' >_$@ || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
Gt-dummy:
# file Maketests, generated from Makefile.am by the Gentests program
@@ -628,23 +711,23 @@ arrayparm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayref:
- @echo arrayref
+arrayprm2:
+ @echo arrayprm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrymem1:
- @echo arrymem1
+arrayprm3:
+ @echo arrayprm3
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm2:
- @echo arrayprm2
+arrayref:
+ @echo arrayref
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm3:
- @echo arrayprm3
+arrymem1:
+ @echo arrymem1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -738,6 +821,11 @@ childin:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+closebad:
+ @echo closebad
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
clsflnam:
@echo clsflnam
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -778,13 +866,13 @@ defref:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarprm:
- @echo delarprm
+delarpm2:
+ @echo delarpm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarpm2:
- @echo delarpm2
+delarprm:
+ @echo delarprm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -805,7 +893,7 @@ eofsplit:
exitval2:
@echo exitval2
- @AWKPATH=$(srcdir) $(AWK) -f $@.w32 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
fldchg:
@@ -818,12 +906,6 @@ fldchgnf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fmttest:
- @echo fmttest
- @echo Expect $@ to produce insignificant formatting differences
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk | sed -e "s/\([0-9]e[-+]\)0\([0-9]\)/\1\2/g" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnamedat:
@echo fnamedat
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -839,11 +921,6 @@ fnarray2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnarydel:
- @echo fnarydel
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnaryscl:
@echo fnaryscl
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -859,11 +936,6 @@ fnmisc:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnparydl:
- @echo fnparydl
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fordel:
@echo fordel
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -956,9 +1028,7 @@ hex:
hsprint:
@echo hsprint
- @echo Expect hsprint to produce insignificant formatting differences
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk | sed -e "s/\([0-9]e[-+]\)0\([0-9]\)/\1\2/g" -e "s/| 1/| 1/" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
-# @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
inputred:
@@ -971,11 +1041,6 @@ intest:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-intformat:
- @echo intformat
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
intprec:
@echo intprec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1152,13 +1217,13 @@ opasnslf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-ovrflow1:
- @echo ovrflow1
+paramdup:
+ @echo paramdup
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-paramdup:
- @echo paramdup
+paramres:
+ @echo paramres
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -1237,11 +1302,6 @@ rebt8b1:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-rebt8b2:
- @echo rebt8b2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
regeq:
@echo regeq
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1289,13 +1349,11 @@ rstest3:
rstest4:
@echo rstest4
- @echo Expect $@ to fail on DOS/Windows
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
rstest5:
@echo rstest5
- @echo Expect $@ to fail on DOS/Windows
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -1349,27 +1407,22 @@ splitwht:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-sprintfc:
- @echo sprintfc
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
strcat1:
@echo strcat1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strnum1:
+ @echo strnum1
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
strtod:
@echo strtod
@echo Expect strtod to fail with DJGPP.
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strnum1:
- @echo strnum1
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
subsepnm:
@echo subsepnm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1425,11 +1478,21 @@ unterm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+uparrfs:
+ @echo uparrfs
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
wjposer1:
@echo wjposer1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+zero2:
+ @echo zero2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
zeroe0:
@echo zeroe0
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1440,27 +1503,12 @@ zeroflag:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-zero2:
- @echo zero2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
getlnhd:
@echo getlnhd
@echo Expect getlnhd to fail if pipe does not use a Unixy shell
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-asort:
- @echo asort
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-asorti:
- @echo asorti
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
backw:
@echo backw
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1472,16 +1520,6 @@ clos1way:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-double1:
- @echo double1
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-double2:
- @echo double2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fieldwdth:
@echo fieldwdth
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1492,6 +1530,11 @@ fsfwfs:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+funlen:
+ @echo funlen
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
fwtest:
@echo fwtest
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1512,6 +1555,12 @@ gensub2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+getlndir:
+ @echo getlndir
+ @echo Expect getlndir to fail with DJGPP.
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
gnuops2:
@echo gnuops2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1572,6 +1621,11 @@ match2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+match3:
+ @echo match3
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
nondec:
@echo nondec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1579,12 +1633,7 @@ nondec:
posix:
@echo posix
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in | sed -e "s/e+000/e+00/" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-procinfs:
- @echo procinfs
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
printfbad1:
@@ -1592,8 +1641,8 @@ printfbad1:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-regx8bit:
- @echo regx8bit
+procinfs:
+ @echo procinfs
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -1602,6 +1651,11 @@ rebuf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+regx8bit:
+ @echo regx8bit
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
rstest6:
@echo rstest6
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1612,14 +1666,64 @@ shadow:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strtonum:
+ @echo strtonum
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double1:
+ @echo double1
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double2:
+ @echo double2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+intformat:
+ @echo intformat
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asort:
+ @echo asort
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asorti:
+ @echo asorti
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fmttest:
+ @echo fmttest
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnarydel:
+ @echo fnarydel
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnparydl:
+ @echo fnparydl
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+rebt8b2:
+ @echo rebt8b2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
sort1:
@echo sort1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strtonum:
- @echo strtonum
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+sprintfc:
+ @echo sprintfc
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
# end of file Maketests
@@ -1681,6 +1785,7 @@ efence:
rm _$$i ; \
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:
diff --git a/pc/config.h b/pc/config.h
index 0ea25224..5791de4e 100644
--- a/pc/config.h
+++ b/pc/config.h
@@ -552,5 +552,8 @@
#undef HAVE_SYS_PARAM_H
#endif
+#if defined(_MSC_VER) || defined(__MINGW32__)
+# define WEXITSTATUS(stat_val) ((stat_val) & ~0xC0000000)
+#endif
/* #define NO_LINT 1 */
diff --git a/po/ChangeLog b/po/ChangeLog
index 96616216..0cb3ebeb 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,3 +1,21 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Jun 8 23:12:09 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in.in: Reinstate change of 2008.12.18.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.17.
+
+Thu Dec 18 20:36:34 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in.in (install-dvi, install-ps): New targets that
+ do nothing, per email from "Stoddard, Isaac A"
+ <isaac.a.stoddard@boeing.com>.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/po/LINGUAS b/po/LINGUAS
index 3f47fcaf..345bba24 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,6 +1,7 @@
es
fr
he
+id
it
sv
tr
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 5022b8b1..908745c8 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -1,5 +1,5 @@
# Makefile for PO directory in any package using GNU gettext.
-# Copyright (C) 1995-1997, 2000-2006 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
+# Copyright (C) 1995-1997, 2000-2007 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
#
# This file can be copied and used freely without restrictions. It can
# be used in projects which are not available under the GNU General Public
@@ -8,7 +8,8 @@
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
#
-# Origin: gettext-0.16
+# Origin: gettext-0.17
+GETTEXT_MACRO_VERSION = 0.17
PACKAGE = @PACKAGE@
VERSION = @VERSION@
@@ -95,11 +96,18 @@ CATALOGS = @CATALOGS@
mv t-$@ $@
-all: all-@USE_NLS@
+all: check-macro-version all-@USE_NLS@
all-yes: stamp-po
all-no:
+# Ensure that the gettext macros and this Makefile.in.in are in sync.
+check-macro-version:
+ @test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \
+ || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version @GETTEXT_MACRO_VERSION@" 1>&2; \
+ exit 1; \
+ }
+
# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no
# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because
# we don't want to bother translators with empty POT files). We assume that
@@ -130,16 +138,34 @@ stamp-po: $(srcdir)/$(DOMAIN).pot
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
+ if LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null | grep -v 'libtool:' >/dev/null; then \
+ package_gnu='GNU '; \
+ else \
+ package_gnu=''; \
+ fi; \
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \
else \
msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \
fi; \
- $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
- --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
- --files-from=$(srcdir)/POTFILES.in \
- --copyright-holder='$(COPYRIGHT_HOLDER)' \
- --msgid-bugs-address="$$msgid_bugs_address"
+ case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+ '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \
+ $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
+ --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
+ --files-from=$(srcdir)/POTFILES.in \
+ --copyright-holder='$(COPYRIGHT_HOLDER)' \
+ --msgid-bugs-address="$$msgid_bugs_address" \
+ ;; \
+ *) \
+ $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
+ --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
+ --files-from=$(srcdir)/POTFILES.in \
+ --copyright-holder='$(COPYRIGHT_HOLDER)' \
+ --package-name="$${package_gnu}@PACKAGE@" \
+ --package-version='@VERSION@' \
+ --msgid-bugs-address="$$msgid_bugs_address" \
+ ;; \
+ esac
test ! -f $(DOMAIN).po || { \
if test -f $(srcdir)/$(DOMAIN).pot; then \
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \
@@ -301,7 +327,7 @@ uninstall-data-yes:
check: all
-info dvi ps pdf html tags TAGS ctags CTAGS ID:
+info dvi ps pdf html tags TAGS ctags CTAGS ID install-dvi install-ps:
mostlyclean:
rm -f remove-potcdate.sed
diff --git a/po/ca.gmo b/po/ca.gmo
index ccb60f9c..e1f5eb74 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 0c3ed601..4fd21f84 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.31\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2003-05-07 21:13+0100\n"
"Last-Translator: Antoni Bella Perez <bella5@teleline.es>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -75,334 +75,337 @@ msgstr "%s: és un paràmetre\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: ref_matriu a %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "Els blocs FINAL han de tindre una part d'acció"
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "Els blocs FINAL han de tindre una part d'acció"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "«%s» és una funció interna, no pot ser redefinida"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
-"la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho "
-"és"
+"la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho és"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
-"la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho "
-"és"
+"la constant d'expressió regular «/%s/» sembla un comentari en C, perà no ho és"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "la declaració podria no tindre efecte"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "«next» és usat dintre de l'acció BEGIN o END"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "«nextfile» és una extensió de gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "«return» és usat fora del context d'una funció"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"el «print» simple en la regla BEGIN o END probablement ha de ser «print \"\"»"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "«delete array» és una extensió de gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "«delete array» és una extensió de gawk"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "les canonades bidireccionals multi-etapes no funcionen"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "expressió regular a la dreta d'una assignació"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "expressió regular a l'esquerra de l'operador «~» o «!~»"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "expressió regular a la derta de la comparació"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "«getline» no redirigit sense definir dintre de l'acció FINAL"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "la crida de «length» sense parèntesis no és portable"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "la crida de «length» sense parèntesis està desaprovada per POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "expressió de subscript no vàlida"
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "nova línia inesperada"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "el text del programa en la línia de comandaments està buit"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "no es pot obrir el fitxer font «%s» per a lectura (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "no es pot llegir el fitxer font «%s» (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "el fitxer font «%s» està buit"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "el fitxer font no finalitza amb un retorn de carro"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "expressió regular sense finalitzar acaba amb «\\» al final del fitxer"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "expressió regular sense finalitzar"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "expressió regular sense finalitzar al final del fitxer"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "l'ús de «\\ #...» com a continuació de línia no és portable"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "la barra invertida no és l'últim caràcter en la línia"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX no permet l'operador «**=»"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX no permet l'operador «**»"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "l'operador «^=» no està suportat en l'antic awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "l'operador «^» no està suportat en l'antic awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "cadena sense finalitzar"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "caràcter «%c» no vàlid en l'expressió"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "«%s» és una extensió de gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "«%s» és una extensió de Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX no permet «%s»"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "«%s» no està suportat en l'antic awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "«goto» se considera nefast!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d no és vàlid com a nombre d'arguments per a %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: el tercer argument és una extensió de gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: la cadena literal com a últim argument de substitució no té efecte"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "sub: el tercer argument no és un objecte intercanviable"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: el segon argument és una extensió de gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"l'ús de dcgettext(_\"...\") no és correcte: elimineu el guió baix inicial"
-#: awkgram.y:2522
+#: awkgram.y:2530
#, fuzzy
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"l'ús de dcgettext(_\"...\") no és correcte: elimineu el guió baix inicial"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funció «%s»: paràmetre #%d, «%s», duplica al paràmetre #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "funció «%s»: paràmetre «%s» ofusca la variable global"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "no es pot obrir «%s» per a escriptura (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "enviant el perfil a l'eixida d'error estàndard"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: tancament erroni (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() crida dos vegades!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "funció «%s»: no pot usar el nom de la funció com a paràmetre"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "funció «%s»: no pot usar el nom de la funció com a paràmetre"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "nom de la funció «%s» definida prèviament"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "es crida a la funció «%s» però no s'ha definit"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "es defineix la funció «%s» però no s'ha cridat mai"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"l'expressió regular constant per al paràmetre #%d condueix a un valor booleà"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -411,202 +414,231 @@ msgstr ""
"s'ha cridat a la funció «%s» amb espai entre el nom i el «(»,\n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "s'ha intentat una divisió per zero en «%%»"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s a \"%s\" ha fallat (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "eixida estàndard"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "motiu desconegut"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: s'ha rebut un argument que no és un número"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: l'argument %g està fora de rang"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: no es pot netejar: la canonada «%s» s'ha obert per a lectura, no per "
"a escriptura"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: no es pot netejar: el fitxer «%s» s'ha obert per a lectura, no per a "
"escriptura"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: «%s» no és un fitxer obert, canonada o co-procés"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "índex: el primer argument rebut no és una cadena"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "índex: el segon argument rebut no és una cadena"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: s'ha rebut un argument no numèric"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "«delete array» és una extensió de gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: s'ha rebut un argument que no és una cadena"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: s'ha rebut un argument no numèric"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: s'ha rebut l'argument negatiu %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "no es permeten «$» en els formats awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "el compte d'arguments amb «$» ha de ser > 0"
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr ""
"el comte d'arguments %d és major que el nombre total d'arguments "
"proporcionats"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "no es permet «$» després d'un punt en el format"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "no es proporciona «$» per a l'ample o precisió del camp de posició"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "«l» manca de significat en els formats awk; serà ignorat"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "«l» no està permés en els formats POSIX de awk"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "«L» manca de significat en els formats awk; serà ignorat"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "«L» no està permés en els formats POSIX de awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "«h» manca de significat en els formats awk; serà ignorat"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "«h» no està permés en els formats POSIX de awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "no hi ha prou arguments per a satisfer el format d'una cadena"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ desbordament per a aquest"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: l'especificador de format no conté lletra de control"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "s'han proporcionat masses arguments per a la cadena de format"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: sense arguments"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: s'ha rebut un argument no numèric"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: cridat amb l'argument negatiu %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: l'índex d'inici %g no és vàlid, usant 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: l'índex d'inici no enter %g serà truncat"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: la longitud %g és <= 0"
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: la longitud %g és <= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: la longitud sobre un nombre no enter %g serà truncada"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: la cadena font és de longitud zero"
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: l'índex d'inici %d sobrepassa l'acabament de la cadena"
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -614,273 +646,274 @@ msgstr ""
"substr: la longitud %d a l'índex d'inici %d excedeix la longitud del 1er "
"argument (%d)"
-#: builtin.c:1558
+#: builtin.c:1621
#, fuzzy
msgid "strftime: received non-string first argument"
msgstr "strftime: el primer argument rebut no és una cadena"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: s'ha rebut una cadena de format buida"
-#: builtin.c:1573
+#: builtin.c:1636
#, fuzzy
msgid "strftime: received non-numeric second argument"
msgstr "strftime: el segon argument rebut no és numèric"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: s'ha rebut un argument que no és una cadena"
-#: builtin.c:1695
+#: builtin.c:1758
#, fuzzy
msgid "system: received non-string argument"
msgstr "system: s'ha rebut un argument que no és una cadena"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referència a una variable sense inicialitzar «%s»"
-#: builtin.c:1921
+#: builtin.c:1984
#, fuzzy
msgid "tolower: received non-string argument"
msgstr "tolower: s'ha rebut un argument que no és una cadena"
-#: builtin.c:1951
+#: builtin.c:2014
#, fuzzy
msgid "toupper: received non-string argument"
msgstr "toupper: s'ha rebut un argument que no és una cadena"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: el primer argument rebut no és numèric"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: s'ha rebut un argument que no és numèric"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: s'ha rebut un argument que no és numèric"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: s'ha rebut un argument que no és numèric"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: el tercer argument no és una matriu"
-#: builtin.c:2650
+#: builtin.c:2719
+#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: el tercer argument de 0 és tractat com a 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: el primer argument rebut no és numèric"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
-msgstr "strftime: el segon argument rebut no és numèric"
+msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): els valors negatius donaran resultats estranys"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): els valors fraccionaris sernn truncats"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): un valor de desplaçament massa gran donarà resultats "
"estranys"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: el primer argument rebut no és numèric"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
-msgstr "strftime: el segon argument rebut no és numèric"
+msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): els valors negatius donaran resultats estranys"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): els valors fraccionaris seran truncats"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): un valor de desplaçament massa gran donarà resultats "
"estranys"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: el primer argument rebut no és numèric"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): els valors negatius donaran resultats estranys"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): els valors fraccionaris seran truncats"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: el primer argument rebut no és numèric"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): els valors negatius donaran resultats estranys"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): els valors fraccionaris seran truncats"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: el primer argument rebut no és numèric"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "atan2: el segon argument rebut no és numèric"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): els valors negatius donaran resultats estranys"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): els valors fraccionaris seran truncats"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: s'ha rebut un argument que no és numèric"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): el valor negatiu donarà resultats estranys"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): el valor fraccionari serà truncat"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: «%s» no és una categoria local vàlida"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "tipo de node %d desconegut"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "desbordament del cau temporal en genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "s'ha intentat usar la matriu «%s» en un context escalar"
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
-"bucle for: la matriu «%s» ha canviat de mida de %d a %d durant l'execució "
-"del bucle"
+"bucle for: la matriu «%s» ha canviat de mida de %d a %d durant l'execució del "
+"bucle"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "«break» a fora d'un bucle no és portable"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "no es permet «break» a fora d'un bucle"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "«continue» fora d'un bucle no és portable"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "no es permet «continue» a fora d'un bucle"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "«next» no es pot cridar des d'una regla BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "«next» no es pot cridar des d'una regla FINAL"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "«nextfile» no es pot cridar des d'una regla BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "«nextfile» no es pot cridar des d'una regla FINAL"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "la sentència no té efecte"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "no es pot usar el nom de la funció «%s» com a variable o matriu"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referència a un argument sense inicialitzar «%s»"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referència a una variable sense inicialitzar «%s»"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -888,44 +921,39 @@ msgstr ""
"concatenació: els efectes colaterals en una expressió han canviat la "
"longitud d'una altra!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "assignació usada en un context condicional"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "s'ha intentat una divisió per zero"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "s'ha intentat una divisió per zero en «%%»"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tipus il·legal (%s) en tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "s'ha intentat una divisió per zero en «/=»"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "s'ha intentat una divisió per zero en «%%=»"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "s'ha cridat a la funció «%s» amb més arguments dels declarats"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "la funció «%s» no està definida"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -936,43 +964,48 @@ msgstr ""
"\t# Pila de Crides a les Funcions:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- principal --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "s'ha intentat una referència de camp a partir d'un valor no numèric"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "s'ha intentat una referència a partir d'una cadena nul·la"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "s'ha intentat accedir al camp %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr ""
"no es permet l'assignació per a obtindre un resultat d'una funció interna"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "«IGNORECASE» és una extensió de gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "«BINMODE» és una extensió de gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "«%sFMT» especificació errònia «%s»"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "desactivant «--lint» degut a una assignació a «LINT»"
@@ -1047,567 +1080,572 @@ msgstr "Operació No Suportada"
msgid "NF set to negative value"
msgstr "NF s'inicialitza sobre un valor negatiu"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: el segon argument no és una matriu"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: la cadena nul·la per al tercer argument és una extensió de gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "«FIELDWIDTHS» és una extensió de gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "la cadena nul·la per a «FS» és una extensió de gawk"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: l'opció «%s» és ambigua\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: l'opció «--%s» no admet cap argument\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: l'opció «%c%s» no admet cap argument\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: l'opció «%s» requereix un argument\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: no es reconeix l'opció «--%s»\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: no es reconeix l'opció «%c%s»\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: opció il·legal -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opció no vàlida -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: l'opció requereix un argument -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: l'opció «-W %s» és ambigua\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: l'opció «-W %s» no admet cap argument\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "no es pot obrir el fitxer «%s» per a lectura (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "la finalització del descriptor fd %d («%s») ha fallat (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "tipus d'arbre %s no vàlid dintre de redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "l'expressió en la redirecció «%s» solt té un valor numèric"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "l'expressió per a la redirecció «%s» té un valor de cadena nul·la"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
-"el fitxer «%s» per a la redirecció «%s» pot ser resultat d'una expressió "
-"lògica"
+"el fitxer «%s» per a la redirecció «%s» pot ser resultat d'una expressió lògica"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "mescla innecessària de «>» i «>>» per al fitxer «%.*s»"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "no es pot obrir la canonada «%s» per a l'eixida (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "no es pot obrir la canonada «%s» per a l'entrada (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "el fitxer «%s» és un directori"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
"no es pot obrir un socket bidireccional «%s» per a les entrades/eixides (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr ""
"no es pot obrir una canonada bidireccional «%s» per a les entrades/eixides (%"
"s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "no es pot redirigir des de «%s» (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "no es pot redirigir cap a «%s» (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"s'ha arribat al límit del sistema per a fitxers oberts: es començarà a "
"multiplexar els descriptors de fitxer"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "la finalització de «%s» ha fallat (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "masses canonades o fitxers d'entrada oberts"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: el segon argument hauria de ser «to» o «from»"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: «%.*s» no és un fitxer obert, canonada o co-procés"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "finalització d'una redirecció que no s'ha obert"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
-msgstr ""
-"close: la redirecció «%s» no s'obre amb «|&», s'ignora el segon argument"
+msgstr "close: la redirecció «%s» no s'obre amb «|&», s'ignora el segon argument"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "estaus de falla (%d) en la finalització de la canonada «%s» (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "estatus de falla (%d) en la finalització del fitxer «%s» (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "no s'aporta la finalització explícita del socket «%s»"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "no s'aporta la finalització explícita del co-procés «%s»"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "no s'aporta la finalització explícita de la canonada «%s»"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "no s'aporta la finalització explícita del fitxer «%s»"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "error a l'escriure en l'eixida estàndard (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "error a l'escriure en l'eixida d'error estàndard (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "la neteja de la canonada de «%sx» ha fallat (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "la neteja de la canonada per al co-procés de «%sx» ha fallat (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "la neteja del fitxer «%sx» ha fallat (%s)."
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "port local no vàlid en «%s»"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "el client /inet/raw encara no està a punt, ho sento"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "sols el root pot usar «/inet/raw»."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "el servidor /inet/raw encara no està a punt, ho sento"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "no s'aporta cap protocol (conegut) en el nom del fitxer especial «%s»"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "el nom del fitxer especial «%s» està incomplet"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "s'ha de subministrar un nom de sistema remot a «/inet»"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "s'ha de subministrar un port remot a «/inet»"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "les comunicacions TCP/IP no estan suportades"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "el fitxer «%s» és un directori"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "useu «PROCINFO[\"%s\"]» en comptes de «%s»"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "useu «PROCINFO[...]» en comptes de «/dev/user»"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "no es pot obrir «%s», mode «%s»"
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "ha fallat la finalització de la canonada (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr ""
"ha fallat la finalització de l'eixida estàndard en els processos fills (%s)"
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"ha fallat la redirecció cap a l'eixida estàndard dels processos fills (dup: %"
"s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr ""
"ha fallat la finalització de l'entrada estàndard en els processos fills (%s)"
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"ha fallat la redirecció cap a l'entrada estàndard dels processos fills (dup: "
"%s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "ha fallat la finalització de la canonada (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr ""
"ha fallat la redirecció cap a l'eixida estàndard dels processos fills (dup: %"
"s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
"ha fallat la redirecció cap a l'entrada estàndard dels processos fills (dup: "
"%s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "ha fallat la restauració de l'eixida estàndard en el procés pare\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "ha fallat la restauració de l'entrada estàndard en el procés pare\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "ha fallat la finalització de la canonada (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "«|&» no està suportat"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "no es pot obrir la canonada «%s» (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "no es pot crear el procés fill per a «%s» (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "el fitxer de dades «%s» està buit"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "error en llegir el fitxer d'entrada «%s»: %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "el valor multicaràcter de «RS» és una extensió de gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "memòria esgotada"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "l'opción «-m[fr]» és irrellevant en gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "ús de l'opció -m: «-m[fr] nnn»"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: no es reconeix l'opció «-W %s», serà ignorada\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "s'igonarà l'argument buit per a l'opció «--source»"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: l'opció requereix un argument -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
-msgstr ""
-"la variable d'entorn «POSIXLY_CORRECT» està establerta: usant «--posix»"
+msgstr "la variable d'entorn «POSIXLY_CORRECT» està establerta: usant «--posix»"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "«--posix» solapa a «--traditional»"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "«--posix» i «--traditional» solapen a «--non-decimal-data»"
-#: main.c:501
+#: main.c:527
#, fuzzy, c-format
msgid "running %s setuid root may be a security problem"
msgstr "executar %s com a setuid root pot ser un problema de seguretat"
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "no es pot establir el mode en l'entrada estàndard (%s)"
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "no es pot establir el mode en l'eixida estàndard (%s)"
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "no es pot establir el mode en l'eixida d'error estàndard (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "no hi ha cap text per al programa!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Ús: %s [opcions d'estil POSIX o GNU] -f fitx_prog [--] fitxer ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Ús: %s [opcions d'estil POSIX o GNU] [--] %cprograma%c fitxer ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Opcions POSIX:\t\tOpcions llargues GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f fitx_prog\t\t--file=fitx_prog\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs (fs=sep_camp)\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=valor\t\t--assign=var=valor\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] valor\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fitxer] --dump-variables[=fitxer]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=fitxer]\t--profile[=fitxer]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fitxer]\t--profile[=fitxer]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=text_prog\t--source=text_prog\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1616,7 +1654,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
#, fuzzy
msgid ""
"\n"
@@ -1625,22 +1663,22 @@ msgid ""
"\n"
msgstr "a la secció «Reporting Problems and Bugs» de la versió impresa.\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1654,11 +1692,11 @@ msgstr ""
"\n"
"Aquest programa és programari lliure; pot redistribuir-se i/o modificar-se\n"
"sota els termes de la Llicència Pública General de GNU tal i como està\n"
-"publicada per la Free Software Foundation; ja siga en la versió 3 de la\n"
+"publicada per la Free Software Foundation; ja siga en la versió 2 de la\n"
"Llicència, o (a la vostra elecció) qualsevol versió posterior.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1672,7 +1710,7 @@ msgstr ""
"Per a més detalls consulteu la Llicència Pública General de GNU.\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1680,49 +1718,58 @@ msgid ""
msgstr ""
"Junt amb aquest programa hauríeu d'haber rebut una còpia de la Llicència\n"
"Pública General de GNU; si no és així, escriviu a la Free Software\n"
-"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
-"USA.\n"
+"Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft no permet inicialitzar FS a un tabulador en la versió POSIX de awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "excepció de coma flotant"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "error fatal: error intern"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "error fatal: error intern"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "error fatal: error intern"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "no s'ha pre-obert el descriptor fd per a %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "no es pot pre-obrir /dev/null per al descriptor fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "no es poden trobar els grups: %s"
@@ -1748,24 +1795,31 @@ msgstr "Fatal: "
msgid "can't convert string to float"
msgstr "no es pot convertir la cadena a coma flotant"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "barra invertida al final de la cadena"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "l'antic awk no suporta l'operador «**=»"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX no permet seqüències d'escapada «\\x»"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "no hi ha dígits hexadecimals en la seqüència d'escapada «\\x»"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "la seqüència d'escapada «\\%c» és tractada com a una simple «%c»"
@@ -1775,31 +1829,31 @@ msgstr "la seqüència d'escapada «\\%c» és tractada com a una simple «%c»"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s «%s»: no es pot inicialitzar close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "no es pot obrir «%s» per a escriptura: %s"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "error intern: Node_var amb vname nul"
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# perfil gawk, creat %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1808,7 +1862,7 @@ msgstr ""
"\t# Bloc(s) INICI\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1817,7 +1871,7 @@ msgstr ""
"\t# Regla(es)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1826,7 +1880,7 @@ msgstr ""
"\t# Bloc(s) FINAL\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1835,133 +1889,113 @@ msgstr ""
"\n"
"\t# Funcions, llistades alfabèticament\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "tipus %s inesperat en prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "tipo de node %d desconegut"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Èxit"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "No hi ha concordança"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Expressió regular no vàlida"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Caràcter de comparació no vàlid"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Nom de classe de caràcters no vàlid"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Barra invertida extra al final"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Referència cap enradera no vàlida"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ o [^ desemparellats"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( o \\( desemparellats"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ desemparellat"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Contingut no vàlid de \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Final de rang no vàlid"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Memòria exhaurida"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Expressió regular precedent no vàlida"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Fí prematura de l'expressió regular"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "L'expressió regular és massa gran"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") o \\) desemparellats"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "No hi ha una expressió regular prèvia"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "port remot no vàlid en «%s»"
-
-#~ msgid "function %s called\n"
-#~ msgstr "s'ha cridat a la funció %s\n"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "el camp %d en FIELDWIDTHS, hauria de ser > 0"
-
-#, fuzzy
-#~ msgid "or used as a variable or an array"
-#~ msgstr "no es pot usar el nom de la funció «%s» com a variable o matriu"
-
-#, fuzzy
-#~ msgid "substr: length %g is < 0"
-#~ msgstr "substr: la longitud %g és <= 0"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: opció il·legal -- %c\n"
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "delete: ús il·legal de la variable «%s» com a una matriu"
-#, fuzzy
-#~ msgid "%s: gvar_ref to %s\n"
-#~ msgstr "%s: ref_matriu a %s\n"
-
#~ msgid "asort: first argument is not an array"
#~ msgstr "asort: el primer argument no és una matriu"
#~ msgid "asort: second argument is not an array"
#~ msgstr "asort: el segon argument no és una matriu"
-#, fuzzy
-#~ msgid ""
-#~ "attempt to use array parameter `%s' that was passed from global scalar `%"
-#~ "s'"
-#~ msgstr "s'ha intentat usar un paràmetre escalar «%s» com a una matriu"
-
-#~ msgid "internal error: Node_var_array with null vname"
-#~ msgstr "error intern: Node_var_array amb vname nul"
-
#~ msgid ""
#~ "\n"
#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
#~ msgstr ""
#~ "\n"
-#~ "Per a informar d'errors, consulteu el node «Bugs» en «gawk.info», que "
-#~ "està\n"
+#~ "Per a informar d'errors, consulteu el node «Bugs» en «gawk.info», que està\n"
#~ msgid "invalid syntax in name `%s' for variable assignment"
#~ msgstr "sintaxi no vàlida en el nom «%s» per a l'asignació de la variable"
+#~ msgid "internal error: Node_var_array with null vname"
+#~ msgstr "error intern: Node_var_array amb vname nul"
+
#~ msgid "or used in other expression context"
#~ msgstr "o s'ha emprat en un altre context de l'expressió"
@@ -2004,8 +2038,14 @@ msgstr "No hi ha una expressió regular prèvia"
#~ msgid "Unbalanced )"
#~ msgstr ") sense aparellar"
-#~ msgid "out of memory"
-#~ msgstr "memòria esgotada"
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "el camp %d en FIELDWIDTHS, hauria de ser > 0"
+
+#~ msgid "function %s called\n"
+#~ msgstr "s'ha cridat a la funció %s\n"
+
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "port remot no vàlid en «%s»"
#~ msgid "internal error: file `%s', line %d\n"
#~ msgstr "error intern: fitxer «%s», línia %d\n"
diff --git a/po/da.gmo b/po/da.gmo
index dfea8eaa..7ce34f73 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index f0aabcb3..cc80ce87 100644
--- a/po/da.po
+++ b/po/da.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.31\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2002-11-09 10:09+0100\n"
"Last-Translator: Keld Simonsen <keld@dkuug.dk>\n"
"Language-Team: Danish <dansk@klid.dk>\n"
@@ -74,332 +74,337 @@ msgstr "%s: er en parameter\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: vektorreference til %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "END-blok skal have en handlingsdel"
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "END-blok skal have en handlingsdel"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "\"%s\" er en indbygget funktion, den kan ikke omdefineres"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "regexp-konstanten \"/%s/\" ser ud som en C-kommentar, men er det ikke"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "regexp-konstanten \"/%s/\" ser ud som en C-kommentar, men er det ikke"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "kommandoen har måske ikke nogen effekt"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "\"next\" brugt i BEGIN- eller END-handling"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "\"nextfile\" er en gawk-udvidelse"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "\"return\" brugt uden for funktion"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"alenestående \"print\" i BEGIN eller END-regel bør muligvis være 'print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "\"delete array\" er en gawk-udvidelse"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "\"delete array\" er en gawk-udvidelse"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "flertrins dobbeltrettede datakanaler fungerer ikke"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "regulært udtryk i højreleddet af en tildeling"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "regulært udtryk på venstre side af en \"~\"- eller \"!~\"-operator"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "regulært udtryk i højreleddet af en sammenligning"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "ikke-omdirigeret \"getline\" udefineret inde i END-handling"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "kald af \"length\" uden parenteser er ikke portabelt"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "kald af \"length\" uden parenteser er forældet ifølge POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "ugyldig indeksudtryk"
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "uventet nylinjetegn"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "tom programtekst på kommandolinjen"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "kan ikke åbne kildefilen \"%s\" for læsning (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "kan ikke læse kildefilen \"%s\" (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "kildefilen \"%s\" er tom"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "kildefilen slutter ikke med en ny linje"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "uafsluttet regulært udtryk slutter med \"\\\" i slutningen af filen"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "uafsluttet regulært udtryk"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "uafsluttet regulært udtryk i slutningen af filen"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "Brug af \"\\ #...\" for linjefortsættelse er ikke portabelt"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "sidste tegn på linjen er ikke en omvendt skråstreg"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX tillader ikke operatoren \"**=\""
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "gamle awk understøtter ikke operatoren \"**=\""
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX tillader ikke operatoren \"**\""
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "operatoren \"^=\" understøttes ikke i gamle awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "operatoren \"^\" understøttes ikke i gamle awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "uafsluttet streng"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "ugyldigt tegn \"%c\" i udtryk"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "\"%s\" er en gawk-udvidelse"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "\"%s\" er en Bell Labs-udvidelse"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX tillader ikke \"%s\""
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "\"%s\" understøttes ikke i gamle awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "\"goto\" anses for skadlig!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d er et ugyldigt antal argumenter for %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: tredje argument er en gawk-udvidelse"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: bogstavelig streng som sidste argument til erstatning har ingen effekt"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "sub: tredje argument er ikke et ændringsbart objekt"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: andet argument er en gawk-udvidelse"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"brug af dcgettext(_\"...\") er fejlagtigt: fjern det indledende "
"understregningstegn"
-#: awkgram.y:2522
+#: awkgram.y:2530
#, fuzzy
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"brug af dcgettext(_\"...\") er fejlagtigt: fjern det indledende "
"understregningstegn"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funktionen \"%s\": parameter %d, \"%s\", er samme som parameter %d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "funktionen \"%s\": parameteren \"%s\" overskygger en global variabel"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "kunne ikke åbne \"%s\" for skrivning (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "sender profilen til standard fejl"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: mislykkedes at lukke (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() kaldt to gange!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "funktionen \"%s\": kan ikke bruge funktionsnavn som parameternavn"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "funktionen \"%s\": kan ikke bruge funktionsnavn som parameternavn"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "funktionsnavnet \"%s\" er allerede defineret"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "funktionen \"%s\" kaldt, men aldrig defineret"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "funktionen \"%s\" defineret, men aldrig kaldt"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "konstant regulært udtryk for parameter %d giver en boolesk værdi"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -408,197 +413,226 @@ msgstr ""
"funktionen \"%s\" kaldt med blanktegn mellem navnet og \"(\",\n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "forsøgte at dividere med nul i \"%%\""
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s til \"%s\" mislykkedes (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "standard ud"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "ukendt årsag"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: fik et ikke-numerisk argument"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argumentet %g er uden for tilladt område"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: kan ikke spole: datakanalen \"%s\" åbnet for læsning, ikke skrivning"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "fflush: kan ikke spole: filen \"%s\" åbnet for læsning, ikke skrivning"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: \"%s\" er ikke en åben fil, datakanal eller ko proces"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "indeks: første argument er ikke en streng"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "indeks: andet argument er ikke en streng"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: fik et ikke-numerisk argument"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "\"delete array\" er en gawk-udvidelse"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: fik et argument som ikke er en streng"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: fik et ikke-numerisk argument"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: fik et negativt argument %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "\"$\" tillades ikke i awkformat"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "argumentantallet med \"$\" skal være > 0"
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "argumentantallet %d er større end antal givne argumenter"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "\"$\" tillades ikke efter et punktum i formatet"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "intet \"$\" angivet for positionsangivet feltbredde eller præcision"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "\"l\" er meningsløst i awk-formater, ignoreret"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "\"l\" tillades ikke i POSIX awk-formater"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "\"L\" er meningsløst i awk-formater, ignoreret"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "\"L\" tillades ikke i POSIX awk-formater"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "\"h\" er meningsløst i awk-formater, ignoreret"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "\"h\" tillades ikke i POSIX awk-formater"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "for få argumenter til formatstrengen"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ sluttede her"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: formatspecifiereren har intet kommandobogstav"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "for mange argumenter til formatstrengen"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: ingen argumenter"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: fik ikke-numerisk argument"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: kaldt med negativt argument %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: startindeks %g er ugyldigt, bruger 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: startindeks %g som ikke er et heltal bliver trunkeret"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: længden %g er <= 0"
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: længden %g er <= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: længden %g som ikke er et heltal bliver trunkeret"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: kildestrengen er tom"
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: startindeks %d er forbi slutningen på strengen"
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -606,315 +640,311 @@ msgstr ""
"substr: længden %d ved startindeks %d overskrider længden af første argument "
"(%d)"
-#: builtin.c:1558
+#: builtin.c:1621
#, fuzzy
msgid "strftime: received non-string first argument"
msgstr "strftime: fik et første argument som ikke er en streng"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: fik en tom formatstreng"
-#: builtin.c:1573
+#: builtin.c:1636
#, fuzzy
msgid "strftime: received non-numeric second argument"
msgstr "strftime: fik et ikke-numerisk andet argument"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: fik et argument som ikke er en streng"
-#: builtin.c:1695
+#: builtin.c:1758
#, fuzzy
msgid "system: received non-string argument"
msgstr "system: fik et argument som ikke er en streng"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "reference til ikke-initieret variabel \"%s\""
-#: builtin.c:1921
+#: builtin.c:1984
#, fuzzy
msgid "tolower: received non-string argument"
msgstr "tolower: fik et argument som ikke er en streng"
-#: builtin.c:1951
+#: builtin.c:2014
#, fuzzy
msgid "toupper: received non-string argument"
msgstr "toupper: fik et argument som ikke er en streng"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: fik et ikke-numerisk første argument"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: fik et ikke-numerisk argument"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: fik et ikke-numerisk argument"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: fik et ikke-numerisk argument"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: tredje argument er ikke en vektor"
-#: builtin.c:2650
+#: builtin.c:2719
+#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: Nullet i tredje argument behandlet som et ét-tal"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: fik et ikke-numerisk første argument"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
-msgstr "strftime: fik et ikke-numerisk andet argument"
+msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: fik et ikke-numerisk første argument"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
-msgstr "strftime: fik et ikke-numerisk andet argument"
+msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: fik et ikke-numerisk første argument"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: fik et ikke-numerisk første argument"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: fik et ikke-numerisk første argument"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "atan2: fik et ikke-numerisk andet argument"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: fik et ikke-numerisk argument"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): negative værdier vil give mærkelige resultater"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): flydendetalsværdier vil blive trunkeret"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: \"%s\" er ikke en gyldig lokalekategori"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "ukendt nodetype %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "bufferoverløb i genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "forsøg på at bruge vektoren \"%s\" i skalarsammenhæng"
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for-løkke: vektoren \"%s\" ændrede størrelse fra %d til %d under løkke-"
"udførelsen"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "\"break\" uden for en løkke er ikke portabelt"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "\"break\" uden for en løkke er ikke tilladt"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "\"continue\" uden for en løkke er ikke portabelt"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "\"continue\" uden for en løkke er ikke tilladt"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "\"next\" kan ikke kaldes fra en BEGIN-regel"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "\"next\" kan ikke kaldes fra en END-regel"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "\"nextfile\" kan ikke kaldes fra en BEGIN-regel"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "\"nextfile\" kan ikke kaldes fra en END-regel"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "kommandoen har ingen effekt"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "kan ikke bruge funktionsnavnet \"%s\" som variabel eller vektor"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "reference til ikke-initieret argument \"%s\""
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "reference til ikke-initieret variabel \"%s\""
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
"concatenation: sideeffekter i et udtryk har ændret længden af et andet!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "tildeling brugt i sammenligningsammenhæng"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "forsøgte at dividere med nul"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "forsøgte at dividere med nul i \"%%\""
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "ikke tilladt type (%s) i tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "forsøgte at dividere med nul i \"/=\""
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "forsøgte at dividere med nul i \"%%=\""
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "funktionen \"%s\" kaldt med flere argumenter end deklareret"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "funktionen \"%s\" er ikke defineret"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -925,42 +955,47 @@ msgstr ""
"\t# Funktionskaldsstak:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "forsøg på at feltreferere fra ikke-numerisk værdi"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "forsøg på at referere fra tom streng"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "forsøg på at få adgang til felt nummer %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "tildeling er ikke tilladt til resultatet fra en indbygget funktion"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "\"IGNORECASE\" er en gawk-udvidelse"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "\"BINMODE\" er en gawk-udvidelse"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "fejlagtig \"%sFMT\"-specifikation \"%s\""
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "deaktiverer \"--lint\" på grund af en tildeling til \"LINT\""
@@ -1035,554 +1070,562 @@ msgstr "Operationen understøttes ikke"
msgid "NF set to negative value"
msgstr "NF sat til en negativ værdi"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: andet argument er ikke en vektor"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: tom streng som tredje argument er en gawk-udvidelse"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "\"FIELDWIDTHS\" er en gawk-udvidelse"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "tom streng som \"FS\" er en gawk-udvidelse"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: flaget \"%s\" er flertydigt\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: flaget \"--%s\" tillader ikke noget argument\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: flaget \"%c%s\" tillader ikke noget argument\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: flaget \"%s\" kræver et argument\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: ukendt flag \"--%s\"\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: ukendt flag \"%c%s\"\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: ikke tilladt flag -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ugyldig flag -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: flaget kræver et argument -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: flaget \"-W %s\" er flertydigt\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: flaget \"-W %s\" tillader ikke noget argument\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "kan ikke åbne filen \"%s\" for læsning (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "lukning af fd %d (\"%s\") mislykkedes (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "ugyldig trætype %s i redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "udtrykket i \"%s\"-omdirigering har kun numerisk værdi"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "udtrykket for \"%s\"-omdirigering har en tom streng som værdi"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"filnavnet \"%s\" for \"%s\"-omdirigering kan være resultatet af et logisk "
"udtryk"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "unødig blanding af \">\" og \">>\" for filen \"%.*s\""
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "kan ikke åbne røret \"%s\" for udskrivning (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "kan ikke åbne røret \"%s\" for indtastning (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "filen \"%s\" er et katalog"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "kan ikke åbne tovejssoklen \"%s\" for ind-/uddata (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "kan ikke åbne tovejsrøret \"%s\" for ind-/uddata (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "kan ikke omdirigere fra \"%s\" (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "kan ikke omdirigere til \"%s\" (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"nåede systembegrænsningen for åbne filer: begynder at multiplekse "
"fildeskriptorer"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "lukning af \"%s\" mislykkedes (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "for mange rør eller inddatafiler åbne"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: andet argument skal være \"to\" eller \"from\""
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: \"%.*s\" er ikke en åben fil, datakanal eller ko-proces"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "lukning af omdirigering som aldrig åbnedes"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: omdirigeringen \"%s\" åbnedes ikke med \"|&\", andet argument "
"ignoreret"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "fejlstatus (%d) fra rørlukning af \"%s\" (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "fejlstatus (%d) fra fillukning af \"%s\" (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "ingen eksplicit lukning af soklen \"%s\" angivet"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "ingen eksplicit lukning af ko-processen \"%s\" angivet"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "ingen eksplicit lukning af røret \"%s\" angivet"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "ingen eksplicit lukning af filen \"%s\" angivet"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "fejl ved skrivning til standard ud (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "fejl ved skrivning til standard fejl (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "rørspuling af \"%s\" mislykkedes (%s)"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "ko-processpuling af røret til \"%s\" mislykkedes (%s)"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "filspuling af \"%s\" mislykkedes (%s)"
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "lokal port ugyldig i \"%s\""
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "/inet/raw-klient er desværre ikke klar endnu"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "kun root kan bruge \"/inet/raw\"."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "/inet/raw-server er desværre ikke klar endnu"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "ingen (kendt) protokol opgivet i special-filnavn \"%s\""
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "special-filnavn \"%s\" er ufuldstændigt"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "skal angive et fjernmaskinenavn til \"/inet\""
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "skal angive en fjernport til \"/inet\""
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP-kommunikation understøttes ikke"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "filen \"%s\" er et katalog"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "brug \"PROCINFO[\"%s\"]\" i stedet for \"%s\""
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "brug \"PROCINFO[...]\" i stedet for \"dev/user\""
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "kunne ikke åbne \"%s\", tilstand \"%s\""
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "lukning af røret mislykkedes (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "lukning af standard ud i barnet mislykkedes (%s)"
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "flytning af rør til standard ud i barnet mislykkedes (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "lukning af standard ind i barnet mislykkedes (%s)"
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "flytning af rør til standard ind i barnet mislykkedes (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "lukning af røret mislykkedes (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "flytning af rør til standard ud i barnet mislykkedes (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "flytning af rør til standard ind i barnet mislykkedes (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "genskabelse af standard ud i forælderprocessen mislykkedes\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "genskabelse af standard ind i forælderprocessen mislykkedes\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "lukning af røret mislykkedes (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "\"|&\" understøttes ikke"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "kan ikke åbne røret \"%s\" (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "kan ikke oprette barneproces for \"%s\" (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "datafilen \"%s\" er tom"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "fejl ved læsning af inddatafilen \"%s\": %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "flertegnsværdien af \"RS\" er en gawk-udvidelse"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "slut på hukommelsen"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "\"-m[fr]\"-flaget er irrelevant i gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m-flagets brug: \"-m[fr] nnn\""
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: flaget \"-W %s\" ukendt, ignoreret\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "tomt argument til \"--source\" ignoreret"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: flaget kræver et argument -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "miljøvariablen \"POSIXLY_CORRECT\" sat: aktiverer \"--posix\""
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "\"--posix\" tilsidesætter \"--traditional\""
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "\"--posix\"/\"--traditional\" tilsidesætter \"--non-decimal-data\""
-#: main.c:501
+#: main.c:527
#, fuzzy, c-format
msgid "running %s setuid root may be a security problem"
msgstr "at køre %s setuid root kan være et sikkerhedsproblem"
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "kan ikke sætte tilstand på standard ind (%s)"
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "kan ikke sætte tilstand på standard ud (%s)"
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "kan ikke sætte tilstand på standard fejl (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "ingen programtekst overhovedet!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Brug: %s [POSIX- eller GNU-stilflag] -f progfil [--] fil ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Brug: %s [POSIX- eller GNU-stilflag] %cprogram%c fil ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX-flag:\t\tGNU lange flag:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f progfil\t\t--file=progfil\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=værdi\t\t--assign=var=værdi\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] værdi\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fil]\t--dump-variables[=fil]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=fil]\t--profile[=fil]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fil]\t--profile[=fil]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=programtekst\t--source=programtekst\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1591,7 +1634,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
#, fuzzy
msgid ""
"\n"
@@ -1602,22 +1645,22 @@ msgstr ""
"sektionen \"Reporting Problems and Bugs\" i den trykte version.\n"
"Rapportér synpunkter på oversættelsen til <dansk@klid.dk>.\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1631,11 +1674,11 @@ msgstr ""
"\n"
"Dette program er frit programmel. Du kan distribuere det og/eller\n"
"ændre det under betingelserne i GNU General Public License, offentliggjort\n"
-"af Free Software Foundation, enten version 3 eller (hvis du vil)\n"
+"af Free Software Foundation, enten version 2 eller (hvis du vil)\n"
"enhver senere version.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1649,7 +1692,7 @@ msgstr ""
"General Public License for yderligere information.\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1657,48 +1700,58 @@ msgid ""
msgstr ""
"Du bør have fået en kopi af GNU General Public License sammen\n"
"med dette program. Hvis ikke, så skriv til Free Software Foundation,\n"
-"Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft sætter ikke FS til tab i POSIX-awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "flydendetalsundtagelse"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "fatal fejl: intern fejl"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "fatal fejl: intern fejl"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "fatal fejl: intern fejl"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "ingen for-åbnet fd %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "kunne ikke for-åbne /dev/null for fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "kunne ikke finde grupper: %s"
@@ -1724,24 +1777,31 @@ msgstr "fatal: "
msgid "can't convert string to float"
msgstr "kan ikke konvertere en streng til flydende tal"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "omvendt skråstreg i slutningen af strengen"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "gamle awk understøtter ikke operatoren \"**\""
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX tillader ikke \"\\x\"-kontrolsekvenser"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "ingen heksadecimale cifre i \"\\x\"-kontrolsekvenser"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "kontrolsekvensen \"\\%c\" behandlet som kun \"%c\""
@@ -1751,31 +1811,31 @@ msgstr "kontrolsekvensen \"\\%c\" behandlet som kun \"%c\""
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s \"%s\": kunne ikke sætte luk-ved-exec (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "kunne ikke åbne \"%s\" for skrivning: %s"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "intern fejl: Node_var med null vname"
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawkprofil, oprettet %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1784,7 +1844,7 @@ msgstr ""
"\t# BEGIN-blok\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1793,7 +1853,7 @@ msgstr ""
"\t# Regel/regler\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1802,7 +1862,7 @@ msgstr ""
"\t# END-blok\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1811,149 +1871,124 @@ msgstr ""
"\n"
"\t# Funktioner, listede alfabetisk\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "uventet type %s i prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "ukendt nodetype %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Lykkedes"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Mislykkedes"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Ugyldigt regulært udtryk"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Ugyldigt kollationeringstegn"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Ugyldigt tegnklassenavn"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Efterfølgende omvendt skråstreg"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Ugyldig bagudreference"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Ubalanceret [ eller [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Ubalanceret ( eller \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Ubalanceret \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Ugyldigt indhold i \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Ugyldig intervalslutning"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Hukommelsen opbrugt"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Ugyldigt foregående regulært udtryk"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "For tidligt slut på regulært udtryk"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Regulært udtryk for stort"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Ubalanceret ) eller \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Intet foregående regulært udtryk"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "fjernporten ugyldig i \"%s\""
-
-#~ msgid "function %s called\n"
-#~ msgstr "funktionen %s kaldt\n"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "felt %d i FIELDWIDTHS skal være > 0"
-
-#, fuzzy
-#~ msgid "or used as a variable or an array"
-#~ msgstr "kan ikke bruge funktionsnavnet \"%s\" som variabel eller vektor"
-
-#, fuzzy
-#~ msgid "substr: length %g is < 0"
-#~ msgstr "substr: længden %g er <= 0"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: ikke tilladt flag -- %c\n"
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "delete: ikke tilladt brug af variablen \"%s\" som vektor"
-#, fuzzy
-#~ msgid "%s: gvar_ref to %s\n"
-#~ msgstr "%s: vektorreference til %s\n"
-
#~ msgid "asort: first argument is not an array"
#~ msgstr "asort: første argument er ikke en vektor"
#~ msgid "asort: second argument is not an array"
#~ msgstr "asort: andet argument er ikke en vektor"
-#, fuzzy
#~ msgid ""
-#~ "attempt to use array parameter `%s' that was passed from global scalar `%"
-#~ "s'"
-#~ msgstr "forsøg på at bruge skalarparameteren \"%s\" som en vektor"
+#~ "\n"
+#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
+#~ msgstr ""
+#~ "\n"
+#~ "For at rapportere fejl, se knuden \"Bugs\" i \"gawk.info\" som findes i\n"
+
+#~ msgid "invalid syntax in name `%s' for variable assignment"
+#~ msgstr "ugyldig syntaks i navnet \"%s\" for variabeltildeling"
#~ msgid "internal error: Node_var_array with null vname"
#~ msgstr "intern fejl: Node_var_vektor med null vname"
-#~ msgid "BEGIN blocks must have an action part"
-#~ msgstr "BEGIN-blok skal have en handlingsdel"
-
-#~ msgid "`nextfile' used in BEGIN or END action"
-#~ msgstr "\"nextfile\" brugt i BEGIN- eller END-handling"
-
-#~ msgid "gsub third parameter is not a changeable object"
-#~ msgstr "gsub: tredje argument er ikke et ændringsbart objekt"
-
#~ msgid "or used in other expression context"
#~ msgstr "eller brugt i andre udtrykssammenhænge"
#~ msgid "`%s' is a function, assignment is not allowed"
#~ msgstr "\"%s\" er en funktion, tildeling er ikke tilladt"
-#~ msgid "internal error: file `%s', line %d\n"
-#~ msgstr "intern fejl: filen \"%s\", linje %d\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
-#~ msgstr ""
-#~ "\n"
-#~ "For at rapportere fejl, se knuden \"Bugs\" i \"gawk.info\" som findes i\n"
+#~ msgid "BEGIN blocks must have an action part"
+#~ msgstr "BEGIN-blok skal have en handlingsdel"
-#~ msgid "invalid syntax in name `%s' for variable assignment"
-#~ msgstr "ugyldig syntaks i navnet \"%s\" for variabeltildeling"
+#~ msgid "`nextfile' used in BEGIN or END action"
+#~ msgstr "\"nextfile\" brugt i BEGIN- eller END-handling"
#~ msgid "non-redirected `getline' undefined inside BEGIN or END action"
#~ msgstr ""
@@ -1962,6 +1997,9 @@ msgstr "Intet foregående regulært udtryk"
#~ msgid "fptr %x not in tokentab\n"
#~ msgstr "fptr %x er ikke i tokentab\n"
+#~ msgid "gsub third parameter is not a changeable object"
+#~ msgstr "gsub: tredje argument er ikke et ændringsbart objekt"
+
#~ msgid "Unfinished \\ escape"
#~ msgstr "Uafsluttet \\-kontrolsekvens"
@@ -1983,5 +2021,14 @@ msgstr "Intet foregående regulært udtryk"
#~ msgid "Unbalanced )"
#~ msgstr "Ubalanceret )"
-#~ msgid "out of memory"
-#~ msgstr "slut på hukommelsen"
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "felt %d i FIELDWIDTHS skal være > 0"
+
+#~ msgid "function %s called\n"
+#~ msgstr "funktionen %s kaldt\n"
+
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "fjernporten ugyldig i \"%s\""
+
+#~ msgid "internal error: file `%s', line %d\n"
+#~ msgstr "intern fejl: filen \"%s\", linje %d\n"
diff --git a/po/de.gmo b/po/de.gmo
index 9e6a1f2a..4c32194a 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 227046e6..b59893c1 100644
--- a/po/de.po
+++ b/po/de.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.0\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2002-04-03 18:55+02:00\n"
"Last-Translator: Christian Kirsch <ck@held.mind.de>\n"
"Language-Team: German <de@li.org>\n"
@@ -74,339 +74,344 @@ msgstr "%s: ist ein Parameter\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: Array-Referenz auf %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "END-Blöcke müssen einen Aktionsteil haben."
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "END-Blöcke müssen einen Aktionsteil haben."
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "'%s' ist eine eingebaute Funktion und kann nicht umdefiniert werden."
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
"Konstanter Regulärer Ausdruck '/%s' sieht wie ein C-Kommentar aus, ist aber "
"keiner."
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
"Konstanter Regulärer Ausdruck '/%s' sieht wie ein C-Kommentar aus, ist aber "
"keiner."
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "Statement möglicherweise ohne Effekt."
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "'next' in BEGIN- oder END-Aktion benutzt."
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "'nextfile' ist eine gawk-Erweiterung."
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "'return' außerhalb einer Funktion benutzt."
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"Einfaches 'print' in BEGIN- oder END-Regel soll vermutlich 'print \"\"' sein."
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "'delete array' ist eine gawk-Erweiterung."
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "'delete array' ist eine gawk-Erweiterung."
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "'multistage' Zweiwege-Pipes funktionieren nicht."
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "Regulärer Ausdruck auf der rechten Seite einer Zuweisung."
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "Regulärer Ausdruck links vom '~'- oder '!~'-Operator."
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "Regulärer Ausdruck rechts von einem Vergleich."
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr ""
"Nicht-umgelenktes 'getline' ist innerhalb der END-Aktion nicht definiert."
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "Aufruf von 'length' ohne Klammern ist nicht portabel."
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "Aufruf von 'length' ohne Klammern ist in POSIX-Mode veraltet."
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "Ungültiger Index-Ausdruck."
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "Unerwartetes Zeilenende"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "Kein Programmtext auf der Kommandozeile."
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "Kann Quelldatei '%s' nicht zum Lesen öffnen (%s)."
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "Kann Quelldatei '%s' nicht lesen (%s)."
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "Quelldatei '%s' ist leer."
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "Quelldatei hört nicht mit Zeilenende auf."
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr ""
"Nicht-beendeter Regulärer Ausdruck (hört mit '\\' auf) am Ende der Datei."
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "Nicht-beendeter Regulärer Ausdruck"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "Nicht-beendeter Regulärer Ausdruck am Dateiende."
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr ""
"Die Verwendung von '\\#...' zur Fortsetzung von Zeilen ist nicht portabel."
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "Backslash ist nicht letztes Zeichen auf der Zeile."
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX erlaubt den Operator '**=' nicht."
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "Das alte awk erlaubt den Operator '**=' nicht."
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX erlaubt den Operator '**' nicht."
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "Das alte awk kennt den Operator '^=' nicht."
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "Das alte awk kennt den Operator '^' nicht."
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "Nicht-beendeter String"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "Ungültiges Zeichen '%c' in einem Ausdruck."
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "'%s' ist eine gawk-Erweiterung"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "'%s' ist eine Erweiterung der Bell Labs."
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX gestattet '%s' nicht."
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "Das alte awk gestattet '%s' nicht."
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "'goto' gilt als schlechter Stil!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "Unzulässige Argumentzahl %d für %s."
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: Das dritte Argument ist eine gawk-Erweiterung."
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: Ein String als letztes Argument von substitute hat keinen Effekt."
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "Der dritte Parameter von sub ist ein unveränderliches Objekt."
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: Das zweite Argument ist eine gawk-Erweiterung."
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"Fehlerhafte Verwendung von dcgettext(_\"...\"): \n"
"Entfernen Sie den führenden Unterstrich."
-#: awkgram.y:2522
+#: awkgram.y:2530
#, fuzzy
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"Fehlerhafte Verwendung von dcgettext(_\"...\"): \n"
"Entfernen Sie den führenden Unterstrich."
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "Funktion '%s': Parameter #%d, '%s' wiederholt Parameter #%d."
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "Funktion '%s': Parameter '%s' verdeckt eine globale Variable."
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "Kann '%s' nicht zum Schreiben öffnen (%s)."
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "Schicke Profile auf Stadard-Fehlerausgabe."
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: close gescheitert (%s)."
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() zweimal aufgerufen!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "Funktion '%s': Kann Funktionsnamen nicht als Parameternamen benutzen."
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "Funktion '%s': Kann Funktionsnamen nicht als Parameternamen benutzen."
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "Funktion '%s' ist bereits definiert."
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "Aufgerufene funktion '%s' ist nirgends definiert."
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "Funktion '%s' wird nirgends aufgerufen."
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"Konstanter Regulärer Ausdruck für Parameter #%d ergibt einen logischen Wert."
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -415,201 +420,229 @@ msgstr ""
"Funktion '%s' mit Leerzeichen zwischen Name und '(' aufgerufen, \n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "Division durch Null versucht in '%%'."
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s to \"%s\" fehlgeschlagen (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "Standardausgabe"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "Unbekannte Ursache"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: Argument ist keine Zahl."
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: Argument %g außerhalb des gültigen Zahlenbereichs."
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
-"fflush: Leeren der Puffer nicht möglich, Pipe »%s« ist nur zum Lesen "
-"geöffnet."
+"fflush: Leeren der Puffer nicht möglich, Pipe »%s« ist nur zum Lesen geöffnet."
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: Leeren der Puffer nicht möglich, Datei »%s« ist nur zum Lesen "
"geöffnet."
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: »%s« ist keine geöffnete Datei, Pipe oder Prozess."
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: Erstes Argument ist kein String."
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: Zweites Argument ist kein string."
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "Argument ist keine Zahl."
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "'delete array' ist eine gawk-Erweiterung."
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: Argument ist kein String."
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: Argument ist keine Zahl."
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: Negatives Argument %g."
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "»$« ist in awk-Formaten nicht zulässig."
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "Argumentnummer bei »$« muss > 0 sein."
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "Argumentnummer %d ist größer als Anzahl angegebener Argumente."
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "»$« nach Punkt in Formatangabe nicht zulässig."
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "»$« fehlt in positionsabhängiger Feldbreite oder Genauigkeit."
-#
-#: builtin.c:888
+#
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "»l« ist in awk-Formaten bedeutungslos, ignoriert."
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "»l« in POSIX-awk-Formaten nicht zulässig."
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "»L« ist in awk-Formaten bedeutungslos, ignoriert."
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "»L« in POSIX-awk-Formaten nicht zulässig."
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "»h« ist in awk-Formaten bedeutungslos, ignoriert."
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "»h« in POSIX-awk-Formaten nicht zulässig.<"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "Nicht genügend Argumente für Formatangabe."
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ ran out for this one"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: Format-Specifier hat keinen Controlcode."
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "Zu viele Argumente für Formatstring."
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: Keine Argumente"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: Argument ist keine Zahl."
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: Argument %g ist negativ."
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: Start-Index %g ist ungültig, 1 wird benutzt."
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: Start-Wert %g wird abgeschnitten."
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: Länge %g ist kleiner oder gleich 0."
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: Länge %g ist kleiner oder gleich 0."
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: Länge %g wird abgeschnitten."
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: String ist leer."
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: Start-Wert %d liegt hinter dem Ende des Strings."
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -617,272 +650,273 @@ msgstr ""
"substr: Länge %d am Start-Wert %d überschreitet Länge des ersten Arguments (%"
"d)."
-#: builtin.c:1558
+#: builtin.c:1621
#, fuzzy
msgid "strftime: received non-string first argument"
msgstr "strftime: Erstes Argument ist kein String."
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: Format-String ist leer."
-#: builtin.c:1573
+#: builtin.c:1636
#, fuzzy
msgid "strftime: received non-numeric second argument"
msgstr "strftime. Zweites Argument ist keine Zahl."
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: Argument ist kein String."
-#: builtin.c:1695
+#: builtin.c:1758
#, fuzzy
msgid "system: received non-string argument"
msgstr "system: Argument ist kein String."
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "Referenz auf die nicht-initialisierte Variable '%s'."
-#: builtin.c:1921
+#: builtin.c:1984
#, fuzzy
msgid "tolower: received non-string argument"
msgstr "tolower: Argument ist kein String."
-#: builtin.c:1951
+#: builtin.c:2014
#, fuzzy
msgid "toupper: received non-string argument"
msgstr "toupper: Argument ist kein String."
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: Erstes Argument ist keine Zahl."
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: Argument istk eine Zahl."
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: Argument ist keine Zahl."
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: Argument ist keine Zahl."
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: Drittes Argument ist kein Array."
-#: builtin.c:2650
+#: builtin.c:2719
+#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: Drittes Argument 0 als 1 interpretiert"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: Erstes Argument ist keine Zahl."
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
-msgstr "strftime. Zweites Argument ist keine Zahl."
+msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr ""
"lshift(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): Zu große Shift-Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: Erstes Argument ist keine Zahl."
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
-msgstr "strftime. Zweites Argument ist keine Zahl."
+msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr ""
"rshift (%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): Zu große Shift-Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: Erstes Argument ist keine Zahl."
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: Erstes Argument ist keine Zahl."
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): Negative Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: Erstes Argument ist keine Zahl."
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "atan2: Zweites Argument ist keine Zahl."
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf: Negative Werte werden merkwürdige Ergebnisse liefern."
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: Erstes Argument ist keine Zahl."
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): Negativer Wert wird merkwürdige Ergebnisse liefern."
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): Dezimalteil wird abgeschnitten."
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: '%s' ist keine gültige Locale-Kategorie."
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "Unbekannter Knotentyp %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "Pufferüberlauf in genflags2str."
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "Versuch, das Array '%s' in Skalarkontext zu verwenden."
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for-Schleife: Array '%s' ändert Größse von %d zu %d innerhalb der Schleife."
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "'break' außerhalb einer Schleife ist nicht portabel."
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "'break' außerhalb einer Schleife ist nicht zulässig."
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "'continue' außerhalb einer Schleife ist nicht portabel."
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "'continue' außerhalb einer Schleife ist nicht zulässig."
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "'next' kann nicht in einer BEGIN-Regel benutzt werden."
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "'next' kann nicht in einer END-Regel benutzt werden."
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "'nextfile' kann nicht in einer BEGIN-Regel benutzt werden."
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "'nextfile' kann nicht in einer END-Regel benutzt werden."
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "Anweisung hat keinen Effekt."
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "Kann Funktion '%s' nicht als Variable oder Array verwenden."
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "Referenz auf nicht-initialisiertes Argument '%s'."
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "Referenz auf die nicht-initialisierte Variable '%s'."
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -890,44 +924,39 @@ msgstr ""
"Konkatenierung: Seiteneffekte in einem Ausdruck haben die Länge des anderen\n"
"geändert!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "Zuweisung in einer Bedingung."
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "Division durch Null versucht."
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "Division durch Null versucht in '%%'."
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "Illegaler Typ (%s) in tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "Division durch Null versucht in '/='."
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "Division durch Null versucht in '%%='."
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "Funktion '%s' mit zu vielen Argumenten aufgerufen."
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "Funktion '%s' ist nicht definiert."
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -938,43 +967,48 @@ msgstr ""
"\t# Funktion Aufruf-Stack\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "Nicht-numerischer Wert für Feldreferenz verwendet."
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "Referenz von einem Null-String"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "Versuch des Zugriffs auf Feld %d."
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr ""
"Zuweisungen an das Ergebnis einer eingebauten Funktion sind nicht erlaubt."
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "'IGNORECASE' ist eine gawk-Erweiterung"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "'BINMODE' ist eine gawk-Erweiterung."
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "Falsche '%sFMT'-Angabe '%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "'--lint' wird abgeschaltet, da 'LINT' gesetzt ist."
@@ -1049,555 +1083,563 @@ msgstr "Operation nicht möglich."
msgid "NF set to negative value"
msgstr ""
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: Zweites Argument ist kein Array."
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: Null-String als drittes Argument ist eine gawk-Erweiterung."
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "'FIELDWIDTHS' ist eine gawk-Erweiterung."
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "Null-String für 'FS' ist eine gawk-Erweiterung."
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: Option '%s' ist mehrdeutig.\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: Option '--%s' erlaubt kein Argument.\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: Option '%c%s\" erlaubt kein Argument.\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: Option '%s' erfordert ein Argument.\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: Unbekannte Option '--%s'.\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: Unbekannte Option '%c%s'.\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: Illegale Option -- %c.\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: Ungültige Option -- %c.\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s Option erfordert ein Argument -- %c.\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: Option '-W %s' ist mehrdeutig.\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s. Option '-W %s' erlaubt kein Argument.\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "Kann Datei '%s' nicht zum Lesen öffnen (%s)."
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "Schließen von Dateideskriptor %d ('%s') gescheitert (%s)."
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "Ungültiger Tree-Typ %s in redirect()."
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "Ausdruck in '%s' Umlenkung hat nur einen numerischen Wert."
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "Ausdruck für '%s' Umlenkung ist ein leerer String."
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"Dateiname '%s' für '%s' Umlenkung kann Ergebnis eines logischen Ausdrucks "
"sein."
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "Unnötige Kombination von '>' und '>>' für Datei '%.*s'."
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "Kann Pipe '%s' nicht für Ausgabe öffnen (%s)."
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "Kann Pipe '%s' nicht für Eingabe öffnen (%s)."
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "Datei '%s' ist ein Verzeichnis."
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "Kann bidirektionalen Socket '%s' nicht für Ein-/Ausgabe öffnen (%s)."
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "Kann bidirektionale Pipe '%s' nicht für Ein-/Ausgabe öffnen (%s)."
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "Kann nicht von '%s' umlenken (%s)."
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "Kann nicht auf '%s' umlenken (%s)."
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"Systemgrenze offener Dateien erreicht; beginne mit Multiplexing von "
"Dateideskriptoren."
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "Schließen von '%s' gescheitert (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "Zu viele Pipes oder Eingabedateien offen."
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: Zweites Argument muss 'to' oder 'from' sein."
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: '%.*s' ist keine offene Datei, Pipe oder Ko-Prozess."
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "'close' für eine Umlenkung, die nie geöffnet wurde."
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: Umlenkung '%s' nicht mit '[&' geöffnet, zweites Argument wird "
"ignoriert."
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "Fehlerstatus (%d) beim Schließen der Pipe '%s' (%s)."
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "Fehlerstatus (%d) beim Schließen de rDatei '%s' (%s)."
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "Das explizite des Sockets '%s' fehlt."
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "Das explizite Schließen des Ko-Prozesses '%s' fehlt."
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "Das explizite Schließen der Pipe '%s' fehlt."
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "Das explizite Schließen der Datei '%s' fehlt."
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "Fehler beim Schreiben auf stdout (%s)."
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "Fehler beim Schreiben auf stderr (%s)."
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "Leeren der Pipe '%s' gescheitert (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "Ko-Prozess: Leeren der Pipe zu '%s' gescheitert (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "Flush der Datei '%s' gescheitert (%s)."
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "Lokaler Port in '%s' ist ungültig."
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "/inet/raw Client noch nicht fertig."
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "Nur root darf '/inet/raw' benutzen"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "'/inet/raw'-Server noch nicht fertig."
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "Kein bekanntes Protokoll in Dateinamen '%s' angegeben."
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "Dateiname '%s' ist unvollständig."
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "Sie müssen einen Rechnernamen in '/inet' angeben."
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "Sie müssen einen Port in '/inet' angeben."
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP-Verbindungen sind nicht möglich."
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "Datei '%s' ist ein Verzeichnis."
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "Benutzen Sie 'PROCINFO[\"%s\"]' statt '%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "Benutzen Sie 'PROCINFO[...] statt '/dev/user'."
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "Konnte '%s' nicht öffnen, Mode '%s'."
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "Schließen der Pipe gescheitert (%s)."
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "Schließen von stdout in Kindprozess gescheitert (%s)."
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "Verschieben der Pipe zu stdout in Kindprozess gescheitert (dup: %s)."
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "Schließen von stdin im Kindprozess gescheitert (%s)."
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "Verschieben der Pipe zu stdin in Kindprozess gescheitert (dup: %s)."
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "Schließen der Pipe gescheitert (%s)."
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "Verschieben der Pipe zu stdout in Kindprozess gescheitert (dup: %s)."
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "Verschieben der Pipe zu stdin in Kindprozess gescheitert (dup: %s)."
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr ""
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr ""
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "Schließen der Pipe gescheitert (%s)."
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "'|&' nicht möglich."
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "Kann Pipe '%s' nicht öffnen (%s)."
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "Kann Kindprozess für '%s' nicht erzeugen (fork: %s)."
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "Datei '%s' ist leer."
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "Fehler beim Lesen der Eingabedatei '%s': %s."
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "Multicharacter-Wert von 'RS' ist eine gawk-Erweiterung."
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "Kein Speicher mehr."
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "Option '-m[fr]' ist in gawk bedeutungslos."
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "Anwendung der Option -m: '-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: Option '-W %s' unbekannt, ignoriert.\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "Leeres Argument für '--source' ignoriert."
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s Option erfordert ein Argument -- %c.\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
"Umgebungsvariable 'POSIXLY_CORRECT' ist gesetzt: '--posix' angeschaltet."
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "'--posix' hat Vorrang vor '--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "'--posix' /'--traditional' hat Vorrang vor '--non-decimal-data'."
-#: main.c:501
+#: main.c:527
#, fuzzy, c-format
msgid "running %s setuid root may be a security problem"
msgstr "%s als setuid root auszuführen, kann zu Sicherheitsproblemen führen."
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "Kann Mode für stdin nicht setzen (%s)."
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "Kann Mode für stdout nicht setzen (%s)."
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "Kann Mode für stderr nicht setzen (%s)."
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "Kein Programmtext."
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Anwendung: %s [POSIX- oder GNU-Optionen] -f PROGRAM [--] Datei ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Anwendung: %s [POSIX- oder GNU-Optionen] -- %cPROGRAM%c Datei ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX-Optionen\t\tGNU-Optionen (lang):\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f PROGRAM\t\t--file=PROGRAM\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F Feldtrenner\t\t\t--field-separator=Feldtrenner\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=Wert\t\t--assign=var=Wert\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] Wert\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=Datei]\t--dump-variables[=Datei]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=Datei]\t--profile[=Datei]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=Datei]\t--profile[=Datei]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=Programmtext\t--source=Programmtext\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1606,7 +1648,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
#, fuzzy
msgid ""
"\n"
@@ -1617,21 +1659,21 @@ msgstr ""
"den Sie im Kapitel 'Reporting Problems and Bugs' in der \n"
"gedruckten Version finden.\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-#: main.c:762
+#: main.c:789
#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1647,11 +1689,11 @@ msgstr ""
"Dieses Programm ist Freie Software. Sie können es unter den Bedingungen\n"
"der von der Free Software Foundation veröffentlichten GNU \n"
"General Public License weitergeben und/oder ändern.\n"
-"Es gilt Version 3 dieser Lizenz oder (nach Ihrer Wahl) irgendeine\n"
+"Es gilt Version 2 dieser Lizenz oder (nach Ihrer Wahl) irgendeine\n"
"spätere Version.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1665,7 +1707,7 @@ msgstr ""
"GNU General Public License for more details.\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1673,49 +1715,59 @@ msgid ""
msgstr ""
"Sie sollten eine Kopie der GNU General Publice License zusammen mit\n"
"diesem Programm erhalten haben. Wenn nicht, schreiben Sie an die Free \n"
-"Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02111-"
+"Software Foundation, Inc., 59 Temple Place - Suite 330, Boston MA 02111-"
"1307, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft setzt FS im POSIX-awk nicht auf Tab."
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "Floating point exception"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "Fataler Fehler: interner Fehler"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "Fataler Fehler: interner Fehler"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "Fataler Fehler: interner Fehler"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "Kein geöffneter Dateideskriptor %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "Konnte /dev/null nicht für Dateideskriptor %d öffnen."
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "Konnte Gruppen nicht finden: %s"
@@ -1741,24 +1793,31 @@ msgstr "Fatal: "
msgid "can't convert string to float"
msgstr "Kann String nicht in Gleitkommazahl konvertieren."
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "Backslash am String-Ende."
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "Das alte awk erlaubt den Operator '**' nicht."
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX erlabut keine '\\x'-Escapes."
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "Keine Hex-Ziffern in '\\x'-Escape."
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "Escape-Sequenz '\\%c' als '%c' behandelt."
@@ -1768,31 +1827,31 @@ msgstr "Escape-Sequenz '\\%c' als '%c' behandelt."
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s '%s': Konnte close-on-exec nicht setzen: %s"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "Konnte '%s' nicht zum Schreiben öffnen: %s"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "Interner Fehler: Node_var with null vname."
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk-Profil, erzeugt %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1801,7 +1860,7 @@ msgstr ""
"\t# BEGIN block(s)\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1810,7 +1869,7 @@ msgstr ""
"\t# Rule(s)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1819,7 +1878,7 @@ msgstr ""
"\t# END block(s)\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1828,139 +1887,125 @@ msgstr ""
"\n"
"\t# Functionen, alphabetisch sortiert\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "Unerwarteter Typ %s in prec_level."
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "Unbekannter Knotentyp %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Erfolg"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Kein Treffer"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Ungültiger Regulärer Ausdruck."
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Ungültiges Zeichen."
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Ungültier Name für Zeichenklasse."
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Angehängter Backslash"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Ungültige Referenze"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ oder [^ nicht geschlossen"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( oder \\( nicht geschlossen"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ nicht geschlossen"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Ungültiger Inhalt von \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Ungültiges Bereichsende"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Kein Speicher mehr."
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Vorangehender Regulärer Ausdruck ist ungültig."
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Vorzeitiges Ende des Regulären Ausdrucks."
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Regulärer Ausdruck zu groß."
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") oder \\) nicht geöffnet"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Kein vorangehender Regulärer Ausdruck."
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "Port-Angabe in '%s' ist ungültig."
-
-#~ msgid "function %s called\n"
-#~ msgstr "Funktion %s aufgerufen\n"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "Feld %d in FIELDWIDTHS muss > 0 sein."
-
-#, fuzzy
-#~ msgid "or used as a variable or an array"
-#~ msgstr "Kann Funktion '%s' nicht als Variable oder Array verwenden."
-
-#, fuzzy
-#~ msgid "substr: length %g is < 0"
-#~ msgstr "substr: Länge %g ist kleiner oder gleich 0."
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: Illegale Option -- %c.\n"
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "delete: Benutzung der Variablen »%s« als Array ist nicht zulässig."
-#, fuzzy
-#~ msgid "%s: gvar_ref to %s\n"
-#~ msgstr "%s: Array-Referenz auf %s\n"
-
#~ msgid "asort: first argument is not an array"
#~ msgstr "asort: Erstes Argument ist kein Array."
#~ msgid "asort: second argument is not an array"
#~ msgstr "asort: Zweites Argument ist kein array."
-#, fuzzy
#~ msgid ""
-#~ "attempt to use array parameter `%s' that was passed from global scalar `%"
-#~ "s'"
-#~ msgstr "Versuch den skalaren Parameter '%s' als Array zu benutzen."
+#~ "\n"
+#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Um Fehler zu melden, lesen Sie bitte den Abschnitt 'Bugs' in "
+#~ "'gawk_info',\n"
+
+#~ msgid "invalid syntax in name `%s' for variable assignment"
+#~ msgstr "Ungültige Syntax im Namen '%s' für Variablenzuweisung."
#~ msgid "internal error: Node_var_array with null vname"
#~ msgstr "Interner Fehler: Node_var_array with null vname."
-#~ msgid "BEGIN blocks must have an action part"
-#~ msgstr "BEGIN-Blöcke müssen einen Aktionsteil haben."
-
-#~ msgid "`nextfile' used in BEGIN or END action"
-#~ msgstr "'nextfile' in BEGIN- oder END-Aktion benutzt."
-
-#~ msgid "gsub third parameter is not a changeable object"
-#~ msgstr "Der dritte Parameter von gsub ist ein unveränderliches Objekt."
-
#~ msgid "or used in other expression context"
#~ msgstr "or in anderem Kontext benutzt"
#~ msgid "`%s' is a function, assignment is not allowed"
#~ msgstr "'%s' ist eine Funktion, Zuweisungen sind nicht erlaubt."
-#~ msgid "internal error: file `%s', line %d\n"
-#~ msgstr "Interner Fehler: Datei '%s', Zeile %d\n"
+#~ msgid "BEGIN blocks must have an action part"
+#~ msgstr "BEGIN-Blöcke müssen einen Aktionsteil haben."
+
+#~ msgid "`nextfile' used in BEGIN or END action"
+#~ msgstr "'nextfile' in BEGIN- oder END-Aktion benutzt."
#~ msgid "non-redirected `getline' undefined inside BEGIN or END action"
#~ msgstr ""
@@ -1970,8 +2015,8 @@ msgstr "Kein vorangehender Regulärer Ausdruck."
#~ msgid "fptr %x not in tokentab\n"
#~ msgstr "fptr %x nicht in tokentab\n"
-#~ msgid "Unbalanced ["
-#~ msgstr "[ wird nicht geschlossen."
+#~ msgid "gsub third parameter is not a changeable object"
+#~ msgstr "Der dritte Parameter von gsub ist ein unveränderliches Objekt."
#~ msgid "Unfinished \\ escape"
#~ msgstr "Nicht-beendetes \\\\-Escape."
@@ -1982,6 +2027,9 @@ msgstr "Kein vorangehender Regulärer Ausdruck."
#~ msgid "malformed repeat count"
#~ msgstr "Fehlerhafter Wiederholungszähler."
+#~ msgid "Unbalanced ["
+#~ msgstr "[ wird nicht geschlossen."
+
#~ msgid "Unbalanced ("
#~ msgstr "( wird nicht geschlossen."
@@ -1991,22 +2039,20 @@ msgstr "Kein vorangehender Regulärer Ausdruck."
#~ msgid "Unbalanced )"
#~ msgstr ") wird nicht geöffnet."
-#~ msgid "out of memory"
-#~ msgstr "Kein Speicher mehr."
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "Feld %d in FIELDWIDTHS muss > 0 sein."
-#~ msgid "invalid syntax in name `%s' for variable assignment"
-#~ msgstr "Ungültige Syntax im Namen '%s' für Variablenzuweisung."
+#~ msgid "function %s called\n"
+#~ msgstr "Funktion %s aufgerufen\n"
-#~ msgid ""
-#~ "\n"
-#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Um Fehler zu melden, lesen Sie bitte den Abschnitt 'Bugs' in "
-#~ "'gawk_info',\n"
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "Port-Angabe in '%s' ist ungültig."
#~ msgid "pipe from `%s': could not set close-on-exec (fcntl: %s)"
#~ msgstr "Pipe von '%s': Konnte close-on-exec nicht setzen (fcntl: %s)."
#~ msgid "pipe to `%s': could not set close-on-exec (fcntl: %s)"
#~ msgstr "Pipe zu '%s': Konnte close-on-exec nicht setzen (fcntl: %s)."
+
+#~ msgid "internal error: file `%s', line %d\n"
+#~ msgstr "Interner Fehler: Datei '%s', Zeile %d\n"
diff --git a/po/es.gmo b/po/es.gmo
index 8f82cbbb..628e355c 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index f94b40d4..5aaf7895 100644
--- a/po/es.po
+++ b/po/es.po
@@ -1,13 +1,14 @@
-# Mensajes en español para gawk-3.1.5f.
-# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
-# Cristian Othón Martínez Vera <cfuga@itam.mx>, 2001, 2002, 2003, 2004, 2005, 2006, 2007.
+# Mensajes en español para gawk-3.1.6d.
+# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gawk package.
+# Cristian Othón Martínez Vera <cfuga@itam.mx>, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009.
#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.5f\n"
+"Project-Id-Version: gawk 3.1.6d\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-07-20 01:10-0500\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-06-24 09:29-0500\n"
"Last-Translator: Cristian Othón Martínez Vera <cfuga@itam.mx>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
@@ -74,332 +75,339 @@ msgstr "%s: es un parámetro\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array_ref a %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "Los bloques %s deben tener una parte de acción"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "cada regla debe tener un patrón o una parte de acción"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "el awk antiguo no admite múltiples reglas `BEGIN' o `END'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' es una función interna, no se puede redefinir"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
"la constante de expresión regular `//' parece un comentario de C++, pero no "
"lo es"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
"la constante de expresión regular `/%s/' parece un comentario de C, pero no "
"lo es"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "la sentencia puede no tener efecto"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "se usó `%s' en la acción %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' es una extensión de gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "se usó `return' fuera del contexto de la función"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"el `print' simple en la regla BEGIN o END probablemente debe ser `print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' es una extensión de gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete(array)' es una extensión de gawk que no es transportable"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "valores case duplicados en el cuerpo de un switch: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "Se detectó un `default' duplicado en el cuerpo de un switch"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "las líneas de trabajo de dos vías multiestado no funcionan"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "expresión regular del lado derecho de una asignación"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "expresión regular a la izquierda del operador `~' o `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr ""
"el awk antiguo no admite la palabra clave `in' excepto después de `for'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "expresión regular a la derecha de una comparación"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "`getline' no redirigido indefinido dentro de la acción de END"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "el awk antiguo no admite matrices multidimensionales"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "la llamada de `length' sin paréntesis no es transportable"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "la llamada de `length' sin paréntesis está obsoleta por POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "uso de una matriz que no es matriz"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "expresión de subíndice inválida"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "nueva línea o fin de la cadena inesperados"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "texto de programa vacío en la linea de comando"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "no se puede abrir el fichero fuente `%s' para lectura (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "no se puede leer el fichero fuente `%s' (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "el fichero fuente `%s' está vacío"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "el fichero fuente no termina con línea nueva"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "expresión regular sin terminar termina con `\\` al final del fichero"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"%s: %d: el modificador de expresión regular `/.../%c` de tawk no funciona en "
"gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"el modificador de expresión regular `/.../%c` de tawk no funciona en gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "expresión regular sin terminar"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "expresión regular sin terminar al final del fichero"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "el uso de la continuación de línea `\\ #...' no es transportable"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "la barra invertida no es el último caracter en la línea"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX no permite el operador `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "el awk antiguo no admite el operador `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX no permite el operador `**'"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "el awk antiguo no admite el operador `**='"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "el operador `^=' no se admite en el awk antiguo"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "el operador `^' no se admite en el awk antiguo"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "cadena sin terminar"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "caracter '%c' inválido en la expresión"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' es una extensión de gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' es una extensión de Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX no permite `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' no se admite en el awk antiguo"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "¡`goto' se considera dañino!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d es inválido como número de argumentos para %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: el tercer argumento es una extensión de gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: la literal de cadena como último argumento de substitute no tiene efecto"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "el tercer argumento de %s no es un objecto que se puede cambiar"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: el segundo argumento es una extensión de gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"el uso de dcgettext(_\"...\") es incorrecto: quite el subrayado inicial"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"el uso de dcngettext(_\"...\") es incorrecto: quite el subrayado inicial"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "función `%s': parámetro #%d, `%s', duplica el parámetro #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "función `%s': parámetro `%s' oscurece la variable global"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "no se puede abrir `%s' para escritura (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "se envía el perfil a la salida estándar de error"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: falló close (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "¡se llamó shadow_funcs() dos veces!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "hay variables opacadas."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr ""
"función `%s': no se puede usar un nombre de función como nombre de parámetro"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+"función `%s': no se puede usar la variable especial `%s' como un parámetro "
+"de función"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "el nombre de función `%s' se definió previamente"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "se llamó a la función `%s' pero nunca se definió"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "se definió la función `%s' pero nunca se llamó"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"la constante de expresión regular para el parámetro #%d da un valor booleano"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -408,204 +416,236 @@ msgstr ""
"se llamó la función `%s' con espacio entre el nombre y el `(',\n"
"o se usó como una variable o una matriz"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "se intentó una división por cero en `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "falló %s a \"%s\" (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "salida estándar"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "razón desconocida"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: se recibió un argumento que no es un número"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: el argumento %g está fuera de rango"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: no se puede limpiar: se abrió la tubería `%s' para lectura, no para "
"escritura"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: no se puede limpiar: se abrió el fichero `%s' para lectura, no para "
"escritura"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' no es un fichero abierto, tubería o co-proceso"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: el primer argumento recibido no es una cadena"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: el segundo argumento recibido no es una cadena"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: se recibió un argumento que no es un número"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "`length(array)' es una extensión de gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "length: un argumento sin tipo se forzará a escalar"
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: se recibió un argumento que no es una cadena"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: se recibió un argumento que no es un número"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: se recibió el argumento negativo %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "se debe utilizar `count$' en todos los formatos o en ninguno"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "se descarta la anchura del campo para el especificador `%%%%'"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "se descarta la precisión para el especificador `%%%%'"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+"se descartan la anchura del campo y la precisión para el especificador `%%%%'"
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "no se permite `$' en los formatos de awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "la cuenta de argumentos con `$' debe ser > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr ""
"la cuenta de argumentos %ld es mayor que el número total de argumentos "
"proporcionados"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "no se permite `$' después de un punto en el formato"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr ""
"no se proporciona `$' para el ancho o la precisión del campo posicional"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' no tiene significado en los formatos de awk; se descarta"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "no se permite `l' en los formatos POSIX de awk"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' no tiene significado en los formatos de awk; se descarta"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "no se permite `L' en los formatos POSIX de awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' no tiene significado en los formatos de awk; se descarta"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "no se permite `h' en los formatos POSIX de awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: el valor %g está fuera del rango para el formato `%%%c'"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+"se descarta el carácter especificador de formato `%c' desconocido: no se "
+"convirtió ningún argumento"
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "no hay suficientes argumentos para satisfacer a la cadena de formato"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "se acabó ^ para éste"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: el especificador de formato no tiene letras de control"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "se proporcionaron demasiados argumentos para la cadena de formato"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: sin argumentos"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: se recibió un argumento que no es un número"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: se llamó con el argumento negativo %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: el índice de inicio %g es inválido, se usa 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: se truncará el índice de inicio no entero %g"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: la longitud %g no es >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: la longitud %g no es >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: se truncará la longitud no entera %g"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
"substr: la longitud %g es demasiado grande para ser índice de cadena, se "
"trunca a %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: la cadena de origen es de longitud cero"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: el índice de inicio %g está después del fin de la cadena"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -613,263 +653,263 @@ msgstr ""
"substr: la cadena %g en el índice de inicio %g excede la longitud del primer "
"argumento (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: el primer argumento recibido no es una cadena"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: se recibió una cadena de formato vacía"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: el segundo argumento recibido no es un número"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: se recibió un argumento que no es una cadena"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: se recibió un argumento que no es una cadena"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referencia al campo sin inicializar `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: se recibió un argumento que no es una cadena"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: se recibió un argumento que no es una cadena"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: el primer argumento recibido no es un número"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: el segundo argumento recibido no es un número"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: se recibió un argumento que no es un número"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: se recibió un argumento que no es un número"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: se recibió un argumento que no es un número"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: el tercer argumento no es una matriz"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: el tercer argumento de 0 se trata como 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: el primer argumento recibido no es un número"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: el segundo argumento recibido no es un número"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): los valores negativos darán resultados extraños"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): los valores fraccionarios se truncarán"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados "
"extraños"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: el primer argumento recibido no es un número"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: el segundo argumento recibido no es un número"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): los valores negativos darán resultados extraños"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): los valores fraccionarios serán truncados"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados "
"extraños"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: el primer argumento recibido no es un número"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: el segundo argumento recibido no es un número"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): los valores negativos darán resultados extraños"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): los valores fraccionarios serán truncados"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: el primer argumento recibido no es un número"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: el segundo argumento recibido no es un número"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): los valores negativos darán resultados extraños"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): los valores fraccionarios serán truncados"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: el primer argumento recibido no es un número"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: el segundo argumento recibido no es un número"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): los valores negativos darán resultados extraños"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): los valores fraccionarios se truncarán"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: se recibió un argumento que no es un número"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): el valor negativo dará resultados extraños"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): el valor fraccionario se truncará"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' no es una categoría local válida"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "tipo de nodo %d desconocido"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "desbordamiento de almacenamiento temporal en genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "se intentó usar la matriz `%s' en un contexto escalar"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"ciclo for: la matriz `%s' cambió de tamaño de %ld a %ld durante la ejecución "
"del ciclo"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "`break' fuera de un ciclo no es transportable"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "no se permite `break' fuera de un ciclo"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "`continue' fuera de un ciclo no es transportable"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "no se permite `continue' fuera de un ciclo"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`next' no se puede llamar desde una regla BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "`next' no se puede llamar desde una regla END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`nextfile' no se puede llamar desde una regla BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "`nextfile' no se puede llamar desde una regla END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "la declaración no tiene efecto"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "no se puede usar el nombre de la función `%s' como variable o matriz"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referencia al argumento sin inicializar `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referencia a la variable sin inicializar `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -877,44 +917,39 @@ msgstr ""
"concatenación: ¡Los efectos laterales en una expresión han cambiado la "
"longitud de otra!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "se usó una asignación en un contexto condicional"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "se intentó una división por cero"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "se intentó una división por cero en `%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tipo ilegal (%s) en tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "se intentó una división por cero en `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "se intentó una división por cero en `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "se llamó a la función `%s' con más argumentos de los declarados"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "la función `%s' no está definida"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -925,42 +960,47 @@ msgstr ""
"\t# Pila de Llamadas de Funciones:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- principal --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "se intentó una referencia de campo desde un valor que no es un número"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "se intentó una referencia desde una cadena nula"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "se intentó accesar al campo %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "no se permite la asignación como resultado de una función interna"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' es una extensión de gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' es una extensión de gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "el valor BINMODE `%s' es inválido; se trata como 3"
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "especificación `%sFMT' `%s' errónea"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "se desactiva `--lint' debido a una asignación a `LINT'"
@@ -1040,569 +1080,577 @@ msgstr "No Se Da Soporte A La Operación"
msgid "NF set to negative value"
msgstr "NF con un valor negativo"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: el segundo argumento no es una matriz"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr ""
"split: la cadena nula para el tercer argumento es una extensión de gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' es una extensión gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "valor de FIELDWIDTHS inválido, cerca de `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "la cadena nula para `FS' es una extensión de gawk"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "el awk antiguo no admite expresiones regulares como valor de `FS'"
-#: getopt.c:571 getopt.c:587
+#: getopt.c:570 getopt.c:586
#, c-format
-msgid "%s: option `%s' is ambiguous\n"
-msgstr "%s: la opción `%s' es ambigua\n"
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: la opción '%s' es ambigua\n"
-#: getopt.c:620 getopt.c:624
+#: getopt.c:619 getopt.c:623
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
-msgstr "%s: la opción `--%s' no admite ningún argumento\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: la opción '--%s' no admite ningún argumento\n"
-#: getopt.c:633 getopt.c:638
+#: getopt.c:632 getopt.c:637
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
-msgstr "%s: la opción `%c%s' no admite ningún argumento\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: la opción '%c%s' no admite ningún argumento\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, c-format
-msgid "%s: option `%s' requires an argument\n"
-msgstr "%s: la opción `%s' requiere un argumento\n"
+msgid "%s: option '%s' requires an argument\n"
+msgstr "%s: la opción '%s' requiere un argumento\n"
-#: getopt.c:738 getopt.c:741
+#: getopt.c:737 getopt.c:740
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
-msgstr "%s: no se reconoce la opción `--%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: no se reconoce la opción '--%s'\n"
-#: getopt.c:749 getopt.c:752
+#: getopt.c:748 getopt.c:751
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
-msgstr "%s: no se reconoce la opción `%c%s'\n"
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: no se reconoce la opción '%c%s'\n"
-#: getopt.c:804 getopt.c:807
+#: getopt.c:800 getopt.c:803
#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: opción ilegal -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: opción inválida -- '%c'\n"
-#: getopt.c:813 getopt.c:816
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr "%s: opción inválida -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: la opción requiere un argumento -- '%c'\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
+#: getopt.c:923 getopt.c:939
#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: la opción requiere un argumento -- %c\n"
-
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
-msgstr "%s: la opción `-W %s' es ambigua\n"
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: la opción '-W %s' es ambigua\n"
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
-msgstr "%s: la opción `-W %s' no admite ningún argumento\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: la opción '-W %s' no admite ningún argumento\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "no se puede abrir el fichero `%s' para lectura (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "falló al cerrar el df %d (`%s') (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "tipo de árbol %s inválido en redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "la expresión en la redirección `%s' sólo tiene un valor numérico"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "la expresión para la redirección `%s' tiene un valor de cadena nula"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"el fichero `%s' para la redirección `%s' puede ser resultado de una "
"expresión lógica"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "mezcla innecesaria de `>' y `>>' para el fichero `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "no se puede abrir la tubería `%s' para la salida (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "no se puede abrir la tubería `%s' para la entrada (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "el fichero `%s' es un directorio"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
"no se puede abrir el `socket' de dos vías `%s' para entrada/salida (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "no se puede abrir la tubería de dos vías `%s' para entrada/salida (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "no se puede redirigir desde `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "no se puede redirigir a `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"se alcanzó el límite del sistema para ficheros abiertos: comenzando a "
"multiplexar los descriptores de fichero"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "falló al cerrar `%s' (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "demasiadas tuberías o ficheros de entrada abiertos"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: el segundo argumento debe ser `to' o `from'"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: `%.*s' no es un fichero abierto, tubería o co-proceso"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "cerrado de una redirección que nunca fue abierta"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: la redirección `%s' no se abre con `|&', se ignoró el segundo "
"argumento"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "estado de fallo (%d) al cerrar la tubería de `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "estado de fallo (%d) al cerrar el fichero de `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "no se provee el cerrado explícito del `socket' `%s'"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "no se provee el cerrado explícito del co-proceso `%s'"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "no se provee el cerrado explícito del la tubería `%s'"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "no se provee el cerrado explícito del fichero `%s'"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "error al escribir en la salida estándar (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "error al escribir en la salida estándar de error (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "falló la limpieza de la tubería de `%s' (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "falló la limpieza del co-proceso de la tubería a `%s' (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "falló la limpieza del fichero de `%s' (%s)."
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "puerto local %s inválido en `/inet'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "anfitrión remoto e información de puerto (%s, %s) inválidos"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "el cliente /inet/raw no está listo aún, perdón"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "sólo root puede utilizar `/inet/raw'."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "el servidor /inet/raw no está listo aún, perdón"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
"no se proporciona algún protocolo (conocido) en el nombre de fichero "
"especial `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "el nombre de fichero especial `%s' está incompleto"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "se debe proporcionar a `/inet' un nombre de anfitrión remoto"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "se debe proporcionar a `/inet' un puerto remoto"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "No se admiten las comunicaciones TCP/IP"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "el fichero `%s' es un directorio"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "use `PROCINFO[\"%s\"]' en lugar de `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "use `PROCINFO[...]' en lugar de `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "no se puede abrir `%s', modo `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "falló al cerrar el pty maestro (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "falló al cerrar la salida estándar en el hijo (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"falló el movimiento del pty esclavo a la salida estándar en el hijo (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "falló al cerrar la entrada estándar en el hijo (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"falló el movimiento del pty esclavo a la entrada estándar en el hijo (dup: %"
"s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "falló al cerrar el pty esclavo (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "falló el movimiento a la salida estándar en el hijo (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
"falló el movimiento de la tubería a la entrada estándar en el hijo (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "falló la restauración de la salida estándar en el proceso padre\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "falló la restauración de la entrada estándar en el proceso padre\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "falló al cerrar la tubería (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' no se admite"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "no se puede abrir la tubería `%s' (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "no se puede crear el proceso hijo para `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "el fichero de datos `%s' está vacío"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "no se puede reservar más memoria de entrada"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "error al leer el fichero de entrada `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "el valor multicaracter de `RS' es una extensión de gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "memoria agotada"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "la opción -m[fr] es irrelevante en gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "uso de la opción -m: `-m[fr]' nnn"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: no se reconoce la opción `-W %s', se ignora\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "se ignora el argumento vacío para `--source'"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: la opción requiere un argumento -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
"la variable de ambiente `POSIXLY_CORRECT' está establecida: se activa `--"
"posix'"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' se impone a `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--posix'/`--traditional' se imponen a `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "ejecutar %s como setuid root puede ser un problema de seguridad"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "no se puede establecer el modo binario en la entrada estándar (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "no se puede establecer el modo binario en la salida estándar (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr ""
"no se puede establecer el modo binario en la salida estándar de error (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "¡No hay ningún programa de texto!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Modo de empleo: %s [opciones estilo POSIX o GNU] -f fichprog [--] "
"fichero ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Modo de empleo: %s [opciones estilo POSIX o GNU] [--] %cprograma%c "
"fichero ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Opciones POSIX:\t\tOpciones largas GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f fichprog\t\t--file=fichprog\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F sc\t\t\t--field-separator=sc\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=valor\t\t--assign=var=valor\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] valor\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-O\t\t\t--optimize\n"
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fichero]\t--dump-variables[=fichero]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=fichero\t\t--exec=fichero\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fichero]\t--profile[=fichero]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
# Esta es la línea más larga de la lista de argumentos.
# Probar con gawk para revisar tabuladores. cfuga
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=texto-prog\t--source=texto-prog\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
-msgstr ""
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1611,7 +1659,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1625,7 +1673,7 @@ msgstr ""
"Reporte los errores de los mensajes en español a <es@li.org>.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1635,7 +1683,7 @@ msgstr ""
"Por omisión lee la entrada estándar y escribe en la salida estándar.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1645,7 +1693,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' fichero\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1658,14 +1706,14 @@ msgid ""
msgstr ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
-"Este programa es software libre; puede redistribuirse y/o ser modificado\n"
+"Este programa es software libre; se puede redistribuir y/o modificar\n"
"bajo los términos de la Licencia Pública General de GNU tal como es "
"publicada\n"
"por la Free Software Foundation; ya sea por la versión 3 de la Licencia, o\n"
"(a su elección) cualquier versión posterior.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1679,22 +1727,20 @@ msgstr ""
"Licencia Pública General de GNU para más detalles.\n"
"\n"
-#: main.c:781
-#, fuzzy
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
"Debió recibir una copia de la Licencia Pública General de GNU\n"
-"junto con este programa; si no es así, escriba a la Free Software\n"
-"Foundation, Inc., 51 Franklin Street, Quinto Piso, Boston, MA 02110-1301, "
-"USA.\n"
+"junto con este programa. Si no es así, consulte\n"
+"http://www.gnu.org/licenses/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft no establece FS a tabulador en el awk de POSIX"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1703,35 +1749,43 @@ msgstr ""
"%s: el argumento `%s' para `-v' no es de la forma `var=valor'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' no es un nombre de variable legal"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s' no es un nombre de variable, se busca el fichero `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "excepción de coma flotante"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "error fatal: error interno"
-#: main.c:1180
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "error fatal: error interno: falla de segmentación"
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "error fatal: error interno: desbordamiento de pila"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "no existe el df %d abierto previamente"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "no se puede abrir previamente /dev/null para el df %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "no se pueden encontrar los grupos: %s"
@@ -1757,24 +1811,33 @@ msgstr "fatal: "
msgid "can't convert string to float"
msgstr "no se puede convertir una cadena a coma flotante"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "barra invertida al final de la cadena"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "el awk antiguo no admite la secuencia de escape `\\%c'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX no permite escapes `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "no hay dígitos hexadecimales en la secuencia de escape `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+"en el escape hexadecimal \\x%.*s de %d caracteres tal vez no se interpreten "
+"de la forma esperada"
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "la secuencia de escape `\\%c' se trata como una simple `%c'"
@@ -1784,31 +1847,32 @@ msgstr "la secuencia de escape `\\%c' se trata como una simple `%c'"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': no se puede establecer close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "no se puede abrir `%s' para escritura: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "error interno: %s con vname nulo"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
-msgstr "# se trata internamente como `delete'"
+msgstr "# se trata internamente como `delete"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# esta es una función de extensión cargada dinámicamente"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# perfil de gawk, creado %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1817,7 +1881,7 @@ msgstr ""
"\t# bloque(s) BEGIN\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1826,7 +1890,7 @@ msgstr ""
"\t# Regla(s)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1835,7 +1899,7 @@ msgstr ""
"\t# bloque(s) END\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1844,83 +1908,91 @@ msgstr ""
"\n"
"\t# Funciones, enumeradas alfabéticamente\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "tipo %s inesperado en prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "Tipo de nodo %s desconocido en pp_var"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Éxito"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "No hay coincidencia"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Expresión regular inválida"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Caracter de ordenación inválido"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Nombre de clase de caracter inválido"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Barra invertida extra al final"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Referencia hacia atrás inválida"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ o [^ desemparejados"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( o \\( desemparejados"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ desemparejado"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Contenido inválido de \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Final de rango inválido"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Memoria agotada"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Expresión regular precedente inválida"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Fin prematuro de la expresión regular"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "La expresión regular es demasiado grande"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") o \\) desemparejados"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "No hay una expresión regular previa"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: opción ilegal -- %c\n"
+
#~ msgid "remote port invalid in `%s'"
#~ msgstr "puerto remoto inválido en `%s'"
@@ -2000,9 +2072,6 @@ msgstr "No hay una expresión regular previa"
#~ msgid "Unbalanced )"
#~ msgstr ") desbalanceado"
-#~ msgid "out of memory"
-#~ msgstr "memoria agotada"
-
#~ msgid "internal error: file `%s', line %d\n"
#~ msgstr "error interno: fichero `%s', línea %d\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 57376540..f271e8be 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 42cda5c2..aa1bbae2 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.4l\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2005-06-29 08:00-0500\n"
"Last-Translator: Michel Robitaille <robitail@IRO.UMontreal.CA>\n"
"Language-Team: French <traduc@traduc.org>\n"
@@ -23,8 +23,7 @@ msgstr "tentative d'utilisation de la fonction « %s » comme un tableau"
#: array.c:115
#, c-format
msgid "attempt to use scalar parameter `%s' as an array"
-msgstr ""
-"tentative d'utilisation d'un paramètre scalaire « %s » comme un tableau"
+msgstr "tentative d'utilisation d'un paramètre scalaire « %s » comme un tableau"
#: array.c:118
#, c-format
@@ -76,338 +75,343 @@ msgstr "%s: est un paramètre\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array_ref de %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "Les blocs %s doivent avoir une partie action"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "chaqque règle doit avoir un patron ou une partie action"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "« %s » est une fonction interne, elle ne peut être redéfinie"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
"la constante d'expression régulière « // » ressemble à un commentaire en C, "
"mais ne l'est pas"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
-"la constante d'expression régulière « /%s/ » ressemble à un commentaire en "
-"C, mais ne l'est pas"
+"la constante d'expression régulière « /%s/ » ressemble à un commentaire en C, "
+"mais ne l'est pas"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "la déclaration peut n'avoir aucun effet"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "« %s » utilisé dans l'action %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "« nextfile » est une extension de gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "« return » utilisé en dehors du contexte d'une fonction"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
-"utilisation de « print » dans une règle BEGIN ou END doit être probablement "
-"« print \"\" »"
+"utilisation de « print » dans une règle BEGIN ou END doit être probablement « "
+"print \"\" »"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "« delete array » est une extension de gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "« delete(array) » est une extension de tawk qui n'est pas portable"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "duplicata de valeur de case dans le corps du switch: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "duplicata de « default » détecté dans le corps du switch"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "pipelines bidirectionnel à multi-étapes ne fonctionnent pas"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "expression régulière à la droite de l'affectation"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "expression régulière sur la gauche de l'opérateur « ~ » ou « !~ »"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "expression régulière sur la droite de la comparaison"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "« getline » non redirigé indéfini à l'intérieur de l'action END"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "l'appel de « length » sans les parenthèses n'est pas portable"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "l'appel de « length » sans les parenthèses est déprécié par POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "utilisation d'une entité qui n'est pas un tableau comme tableau"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "sous-expression invalide"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "nouvelle ligne inattendue ou fin de la chaîne"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "texte du programme sur la ligne de commande est vide"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "ne peut ouvrir le fichier source « %s » pour lecture (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "ne peut lire le fichier source « %s » (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "fichier source « %s » est vide"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "fichier source ne se termine pas par un retour de chariot"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr ""
"expression régulière non termineé se terminant par « \\ » à la fin du fichier"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"%s: %d: modificateur d'exp. rég. tawk `/.../%c' ne peut opérer dans gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "modificateur d'exp. rég. tawk `/.../%c' ne peut opérer dans gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "expression régulière non terminée"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "expression régulière non terminée à la fin du fichier"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr ""
"utilisation de « \\ #... » comme continuation de ligne n'est pas portable"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "la barre oblique inverse n'est pas le dernier caractère sur la ligne"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX ne permet un opérateur « **= »"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "l'ancien awk ne supporte pas l'opérateur « **= »"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX ne permet pas l'opérateur « ** »"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "l'opérateur « ^= » n'est pas supporté dans l'ancien awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "l'opérateur « ^ » n'est pas supporté dans l'ancien awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "chaîne non complétée"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "caractère invalide « %c » dans l'expression"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "« %s » est une extension de gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "« %s » est une extension de Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX ne permet pas « %s »"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "« %s » n'est pas supporté dans l'ancien awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "« goto » considéré néfaste!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d est invalide comme nombre d'arguments pour %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: 3e argument est une extension de gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: la chaîne litérale comme dernier arguement d'une substitution n'a aucun "
"effet"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "3e paramètre %s n'est pas un objet interchangeable"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: 2e argument est une extension de gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"utilisation de dcgettext(_\"...\") est incorrect: enlever les soulignés en "
"en-tête"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"utilisation de dcngettext(_\"...\") est incorrect: enlever les soulignés en "
"en-tête"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "fonction « %s »: paramètre #%d, « %s » est un double du paramètre #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "fonction « %s »: paramètre « %s » porte ombrage à la variable globale"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "ne peut ourvrir « %s » en écriture (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "redirection du profile vers stderr"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: échec de fermeture (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadows_funcs() appelé deux fois!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "il y avait des variables ombragées"
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "fonction « %s »: ne peut utilise le nom de la fonction comme paramètre"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "fonction « %s »: ne peut utilise le nom de la fonction comme paramètre"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "nom de la fonction « %s » définie précédemment"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "fonction « %s » appelé mais jamais définie"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "fonction « %s » définie mais jamais utilisée"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"expression régulière constante pour le paramètre #%d conduit à une valeur "
"booléenne"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -416,201 +420,230 @@ msgstr ""
"fonction « %s » appelée avec un espace entre le nom et « ( »,\n"
"ou utilisé comme variable ou comme un tableau"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "tentative de division par zéro dans « %% »"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s vers « %s » échec (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "sortie standard"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "raison inconnue"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: argument n'est pas numérique"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argument %g est hors limite"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: ne peut vider: le pipe « %s » est oouvert en lecture, pas en écriture"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: ne peut vider: fichier « %s » ouvert en lecture, pas en écriture"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr ""
"fflush: « %s » n'est pas ni un fichier ouvert, un pipe ou un co-processus"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: premier argument n'est pas une chaîne"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: second argument n'est pas une chaîne"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: argument n'est pas numérique"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "« delete array » est une extension de gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: argument n'est pas une chaîne"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: argument n'est pas numérique"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: argument négatif %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "doit utiliser « count$ » sur tous les formats ou aucun"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "« $ » n'est pas permis dans les formats awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "décompte d'arguments avec « $ » doit être > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "compteur d'arguments %ld est > que le nombre total d'arguments fournis"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "« $ » n'est pas permis après le point"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "aucun « $ » fourni dans le champ positionnel (longueur ou précision)"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "« l » n'a aucun sens dans les formats de awk; ignoré"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "« l » n'est pas permis dans les format POSIX de awk"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "« L » n'a aucun sens dans les formats s de awk; ignoré"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "« L » n'est pas permis dans les formats POSIX de awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "« h » n'a aucun send dans les formats de awk; ignoré"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "« h » n'est pas permis dans les formats POSIX de awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: valeur %g est hors limite pour le format « %%%c »"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "pas assez d'arguments pour satisfaire le format d'une chaîne"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ débordement pour celle-ci"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr ""
"[s]printf: spécificateur de format ne contient pas de lettre de contrôle"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "trop d'arguments pour la chaîne de format"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: aucun argument"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: argument n'est pas numérique"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: appelé avec un argument négatif %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: début de l'index %g est invalide, utilise 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: début avec un nombre non entier %g sera tronqué"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: longueur %g n'est pas >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: longueur %g n'est pas >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: longueur avec un nombre non entier %g sera tronqué"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
"substr: longueur %g trop grande pour l'indexation de chaînes, truncation à %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: chaîne de départ est de longueur zéro"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: début de l'index %g dépasse la fin de la chaîne"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -618,260 +651,259 @@ msgstr ""
"substr: longueur %g début avec l'index %g déborde la longueur du 1er "
"arguement (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftim: premier argument reçu n'est pas une chaîne"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: chaîne de format vide"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: second argument reçu n'est pas numérique"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: argument n'est pas une chaîne"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: argument reçu n'est pas une chaîne"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "référence à un champ non initialisé « $%d »"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: argument reçu n'est pas une chaîne"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: argument reçu n'est pas une chaîne"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: premier argument n'est pas numérique"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: second argument n'est pas numérique"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: argument n'est pas numérique"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: argument n'est pas numérique"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: argument n'est pas numérique"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: le 3e argument n'est pas un tableau"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: le 3e argument de 0 traité comme un 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: premier argument n'est pas numérique"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: second argument reçu n'est pas numérique"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): trop grand déplacement donnera d'étranges résultats"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: premier argument n'est pas numérique"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: second argument reçu n'est pas numérique"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): trop grand déplacement donnera d'étranges résultats"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: premier argument n'est pas numérique"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: second argument reçu n'est pas numérique"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: premier argument n'est pas numérique"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: second argument reçu n'est pas numérique"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: premier argument n'est pas numérique"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: second argument reçu n'est pas numérique"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: argument n'est pas numérique"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): valeurs négatives donneront d'étranges résultats"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): valeurs fractionnaires seront tronquées"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: « %s » n'est pas dans un catégorie de localisation valide"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "type de noeud inconnu %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "débordement de tampo dans genflag2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "tentative d'utilisation du tableau « %s » dans un contexte scalaire"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for loop: tableau « %s » a changé de taille de %ld à %ld durant l'exécution "
"de la boucle"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "« break » en dehors de la boucle n'est pas portable"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "« break » en dehors de la boucle n'est pas permis"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "« continue » en dehors de la boucle n'est pas portable"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "« continue » en dehors de la boucle n'est pas permis"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "« next » ne peut être appelé depuis une règle BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "« next » ne peut être appelé depuis une règle END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "« nextfile » ne peut être appelé depuis une règle BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "« nextfile » ne peut être appelé depuis une règle END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "la déclaration n'a aucun effet"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
-msgstr ""
-"ne peut utiliser le nom de la fonction « %s » comme variable ou tableau"
+msgstr "ne peut utiliser le nom de la fonction « %s » comme variable ou tableau"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "référence à un argument non initialisé « %s »"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "référence à une variable non initialisée « %s »"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -879,44 +911,39 @@ msgstr ""
"concaténation: effects de bord dans une expression a modifié la longueur "
"d'une autre!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "affectation utilisé dans un contexte conditionnel"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "tentative de division par zéro"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "tentative de division par zéro dans « %% »"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "type illégal (%s) dans tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "tentative de division par zéro dans « /= »"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "tentative de division par zéro dans « %%= »"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "fonction « %s » appelée avec plus d'arguments que déclarées"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "fonction « %s » non définie"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -927,44 +954,49 @@ msgstr ""
"\t# Appel d'une fonction sur la pile:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "#t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "tentative de référence un champ à partir d'une valeur non numérique"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "tentative de référence à partir d'une chaîne nulle"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "tentative d'accès du champ %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr ""
"l'affectation n'est pas permise pour obtenir un résultat d'une fonction "
"interne"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "« IGNORECASE » est une extension de gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "« BINMODE » est une extension de gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "« %sFMT » spécification erronée « %s »"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "désactivation « --lint » en raison d'une affectation à « LINT »"
@@ -1046,563 +1078,571 @@ msgstr "Opération non supportée"
msgid "NF set to negative value"
msgstr "NF initialisé avec une valeur négative"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: 2e argument n'est pas un tableau"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: chaîne vide pour le 3e argument est une extension de gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "« FIELDWIDTHS » est une extension de gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "valeur de FIELDWIDTHS invalide, près de `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "chaîne vide pour « FS » est une extension de gawk"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: option « %s » est ambiguë\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: option « --%s » n'admet pas d'arguement\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: l'option « %c%s » ne requiert pas d'arguement\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: l'option « %s » requiert un argument\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: option non reconnue « --%s »\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: option non reconnue « %c%s »\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: option illégale -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: option invalide -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: l'option requiert un arguement -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: l'option « -W %s » est ambiguë\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: l'option « -W %s » ne requiert pas d'arguement\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "ne peut ouvrir le fichier « %s » en lecture (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "fermeture de fd %d (« %s ») en échec (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "type d'arbre invalide %s dans redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr ""
"l'expression de la redirection de « %s » a seulement une valeur numérique"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr ""
"l'expression de la redirection de « %s » a une valeur nulle pour la chaîne"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"nom de fichier « %s » pour le redirection « %s » peut être le résultat d'une "
"expression logique"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "mélange non nécessaire de « > » et de « >> » pour le fichier « %.*s »"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "ne peut ouvrir un pipe « %s » en sortie (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "ne peut ouvrir un pipe « %s » en entrée (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "le fichier « %s » est un répertoire"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
"ne peut ouvrir un socket bidirectionnel « %s » pour les entrées/sorties (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr ""
"ne peut ouvrir un pipe bidirectionnel « %s » pour les entrées/sorties (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "ne peut rediriger de « %s » (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "ne peut rediriger vers « %s » (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"limite système atteinte pour l'ouverture des fichiers: début du multiplexage "
"des descripteurs de fichiers"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "fermeture de « %s » en échec (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "trop de pipes ou de fichiers en lecture ouverts"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: 2e argument doit être « to » ou « from »"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: « %.*s » n'est pas ni un fichier ouvert, pipe ou co-processus"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "fermeture de la redirection qui n'a jamais été ouverte"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: redirection « %s » n'a pas été ouverte ave « |& » 2e argument ignoré"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "constat d'échec (%d) lors de la fermeture du pipe « %s » (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "constat d'échec (%d) lors de la fermeture du fichier « %s » (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "aucune fermeture explicite du socket « %s » fournie"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "aucune fermeture explicite du co-processus « %s » fournie"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "aucune fermeture explicite du pipe « %s » fournie"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "aucune fermeture explicite du fichier « %s » fournie"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "erreur lors de l'écriture vers stdout (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "erreur lors de l'écriture vers stderr (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "vidange du pipie de « %s » en échec (%s)"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "vidange du pipe par le co-processus vers « %s » en échec (%s)"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "vidange du fichier « %s » en échec (%s)"
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "port local invalide dans « %s »"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "le client /inet/raw n'est pas encore prêt, désolé"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "seul root peut utiliser « /inet/raw »"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "le serveur /inet/raw n'est pas encore prêt, désolé"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "aucun protocole (connu) fourni dans le nom de fichier spécial « %s »"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "nom spécial de fichier « %s » est incomplet"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "un nom de hôte distant doit être fourni à « /inet »"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "un port distant doit être fournis à « /inet »"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "les communications TCP/IP ne sont pas supportées"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "le fichier « %s » est un répertoire"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "utliser « PROCINFO[\"%s\"] » au lieu de « %s »"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "utliser « PROCINFO[\"%s\"] » au lieu de « /dev/user »"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "ne peut ouvrir « %s », mode « %s »"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "échec de la fermeture du pty maître (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "échec de fermeture de stdout du processus fils (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"échec de redirection de pty esclave vers stdout du processus fils (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "échec de fermeture de stdin du processus fils (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"échec de redirection du pty esclave vers stdin du processus fils (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "échec de la fermeture du pty esclave (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "échec de redirection du pipe vers stdout du processus fils (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "échec de redirection du pipe vers stdin du processus fils (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "restauration de stdout par le processus parent a échoué\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "restauration de stdin par le processus parent a échoué\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "échec de la fermeture du pipe (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "« |& » non supporté"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "ne ouvrir un pipe « %s » (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "ne créer le processus fils pour « %s » (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "le fichier de données « %s » est vide"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "ne peut allouer plus de mémoire pour l'entrée"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "erreur lors de la lecture du fichier source « %s »: %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "valeur de « RS » avec multiple caractères est une extension gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "Mémoire épuisée"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "« -m[fr] » est une option non pertinente en gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m usage de l'option: « -m[fr] nnn »"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: l'option « -W %s » n'est pas reconnue, ignorée\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "argument vide à l'option « --source », ignorée"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: l'option requiert un arguement -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
-"variable d'environnement « POSIXLY__CORRECT » initialisée: utilisation de « "
-"--posix »"
+"variable d'environnement « POSIXLY__CORRECT » initialisée: utilisation de « --"
+"posix »"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "« --posix » écrase « --traditional »"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "« --posix »/« --traditional » écrase « --non-decimal-data »"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr ""
"exécution de %s en mode setuid root peut causer un problème de sécurité"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "ne peut initialiser le mode binaire sur stdin (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "ne peut initialiser le mode binaire sur stdout (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "ne peut initialiser le mode binaire sur stderr (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "aucun programme!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Usage: %s [style des options POSIX ou GNU] -f fichierprog [--] fichier ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Usage: %s [style des options POSIX ou GNU] [--] %cprogram%c fichier ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Options POSIX:\t\toptions de long format GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f fichierprog\t\t--file=fichierprog\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "#t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "#t-v var=valeur\t\t--assign=var=valeur\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] valeur\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fichier]\t--dump-variables[=fichier]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=fichier\t\t--exec=fichier\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fichier]\t--profile[=fichier]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=program-text\t--source=program-text\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1611,7 +1651,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1623,7 +1663,7 @@ msgstr ""
"la section\n"
"« Problems and Bugs » dans la version imprimée.\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1633,7 +1673,7 @@ msgstr ""
"Par défaut, il lit de l'entrée standard et écrit sur la sortie standard.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1643,8 +1683,8 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1658,11 +1698,11 @@ msgstr ""
"\n"
"Ce programme est un logiciel libre; vous pouvez le redistribuer ou le\n"
"modifier selon les termes de la License Publique Générale de GNU, publiée\n"
-"par la Free Software Foundation; soit la version 3 de la Licence ou,\n"
+"par la Free Software Foundation; soit la version 2 de la Licence ou,\n"
"soit (selon vos préférences) toute version ultérieure.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1677,7 +1717,7 @@ msgstr ""
"Pour plus d'informations à ce sujet, consulter la « GNU General Public "
"License ».\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1687,13 +1727,13 @@ msgstr ""
"avec ce programme; sinon, sinon écrire à la Free Software Foundation, Inc.,\n"
"51 Franklin Street, FIth Floor, Boston, MA 02110-1301, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr ""
"-Ft ne permet pas d'initialiser FS à un tabulateur dans la version POSIX de "
"awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1702,35 +1742,45 @@ msgstr ""
"%s: « %s » argument pour « -v » n'utilise pas la formulation « var=valeur »\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "« %s » n'est pas un nom légal de variable"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "« %s » n'est pas un nom de variable, recherche du fichier « %s=%s »"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "exception de la virgule flottante"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "erreur fatale: erreur interne"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "erreur fatale: erreur interne"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "erreur fatale: erreur interne"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "aucun fd pré-ouvert pour %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "ne peut pré-ouvrir /dev/null pour le descripteud fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "n'a pu trouvé les groupes: %s"
@@ -1756,24 +1806,31 @@ msgstr "Fatal: "
msgid "can't convert string to float"
msgstr "ne peut convertir la chaîne en nombre flottant"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "barre oblique inverse à la fin de la chaîne"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "l'ancien awk ne supporte pas l'opérateur « ** »"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX ne permet pas de séquence d'échappement « \\x »"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "aucun chiffre hexadécimal dans la séquence d'échappement « \\x » "
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "séquence d'échappement « \\%c » traitée simplement comme « %c »"
@@ -1783,31 +1840,32 @@ msgstr "séquence d'échappement « \\%c » traitée simplement comme « %c »"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s « %s »: ne peut initialiser close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "ne peut ouvrir « %s » en écriture: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "erreur interne: %s avec un vname nul"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# traité de manière interne comme « delete »"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# cela est un extension d'une fonction chargée dynamiquement"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# profile gawk, créé %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1816,7 +1874,7 @@ msgstr ""
"#t# DÉBUT de bloc(s)\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1825,7 +1883,7 @@ msgstr ""
"\t# Règle(s)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1834,7 +1892,7 @@ msgstr ""
"\t# FIN de bloc(s)\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1843,83 +1901,91 @@ msgstr ""
"\n"
"\t# Liste alphabétique des fonctions\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "type %s inattendu dans prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "type de noeud inconnu %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Succès"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Aucune concordance"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Expression régulière invalide"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Caractère de collation invalide"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Nom de classe de caractères invalide"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Barre oblique inverse de terminaison"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Mauvaise référence arrière"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Non appariement de [ ou [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Non appariement de ( ou \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Non appariement de \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Contenu invalide de \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Borne finale invalide"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Mémoire épuisée"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Expression régulière précédente invalide"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Fin prématurée de l'expression régulière"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Expression régulière trop grande"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Non appariement de ) ou \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Aucune expression régulière antérieure"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: option illégale -- %c\n"
+
#~ msgid "remote port invalid in `%s'"
#~ msgstr "port distant invalide dans « %s »"
@@ -1995,9 +2061,6 @@ msgstr "Aucune expression régulière antérieure"
#~ msgid "Unbalanced )"
#~ msgstr "Non appariement de )"
-#~ msgid "out of memory"
-#~ msgstr "Mémoire épuisée"
-
#~ msgid "internal error: file `%s', line %d\n"
#~ msgstr "erreur interne: fichier « %s », ligne %d\n"
diff --git a/po/ga.gmo b/po/ga.gmo
index fe79e270..d94a7bc8 100644
--- a/po/ga.gmo
+++ b/po/ga.gmo
Binary files differ
diff --git a/po/ga.po b/po/ga.po
index a4694285..0e0a3708 100644
--- a/po/ga.po
+++ b/po/ga.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.5h\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2007-10-01 13:47-0500\n"
"Last-Translator: Peadar Ó Guilín <peadarog@oceanfree.net>\n"
"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
@@ -75,321 +75,326 @@ msgstr "%s: is paraiméadar é\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: tagairt_eagair do %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "tá gá le páirt ghníomhach ag blocanna %s"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "tá gá le patrún nó páirt ghníomhach ag gach riail"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "ní thacaíonn sean-awk le rialacha iomadúla `BEGIN' nó `END'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "is feidhm insuite í `%s', ní féidir í a shainmhíniú"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "tá cuma nóta tráchta C++ ar an dtairiseach `//', ach ní nóta tráchta é"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "tá cuma nóta tráchta C ar an dtairiseach `/%s/', ach ní nóta tráchta é"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "seans nach mbeidh éifeacht ag an ráiteas"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "`%s' á úsáid i ngníomh %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "is feabhsúchán gawk é `nextfile'"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' á úsáid lasmuigh den chomhthéacs feidhmeach"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"is dóigh gur chóir go mbeadh an gnáth `print' sa riail TÚS nó CRÍOCH scríofa "
"mar `print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "is feabhsúchán gawk é `delete array'"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "is feabhsúchán neamh-iniompartha tawk é `delete(eagar)'"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "luachanna cás dúbailte sa chorp laisce: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "`default' dúbailte aimsithe sa chorp laisce"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "ní oibríonn píblínte déthreo ilchéimeacha"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "slonn ionadaíochta ar dhéis an tsannacháin"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "slonn ionadaíochta ar chlé na oibreoirí `~' nó `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "ní thacaíonn sean-awk le heochairfhocal `in' ach tar éis `for'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "slonn ionadaíochta ar dhéis na comparáide"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "ní shannadh `getline' neamhatreoraithe lasmuigh den ghníomh CRÍOCH"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "ní thacaíonn sean-awk le heagair iltoiseacha"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "tá glao `length' gan lúibíní doiompartha"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "lochtaíonn POSIX glao `length' gan lúibíní"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "neamheagar á úsáid mar eagar"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "slonn foscripte neamhbhailí"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "líne nua nó deireadh teaghráin gan choinne"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "téacs feidhmchlár folamh ar líne na n-orduithe"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "ní féidir an comhad foinseach `%s' a oscailt chun léamh (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "ní féidir an comhad foinseach `%s' a léamh (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "comhad foinseach `%s' folamh"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "ní chríochnaíonn an comhad foinseach le líne nua"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "críochnaíonn regexp gan chríochnú le `\\' ag an gcomhadchríoch"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "%s: %d: ní oibríonn an mionathraitheoir tawk regex `/.../%c' i ngawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "ní oibríonn an mionathraitheoir tawk regex `/.../%c' i ngawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "slonn ionadaíochta gan críochnú"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "slonn ionadaíochta gan críochnú ag an gcomhadchríoch"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "níl úsáid `\\ #...' mar leanúint líne doiompartha"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "ní cúlslais é carachtar deireanach an líne"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "ní cheadaíonn POSIX an t-oibreoir `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "ní cheadaíonn sean-awk an t-oibreoir `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "ní cheadaíonn POSIX an t-oibreoir `**='"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "ní cheadaíonn sean-awk an t-oibreoir `**='"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "tá an t-oibreoir `^=' gan tacaíocht sa shean awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "tá an t-oibreoir `^' gan tacaíocht sa shean awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "teaghrán gan chríochnú"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "carachtar neamhbhailí '%c' sa slonn"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "is feabhsúchán gawk é `%s'"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "is feabhsúchán Bell Labs é `%s'"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "ní cheadaíonn POSIX `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "tá `%s' gan tacaíocht sa shean awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "deirtear go bhfuil `goto' dochrach!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d oiread argóintí neamhbhailí le haghaidh %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "meaitseáil: is feabhsúchán gawk é an tríú hargóint"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: ní bhíonn aon éifeacht ag teaghrán litriúil mar arg deireanach an ionadaí"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "ní oibiacht athraitheach í an tríú paraiméadar %s"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: is feabhsúchán gawk é an dara hargóint"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "tá úsáid dcgettext(_\"...\") mícheart: bain amach an chéad fhostríoc"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "tá úsáid dcgettext(_\"...\") mícheart: bain amach an chéad fhostríoc"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "feidhm `%s': is cóip é paraiméadar #%d, `%s', den pharaiméadar #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "feidhm `%s': leanann paraiméadar `%s' athróg chomhchoiteann"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "níorbh fhéidir `%s' a oscailt chun scríobh (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "próifíl á seoladh go hearráid chaighdeánach"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: theip ar an dún (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "glaodh dhá uair ar shadow_funcs()!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "bhí scáthathrógaí ann."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "feidhm `%s': níl cead ainm feidhme a úsáid mar ainm paraiméadar"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "feidhm `%s': níl cead ainm feidhme a úsáid mar ainm paraiméadar"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "ainm feidhme `%s' sainmhínithe cheana"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "glaodh ar an bhfeidhm `%s' nach bhfuil sainithe"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "tá sainiú ag an bhfeidhm `%s' ach ní ghlaodh é"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "tagann luach Boole de bharr ón dtairiseach regexp don pharaiméadar #%d"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -398,498 +403,522 @@ msgstr ""
"glaodh feidhm `%s' le spás idir ainm agus `(',\n"
"nó úsáideadh é mar athróg nó mar eagar"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "iarracht roinnt le nialas a dhéanamh i `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "theip ar %s go \"%s\" (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "aschur caighdeánach"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "níl fhios an fáth"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: fuarthas argóint neamhuimhriúil"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argóint %g as raon"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr "fflush: ní dhúisófear: píopa `%s' oscailte do léamh, ní do scríobh"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "fflush: ní dhúisófear: comhad `%s' oscailte do léamh, ní do scríobh"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: ní comhad, píopa nó comhphróiseas oscailte é `%s'"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: ní teaghrán é an chéad argóint"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: ní teaghrán é an dara hargóint"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: fuarthas argóint neamhuimhriúil"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "is feabhsúchán gawk é `length(array)'"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: fuarthas argóint nach teaghrán é"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: fuarthas argóint neamhuimhriúil"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: fuarthas argóint diúltach %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
"má úsáidtear `count$' i bhformáid ar bith, caithfidh é a úsáid i ngach "
"formáid é"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "Níl `$' ceadaithe i bhformáidí awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "caithfidh áireamh na harg. le `$' bheith > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "áireamh na harg. %ld níos mó ná na hargóintí faighte"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "níl `$' ceadaithe i bhformáid théis punc"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "níor thugadh `$' do leithead nó beachtas an réimse ionaid"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "níl ciall ag `l' i bhformáidí awk; neamhairdithe"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "ní cheadaítear `l' i bhformáidí awk POSIX"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "níl ciall ag `L' i bhformáidí awk; neamhairdithe"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "ní cheadaítear `L' i bhformáidí awk POSIX"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "níl ciall ag `h' i bhformáidí awk; neamhairdithe"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "ní cheadaítear `h' i bhformáidí awk POSIX"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: tá luach %g as raon don bhformáid `%%%c'"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "ní leor argóintí le haghaidh an teaghráin formáide"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ imithe thar bráid don cheann seo"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: níl litir rialúcháin ag an sonraitheoir formáide"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "fuarthas an iomarca argóintí don teaghrán formáide"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: níl aon argóint"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: fuarthas argóint neamhuimhriúil"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: glaodh le argóint diúltach %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: tá tús innéacs %g neamhbhailí, ag úsáid a 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: teascfar tús neamhuimhriúil an innéacs %g"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: níl fad %g >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: níl fad %g >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "ubstr: teascfar an fad neamhuimhriúil %g"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: fad %g ró-mhór d'innéacsú teaghráin, ag teascadh go %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: tá an teaghrán foinse folamh"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: innéacs tosaithe %g tar éis deireadh an teaghráin"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr "substr: fad %g ag innéacs tosaithe %g rófhada don chéad argóint (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: ní teaghrán í an chéad argóint"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: fuarthas teaghrán formáide folamh"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: fuarthas dara hargóint neamhuimhriúil"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: ní teaghrán é an argóint"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: fuarthas argóint nach teaghrán í"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "tagairt d'athróg nach bhfuil túsaithe `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: fuarthas argóint nach teaghrán í"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: fuarthas argóint nach teaghrán í"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: ní huimhir é an chéad argóint"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: ní huimhir é an dara hargóint"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: fuarthas argóint neamhuimhriúil"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: fuarthas argóint neamhuimhriúil"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: fuarthas argóint neamhuimhriúil"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: ní eagar é an tríú hargóint"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: 3ú hargóint 0 úsáidte mar 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: ní huimhir é an chéad argóint"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: ní huimhir é an dara hargóint"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): tiocfaidh torthaí aisteacha as luachanna diúltacha"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): teascfar luachanna codánacha"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): gheobhfar torthaí aisteacha le luach iomlaoideach ró-mhór"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: ní huimhir é an chéad argóint"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: ní huimhir é an dara hargóint"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diúltacha"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): teascfar luachanna codánacha"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): gheobhfar torthaí aisteacha le luach iomlaoideach ró-mhór"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: ní huimhir é an chéad argóint"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: ní huimhir é an dara hargóint"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diúltacha"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): teascfar luachanna codánacha"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: ní huimhir é an chéad argóint"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: ní huimhir é an dara hargóint"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diúltacha"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): teascfar luachanna codánacha"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: ní huimhir é an chéad argóint"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: ní huimhir é an dara hargóint"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): gheobhfar torthaí aisteacha le luachanna diúltacha"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): teascfar luachanna codánacha"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: fuarthas argóint neamhuimhriúil"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): gheobhfar torthaí aisteacha le luachanna diúltacha"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): teascfar luachanna codánacha"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: ní catagóir logánach ceart é `%s'"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr " cineál anaithnid nóid %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "maolán thar maoil i genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "iarracht eagar `%s' a úsáid i gcomhthéacs scálach"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr "lúb for: d'athraigh méid an eagair `%s' ó %ld go %ld i lár na lúibe"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "níl `break' lasmuigh den lúb iniompartha"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "níl `break' lasmuigh den lúb ceadaithe"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "níl `continue' lasmuigh den lúb iniompartha"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "níl `continue' lasmuigh den lúb ceadaithe"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "ní féidir glaoigh ar `next' ó riail TÚS"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "ní féidir glaoigh ar `next' ó riail CRÍOCH"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "ní féidir glaoigh ar `nextfile' ó riail TÚS"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "ní féidir glaoigh ar `nextfile' ó riail CRÍOCH"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "níl aon éifeacht ag an ráiteas"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "ní féidir ainm feidhme `%s' a úsáid mar athróg nó eagar"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "tagairt d'argóint nach bhfuil túsaithe `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "tagairt d'athróg nach bhfuil túsaithe `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr "comhchaitéiniú: d'athraigh éifeachtaí sloinn amháin fad ceann eile!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "sannadh úsáidte i gcomhthéacs coinníollach"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "iarracht roinnt le nialas a dhéanamh"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "iarracht roinnt le nialas a dhéanamh i `%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "cineál neamhcheadaithe (%s) i tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "iarracht roinnt le nialas a dhéanamh i `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "iarracht roinnt le nialas a dhéanamh i `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "glaodh ar fheidhm `%s' le níos mó argóintí nó mar a bhí fógartha"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "feidhm `%s' gan sainmhíniú"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -900,42 +929,47 @@ msgstr ""
"\t# Cruach an Glaoigh ar an bhFeidhm:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- príomh --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "iarracht tagairt a fháil ó luach neamhuimhriúil"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "iarracht tagairt a fháil ó theaghrán neamhnitheach"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "iarracht rochtain a dhéanamh ar réimse %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "ní féidir sannachán a dhéanamh le toradh ó fheidhm insuite"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "is feabhsúchán gawk é `IGNORECASE'"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "is feabhsúchán gawk é `BINMODE'"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "drochshonraíocht`%sFMT' `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "`--lint' á mhúchadh de bharr sannachán go `LINT'"
@@ -1010,556 +1044,564 @@ msgstr "Oibríocht Gan Tacaíocht"
msgid "NF set to negative value"
msgstr "NF socraithe go luach diúltach"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "scoilt: ní eagar é an dara hargóint"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr ""
"scoilt: is feabhsúchán gawk é an teaghrán neamhnitheach don tríú hargóint"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "is feabhsúchán gawk é `FIELDWIDTHS'"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "luach FIELDWIDTHS neamhbhailí cóngarach le `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "is feabhsúchán gawk é an teaghrán neamhnitheach do `FS'"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "ní thacaíonn sean-awk le slonn ionadaíochta mar luach de `FS'"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: Tá an rogha `%s' débhríoch\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `--%s'\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `%c%s'\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: tá argóint de dhíth i ndiaidh na rogha `%s'\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: rogha anaithnid `--%s'\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: rogha anaithnid `%c%s'\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: rogha neamhcheadaithe -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: rogha neamhbhailí -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: tá argóint de dhíth i ndiaidh na rogha -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: Tá an rogha `-W %s' débhríoch\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `-W %s'\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "ní féidir `%s' a oscailt chun é a léamh (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "dúnadh fd %d (`%s') teipthe (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "cineál crainn %s neamhbhailí san atreorú()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "níl ach luach uimhriúil ag an slonn in atreorú `%s'"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "tá luach teaghráin neamhnitheach ag an slonn in atreorú `%s'"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"seans gur toradh sloinn loighciúil é an comhadainm `%s' don atreorú `%s'"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "meascán neamhriachtanach de `>' agus `>>' do chomhad `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "ní féidir píopa `%s' a oscailt d'aschur (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "ní féidir píopa `%s' a oscailt d'ionchur (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "ní comhadlann é an comhad `%s'"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "ní féidir an soicéad déthreo `%s' a oscailt d'ionchur/aschur (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "ní féidir an píopa déthreo `%s' a oscailt d'ionchur/aschur (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "ní féidir atreorú ó `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "ní féidir atreorú go `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"tagtha chuig teorainn an chórais do chomhadlanna oscailte: ag tosú "
"tuairisceoirí na gcomhadlann a ilphléacsadh"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "dúnadh `%s' teipthe (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "tá an iomarca píopaí nó comhadlanna ionchuir oscailte"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: tá `to' nó `from' de dhíth mar dara hargóint"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: ní comhad oscailte, píopa nó comhphróiseas é `%.*s'"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "dúnadh atreoraithe nach n-osclóadh riamh"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: níl atreorú `%s' oscailte le `|&', rinneadh neamhaird ar an dara "
"hargóint"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "stádas teipfhulangach (%d) ar dúnadh an phíopa `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "stádas teipfhulangach (%d) ar dúnadh an chomhaid `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "ní fhuarthas dúnadh léir an tsoicéid `%s'"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "ní fhuarthas dúnadh léir an chomhphróisis `%s'"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "ní fhuarthas dúnadh léir an phíopa `%s'"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "ní fhuarthas dúnadh léir an chomhaid `%s'"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "earráid agus aschur caighdeánach á scríobh (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "earráid agus earráid caighdeánach á scríobh (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "sruthladh píopa `%s' teipthe (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "sruthladh comhphróisis an phíopa go `%s' teipthe (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "sruthladh comhaid `%s' teipthe (%s)."
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "port logánta %s neamhbhailí i `/inet'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "eolas neamhbhailí faoin chianósta agus port (%s, %s)"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "tá brón orm, níl an cliant /inet/raw réidh go fóill"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "`/inet/raw' ceadaithe do root amháin."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "tá brón orm, níl an freastalaí /inet/raw ré go fóill"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "ní fhuarthas fíor phrótacal sa chomhadainm speisialta `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "níl an comhadainm speisialta `%s' iomlán"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "tá ainm cianóstaigh de dhíth ag `/inet'"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "tá cianphort de dhíth ag `/inet'"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "cumarsáid TCP/IP gan tacaíocht"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "ní comhadlann é an comhad `%s'"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "úsáid `PROCINFO[\"%s\"]' in ionad `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "úsáid `PROCINFO[...]' in ionad `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "níorbh fhéidir `%s' a oscailt, mód `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "theip ar dúnadh máistir-pty (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "theip ar dúnadh aschuir caighdeánach i mac teipthe (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"theip ar bogadh an pty sclábhánta go haschur caighdeánach sa mhac (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "theip ar dúnadh ionchuir caighdeánach i mac (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"theip ar bogadh an pty sclábhánta go hionchuir caighdeánach sa mhac (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "theip ar dúnadh an pty sclábhánta (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "theip ar bhogadh píopa go haschur caighdeánach i mac (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "theip ar bhogadh píopa go hionchur caighdeánach i mac (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "theip ar dhul ar ais go haschur caighdeánach i máthair teipthe\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "theip ar dhul ar ais go hionchur caighdeánach i máthair teipthe\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "theip ar dúnadh phíopa (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' gan tacaíocht"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "ní féidir píopa `%s' a oscailt (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "ní féidir mac a dhéanamh do `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "tá comhad sonraí `%s' folamh"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "níorbh fhéidir níos mó cuimhne ionchuir a leithdháileadh"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "earráid ag léamh comhad aschuir `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "is feabhsúchán gawk é an luach ilcharachtar 'RS'"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "cuimhne ídithe"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "`-m[fr]' rogha neamhábhartha i ngawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "úsáid rogha -m: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: rogha `-W %s' anaithnid, rinneadh neamhshuim air\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "rinneadh neamhshuim ar argóint fholamh go `--source'"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: tá argóint de dhíth i ndiaidh na rogha -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "athróg thimpeallachta `POSIXLY_CORRECT' socraithe: ag lasadh `--posix'"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "sáraíonn `--posix' `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "sáraíonn `--posix'/`--traditional' `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "seans gur neamhdhaingean é ag rith %s setuid root"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "ní féidir mód dénártha a shocrú ar stdin (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "ní féidir mód dénártha a shocrú ar stdout (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "ní féidir mód dénártha a shocrú ar stderr (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "níl aon téacs sa ríomhchlár!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Úsáid: %s [roghanna cineál POSIX nó GNU] -f clárchomhad [--] comhad ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Úsáid: %s [roghanna cineál POSIX nó GNU] [--] %críomhchlár%c comhad ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "roghanna POSIX:\t\tGNU roghanna fada:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f comhad\t\t--file=progfile\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v athróg=luach\t\t--assign=athróg=luach\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] luach\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=comhad]\t--dump-variables[=comhad]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=comhad\t\t--exec=comhad\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=comhad]\t--profile[=comhad]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=program-text\t--source=program-text\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1568,7 +1610,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1580,7 +1622,7 @@ msgstr ""
"sa rannán `Reporting Problems and Bugs' sa leagan faoi chló.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1591,7 +1633,7 @@ msgstr ""
"haschur caighdeánach.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1601,7 +1643,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' comhad\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1620,7 +1662,7 @@ msgstr ""
"nó (más mian leat) aon leagan níos déanaí.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1634,7 +1676,7 @@ msgstr ""
"GNU General Public License chun níos mó sonraí a fháil.\n"
"\n"
-#: main.c:781
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
@@ -1643,11 +1685,11 @@ msgstr ""
"a fháil in éineacht leis an ríomhchlár seo; mura bhfuair,\n"
"féach ar http://www.gnu.org/licenses/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "ní athraíonn -Ft FS go táb san awk POSIX"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1656,35 +1698,45 @@ msgstr ""
"%s: níl an argóint `%s' go `-v' san fhoirm `var=value'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "ní ainm athróige dleathúil é `%s'"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "ní ainm athróige é `%s', ag lorg comhad `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "eisceacht snámhphointe"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "earráid mharfach: earráid inmheánach"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "earráid mharfach: earráid inmheánach"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "earráid mharfach: earráid inmheánach"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "níl aon fd %d réamhoscailte"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "níorbh fhéidir /dev/null a réamhoscailt do fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "ní féidir na grúpaí a aimsiú: %s"
@@ -1710,24 +1762,31 @@ msgstr "marfach: "
msgid "can't convert string to float"
msgstr "ní féidir teaghrán a thiontú go snámhphointe"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "cúlslais ag deireadh an teaghráin"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "ní thacaíonn sean-awk le seicheamh éalaithe `\\%c'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "ní cheadaíonn POSIX éalaithe `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "níl digití heicsidheachúlach sa seicheamh éalaithe `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "seicheamh éalaithe `\\%c' úsáidte mar ghnáth `%c'"
@@ -1737,31 +1796,32 @@ msgstr "seicheamh éalaithe `\\%c' úsáidte mar ghnáth `%c'"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': níorbh fhéidir close-on-exec a shannadh: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "Níorbh fhéidir `%s' a oscailt chun scríobh ann: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "earráid inmheánach: %s le vname nialasach"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# úsáidte go hinmheánach mar `delete'"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# is feidhm iarmhíreach é seo atá le luchtú go dinimiciúil"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# cuntas gawk, cruthaíodh %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1770,7 +1830,7 @@ msgstr ""
"\t# TÚS bloc(anna)\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1779,7 +1839,7 @@ msgstr ""
"\t# Riail(eacha)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1788,7 +1848,7 @@ msgstr ""
"\t# CRÍOCH bloc(anna)\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1797,83 +1857,91 @@ msgstr ""
"\n"
"\t# Feidhmeanna, i liosta aibítreach\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "cineál gan súil %s i prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr " cineál anaithnid nóid %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "D'éirigh leis"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Níl a leithéid ann"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Slonn ionadaíochta neamhbhailí"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Carachtar neamhbhailí cóimheasa"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Aicme neamhbhailí charachtair"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Cúlslais ag deireadh"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Cúltagairt neamhbhailí"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ nó [^ corr"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( nó \\( corr"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ corr"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Inneachar neamhbhailí idir \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Deireadh raoin neamhbhailí"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Cuimhne ídithe"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Is neamhbhailí an slonn ionadaíochta roimhe seo"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Deireadh le slonn ionadaíochta gan choinne"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Slonn ionadaíochta rómhór"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") nó \\) corr"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Níl aon slonn ionadaíochta roimhe seo"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: rogha neamhcheadaithe -- %c\n"
+
#~ msgid "remote port invalid in `%s'"
#~ msgstr "cianphort neamhbhailí i `%s'"
@@ -1944,9 +2012,6 @@ msgstr "Níl aon slonn ionadaíochta roimhe seo"
#~ msgid "Unbalanced )"
#~ msgstr ") corr"
-#~ msgid "out of memory"
-#~ msgstr "cuimhne ídithe"
-
#~ msgid "field %d in FIELDWIDTHS, must be > 0"
#~ msgstr "caithfidh go bhfuil réimse %d i FIELDWIDTHS > 0"
diff --git a/po/gawk.pot b/po/gawk.pot
index 9a1644ae..7291cf88 100644
--- a/po/gawk.pot
+++ b/po/gawk.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: gawk 3.1.7\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -76,812 +76,841 @@ msgstr ""
msgid "%s: array_ref to %s\n"
msgstr ""
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr ""
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr ""
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr ""
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr ""
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr ""
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr ""
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr ""
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr ""
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr ""
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr ""
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr ""
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr ""
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr ""
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr ""
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr ""
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr ""
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr ""
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr ""
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr ""
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr ""
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr ""
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr ""
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr ""
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr ""
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr ""
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr ""
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr ""
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr ""
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr ""
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr ""
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr ""
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr ""
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr ""
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr ""
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr ""
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr ""
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr ""
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr ""
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr ""
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr ""
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr ""
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr ""
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr ""
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr ""
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr ""
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr ""
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr ""
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr ""
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr ""
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr ""
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr ""
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr ""
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr ""
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr ""
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr ""
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr ""
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr ""
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr ""
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
"or used as a variable or an array"
msgstr ""
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr ""
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr ""
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr ""
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr ""
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr ""
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr ""
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr ""
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr ""
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr ""
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr ""
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr ""
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr ""
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr ""
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr ""
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr ""
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr ""
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr ""
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr ""
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr ""
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr ""
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr ""
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr ""
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr ""
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr ""
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr ""
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr ""
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr ""
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr ""
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr ""
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr ""
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr ""
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr ""
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr ""
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr ""
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr ""
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr ""
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr ""
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr ""
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr ""
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr ""
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr ""
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr ""
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr ""
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr ""
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr ""
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr ""
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr ""
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr ""
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr ""
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr ""
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr ""
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr ""
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr ""
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr ""
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr ""
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr ""
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr ""
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr ""
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr ""
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr ""
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr ""
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr ""
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr ""
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr ""
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr ""
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr ""
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr ""
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr ""
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr ""
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr ""
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr ""
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr ""
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr ""
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr ""
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr ""
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr ""
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr ""
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr ""
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr ""
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr ""
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr ""
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr ""
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr ""
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr ""
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr ""
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr ""
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr ""
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr ""
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr ""
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr ""
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr ""
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr ""
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr ""
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr ""
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr ""
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr ""
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr ""
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr ""
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr ""
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr ""
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr ""
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr ""
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -889,42 +918,47 @@ msgid ""
"\n"
msgstr ""
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr ""
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr ""
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr ""
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr ""
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr ""
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr ""
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr ""
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr ""
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr ""
@@ -999,546 +1033,554 @@ msgstr ""
msgid "NF set to negative value"
msgstr ""
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr ""
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr ""
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr ""
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr ""
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr ""
-#: getopt.c:571 getopt.c:587
+#: getopt.c:570 getopt.c:586
#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+msgid "%s: option '%s' is ambiguous\n"
msgstr ""
-#: getopt.c:620 getopt.c:624
+#: getopt.c:619 getopt.c:623
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr ""
-#: getopt.c:633 getopt.c:638
+#: getopt.c:632 getopt.c:637
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr ""
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, c-format
-msgid "%s: option `%s' requires an argument\n"
+msgid "%s: option '%s' requires an argument\n"
msgstr ""
-#: getopt.c:738 getopt.c:741
+#: getopt.c:737 getopt.c:740
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
msgstr ""
-#: getopt.c:749 getopt.c:752
+#: getopt.c:748 getopt.c:751
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+msgid "%s: unrecognized option '%c%s'\n"
msgstr ""
-#: getopt.c:804 getopt.c:807
+#: getopt.c:800 getopt.c:803
#, c-format
-msgid "%s: illegal option -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
msgstr ""
-#: getopt.c:813 getopt.c:816
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr ""
-
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
msgstr ""
-#: getopt.c:937 getopt.c:953
+#: getopt.c:923 getopt.c:939
#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr ""
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr ""
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr ""
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr ""
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr ""
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr ""
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr ""
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr ""
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr ""
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr ""
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr ""
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr ""
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr ""
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr ""
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr ""
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr ""
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr ""
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr ""
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr ""
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr ""
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr ""
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr ""
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr ""
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr ""
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr ""
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr ""
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr ""
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr ""
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr ""
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr ""
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr ""
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr ""
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr ""
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr ""
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr ""
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr ""
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr ""
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr ""
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr ""
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr ""
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr ""
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr ""
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr ""
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr ""
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr ""
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr ""
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr ""
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr ""
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr ""
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr ""
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr ""
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr ""
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr ""
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr ""
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr ""
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr ""
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr ""
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr ""
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr ""
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr ""
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr ""
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr ""
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr ""
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr ""
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr ""
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr ""
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr ""
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr ""
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr ""
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr ""
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr ""
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr ""
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr ""
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr ""
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr ""
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr ""
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr ""
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr ""
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr ""
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr ""
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr ""
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr ""
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr ""
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr ""
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr ""
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr ""
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr ""
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr ""
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr ""
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr ""
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr ""
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr ""
@@ -1547,7 +1589,7 @@ msgstr ""
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1555,21 +1597,21 @@ msgid ""
"\n"
msgstr ""
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1581,7 +1623,7 @@ msgid ""
"\n"
msgstr ""
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1590,52 +1632,60 @@ msgid ""
"\n"
msgstr ""
-#: main.c:781
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr ""
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr ""
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr ""
-#: main.c:1180
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr ""
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr ""
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr ""
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr ""
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr ""
@@ -1661,24 +1711,31 @@ msgstr ""
msgid "can't convert string to float"
msgstr ""
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr ""
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr ""
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr ""
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr ""
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr ""
@@ -1688,131 +1745,136 @@ msgstr ""
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr ""
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr ""
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr ""
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr ""
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
"\n"
msgstr ""
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
"\n"
msgstr ""
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
"\n"
msgstr ""
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
"\t# Functions, listed alphabetically\n"
msgstr ""
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr ""
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr ""
+
+#: regcomp.c:133
msgid "Success"
msgstr ""
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr ""
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr ""
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr ""
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr ""
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr ""
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr ""
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr ""
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr ""
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr ""
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr ""
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr ""
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr ""
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr ""
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr ""
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr ""
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ""
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr ""
diff --git a/po/he.gmo b/po/he.gmo
index d98a50c6..941ab591 100644
--- a/po/he.gmo
+++ b/po/he.gmo
Binary files differ
diff --git a/po/he.po b/po/he.po
index 2702ac28..7bd5390a 100644
--- a/po/he.po
+++ b/po/he.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.1a\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2002-04-28 21:46+0300\n"
"Last-Translator: Eli Zaretskii <eliz@gnu.org>\n"
"Language-Team: Hebrew <eliz@gnu.org>\n"
@@ -76,325 +76,330 @@ msgstr "øèîøô åðéä %s\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: %s-ì (array_ref) äéðôä\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "äìåòô úøãâä ìåìëì áééç END ÷åìá"
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "äìåòô úøãâä ìåìëì áééç END ÷åìá"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "äúøãâä úà úåðùì ïéà ,úéðáåî äéö÷ðåô äðéä `%s'"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "äøòä åðéà êà ,C úôùá äøòä åîë äàøð `/%s/' éøìåâø éåèéá"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "äøòä åðéà êà ,C úôùá äøòä åîë äàøð `/%s/' éøìåâø éåèéá"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "úéìëú íåù äéäú àì äæ éåèéáìù ïëúé"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "END åà BEGIN ìù äìåòô úøãâäá `next'-á ùåîéù"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `nextfile'"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "äéö÷ðåô ìù èñ÷èðå÷á àìù `return'-á ùåîéù"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr "`print \"\"' úåéäì íúñä ïî êéøö END åà BEGIN éììëá èåùô `print'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "íéãáåò íðéà íéáìù éáåøî íééðååéë-åã íé÷éôà"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "êøò úîùä úàøåä ìù ïéîé ãöá éøìåâø éåèéá"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "`!~' åà `~' øåèøôåàì ìàîùî éøìåâø éåèéá"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "äàååùä ìù ïéîé ãöá éøìåâø éåèéá"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "END úìåòô êåúá øãâåî åðéà äééðôä àìì `getline'"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "úéìéáèøåô äðéà íééøâåñ àìì `length'-ì äàéø÷"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "POSIX ï÷úì ãåâéðá äðéä íééøâåñ àìì `length'-ì äàéø÷"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "êøòî ïééöîá éåâù øéáçú ìòá éåèéá"
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "éåôö-éúìá íå÷îá äøåù óåñ"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "äãå÷ôä úøåùî äìá÷úä ä÷éø úéðëú"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "åúàéø÷ íùì `%s' øå÷î õáå÷ úçéúôá (%s) äì÷ú"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "`%s' øå÷î õáå÷î äàéø÷á (%s) äì÷ú"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "÷éø åðéä `%s' øå÷î õáå÷"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "äøåù-óåñ åúá íééúñî åðéà øå÷îä õáå÷"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "õáå÷ä óñá `\\'-á íééúñî øåîâ-éúìá éøìåâø éåèéá"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "øåîâ-éúìá éøìåâø éåèéá"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "õáå÷ä óåñá øåîâ-éúìá éøìåâø éåèéá"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "éìéáèøåô åðéà äøåù êùîäì ïîéñë `\\ #...'-á ùåîéù"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "äøåùá ïåøçà åú åðéàù êåôä ïñëåì"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "`**=' øåèøôåà äùøî åðéà POSIX"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "`**=' øåèøôåàá êîåú åðéà ïùé awk"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "`**' øåèøôåà äùøî åðéà POSIX"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "ïùé awk-á êîúð åðéà `^=' øåèøôåà"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "ïùé awk-á êîúð åðéà `^' øåèøôåà"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "äøåîâ-éúìá úæåøçî"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "éåèéáá '%c' éåâù åú"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä äðéä `%s'"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "Bell úåãáòî úñøâá awk-ì úéôéöôñ äáçøä åðéä `%s'"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "`%s' äùøî åðéà POSIX"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "ïùé awk-á êîúð åðéà `%s'"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "!òø-òâô áùçð `goto'\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "íéèðîåâøà øôñîë %d ìá÷ì ìåëé åðéà %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `match' ìù éùéìù èðîåâøà"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "úéìëú íåù äì ïéà `%s' ìù ïåøçà èðîåâøàë äòåá÷ úæåøçî"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "éåðéù-øá è÷ééáåà åðéà `sub' ìù éùéìù èðîåâøà"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `close' ìù éðù èðîåâøà"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "èðîåâøà úîã÷áù ïåúçú-ó÷î ÷ìñì ùé :dcgettext(_\"...\")-á éåâù ùåîéù"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "èðîåâøà úîã÷áù ïåúçú-ó÷î ÷ìñì ùé :dncgettext(_\"...\")-á éåâù ùåîéù"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "`%s' äéö÷ðåôá %d 'ñî øèîøôì ääæ ,`%s' ,%d 'ñî øèîøô ìù åîù"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "éìáåìâ äðúùî ìò ìéôàî `%s' äéö÷ðåôá `%s' øèîøô"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "äáéúë íùì `%s' úçéúôá (%s) äì÷ú"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "éð÷ú úåàéâù õåøòì çìùð òåöéá ìéôåøô"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "`%s' úøéâñ úòá (%s) äì÷ú"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "!íééîòô äàø÷ð shadow_funcs()"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "øèîøô íùë ùîùì ìåëé åðéà äéö÷ðåô íù :`%s' äéö÷ðåôá"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "øèîøô íùë ùîùì ìåëé åðéà äéö÷ðåô íù :`%s' äéö÷ðåôá"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "úøãâåî øáë `%s' íùá äéö÷ðåô"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "úøãâåî äðéàù `%s' äéö÷ðåôì äàéø÷"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "úàø÷ð àì êà ,äøãâåä `%s' äéö÷ðåô"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "éðàéìåá êøò áéðî %d 'ñî øèîøôë òåá÷ éøìåâø éåèéá"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -403,502 +408,527 @@ msgstr ""
",`(' ïéáì äîù ïéá íéçååø íò `%s' äéö÷ðåôì äàéø÷\n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "`%%'-á ñôàá ä÷åìç ïåéñð"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s é\"ò \"%s\"-ì äáéúëá (%s) äì÷ú"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "úéèøãðèñ èìô úãéçé"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "äòåãé-éúìá äáéñî"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :exp"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "øúåîä íåçúá åðéà %g èðîåâøà :exp"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr "äáéúëì àì ,äàéø÷ì çåúô `%s' ÷éôà :õöåçä ï÷åøì ïúéð àì :fflush"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "äáéúëì àì ,äàéø÷ì çåúô `%s' õáå÷ :õöåçä ï÷åøì ïúéð àì :fflush"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "ìéá÷î êéìäú åà çåúô ÷éôà ,çåúô õáå÷ åðéà `%s' :fflush"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "úæåøçî åðéà ïåùàø èðîåâøà :index"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "úæåøçî åðéà éðù èðîåâøà :index"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :int"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `delete array'"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "úæåøçî åðéà èðîåâøà :length"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :log"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "%g éìéìù èðîåâøà íò àø÷ð :log"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "ãçà óàá åà íéèîøåôä ìëá åà øúåî `count$'-á ùåîéù"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "awk ìù íéèîøåôá ùåîéùì øåñà `$'"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "0-î ìåãâ úåéäì áééç `$' ãéì èðîåâøàä äðåî"
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "íéèðîåâøàä ìù ììåëä íøôñîî ìåãâ %d èðîåâøàä äðåî"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "èîøåôá äãå÷ðä éøçà òéôåäì ìåëé åðéà `$'"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "å÷åéã åà äãù áçåø ïééöîá èðîåâøàä äðåî øåáò `$' àöîð àì"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `l'"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `l'"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `L'"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `L'"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "çðæåä ;awk ìù èîøåôá úåòîùî øñç åðéä `h'"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "POSIX éô-ìò awk ìù èîøåôá òéôåäì ìåëé åðéà `h'"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "èîøåôä øåáò íéèðîåâøà ÷éôñî ïéà"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ íéèðîåâøàä éì åøîâð ïàë"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "äøîää úø÷á úåà ìéëî åðéà èîøåôä :[s]printf"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "èîøåôä øåáò íéèðîåâøà éãî øúåé"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "èðîåâøà óà ïéà :printf"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :sqrt"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "%g éìéìù èðîåâøà íò àø÷ð :sqrt"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "1-á óìçåä ,éåâù åðéä %g äìçúä ïééöî :substr"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "õöå÷é ,íìù øôñî åðéàù, %g äìçúä ïééöî ìù åëøò :substr"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr"
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "õöå÷é ,íìù øôñî åðéàù ,%g êøåà :substr"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "ñôà êøåàá äðéä øå÷îä úæåøçî :substr"
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "úæåøçîä óåñì øáòî åðéä %d äìçúä ïééöî :substr"
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr ""
"%d äëøåàå %d ïééöîá äúìéçúù úæåøçî-úúì ÷éôñî åðéà (%d) úæåøçî êøåà :substr"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "úæåøçî åðéà ïåùàø èðîåâøà :strftime"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "ä÷éø èîøåô úæåøçî :strftime"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :strftime"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "úæåøçî åðéà èðîåâøà :mktime"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "úæåøçî åðéà èðîåâøà :system"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "`%s' ìçåúî-éúìá äðúùîì äéðôä"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "úæåøçî åðéà èðîåâøà :tolower"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "úæåøçî åðéà èðîåâøà :toupper"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :atan2"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :atan2"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :sin"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :cos"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :srand"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "êøòî åðéà éùéìù èðîåâøà :match"
-#: builtin.c:2650
+#: builtin.c:2719
+#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "1-á óìçåä 0 åëøòù éùéìù èðîåâøà :gensub"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :lshift"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :strftime"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :lshift(%lf, %lf)"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "åööå÷é íéøåáù íéëøò :lshift(%lf, %lf)"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "úåéåôö-éúìá úåàöåú áéðé éãî ìåãâ äææä øåòéù :lshift(%lf, %lf)"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :rshift"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :strftime"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :rshift(%lf, %lf)"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "åööå÷é íéøåáù íéëøò :rshift(%lf, %lf)"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "úåéåôö-éúìá úåàöåú áéðé éãî ìåãâ äææä øåòéù :rshift(%lf, %lf)"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :and"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :atan2"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :and(%lf, %lf)"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "åööå÷é íéøåáù íéëøò :and(%lf, %lf)"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :or"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :atan2"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :or(%lf, %lf)"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "åööå÷é íéøåáù íéëøò :or(%lf, %lf)"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "øôñî åðéà ïåùàø èðîåâøà :xor"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "øôñî åðéà éðù èðîåâøà :atan2"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "úåéåôö-éúìá úåàöåú åáéðé íééìéìù íéëøò :xor(%lf, %lf)"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "åööå÷é íéøåáù íéëøò :xor(%lf, %lf)"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "øôñî åðéà èðîåâøà :compl"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "úåéåôö-éúìá úåàöåú áéðé éìéìù êøò :compl(%lf)"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "õöå÷é øåáù êøò :compl(%lf)"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "äðé÷ú íå÷éî úééøåâè÷ åðéà `%s' :dcgettext"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "%d ääåæî-éúìá âåñ ìòá node"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "genflags2str-á õöåç úùéìâ"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "øàì÷ñ ùøåãä èñ÷èðå÷á `%s' êøòîá ùåîéù ïåéñð"
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr "(`%s' êøòî) äàìåìä òåöéá êìäîá %d-î %d-ì äðåù êøòî ìù åìãåâ :for úàìåì"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "éìéáèøåô åðéà äàìåìì õåçî `break'"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "äàìåìì õåçî `break'-á ùîúùäì ïéà"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "éìéáèøåô åðéà äàìåìì õåçî `continue'"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "äàìåìì õåçî `continue'-á ùîúùäì ïéà"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "BEGIN éììë êåúî `next'-ì àåø÷ì ïéà"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "END éììë êåúî `next'-ì àåø÷ì ïéà"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "BEGIN éììë êåúî `nextfile'-ì àåø÷ì ïéà"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "END éììë êåúî `nextfile'-ì àåø÷ì ïéà"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "úéìëú-úìåèð äàøåä"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "êøòî åà äðúùîë `%s' äéö÷ðåô íùá ùîúùäì ïéà"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "`%s' ìçåúî-éúìá èðîåâøàì äéðôä"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "`%s' ìçåúî-éúìá äðúùîì äéðôä"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
"!øçà éåèéá ìù åëøåà éåðéùì åîøâ ãçà éåèéá áåùéç ìù éàåì-úåòôåú :concatenation"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "éàðú ìù èñ÷èðå÷á äîùäá ùåîéù"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "ñôàá ä÷åìç ïåéñð"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "`%%'-á ñôàá ä÷åìç ïåéñð"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tree_eval-á (%s) éåâù âåñ"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "`/='-á ñôàá ä÷åìç ïåéñð"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "`%%='-á ñôàá ä÷åìç ïåéñð"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "äúæøëäá øùàî íéèðîåâøà øúåé íò `%s' äéö÷ðåôì äàéø÷"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "úøãâåî äðéà `%s' äéö÷ðåô"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -909,42 +939,47 @@ msgstr ""
"\t# :úåéö÷ðåôì úåàéø÷ä úéðñçî\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "øôñî åðéàù êøò úåòöîàá äãùì äéðôä ïåéñð"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "ä÷éø úæåøçî úåòöîàá äãùì äéðôä ïåéñð"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "%d 'ñî äãùì äùéâ ïåéñð"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "úéðáåî äéö÷ðåô ìù äàöåúá êøò áéöäì ïéà"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `IGNORECASE'"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `BINMODE'"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "äðé÷ú `%sFMT' úøãâä åðéà `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "`LINT'-ì êøò úîùä á÷ò `--lint' ìèáî"
@@ -1019,556 +1054,562 @@ msgstr "úëîúð äðéà åæ äìåòô"
msgid "NF set to negative value"
msgstr "éìéìù êøò ìáé÷ NF"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "êøòî åðéà `split' ìù éðùä èðîåâøàä"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä äðéä `split'-ì éùéìù èðåîâøàë úñôåàî úæåøçî"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä åðéä `FIELDWIDTHS'"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä äðéä `FS'-ë úñôåàî úæåøçî"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
# The way the leading "%s:" is translated is a terrible kludge,
# but what can I do? FIXME.
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `%s' ïééôàî\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `--%s' ïééôàî\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `%c%s' ïééôàî\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s úéðëú øåáò `%c%s' ääåæî-éúìá ïééôàî\n"
-# "Illegal" is against GNU coding standards, but since Posix requires
-# it (see the comment below), let's say that in Hebrew as well...
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: é÷åç-éúìá ïééôàî -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s úéðëú øåáò éåâù ïééôàî -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: èðîåâøà áééçî ïééôàî -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `-W %s' ïééôàî\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "åúàéø÷ íùì `%s' õáå÷ úçéúôá (%s) äì÷ú"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "(%d èìô/èì÷ õåøò) `%s' úøéâñá (%s) äì÷ú"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "redirect() äéö÷ðåôá %s éåâù õò âåñ"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "ãáìá éøîåð êøò áéðî `%s' èìô/èì÷ úééðôäá éåèéá"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "ä÷éø úæåøçî áéðî `%s' èìô/èì÷ úééðôäá éåèéá"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr "éâåì éåèéá ìù äàöåú úåéäì ìåìò `%s' õáå÷ íù `%s' èìô/èì÷ úééðôäá"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "`%.*s' õáå÷ øåáò `>>'-á ïäå `>'-á ïä øúåéî ùåîéù"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "èìô êøåöì `%s' ÷éôà úçéúôá (%s) äì÷ú"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "èì÷ êøåöì `%s' ÷éôà úçéúôá (%s) äì÷ú"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "äé÷éú åðéä `%s' õáå÷"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "èìô/èì÷ êøåöì éðååéë-åã (socket) ò÷ùë `%s' úçéúôá (%s) äì÷ú"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "èìô/èì÷ êøåöì éðååéë-åã (pipe) ÷éôàë `%s' úçéúôá (%s) äì÷ú"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "`%s'-î äééðôäá (%s) äì÷ú"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "`%s' ìà äééðôäá (%s) äì÷ú"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr "èìô/èì÷ éöåøò áåáéø úìéçú ;íéçåúô íéöá÷ øôñî ìù úëøòî úìáâîì äòâä"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "`%s' úøéâñá (%s) äì÷ú"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "úéðîæ-åá íéçåúô èì÷ éöá÷ åà (pipes) íé÷éôà éãî øúåé"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "`from' åà `to' úåéäì áééç `close' ìù éðùä èðîåâøàä"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "ìéá÷î êéìäú åà çåúô ÷éôà ,çåúô õáå÷ åðéà `%.*s' :close"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "íìåòî äçúôð àìù äééðôä úøéâñ"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr "çðæåä éðùä èðîåâøàä ,`|&' é\"ò äçúôð àì `%s' äééðôä"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "(%d äì÷ú ãå÷) `%s'-ì ÷éôà úøéâñá (%s) äì÷ú"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "(%d äì÷ú ãå÷) `%s' õáå÷ úøéâñá (%s) äì÷ú"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "ùøåôîá øâñð àì (socket) `%s' ò÷ù"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "ùøåôîá øâñð àì (co-process) `%s' ìéá÷î êéìäú"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "ùøåôîá øâñð àì (pipe) `%s' ÷éôà"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "ùøåôîá øâñð àì `%s' õáå÷"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "éð÷ú èìô õåøòì äáéúëá (%s) äì÷ú"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "éð÷ú úåàéâù õåøòì äáéúëá (%s) äì÷ú"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "`%s'-ì ÷éôà ìù õöåç ïå÷éøá (%s) äì÷ú"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "`%s'-ì ìéá÷î êéìäú ÷éôà ìù õöåç ïå÷éøá (%s) äì÷ú"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "`%s' ìù õáå÷ éðåúð õöåç ïå÷éøá (%s) äì÷ú"
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "`%s'-á äéåâù úéîå÷î äàéöé"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "ïëåî íøè /inet/raw çå÷ì ,íéøòèöî"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "ãáìá root ùîúùîì øúåî `inet/raw'-á ùåîéù"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "ïëåî íøè /inet/raw úøù ,íéøòèöî"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "`%s' ãçåéî õáå÷ íùá ääåæî-éúìá åà øñç ìå÷åèåøô"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "íìù åðéà `%s' ãçåéî õáå÷"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "`/inet' øåáò ÷çåøî çøàî-áùçî íù øéãâäì äáåç"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "`/inet' øåáò ú÷çåøî äàéöé øéãâäì äáåç"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP úøåù÷úá äëéîú ïéà"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "äé÷éú åðéä `%s' õáå÷"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "`PROCINFO[\"%s\"]'-á ùîúùäì óéãò `%s' íå÷îá"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "`/dev/user' éðô-ìò óéãò `PROCINFO[...]'-á ùåîéù"
# This probably sounds nonsensical in Hebrew, but what can I do,
# given the original message text?
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "`%s' øåáò `%s' äìåòô ïôåà úçéúôá ïåìùë"
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "÷éôà úøéâñá (%s) äì÷ú"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "úá-úéðëúá stdout úøéâñá (%s) äì÷ú"
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "úá-úéðëúá stdout-ì ÷éôà ìåôëùá (dup: %s) äì÷ú"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "úá-úéðëúá stdin úøéâñá (%s) äì÷ú"
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "úá-úéðëúá stdin-ì ÷éôà ìåôëùá (dup: %s) äì÷ú"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "÷éôà úøéâñá (%s) äì÷ú"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "úá-úéðëúá stdout-ì ÷éôà ìåôëùá (dup: %s) äì÷ú"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "úá-úéðëúá stdin-ì ÷éôà ìåôëùá (dup: %s) äì÷ú"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "áà-úéðëúá stdout ÷éôà øåæçùá äì÷ú\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "áà-úéðëúá stdin ÷éôà øåæçùá äì÷ú\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "÷éôà úøéâñá (%s) äì÷ú"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&'-á äëéîú ïéà"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "`%s' ÷éôà úçéúôá (%s) äì÷ú"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "`%s' úá-úéðëúì êéìäú úøéöéá (fork: %s) äì÷ú"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "÷éø åðéä `%s' íéðåúð õáå÷"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "`%s' õáå÷ úàéø÷á (%s) äì÷ú"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "gawk-ì úéôéöôñ äáçøä äðéä `RS' ìù êøòá íéåú øôñîá äëéîú"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "ïåøëæä øîâð"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "gawk øåáò éèðååìø åðéà `-m[fr]' ïééôàî"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "`-m[fr] nnn' :-m ïééôàîá ùåîéù ïôåà"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "çðæåä ,%s úéðëú øåáò øëåî åðéà `-W %s' ïééôàî\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "çðæåä `--source'-ì ÷éø èðîåâøà"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: èðîåâøà áééçî ïééôàî -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "`--posix' ìéòôî :øãâåî `POSIXLY_CORRECT' äáéáñ äðúùî"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--traditional' ìò øáåâ `--posix'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--non-decimal-data' ìò øáåâ `--posix'/`--traditional'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "òãéî úçèáàá òåâôì äìåìò setuid root-ë %s úöøä"
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "stdin úìåòô ïôåà úòéá÷á (%s) äì÷ú"
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "stdout úìåòô ïôåà úòéá÷á (%s) äì÷ú"
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "stderr úìåòô ïôåà úòéá÷á (%s) äì÷ú"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "!ììë àöîðá äéä àì úéðëú ìù èñ÷è"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"%s [GNU åà POSIX ïåðâñá íéðééôàî] -f úéðëú-íù [--] õáå÷-íù ... :ùåîéù ïôåà\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"%s [GNU åà POSIX ïåðâñá íéðééôàî] [--] %cúéðëú%c õáå÷-íù ... :ùåîéù ïôåà\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr ":POSIX éðééôàî\t\t:íéëåøà GNU éðééôàî\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f úéðëú-õáå÷\t\t--file=úéðëú-õáå÷\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F úåãù-ãéøôî\t\t--field-separator=úåãù-ãéøôî\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v äðúùî=êøò\t\t--assign=äðúùî=êøò\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] êøò\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=õáå÷-íù]\t--dump-variables[=õáå÷-íù]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=õáå÷-íù]\t--profile[=õáå÷-íù]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=õáå÷-íù]\t--profile[=õáå÷-íù]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=úéðëú-èñ÷è\t--source=úéðëú-èñ÷è\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1577,7 +1618,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1589,7 +1630,7 @@ msgstr ""
" .ñôãåîä êéøãîá `Reporting Problems and Bugs' ä÷ñô\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1598,7 +1639,7 @@ msgstr ""
".èñ÷è úåéðáú ìù ãåáéòå äé÷øñì äôù åðéä gawk\n"
".éð÷ú èìôì áúåëå éð÷ú èì÷ õåøò àøå÷ àåä ìãçî úøéøáë\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1608,8 +1649,8 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1623,10 +1664,10 @@ msgstr ""
"\n"
"óåôëá äúåðùì åà/å äöéôäì íëúåëæ ;úéùôç äðëú äðéä åæ úéðëú\n"
" é\"ò øåàì àöåéä ,GNU General Public License ïåéùøä éàðúì\n"
-" íàå ,ïåéùøä ìù 3 àñøâá íà ;Free Software Foundation\n"
+" íàå ,ïåéùøä ìù 2 àñøâá íà ;Free Software Foundation\n"
" .øúåé úøçåàî àñøâ ìëá (íëì äøåîùä äéöôåàë)\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1639,7 +1680,7 @@ msgstr ""
",íéèøôì .úîéåñî úéìëú åæéàì äîàúä åà úåøéçñ ìù\n"
" .GNU General Public License-á åðééò àðà\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1647,50 +1688,60 @@ msgid ""
msgstr ""
";GNU General Public License ìù ÷úåòá äååìî úåéäì äøåîà åæ úéðëú\n"
"Free Software Foundation, Inc.-ì åáúë àðà ,åúåà íúìáé÷ àì íà\n"
-".51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\n"
+".59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "awk ìù POSIX úñøâá TAB úåéäì FS-ì íøåâ åðéà -Ft"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "äôö äãå÷ð éáåùéçá äâéøç"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "úéîéðô äðëú úàéâù :äøåîç äì÷ú"
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "úéîéðô äðëú úàéâù :äøåîç äì÷ú"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "úéîéðô äðëú úàéâù :äøåîç äì÷ú"
+
# FIXME: I wonder how many people will understand what "fd 2" means.
-#: main.c:1180
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "ùàøî çåúô åðéà %d èìô/èì÷ õåøò"
# FIXME: /dev/null might not be known to all.
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "/dev/null-ì %d èìô/èì÷ õåøò çåúôì ïúéð àì"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "%s :úëøòîá íéùîúùî úåöåá÷ ìò òãéî ïéà"
@@ -1720,24 +1771,31 @@ msgstr "fatal: "
msgid "can't convert string to float"
msgstr "øôñîì äøîäì úðúéð äðéà úæåøçî"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "úæåøçî óåñá êåôä ïñëåì"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "`**' øåèøôåàá êîåú åðéà ïùé awk"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "`\\x' âåñî äø÷á úåøãñ äùøî åðéà POSIX ï÷ú"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "`\\x' äø÷á úøãñá úåéìîéöãñ÷ä úåøôñá ùîúùäì ïéà"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "éìåìéî åúë ìôåè `\\%c' äø÷á úøãñá `%c' åú"
@@ -1747,31 +1805,31 @@ msgstr "éìåìéî åúë ìôåè `\\%c' äø÷á úøãñá `%c' åú"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s' øåáò close-on-exec ïééôàî úìòôäá (fcntl: %s) äì÷ú"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "äáéúë êøåöì `%s' úçéúô úòá (%s) äì÷ú"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "ñôåàî åìù vname-äù Node_var :úéîéðô äðëú úàéâù"
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# %s êéøàúî gawk ìù ìéôåøô\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1780,7 +1838,7 @@ msgstr ""
"\t# BEGIN ÷åìá\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1789,7 +1847,7 @@ msgstr ""
"\t# (íé)ììë\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1798,7 +1856,7 @@ msgstr ""
"\t# END ÷åìá\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1807,143 +1865,119 @@ msgstr ""
"\n"
"\t# úéá-óìà øãñá ,úåéö÷ðåô\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "prec_level-á %s éåâù âåñ"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "%d ääåæî-éúìá âåñ ìòá node"
+
+#: regcomp.c:133
msgid "Success"
msgstr "äçìöä"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "äîéàúî úæåøçî äàöîð àì"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "éåâù éøìåâø éåèéá"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "øãâåî-éúìá øåãéñ åú"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "íéåú úöåá÷ ìù øãâåî-éúìá íù"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "`\\' éøåçà ïñëåìá íééúñî éøìåâø éåèéá"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "íãå÷ éåèéá-úúì äéåâù äééðôä"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "âåæ-ïá åì ïéàù [^ åà ["
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "âåæ-ïá åì ïéàù \\( åà ("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "âåæ-ïá åì ïéàù \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} êåúá éåâù äðáî"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "íéåú íåçú ìù äéåâù äøãâä"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "ïåøëæä øîâð"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "íéé÷ åðéà åà éåâù íãå÷ éøìåâø éåèéá"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "éãî íã÷åî íééúñî éøìåâø éåèéá"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "éãî áëøåî åà ìåãâ éøìåâø éåèéá"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "âåæ-ïá åì ïéàù \\) åà )"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "íãå÷ éøìåâø éåèéá ïéà"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "`%s'-á äéåâù ú÷çåøî äàéöé"
-
-#~ msgid "function %s called\n"
-#~ msgstr "`%s' äéö÷ðåôì äàéø÷\n"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "0-î ìåãâ úåéäì áééç FIELDWIDTHS-á %d 'ñî äãù"
-
-#, fuzzy
-#~ msgid "or used as a variable or an array"
-#~ msgstr "êøòî åà äðúùîë `%s' äéö÷ðåô íùá ùîúùäì ïéà"
-
-#~ msgid "regex match failed, not enough memory to match string \"%.*s%s\""
-#~ msgstr ""
-#~ "\"%.*s%s\" úæåøçî úîàúäì ïåøëæ éã ïéà ,ìùëð éøìåâø éåèéáì äîàúä ùåôéç"
-
-#, fuzzy
-#~ msgid "substr: length %g is < 0"
-#~ msgstr "0-î ìåãâ øôñî åððéà %g êøåà :substr"
+# "Illegal" is against GNU coding standards, but since Posix requires
+# it (see the comment below), let's say that in Hebrew as well...
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: é÷åç-éúìá ïééôàî -- %c\n"
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "êøòîë `%s' äðúùîá éåâù ùåîéù :delete"
-#, fuzzy
-#~ msgid "%s: gvar_ref to %s\n"
-#~ msgstr "%s: %s-ì (array_ref) äéðôä\n"
-
#~ msgid "asort: first argument is not an array"
#~ msgstr "êøòî åðéà ïåùàø èðîåâøà :asort"
#~ msgid "asort: second argument is not an array"
#~ msgstr "êøòî åðéà éðù èðîåâøà :asort"
-#, fuzzy
-#~ msgid ""
-#~ "attempt to use array parameter `%s' that was passed from global scalar `%"
-#~ "s'"
-#~ msgstr "êøòî äéä åìéàë `%s' éøì÷ñ øèîøôá ùåîéù ïåéñð"
+#~ msgid "invalid syntax in name `%s' for variable assignment"
+#~ msgstr "êøò úîùäá `%s' äðúùî íù ìù éåâù øéáçú"
#~ msgid "internal error: Node_var_array with null vname"
#~ msgstr "ñôåàî åìù vname-äù Node_var_array :úéîéðô äðëú úàéâù"
-#~ msgid "BEGIN blocks must have an action part"
-#~ msgstr "äìåòô úøãâä ìåìëì áééç BEGIN ÷åìá"
-
-#~ msgid "`nextfile' used in BEGIN or END action"
-#~ msgstr "END åà BEGIN ìù äìåòô úøãâäá `nextfile'-á ùåîéù"
-
-#~ msgid "gsub third parameter is not a changeable object"
-#~ msgstr "éåðéù-øá è÷ééáåà åðéà `gsub' ìù éùéìù èðîåâøà"
-
#~ msgid "or used in other expression context"
#~ msgstr "øçà éåèéá ìù èñ÷èðå÷á äá ùåîéù åà"
#~ msgid "`%s' is a function, assignment is not allowed"
#~ msgstr "äøåñà äá êøò úîùä ,äéö÷ðåô àéä `%s'"
-#~ msgid "internal error: file `%s', line %d\n"
-#~ msgstr "`%s' õáå÷ ìù %d äøåùá úéîéðô äðëú äàéâù\n"
+#~ msgid "BEGIN blocks must have an action part"
+#~ msgstr "äìåòô úøãâä ìåìëì áééç BEGIN ÷åìá"
+
+#~ msgid "`nextfile' used in BEGIN or END action"
+#~ msgstr "END åà BEGIN ìù äìåòô úøãâäá `nextfile'-á ùåîéù"
#~ msgid "non-redirected `getline' undefined inside BEGIN or END action"
#~ msgstr "END åà BEGIN úìåòô êåúá øãâåî åðéà äééðôä àìì `getline'"
@@ -1951,6 +1985,9 @@ msgstr "íãå÷ éøìåâø éåèéá ïéà"
#~ msgid "fptr %x not in tokentab\n"
#~ msgstr "tokentab-á àöîð àì fptr %x\n"
+#~ msgid "gsub third parameter is not a changeable object"
+#~ msgstr "éåðéù-øá è÷ééáåà åðéà `gsub' ìù éùéìù èðîåâøà"
+
#~ msgid "Unbalanced ["
#~ msgstr "âåæ-ïá åì ïéàù ["
@@ -1972,8 +2009,18 @@ msgstr "íãå÷ éøìåâø éåèéá ïéà"
#~ msgid "Unbalanced )"
#~ msgstr "âåæ-ïá åì ïéàù )"
-#~ msgid "out of memory"
-#~ msgstr "ïåøëæä øîâð"
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "0-î ìåãâ úåéäì áééç FIELDWIDTHS-á %d 'ñî äãù"
-#~ msgid "invalid syntax in name `%s' for variable assignment"
-#~ msgstr "êøò úîùäá `%s' äðúùî íù ìù éåâù øéáçú"
+#~ msgid "function %s called\n"
+#~ msgstr "`%s' äéö÷ðåôì äàéø÷\n"
+
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "`%s'-á äéåâù ú÷çåøî äàéöé"
+
+#~ msgid "internal error: file `%s', line %d\n"
+#~ msgstr "`%s' õáå÷ ìù %d äøåùá úéîéðô äðëú äàéâù\n"
+
+#~ msgid "regex match failed, not enough memory to match string \"%.*s%s\""
+#~ msgstr ""
+#~ "\"%.*s%s\" úæåøçî úîàúäì ïåøëæ éã ïéà ,ìùëð éøìåâø éåèéáì äîàúä ùåôéç"
diff --git a/po/id.gmo b/po/id.gmo
new file mode 100644
index 00000000..e0db9b3a
--- /dev/null
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
new file mode 100644
index 00000000..6c6bd091
--- /dev/null
+++ b/po/id.po
@@ -0,0 +1,1961 @@
+# Pesan bahasa indonesia untuk gawk.
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gawk package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gawk 3.1.6e\n"
+"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-07-11 14:00+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: array.c:112
+#, c-format
+msgid "attempt to use function `%s' as an array"
+msgstr "mencoba untuk menggunakan fungsi `%s' sebagai sebuah array"
+
+#: array.c:115
+#, c-format
+msgid "attempt to use scalar parameter `%s' as an array"
+msgstr "mencoba untuk menggunakan parameter `%s' sebagai sebuah array"
+
+#: array.c:118
+#, c-format
+msgid "attempt to use scalar `%s' as array"
+msgstr "mencoba untuk menggunakan skalar `%s' sebagai sebuah array"
+
+#: array.c:156
+#, c-format
+msgid "from %s"
+msgstr "dari %s"
+
+#: array.c:514
+#, c-format
+msgid "reference to uninitialized element `%s[\"%s\"]'"
+msgstr "referensi ke elemen tidak terinisialisasi `%s[\"%s\"]'"
+
+#: array.c:520
+#, c-format
+msgid "subscript of array `%s' is null string"
+msgstr "subscript dari array `%s' adalah string null"
+
+#: array.c:624
+#, c-format
+msgid "delete: index `%s' not in array `%s'"
+msgstr "delete: indeks `%s' tidak dalam array `%s'"
+
+#: array.c:793
+#, c-format
+msgid "%s: empty (null)\n"
+msgstr "%s: kosong (null)\n"
+
+#: array.c:798
+#, c-format
+msgid "%s: empty (zero)\n"
+msgstr "%s: kosong (nol)\n"
+
+#: array.c:802
+#, c-format
+msgid "%s: table_size = %d, array_size = %d\n"
+msgstr "%s: table_size = %d, array_size = %d\n"
+
+#: array.c:831
+#, c-format
+msgid "%s: is parameter\n"
+msgstr "%s: adalah parameter\n"
+
+#: array.c:836
+#, c-format
+msgid "%s: array_ref to %s\n"
+msgstr "%s: array_ref ke %s\n"
+
+#: awkgram.y:218
+#, c-format
+msgid "%s blocks must have an action part"
+msgstr "%s blok harus memiliki sebuah bagian aksi"
+
+#: awkgram.y:221
+msgid "each rule must have a pattern or an action part"
+msgstr "setiap aturan harus memiliki sebuah pola atau sebuah bagian aksi"
+
+#: awkgram.y:257 awkgram.y:266
+msgid "old awk does not support multiple `BEGIN' or `END' rules"
+msgstr "awk lama tidak mendukung multiple aturan `BEGIN' atau `END'"
+
+#: awkgram.y:285
+#, c-format
+msgid "`%s' is a built-in function, it cannot be redefined"
+msgstr "`%s' adalah sebuah fungsi bawaan, ini tidak dapat di redefinisi"
+
+#: awkgram.y:331
+msgid "regexp constant `//' looks like a C++ comment, but is not"
+msgstr "konstanta regexp `//' tampak seperti sebuah komentar C++, tetapi bukan"
+
+#: awkgram.y:334
+#, c-format
+msgid "regexp constant `/%s/' looks like a C comment, but is not"
+msgstr "konstanta regexp `/%s/' tampak seperti sebuah komentar C, tetapi bukan"
+
+#: awkgram.y:361 awkgram.y:656
+msgid "statement may have no effect"
+msgstr "pernyataan mungkin tidak memiliki pengaruh"
+
+#: awkgram.y:458 awkgram.y:482
+#, c-format
+msgid "`%s' used in %s action"
+msgstr "`%s' digunakan dalam aksi %s"
+
+#: awkgram.y:473 awkgram.y:477
+msgid "`nextfile' is a gawk extension"
+msgstr "`nextfile' adalah sebuah ekstensi gawk"
+
+#: awkgram.y:492
+msgid "`return' used outside function context"
+msgstr "`return' digunakan diluar konteks fungsi"
+
+#: awkgram.y:534
+msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
+msgstr ""
+"plain `print' dalam aturan BEGIN atau AKHIR seharusnya berupa `print \"\"'"
+
+#: awkgram.y:550 awkgram.y:558
+msgid "`delete array' is a gawk extension"
+msgstr "`delete array' adalah sebuah ekstensi gawk"
+
+#: awkgram.y:572 awkgram.y:580
+msgid "`delete(array)' is a non-portable tawk extension"
+msgstr "`delete(array)' adalah sebuah ekstensi tidak portabel tawk"
+
+#: awkgram.y:624
+#, c-format
+msgid "duplicate case values in switch body: %s"
+msgstr "duplikasi nilai case dalam tubuh switch: %s"
+
+#: awkgram.y:634
+msgid "Duplicate `default' detected in switch body"
+msgstr "Duplikasi `default' terdeteksi dalam tubuh switch"
+
+#: awkgram.y:723
+msgid "multistage two-way pipelines don't work"
+msgstr "multi tahap dua jalur pipe lines tidak bekerja"
+
+#: awkgram.y:814
+msgid "regular expression on right of assignment"
+msgstr "ekspresi regular di assignmen kanan"
+
+#: awkgram.y:824
+msgid "regular expression on left of `~' or `!~' operator"
+msgstr "ekspresi regular di kiri dari operator `~' atau `!~'"
+
+#: awkgram.y:830 awkgram.y:903
+msgid "old awk does not support the keyword `in' except after `for'"
+msgstr "awk lama tidak mendukung kata kunci `in' kecuali setelah `for'"
+
+#: awkgram.y:836
+msgid "regular expression on right of comparison"
+msgstr "ekspresi regular di kanan dari perbandingan"
+
+#: awkgram.y:893
+msgid "non-redirected `getline' undefined inside END action"
+msgstr "tidak terdireksi `getline' tidak terdefinisi didalam aksi END"
+
+#: awkgram.y:904
+msgid "old awk does not support multidimensional arrays"
+msgstr "awk lama tidak mendukung array multi dimensi"
+
+#: awkgram.y:950
+msgid "call of `length' without parentheses is not portable"
+msgstr "panggilan dari `length' tanpa tanda kurung tidak portabel"
+
+#: awkgram.y:955
+msgid "call of `length' without parentheses is deprecated by POSIX"
+msgstr ""
+"panggilan dari `length' tanpa tanda kurung sudah ditinggalkan oleh POSIX"
+
+#: awkgram.y:1009
+msgid "use of non-array as array"
+msgstr "penggunaan dari bukan array sebagai array"
+
+#: awkgram.y:1012
+msgid "invalid subscript expression"
+msgstr "ekspresi subscript tidak valid"
+
+#: awkgram.y:1257
+msgid "unexpected newline or end of string"
+msgstr "tidak terduga baris baru atau akhir dari string"
+
+#: awkgram.y:1374
+msgid "empty program text on command line"
+msgstr "aplikasi teks kosong di baris perintah"
+
+#: awkgram.y:1430
+#, c-format
+msgid "can't open source file `%s' for reading (%s)"
+msgstr "tidak dapat membuka berkas sumber `%s' untuk pembacaan (%s)"
+
+#: awkgram.y:1528
+#, c-format
+msgid "can't read sourcefile `%s' (%s)"
+msgstr "tidak dapat membaca berkas sumber `%s' (%s)"
+
+#: awkgram.y:1536
+#, c-format
+msgid "source file `%s' is empty"
+msgstr "berkas sumber `%s' kosong"
+
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
+msgid "source file does not end in newline"
+msgstr "berkas sumber tidak berakhir dalam baris baru"
+
+#: awkgram.y:1790
+msgid "unterminated regexp ends with `\\' at end of file"
+msgstr "tidak terakhiri regexp akhir denga `\\' diakhir dari berkas"
+
+#: awkgram.y:1814
+#, c-format
+msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
+msgstr "%s: %d: tawk regex pemodifikasi `/.../%c' tidak bekerja dalam gawk"
+
+#: awkgram.y:1818
+#, c-format
+msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
+msgstr "tawk regex pemodifikasi `/.../%c' tidak bekerja dalam gawk"
+
+#: awkgram.y:1825
+msgid "unterminated regexp"
+msgstr "tidak terselesaikan regexp"
+
+#: awkgram.y:1828
+msgid "unterminated regexp at end of file"
+msgstr "tidak terselesaikan di akhir dari berkas"
+
+#: awkgram.y:1897
+msgid "use of `\\ #...' line continuation is not portable"
+msgstr "penggunaan dari `\\ #...' kelanjutan baris tidak portabel"
+
+#: awkgram.y:1910
+msgid "backslash not last character on line"
+msgstr "backslash bukan karakter terakhir di baris"
+
+#: awkgram.y:1955
+msgid "POSIX does not allow operator `**='"
+msgstr "POSIX tidak mengijinkan operator `**='"
+
+#: awkgram.y:1957
+msgid "old awk does not support operator `**='"
+msgstr "awk lama tidak mendukung operator `**='"
+
+#: awkgram.y:1966
+msgid "POSIX does not allow operator `**'"
+msgstr "POSIX tidak mengijinkan operator `**'"
+
+#: awkgram.y:1968
+msgid "old awk does not support operator `**'"
+msgstr "awk lama tidak mendukung operator `**'"
+
+#: awkgram.y:1999
+msgid "operator `^=' is not supported in old awk"
+msgstr "operator `^=' tidak didukung dalam awk lama"
+
+#: awkgram.y:2007
+msgid "operator `^' is not supported in old awk"
+msgstr "operator `^' tidak didukung dalam awk lama"
+
+#: awkgram.y:2091 awkgram.y:2106
+msgid "unterminated string"
+msgstr "string tidak terselesaikan"
+
+#: awkgram.y:2291
+#, c-format
+msgid "invalid char '%c' in expression"
+msgstr "karakter '%c' tidak valid dalam ekspresi"
+
+#: awkgram.y:2339
+#, c-format
+msgid "`%s' is a gawk extension"
+msgstr "`%s' adalah sebuah ekstensi gawk"
+
+#: awkgram.y:2342
+#, c-format
+msgid "`%s' is a Bell Labs extension"
+msgstr "`%s' adalah sebuah ekstensi Bell Labs"
+
+#: awkgram.y:2345
+#, c-format
+msgid "POSIX does not allow `%s'"
+msgstr "POSIX tidak mengijinkan `%s'"
+
+#: awkgram.y:2349
+#, c-format
+msgid "`%s' is not supported in old awk"
+msgstr "`%s' tidak didukung dalam awk lama"
+
+#: awkgram.y:2375
+msgid "`goto' considered harmful!\n"
+msgstr "`goto' dipertimbangkan berbahaya!\n"
+
+#: awkgram.y:2437
+#, c-format
+msgid "%d is invalid as number of arguments for %s"
+msgstr "%d tidak valid sebagai jumlah dari argumen untuk %s"
+
+#: awkgram.y:2456 awkgram.y:2459
+msgid "match: third argument is a gawk extension"
+msgstr "cocok: argumen ketiga adalah sebuah ekstensi gawk"
+
+#: awkgram.y:2472
+#, c-format
+msgid "%s: string literal as last arg of substitute has no effect"
+msgstr ""
+"%s: literal string sebagai argumen terakhir dari pergantian tidak memiliki "
+"efek"
+
+#: awkgram.y:2475
+#, c-format
+msgid "%s third parameter is not a changeable object"
+msgstr "%s parameter ketika bukan sebuah objek yang dapat diubah"
+
+#: awkgram.y:2502 awkgram.y:2505
+msgid "close: second argument is a gawk extension"
+msgstr "tutup: argumen kedua adalah sebuah ekstensi gawk"
+
+#: awkgram.y:2515
+msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
+msgstr ""
+"penggunaan dari dcgettext(_\"...\") adalah tidak benar: hapus garis bawah "
+"yang mengawali"
+
+#: awkgram.y:2530
+msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
+msgstr ""
+"penggunaan dari dcngettext(_\"...\") adalah tidak benar: hapus garis bawah "
+"yang mengawali"
+
+#: awkgram.y:2602
+#, c-format
+msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
+msgstr "fungsi `%s': parameter #%d, `%s', duplikasi paramter #%d"
+
+#: awkgram.y:2635
+#, c-format
+msgid "function `%s': parameter `%s' shadows global variable"
+msgstr "fungsi `%s': parameter `%s' bayangan variabel global"
+
+#: awkgram.y:2747
+#, c-format
+msgid "could not open `%s' for writing (%s)"
+msgstr "tidak dapat membuka `%s' untuk menulis (%s)"
+
+#: awkgram.y:2748 profile.c:95
+msgid "sending profile to standard error"
+msgstr "mengirim profile ke standar error"
+
+#: awkgram.y:2780
+#, c-format
+msgid "%s: close failed (%s)"
+msgstr "%s: tutup gagal (%s)"
+
+#: awkgram.y:2901
+msgid "shadow_funcs() called twice!"
+msgstr "shadow_funcs() dipanggil dua kali!"
+
+#: awkgram.y:2928
+msgid "there were shadowed variables."
+msgstr "disana tidak ada variabel bayangan."
+
+#: awkgram.y:3001
+#, c-format
+msgid "function `%s': can't use function name as parameter name"
+msgstr ""
+"fungsi `%s': tidak dapat menggunakan nama fungsi sebagai nama parameter"
+
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+"fungsi `%s': tidak dapat menggunakan variabel `%s' sebagai fungsi parameter"
+
+#: awkgram.y:3014
+#, c-format
+msgid "function name `%s' previously defined"
+msgstr "nama fungsi `%s' sebelumnya telah didefinisikan"
+
+#: awkgram.y:3165 awkgram.y:3171
+#, c-format
+msgid "function `%s' called but never defined"
+msgstr "fungsi `%s' dipanggil tetapi tidak pernah didefinisikan"
+
+#: awkgram.y:3174
+#, c-format
+msgid "function `%s' defined but never called"
+msgstr "fungsi `%s' didefinisikan tetapi tidak pernah dipanggil"
+
+#: awkgram.y:3201
+#, c-format
+msgid "regexp constant for parameter #%d yields boolean value"
+msgstr "konstanta regexp untuk parameter #%d menghasilkan nilai boolean"
+
+#: awkgram.y:3245
+#, c-format
+msgid ""
+"function `%s' called with space between name and `(',\n"
+"or used as a variable or an array"
+msgstr ""
+"fungsi `%s' dipanggil dengan spasi diantara nama dan `(',\n"
+"atau gunakan sebagai sebuah variabel atau sebuah array"
+
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "pembagian dengan nol dicoba dalam `%%'"
+
+#: builtin.c:122
+#, c-format
+msgid "%s to \"%s\" failed (%s)"
+msgstr "%s ke \"%s\" gagal (%s)"
+
+#: builtin.c:123
+msgid "standard output"
+msgstr "standar keluaran"
+
+#: builtin.c:124
+msgid "reason unknown"
+msgstr "alasan tidak diketahui"
+
+#: builtin.c:137
+msgid "exp: received non-numeric argument"
+msgstr "exp: diterima argumen bukan-numerik"
+
+#: builtin.c:143
+#, c-format
+msgid "exp: argument %g is out of range"
+msgstr "exp: argumen %g diluar dari jangkauan"
+
+#: builtin.c:201
+#, c-format
+msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
+msgstr ""
+"fflush: tidak dapat flush: pipe `%s' dibuka untuk dibaca, bukan ditulis"
+
+#: builtin.c:204
+#, c-format
+msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
+msgstr ""
+"fflush: tidak dapat flush: berkas `%s' dibuka untuk dibaca, bukan ditulis"
+
+#: builtin.c:216
+#, c-format
+msgid "fflush: `%s' is not an open file, pipe or co-process"
+msgstr "fflush: `%s' bukan sebuah berkas terbuka, pipe atau co-proses"
+
+#: builtin.c:310
+msgid "index: received non-string first argument"
+msgstr "indeks: diterima argumen pertama bukan string"
+
+#: builtin.c:312
+msgid "index: received non-string second argument"
+msgstr "indeks: diterima argumen kedua bukan string"
+
+#: builtin.c:434
+msgid "int: received non-numeric argument"
+msgstr "int: diterima argumen bukan numerik"
+
+#: builtin.c:464
+msgid "`length(array)' is a gawk extension"
+msgstr "`length(array)' adalah sebuah ekstensi gawk"
+
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "length: argument tidak terketik akan dipaksa ke skalar"
+
+#: builtin.c:477
+msgid "length: received non-string argument"
+msgstr "length: diterima argumen bukan-string"
+
+#: builtin.c:508
+msgid "log: received non-numeric argument"
+msgstr "log: diterima argumen bukan numerik"
+
+#: builtin.c:511
+#, c-format
+msgid "log: received negative argument %g"
+msgstr "log: diterima argumen negatif %g"
+
+#: builtin.c:719 builtin.c:722
+msgid "must use `count$' on all formats or none"
+msgstr "harus menggunakan `count$' di semua format atau tidak sama sekali"
+
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "lebar daerah diabaikan untuk penspesifikasi `%%%%'"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "ketepatan diabaikan untuk penspesifikasi `%%%%'"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr "lebar daerah dan presisi diabaikan untuk penspesifikasi `%%%%'"
+
+#: builtin.c:838
+msgid "`$' is not permitted in awk formats"
+msgstr "`$' tidak diijinkan dalam format awk"
+
+#: builtin.c:844
+msgid "arg count with `$' must be > 0"
+msgstr "arg count dengan `$' harus > 0"
+
+#: builtin.c:846
+#, c-format
+msgid "arg count %ld greater than total number of supplied arguments"
+msgstr ""
+"arg count %ld lebih besar dari jumlah total dari argumen yang diberikan"
+
+#: builtin.c:848
+msgid "`$' not permitted after period in format"
+msgstr "`$' tidak diijinkan setelah periode dalam format"
+
+#: builtin.c:861
+msgid "no `$' supplied for positional field width or precision"
+msgstr "tidak ada `$' yang diberikan untuk posisional field width atau presisi"
+
+#: builtin.c:927
+msgid "`l' is meaningless in awk formats; ignored"
+msgstr "`l' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:931
+msgid "`l' is not permitted in POSIX awk formats"
+msgstr "`l' tidak diijinkan dalam format POSIX awk"
+
+#: builtin.c:942
+msgid "`L' is meaningless in awk formats; ignored"
+msgstr "`L' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:946
+msgid "`L' is not permitted in POSIX awk formats"
+msgstr "`L' tidak diijinkan dalam format awk POSIX"
+
+#: builtin.c:957
+msgid "`h' is meaningless in awk formats; ignored"
+msgstr "`h' tidak berarti dalam format awk; diabaikan"
+
+#: builtin.c:961
+msgid "`h' is not permitted in POSIX awk formats"
+msgstr "`h' tidak diijinkan dalam format awk POSIX"
+
+#: builtin.c:1236
+#, c-format
+msgid "[s]printf: value %g is out of range for `%%%c' format"
+msgstr "[s]printf: nilai %g diluar dari jangkauan untuk format `%%%c'"
+
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+"mengabaikan format tidak dikenal karakter penspesifikasi `%c': tidak ada "
+"argumen yang diubah"
+
+#: builtin.c:1322
+msgid "not enough arguments to satisfy format string"
+msgstr "tidak cukup argumen untuk memuaskan format string"
+
+#: builtin.c:1324
+msgid "^ ran out for this one"
+msgstr "^ kehabisan untuk yang ini"
+
+#: builtin.c:1330
+msgid "[s]printf: format specifier does not have control letter"
+msgstr "[s]printf: penspesifikasi format tidak memiliki pengontrol huruf"
+
+#: builtin.c:1333
+msgid "too many arguments supplied for format string"
+msgstr "terlalu banyak argumen diberikan untuk format string"
+
+#: builtin.c:1408 builtin.c:1411
+msgid "printf: no arguments"
+msgstr "printf: tidak ada argumen"
+
+#: builtin.c:1435
+msgid "sqrt: received non-numeric argument"
+msgstr "sqrt: diterima argumen bukan numerik"
+
+#: builtin.c:1439
+#, c-format
+msgid "sqrt: called with negative argument %g"
+msgstr "sqrt: dipanggil dengan argumen %g negatif"
+
+#: builtin.c:1463
+#, c-format
+msgid "substr: start index %g is invalid, using 1"
+msgstr "substr: awal indeks %g tidak valid, menggunakan 1"
+
+#: builtin.c:1468
+#, c-format
+msgid "substr: non-integer start index %g will be truncated"
+msgstr "substr: awal indeks %g bukan integer akan dipotong"
+
+#: builtin.c:1494
+#, c-format
+msgid "substr: length %g is not >= 1"
+msgstr "substr: panjang %g tidak >= 1"
+
+#: builtin.c:1496
+#, c-format
+msgid "substr: length %g is not >= 0"
+msgstr "substr: panjang %g tidak >= 0"
+
+#: builtin.c:1503
+#, c-format
+msgid "substr: non-integer length %g will be truncated"
+msgstr "substr: panjang bukan integer %g akan dipotong"
+
+#: builtin.c:1508
+#, c-format
+msgid "substr: length %g too big for string indexing, truncating to %g"
+msgstr ""
+"substr: panjang %g terlalu besar untuk pengindeksan string, dipotong ke %g"
+
+#: builtin.c:1520
+msgid "substr: source string is zero length"
+msgstr "substr: sumber string memiliki panjang nol"
+
+#: builtin.c:1536
+#, c-format
+msgid "substr: start index %g is past end of string"
+msgstr "substr: awal indeks %g melewati akhir dari string"
+
+#: builtin.c:1544
+#, c-format
+msgid ""
+"substr: length %g at start index %g exceeds length of first argument (%lu)"
+msgstr ""
+"substr: panjang %g di awal indeks %g melewati panjang dari argumen pertama (%"
+"lu)"
+
+#: builtin.c:1621
+msgid "strftime: received non-string first argument"
+msgstr "strftime: diterima argumen pertama bukan string"
+
+#: builtin.c:1627
+msgid "strftime: received empty format string"
+msgstr "strftime: diterima format string kosong"
+
+#: builtin.c:1636
+msgid "strftime: received non-numeric second argument"
+msgstr "strftime: diterima argumen kedua bukan numerik"
+
+#: builtin.c:1713
+msgid "mktime: received non-string argument"
+msgstr "mktime: diterima argumen bukan string"
+
+#: builtin.c:1758
+msgid "system: received non-string argument"
+msgstr "system: diterima argumen bukan string"
+
+#: builtin.c:1879 eval.c:2145
+#, c-format
+msgid "reference to uninitialized field `$%d'"
+msgstr "referensi ke field tidak terinisialisasi `$%d'"
+
+#: builtin.c:1984
+msgid "tolower: received non-string argument"
+msgstr "tolower: diterima argumen bukan string"
+
+#: builtin.c:2014
+msgid "toupper: received non-string argument"
+msgstr "toupper: diterima argumen bukan string"
+
+#: builtin.c:2047
+msgid "atan2: received non-numeric first argument"
+msgstr "atan2: diterima argumen pertama bukan numerik"
+
+#: builtin.c:2049
+msgid "atan2: received non-numeric second argument"
+msgstr "atan2: diterima argumen kedua bukan numerik"
+
+#: builtin.c:2068
+msgid "sin: received non-numeric argument"
+msgstr "sin: diterima argumen bukan numerik"
+
+#: builtin.c:2084
+msgid "cos: received non-numeric argument"
+msgstr "cos: diterima argumen bukan numerik"
+
+#: builtin.c:2137
+msgid "srand: received non-numeric argument"
+msgstr "srand: diterima argumen bukan numerik"
+
+#: builtin.c:2172
+msgid "match: third argument is not an array"
+msgstr "match: argumen ketiga bukan sebuah array"
+
+#: builtin.c:2719
+msgid "gensub: third argument of 0 treated as 1"
+msgstr "gensub: argumen ketiga dari 0 diperlakukan sebagai 1"
+
+#: builtin.c:2835
+msgid "lshift: received non-numeric first argument"
+msgstr "lshift: diterima argumen pertama bukan numerik"
+
+#: builtin.c:2837
+msgid "lshift: received non-numeric second argument"
+msgstr "lshift: diterima argumen kedua bukan numerik"
+
+#: builtin.c:2843
+#, c-format
+msgid "lshift(%lf, %lf): negative values will give strange results"
+msgstr "lshift(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:2845
+#, c-format
+msgid "lshift(%lf, %lf): fractional values will be truncated"
+msgstr "lshift(%lf, %lf): nilai pecahan akan dipotong"
+
+#: builtin.c:2847
+#, c-format
+msgid "lshift(%lf, %lf): too large shift value will give strange results"
+msgstr "lshift(%lf, %lf): nilai shift terlalu besar akan memberikan hasil aneh"
+
+#: builtin.c:2873
+msgid "rshift: received non-numeric first argument"
+msgstr "rshift: diterima argumen pertama bukan numerik"
+
+#: builtin.c:2875
+msgid "rshift: received non-numeric second argument"
+msgstr "rshift: diterima argumen kedua bukan-numerik"
+
+#: builtin.c:2881
+#, c-format
+msgid "rshift(%lf, %lf): negative values will give strange results"
+msgstr "rshift(%lf. %lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:2883
+#, c-format
+msgid "rshift(%lf, %lf): fractional values will be truncated"
+msgstr "rshift(%lf, %lf): nilai pecahan akan dipotong"
+
+#: builtin.c:2885
+#, c-format
+msgid "rshift(%lf, %lf): too large shift value will give strange results"
+msgstr "rshift(%lf, %lf): nilai shift terlalu besar akan memberikan hasil aneh"
+
+#: builtin.c:2911
+msgid "and: received non-numeric first argument"
+msgstr "and: diterima argumen pertama tidak numerik"
+
+#: builtin.c:2913
+msgid "and: received non-numeric second argument"
+msgstr "and: diterima argumen kedua bukan numerik"
+
+#: builtin.c:2919
+#, c-format
+msgid "and(%lf, %lf): negative values will give strange results"
+msgstr "and(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:2921
+#, c-format
+msgid "and(%lf, %lf): fractional values will be truncated"
+msgstr "and(%lf, %lf): nilai pecahan akan dipotong"
+
+#: builtin.c:2947
+msgid "or: received non-numeric first argument"
+msgstr "or: diterima argumen pertama bukan numerik"
+
+#: builtin.c:2949
+msgid "or: received non-numeric second argument"
+msgstr "or: diterima argumen kedua bukan numerik"
+
+#: builtin.c:2955
+#, c-format
+msgid "or(%lf, %lf): negative values will give strange results"
+msgstr "or(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:2957
+#, c-format
+msgid "or(%lf, %lf): fractional values will be truncated"
+msgstr "or(%lf, %lf): nilai pecahan akan dipotong"
+
+#: builtin.c:2983
+msgid "xor: received non-numeric first argument"
+msgstr "xor: diterima argumen pertama bukan numerik"
+
+#: builtin.c:2985
+msgid "xor: received non-numeric second argument"
+msgstr "xor: diterima argumen kedua bukan numerik"
+
+#: builtin.c:2991
+#, c-format
+msgid "xor(%lf, %lf): negative values will give strange results"
+msgstr "xor(%lf, %lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:2993
+#, c-format
+msgid "xor(%lf, %lf): fractional values will be truncated"
+msgstr "xor(%lf, %lf): nilai pecahan akan dipotong"
+
+#: builtin.c:3017
+msgid "compl: received non-numeric argument"
+msgstr "compl: diterima argumen bukan numerik"
+
+#: builtin.c:3023
+#, c-format
+msgid "compl(%lf): negative value will give strange results"
+msgstr "compl(%lf): nilai negatif akan memberikan hasil aneh"
+
+#: builtin.c:3025
+#, c-format
+msgid "compl(%lf): fractional value will be truncated"
+msgstr "compl(%lf): nilai pecahan akan dipotong"
+
+#: builtin.c:3198
+#, c-format
+msgid "dcgettext: `%s' is not a valid locale category"
+msgstr "dcgettext: `%s' bukan sebuah kategori lokal yang valid"
+
+#: eval.c:372
+#, c-format
+msgid "unknown nodetype %d"
+msgstr "tipe titik %d tidak diketahui"
+
+#: eval.c:422
+msgid "buffer overflow in genflags2str"
+msgstr "buffer overflow dalam genflags2str"
+
+#: eval.c:454 eval.c:460 profile.c:781
+#, c-format
+msgid "attempt to use array `%s' in a scalar context"
+msgstr "mencoba menggunakan array `%s' dalam sebuah konteks skalar"
+
+#: eval.c:802
+#, c-format
+msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
+msgstr ""
+"for loop: array `%s' berubah ukuran dari %ld ke %ld selama eksekusi loop"
+
+#: eval.c:823
+msgid "`break' outside a loop is not portable"
+msgstr "`break' diluar sebuah loop adalah tidak portabel"
+
+#: eval.c:827
+msgid "`break' outside a loop is not allowed"
+msgstr "`break' diluar sebuah loop tidak diijinkan"
+
+#: eval.c:844
+msgid "`continue' outside a loop is not portable"
+msgstr "`continue' diluar sebuah loop tidak portabel"
+
+#: eval.c:848
+msgid "`continue' outside a loop is not allowed"
+msgstr "`continue' diluar sebuah loop tidak diijinkan"
+
+#: eval.c:882
+msgid "`next' cannot be called from a BEGIN rule"
+msgstr "`next' tidak dapat dipanggil dari sebuah aturan BEGIN"
+
+#: eval.c:884
+msgid "`next' cannot be called from an END rule"
+msgstr "`next' tidak dapat dipanggil dari sebuah aturan END"
+
+#: eval.c:893
+msgid "`nextfile' cannot be called from a BEGIN rule"
+msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan BEGIN"
+
+#: eval.c:895
+msgid "`nextfile' cannot be called from an END rule"
+msgstr "`nextfile' tidak dapat dipanggil dari sebuah aturan END"
+
+#: eval.c:952
+msgid "statement has no effect"
+msgstr "pernyataan tidak memiliki efek"
+
+#: eval.c:1029 eval.c:1999
+#, c-format
+msgid "can't use function name `%s' as variable or array"
+msgstr ""
+"tidak dapat menggunakan nama fungsi `%s' sebagai sebuah variabel atau array"
+
+#: eval.c:1036 eval.c:1042
+#, c-format
+msgid "reference to uninitialized argument `%s'"
+msgstr "referensi ke argumen `%s' tidak terinisialisasi"
+
+#: eval.c:1051 eval.c:2008
+#, c-format
+msgid "reference to uninitialized variable `%s'"
+msgstr "referensi ke variabel `%s' tidak terinisialisasi"
+
+#: eval.c:1197
+msgid ""
+"concatenation: side effects in one expression have changed the length of "
+"another!"
+msgstr ""
+"concatenation: efek samping dalam satu ekspresi telah mengubah panjang dari "
+"yang lain!"
+
+#: eval.c:1301
+msgid "assignment used in conditional context"
+msgstr "assignment digunakan dalam konteks kondisional"
+
+#: eval.c:1379
+msgid "division by zero attempted"
+msgstr "pembagian dengan nol telah dicoba"
+
+#: eval.c:1409 profile.c:657
+#, c-format
+msgid "illegal type (%s) in tree_eval"
+msgstr "tipe (%s) tidak legal dalam tree_eval"
+
+#: eval.c:1572
+msgid "division by zero attempted in `/='"
+msgstr "pembagian dengan nol dicoba dalam `/='"
+
+#: eval.c:1594
+#, c-format
+msgid "division by zero attempted in `%%='"
+msgstr "pembagian dengan nol dicoba dalam `%%='"
+
+#: eval.c:1859
+#, c-format
+msgid "function `%s' called with more arguments than declared"
+msgstr "fungsi `%s' dipanggil argumen lebih dari yang dideklarasikan"
+
+#: eval.c:1904
+#, c-format
+msgid "function `%s' not defined"
+msgstr "fungsi `%s' tidak didefinisikan"
+
+#: eval.c:1971
+#, c-format
+msgid ""
+"\n"
+"\t# Function Call Stack:\n"
+"\n"
+msgstr ""
+"\n"
+"\t# Fungsi Call Stack:\n"
+"\n"
+
+#: eval.c:1974
+#, c-format
+msgid "\t# -- main --\n"
+msgstr "\t# -- main --\n"
+
+#: eval.c:2129
+msgid "attempt to field reference from non-numeric value"
+msgstr "mencoba untuk mereferensi field dari nilai bukan numerik"
+
+#: eval.c:2131
+msgid "attempt to reference from null string"
+msgstr "mencoba untuk mereferensi dari null string"
+
+#: eval.c:2137
+#, c-format
+msgid "attempt to access field %d"
+msgstr "mencoba untuk mengakses field %d"
+
+#: eval.c:2158 eval.c:2165 profile.c:836
+msgid "assignment is not allowed to result of builtin function"
+msgstr "assignmen tidak diijinkan untuk menghasilkan fungsi bawaan"
+
+#: eval.c:2229
+msgid "`IGNORECASE' is a gawk extension"
+msgstr "`IGNORECASE' adalah ekstensi gawk"
+
+#: eval.c:2258
+msgid "`BINMODE' is a gawk extension"
+msgstr "`BINMODE' adalah ekstensi gawk"
+
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "BINMODE nilai `%s' tidak valid, diperlakukan sebagai 3"
+
+#: eval.c:2406
+#, c-format
+msgid "bad `%sFMT' specification `%s'"
+msgstr "buruk `%sFMT' spesifikasi `%s'"
+
+#: eval.c:2484
+msgid "turning off `--lint' due to assignment to `LINT'"
+msgstr "menonaktifkan `--lint' karena assignmen ke `LINT'"
+
+#: ext.c:62 ext.c:67
+msgid "`extension' is a gawk extension"
+msgstr "`extension' adalah sebuah ekstensi gawk"
+
+#: ext.c:77
+#, c-format
+msgid "extension: cannot open `%s' (%s)\n"
+msgstr "extension: tidak dapat membuka `%s' (%s)\n"
+
+#: ext.c:85
+#, c-format
+msgid "extension: library `%s': cannot call function `%s' (%s)\n"
+msgstr "extension: perpustakaan `%s': tidak dapat memanggil fungsi `%s' (%s)\n"
+
+#: ext.c:105
+msgid "extension: missing function name"
+msgstr "extension: hilang nama fungsi"
+
+#: ext.c:110
+#, c-format
+msgid "extension: illegal character `%c' in function name `%s'"
+msgstr "extension: karakter `%c' tidak legal dalam nama fungsi `%s'"
+
+#: ext.c:116
+#, c-format
+msgid "extension: can't redefine function `%s'"
+msgstr "extension: tidak dapat meredefinisi fungsi `%s'"
+
+#: ext.c:120
+#, c-format
+msgid "extension: function `%s' already defined"
+msgstr "extension: fungsi `%s' telah didefinisikan"
+
+#: ext.c:125
+#, c-format
+msgid "extension: can't use gawk built-in `%s' as function name"
+msgstr ""
+"extension: tidak dapat menggunakan gawk bawaan `%s' sebagai nama fungsi"
+
+#: ext.c:127
+#, c-format
+msgid "extension: function name `%s' previously defined"
+msgstr "extension: nama fungsi `%s' telah didefinisikan sebelumnya"
+
+#: ext.c:204
+#, c-format
+msgid "function `%s' defined to take no more than %d argument(s)"
+msgstr "fungsi `%s' didefinisikan untuk mengambil lebih dari %d argumen"
+
+#: ext.c:207
+#, c-format
+msgid "function `%s': missing argument #%d"
+msgstr "fungsi `%s': hilang argumen #%d"
+
+#: ext.c:217
+#, c-format
+msgid "function `%s': argument #%d: attempt to use scalar as an array"
+msgstr ""
+"fungsi `%s': argumen #%d: mencoba menggunaka skalar sebagai sebuah array"
+
+#: ext.c:221
+#, c-format
+msgid "function `%s': argument #%d: attempt to use array as a scalar"
+msgstr ""
+"fungsi `%s': argumen #%d: mencoba untuk menggunakan array sebagai sebuah "
+"skalar"
+
+#: ext.c:246
+msgid "Operation Not Supported"
+msgstr "Operasi Tidak Didukung"
+
+#: field.c:330
+msgid "NF set to negative value"
+msgstr "NF set ke nilai negatif"
+
+#: field.c:875
+msgid "split: second argument is not an array"
+msgstr "split: argumen kedua bukan sebuah array"
+
+#: field.c:909
+msgid "split: null string for third arg is a gawk extension"
+msgstr "split: null string untuk arg ketika adalah sebuah ekstensi gawk"
+
+#: field.c:961
+msgid "`FIELDWIDTHS' is a gawk extension"
+msgstr "`FIELDWIDTHS' adalah sebuah ekstensi gawk"
+
+#: field.c:991 field.c:1005
+#, c-format
+msgid "invalid FIELDWIDTHS value, near `%s'"
+msgstr "nilai FIELDWIDTHS tidak valid, didekat `%s'"
+
+#: field.c:1088
+msgid "null string for `FS' is a gawk extension"
+msgstr "null string untuk `FS' adalah sebuah ekstensi gawk"
+
+#: field.c:1092
+msgid "old awk does not support regexps as value of `FS'"
+msgstr "awk lama tidak mendukung regexps sebagai nilai dari `FS'"
+
+#: getopt.c:570 getopt.c:586
+#, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: pilihan '%s' adalah ambigu\n"
+
+#: getopt.c:619 getopt.c:623
+#, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: pilihan '--%s' tidak mengijinkan sebuah argumen\n"
+
+#: getopt.c:632 getopt.c:637
+#, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: pilihan '%c%s' tidak mengijinkan sebuah argumen\n"
+
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, c-format
+msgid "%s: option '%s' requires an argument\n"
+msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n"
+
+#: getopt.c:737 getopt.c:740
+#, c-format
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: pilihan tidak dikenal '--%s'\n"
+
+#: getopt.c:748 getopt.c:751
+#, c-format
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: pilihan tidak dikenal '%c%s'\n"
+
+#: getopt.c:800 getopt.c:803
+#, c-format
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: pilihan tidak valid -- '%c'\n"
+
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, c-format
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: pilihan membutuhkan sebuah argumen -- '%c'\n"
+
+#: getopt.c:923 getopt.c:939
+#, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: pilihan '-W %s' adalah ambigu\n"
+
+#: getopt.c:963 getopt.c:981
+#, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: pilihan '-W %s' tidak mengijinkan sebuah argumen\n"
+
+#: io.c:322 io.c:352
+#, c-format
+msgid "cannot open file `%s' for reading (%s)"
+msgstr "tidak dapat membuka berkas `%s' untuk membaca (%s)"
+
+#: io.c:443
+#, c-format
+msgid "close of fd %d (`%s') failed (%s)"
+msgstr "penutupan dari fd %d (`%s') gagal (%s)"
+
+#: io.c:583
+#, c-format
+msgid "invalid tree type %s in redirect()"
+msgstr "tipe tree %s tidak valid dalam redirect()"
+
+#: io.c:589
+#, c-format
+msgid "expression in `%s' redirection only has numeric value"
+msgstr "ekspresi dalam `%s' redireksi hanya memiliki nilai numerik"
+
+#: io.c:595
+#, c-format
+msgid "expression for `%s' redirection has null string value"
+msgstr "ekspresi untuk `%s' redireksi hanya memiliki nilai string null"
+
+#: io.c:600
+#, c-format
+msgid "filename `%s' for `%s' redirection may be result of logical expression"
+msgstr ""
+"nama berkas `%s' untuk `%s' redireksi hanya menghasilkan ekspresi logikal"
+
+#: io.c:638
+#, c-format
+msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
+msgstr "pencampuran tidak perlu dari `>' dan `>>' untuk berkas `%.*s'"
+
+#: io.c:685
+#, c-format
+msgid "can't open pipe `%s' for output (%s)"
+msgstr "tidak dapat membuka pipe `%s' untuk keluaran (%s)"
+
+#: io.c:694
+#, c-format
+msgid "can't open pipe `%s' for input (%s)"
+msgstr "tidak dapat membuka pipe `%s' untuk masukan (%s)"
+
+#: io.c:712
+#, c-format
+msgid "can't open two way socket `%s' for input/output (%s)"
+msgstr "tidak dapat membuka socket dua arah `%s' untuk input/output (%s)"
+
+#: io.c:716
+#, c-format
+msgid "can't open two way pipe `%s' for input/output (%s)"
+msgstr "tidak dapat membuka pipe dua arah `%s' untuk input/output (%s)"
+
+#: io.c:793
+#, c-format
+msgid "can't redirect from `%s' (%s)"
+msgstr "tidak dapat redirek dari `%s' (%s)"
+
+#: io.c:796
+#, c-format
+msgid "can't redirect to `%s' (%s)"
+msgstr "tidak dapat redirek ke `%s' (%s)"
+
+#: io.c:849
+msgid ""
+"reached system limit for open files: starting to multiplex file descriptors"
+msgstr ""
+"batas sistem tercapi untuk berkas terbuka: mulai untuk multiplex berkas "
+"deskripsi"
+
+#: io.c:865
+#, c-format
+msgid "close of `%s' failed (%s)."
+msgstr "penutupan dari `%s' gagal (%s)."
+
+#: io.c:873
+msgid "too many pipes or input files open"
+msgstr "terlalu banyak pipes atau berkas masukan terbuka"
+
+#: io.c:896
+msgid "close: second argument must be `to' or `from'"
+msgstr "close: argumen kedua harus berupa `to' atau `from'"
+
+#: io.c:910
+#, c-format
+msgid "close: `%.*s' is not an open file, pipe or co-process"
+msgstr "close: `%.*s' bukan sebuah berkas terbuka, pipe atau co-proses"
+
+#: io.c:915
+msgid "close of redirection that was never opened"
+msgstr "penutupan dari redireksi yang tidak pernah terbuka"
+
+#: io.c:1012
+#, c-format
+msgid "close: redirection `%s' not opened with `|&', second argument ignored"
+msgstr ""
+"close: redireksi `%s' tidak dibuka dengan `|&', argumen kedua diabaikan"
+
+#: io.c:1028
+#, c-format
+msgid "failure status (%d) on pipe close of `%s' (%s)"
+msgstr "status gagal (%d) di tutup pipe dari `%s' (%s)"
+
+#: io.c:1031
+#, c-format
+msgid "failure status (%d) on file close of `%s' (%s)"
+msgstr "status gagal (%d) di tutup berkas dari `%s' (%s)"
+
+#: io.c:1051
+#, c-format
+msgid "no explicit close of socket `%s' provided"
+msgstr "tidak ada eksplisit tutup dari socket `%s' yang disediakan"
+
+#: io.c:1054
+#, c-format
+msgid "no explicit close of co-process `%s' provided"
+msgstr "tidak ada eksplisit tutup dari co-proses `%s' yang disediakan"
+
+#: io.c:1057
+#, c-format
+msgid "no explicit close of pipe `%s' provided"
+msgstr "tidak ada eksplisit tutup dari pipe `%s' disediakan"
+
+#: io.c:1060
+#, c-format
+msgid "no explicit close of file `%s' provided"
+msgstr "tidak ada eksplisit close dari berkas `%s' disediakan"
+
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
+#, c-format
+msgid "error writing standard output (%s)"
+msgstr "error menulis standar keluaran (%s)"
+
+#: io.c:1092 io.c:1148
+#, c-format
+msgid "error writing standard error (%s)"
+msgstr "error menulis standar error (%s)"
+
+#: io.c:1100
+#, c-format
+msgid "pipe flush of `%s' failed (%s)."
+msgstr "pipe flush dari `%s' gagal (%s)."
+
+#: io.c:1103
+#, c-format
+msgid "co-process flush of pipe to `%s' failed (%s)."
+msgstr "co-proses flush dari pipe ke `%s' gagal (%s)."
+
+#: io.c:1106
+#, c-format
+msgid "file flush of `%s' failed (%s)."
+msgstr "file flush dari `%s' gagal (%s)."
+
+#: io.c:1220
+#, c-format
+msgid "local port %s invalid in `/inet'"
+msgstr "lokal port %s tidak valid dalam `/inet'"
+
+#: io.c:1237
+#, c-format
+msgid "remote host and port information (%s, %s) invalid"
+msgstr "remote host dan informasi port (%s, %s) tidak valid"
+
+#: io.c:1272
+msgid "/inet/raw client not ready yet, sorry"
+msgstr "/inet/raw client belum siap, maaf"
+
+#: io.c:1275 io.c:1311
+msgid "only root may use `/inet/raw'."
+msgstr "hanya root yang boleh menggunakan `/inet/raw'."
+
+#: io.c:1309
+msgid "/inet/raw server not ready yet, sorry"
+msgstr "/inet/raw server belum siap, maaf"
+
+#: io.c:1407
+#, c-format
+msgid "no (known) protocol supplied in special filename `%s'"
+msgstr ""
+"tidak (diketahui) protokol yang diberikan dalam nama berkas spesial `%s'"
+
+#: io.c:1421
+#, c-format
+msgid "special file name `%s' is incomplete"
+msgstr "nama berkas spesial `%s' tidak lengkap"
+
+#: io.c:1436
+msgid "must supply a remote hostname to `/inet'"
+msgstr "harus memberikan sebuah remote hostname ke `/inet'"
+
+#: io.c:1454
+msgid "must supply a remote port to `/inet'"
+msgstr "harus memberikan sebuah remote port ke `/inet'"
+
+#: io.c:1485
+msgid "TCP/IP communications are not supported"
+msgstr "komunikasi TCP/IP tidak didukung"
+
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "berkas `%s' adalah sebuah direktori"
+
+#: io.c:1555
+#, c-format
+msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
+msgstr "lebih baik gunakan `PROCINFO[\"%s\"]' daripada `%s'"
+
+#: io.c:1593
+msgid "use `PROCINFO[...]' instead of `/dev/user'"
+msgstr "lebih baik gunakan `PROCINFO[...]' daripada `/dev/user'"
+
+#: io.c:1658 io.c:1853
+#, c-format
+msgid "could not open `%s', mode `%s'"
+msgstr "tidak dapat membuka `%s', mode `%s'"
+
+#: io.c:1904
+#, c-format
+msgid "close of master pty failed (%s)"
+msgstr "penutupan dari master pty gagal (%s)"
+
+#: io.c:1906 io.c:2058 io.c:2209
+#, c-format
+msgid "close of stdout in child failed (%s)"
+msgstr "penutupan dari stdout dalam child gagal (%s)"
+
+#: io.c:1909
+#, c-format
+msgid "moving slave pty to stdout in child failed (dup: %s)"
+msgstr "memindahkan slave pty ke stdout dalam child gagal (dup: %s)"
+
+#: io.c:1911 io.c:2063
+#, c-format
+msgid "close of stdin in child failed (%s)"
+msgstr "penutupan dari stdin dalam anak gagal (%s)"
+
+#: io.c:1914
+#, c-format
+msgid "moving slave pty to stdin in child failed (dup: %s)"
+msgstr "memindahkan slave pty ke stdin dalam anak gagal (dup: %s)"
+
+#: io.c:1916 io.c:1935
+#, c-format
+msgid "close of slave pty failed (%s)"
+msgstr "penutupan dari pty budak gagal (%s)"
+
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
+#, c-format
+msgid "moving pipe to stdout in child failed (dup: %s)"
+msgstr "memindahkan pipe ke stdout dalam anak gaal (dup: %s)"
+
+#: io.c:2013 io.c:2066
+#, c-format
+msgid "moving pipe to stdin in child failed (dup: %s)"
+msgstr "memindahkan pipe ke stdin dalam anak gagal (dup: %s)"
+
+#: io.c:2030 io.c:2203
+msgid "restoring stdout in parent process failed\n"
+msgstr "mengembalikan stdout dalam proses orang tua gagal\n"
+
+#: io.c:2035
+msgid "restoring stdin in parent process failed\n"
+msgstr "mengembalikan stdin dalam proses orang tua gagal\n"
+
+#: io.c:2069 io.c:2214 io.c:2225
+#, c-format
+msgid "close of pipe failed (%s)"
+msgstr "penutupan dari pipe gagal (%s)"
+
+#: io.c:2114
+msgid "`|&' not supported"
+msgstr "`|&' tidak didukung"
+
+#: io.c:2180
+#, c-format
+msgid "cannot open pipe `%s' (%s)"
+msgstr "tidak dapat membuka pipe `%s' (%s)"
+
+#: io.c:2221
+#, c-format
+msgid "cannot create child process for `%s' (fork: %s)"
+msgstr "tidak dapat membuat proses anak untuk `%s' (fork: %s)"
+
+#: io.c:2603
+#, c-format
+msgid "data file `%s' is empty"
+msgstr "berkas data `%s' kosong"
+
+#: io.c:2644 io.c:2652
+msgid "could not allocate more input memory"
+msgstr "tidak dapat mengalokasikan lebih dari masukan memori"
+
+#: io.c:3020 io.c:3093
+#, c-format
+msgid "error reading input file `%s': %s"
+msgstr "error membaca berkas masukan `%s': %s"
+
+#: io.c:3218
+msgid "multicharacter value of `RS' is a gawk extension"
+msgstr "nilai multi karakter dari `RS' adalah sebuah ekstensi gawk"
+
+#: main.c:304
+msgid "out of memory"
+msgstr "kehabisan memori"
+
+#: main.c:373
+msgid "`-m[fr]' option irrelevant in gawk"
+msgstr "pilihan `-m[fr]' tidak relevan dalam gawk"
+
+#: main.c:375
+msgid "-m option usage: `-m[fr] nnn'"
+msgstr "penggunaan pilihan -m: `-m[fr] nnn'"
+
+#: main.c:392
+#, c-format
+msgid "%s: option `-W %s' unrecognized, ignored\n"
+msgstr "%s: pilihan `-W %s' tidak dikenal, diabaikan\n"
+
+#: main.c:433
+msgid "empty argument to `--source' ignored"
+msgstr "argumen kosong ke `--source' diabaikan"
+
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: pilihan membutuhkan sebuah argumen -- %c\n"
+
+#: main.c:506
+msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
+msgstr "variabel lingkungan `POSIXLY_CORRECT' set: mengaktifkan `--posix'"
+
+#: main.c:512
+msgid "`--posix' overrides `--traditional'"
+msgstr "`--posix' overrides `--traditional'"
+
+#: main.c:523
+msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
+msgstr "`--posix'/`--traditional' overrides `--non-decimal-data'"
+
+#: main.c:527
+#, c-format
+msgid "running %s setuid root may be a security problem"
+msgstr "menjalankan %s setuid root mungkin sebuah masalah keamanan"
+
+#: main.c:568
+#, c-format
+msgid "can't set binary mode on stdin (%s)"
+msgstr "tidak dapat menset mode binari di stdin (%s)"
+
+#: main.c:571
+#, c-format
+msgid "can't set binary mode on stdout (%s)"
+msgstr "tidak dapat menset mode binari di stdout (%s)"
+
+#: main.c:573
+#, c-format
+msgid "can't set binary mode on stderr (%s)"
+msgstr "tidak dapat menset mode binari di stderr (%s)"
+
+#: main.c:612
+msgid "no program text at all!"
+msgstr "tidak ada teks aplikasi apapun!"
+
+#: main.c:716
+#, c-format
+msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
+msgstr ""
+"Penggunaan: %s [pilihan POSIX atau gaya GNU] -f progfile [--] berkas ...\n"
+
+#: main.c:718
+#, c-format
+msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
+msgstr ""
+"Penggunaan: %s[ pilihan POSIX atau gaya GNU] [--] %cprogram%c berkas ...\n"
+
+#: main.c:723
+msgid "POSIX options:\t\tGNU long options:\n"
+msgstr "pilihan POSIX:\t\tpilihan panjang GNU:\n"
+
+#: main.c:724
+msgid "\t-f progfile\t\t--file=progfile\n"
+msgstr "\t-f progfile\t\t--file=progfile\n"
+
+#: main.c:725
+msgid "\t-F fs\t\t\t--field-separator=fs\n"
+msgstr "\t-F fs\t\t\t--field-separator=fs\n"
+
+#: main.c:726
+msgid "\t-v var=val\t\t--assign=var=val\n"
+msgstr "\t-v var=val\t\t--assign=var=val\n"
+
+#: main.c:727
+msgid "\t-m[fr] val\n"
+msgstr "\t-m[fr] val\n"
+
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-0\t\t\t--optimize\n"
+
+#: main.c:729
+msgid "\t-W compat\t\t--compat\n"
+msgstr "\t-W compabilitas\t\t--compat\n"
+
+#: main.c:730
+msgid "\t-W copyleft\t\t--copyleft\n"
+msgstr "\t-W copyleft\t\t--copyleft\n"
+
+#: main.c:731
+msgid "\t-W copyright\t\t--copyright\n"
+msgstr "\t-W hak cipta\t\t--copyright\n"
+
+#: main.c:732
+msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
+msgstr "\t-W tampilkan variabel[=berkas]\t--dump-variables[=berkas]\n"
+
+#: main.c:733
+msgid "\t-W exec=file\t\t--exec=file\n"
+msgstr "\t-W exec=berkas\t\t--exec=berkas\n"
+
+#: main.c:734
+msgid "\t-W gen-po\t\t--gen-po\n"
+msgstr "\t-W gen-po\t\t--gen-po\n"
+
+#: main.c:735
+msgid "\t-W help\t\t\t--help\n"
+msgstr "\t-W bantuan\t\t\t--help\n"
+
+#: main.c:736
+msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
+msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
+
+#: main.c:737
+msgid "\t-W lint-old\t\t--lint-old\n"
+msgstr "\t-W lint-old\t\t--lint-old\n"
+
+#: main.c:738
+msgid "\t-W non-decimal-data\t--non-decimal-data\n"
+msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
+
+#: main.c:740
+msgid "\t-W nostalgia\t\t--nostalgia\n"
+msgstr "\t-W nostalgia\t\t--nostalgia\n"
+
+#: main.c:743
+msgid "\t-W parsedebug\t\t--parsedebug\n"
+msgstr "\t-W parsedebug\t\t--parsedebug\n"
+
+#: main.c:745
+msgid "\t-W profile[=file]\t--profile[=file]\n"
+msgstr "\t-W profile[=file]\t--profile[=file]\n"
+
+#: main.c:746
+msgid "\t-W posix\t\t--posix\n"
+msgstr "\t-W posix\t\t--posix\n"
+
+#: main.c:747
+msgid "\t-W re-interval\t\t--re-interval\n"
+msgstr "\t-W re-interval\t\t--re-interval\n"
+
+#: main.c:748
+msgid "\t-W source=program-text\t--source=program-text\n"
+msgstr "\t-W sumber=teks-program\t--source=teks-program\n"
+
+#: main.c:749
+msgid "\t-W traditional\t\t--traditional\n"
+msgstr "\t-W tradisional\t\t--traditional\n"
+
+#: main.c:750
+msgid "\t-W usage\t\t--usage\n"
+msgstr "\t-W penggunaan\t\t--usage\n"
+
+#: main.c:751
+msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
+
+#: main.c:752
+msgid "\t-W version\t\t--version\n"
+msgstr "\t-W versi\t\t--version\n"
+
+#. TRANSLATORS: --help output 5 (end)
+#. TRANSLATORS: the placeholder indicates the bug-reporting address
+#. for this application. Please add _another line_ with the
+#. address for translation bugs.
+#. no-wrap
+#: main.c:761
+msgid ""
+"\n"
+"To report bugs, see node `Bugs' in `gawk.info', which is\n"
+"section `Reporting Problems and Bugs' in the printed version.\n"
+"\n"
+msgstr ""
+"\n"
+"Untuk melaporkan bugs, lihat titik `Bugs' dalam `gawk.info', dalam\n"
+"daerah `Reporting Problems and Bugs' dalam versi tercetak.\n"
+"\n"
+
+#: main.c:765
+msgid ""
+"gawk is a pattern scanning and processing language.\n"
+"By default it reads standard input and writes standard output.\n"
+"\n"
+msgstr ""
+"gawk adalah sebuah pencarian pola dan bahasa pemrosesan.\n"
+"Secara baku ini membaca standar masukan dan menulis standa keluaran.\n"
+"\n"
+
+#: main.c:769
+msgid ""
+"Examples:\n"
+"\tgawk '{ sum += $1 }; END { print sum }' file\n"
+"\tgawk -F: '{ print $1 }' /etc/passwd\n"
+msgstr ""
+"Contoh:\n"
+"\tgawk '{ sum += $1 }; END { print sum }' berkas\n"
+"\tgawk -F: '{ print $1 }' /etc/passwd\n"
+
+#: main.c:789
+#, c-format
+msgid ""
+"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
+"\n"
+"This program is free software; you can redistribute it and/or modify\n"
+"it under the terms of the GNU General Public License as published by\n"
+"the Free Software Foundation; either version 3 of the License, or\n"
+"(at your option) any later version.\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 1989, 1991-%d Free Software Foundationn.\n"
+"\n"
+"Aplikasi ini adalah aplikasi bebas; anda dapat meredistribusikannya dan/atau "
+"memodifikasinya\n"
+"dibawah ketentuan dari GNU General Public License seperti dipublikasikan "
+"oleh\n"
+"Free Software Foundation; baik versi 3 dari Lisensi, atau\n"
+"(di pilihan anda) untuk versi selanjutnya.\n"
+"\n"
+
+#: main.c:797
+msgid ""
+"This program is distributed in the hope that it will be useful,\n"
+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
+"GNU General Public License for more details.\n"
+"\n"
+msgstr ""
+"Aplikasi ini didistribusikan dengan harapan ini akan berguna,\n"
+"tetapi TANPA GARANSI APAPUN; bahkan tanpa garansi yang diimplisikasikan "
+"dari\n"
+"PERDAGANGAN atau KESESUAIAN UNTUK SEBUAH TUJUAN TERTENTU. Lihat\n"
+"GNU General Public License untuk lebih lengkapnya.\n"
+"\n"
+
+#: main.c:808
+msgid ""
+"You should have received a copy of the GNU General Public License\n"
+"along with this program. If not, see http://www.gnu.org/licenses/.\n"
+msgstr ""
+"Anda seharusnya menerima salinan dari GNU General Public License\n"
+"bersama dengan aplikasi ini. Jika tidak, lihat http://www.gnu.org/"
+"licenses/.\n"
+
+#: main.c:843
+msgid "-Ft does not set FS to tab in POSIX awk"
+msgstr "-Ft tidak menset FS ke tab dalam POSIX awk"
+
+#: main.c:1117
+#, c-format
+msgid ""
+"%s: `%s' argument to `-v' not in `var=value' form\n"
+"\n"
+msgstr ""
+"%s: `%s' argumen ke `-v' tidak dalam bentuk `var=value'\n"
+"\n"
+
+#: main.c:1137
+#, c-format
+msgid "`%s' is not a legal variable name"
+msgstr "`%s' bukan sebuah nama variabel legal"
+
+#: main.c:1140
+#, c-format
+msgid "`%s' is not a variable name, looking for file `%s=%s'"
+msgstr "`%s' bukan sebuah nama variabel, pencarian untuk berkas `%s=%s'"
+
+#: main.c:1179
+msgid "floating point exception"
+msgstr "eksepsi titik pecahan"
+
+#: main.c:1186
+msgid "fatal error: internal error"
+msgstr "fatal error: internal error"
+
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "fatal error: internal error: segfault"
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "fatal error: internal error: stack overflow"
+
+#: main.c:1261
+#, c-format
+msgid "no pre-opened fd %d"
+msgstr "tidak ada pre-opened fd %d"
+
+#: main.c:1268
+#, c-format
+msgid "could not pre-open /dev/null for fd %d"
+msgstr "tidak dapat pre-open /dev/null untuk fd %d"
+
+#: main.c:1291 main.c:1300
+#, c-format
+msgid "could not find groups: %s"
+msgstr "tidak dapat menemukan grup: %s"
+
+#: msg.c:54
+#, c-format
+msgid "cmd. line:"
+msgstr "cmd. baris:"
+
+#: msg.c:120
+msgid "warning: "
+msgstr "peringatan: "
+
+#: msg.c:142
+msgid "error: "
+msgstr "error: "
+
+#: msg.c:178
+msgid "fatal: "
+msgstr "fatal: "
+
+#: node.c:63 node.c:78 node.c:105 node.c:121 node.c:151
+msgid "can't convert string to float"
+msgstr "tidak dapat mengubah string ke float"
+
+#: node.c:462
+msgid "backslash at end of string"
+msgstr "backslash di akhir dari string"
+
+#: node.c:606
+#, c-format
+msgid "old awk does not support the `\\%c' escape sequence"
+msgstr "awk lama tidak mendukung escape sequence `\\%c'"
+
+#: node.c:657
+msgid "POSIX does not allow `\\x' escapes"
+msgstr "POSIX tidak mengijinkan escapes `\\x'"
+
+#: node.c:663
+msgid "no hex digits in `\\x' escape sequence"
+msgstr "tidak ada digit heksa dalam escape sequence `\\x'"
+
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+"hex escape \\x%.*s dari karakter %d mungkin tidak dapat diinterpretrasikan "
+"seperti yang anda kira"
+
+#: node.c:700
+#, c-format
+msgid "escape sequence `\\%c' treated as plain `%c'"
+msgstr "escape sequence `\\%c' diperlakukan sebagai plain `%c'"
+
+#: posix/gawkmisc.c:172
+#, c-format
+msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
+msgstr "%s %s `%s': tidak dapat menset close-on-exec: (fcntl: %s)"
+
+#: profile.c:93
+#, c-format
+msgid "could not open `%s' for writing: %s"
+msgstr "tidak dapat membuka `%s' untuk penulisan: %s"
+
+#: profile.c:453
+#, c-format
+msgid "internal error: %s with null vname"
+msgstr "internal error: %s dengan null vname"
+
+#: profile.c:517
+#, fuzzy
+msgid "# treated internally as `delete'"
+msgstr "# diperlakukan secara internal sebagai 'delete'"
+
+#: profile.c:1069
+#, c-format
+msgid "# this is a dynamically loaded extension function"
+msgstr "# ini adalah sebuah fungsi yang secara dinamis diload ekstensi"
+
+#: profile.c:1100
+#, c-format
+msgid "\t# gawk profile, created %s\n"
+msgstr "\t# gawk profile, dibuat %s\n"
+
+#: profile.c:1103
+#, c-format
+msgid ""
+"\t# BEGIN block(s)\n"
+"\n"
+msgstr ""
+"\t # BEGIN blok\n"
+"\n"
+
+#: profile.c:1113
+#, c-format
+msgid ""
+"\t# Rule(s)\n"
+"\n"
+msgstr ""
+"\t# Aturan\n"
+"\n"
+
+#: profile.c:1119
+#, c-format
+msgid ""
+"\t# END block(s)\n"
+"\n"
+msgstr ""
+"\t# END blok\n"
+"\n"
+
+#: profile.c:1139
+#, c-format
+msgid ""
+"\n"
+"\t# Functions, listed alphabetically\n"
+msgstr ""
+"\n"
+"\t# Fungsi, terdaftar secara alphabet\n"
+
+#: profile.c:1400
+#, c-format
+msgid "unexpected type %s in prec_level"
+msgstr "tipe %s tidak terduga dalam prec_level"
+
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "tipe titik %s dalam pp_var tidak diketahui"
+
+#: regcomp.c:133
+msgid "Success"
+msgstr "Sukses"
+
+#: regcomp.c:136
+msgid "No match"
+msgstr "Tidak cocok"
+
+#: regcomp.c:139
+msgid "Invalid regular expression"
+msgstr "Ekspresi regular tidak valid"
+
+#: regcomp.c:142
+msgid "Invalid collation character"
+msgstr "Karakter kolasi tidak valid"
+
+#: regcomp.c:145
+msgid "Invalid character class name"
+msgstr "nama kelas karakter tidak valid"
+
+#: regcomp.c:148
+msgid "Trailing backslash"
+msgstr "Akhiran backslash"
+
+#: regcomp.c:151
+msgid "Invalid back reference"
+msgstr "Referensi balik tidak valid"
+
+#: regcomp.c:154
+msgid "Unmatched [ or [^"
+msgstr "Tidak cocok [ atau [^"
+
+#: regcomp.c:157
+msgid "Unmatched ( or \\("
+msgstr "Tidak cocok ( atau \\("
+
+#: regcomp.c:160
+msgid "Unmatched \\{"
+msgstr "Tidak cocok \\{"
+
+#: regcomp.c:163
+msgid "Invalid content of \\{\\}"
+msgstr "Isi dari \\{\\} tidak valid"
+
+#: regcomp.c:166
+msgid "Invalid range end"
+msgstr "Akhir jangkauan tidak valid"
+
+#: regcomp.c:169
+msgid "Memory exhausted"
+msgstr "Kehabisan memori"
+
+#: regcomp.c:172
+msgid "Invalid preceding regular expression"
+msgstr "Ekspresi regular yang mengawali tidak valid"
+
+#: regcomp.c:175
+msgid "Premature end of regular expression"
+msgstr "Akhir dari ekspresi regular prematur"
+
+#: regcomp.c:178
+msgid "Regular expression too big"
+msgstr "Ekspresi regular terlalu besar"
+
+#: regcomp.c:181
+msgid "Unmatched ) or \\)"
+msgstr "Tidak cocok ) atau \\)"
+
+#: regcomp.c:700
+msgid "No previous regular expression"
+msgstr "Tidak ada ekspresi regular sebelumnya"
+
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: pilihan tidak legal -- %c\n"
diff --git a/po/it.gmo b/po/it.gmo
index 478e021c..770e2400 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 3bd40e6f..5ea157f5 100644
--- a/po/it.po
+++ b/po/it.po
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.5h\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-09-30 23:20+0100\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-06-19 18:20+0100\n"
"Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
"Language-Team: Italian <it@li.org>\n"
"MIME-Version: 1.0\n"
@@ -74,324 +74,331 @@ msgstr "%s: è parametro\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: referenza_vettoriale a %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "blocchi %s richiedono una 'azione'"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "ogni regola deve avere una parte 'espressione' o una parte 'azione'"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "il vecchio awk non supporta più di una regola `BEGIN' o `END'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' è una funzione interna, non si può ridefinire"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "espressione regolare costante `//' sembra un commento C, ma non lo è"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "espressione regolare costante `/%s/' sembra un commento C, ma non lo è"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "istruzione che può non aver alcun effetto"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "`%s' usato in 'azione' %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' è un'estensione gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' usato fuori da una funzione"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr "`print' da solo in BEGIN o END dovrebbe forse essere `print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' è un'estensione gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete(array)' è un'estensione tawk non-portabile"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "valori di 'case' doppi all'interno di uno 'switch': %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "Valori per difetto doppi all'interno di uno 'switch'"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "'pipelines' multistadio bidirezionali non funzionano"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "espressione regolare usata per assegnare un valore"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "espressione regolare prima di operatore `~' o `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "il vecchio awk non supporta la parola-chiave `in' se non dopo `for'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "espressione regolare a destra in un confronto"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "`getline' non re-diretta indefinita dentro 'azione' END"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "il vecchio awk non supporta vettori multidimensionali"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "chiamata a `length' senza parentesi non portabile"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "chiamata a `length' senza parentesi sconsigliata da POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "uso di non-vettore come vettore"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "espressione indice invalida"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "carattere 'a capo' o fine stringa inaspettati"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "programma nullo sulla linea comandi"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "non riesco ad aprire file sorgente `%s' in lettura (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "non riesco a leggere file sorgente `%s' (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "file sorgente `%s' vuoto"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "file sorgente non termina con carattere 'a capo'"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "espressione regolare non completata termina con `\\' a fine file"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"%s: %d: modificatore di espressione regolare tawk `/.../%c' non valido in "
"gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "modificatore di espressione regolare tawk `/.../%c' non valido in gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "espressione regolare non completata"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "espressione regolare non completata a fine file"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "uso di `\\ #...' continuazione linea non portabile"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "'\\' non è l'ultimo carattere della linea"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX non permette l'operatore `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "il vecchio awk non supporta l'operatore `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX non permette l'operatore `**'"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "il vecchio awk non supporta l'operatore `**'"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "l'operatore `^=' non è supportato nel vecchio awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "l'operatore `^' non è supportato nel vecchio awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "stringa non terminata"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
-msgstr "carattere '%c' invalido in un'espressione"
+msgstr "carattere '%c' non valido in un'espressione"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' è un'estensione gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' è un'estensione Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX non permette `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' non è supportato nel vecchio awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "`goto' considerato pericoloso!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
-msgstr "%d invalido come numero di argomenti per %s"
+msgstr "%d non valido come numero di argomenti per %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: il terzo argomento è un'estensione gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: una stringa come ultimo argomento di 'substitute' non ha effetto"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "il terzo parametro di '%s' non è un oggetto modificabile"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: il secondo argomento è un'estensione gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"uso scorretto di dcgettext(_\"...\"): togliere il carattere '_' iniziale"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"uso scorretto di dcngettext(_\"...\"): togliere il carattere '_' iniziale"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funzione `%s': parametro #%d, `%s', duplica parametro #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "funzione `%s': parametro `%s' nasconde variabile globale"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "non riesco ad aprire `%s' in scrittura (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "mando profilo a 'standard error'"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: 'close' fallita (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() chiamata due volte!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "c'erano variabili nascoste."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "funzione `%s': non posso usare nome della funzione come nome parametro"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+"funzione `%s': non posso usare la variabile speciale `%s' come parametro di "
+"funzione"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "funzione di nome `%s' definita in precedenza"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "funzione `%s' chiamata ma mai definita"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "funzione `%s' definita ma mai chiamata"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"espressione regolare di valore costante per parametro #%d genera valore "
"booleano"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -400,199 +407,230 @@ msgstr ""
"funzione `%s' chiamata con spazio tra il nome e `(',\n"
"o usata come variabile o vettore"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "divisione per zero tentata in `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s a \"%s\" fallita (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "standard output"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "ragione indeterminata"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: argomento non numerico"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argomento %g non accettabile"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: non posso scaricare: 'pipe' `%s' aperta in lettura, non in scrittura"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: non posso scaricare: file `%s' aperto in lettura, non in scrittura"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' non è un file aperto, una 'pipe' o un co-processo"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: il primo argomento non è una stringa"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: il secondo argomento non è una stringa"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: argomento non numerico"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "`length(array)' è un'estensione gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "length: l'argomento omesso sarà ritenuto scalare"
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: l'argomento non è una stringa"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: argomento non numerico"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: argomento negativo %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "'count$' va usato per tutti i formati o per nessuno"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "larghezza campo ignorata per lo specificatore `%%%%'"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "precisione ignorata per lo specificatore `%%%%'"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr "larghezza e precisione ignorate per lo specificatore `%%%%'"
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' non permesso nei 'format' awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "il numero di argomento con `$' deve essere > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr ""
"numero di argomenti (%ld) maggiore del numero totale di argomenti specificati"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' non permesso dopo un punto nel 'format'"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr ""
"nessun `$' specificato per larghezza o precisione di un campo posizionale"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' non ha senso nei 'format' awk; ignorata"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`l' non permessa nei 'format' awk POSIX"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' non ha senso nei 'format' awk; ignorata"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`L' non permessa nei 'format' awk POSIX"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' non ha senso nei 'format' awk; ignorata"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`h' non permessa nei 'format' awk POSIX"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: valore %g non accettabile per il 'format' `%%%c'"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+"lettera ignota di specifica 'format' `%c' ignorato: nessun argomento "
+"convertito"
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "mancano argomenti per completare il 'format'"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ uscito per questo"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: il designatore di 'format' non ha una lettera di controllo"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "troppi argomenti specificati per il 'format'"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: manca argomento"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: argomento non numerico"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: chiamata con argomento negativo %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
-msgstr "substr: indice di partenza %g invalido, uso 1"
+msgstr "substr: indice di partenza %g non valido, uso 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: indice di partenza non intero %g: sarà troncato"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: lunghezza %g non >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: lunghezza %g non >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: lunghezza non intera %g: sarà truncata"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: lunghezza %g troppo elevata per indice stringa, tronco a %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: stringa di partenza lunga zero"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: indice di partenza %g oltre la fine della stringa"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -600,259 +638,259 @@ msgstr ""
"substr: lunghezza %g all'indice di partenza %g supera la lunghezza del primo "
"argomento (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: il primo argomento non è una stringa"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: 'format' è una stringa nulla"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: il secondo argomento non è numerico"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: l'argomento non è una stringa"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: l'argomento non è una stringa"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referenza a variabile non inizializzata `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: l'argomento non è una stringa"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: l'argomento non è una stringa"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: il primo argomento non è numerico"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: il secondo argomento non è numerico"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: l'argomento non è numerico"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: l'argomento non è numerico"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: l'argomento non è numerico"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: il terzo argomento non è un vettore"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: il terzo argomento è 0, trattato come 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: il primo argomento non è numerico"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: il secondo argomento non è numerico"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): valori negativi daranno risultati strani"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): valori con decimali verranno troncati"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): valori troppo alti daranno risultati strani"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: il primo argomento non è numerico"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: il secondo argomento non è numerico"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): valori negativi daranno risultati strani"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): valori con decimali verranno troncati"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): valori troppo alti daranno risultati strani"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: il primo argomento non è numerico"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: il secondo argomento non è numerico"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): valori negativi daranno risultati strani"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): valori con decimali verranno troncati"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: il primo argomento non è numerico"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: il secondo argomento non è numerico"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): valori negativi daranno risultati strani"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): valori con decimali verranno troncati"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: il primo argomento non è numerico"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: il secondo argomento non è numerico"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): valori negativi daranno risultati strani"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): valori con decimali verranno troncati"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: l'argomento non è numerico"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): valore negativo darà risultati strani"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): valore con decimali verrà troncato"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' non è una categoria 'locale' valida"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "tipo nodo sconosciuto %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "superament limiti buffer in 'genflags2str'"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "tentativo di usare vettore `%s' in un contesto scalare"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"ciclo for: vettore `%s' ha cambiato dimensione da %ld a %ld durante "
"l'esecuzione del ciclo"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "`break' all'esterno di un ciclo non è portabile"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "`break' all'esterno di un ciclo non è consentito"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "`continue' all'esterno di un ciclo non è portabile"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "`continue' all'esterno di un ciclo non è consentito"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`next' non può essere chiamato da una regola BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "`next' non può essere chiamato da una regola END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`nextfile' non può essere chiamato da una regola BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "`nextfile' non può essere chiamato da una regola END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "istruzione che non fa nulla"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "non posso usare nome di funzione `%s' come variabile o vettore"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referenza ad argomento non inizializzato `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referenza a variabile non inizializzata `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -860,44 +898,39 @@ msgstr ""
"concatenatione: effetti secondari in una espressione hanno modificato la "
"lunghezza di un'altra espressione!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "assegnamento usato nel contesto di un test condizionale"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "tentativo di dividere per zero"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "divisione per zero tentata in `%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tipo non ammesso (%s) in 'tree_eval'"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "divisione per zero tentata in `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "divisione per zero tentata in `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "funzione `%s' chiamata con più argomenti di quelli previsti"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "funzione `%s' non definita"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -908,42 +941,47 @@ msgstr ""
"\t# 'Stack' (Pila) Chiamate Funzione:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- principale --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "tentativo di referenziare campo da valore non numerico"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "tentativo to referenziare da stringa nulla"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "tentativo di accedere al campo %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "assegnamento non permesso al risultato di una funzione interna"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' è un'estensione gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' è un'estensione gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "valore di BINMODE `%s' non valido, considerato come 3"
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "specificazione invalida `%sFMT' `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "disabilito `--lint' a causa di assegnamento a `LINT'"
@@ -1020,555 +1058,563 @@ msgstr "Operazione Non Supportata"
msgid "NF set to negative value"
msgstr "NF impostato a un valore negativo"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: il secondo argomento non è un vettore"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: la stringa nulla come terzo arg. è un'estensione gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' è un'estensione gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
-msgstr "valore di FIELDWIDTHS invalido, vicino a `%s'"
+msgstr "valore di FIELDWIDTHS non valido, vicino a `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "la stringa nulla usata come `FS' è un'estensione gawk"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "il vecchio awk non supporta espressioni come valori di `FS'"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
-msgstr "%s: opzione `%s' ambigua\n"
-
-#: getopt.c:620 getopt.c:624
+#: getopt.c:570 getopt.c:586
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
-msgstr "%s: opzione `--%s' non prevede un argomento\n"
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opzione '%s' ambigua\n"
-#: getopt.c:633 getopt.c:638
+#: getopt.c:619 getopt.c:623
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
-msgstr "%s: opzione `%c%s' non prevede un argomento\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: l'opzione '--%s' non ammette un argomento\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:632 getopt.c:637
#, c-format
-msgid "%s: option `%s' requires an argument\n"
-msgstr "%s: opzione `%s' richiede un argomento\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: l'opzione '%c%s' non ammette un argomento\n"
-#: getopt.c:738 getopt.c:741
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
-msgstr "%s: opzione sconosciuta `--%s'\n"
+msgid "%s: option '%s' requires an argument\n"
+msgstr "%s: l'opzione '%s' richiede un argomento\n"
-#: getopt.c:749 getopt.c:752
+#: getopt.c:737 getopt.c:740
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
-msgstr "%s: opzione sconosciuta `%c%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: opzione sconosciuta '--%s'\n"
-#: getopt.c:804 getopt.c:807
+#: getopt.c:748 getopt.c:751
#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: opzione non permessa -- %c\n"
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: opzione sconosciuta '%c%s'\n"
-#: getopt.c:813 getopt.c:816
+#: getopt.c:800 getopt.c:803
#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr "%s: opzione non valida -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: opzione non valida -- '%c'\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: l'opzione richiede un argomento -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: l'opzione richiede un argomento -- '%c'\n"
-#: getopt.c:937 getopt.c:953
+#: getopt.c:923 getopt.c:939
#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
-msgstr "%s: opzione `-W %s' ambigua\n"
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: l'opzione '-W %s' è ambigua\n"
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
-msgstr "%s: opzione `-W %s' non prevede un argomento\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: l'opzione '-W %s' non ammette un argomento\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "non riesco ad aprire file `%s' in lettura (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "chiusura di fd %d (`%s') fallita (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
-msgstr "tipo di albero invalido %s in redirect()"
+msgstr "tipo di albero non valido %s in redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "espressione nella re-direzione `%s' ha solo un valore numerico"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "espressione nella re-direzione `%s' ha per valore la stringa nulla"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"nome file `%s' per la re-direzione `%s' può essere il risultato di una "
"espressione logica"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "mistura non necessaria di `>' e `>>' per il file `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "non posso aprire 'pipe' `%s' in scrittura (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "non posso aprire 'pipe' `%s' in lettura (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "file `%s' è una 'directory'"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
"non posso aprire 'socket' bidirezionale `%s' per lettura/scrittura (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "non posso aprire 'pipe' bidirezionale `%s' per lettura/scrittura (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "non posso re-dirigere da `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "non posso re-dirigere a `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"numero massimo consentito di file aperti raggiunto: comincio a riutilizzare "
"i descrittori di file"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "chiusura di `%s' fallita (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "troppe 'pipe' o file di input aperti"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: il secondo argomento deve essere `a' o `da'"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: `%.*s' non è un file aperto, una 'pipe' o un co-processo"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "chiusura di una re-direzione mai aperta"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr "close: re-direzione `%s' non aperta con `|&', ignoro secondo argomento"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "errore ritornato (%d) dalla chiusura della 'pipe' `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "errore ritornato (%d) dalla chiusura del file `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "nessuna chiusura esplicita richiesta per 'socket' `%s'"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "nessuna chiusura esplicita richiesta per co-processo `%s'"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "nessuna chiusura esplicita richiesta per 'pipe' `%s'"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "nessuna chiusura esplicita richiesta per file `%s'"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "errore scrivendo 'standard output' (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "errore scrivendo 'standard error' (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "scaricamento di 'pipe' `%s' fallita (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "scaricamento da co-processo di 'pipe' a `%s' fallita (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "scaricamento di file `%s' fallita (%s)."
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "porta locale %s invalida in `/inet'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "host remoto e informazione di porta (%s, %s) invalidi"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "spiacente, 'client' /inet/raw non ancora pronto"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "solo root può usare `/inet/raw'."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "spiacente, 'server' /inet/raw non ancora pronto"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "nessuno protocollo (conosciuto) specificato nel filename speciale `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "nome file speciale `%s' incompleto"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "va fornito nome di 'host' remoto a `/inet'"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "va fornita porta remota a `/inet'"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "comunicazioni TCP/IP non supportate"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "file `%s' è una 'directory'"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "usa `PROCINFO[\"%s\"]' invece che `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "usa `PROCINFO[...]' invece che `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "non riesco ad aprire `%s', modo `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "fallita chiusura di 'pty' principale (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "fallita chiusura di 'stdout' nel processo-figlio (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"fallito trasferimento di 'pty' secondaria a 'stdout' nel processo-figlio "
"(dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "fallita chiusura di 'stdin' nel processo-figlio (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"fallito trasferimento di 'pty' secondaria a 'stdin' nel processo-figlio "
"(dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "fallita chiusura di 'pty' secondaria (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "fallito passaggio di 'pipe' a 'stdout' nel processo-figlio (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "fallito passaggio di pipe a 'stdin' nel processo-figlio (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "fallito ripristino di 'stdout' nel processo-padre\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "fallito ripristino di 'stdin' nel processo-padre\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "fallita chiusura di 'pipe' (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' non supportato"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "non riesco ad aprire 'pipe' `%s' (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "non riesco a creare processo-figlio per `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "file dati `%s' vuoto"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "non riesco ad allocare ulteriore memoria per l'input"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "errore leggendo file di input `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "valore multicarattere per `RS' è un'estensione gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "memoria esaurita"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "`-m[fr]' opzione irrilevante per gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m uso opzione: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: opzione `-W %s' non riconosciuta, ignorata\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "argomento di `--source' mancante, comando ignorato"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: l'opzione richiede un argomento -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "variable d'ambiente `POSIXLY_CORRECT' impostata: attivo `--posix'"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' annulla `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--posix'/`--traditional' annulla `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "eseguire %s con 'setuid' root può essere un rischio per la sicurezza"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "non posso impostare modalità binaria su 'stdin'(%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "non posso impostare modalità binaria su 'stdout'(%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "non posso impostare modalità binaria su 'stderr'(%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "manca del tutto il testo del programma!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Uso: %s [opzioni in stile POSIX o GNU] -f fileprog [--] file ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Usage: %s [opzioni in stile POSIX o GNU] [--] %cprogramma%c file ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Opzioni POSIX:\t\topzioni lunghe GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f fileprog\t\t--file=fileprog\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=valore\t\t--assign=var=valore\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] valore\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-O\t\t\t--optimize\n"
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec[=file]\t--exec[=file]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=file]\t--profile[=file]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=testo-programma\t--source=testo-programma\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1577,7 +1623,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1589,7 +1635,7 @@ msgstr ""
"sezione `Reporting Problems and Bugs' nella versione a stampa.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1599,7 +1645,7 @@ msgstr ""
"Senza parametri, legge da 'standard input' e scrive su 'standard output'.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1609,7 +1655,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1628,7 +1674,7 @@ msgstr ""
"Licenza, o (a tua scelta) a una qualsiasi versione successiva.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1642,7 +1688,7 @@ msgstr ""
"Vedi la 'GNU General Public License' per ulteriori dettagli.\n"
"\n"
-#: main.c:781
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
@@ -1651,11 +1697,11 @@ msgstr ""
"assieme a questo programma; se non è così, vedi http://www.gnu.org/"
"licenses/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft non imposta FS a 'tab' nell'awk POSIX"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1664,35 +1710,43 @@ msgstr ""
"%s: `%s' argomento di `-v' non in forma `var=valore'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' non è un nome di variabile ammesso"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s' non è un nome di variabile, cerco il file `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "eccezione floating point"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "errore fatale: errore interno"
-#: main.c:1180
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "errore fatale: errore interno: segfault"
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "errore fatale: errore interno: stack overflow"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "manca 'fd' predefinita %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "non riesco a predefinire /dev/null per 'fd' %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "non riesco a trovare gruppi: %s"
@@ -1718,24 +1772,33 @@ msgstr "fatale: "
msgid "can't convert string to float"
msgstr "non riesco a convertire stringa a valore in virgola mobile"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "'\\' a fine stringa"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "il vecchio awk non supporta la sequenza di escape '\\%c'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX non permette escape `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "niente cifre esadecimanli nella sequenza di escape `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+"sequenza di escape esadec.\\x%.*s di %d caratteri probabilmente non "
+"interpretata nel modo previsto"
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "sequenza di escape `\\%c' considerata come semplice `%c'"
@@ -1745,31 +1808,32 @@ msgstr "sequenza di escape `\\%c' considerata come semplice `%c'"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': non riesco a impostare 'close-on-exec': (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "non riesco ad aprire `%s' in scrittura: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "errore interno: %s con 'vname' nullo"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
-msgstr "# gestito internamente come 'delete' (cancellazione)"
+msgstr "# gestito internamente come `delete' (cancellazione)"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# questa è una funzione di estensione caricata dinamicamente"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# profilo gawk, creato %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1778,7 +1842,7 @@ msgstr ""
"\t# blocco(hi) BEGIN\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1787,7 +1851,7 @@ msgstr ""
"\t# Regola(e)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1796,7 +1860,7 @@ msgstr ""
"\t# blocco(hi) END\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1805,79 +1869,84 @@ msgstr ""
"\n"
"\t# Funzioni, listate in ordine alfabetico\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "tipo non previsto %s in 'prec_level'"
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "Tipo nodo sconosciuto %s in pp_var"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Successo"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Nessuna corrispondenza"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Espressione regolare invalida"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Carattere di ordinamento non valido"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
-msgstr "Nome di 'classe di caratteri' invalido"
+msgstr "Nome di 'classe di caratteri' non valido"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "'\\' finale"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
-msgstr "Riferimento indietro invalido"
+msgstr "Riferimento indietro non valido"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ or [^ non chiusa"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( or \\( non chiusa"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ non chiusa"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
-msgstr "Contenuto di \\{\\} invalido"
+msgstr "Contenuto di \\{\\} non valido"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
-msgstr "Fine di intervallo invalido"
+msgstr "Fine di intervallo non valido"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Memoria esaurita"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Espressione regolare precedente invalida"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Fine di expressione regolare inaspettata"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Espressione regolare troppo complessa"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") or \\) non aperta"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Nessuna espressione regolare precedente"
diff --git a/po/ja.gmo b/po/ja.gmo
index 5797e318..1cc85499 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index bdf5a261..04034cf0 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.4l\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2005-06-27 02:37+1000\n"
"Last-Translator: Makoto Hosoya <mhosoya@ozemail.com.au>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
@@ -75,327 +75,332 @@ msgstr "%s: ¤Ï¥Ñ¥é¥á¡¼¥¿¤Ç¤¹¡£\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: %s ¤Ø¤ÎÇÛÎó»²¾È (array_ref)\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s ¥Ö¥í¥Ã¥¯¤Ë¤Ï¥¢¥¯¥·¥ç¥óÉô¤¬É¬¿Ü¤Ç¤¹¡£"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "³Æ¥ë¡¼¥ë¤Ë¤Ï¥Ñ¥¿¡¼¥ó¤Þ¤¿¤Ï¥¢¥¯¥·¥ç¥óÉô¤¬É¬¿Ü¤Ç¤¹¡£"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' ¤ÏÁȹþ¤ß´Ø¿ô¤Ç¤¹¡£ºÆÄêµÁ¤Ç¤­¤Þ¤»¤ó¡£"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "Àµµ¬É½¸½Äê¿ô `//' ¤Ï C++¥³¥á¥ó¥È¤Ë»÷¤Æ¤¤¤Þ¤¹¤¬¡¢°ã¤¤¤Þ¤¹¡£"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "Àµµ¬É½¸½Äê¿ô `/%s/' ¤Ï C¥³¥á¥ó¥È¤Ë»÷¤Æ¤¤¤Þ¤¹¤¬¡¢°ã¤¤¤Þ¤¹¡£"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "Ì¿Îáʸ¤Ë¤Ï¸ú²Ì¤¬Ìµ¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "`%s' ¤¬ %s ¤Î¥¢¥¯¥·¥ç¥ó¤Ç»È¤ï¤ì¤Þ¤·¤¿¡£"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' ¤¬´Ø¿ôÄêµÁʸ¤Î³°¤Ç»È¤ï¤ì¤Þ¤·¤¿¡£"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"BEGIN ¤Þ¤¿¤Ï END ¥ë¡¼¥ëÆâ¤Î°ú¿ô¤Î̵¤¤ `print' ¤Ï `print \"\"' ¤À¤È»×¤ï¤ì¤Þ"
"¤¹¡£"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete(array)' ¤Ï tawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£Â¾¤Î awk ¤Ç¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "switch ʸ¤ÎÃæ¤Ë½ÅÊ£¤·¤¿ case Ãͤ¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "switch ʸ¤ÎÃæ¤Ë `default' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "¿Ãʳ¬¤ÇÁÐÊý¸þ¥Ñ¥¤¥×¤òÍøÍѤ·¤¿¼°¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "Àµµ¬É½¸½¤¬ÂåÆþ¼°¤Î±¦Êդ˻ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "`~' ¤ä `!~' ±é»»»Ò¤Îº¸ÊÕ¤ËÀµµ¬É½¸½¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "Èæ³Ó¼°¤Î±¦ÊÕ¤ËÀµµ¬É½¸½¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ `getline' ¤Ï END ¥¢¥¯¥·¥ç¥ó¤Ç¤Ï̤ÄêµÁ¤Ç¤¹¡£"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "³ç¸Ì̵¤·¤Î `length' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "POSIX ¤Ï³ç¸Ì̵¤·¤Ç¤Î `length' ¤Î»ÈÍѤò¿ä¾©¤·¤Þ¤»¤ó¡£"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "ÇÛÎó¤Ç¤Ê¤¤¤â¤Î¤òÇÛÎó¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "ź»ú¼°¤¬ÉÔÀµ¤Ç¤¹¡£"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "ͽÁÛ³°¤Î²þ¹Ô¤Þ¤¿¤Ïʸ»úÎó¤Î½ªÃ¼¤¬¤¢¤ê¤Þ¤¹¡£"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "¥³¥Þ¥ó¥É¹Ô¤Î¥×¥í¥°¥é¥àɽµ­¤¬¶õ¤Ç¤¹¡£"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤à¤¿¤á¤Ë³«¤±¤Þ¤»¤ó (%s)¡£"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤á¤Þ¤»¤ó (%s)¡£"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë `%s' ¤Ï¶õ¤Ç¤¹¡£"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤¬²þ¹Ô¤Ç½ª¤Ã¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤Àµµ¬É½¸½¤¬¥Õ¥¡¥¤¥ëºÇ¸å¤Î `\\' ¤Ç½ª¤Ã¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "%s: %d: tawk ¤ÎÀµµ¬É½¸½½¤¾þ»Ò `/.../%c' ¤Ï gawk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "tawk ¤ÎÀµµ¬É½¸½½¤¾þ»Ò `/.../%c' ¤Ï gawk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "Àµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "¥Õ¥¡¥¤¥ë¤ÎÃæ¤ÇÀµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "`\\ #...' ·Á¼°¤Î¹Ô·Ñ³¤Ï¾¤Î awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬¹ÔºÇ¸å¤Îʸ»ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX ¤Ï±é»»»Ò `**=' ¤òµö²Ä¤·¤Þ¤»¤ó¡£"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "±é»»»Ò `**=' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX ¤Ç¤Ï±é»»»Ò `**' ¤òµö²Ä¤·¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "±é»»»Ò `^=' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "±é»»»Ò `^' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "ʸ»úÎ󤬽ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "ɽ¸½¤Î char '%c' ¤ÏÉÔÀµ¤Ç¤¹¡£"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' ¤Ï¥Ù¥ë¸¦µæ½ê¤Ë¤è¤ë³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX ¤Ï `%s' ¤òµö²Ä¤·¤Þ¤»¤ó¡£"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' ¤Ï¸Å¤¤ awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "`goto' ¤ÏÍ­³²¤Ç¤¹!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d ¤Ï %s ¤Ë»È¤¨¤ë°ú¿ô¤Î¿ô¤È¤·¤Æ¤ÏÉÔÀµ¤Ç¤¹¡£"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: Âè»°°ú¿ô¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: ʸ»úÎó¥ê¥Æ¥é¥ë¤òÃÖ¤­´¹¤¨ºÇ¸å¤Î°ú¿ô¤Ë»ÈÍѤ¹¤ë¤È¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s Âè»°¥Ñ¥é¥á¡¼¥¿¤Ï²ÄÊÑ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: ÂèÆó°ú¿ô¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"dcgettext(_\"...\")¤Î»È¤¤Êý¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹: ºÇ½é¤Î¥¢¥ó¥À¡¼¥¹¥³¥¢¤òºï½ü¤·¤Æ¤¯"
"¤À¤µ¤¤¡£"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"dcngettext(_\"...\")¤Î»È¤¤Êý¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹: ºÇ½é¤Î¥¢¥ó¥À¡¼¥¹¥³¥¢¤òºï½ü¤·¤Æ"
"¤¯¤À¤µ¤¤¡£"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "´Ø¿ô `%s': ¥Ñ¥é¥á¡¼¥¿ #%d, `%s' ¤¬¥Ñ¥é¥á¡¼¥¿ #%d ¤È½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "´Ø¿ô `%s': ¥Ñ¥é¥á¡¼¥¿ `%s' ¤¬Âç°èÊÑ¿ô¤òʤ¤¤±£¤·¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "`%s' ¤ò½ñ¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿ (%s)¡£"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "¥×¥í¥Õ¥¡¥¤¥ë¤òɸ½à¥¨¥é¡¼¤ËÁ÷¤Ã¤Æ¤¤¤Þ¤¹¡£"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: ÊĤ¸¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() ¤òÆó²ó¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "ʤ¤¤±£¤µ¤ì¤¿ÊÑ¿ô¤¬¤¢¤ê¤Þ¤·¤¿¡£"
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "´Ø¿ô `%s': ´Ø¿ô̾¤Ï¥Ñ¥é¥á¡¼¥¿Ì¾¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "´Ø¿ô `%s': ´Ø¿ô̾¤Ï¥Ñ¥é¥á¡¼¥¿Ì¾¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "´Ø¿ô̾ `%s' ¤ÏÄêµÁºÑ¤ß¤Ç¤¹¡£"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "̤ÄêµÁ¤Î´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Þ¤·¤¿¡£"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "ÄêµÁ¤µ¤ì¤¿´Ø¿ô `%s' ¤Ï°ìÅÙ¤â¸Æ¤Ó½Ð¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "¥Ñ¥é¥á¡¼¥¿ #%d ¤ÎÀµµ¬É½¸½Äê¿ô¤Ï¥Ö¡¼¥ëÃͤò½ÐÎϤ·¤Þ¤¹¡£"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -404,457 +409,486 @@ msgstr ""
"´Ø¿ô̾¤È `(' ¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤Æ´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹¡£\n"
"¤Þ¤¿¤Ï¡¢ÊÑ¿ô¤«ÇÛÎó¤È¤·¤Æ»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "`%%' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s ¤«¤é \"%s\" ¤Ø½ÐÎϤǤ­¤Þ¤»¤ó (%s)¡£"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "ɸ½à½ÐÎÏ"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "¸¶°øÉÔÌÀ"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: °ú¿ô %g ¤¬µöÍÆÈϰϤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr "fflush: ¥Õ¥é¥Ã¥·¥åÉÔ²Ä: ¥Ñ¥¤¥× `%s' ¤ÏÆɤ߹þ¤ßÀìÍѤǤ¹¡£"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "fflush: ¥Õ¥é¥Ã¥·¥åÉÔ²Ä: ¥Õ¥¡¥¤¥ë `%s' ¤ÏÆɤ߹þ¤ßÀìÍѤǤ¹¡£"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr ""
"fflush: `%s' ¤Ï¥Õ¥¡¥¤¥ë¤«¡¢¥Ñ¥¤¥×¤«¡¢ÊÂ¹Ô¥×¥í¥»¥¹¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: Âè°ì°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: ÂèÆó°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "`delete array' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: °ú¿ô %g ¤¬Éé¤ÎÃͤǤ¹¡£"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
"`count$¡Ç¤ÏÁ´¤Æ¤Î½ñ¼°»ØÄê¤ËŬÍѤ¹¤ë¡¢¤Þ¤¿¤ÏÁ´¤Æ¤ËŬÍѤ·¤Ê¤¤¤Î¤É¤Á¤é¤«¤Ç¤·¤«»È"
"¤¨¤Þ¤»¤ó¡£"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' ¤Ï awk ¤Ç¤Ï»È¤¨¤Þ¤»¤ó¡£"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "½ç½ø»ØÄê¤Î `$' ¤Ë»È¤¨¤ë¿ô»ú¤ÏÀµ¤ÎÃͤǤ¹¡£"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "½ç½ø»ØÄê %ld ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤ë°ú¿ô¤Î¿ô¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' ¤Ï½ñ¼°»ØÄê¤Î¥Ô¥ê¥ª¥É `.' ¤Î¸å¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "¥Õ¥£¡¼¥ë¥ÉÉý¡¢¤Þ¤¿¤ÏÀºÅ٤λØÄê»Ò¤Ë `$' ¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `l' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `l' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `L' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `L' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "awk ¤Î½ñ¼°»ØÄê¤Ç¤Ï `h' ¤Ï̵°ÕÌ£¤Ç¤¹¡£Ìµ»ë¤·¤Þ¤¹¡£"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "POSIX ½àµò¤Î awk ¤Ç¤Ï `h' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: %g ¤ÎÃͤ¬½ñ¼° `%%%c' ¤ÎµöÍÆÈϰϤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "½ñ¼°»ØÄꤹ¤ë¤¿¤á¤Î°ú¿ô¤¬Â­¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ ¤³¤³¤«¤é­¤ê¤Þ¤»¤ó"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: ½ñ¼°»ØÄê»Ò¤ËÀ©¸æʸ»ú¤¬¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "½ñ¼°»ØÄêʸ»úÎó¤Î°ú¿ô¤¬Â¿²á¤®¤Þ¤¹¡£"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: °ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: °ú¿ô¤ËÉé¤ÎÃÍ %g ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: µ¯ÅÀ»Øɸ %g ¤¬ÉÔÀµ¤Ç¤¹¡£1 ¤ò»È¤¤¤Þ¤¹¡£"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: µ¯ÅÀ»Øɸ %g ¤Î¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Þ¤¹¡£"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: ʸ»ú¿ô %g ¤¬ 1 °Ê¾å¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: ʸ»ú¿ô %g ¤¬ 0 °Ê¾å¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: ʸ»ú¿ô %g ¤Î¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Þ¤¹¡£"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: ʸ»ú¿ô %g ¤ÏºÇÂçÃͤòĶ¤¨¤Æ¤¤¤Þ¤¹¡£%g ¤ò»È¤¤¤Þ¤¹¡£"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: ʸ»úÎó¤ÎŤµ¤¬¥¼¥í¤Ç¤¹¡£"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: µ¯ÅÀ»Øɸ %g ¤¬Ê¸»úÎó¤ÎŤµ¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr ""
"substr: µ¯ÅÀ»Øɸ %2$g ¤«¤é¤Îʸ»ú¿ô %1$g ¤Ïʸ»úÎó¤ÎŤµ %3$lu ¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: Âè°ì°ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: ½ñ¼°»ØÄêʸ»úÎ󤬶õ¤Ç¤¹¡£"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤¥Õ¥£¡¼¥ë¥É `$%d' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: Âè»°°ú¿ô¤¬ÇÛÎó̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: Âè»°°ú¿ô¤¬ 0 ¤Ç¤¹¡£1 ¤òÂå¤ï¤ê¤Ë»ÈÍѤ·¤Þ¤¹¡£"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): ¥·¥Õ¥ÈÃͤ¬Â礭²á¤®¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): ¥·¥Õ¥ÈÃͤ¬Â礭²á¤®¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: Âè°ì°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: ÂèÆó°ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: °ú¿ô¤¬¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó¡£"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): Éé¤Î¿ôÃͤò»ÈÍѤ¹¤ë¤È°Û¾ï¤Ê·ë²Ì¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): ¾®¿ôÅÀ°Ê²¼¤ÏÀÚ¤ê¼Î¤Æ¤Ë¤Ê¤ê¤Þ¤¹¡£"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' ¤ÏÉÔÀµ¤Ê¥í¥«¡¼¥ë¡¦¥«¥Æ¥´¥ê¡¼¤Ç¤¹¡£"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "¥Î¡¼¥É %d ¤Î¼ïÎबÉÔÌÀ¤Ç¤¹¡£"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "genflags2str ¤¬¥Ð¥Ã¥Õ¥¡ÍÆÎ̤òĶ²á¤·¤Þ¤·¤¿¡£"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "¥¹¥«¥é¡¼´Ä¶­¤ËÇÛÎó `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for ¥ë¡¼¥×: ¥ë¡¼¥×Ãæ¤ËÇÛÎó `%s' ¤Î¥µ¥¤¥º¤¬ %ld ¤«¤é %ld ¤ËÊѤï¤ê¤Þ¤·¤¿¡£"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "¥ë¡¼¥×¤Î³°¤Ç»ÈÍѤ¹¤ë `break' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "¥ë¡¼¥×¤Î³°¤Ç¤Ï `break' ¤ò»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "¥ë¡¼¥×¤Î³°¤Ç»ÈÍѤ¹¤ë `continue' ¤Ï¾¤Î awk ¤Ç»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "¥ë¡¼¥×¤Î³°¤Ç¤Ï `continue' ¤ò»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "BEGIN ¥ë¡¼¥ë¤«¤é¤Ï `next' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "END ¥ë¡¼¥ë¤«¤é¤Ï `next' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "BEGIN ¥ë¡¼¥ë¤«¤é¤Ï `nextfile' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "END ¥ë¡¼¥ë¤«¤é¤Ï `nextfile' ¤ò¸Æ¤Ó½Ð¤»¤Þ¤»¤ó¡£"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "Ì¿Îáʸ¤Ë¸ú²Ì¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "´Ø¿ô̾ `%s' ¤ÏÊÑ¿ô¤äÇÛÎó¤Ë¤Ï»È¤¨¤Þ¤»¤ó¡£"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤°ú¿ô `%s' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô `%s' ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -862,44 +896,39 @@ msgstr ""
"concatenation¡Êʸ»úÎóÏ¢·ë¡Ë: °ìÊý¤Î¼°¤ÎÉûºîÍѤǡ¢¤â¤¦°ìÊý¤ÎŤµ¤¬ÊѤï¤ê¤Þ¤·"
"¤¿!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "¾ò·ïʸÃæ¤Ç¤ÎÂåÆþ"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "`%%' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tree_eval ¤ÎÃæ¤ËÉÔÀµ¤Ê¥¿¥¤¥× (%s) ¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "`/=' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "`%%=' ¤Ç¥¼¥í¤Ç¤Î½ü»»¤ò¹Ô¤¤¤Þ¤·¤¿¡£"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "Àë¸À¤µ¤ì¤Æ¤¤¤ë¿ô¤è¤ê¿¤¤°ú¿ô¤ò»È¤Ã¤Æ´Ø¿ô `%s' ¤ò¸Æ¤Ó½Ð¤·¤Þ¤·¤¿¡£"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "´Ø¿ô `%s' ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -910,42 +939,47 @@ msgstr ""
"\t# ¸Æ½Ð´Ø¿ô¥¹¥¿¥Ã¥¯:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- ¥á¥¤¥ó --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "¿ôÃͰʳ°¤ÎÃͤò»È¤Ã¤Æ¥Õ¥¤¡¼¥ë¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "¶õÎó¤ò»È¤Ã¤Æ»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "¥Õ¥£¡¼¥ë¥É %d ¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "Áȹþ´Ø¿ô¤ÎÌá¤êÃͤËÂåÆþ¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "`%sFMT' ¤Î»ØÄê `%s' ¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹¡£"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "`LINT' ¤Ø¤ÎÂåÆþ¤Ë½¾¤¤ `--lint' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£"
@@ -1020,564 +1054,572 @@ msgstr "¤³¤ÎÁàºî¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
msgid "NF set to negative value"
msgstr "NF ¤¬Éé¤ÎÃͤǤ¹¡£"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: ÂèÆó°ú¿ô¤¬ÇÛÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: Âè»°°ú¿ô¤Ë¶õÎó¤ò»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' ¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "`%s' ÉÕ¶á¤Î FIELDWIDTHS Ãͤ¬ÉÔÀµ¤Ç¤¹¡£"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "`FS' ¤Ë¶õÎó¤ò»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤ÏÛ£Ëæ¤Ç¤¹¡£\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `--%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `%c%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹¡£\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `--%s'\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `%c%s'\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ̵¸ú¤Ê¥ª¥×¥·¥ç¥ó -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: °ú¿ô¤¬É¬Íפʥª¥×¥·¥ç¥ó -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤ÏÛ£Ëæ¤Ç¤¹¡£\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤à¤¿¤á¤Ë³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "fd %d (`%s') ¤òÊĤ¸¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "redirect() ¤ÎÃæ¤ÇÉÔÀµ¤Ê¥Ä¥ê¡¼¥¿¥¤¥× %s ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "`%s' ¥ê¥À¥¤¥ì¥¯¥È¤ÎÌ¿Îá¼°¤Ë¿ôÃͤ·¤«µ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "`%s' ¥ê¥À¥¤¥ì¥¯¥È¤ÎÌ¿Îá¼°¤¬¶õÎó¤Ç¤¹¡£"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"`%2$s' ¥ê¥À¥¤¥ì¥¯¥È¤ËÏÀÍý±é»»¤Î·ë²Ì¤È»×¤ï¤ì¤ë¥Õ¥¡¥¤¥ë̾ `%1$s' ¤¬»È¤ï¤ì¤Æ¤¤¤Þ"
"¤¹¡£"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "¥Õ¥¡¥¤¥ë `%.*s' ¤ÇɬÍװʾå¤Ë `>' ¤È `>>' ¤òÁȹ礻¤Æ¤¤¤Þ¤¹¡£"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "½ÐÎÏÍѤ˥ѥ¤¥× `%s' ¤ò³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "ÆþÎÏÍѤ˥ѥ¤¥× `%s' ¤ò³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "Æþ½ÐÎÏÍѤÎÁÐÊý¸þ¥½¥±¥Ã¥È `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "Æþ½ÐÎÏÍѤÎÁÐÊý¸þ¥Ñ¥¤¥× `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "`%s' ¤«¤é¥ê¥À¥¤¥ì¥¯¥È¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "`%s' ¤Ë¥ê¥À¥¤¥ì¥¯¥È¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¿ô¤¬¥·¥¹¥Æ¥àÀ©¸Â¤Ë㤷¤Þ¤·¤¿¡£¥Õ¥¡¥¤¥ëµ­½Ò»Ò¤ò¿½Å²½¤·¤Þ"
"¤¹¡£"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "`%s' ¤¬ÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "³«¤¤¤Æ¤¤¤ë¥Ñ¥¤¥×¤Þ¤¿¤ÏÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¿ô¤¬Â¿²á¤®¤Þ¤¹¡£"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: ÂèÆó°ú¿ô¤Ë»ÈÍѤǤ­¤ë¤Î¤Ï `to' ¤Þ¤¿¤Ï `from' ¤Ç¤¹¡£"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr ""
"close: `%.*s' ¤Ï¥Õ¥¡¥¤¥ë¡¢¥Ñ¥¤¥×¡¢ÊÂ¹Ô¥×¥í¥»¥¹¤Î¤¤¤º¤ì¤Ç¤â¤¢¤ê¤Þ¤»¤ó¡£"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "³«¤¤¤Æ¤Ê¤¤¥ê¥À¥¤¥ì¥¯¥È¤òÊĤ¸¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: ¥ê¥À¥¤¥ì¥¯¥È `%s' ¤Ï `|&' ¤ò»È¤Ã¤Æ¤¤¤Þ¤»¤ó¡£ÂèÆó°ú¿ô¤Ï̵»ë¤·¤Þ¤¹¡£"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "¥Ñ¥¤¥× `%2$s' ¤òÊĤ¸¤¿¤È¤­¤Î¾õÂÖ¥³¡¼¥É¤¬¼ºÇÔ (%1$d) ¤Ç¤·¤¿ (%3$s)¡£"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "¥Õ¥¡¥¤¥ë `%2$s' ¤òÊĤ¸¤¿¤È¤­¤Î¾õÂÖ¥³¡¼¥É¤¬¼ºÇÔ (%1$d) ¤Ç¤·¤¿ (%3$s)¡£"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "¥½¥±¥Ã¥È `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "ÊÂ¹Ô¥×¥í¥»¥¹ `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "¥Ñ¥¤¥× `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "¥Õ¥¡¥¤¥ë `%s' ¤òÌÀ¼¨¤·¤ÆÊĤ¸¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "ɸ½à½ÐÎϤؤνñ¹þ¤ß¥¨¥é¡¼ (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "ɸ½à¥¨¥é¡¼¤Ø¤Î½ñ¹þ¤ß¥¨¥é¡¼ (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "¥Ñ¥¤¥× `%s' ¤ò¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "`%s' ¤ØÀܳ¤¹¤ë¥Ñ¥¤¥×¤òÊÂ¹Ô¥×¥í¥»¥¹¤«¤é¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "¥Õ¥¡¥¤¥ë `%s' ¤ò¥Õ¥é¥Ã¥·¥å¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "`%s' ¤Î¥í¡¼¥«¥ë¥Ý¡¼¥È¤¬Ìµ¸ú¤Ç¤¹¡£"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "»ÄÇ°¤Ê¤¬¤é¡¢/inet/raw ¥¯¥é¥¤¥¢¥ó¥È¤Î½àÈ÷¤¬¤Ç¤­¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "`/inet/raw' ¤Ï root ¥æ¡¼¥¶¡¼¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "»ÄÇ°¤Ê¤¬¤é¡¢/inet/raw ¥µ¡¼¥Ð¡¼¤Î½àÈ÷¤¬¤Ç¤­¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
"¥¹¥Ú¥·¥ã¥ë¥Õ¥¡¥¤¥ë̾ `%s' ¤Ë¡Êǧ¼±¤Ç¤­¤ë¡Ë¥×¥í¥È¥³¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "¥¹¥Ú¥·¥ã¥ë¥Õ¥¡¥¤¥ë̾ `%s' ¤ÏÉÔ´°Á´¤Ç¤¹¡£"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "`/inet' ¤Ë¤Ï¥ê¥â¡¼¥È¥Û¥¹¥È̾¤¬É¬ÍפǤ¹¡£"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "`/inet' ¤Ë¤Ï¥ê¥â¡¼¥È¥Ý¡¼¥ÈÈֹ椬ɬÍפǤ¹¡£"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP Àܳ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "`%2$s' ¤ÎÂå¤ï¤ê¤Ë `PROCINFO[\"%1$s\"]' ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "`/dev/user' ¤ÎÂå¤ï¤ê¤Ë `PROCINFO[...]' ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "`%s' (¥â¡¼¥É `%s') ¤ò³«¤±¤Þ¤»¤ó¡£"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "¥Þ¥¹¥¿¡¼ pty ¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬É¸½à½ÐÎϤòÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬¥¹¥ì¡¼¥Ö pty ¤òɸ½à½ÐÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬É¸½àÆþÎϤòÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬¥¹¥ì¡¼¥Ö pty ¤òɸ½àÆþÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "¥¹¥ì¡¼¥Ö pty ¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬¥Ñ¥¤¥×¤òɸ½à½ÐÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "»Ò¥×¥í¥»¥¹¤¬¥Ñ¥¤¥×¤òɸ½àÆþÎϤ˰ÜÆ°¤Ç¤­¤Þ¤»¤ó (dup: %s)¡£"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "¿Æ¥×¥í¥»¥¹¤¬É¸½à½ÐÎϤòÉüµì¤Ç¤­¤Þ¤»¤ó¡£\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "¿Æ¥×¥í¥»¥¹¤¬É¸½àÆþÎϤòÉüµì¤Ç¤­¤Þ¤»¤ó¡£\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "¥Ñ¥¤¥×¤òÊĤ¸¤é¤ì¤Þ¤»¤ó (%s)¡£"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "¥Ñ¥¤¥× `%s' ¤¬³«¤±¤Þ¤»¤ó (%s)¡£"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "`%s' ÍÑ¤Î»Ò¥×¥í¥»¥¹¤ò¼Â¹Ô¤Ç¤­¤Þ¤»¤ó (fork: %s)¡£"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë `%s' ¤Ï¶õ¤Ç¤¹¡£"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "ÆþÎÏÍÑ¥á¥â¥ê¡¼¤ò¤³¤ì°Ê¾å³ÎÊݤǤ­¤Þ¤»¤ó¡£"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿: %s¡£"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "Ê£¿ô¤Îʸ»ú¤ò `RS' ¤Ë»ÈÍѤ¹¤ë¤Î¤Ï gawk ÆÃÍ­¤Î³ÈÄ¥¤Ç¤¹¡£"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "gawk ¤Ç¤Ï¥ª¥×¥·¥ç¥ó `-m[fr]' ¤Ë¸ú²Ì¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m ¥ª¥×¥·¥ç¥ó¤Î»ÈÍÑË¡: `-m[fr] ¿ôÃÍ'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ïǧ¼±¤Ç¤­¤Þ¤»¤ó¡£Ìµ»ë¤·¤Þ¤¹¡£\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "¶õ°ú¿ô¤Î `--source' ¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: °ú¿ô¤¬É¬Íפʥª¥×¥·¥ç¥ó -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
"´Ä¶­ÊÑ¿ô `POSIXLY_CORRECT' ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó `--posix' ¤òÍ­¸ú¤Ë"
"¤·¤Þ¤¹¡£"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "¥ª¥×¥·¥ç¥ó `--posix' ¤Ï `--traditional' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr ""
"¥ª¥×¥·¥ç¥ó `--posix'/`--traditional' ¤Ï `--non-decimal-data' ¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr ""
"setuid root ¤Ç %s ¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÌäÂ꤬ȯÀ¸¤¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ"
"¤¹¡£"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "ɸ½àÆþÎϤò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "ɸ½à½ÐÎϤò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "ɸ½à¥¨¥é¡¼¤ò¥Ð¥¤¥Ê¥ê¥â¡¼¥É¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó (%s)¡£"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "¥×¥í¥°¥é¥àʸ¤¬Á´¤¯¤¢¤ê¤Þ¤»¤ó!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"»È¤¤Êý: %s [POSIX ¤Þ¤¿¤Ï GNU ·Á¼°¥ª¥×¥·¥ç¥ó] -f ¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë [--] ÆþÎÏ"
"¥Õ¥¡¥¤¥ë ¡Ä\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"»È¤¤Êý: %s [POSIX ¤Þ¤¿¤Ï GNU ·Á¼°¥ª¥×¥·¥ç¥ó] [--] %c¥×¥í¥°¥é¥à%c ÆþÎÏ¥Õ¥¡¥¤"
"¥ë ¡Ä\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX ¥ª¥×¥·¥ç¥ó:\t\tGNU Ĺ·Á¼°¥ª¥×¥·¥ç¥ó\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f ¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë\t\t--file=¥×¥í¥°¥é¥à¥Õ¥¡¥¤¥ë\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr ""
"\t-F ¥Õ¥£¡¼¥ë¥É¥»¥Ñ¥ì¡¼¥¿\t\t\t--field-separator=¥Õ¥£¡¼¥ë¥É¥»¥Ñ¥ì¡¼¥¿\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v ÊÑ¿ô=ÂåÆþÃÍ\t\t--assign=ÊÑ¿ô=ÂåÆþÃÍ\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] ¿ôÃÍ\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=¥Õ¥¡¥¤¥ë]\t--dump-variables[=¥Õ¥¡¥¤¥ë]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=¥Õ¥¡¥¤¥ë\t\t--exec=¥Õ¥¡¥¤¥ë\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=¥Õ¥¡¥¤¥ë]\t--profile[=¥Õ¥¡¥¤¥ë]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=¥×¥í¥°¥é¥àʸ\t--source=¥×¥í¥°¥é¥àʸ\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1586,7 +1628,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1599,7 +1641,7 @@ msgstr ""
"¤Ï¡¢`Reporting Problems and Bugs' ¤Ç¤¹¡£\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1609,7 +1651,7 @@ msgstr ""
"¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤Ç¤Ï¡¢É¸½àÆþÎϤòÆɤ߹þ¤ß¡¢É¸½à½ÐÎϤ˽ñ¤­½Ð¤·¤Þ¤¹¡£\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1619,8 +1661,8 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' ÆþÎÏ¥Õ¥¡¥¤¥ë\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1637,7 +1679,7 @@ msgstr ""
"¤Ë½¾¤¤ºÆÇÛÉÛ¡¢µÚ¤Ó/¤Þ¤¿¤Ï¡¢Êѹ¹¤ò²Ã¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1651,7 +1693,7 @@ msgstr ""
"¾Ü¤·¤¯¤Ï¡¢GNU General Public License ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1664,11 +1706,11 @@ msgstr ""
"\t59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n"
"¤Ø½ñÌ̤ǤªÃΤ餻¤¯¤À¤µ¤¤¡£\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "POSIX »ÅÍͤΠawk ¤Ç¤Ï -Ft ¤Ç FS ¤ò¥¿¥Ö¤ËÀßÄê¤Ç¤­¤Þ¤»¤ó¡£"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1677,35 +1719,45 @@ msgstr ""
"%s: ¥ª¥×¥·¥ç¥ó `-v' ¤Î°ú¿ô `%s' ¤¬ `ÊÑ¿ô=ÂåÆþÃÍ' ¤Î·Á¼°¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' ¤ÏÉÔÀµ¤ÊÊÑ¿ô̾¤Ç¤¹¡£"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s' ¤ÏÊÑ¿ô̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£`%s=%s' ¤Î¥Õ¥¡¥¤¥ë¤òõ¤·¤Þ¤¹¡£"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "ÉâÆ°¾®¿ôÅÀÎã³°"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "Ã×̿Ū¥¨¥é¡¼: ÆâÉô¥¨¥é¡¼"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "Ã×̿Ū¥¨¥é¡¼: ÆâÉô¥¨¥é¡¼"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "Ã×̿Ū¥¨¥é¡¼: ÆâÉô¥¨¥é¡¼"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "fd %d ¤¬»öÁ°¤Ë³«¤¤¤Æ¤¤¤Þ¤»¤ó¡£"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "»öÁ°¤Ë fd %d ÍÑ¤Ë /dev/null ¤ò³«¤±¤Þ¤»¤ó¡£"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "¥°¥ë¡¼¥×¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: %s"
@@ -1731,24 +1783,31 @@ msgstr "Ã×̿Ū: "
msgid "can't convert string to float"
msgstr "ʸ»úÎ󤫤éÉâÆ°¾®¿ô¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó¡£"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "ʸ»úÎó¤Î½ª¤ê¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "±é»»»Ò `**' ¤Ï¸Å¤¤ awk ¤Ç»È¤¨¤Þ¤»¤ó¡£"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX ¤Ï `\\x' ¥¨¥¹¥±¡¼¥×¤òµö²Ä¤·¤Þ¤»¤ó¡£"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "`\\x' ¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤Ë 16 ¿Ê¿ô¤¬¤¢¤ê¤Þ¤»¤ó¡£"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c' ¤Ï `%c' ¤ÈƱÅù¤Ë°·¤ï¤ì¤Þ¤¹¡£"
@@ -1758,31 +1817,32 @@ msgstr "¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c' ¤Ï `%c' ¤ÈƱÅù¤Ë°·¤ï¤ì¤Þ¤¹¡£"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': close-on-exec ¤òÀßÄê¤Ç¤­¤Þ¤»¤ó: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "`%s' ¤ò½ñ¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "ÆâÉô¥¨¥é¡¼: %s ¤Î vname ¤¬Ìµ¸ú¤Ç¤¹¡£"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# ÆâÉô¤Ç¤Ï `delete' ¤È¤·¤Æ°·¤ï¤ì¤Þ¤·¤¿¡£"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# ¤³¤ì¤ÏưŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿³ÈÄ¥µ¡Ç½¤Ç¤¹¡£"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk ¥×¥í¥Õ¥¡¥¤¥ë¡¢ºîÀ®Æü»þ %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1791,7 +1851,7 @@ msgstr ""
"\t# BEGIN ¥Ö¥í¥Ã¥¯\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1800,7 +1860,7 @@ msgstr ""
"\t# ¥ë¡¼¥ë\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1809,7 +1869,7 @@ msgstr ""
"\t# END ¥Ö¥í¥Ã¥¯\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1818,82 +1878,90 @@ msgstr ""
"\n"
"\t# ´Ø¿ô°ìÍ÷¡Ê¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¡Ë\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "prec_level Ãæ¤Î %s ¤ÏͽÁÛ³°¤Î¥¿¥¤¥×¤Ç¤¹¡£"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "¥Î¡¼¥É %d ¤Î¼ïÎबÉÔÌÀ¤Ç¤¹¡£"
+
+#: regcomp.c:133
msgid "Success"
msgstr "À®¸ù"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "³ºÅö̵¤·"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "̵¸ú¤ÊÀµµ¬É½¸½"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "̵¸ú¤Ê¾È¹çʸ»ú"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "̵¸ú¤Êʸ»ú¥¯¥é¥¹Ì¾"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "ºÇ¸å¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤¬ÉÕ¤¤¤Æ¤¤¤Þ¤¹¡£"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "¸åÊý¤Ø¤Î»²¾È¤¬Ìµ¸ú¤Ç¤¹¡£"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ ¤Þ¤¿¤Ï [^ ¤¬Âбþ¤·¤Þ¤»¤ó¡£"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( ¤Þ¤¿¤Ï \\( ¤¬Âбþ¤·¤Þ¤»¤ó¡£"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ ¤¬Âбþ¤·¤Þ¤»¤ó¡£"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} ¤ÎÆâÍƤ¬Ìµ¸ú¤Ç¤¹¡£"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "ÈÏ°Ï»ØÄê¤Î½ªÃ¼¤¬Ìµ¸ú¤Ç¤¹¡£"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "¥á¥â¥ê¡¼¤¬Â­¤ê¤Þ¤»¤ó¡£"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Àè¹Ô¤ÎÀµµ¬É½¸½¤¬Ìµ¸ú¤Ç¤¹¡£"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Àµµ¬É½¸½¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Àµµ¬É½¸½¤¬Ä¹²á¤®¤Þ¤¹¡£"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") ¤Þ¤¿¤Ï \\) ¤¬Âбþ¤·¤Þ¤»¤ó¡£"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "¤³¤ì¤è¤êÁ°¤Ë»ÈÍѤ·¤¿Àµµ¬É½¸½¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó -- %c\n"
+
#~ msgid "remote port invalid in `%s'"
#~ msgstr "`%s' ¤Î¥ê¥â¡¼¥È¥Ý¡¼¥È¤¬Ìµ¸ú¤Ç¤¹¡£"
diff --git a/po/nl.gmo b/po/nl.gmo
index 38a1219b..ecb3d716 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 5e0e3698..9703e4f4 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,14 +1,16 @@
-# Translation of gawk-3.1.5h to Dutch.
-# Copyright (C) 2005, 2007 Free Software Foundation, Inc.
+# Translation of gawk-3.1.6 to Dutch.
+# Copyright (C) 2009 Free Software Foundation, Inc.
+#
+# This file is distributed under the same license as the gawk package.
#
# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2007.
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.5h\n"
+"Project-Id-Version: gawk 3.1.6e\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-10-02 12:43+0200\n"
-"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-07-05 21:29+0100\n"
+"Last-Translator: Erwin Poeze <erwin.poeze@gmail.com>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -18,17 +20,17 @@ msgstr ""
#: array.c:112
#, c-format
msgid "attempt to use function `%s' as an array"
-msgstr "functie '%s' wordt gebruikt als array"
+msgstr "functie `%s' wordt gebruikt als array"
#: array.c:115
#, c-format
msgid "attempt to use scalar parameter `%s' as an array"
-msgstr "scalaire parameter '%s' wordt gebruikt als array"
+msgstr "scalaire parameter `%s' wordt gebruikt als array"
#: array.c:118
#, c-format
msgid "attempt to use scalar `%s' as array"
-msgstr "scalair '%s' wordt gebruikt als array"
+msgstr "scalair `%s' wordt gebruikt als array"
#: array.c:156
#, c-format
@@ -43,12 +45,12 @@ msgstr "verwijzing naar ongeïnitialiseerd element '%s[\"%s\"]'"
#: array.c:520
#, c-format
msgid "subscript of array `%s' is null string"
-msgstr "index van array '%s' is lege string"
+msgstr "index van array `%s' is lege string"
#: array.c:624
#, c-format
msgid "delete: index `%s' not in array `%s'"
-msgstr "delete: index '%s' niet in array '%s' "
+msgstr "delete: index `%s' niet in array '%s'"
#: array.c:793
#, c-format
@@ -75,521 +77,558 @@ msgstr "%s: is een parameter\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array-verwijzing naar %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s-blokken horen een actiedeel te hebben"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "elke regel hoort een patroon of een actiedeel te hebben"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
-msgstr "oude 'awk' staat meerdere 'BEGIN'- en 'END'-regels niet toe"
+msgstr "oude 'awk' staat geen meerdere 'BEGIN'- en 'END'-regels toe"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
-msgstr "'%s' is een ingebouwde functie en is niet te herdefiniëren"
+msgstr "`%s' is een ingebouwde functie en is niet te herdefiniëren"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
-msgstr "regexp-constante '//' lijkt op C-commentaar, maar is het niet"
+msgstr "regexp-constante `//' lijkt op C++-commentaar, maar is het niet"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
-msgstr "regexp-constante '/%s/' lijkt op C-commentaar, maar is het niet"
+msgstr "regexp-constante `/%s/' lijkt op C-commentaar, maar is het niet"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "opdracht heeft mogelijk geen effect"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
-msgstr "'%s' wordt gebruikt in %s-actie"
+msgstr "`%s' wordt gebruikt in %s-actie"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
-msgstr "'nextfile' is een gawk-uitbreiding"
+msgstr "`nextfile' is een gawk-uitbreiding"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
-msgstr "'return' wordt gebruikt buiten functiecontext"
+msgstr "`return' wordt gebruikt buiten functiecontext"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
-"kale 'print' in BEGIN- of END-regel moet vermoedelijk 'print \"\"' zijn"
+"kale `print' in BEGIN- of END-regel moet vermoedelijk `print \"\"' zijn"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
-msgstr "'delete array' is een gawk-uitbreiding"
+msgstr "`delete array' is een gawk-uitbreiding"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
-msgstr "'delete(array)' is een niet-overdraagbare tawk-uitbreiding"
+msgstr "`delete(array)' is een niet-overdraagbare 'tawk'-uitbreiding"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
-msgstr "dubbele 'case'-waarde in 'switch'-opdracht: %s"
+msgstr "dubbele `case'-waarde in `switch'-opdracht: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
-msgstr "dubbele 'default' in 'switch'-opdracht"
+msgstr "dubbele `default' in `switch'-opdracht"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "meerfase-tweerichtings-pijplijnen werken niet"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "reguliere expressie rechts van toewijzing"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
-msgstr "reguliere expressie links van operator '~' of '!~'"
+msgstr "reguliere expressie links van operator `~' of `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
-msgstr "oude 'awk' kent het sleutelwoord 'in' niet, behalve na 'for'"
+msgstr "oude `awk' kent het sleutelwoord `in' niet, behalve na `for'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "reguliere expressie rechts van vergelijking"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
-msgstr "onherverwezen 'getline' is ongedefinieerd binnen END-actie"
+msgstr "onherverwezen `getline' is ongedefinieerd binnen END-actie"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
-msgstr "oude 'awk' kent geen meerdimensionale arrays"
+msgstr "oude `awk' kent geen meerdimensionale arrays"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
-msgstr "aanroep van 'length' zonder haakjes is niet overdraagbaar"
+msgstr "aanroep van `length' zonder haakjes is niet overdraagbaar"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
-msgstr "aanroep van 'length' zonder haakjes wordt door POSIX afgeraden"
+msgstr "aanroep van `length' zonder haakjes wordt door POSIX afgeraden"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "non-array wordt gebruikt als array"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "ongeldige index-expressie"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "onverwacht regeleinde of einde van string"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "lege programmatekst op commandoregel"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
-msgstr "kan bronbestand '%s' niet openen om te lezen (%s)"
+msgstr "kan bronbestand `%s' niet openen om te lezen (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
-msgstr "kan bronbestand '%s' niet lezen (%s)"
+msgstr "kan bronbestand `%s' niet lezen (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
-msgstr "bronbestand '%s' is leeg"
+msgstr "bronbestand `%s' is leeg"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "bronbestand eindigt niet met een regeleindeteken (LF)"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "onafgesloten reguliere expressie eindigt met '\\' aan bestandseinde"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
-msgstr "%s: %d: regexp-optie '/.../%c' van tawk werkt niet in gawk"
+msgstr "%s: %d: regexp-optie `/.../%c' van `tawk' werkt niet in gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
-msgstr "regexp-optie '/.../%c' van tawk werkt niet in gawk"
+msgstr "regexp-optie `/.../%c' van `tawk' werkt niet in gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "onafgesloten reguliere expressie"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "onafgesloten reguliere expressie aan bestandseinde"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
-msgstr "gebruik van regelvoortzetting '\\ #...' is niet overdraagbaar"
+msgstr "gebruik van regelvoortzetting `\\ #...' is niet overdraagbaar"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "backslash is niet het laatste teken op de regel"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
-msgstr "POSIX staat operator '**=' niet toe"
+msgstr "POSIX staat operator `**=' niet toe"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
-msgstr "oude 'awk' kent de operator '**=' niet"
+msgstr "oude `awk' kent de operator `**=' niet"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
-msgstr "POSIX staat operator '**' niet toe"
+msgstr "POSIX staat operator `**' niet toe"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
-msgstr "oude 'awk' kent de operator '**' niet"
+msgstr "oude `awk' kent de operator `**' niet"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
-msgstr "oude 'awk' kent de operator '^=' niet"
+msgstr "oude `awk' kent de operator `^=' niet"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
-msgstr "oude 'awk' kent de operator '^' niet"
+msgstr "oude `awk' kent de operator `^' niet"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "onafgesloten string"
-#: awkgram.y:2283
-#, c-format
+#: awkgram.y:2291
+#, fuzzy, c-format
msgid "invalid char '%c' in expression"
-msgstr "ongeldig teken '%c' in expressie"
+msgstr "ongeldig teken `%c' in expressie"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
-msgstr "'%s' is een gawk-uitbreiding"
+msgstr "`%s' is een gawk-uitbreiding"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
-msgstr "'%s' is een uitbreiding door Bell Labs"
+msgstr "`%s' is een uitbreiding door Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
-msgstr "POSIX staat '%s' niet toe"
+msgstr "POSIX staat `%s' niet toe"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
-msgstr "oude 'awk' kent '%s' niet"
+msgstr "oude `awk' kent `%s' niet"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
-msgstr "'goto' wordt als schadelijk beschouwd!\n"
+msgstr "`goto' wordt als schadelijk beschouwd!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d is een ongeldig aantal argumenten voor %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: derde argument is een gawk-uitbreiding"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: een stringwaarde als laatste vervangingsargument heeft geen effect"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s: derde parameter is geen veranderbaar object"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: tweede argument is een gawk-uitbreiding"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dcgettext(_\"...\") is onjuist: verwijder het liggende streepje"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dcngettext(_\"...\") is onjuist: verwijder het liggende streepje"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
-msgstr "functie '%s': parameter #%d, '%s', dupliceert parameter #%d"
+msgstr "functie `%s': parameter #%d, `%s', dupliceert parameter #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
-msgstr "functie '%s': parameter '%s' schaduwt een globale variabele"
+msgstr "functie `%s': parameter `%s' schaduwt een globale variabele"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
-msgstr "kan '%s' niet openen om te schrijven (%s)"
+msgstr "kan `%s' niet openen om te schrijven (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "profiel gaat naar standaardfoutuitvoer"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: sluiten is mislukt (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() twee keer aangeroepen!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "er waren geschaduwde variabelen."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
-msgstr "functie '%s': kan functienaam niet als parameternaam gebruiken"
+msgstr "functie `%s': kan functienaam niet als parameternaam gebruiken"
+
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+"functie `%s': kan speciale variabele `%s' niet als functieparameter gebruiken"
-#: awkgram.y:3003
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
-msgstr "functienaam '%s' is al eerder gedefinieerd"
+msgstr "functienaam `%s' is al eerder gedefinieerd"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
-msgstr "functie '%s' aangeroepen maar nergens gedefinieerd"
+msgstr "functie `%s' aangeroepen maar nergens gedefinieerd"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
-msgstr "functie '%s' gedefinieerd maar nergens aangeroepen"
+msgstr "functie `%s' gedefinieerd maar nergens aangeroepen"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "regexp-constante als parameter #%d levert booleanwaarde op"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
"or used as a variable or an array"
msgstr ""
-"functie '%s' aangeroepen met spatie tussen naam en '(',\n"
+"functie `%s' aangeroepen met spatie tussen naam en `(',\n"
"of gebruikt als variabele of array"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "deling door nul in `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s naar \"%s\" is mislukt (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "standaarduitvoer"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "reden onbekend"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: argument is geen getal"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argument %g ligt buiten toegestane bereik"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
-"fflush: kan pijp niet leegmaken: '%s' is geopend om te lezen, niet om te "
+"fflush: kan pijp niet leegmaken: `%s' is geopend om te lezen, niet om te "
"schrijven"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
-"fflush: kan bestand niet leegmaken: '%s' is geopend om te lezen, niet om te "
+"fflush: kan bestand niet leegmaken: `%s' is geopend om te lezen, niet om te "
"schrijven"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
-msgstr "fflush: '%s' is geen open bestand, pijp, of co-proces"
+msgstr "fflush: `%s' is geen open bestand, pijp, of co-proces"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: eerste argument is geen string"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: tweede argument is geen string"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: argument is geen getal"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "'length(array)' is een gawk-uitbreiding"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "lengte: typeloos argument wordt omgezet naar scalair"
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: argument is geen string"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: argument is geen getal"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: argument %g is negatief"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
-msgstr "'count$' hoort in alle opmaken gebruikt te worden, of in geen"
+msgstr "`count$' hoort in alle opmaken gebruikt te worden, of in geen"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "veldbreedte wordt genegeerd voor aanduiding `%%%%'"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "veldprecisie wordt genegeerd voor aanduiding `%%%%'"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr "veldbreedte en -precisie worden genegeerd voor aanduiding `%%%%'"
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
-msgstr "'$' is niet toegestaan in awk-opmaak"
+msgstr "`$' is niet toegestaan in awk-opmaak"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
-msgstr "het aantal argumenten met '$' moet > 0 zijn"
+msgstr "het aantal argumenten met `$' moet > 0 zijn"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "argumentental %ld is groter dan het gegeven aantal argumenten"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
-msgstr "'$' is niet toegestaan na een punt in de opmaak"
+msgstr "`$' is niet toegestaan na een punt in de opmaak"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
-msgstr "geen '$' opgegeven bij positionele veldbreedte of -precisie"
+msgstr "geen `$' opgegeven bij positionele veldbreedte of -precisie"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
-msgstr "'l' is betekenisloos in awk-opmaak; genegeerd"
+msgstr "`l' is betekenisloos in awk-opmaak; genegeerd"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
-msgstr "'l' is niet toegestaan in POSIX awk-opmaak"
+msgstr "`l' is niet toegestaan in POSIX awk-opmaak"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
-msgstr "'L' is betekenisloos in awk-opmaak; genegeerd"
+msgstr "`L' is betekenisloos in awk-opmaak; genegeerd"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
-msgstr "'L' is niet toegestaan in POSIX awk-opmaak"
+msgstr "`L' is niet toegestaan in POSIX awk-opmaak"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
-msgstr "'h' is betekenisloos in awk-opmaak; genegeerd"
+msgstr "`h' is betekenisloos in awk-opmaak; genegeerd"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
-msgstr "'h' is niet toegestaan in POSIX awk-opmaak"
+msgstr "`h' is niet toegestaan in POSIX awk-opmaak"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
-msgstr "[s]printf: waarde %g ligt buiten toegestaan bereik voor opmaak '%%%c'"
+msgstr "[s]printf: waarde %g ligt buiten toegestaan bereik voor opmaak `%%%c'"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+"onbekend aanduidingskarakter `%c' wordt genegeerd: geen argument wordt "
+"geconverteerd"
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "niet genoeg argumenten voor opmaakstring"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "niet genoeg ^ voor deze"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: opmaakaanduiding mist een stuurletter"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "te veel argumenten voor opmaakstring"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: geen argumenten"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: argument is geen getal"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: argument %g is negatief"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: startindex %g is ongeldig; 1 wordt gebruikt"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: startindex %g is geen integer; wordt afgekapt"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: lengte %g is niet >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: lengte %g is niet >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: lengte %g is geen integer; wordt afgekapt"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
"substr: lengte %g is te groot voor stringindexering; wordt verkort tot %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: bronstring heeft lengte nul"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: startindex %g ligt voorbij het einde van de string"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -597,259 +636,259 @@ msgstr ""
"substr: lengte %g bij startindex %g is groter dan de lengte van het eerste "
"argument (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: eerste argument is geen string"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: opmaakstring is leeg"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: tweede argument is geen getal"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: argument is geen string"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: argument is geen string"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
-msgstr "verwijzing naar ongeïnitialiseerd veld '$%d'"
+msgstr "verwijzing naar ongeïnitialiseerd veld `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: argument is geen string"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: argument is geen string"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: eerste argument is geen getal"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: tweede argument is geen getal"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: argument is geen getal"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: argument is geen getal"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: argument is geen getal"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: derde argument is geen array"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: derde argument is 0; wordt beschouwd als 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: eerste argument is geen getal"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: tweede argument is geen getal"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): cijfers na de komma worden afgekapt"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: eerste argument is geen getal"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: tweede argument is geen getal"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): cijfers na de komma worden afgekapt"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: eerste argument is geen getal"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: tweede argument is geen getal"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): cijfers na de komma worden afgekapt"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: eerste argument is geen getal"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: tweede argument is geen getal"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): cijfers na de komma worden afgekapt"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: eerste argument is geen getal"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: tweede argument is geen getal"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): cijfers na de komma worden afgekapt"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: argument is geen getal"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): negatieve waarden geven rare resultaten"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): cijfers na de komma worden afgekapt"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
-msgstr "dcgettext: '%s' is geen geldige lokale categorie"
+msgstr "dcgettext: `%s' is geen geldige taalregio-deelcategorie"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "onbekend nodetype %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "bufferoverloop in genflags2str()"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
-msgstr "array '%s' wordt gebruikt in een scalaire context"
+msgstr "array `%s' wordt gebruikt in een scalaire context"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
-"for: array '%s' veranderde van grootte %ld naar %ld tijdens uitvoer van de "
+"for: array `%s' veranderde van grootte %ld naar %ld tijdens uitvoer van de "
"lus"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
-msgstr "'break' buiten een lus is niet overdraagbaar"
+msgstr "`break' buiten een lus is niet overdraagbaar"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
-msgstr "'break' buiten een lus is niet toegestaan"
+msgstr "`break' buiten een lus is niet toegestaan"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
-msgstr "'continue' buiten een lus is niet overdraagbaar"
+msgstr "`continue' buiten een lus is niet overdraagbaar"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
-msgstr "'continue' buiten een lus is niet toegestaan"
+msgstr "`continue' buiten een lus is niet toegestaan"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
-msgstr "'next' kan niet aangeroepen worden in een BEGIN-regel"
+msgstr "`next' kan niet aangeroepen worden in een BEGIN-regel"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
-msgstr "'next' kan niet aangeroepen worden in een END-regel"
+msgstr "`next' kan niet aangeroepen worden in een END-regel"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
-msgstr "'nextfile' kan niet aangeroepen worden in een BEGIN-regel"
+msgstr "`nextfile' kan niet aangeroepen worden in een BEGIN-regel"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
-msgstr "'nextfile' kan niet aangeroepen worden in een END-regel"
+msgstr "`nextfile' kan niet aangeroepen worden in een END-regel"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "opdracht heeft geen effect"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
-msgstr "kan functienaam '%s' niet als variabele of array gebruiken"
+msgstr "kan functienaam `%s' niet als variabele of array gebruiken"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
-msgstr "verwijzing naar ongeïnitialiseerd argument '%s'"
+msgstr "verwijzing naar ongeïnitialiseerd argument `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
-msgstr "verwijzing naar ongeïnitialiseerde variabele '%s'"
+msgstr "verwijzing naar ongeïnitialiseerde variabele `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -857,44 +896,39 @@ msgstr ""
"concatenation: neveneffecten in de ene expressie hebben de lengte van een "
"andere veranderd!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "toewijzing wordt gebruikt in een conditionele context"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "deling door nul"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "deling door nul in '%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "ongeldig type (%s) in tree_eval()"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
-msgstr "deling door nul in '/='"
+msgstr "deling door nul in `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
-msgstr "deling door nul in '%%='"
+msgstr "deling door nul in `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
-msgstr "functie '%s' aangeroepen met meer argumenten dan gedeclareerd"
+msgstr "functie `%s' aangeroepen met meer argumenten dan gedeclareerd"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
-msgstr "functie '%s' is niet gedefinieerd"
+msgstr "functie `%s' is niet gedefinieerd"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -905,59 +939,64 @@ msgstr ""
"\t# Functieaanroepen-stack:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- hoofd --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "veldverwijzingspoging via een waarde die geen getal is"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "verwijzingspoging via een lege string"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "toegangspoging tot veld %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr ""
"toewijzing aan het resultaat van een ingebouwde functie is niet toegestaan"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
-msgstr "'IGNORECASE' is een gawk-uitbreiding"
+msgstr "`IGNORECASE' is een gawk-uitbreiding"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
-msgstr "'BINMODE' is een gawk-uitbreiding"
+msgstr "`BINMODE' is een gawk-uitbreiding"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "BINMODE-waarde `%s' is onjuist, wordt behandeld als 3"
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
-msgstr "onjuiste opgave van '%sFMT': '%s'"
+msgstr "onjuiste opgave van `%sFMT': `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
-msgstr "'--lint' wordt uitgeschakeld wegens toewijzing aan 'LINT'"
+msgstr "`--lint' wordt uitgeschakeld wegens toewijzing aan `LINT'"
#: ext.c:62 ext.c:67
msgid "`extension' is a gawk extension"
-msgstr "'extension' is een gawk-uitbreiding"
+msgstr "`extension' is een gawk-uitbreiding"
#: ext.c:77
#, c-format
msgid "extension: cannot open `%s' (%s)\n"
-msgstr "extension: kan '%s' niet openen (%s)\n"
+msgstr "extension: kan `%s' niet openen (%s)\n"
#: ext.c:85
#, c-format
msgid "extension: library `%s': cannot call function `%s' (%s)\n"
-msgstr "extension: bibliotheek '%s': kan functie '%s' niet aanroepen (%s)\n"
+msgstr "extension: bibliotheek `%s': kan functie `%s' niet aanroepen (%s)\n"
#: ext.c:105
msgid "extension: missing function name"
@@ -966,48 +1005,48 @@ msgstr "extension: ontbrekende functienaam"
#: ext.c:110
#, c-format
msgid "extension: illegal character `%c' in function name `%s'"
-msgstr "extension: ongeldig teken '%c' in functienaam '%s'"
+msgstr "extension: ongeldig teken `%c' in functienaam `%s'"
#: ext.c:116
#, c-format
msgid "extension: can't redefine function `%s'"
-msgstr "extension: kan functie '%s' niet herdefiniëren"
+msgstr "extension: kan functie `%s' niet herdefiniëren"
#: ext.c:120
#, c-format
msgid "extension: function `%s' already defined"
-msgstr "extension: functie '%s' is al gedefinieerd"
+msgstr "extension: functie `%s' is al gedefinieerd"
#: ext.c:125
#, c-format
msgid "extension: can't use gawk built-in `%s' as function name"
-msgstr "extension: kan in gawk ingebouwde '%s' niet als functienaam gebruiken"
+msgstr "extension: kan in gawk ingebouwde `%s' niet als functienaam gebruiken"
#: ext.c:127
#, c-format
msgid "extension: function name `%s' previously defined"
-msgstr "extension: functienaam '%s' is al eerder gedefinieerd"
+msgstr "extension: functienaam `%s' is al eerder gedefinieerd"
#: ext.c:204
#, c-format
msgid "function `%s' defined to take no more than %d argument(s)"
msgstr ""
-"functie '%s' is gedefinieerd om niet meer dan %d argument(en) te accepteren"
+"functie `%s' is gedefinieerd om niet meer dan %d argument(en) te accepteren"
#: ext.c:207
#, c-format
msgid "function `%s': missing argument #%d"
-msgstr "functie '%s': ontbrekend argument #%d"
+msgstr "functie `%s': ontbrekend argument #%d"
#: ext.c:217
#, c-format
msgid "function `%s': argument #%d: attempt to use scalar as an array"
-msgstr "functie '%s': argument #%d: een scalair wordt gebruikt als array"
+msgstr "functie `%s': argument #%d: een scalair wordt gebruikt als array"
#: ext.c:221
#, c-format
msgid "function `%s': argument #%d: attempt to use array as a scalar"
-msgstr "functie '%s': argument #%d: een array wordt gebruikt als scalair"
+msgstr "functie `%s': argument #%d: een array wordt gebruikt als scalair"
#: ext.c:246
msgid "Operation Not Supported"
@@ -1017,559 +1056,567 @@ msgstr "Actie wordt niet ondersteund"
msgid "NF set to negative value"
msgstr "NF is op een negatieve waarde gezet"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: tweede argument is geen array"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: lege string als derde argument is een gawk-uitbreiding"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
-msgstr "'FIELDWIDTHS' is een gawk-uitbreiding"
+msgstr "`FIELDWIDTHS' is een gawk-uitbreiding"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
-msgstr "ongeldige waarde voor FIELDWIDTHS, nabij '%s'"
+msgstr "ongeldige waarde voor FIELDWIDTHS, nabij `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
-msgstr "een lege string als 'FS' is een gawk-uitbreiding"
+msgstr "een lege string als `FS' is een gawk-uitbreiding"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
-msgstr "oude 'awk' staat geen reguliere expressies toe als waarde van 'FS'"
-
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
-msgstr "%s: optie '%s' is niet eenduidig\n"
-
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
-msgstr "%s: optie '--%s' staat geen argument toe\n"
-
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
-msgstr "%s: optie '%c%s' staat geen argument toe\n"
-
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
-msgstr "%s: optie '%s' vereist een argument\n"
-
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
-msgstr "%s: onbekende optie '--%s'\n"
-
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
-msgstr "%s: onbekende optie '%c%s'\n"
-
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: ongeldige optie -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr "%s: ongeldige optie -- %c\n"
-
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: optie vereist een argument -- %c\n"
-
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
-msgstr "%s: optie '-W %s' is niet eenduidig\n"
-
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
-msgstr "%s: optie '-W %s' staat geen argument toe\n"
-
-#: io.c:345
+msgstr "oude `awk' staat geen reguliere expressies toe als waarde van `FS'"
+
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: optie `%s' is niet eenduidig\n"
+
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: optie `--%s' staat geen argument toe\n"
+
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: optie `%c%s' staat geen argument toe\n"
+
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
+msgstr "%s: optie `%s' vereist een argument\n"
+
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: onbekende optie `--%s'\n"
+
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: onbekende optie `%c%s'\n"
+
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: ongeldige optie -- `%c'\n"
+
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: optie vereist een argument -- `%c'\n"
+
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: optie `-W %s' is niet eenduidig\n"
+
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: optie `-W %s' staat geen argument toe\n"
+
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
-msgstr "kan bestand '%s' niet openen om te lezen (%s)"
+msgstr "kan bestand `%s' niet openen om te lezen (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "sluiten van bestandsdescriptor %d ('%s') is mislukt (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "ongeldig boomtype %s in redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
-msgstr "expressie in omleiding '%s' heeft alleen een getal als waarde"
+msgstr "expressie in omleiding `%s' heeft alleen een getal als waarde"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
-msgstr "expressie voor omleiding '%s' heeft een lege string als waarde"
+msgstr "expressie voor omleiding `%s' heeft een lege string als waarde"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
-"bestandsnaam '%s' voor omleiding '%s' kan het resultaat zijn van een "
+"bestandsnaam `%s' voor omleiding `%s' kan het resultaat zijn van een "
"logische expressie"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
-msgstr "onnodige mix van '>' en '>>' voor bestand '%.*s'"
+msgstr "onnodige mix van `>' en `>>' voor bestand `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
-msgstr "kan pijp '%s' niet openen voor uitvoer (%s)"
+msgstr "kan pijp `%s' niet openen voor uitvoer (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
-msgstr "kan pijp '%s' niet openen voor invoer (%s)"
-
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "'%s' is een map"
+msgstr "kan pijp `%s' niet openen voor invoer (%s)"
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
-msgstr "kan tweerichtings-socket '%s' niet openen voor in- en uitvoer (%s)"
+msgstr "kan tweerichtings-socket `%s' niet openen voor in- en uitvoer (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
-msgstr "kan tweerichtings-pijp '%s' niet openen voor in- en uitvoer (%s)"
+msgstr "kan tweerichtings-pijp `%s' niet openen voor in- en uitvoer (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
-msgstr "kan niet omleiden van '%s' (%s)"
+msgstr "kan niet omleiden van `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
-msgstr "kan niet omleiden naar '%s' (%s)"
+msgstr "kan niet omleiden naar `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"systeemgrens voor aantal open bestanden is bereikt: begonnen met multiplexen"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
-msgstr "sluiten van '%s' is mislukt (%s)"
+msgstr "sluiten van `%s' is mislukt (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "te veel pijpen of invoerbestanden geopend"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
-msgstr "close: tweede argument moet 'to' of 'from' zijn"
+msgstr "close: tweede argument moet `to' of `from' zijn"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
-msgstr "close: '%.*s' is geen open bestand, pijp, of co-proces"
+msgstr "close: `%.*s' is geen open bestand, pijp, of co-proces"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "sluiten van een nooit-geopende omleiding"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
-"close: omleiding '%s' is niet geopend met '|&'; tweede argument wordt "
+"close: omleiding `%s' is niet geopend met `|&'; tweede argument wordt "
"genegeerd"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
-msgstr "afsluitwaarde %d bij mislukte sluiting van pijp '%s' (%s)"
+msgstr "afsluitwaarde %d bij mislukte sluiting van pijp `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
-msgstr "afsluitwaarde %d bij mislukte sluiting van bestand '%s' (%s)"
+msgstr "afsluitwaarde %d bij mislukte sluiting van bestand `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
-msgstr "geen expliciete sluiting van socket '%s' aangegeven"
+msgstr "geen expliciete sluiting van socket `%s' aangegeven"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
-msgstr "geen expliciete sluiting van co-proces '%s' aangegeven"
+msgstr "geen expliciete sluiting van co-proces `%s' aangegeven"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
-msgstr "geen expliciete sluiting van pijp '%s' aangegeven"
+msgstr "geen expliciete sluiting van pijp `%s' aangegeven"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
-msgstr "geen expliciete sluiting van bestand '%s' aangegeven"
+msgstr "geen expliciete sluiting van bestand `%s' aangegeven"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "fout tijdens schrijven van standaarduitvoer (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "fout tijdens schrijven van standaardfoutuitvoer (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
-msgstr "leegmaken van pijp '%s' is mislukt (%s)"
+msgstr "leegmaken van pijp `%s' is mislukt (%s)"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
-msgstr "leegmaken door co-proces van pijp naar '%s' is mislukt (%s)"
+msgstr "leegmaken door co-proces van pijp naar `%s' is mislukt (%s)"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
-msgstr "leegmaken van bestand '%s' is mislukt (%s)"
+msgstr "leegmaken van bestand `%s' is mislukt (%s)"
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
-msgstr "lokale poort %s is ongeldig in '/inet'"
+msgstr "lokale poort %s is ongeldig in `/inet'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "host- en poortinformatie (%s, %s) zijn ongeldig"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
-msgstr "cliënt van '/inet/raw' is nog niet klaar, sorry"
+msgstr "cliënt van `/inet/raw' is nog niet klaar, sorry"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
-msgstr "Alleen root mag '/inet/raw' gebruiken."
+msgstr "Alleen root mag `/inet/raw' gebruiken."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
-msgstr "server van '/inet/raw' is nog niet klaar, sorry"
+msgstr "server van `/inet/raw' is nog niet klaar, sorry"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
-msgstr "geen (bekend) protocol aangegeven in speciale bestandsnaam '%s'"
+msgstr "geen (bekend) protocol aangegeven in speciale bestandsnaam `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
-msgstr "speciale bestandsnaam '%s' is onvolledig"
+msgstr "speciale bestandsnaam `%s' is onvolledig"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
-msgstr "'/inet' heeft een gindse hostnaam nodig"
+msgstr "`/inet' heeft een gindse hostnaam nodig"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
-msgstr "'/inet' heeft een gindse poort nodig"
+msgstr "`/inet' heeft een gindse poort nodig"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP-communicatie wordt niet ondersteund"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "`%s' is een map"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
-msgstr "gebruik 'PROCINFO[\"%s\"]' in plaats van '%s'"
+msgstr "gebruik `PROCINFO[\"%s\"]' in plaats van `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
-msgstr "gebruik 'PROCINFO[...]' in plaats van '/dev/user'"
+msgstr "gebruik `PROCINFO[...]' in plaats van `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
-msgstr "kan '%s' niet openen -- modus '%s'"
+msgstr "kan `%s' niet openen -- modus `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "kan meester-pty van dochterproces niet sluiten (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "kan standaarduitvoer van dochterproces niet sluiten (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"kan slaaf-pty niet overzetten naar standaarduitvoer van dochterproces (dup: %"
"s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "kan standaardinvoer van dochterproces niet sluiten (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"kan slaaf-pty niet overzetten naar standaardinvoer van dochterproces (dup: %"
"s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "kan slaaf-pty niet sluiten (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr ""
"kan pijp niet overzetten naar standaarduitvoer van dochterproces (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
"kan pijp niet overzetten naar standaardinvoer van dochterproces (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "kan standaarduitvoer van ouderproces niet herstellen\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "kan standaardinvoer van ouderproces niet herstellen\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "kan pijp niet sluiten (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
-msgstr "'|&' wordt niet ondersteund"
+msgstr "`|&' wordt niet ondersteund"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
-msgstr "kan pijp '%s' niet openen (%s)"
+msgstr "kan pijp `%s' niet openen (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
-msgstr "kan voor '%s' geen dochterproces starten (fork: %s)"
+msgstr "kan voor `%s' geen dochterproces starten (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
-msgstr "databestand '%s' is leeg"
+msgstr "databestand `%s' is leeg"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "kan geen extra invoergeheugen meer toewijzen"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
-msgstr "fout tijdens lezen van invoerbestand '%s': %s"
+msgstr "fout tijdens lezen van invoerbestand `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
-msgstr "een 'RS' van meerdere tekens is een gawk-uitbreiding"
+msgstr "een `RS' van meerdere tekens is een gawk-uitbreiding"
+
+#: main.c:304
+msgid "out of memory"
+msgstr "geen vrij geheugen"
-#: main.c:351
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
-msgstr "optie '-m[fr]' is irrelevant in gawk"
+msgstr "optie `-m[fr]' is irrelevant in gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
-msgstr "gebruikswijze van optie -m: '-m[fr] nnn'"
+msgstr "gebruikswijze van optie -m: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
-msgstr "%s: optie '-W %s' is onbekend; genegeerd\n"
+msgstr "%s: optie `-W %s' is onbekend; genegeerd\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
-msgstr "argument van '--source' is leeg; genegeerd"
+msgstr "argument van `--source' is leeg; genegeerd"
+
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: optie vereist een argument -- %c\n"
-#: main.c:480
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
-msgstr "omgevingsvariabele 'POSIXLY_CORRECT' is gezet: '--posix' ingeschakeld"
+msgstr "omgevingsvariabele `POSIXLY_CORRECT' is gezet: `--posix' ingeschakeld"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
-msgstr "'--posix' overstijgt '--traditional'"
+msgstr "`--posix' overstijgt `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
-msgstr "'--posix'/'--traditional' overstijgen '--non-decimal-data'"
+msgstr "`--posix'/`--traditional' overstijgen `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
-msgstr "het uitvoeren van %s als 'setuid root' kan een veiligheidsrisico zijn"
+msgstr "het uitvoeren van %s als `setuid root' kan een veiligheidsrisico zijn"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "kan standaardinvoer niet in binaire modus plaatsen (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "kan standaarduitvoer niet in binaire modus plaatsen (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "kan standaardfoutuitvoer niet in binaire modus plaatsen (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "helemaal geen programmatekst!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Gebruik: %s [opties] -f programmabestand [--] bestand...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
" of: %s [opties] [--] %cprogrammatekst%c bestand...\n"
"\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "\tPOSIX-opties:\t\t\tequivalente GNU-opties:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f programmabestand\t\t--file=programmabestand\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F veldscheidingsteken\t\t--field-separator=veldscheidingsteken\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=waarde\t\t\t--assign=var=waarde\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] waarde\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-O\t\t\t--optimize\n"
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=bestand]\t--dump-variables[=bestand]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=bestand\t\t\t--exec=bestand\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=bestand]\t\t--profile[=bestand]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=programmatekst\t--source=programmatekst\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr "\t-W use-lc-numeric\t\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t\t--version\n"
@@ -1578,7 +1625,7 @@ msgstr "\t-W version\t\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1586,32 +1633,33 @@ msgid ""
"\n"
msgstr ""
"\n"
-"Voor het rapporteren van programmagebreken, zie 'info gawk bugs'\n"
-"of de sectie 'Reporting Problems and Bugs' in de gedrukte versie.\n"
+"Voor het rapporteren van programmagebreken, zie `info gawk bugs'\n"
+"of de sectie `Reporting Problems and Bugs' in de gedrukte versie.\n"
"Meld fouten in de vertaling aan <vertaling@vrijschrift.org>.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-"'gawk' is een patroonherkennings- en bewerkingsprogramma.\n"
+"`gawk' is een patroonherkennings- en bewerkingsprogramma.\n"
"Standaard leest het van standaardinvoer en schrijft naar standaarduitvoer.\n"
"\n"
-#: main.c:742
+#: main.c:769
+#, fuzzy
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
"Voorbeelden:\n"
-"\tgawk '{ som += $1 }; END { print som }' bestand\n"
-"\tgawk -F: '{ print $1 }' /etc/passwd\n"
+"\tgawk `{ som += $1 }; END { print som }' bestand\n"
+"\tgawk -F: `{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1629,7 +1677,7 @@ msgstr ""
"uitgegeven door de Free Software Foundation, naar keuze ofwel onder\n"
"versie 3 of onder een nieuwere versie van die licentie.\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1643,7 +1691,7 @@ msgstr ""
"Zie de GNU General Public License voor meer details.\n"
"\n"
-#: main.c:781
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
@@ -1652,48 +1700,56 @@ msgstr ""
"ontvangen te hebben; is dit niet het geval, dan kunt u deze licentie\n"
"ook vinden op http://www.gnu.org/licenses/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft maakt van FS geen tab in POSIX-awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-"%s: argument '%s' van '-v' is niet van de vorm 'var=waarde'\n"
+"%s: argument `%s' van `-v' is niet van de vorm `var=waarde'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
-msgstr "'%s' is geen geldige variabelenaam"
+msgstr "`%s' is geen geldige variabelenaam"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
-msgstr "'%s' is geen variabelenaam, zoekend naar bestand '%s=%s'"
+msgstr "`%s' is geen variabelenaam, zoekend naar bestand `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "drijvende-komma-berekeningsfout"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "fatale fout: **interne fout**"
-#: main.c:1180
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "fatale fout: **interne fout**: segmentatiefout"
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "fatale fout: **interne fout**: stack is vol"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "geen reeds-geopende bestandsdescriptor %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "kan /dev/null niet openen voor bestandsdescriptor %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "kan groepen niet vinden: %s"
@@ -1719,58 +1775,68 @@ msgstr "fataal: "
msgid "can't convert string to float"
msgstr "kan string niet converteren naar drijvende-komma-getal"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "backslash aan het einde van de string"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
-msgstr "oude 'awk' kent de stuurcodereeks '\\%c' niet"
+msgstr "oude `awk' kent de stuurcodereeks `\\%c' niet"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
-msgstr "POSIX staat stuurcode '\\x' niet toe"
+msgstr "POSIX staat stuurcode `\\x' niet toe"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
-msgstr "geen hex cijfers in stuurcodereeks '\\x'"
+msgstr "geen hex cijfers in stuurcodereeks `\\x'"
+
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+"hexadecimale stuurcode \\x%.*s van %d tekens wordt waarschijnlijk niet "
+"afgehandeld zoals verwacht"
-#: node.c:639
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
-msgstr "stuurcodereeks '\\%c' behandeld als normale '%c'"
+msgstr "stuurcodereeks `\\%c' behandeld als normale `%c'"
#: posix/gawkmisc.c:172
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
-msgstr "%s %s '%s': kan close-on-exec niet activeren: (fcntl: %s)"
+msgstr "%s %s `%s': kan close-on-exec niet activeren: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
-msgstr "kan '%s' niet openen om te schrijven: %s"
+msgstr "kan `%s' niet openen om te schrijven: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
-msgstr "**interne fout**: %s heeft een lege vname"
+msgstr "**interne fout**: %s heeft een lege `vname'"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
-msgstr "# wordt intern behandeld als 'delete'"
+msgstr "# wordt intern behandeld als `delete"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# dit is een dynamisch geladen uitbreidingsfunctie"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk-profiel, gemaakt %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1779,7 +1845,7 @@ msgstr ""
"\t# BEGIN-blok(ken)\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1788,7 +1854,7 @@ msgstr ""
"\t# Regel(s)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1797,7 +1863,7 @@ msgstr ""
"\t# END-blok(ken)\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1806,79 +1872,87 @@ msgstr ""
"\n"
"\t# Functies, alfabetisch geordend\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "onverwacht type %s in prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "onbekend knooptype %s in pp_var"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Gelukt"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Geen overeenkomsten"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Ongeldige reguliere expressie"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Ongeldig samengesteld teken"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Ongeldige tekenklassenaam"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Backslash aan het eind"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Ongeldige terugverwijzing"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Ongepaarde [ of [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Ongepaarde ( of \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Ongepaarde \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Ongeldige inhoud van \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Ongeldig bereikeinde"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Onvoldoende geheugen beschikbaar"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Ongeldige voorafgaande reguliere expressie"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Voortijdig einde van reguliere expressie"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Reguliere expressie is te groot"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Ongepaarde ) of \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Geen eerdere reguliere expressie"
+
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: ongeldige optie -- %c\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 8dd4fe6d..b272d0ef 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 933d33c9..eebbaea2 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,18 +1,20 @@
# Polish translations for GNU AWK package.
-# Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
-# Wojciech Polak <polak@gnu.org>, 2003, 2004, 2005, 2007.
+# Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gawk package.
+#
+# Wojciech Polak <polak@gnu.org>, 2003, 2004, 2005, 2007, 2008, 2009.
# additional help by Sergey Poznyakoff <gray@gnu.org>, 2003.
#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.5f\n"
+"Project-Id-Version: gawk 3.1.6d\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-08-17 20:05+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-06-20 13:32+0200\n"
"Last-Translator: Wojciech Polak <polak@gnu.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
@@ -20,17 +22,17 @@ msgstr ""
#: array.c:112
#, c-format
msgid "attempt to use function `%s' as an array"
-msgstr "próba u¿ycia funkcji `%s' jako tablicy"
+msgstr "próba użycia funkcji `%s' jako tablicy"
#: array.c:115
#, c-format
msgid "attempt to use scalar parameter `%s' as an array"
-msgstr "próba u¿ycia parametru `%s' skalaru jako tablicy"
+msgstr "próba użycia parametru `%s' skalaru jako tablicy"
#: array.c:118
#, c-format
msgid "attempt to use scalar `%s' as array"
-msgstr "próba u¿ycia skalaru `%s' jako tablicy"
+msgstr "próba użycia skalaru `%s' jako tablicy"
#: array.c:156
#, c-format
@@ -40,12 +42,12 @@ msgstr "od %s"
#: array.c:514
#, c-format
msgid "reference to uninitialized element `%s[\"%s\"]'"
-msgstr "odwo³anie do niezainicjowanego elementu `%s[\"%s\"]'"
+msgstr "odwołanie do niezainicjowanego elementu `%s[\"%s\"]'"
#: array.c:520
#, c-format
msgid "subscript of array `%s' is null string"
-msgstr "indeks tablicy `%s' jest zerowym ³añcuchem"
+msgstr "indeks tablicy `%s' jest zerowym łańcuchem"
#: array.c:624
#, c-format
@@ -77,842 +79,874 @@ msgstr "%s: jest parametrem\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array_ref do %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
-msgstr "%s bloków musi posiadaæ czê¶æ dotycz±c± akcji"
+msgstr "%s bloków musi posiadać część dotyczącą akcji"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
-msgstr "ka¿da regu³a musi posiadaæ wzorzec lub czê¶æ dotycz±c± akcji"
+msgstr "każda reguła musi posiadać wzorzec lub część dotyczącą akcji"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
-msgstr "stary awk nie wspiera wielokrotnych regu³ `BEGIN' lub `END'"
+msgstr "stary awk nie wspiera wielokrotnych reguł `BEGIN' lub `END'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr ""
-"`%s' jest funkcj± wbudowan±, wiêc nie mo¿e zostaæ ponownie zdefiniowana"
+"`%s' jest funkcją wbudowaną, więc nie może zostać ponownie zdefiniowana"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
-"sta³e wyra¿enie regularne `//' wygl±da jak komentarz C++, ale nim nie jest"
+"stałe wyrażenie regularne `//' wygląda jak komentarz C++, ale nim nie jest"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
-"sta³e wyra¿enie regularne `/%s/' wygl±da jak komentarz C, ale nim nie jest"
+"stałe wyrażenie regularne `/%s/' wygląda jak komentarz C, ale nim nie jest"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
-msgstr "instrukcja mo¿e nie mieæ ¿adnego efektu"
+msgstr "instrukcja może nie mieć żadnego efektu"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
-msgstr "`%s' u¿yty w akcji %s"
+msgstr "`%s' użyty w akcji %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' jest rozszerzeniem gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
-msgstr "`return' u¿yty poza kontekstem funkcji"
+msgstr "`return' użyty poza kontekstem funkcji"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
-"zwyk³y `print' w regu³ach BEGIN lub END powinien prawdopodobnie byæ jako "
+"zwykły `print' w regułach BEGIN lub END powinien prawdopodobnie być jako "
"`print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete tablica' jest rozszerzeniem gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
-msgstr "`delete(tablica)' jest nieprzeno¶nym rozszerzeniem tawk"
+msgstr "`delete(tablica)' jest nieprzenośnym rozszerzeniem tawk"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
-msgstr "powielone warto¶ci case w ciele switch: %s"
+msgstr "powielone wartości case w ciele switch: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "wykryto powielony `default' w ciele switch"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
-msgstr "wieloetapowe dwukierunkowe linie potokowe nie dzia³aj±"
+msgstr "wieloetapowe dwukierunkowe linie potokowe nie działają"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
-msgstr "wyra¿anie regularne po prawej stronie przypisania"
+msgstr "wyrażanie regularne po prawej stronie przypisania"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
-msgstr "wyra¿enie regularne po lewej stronie operatora `~' lub `!~'"
+msgstr "wyrażenie regularne po lewej stronie operatora `~' lub `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr ""
-"stary awk nie wspiera s³owa kluczowego `in', z wyj±tkiem po s³owie `for'"
+"stary awk nie wspiera słowa kluczowego `in', z wyjątkiem po słowie `for'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
-msgstr "wyra¿enie regularne po prawej stronie porównania"
+msgstr "wyrażenie regularne po prawej stronie porównania"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr ""
-"komenda `getline' bez przekierowania nie jest zdefiniowana wewn±trz akcji END"
+"komenda `getline' bez przekierowania nie jest zdefiniowana wewnÄ…trz akcji END"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "stary awk nie wspiera wielowymiarowych tablic"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
-msgstr "wywo³anie `length' bez nawiasów jest nieprzeno¶ne"
+msgstr "wywołanie `length' bez nawiasów jest nieprzenośne"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
-msgstr "wywo³anie `length' bez podania nawiasów jest niezalecane przez POSIX"
+msgstr "wywołanie `length' bez podania nawiasów jest niezalecane przez POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
-msgstr "u¿ycie nie-tablicy jako tablicy"
+msgstr "użycie nie-tablicy jako tablicy"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
-msgstr "nieprawid³owe wyra¿enie indeksowe"
+msgstr "nieprawidłowe wyrażenie indeksowe"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
-msgstr "niespodziewany znak nowego wiersza lub koñca ³añcucha"
+msgstr "niespodziewany znak nowego wiersza lub końca łańcucha"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
-msgstr "pusty tekst programu w linii poleceñ"
+msgstr "pusty tekst programu w linii poleceń"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
-msgstr "nie mo¿na otworzyæ pliku ¼ród³owego `%s' do czytania (%s)"
+msgstr "nie można otworzyć pliku źródłowego `%s' do czytania (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
-msgstr "nie mo¿na otworzyæ pliku ¼ród³owego `%s' (%s)"
+msgstr "nie można otworzyć pliku źródłowego `%s' (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
-msgstr "plik ¼ród³owy `%s' jest pusty"
+msgstr "plik źródłowy `%s' jest pusty"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
-msgstr "plik ¼ród³owy nie posiada na koñcu znaku nowego wiersza"
+msgstr "plik źródłowy nie posiada na końcu znaku nowego wiersza"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr ""
-"niezakoñczone prawid³owo wyra¿enie regularne koñczy siê znakiem `\\' na "
-"koñcu pliku"
+"niezakończone prawidłowo wyrażenie regularne kończy się znakiem `\\' na "
+"końcu pliku"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-"%s: %d: modyfikator wyra¿enia regularnego `/.../%c' tawk nie dzia³a w gawk"
+"%s: %d: modyfikator wyrażenia regularnego `/.../%c' tawk nie działa w gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
-msgstr "modyfikator wyra¿enia regularnego `/.../%c' tawk nie dzia³a w gawk"
+msgstr "modyfikator wyrażenia regularnego `/.../%c' tawk nie działa w gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
-msgstr "niezakoñczone wyra¿enie regularne"
+msgstr "niezakończone wyrażenie regularne"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
-msgstr "niezakoñczone wyra¿enie regularne na koñcu pliku"
+msgstr "niezakończone wyrażenie regularne na końcu pliku"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
-msgstr "u¿ycie `\\ #...' kontynuacji linii nie jest przeno¶ne"
+msgstr "użycie `\\ #...' kontynuacji linii nie jest przenośne"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "backslash nie jest ostatnim znakiem w wierszu"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX nie zezwala na operator `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "stary awk nie wspiera operatora `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX nie zezwala na operator `**'"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "stary awk nie wspiera operatora `**'"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "operator `^=' nie jest wspierany w starym awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "operator `^' nie jest wspierany w starym awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
-msgstr "niezakoñczony ³añcuch"
+msgstr "niezakończony łańcuch"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
-msgstr "nieprawid³owy znak '%c' w wyra¿eniu"
+msgstr "nieprawidłowy znak '%c' w wyrażeniu"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' jest rozszerzeniem gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' jest rozszerzeniem Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX nie zezwala na `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' nie jest wspierany w starym awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
-msgstr "`goto' uwa¿ane za szkodliwe!\n"
+msgstr "`goto' uważane za szkodliwe!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
-msgstr "%d jest nieprawid³owe jako liczba argumentów dla %s"
+msgstr "%d jest nieprawidłowe jako liczba argumentów dla %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: trzeci argument jest rozszerzeniem gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
-"%s: litera³ ³añcuchowy jako ostatni argument podstawienia nie ma ¿adnego "
+"%s: literał łańcuchowy jako ostatni argument podstawienia nie ma żadnego "
"efektu"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s trzeci parametr nie jest zmiennym obiektem"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: drugi argument jest rozszerzeniem gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
-msgstr "nieprawid³owe u¿ycie dcgettext(_\"...\"): usuñ znak podkre¶lenia"
+msgstr "nieprawidłowe użycie dcgettext(_\"...\"): usuń znak podkreślenia"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
-msgstr "nieprawid³owe u¿ycie dcngettext(_\"...\"): usuñ znak podkre¶lenia"
+msgstr "nieprawidłowe użycie dcngettext(_\"...\"): usuń znak podkreślenia"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funkcja `%s': parametr #%d, `%s', powiela parametr #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
-msgstr "funkcja `%s': parametr `%s' zas³ania globaln± zmienn±"
+msgstr "funkcja `%s': parametr `%s' zasłania globalną zmienną"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
-msgstr "nie mo¿na otworzyæ `%s' do zapisu (%s)"
+msgstr "nie można otworzyć `%s' do zapisu (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
-msgstr "wysy³anie profilu na standardowe wyj¶cie diagnostyczne"
+msgstr "wysyłanie profilu na standardowe wyjście diagnostyczne"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
-msgstr "%s: zamkniêcie nie powiod³o siê (%s)"
+msgstr "%s: zamknięcie nie powiodło się (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
-msgstr "shadow_funcs() wywo³ana podwójnie!"
+msgstr "shadow_funcs() wywołana podwójnie!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
-msgstr "wyst±pi³y przykryte zmienne."
+msgstr "wystąpiły przykryte zmienne."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
-msgstr "funkcja `%s': nie mo¿na u¿yæ nazwy funkcji jako nazwy parametru"
+msgstr "funkcja `%s': nie można użyć nazwy funkcji jako nazwy parametru"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr ""
+"funkcja `%s': nie można użyć specjalnej zmiennej `%s' jako parametru funkcji"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
-msgstr "nazwa funkcji `%s' zosta³a zdefiniowana poprzednio"
+msgstr "nazwa funkcji `%s' została zdefiniowana poprzednio"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
-msgstr "funkcja `%s' zosta³a wywo³ana, ale nigdy nie zosta³a zdefiniowana"
+msgstr "funkcja `%s' została wywołana, ale nigdy nie została zdefiniowana"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
-msgstr "funkcja `%s' zosta³a zdefiniowana, ale nigdy nie zosta³a wywo³ana"
+msgstr "funkcja `%s' została zdefiniowana, ale nigdy nie została wywołana"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
-msgstr "sta³e wyra¿enie regularne dla parametru #%d daje warto¶æ logiczn±"
+msgstr "stałe wyrażenie regularne dla parametru #%d daje wartość logiczną"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
"or used as a variable or an array"
msgstr ""
-"funkcja `%s' zosta³a wywo³ana z bia³ymi znakami pomiêdzy jej nazw± a znakiem "
+"funkcja `%s' została wywołana z białymi znakami pomiędzy jej nazwą a znakiem "
"`(',\n"
-"lub u¿yta jako zmienna lub jako tablica"
+"lub użyta jako zmienna lub jako tablica"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "próba dzielenia przez zero w `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
-msgstr "%s do \"%s\" nie powiód³ siê (%s)"
+msgstr "%s do \"%s\" nie powiódł się (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
-msgstr "standardowe wyj¶cie"
+msgstr "standardowe wyjście"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
-msgstr "nieznany powód"
+msgstr "nieznany powód"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
-msgstr "exp: otrzymano argument nie bêd±cy liczb±"
+msgstr "exp: otrzymano argument nie będący liczbą"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
-msgstr "exp: argument %g jest poza zasiêgiem"
+msgstr "exp: argument %g jest poza zasięgiem"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
-"fflush: nie mo¿na opró¿niæ: potok `%s' otwarty do czytania, a nie do zapisu"
+"fflush: nie można opróżnić: potok `%s' otwarty do czytania, a nie do zapisu"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
-"fflush: nie mo¿na opró¿niæ: plik `%s' otwarty do czytania, a nie do zapisu"
+"fflush: nie można opróżnić: plik `%s' otwarty do czytania, a nie do zapisu"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' nie jest ani otwartym plikiem, ani potokiem, ani procesem"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
-msgstr "index: otrzymano pierwszy argument, który nie jest ³añcuchem"
+msgstr "index: otrzymano pierwszy argument, który nie jest łańcuchem"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
-msgstr "index: otrzymano drugi argument, który nie jest ³añcuchem"
+msgstr "index: otrzymano drugi argument, który nie jest łańcuchem"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
-msgstr "int: otrzymano argument, który nie jest liczb±"
+msgstr "int: otrzymano argument, który nie jest liczbą"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "`length(tablica)' jest rozszerzeniem gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "length: argument bez określonego typu zostanie uznany za skalar"
+
+#: builtin.c:477
msgid "length: received non-string argument"
-msgstr "length: otrzymano argument, który nie jest ³añcuchem"
+msgstr "length: otrzymano argument, który nie jest łańcuchem"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
-msgstr "log: otrzymano argument, który nie jest liczb±"
+msgstr "log: otrzymano argument, który nie jest liczbą"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: otrzymano ujemny argument %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
-msgstr "nale¿y u¿yæ `count$' we wszystkich formatach lub nic"
+msgstr "należy użyć `count$' we wszystkich formatach lub nic"
+
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "szerokość pola jest ignorowana dla specyfikatora `%%%%'"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "precyzja jest ignorowana dla specyfikatora `%%%%'"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr "szerokość pola i precyzja są ignorowane dla specyfikatora `%%%%'"
-#: builtin.c:799
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' jest niedozwolony w formatach awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
-msgstr "argument count z `$' musi byæ > 0"
+msgstr "argument count z `$' musi być > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
-msgstr "argument count %ld wiêkszy ni¿ ca³kowita suma argumentów dostarczonych"
+msgstr "argument count %ld większy niż całkowita suma argumentów dostarczonych"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' jest niedozwolony po kropce w formacie"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
-msgstr "brak `$' dla pozycyjnej szeroko¶ci pola lub precyzji"
+msgstr "brak `$' dla pozycyjnej szerokości pola lub precyzji"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' jest bezsensowny w formatach awk; zignorowany"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`l' jest niedozwolony w formatach POSIX awk"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' jest bezsensowny w formatach awk; zignorowany"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`L' jest niedozwolony w formatach POSIX awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' jest bezsensowny w formatach awk; zignorowany"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`h' jest niedozwolony w formatach POSIX awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
-msgstr "[s]printf: warto¶æ %g jest poza zasiêgiem dla formatu `%%%c'"
+msgstr "[s]printf: wartość %g jest poza zasięgiem dla formatu `%%%c'"
+
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+"pominięcie nieznanego formatu specyfikatora znaku `%c': nie skonwertowano "
+"argumentu"
-#: builtin.c:1266
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr ""
-"brak wystarczaj±cej liczby argumentów, aby zaspokoiæ ³añcuch formatuj±cy"
+"brak wystarczającej liczby argumentów, aby zaspokoić łańcuch formatujący"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
-msgstr "zabrak³o ^"
+msgstr "zabrakło ^"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: specyfikator formatu nie posiada kontrolnej litery"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
-msgstr "zbyt du¿o podanych argumentów w ³añcuchu formatuj±cym"
+msgstr "zbyt dużo podanych argumentów w łańcuchu formatującym"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
-msgstr "printf: brak argumentów"
+msgstr "printf: brak argumentów"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
-msgstr "sqrt: otrzymano argument, który nie jest liczb±"
+msgstr "sqrt: otrzymano argument, który nie jest liczbą"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
-msgstr "sqrt: wywo³ana z ujemnym argumentem %g"
+msgstr "sqrt: wywołana z ujemnym argumentem %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
-msgstr "substr: pocz±tkowy indeks %g jest nieprawid³owy, nast±pi u¿ycie 1"
+msgstr "substr: początkowy indeks %g jest nieprawidłowy, nastąpi użycie 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr ""
-"substr: pocz±tkowy indeks %g, który nie jest liczb± ca³kowit±, zostanie "
-"obciêty"
+"substr: początkowy indeks %g, który nie jest liczbą całkowitą, zostanie "
+"obcięty"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
-msgstr "substr: d³ugo¶æ %g nie jest >= 1"
+msgstr "substr: długość %g nie jest >= 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
-msgstr "substr: d³ugo¶æ %g nie jest >= 0"
+msgstr "substr: długość %g nie jest >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
-msgstr "substr: d³ugo¶æ %g, która nie jest liczb± ca³kowit±, zostanie obciêta"
+msgstr "substr: długość %g, która nie jest liczbą całkowitą, zostanie obcięta"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
-msgstr "substr: d³ugo¶æ %g zbyt du¿a dla indeksu ³añcucha, obcinanie do %g"
+msgstr "substr: długość %g zbyt duża dla indeksu łańcucha, obcinanie do %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
-msgstr "substr: ³añcuch ¼ród³owy ma zerow± d³ugo¶æ"
+msgstr "substr: łańcuch źródłowy ma zerową długość"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
-msgstr "substr: pocz±tkowy indeks %g le¿y poza koñcem ³añcucha"
+msgstr "substr: początkowy indeks %g leży poza końcem łańcucha"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr ""
-"substr: d³ugo¶æ %g zaczynaj±c od %g przekracza d³ugo¶æ pierwszego argumentu "
+"substr: długość %g zaczynając od %g przekracza długość pierwszego argumentu "
"(%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
-msgstr "strftime: otrzymano pierwszy argument, który nie jest ³añcuchem"
+msgstr "strftime: otrzymano pierwszy argument, który nie jest łańcuchem"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
-msgstr "strftime: otrzymano pusty ³añcuch formatuj±cy"
+msgstr "strftime: otrzymano pusty łańcuch formatujący"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
-msgstr "strftime: otrzymano drugi argument, który nie jest liczb±"
+msgstr "strftime: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
-msgstr "mktime: otrzymano argument, który nie jest ³añcuchem"
+msgstr "mktime: otrzymano argument, który nie jest łańcuchem"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
-msgstr "system: otrzymano argument, który nie jest ³añcuchem"
+msgstr "system: otrzymano argument, który nie jest łańcuchem"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
-msgstr "odwo³anie do niezainicjowanego pola `$%d'"
+msgstr "odwołanie do niezainicjowanego pola `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
-msgstr "tolower: otrzymano argument, który nie jest ³añcuchem"
+msgstr "tolower: otrzymano argument, który nie jest łańcuchem"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
-msgstr "toupper: otrzymano argument, który nie jest ³añcuchem"
+msgstr "toupper: otrzymano argument, który nie jest łańcuchem"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
-msgstr "atan2: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "atan2: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
-msgstr "atan2: otrzymano drugi argument, który nie jest liczb±"
+msgstr "atan2: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
-msgstr "sin: otrzymano argument, który nie jest liczb±"
+msgstr "sin: otrzymano argument, który nie jest liczbą"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
-msgstr "cos: otrzymano argument, który nie jest liczb±"
+msgstr "cos: otrzymano argument, który nie jest liczbą"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
-msgstr "srand: otrzymano argument, który nie jest liczb±"
+msgstr "srand: otrzymano argument, który nie jest liczbą"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
-msgstr "match: otrzymano trzeci argument, który nie jest tablic±"
+msgstr "match: otrzymano trzeci argument, który nie jest tablicą"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: trzeci argument 0 potraktowany jako 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
-msgstr "lshift: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "lshift: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
-msgstr "lshift: otrzymano drugi argument, który nie jest liczb±"
+msgstr "lshift: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
-msgstr "lshift(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "lshift(%lf, %lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
-msgstr "lshift(%lf, %lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "lshift(%lf, %lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
-"lshift(%lf, %lf): zbyt du¿a warto¶æ przesuniêcia spowoduje dziwne wyniki"
+"lshift(%lf, %lf): zbyt duża wartość przesunięcia spowoduje dziwne wyniki"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
-msgstr "rshift: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "rshift: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
-msgstr "rshift: otrzymano drugi argument, który nie jest liczb±"
+msgstr "rshift: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
-msgstr "rshift(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "rshift(%lf, %lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
-msgstr "rshift(%lf, %lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "rshift(%lf, %lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
-"rshift(%lf, %lf): zbyt du¿a warto¶æ przesuniêcia spowoduje dziwne wyniki"
+"rshift(%lf, %lf): zbyt duża wartość przesunięcia spowoduje dziwne wyniki"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
-msgstr "and: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "and: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
-msgstr "and: otrzymano drugi argument, który nie jest liczb±"
+msgstr "and: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
-msgstr "and(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "and(%lf, %lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
-msgstr "and(%lf, %lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "and(%lf, %lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
-msgstr "or: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "or: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
-msgstr "or: otrzymano drugi argument, który nie jest liczb±"
+msgstr "or: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
-msgstr "or(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "or(%lf, %lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
-msgstr "or(%lf, %lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "or(%lf, %lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
-msgstr "xor: otrzymano pierwszy argument, który nie jest liczb±"
+msgstr "xor: otrzymano pierwszy argument, który nie jest liczbą"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
-msgstr "xor: otrzymano drugi argument, który nie jest liczb±"
+msgstr "xor: otrzymano drugi argument, który nie jest liczbą"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
-msgstr "xor(%lf, %lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "xor(%lf, %lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
-msgstr "xor(%lf, %lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "xor(%lf, %lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
-msgstr "compl: otrzymano argument, który nie jest liczb±"
+msgstr "compl: otrzymano argument, który nie jest liczbą"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
-msgstr "compl(%lf): ujemne warto¶ci spowoduj± dziwne wyniki"
+msgstr "compl(%lf): ujemne wartości spowodują dziwne wyniki"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
-msgstr "compl(%lf): u³amkowe warto¶ci zostan± obciête"
+msgstr "compl(%lf): ułamkowe wartości zostaną obcięte"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
-msgstr "dcgettext: `%s' nie jest prawid³ow± kategori± lokalizacji"
+msgstr "dcgettext: `%s' nie jest prawidłową kategorią lokalizacji"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
-msgstr "nieznany typ wêz³a %d"
+msgstr "nieznany typ węzła %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
-msgstr "przepe³nienie bufora w genflags2str"
+msgstr "przepełnienie bufora w genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
-msgstr "próba u¿ycia tablicy `%s' w kontek¶cie skalaru"
+msgstr "próba użycia tablicy `%s' w kontekście skalaru"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
-"pêtla for: tablica `%s' zmieni³a rozmiar z %ld do %ld podczas wykonywania "
-"pêtli"
+"pętla for: tablica `%s' zmieniła rozmiar z %ld do %ld podczas wykonywania "
+"pętli"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
-msgstr "instrukcja `break' poza pêtl± jest nieprzeno¶na"
+msgstr "instrukcja `break' poza pętlą jest nieprzenośna"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
-msgstr "instrukcja `break' poza pêtl± jest niedozwolona"
+msgstr "instrukcja `break' poza pętlą jest niedozwolona"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
-msgstr "instrukcja `continue' poza pêtl± jest nieprzeno¶na"
+msgstr "instrukcja `continue' poza pętlą jest nieprzenośna"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
-msgstr "instrukcja `continue' poza pêtl± jest niedozwolona"
+msgstr "instrukcja `continue' poza pętlą jest niedozwolona"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
-msgstr "instrukcja `next' nie mo¿e byæ wywo³ana z wnêtrza regu³y BEGIN"
+msgstr "instrukcja `next' nie może być wywołana z wnętrza reguły BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
-msgstr "instrukcja `next' nie mo¿e byæ wywo³ana z wnêtrza regu³y END"
+msgstr "instrukcja `next' nie może być wywołana z wnętrza reguły END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
-msgstr "instrukcja `nextfile' nie mo¿e byæ wywo³ana z wnêtrza regu³y BEGIN"
+msgstr "instrukcja `nextfile' nie może być wywołana z wnętrza reguły BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
-msgstr "instrukcja `nextfile' nie mo¿e byæ wywo³ana z wnêtrza regu³y END"
+msgstr "instrukcja `nextfile' nie może być wywołana z wnętrza reguły END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
-msgstr "instrukcja nie ma ¿adnego efektu"
+msgstr "instrukcja nie ma żadnego efektu"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
-msgstr "nie mo¿na u¿yæ nazwy funkcji `%s' jako zmiennej lub tablicy"
+msgstr "nie można użyć nazwy funkcji `%s' jako zmiennej lub tablicy"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
-msgstr "odwo³anie do niezainicjowanego argumentu `%s'"
+msgstr "odwołanie do niezainicjowanego argumentu `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
-msgstr "odwo³anie do niezainicjowanej zmiennej `%s'"
+msgstr "odwołanie do niezainicjowanej zmiennej `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
-"konkatenacja: skutki uboczne w jednym wyra¿eniu spowodowa³y zmianê d³ugo¶ci "
-"innego wyra¿enia!"
+"konkatenacja: skutki uboczne w jednym wyrażeniu spowodowały zmianę długości "
+"innego wyrażenia!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
-msgstr "przypisanie u¿yte w kontek¶cie warunkowym"
+msgstr "przypisanie użyte w kontekście warunkowym"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
-msgstr "próba dzielenia przez zero"
-
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "próba dzielenia przez zero w `%%'"
+msgstr "próba dzielenia przez zero"
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
-msgstr "nieprawid³owy typ (%s) w tree_eval"
+msgstr "nieprawidłowy typ (%s) w tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
-msgstr "próba dzielenia przez zero w `/='"
+msgstr "próba dzielenia przez zero w `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
-msgstr "próba dzielenia przez zero w `%%='"
+msgstr "próba dzielenia przez zero w `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr ""
-"funkcja `%s' zosta³a wywo³ana z wiêksz± ilo¶ci± argumentów ni¿ zosta³o to "
+"funkcja `%s' została wywołana z większą ilością argumentów niż zostało to "
"zadeklarowane"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
-msgstr "funkcja `%s' nie zosta³a zdefiniowana"
+msgstr "funkcja `%s' nie została zdefiniowana"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -920,47 +954,52 @@ msgid ""
"\n"
msgstr ""
"\n"
-"\t# Stos Wywo³awczy Funkcji:\n"
+"\t# Stos Wywoławczy Funkcji:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
-msgstr "\t# -- g³ówne --\n"
+msgstr "\t# -- główne --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
-msgstr "próba odwo³ania do pola poprzez nienumeryczn± warto¶æ"
+msgstr "próba odwołania do pola poprzez nienumeryczną wartość"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
-msgstr "próba odwo³ania z zerowego ³añcucha"
+msgstr "próba odwołania z zerowego łańcucha"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
-msgstr "próba dostêpu do pola %d"
+msgstr "próba dostępu do pola %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "przypisanie do wyniku wbudowanej funkcji nie jest dozwolone"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' jest rozszerzeniem gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' jest rozszerzeniem gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "wartość BINMODE `%s' jest nieprawidłowa, przyjęto ją jako 3"
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
-msgstr "z³a specyfikacja `%sFMT' `%s'"
+msgstr "zła specyfikacja `%sFMT' `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
-msgstr "wy³±czenie `--lint' z powodu przypisania do `LINT'"
+msgstr "wyłączenie `--lint' z powodu przypisania do `LINT'"
#: ext.c:62 ext.c:67
msgid "`extension' is a gawk extension"
@@ -969,46 +1008,46 @@ msgstr "`extension' jest rozszerzeniem gawk"
#: ext.c:77
#, c-format
msgid "extension: cannot open `%s' (%s)\n"
-msgstr "rozszerzenie: nie mo¿na otworzyæ `%s' (%s)\n"
+msgstr "rozszerzenie: nie można otworzyć `%s' (%s)\n"
#: ext.c:85
#, c-format
msgid "extension: library `%s': cannot call function `%s' (%s)\n"
-msgstr "rozszerzenie: biblioteka `%s': nie mo¿na wywo³aæ funkcji `%s' (%s)\n"
+msgstr "rozszerzenie: biblioteka `%s': nie można wywołać funkcji `%s' (%s)\n"
#: ext.c:105
msgid "extension: missing function name"
-msgstr "rozszerzenie: brakuj±ca nazwa funkcji"
+msgstr "rozszerzenie: brakujÄ…ca nazwa funkcji"
#: ext.c:110
#, c-format
msgid "extension: illegal character `%c' in function name `%s'"
-msgstr "rozszerzenie: nieprawid³owy znak `%c' w nazwie funkcji `%s'"
+msgstr "rozszerzenie: nieprawidłowy znak `%c' w nazwie funkcji `%s'"
#: ext.c:116
#, c-format
msgid "extension: can't redefine function `%s'"
-msgstr "rozszerzenie: nie mo¿na zredefiniowaæ funkcji `%s'"
+msgstr "rozszerzenie: nie można zredefiniować funkcji `%s'"
#: ext.c:120
#, c-format
msgid "extension: function `%s' already defined"
-msgstr "rozserzenie: funkcja `%s' zosta³a ju¿ zdefiniowana"
+msgstr "rozserzenie: funkcja `%s' została już zdefiniowana"
#: ext.c:125
#, c-format
msgid "extension: can't use gawk built-in `%s' as function name"
-msgstr "rozszerzenie: nie mo¿na u¿yæ wbudowanej w gawk `%s' jako nazwy funkcji"
+msgstr "rozszerzenie: nie można użyć wbudowanej w gawk `%s' jako nazwy funkcji"
#: ext.c:127
#, c-format
msgid "extension: function name `%s' previously defined"
-msgstr "rozserzenie: nazwa funkcji `%s' zosta³a zdefiniowana wcze¶niej"
+msgstr "rozserzenie: nazwa funkcji `%s' została zdefiniowana wcześniej"
#: ext.c:204
#, c-format
msgid "function `%s' defined to take no more than %d argument(s)"
-msgstr "funkcja `%s' zdefiniowana aby pobraæ nie wiêcej ni¿ %d argument(ów)"
+msgstr "funkcja `%s' zdefiniowana aby pobrać nie więcej niż %d argument(ów)"
#: ext.c:207
#, c-format
@@ -1018,12 +1057,12 @@ msgstr "funkcja `%s': brakuje #%d argumentu"
#: ext.c:217
#, c-format
msgid "function `%s': argument #%d: attempt to use scalar as an array"
-msgstr "funkcja `%s': argument #%d: próba u¿ycia skalaru jako tablicy"
+msgstr "funkcja `%s': argument #%d: próba użycia skalaru jako tablicy"
#: ext.c:221
#, c-format
msgid "function `%s': argument #%d: attempt to use array as a scalar"
-msgstr "funkcja `%s': argument #%d: próba u¿ycia tablicy jako skalaru"
+msgstr "funkcja `%s': argument #%d: próba użycia tablicy jako skalaru"
#: ext.c:246
msgid "Operation Not Supported"
@@ -1031,573 +1070,581 @@ msgstr "Operacja nie jest wspierana"
#: field.c:330
msgid "NF set to negative value"
-msgstr "NF ustawiony na warto¶æ ujemn±"
+msgstr "NF ustawiony na wartość ujemną"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
-msgstr "split: drugi argument nie jest tablic±"
+msgstr "split: drugi argument nie jest tablicÄ…"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
-msgstr "split: zerowy ³añcuch dla trzeciego argumentu jest rozszerzeniem gawk"
+msgstr "split: zerowy łańcuch dla trzeciego argumentu jest rozszerzeniem gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' jest rozszerzeniem gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
-msgstr "nieprawid³owa warto¶æ FIELDWIDTHS, w pobli¿u `%s'"
+msgstr "nieprawidłowa wartość FIELDWIDTHS, w pobliżu `%s'"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
-msgstr "zerowy ³añcuch dla `FS' jest rozszerzeniem gawk"
+msgstr "zerowy łańcuch dla `FS' jest rozszerzeniem gawk"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
-msgstr "stary awk nie wspiera wyra¿eñ regularnych jako warto¶ci `FS'"
-
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
-msgstr "%s: opcja `%s' jest niejednoznaczna\n"
+msgstr "stary awk nie wspiera wyrażeń regularnych jako wartości `FS'"
-#: getopt.c:620 getopt.c:624
+#: getopt.c:570 getopt.c:586
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
-msgstr "%s: opcja `--%s' nie mo¿e mieæ argumentów\n"
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opcja '%s' jest niejednoznaczna\n"
-#: getopt.c:633 getopt.c:638
+#: getopt.c:619 getopt.c:623
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
-msgstr "%s: opcja `%c%s' nie mo¿e mieæ argumentów\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: opcja '--%s' nie może mieć argumentów\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:632 getopt.c:637
#, c-format
-msgid "%s: option `%s' requires an argument\n"
-msgstr "%s: opcja `%s' musi mieæ argument\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: opcja '%c%s' nie może mieć argumentów\n"
-#: getopt.c:738 getopt.c:741
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
-msgstr "%s: nieznana opcja `--%s'\n"
+msgid "%s: option '%s' requires an argument\n"
+msgstr "%s: opcja '%s' wymaga argumentu\n"
-#: getopt.c:749 getopt.c:752
+#: getopt.c:737 getopt.c:740
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
-msgstr "%s: nieznana opcja `%c%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: nieznana opcja '--%s'\n"
-#: getopt.c:804 getopt.c:807
+#: getopt.c:748 getopt.c:751
#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: niew³a¶ciwa opcja -- %c\n"
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: nieznana opcja '%c%s'\n"
-#: getopt.c:813 getopt.c:816
+#: getopt.c:800 getopt.c:803
#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr "%s: b³êdna opcja -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: błędna opcja -- '%c'\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: opcja musi mieæ argument -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: opcja wymaga argumentu -- '%c'\n"
-#: getopt.c:937 getopt.c:953
+#: getopt.c:923 getopt.c:939
#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
-msgstr "%s: opcja `-W %s' jest niejednoznaczna\n"
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: opcja '-W %s' jest niejednoznaczna\n"
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
-msgstr "%s: opcja `-W %s' nie mo¿e mieæ argumentów\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: opcja '-W %s' nie może mieć argumentów\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
-msgstr "nie mo¿na otworzyæ pliku `%s' do czytania (%s)"
+msgstr "nie można otworzyć pliku `%s' do czytania (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
-msgstr "zamkniêcie fd %d (`%s') nie powiod³o siê (%s)"
+msgstr "zamknięcie fd %d (`%s') nie powiodło się (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
-msgstr "nieprawid³owy typ drzewa %s w funkcji redirect()"
+msgstr "nieprawidłowy typ drzewa %s w funkcji redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
-msgstr "wyra¿enie w przekierowaniu `%s' ma tylko warto¶æ numeryczn±"
+msgstr "wyrażenie w przekierowaniu `%s' ma tylko wartość numeryczną"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
-msgstr "wyra¿enie dla przekierowania `%s' ma zerow± warto¶æ ³añcucha"
+msgstr "wyrażenie dla przekierowania `%s' ma zerową wartość łańcucha"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
-"nazwa pliku `%s' dla przekierowania `%s' mo¿e byæ rezultatem logicznego "
-"wyra¿enia"
+"nazwa pliku `%s' dla przekierowania `%s' może być rezultatem logicznego "
+"wyrażenia"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "niepotrzebne mieszanie `>' i `>>' dla pliku `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
-msgstr "nie mo¿na otworzyæ potoku `%s' jako wyj¶cia (%s)"
+msgstr "nie można otworzyć potoku `%s' jako wyjścia (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
-msgstr "nie mo¿na otworzyæ potoku `%s' jako wej¶cia (%s)"
+msgstr "nie można otworzyć potoku `%s' jako wejścia (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "plik `%s' jest katalogiem"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
-"nie mo¿na otworzyæ dwukierunkowego gniazda `%s' jako wej¶cia/wyj¶cia (%s)"
+"nie można otworzyć dwukierunkowego gniazda `%s' jako wejścia/wyjścia (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr ""
-"nie mo¿na otworzyæ dwukierunkowego potoku `%s' jako wej¶cia/wyj¶cia (%s)"
+"nie można otworzyć dwukierunkowego potoku `%s' jako wejścia/wyjścia (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
-msgstr "nie mo¿na przekierowaæ z `%s' (%s)"
+msgstr "nie można przekierować z `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
-msgstr "nie mo¿na przekierowaæ do `%s' (%s)"
+msgstr "nie można przekierować do `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
-"osi±gniêto systemowy limit otwartych plików: rozpoczêcie multipleksowania "
-"deskryptorów plików"
+"osiągnięto systemowy limit otwartych plików: rozpoczęcie multipleksowania "
+"deskryptorów plików"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
-msgstr "zamkniêcie `%s' nie powiod³o siê (%s)."
+msgstr "zamknięcie `%s' nie powiodło się (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
-msgstr "zbyt du¿o otwartych potoków lub plików wej¶ciowych"
+msgstr "zbyt dużo otwartych potoków lub plików wejściowych"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
-msgstr "close: drugim argumentem musi byæ `to' lub `from'"
+msgstr "close: drugim argumentem musi być `to' lub `from'"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr ""
"close: `%.*s' nie jest ani otwartym plikiem, ani potokiem, ani procesem"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
-msgstr "zamkniêcie przekierowania, które nigdy nie zosta³o otwarte"
+msgstr "zamknięcie przekierowania, które nigdy nie zostało otwarte"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
-"close: przekierowanie `%s' nie zosta³o otwarte z `|&', drugi argument "
+"close: przekierowanie `%s' nie zostało otwarte z `|&', drugi argument "
"zignorowany"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "status awarii (%d) podczas zamykania potoku `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "status awarii (%d) podczas zamykania pliku `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
-msgstr "brak jawnego zamkniêcia gniazdka `%s'"
+msgstr "brak jawnego zamknięcia gniazdka `%s'"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
-msgstr "brak jawnego zamkniêcia procesu pomocniczego `%s'"
+msgstr "brak jawnego zamknięcia procesu pomocniczego `%s'"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
-msgstr "brak jawnego zamkniêcia potoku `%s'"
+msgstr "brak jawnego zamknięcia potoku `%s'"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
-msgstr "brak jawnego zamkniêcia pliku `%s'"
+msgstr "brak jawnego zamknięcia pliku `%s'"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
-msgstr "b³±d podczas zapisu na standardowe wyj¶cie (%s)"
+msgstr "błąd podczas zapisu na standardowe wyjście (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
-msgstr "b³±d podczas zapisu na standardowe wyj¶cie diagnostyczne (%s)"
+msgstr "błąd podczas zapisu na standardowe wyjście diagnostyczne (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
-msgstr "opró¿nienie potoku `%s' nie powiod³o siê (%s)."
+msgstr "opróżnienie potoku `%s' nie powiodło się (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr ""
-"opró¿nienie potoku do `%s' przez proces pomocniczy nie powiod³o siê (%s)."
+"opróżnienie potoku do `%s' przez proces pomocniczy nie powiodło się (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
-msgstr "opró¿nienie pliku `%s' nie powiod³o siê (%s)."
+msgstr "opróżnienie pliku `%s' nie powiodło się (%s)."
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
-msgstr "nieprawid³owy lokalny port %s w `/inet'"
+msgstr "nieprawidłowy lokalny port %s w `/inet'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
-msgstr "informacje o zdalnym ho¶cie i porcie s± nieprawid³owe (%s, %s)"
+msgstr "informacje o zdalnym hoście i porcie są nieprawidłowe (%s, %s)"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "klient /inet/raw nie jest jeszcze gotowy, przykro mi"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
-msgstr "tylko superu¿ytkownik (root) mo¿e u¿yæ `/inet/raw'."
+msgstr "tylko superużytkownik (root) może użyć `/inet/raw'."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "serwer /inet/raw nie jest jeszcze gotowy, przykro mi"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
-msgstr "nie dostarczono (znanego) protoko³u w specjalnym pliku `%s'"
+msgstr "nie dostarczono (znanego) protokołu w specjalnym pliku `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "specjalna nazwa pliku `%s' jest niekompletna"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
-msgstr "nale¿y dostarczyæ nazwê zdalnego hosta do `/inet'"
+msgstr "należy dostarczyć nazwę zdalnego hosta do `/inet'"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
-msgstr "nale¿y dostarczyæ numer zdalnego portu do `/inet'"
+msgstr "należy dostarczyć numer zdalnego portu do `/inet'"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "Komunikacja TCP/IP nie jest wspierana"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "plik `%s' jest katalogiem"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
-msgstr "u¿yj `PROCINFO[\"%s\"]' zamiast `%s'"
+msgstr "użyj `PROCINFO[\"%s\"]' zamiast `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
-msgstr "u¿yj `PROCINFO[...]' zamiast `/dev/user'"
+msgstr "użyj `PROCINFO[...]' zamiast `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
-msgstr "nie mo¿na otworzyæ `%s', tryb `%s'"
+msgstr "nie można otworzyć `%s', tryb `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
-msgstr "zamkniêcie nadrzêdnego pty nie powiod³o siê (%s)"
+msgstr "zamknięcie nadrzędnego pty nie powiodło się (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr ""
-"zamkniêcie standardowego wyj¶cia w procesie potomnym nie powiod³o siê (%s)"
+"zamknięcie standardowego wyjścia w procesie potomnym nie powiodło się (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
-"przesuniêcie podleg³ego pty na standardowe wyj¶cie w procesie potomnym nie "
-"powiod³o siê (dup: %s)"
+"przesunięcie podległego pty na standardowe wyjście w procesie potomnym nie "
+"powiodło się (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr ""
-"zamkniêcie standardowego wej¶cia w procesie potomnym nie powiod³o siê (%s)"
+"zamknięcie standardowego wejścia w procesie potomnym nie powiodło się (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
-"przesuniêcie podleg³ego pty na standardowe wej¶cie w procesie potomnym nie "
-"powiod³o siê (dup: %s)"
+"przesunięcie podległego pty na standardowe wejście w procesie potomnym nie "
+"powiodło się (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
-msgstr "zamkniêcie podleg³ego pty nie powiod³o siê (%s)"
+msgstr "zamknięcie podległego pty nie powiodło się (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr ""
-"przesuniêcie potoku na standardowe wyj¶cie w procesie potomnym nie powiod³o "
-"siê (dup: %s)"
+"przesunięcie potoku na standardowe wyjście w procesie potomnym nie powiodło "
+"siÄ™ (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
-"przesuniêcie potoku na standardowe wej¶cie w procesie potomnym nie powiod³o "
-"siê (dup: %s)"
+"przesunięcie potoku na standardowe wejście w procesie potomnym nie powiodło "
+"siÄ™ (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr ""
-"odzyskanie standardowego wyj¶cia w procesie potomnym nie powiod³o siê\n"
+"odzyskanie standardowego wyjścia w procesie potomnym nie powiodło się\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr ""
-"odzyskanie standardowego wej¶cia w procesie potomnym nie powiod³o siê\n"
+"odzyskanie standardowego wejścia w procesie potomnym nie powiodło się\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
-msgstr "zamkniêcie potoku nie powiod³o siê (%s)"
+msgstr "zamknięcie potoku nie powiodło się (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' nie jest wspierany"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
-msgstr "nie mo¿na otworzyæ potoku `%s' (%s)"
+msgstr "nie można otworzyć potoku `%s' (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
-msgstr "nie mo¿na utworzyæ procesu potomnego dla `%s' (fork: %s)"
+msgstr "nie można utworzyć procesu potomnego dla `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "plik danych `%s' jest pusty"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
-msgstr "nie mo¿na zarezerwowaæ wiêcej pamiêci wej¶ciowej"
+msgstr "nie można zarezerwować więcej pamięci wejściowej"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
-msgstr "b³±d podczas czytania z pliku `%s': %s"
+msgstr "błąd podczas czytania z pliku `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
-msgstr "wieloznakowa warto¶æ `RS' jest rozszerzeniem gawk"
+msgstr "wieloznakowa wartość `RS' jest rozszerzeniem gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "brak pamięci"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "nieistotna opcja `-m[fr]' w gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
-msgstr "u¿ycie opcji -m: `-m[fr] nnn'"
+msgstr "użycie opcji -m: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: opcja `-W %s' nierozpoznana i zignorowana\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
-msgstr "pusty argument dla opcji `--source' zosta³ zignorowany"
+msgstr "pusty argument dla opcji `--source' został zignorowany"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: opcja musi mieć argument -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
-"zmienna ¶rodowiskowa `POSIXLY_CORRECT' ustawiona: `--posix' zosta³ w³±czony"
+"zmienna środowiskowa `POSIXLY_CORRECT' ustawiona: `--posix' został włączony"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
-msgstr "opcja `--posix' zostanie u¿yta nad `--traditional'"
+msgstr "opcja `--posix' zostanie użyta nad `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
-msgstr "`--posix'/`--traditional' u¿yte nad opcj± `--non-decimal-data'"
+msgstr "`--posix'/`--traditional' użyte nad opcją `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr ""
-"uruchamianie %s setuid root mo¿e byæ problemem pod wzglêdem bezpieczeñstwa"
+"uruchamianie %s setuid root może być problemem pod względem bezpieczeństwa"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
-msgstr "nie mo¿na ustawiæ trybu binarnego na standardowym wej¶ciu (%s)"
+msgstr "nie można ustawić trybu binarnego na standardowym wejściu (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
-msgstr "nie mo¿na ustawiæ trybu binarnego na standardowym wyj¶ciu (%s)"
+msgstr "nie można ustawić trybu binarnego na standardowym wyjściu (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
-msgstr "nie mo¿na ustawiæ trybu binarnego na wyj¶ciu diagnostycznym (%s)"
+msgstr "nie można ustawić trybu binarnego na wyjściu diagnostycznym (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "brak tekstu programu!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
-"U¿ycie: %s [styl opcji POSIX lub GNU] -f plik_z_programem [--] plik ...\n"
+"Użycie: %s [styl opcji POSIX lub GNU] -f plik_z_programem [--] plik ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
-msgstr "U¿ycie: %s [styl opcji POSIX lub GNU] [--] %cprogram%c plik ...\n"
+msgstr "Użycie: %s [styl opcji POSIX lub GNU] [--] %cprogram%c plik ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
-msgstr "Opcje POSIX:\t\tD³ugie opcje GNU:\n"
+msgstr "Opcje POSIX:\t\tDÅ‚ugie opcje GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f program\t\t--file=program\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
-msgstr "\t-v zmienna=warto¶æ\t--assign=zmienna=warto¶æ\n"
+msgstr "\t-v zmienna=wartość\t--assign=zmienna=wartość\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
-msgstr "\t-m[fr] warto¶æ\n"
+msgstr "\t-m[fr] wartość\n"
+
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-O\t\t\t--optimize\n"
-#: main.c:702
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=plik]\t--dump-variables[=plik]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=plik\t\t--exec=plik\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=plik]\t--profile[=plik]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=tekst-programu\t--source=tekst-programu\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
-msgstr ""
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1606,7 +1653,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1614,32 +1661,32 @@ msgid ""
"\n"
msgstr ""
"\n"
-"Aby zg³osiæ b³±d, prosimy zobaczyæ wêze³ `Bugs' w `gawk.info'\n"
-"lub rozdzia³ p.t. `Reporting Problems and Bugs' w wydrukowanej\n"
+"Aby zgłosić błąd, prosimy zobaczyć węzeł `Bugs' w `gawk.info'\n"
+"lub rozdział p.t. `Reporting Problems and Bugs' w wydrukowanej\n"
"dokumentacji.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-"gawk jest jêzykiem skanowania i przetwarzania wzorców.\n"
-"Program domy¶lnie czyta standardowe wej¶cie i zapisuje standardowe wyj¶cie.\n"
+"gawk jest językiem skanowania i przetwarzania wzorców.\n"
+"Program domyślnie czyta standardowe wejście i zapisuje standardowe wyjście.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-"Przyk³ady:\n"
+"Przykłady:\n"
"\tgawk '{ suma += $1 }; END { print suma }' plik\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1652,13 +1699,13 @@ msgid ""
msgstr ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
-"Ten program jest wolnym oprogramowaniem; mo¿esz go rozprowadzaæ dalej\n"
-"i/lub modyfikowaæ na warunkach Powszechnej Licencji Publicznej GNU,\n"
-"wydanej przez Fundacjê Wolnego Oprogramowania - wed³ug wersji 3-giej\n"
-"tej Licencji lub której¶ z pó¼niejszych wersji.\n"
+"Ten program jest wolnym oprogramowaniem; możesz go rozprowadzać dalej\n"
+"i/lub modyfikować na warunkach Powszechnej Licencji Publicznej GNU,\n"
+"wydanej przez Fundację Wolnego Oprogramowania - według wersji 3-ciej\n"
+"tej Licencji lub którejś z późniejszych wersji.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1666,143 +1713,159 @@ msgid ""
"GNU General Public License for more details.\n"
"\n"
msgstr ""
-"Ten program rozpowszechniany jest z nadziej±, i¿ bêdzie on\n"
-"u¿yteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domy¶lnej\n"
-"gwarancji PRZYDATNO¦CI HANDLOWEJ albo PRZYDATNO¦CI DO OKRE¦LONYCH\n"
-"ZASTOSOWAÑ. W celu uzyskania bli¿szych informacji przeczytaj\n"
-"Powszechn± Licencjê Publiczn± GNU.\n"
+"Ten program rozpowszechniany jest z nadzieją, iż będzie on\n"
+"użyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyślnej\n"
+"gwarancji PRZYDATNOÅšCI HANDLOWEJ albo PRZYDATNOÅšCI DO OKREÅšLONYCH\n"
+"ZASTOSOWAŃ. W celu uzyskania bliższych informacji przeczytaj\n"
+"PowszechnÄ… LicencjÄ™ PublicznÄ… GNU.\n"
"\n"
-#: main.c:781
-#, fuzzy
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
-"Z pewno¶ci± wraz z niniejszym programem otrzyma³e¶ te¿ egzemplarz\n"
+"Z pewnością wraz z niniejszym programem otrzymałeś też egzemplarz\n"
"Powszechnej Licencji Publicznej GNU (GNU General Public License);\n"
-"je¶li za¶ nie - napisz do Free Software Foundation, Inc.,\n"
-"51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n"
+"jeśli zaś nie - odwiedź stronę http://www.gnu.org/licenses/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft nie ustawia FS na znak tabulatora w POSIX awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-"%s: argument `%s' dla `-v' nie jest zgodny ze sk³adni± `zmienna=warto¶æ'\n"
+"%s: argument `%s' dla `-v' nie jest zgodny ze składnią `zmienna=wartość'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
-msgstr "`%s' nie jest dozwolon± nazw± zmiennej"
+msgstr "`%s' nie jest dozwolonÄ… nazwÄ… zmiennej"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
-msgstr "`%s' nie jest nazw± zmiennej, szukanie pliku `%s=%s'"
+msgstr "`%s' nie jest nazwÄ… zmiennej, szukanie pliku `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
-msgstr "wyj±tek zmiennopozycyjny"
+msgstr "wyjÄ…tek zmiennopozycyjny"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
-msgstr "fatalny b³±d: wewnêtrzny b³±d"
+msgstr "fatalny błąd: wewnętrzny błąd"
+
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "fatalny błąd: wewnętrzny błąd: błąd segmentacji"
-#: main.c:1180
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "fatalny błąd: wewnętrzny błąd: przepełnienie stosu"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
-msgstr "brak ju¿ otwartego fd %d"
+msgstr "brak już otwartego fd %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
-msgstr "nie mo¿na otworzyæ zawczasu /dev/null dla fd %d"
+msgstr "nie można otworzyć zawczasu /dev/null dla fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
-msgstr "nie mo¿na znale¼æ grup: %s"
+msgstr "nie można znaleźć grup: %s"
#: msg.c:54
#, c-format
msgid "cmd. line:"
-msgstr "linia poleceñ:"
+msgstr "linia poleceń:"
#: msg.c:120
msgid "warning: "
-msgstr "ostrze¿enie: "
+msgstr "ostrzeżenie: "
#: msg.c:142
msgid "error: "
-msgstr "b³±d: "
+msgstr "błąd: "
#: msg.c:178
msgid "fatal: "
-msgstr "fatalny b³±d: "
+msgstr "fatalny błąd: "
#: node.c:63 node.c:78 node.c:105 node.c:121 node.c:151
msgid "can't convert string to float"
-msgstr "nie mo¿na zamieniæ ³añcucha do liczby zmiennopozycyjnej"
+msgstr "nie można zamienić łańcucha do liczby zmiennopozycyjnej"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
-msgstr "backslash na koñcu ³añcucha"
+msgstr "backslash na końcu łańcucha"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "stary awk nie wspiera sekwencji ucieczki `\\%c'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
-msgstr "POSIX nie zezwala na sekwencjê ucieczki `\\x'"
+msgstr "POSIX nie zezwala na sekwencjÄ™ ucieczki `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "brak liczb szesnastkowych w sekwencji ucieczki `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+"szesnastkowa sekwencja ucieczki \\x%.*s %d znaków prawdopodobnie nie została "
+"zinterpretowana jak tego oczekujesz"
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
-msgstr "sekwencja ucieczki `\\%c' potraktowana jako zwyk³e `%c'"
+msgstr "sekwencja ucieczki `\\%c' potraktowana jako zwykłe `%c'"
#: posix/gawkmisc.c:172
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
-msgstr "%s %s `%s': nie mo¿na ustawiæ close-on-exec: (fcntl: %s)"
+msgstr "%s %s `%s': nie można ustawić close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
-msgstr "nie mo¿na otworzyæ `%s' do zapisu: %s"
+msgstr "nie można otworzyć `%s' do zapisu: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
-msgstr "wewnêtrzny b³±d: %s z zerowym vname"
+msgstr "wewnętrzny błąd: %s z zerowym vname"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
-msgstr "# potraktowany wewnêtrznie jako `delete'"
+msgstr "# potraktowany wewnętrznie jako `delete"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
-msgstr "# to jest dynamicznie ³adowana funkcja rozszerzenie"
+msgstr "# to jest dynamicznie Å‚adowana funkcja rozszerzenie"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# profil programu gawk, utworzony %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1811,16 +1874,16 @@ msgstr ""
"\t# blok(i) BEGIN\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
"\n"
msgstr ""
-"\t# Regu³y\n"
+"\t# Reguły\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1829,7 +1892,7 @@ msgstr ""
"\t# blok(i) END\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1838,130 +1901,138 @@ msgstr ""
"\n"
"\t# Funkcje, spis alfabetyczny\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "niespodziewany typ %s w prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "Nieznany typ węzła %s w pp_var"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Sukces"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Brak dopasowania"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
-msgstr "Nieprawid³owe wyra¿enie regularne"
+msgstr "Nieprawidłowe wyrażenie regularne"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
-msgstr "Nieprawid³owy znak porównania"
+msgstr "Nieprawidłowy znak porównania"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
-msgstr "Nieprawid³owa nazwa klasy znaku"
+msgstr "Nieprawidłowa nazwa klasy znaku"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
-msgstr "Koñcowy znak backslash"
+msgstr "Końcowy znak backslash"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
-msgstr "Nieprawid³owe odwo³anie wsteczne"
+msgstr "Nieprawidłowe odwołanie wsteczne"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Niedopasowany znak [ lub [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Niedopasowany znak ( lub \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Niedopasowany znak \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
-msgstr "Nieprawid³owa zawarto¶æ \\{\\}"
+msgstr "Nieprawidłowa zawartość \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
-msgstr "Nieprawid³owy koniec zakresu"
+msgstr "Nieprawidłowy koniec zakresu"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
-msgstr "Pamiêæ wyczerpana"
+msgstr "Pamięć wyczerpana"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
-msgstr "Nieprawid³owe poprzedzaj±ce wyra¿enie regularne"
+msgstr "Nieprawidłowe poprzedzające wyrażenie regularne"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
-msgstr "Przedwczesny koniec wyra¿enia regularnego"
+msgstr "Przedwczesny koniec wyrażenia regularnego"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
-msgstr "Wyra¿enie regularne jest zbyt du¿e"
+msgstr "Wyrażenie regularne jest zbyt duże"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Niedopasowany znak ) lub \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
-msgstr "Brak poprzedniego wyra¿enia regularnego"
+msgstr "Brak poprzedniego wyrażenia regularnego"
+
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: niewłaściwa opcja -- %c\n"
#~ msgid "remote port invalid in `%s'"
-#~ msgstr "nieprawid³owy zdalny port w `%s'"
+#~ msgstr "nieprawidłowy zdalny port w `%s'"
#~ msgid "function %s called\n"
-#~ msgstr "wywo³ano funkcjê %s\n"
+#~ msgstr "wywołano funkcję %s\n"
#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "pole nr %d w FIELDWIDTHS musi byæ wiêksze od zera"
+#~ msgstr "pole nr %d w FIELDWIDTHS musi być większe od zera"
#~ msgid "delete: illegal use of variable `%s' as array"
-#~ msgstr "delete: nieprawid³owe u¿ycie zmiennej `%s' jako tablicy"
+#~ msgstr "delete: nieprawidłowe użycie zmiennej `%s' jako tablicy"
#~ msgid "asort: first argument is not an array"
-#~ msgstr "asort: pierwszy argument nie jest tablic±"
+#~ msgstr "asort: pierwszy argument nie jest tablicÄ…"
#~ msgid "asort: second argument is not an array"
-#~ msgstr "asort: drugi argument nie jest tablic±"
+#~ msgstr "asort: drugi argument nie jest tablicÄ…"
#~ msgid ""
#~ "\n"
#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
#~ msgstr ""
#~ "\n"
-#~ "Aby zg³osiæ b³êdy, prosimy zobaczyæ wêze³ `Bugs' w `gawk.info', który "
+#~ "Aby zgłosić błędy, prosimy zobaczyć węzeł `Bugs' w `gawk.info', który "
#~ "jest\n"
#~ msgid "invalid syntax in name `%s' for variable assignment"
-#~ msgstr "b³±d sk³adni w nazwie `%s' dla przypisania zmiennej"
+#~ msgstr "błąd składni w nazwie `%s' dla przypisania zmiennej"
#~ msgid "internal error: Node_var_array with null vname"
-#~ msgstr "wewnêtrzny b³±d: Node_var_array z zerowym vname"
+#~ msgstr "wewnętrzny błąd: Node_var_array z zerowym vname"
#~ msgid "or used in other expression context"
-#~ msgstr "lub u¿yty w innym kontek¶cie wyra¿enia"
+#~ msgstr "lub użyty w innym kontekście wyrażenia"
#~ msgid "`%s' is a function, assignment is not allowed"
-#~ msgstr "`%s' jest funkcj±, zatem przypisanie nie jest dozwolone"
+#~ msgstr "`%s' jest funkcjÄ…, zatem przypisanie nie jest dozwolone"
#~ msgid "BEGIN blocks must have an action part"
-#~ msgstr "Blok BEGIN musi posiadaæ czê¶æ dotycz±c± akcji"
+#~ msgstr "Blok BEGIN musi posiadać część dotyczącą akcji"
#~ msgid "`nextfile' used in BEGIN or END action"
-#~ msgstr "`nextfile' u¿yty w akcji BEGIN lub END"
+#~ msgstr "`nextfile' użyty w akcji BEGIN lub END"
#~ msgid "non-redirected `getline' undefined inside BEGIN or END action"
#~ msgstr ""
-#~ "komenda `getline' bez przekierowania nie jest zdefiniowana wewn±trz akcji "
+#~ "komenda `getline' bez przekierowania nie jest zdefiniowana wewnÄ…trz akcji "
#~ "BEGIN lub END"
#~ msgid "fptr %x not in tokentab\n"
@@ -1971,13 +2042,13 @@ msgstr "Brak poprzedniego wyra¿enia regularnego"
#~ msgstr "trzeci parametr gsub nie jest zmiennym obiektem"
#~ msgid "Unfinished \\ escape"
-#~ msgstr "Niedokoñczona sekwencja ucieczki \\"
+#~ msgstr "Niedokończona sekwencja ucieczki \\"
#~ msgid "unfinished repeat count"
-#~ msgstr "niedokoñczona liczba powtórzeñ"
+#~ msgstr "niedokończona liczba powtórzeń"
#~ msgid "malformed repeat count"
-#~ msgstr "¼le sformatowana liczba powtórzeñ"
+#~ msgstr "źle sformatowana liczba powtórzeń"
#~ msgid "Unbalanced ["
#~ msgstr "[ nie do pary"
@@ -1986,13 +2057,10 @@ msgstr "Brak poprzedniego wyra¿enia regularnego"
#~ msgstr "( nie do pary"
#~ msgid "No regexp syntax bits specified"
-#~ msgstr "Nie zosta³y podane bity sk³adni wyra¿enia regularnego"
+#~ msgstr "Nie zostały podane bity składni wyrażenia regularnego"
#~ msgid "Unbalanced )"
#~ msgstr ") nie do pary"
-#~ msgid "out of memory"
-#~ msgstr "brak pamiêci"
-
#~ msgid "internal error: file `%s', line %d\n"
-#~ msgstr "wewnêtrzny b³±d: plik `%s', linia %d\n"
+#~ msgstr "wewnętrzny błąd: plik `%s', linia %d\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index 171a4b69..e1311384 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 132cfa22..a4277e3e 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.2g\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2003-06-26 16:18+0300\n"
"Last-Translator: Juan Carlos Castro y Castro <jcastro@vialink.com.br>\n"
"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
@@ -75,325 +75,330 @@ msgstr "%s: é parâmetro\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array_ref para %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "blocos %s devem ter uma parte de ação"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "cada regra deve ter um padrão ou uma parte de ação"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "o velho awk não suporta o operador `**'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' é uma função intrínseca, não pode ser redefinida"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "constante de expr. reg. `/%s/' parece um comentário C, mas não é"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "constante de expr. reg. `/%s/' parece um comentário C, mas não é"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "declaração pode não ter efeito"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "`%s' usado em ação %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' é uma extensão do gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' usado fora do contexto de função"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"`print' sozinho em regra BEGIN ou END provavelmente deveria ser `print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' é uma extensão do gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete(array)' é uma extensão não-portável do tawk"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "valores de case duplicados no corpo do switch: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "Detectado `default' duplicado no corpo do switch"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "pipelines bidirecionais de múltiplos estágios não funcionam"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "expressão regular à direita de atribuição"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "expressão regular à esquerda de operador `~' ou `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "o velho awk não suporta o operador `**'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "expressão regular à direita de comparação"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "`getline' não-redirecionado não é definido dentro da ação END"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "o velho awk não suporta o operador `**'"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "chamada a `length' sem parênteses não é portável"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "chamada a `length' sem parênteses é obsoleta de acordo com POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "uso de não-vetor como vetor"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "expressão de índice inválida"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "fim de linha ou de string inesperado"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "texto de programa vazio na linha de comando"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "impossível abrir arquivo-fonte `%s' para leitura (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "impossível ler arquivo-fonte `%s' (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "arquivo-fonte `%s' está vazio"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "arquivo-fonte não termina em fim-de-linha"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "expressão regular inacabada termina com `\\' ao fim do arquivo"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "expressão regular inacabada"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "expressão regular inacabada no fim do arquivo"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "uso da continuação de linha `\\ #...' não é portável"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "`\\' não é o último caracter da linha"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX não permite o operador `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "o velho awk não suporta o operador `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX não permite o operador `**'"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "o velho awk não suporta o operador `**'"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "o velho awk não suporta o operador `^='"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "o velho awk não suporta o operador `^'"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "string inacabada"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "caracter inválido '%c' em expressão"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' é uma extensão do gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' é uma extensão da Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX não permite `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' não é suportado no velho awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "`goto' é considerado danoso!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d é inválido como número de argumentos para %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: terceiro argumento é uma extensão do gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: string literal como último argumento de substituição não tem efeito"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "terceiro parâmetro %s não é um objeto modificável"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: segundo argumento é uma extensão do gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "uso de dcgettext(_\"...\") é incorreto: remova o `_' precedente"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "uso de dcngettext(_\"...\") é incorreto: remova o `_' precedente"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "função `%s': parâmetro #%d, `%s', duplica parâmetro #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "função `%s': parâmetro `%s' encobre variável global"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "impossível abrir `%s' para escrita (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "enviando perfil para saída de erros"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: `close' falhou (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() chamada duas vezes!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "houve variáveis encobertas."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "função `%s': não se pode usar o nome da função como nome de parâmetro"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "função `%s': não se pode usar o nome da função como nome de parâmetro"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "nome de função `%s' definido anteriormente"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "função `%s' chamada mas nunca definida"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "função `%s' definida mas nunca chamada"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"constante com expr. regular para parâmetro nº %d retorna valor booleano"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -402,198 +407,227 @@ msgstr ""
"função `%s' chamada com espaço entre o nome e o `(',\n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "tentativa de divisão por zero em `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s para \"%s\" falhou (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "saída padrão"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "motivo desconhecido"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: recebeu argumento não-numérico"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argumento %g está fora da faixa"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: erro ao descarregar: pipe `%s' aberto para leitura, não gravação"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: erro ao descarregar: arquivo `%s' aberto para leitura, não gravação"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' não é um arquivo aberto, pipe ou co-processo"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: recebeu primeiro argumento não-string"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: recebeu segundo argumento não-string"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: recebeu argumento não-numérico"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "`delete array' é uma extensão do gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: recebeu argumento não-string"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: recebeu argumento não-numérico"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: recebeu argumento negativo %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "deve usar `count$' em todos os formatos ou nenhum"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' não é permitido em formatos awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "nº de argumentos com `$' deve ser > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "nº de argumentos %ld maior que nº total de argumentos fornecidos"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' não é permitido depois de ponto no formato"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "nenhum `$' fornecido para tamanho ou precisão de campo posicional"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' não faz sentido em formatos awk; ignorado"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`l' não é permitido em formatos POSIX awk"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' não faz sentido em formatos awk; ignorado"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`L' não é permitido em formatos POSIX awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' não faz sentido em formatos awk; ignorado"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`h' não é permitido em formatos POSIX awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: valor %g fora da faixa para formato `%%%c'"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "argumentos insuficientes para a string de formato"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ acabou para este aqui"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: declaração de formato não tem letra de controle"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "excesso de argumentos para a string de formato"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: nenhum argumento"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: recebeu argumento não-numérico"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: chamada com argumento negativo %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: posição inicial %g é inválida, usando 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: posição inicial %g não-inteira será truncada"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: comprimento %g é <= 0"
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: comprimento %g é <= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: comprimento %g não-inteiro será truncado"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: comprimento %g excessivo para indexação, truncando para %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: string origem tem comprimento zero"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: posição inicial %g além do fim da string"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -601,263 +635,264 @@ msgstr ""
"substr: comprimento %g a partir da posição %g excede tamanho do 1º argumento "
"(%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: recebeu primeiro argumento não-string"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: recebeu string de formato vazia"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: recebeu segundo argumento não-numérico"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: recebeu argumento não-string"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: recebeu argumento não-string"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referência a campo não inicializado `$%d'"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: recebeu argumento não-string"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: recebeu argumento não-string"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: recebeu primeiro argumento não-numérico"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: recebeu segundo argumento não-numérico"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: recebeu argumento não-numérico"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: recebeu argumento não-numérico"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: recebeu argumento não-numérico"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: terceiro argumento não é um vetor"
-#: builtin.c:2650
+#: builtin.c:2719
+#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: 3º argumento 0 tratado como 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: recebeu primeiro argumento não-numérico"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
msgstr "strftime: recebeu segundo argumento não-numérico"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): valores negativos darão resultados estranhos"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): valores fracionários serão truncados"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): deslocamento excessivo dará resultados estranhos"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: recebeu primeiro argumento não-numérico"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
msgstr "strftime: recebeu segundo argumento não-numérico"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): valores negativos darão resultados estranhos"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): valores fracionários serão truncados"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): deslocamento excessivo dará resultados estranhos"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: recebeu primeiro argumento não-numérico"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "atan2: recebeu segundo argumento não-numérico"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): valores negativos darão resultados estranhos"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): valores fracionários serão truncados"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: recebeu primeiro argumento não-numérico"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "atan2: recebeu segundo argumento não-numérico"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): valores negativos darão resultados estranhos"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): valores fracionários serão truncados"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: recebeu primeiro argumento não-numérico"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "atan2: recebeu segundo argumento não-numérico"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): valores negativos darão resultados estranhos"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): valores fracionários serão truncados"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: recebeu primeiro argumento não-numérico"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): valores negativos darão resultados estranhos"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): valores fracionários serão truncados"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' não é uma categoria de \"locale\" válida"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "tipo de nodo desconhecido %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "estouro de buffer em genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "tentativa de usar vetor `%s' em um contexto escalar"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"loop for: vetor `%s' mudou de tamanho de %ld para %ld durante a execução"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "`break' fora de um loop não é portável"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "`break' fora de um loop não é permitido"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "`continue' fora de um loop não é portável"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "`continue' fora de um loop não é permitido"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`next' não pode ser chamado de uma regra BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "`next' não pode ser chamado de uma regra END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`nextfile' não pode ser chamado de uma regra BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "`nextfile' não pode ser chamado de uma regra END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "declaração não tem efeito"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "não se pode usar o nome de função `%s' como variável ou vetor"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referência a argumento não inicializado `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referência a variável não inicializada `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -865,44 +900,39 @@ msgstr ""
"concatenação: efeitos colaterais em um contexto mudaram o comprimento de "
"outro!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "atribuição usada em contexto condicional"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "tentativa de divisão por zero"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "tentativa de divisão por zero em `%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tipo ilegal (%s) em tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "tentativa de divisão por zero em `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "tentativa de divisão por zero em `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "função `%s' chamada com mais argumentos que os declarados"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "função `%s' não definida"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -913,42 +943,47 @@ msgstr ""
"\t# Pilha de Chamadas de Função:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "tentativa de referência a campo a partir de valor não-numérico"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "tentativa de referência a partir de string nula"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "tentativa de acessar campo %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "atribuição não pode resultar de funções intrínsecas"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' é uma extensão do gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' é uma extensão do gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "especificação `%sFMT' inválida `%s'"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "desativando `--lint' devido a atribuição a `LINT'"
@@ -1023,555 +1058,563 @@ msgstr "Operação Não Suportada"
msgid "NF set to negative value"
msgstr "valor negativo atribuído a NF"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: segundo argumento não é um vetor"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: string nula para segundo argumento é uma extensão do gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' é uma extensão do gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "string nula para `FS' é uma extensão do gawk"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "o velho awk não suporta o operador `**'"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: opção `%s' é ambígua\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: opção `--%s' não aceita argumento\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: opção `%c%s' não aceita argumento\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: opção `%s' requer argumento\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opção não reconhecida `--%s'\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opção não reconhecida `%c%s'\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: opção ilegal -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opção inválida -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: opção requer argumento -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: opção `-W %s' é ambígua\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: opção `-W %s' não aceita argumento\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "impossível abrir arquivo `%s' para leitura (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "fechamento do descritor %d (`%s') falhou (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "tipo de árvore %s inválido em redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "expressão no redirecionamento `%s' só tem valor numérico"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "expressão para o redirecionamento `%s' tem valor string nulo"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"nome de arquivo `%s' para redirecionamento `%s' pode ser resultado de "
"expressão lógica"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "mistura desnecessária de `>' e `>>' para arquivo `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "impossível abrir pipe `%s' para saída (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "impossível abrir pipe `%s' para entrada (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "arquivo `%s' é um diretório"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "impossível abrir socket bidirecional `%s' para entrada/saída (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "impossível abrir pipe bidirecional `%s' para entrada/saída (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "impossível redirecionar de `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "impossível redirecionar para `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"alcançado limite do sistema para arquivos abertos; começando a multiplexar "
"descritores de arquivos"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "fechamento de `%s' falhou (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "excesso de pipes ou arquivos de entrada abertos"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: segundo argumento deve ser `to' ou `from'"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: `%.*s' não é um arquivo aberto, pipe ou co-processo"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "fechamento de redirecionamento que nunca foi aberto"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: redirecionamento `%s' não foi aberto com `|&', segundo argumento "
"ignorado"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "status de falha (%d) ao fechar pipe de `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "status de falha (%d) ao fechar arquivo de `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "fechamento explícito do socket `%s' não fornecido"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "fechamento explícito do co-processo `%s' não fornecido"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "fechamento explícito do pipe `%s' não fornecido"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "fechamento explícito do arquivo `%s' não fornecido"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "erro ao escrever na saída padrão (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "erro ao escrever na saída padrão de erros (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "descarga de pipe de `%s' falhou (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "descarga de co-processo de pipe para `%s' falhou (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "descarga de arquivo de `%s' falhou (%s)."
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "porta local inválida em `%s'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "infelizmente, o cliente de /inet/raw não está concluído"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "apenas root pode usar `/inet/raw'."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "infelizmente, o servidor de /inet/raw não está concluído"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
"nenhum protocolo (conhecido) fornecido em nome de arquivo especial `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "nome de arquivo especial `%s' está incompleto"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "deve ser fornecido um nome de host remoto para `/inet'"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "deve ser fornecida uma porta remota para `/inet'"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "comunicação TCP/IP não é suportada"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "arquivo `%s' é um diretório"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "use `PROCINFO[\"%s\"]' em vez de `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "use `PROCINFO[...]' em vez de `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "impossível abrir `%s', modo `%s'"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "falha ao fechar pty mestre (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "falha ao fechar stdout em filho (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "falha ao mover pty escrava para stdout em filho (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "falha ao fechar stdin em filho (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "falha ao mover pty escrava para stdin em filho (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "falha ao fechar pty escrava (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "falha ao mover pipe para stdout em processo pai (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "falha ao mover pipe para stdin em processo pai (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "falha ao restaurar stdout em processo pai\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "falha ao restaurar stdin em processo pai\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "falha ao fechar pipe (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' não suportado"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "impossível abrir pipe `%s' (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "impossível criar processo filho para `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "arquivo de dados `%s' vazio"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "impossível alocar mais memória de entrada"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "erro ao ler arquivo de entrada `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "valor de múltiplos caracteres para `RS' é uma extensão do gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "opção `-m[fr] é irrelevante no gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "uso da opção -m: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: opção `-W %s' não reconhecida, ignorada\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "argumento vazio para --source ignorado"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: opção requer argumento -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "variável de ambiente `POSIXLY_CORRECT' ativada: ligando `--posix'"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' sobrepõe `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--posix'/`--traditional' sobrepõe `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "rodar %s com setuid root pode ser um problema de segurança"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "impossível ativar modo binário em stdin (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "impossível ativar modo binário em stdout (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "impossível ativar modo binário em stderr (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "nenhum texto de programa"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Uso: %s [opções estilo POSIX ou GNU] -f arqprog [--] arquivo ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Uso: %s [opções estilo POSIX ou GNU] [--] %cprograma%c arquivo ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Opções POSIX: \t\tOpções longas GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f arqprog \t\t--file=arqprog\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=val\t\t--assign=var=val\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] val\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=arq] \t--dump-variables[=arq]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=arq] \t--profile[=arq]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=arq] \t--profile[=arq]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=program-text\t--source=program-text\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1580,7 +1623,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1592,7 +1635,7 @@ msgstr ""
"seção `Reportando Problemas e Bugs' na versão impressa.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1602,7 +1645,7 @@ msgstr ""
"Por padrão, o gawk lê a entrada padrão e escreve na saída padrão.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1612,8 +1655,8 @@ msgstr ""
"\tgawk '{ soma += $1 }; END { print soma }' arquivo\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1627,11 +1670,11 @@ msgstr ""
"\n"
"Este programa é Software Livre; você pode redistribuí-lo e/ou modificá-lo\n"
"de acordo com os termos da Licença Pública Geral GNU (GNU GPL) na "
-"formapublicada pela Free Software Foundation; ou a versão 3 da licença ou "
+"formapublicada pela Free Software Foundation; ou a versão 2 da licença ou "
"(aoseu critério) qualquer versão posterior.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1643,7 +1686,7 @@ msgstr ""
"QUALQUER GARANTIA. Veja a Licença Pública Geral GNU (GNU GPL)\n"
"para mais detalhes.\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1651,14 +1694,13 @@ msgid ""
msgstr ""
"Você deve ter recebido uma cópia da Licença Pública Geral GNU (GNU GPL)\n"
"junto com este programa; caso contrário, escreva à Free Software\n"
-"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
-"USA.\n"
+"Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft não faz FS ser tab no awk POSIX"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1667,35 +1709,45 @@ msgstr ""
"%s: argumento `%s' para `-v' não está na forma `var=valor'\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' não é um nome legal de variável"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s' não é um nome de variável, procurando arquivo `%s=%s'"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "exceção de ponto flutuante"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "erro fatal: erro interno"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "erro fatal: erro interno"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "erro fatal: erro interno"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "nenhum descritor pré-aberto %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "impossível pré-abrir /dev/null para descritor %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "impossível achar grupos: %s"
@@ -1721,24 +1773,31 @@ msgstr "fatal: "
msgid "can't convert string to float"
msgstr "impossível converter string para float"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "barra invertida (\\) no fim da string"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "o velho awk não suporta o operador `**'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX não permite escapes do tipo `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "nenhum dígito hexa em seqüência de escape `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "seqüência de escape `\\%c' tratada como `%c' normal"
@@ -1748,31 +1807,32 @@ msgstr "seqüência de escape `\\%c' tratada como `%c' normal"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': impossível ativar fechar-ao-executar: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "impossível abrir `%s' para escrita: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "erro interno: %s com vname nulo"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# tratado internamente como `delete'"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# perfil gawk, criado %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1781,7 +1841,7 @@ msgstr ""
"\t# bloco(s) BEGIN\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1790,7 +1850,7 @@ msgstr ""
"\t# Regra(s)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1799,7 +1859,7 @@ msgstr ""
"\t# bloco(s) END\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1808,85 +1868,96 @@ msgstr ""
"\n"
"\t# Funções, listadas alfabeticamente\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "tipo inesperado %s em prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "tipo de nodo desconhecido %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Sucesso"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Sem combinação"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Expressão regular inválida"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Caracter de combinação inválido"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Nome de classe de caracter inválido"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "contra-barra (\\) finalizando"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Referência anterior inválida"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ ou [^ não emparelhado"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( ou \\( não emparelhado"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ não emparelhado"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Conteúdo inválido de \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Fim de faixa inválido"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Memória esgotada"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Expressão regular anterior inválida"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Fim prematuro da expressão regular"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Expressão regular grande demais"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") ou \\) desemparelhado"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Nenhuma expressão regular anterior"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "porta remota inválida em `%s'"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: opção ilegal -- %c\n"
+
+#~ msgid "or used as a variable or an array"
+#~ msgstr "ou usado como uma variável ou vetor"
+
+#~ msgid "substr: length %g is < 0"
+#~ msgstr "substr: comprimento %g é < 0"
#~ msgid "function %s called\n"
#~ msgstr "função %s chamada\n"
@@ -1894,17 +1965,14 @@ msgstr "Nenhuma expressão regular anterior"
#~ msgid "field %d in FIELDWIDTHS, must be > 0"
#~ msgstr "campo %d em FIELDWIDTHS deve ser > 0"
-#~ msgid "or used as a variable or an array"
-#~ msgstr "ou usado como uma variável ou vetor"
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "porta remota inválida em `%s'"
#~ msgid "regex match failed, not enough memory to match string \"%.*s%s\""
#~ msgstr ""
#~ "busca por exp. reg. falhou, memória insuficiente para testar string \"%.*s"
#~ "%s\""
-#~ msgid "substr: length %g is < 0"
-#~ msgstr "substr: comprimento %g é < 0"
-
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "delete: uso ilegal da variável `%s' como vetor"
diff --git a/po/ro.gmo b/po/ro.gmo
index 407615cc..bd3971b1 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index 9805d8ba..9ba76d10 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.31\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2003-09-15 17:48+0300\n"
"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -74,336 +74,341 @@ msgstr "%s: este parametru!\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: array_ref cãtre %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "Blocurile de END trebuie sã aibã un fragment de acþiune"
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "Blocurile de END trebuie sã aibã un fragment de acþiune"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' este funcþie internã, nu poate fi redefinitã"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "constanta regexp `/%s/' aratã ca un comentariu C, dar nu este"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "constanta regexp `/%s/' aratã ca un comentariu C, dar nu este"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "declaraþia poate sã nu aibã nici un efect"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "`next' folosit în acþiune BEGIN sau END"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' este extensie gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' folosit în afara contextului funcþiei"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"`print' simplu din regulile BEGIN sau END ar trebui sã fie probabil `print "
"\"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' este extensie gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete array' este extensie gawk"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr ""
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "legãturile(pipelines) bidirecþionale multistage nu vor funcþiona"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "expresie regularã în dreapta atribuirii"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "expresie regularã în stânga operatorului `~' sau `!~'"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "expresie regularã în dreapta comparaþiei"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "`getline' nedefinitã ºi neredirectatã înãuntrul unei acþiuni END"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "apelarea lui `legth' fãrã paranteze nu este portabilã"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "apelarea lui `length' fãrã paranteze nu mai este folositã în POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr ""
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "expresie subscript invalidã"
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "linie nouã neaºteptatã"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "text program vid în linia de comandã"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "nu se poate deschide fiºierul sursã `%s' pentru citire (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "nu se poate citi fiºierul sursã `%s' (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "fiºierul sursã `%s' este vid"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "fiºierul sursã nu se terminã în linie nouã"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "regexp-ul neterminat se terminã cu `\\'` la sfârºitul fiºierului"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "regexp neterminat"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "regexp neterminat la sfârºitul fiºierului"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "folosirea continuãrii liniei `\\ #...' nu este portabilã"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "backslash nu este ultimul caracter din linie"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX nu permite operatorul `**='"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "vechiul awk nu suportã operatorul `**='"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX nu permite operatorul `**'"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "operatorul `^=' nu este suportat în vechiul awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "operator `^' nu este suportat în vechiul awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "ºir de caractere neterminat"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "caracter invalid `%c' în expresie"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' este extensie gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' este extensie Bell Labs"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX nu permite `%s'"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' nu este suportat în vechiul awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "`goto' este considerat periculos!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d este invalid ca numãr de argumente pentru %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: al treilea argument este extensie gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: ºirul de caractere literal ca ultim argument al înlocuitorului nu are "
"nici un efect"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "al treilea parametru al sub nu este un obiect modificabil"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: al doilea argument este extensie gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"folosirea lui dcgettext(_\"...\") este incorectã: eliminaþi liniuþa_jos de "
"la început"
-#: awkgram.y:2522
+#: awkgram.y:2530
#, fuzzy
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"folosirea lui dcgettext(_\"...\") este incorectã: eliminaþi liniuþa_jos de "
"la început"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funcþia `%s': parametrul #%d, `%s', parametrul duplicat #%d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr ""
"funcþia `%s': parametrul `%s' nu mai þine cont de(shadows) variabila globalã"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "nu s-a putut deschide `%s' pentru scriere (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "se trimite profilul la dipsozitivul de eroare standard"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: închidere eºuatã (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() apelatã de douã ori!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr ""
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "funcþia `%s': nu se poate folosi numele funcþiei ca nume de parametru"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "funcþia `%s': nu se poate folosi numele funcþiei ca nume de parametru"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "numele funcþiei `%s' a mai fost definit înainte"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "funcþia `%s' este apelatã dar niciodatã definitã"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "funcþia `%s' este definitã dar niciodatã apelatã"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr ""
"regexp constant pentru parametrul #%d solicitã(yields) valoare booleanã"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -412,204 +417,233 @@ msgstr ""
"funcþia `%s' apelatã cu un spaþiu între nume ºi `(',\n"
"%s"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "s-a încercat împãrþire la zero în `%%'"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s cãtre \"%s\" eºuatã (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "ieºire(output) standard"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "motiv necunoscut"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: s-a primit argument nenumeric"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argumentul %g este în afara domeniului"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: nu s-a putut face flush: legãtura(pipe) `%s' a fost deschisã pentru "
"citire, nu scriere"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: nu s-a putut face flush: fiºierul `%s' a fost deschis pentru citire, "
"nu scriere"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' nu este fiºier deschis, legãturã(pipe) sau co-proces"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: s-a primit un prim argument non-ºir de caractere"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: s-a primit un al doilea argument non-ºir de caractere"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: s-a primit argument nenumeric"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "`delete array' este extensie gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "legth: s-a primit argument non-string"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: s-a primit argument nenumeric"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: s-a primit argument %g negativ"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr ""
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' nu este permis în formatele awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "numãrul de arg cu `%' trebuie sã fie > 0"
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr ""
"numãrul de arg %d este mai mare decât numãrul total de argumente furnizate"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' nu este permis în format dupã punct"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr ""
"nu s-a furnizat nici un `$' pentru câmpul poziþional lungime sau precisie"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' nu are sens în formatele awk; ignorat"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`l' nu este permis în formatele awk POSIX"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' nu are sens în formatele awk; ignorat"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`L' nu este permis în formatele POSIX awk"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' nu are sens în formatele awl; ignorat"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`h' nu este permis în formatele POSIX awk"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr ""
"nu existã destule argumente pentru satisfacerea formatului ºirului de "
"caractere"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ insuficient pentru aceasta"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: specificatorul de format nu are literã de control"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "prea multe argumente furnizate pentru formatul ºirului de caractere"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: nici un argument"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: s-a primit argument nenumeric"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: apelat cu argumentul negativ %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: indexul de start %g este invalid, se foloseºte -1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: indexul de start ne-întreg(integer) %g va fi trunchiat"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: lungimea %g este <= 0"
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: lungimea %g este <= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr lungimea ne-întregului(integer) %g va fi trunchiatã"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: ºirul de caractere sursã are lungime zero"
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: indexul de start %d este fostul sfârºit de ºir de caractere"
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -617,272 +651,272 @@ msgstr ""
"substr: lungimea %d la indexul de start %d depãºeºte lungimea primului "
"argument (%d)"
-#: builtin.c:1558
+#: builtin.c:1621
#, fuzzy
msgid "strftime: received non-string first argument"
msgstr "strftime: s-a primit primul argument non ºir de caractere"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: s-a primit ºir de caractere în format vid"
-#: builtin.c:1573
+#: builtin.c:1636
#, fuzzy
msgid "strftime: received non-numeric second argument"
msgstr "strftime: s-a primit un al doilea argument nenumeric"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: s-a primit argument non ºir de caractere"
-#: builtin.c:1695
+#: builtin.c:1758
#, fuzzy
msgid "system: received non-string argument"
msgstr "system: s-a primit argument non ºir de caractere"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "referinþã la variabila neiniþializatã `%s'"
-#: builtin.c:1921
+#: builtin.c:1984
#, fuzzy
msgid "tolower: received non-string argument"
msgstr "tolower: s-a primit argument non-ºir de caractere"
-#: builtin.c:1951
+#: builtin.c:2014
#, fuzzy
msgid "toupper: received non-string argument"
msgstr "toupper: s-a primit argument non-ºir de caractere"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: s-a primit un prim argument nenumeric"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: s-a primit un argument nenumeric"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: s-a primit un argument nenumeric"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: s-a primit un argument nenumeric"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: al treilea argument nu este un array"
-#: builtin.c:2650
+#: builtin.c:2719
#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: al 3-lea argument care este 0 va fi considerat 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: s-a primit un prim argument nenumeric"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
-msgstr "strftime: s-a primit un al doilea argument nenumeric"
+msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): valorile negative vor furniza rezultate ciudate"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"lshift(%lf, %lf): valorile schimbate prea mult vor da rezultate ciudate"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: s-a primit un prim argument nenumeric"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
-msgstr "strftime: s-a primit un al doilea argument nenumeric"
+msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): valorile negative vor da rezultate ciudate"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr ""
"rshift(%lf, %lf): valorile schimbate prea mult vor da rezultate ciudate"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: s-a primit un prim argument nenumeric"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): valorile negative vor da rezultate ciudate"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: s-a primit un prim argument nenumeric"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): valorile negative for da rezultate ciudate"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: s-a primit un prim argument nenumeric"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "atan2: s-a primit un al doilea argument nenumeric"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): valorile negative vor da rezultate ciudate"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: s-a primit argument nenumeric"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): valorile negative vor da rezultate ciudate"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): valorile fracþionale vor fi trunchiate"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' nu este o categorie localã validã"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "tip nod %d necunoscut"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "depãºire(overflow) de buffer în genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "încercare de a utiliza array-ul `%s' într-un context scalar"
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for loop: array-ul `%s' ºi-a schimbat mãrimea din %d în %d în timpul "
"execuþiei buclei"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "`break' în afara buclei nu este portabil"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "`break' în afara buclei nu este permis"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "`continue' în afara buclei nu este portabil"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "`continue' în afara buclei nu este permis"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`next' nu poate fi apelat dintr-o regulã BEGIN"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "`next' nu poate fi apelat dintr-o regulã END"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`nextfile' nu poate fi apelat dintr-o regulã BEGIN"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "`nextfile' nu poate fi apelat dintr-o regulã END"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "declaraþia nu are nici un efect"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "nu se poate folosi numele funcþiei `%s' ca variabilã sau array"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referinþã la argumentul neiniþializat `%s'"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referinþã la variabila neiniþializatã `%s'"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -890,45 +924,40 @@ msgstr ""
"concatenation: efectele secundare dintr-o expresie au schimbat lungimea "
"alteia!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "atribuire folositã în context condiþional"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "s-a încercat împãrþire la zero"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "s-a încercat împãrþire la zero în `%%'"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tip ilegal (%s) în tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "s-a încercat împãrþire la zero în `/='"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "s-a încercat împãrþire la zero în `%%='"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr ""
"funcþia `%s' a fost apelatã cu mai multe argumente decât cele declarate"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "funcþia `%s' nu este definitã"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -939,42 +968,47 @@ msgstr ""
"\t# Stiva de Apelare a Funcþiei:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- principal(main) --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "încercare de referinþã la câmp din valoare nenumericã"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "încercare de referinþã din ºir de caractere vid(null)"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "încercare de accesare a câmpului %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "atribuirea nu este permisã rezultatului funcþiei interne"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' este extensie gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' este extensie gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "`%sFMT' specificaþie `%s' invalidã"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "se dezactiveazã `--lint' din cauza atribuirii lui `LINT'"
@@ -1049,561 +1083,569 @@ msgstr "Operaþie NeSuportatã"
msgid "NF set to negative value"
msgstr "NF setat la valoare negativã"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: al doilea argument nu este un array"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: ºirul nul pentru al treilea arg este o extensie gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' este extensie gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "ºirul de caractere null pentru `FS' este extensie gawk"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: opþiunea `%s' este ambiguã\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: opþiunea `--%s' nu permite parametri\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: opþiunea `%c%s' nu permite parametri\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: opþiunea `%s' necesitã un parametru\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opþiune necunoscutã `--%s'\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opþiune necunoscutã `%c%s'\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: opþiune ilegalã -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opþiune invalidã -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: opþiunea necesitã un parametru -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: opþiunea `-W %s' este ambiguã\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: opþiunea `-W %s' nu permite parametri\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "nu s-a putu deschide `%s' pentru citire (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "închiderea lui fd %d (`%s') eºuatã (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "tip arbore(tree) invalid %s în redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "expresia din redirectarea `%s' are doar valoare numericã"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "expresia din redirectarea `%s' are valoar de ºir null"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"numele de fiºier `%s' pentru redirectarea `%s' poate fi rezultatul unei "
"expresii logice"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "amestecare nenecesarã a `>' ºi `>>' pentru fiºierul `%.*s'"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "nu se poate deschide legãtura(pipe) `%s' pentru output (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "nu se poate deschide legãtura(pipe) `%s' pentru input (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "fiºierul `%s' este director"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr ""
"nu se poate deschide socketul bidirecþional `%s' pentru input/output (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr ""
"nu se poate deschide legãtura(pipe) bidirecþionalã `%s' pentru input/output "
"(%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "nu se poate redirecta din `%s' (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "nu se poate redirecta cãtre `%s' (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"s-a atins limita sistemului pentru fiºiere deschise: se începe muliplexarea "
"desciptorilor de fiºier"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "închiderea `%s' eºuatã (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "prea multe legãturi(pipe) sau fiºiere de intrare(input) deschise"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: al doilea argument trebuie sã fie `to' sau `from'"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr ""
"close: `%.*s' nu este un fiºier deschis, o legãturã(pipe) sau un coproces"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "închiderea unei redirectãri care n-a fost deschisã niciodatã"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: redirectarea `%s' nu a fost deschisã cu `|&', al doilea argument "
"ignorat"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "stare de avarie (%d) în legãtura(pipe) închisã în `%s' (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "stare de avarie (%d) în fiºierul închis în `%s' (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "nu s-a furnizat închiderea explicitã a socketului `%s'"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "nu s-a furnizat închiderea explicitã a coprocesului `%s' "
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "nu s-a furnizat închiderea explicitã a legãturii(pipe) `%s'"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "nu s-a furnizat închiderea explicitã a fiºierului `%s'"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "eroare în scrierea la ieºirea(output) standard (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "eroare în scrierea la dispozitivul standard de eroare (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "flush-ul legãturii(pipe) `%s' eºuat (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "flush-ul legãturii(pipe) coprocesului la `%s' eºuat (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "flush-ul de fiºier al `%s' eºuat (%s)."
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "port local invalid în `%s'"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "clientul /inet/raw nu este pregãtit încã, scuze"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "doar root-ul poate folosi `/inet/raw'."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "serverul /inet/raw nu este pregãtit încã, scuze"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "nici un protocol (cunoscut) furnizat în numele de fiºier special `%s'"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "numele special de fiºier `%s' nu este complet"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "trebuie furnizat un nume de host remote pentru `/inet'"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "trebuie furnizat un port remote pentru `/inet'"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "Comunicaþiile TCP/IP nu sunt suportate"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "fiºierul `%s' este director"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "folosiþi `PROCINFO[\"%s\"]' în loc de `%s'"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "folosiþi `PROCINFO[...]' în loc de `/dev/user'"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "nu s-a putut deschide `%s', modul `%s'"
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "închiderea legãturii(pipe) a eºuat (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "închiderea stdout în copil(child) a eºuat (%s)"
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "mutarea legãturii(pipe) la stdout în copil(child) a eºuat (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "închiderea stdin în copil(child) a eºuat (%s)"
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "mutarea legãturii(pipe) la stdin în copil(child) a eºuat (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "închiderea legãturii(pipe) a eºuat (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "mutarea legãturii(pipe) la stdout în copil(child) a eºuat (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "mutarea legãturii(pipe) la stdin în copil(child) a eºuat (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "refacerea stdout în procesul pãrinte a eºuat\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "refacerea stdin în procesul pãrinte a eºuat\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "închiderea legãturii(pipe) a eºuat (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' nesuportat"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "nu s-a putut deschide legãtura(pipe) `%s' (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "nu s-a putu crea proces copil(child) pentru `%s' (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "fiºierul de date `%s' este vid"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr ""
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "eroare în citirea fiºierului de intrare(input) `%s': %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "valoarea multicaracter a `RS' este extensie gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "memorie plinã"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "`-m[fr]' opþiune irelevantã în gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "folosirea opþiunii -m : `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: opþiunea `-W %s' nu e recunoscutã, ignoratã\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "argument vid pentru `--source' ignorat"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: opþiunea necesitã un parametru -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
"este setatã variabila de mediu `POSIXLY_CORRECT': se activeazã `--posix'"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' suprascrie `--traditional'"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--posix'/`--traditional' suprascrie `--non-decimal-data'"
-#: main.c:501
+#: main.c:527
#, fuzzy, c-format
msgid "running %s setuid root may be a security problem"
msgstr "dacã se ruleazã %s setuid root poate apãrea o problemã de securitate"
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "nu se poate seta modul pe stdin (%s)"
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "nu se poate seta modul pe stdout (%s)"
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "nu se poate seta modul pe stderr (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "nu existã nici un text de program!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Folosire: %s [opþiuni stil POSIX sau GNU] -f fiºierprogram [--] fiºier ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Folosire: %s [opþiuni stil POSIX sau GNU] [--] %cprogram%c fiºier ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "opþiuni POSIX:\t\topþiuni lungi GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f fiºierprogram\t\t--file=fiºierprogram\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=val\t\t--assign=var=val\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] val\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fiºier]\t--dump-variables[=fiºier]\n"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W profile[=fiºier]\t--profile[=fiºier]\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fiºier]\t--profile[=fiºier]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=program-text\t--source=program-text\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1612,7 +1654,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
#, fuzzy
msgid ""
"\n"
@@ -1621,22 +1663,22 @@ msgid ""
"\n"
msgstr "secþiunea `Reporting Problems and Bugs' în versiunea tipãritã.\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
"\n"
msgstr ""
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr ""
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1650,11 +1692,11 @@ msgstr ""
"\n"
"Acest program este software liber; poate fi redistribuit ºi/sau modificat\n"
"sub termenii Licenþei Publice Generale GNU publicatã de \n"
-"Free Software Foundation; fie versiunea 3 a Licenþei, fie\n"
+"Free Software Foundation; fie versiunea 2 a Licenþei, fie\n"
"(la latitudinea dumneavoastrã) orice versiune ulterioarã.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1669,7 +1711,7 @@ msgstr ""
"\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1677,49 +1719,58 @@ msgid ""
msgstr ""
"Ar fi trebuit sã primiþi o copie a Licenþei Publice Generale GNU\n"
"împreunã cu acest program; dacã nu, scrieþi la Free Software\n"
-"Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, "
-"USA.\n"
+"Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft nu seteazã FS în tab în POSIX awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr ""
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr ""
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr ""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "excepþie virgulã mobilã"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "eroare fatalã: eroare internã"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "eroare fatalã: eroare internã"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "eroare fatalã: eroare internã"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "nici un fd predeschis %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "nu s-a putut predeschide /dev/null pentru fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "nu am putut gãsi grupurile: %s"
@@ -1745,24 +1796,31 @@ msgstr "fatal: "
msgid "can't convert string to float"
msgstr "nu se poate converti ºir de caractere în float"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "backslash la sfârºitul ºirului de caractere"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "vechiul awk nu supoortã operatorul `**'"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX nu permite escape-uri `\\x'"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "nu existã digiþi hexa în secvenþa de escape `\\x'"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "secvenþa de escape `\\%c' tratatã ca `%c' simplu"
@@ -1772,31 +1830,31 @@ msgstr "secvenþa de escape `\\%c' tratatã ca `%c' simplu"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': nu s-a putut seta close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "nu am putut deschide `%s' pentru scriere: %s"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "eroare internã: Node_var cu vname null"
-#: profile.c:514
+#: profile.c:517
msgid "# treated internally as `delete'"
msgstr ""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr ""
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# profil gawk, creat %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1805,7 +1863,7 @@ msgstr ""
"\t# bloc(uri) BEGIN\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1814,7 +1872,7 @@ msgstr ""
"\t# Regulã(i)\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1823,7 +1881,7 @@ msgstr ""
"\t# bloc(uri) END\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1832,95 +1890,90 @@ msgstr ""
"\n"
"\t# Funcþii, listate alfabetic\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "tip %s neaºteptat în prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "tip nod %d necunoscut"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Succes"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Nici o potrivire"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Expresie regularã invalidã"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Caracter de comparare invalid"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "nume clasã caracter invalid"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Backslash final"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "referinþã anterioarã(back) invalidã"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ sau [^ fãrã reciprocã"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( sau \\( fãrã reciprocã"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "{ fãrã reciprocã"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Conþinut invalid al \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Sfârºit de domeniu invalid"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Memorie plinã"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Expresie regularã anterioarã invalidã"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Sfârºit prematur de expresie regularã"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Expresie regularã prea mare"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") or \\) fãrã reciprocã"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Nu existã expresii regulare anterioare"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "port remote invalid în `%s'"
-
-#~ msgid "function %s called\n"
-#~ msgstr "funcþia %s a fost apelatã\n"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "câmpul %d din FIELDWIDTHS trebuie sã fie > 0"
-
-#, fuzzy
-#~ msgid "or used as a variable or an array"
-#~ msgstr "nu se poate folosi numele funcþiei `%s' ca variabilã sau array"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: opþiune ilegalã -- %c\n"
#~ msgid "delete: illegal use of variable `%s' as array"
#~ msgstr "delete: folosire ilegalã a variabilei `%s' ca array"
@@ -1988,8 +2041,14 @@ msgstr "Nu existã expresii regulare anterioare"
#~ msgid "Unbalanced )"
#~ msgstr ") fãrã reciproc"
-#~ msgid "out of memory"
-#~ msgstr "memorie plinã"
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "câmpul %d din FIELDWIDTHS trebuie sã fie > 0"
+
+#~ msgid "function %s called\n"
+#~ msgstr "funcþia %s a fost apelatã\n"
+
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "port remote invalid în `%s'"
#~ msgid "internal error: file `%s', line %d\n"
#~ msgstr "eroare internã: fiºierul `%s', linia %d\n"
diff --git a/po/rw.gmo b/po/rw.gmo
index 62cb2147..af481639 100644
--- a/po/rw.gmo
+++ b/po/rw.gmo
Binary files differ
diff --git a/po/rw.po b/po/rw.po
index 274d60ce..aedf74ce 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.4\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2005-04-04 10:55-0700\n"
"Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
@@ -84,359 +84,364 @@ msgstr "%s:ni"
msgid "%s: array_ref to %s\n"
msgstr "%s:Kuri"
-#: awkgram.y:215
+#: awkgram.y:218
#, fuzzy, c-format
msgid "%s blocks must have an action part"
msgstr "%sIgikorwa"
-#: awkgram.y:218
+#: awkgram.y:221
#, fuzzy
msgid "each rule must have a pattern or an action part"
msgstr "a Ishusho Cyangwa Igikorwa"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
#, fuzzy
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: awkgram.y:282
+#: awkgram.y:285
#, fuzzy, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s'ni a in Umumaro"
-#: awkgram.y:328
+#: awkgram.y:331
#, fuzzy
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "nka a C Icyo wongeraho ni OYA"
-#: awkgram.y:331
+#: awkgram.y:334
#, fuzzy, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "nka a C Icyo wongeraho ni OYA"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
#, fuzzy
msgid "statement may have no effect"
msgstr "Inyandiko Gicurasi Oya INGARUKA"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, fuzzy, c-format
msgid "`%s' used in %s action"
msgstr "`%s'in Igikorwa"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
#, fuzzy
msgid "`nextfile' is a gawk extension"
msgstr "`ni a Umugereka"
-#: awkgram.y:489
+#: awkgram.y:492
#, fuzzy
msgid "`return' used outside function context"
msgstr "`Hanze Umumaro Imvugiro"
-#: awkgram.y:531
+#: awkgram.y:534
#, fuzzy
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr "Byuzuye in Cyangwa Gucapa"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
#, fuzzy
msgid "`delete array' is a gawk extension"
msgstr "`Gusiba ni a Umugereka"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
#, fuzzy
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`Gusiba Imbonerahamwe ni a Umugereka"
-#: awkgram.y:621
+#: awkgram.y:624
#, fuzzy, c-format
msgid "duplicate case values in switch body: %s"
msgstr "Gusubiramo Uduciro in Hindura Umubiri"
-#: awkgram.y:631
+#: awkgram.y:634
#, fuzzy
msgid "Duplicate `default' detected in switch body"
msgstr "in Hindura Umubiri"
-#: awkgram.y:720
+#: awkgram.y:723
#, fuzzy
msgid "multistage two-way pipelines don't work"
msgstr "Akazi"
-#: awkgram.y:811
+#: awkgram.y:814
#, fuzzy
msgid "regular expression on right of assignment"
msgstr "Ibisanzwe imvugo ku Iburyo: Bya Igenera"
-#: awkgram.y:834
+#: awkgram.y:824
#, fuzzy
msgid "regular expression on left of `~' or `!~' operator"
msgstr "Ibisanzwe imvugo ku Ibumoso: Bya Cyangwa Mukoresha"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
#, fuzzy
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: awkgram.y:846
+#: awkgram.y:836
#, fuzzy
msgid "regular expression on right of comparison"
msgstr "Ibisanzwe imvugo ku Iburyo: Bya"
-#: awkgram.y:903
+#: awkgram.y:893
#, fuzzy
msgid "non-redirected `getline' undefined inside END action"
msgstr "kidasobanuye Mo Imbere Igikorwa"
-#: awkgram.y:914
+#: awkgram.y:904
#, fuzzy
msgid "old awk does not support multidimensional arrays"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: awkgram.y:960
+#: awkgram.y:950
#, fuzzy
msgid "call of `length' without parentheses is not portable"
msgstr "Bya ni OYA"
-#: awkgram.y:965
+#: awkgram.y:955
#, fuzzy
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "Bya ni Bitemewe. ku"
-#: awkgram.y:1019
+#: awkgram.y:1009
#, fuzzy
msgid "use of non-array as array"
msgstr "Gukoresha Bya Imbonerahamwe Nka Imbonerahamwe"
-#: awkgram.y:1022
+#: awkgram.y:1012
#, fuzzy
msgid "invalid subscript expression"
msgstr "Sibyo Inyandiko nyesi imvugo"
-#: awkgram.y:1249
+#: awkgram.y:1257
#, fuzzy
msgid "unexpected newline or end of string"
msgstr "Cyangwa Impera Bya Ikurikiranyanyuguti"
-#: awkgram.y:1366
+#: awkgram.y:1374
#, fuzzy
msgid "empty program text on command line"
msgstr "ubusa Porogaramu Umwandiko ku Komandi: Umurongo"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, fuzzy, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "Gufungura Inkomoko IDOSIYE kugirango"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, fuzzy, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "Gusoma"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, fuzzy, c-format
msgid "source file `%s' is empty"
msgstr "Inkomoko IDOSIYE ni ubusa"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
#, fuzzy
msgid "source file does not end in newline"
msgstr "Inkomoko IDOSIYE OYA Impera in"
-#: awkgram.y:1782
+#: awkgram.y:1790
#, fuzzy
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "Na: ku Impera Bya IDOSIYE"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr ""
-#: awkgram.y:1820
+#: awkgram.y:1828
#, fuzzy
msgid "unterminated regexp at end of file"
msgstr "ku Impera Bya IDOSIYE"
-#: awkgram.y:1889
+#: awkgram.y:1897
#, fuzzy
msgid "use of `\\ #...' line continuation is not portable"
msgstr "Gukoresha Bya Umurongo ni OYA"
-#: awkgram.y:1902
+#: awkgram.y:1910
#, fuzzy
msgid "backslash not last character on line"
msgstr "OYA Iheruka Inyuguti ku Umurongo"
-#: awkgram.y:1947
+#: awkgram.y:1955
#, fuzzy
msgid "POSIX does not allow operator `**='"
msgstr "OYA Kwemerera Mukoresha"
-#: awkgram.y:1949
+#: awkgram.y:1957
#, fuzzy
msgid "old awk does not support operator `**='"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: awkgram.y:1958
+#: awkgram.y:1966
#, fuzzy
msgid "POSIX does not allow operator `**'"
msgstr "OYA Kwemerera Mukoresha"
-#: awkgram.y:1960
+#: awkgram.y:1968
#, fuzzy
msgid "old awk does not support operator `**'"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: awkgram.y:1991
+#: awkgram.y:1999
#, fuzzy
msgid "operator `^=' is not supported in old awk"
msgstr "Mukoresha ni OYA in ki/ bishaje"
-#: awkgram.y:1999
+#: awkgram.y:2007
#, fuzzy
msgid "operator `^' is not supported in old awk"
msgstr "Mukoresha ni OYA in ki/ bishaje"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
#, fuzzy
msgid "unterminated string"
msgstr "Ikurikiranyanyuguti"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, fuzzy, c-format
msgid "invalid char '%c' in expression"
msgstr "Sibyo INYUGUTI in imvugo"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, fuzzy, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s'ni a Umugereka"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, fuzzy, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s'ni a Umugereka"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, fuzzy, c-format
msgid "POSIX does not allow `%s'"
msgstr "OYA Kwemerera"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, fuzzy, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s'ni OYA in ki/ bishaje"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr ""
-#: awkgram.y:2429
+#: awkgram.y:2437
#, fuzzy, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%dni Sibyo Nka Umubare Bya ingingo kugirango"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
#, fuzzy
msgid "match: third argument is a gawk extension"
msgstr "BIHUYE ni a Umugereka"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, fuzzy, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s:Ikurikiranyanyuguti Nka Iheruka Bya GUSIMBURANYA Oya INGARUKA"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, fuzzy, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%sni OYA a Igikoresho"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
#, fuzzy
msgid "close: second argument is a gawk extension"
msgstr "Gufunga ISEGONDA ni a Umugereka"
-#: awkgram.y:2507
+#: awkgram.y:2515
#, fuzzy
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "Gukoresha Bya ni Gukuraho... Nyobora"
-#: awkgram.y:2522
+#: awkgram.y:2530
#, fuzzy
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "Gukoresha Bya ni Gukuraho... Nyobora"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, fuzzy, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "Umumaro"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, fuzzy, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "Umumaro IMPINDURAGACIRO"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, fuzzy, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "OYA Gufungura kugirango"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
#, fuzzy
msgid "sending profile to standard error"
msgstr "Ibijyana Kuri Bisanzwe Ikosa"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, fuzzy, c-format
msgid "%s: close failed (%s)"
msgstr "%s:Gufunga Byanze"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr ""
-#: awkgram.y:2920
+#: awkgram.y:2928
#, fuzzy
msgid "there were shadowed variables."
msgstr "Bihawe igicucu Ibihinduka"
-#: awkgram.y:2993
+#: awkgram.y:3001
#, fuzzy, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "Umumaro Gukoresha Umumaro Izina: Nka Izina:"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "Umumaro Gukoresha Umumaro Izina: Nka Izina:"
+
+#: awkgram.y:3014
#, fuzzy, c-format
msgid "function name `%s' previously defined"
msgstr "Umumaro Izina:"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, fuzzy, c-format
msgid "function `%s' called but never defined"
msgstr "Umumaro Nta narimwe"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, fuzzy, c-format
msgid "function `%s' defined but never called"
msgstr "Umumaro Nta narimwe"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, fuzzy, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "kugirango Icyungo Agaciro"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, fuzzy, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -445,560 +450,584 @@ msgstr ""
"Umumaro Na: Umwanya hagati Izina: Na Cyangwa Nka a IMPINDURAGACIRO Cyangwa "
"Imbonerahamwe"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, fuzzy, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "ku Zeru in"
+
+#: builtin.c:122
#, fuzzy, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%sKuri Byanze"
-#: builtin.c:120
+#: builtin.c:123
#, fuzzy
msgid "standard output"
msgstr "Bisanzwe Ibisohoka"
-#: builtin.c:121
+#: builtin.c:124
#, fuzzy
msgid "reason unknown"
msgstr "Kitazwi"
-#: builtin.c:134
+#: builtin.c:137
#, fuzzy
msgid "exp: received non-numeric argument"
msgstr "EXP BYAKIRIWE Bikurikije umubare"
-#: builtin.c:140
+#: builtin.c:143
#, fuzzy, c-format
msgid "exp: argument %g is out of range"
msgstr "EXP ni Inyuma Bya Urutonde"
-#: builtin.c:198
+#: builtin.c:201
#, fuzzy, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr "kugirango OYA"
-#: builtin.c:201
+#: builtin.c:204
#, fuzzy, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "IDOSIYE kugirango OYA"
-#: builtin.c:213
+#: builtin.c:216
#, fuzzy, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "ni OYA Gufungura IDOSIYE Cyangwa"
-#: builtin.c:306
+#: builtin.c:310
#, fuzzy
msgid "index: received non-string first argument"
msgstr "Umubarendanga BYAKIRIWE Ikurikiranyanyuguti Itangira"
-#: builtin.c:308
+#: builtin.c:312
#, fuzzy
msgid "index: received non-string second argument"
msgstr "Umubarendanga BYAKIRIWE Ikurikiranyanyuguti ISEGONDA"
-#: builtin.c:423
+#: builtin.c:434
#, fuzzy
msgid "int: received non-numeric argument"
msgstr "INT BYAKIRIWE Bikurikije umubare"
-#: builtin.c:448
+#: builtin.c:464
#, fuzzy
msgid "`length(array)' is a gawk extension"
msgstr "`Gusiba ni a Umugereka"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
#, fuzzy
msgid "length: received non-string argument"
msgstr "Uburebure BYAKIRIWE Ikurikiranyanyuguti"
-#: builtin.c:483
+#: builtin.c:508
#, fuzzy
msgid "log: received non-numeric argument"
msgstr "LOG BYAKIRIWE Bikurikije umubare"
-#: builtin.c:486
+#: builtin.c:511
#, fuzzy, c-format
msgid "log: received negative argument %g"
msgstr "LOG BYAKIRIWE"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
#, fuzzy
msgid "must use `count$' on all formats or none"
msgstr "Gukoresha IBARA ku Byose Imiterere Cyangwa Ntacyo"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
#, fuzzy
msgid "`$' is not permitted in awk formats"
msgstr "`$'ni OYA in Imiterere"
-#: builtin.c:805
+#: builtin.c:844
#, fuzzy
msgid "arg count with `$' must be > 0"
msgstr "IBARA Na: 0"
-#: builtin.c:807
+#: builtin.c:846
#, fuzzy, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "IBARA Biruta Igiteranyo Umubare Bya ingingo"
-#: builtin.c:809
+#: builtin.c:848
#, fuzzy
msgid "`$' not permitted after period in format"
msgstr "`$'OYA Nyuma Igihe in Imiterere"
-#: builtin.c:822
+#: builtin.c:861
#, fuzzy
msgid "no `$' supplied for positional field width or precision"
msgstr "Oya kugirango Umwanya Ubugari Cyangwa"
-#: builtin.c:888
+#: builtin.c:927
#, fuzzy
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`ni in Imiterere"
-#: builtin.c:892
+#: builtin.c:931
#, fuzzy
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`ni OYA in Imiterere"
-#: builtin.c:903
+#: builtin.c:942
#, fuzzy
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`ni in Imiterere"
-#: builtin.c:907
+#: builtin.c:946
#, fuzzy
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`ni OYA in Imiterere"
-#: builtin.c:918
+#: builtin.c:957
#, fuzzy
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`ni in Imiterere"
-#: builtin.c:922
+#: builtin.c:961
#, fuzzy
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`ni OYA in Imiterere"
-#: builtin.c:1182
+#: builtin.c:1236
#, fuzzy, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[S Agaciro ni Inyuma Bya Urutonde kugirango Imiterere"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
#, fuzzy
msgid "not enough arguments to satisfy format string"
msgstr "OYA ingingo Kuri Imiterere Ikurikiranyanyuguti"
-#: builtin.c:1268
+#: builtin.c:1324
#, fuzzy
msgid "^ ran out for this one"
msgstr "^Inyuma kugirango iyi"
-#: builtin.c:1274
+#: builtin.c:1330
#, fuzzy
msgid "[s]printf: format specifier does not have control letter"
msgstr "[S Imiterere OYA Igenzura Ibaruwa..."
-#: builtin.c:1277
+#: builtin.c:1333
#, fuzzy
msgid "too many arguments supplied for format string"
msgstr "ingingo kugirango Imiterere Ikurikiranyanyuguti"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
#, fuzzy
msgid "printf: no arguments"
msgstr "Oya ingingo"
-#: builtin.c:1379
+#: builtin.c:1435
#, fuzzy
msgid "sqrt: received non-numeric argument"
msgstr "SQRT BYAKIRIWE Bikurikije umubare"
-#: builtin.c:1383
+#: builtin.c:1439
#, fuzzy, c-format
msgid "sqrt: called with negative argument %g"
msgstr "SQRT Na:"
-#: builtin.c:1407
+#: builtin.c:1463
#, fuzzy, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "Gutangira Umubarendanga ni Sibyo ikoresha 1."
-#: builtin.c:1412
+#: builtin.c:1468
#, fuzzy, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "Umubare wuzuye Gutangira Umubarendanga"
-#: builtin.c:1431
+#: builtin.c:1494
#, fuzzy, c-format
msgid "substr: length %g is not >= 1"
msgstr "Uburebure ni OYA 1."
-#: builtin.c:1433
+#: builtin.c:1496
#, fuzzy, c-format
msgid "substr: length %g is not >= 0"
msgstr "Uburebure ni OYA 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, fuzzy, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "Umubare wuzuye Uburebure"
-#: builtin.c:1445
+#: builtin.c:1508
#, fuzzy, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "Uburebure kugirango Ikurikiranyanyuguti gushyiraho umugereka Kuri"
-#: builtin.c:1457
+#: builtin.c:1520
#, fuzzy
msgid "substr: source string is zero length"
msgstr "Inkomoko Ikurikiranyanyuguti ni Zeru Uburebure"
-#: builtin.c:1473
+#: builtin.c:1536
#, fuzzy, c-format
msgid "substr: start index %g is past end of string"
msgstr "Gutangira Umubarendanga ni Impera Bya Ikurikiranyanyuguti"
-#: builtin.c:1481
+#: builtin.c:1544
#, fuzzy, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr "Uburebure ku Gutangira Umubarendanga Uburebure Bya Itangira"
-#: builtin.c:1558
+#: builtin.c:1621
#, fuzzy
msgid "strftime: received non-string first argument"
msgstr "BYAKIRIWE Ikurikiranyanyuguti Itangira"
-#: builtin.c:1564
+#: builtin.c:1627
#, fuzzy
msgid "strftime: received empty format string"
msgstr "BYAKIRIWE ubusa Imiterere Ikurikiranyanyuguti"
-#: builtin.c:1573
+#: builtin.c:1636
#, fuzzy
msgid "strftime: received non-numeric second argument"
msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:1650
+#: builtin.c:1713
#, fuzzy
msgid "mktime: received non-string argument"
msgstr "BYAKIRIWE Ikurikiranyanyuguti"
-#: builtin.c:1695
+#: builtin.c:1758
#, fuzzy
msgid "system: received non-string argument"
msgstr "Sisitemu BYAKIRIWE Ikurikiranyanyuguti"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, fuzzy, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "Indango Kuri Itatangijwe Umwanya"
-#: builtin.c:1921
+#: builtin.c:1984
#, fuzzy
msgid "tolower: received non-string argument"
msgstr "BYAKIRIWE Ikurikiranyanyuguti"
-#: builtin.c:1951
+#: builtin.c:2014
#, fuzzy
msgid "toupper: received non-string argument"
msgstr "BYAKIRIWE Ikurikiranyanyuguti"
-#: builtin.c:1984
+#: builtin.c:2047
#, fuzzy
msgid "atan2: received non-numeric first argument"
msgstr "ATAN2 BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:1986
+#: builtin.c:2049
#, fuzzy
msgid "atan2: received non-numeric second argument"
msgstr "ATAN2 BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2005
+#: builtin.c:2068
#, fuzzy
msgid "sin: received non-numeric argument"
msgstr "SIN BYAKIRIWE Bikurikije umubare"
-#: builtin.c:2021
+#: builtin.c:2084
#, fuzzy
msgid "cos: received non-numeric argument"
msgstr "COS BYAKIRIWE Bikurikije umubare"
-#: builtin.c:2071
+#: builtin.c:2137
#, fuzzy
msgid "srand: received non-numeric argument"
msgstr "BYAKIRIWE Bikurikije umubare"
-#: builtin.c:2106
+#: builtin.c:2172
#, fuzzy
msgid "match: third argument is not an array"
msgstr "BIHUYE ni OYA Imbonerahamwe"
-#: builtin.c:2650
+#: builtin.c:2719
#, fuzzy
msgid "gensub: third argument of 0 treated as 1"
msgstr "Bya 0 Nka 1."
-#: builtin.c:2766
+#: builtin.c:2835
#, fuzzy
msgid "lshift: received non-numeric first argument"
msgstr "BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:2768
+#: builtin.c:2837
#, fuzzy
msgid "lshift: received non-numeric second argument"
msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2774
+#: builtin.c:2843
#, fuzzy, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "Uduciro Ibisubizo ku"
-#: builtin.c:2776
+#: builtin.c:2845
#, fuzzy, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "Uduciro"
-#: builtin.c:2778
+#: builtin.c:2847
#, fuzzy, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "Binini Gusunika Agaciro Ibisubizo ku"
-#: builtin.c:2804
+#: builtin.c:2873
#, fuzzy
msgid "rshift: received non-numeric first argument"
msgstr "BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:2806
+#: builtin.c:2875
#, fuzzy
msgid "rshift: received non-numeric second argument"
msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2812
+#: builtin.c:2881
#, fuzzy, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "Uduciro Ibisubizo ku"
-#: builtin.c:2814
+#: builtin.c:2883
#, fuzzy, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "Uduciro"
-#: builtin.c:2816
+#: builtin.c:2885
#, fuzzy, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "Binini Gusunika Agaciro Ibisubizo ku"
-#: builtin.c:2842
+#: builtin.c:2911
#, fuzzy
msgid "and: received non-numeric first argument"
msgstr "Na BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:2844
+#: builtin.c:2913
#, fuzzy
msgid "and: received non-numeric second argument"
msgstr "Na BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2850
+#: builtin.c:2919
#, fuzzy, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "Na Uduciro Ibisubizo ku"
-#: builtin.c:2852
+#: builtin.c:2921
#, fuzzy, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "Na Uduciro"
-#: builtin.c:2878
+#: builtin.c:2947
#, fuzzy
msgid "or: received non-numeric first argument"
msgstr "Cyangwa BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:2880
+#: builtin.c:2949
#, fuzzy
msgid "or: received non-numeric second argument"
msgstr "Cyangwa BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2886
+#: builtin.c:2955
#, fuzzy, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "Cyangwa Uduciro Ibisubizo ku"
-#: builtin.c:2888
+#: builtin.c:2957
#, fuzzy, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "Cyangwa Uduciro"
-#: builtin.c:2914
+#: builtin.c:2983
#, fuzzy
msgid "xor: received non-numeric first argument"
msgstr "BYAKIRIWE Bikurikije umubare Itangira"
-#: builtin.c:2916
+#: builtin.c:2985
#, fuzzy
msgid "xor: received non-numeric second argument"
msgstr "BYAKIRIWE Bikurikije umubare ISEGONDA"
-#: builtin.c:2922
+#: builtin.c:2991
#, fuzzy, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "Uduciro Ibisubizo ku"
-#: builtin.c:2924
+#: builtin.c:2993
#, fuzzy, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "Uduciro"
-#: builtin.c:2948
+#: builtin.c:3017
#, fuzzy
msgid "compl: received non-numeric argument"
msgstr "BYAKIRIWE Bikurikije umubare"
-#: builtin.c:2954
+#: builtin.c:3023
#, fuzzy, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "Agaciro Ibisubizo ku"
-#: builtin.c:2956
+#: builtin.c:3025
#, fuzzy, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "Agaciro"
-#: builtin.c:3129
+#: builtin.c:3198
#, fuzzy, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "ni OYA a Byemewe Umwanya Icyiciro"
-#: eval.c:303
+#: eval.c:372
#, fuzzy, c-format
msgid "unknown nodetype %d"
msgstr "Kitazwi"
-#: eval.c:353
+#: eval.c:422
#, fuzzy
msgid "buffer overflow in genflags2str"
msgstr "Byarenze urugero in"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, fuzzy, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "Kuri Gukoresha Imbonerahamwe in a Imvugiro"
-#: eval.c:733
+#: eval.c:802
#, fuzzy, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr "kugirango Imbonerahamwe Byahinduwe Ingano Bivuye Kuri"
-#: eval.c:754
+#: eval.c:823
#, fuzzy
msgid "`break' outside a loop is not portable"
msgstr "`Hanze a ni OYA"
-#: eval.c:758
+#: eval.c:827
#, fuzzy
msgid "`break' outside a loop is not allowed"
msgstr "`Hanze a ni OYA"
-#: eval.c:775
+#: eval.c:844
#, fuzzy
msgid "`continue' outside a loop is not portable"
msgstr "`Hanze a ni OYA"
-#: eval.c:779
+#: eval.c:848
#, fuzzy
msgid "`continue' outside a loop is not allowed"
msgstr "`Hanze a ni OYA"
-#: eval.c:813
+#: eval.c:882
#, fuzzy
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`Bivuye a"
-#: eval.c:815
+#: eval.c:884
#, fuzzy
msgid "`next' cannot be called from an END rule"
msgstr "`Bivuye"
-#: eval.c:824
+#: eval.c:893
#, fuzzy
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`Bivuye a"
-#: eval.c:826
+#: eval.c:895
#, fuzzy
msgid "`nextfile' cannot be called from an END rule"
msgstr "`Bivuye"
-#: eval.c:875
+#: eval.c:952
#, fuzzy
msgid "statement has no effect"
msgstr "Inyandiko Oya INGARUKA"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, fuzzy, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "Gukoresha Umumaro Izina: Nka IMPINDURAGACIRO Cyangwa Imbonerahamwe"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, fuzzy, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "Indango Kuri Itatangijwe"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, fuzzy, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "Indango Kuri Itatangijwe IMPINDURAGACIRO"
-#: eval.c:1120
+#: eval.c:1197
#, fuzzy
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr "Ingaruka in imvugo Byahinduwe i Uburebure Bya"
-#: eval.c:1202
+#: eval.c:1301
#, fuzzy
msgid "assignment used in conditional context"
msgstr "Igenera in Imvugiro"
-#: eval.c:1280
+#: eval.c:1379
#, fuzzy
msgid "division by zero attempted"
msgstr "ku Zeru"
-#: eval.c:1295
-#, fuzzy, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "ku Zeru in"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, fuzzy, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "Ubwoko in"
-#: eval.c:1473
+#: eval.c:1572
#, fuzzy
msgid "division by zero attempted in `/='"
msgstr "ku Zeru in"
-#: eval.c:1495
+#: eval.c:1594
#, fuzzy, c-format
msgid "division by zero attempted in `%%='"
msgstr "ku Zeru in"
-#: eval.c:1760
+#: eval.c:1859
#, fuzzy, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "Umumaro Na: Birenzeho ingingo"
-#: eval.c:1804
+#: eval.c:1904
#, fuzzy, c-format
msgid "function `%s' not defined"
msgstr "Umumaro OYA"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -1006,47 +1035,52 @@ msgid ""
"\n"
msgstr ""
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr ""
-#: eval.c:2025
+#: eval.c:2129
#, fuzzy
msgid "attempt to field reference from non-numeric value"
msgstr "Kuri Umwanya Indango Bivuye Bikurikije umubare Agaciro"
-#: eval.c:2027
+#: eval.c:2131
#, fuzzy
msgid "attempt to reference from null string"
msgstr "Kuri Indango Bivuye NTAGIHARI Ikurikiranyanyuguti"
-#: eval.c:2033
+#: eval.c:2137
#, fuzzy, c-format
msgid "attempt to access field %d"
msgstr "Kuri Umwanya"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
#, fuzzy
msgid "assignment is not allowed to result of builtin function"
msgstr "Igenera ni OYA Kuri Igisubizo Bya Umumaro"
-#: eval.c:2125
+#: eval.c:2229
#, fuzzy
msgid "`IGNORECASE' is a gawk extension"
msgstr "`ni a Umugereka"
-#: eval.c:2155
+#: eval.c:2258
#, fuzzy
msgid "`BINMODE' is a gawk extension"
msgstr "`ni a Umugereka"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr ""
-#: eval.c:2355
+#: eval.c:2484
#, fuzzy
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "Bidakora Kuri Igenera Kuri"
@@ -1125,585 +1159,593 @@ msgstr ""
msgid "NF set to negative value"
msgstr "Gushyiraho Kuri Agaciro"
-#: field.c:823
+#: field.c:875
#, fuzzy
msgid "split: second argument is not an array"
msgstr "Gutandukanya ISEGONDA ni OYA Imbonerahamwe"
-#: field.c:857
+#: field.c:909
#, fuzzy
msgid "split: null string for third arg is a gawk extension"
msgstr "Gutandukanya NTAGIHARI Ikurikiranyanyuguti kugirango ni a Umugereka"
-#: field.c:909
+#: field.c:961
#, fuzzy
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`ni a Umugereka"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr ""
-#: field.c:1036
+#: field.c:1088
#, fuzzy
msgid "null string for `FS' is a gawk extension"
msgstr "NTAGIHARI Ikurikiranyanyuguti kugirango ni a Umugereka"
-#: field.c:1040
+#: field.c:1092
#, fuzzy
msgid "old awk does not support regexps as value of `FS'"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: getopt.c:571 getopt.c:587
+#: getopt.c:570 getopt.c:586
#, fuzzy, c-format
-msgid "%s: option `%s' is ambiguous\n"
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s:Ihitamo ni"
-#: getopt.c:620 getopt.c:624
+#: getopt.c:619 getopt.c:623
#, fuzzy, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s:Ihitamo Kwemerera"
-#: getopt.c:633 getopt.c:638
+#: getopt.c:632 getopt.c:637
#, fuzzy, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s:Ihitamo Kwemerera"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, fuzzy, c-format
-msgid "%s: option `%s' requires an argument\n"
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s:Ihitamo"
-#: getopt.c:738 getopt.c:741
+#: getopt.c:737 getopt.c:740
#, fuzzy, c-format
-msgid "%s: unrecognized option `--%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s:Ihitamo"
-#: getopt.c:749 getopt.c:752
+#: getopt.c:748 getopt.c:751
#, fuzzy, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s:Ihitamo"
-#: getopt.c:804 getopt.c:807
+#: getopt.c:800 getopt.c:803
#, fuzzy, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s:Ihitamo"
-
-#: getopt.c:813 getopt.c:816
-#, fuzzy, c-format
-msgid "%s: invalid option -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s:Sibyo Ihitamo"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, fuzzy, c-format
-msgid "%s: option requires an argument -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s:Ihitamo"
-#: getopt.c:937 getopt.c:953
+#: getopt.c:923 getopt.c:939
#, fuzzy, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s:Ihitamo ni"
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, fuzzy, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s:Ihitamo Kwemerera"
-#: io.c:345
+#: io.c:322 io.c:352
#, fuzzy, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "Gufungura IDOSIYE kugirango"
-#: io.c:436
+#: io.c:443
#, fuzzy, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "Gufunga Bya Byanze"
-#: io.c:575
+#: io.c:583
#, fuzzy, c-format
msgid "invalid tree type %s in redirect()"
msgstr "Sibyo Ubwoko in"
-#: io.c:581
+#: io.c:589
#, fuzzy, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "imvugo in Bikurikije umubare Agaciro"
-#: io.c:587
+#: io.c:595
#, fuzzy, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "imvugo kugirango NTAGIHARI Ikurikiranyanyuguti Agaciro"
-#: io.c:592
+#: io.c:600
#, fuzzy, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"Izina ry'idosiye: kugirango Gicurasi Igisubizo Bya Bijyanye n'inyurabwenge "
"imvugo"
-#: io.c:630
+#: io.c:638
#, fuzzy, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "Bya Na kugirango IDOSIYE"
-#: io.c:682
+#: io.c:685
#, fuzzy, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "Gufungura kugirango Ibisohoka"
-#: io.c:691
+#: io.c:694
#, fuzzy, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "Gufungura kugirango Iyinjiza"
-#: io.c:698 io.c:1448
-#, fuzzy, c-format
-msgid "file `%s' is a directory"
-msgstr "IDOSIYE ni a bushyinguro"
-
-#: io.c:706
+#: io.c:712
#, fuzzy, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "Gufungura kugirango Iyinjiza Ibisohoka"
-#: io.c:710
+#: io.c:716
#, fuzzy, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "Gufungura kugirango Iyinjiza Ibisohoka"
-#: io.c:786
+#: io.c:793
#, fuzzy, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "Bivuye"
-#: io.c:789
+#: io.c:796
#, fuzzy, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "Kuri"
-#: io.c:828
+#: io.c:849
#, fuzzy
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr "Sisitemu kugirango Gufungura Idosiye Kuri IDOSIYE"
-#: io.c:844
+#: io.c:865
#, fuzzy, c-format
msgid "close of `%s' failed (%s)."
msgstr "Gufunga Bya Byanze"
-#: io.c:852
+#: io.c:873
#, fuzzy
msgid "too many pipes or input files open"
msgstr "Cyangwa Iyinjiza Idosiye Gufungura"
-#: io.c:875
+#: io.c:896
#, fuzzy
msgid "close: second argument must be `to' or `from'"
msgstr "Gufunga ISEGONDA Cyangwa"
-#: io.c:889
+#: io.c:910
#, fuzzy, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "Gufunga."
-#: io.c:893
+#: io.c:915
#, fuzzy
msgid "close of redirection that was never opened"
msgstr "Gufunga Bya Nta narimwe"
-#: io.c:989
+#: io.c:1012
#, fuzzy, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr "Gufunga OYA Na: ISEGONDA"
-#: io.c:1005
+#: io.c:1028
#, fuzzy, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "Imimerere ku Gufunga Bya"
-#: io.c:1008
+#: io.c:1031
#, fuzzy, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "Imimerere ku IDOSIYE Gufunga Bya"
-#: io.c:1028
+#: io.c:1051
#, fuzzy, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "Oya Gufunga Bya"
-#: io.c:1031
+#: io.c:1054
#, fuzzy, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "Oya Gufunga Bya"
-#: io.c:1034
+#: io.c:1057
#, fuzzy, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "Oya Gufunga Bya"
-#: io.c:1037
+#: io.c:1060
#, fuzzy, c-format
msgid "no explicit close of file `%s' provided"
msgstr "Oya Gufunga Bya IDOSIYE"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, fuzzy, c-format
msgid "error writing standard output (%s)"
msgstr "Ikosa Bisanzwe Ibisohoka"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, fuzzy, c-format
msgid "error writing standard error (%s)"
msgstr "Ikosa Bisanzwe Ikosa"
-#: io.c:1078
+#: io.c:1100
#, fuzzy, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "Bya Byanze"
-#: io.c:1081
+#: io.c:1103
#, fuzzy, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "Bya Kuri Byanze"
-#: io.c:1084
+#: io.c:1106
#, fuzzy, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "IDOSIYE Bya Byanze"
-#: io.c:1198
+#: io.c:1220
#, fuzzy, c-format
msgid "local port %s invalid in `/inet'"
msgstr "Umuyoboro Sibyo in"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr ""
-#: io.c:1250
+#: io.c:1272
#, fuzzy
msgid "/inet/raw client not ready yet, sorry"
msgstr "/Umukiriya OYA Cyiteguye"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
#, fuzzy
msgid "only root may use `/inet/raw'."
msgstr "Imizi Gicurasi Gukoresha"
-#: io.c:1287
+#: io.c:1309
#, fuzzy
msgid "/inet/raw server not ready yet, sorry"
msgstr "/Seriveri OYA Cyiteguye"
-#: io.c:1385
+#: io.c:1407
#, fuzzy, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "Oya Porotokole in Bidasanzwe Izina ry'idosiye:"
-#: io.c:1399
+#: io.c:1421
#, fuzzy, c-format
msgid "special file name `%s' is incomplete"
msgstr "Bidasanzwe IDOSIYE Izina: ni"
-#: io.c:1414
+#: io.c:1436
#, fuzzy
msgid "must supply a remote hostname to `/inet'"
msgstr "a Izina ry'inturo: Kuri"
-#: io.c:1432
+#: io.c:1454
#, fuzzy
msgid "must supply a remote port to `/inet'"
msgstr "a Umuyoboro Kuri"
-#: io.c:1439
+#: io.c:1485
#, fuzzy
msgid "TCP/IP communications are not supported"
msgstr "OYA"
-#: io.c:1509
+#: io.c:1494
+#, fuzzy, c-format
+msgid "file `%s' is a directory"
+msgstr "IDOSIYE ni a bushyinguro"
+
+#: io.c:1555
#, fuzzy, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "Gukoresha Bya"
-#: io.c:1547
+#: io.c:1593
#, fuzzy
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "Gukoresha Bya"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, fuzzy, c-format
msgid "could not open `%s', mode `%s'"
msgstr "OYA Gufungura Ubwoko"
-#: io.c:1849
+#: io.c:1904
#, fuzzy, c-format
msgid "close of master pty failed (%s)"
msgstr "Gufunga Bya Mugenga Byanze"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, fuzzy, c-format
msgid "close of stdout in child failed (%s)"
msgstr "Gufunga Bya in Byanze"
-#: io.c:1854
+#: io.c:1909
#, fuzzy, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "Kuri in Byanze"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, fuzzy, c-format
msgid "close of stdin in child failed (%s)"
msgstr "Gufunga Bya in Byanze"
-#: io.c:1859
+#: io.c:1914
#, fuzzy, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "Kuri in Byanze"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, fuzzy, c-format
msgid "close of slave pty failed (%s)"
msgstr "Gufunga Bya Byanze"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, fuzzy, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "Kuri in Byanze"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, fuzzy, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "Kuri in Byanze"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
#, fuzzy
msgid "restoring stdout in parent process failed\n"
msgstr "in"
-#: io.c:1980
+#: io.c:2035
#, fuzzy
msgid "restoring stdin in parent process failed\n"
msgstr "in"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, fuzzy, c-format
msgid "close of pipe failed (%s)"
msgstr "Gufunga Bya Byanze"
-#: io.c:2059
+#: io.c:2114
#, fuzzy
msgid "`|&' not supported"
msgstr "`|&'OYA"
-#: io.c:2125
+#: io.c:2180
#, fuzzy, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "Gufungura"
-#: io.c:2166
+#: io.c:2221
#, fuzzy, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "Kurema kugirango"
-#: io.c:2548
+#: io.c:2603
#, fuzzy, c-format
msgid "data file `%s' is empty"
msgstr "Ibyatanzwe IDOSIYE ni ubusa"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
#, fuzzy
msgid "could not allocate more input memory"
msgstr "OYA Birenzeho Iyinjiza Ububiko"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, fuzzy, c-format
msgid "error reading input file `%s': %s"
msgstr "Ikosa Iyinjiza IDOSIYE"
-#: io.c:3163
+#: io.c:3218
#, fuzzy
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "Agaciro Bya ni a Umugereka"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
#, fuzzy
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "`-M Ihitamo in"
-#: main.c:353
+#: main.c:375
#, fuzzy
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-M Ihitamo Ikoresha: M"
-#: main.c:370
+#: main.c:392
#, fuzzy, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s:Ihitamo"
-#: main.c:407
+#: main.c:433
#, fuzzy
msgid "empty argument to `--source' ignored"
msgstr "ubusa Kuri"
-#: main.c:480
+#: main.c:487
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s:Ihitamo"
+
+#: main.c:506
#, fuzzy
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "IMPINDURAGACIRO Gushyiraho ku"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr ""
-#: main.c:497
+#: main.c:523
#, fuzzy
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "`--NYACUMI"
-#: main.c:501
+#: main.c:527
#, fuzzy, c-format
msgid "running %s setuid root may be a security problem"
msgstr "Imizi Gicurasi a Umutekano"
-#: main.c:542
+#: main.c:568
#, fuzzy, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "Gushyiraho Nyabibiri Ubwoko ku"
-#: main.c:545
+#: main.c:571
#, fuzzy, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "Gushyiraho Nyabibiri Ubwoko ku"
-#: main.c:547
+#: main.c:573
#, fuzzy, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "Gushyiraho Nyabibiri Ubwoko ku"
-#: main.c:586
+#: main.c:612
#, fuzzy
msgid "no program text at all!"
msgstr "Oya Porogaramu Umwandiko ku Byose"
-#: main.c:690
+#: main.c:716
#, fuzzy, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "Cyangwa IMISUSIRE Amahitamo F IDOSIYE"
-#: main.c:692
+#: main.c:718
#, fuzzy, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Cyangwa IMISUSIRE Amahitamo IDOSIYE"
-#: main.c:697
+#: main.c:723
#, fuzzy
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "Amahitamo Amahitamo"
-#: main.c:698
+#: main.c:724
#, fuzzy
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "-F IDOSIYE"
-#: main.c:699
+#: main.c:725
#, fuzzy
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "-Umwanya Mutandukanya"
-#: main.c:700
+#: main.c:726
#, fuzzy
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "-v VAR Kugenera... VAR"
-#: main.c:701
+#: main.c:727
#, fuzzy
msgid "\t-m[fr] val\n"
msgstr "-M"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr ""
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr ""
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr ""
-#: main.c:705
+#: main.c:732
#, fuzzy
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "-Ibihinduka IDOSIYE Ibihinduka IDOSIYE"
-#: main.c:706
+#: main.c:733
#, fuzzy
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "-Ibijyana IDOSIYE Ibijyana IDOSIYE"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr ""
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr ""
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr ""
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr ""
-#: main.c:711
+#: main.c:738
#, fuzzy
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "-NYACUMI NYACUMI"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr ""
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr ""
-#: main.c:718
+#: main.c:745
#, fuzzy
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "-Ibijyana IDOSIYE Ibijyana IDOSIYE"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr ""
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr ""
-#: main.c:721
+#: main.c:748
#, fuzzy
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "-Inkomoko Porogaramu Inkomoko Porogaramu"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr ""
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr ""
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr ""
@@ -1712,7 +1754,7 @@ msgstr ""
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
#, fuzzy
msgid ""
"\n"
@@ -1721,7 +1763,7 @@ msgid ""
"\n"
msgstr "Icyegeranyo in Na in i Byacapwe Verisiyo"
-#: main.c:738
+#: main.c:765
#, fuzzy
msgid ""
"gawk is a pattern scanning and processing language.\n"
@@ -1731,7 +1773,7 @@ msgstr ""
"ni a Ishusho Na Inonosora Ururimi Mburabuzi Bisanzwe Iyinjiza Na Bisanzwe "
"Ibisohoka"
-#: main.c:742
+#: main.c:769
#, fuzzy
msgid ""
"Examples:\n"
@@ -1739,7 +1781,7 @@ msgid ""
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
msgstr "Igiteranyo Gucapa Igiteranyo Gucapa"
-#: main.c:762
+#: main.c:789
#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1753,7 +1795,7 @@ msgstr ""
"C Porogaramu ni Kigenga Na Cyangwa i Bya i Nka Verisiyo 3. Bya i ku Ihitamo "
"Verisiyo"
-#: main.c:770
+#: main.c:797
#, fuzzy
msgid ""
"This program is distributed in the hope that it will be useful,\n"
@@ -1764,7 +1806,7 @@ msgid ""
msgstr ""
"Porogaramu ni in i ATARIIGIHARWE i Cyangwa A kugirango Birenzeho Birambuye"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1772,49 +1814,59 @@ msgid ""
msgstr ""
"BYAKIRIWE a Gukoporora Bya i Na: iyi Porogaramu NIBA OYA Kwandika Kuri i"
-#: main.c:816
+#: main.c:843
#, fuzzy
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-OYA Gushyiraho Kuri Isunika in"
-#: main.c:1060
+#: main.c:1117
#, fuzzy, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr "%s:`%s'Kuri OYA in VAR"
-#: main.c:1080
+#: main.c:1137
#, fuzzy, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s'ni OYA a By'amategeko IMPINDURAGACIRO Izina:"
-#: main.c:1083
+#: main.c:1140
#, fuzzy, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%s'ni OYA a IMPINDURAGACIRO Izina: kugirango IDOSIYE"
-#: main.c:1122
+#: main.c:1179
#, fuzzy
msgid "floating point exception"
msgstr "Bihindagurika Akadomo Irengayobora(-)"
-#: main.c:1129
+#: main.c:1186
#, fuzzy
msgid "fatal error: internal error"
msgstr "Ikosa By'imbere Ikosa"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "Ikosa By'imbere Ikosa"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "Ikosa By'imbere Ikosa"
+
+#: main.c:1261
#, fuzzy, c-format
msgid "no pre-opened fd %d"
msgstr "Oya Byahawe imiterere mbere"
-#: main.c:1187
+#: main.c:1268
#, fuzzy, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "OYA Byahawe imiterere mbere Gufungura NTAGIHARI kugirango"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, fuzzy, c-format
msgid "could not find groups: %s"
msgstr "OYA Gushaka Amatsinda"
@@ -1844,27 +1896,34 @@ msgstr ""
msgid "can't convert string to float"
msgstr "GUHINDURA Ikurikiranyanyuguti Kuri Kureremba"
-#: node.c:406
+#: node.c:462
#, fuzzy
msgid "backslash at end of string"
msgstr "ku Impera Bya Ikurikiranyanyuguti"
-#: node.c:548
+#: node.c:606
#, fuzzy, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "ki/ bishaje OYA Gushigikira Mukoresha"
-#: node.c:599
+#: node.c:657
#, fuzzy
msgid "POSIX does not allow `\\x' escapes"
msgstr "OYA Kwemerera"
-#: node.c:605
+#: node.c:663
#, fuzzy
msgid "no hex digits in `\\x' escape sequence"
msgstr "Oya in"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, fuzzy, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "Nka Byuzuye"
@@ -1874,151 +1933,160 @@ msgstr "Nka Byuzuye"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s%s`%s':OYA Gushyiraho Gufunga ku"
-#: profile.c:92
+#: profile.c:93
#, fuzzy, c-format
msgid "could not open `%s' for writing: %s"
msgstr "OYA Gufungura kugirango"
-#: profile.c:450
+#: profile.c:453
#, fuzzy, c-format
msgid "internal error: %s with null vname"
msgstr "By'imbere Ikosa Na: NTAGIHARI"
-#: profile.c:514
+#: profile.c:517
#, fuzzy
msgid "# treated internally as `delete'"
msgstr "#Nka"
-#: profile.c:1147
+#: profile.c:1069
#, fuzzy, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "#iyi ni a Umugereka Umumaro"
-#: profile.c:1178
+#: profile.c:1100
#, fuzzy, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "#Ibijyana Byaremwe"
-#: profile.c:1181
+#: profile.c:1103
#, fuzzy, c-format
msgid ""
"\t# BEGIN block(s)\n"
"\n"
msgstr "#Funga S"
-#: profile.c:1191
+#: profile.c:1113
#, fuzzy, c-format
msgid ""
"\t# Rule(s)\n"
"\n"
msgstr "#S"
-#: profile.c:1197
+#: profile.c:1119
#, fuzzy, c-format
msgid ""
"\t# END block(s)\n"
"\n"
msgstr "#Funga S"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
"\t# Functions, listed alphabetically\n"
msgstr ""
-#: profile.c:1470
+#: profile.c:1400
#, fuzzy, c-format
msgid "unexpected type %s in prec_level"
msgstr "Ubwoko in"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "Kitazwi"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Ibyatunganye"
-#: regcomp.c:135
+#: regcomp.c:136
#, fuzzy
msgid "No match"
msgstr "BIHUYE"
-#: regcomp.c:138
+#: regcomp.c:139
#, fuzzy
msgid "Invalid regular expression"
msgstr "Ibisanzwe imvugo"
-#: regcomp.c:141
+#: regcomp.c:142
#, fuzzy
msgid "Invalid collation character"
msgstr "Inyuguti"
-#: regcomp.c:144
+#: regcomp.c:145
#, fuzzy
msgid "Invalid character class name"
msgstr "Inyuguti ishuri Izina:"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr ""
-#: regcomp.c:150
+#: regcomp.c:151
#, fuzzy
msgid "Invalid back reference"
msgstr "Inyuma Indango"
-#: regcomp.c:153
+#: regcomp.c:154
#, fuzzy
msgid "Unmatched [ or [^"
msgstr "Cyangwa"
-#: regcomp.c:156
+#: regcomp.c:157
#, fuzzy
msgid "Unmatched ( or \\("
msgstr "Cyangwa"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr ""
-#: regcomp.c:162
+#: regcomp.c:163
#, fuzzy
msgid "Invalid content of \\{\\}"
msgstr "Ibikubiyemo Bya"
-#: regcomp.c:165
+#: regcomp.c:166
#, fuzzy
msgid "Invalid range end"
msgstr "Urutonde Impera"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr ""
-#: regcomp.c:171
+#: regcomp.c:172
#, fuzzy
msgid "Invalid preceding regular expression"
msgstr "Ibisanzwe imvugo"
-#: regcomp.c:174
+#: regcomp.c:175
#, fuzzy
msgid "Premature end of regular expression"
msgstr "Impera Bya Ibisanzwe imvugo"
-#: regcomp.c:177
+#: regcomp.c:178
#, fuzzy
msgid "Regular expression too big"
msgstr "imvugo"
-#: regcomp.c:180
+#: regcomp.c:181
#, fuzzy
msgid "Unmatched ) or \\)"
msgstr "Cyangwa"
-#: regcomp.c:664
+#: regcomp.c:700
#, fuzzy
msgid "No previous regular expression"
msgstr "Ibanjirije Ibisanzwe imvugo"
#, fuzzy
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s:Ihitamo"
+
+#, fuzzy
#~ msgid "remote port invalid in `%s'"
#~ msgstr "Umuyoboro Sibyo in"
diff --git a/po/sv.gmo b/po/sv.gmo
index 47828809..e5d86d8d 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index ef388362..ad27622c 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -1,23 +1,23 @@
# Swedish translation of gawk
# Copyright (C) 2003 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gawk package.
# Martin Sjögren <md9ms@mdstud.chalmers.se>, 2001-2002.
-#
-# $Id: sv.po,v 1.23 2003/02/27 18:54:30 martin Exp $
+# Christer Andersson <klamm@comhem.se>, 2007.
#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.1m\n"
+"Project-Id-Version: gawk 3.1.6\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2003-02-27 19:54+0100\n"
-"Last-Translator: Martin Sjögren <md9ms@mdstud.chalmers.se>\n"
-"Language-Team: Swedish <sv@li.org>\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2008-01-16 05:30+0100\n"
+"Last-Translator: Christer Andersson <klamm@comhem.se>\n"
+"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: array.c:112
-#, fuzzy, c-format
+#, c-format
msgid "attempt to use function `%s' as an array"
msgstr "försök att använda funktionen \"%s\" som vektor"
@@ -32,9 +32,9 @@ msgid "attempt to use scalar `%s' as array"
msgstr "försök att använda skalären \"%s\" som vektor"
#: array.c:156
-#, fuzzy, c-format
+#, c-format
msgid "from %s"
-msgstr "%s (från %s)"
+msgstr "från %s"
#: array.c:514
#, c-format
@@ -76,528 +76,560 @@ msgstr "%s: är en parameter\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: vektorreferens till %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s-block måste ha en åtgärdsdel"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "varje regel måste ha ett mönster eller en åtgärdsdel"
-#: awkgram.y:254 awkgram.y:263
-#, fuzzy
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
-msgstr "gamla awk stöder inte operatorn \"**\""
+msgstr "gamla awk stöder inte flera \"BEGIN\"- eller \"END\"-regler"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "\"%s\" är en inbyggd funktion, den kan inte definieras om"
-#: awkgram.y:328
-#, fuzzy
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
-msgstr "regexp-konstanten \"/%s/\" ser ut som en C-kommentar men är inte det"
+msgstr "regexp-konstanten \"//\" ser ut som en C++-kommentar men är inte det"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "regexp-konstanten \"/%s/\" ser ut som en C-kommentar men är inte det"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "kommandot kanske inte har någon effekt"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "\"%s\" använd i %s-åtgärden"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "\"nextfile\" är en gawk-utökning"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "\"return\" använd utanför funktion"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
"ensamt \"print\" i BEGIN eller END-regel bör troligen vara 'print \"\"'"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "\"delete array\" är en gawk-utökning"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "\"delete(array)\" är en icke portabel tawk-utökning"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
-msgstr ""
+msgstr "upprepade case-värden i switch-sats: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
-msgstr ""
+msgstr "Flera \"default\"-fall upptäcktes i switch-sats"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "flerstegs dubbelriktade rör fungerar inte"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "reguljärt uttryck i högerledet av en tilldelning"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "reguljärt uttryck på vänster sida om en \"~\"- eller \"!~\"-operator"
-#: awkgram.y:840 awkgram.y:913
-#, fuzzy
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "gamla awk stöder inte operatorn \"**\""
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "reguljärt uttryck i högerledet av en jämförelse"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "icke omdirigerad \"getline\" odefinierad inuti END-åtgärd"
-#: awkgram.y:914
-#, fuzzy
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
-msgstr "gamla awk stöder inte operatorn \"**\""
+msgstr "gamla awk stöder inte flerdimensionella vektorer"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "anrop av \"length\" utan parenteser är inte portabelt"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "anrop av \"length\" utan parenteser är föråldrat enligt POSIX"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
-msgstr ""
+msgstr "icke-vektor används som vektor"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "ogiltig indexuttryck"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "oväntat nyradstecken eller slut på strängen"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "tom programtext på kommandoraden"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "kan inte öppna källfilen \"%s\" för läsning (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "kan inte läsa källfilen \"%s\" (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "källfilen \"%s\" är tom"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "källfilen slutar inte med en ny rad"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "oavslutat reguljärt uttryck slutar med \"\\\" i slutet av filen"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
+"%s: %d: tawk-modifierare för reguljära uttryck \"/.../%c\" fungerar inte i "
+"gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
+"tawk-modifierare för reguljära uttryck \"/.../%c\" fungerar inte i gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "oavslutat reguljärt uttryck"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "oavslutat reguljärt uttryck i slutet av filen"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "Användning av \"\\ #...\" för radfortsättning är inte portabelt"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "sista tecknet på raden är inte ett omvänt snedstreck"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX tillåter inte operatorn \"**=\""
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "gamla awk stöder inte operatorn \"**=\""
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX tillåter inte operatorn \"**\""
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "gamla awk stöder inte operatorn \"**\""
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "operatorn \"^=\" stöds inte i gamla awk"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "operatorn \"^\" stöds inte i gamla awk"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "oavslutad sträng"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "ogiltigt tecken \"%c\" i uttryck"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "\"%s\" är en gawk-utökning"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "\"%s\" är en Bell Labs-utökning"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX tillåter inte \"%s\""
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "\"%s\" stöds inte i gamla awk"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "\"goto\" anses skadlig!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d är ett ogiltigt antal argument för %s"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: tredje argumentet är en gawk-utökning"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: bokstavlig sträng som sista argument till ersättning har ingen effekt"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s: tredje argumentet är inte ett ändringsbart objekt"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: andra argumentet är en gawk-utökning"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"användandet av dcgettext(_\"...\") är felaktigt: ta bort det inledande "
"understrykningstecknet"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr ""
"användandet av dcngettext(_\"...\") är felaktigt: ta bort det inledande "
"understrykningstecknet"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "funktionen \"%s\": parameter %d, \"%s\", är samma som parameter %d"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "funktionen \"%s\": parametern \"%s\" överskuggar en global variabel"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
-msgstr "kunde inte öpnna \"%s\" för skrivning (%s)"
+msgstr "kunde inte öppna \"%s\" för skrivning (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "skickar profilen till standard fel"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: misslyckades att stänga (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() anropad två gånger!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "det fanns överskuggade variabler."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "funktionen \"%s\": kan inte använda funktionsnamn som parameternamn"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "funktionen \"%s\": kan inte använda funktionsnamn som parameternamn"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "funktionen \"%s\" anropad men aldrig definierad"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "funktionen \"%s\" definierad men aldrig anropad"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "konstant reguljärt uttryck för parameter %d ger ett booleskt värde"
-#: awkgram.y:3234
-#, fuzzy, c-format
+#: awkgram.y:3245
+#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
"or used as a variable or an array"
msgstr ""
"funktionen \"%s\" anropad med blanktecken mellan namnet och \"(\",\n"
-"%s"
+"eller använd som variabel eller vektor"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "försökte dividera med noll i \"%%\""
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s till \"%s\" misslyckades (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "standard ut"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "okänd anledning"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: fick ett ickenumeriskt argument"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: argumentet %g är inte inom tillåten gräns"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: kan inte spola: röret \"%s\" öppnat för läsning, inte skrivning"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: kan inte spola: filen \"%s\" öppnad för läsning, inte skrivning"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: \"%s\" är inte en öppen fil, rör eller koprocess"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: första argumentet är inte en sträng"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: andra argumentet är inte en sträng"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: fick ett ickenumeriskt argument"
-#: builtin.c:448
-#, fuzzy
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
-msgstr "\"delete array\" är en gawk-utökning"
+msgstr "\"length(array)\" är en gawk-utökning"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: fick ett argument som inte är en sträng"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: fick ett ickenumeriskt argument"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: fick ett negativt argumentet %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "måste använda \"count$\" på alla eller inga format"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
-msgstr "\"$\" tillåts inte i awkformat"
+msgstr "\"$\" tillåts inte i awk-format"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "argumentantalet med \"$\" måste vara > 0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "argumentantalet %ld är större än antalet givna argument"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "\"$\" tillåts inte efter en punkt i formatet"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "inget \"$\" bifogat för positionsangiven fältbredd eller precision"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "\"l\" är meningslös i awk-format, ignorerad"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "\"l\" tillåts inte i POSIX awk-format"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "\"L\" är meningslös i awk-format, ignorerad"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "\"L\" tillåts inte i POSIX awk-format"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "\"h\" är meningslös i awk-format, ignorerad"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "\"h\" tillåts inte i POSIX awk-format"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
+msgstr "[s]printf: värdet %g är utanför \"%%%c\"-formatets giltiga intervall"
+
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
msgstr ""
-#: builtin.c:1266
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "för få argument för formatsträngen"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ tog slut här"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: formatspecifieraren har ingen kommandobokstav"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "för många argument för formatsträngen"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: inga argument"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: fick ickenumeriskt argument"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: anropad med negativt argument %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: startindex %g är ogiltigt, använder 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: startindex %g som inte är ett heltal kommer trunkeras"
-#: builtin.c:1431
-#, fuzzy, c-format
+#: builtin.c:1494
+#, c-format
msgid "substr: length %g is not >= 1"
-msgstr "substr: längden %g är <= 0"
+msgstr "substr: längden %g är inte >= 1"
-#: builtin.c:1433
-#, fuzzy, c-format
+#: builtin.c:1496
+#, c-format
msgid "substr: length %g is not >= 0"
-msgstr "substr: längden %g är <= 0"
+msgstr "substr: längden %g är inte >= 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: längden %g som inte är ett heltal kommer trunkeras"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: längden %g är för stor för strängindexering, trunkeras till %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: källsträngen är tom"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: startindex %g är bortom strängens slut"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -605,308 +637,298 @@ msgstr ""
"substr: längden %g vid startindex %g överskrider det första argumentets "
"längd (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: fick ett första argument som inte är en sträng"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: fick en tom formatsträng"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: fick ett ickenumeriskt andra argument"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: fick ett argument som inte är en sträng"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: fick ett argument som inte är en sträng"
-#: builtin.c:1816 eval.c:2041
-#, fuzzy, c-format
+#: builtin.c:1879 eval.c:2145
+#, c-format
msgid "reference to uninitialized field `$%d'"
-msgstr "referens till icke initierad variabel \"%s\""
+msgstr "referens till icke initierat fält \"$%d\""
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: fick ett argument som inte är en sträng"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: fick ett argument som inte är en sträng"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: fick ett ickenumeriskt första argument"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: fick ett ickenumeriskt andra argument"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: fick ett ickenumeriskt argument"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: fick ett ickenumeriskt argument"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: fick ett ickenumeriskt argument"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: tredje argumentet är inte en vektor"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
-msgstr "gensub: Nollan i tredje argumentet behandlad som en etta"
+msgstr "gensub: nollan i tredje argumentet behandlad som en etta"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: fick ett ickenumeriskt första argument"
-#: builtin.c:2768
-#, fuzzy
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
-msgstr "strftime: fick ett ickenumeriskt andra argument"
+msgstr "lshift: fick ett ickenumeriskt andra argument"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: fick ett ickenumeriskt första argument"
-#: builtin.c:2806
-#, fuzzy
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
-msgstr "strftime: fick ett ickenumeriskt andra argument"
+msgstr "rshift: fick ett ickenumeriskt andra argument"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: fick ett ickenumeriskt första argument"
-#: builtin.c:2844
-#, fuzzy
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
-msgstr "atan2: fick ett ickenumeriskt andra argument"
+msgstr "and: fick ett ickenumeriskt andra argument"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: fick ett ickenumeriskt första argument"
-#: builtin.c:2880
-#, fuzzy
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
-msgstr "atan2: fick ett ickenumeriskt andra argument"
+msgstr "or: fick ett ickenumeriskt andra argument"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: fick ett ickenumeriskt första argument"
-#: builtin.c:2916
-#, fuzzy
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
-msgstr "atan2: fick ett ickenumeriskt andra argument"
+msgstr "xor: fick ett ickenumeriskt andra argument"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: fick ett ickenumeriskt argument"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): negativa värden kommer ge konstiga resultat"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): flyttalsvärden kommer trunkeras"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: \"%s\" är inte en giltig lokalkategori"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "okänd nodtyp %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "buffertöverflöd i genflags2str"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "försök att använda vektorn \"%s\" i skalärsammanhang"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"forslinga: vektorn \"%s\" ändrade storlek från %ld till %ld under "
"slingexekvering"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "\"break\" utanför en slinga är inte portabelt"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "\"break\" utanför en slinga är inte tillåtet"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "\"continue\" utanför en slinga är inte portabelt"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "\"continue\" utanför en slinga är inte tillåtet"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "\"next\" kan inte anropas från en BEGIN-regel"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "\"next\" kan inte anropas från en END-regel"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "\"nextfile\" kan inte anropas från en BEGIN-regel"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "\"nextfile\" kan inte anropas från en END-regel"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "kommandot har ingen effekt"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "kan inte använda funktionsnamnet \"%s\" som variabel eller vektor"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "referens till icke initierat argument \"%s\""
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "referens till icke initierad variabel \"%s\""
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
"concatenation: sidoeffekter i ett uttryck har ändrat längden av ett annat!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "tilldelning använt i jämförelsesammanhang"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "försökte dividera med noll"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "försökte dividera med noll i \"%%\""
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "otillåten typ (%s) i tree_eval"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "försökte dividera med noll i \"/=\""
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "försökte dividera med noll i \"%%=\""
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "funktionen \"%s\" anropad med fler argument än vad som deklarerats"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "funktionen \"%s\" är inte definierad"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -917,42 +939,47 @@ msgstr ""
"\t# Funktionsanropsstack:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "försök att fältreferera från ickenumeriskt värde"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "försök att referera från tom sträng"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "försök att komma åt fält nummer %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "det är inte tillåtet att tilldela resultatet från en inbyggd funktion"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "\"IGNORECASE\" är en gawk-utökning"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "\"BINMODE\" är en gawk-utökning"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "felaktig \"%sFMT\"-specifikation \"%s\""
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "slår av \"--lint\" på grund av en tilldelning till \"LINT\""
@@ -972,52 +999,53 @@ msgstr "extension: bibliotek \"%s\": kan inte anropa funktionen \"%s\" (%s)\n"
#: ext.c:105
msgid "extension: missing function name"
-msgstr ""
+msgstr "extension: saknar funktionsnamn"
#: ext.c:110
-#, fuzzy, c-format
+#, c-format
msgid "extension: illegal character `%c' in function name `%s'"
-msgstr "extension: bibliotek \"%s\": kan inte anropa funktionen \"%s\" (%s)\n"
+msgstr "extension: ogiltigt tecken \"%c\" i funktionsnamnet \"%s\""
#: ext.c:116
-#, fuzzy, c-format
+#, c-format
msgid "extension: can't redefine function `%s'"
-msgstr "extension: kan inte öppna \"%s\" (%s)\n"
+msgstr "extension: kan inte definiera om funktionen \"%s\""
#: ext.c:120
-#, fuzzy, c-format
+#, c-format
msgid "extension: function `%s' already defined"
-msgstr "funktionen \"%s\" är inte definierad"
+msgstr "extension: funktionen \"%s\" är redan definierad"
#: ext.c:125
#, c-format
msgid "extension: can't use gawk built-in `%s' as function name"
msgstr ""
+"extension: kan inte använda gawks inbyggda \"%s\" som ett funktionsnamn"
#: ext.c:127
-#, fuzzy, c-format
+#, c-format
msgid "extension: function name `%s' previously defined"
-msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare"
+msgstr "extension: funktionsnamnet \"%s\" är definierat sedan tidigare"
#: ext.c:204
-#, fuzzy, c-format
+#, c-format
msgid "function `%s' defined to take no more than %d argument(s)"
-msgstr "funktionen \"%s\" definierad men aldrig anropad"
+msgstr "funktionen \"%s\" definierades för att ta maximalt %d argument"
#: ext.c:207
-#, fuzzy, c-format
+#, c-format
msgid "function `%s': missing argument #%d"
-msgstr "funktionen \"%s\" är inte definierad"
+msgstr "funktionen \"%s\": argument %d saknas"
#: ext.c:217
-#, fuzzy, c-format
+#, c-format
msgid "function `%s': argument #%d: attempt to use scalar as an array"
-msgstr "försök att använda skalären \"%s\" som vektor"
+msgstr "funktionen \"%s\": argument %d: försök att använda skalär som vektor"
#: ext.c:221
#, c-format
msgid "function `%s': argument #%d: attempt to use array as a scalar"
-msgstr ""
+msgstr "funktionen \"%s\": argument %d: försök att använda vektor som skalär"
#: ext.c:246
msgid "Operation Not Supported"
@@ -1027,555 +1055,561 @@ msgstr "Operationen stöds inte"
msgid "NF set to negative value"
msgstr "NF satt till ett negativt värde"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: andra argumentet är inte en vektor"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: tom sträng som tredje argument är en gawk-utökning"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "\"FIELDWIDTHS\" är en gawk-utökning"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
-msgstr ""
+msgstr "ogiltigt FIELDWITHS-värde i närheten av \"%s\""
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "tom sträng som \"FS\" är en gawk-utökning"
-#: field.c:1040
-#, fuzzy
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
-msgstr "gamla awk stöder inte operatorn \"**\""
+msgstr "gamla awk stöder inte reguljära uttryck som värden på \"FS\""
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: flaggan \"%s\" är tvetydig\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: flaggan \"--%s\" tillåter inte argument\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: flaggan \"%c%s\" tillåter inte argument\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: flaggan \"%s\" kräver ett argument\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: okänd flagga \"--%s\"\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: okänd flagga \"%c%s\"\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: otillåten flagga -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ogiltig flagga -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: flaggan kräver ett argument -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: flaggan \"-W %s\" är tvetydig\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: flaggan \"-W %s\" tillåter inte något argument\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "kan inte öppna filen \"%s\" för läsning (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "stängning av fd %d (\"%s\") misslyckades (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "ogiltig trädtyp %s i redirect()"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "uttrycket i \"%s\"-omdirigering har bara numeriskt värde"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "uttrycket för \"%s\"-omdirigering har en tom sträng som värde"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"filnamnet \"%s\" för \"%s\"-omdirigering kan vara resultatet av ett logiskt "
"uttryck"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "onödig blandning av \">\" och \">>\" för filen \"%.*s\""
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "kan inte öppna röret \"%s\" för utmatning (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "kan inte öppna röret \"%s\" för inmatning (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "filen \"%s\" är en katalog"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "kan inte öppna tvåvägsuttaget \"%s\" för in-/utmatning (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "kan inte öppna tvåvägsröret \"%s\" för in-/utmatning (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "kan inte dirigera om från \"%s\" (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "kan inte dirigera om till \"%s\" (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"nådde systembegränsningen för öppna filer: börjar multiplexa fildeskriptorer"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "stängning av \"%s\" misslyckades (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "för många rör eller indatafiler öppna"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: andra argumentet måste vara \"to\" eller \"from\""
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: \"%.*s\" är inte en öppen fil, rör eller koprocess"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "stängning av omdirigering som aldrig öppnades"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: omdirigeringen \"%s\" öppnades inte med \"|&\", andra argumentet "
"ignorerat"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "felstatus (%d) från rörstängning av \"%s\" (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "felstatus (%d) från filstängning av \"%s\" (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "ingen explicit stängning av uttaget \"%s\" tillhandahållen"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "ingen explicit stängning av koprocessen \"%s\" tillhandahållen"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "ingen explicit stängning av röret \"%s\" tillhandahållen"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "ingen explicit stängning av filen \"%s\" tillhandahållen"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "fel vid skrivning till standard ut (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "fel vid skrivning till standard fel (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "rörspolning av \"%s\" misslyckades (%s)"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "koprocesspolning av röret till \"%s\" misslyckades (%s)"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "filspolning av \"%s\" misslyckades (%s)"
-#: io.c:1198
-#, fuzzy, c-format
+#: io.c:1220
+#, c-format
msgid "local port %s invalid in `/inet'"
-msgstr "lokal port ogiltig i \"%s\""
+msgstr "lokal port %s ogiltig i \"/inet\""
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
-msgstr ""
+msgstr "ogiltig information (%s, %s) för fjärrvärd och fjärrport"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "/inet/raw-klient är tyvärr inte klar än"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "bara root kan använda \"/inet/raw\"."
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "/inet/raw-server inte redo än, ledsen"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
"inget (känt) protokoll tillhandahållet i det speciella filnamnet \"%s\""
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "speciellt filnamn \"%s\" är ofullständigt"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "måste tillhandahålla ett fjärrdatornamn till \"/inet\""
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "måste tillhandahålla en fjärrport till \"/inet\""
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP-kommunikation stöds inte"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "filen \"%s\" är en katalog"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "använd \"PROCINFO[\"%s\"]\" istället för \"%s\""
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "använd \"PROCINFO[...]\" istället för \"dev/user\""
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "kunde inte öppna \"%s\", läge \"%s\""
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "stängning av huvudpty misslyckades (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "stängning av standard ut i barnet misslyckades (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "flyttandet av slavpty till standard ut i barnet misslyckades (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "stängning av standard in i barnet misslyckades (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "flyttandet av slavpty till standard in i barnet misslyckades (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "stängning av slavpty misslyckades (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "flyttande av rör till standard ut i barnet misslyckades (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "flyttande av rör till standard in i barnet misslyckades (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "återställande av standard ut i förälderprocessen misslyckades\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "återställande av standard in i förälderprocessen misslyckades\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "stängning av röret misslyckades (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "\"|&\" stöds inte"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "kan inte öppna röret \"%s\" (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "kan inte skapa barnprocess för \"%s\" (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "datafilen \"%s\" är tom"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "kunde inte allokera mer indataminne"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "fel vid läsning av indatafilen \"%s\": %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "flerteckensvärdet av \"RS\" är en gawk-utökning"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "slut på minne"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "\"-m[fr]\"-flaggan är irrelevant i gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m-flaggans användning: \"-m[fr] nnn\""
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: flaggan \"-W %s\" okänd, ignorerad\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "tomt argument till \"--source\" ignorerat"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: flaggan kräver ett argument -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "miljövariabeln \"POSIXLY_CORRECT\" satt: slår på \"--posix\""
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "\"--posix\" åsidosätter \"--traditional\""
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "\"--posix\"/\"--traditional\" åsidosätter \"--non-decimal-data\""
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "att köra %s setuid root kan vara ett säkerhetsproblem"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "kan inte sätta binärläge på standard in (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "kan inte sätta binärläge på standard ut (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "kan inte sätta binärläge på standard fel (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "ingen programtext alls!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Användning: %s [POSIX- eller GNU-stilsflaggor] -f progfil [--] fil ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "Användning: %s [POSIX- eller GNU-stilsflaggor] %cprogram%c fil ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX-flaggor:\t\tGNU långa flaggor:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f progfil\t\t--file=progfil\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=värde\t\t--assign=var=värde\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] värde\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=fil]\t--dump-variables[=fil]\n"
-#: main.c:706
-#, fuzzy
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
-msgstr "\t-W profile[=fil]\t--profile[=fil]\n"
+msgstr "\t-W exec=fil\t\t--exec=fil\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=fil]\t--profile[=fil]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=programtext\t--source=programtext\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
-msgstr ""
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1584,7 +1618,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1598,7 +1632,7 @@ msgstr ""
"Rapportera synpunkter på översättningen till <sv@li.org>.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1608,7 +1642,7 @@ msgstr ""
"Normalt läser det från standard in och skriver till standard ut.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1618,7 +1652,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' fil\n"
"\tgawk -F: '{print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1637,7 +1671,7 @@ msgstr ""
"någon senare version.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1651,56 +1685,64 @@ msgstr ""
"General Public License för ytterligare information.\n"
"\n"
-#: main.c:781
-#, fuzzy
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
"Du bör ha fått en kopia av GNU General Public License tillsammans\n"
-"med detta program. Om inte, skriv till Free Software Foundation,\n"
-"Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
+"med detta program. Om inte, se http//www.gnu.org/liceences/.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft sätter inte FS till tab i POSIX-awk"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
"\n"
msgstr "%s: Argumentet \"%s\" till \"-v\" är inte på formatet \"var=värde\"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "\"%s\" är inte ett giltigt variabelnamn"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "\"%s\" är inte ett variabelnamn, letar efter filen \"%s=%s\""
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "flyttalsundantag"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "ödesdigert fel: internt fel"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "ödesdigert fel: internt fel"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "ödesdigert fel: internt fel"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "ingen föröppnad fd %d"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "kunde inte föröppna /dev/null för fd %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "kunde inte hitta grupper: %s"
@@ -1726,24 +1768,31 @@ msgstr "ödesdigert: "
msgid "can't convert string to float"
msgstr "kan inte konvertera en sträng till flyttal"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "omvänt snedstreck i slutet av strängen"
-#: node.c:548
-#, fuzzy, c-format
+#: node.c:606
+#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
-msgstr "gamla awk stöder inte operatorn \"**\""
+msgstr "gamla awk stöder inte kontrollsekvensen \"\\%c\""
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX tillåter inte \"\\x\"-kontrollsekvenser"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "inga hexadecimala siffror i \"\\x\"-kontrollsekvenser"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "kontrollsekvensen \"\\%c\" behandlad som bara \"%c\""
@@ -1753,31 +1802,32 @@ msgstr "kontrollsekvensen \"\\%c\" behandlad som bara \"%c\""
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s \"%s\": kunde inte sätta stäng-vid-exec (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "kunde inte öppna \"%s\" för skrivning: %s"
-#: profile.c:450
-#, fuzzy, c-format
+#: profile.c:453
+#, c-format
msgid "internal error: %s with null vname"
-msgstr "internt fel: Node_var med null vname"
+msgstr "internt fel: %s med null vname"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# behandlad internt som \"delete\""
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
-msgstr ""
+msgstr "# detta är en dynamiskt inläst utökningsfunktion"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawkprofil, skapad %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1786,7 +1836,7 @@ msgstr ""
"\t# BEGIN-block\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1795,7 +1845,7 @@ msgstr ""
"\t# Regel/regler\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1804,7 +1854,7 @@ msgstr ""
"\t# END-block\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1813,125 +1863,123 @@ msgstr ""
"\n"
"\t# Funktioner, listade alfabetiskt\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "oväntad typ %s i prec_level"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "okänd nodtyp %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Lyckades"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Misslyckades"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Ogiltigt reguljärt uttryck"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Ogiltigt kollationeringstecken"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Ogiltigt teckenklassnamn"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Eftersläpande omvänt snedstreck"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Ogiltig bakåtrerefens"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Obalanserad [ eller [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Obalanserad ( eller \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Obalanserad \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Ogiltigt innehåll i \\{\\}"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Ogiltigt omfångsslut"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Minnet slut"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Ogiltigt föregående reguljärt uttryck"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "För tidigt slut på reguljärt uttryck"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Reguljärt uttryck för stort"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Obalanserad ) eller \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Inget föregående reguljärt uttryck"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "fjärrporten ogiltig i \"%s\""
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: otillåten flagga -- %c\n"
-#~ msgid "function %s called\n"
-#~ msgstr "funktionen %s anropad\n"
+#~ msgid "delete: illegal use of variable `%s' as array"
+#~ msgstr "delete: otillåten användning av variabeln \"%s\" som vektor"
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "fält %d i FIELDWIDTHS måste vara > 0"
+#~ msgid "asort: first argument is not an array"
+#~ msgstr "asort: första argumentet är inte en vektor"
+
+#~ msgid "asort: second argument is not an array"
+#~ msgstr "asort: andra argumentet är inte en vektor"
#~ msgid "or used as a variable or an array"
#~ msgstr "eller använd som variabel eller vektor"
-#~ msgid "regex match failed, not enough memory to match string \"%.*s%s\""
-#~ msgstr ""
-#~ "regexmatchning misslyckades, inte tillräckligt mycket minne för att "
-#~ "matcha \"%.*s%s\""
-
#~ msgid "substr: length %g is < 0"
#~ msgstr "substr: längden %g är < 0"
-#~ msgid "delete: illegal use of variable `%s' as array"
-#~ msgstr "delete: otillåten användning av variabeln \"%s\" som vektor"
-
-#, fuzzy
-#~ msgid "%s: gvar_ref to %s\n"
-#~ msgstr "%s: vektorreferens till %s\n"
-
-#~ msgid "asort: first argument is not an array"
-#~ msgstr "asort: första argumentet är inte en vektor"
+#~ msgid "function %s called\n"
+#~ msgstr "funktionen %s anropad\n"
-#~ msgid "asort: second argument is not an array"
-#~ msgstr "asort: andra argumentet är inte en vektor"
+#~ msgid "field %d in FIELDWIDTHS, must be > 0"
+#~ msgstr "fält %d i FIELDWIDTHS måste vara > 0"
-#, fuzzy
-#~ msgid ""
-#~ "attempt to use array parameter `%s' that was passed from global scalar `%"
-#~ "s'"
-#~ msgstr "försök att använda skalärparametern \"%s\" som en vektor"
+#~ msgid "remote port invalid in `%s'"
+#~ msgstr "fjärrporten ogiltig i \"%s\""
#~ msgid "internal error: Node_var_array with null vname"
#~ msgstr "internt fel: Node_var_vektor med null vname"
+#~ msgid "regex match failed, not enough memory to match string \"%.*s%s\""
+#~ msgstr ""
+#~ "regexmatchning misslyckades, inte tillräckligt mycket minne för att "
+#~ "matcha \"%.*s%s\""
+
#~ msgid ""
#~ "\n"
#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1985,8 +2033,5 @@ msgstr "Inget föregående reguljärt uttryck"
#~ msgid "Unbalanced )"
#~ msgstr "Obalanserad )"
-#~ msgid "out of memory"
-#~ msgstr "slut på minne"
-
#~ msgid "internal error: file `%s', line %d\n"
#~ msgstr "internt fel: filen \"%s\", rad %d\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index 6b55f96b..b00b5fb2 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index d0b8c027..b5201dfc 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.5f\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
"PO-Revision-Date: 2007-05-19 19:32+0300\n"
"Last-Translator: Nilgün Belma Bugüner <nilgun@buguner.name.tr>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -75,318 +75,323 @@ msgstr "%s: parametredir\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: %s için dizi başvurusu\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s blokları bir eylem bölümü içermeli"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "her kural bir eylem bölümü veya bir kalıp içermeli"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "eski awk çok sayıda `BEGIN' veya `END' kuralını desteklemiyor"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "`%s' bir yerleÅŸik iÅŸlevdir, yeniden atanamaz"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "düzenli ifade sabiti `//' bir C++ açıklaması gibi görünüyor ama değil"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "düzenli ifade sabiti `/%s/' bir C açıklaması gibi görünüyor ama değil"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "deyim bir etkiye sahip olmayabilir"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "`%s' %s eyleminde kullanılmış"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "`nextfile' bir gawk uzantısıdır"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "`return' işlev bağlamının dışında kullanılmış"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr "BEGIN veya END kuralındaki `print' aslında `print \"\"' olmalıydı"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "`delete array' bir gawk uzantısıdır"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "`delete array' uyarlanabilir olmayan bir gawk uzantısıdır"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "switch içinde yinelenmiş case değerleri var: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "switch içinde yinelenmiş `default' saptandı"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "çok katlı iki yönlü veriyolları çalışmaz"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "düzenli ifade atamanın sağında"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "düzenli ifade `~' ya da `!~' işlemiminin solunda"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "eski awk `for'dan sonra gelmeyen `in' anahtar sözcüğünü desteklemiyor"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "düzenli ifade karşılaştırmanın sağında"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "END eyleminin içinde yönlendirme yapmayan `getline' tanımsız"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "eski awk çok boyutlu dizileri desteklemiyor"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "parantezsiz `length' çağrısı taşınabilir değil"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "parantezsiz `length' çağrısı POSIX'e uygun değil"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "dizi olmayan değişken dizi olarak kullanılmış"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "indis ifadesi geçersiz"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "beklenmeyen satırsonu ya da dizge sonu"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "komut satırında boş program metni"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "kaynak dosyası `%s' okumak için açılamıyor (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "kaynak dosyası `%s' okunamıyor (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "kaynak dosyası `%s' boş"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "kaynak dosyasının sonunda satırsonu eksik"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "sonlandırılmamış düzenli ifade dosya sonunda `\\' ile bitiyor"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "%s: %d: tawk regex değiştirici `/.../%c' gawk'ta çalışmaz"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "tawk regex değiştirici `/.../%c' gawk'ta çalışmaz"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "sonlandırılmamış düzenli ifade"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "dosya sonunda sonlandırılmamış düzenli ifade"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "`\\ #...' satır uzatma kullanımı taşınabilir değil"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "tersbölü satırdaki son karakter değil"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "`**=' iÅŸlemimi POSIX uyumlu deÄŸil"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "`**=' iÅŸlemimini eski awk desteklemiyor"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "`**' iÅŸlemimi POSIX uyumlu deÄŸil"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "`**' iÅŸlemimini eski awk desteklemiyor"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "`^=' iÅŸlemimini eski awk desteklemiyor"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "`^' iÅŸlemimini eski awk desteklemiyor"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "sonlandırılmamış dizge"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "ifade içinde '%c' karakteri geçersiz"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "`%s' bir gawk uzantısıdır"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "`%s' bir Bell Laboratuarları uzantısıdır"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "`%s' POSIX uyumlu deÄŸil"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "`%s' eski awk tarafından desteklemiyor"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "`goto' zararlı sayılır!\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d argüman sayısı olarak %s için geçersiz"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: üçüncü argüman bir gawk uzantısı"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: yerine kullanılan son argüman olarak dizge sabiti etkisiz"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "üçüncü %s parametresi değiştirilebilir bir nesne değil"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: ikinci argüman bir gawk uzantısı"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dcgettext(_\"...\") kullanımı yanlış: altçizgiyi kaldırın"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dcngettext(_\"...\") kullanımı yanlış: altçizgiyi kaldırın"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "`%s' işlevi: %d. parametre, `%s', %d. parametrenin tekrarı"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "`%s' işlevi: parametre, `%s'global değişkeni gölgeliyor"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "`%s' yazmak için açılamadı (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "profil standart hataya gönderiliyor"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: kapatma başarısız (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() iki kere çağrıldı!"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "gölgeli değişkenler vardı."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "işlev `%s': işlev ismi parametre ismi olarak kullanılamaz"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "işlev `%s': işlev ismi parametre ismi olarak kullanılamaz"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "işlev ismi `%s' önceden atanmış"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "`%s' işlevi çağrıldı ama hiç atanmamış"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "`%s' işlevi atanmış ama hiç çağrılmadı"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "%d numaralı argüman bir düzenli ifade sabiti"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -395,201 +400,230 @@ msgstr ""
"`%s' işlevi `(' ile isim arasında boşlukla çağrılmış,\n"
"ya da bir değişken veya bir dizi olarak kullanılmış"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "`%%'de sıfırla bölme hatası"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s \"%s\"ya yazılamadı (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "standart çıktı"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "sebebi bilinmiyor"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: sayısal olmayan argüman alındı"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: %g kapsamdışı"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: kanala yazılamadı: veriyolu `%s' okumak için açıldı, yazmak için "
"deÄŸil"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: kanala yazılamadı: dosya `%s' okumak için açıldı, yazmak için değil"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: `%s' bir açık dosya, veriyolu ya da bir yan işlem değil"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: ilk argüman dizge olmayan türde alındı"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: ikinci argüman dizge olmayan türde alındı"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: sayısal olmayan argüman alındı"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "`length(array)' bir gawk uzantısıdır"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: dizge olmayan argüman alındı"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: sayısal olmayan argüman alındı"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: negatif argüman %g alındı"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "tüm biçemlerde ya `count$' kullanmalısınız ya da hiçbir şey"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "`$' awk biçemlerde kullanılmaz"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "`$' ile birlikte verilen argüman sayısı > 0 olmalıdır"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "argüman sayısı %ld sağlanmış toplam argüman sayısından büyük"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "`$' biçem içinde noktadan sonra kullanılmaz"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "konumsal alan genişliği ya da duyarlığı için `$' kullanılmamış"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "`l' awk biçemlerde anlamsız; yoksayıldı"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "`l' POSIX awk biçemlerde kullanılmaz"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "`L' awk biçemlerde anlamsız; yoksayıldı"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "`L' POSIX awk biçemlerde kullanılmaz"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "`h' awk biçemlerde anlamsız; yoksayıldı"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "`h' POSIX awk biçemlerde kullanılmaz"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: %g değeri `%%%c' biçimi için kapsamdışı"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "biçem dizgesini oluşturacak yeterli argüman yok"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "bir bunun için ^ tükendi"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: biçem belirteci denetim karakteri içermiyor"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "biçem dizgesi için çok fazla argüman sağlanmış"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: argüman yok"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: sayısal olmayan argüman alındı"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: negatif argüman %g ile çağrıldı"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: başlangıç indeksi olarak %g geçersiz, 1 kullanılıyor"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr ""
"substr: tamsayı olmayan başlangıç indeksi %g den ondalık kısım çıkarılacak"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: uzunluk %g >= 1 deÄŸil"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: uzunluk %g => 0 deÄŸil"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: tamsayı olmayan uzunluk %g den ondalık kısım çıkarılacak"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr ""
"substr: dizge indislemesi için uzunluk olarak %g çok fazla, %g den sonrası "
"gözardı ediliyor"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: kaynak dizge sıfır uzunlukta"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: başlangıç indisi %g dizgenin sonundan sonra"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -597,303 +631,298 @@ msgstr ""
"substr: uzunluk %g, %g başlangıç indisinde ilk argümanın uzunluğunu (%lu) "
"aÅŸar"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: ilk argüman dizge olmayan türde alındı"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: boş biçem dizgesi alındı"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: ikinci argüman sayısal olmayan türde alındı"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: dizge olmayan argüman alındı"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: dizge olmayan argüman alındı"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "ilklendirilmemiş `$%d' alanına başvuru"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: dizge olmayan argüman alındı"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: dizge olmayan argüman alındı"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: ikinci argüman sayısal olmayan türde alındı"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: sayısal olmayan argüman alındı"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: sayısal olmayan argüman alındı"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: sayısal olmayan argüman alındı"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: üçüncü argüman bir dizi değil"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: 0 olan 3. argüman 1 kabul edildi"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: ikinci argüman sayısal değil"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): çok büyük kaydırma değeri tuhaf sonuçlar verecek"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: ikinci argüman sayısal değil"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): çok büyük kaydırma değeri tuhaf sonuçlar verecek"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: ikinci argüman sayısal değil"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: ikinci argüman sayısal değil"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: ilk argüman sayısal olmayan türde alındı"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: ikinci argüman sayısal değil"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: sayısal olmayan argüman alındı"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): negatif değerler tuhaf sonuçlar verecek"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): tamsayı kısım kalacak şekilde kalanı atılacak"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: `%s' geçerli bir yerel kategori değil"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "%d. düğümtürü bilinmiyor"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "genflags2str içinde tampon taştı"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "`%s' dizisi bir sayısal bağlamda kullanılmaya çalışılıyor"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"for loop: `%s' dizisinin boyu döngünün yorumlanması sırasında %ld iken %ld "
"oldu"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "döngü dışında `break' kullanımı taşınabilir değil"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "döngü dışında `break' kullanımı yasak"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "döngü dışında `continue' kullanımı taşınabilir değil"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "döngü dışında `continue' kullanımı yasak"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "`next' bir BEGIN kuralından çağrılamaz"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "`next' bir END kuralından çağrılamaz"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "`nextfile' bir BEGIN kuralından çağrılamaz"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "`nextfile' bir END kuralından çağrılamaz"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "deyim etkisiz"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "`%s' işlev ismi bir değişken ya da dizi olarak kullanılamaz"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "başlangıç değeri olmayan `%s' argümanına başvuru"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "öndeğer ataması yapılmamış `%s' değişkenine başvuru"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr ""
"bitiÅŸtirme: bir ifadenin yan etkileri diÄŸerinin uzunluÄŸunu deÄŸiÅŸtirmiÅŸ!"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "koşul bağlamında atama yapılmış"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "sıfırla bölme hatası"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "`%%'de sıfırla bölme hatası"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tree_eval içinde kuraldışı tür (%s)"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "`/='de sıfırla bölme hatası"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "`%%='de sıfırla bölme hatası"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "`%s' işlevi bildirilenden daha fazla argümanla çağrıldı"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "`%s' işlevi tanımsız"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -904,42 +933,47 @@ msgstr ""
"\t# İşlev Çağrı Yığını:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "sayısal olmayan değerden alan başvurusu"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "null dizgeden alan baÅŸvurusu"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "%d. alana erişilmeye çalışılıyor"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "deÄŸiÅŸken ismine yerleÅŸik iÅŸlevin sonucu atanamaz"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "`IGNORECASE' bir gawk uzantısıdır"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "`BINMODE' bir gawk uzantısıdır"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "`%sFMT' özelliği `%s' hatalı"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "`LINT' atamasından dolayı `--lint' kapatılıyor"
@@ -1018,555 +1052,563 @@ msgstr "Ä°ÅŸlem Desteklenmiyor"
msgid "NF set to negative value"
msgstr "NF negatif değere ayarlı"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: ikinci argüman bir dizi değil"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: üçüncü argüman olan null dizge bir gawk uzantısı"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "`FIELDWIDTHS' bir gawk uzantısıdır"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "`%s' yanında FIELDWIDTHS değeri geçersiz"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "`FS' için null dizge bir gawk uzantısıdır"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "eski awk düzenli ifadeleri `FS' değeriyle desteklemiyor"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: `%s' seçeneği belirsiz\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: `--%s' seçeneği argümansız kullanılır\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: seçenek `%c%s' argümansız kullanılır\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: `--%s' seçeneği bilinmiyor\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: `%c%s' seçeneği bilinmiyor\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: kuraldışı seçenek -- %c\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: geçersiz seçenek -- %c\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: seçenek bir argümanla kullanılır -- %c\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: `-W %s' seçeneği belirsiz\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: `-W %s' seçeneği argümansız kullanılır\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "`%s' okumak için açılamıyor (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "dosya tanımlayıcı %d (`%s') başarısız (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "redirect() içindeki ağaç türü %s geçersiz"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "`%s' yönlendirmesi içindeki ifade sadece sayısal değer içeriyor"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "`%s' yönlendirmesi içindeki ifade null dizge değeri içeriyor"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"`%s' dosya ismi (`%s' yönlendirmesi için) mantıksal ifadenin sonucu olabilir"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "`%.*s' dosyası için `>' ve `>>' karışımı gereksiz"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "`%s' veriyolu çıktı için açılamadı (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "`%s' veriyolu girdi için açılamadı (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "`%s' dosya deÄŸil dizin"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "iki yönlü `%s' soketi G/Ç için açılamıyor (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "iki yönlü `%s' veriyolu G/Ç için açılamıyor (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "`%s'den yönlendirilemiyor (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "`%s'e yönlendirilemiyor (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"açık dosyalar için sistem sınırı aşıldı: çoğul dosya tanımlayıcılara "
"baÅŸlarken"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "`%s' kapatılamadı (%s)."
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "çok fazla veriyolu ya da dosya açık"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: ikinci argüman `to' ya da `from' olmalı"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: `%.*s' bir açık dosya, veriyolu ya da alt-işlem değil"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "hiç açılmamış bir yönlendirmenin kapatılması"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
"close: `%s' yönlendirmesi bir `|&' ile açılmamış, ikinci argüman yoksayıldı"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "başarısızlık durumu (%d): `%s' veriyolunun kapatılması (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "başarısızlık durumu (%d): `%s' dosyasının kapatılması (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "`%s' soketinin açıkça kapatılması istenmedi"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "`%s' alt-işleminin açıkça kapatılması istenmedi"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "`%s' veriyolunun açıkça kapatılması istenmedi"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "`%s' dosyasının açıkça kapatılması istenmedi"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "standart çıktıya yazarken hata (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "standart hataya yazarken hata (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "`%s'in veriyolu ile veri aktarımı başarısız (%s)."
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "`%s'e veriyolunun alt-işlemi ile veri aktarımı başarısız (%s)."
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "`%s'in dosya ile veri aktarımı başarısız (%s)."
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "yerel port `%s' `/inet' için geçersiz"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "uzak konak ve port bilgisi (%s, %s) geçersiz"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "/inet/raw istemci henüz hazır değil"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "`/inet/raw' sadece root tarafından kullanılabilir"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "/inet/raw sunucu henüz hazır değil"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "özel dosya ismi `%s' içinde (bilinen) bir protokol sağlanmamış"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "özel dosya ismi `%s' tamamlanmamış"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "`/inet' e bir karşı makina ismi sağlanmalı"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "`/inet' e bir karşı port sağlanmalı"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP haberleÅŸmesi desteklenmiyor"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "`%s' dosya deÄŸil dizin"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "`PROCINFO[\"%s\"]' kullanın (`%s' yerine)"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "`/dev/user' yerine `PROCINFO[...]' kullanın"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "`%s', `%s' kipinde açılamadı"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "ana pty kapatılamadı (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "ast süreçte stdÇ kapatılamadı (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "ast süreçte yardımcı pty standart çıktıya taşınamadı (dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "ast süreçte stdG kapatılamadı (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "ast süreçte yardımcı pty standart girdiye taşınamadı (dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "yardımcı pty kapatılamadı (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "ast süreçte veriyolu standart çıktıya taşınamadı (dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "ast süreçte veriyolu standart girdiye taşınamadı (dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "üst süreçte stdÇ eski durumuna getirilemedi\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "üst süreçte stdG eski durumuna getirilemedi\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "veriyolu kapatılamadı (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "`|&' desteklenmiyor"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "`%s' veriyolu açılamıyor (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "`%s' için ast süreç oluşturulamıyor (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "veri dosyası `%s' boş"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "daha fazla girdi belleği ayrılamadı"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "`%s' girdi dosyası okunurken hata: %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "`RS' çoklu karakter değeri bir gawk uzantısıdır"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "`-m[fr]' seçeneği gawk'da böyle kullanılmaz"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m seçeneğinin kullanımı: `-m[fr] nnn'"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: `-W %s' seçeneği tanımlı değil, yok sayıldı\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "`--source' seçeneği için boş argüman yoksayıldı"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: seçenek bir argümanla kullanılır -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "ortam değişkeni `POSIXLY_CORRECT' var: `--posix' kullanılıyor"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "`--posix' seçeneği `--traditional' seçeneğini etkisiz kılar"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr ""
"`--posix'/`--traditional' seçenekleri `--non-decimal-data' seçeneğini "
"etkisiz kılar"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "%s root yetkileriyle çalıştırıldığında güvenlik sorunları olabilir"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "standart girdi ikilik kipe ayarlanamaz (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "standart çıktı ikilik kipe ayarlanamaz (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "standart hata ikilik kipe ayarlanamaz (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "program metni hiç yok!"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Kullanımı: %s [POSIX veya GNU tarzı seçenekler] -f progdosyası [--] "
"dosya ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Kullanımı: %s [POSIX veya GNU tarzı seçenekler] %cprogram%c dosya ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX seçenekleri: GNU uzun seçenekleri:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr " -f progDosyası --file=progDosyası\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr " -F ayraç --field-separator=ayraç\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr " -v var=deÄŸer --assign=var=deÄŸer\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr " -m[fr] deÄŸer\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr " -W compat --compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr " -W copyleft --copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr " -W copyright --copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr " -W dump-variables[=dosya] --dump-variables[=dosya]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr " -W exec=dosya --exec=dosya\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr " -W gen-po --gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr " -W help --help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr " -W lint[=ölümcül] --lint[=ölümcül]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr " -W lint-old --lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr " -W non-decimal-data --non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr " -W nostalgia --nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr " -W parsedebug --parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr " -W profile[=dosya] --profile[=dosya]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr " -W posix --posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr " -W re-interval --re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr " -W source=program-metni --source=program-metni\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr " -W traditional --traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr " -W usage --usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
msgstr ""
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr " -W version --version\n"
@@ -1575,7 +1617,7 @@ msgstr " -W version --version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1589,7 +1631,7 @@ msgstr ""
"Çeviri hatalarını <gnu-tr@belgeler.org> adresine bildiriniz.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1599,7 +1641,7 @@ msgstr ""
"Öntanımlı olarak standart girdiyi okur ve standart çıktıya yazar.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1609,8 +1651,8 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' dosya\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
-#, c-format
+#: main.c:789
+#, fuzzy, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
@@ -1623,12 +1665,12 @@ msgstr ""
"Telif hakkı (C) 1989, 1991-%d Free Software Foundation.\n"
"\n"
"Bu program bir serbest yazılımdır. Bu yazılımı Free Software Foundation\n"
-"tarafından yayınlanmış olan GNU Genel Kamu Lisansının 3. ya da daha sonraki\n"
+"tarafından yayınlanmış olan GNU Genel Kamu Lisansının 2. ya da daha sonraki\n"
"bir sürümünün koşulları altında kopyalayabilir, dağıtabilir ve/veya\n"
"üzerinde değişiklik yapabilirsiniz.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1642,7 +1684,7 @@ msgstr ""
"edinmek için GNU Genel Kamu Lisansına bakınız.\n"
"\n"
-#: main.c:781
+#: main.c:808
#, fuzzy
msgid ""
"You should have received a copy of the GNU General Public License\n"
@@ -1652,11 +1694,11 @@ msgstr ""
"olacaksınız; yoksa Free Software Foundation, Inc., 51 Franklin Street,\n"
"Fifth Floor, Boston, MA 02110-1301, USA adresinden isteyebilirsiniz.\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "POSIX awk -Ft ile dosya sistemini belirlemez"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1665,35 +1707,45 @@ msgstr ""
"%s: `-v' ile verilen `%s' argümanı `var=değer' biçiminde değil\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "`%s' kurala uygun bir deÄŸiÅŸken ismi deÄŸil"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "`%2$s=%3$s' için dosyaya bakınca, `%1$s' bir değişken ismi değil"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "Gerçel sayı istisnası"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "ölümcül iç hata"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "ölümcül iç hata"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "ölümcül iç hata"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "ön açılışlı bir %d dosya tanımlayıcısı yok"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "%d dosya tanımlayıcısı için /dev/null ön açılışı yapılamadı"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "gruplar bulunamadı: %s"
@@ -1719,24 +1771,31 @@ msgstr "ölümcül: "
msgid "can't convert string to float"
msgstr "dizge gerçel sayıya dönüştürülemiyor"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "dizge sonunda tersbölü"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "eski awk `\\%c' önceleme dizilimini desteklemiyor"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX `\\x' öncelemelerine izin vermez"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "`\\x' önceleme dizgesinde onaltılık rakamlar yok"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "`\\%c' önceleme dizgesi `%c' olarak kullanıldı"
@@ -1746,31 +1805,32 @@ msgstr "`\\%c' önceleme dizgesi `%c' olarak kullanıldı"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s `%s': close-on-exec belirlenemedi: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "`%s' yazmak için açılamadı: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "iç hata: null vname'li %s"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# dahili olarak `delete' varsayıldı"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# bu özdevimli olarak yüklenmiş bir ek işlevdir"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk profili, oluÅŸturuldu: %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1779,7 +1839,7 @@ msgstr ""
"\t# BEGIN blokları\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1788,7 +1848,7 @@ msgstr ""
"\t# Kurallar\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1797,7 +1857,7 @@ msgstr ""
"\t# END blokları\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1806,79 +1866,87 @@ msgstr ""
"\n"
"\t# İşlevler, alfabetik sırayla\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "prec_level'da anlaşılamayan tür %s"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "%d. düğümtürü bilinmiyor"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Başarılı"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "EÅŸleÅŸmez"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Düzenli ifade geçersiz"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Karşılaştırma karakteri geçersiz"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Karakter sınıf ismi geçersiz"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "İzleyen tersbölü"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Geriye başvuru geçersiz"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ ya da [^ eÅŸleÅŸmiyor"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( ya da \\( eÅŸleÅŸmiyor"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ eÅŸleÅŸmiyor"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} içeriği geçersiz"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Kapsam sonu geçersiz"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Bellek tükendi"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "düzenli ifade önceliği geçersiz"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Düzenli ifade sonu eksik kalmış"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Düzenli ifade çok büyük"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") ya da \\) eÅŸleÅŸmiyor"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Daha önce düzenli ifade yok"
+
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: kuraldışı seçenek -- %c\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index a90a5ce4..47b469b6 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 659b7bb3..2ddcec16 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -1,20 +1,20 @@
# Vietnamese translation for Gawk.
# Copyright © 2007 Free Software Foundation, Inc.
# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
-#
+#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.5f\n"
+"Project-Id-Version: gawk 3.1.6\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-05-28 21:28+0930\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2007-11-30 22:29+1030\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.6.3b1\n"
+"X-Generator: LocFactoryEditor 1.7b1\n"
#: array.c:112
#, c-format
@@ -76,337 +76,341 @@ msgstr "%s: là tham số\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: « array_ref » (mảng tham chiếu) đến « %s »\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "Má»i khối %s phải có má»™t phần kiểu hành Ä‘á»™ng"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "Má»i quy tắc phải có má»™t mẫu hay phần kiểu hành Ä‘á»™ng"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr ""
"awk cÅ© không há»— trợ nhiá»u quy tắc kiểu « BEGIN » (bắt đầu) hay « END » (kết "
"thúc)"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "« %s » là một chức năng có sẵn nên nó không thể được định nghĩa lái."
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr ""
"hằng biểu thức chính quy « // » hình như một chú thích C, nhưng mà không phải"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr ""
"hằng biểu thức chính quy « /%s/ » hình như một chú thích C, nhưng mà không "
"phải"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "câu có lẽ sẽ không có tác dụng"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "« %s » được dùng trong hành động %s"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "« nextfile » (tập tin kế tiếp) là một phần mở rộng gawk"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "« return » (trở vá») được dùng ở ngoại ngữ cảnh chức năng"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr ""
-"« print » (in) chuẩn trong quy tắc « BEGIN » (bắt đầu) hay « END » (kết "
-"thúc) rất có thể nên là « print\"\" »"
+"« print » (in) chuẩn trong quy tắc « BEGIN » (bắt đầu) hay « END » (kết thúc) "
+"rất có thể nên là « print\"\" »"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "« delete array » (xóa bỠmảng) là một phần mở rộng gawk"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
-msgstr ""
-"« delete array » (xóa bỠmảng) là phần mở rộng gawk không thể mang theo"
+msgstr "« delete array » (xóa bỠmảng) là phần mở rộng gawk không thể mang theo"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "gặp giá trị case trùng trong thân chuyển đổi (switch body): %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr ""
"Phát hiện « default » (mặc định) trong thân chuyển đổi (switch body): %s"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "Ä‘Æ°á»ng ống dẫn hai chiếu Ä‘a giai Ä‘oạn không phải hoạt Ä‘á»™ng được"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "biểu thức chính quy nằm bên phải Ä‘iá»u gán"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "biểu thức chính quy nằm bên trái toán tử « ~ » hay « !~ »"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "awk cũ không hỗ trợ từ khoá « in », trừ khi nằm sau « for »"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "biểu thức chính quy nằm bên phải sự so sánh"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr ""
-"trong hành động « END » (kết thúc) có « getline » (lấy dòng) không được "
-"chuyển hướng lại và chưa được xác định."
+"trong hành động « END » (kết thúc) có « getline » (lấy dòng) không được chuyển "
+"hướng lại và chưa được xác định."
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "awk cÅ© không há»— trợ mảng Ä‘a chiá»u"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "không thể mang lá»i gá»i « length » (Ä‘á»™ dài) không có dấu ngoặc"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "POSIX phản đối lá»i gá»i « length » (Ä‘á»™ dài) không có dấu ngoặc"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "việc dùng Ä‘iá»u khác mảng nhÆ° là mảng"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "biểu thức in thấp không hợp lệ"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "gặp dòng mới bất ngỠhay kết thúc của chuỗi"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "gặp đoạn chữ chương trình rỗng nằm trên dòng lệnh"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "không thể mở tập tin nguồn « %s » để Ä‘á»c (%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "không thể Ä‘á»c tập tin nguồn « %s » (%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "tập tin nguồn «%s» là rỗng"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "tập tin nguồn không kết thúc với dòng mới"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr ""
"biểu thức chính quy chưa được chấm dứt kết thúc với « \\ » tại kết thúc của "
"tập tin"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"%s: %d: bộ sửa đổi biểu thức chính quy tawk « /.../%c » không hoạt động được "
"trong gawk"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr ""
"bộ sửa đổi biểu thức chính quy tawk « /.../%c » không hoạt động được trong "
"gawk"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "biểu thức chính quy chưa được chấm dứt"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "biểu thức chính quy chưa được chấm dứt nằm tại kết thúc của tập tin"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "không thể mang khả năng dùng « \\#... » để tiếp tục dòng"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "xuyệc ngược không phải là ký tự cuối cùng nằm trên dòng"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX không cho phép toán tử « **= »"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "awk cũ không hỗ trợ toán tử « **= »"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX không cho phép toán tử « ** »"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "awk cũ không hỗ trợ toán tử « ** »"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "awk cũ không hỗ trợ toán tử « ^= »"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "awk cũ không hỗ trợ toán tử « ^ »"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "chuỗi không được chấm dứt"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "biểu thức một ký tự không hợp lệ « %c » nằm trong biểu thức"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "« %s » là một phần mở rộng gawk"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "« %s » là một phần mở rộng của Bell Labs (Phòng thí nghiệm Bell)"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX không cho phép «%s»"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "awk cũ không hỗ trợ « %s »"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "« goto » được xem là gây tai hại\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "« %d » không hợp lệ như là số đối số cho « %s »"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: (khớp) đối số thứ ba là phần mở rộng gawk"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr ""
"%s: khi đối số cuối cùng của sự thay thế, hằng mã nguồn chuỗi không có tác "
"dụng"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "tham số thứ ba %s không phải là một đối tượng có thể thay đổi"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: (đóng) đối số thứ hai là phần mở rộng gawk"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dùng « dcgettext(_\"...\") » không đúng: hãy gỡ bỠgạch dưới nằm trước"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "dùng « dcgettext(_\"...\") » không đúng: hãy gỡ bỠgạch dưới nằm trước"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "chức năng « %s »: tham số « #%d », « %s », nhân đôi tham số « #%d »"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "chức năng « %s »: tham số « %s » che biến toàn cục"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "không mở được «%s» để ghi (%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "đang gởi hồ sơ cho thiết bị lỗi chuẩn"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: lỗi đóng (%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() (chức năng bóng) được gá»i hai lần !"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "có biến bị bóng."
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "chức năng « %s »: không thể dùng tên chức năng như là tên tham số"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, fuzzy, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "chức năng « %s »: không thể dùng tên chức năng như là tên tham số"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "tên chức năng « %s » được xác định trước"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "chức năng « %s » được gá»i nhÆ°ng mà chÆ°a xác định"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "chức năng « %s » được xác định nhÆ°ng mà chÆ°a được gá»i"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "hằng biểu thức chính quy cho tham số « #%d » làm giá trị luận lý (bun)"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -415,200 +419,228 @@ msgstr ""
"chức năng « %s » được gá»i vá»›i dấu cách nằm giữa tên và « ( »\n"
"hoặc được dùng như là biến hay mảng"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "cố gắng chia cho số không trong « %% »"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s tới « %s » bị lỗi (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "thiết bị xuất chuẩn"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "không biết sao"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: đã nhận đối số không phải thuộc số"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: đối số « %g » ở ngoại phạm vị"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr ""
"fflush: không thể xóa sạch: ống dẫn « %s » được mở để Ä‘á»c, không phải để ghi"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr ""
"fflush: không thể xóa sạch: tập tin «%s» được mở để Ä‘á»c, không phải để ghi"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
-msgstr ""
-"fflush: « %s » không phải là tập tin đã mở, ống dẫn hay đồng tiến trình"
+msgstr "fflush: « %s » không phải là tập tin đã mở, ống dẫn hay đồng tiến trình"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: (chỉ mục) đã nhận đối số thứ nhất không phải là chuỗi"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: (chỉ mục) đã nhận đối số thứ hai không phải là chuỗi"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: (số nguyên?) đã nhận đối số không phải thuộc số"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "« length(array) » (độ dài mảng) là một phần mở rộng gawk"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr ""
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: (độ dài) đã nhận đối số không phải chuỗi"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: (bản ghi) đã nhận đối số không phải thuộc số"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: (bản ghi) đã nhận đối số âm «%g»"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "phải dùng « count$ » vá»›i má»i dạng thức hay không dùng cả"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr ""
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "không cho phép « $ » trong định dạng awk"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "số đếm đối số với « $ » phải là >0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "số đếm đối số %ld lớn hơn tổng số đối số được cung cấp"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "không cho phép « $ » nằm sau dấu chấm trong định dạng"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr ""
"chÆ°a cung cấp « $ » cho Ä‘á»™ rá»™ng trÆ°á»ng thuá»™c vị trí hay cho Ä‘á»™ chính xác"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "chữ « l » không có nghĩa trong định dạng awk nên bị bỠqua"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "không cho phép chữ « l » nằm trong định dạng awk POSIX"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "chữ « L » không có nghĩa trong định dạng awk nên bị bỠqua"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "không cho phép chữ « L » nằm trong định dạng awk POSIX"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "chữ « h » không có nghĩa trong định dạng awk nên bị bỠqua"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "không cho phép chữ « h » nằm trong định dạng awk POSIX"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: giá trị %g ở ngoại phạm vị cho dạng thức « %%%c »"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr ""
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "chưa có đủ đối số để đáp ứng chuỗi định dạng"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "hết « ^ » cho Ä‘iá»u này"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: Ä‘iá»u ghi rõ định dạng không có chữ Ä‘iá»u khiển"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "quá nhiá»u đối số được cung cấp cho chuá»—i định dạng"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: không có đối số"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: (căn bậc hai) đã nhận đối số không phải thuộc số"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: (căn bậc hai) đã gá»i vá»›i đối số âm «%g»"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: (chuỗi phụ) số chỉ mục đầu « %g » không hợp lệ nên dùng 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr ""
"substr: (chuỗi phụ) số chỉ mục đầu không phải số nguyên « %g » sẽ bị cắt ngắn"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: (chuỗi phụ) độ dài %g không phải ≥1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: (chuỗi phụ) độ dài %g không phải ≥0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: (chuỗi phụ) sẽ cắt xén độ dài không phải số nguyên « %g »"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: độ dài %g quá lớn để chỉ mục chuỗi nên xén ngắn thành %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: (chuỗi con) chuỗi nguồn có độ dài số không"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: (chuỗi phụ) số chỉ mục đầu %g nằm sau kết thúc của chuỗi"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
@@ -616,261 +648,261 @@ msgstr ""
"substr: (chuỗi phụ) độ dài %g tại số chỉ mục đầu %g vượt quá độ dài của đối "
"số đầu (%lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: đã nhận đối số thứ nhất khác chuỗi"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: đã nhận chuỗi định dạng rỗng"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: đã nhận đối số khác chuỗi"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: (hệ thống) đã nhận đối số khác chuỗi"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "gặp tham chiếu đến trÆ°á»ng chÆ°a được sở khởi « $%d »"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: (đến thấp hơn) đã nhận đối số khác chuỗi"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: (đến cao hơn) đã nhận đối số khác chuỗi"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: đã nhận đối số thứ nhất khác thuộc số"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: đã nhận đối số không phải thuộc số"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: đã nhận đối số không phải thuộc số"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: đã nhận đối số không phải thuộc số"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: (khớp) đối số thứ ba không phải là mảng"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: đối số thứ ba 0 được xử lý như 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: đã nhận đối số đầu không phải thuộc số"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: (dịch bên trái) đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): giá trị thuộc phân số sẽ bị xén ngắn"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): giá trị dịch quá lớn sẽ gây ra kết quả lạ"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: đã nhận đối số thứ nhất khác thuộc số"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: (dịch bên phải) đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): giá trị thuộc phân số sẽ bị xén ngắn"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): giá trị dịch quá lớn sẽ gây ra kết quả lạ"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: (và) đã nhận đối số đầu không phải thuộc số"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: (và) đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): (và) giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): (và) giá trị thuộc phân số sẽ bị xén ngắn"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: (hoặc) đã nhận đối số đầu không phải thuộc số"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: (hoặc) đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): (hoặc) giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): (hoặc) giá trị thuộc phân số sẽ bị xén ngắn"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: (không hoặc) đã nhận đối số thứ nhất khác thuộc số"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: đã nhận đối số thứ hai khác thuộc số"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): (không hoặc) giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): (không hoặc) giá trị thuộc phân số sẽ bị xén ngắn"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: (biên dịch) đã nhận đối số khác thuộc số"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): (biên dịch) giá trị âm sẽ gây ra kết quả lạ"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): (biên dịch) giá trị thuộc phân số se bị xén ngắn"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: «%s» không phải là má»™t phân loại miá»n địa phÆ°Æ¡ng hợp lệ"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "không biết kiểu nút %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "tràn bộ đệm trong « genflags2str » (tạo ra cỠđến chuỗi)"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "cố gắng dùng mảng « %s » trong một ngữ cảnh vô hướng"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr ""
"cho loop: (cho vòng lặp) mảng « %s » đã thay đổi kích thước từ %ld đến %ld "
"trong khi thực hiện vòng lặp"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "không thể mang khả năng « break » (ngắt) nằm ở ngoại vòng lặp"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "không cho phép « break » (ngắt) nằm ở ngoại vòng lặp"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "không thể mang khả năng « continue » (tiếp tục) nằm ở ngoại vòng lặp"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "không cho phép « continue » (tiếp tục) nằm ở ngoại vòng lặp"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "không thể gá»i « next » (kế tiếp) từ quy tắc « BEGIN » (bắt đầu)"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "không thể gá»i « next » (kế tiếp) từ quy tắc « END » kết thúc)"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr ""
"không thể gá»i « nextfile » (tập tin kế tiếp) từ quy tắc « BEGIN » (bắt đầu)"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr ""
"không thể gá»i « nextfile » (tập tin kế tiếp) từ quy tắc « END » kết thúc)"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "câu không có tác dụng"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "không thể dùng tên chức năng « %s » như là biến hay mảng"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "gặp tham chiếu đến đối số chưa được sở khởi « %s »"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "gặp tham chiếu đến biến chưa được sở khởi « %s »"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
@@ -878,44 +910,39 @@ msgstr ""
"concatenation: (nối chuỗi) hiệu ứng khác trong một biểu thức nào đó đã thay "
"đổi độ dài của một biểu thức khác !"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "Ä‘iá»u gán được dùng trong ngữ cảnh Ä‘iá»u kiện"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "cố gắng chia cho số không"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "cố gắng chia cho số không trong « %% »"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "không cho phép kiểu (%s) trong « tree_eval » (ước lượng cây)"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "cố gắng chia cho số không trong « /= »"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "cố gắng chia cho số không trong « %%= »"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "chức năng « %s » được gá»i vá»›i số đối số hÆ¡n số được tuyên bố"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "chưa xác định chức năng « %s »"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -926,44 +953,49 @@ msgstr ""
"\t# Äống gá»i chức năng:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr ""
"\t# -- main --\n"
"(chính)\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "cố gắng tham chiếu trÆ°á»ng từ giá trị khác thuá»™c số"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "cố tham chiếu từ chuỗi vô giá trị"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "cố gắng truy cập trÆ°á»ng %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "không cho phép gán cho kết quả của chức năng « builtin » (có sẵn)"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "« IGNORECASE » (bá» qua chữ hoa/thÆ°á»ng) là phần mở rá»™ng gawk"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "« BINMODE » (chế độ nhị phân) là phần mở rộng gawk"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr ""
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "đặc tả « %sFMT » sai « %s »"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "đang tắt « --lint » do việc gán cho « LINT »"
@@ -1028,14 +1060,12 @@ msgstr "chức năng « %s » còn thiếu đối số thứ %d"
#: ext.c:217
#, c-format
msgid "function `%s': argument #%d: attempt to use scalar as an array"
-msgstr ""
-"chức năng « %s »: đối số thứ %d: cố gắng dùng Ä‘iá»u vô hÆ°á»›ng nhÆ° là mảng"
+msgstr "chức năng « %s »: đối số thứ %d: cố gắng dùng Ä‘iá»u vô hÆ°á»›ng nhÆ° là mảng"
#: ext.c:221
#, c-format
msgid "function `%s': argument #%d: attempt to use array as a scalar"
-msgstr ""
-"chức năng « %s »: đối số thứ %d: cố gắng dùng mảng nhÆ° là Ä‘iá»u vô hÆ°á»›ng"
+msgstr "chức năng « %s »: đối số thứ %d: cố gắng dùng mảng nhÆ° là Ä‘iá»u vô hÆ°á»›ng"
#: ext.c:246
msgid "Operation Not Supported"
@@ -1045,610 +1075,618 @@ msgstr "Thao tác không được hỗ trợ"
msgid "NF set to negative value"
msgstr "« NF » được đặt thành giá trị âm"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: (chia tách) đối số thứ hai không phải là mảng"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr ""
"split: (chia tách) chuỗi vô giá trị cho đối số thứ ba là phần mở rộng gawk"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "« FIELDWIDTHS » (Ä‘á»™ rá»™ng trÆ°á»ng) là phần mở rá»™ng gawk"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "giá trị FIELDWIDTHS (Ä‘á»™ rá»™ng trÆ°á»ng) không hợp lệ, gần « %s »"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "chuỗi vô giá trị cho « FS » là phần mở rộng gawk"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "awk cũ không hỗ trợ biểu thức chính quy làm giá trị của « FS »"
-#: getopt.c:571 getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+#: getopt.c:570 getopt.c:586
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: tùy chá»n « %s » là mÆ¡ hồ\n"
-#: getopt.c:620 getopt.c:624
-#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+#: getopt.c:619 getopt.c:623
+#, fuzzy, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: tùy chá»n « --%s » không cho phép đối số\n"
-#: getopt.c:633 getopt.c:638
-#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+#: getopt.c:632 getopt.c:637
+#, fuzzy, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: tùy chá»n « %c%s » không cho phép đối số\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
-#, c-format
-msgid "%s: option `%s' requires an argument\n"
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
+#, fuzzy, c-format
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: tùy chá»n «%s» cần đến đối số\n"
-#: getopt.c:738 getopt.c:741
-#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+#: getopt.c:737 getopt.c:740
+#, fuzzy, c-format
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: không nhận diện tùy chá»n « --%s »\n"
-#: getopt.c:749 getopt.c:752
-#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+#: getopt.c:748 getopt.c:751
+#, fuzzy, c-format
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: không nhận diện tùy chá»n « %c%s »\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: không cho phép tùy chá»n « -- %c »\n"
-
-#: getopt.c:813 getopt.c:816
-#, c-format
-msgid "%s: invalid option -- %c\n"
+#: getopt.c:800 getopt.c:803
+#, fuzzy, c-format
+msgid "%s: invalid option -- '%c'\n"
msgstr "%s: tùy chá»n không hợp lệ « -- %c »\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
-#, c-format
-msgid "%s: option requires an argument -- %c\n"
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
+#, fuzzy, c-format
+msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: tùy chá»n cần đến đối số « -- %c »\n"
-#: getopt.c:937 getopt.c:953
-#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+#: getopt.c:923 getopt.c:939
+#, fuzzy, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: tùy chá»n « -W %s » là mÆ¡ hồ\n"
-#: getopt.c:977 getopt.c:995
-#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+#: getopt.c:963 getopt.c:981
+#, fuzzy, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: tùy chá»n «-W %s» không cho phép đối số\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "không mở được tập tin «%s» để ghi (%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "lỗi đóng « fd %d » (« %s ») (%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "kiểu cây không hợp lệ « %s » trong « redirect() »"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "biểu thức trong Ä‘iá»u chuyển hÆ°á»›ng « %s » chỉ có giá trị thuá»™c số"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "biểu thức cho Ä‘iá»u chuyển hÆ°á»›ng «%s» có giá trị chuá»—i vô giá trị"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr ""
"tên tập tin «%s» cho Ä‘iá»u chuyển hÆ°á»›ng «%s» có lẽ là kết quả của biểu thức "
"luận lý"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "không cần hợp « > » và « >> » cho tập tin « %.*s »"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "không thể mở ống dẫn « %s » để xuất (%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "không thể mở ống dẫn « %s » để nhập (%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "tập tin « %s » là thư mục"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "không thể mở ổ cắm hai chiá»u « %s » để nhập/xuất (%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "không thể mở ống dẫn hai chiá»u « %s » để nhập/xuất (%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "không thể chuyển hướng từ « %s » (%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "không thể chuyển hướng đến «%s» (%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr ""
"đã tá»›i giá»›i hạn hệ thống vá» tập tin được mở nên bắt đầu phối hợp nhiá»u dòng "
"Ä‘iá»u mô tả tập tin"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "lỗi đóng « %s » (%s)"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "quá nhiá»u ống dẫn hay tập tin nhập được mở"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: (đóng) đối số thứ hai phải là « to » (đến) hay « from » (từ)"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr ""
"close: (đóng) « %.*s » không phải là tập tin được mở, ống dẫn hay tiến trình "
"vá»›i nhau"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "việc đóng Ä‘iá»u chuyển hÆ°á»›ng chÆ°a mở"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr ""
-"close: (đóng) Ä‘iá»u chuyển hÆ°á»›ng « %s » không được mở bởi « |& » nên đối số "
-"thứ hai bị bỠqua"
+"close: (đóng) Ä‘iá»u chuyển hÆ°á»›ng « %s » không được mở bởi « |& » nên đối số thứ "
+"hai bị bỠqua"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "trạng thái thất bại (%d) khi đóng ống dẫn «%s» (%s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "trạng thái thất bại (%d) khi đóng tập tin «%s» (%s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "không có việc đóng dứt khoát ổ cắm « %s » được cung cấp"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "không có việc đóng dứt khoát đồng tiến trình « %s » được cung cấp"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "không có việc đóng dứt khoát ống dẫn « %s » được cung cấp"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "không có việc đóng dứt khoát tập tin « %s » được cung cấp"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "gặp lỗi khi ghi thiết bị xụất chuẩn (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "gặp lỗi khi ghi thiết bị lỗi chuẩn (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "lỗi xóa sạch ống dẫn « %s » (%s)"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "lỗi xóa sạch ống dẫn đồng tiến trình đến « %s » (%s)"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "lỗi xóa sạch tập tin « %s » (%s)"
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "cổng cục bộ %s không hợp lệ trong « /inet »"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "thông tin vỠmáy/cổng ở xa (%s, %s) không phải hợp lệ"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "tiếc là ứng dụng khách <inet/raw> chưa sẵn sàng"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "chỉ ngÆ°á»i chủ (root) có thể dùng </inet/raw> thôi"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "tiếc là trình phục vụ </inet/raw> chưa sẵn sàng"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr ""
"trong tên tập tin đặc biệt « %s » không cung cấp giao thức (đã biết) nào"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "tên tập tin đặc biệt « %s » chưa xong"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "phải cung cấp một tên máy từ xa cho </inet>"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "phải cung cấp một cổng từ xa cho </inet>"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "truyá»n thông TCP/IP không được há»— trợ"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "tập tin « %s » là thư mục"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "hãy dùng « PROCINFO[\"%s\"] » (thông tin tiến trình) thay cho « %s »"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "hãy dùng « PROCINFO[...] » (thông tin tiến trình) thay cho </dev/user>"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "không mở được «%s», chế độ «%s»"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "lỗi đóng pty (tài sản?) chính (%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "lỗi đóng thiết bị xuất chuẩn trong tiến trình con (%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr ""
"lá»—i di chuyển pty (tài sản?) phụ tá»›i thiết bị xuất chuẩn trong Ä‘iá»u con "
"(nhân đôi: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "lỗi đóng thiết bị nhập chuẩn trong tiến trình con (%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr ""
"lá»—i di chuyển pty (tài sản?) phụ tá»›i thiết bị nhập chuẩn trong Ä‘iá»u con "
"(nhân đôi: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "lỗi đóng pty (tài sản?) phụ (%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr ""
"lỗi di chuyển ống dẫn đến thiết bị xuất chuẩn trong tiến trình con (dup: %s) "
"(nhân đôi)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr ""
"lỗi di chuyển ống dẫn đến thiết bị nhập chuẩn trong tiến trình con (dup: %s) "
"(nhân đôi)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "lỗi phục hồi thiết bị xuất chuẩn trong tiến trình mẹ\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "lỗi phục hồi thiết bị nhập chuẩn trong tiến trình mẹ\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "lỗi đóng ống dẫn (%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "« |& » không được hỗ trợ"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "không thể mở ống dẫn « %s » (%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "không thể tạo tiến trình con cho « %s » (fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "tập tin dữ liệu « %s » là rỗng"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "không thể cấp phát bộ nhớ nhập thêm nữa"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "gặp lá»—i khi Ä‘á»c tập tin nhập « %s »: %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "giá trị đa ký tự của « RS » là phần mở rộng gawk"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr ""
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "tùy chá»n « -m[fr] » không thích Ä‘ang trong gawk"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "cách sá»­ dụng tùy chá»n «-m»: « -m[fr] nnn »"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: tùy chá»n « -W %s » không được nhận diện nên bị bá» qua\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "đối số rỗng tới « --source » (nguồn) bị bỠqua"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: tùy chá»n cần đến đối số « -- %c »\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr ""
"biến môi trÆ°á»ng « POSIXLY_CORRECT » (đúng kiểu POSIX) đã được đặt; Ä‘ang bật "
"tùy chá»n « --posix »"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "tùy chá»n « --posix » có quyá»n cao hÆ¡n « --traditional » (truyá»n thống)"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr ""
-"« --posix »/« --traditional » (truyá»n thống) có quyá»n cao hÆ¡n « --non-"
-"decimal-data » (dữ liệu khác thập phân)"
+"« --posix »/« --traditional » (truyá»n thống) có quyá»n cao hÆ¡n « --non-decimal-"
+"data » (dữ liệu khác thập phân)"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "việc chạy %s với tư cách « setuid root » có thể rủi rỠbảo mật"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "không thể đặt chế độ nhị phân trên thiết bị nhập chuẩn (%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "không thể đặt chế độ nhị phân trên thiết bị xuất chuẩn (%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "không thể đặt chế độ nhị phân trên thiết bị lỗi chuẩn (%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "không có đoạn chữ chương trình nào cả !"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr ""
"Cách sá»­ dụng: %s [tùy chá»n kiểu POSIX hay GNU] -f tập_tin_chÆ°Æ¡ng_trình [--] "
"tập_tin ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr ""
"Cách sá»­ dụng: %s [tùy chá»n kiểu POSIX hay GNU] [--] %cchÆ°Æ¡ng_trình%c "
"tập_tin ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "tùy chá»n POSIX:\t\ttùy chá»n dài GNU:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f tập_tin_chương_trình\t\t--file=tập_tin_chương_trình\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=Ä‘iá»u phân cách trÆ°á»ng\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr ""
"\t-v var=giá trị\t\t--assign=biến=giá_trị\n"
"(assign: gán, var: biến)\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] giá_trị\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr ""
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr ""
"\t-W compat\t\t--compat\n"
"(compat là viết tắt cho compatible: tương thích)\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr ""
"\t-W copyleft\t\t--copyleft\n"
"(tắc quyá»n ngược)\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr ""
"\t-W copyright\t\t--copyright\n"
"(tác quyá»n)\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr ""
"\t-W dump-variables[=tập_tin]\t--dump-variables[=tập_tin]\n"
"(đổ các biến)\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=tập_tin\t\t--exec=tập_tin\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr ""
"\t-W gen-po\t\t--gen-po\n"
"(gen là viết tắt cho generate: tạo ra)\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr ""
"\t-W help\t\t\t--help\n"
"(trợ giúp)\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr ""
"\t-W lint[=fatal]\t\t--lint[=fatal]\n"
"(l? int là viết tắt cho integer: số nguyên\n"
"fatal: nghiêm trá»ng)\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr ""
"\t-W lint-old\t\t--lint-old\n"
"(old: cũ)\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr ""
"\t-W non-decimal-data\t--non-decimal-data\n"
"(dữ liệu khác thập phân)\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr ""
"\t-W nostalgia\t\t--nostalgia\n"
"(nỗi luyến tiếc quá khứ)\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr ""
"\t-W parsedebug\t\t--parsedebug\n"
"(parse: phân tách\n"
"debug: gỡ lỗi)\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr ""
"\t-W profile[=tập_tin]\t--profile[=tập_tin]\n"
"(profile: hồ sơ)\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr ""
"\t-W re-interval\t\t--re-interval\n"
"(re-[động từ]: [làm] lại\n"
"interval: thá»i gian giữa hai lúc)\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr ""
"\t-W source=program-text\t--source=program-text\n"
"(source: nguồn\n"
"program-text: đoạn chữ của chương trình)\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr ""
"\t-W traditional\t\t--traditional\n"
"(truyá»n thống)\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr ""
"\t-W usage\t\t--usage\n"
"(cách sử dụng)\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
-msgstr ""
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr ""
"\t-W version\t\t--version\n"
@@ -1659,7 +1697,7 @@ msgstr ""
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1673,7 +1711,7 @@ msgstr ""
"trong bản in.\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1683,7 +1721,7 @@ msgstr ""
"Mặc định là nó Ä‘á»c thiết bị nhập chuẩn và ghi ra thiết bị xuất chuẩn.\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1693,7 +1731,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1706,13 +1744,13 @@ msgid ""
msgstr ""
"Tác quyá»n © năm 1989, 1991-%d của Tổ chức Phần má»m Tá»± do.\n"
"\n"
-"ChÆ°Æ¡ng trình này là phần má»m tá»± do; bạn có thể phân phối lại nó\n"
-"và/hay sá»­a đổi nó vá»›i Ä‘iá»u kiện của Bản Quyá»n Công Chung GNU (GPL)\n"
-"nhÆ° do Tổ chức Phần má»m Tá»± do xuất bản, hoặc phiên bản 3\n"
-"của Bản Quyá»n, hoặc (tùy chá»n) bất cứ phiên bản sau nào.\n"
+"ChÆ°Æ¡ng trình này là phần má»m tá»± do; bạn có thể phát hành lại nó và/hoặc sá»­a "
+"đổi nó vá»›i Ä‘iá»u kiện của Giấy Phép Công Cá»™ng GNU nhÆ° được xuất bản bởi Tổ "
+"Chức Phần Má»m Tá»± Do; hoặc phiên bản 3 của Giấy Phép này, hoặc (tùy chá»n) bất "
+"kỳ phiên bản sau nào.\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1726,24 +1764,20 @@ msgstr ""
"Hãy xem Bản Quyá»n Công Chung GNU (GPL) để tìm chi tiết.\n"
"\n"
-#: main.c:781
-#, fuzzy
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
-"Bện nên đã nhận má»™t bản sao của Bản Quyá»n Công Chung GNU\n"
-"cùng với chương trình này; nếu không, hãy viết thư cho\n"
-"Tổ chức Phần má»m Tá»± do:\n"
-"Free Software Foundation, Inc.,\n"
-"51 Franklin Street, Fifth Floor,\n"
-"Boston, MA 02110-1301, USA (Mỹ).\n"
+"Bện nên đã nhận một bản sao của Giấy Phép Công Cộng GNU\n"
+"cùng với chương trình này. Không thì xem địa chỉ « http://www.gnu.org/"
+"licenses/ ».\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "-Ft không đặt FS (hệ thống tập tin?) là tab trong awk POSIX"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1752,35 +1786,45 @@ msgstr ""
"%s: đối số « %s » đối với « -v » không phải có dạng « biến=giá_trị »\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "« %s » không phải là tên biến hợp lệ"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "« %s » không phải là tên biến; đang tìm tập tin « %s=%s »"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "ngoại lệ điểm phù động"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "lá»—i nghiêm trá»ng: lá»—i ná»™i bá»™"
-#: main.c:1180
+#: main.c:1200
+#, fuzzy
+msgid "fatal error: internal error: segfault"
+msgstr "lá»—i nghiêm trá»ng: lá»—i ná»™i bá»™"
+
+#: main.c:1212
+#, fuzzy
+msgid "fatal error: internal error: stack overflow"
+msgstr "lá»—i nghiêm trá»ng: lá»—i ná»™i bá»™"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "không có fd (chỉ thị tập tin?) %d đã mở trước"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "không thể mở </dev/null> trước cho fd (chỉ thị tập tin?) %d"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "không tìm thấy nhóm: %s"
@@ -1806,24 +1850,31 @@ msgstr "nghiêm trá»ng: "
msgid "can't convert string to float"
msgstr "không thể chuyển đổi chuá»—i sang Ä‘iá»u lÆ¡ lá»­ng"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "gặp xuyệc ngoặc tại kết thúc của chuỗi"
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "awk cũ không hỗ trợ dãy thoát « \\%c »"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX không cho phép Ä‘iá»u thoát « \\x »"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "không có số thập lúc nằm trong dây thoát « \\x »"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "dây thoát « \\%c » được xử lý như là « %c » chuẩn"
@@ -1832,34 +1883,35 @@ msgstr "dây thoát « \\%c » được xử lý như là « %c » chuẩn"
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr ""
-"%s %s « %s »: không thể đặt « close-on-exec » (đóng một khi thực hiện) "
-"(fcntl: %s)"
+"%s %s « %s »: không thể đặt « close-on-exec » (đóng một khi thực hiện) (fcntl: "
+"%s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "không thể mở « %s » để ghi: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "lỗi nội bộ: %s với vname (tên biến?) vô giá trị"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# được xá»­ lý ná»™i bá»™ là « delete » (xoá bá»)"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# đây là một chức năng mở rộng được tải động"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# hồ sơ gawk, được tạo %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1868,7 +1920,7 @@ msgstr ""
"\t# khối BEGIN (bắt đầu)\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1877,7 +1929,7 @@ msgstr ""
"\t# Quy tắc\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1886,7 +1938,7 @@ msgstr ""
"\t# khối END (kết thúc)\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1895,163 +1947,87 @@ msgstr ""
"\n"
"\t# Danh sách các chức năng theo thứ tự abc\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "gặp kiểu bất ngỠ« %s » trong « prec_level » (cấp nằm trước?)"
-#: regcomp.c:132
+#: profile.c:1500
+#, fuzzy, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "không biết kiểu nút %d"
+
+#: regcomp.c:133
msgid "Success"
msgstr "Thành công"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "Không khớp"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "Biểu thức chính quy không hợp lệ"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "Ký tự đối chiếu không hợp lệ"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "Tên hạng ký tự không hợp lệ"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "Gặp xuyệc ngược nằm theo"
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "Tham chiếu trở lại không hợp lệ"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "Chưa khớp « [ » hay « [^ »"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "Chưa khớp « ( » hay « \\( »"
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "Chưa khớp « \\{ »"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "Nội dụng « \\{\\} » không hợp lệ"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "Kết thúc phạm vị không hợp lệ"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "Hết bộ nhớ rồi"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "Biểu thức chính quy nằm trước không hợp lệ"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "Kết thúc quá sớm của biểu thức chính quy"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "Biểu thức chính quy quá lớn"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "Chưa khớp « ) » hay « \\) »"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "Không có biểu thức chính quy nằm trước"
-#~ msgid "remote port invalid in `%s'"
-#~ msgstr "trong « %s » có cổng từ xa không hợp lệ"
-
-#~ msgid "delete: illegal use of variable `%s' as array"
-#~ msgstr "delete: (xóa bá») không cho phép cách dùng biến «%s» là mảng"
-
-#~ msgid "asort: first argument is not an array"
-#~ msgstr "asort: (sắp xếp) đối số đầu không phải là mảng"
-
-#~ msgid "asort: second argument is not an array"
-#~ msgstr "asort: (sắp xếp) đối số thứ hai không phải là mảng"
-
-#~ msgid ""
-#~ "\n"
-#~ "To report bugs, see node `Bugs' in `gawk.info', which is\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Äể thông báo lá»—i, hãy xem phần « Bugs » (lá»—i) trong tập tin « gawk.info "
-#~ "», \n"
-
-#~ msgid "invalid syntax in name `%s' for variable assignment"
-#~ msgstr "cú pháp không hợp lệ trong tên « %s » đối vá»›i Ä‘iá»u gán biến"
-
-#~ msgid "internal error: Node_var_array with null vname"
-#~ msgstr "lỗi nội bộ: « Node_var_array » với vname (tên biến?) vô giá trị"
-
-#~ msgid "or used in other expression context"
-#~ msgstr "hoặc được dùng trong ngữ cảnh biểu thức khác"
-
-#~ msgid "`%s' is a function, assignment is not allowed"
-#~ msgstr "« %s » là một chức năng thì không cho phép gán"
-
-#~ msgid "BEGIN blocks must have an action part"
-#~ msgstr "Má»i khối BEGIN (bắt đầu) phải có má»™t phần kiểu hành Ä‘á»™ng"
-
-#~ msgid "`nextfile' used in BEGIN or END action"
-#~ msgstr ""
-#~ "« nextfile » (tập tin kế tiếp) được dùng trong hành động « BEGIN » (bắt "
-#~ "đầu) hay « END » (kết thúc)"
-
-#~ msgid "non-redirected `getline' undefined inside BEGIN or END action"
-#~ msgstr ""
-#~ "trong hành động « BEGIN » (đầu) hay « END » (kết thúc), có « getline "
-#~ "» (lấy dòng) không được chuyển hướng lại và chưa được xác định."
-
-#~ msgid "fptr %x not in tokentab\n"
-#~ msgstr "« fptr %x » không phải nằm trong « tokentab »\n"
-
-#~ msgid "gsub third parameter is not a changeable object"
-#~ msgstr "tham số thứ ba gsub không phải là một đối tượng có thể thay đổi"
-
-#~ msgid "Unfinished \\ escape"
-#~ msgstr "« \\ escape » (thoát) chưa xong"
-
-#~ msgid "unfinished repeat count"
-#~ msgstr "việc đếm lại chưa xong"
-
-#~ msgid "malformed repeat count"
-#~ msgstr "việc đếm lại dạng sai"
-
-#~ msgid "Unbalanced ["
-#~ msgstr "Chưa cân bằng « [ »"
-
-#~ msgid "Unbalanced ("
-#~ msgstr "Chưa cân bằng « ( »"
-
-#~ msgid "No regexp syntax bits specified"
-#~ msgstr "Chưa ghi rõ bit cú pháp biểu thức chính quy"
-
-#~ msgid "Unbalanced )"
-#~ msgstr "Chưa cân bằng « ) »"
-
-#~ msgid "out of memory"
-#~ msgstr "hết bộ nhớ"
-
-#~ msgid "field %d in FIELDWIDTHS, must be > 0"
-#~ msgstr "trÆ°á»ng %d trong « FIELDWIDTHS » phải là > 0"
-
-#~ msgid "function %s called\n"
-#~ msgstr "chức năng « %s » được gá»i\n"
-
-#~ msgid "internal error: file `%s', line %d\n"
-#~ msgstr "lỗi nội bộ : tập tin « %s », dòng %d\n"
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s: không cho phép tùy chá»n « -- %c »\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index c514b958..ef5ee960 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 915db4c6..e9123f08 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -2,14 +2,14 @@
# gawk 软件包的简体中文翻译.
# Copyright (C) 2007 Free Software Foundation, Inc.
# This file is distributed under the same license as the gawk package.
-# LI Daobing <lidaobing@gmail.com>, 2007.
+# LI Daobing <lidaobing@gmail.com>, 2007, 2009.
#
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.5f\n"
+"Project-Id-Version: gawk 3.1.6c\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2007-09-30 22:33+0200\n"
-"PO-Revision-Date: 2007-06-13 03:57+0800\n"
+"POT-Creation-Date: 2009-07-21 23:23+0300\n"
+"PO-Revision-Date: 2009-06-09 21:51+0800\n"
"Last-Translator: LI Daobing <lidaobing@gmail.com>\n"
"Language-Team: Chinese (simplified) <translation-team-zh-cn@lists."
"sourceforge.net>\n"
@@ -77,318 +77,323 @@ msgstr "%s: 是å‚æ•°\n"
msgid "%s: array_ref to %s\n"
msgstr "%s: 数组引用到 %s\n"
-#: awkgram.y:215
+#: awkgram.y:218
#, c-format
msgid "%s blocks must have an action part"
msgstr "%s å—必须有一个行为部分"
-#: awkgram.y:218
+#: awkgram.y:221
msgid "each rule must have a pattern or an action part"
msgstr "æ¯ä¸ªè§„则必须有一个模å¼æˆ–行为部分"
-#: awkgram.y:254 awkgram.y:263
+#: awkgram.y:257 awkgram.y:266
msgid "old awk does not support multiple `BEGIN' or `END' rules"
msgstr "è€çš„ awk ä¸æ”¯æŒå¤šä¸ªâ€œBEGINâ€æˆ–“ENDâ€è§„则"
-#: awkgram.y:282
+#: awkgram.y:285
#, c-format
msgid "`%s' is a built-in function, it cannot be redefined"
msgstr "“%sâ€æ˜¯å†…置函数,ä¸èƒ½è¢«é‡å®šä¹‰"
-#: awkgram.y:328
+#: awkgram.y:331
msgid "regexp constant `//' looks like a C++ comment, but is not"
msgstr "正则表达å¼å¸¸é‡â€œ//â€çœ‹èµ·æ¥åƒ C++ 注释,但其实ä¸æ˜¯"
-#: awkgram.y:331
+#: awkgram.y:334
#, c-format
msgid "regexp constant `/%s/' looks like a C comment, but is not"
msgstr "正则表达å¼å¸¸é‡â€œ/%s/â€çœ‹èµ·æ¥åƒ C 注释,但其实ä¸æ˜¯"
-#: awkgram.y:358 awkgram.y:653
+#: awkgram.y:361 awkgram.y:656
msgid "statement may have no effect"
msgstr "表达å¼å¯èƒ½æ— ä»»ä½•æ•ˆæžœ"
-#: awkgram.y:455 awkgram.y:479
+#: awkgram.y:458 awkgram.y:482
#, c-format
msgid "`%s' used in %s action"
msgstr "“%sâ€è¢«ç”¨äºŽ %s 行为"
-#: awkgram.y:470 awkgram.y:474
+#: awkgram.y:473 awkgram.y:477
msgid "`nextfile' is a gawk extension"
msgstr "“nextfileâ€æ˜¯ gawk 扩展"
-#: awkgram.y:489
+#: awkgram.y:492
msgid "`return' used outside function context"
msgstr "“returnâ€åœ¨å‡½æ•°å¤–使用"
-#: awkgram.y:531
+#: awkgram.y:534
msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'"
msgstr "在 BEGIN 或 END 规则中,“printâ€ä¹Ÿè®¸åº”该写åšâ€œprint \"\"â€"
-#: awkgram.y:547 awkgram.y:555
+#: awkgram.y:550 awkgram.y:558
msgid "`delete array' is a gawk extension"
msgstr "“delete arrayâ€æ˜¯ gawk 扩展"
-#: awkgram.y:569 awkgram.y:577
+#: awkgram.y:572 awkgram.y:580
msgid "`delete(array)' is a non-portable tawk extension"
msgstr "“delete(array)â€æ˜¯ä¸å¯ç§»æ¤çš„ tawk 扩展"
-#: awkgram.y:621
+#: awkgram.y:624
#, c-format
msgid "duplicate case values in switch body: %s"
msgstr "switch 中有é‡å¤çš„ case 值: %s"
-#: awkgram.y:631
+#: awkgram.y:634
msgid "Duplicate `default' detected in switch body"
msgstr "switch 中有é‡å¤çš„“defaultâ€"
-#: awkgram.y:720
+#: awkgram.y:723
msgid "multistage two-way pipelines don't work"
msgstr "多阶åŒå‘管é“无法工作"
-#: awkgram.y:811
+#: awkgram.y:814
msgid "regular expression on right of assignment"
msgstr "正则表达å¼åœ¨èµ‹å€¼ç®—符的å³è¾¹"
-#: awkgram.y:834
+#: awkgram.y:824
msgid "regular expression on left of `~' or `!~' operator"
msgstr "正则表达å¼åœ¨â€œ~â€æˆ–“!~â€ç®—符的左边"
-#: awkgram.y:840 awkgram.y:913
+#: awkgram.y:830 awkgram.y:903
msgid "old awk does not support the keyword `in' except after `for'"
msgstr "è€ awk åªæ”¯æŒå…³é”®è¯â€œinâ€åœ¨â€œforâ€çš„åŽé¢"
-#: awkgram.y:846
+#: awkgram.y:836
msgid "regular expression on right of comparison"
msgstr "正则表达å¼åœ¨æ¯”较算符的å³è¾¹"
-#: awkgram.y:903
+#: awkgram.y:893
msgid "non-redirected `getline' undefined inside END action"
msgstr "在 END 环境中,éžé‡å®šå‘的“getlineâ€æœªå®šä¹‰"
-#: awkgram.y:914
+#: awkgram.y:904
msgid "old awk does not support multidimensional arrays"
msgstr "è€ awk ä¸æ”¯æŒå¤šç»´æ•°ç»„"
-#: awkgram.y:960
+#: awkgram.y:950
msgid "call of `length' without parentheses is not portable"
msgstr "ä¸å¸¦æ‹¬å·è°ƒç”¨â€œlengthâ€æ˜¯ä¸å¯ä»¥ç§»æ¤çš„"
-#: awkgram.y:965
+#: awkgram.y:955
msgid "call of `length' without parentheses is deprecated by POSIX"
msgstr "POSIX 认为ä¸å¸¦æ‹¬å·è°ƒç”¨â€œlengthâ€æ˜¯å·²è¿‡æ—¶çš„"
-#: awkgram.y:1019
+#: awkgram.y:1009
msgid "use of non-array as array"
msgstr "把éžæ•°ç»„åšæ•°ç»„使用"
-#: awkgram.y:1022
+#: awkgram.y:1012
msgid "invalid subscript expression"
msgstr "无效的下标表达å¼"
-#: awkgram.y:1249
+#: awkgram.y:1257
msgid "unexpected newline or end of string"
msgstr "未预期的新行或字符串结æŸ"
-#: awkgram.y:1366
+#: awkgram.y:1374
msgid "empty program text on command line"
msgstr "命令行中程åºä½“为空"
-#: awkgram.y:1422
+#: awkgram.y:1430
#, c-format
msgid "can't open source file `%s' for reading (%s)"
msgstr "无法以读模å¼æ‰“å¼€æºæ–‡ä»¶â€œ%sâ€(%s)"
-#: awkgram.y:1520
+#: awkgram.y:1528
#, c-format
msgid "can't read sourcefile `%s' (%s)"
msgstr "无法读å–æºæ–‡ä»¶â€œ%sâ€(%s)"
-#: awkgram.y:1528
+#: awkgram.y:1536
#, c-format
msgid "source file `%s' is empty"
msgstr "æºæ–‡ä»¶â€œ%sâ€ä¸ºç©º"
-#: awkgram.y:1720 awkgram.y:1842 awkgram.y:1860 awkgram.y:2235 awkgram.y:2322
+#: awkgram.y:1728 awkgram.y:1850 awkgram.y:1868 awkgram.y:2243 awkgram.y:2330
msgid "source file does not end in newline"
msgstr "æºæ–‡ä»¶ä¸ä»¥æ¢è¡Œç¬¦ç»“æŸ"
-#: awkgram.y:1782
+#: awkgram.y:1790
msgid "unterminated regexp ends with `\\' at end of file"
msgstr "未终止的正则表达å¼åœ¨æ–‡ä»¶ç»“æŸå¤„以“\\â€ç»“æŸ"
-#: awkgram.y:1806
+#: awkgram.y:1814
#, c-format
msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "%s: %d: tawk 正则表达å¼ä¿®é¥°ç¬¦â€œ/.../%câ€æ— æ³•åœ¨ gawk 中工作"
-#: awkgram.y:1810
+#: awkgram.y:1818
#, c-format
msgid "tawk regex modifier `/.../%c' doesn't work in gawk"
msgstr "tawk 正则表达å¼ä¿®é¥°ç¬¦â€œ/.../%câ€æ— æ³•åœ¨ gawk 中工作"
-#: awkgram.y:1817
+#: awkgram.y:1825
msgid "unterminated regexp"
msgstr "未终止的正则表达å¼"
-#: awkgram.y:1820
+#: awkgram.y:1828
msgid "unterminated regexp at end of file"
msgstr "未终止的正则表达å¼åœ¨æ–‡ä»¶ç»“æŸå¤„"
-#: awkgram.y:1889
+#: awkgram.y:1897
msgid "use of `\\ #...' line continuation is not portable"
msgstr "使用“\\ #...â€æ¥ç»­è¡Œæ˜¯ä¸å¯ç§»æ¤çš„"
-#: awkgram.y:1902
+#: awkgram.y:1910
msgid "backslash not last character on line"
msgstr "åæ–œæ ä¸æ˜¯è¡Œçš„最åŽä¸€ä¸ªå­—符"
-#: awkgram.y:1947
+#: awkgram.y:1955
msgid "POSIX does not allow operator `**='"
msgstr "POSIX ä¸å…许æ“作符“**=â€"
-#: awkgram.y:1949
+#: awkgram.y:1957
msgid "old awk does not support operator `**='"
msgstr "è€ awk ä¸æ”¯æŒæ“作符“**=â€"
-#: awkgram.y:1958
+#: awkgram.y:1966
msgid "POSIX does not allow operator `**'"
msgstr "POSIX ä¸å…许æ“作符“**â€"
-#: awkgram.y:1960
+#: awkgram.y:1968
msgid "old awk does not support operator `**'"
msgstr "è€ awk ä¸æ”¯æŒæ“作符“**â€"
-#: awkgram.y:1991
+#: awkgram.y:1999
msgid "operator `^=' is not supported in old awk"
msgstr "è€ awk ä¸æ”¯æŒæ“作符“^=â€"
-#: awkgram.y:1999
+#: awkgram.y:2007
msgid "operator `^' is not supported in old awk"
msgstr "è€ awk ä¸æ”¯æŒæ“作符“^â€"
-#: awkgram.y:2083 awkgram.y:2098
+#: awkgram.y:2091 awkgram.y:2106
msgid "unterminated string"
msgstr "未结æŸçš„字符串"
-#: awkgram.y:2283
+#: awkgram.y:2291
#, c-format
msgid "invalid char '%c' in expression"
msgstr "表达å¼ä¸­çš„无效字符“%câ€"
-#: awkgram.y:2331
+#: awkgram.y:2339
#, c-format
msgid "`%s' is a gawk extension"
msgstr "“%sâ€æ˜¯ gawk 扩展"
-#: awkgram.y:2334
+#: awkgram.y:2342
#, c-format
msgid "`%s' is a Bell Labs extension"
msgstr "“%sâ€æ˜¯è´å°”实验室扩展"
-#: awkgram.y:2337
+#: awkgram.y:2345
#, c-format
msgid "POSIX does not allow `%s'"
msgstr "POSIX ä¸å…许“%sâ€"
-#: awkgram.y:2341
+#: awkgram.y:2349
#, c-format
msgid "`%s' is not supported in old awk"
msgstr "è€ awk ä¸æ”¯æŒâ€œ%sâ€"
-#: awkgram.y:2367
+#: awkgram.y:2375
msgid "`goto' considered harmful!\n"
msgstr "“gotoâ€æœ‰å®³ï¼\n"
-#: awkgram.y:2429
+#: awkgram.y:2437
#, c-format
msgid "%d is invalid as number of arguments for %s"
msgstr "%d 是 %s 的无效å‚数个数"
-#: awkgram.y:2448 awkgram.y:2451
+#: awkgram.y:2456 awkgram.y:2459
msgid "match: third argument is a gawk extension"
msgstr "match: 第三个å‚数是 gawk 扩展"
-#: awkgram.y:2464
+#: awkgram.y:2472
#, c-format
msgid "%s: string literal as last arg of substitute has no effect"
msgstr "%s: 字符串作为 substitute 的最åŽä¸€ä¸ªå‚数无任何效果"
-#: awkgram.y:2467
+#: awkgram.y:2475
#, c-format
msgid "%s third parameter is not a changeable object"
msgstr "%s 第三个å‚æ•°ä¸æ˜¯ä¸€ä¸ªå¯å˜å¯¹è±¡"
-#: awkgram.y:2494 awkgram.y:2497
+#: awkgram.y:2502 awkgram.y:2505
msgid "close: second argument is a gawk extension"
msgstr "close: 第二个å‚数是 gawk 扩展"
-#: awkgram.y:2507
+#: awkgram.y:2515
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
msgstr "使用 dcgettext(_\"...\") 是错误的: 去掉开始的下划线"
-#: awkgram.y:2522
+#: awkgram.y:2530
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
msgstr "使用 dcngettext(_\"...\") 是错误的: 去掉开始的下划线"
-#: awkgram.y:2594
+#: awkgram.y:2602
#, c-format
msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d"
msgstr "函数“%sâ€: 第 %d 个å‚æ•°, “%sâ€, 与第 %d 个å‚æ•°é‡å¤"
-#: awkgram.y:2627
+#: awkgram.y:2635
#, c-format
msgid "function `%s': parameter `%s' shadows global variable"
msgstr "函数“%sâ€: å‚数“%sâ€æŽ©ç›–了公共å˜é‡"
-#: awkgram.y:2739
+#: awkgram.y:2747
#, c-format
msgid "could not open `%s' for writing (%s)"
msgstr "无法以写模å¼æ‰“开“%sâ€ï¼ˆ%s)"
-#: awkgram.y:2740 profile.c:94
+#: awkgram.y:2748 profile.c:95
msgid "sending profile to standard error"
msgstr "å‘é€é…置到标准错误输出"
-#: awkgram.y:2772
+#: awkgram.y:2780
#, c-format
msgid "%s: close failed (%s)"
msgstr "%s: 关闭失败(%s)"
-#: awkgram.y:2893
+#: awkgram.y:2901
msgid "shadow_funcs() called twice!"
msgstr "shadow_funcs() 被调用两次ï¼"
-#: awkgram.y:2920
+#: awkgram.y:2928
msgid "there were shadowed variables."
msgstr "那里有被掩盖的å˜é‡ã€‚"
-#: awkgram.y:2993
+#: awkgram.y:3001
#, c-format
msgid "function `%s': can't use function name as parameter name"
msgstr "函数“%sâ€: 无法使用函数å作为å‚æ•°å"
-#: awkgram.y:3003
+#: awkgram.y:3004
+#, c-format
+msgid "function `%s': can't use special variable `%s' as a function parameter"
+msgstr "函数“%sâ€: 无法使用特殊å˜é‡â€œ%sâ€ä½œä¸ºå‡½æ•°å‚æ•°"
+
+#: awkgram.y:3014
#, c-format
msgid "function name `%s' previously defined"
msgstr "函数å“%sâ€å‰é¢å·²å®šä¹‰"
-#: awkgram.y:3154 awkgram.y:3160
+#: awkgram.y:3165 awkgram.y:3171
#, c-format
msgid "function `%s' called but never defined"
msgstr "函数“%sâ€è¢«è°ƒç”¨ä½†é‡æœªè¢«å®šä¹‰"
-#: awkgram.y:3163
+#: awkgram.y:3174
#, c-format
msgid "function `%s' defined but never called"
msgstr "函数“%sâ€è¢«å®šä¹‰ä½†é‡æœªè¢«è°ƒç”¨"
-#: awkgram.y:3190
+#: awkgram.y:3201
#, c-format
msgid "regexp constant for parameter #%d yields boolean value"
msgstr "第 %d 个å‚数的正则表达å¼å¸¸é‡äº§ç”Ÿå¸ƒå°”值"
-#: awkgram.y:3234
+#: awkgram.y:3245
#, c-format
msgid ""
"function `%s' called with space between name and `(',\n"
@@ -397,494 +402,518 @@ msgstr ""
"函数“%sâ€è¢«è°ƒç”¨æ—¶å字与“(â€é—´æœ‰ç©ºæ ¼ï¼Œ\n"
"或被用作å˜é‡æˆ–数组"
-#: builtin.c:119
+#: awkgram.y:3667 eval.c:1394
+#, c-format
+msgid "division by zero attempted in `%%'"
+msgstr "在“%%â€ä¸­è¯•å›¾é™¤0"
+
+#: builtin.c:122
#, c-format
msgid "%s to \"%s\" failed (%s)"
msgstr "%s 到 \"%s\" 失败 (%s)"
-#: builtin.c:120
+#: builtin.c:123
msgid "standard output"
msgstr "标准输出"
-#: builtin.c:121
+#: builtin.c:124
msgid "reason unknown"
msgstr "未知原因"
-#: builtin.c:134
+#: builtin.c:137
msgid "exp: received non-numeric argument"
msgstr "exp: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:140
+#: builtin.c:143
#, c-format
msgid "exp: argument %g is out of range"
msgstr "exp: å‚æ•° %g 超出范围"
-#: builtin.c:198
+#: builtin.c:201
#, c-format
msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing"
msgstr "fflush: 无法使用: 管é““%sâ€ä»¥åªè¯»æ–¹å¼æ‰“开,ä¸å¯å†™"
-#: builtin.c:201
+#: builtin.c:204
#, c-format
msgid "fflush: cannot flush: file `%s' opened for reading, not writing"
msgstr "fflush: 无法使用: 文件“%sâ€ä»¥åªè¯»æ–¹å¼æ‰“开,ä¸å¯å†™"
-#: builtin.c:213
+#: builtin.c:216
#, c-format
msgid "fflush: `%s' is not an open file, pipe or co-process"
msgstr "fflush: “%sâ€ä¸æ˜¯ä¸€ä¸ªå·²æ‰“开文件ã€ç®¡é“或åˆä½œè¿›ç¨‹"
-#: builtin.c:306
+#: builtin.c:310
msgid "index: received non-string first argument"
msgstr "index: 第一个å‚æ•°ä¸æ˜¯å­—符串"
-#: builtin.c:308
+#: builtin.c:312
msgid "index: received non-string second argument"
msgstr "index: 第二个å‚æ•°ä¸æ˜¯å­—符串"
-#: builtin.c:423
+#: builtin.c:434
msgid "int: received non-numeric argument"
msgstr "int: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:448
+#: builtin.c:464
msgid "`length(array)' is a gawk extension"
msgstr "“length(array)â€æ˜¯ gawk 扩展"
-#: builtin.c:458
+#: builtin.c:473
+msgid "length: untyped argument will be forced to scalar"
+msgstr "length: 无类型的å‚数会被强制转æ¢ä¸ºæ ‡é‡"
+
+#: builtin.c:477
msgid "length: received non-string argument"
msgstr "length: 收到éžå­—符串å‚æ•°"
-#: builtin.c:483
+#: builtin.c:508
msgid "log: received non-numeric argument"
msgstr "log: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:486
+#: builtin.c:511
#, c-format
msgid "log: received negative argument %g"
msgstr "log: 收到负数å‚æ•° %g"
-#: builtin.c:693 builtin.c:696
+#: builtin.c:719 builtin.c:722
msgid "must use `count$' on all formats or none"
msgstr "è¦ä¹ˆåœ¨æ‰€æœ‰æ ¼å¼ä¸Šä½¿ç”¨â€œcount$â€ï¼Œè¦ä¹ˆå®Œå…¨ä¸ä½¿ç”¨"
-#: builtin.c:799
+#: builtin.c:783
+#, c-format
+msgid "field width is ignored for `%%%%' specifier"
+msgstr "“%%%%â€çš„字段宽度被忽略"
+
+#: builtin.c:785
+#, c-format
+msgid "precision is ignored for `%%%%' specifier"
+msgstr "“%%%%â€çš„精度被忽略"
+
+#: builtin.c:787
+#, c-format
+msgid "field width and precision are ignored for `%%%%' specifier"
+msgstr "“%%%%â€çš„字段宽度和精度被忽略"
+
+#: builtin.c:838
msgid "`$' is not permitted in awk formats"
msgstr "awk æ ¼å¼ä¸­ä¸å…许 “$â€"
-#: builtin.c:805
+#: builtin.c:844
msgid "arg count with `$' must be > 0"
msgstr "å«æœ‰â€œ$â€çš„å‚数个数必须大于0"
-#: builtin.c:807
+#: builtin.c:846
#, c-format
msgid "arg count %ld greater than total number of supplied arguments"
msgstr "å‚数个数 %ld 大于æ供的å‚数总个数"
-#: builtin.c:809
+#: builtin.c:848
msgid "`$' not permitted after period in format"
msgstr "æ ¼å¼ä¸å…许在“.â€åŽä½¿ç”¨â€œ$â€"
-#: builtin.c:822
+#: builtin.c:861
msgid "no `$' supplied for positional field width or precision"
msgstr "没有为格å¼å®½åº¦æˆ–精度æ供“$â€"
-#: builtin.c:888
+#: builtin.c:927
msgid "`l' is meaningless in awk formats; ignored"
msgstr "“lâ€åœ¨ awk æ ¼å¼ä¸­æ— æ„义;忽略"
-#: builtin.c:892
+#: builtin.c:931
msgid "`l' is not permitted in POSIX awk formats"
msgstr "“lâ€ä¸å…许在 POSIX awk æ ¼å¼ä¸­ä½¿ç”¨"
-#: builtin.c:903
+#: builtin.c:942
msgid "`L' is meaningless in awk formats; ignored"
msgstr "“Lâ€åœ¨ awk æ ¼å¼ä¸­æ— æ„义;忽略"
-#: builtin.c:907
+#: builtin.c:946
msgid "`L' is not permitted in POSIX awk formats"
msgstr "“Lâ€ä¸å…许在 POSIX awk æ ¼å¼ä¸­ä½¿ç”¨"
-#: builtin.c:918
+#: builtin.c:957
msgid "`h' is meaningless in awk formats; ignored"
msgstr "“hâ€åœ¨ awk æ ¼å¼ä¸­æ— æ„义;忽略"
-#: builtin.c:922
+#: builtin.c:961
msgid "`h' is not permitted in POSIX awk formats"
msgstr "“hâ€ä¸å…许在 POSIX awk æ ¼å¼ä¸­ä½¿ç”¨"
-#: builtin.c:1182
+#: builtin.c:1236
#, c-format
msgid "[s]printf: value %g is out of range for `%%%c' format"
msgstr "[s]printf: 值 %g 对“%%%câ€æ ¼å¼æ¥è¯´è¶…出范围"
-#: builtin.c:1266
+#: builtin.c:1316
+#, c-format
+msgid "ignoring unknown format specifier character `%c': no argument converted"
+msgstr "忽略ä½ç½®çš„æ ¼å¼åŒ–字符“%câ€: æ— å‚数被转化"
+
+#: builtin.c:1322
msgid "not enough arguments to satisfy format string"
msgstr "相对格å¼æ¥è¯´å‚数个数ä¸è¶³"
-#: builtin.c:1268
+#: builtin.c:1324
msgid "^ ran out for this one"
msgstr "^ 跑出范围"
-#: builtin.c:1274
+#: builtin.c:1330
msgid "[s]printf: format specifier does not have control letter"
msgstr "[s]printf: 指定格å¼ä¸å«æŽ§åˆ¶å­—符"
-#: builtin.c:1277
+#: builtin.c:1333
msgid "too many arguments supplied for format string"
msgstr "相对格å¼æ¥è¯´å‚数个数过多"
-#: builtin.c:1352 builtin.c:1355
+#: builtin.c:1408 builtin.c:1411
msgid "printf: no arguments"
msgstr "printf: 没有å‚æ•°"
-#: builtin.c:1379
+#: builtin.c:1435
msgid "sqrt: received non-numeric argument"
msgstr "sqrt: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:1383
+#: builtin.c:1439
#, c-format
msgid "sqrt: called with negative argument %g"
msgstr "sqrt: 收到负数å‚æ•° %g"
-#: builtin.c:1407
+#: builtin.c:1463
#, c-format
msgid "substr: start index %g is invalid, using 1"
msgstr "substr: 开始åæ ‡ %g 无效,使用 1"
-#: builtin.c:1412
+#: builtin.c:1468
#, c-format
msgid "substr: non-integer start index %g will be truncated"
msgstr "substr: éžæ•´æ•°çš„开始åæ ‡ %g 会被截断"
-#: builtin.c:1431
+#: builtin.c:1494
#, c-format
msgid "substr: length %g is not >= 1"
msgstr "substr: 长度 %g å°äºŽ 1"
-#: builtin.c:1433
+#: builtin.c:1496
#, c-format
msgid "substr: length %g is not >= 0"
msgstr "substr: 长度 %g å°äºŽ 0"
-#: builtin.c:1440
+#: builtin.c:1503
#, c-format
msgid "substr: non-integer length %g will be truncated"
msgstr "substr: éžæ•´æ•°çš„长度 %g 会被截断"
-#: builtin.c:1445
+#: builtin.c:1508
#, c-format
msgid "substr: length %g too big for string indexing, truncating to %g"
msgstr "substr: 长度 %g 作为字符串å标过大,截断至 %g"
-#: builtin.c:1457
+#: builtin.c:1520
msgid "substr: source string is zero length"
msgstr "substr: æºå­—符串长度为0"
-#: builtin.c:1473
+#: builtin.c:1536
#, c-format
msgid "substr: start index %g is past end of string"
msgstr "substr: 开始åæ ‡ %g 超出字符串尾部"
-#: builtin.c:1481
+#: builtin.c:1544
#, c-format
msgid ""
"substr: length %g at start index %g exceeds length of first argument (%lu)"
msgstr "substr: 在开始åæ ‡ %2$g 下长度 %1$g 超出第一个å‚数的长度 (%3$lu)"
-#: builtin.c:1558
+#: builtin.c:1621
msgid "strftime: received non-string first argument"
msgstr "strftime: 第一个å‚æ•°ä¸æ˜¯å­—符串"
-#: builtin.c:1564
+#: builtin.c:1627
msgid "strftime: received empty format string"
msgstr "strftime: 收到空格å¼å­—符串"
-#: builtin.c:1573
+#: builtin.c:1636
msgid "strftime: received non-numeric second argument"
msgstr "strftime: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:1650
+#: builtin.c:1713
msgid "mktime: received non-string argument"
msgstr "mktime: 收到éžå­—符串å‚æ•°"
-#: builtin.c:1695
+#: builtin.c:1758
msgid "system: received non-string argument"
msgstr "system: 收到éžå­—符串å‚æ•°"
-#: builtin.c:1816 eval.c:2041
+#: builtin.c:1879 eval.c:2145
#, c-format
msgid "reference to uninitialized field `$%d'"
msgstr "引用未åˆå§‹åŒ–的字段“$%dâ€"
-#: builtin.c:1921
+#: builtin.c:1984
msgid "tolower: received non-string argument"
msgstr "tolower: 收到éžå­—符串å‚æ•°"
-#: builtin.c:1951
+#: builtin.c:2014
msgid "toupper: received non-string argument"
msgstr "toupper: 收到éžå­—符串å‚æ•°"
-#: builtin.c:1984
+#: builtin.c:2047
msgid "atan2: received non-numeric first argument"
msgstr "atan2: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:1986
+#: builtin.c:2049
msgid "atan2: received non-numeric second argument"
msgstr "atan2: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2005
+#: builtin.c:2068
msgid "sin: received non-numeric argument"
msgstr "sin: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:2021
+#: builtin.c:2084
msgid "cos: received non-numeric argument"
msgstr "cos: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:2071
+#: builtin.c:2137
msgid "srand: received non-numeric argument"
msgstr "srand: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:2106
+#: builtin.c:2172
msgid "match: third argument is not an array"
msgstr "match: 第三个å‚æ•°ä¸æ˜¯æ•°ç»„"
-#: builtin.c:2650
+#: builtin.c:2719
msgid "gensub: third argument of 0 treated as 1"
msgstr "gensub: 第三个å‚æ•° 0 被当作 1"
-#: builtin.c:2766
+#: builtin.c:2835
msgid "lshift: received non-numeric first argument"
msgstr "lshift: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2768
+#: builtin.c:2837
msgid "lshift: received non-numeric second argument"
msgstr "lshift: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2774
+#: builtin.c:2843
#, c-format
msgid "lshift(%lf, %lf): negative values will give strange results"
msgstr "lshift(%lf, %lf): 负值会得到奇怪的结果"
-#: builtin.c:2776
+#: builtin.c:2845
#, c-format
msgid "lshift(%lf, %lf): fractional values will be truncated"
msgstr "lshift(%lf, %lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:2778
+#: builtin.c:2847
#, c-format
msgid "lshift(%lf, %lf): too large shift value will give strange results"
msgstr "lshift(%lf, %lf): 过大的移ä½ä¼šå¾—到奇怪的结果"
-#: builtin.c:2804
+#: builtin.c:2873
msgid "rshift: received non-numeric first argument"
msgstr "rshift: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2806
+#: builtin.c:2875
msgid "rshift: received non-numeric second argument"
msgstr "rshift: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2812
+#: builtin.c:2881
#, c-format
msgid "rshift(%lf, %lf): negative values will give strange results"
msgstr "rshift(%lf, %lf): 负值会得到奇怪的结果"
-#: builtin.c:2814
+#: builtin.c:2883
#, c-format
msgid "rshift(%lf, %lf): fractional values will be truncated"
msgstr "rshift(%lf, %lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:2816
+#: builtin.c:2885
#, c-format
msgid "rshift(%lf, %lf): too large shift value will give strange results"
msgstr "rshift(%lf, %lf): 过大的移ä½ä¼šå¾—到奇怪的结果"
-#: builtin.c:2842
+#: builtin.c:2911
msgid "and: received non-numeric first argument"
msgstr "and: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2844
+#: builtin.c:2913
msgid "and: received non-numeric second argument"
msgstr "and: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2850
+#: builtin.c:2919
#, c-format
msgid "and(%lf, %lf): negative values will give strange results"
msgstr "and(%lf, %lf): 负值会得到奇怪的结果"
-#: builtin.c:2852
+#: builtin.c:2921
#, c-format
msgid "and(%lf, %lf): fractional values will be truncated"
msgstr "and(%lf, %lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:2878
+#: builtin.c:2947
msgid "or: received non-numeric first argument"
msgstr "or: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2880
+#: builtin.c:2949
msgid "or: received non-numeric second argument"
msgstr "or: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2886
+#: builtin.c:2955
#, c-format
msgid "or(%lf, %lf): negative values will give strange results"
msgstr "or(%lf, %lf): 负值会得到奇怪的结果"
-#: builtin.c:2888
+#: builtin.c:2957
#, c-format
msgid "or(%lf, %lf): fractional values will be truncated"
msgstr "or(%lf, %lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:2914
+#: builtin.c:2983
msgid "xor: received non-numeric first argument"
msgstr "xor: 第一个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2916
+#: builtin.c:2985
msgid "xor: received non-numeric second argument"
msgstr "xor: 第二个å‚æ•°ä¸æ˜¯æ•°å­—"
-#: builtin.c:2922
+#: builtin.c:2991
#, c-format
msgid "xor(%lf, %lf): negative values will give strange results"
msgstr "xor(%lf, %lf): 负值会得到奇怪的结果"
-#: builtin.c:2924
+#: builtin.c:2993
#, c-format
msgid "xor(%lf, %lf): fractional values will be truncated"
msgstr "xor(%lf, %lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:2948
+#: builtin.c:3017
msgid "compl: received non-numeric argument"
msgstr "compl: 收到éžæ•°å­—å‚æ•°"
-#: builtin.c:2954
+#: builtin.c:3023
#, c-format
msgid "compl(%lf): negative value will give strange results"
msgstr "compl(%lf): 负值会得到奇怪的结果"
-#: builtin.c:2956
+#: builtin.c:3025
#, c-format
msgid "compl(%lf): fractional value will be truncated"
msgstr "compl(%lf): å°æ•°éƒ¨åˆ†ä¼šè¢«æˆªæ–­"
-#: builtin.c:3129
+#: builtin.c:3198
#, c-format
msgid "dcgettext: `%s' is not a valid locale category"
msgstr "dcgettext: “%sâ€ä¸æ˜¯ä¸€ä¸ªåˆç†çš„本地化目录"
-#: eval.c:303
+#: eval.c:372
#, c-format
msgid "unknown nodetype %d"
msgstr "未知的结点类型 %d"
-#: eval.c:353
+#: eval.c:422
msgid "buffer overflow in genflags2str"
msgstr "genflags2str 时缓冲区溢出"
-#: eval.c:385 eval.c:391 profile.c:817
+#: eval.c:454 eval.c:460 profile.c:781
#, c-format
msgid "attempt to use array `%s' in a scalar context"
msgstr "试图在标é‡çŽ¯å¢ƒä¸­ä½¿ç”¨æ•°ç»„“%sâ€"
-#: eval.c:733
+#: eval.c:802
#, c-format
msgid "for loop: array `%s' changed size from %ld to %ld during loop execution"
msgstr "for loop: 数组“%sâ€åœ¨å¾ªçŽ¯æ‰§è¡Œæ—¶å¤§å°ä»Ž %ld 改å˜ä¸º %ld"
-#: eval.c:754
+#: eval.c:823
msgid "`break' outside a loop is not portable"
msgstr "“breakâ€åœ¨å¾ªçŽ¯å¤–使用是ä¸å¯ç§»æ¤çš„"
-#: eval.c:758
+#: eval.c:827
msgid "`break' outside a loop is not allowed"
msgstr "“breakâ€åœ¨å¾ªçŽ¯å¤–使用是ä¸å…许的"
-#: eval.c:775
+#: eval.c:844
msgid "`continue' outside a loop is not portable"
msgstr "“continueâ€åœ¨å¾ªçŽ¯å¤–使用是ä¸å¯ç§»æ¤çš„"
-#: eval.c:779
+#: eval.c:848
msgid "`continue' outside a loop is not allowed"
msgstr "“continueâ€åœ¨å¾ªçŽ¯å¤–使用是ä¸å…许的"
-#: eval.c:813
+#: eval.c:882
msgid "`next' cannot be called from a BEGIN rule"
msgstr "在 BEGIN 规则中ä¸å…许调用“nextâ€"
-#: eval.c:815
+#: eval.c:884
msgid "`next' cannot be called from an END rule"
msgstr "在 END 规则中ä¸å…许调用“nextâ€"
-#: eval.c:824
+#: eval.c:893
msgid "`nextfile' cannot be called from a BEGIN rule"
msgstr "在 BEGIN 规则中ä¸å…许调用“nextfileâ€"
-#: eval.c:826
+#: eval.c:895
msgid "`nextfile' cannot be called from an END rule"
msgstr "在 END 规则中ä¸å…许调用“nextfileâ€"
-#: eval.c:875
+#: eval.c:952
msgid "statement has no effect"
msgstr "表达å¼æ— ä»»ä½•ä½œç”¨"
-#: eval.c:952 eval.c:1895
+#: eval.c:1029 eval.c:1999
#, c-format
msgid "can't use function name `%s' as variable or array"
msgstr "无法使用函数å“%sâ€ä½œä¸ºå˜é‡æˆ–数组"
-#: eval.c:959 eval.c:965
+#: eval.c:1036 eval.c:1042
#, c-format
msgid "reference to uninitialized argument `%s'"
msgstr "引用未åˆå§‹åŒ–çš„å‚数“%sâ€"
-#: eval.c:974 eval.c:1904
+#: eval.c:1051 eval.c:2008
#, c-format
msgid "reference to uninitialized variable `%s'"
msgstr "引用未åˆå§‹åŒ–çš„å˜é‡â€œ%sâ€"
-#: eval.c:1120
+#: eval.c:1197
msgid ""
"concatenation: side effects in one expression have changed the length of "
"another!"
msgstr "concatenation: 一个表达å¼çš„é¢å¤–效应已改å˜å¦ä¸€ä¸ªçš„长度ï¼"
-#: eval.c:1202
+#: eval.c:1301
msgid "assignment used in conditional context"
msgstr "在æ¡ä»¶è¡¨è¾¾å¼ä¸­èµ‹å€¼"
-#: eval.c:1280
+#: eval.c:1379
msgid "division by zero attempted"
msgstr "试图除0"
-#: eval.c:1295
-#, c-format
-msgid "division by zero attempted in `%%'"
-msgstr "在“%%â€ä¸­è¯•å›¾é™¤0"
-
-#: eval.c:1310 profile.c:693
+#: eval.c:1409 profile.c:657
#, c-format
msgid "illegal type (%s) in tree_eval"
msgstr "tree_eval 中的éžæ³•ç±»åž‹ (%s)"
-#: eval.c:1473
+#: eval.c:1572
msgid "division by zero attempted in `/='"
msgstr "在“/=â€ä¸­è¯•å›¾é™¤0"
-#: eval.c:1495
+#: eval.c:1594
#, c-format
msgid "division by zero attempted in `%%='"
msgstr "在“%%=â€ä¸­è¯•å›¾é™¤0"
-#: eval.c:1760
+#: eval.c:1859
#, c-format
msgid "function `%s' called with more arguments than declared"
msgstr "函数“%sâ€è¢«è°ƒç”¨æ—¶æ供了比声明时更多的å‚æ•°"
-#: eval.c:1804
+#: eval.c:1904
#, c-format
msgid "function `%s' not defined"
msgstr "函数“%sâ€æœªå®šä¹‰"
-#: eval.c:1867
+#: eval.c:1971
#, c-format
msgid ""
"\n"
@@ -895,42 +924,47 @@ msgstr ""
"\t# 函数调用栈:\n"
"\n"
-#: eval.c:1870
+#: eval.c:1974
#, c-format
msgid "\t# -- main --\n"
msgstr "\t# -- main --\n"
-#: eval.c:2025
+#: eval.c:2129
msgid "attempt to field reference from non-numeric value"
msgstr "试图从éžæ•°å€¼å¼•ç”¨å­—段编å·"
-#: eval.c:2027
+#: eval.c:2131
msgid "attempt to reference from null string"
msgstr "试图从空字符串引用"
-#: eval.c:2033
+#: eval.c:2137
#, c-format
msgid "attempt to access field %d"
msgstr "试图访问字段 %d"
-#: eval.c:2054 eval.c:2061 profile.c:914
+#: eval.c:2158 eval.c:2165 profile.c:836
msgid "assignment is not allowed to result of builtin function"
msgstr "ä¸å…许对内置函数的结果赋值"
-#: eval.c:2125
+#: eval.c:2229
msgid "`IGNORECASE' is a gawk extension"
msgstr "“IGNORECASEâ€æ˜¯ gawk 扩展"
-#: eval.c:2155
+#: eval.c:2258
msgid "`BINMODE' is a gawk extension"
msgstr "“BINMODEâ€æ˜¯ gawk 扩展"
-#: eval.c:2277
+#: eval.c:2316
+#, c-format
+msgid "BINMODE value `%s' is invalid, treated as 3"
+msgstr "BINMODE 值 “%s†éžæ³•ï¼ŒæŒ‰ 3 处ç†"
+
+#: eval.c:2406
#, c-format
msgid "bad `%sFMT' specification `%s'"
msgstr "错误的“%sFMTâ€å®žçŽ°â€œ%sâ€"
-#: eval.c:2355
+#: eval.c:2484
msgid "turning off `--lint' due to assignment to `LINT'"
msgstr "由于对“LINTâ€èµ‹å€¼æ‰€ä»¥å…³é—­â€œ--lintâ€"
@@ -1005,546 +1039,554 @@ msgstr "æ“作ä¸è¢«æ”¯æŒ"
msgid "NF set to negative value"
msgstr "NF 被设置为负值"
-#: field.c:823
+#: field.c:875
msgid "split: second argument is not an array"
msgstr "split: 第二个å‚æ•°ä¸æ˜¯æ•°ç»„"
-#: field.c:857
+#: field.c:909
msgid "split: null string for third arg is a gawk extension"
msgstr "split: 第三个å‚数为空是 gawk 扩展"
-#: field.c:909
+#: field.c:961
msgid "`FIELDWIDTHS' is a gawk extension"
msgstr "“FIELDWIDTHSâ€æ˜¯ gawk 扩展"
-#: field.c:939 field.c:953
+#: field.c:991 field.c:1005
#, c-format
msgid "invalid FIELDWIDTHS value, near `%s'"
msgstr "“%sâ€é™„è¿‘ FIELDWIDTHS 值无效"
-#: field.c:1036
+#: field.c:1088
msgid "null string for `FS' is a gawk extension"
msgstr "把“FSâ€è®¾ä¸ºç©ºå­—符串是 gawk 扩展"
-#: field.c:1040
+#: field.c:1092
msgid "old awk does not support regexps as value of `FS'"
msgstr "è€ awk ä¸æ”¯æŒæŠŠâ€œFSâ€è®¾ç½®ä¸ºæ­£åˆ™è¡¨è¾¾å¼"
-#: getopt.c:571 getopt.c:587
+#: getopt.c:570 getopt.c:586
#, c-format
-msgid "%s: option `%s' is ambiguous\n"
+msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: 选项“%sâ€æœ‰æ­§ä¹‰\n"
-#: getopt.c:620 getopt.c:624
+#: getopt.c:619 getopt.c:623
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: 选项“--%sâ€ä¸å…许有å‚æ•°\n"
-#: getopt.c:633 getopt.c:638
+#: getopt.c:632 getopt.c:637
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: 选项“%c%sâ€ä¸å…许有å‚æ•°\n"
-#: getopt.c:681 getopt.c:700 getopt.c:1016 getopt.c:1035
+#: getopt.c:680 getopt.c:699 getopt.c:1002 getopt.c:1021
#, c-format
-msgid "%s: option `%s' requires an argument\n"
+msgid "%s: option '%s' requires an argument\n"
msgstr "%s: 选项“%sâ€éœ€è¦ä¸€ä¸ªå‚æ•°\n"
-#: getopt.c:738 getopt.c:741
+#: getopt.c:737 getopt.c:740
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: 无法识别选项“--%sâ€\n"
-#: getopt.c:749 getopt.c:752
+#: getopt.c:748 getopt.c:751
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: 无法识别选项“%c%sâ€\n"
-#: getopt.c:804 getopt.c:807
-#, c-format
-msgid "%s: illegal option -- %c\n"
-msgstr "%s: éžæ³•é€‰é¡¹ -- %c\n"
-
-#: getopt.c:813 getopt.c:816
+#: getopt.c:800 getopt.c:803
#, c-format
-msgid "%s: invalid option -- %c\n"
-msgstr "%s: 无效选项 -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: 无效选项 -- “%câ€\n"
-#: getopt.c:868 getopt.c:884 getopt.c:1088 getopt.c:1106 main.c:461
+#: getopt.c:853 getopt.c:870 getopt.c:1073 getopt.c:1091
#, c-format
-msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: 选项需è¦ä¸€ä¸ªå‚æ•° -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: 选项需è¦ä¸€ä¸ªå‚æ•° -- “%câ€\n"
-#: getopt.c:937 getopt.c:953
+#: getopt.c:923 getopt.c:939
#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: 选项“-W %sâ€æœ‰æ­§ä¹‰\n"
-#: getopt.c:977 getopt.c:995
+#: getopt.c:963 getopt.c:981
#, c-format
-msgid "%s: option `-W %s' doesn't allow an argument\n"
+msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: 选项“-W %sâ€ä¸å…许å‚æ•°\n"
-#: io.c:345
+#: io.c:322 io.c:352
#, c-format
msgid "cannot open file `%s' for reading (%s)"
msgstr "无法以读模å¼æ‰“开文件“%sâ€(%s)"
-#: io.c:436
+#: io.c:443
#, c-format
msgid "close of fd %d (`%s') failed (%s)"
msgstr "å…³é—­æ–‡ä»¶å· %d (“%sâ€)失败(%s)"
-#: io.c:575
+#: io.c:583
#, c-format
msgid "invalid tree type %s in redirect()"
msgstr "在 redirect() 中的无效的树类型 %s"
-#: io.c:581
+#: io.c:589
#, c-format
msgid "expression in `%s' redirection only has numeric value"
msgstr "“%sâ€é‡å®šå‘中的表达å¼åªæœ‰æ•°å­—值"
-#: io.c:587
+#: io.c:595
#, c-format
msgid "expression for `%s' redirection has null string value"
msgstr "“%sâ€é‡å®šå‘中的表达å¼æ˜¯ç©ºå­—符串"
-#: io.c:592
+#: io.c:600
#, c-format
msgid "filename `%s' for `%s' redirection may be result of logical expression"
msgstr "“%2$sâ€é‡å®šå‘中的文件å“%1$sâ€å¯èƒ½æ˜¯é€»è¾‘表达å¼çš„结果"
-#: io.c:630
+#: io.c:638
#, c-format
msgid "unnecessary mixing of `>' and `>>' for file `%.*s'"
msgstr "在文件“%.*sâ€ä¸­ä¸å¿…è¦çš„æ··åˆä½¿ç”¨â€œ>â€å’Œâ€œ>>â€"
-#: io.c:682
+#: io.c:685
#, c-format
msgid "can't open pipe `%s' for output (%s)"
msgstr "无法为输出打开管é““%sâ€(%s)"
-#: io.c:691
+#: io.c:694
#, c-format
msgid "can't open pipe `%s' for input (%s)"
msgstr "无法为输入打开管é““%sâ€(%s)"
-#: io.c:698 io.c:1448
-#, c-format
-msgid "file `%s' is a directory"
-msgstr "文件“%sâ€æ˜¯ä¸€ä¸ªç›®å½•"
-
-#: io.c:706
+#: io.c:712
#, c-format
msgid "can't open two way socket `%s' for input/output (%s)"
msgstr "无法为输入/输出打开åŒå‘端å£â€œ%sâ€(%s)"
-#: io.c:710
+#: io.c:716
#, c-format
msgid "can't open two way pipe `%s' for input/output (%s)"
msgstr "无法为输入/输出打开åŒå‘管é““%sâ€(%s)"
-#: io.c:786
+#: io.c:793
#, c-format
msgid "can't redirect from `%s' (%s)"
msgstr "无法自“%sâ€é‡å®šå‘(%s)"
-#: io.c:789
+#: io.c:796
#, c-format
msgid "can't redirect to `%s' (%s)"
msgstr "无法é‡å®šå‘到“%sâ€(%s)"
-#: io.c:828
+#: io.c:849
msgid ""
"reached system limit for open files: starting to multiplex file descriptors"
msgstr "打开的文件数达到系统é™åˆ¶: 开始å¤ç”¨æ–‡ä»¶æ述符"
-#: io.c:844
+#: io.c:865
#, c-format
msgid "close of `%s' failed (%s)."
msgstr "关闭“%sâ€å¤±è´¥(%s)。"
-#: io.c:852
+#: io.c:873
msgid "too many pipes or input files open"
msgstr "打开过多管é“或输入文件"
-#: io.c:875
+#: io.c:896
msgid "close: second argument must be `to' or `from'"
msgstr "close: 第二个å‚数必须是“toâ€æˆ–“fromâ€"
-#: io.c:889
+#: io.c:910
#, c-format
msgid "close: `%.*s' is not an open file, pipe or co-process"
msgstr "close: “%.*sâ€ä¸æ˜¯ä¸€ä¸ªå·²æ‰“开文件ã€ç®¡é“或åˆä½œè¿›ç¨‹"
-#: io.c:893
+#: io.c:915
msgid "close of redirection that was never opened"
msgstr "关闭一个从未被打开的é‡å®šå‘"
-#: io.c:989
+#: io.c:1012
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
msgstr "close: é‡å®šå‘“%sâ€ä¸æ˜¯ç”¨â€œ|&â€æ‰“开,第二个å‚数被忽略"
-#: io.c:1005
+#: io.c:1028
#, c-format
msgid "failure status (%d) on pipe close of `%s' (%s)"
msgstr "关闭管é““%2$sâ€æ—¶å¤±è´¥ï¼Œå¤±è´¥çŠ¶æ€ä¸º(%1$d)(%3$s)"
-#: io.c:1008
+#: io.c:1031
#, c-format
msgid "failure status (%d) on file close of `%s' (%s)"
msgstr "关闭文件“%2$sâ€æ—¶å¤±è´¥ï¼Œå¤±è´¥çŠ¶æ€ä¸º(%1$d)(%3$s)"
-#: io.c:1028
+#: io.c:1051
#, c-format
msgid "no explicit close of socket `%s' provided"
msgstr "未显å¼å…³é—­ç«¯å£â€œ%sâ€"
-#: io.c:1031
+#: io.c:1054
#, c-format
msgid "no explicit close of co-process `%s' provided"
msgstr "未显å¼å…³é—­åˆä½œè¿›ç¨‹â€œ%sâ€"
-#: io.c:1034
+#: io.c:1057
#, c-format
msgid "no explicit close of pipe `%s' provided"
msgstr "未显å¼å…³é—­ç®¡é““%sâ€"
-#: io.c:1037
+#: io.c:1060
#, c-format
msgid "no explicit close of file `%s' provided"
msgstr "未显å¼å…³é—­æ–‡ä»¶â€œ%sâ€"
-#: io.c:1066 io.c:1121 main.c:749 main.c:791
+#: io.c:1088 io.c:1143 main.c:776 main.c:818
#, c-format
msgid "error writing standard output (%s)"
msgstr "å‘标准输出写时å‘生错误 (%s)"
-#: io.c:1070 io.c:1126
+#: io.c:1092 io.c:1148
#, c-format
msgid "error writing standard error (%s)"
msgstr "å‘标准错误输出写时å‘生错误 (%s)"
-#: io.c:1078
+#: io.c:1100
#, c-format
msgid "pipe flush of `%s' failed (%s)."
msgstr "刷新管é““%sâ€æ—¶å‡ºé”™(%s)。"
-#: io.c:1081
+#: io.c:1103
#, c-format
msgid "co-process flush of pipe to `%s' failed (%s)."
msgstr "刷新åˆä½œè¿›ç¨‹ç®¡é““%sâ€æ—¶å‡ºé”™(%s)。"
-#: io.c:1084
+#: io.c:1106
#, c-format
msgid "file flush of `%s' failed (%s)."
msgstr "刷新文件“%sâ€æ—¶å‡ºé”™(%s)。"
-#: io.c:1198
+#: io.c:1220
#, c-format
msgid "local port %s invalid in `/inet'"
msgstr "æœ¬åœ°ç«¯å£ %s 在“/inetâ€ä¸­æ— æ•ˆ"
-#: io.c:1215
+#: io.c:1237
#, c-format
msgid "remote host and port information (%s, %s) invalid"
msgstr "远程主机和端å£ä¿¡æ¯ (%s, %s) 无效"
-#: io.c:1250
+#: io.c:1272
msgid "/inet/raw client not ready yet, sorry"
msgstr "/inet/raw 客户端未准备好,对ä¸èµ·"
-#: io.c:1253 io.c:1289
+#: io.c:1275 io.c:1311
msgid "only root may use `/inet/raw'."
msgstr "ä»… root 能使用 “/inet/rawâ€"
-#: io.c:1287
+#: io.c:1309
msgid "/inet/raw server not ready yet, sorry"
msgstr "/inet/raw æœåŠ¡å™¨æœªå‡†å¤‡å¥½ï¼Œå¯¹ä¸èµ·"
-#: io.c:1385
+#: io.c:1407
#, c-format
msgid "no (known) protocol supplied in special filename `%s'"
msgstr "未æ供特殊文件å的“%sâ€çš„访问åè®®"
-#: io.c:1399
+#: io.c:1421
#, c-format
msgid "special file name `%s' is incomplete"
msgstr "特殊文件å“%sâ€æ˜¯ä¸å®Œæ•´çš„"
-#: io.c:1414
+#: io.c:1436
msgid "must supply a remote hostname to `/inet'"
msgstr "å¿…é¡»æ供远程主机å给“/inetâ€"
-#: io.c:1432
+#: io.c:1454
msgid "must supply a remote port to `/inet'"
msgstr "å¿…é¡»æ供远程端å£ç»™â€œ/inetâ€"
-#: io.c:1439
+#: io.c:1485
msgid "TCP/IP communications are not supported"
msgstr "TCP/IP 通讯ä¸è¢«æ”¯æŒ"
-#: io.c:1509
+#: io.c:1494
+#, c-format
+msgid "file `%s' is a directory"
+msgstr "文件“%sâ€æ˜¯ä¸€ä¸ªç›®å½•"
+
+#: io.c:1555
#, c-format
msgid "use `PROCINFO[\"%s\"]' instead of `%s'"
msgstr "使用“PROCINFO[\"%s\"]â€è€Œä¸æ˜¯â€œ%sâ€"
-#: io.c:1547
+#: io.c:1593
msgid "use `PROCINFO[...]' instead of `/dev/user'"
msgstr "使用“PROCINFO[...]â€è€Œä¸æ˜¯â€œ/dev/userâ€"
-#: io.c:1612 io.c:1798
+#: io.c:1658 io.c:1853
#, c-format
msgid "could not open `%s', mode `%s'"
msgstr "无法以模å¼â€œ%2$sâ€æ‰“开“%1$sâ€"
-#: io.c:1849
+#: io.c:1904
#, c-format
msgid "close of master pty failed (%s)"
msgstr "关闭主 pty 失败(%s)"
-#: io.c:1851 io.c:2003 io.c:2154
+#: io.c:1906 io.c:2058 io.c:2209
#, c-format
msgid "close of stdout in child failed (%s)"
msgstr "在å­è¿›ç¨‹ä¸­å…³é—­æ ‡å‡†è¾“出失败(%s)"
-#: io.c:1854
+#: io.c:1909
#, c-format
msgid "moving slave pty to stdout in child failed (dup: %s)"
msgstr "在å­è¿›ç¨‹ä¸­å°†ä»Ž pty 改为标准输出失败(dup: %s)"
-#: io.c:1856 io.c:2008
+#: io.c:1911 io.c:2063
#, c-format
msgid "close of stdin in child failed (%s)"
msgstr "在å­è¿›ç¨‹ä¸­å…³é—­æ ‡å‡†è¾“入失败(%s)"
-#: io.c:1859
+#: io.c:1914
#, c-format
msgid "moving slave pty to stdin in child failed (dup: %s)"
msgstr "在å­è¿›ç¨‹ä¸­å°†ä»Ž pty 改为标准输入失败(dup: %s)"
-#: io.c:1861 io.c:1880
+#: io.c:1916 io.c:1935
#, c-format
msgid "close of slave pty failed (%s)"
msgstr "关闭从 pty 失败(%s)"
-#: io.c:1954 io.c:2006 io.c:2135 io.c:2157
+#: io.c:2009 io.c:2061 io.c:2190 io.c:2212
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
msgstr "在å­è¿›ç¨‹ä¸­å°†ç®¡é“改为标准输出失败(dup: %s)"
-#: io.c:1958 io.c:2011
+#: io.c:2013 io.c:2066
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
msgstr "在å­è¿›ç¨‹ä¸­å°†ç®¡é“改为标准输入失败(dup: %s)"
-#: io.c:1975 io.c:2148
+#: io.c:2030 io.c:2203
msgid "restoring stdout in parent process failed\n"
msgstr "在父进程中æ¢å¤æ ‡å‡†è¾“出失败\n"
-#: io.c:1980
+#: io.c:2035
msgid "restoring stdin in parent process failed\n"
msgstr "在父进程中æ¢å¤æ ‡å‡†è¾“入失败\n"
-#: io.c:2014 io.c:2159 io.c:2170
+#: io.c:2069 io.c:2214 io.c:2225
#, c-format
msgid "close of pipe failed (%s)"
msgstr "关闭管é“失败(%s)"
-#: io.c:2059
+#: io.c:2114
msgid "`|&' not supported"
msgstr "“|&â€ä¸è¢«æ”¯æŒ"
-#: io.c:2125
+#: io.c:2180
#, c-format
msgid "cannot open pipe `%s' (%s)"
msgstr "无法打开管é““%sâ€(%s)"
-#: io.c:2166
+#: io.c:2221
#, c-format
msgid "cannot create child process for `%s' (fork: %s)"
msgstr "无法为“%sâ€åˆ›å»ºå­è¿›ç¨‹(fork: %s)"
-#: io.c:2548
+#: io.c:2603
#, c-format
msgid "data file `%s' is empty"
msgstr "æ•°æ®æ–‡ä»¶â€œ%sâ€ä¸ºç©º"
-#: io.c:2589 io.c:2597
+#: io.c:2644 io.c:2652
msgid "could not allocate more input memory"
msgstr "无法分é…更多的输入内存"
-#: io.c:2965 io.c:3038
+#: io.c:3020 io.c:3093
#, c-format
msgid "error reading input file `%s': %s"
msgstr "读å–输入文件“%sâ€æ—¶å‡ºé”™: %s"
-#: io.c:3163
+#: io.c:3218
msgid "multicharacter value of `RS' is a gawk extension"
msgstr "“RSâ€è®¾ç½®ä¸ºå¤šå­—符是 gawk 扩展"
-#: main.c:351
+#: main.c:304
+msgid "out of memory"
+msgstr "内存ä¸è¶³"
+
+#: main.c:373
msgid "`-m[fr]' option irrelevant in gawk"
msgstr "“-m[fr]â€é€‰é¡¹åœ¨ gawk 中ä¸ç›¸å…³"
-#: main.c:353
+#: main.c:375
msgid "-m option usage: `-m[fr] nnn'"
msgstr "-m 选项用法: “-m[fr] nnnâ€"
-#: main.c:370
+#: main.c:392
#, c-format
msgid "%s: option `-W %s' unrecognized, ignored\n"
msgstr "%s: 选项“-W %sâ€æ— æ³•è¯†åˆ«ï¼Œå¿½ç•¥\n"
-#: main.c:407
+#: main.c:433
msgid "empty argument to `--source' ignored"
msgstr "“--sourceâ€çš„空å‚数被忽略"
-#: main.c:480
+#: main.c:487
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: 选项需è¦ä¸€ä¸ªå‚æ•° -- %c\n"
+
+#: main.c:506
msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'"
msgstr "环境å˜é‡â€œPOSIXLY_CORRECTâ€è¢«è®¾ç½®: 打开“--posixâ€"
-#: main.c:486
+#: main.c:512
msgid "`--posix' overrides `--traditional'"
msgstr "“--posixâ€è¦†ç›–“--traditionalâ€"
-#: main.c:497
+#: main.c:523
msgid "`--posix'/`--traditional' overrides `--non-decimal-data'"
msgstr "“--posixâ€æˆ–“--traditionalâ€è¦†ç›–“--non-decimal-dataâ€"
-#: main.c:501
+#: main.c:527
#, c-format
msgid "running %s setuid root may be a security problem"
msgstr "以设置 root ID æ–¹å¼è¿è¡Œâ€œ%sâ€å¯èƒ½å­˜åœ¨å®‰å…¨æ¼æ´ž"
-#: main.c:542
+#: main.c:568
#, c-format
msgid "can't set binary mode on stdin (%s)"
msgstr "无法在标准输入上设置二进制模å¼(%s)"
-#: main.c:545
+#: main.c:571
#, c-format
msgid "can't set binary mode on stdout (%s)"
msgstr "无法在标准输出上设置二进制模å¼(%s)"
-#: main.c:547
+#: main.c:573
#, c-format
msgid "can't set binary mode on stderr (%s)"
msgstr "无法在标准错误输出上设置二进制模å¼(%s)"
-#: main.c:586
+#: main.c:612
msgid "no program text at all!"
msgstr "完全没有程åºæ­£æ–‡ï¼"
-#: main.c:690
+#: main.c:716
#, c-format
msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n"
msgstr "用法: %s [POSIX 或 GNU 风格选项] -f 脚本文件 [--] 文件 ...\n"
-#: main.c:692
+#: main.c:718
#, c-format
msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n"
msgstr "用法: %s [POSIX 或 GNU 风格选项] [--] %c程åº%c 文件 ...\n"
-#: main.c:697
+#: main.c:723
msgid "POSIX options:\t\tGNU long options:\n"
msgstr "POSIX 选项: \t\tGNU 长选项:\n"
-#: main.c:698
+#: main.c:724
msgid "\t-f progfile\t\t--file=progfile\n"
msgstr "\t-f 脚本文件\t\t--file=脚本文件\n"
-#: main.c:699
+#: main.c:725
msgid "\t-F fs\t\t\t--field-separator=fs\n"
msgstr "\t-F fs\t\t\t--field-separator=fs\n"
-#: main.c:700
+#: main.c:726
msgid "\t-v var=val\t\t--assign=var=val\n"
msgstr "\t-v var=val\t\t--assign=var=val\n"
-#: main.c:701
+#: main.c:727
msgid "\t-m[fr] val\n"
msgstr "\t-m[fr] val\n"
-#: main.c:702
+#: main.c:728
+msgid "\t-O\t\t\t--optimize\n"
+msgstr "\t-O\t\t\t--optimize\n"
+
+#: main.c:729
msgid "\t-W compat\t\t--compat\n"
msgstr "\t-W compat\t\t--compat\n"
-#: main.c:703
+#: main.c:730
msgid "\t-W copyleft\t\t--copyleft\n"
msgstr "\t-W copyleft\t\t--copyleft\n"
-#: main.c:704
+#: main.c:731
msgid "\t-W copyright\t\t--copyright\n"
msgstr "\t-W copyright\t\t--copyright\n"
-#: main.c:705
+#: main.c:732
msgid "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
msgstr "\t-W dump-variables[=file]\t--dump-variables[=file]\n"
-#: main.c:706
+#: main.c:733
msgid "\t-W exec=file\t\t--exec=file\n"
msgstr "\t-W exec=file\t\t--exec=file\n"
-#: main.c:707
+#: main.c:734
msgid "\t-W gen-po\t\t--gen-po\n"
msgstr "\t-W gen-po\t\t--gen-po\n"
-#: main.c:708
+#: main.c:735
msgid "\t-W help\t\t\t--help\n"
msgstr "\t-W help\t\t\t--help\n"
-#: main.c:709
+#: main.c:736
msgid "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
msgstr "\t-W lint[=fatal]\t\t--lint[=fatal]\n"
-#: main.c:710
+#: main.c:737
msgid "\t-W lint-old\t\t--lint-old\n"
msgstr "\t-W lint-old\t\t--lint-old\n"
-#: main.c:711
+#: main.c:738
msgid "\t-W non-decimal-data\t--non-decimal-data\n"
msgstr "\t-W non-decimal-data\t--non-decimal-data\n"
-#: main.c:713
+#: main.c:740
msgid "\t-W nostalgia\t\t--nostalgia\n"
msgstr "\t-W nostalgia\t\t--nostalgia\n"
-#: main.c:716
+#: main.c:743
msgid "\t-W parsedebug\t\t--parsedebug\n"
msgstr "\t-W parsedebug\t\t--parsedebug\n"
-#: main.c:718
+#: main.c:745
msgid "\t-W profile[=file]\t--profile[=file]\n"
msgstr "\t-W profile[=file]\t--profile[=file]\n"
-#: main.c:719
+#: main.c:746
msgid "\t-W posix\t\t--posix\n"
msgstr "\t-W posix\t\t--posix\n"
-#: main.c:720
+#: main.c:747
msgid "\t-W re-interval\t\t--re-interval\n"
msgstr "\t-W re-interval\t\t--re-interval\n"
-#: main.c:721
+#: main.c:748
msgid "\t-W source=program-text\t--source=program-text\n"
msgstr "\t-W source=program-text\t--source=program-text\n"
-#: main.c:722
+#: main.c:749
msgid "\t-W traditional\t\t--traditional\n"
msgstr "\t-W traditional\t\t--traditional\n"
-#: main.c:723
+#: main.c:750
msgid "\t-W usage\t\t--usage\n"
msgstr "\t-W usage\t\t--usage\n"
-#: main.c:724
+#: main.c:751
msgid "\t-W use-lc-numeric\t--use-lc-numeric\n"
-msgstr ""
+msgstr "\t-W use-lc-numeric\t--use-lc-numeric\n"
-#: main.c:725
+#: main.c:752
msgid "\t-W version\t\t--version\n"
msgstr "\t-W version\t\t--version\n"
@@ -1553,7 +1595,7 @@ msgstr "\t-W version\t\t--version\n"
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: main.c:734
+#: main.c:761
msgid ""
"\n"
"To report bugs, see node `Bugs' in `gawk.info', which is\n"
@@ -1567,7 +1609,7 @@ msgstr ""
"翻译错误请å‘信至 translation-team-zh-cn@lists.sourceforge.net\n"
"\n"
-#: main.c:738
+#: main.c:765
msgid ""
"gawk is a pattern scanning and processing language.\n"
"By default it reads standard input and writes standard output.\n"
@@ -1576,7 +1618,7 @@ msgstr ""
"gawk 是一个模å¼æ‰«æåŠå¤„ç†è¯­è¨€ã€‚缺çœæƒ…况下它从标准输入读入并写至标准输出。\n"
"\n"
-#: main.c:742
+#: main.c:769
msgid ""
"Examples:\n"
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
@@ -1586,7 +1628,7 @@ msgstr ""
"\tgawk '{ sum += $1 }; END { print sum }' file\n"
"\tgawk -F: '{ print $1 }' /etc/passwd\n"
-#: main.c:762
+#: main.c:789
#, c-format
msgid ""
"Copyright (C) 1989, 1991-%d Free Software Foundation.\n"
@@ -1603,7 +1645,7 @@ msgstr ""
"3版或以åŽç‰ˆæœ¬ä¸‹ä¿®æ”¹æˆ–é‡æ–°å‘布。\n"
"\n"
-#: main.c:770
+#: main.c:797
msgid ""
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
@@ -1616,21 +1658,19 @@ msgstr ""
"共许å¯è¯(GPL)。\n"
"\n"
-#: main.c:781
-#, fuzzy
+#: main.c:808
msgid ""
"You should have received a copy of the GNU General Public License\n"
"along with this program. If not, see http://www.gnu.org/licenses/.\n"
msgstr ""
-"你应该收到程åºé™„带的一份 GNU 通用公共许å¯è¯(GPL)。如果没有收到,å¯å†™ä¿¡è‡³\n"
-"“the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\n"
-"Boston, MA 02110-1301, USA.â€ç´¢å–。\n"
+"你应该收到程åºé™„带的一份 GNU 通用公共许å¯è¯(GPL)。如果没有收到,请å‚看 "
+"http://www.gnu.org/licenses/ 。\n"
-#: main.c:816
+#: main.c:843
msgid "-Ft does not set FS to tab in POSIX awk"
msgstr "在 POSIX awk 中 -Ft ä¸ä¼šå°† FS 设为制表符(tab)"
-#: main.c:1060
+#: main.c:1117
#, c-format
msgid ""
"%s: `%s' argument to `-v' not in `var=value' form\n"
@@ -1639,35 +1679,43 @@ msgstr ""
"%s: “-vâ€çš„å‚数“%sâ€ä¸æ˜¯â€œvar=valueâ€å½¢å¼\n"
"\n"
-#: main.c:1080
+#: main.c:1137
#, c-format
msgid "`%s' is not a legal variable name"
msgstr "“%sâ€ä¸æ˜¯ä¸€ä¸ªåˆæ³•çš„å˜é‡å"
-#: main.c:1083
+#: main.c:1140
#, c-format
msgid "`%s' is not a variable name, looking for file `%s=%s'"
msgstr "“%sâ€ä¸æ˜¯ä¸€ä¸ªå˜é‡å,查找文件“%s=%sâ€"
-#: main.c:1122
+#: main.c:1179
msgid "floating point exception"
msgstr "浮点数异常"
-#: main.c:1129
+#: main.c:1186
msgid "fatal error: internal error"
msgstr "致命错误: 内部错误"
-#: main.c:1180
+#: main.c:1200
+msgid "fatal error: internal error: segfault"
+msgstr "致命错误: 内部错误: 段错误"
+
+#: main.c:1212
+msgid "fatal error: internal error: stack overflow"
+msgstr "致命错误: 内部错误: 栈溢出"
+
+#: main.c:1261
#, c-format
msgid "no pre-opened fd %d"
msgstr "文件æ述符 %d 未被打开"
-#: main.c:1187
+#: main.c:1268
#, c-format
msgid "could not pre-open /dev/null for fd %d"
msgstr "无法为文件æ述符 %d 预打开 /dev/null"
-#: main.c:1210 main.c:1219
+#: main.c:1291 main.c:1300
#, c-format
msgid "could not find groups: %s"
msgstr "无法找到组: %s"
@@ -1693,24 +1741,31 @@ msgstr "致命错误: "
msgid "can't convert string to float"
msgstr "无法将字符串转化为浮点数"
-#: node.c:406
+#: node.c:462
msgid "backslash at end of string"
msgstr "字符串尾部的åæ–œæ "
-#: node.c:548
+#: node.c:606
#, c-format
msgid "old awk does not support the `\\%c' escape sequence"
msgstr "è€ awk ä¸æ”¯æŒâ€œ\\%câ€è½¬ä¹‰åºåˆ—"
-#: node.c:599
+#: node.c:657
msgid "POSIX does not allow `\\x' escapes"
msgstr "POSIX ä¸å…许“\\xâ€è½¬ä¹‰ç¬¦"
-#: node.c:605
+#: node.c:663
msgid "no hex digits in `\\x' escape sequence"
msgstr "“\\xâ€è½¬ä¹‰åºåˆ—中没有å六进制数"
-#: node.c:639
+#: node.c:685
+#, c-format
+msgid ""
+"hex escape \\x%.*s of %d characters probably not interpreted the way you "
+"expect"
+msgstr ""
+
+#: node.c:700
#, c-format
msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "转义åºåˆ—“\\%câ€è¢«å½“作å•çº¯çš„“%câ€"
@@ -1720,31 +1775,32 @@ msgstr "转义åºåˆ—“\\%câ€è¢«å½“作å•çº¯çš„“%câ€"
msgid "%s %s `%s': could not set close-on-exec: (fcntl: %s)"
msgstr "%s %s “%sâ€: 无法设置 close-on-exec: (fcntl: %s)"
-#: profile.c:92
+#: profile.c:93
#, c-format
msgid "could not open `%s' for writing: %s"
msgstr "无法以写模å¼æ‰“开“%sâ€: %s"
-#: profile.c:450
+#: profile.c:453
#, c-format
msgid "internal error: %s with null vname"
msgstr "内部错误: %s 带有空的 vname"
-#: profile.c:514
+#: profile.c:517
+#, fuzzy
msgid "# treated internally as `delete'"
msgstr "# 内部处ç†ä¸ºâ€œdeleteâ€"
-#: profile.c:1147
+#: profile.c:1069
#, c-format
msgid "# this is a dynamically loaded extension function"
msgstr "# 这是一个动æ€åŠ è½½çš„扩展函数"
-#: profile.c:1178
+#: profile.c:1100
#, c-format
msgid "\t# gawk profile, created %s\n"
msgstr "\t# gawk é…ç½®, 创建 %s\n"
-#: profile.c:1181
+#: profile.c:1103
#, c-format
msgid ""
"\t# BEGIN block(s)\n"
@@ -1753,7 +1809,7 @@ msgstr ""
"\t# BEGIN å—\n"
"\n"
-#: profile.c:1191
+#: profile.c:1113
#, c-format
msgid ""
"\t# Rule(s)\n"
@@ -1762,7 +1818,7 @@ msgstr ""
"\t# 规则\n"
"\n"
-#: profile.c:1197
+#: profile.c:1119
#, c-format
msgid ""
"\t# END block(s)\n"
@@ -1771,7 +1827,7 @@ msgstr ""
"\t# END å—\n"
"\n"
-#: profile.c:1217
+#: profile.c:1139
#, c-format
msgid ""
"\n"
@@ -1780,79 +1836,84 @@ msgstr ""
"\n"
"\t# 函数列表,字典åº\n"
-#: profile.c:1470
+#: profile.c:1400
#, c-format
msgid "unexpected type %s in prec_level"
msgstr "在 prec_level 中未预期的类型 %s"
-#: regcomp.c:132
+#: profile.c:1500
+#, c-format
+msgid "Unknown node type %s in pp_var"
+msgstr "pp_var 中的未知的结点类型 %s"
+
+#: regcomp.c:133
msgid "Success"
msgstr "æˆåŠŸ"
-#: regcomp.c:135
+#: regcomp.c:136
msgid "No match"
msgstr "无匹é…"
-#: regcomp.c:138
+#: regcomp.c:139
msgid "Invalid regular expression"
msgstr "无效的正则表达å¼"
-#: regcomp.c:141
+#: regcomp.c:142
msgid "Invalid collation character"
msgstr "无效的收集字符"
-#: regcomp.c:144
+#: regcomp.c:145
msgid "Invalid character class name"
msgstr "无效的字符类型å"
-#: regcomp.c:147
+#: regcomp.c:148
msgid "Trailing backslash"
msgstr "尾端的åæ–œæ "
-#: regcomp.c:150
+#: regcomp.c:151
msgid "Invalid back reference"
msgstr "无效的回引用"
-#: regcomp.c:153
+#: regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "未匹é…çš„ [ 或 [^"
-#: regcomp.c:156
+#: regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "未匹é…çš„ ( 或 \\("
-#: regcomp.c:159
+#: regcomp.c:160
msgid "Unmatched \\{"
msgstr "未匹é…çš„ \\{"
-#: regcomp.c:162
+#: regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} 中内容无效"
-#: regcomp.c:165
+#: regcomp.c:166
msgid "Invalid range end"
msgstr "无效的范围结æŸ"
-#: regcomp.c:168
+#: regcomp.c:169
msgid "Memory exhausted"
msgstr "内存耗尽"
-#: regcomp.c:171
+#: regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "无效的å‰ç½®æ­£åˆ™è¡¨è¾¾å¼"
-#: regcomp.c:174
+#: regcomp.c:175
msgid "Premature end of regular expression"
msgstr "正则表达å¼éžæ­£å¸¸ç»“æŸ"
-#: regcomp.c:177
+#: regcomp.c:178
msgid "Regular expression too big"
msgstr "正则表达å¼è¿‡å¤§"
-#: regcomp.c:180
+#: regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr "未匹é…çš„ ) 或 \\)"
-#: regcomp.c:664
+#: regcomp.c:700
msgid "No previous regular expression"
msgstr "å‰é¢æ²¡æœ‰æ­£åˆ™è¡¨è¾¾å¼"
diff --git a/posix/ChangeLog b/posix/ChangeLog
index 6686dc00..31a2c520 100644
--- a/posix/ChangeLog
+++ b/posix/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/profile.c b/profile.c
index 1a8c131d..86dfd27b 100644
--- a/profile.c
+++ b/profile.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1999-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1999-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -47,6 +47,7 @@ static void pp_builtin P((NODE *tree));
static void pp_list P((NODE *tree));
static void pp_string P((const char *str, size_t len, int delim));
static void pp_concat P((NODE *tree, int level));
+static void pp_var P((NODE *tree));
static int is_scalar P((NODETYPE type));
static int prec_level P((NODETYPE type));
#ifdef PROFILING
@@ -193,10 +194,12 @@ pprint(register NODE *volatile tree)
if (tree->rnode) {
if (! in_BEGIN_or_END) {
fprintf(prof_fp, "{");
+#ifdef PROFILING
if (tree->lnode != NULL
&& tree->lnode->exec_count)
fprintf(prof_fp, " # %ld",
tree->lnode->exec_count);
+#endif
fprintf(prof_fp, "\n");
}
indent_in();
@@ -464,13 +467,13 @@ tree_eval(register NODE *tree)
case Node_and:
eval_condition(tree->lnode);
fprintf(prof_fp, " && ");
- eval_condition(tree->rnode);
+ eval_condition(tree->rnode);
return;
case Node_or:
eval_condition(tree->lnode);
fprintf(prof_fp, " || ");
- eval_condition(tree->rnode);
+ eval_condition(tree->rnode);
return;
case Node_not:
@@ -524,60 +527,21 @@ tree_eval(register NODE *tree)
return;
/* unary operations */
- case Node_NR:
- fprintf(prof_fp, "NR");
- return;
-
- case Node_FNR:
- fprintf(prof_fp, "FNR");
- return;
-
- case Node_NF:
- fprintf(prof_fp, "NF");
- return;
-
+ case Node_CONVFMT:
case Node_FIELDWIDTHS:
- fprintf(prof_fp, "FIELDWIDTHS");
- return;
-
+ case Node_FNR:
case Node_FS:
- fprintf(prof_fp, "FS");
- return;
-
- case Node_RS:
- fprintf(prof_fp, "RS");
- return;
-
case Node_IGNORECASE:
- fprintf(prof_fp, "IGNORECASE");
- return;
-
+ case Node_LINT:
+ case Node_NF:
+ case Node_NR:
+ case Node_OFMT:
case Node_OFS:
- fprintf(prof_fp, "OFS");
- return;
-
case Node_ORS:
- fprintf(prof_fp, "ORS");
- return;
-
- case Node_OFMT:
- fprintf(prof_fp, "OFMT");
- return;
-
- case Node_CONVFMT:
- fprintf(prof_fp, "CONVFMT");
- return;
-
- case Node_BINMODE:
- fprintf(prof_fp, "BINMODE");
- return;
-
- case Node_SUBSEP:
- fprintf(prof_fp, "SUBSEP");
- return;
-
+ case Node_RS:
case Node_TEXTDOMAIN:
- fprintf(prof_fp, "TEXTDOMAIN");
+ case Node_SUBSEP:
+ pp_var(tree);
return;
case Node_field_spec:
@@ -822,64 +786,22 @@ pp_lhs(register NODE *ptr)
fprintf(prof_fp, "%s", ptr->vname);
break;
+ case Node_BINMODE:
+ case Node_CONVFMT:
case Node_FIELDWIDTHS:
- fprintf(prof_fp, "FIELDWIDTHS");
- break;
-
- case Node_RS:
- fprintf(prof_fp, "RS");
- break;
-
- case Node_FS:
- fprintf(prof_fp, "FS");
- break;
-
case Node_FNR:
- fprintf(prof_fp, "FNR");
- break;
-
- case Node_NR:
- fprintf(prof_fp, "NR");
- break;
-
- case Node_NF:
- fprintf(prof_fp, "NF");
- break;
-
+ case Node_FS:
case Node_IGNORECASE:
- fprintf(prof_fp, "IGNORECASE");
- break;
-
- case Node_BINMODE:
- fprintf(prof_fp, "BINMODE");
- break;
-
case Node_LINT:
- fprintf(prof_fp, "LINT");
- break;
-
+ case Node_NF:
+ case Node_NR:
case Node_OFMT:
- fprintf(prof_fp, "OFMT");
- break;
-
- case Node_CONVFMT:
- fprintf(prof_fp, "CONVFMT");
- break;
-
- case Node_ORS:
- fprintf(prof_fp, "ORS");
- break;
-
case Node_OFS:
- fprintf(prof_fp, "OFS");
- break;
-
+ case Node_ORS:
+ case Node_RS:
case Node_SUBSEP:
- fprintf(prof_fp, "SUBSEP");
- break;
-
case Node_TEXTDOMAIN:
- fprintf(prof_fp, "TEXTDOMAIN");
+ pp_var(ptr);
break;
case Node_param_list:
@@ -1066,7 +988,7 @@ pp_delete(register NODE *tree)
array = tree->lnode;
subscript = tree->rnode;
- indent(array->exec_count);
+ indent(tree->exec_count);
if (array->type == Node_param_list)
fprintf(prof_fp, "delete %s", fparms[array->param_cnt]);
else
@@ -1245,10 +1167,17 @@ pp_func(const char *name, size_t namelen, NODE *f)
static void
pp_concat(NODE *tree, int level)
{
+ static int left_printed = FALSE;
+
if (tree->lnode->type == Node_concat)
pp_concat(tree->lnode, level + 1); /* recurse down one level */
- else {
+ else if (tree->lnode == Nnull_string) {
+ tree_eval(tree->rnode);
+ return;
+ } else {
fprintf(prof_fp, "("); /* outermost left paren */
+ left_printed = TRUE;
+
if (is_scalar(tree->lnode->type))
tree_eval(tree->lnode);
else {
@@ -1268,8 +1197,10 @@ pp_concat(NODE *tree, int level)
fprintf(prof_fp, ")");
}
- if (level == 0)
+ if (level == 0 && left_printed) {
fprintf(prof_fp, ")"); /* outermost right paren */
+ left_printed = FALSE;
+ }
}
/* pp_string --- pretty print a string or regex constant */
@@ -1363,6 +1294,7 @@ is_scalar(NODETYPE type)
case Node_SUBSEP:
case Node_TEXTDOMAIN:
case Node_subscript:
+ case Node_func_call:
return TRUE;
default:
return FALSE;
@@ -1442,8 +1374,6 @@ prec_level(NODETYPE type)
return 6;
case Node_less:
- return 5;
-
case Node_in_array:
return 5;
@@ -1487,7 +1417,7 @@ parenthesize(NODETYPE parent_type, NODE *tree)
in_expr++;
/* first the special cases, then the general ones */
if (parent_type == Node_not && child_type == Node_in_array) {
- fprintf(prof_fp, "! (");
+ fprintf(prof_fp, "(");
pp_in_array(tree->lnode, tree->rnode);
fprintf(prof_fp, ")");
/* other special cases here, as needed */
@@ -1500,6 +1430,78 @@ parenthesize(NODETYPE parent_type, NODE *tree)
in_expr--;
}
+/* pp_var --- print builtin variables, do it in one place */
+
+static void
+pp_var(NODE *tree)
+{
+ switch (tree->type) {
+ case Node_BINMODE:
+ fprintf(prof_fp, "BINMODE");
+ return;
+
+ case Node_CONVFMT:
+ fprintf(prof_fp, "CONVFMT");
+ return;
+
+ case Node_FIELDWIDTHS:
+ fprintf(prof_fp, "FIELDWIDTHS");
+ return;
+
+ case Node_FNR:
+ fprintf(prof_fp, "FNR");
+ return;
+
+ case Node_FS:
+ fprintf(prof_fp, "FS");
+ return;
+
+ case Node_IGNORECASE:
+ fprintf(prof_fp, "IGNORECASE");
+ return;
+
+ case Node_LINT:
+ fprintf(prof_fp, "LINT");
+ return;
+
+ case Node_NF:
+ fprintf(prof_fp, "NF");
+ return;
+
+ case Node_NR:
+ fprintf(prof_fp, "NR");
+ return;
+
+ case Node_OFMT:
+ fprintf(prof_fp, "OFMT");
+ return;
+
+ case Node_OFS:
+ fprintf(prof_fp, "OFS");
+ return;
+
+ case Node_ORS:
+ fprintf(prof_fp, "ORS");
+ return;
+
+ case Node_RS:
+ fprintf(prof_fp, "RS");
+ return;
+
+ case Node_SUBSEP:
+ fprintf(prof_fp, "SUBSEP");
+ return;
+
+ case Node_TEXTDOMAIN:
+ fprintf(prof_fp, "TEXTDOMAIN");
+ return;
+
+ default:
+ fatal(_("Unknown node type %s in pp_var"), nodetype2str(tree->type));
+ break;
+ }
+}
+
#ifdef PROFILING
/* just_dump --- dump the profile and function stack and keep going */
@@ -1521,6 +1523,6 @@ static RETSIGTYPE
dump_and_exit(int signum)
{
just_dump(signum);
- exit(1);
+ exit(EXIT_FAILURE);
}
#endif
diff --git a/re.c b/re.c
index 56db98d5..87888c59 100644
--- a/re.c
+++ b/re.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1991-2007 the Free Software Foundation, Inc.
+ * Copyright (C) 1991-2009 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Programming Language.
@@ -232,8 +232,11 @@ research(Regexp *rp, register char *str, int start,
* focused, perhaps we should relegate the DFA matcher to the
* single byte case all the time. OTOH, the speed difference
* between the matchers in non-trivial... Sigh.)
+ *
+ * 7/2008: Simplify: skip dfa matcher if need_start. The above
+ * problems are too much to deal with.
*/
- if (rp->dfa && ! no_bol && (gawk_mb_cur_max == 1 || ! need_start)) {
+ if (rp->dfa && ! no_bol && ! need_start) {
char save;
int count = 0;
/*
@@ -302,7 +305,7 @@ re_update(NODE *t)
NODE *t1;
if ((t->re_flags & CASE) == IGNORECASE) {
- if ((t->re_flags & CONST) != 0) {
+ if ((t->re_flags & CONSTANT) != 0) {
assert(t->type == Node_regex);
return t->re_reg;
}
@@ -453,5 +456,8 @@ reflags2str(int flagval)
{ 0, NULL },
};
+ if (flagval == RE_SYNTAX_EMACS) /* == 0 */
+ return "RE_SYNTAX_EMACS";
+
return genflags2str(flagval, values);
}
diff --git a/regcomp.c b/regcomp.c
index d61bd1ac..55596968 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -1,5 +1,6 @@
/* Extended regular expression matching and search library.
- Copyright (C) 2002,2003,2004,2005,2006 Free Software Foundation, Inc.
+ Copyright (C) 2002,2003,2004,2005,2006,2007,2009
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
@@ -203,6 +204,25 @@ const size_t __re_error_msgid_idx[] attribute_hidden =
/* Entry points for GNU code. */
+
+#ifdef ZOS_USS
+
+/* For ZOS USS we must define btowc */
+
+wchar_t
+btowc (int c)
+{
+ wchar_t wtmp[2];
+ char tmp[2];
+
+ tmp[0] = c;
+ tmp[1] = 0;
+
+ mbtowc (wtmp, tmp, 1);
+ return wtmp[0];
+}
+#endif
+
/* re_compile_pattern is the GNU regular expression compiler: it
compiles PATTERN (of length LENGTH) and puts the result in BUFP.
Returns 0 if the pattern was valid, otherwise an error string.
@@ -327,8 +347,8 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state,
&& dfa->nodes[node].mb_partial)
*p++ = dfa->nodes[node].opr.c;
memset (&state, '\0', sizeof (state));
- if (mbrtowc (&wc, (const char *) buf, p - buf,
- &state) == p - buf
+ if (__mbrtowc (&wc, (const char *) buf, p - buf,
+ &state) == p - buf
&& (__wcrtomb ((char *) buf, towlower (wc), &state)
!= (size_t) -1))
re_set_fastmap (fastmap, 0, buf[0]);
@@ -351,51 +371,67 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state,
#ifdef RE_ENABLE_I18N
else if (type == COMPLEX_BRACKET)
{
- int i;
re_charset_t *cset = dfa->nodes[node].opr.mbcset;
- if (cset->non_match || cset->ncoll_syms || cset->nequiv_classes
- || cset->nranges || cset->nchar_classes)
- {
+ int i;
+
# ifdef _LIBC
- if (_NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES) != 0)
+ /* See if we have to try all bytes which start multiple collation
+ elements.
+ e.g. In da_DK, we want to catch 'a' since "aa" is a valid
+ collation element, and don't catch 'b' since 'b' is
+ the only collation element which starts from 'b' (and
+ it is caught by SIMPLE_BRACKET). */
+ if (_NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES) != 0
+ && (cset->ncoll_syms || cset->nranges))
{
- /* In this case we want to catch the bytes which are
- the first byte of any collation elements.
- e.g. In da_DK, we want to catch 'a' since "aa"
- is a valid collation element, and don't catch
- 'b' since 'b' is the only collation element
- which starts from 'b'. */
const int32_t *table = (const int32_t *)
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB);
for (i = 0; i < SBC_MAX; ++i)
if (table[i] < 0)
re_set_fastmap (fastmap, icase, i);
}
-# else
- if (dfa->mb_cur_max > 1)
- for (i = 0; i < SBC_MAX; ++i) {
- wint_t wc;
- wc = __btowc (i);
-
- if (wc == WEOF || wc >= SBC_MAX)
- re_set_fastmap (fastmap, icase, i);
- }
-# endif /* not _LIBC */
- }
- for (i = 0; i < cset->nmbchars; ++i)
+# endif /* _LIBC */
+
+ /* See if we have to start the match at all multibyte characters,
+ i.e. where we would not find an invalid sequence. This only
+ applies to multibyte character sets; for single byte character
+ sets, the SIMPLE_BRACKET again suffices. */
+ if (dfa->mb_cur_max > 1
+ && (cset->nchar_classes || cset->non_match
+# ifdef _LIBC
+ || cset->nequiv_classes
+# endif /* _LIBC */
+ ))
{
- char buf[256];
- mbstate_t state;
- memset (&state, '\0', sizeof (state));
- if (__wcrtomb (buf, cset->mbchars[i], &state) != (size_t) -1)
- re_set_fastmap (fastmap, icase, *(unsigned char *) buf);
- if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1)
+ unsigned char c = 0;
+ do
{
- if (__wcrtomb (buf, towlower (cset->mbchars[i]), &state)
- != (size_t) -1)
- re_set_fastmap (fastmap, 0, *(unsigned char *) buf);
+ mbstate_t mbs;
+ memset (&mbs, 0, sizeof (mbs));
+ if (__mbrtowc (NULL, (char *) &c, 1, &mbs) == (size_t) -2)
+ re_set_fastmap (fastmap, false, (int) c);
}
+ while (++c != 0);
}
+
+ else
+ {
+ /* ... Else catch all bytes which can start the mbchars. */
+ for (i = 0; i < cset->nmbchars; ++i)
+ {
+ char buf[256];
+ mbstate_t state;
+ memset (&state, '\0', sizeof (state));
+ if (__wcrtomb (buf, cset->mbchars[i], &state) != (size_t) -1)
+ re_set_fastmap (fastmap, icase, *(unsigned char *) buf);
+ if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1)
+ {
+ if (__wcrtomb (buf, towlower (cset->mbchars[i]), &state)
+ != (size_t) -1)
+ re_set_fastmap (fastmap, false, *(unsigned char *) buf);
+ }
+ }
+ }
}
#endif /* RE_ENABLE_I18N */
else if (type == OP_PERIOD
@@ -1059,7 +1095,7 @@ optimize_utf8 (re_dfa_t *dfa)
mb_chars = 1;
break;
case ANCHOR:
- switch (dfa->nodes[node].opr.idx)
+ switch (dfa->nodes[node].opr.ctx_type)
{
case LINE_FIRST:
case LINE_LAST:
@@ -1067,7 +1103,9 @@ optimize_utf8 (re_dfa_t *dfa)
case BUF_LAST:
break;
default:
- /* Word anchors etc. cannot be handled. */
+ /* Word anchors etc. cannot be handled. It's okay to test
+ opr.ctx_type since constraints (for all DFA nodes) are
+ created by ORing one or more opr.ctx_type values. */
return;
}
break;
@@ -1347,6 +1385,8 @@ calc_first (void *extra, bin_tree_t *node)
node->node_idx = re_dfa_add_node (dfa, node->token);
if (BE (node->node_idx == -1, 0))
return REG_ESPACE;
+ if (node->token.type == ANCHOR)
+ dfa->nodes[node->node_idx].constraint = node->token.opr.ctx_type;
}
return REG_NOERROR;
}
@@ -1475,22 +1515,17 @@ duplicate_node_closure (re_dfa_t *dfa, int top_org_node, int top_clone_node,
destination. */
org_dest = dfa->edests[org_node].elems[0];
re_node_set_empty (dfa->edests + clone_node);
- if (dfa->nodes[org_node].type == ANCHOR)
+ /* If the node is root_node itself, it means the epsilon clsoure
+ has a loop. Then tie it to the destination of the root_node. */
+ if (org_node == root_node && clone_node != org_node)
{
- /* In case of the node has another constraint, append it. */
- if (org_node == root_node && clone_node != org_node)
- {
- /* ...but if the node is root_node itself, it means the
- epsilon closure have a loop, then tie it to the
- destination of the root_node. */
- ret = re_node_set_insert (dfa->edests + clone_node,
- org_dest);
- if (BE (ret < 0, 0))
- return REG_ESPACE;
- break;
- }
- constraint |= dfa->nodes[org_node].opr.ctx_type;
+ ret = re_node_set_insert (dfa->edests + clone_node, org_dest);
+ if (BE (ret < 0, 0))
+ return REG_ESPACE;
+ break;
}
+ /* In case of the node has another constraint, add it. */
+ constraint |= dfa->nodes[org_node].constraint;
clone_dest = duplicate_node (dfa, org_dest, constraint);
if (BE (clone_dest == -1, 0))
return REG_ESPACE;
@@ -1508,7 +1543,7 @@ duplicate_node_closure (re_dfa_t *dfa, int top_org_node, int top_clone_node,
clone_dest = search_duplicated_node (dfa, org_dest, constraint);
if (clone_dest == -1)
{
- /* There are no such a duplicated node, create a new one. */
+ /* There is no such duplicated node, create a new one. */
reg_errcode_t err;
clone_dest = duplicate_node (dfa, org_dest, constraint);
if (BE (clone_dest == -1, 0))
@@ -1523,7 +1558,7 @@ duplicate_node_closure (re_dfa_t *dfa, int top_org_node, int top_clone_node,
}
else
{
- /* There are a duplicated node which satisfy the constraint,
+ /* There is a duplicated node which satisfies the constraint,
use it to avoid infinite loop. */
ret = re_node_set_insert (dfa->edests + clone_node, clone_dest);
if (BE (ret < 0, 0))
@@ -1572,8 +1607,7 @@ duplicate_node (re_dfa_t *dfa, int org_idx, unsigned int constraint)
if (BE (dup_idx != -1, 1))
{
dfa->nodes[dup_idx].constraint = constraint;
- if (dfa->nodes[org_idx].type == ANCHOR)
- dfa->nodes[dup_idx].constraint |= dfa->nodes[org_idx].opr.ctx_type;
+ dfa->nodes[dup_idx].constraint |= dfa->nodes[org_idx].constraint;
dfa->nodes[dup_idx].duplicated = 1;
/* Store the index of the original node. */
@@ -1653,7 +1687,6 @@ static reg_errcode_t
calc_eclosure_iter (re_node_set *new_set, re_dfa_t *dfa, int node, int root)
{
reg_errcode_t err;
- unsigned int constraint;
int i, incomplete;
re_node_set eclosure;
incomplete = 0;
@@ -1665,15 +1698,14 @@ calc_eclosure_iter (re_node_set *new_set, re_dfa_t *dfa, int node, int root)
We reference this value to avoid infinite loop. */
dfa->eclosures[node].nelem = -1;
- constraint = ((dfa->nodes[node].type == ANCHOR)
- ? dfa->nodes[node].opr.ctx_type : 0);
- /* If the current node has constraints, duplicate all nodes.
- Since they must inherit the constraints. */
- if (constraint
+ /* If the current node has constraints, duplicate all nodes
+ since they must inherit the constraints. */
+ if (dfa->nodes[node].constraint
&& dfa->edests[node].nelem
&& !dfa->nodes[dfa->edests[node].elems[0]].duplicated)
{
- err = duplicate_node_closure (dfa, node, node, node, constraint);
+ err = duplicate_node_closure (dfa, node, node, node,
+ dfa->nodes[node].constraint);
if (BE (err != REG_NOERROR, 0))
return err;
}
@@ -2796,7 +2828,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
return elem;
}
- /* Local function for parse_bracket_exp used in _LIBC environement.
+ /* Local function for parse_bracket_exp used in _LIBC environment.
Look up the collation sequence value of BR_ELEM.
Return the value if succeeded, UINT_MAX otherwise. */
@@ -2820,7 +2852,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
}
else if (br_elem->type == MB_CHAR)
{
- return __collseq_table_lookup (collseqwc, br_elem->opr.wch);
+ if (nrules != 0)
+ return __collseq_table_lookup (collseqwc, br_elem->opr.wch);
}
else if (br_elem->type == COLL_SYM)
{
@@ -3068,7 +3101,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
#endif /* not RE_ENABLE_I18N */
non_match = 1;
if (syntax & RE_HAT_LISTS_NOT_NEWLINE)
- bitset_set (sbcset, '\0');
+ bitset_set (sbcset, '\n');
re_string_skip_bytes (regexp, token_len); /* Skip a token. */
token_len = peek_token_bracket (token, regexp, syntax);
if (BE (token->type == END_OF_RE, 0))
@@ -3426,7 +3459,7 @@ build_equiv_class (bitset_t sbcset, const unsigned char *name)
/* Build single byte matcing table for this equivalence class. */
char_buf[1] = (unsigned char) '\0';
- len = weights[idx1];
+ len = weights[idx1 & 0xffffff];
for (ch = 0; ch < SBC_MAX; ++ch)
{
char_buf[0] = ch;
@@ -3438,11 +3471,15 @@ build_equiv_class (bitset_t sbcset, const unsigned char *name)
if (idx2 == 0)
/* This isn't a valid character. */
continue;
- if (len == weights[idx2])
+ /* Compare only if the length matches and the collation rule
+ index is the same. */
+ if (len == weights[idx2 & 0xffffff] && (idx1 >> 24) == (idx2 >> 24))
{
int cnt = 0;
+
while (cnt <= len &&
- weights[idx1 + 1 + cnt] == weights[idx2 + 1 + cnt])
+ weights[(idx1 & 0xffffff) + 1 + cnt]
+ == weights[(idx2 & 0xffffff) + 1 + cnt])
++cnt;
if (cnt > len)
@@ -3602,10 +3639,6 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans,
if (non_match)
{
#ifdef RE_ENABLE_I18N
- /*
- if (syntax & RE_HAT_LISTS_NOT_NEWLINE)
- bitset_set(cset->sbcset, '\0');
- */
mbcset->non_match = 1;
#endif /* not RE_ENABLE_I18N */
}
diff --git a/regex.c b/regex.c
index 6dbb4ee1..3dd8dfa0 100644
--- a/regex.c
+++ b/regex.c
@@ -69,12 +69,12 @@
#include "regex_internal.h"
#include "regex_internal.c"
-#include "regcomp.c"
#ifdef GAWK
#define bool int
#define true (1)
#define false (0)
#endif
+#include "regcomp.c"
#include "regexec.c"
/* Binary backward compatibility. */
diff --git a/regex.h b/regex.h
index eac89b1e..d7672c52 100644
--- a/regex.h
+++ b/regex.h
@@ -1,6 +1,6 @@
/* Definitions for data structures and routines for the regular
expression library.
- Copyright (C) 1985,1989-93,1995-98,2000,2001,2002,2003,2005,2006
+ Copyright (C) 1985,1989-93,1995-98,2000,2001,2002,2003,2005,2006,2008
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -30,6 +30,10 @@
#include <sys/types.h>
#endif
+#ifndef _LIBC
+#define __USE_GNU 1
+#endif
+
/* Allow the use in C++ code. */
#ifdef __cplusplus
extern "C" {
@@ -49,20 +53,21 @@ typedef unsigned long int active_reg_t;
add or remove a bit, only one other definition need change. */
typedef unsigned long int reg_syntax_t;
+#ifdef __USE_GNU
/* If this bit is not set, then \ inside a bracket expression is literal.
If set, then such a \ quotes the following character. */
-#define RE_BACKSLASH_ESCAPE_IN_LISTS ((unsigned long int) 1)
+# define RE_BACKSLASH_ESCAPE_IN_LISTS ((unsigned long int) 1)
/* If this bit is not set, then + and ? are operators, and \+ and \? are
literals.
If set, then \+ and \? are operators and + and ? are literals. */
-#define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
+# define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
/* If this bit is set, then character classes are supported. They are:
[:alpha:], [:upper:], [:lower:], [:digit:], [:alnum:], [:xdigit:],
[:space:], [:print:], [:punct:], [:graph:], and [:cntrl:].
If not set, then character classes are not supported. */
-#define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1)
+# define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1)
/* If this bit is set, then ^ and $ are always anchors (outside bracket
expressions, of course).
@@ -76,7 +81,7 @@ typedef unsigned long int reg_syntax_t;
POSIX draft 11.2 says that * etc. in leading positions is undefined.
We already implemented a previous draft which made those constructs
invalid, though, so we haven't changed the code back. */
-#define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1)
+# define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1)
/* If this bit is set, then special characters are always special
regardless of where they are in the pattern.
@@ -84,71 +89,71 @@ typedef unsigned long int reg_syntax_t;
some contexts; otherwise they are ordinary. Specifically,
* + ? and intervals are only special when not after the beginning,
open-group, or alternation operator. */
-#define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1)
+# define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1)
/* If this bit is set, then *, +, ?, and { cannot be first in an re or
immediately after an alternation or begin-group operator. */
-#define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1)
+# define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1)
/* If this bit is set, then . matches newline.
If not set, then it doesn't. */
-#define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1)
+# define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1)
/* If this bit is set, then . doesn't match NUL.
If not set, then it does. */
-#define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1)
+# define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1)
/* If this bit is set, nonmatching lists [^...] do not match newline.
If not set, they do. */
-#define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1)
+# define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1)
/* If this bit is set, either \{...\} or {...} defines an
interval, depending on RE_NO_BK_BRACES.
If not set, \{, \}, {, and } are literals. */
-#define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1)
+# define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1)
/* If this bit is set, +, ? and | aren't recognized as operators.
If not set, they are. */
-#define RE_LIMITED_OPS (RE_INTERVALS << 1)
+# define RE_LIMITED_OPS (RE_INTERVALS << 1)
/* If this bit is set, newline is an alternation operator.
If not set, newline is literal. */
-#define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1)
+# define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1)
/* If this bit is set, then `{...}' defines an interval, and \{ and \}
are literals.
If not set, then `\{...\}' defines an interval. */
-#define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1)
+# define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1)
/* If this bit is set, (...) defines a group, and \( and \) are literals.
If not set, \(...\) defines a group, and ( and ) are literals. */
-#define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1)
+# define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1)
/* If this bit is set, then \<digit> matches <digit>.
If not set, then \<digit> is a back-reference. */
-#define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1)
+# define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1)
/* If this bit is set, then | is an alternation operator, and \| is literal.
If not set, then \| is an alternation operator, and | is literal. */
-#define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1)
+# define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1)
/* If this bit is set, then an ending range point collating higher
than the starting range point, as in [z-a], is invalid.
If not set, then when ending range point collates higher than the
starting range point, the range is ignored. */
-#define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1)
+# define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1)
/* If this bit is set, then an unmatched ) is ordinary.
If not set, then an unmatched ) is invalid. */
-#define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1)
+# define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1)
/* If this bit is set, succeed as soon as we match the whole pattern,
without further backtracking. */
-#define RE_NO_POSIX_BACKTRACKING (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
+# define RE_NO_POSIX_BACKTRACKING (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
/* If this bit is set, do not process the GNU regex operators.
If not set, then the GNU regex operators are recognized. */
-#define RE_NO_GNU_OPS (RE_NO_POSIX_BACKTRACKING << 1)
+# define RE_NO_GNU_OPS (RE_NO_POSIX_BACKTRACKING << 1)
/* If this bit is set, turn on internal regex debugging.
If not set, and debugging was on, turn it off.
@@ -156,29 +161,30 @@ typedef unsigned long int reg_syntax_t;
We define this bit always, so that all that's needed to turn on
debugging is to recompile regex.c; the calling code can always have
this bit set, and it won't affect anything in the normal case. */
-#define RE_DEBUG (RE_NO_GNU_OPS << 1)
+# define RE_DEBUG (RE_NO_GNU_OPS << 1)
/* If this bit is set, a syntactically invalid interval is treated as
a string of ordinary characters. For example, the ERE 'a{1' is
treated as 'a\{1'. */
-#define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1)
+# define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1)
/* If this bit is set, then ignore case when matching.
If not set, then case is significant. */
-#define RE_ICASE (RE_INVALID_INTERVAL_ORD << 1)
+# define RE_ICASE (RE_INVALID_INTERVAL_ORD << 1)
/* This bit is used internally like RE_CONTEXT_INDEP_ANCHORS but only
for ^, because it is difficult to scan the regex backwards to find
whether ^ should be special. */
-#define RE_CARET_ANCHORS_HERE (RE_ICASE << 1)
+# define RE_CARET_ANCHORS_HERE (RE_ICASE << 1)
/* If this bit is set, then \{ cannot be first in an bre or
immediately after an alternation or begin-group operator. */
-#define RE_CONTEXT_INVALID_DUP (RE_CARET_ANCHORS_HERE << 1)
+# define RE_CONTEXT_INVALID_DUP (RE_CARET_ANCHORS_HERE << 1)
/* If this bit is set, then no_sub will be set to 1 during
re_compile_pattern. */
-#define RE_NO_SUB (RE_CONTEXT_INVALID_DUP << 1)
+# define RE_NO_SUB (RE_CONTEXT_INVALID_DUP << 1)
+#endif
/* This global variable defines the particular regexp syntax to use (for
some interfaces). When a regexp is compiled, the syntax used is
@@ -186,6 +192,7 @@ typedef unsigned long int reg_syntax_t;
already-compiled regexps. */
extern reg_syntax_t re_syntax_options;
+#ifdef __USE_GNU
/* Define combinations of the above bits for the standard possibilities.
(The [[[ comments delimit what gets put into the Texinfo file, so
don't delete them!) */
@@ -260,11 +267,12 @@ extern reg_syntax_t re_syntax_options;
/* Maximum number of duplicates an interval can allow. Some systems
(erroneously) define this in other header files, but we want our
value, so remove any previous define. */
-#ifdef RE_DUP_MAX
-# undef RE_DUP_MAX
-#endif
+# ifdef RE_DUP_MAX
+# undef RE_DUP_MAX
+# endif
/* If sizeof(int) == 2, then ((1 << 15) - 1) overflows. */
-#define RE_DUP_MAX (0x7fff)
+# define RE_DUP_MAX (0x7fff)
+#endif
/* POSIX `cflags' bits (i.e., information for `regcomp'). */
@@ -308,7 +316,7 @@ extern reg_syntax_t re_syntax_options;
`re_error_msg' table in regex.c. */
typedef enum
{
-#ifdef _XOPEN_SOURCE
+#if defined _XOPEN_SOURCE || defined __USE_XOPEN2K
REG_ENOSYS = -1, /* This will never happen for this implementation. */
#endif
@@ -343,7 +351,16 @@ typedef enum
private to the regex routines. */
#ifndef RE_TRANSLATE_TYPE
-# define RE_TRANSLATE_TYPE unsigned char *
+# define __RE_TRANSLATE_TYPE unsigned char *
+# ifdef __USE_GNU
+# define RE_TRANSLATE_TYPE __RE_TRANSLATE_TYPE
+# endif
+#endif
+
+#ifdef __USE_GNU
+# define __REPB_PREFIX(name) name
+#else
+# define __REPB_PREFIX(name) __##name
#endif
struct re_pattern_buffer
@@ -351,27 +368,27 @@ struct re_pattern_buffer
/* Space that holds the compiled pattern. It is declared as
`unsigned char *' because its elements are sometimes used as
array indexes. */
- unsigned char *buffer;
+ unsigned char *__REPB_PREFIX(buffer);
/* Number of bytes to which `buffer' points. */
- unsigned long int allocated;
+ unsigned long int __REPB_PREFIX(allocated);
/* Number of bytes actually used in `buffer'. */
- unsigned long int used;
+ unsigned long int __REPB_PREFIX(used);
/* Syntax setting with which the pattern was compiled. */
- reg_syntax_t syntax;
+ reg_syntax_t __REPB_PREFIX(syntax);
/* Pointer to a fastmap, if any, otherwise zero. re_search uses the
fastmap, if there is one, to skip over impossible starting points
for matches. */
- char *fastmap;
+ char *__REPB_PREFIX(fastmap);
/* Either a translate table to apply to all characters before
comparing them, or zero for no translation. The translation is
applied to a pattern when it is compiled and to a string when it
is matched. */
- RE_TRANSLATE_TYPE translate;
+ __RE_TRANSLATE_TYPE __REPB_PREFIX(translate);
/* Number of subexpressions found by the compiler. */
size_t re_nsub;
@@ -380,34 +397,36 @@ struct re_pattern_buffer
Well, in truth it's used only in `re_search_2', to see whether or
not we should use the fastmap, so we don't set this absolutely
perfectly; see `re_compile_fastmap' (the `duplicate' case). */
- unsigned can_be_null : 1;
+ unsigned __REPB_PREFIX(can_be_null) : 1;
/* If REGS_UNALLOCATED, allocate space in the `regs' structure
for `max (RE_NREGS, re_nsub + 1)' groups.
If REGS_REALLOCATE, reallocate space if necessary.
If REGS_FIXED, use what's there. */
-#define REGS_UNALLOCATED 0
-#define REGS_REALLOCATE 1
-#define REGS_FIXED 2
- unsigned regs_allocated : 2;
+#ifdef __USE_GNU
+# define REGS_UNALLOCATED 0
+# define REGS_REALLOCATE 1
+# define REGS_FIXED 2
+#endif
+ unsigned __REPB_PREFIX(regs_allocated) : 2;
/* Set to zero when `regex_compile' compiles a pattern; set to one
by `re_compile_fastmap' if it updates the fastmap. */
- unsigned fastmap_accurate : 1;
+ unsigned __REPB_PREFIX(fastmap_accurate) : 1;
/* If set, `re_match_2' does not return information about
subexpressions. */
- unsigned no_sub : 1;
+ unsigned __REPB_PREFIX(no_sub) : 1;
/* If set, a beginning-of-line anchor doesn't match at the beginning
of the string. */
- unsigned not_bol : 1;
+ unsigned __REPB_PREFIX(not_bol) : 1;
/* Similarly for an end-of-line anchor. */
- unsigned not_eol : 1;
+ unsigned __REPB_PREFIX(not_eol) : 1;
/* If true, an anchor at a newline matches. */
- unsigned newline_anchor : 1;
+ unsigned __REPB_PREFIX(newline_anchor) : 1;
};
typedef struct re_pattern_buffer regex_t;
@@ -416,6 +435,7 @@ typedef struct re_pattern_buffer regex_t;
typedef int regoff_t;
+#ifdef __USE_GNU
/* This is the structure we store register match data in. See
regex.texinfo for a full description of what registers match. */
struct re_registers
@@ -429,8 +449,9 @@ struct re_registers
/* If `regs_allocated' is REGS_UNALLOCATED in the pattern buffer,
`re_match_2' returns information about at least this many registers
the first time a `regs' structure is passed. */
-#ifndef RE_NREGS
-# define RE_NREGS 30
+# ifndef RE_NREGS
+# define RE_NREGS 30
+# endif
#endif
@@ -445,6 +466,7 @@ typedef struct
/* Declarations for routines. */
+#ifdef __USE_GNU
/* Sets the current default syntax to SYNTAX, and return the old syntax.
You can also simply assign to the `re_syntax_options' variable. */
extern reg_syntax_t re_set_syntax (reg_syntax_t __syntax);
@@ -467,7 +489,7 @@ extern int re_compile_fastmap (struct re_pattern_buffer *__buffer);
characters. Return the starting position of the match, -1 for no
match, or -2 for an internal error. Also return register
information in REGS (if REGS and BUFFER->no_sub are nonzero). */
-extern int re_search (struct re_pattern_buffer *__buffer, const char *__string,
+extern int re_search (struct re_pattern_buffer *__buffer, const char *__cstring,
int __length, int __start, int __range,
struct re_registers *__regs);
@@ -482,7 +504,7 @@ extern int re_search_2 (struct re_pattern_buffer *__buffer,
/* Like `re_search', but return how many characters in STRING the regexp
in BUFFER matched, starting at position START. */
-extern int re_match (struct re_pattern_buffer *__buffer, const char *__string,
+extern int re_match (struct re_pattern_buffer *__buffer, const char *__cstring,
int __length, int __start, struct re_registers *__regs);
@@ -509,8 +531,9 @@ extern void re_set_registers (struct re_pattern_buffer *__buffer,
struct re_registers *__regs,
unsigned int __num_regs,
regoff_t *__starts, regoff_t *__ends);
+#endif /* Use GNU */
-#if defined _REGEX_RE_COMP || defined _LIBC
+#if defined _REGEX_RE_COMP || (defined _LIBC && defined __USE_BSD)
# ifndef _CRAY
/* 4.2 bsd compatibility. */
extern char *re_comp (const char *);
@@ -545,7 +568,7 @@ extern int regcomp (regex_t *__restrict __preg,
int __cflags);
extern int regexec (const regex_t *__restrict __preg,
- const char *__restrict __string, size_t __nmatch,
+ const char *__restrict __cstring, size_t __nmatch,
regmatch_t __pmatch[__restrict_arr],
int __eflags);
diff --git a/regex_internal.c b/regex_internal.c
index 849dcd2b..2b07332f 100644
--- a/regex_internal.c
+++ b/regex_internal.c
@@ -229,7 +229,7 @@ build_wcs_buffer (re_string_t *pstr)
}
else
p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + byte_idx;
- mbclen = mbrtowc (&wc, p, remain_len, &pstr->cur_state);
+ mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state);
if (BE (mbclen == (size_t) -2, 0))
{
/* The buffer doesn't have enough space, finish to build. */
@@ -299,9 +299,9 @@ build_wcs_upper_buffer (re_string_t *pstr)
remain_len = end_idx - byte_idx;
prev_st = pstr->cur_state;
- mbclen = mbrtowc (&wc,
- ((const char *) pstr->raw_mbs + pstr->raw_mbs_idx
- + byte_idx), remain_len, &pstr->cur_state);
+ mbclen = __mbrtowc (&wc,
+ ((const char *) pstr->raw_mbs + pstr->raw_mbs_idx
+ + byte_idx), remain_len, &pstr->cur_state);
if (BE (mbclen + 2 > 2, 1))
{
wchar_t wcu = wc;
@@ -369,7 +369,7 @@ build_wcs_upper_buffer (re_string_t *pstr)
}
else
p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + src_idx;
- mbclen = mbrtowc (&wc, p, remain_len, &pstr->cur_state);
+ mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state);
if (BE (mbclen + 2 > 2, 1))
{
wchar_t wcu = wc;
@@ -491,8 +491,8 @@ re_string_skip_chars (re_string_t *pstr, int new_raw_idx, wint_t *last_wc)
int remain_len;
remain_len = pstr->len - rawbuf_idx;
prev_st = pstr->cur_state;
- mbclen = mbrtowc (&wc, (const char *) pstr->raw_mbs + rawbuf_idx,
- remain_len, &pstr->cur_state);
+ mbclen = __mbrtowc (&wc, (const char *) pstr->raw_mbs + rawbuf_idx,
+ remain_len, &pstr->cur_state);
if (BE (mbclen == (size_t) -2 || mbclen == (size_t) -1 || mbclen == 0, 0))
{
/* We treat these cases as a single byte character. */
@@ -734,8 +734,8 @@ re_string_reconstruct (re_string_t *pstr, int idx, int eflags)
/* XXX Don't use mbrtowc, we know which conversion
to use (UTF-8 -> UCS4). */
memset (&cur_state, 0, sizeof (cur_state));
- mbclen = mbrtowc (&wc2, (const char *) p, mlen,
- &cur_state);
+ mbclen = __mbrtowc (&wc2, (const char *) p, mlen,
+ &cur_state);
if (raw + offset - p <= mbclen
&& mbclen < (size_t) -2)
{
@@ -1674,11 +1674,9 @@ create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes,
for (i = 0 ; i < nodes->nelem ; i++)
{
- unsigned int constraint = 0;
re_token_t *node = dfa->nodes + nodes->elems[i];
re_token_type_t type = node->type;
- if (node->constraint)
- constraint = node->constraint;
+ unsigned int constraint = node->constraint;
if (type == CHARACTER && !constraint)
continue;
@@ -1691,8 +1689,6 @@ create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes,
newstate->halt = 1;
else if (type == OP_BACK_REF)
newstate->has_backref = 1;
- else if (type == ANCHOR)
- constraint = node->opr.ctx_type;
if (constraint)
{
diff --git a/regex_internal.h b/regex_internal.h
index 0bd2ffc2..f80dd994 100644
--- a/regex_internal.h
+++ b/regex_internal.h
@@ -1,5 +1,5 @@
/* Extended regular expression matching and search library.
- Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2002-2005, 2007, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
@@ -42,9 +42,11 @@
#if defined HAVE_STDBOOL_H || defined _LIBC
# include <stdbool.h>
#endif /* HAVE_STDBOOL_H || _LIBC */
+#if !defined(ZOS_USS)
#if defined HAVE_STDINT_H || defined _LIBC
# include <stdint.h>
#endif /* HAVE_STDINT_H || _LIBC */
+#endif /* !ZOS_USS */
#if defined _LIBC
# include <bits/libc-lock.h>
#else
@@ -121,6 +123,9 @@ is_blank (int c)
# define BE(expr, val) __builtin_expect (expr, val)
#else
# define BE(expr, val) (expr)
+# ifdef inline
+# undef inline
+# endif
# define inline
#endif
@@ -135,9 +140,16 @@ is_blank (int c)
/* Rename to standard API for using out of glibc. */
#ifndef _LIBC
+# ifdef __wctype
+# undef __wctype
+# endif
# define __wctype wctype
+# ifdef __iswctype
+# undef __iswctype
+# endif
# define __iswctype iswctype
# define __btowc btowc
+# define __mbrtowc mbrtowc
#undef __mempcpy /* GAWK */
# define __mempcpy mempcpy
# define __wcrtomb wcrtomb
@@ -408,18 +420,21 @@ typedef struct re_dfa_t re_dfa_t;
# endif
#endif
+#ifndef NOT_IN_libc
static reg_errcode_t re_string_realloc_buffers (re_string_t *pstr,
int new_buf_len)
internal_function;
-#ifdef RE_ENABLE_I18N
+# ifdef RE_ENABLE_I18N
static void build_wcs_buffer (re_string_t *pstr) internal_function;
-static reg_errcode_t build_wcs_upper_buffer (re_string_t *pstr) internal_function;
-#endif /* RE_ENABLE_I18N */
+static reg_errcode_t build_wcs_upper_buffer (re_string_t *pstr)
+ internal_function;
+# endif /* RE_ENABLE_I18N */
static void build_upper_buffer (re_string_t *pstr) internal_function;
static void re_string_translate_buffer (re_string_t *pstr) internal_function;
static unsigned int re_string_context_at (const re_string_t *input, int idx,
int eflags)
internal_function __attribute ((pure));
+#endif
#define re_string_peek_byte(pstr, offset) \
((pstr)->mbs[(pstr)->cur_idx + offset])
#define re_string_fetch_byte(pstr) \
@@ -762,15 +777,16 @@ re_string_wchar_at (const re_string_t *pstr, int idx)
return (wint_t) pstr->wcs[idx];
}
+# ifndef NOT_IN_libc
static int
internal_function __attribute ((pure))
re_string_elem_size_at (const re_string_t *pstr, int idx)
{
-# ifdef _LIBC
+# ifdef _LIBC
const unsigned char *p, *extra;
const int32_t *table, *indirect;
int32_t tmp;
-# include <locale/weight.h>
+# include <locale/weight.h>
uint_fast32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES);
if (nrules != 0)
@@ -785,9 +801,10 @@ re_string_elem_size_at (const re_string_t *pstr, int idx)
return p - pstr->mbs - idx;
}
else
-# endif /* _LIBC */
+# endif /* _LIBC */
return 1;
}
+# endif
#endif /* RE_ENABLE_I18N */
#endif /* _REGEX_INTERNAL_H */
diff --git a/regexec.c b/regexec.c
index 9502aec2..01fbe055 100644
--- a/regexec.c
+++ b/regexec.c
@@ -1,5 +1,5 @@
/* Extended regular expression matching and search library.
- Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
@@ -998,6 +998,11 @@ prune_impossible_nodes (mctx)
re_node_set_free (&sctx.limits);
if (BE (ret != REG_NOERROR, 0))
goto free_return;
+ if (sifted_states[0] == NULL)
+ {
+ ret = REG_NOMATCH;
+ goto free_return;
+ }
}
re_free (mctx->state_log);
mctx->state_log = sifted_states;
@@ -1240,13 +1245,9 @@ proceed_next_node (const re_match_context_t *mctx, int nregs, regmatch_t *regs,
int i, err;
if (IS_EPSILON_NODE (dfa->nodes[node].type))
{
- re_node_set *cur_nodes;
+ re_node_set *cur_nodes = &mctx->state_log[*pidx]->nodes;
re_node_set *edests = &dfa->edests[node];
int dest_node;
-
- if (mctx->state_log[*pidx] == NULL)
- return -1;
- cur_nodes = &mctx->state_log[*pidx]->nodes;
err = re_node_set_insert (eps_via_nodes, node);
if (BE (err < 0, 0))
return -2;
@@ -1269,7 +1270,7 @@ proceed_next_node (const re_match_context_t *mctx, int nregs, regmatch_t *regs,
/* Otherwise, push the second epsilon-transition on the fail stack. */
else if (fs != NULL
&& push_fail_stack (fs, *pidx, candidate, nregs, regs,
- eps_via_nodes) != REG_NOERROR)
+ eps_via_nodes))
return -2;
/* We know we are going to exit. */
@@ -3831,7 +3832,6 @@ check_node_accept_bytes (const re_dfa_t *dfa, int node_idx,
const int32_t *table, *indirect;
const unsigned char *weights, *extra;
const char *collseqwc;
- int32_t idx;
/* This #include defines a local function! */
# include <locale/weight.h>
@@ -3889,15 +3889,20 @@ check_node_accept_bytes (const re_dfa_t *dfa, int node_idx,
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB);
indirect = (const int32_t *)
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB);
- idx = findidx (&cp);
+ int32_t idx = findidx (&cp);
if (idx > 0)
for (i = 0; i < cset->nequiv_classes; ++i)
{
int32_t equiv_class_idx = cset->equiv_classes[i];
- size_t weight_len = weights[idx];
- if (weight_len == weights[equiv_class_idx])
+ size_t weight_len = weights[idx & 0xffffff];
+ if (weight_len == weights[equiv_class_idx & 0xffffff]
+ && (idx >> 24) == (equiv_class_idx >> 24))
{
int cnt = 0;
+
+ idx &= 0xffffff;
+ equiv_class_idx &= 0xffffff;
+
while (cnt <= weight_len
&& (weights[equiv_class_idx + 1 + cnt]
== weights[idx + 1 + cnt]))
diff --git a/replace.c b/replace.c
index 8a5e689b..62cab761 100644
--- a/replace.c
+++ b/replace.c
@@ -1,4 +1,29 @@
/*
+ * replace.c -- Get replacement versions of functions.
+ */
+
+/*
+ * Copyright (C) 1989, 1991-2009 the Free Software Foundation, Inc.
+ *
+ * This file is part of GAWK, the GNU implementation of the
+ * AWK Programming Language.
+ *
+ * GAWK 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 3 of the License, or
+ * (at your option) any later version.
+ *
+ * GAWK 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
+ */
+
+/*
* Do all necessary includes here, so that we don't have to worry about
* overlapping includes in the files in missing.d.
*/
diff --git a/test/ChangeLog b/test/ChangeLog
index 0284ac23..2b818b63 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,121 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Fri Jul 3 13:04:55 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (charset-tests): Moved tests that can fail based on
+ character set and locale issues into a separate section.
+
+Wed Jun 24 22:30:31 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * lintold.awk: Changed to avoid floating point problems on VMS.
+
+Wed Jun 24 05:39:00 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * printfbad2.awk, printfbad2.ok: Adjusted for systems where sed
+ will add a final newline if the input didn't contain one.
+
+Mon Jun 22 00:44:50 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * getlndir.awk (SRCDIR): Allow caller to override "." as directory.
+ * intformat.awk (HUGEVAL): Allow caller to override the largest
+ value, and restructure 10^x and 2^y loops to use it without
+ overflowing on non-IEEE floating pointing hosts.
+
+Tue Jun 23 05:26:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (MACHINE_TESTS): Move fmtspcl to here per Pat Rankin.
+
+Fri Jun 19 14:26:55 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (GAWK_EXT_TESTS): Fixed sorting of tests.
+ Removed ovrflow1 test since double1 is a superset; thanks
+ to Pat Rankin.
+ * (ovrflow1.awk, ovrflow1.ok): Removed.
+
+Thu Jun 18 05:46:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (localenl): Per Michal Jaegermann, send stderr output
+ to /dev/null.
+ * (machine-tests): Moved several tests to new section for tests
+ whose output can vary by hardware.
+
+Thu Jun 11 04:50:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (lc_num1): Don't need --posix, changed command line
+ so that AWKPATH influences again. Thanks to Corinna Vinschen
+ for making me fix this.
+
+Wed Jun 10 08:28:13 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (lc_num1, printfbad2): Fix so building outside the
+ source directory works.
+
+Thu May 21 21:10:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Fri May 15 14:38:16 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (paramres): New test.
+ * paramres.awk, paramres.ok: New files.
+
+Fri Mar 27 10:57:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (printfbad2): New test.
+ * printfbad2.awk, printfbad2.in, printfbad2.ok: New files.
+
+Tue Feb 3 22:08:27 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (uparrfs): New test.
+ * uparrfs.awk, uparrfs.in, uparrfs.ok: New files.
+
+Mon Jan 5 22:53:26 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (getlndir): New test.
+ * getlndir.awk, getlndir.ok: New files.
+
+Mon Dec 29 22:46:10 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mbprintf3): New test.
+ * mbprintf3.awk, mbprintf3.in, mbprintf3.ok: New files.
+
+Thu Dec 18 20:57:39 2008 Stepan Kasal <skasal@redhat.com>
+
+ * lc_num1.awk, lc_num1.ok: Test that the quote modifier in
+ printf is not sticky.
+ * Makefile.am: Add it.
+ * Gentests: Allow _ in test names.
+
+Thu Dec 11 21:36:11 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mbstr1): New test.
+ * mbstr1.awk, mbstr1.ok: New files.
+
+Thu Dec 4 22:44:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (closebad): New test.
+ * closebad.awk, closebad.ok: New files.
+
+Thu Jul 31 21:44:21 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (match3, gsubtst6): New tests.
+ * match3.awk, match3.in, match3.ok: New files.
+ * gsubtst6.awk, gsubtst6.ok: New files.
+
+Fri May 2 12:43:51 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * Makefile.am (mbfw1): Add code for test to use a UTF locale.
+
+Wed Apr 23 22:13:47 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (funlen, mbfw1, mbprintf1, mbprintf2): New tests.
+ * funlen.awk, funlen.in, funlen.ok: New files.
+ * mbfw1.awk, mbfw1.in, mbfw1.ok: New files.
+ * mbprintf1.awk, mbprintf1.in, mbprintf1.ok: New files.
+ * mbprintf2.awk, mbprintf2.ok: New files.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/test/Gentests b/test/Gentests
index 58416e42..b4d62f41 100755
--- a/test/Gentests
+++ b/test/Gentests
@@ -45,7 +45,7 @@ BEGIN {
next
}
-/^[a-zA-Z][a-zA-Z0-9]*:/ {
+/^[a-zA-Z_][a-zA-Z0-9_]*:/ {
# remember all targets from Makefile.am
sub(/:.*/,"")
targets[$0]
diff --git a/test/Makefile.am b/test/Makefile.am
index 9b4137de..cea095fb 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,7 +1,7 @@
#
# test/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 1988-2006 the Free Software Foundation, Inc.
+# Copyright (C) 1988-2008 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -107,6 +107,8 @@ EXTRA_DIST = \
clobber.ok \
clos1way.awk \
clos1way.ok \
+ closebad.awk \
+ closebad.ok \
clsflnam.awk \
clsflnam.in \
clsflnam.ok \
@@ -211,6 +213,9 @@ EXTRA_DIST = \
fstabplus.awk \
fstabplus.in \
fstabplus.ok \
+ funlen.awk \
+ funlen.in \
+ funlen.ok \
funsemnl.awk \
funsemnl.ok \
funsmnam.awk \
@@ -239,6 +244,8 @@ EXTRA_DIST = \
getlnbuf.awk \
getlnbuf.in \
getlnbuf.ok \
+ getlndir.awk \
+ getlndir.ok \
getlnhd.awk \
getlnhd.ok \
getnr2tb.awk \
@@ -267,6 +274,8 @@ EXTRA_DIST = \
gsubtst5.awk \
gsubtst5.in \
gsubtst5.ok \
+ gsubtst6.awk \
+ gsubtst6.ok \
gtlnbufv.awk \
hex.awk \
hex.ok \
@@ -300,6 +309,8 @@ EXTRA_DIST = \
intprec.ok \
iobug1.awk \
iobug1.ok \
+ lc_num1.awk \
+ lc_num1.ok \
leaddig.awk \
leaddig.ok \
leadnl.awk \
@@ -332,8 +343,24 @@ EXTRA_DIST = \
match1.ok \
match2.awk \
match2.ok \
+ match3.awk \
+ match3.in \
+ match3.ok \
math.awk \
math.ok \
+ mbfw1.awk \
+ mbfw1.in \
+ mbfw1.ok \
+ mbprintf1.awk \
+ mbprintf1.in \
+ mbprintf1.ok \
+ mbprintf2.awk \
+ mbprintf2.ok \
+ mbprintf3.awk \
+ mbprintf3.in \
+ mbprintf3.ok \
+ mbstr1.awk \
+ mbstr1.ok \
membug1.awk \
membug1.in \
membug1.ok \
@@ -424,10 +451,10 @@ EXTRA_DIST = \
out1.ok \
out2.ok \
out3.ok \
- ovrflow1.awk \
- ovrflow1.ok \
paramdup.awk \
paramdup.ok \
+ paramres.awk \
+ paramres.ok \
paramtyp.awk \
paramtyp.ok \
parse1.awk \
@@ -463,6 +490,9 @@ EXTRA_DIST = \
printf1.ok \
printfbad1.awk \
printfbad1.ok \
+ printfbad2.awk \
+ printfbad2.in \
+ printfbad2.ok \
printfloat.awk \
printlang.awk \
prmarscl.awk \
@@ -615,6 +645,9 @@ EXTRA_DIST = \
uninitialized.ok \
unterm.awk \
unterm.ok \
+ uparrfs.awk \
+ uparrfs.in \
+ uparrfs.ok \
whiny.awk \
whiny.in \
whiny.ok \
@@ -648,43 +681,52 @@ TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl
CLEANFILES = core core.* fmtspcl.ok
# try to keep these sorted
-BASIC_TESTS = addcomma anchgsub argarray arrayparm arrayref arrymem1 \
- arrayprm2 arrayprm3 arryref2 arryref3 arryref4 arryref5 arynasty \
- arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
- aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \
- clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt datanonl defref \
- delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmtspcl fmttest fnamedat \
- fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \
- fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \
- getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \
- gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest intformat \
- intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \
- messages minusstr mmap8k mtchi18n nasty nasty2 negexp nested nfldstr \
- nfneg nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \
- noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \
- ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf ovrflow1 paramdup paramtyp \
- parse1 parsefld parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
- prt1eval prtoeval psx96sub rand rebt8b1 rebt8b2 redfilnm regeq \
- reindops reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 \
- rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \
- sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \
- strcat1 strtod strnum1 subamp subi18n subsepnm subslash substr swaplns \
- synerr1 synerr2 tradanch \
- tweakfld uninit2 uninit3 uninit4 uninitialized unterm wideidx wideidx2 \
- widesub widesub2 widesub3 widesub4 wjposer1 zeroe0 zeroflag zero2
+BASIC_TESTS = \
+ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 arrayref \
+ arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty arynocls \
+ aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 \
+ arysubnm asgext awkpath back89 backgsub childin clobber closebad \
+ clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt \
+ datanonl defref delarpm2 delarprm delfunc dynlj eofsplit exitval1 \
+ exitval2 fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm \
+ fnmisc fordel forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \
+ funstack getline getline2 getline3 getlnbuf getnr2tb getnr2tm \
+ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \
+ hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \
+ longsub longwrds manglprm math membug1 messages minusstr mmap8k \
+ mtchi18n nasty nasty2 negexp nested nfldstr nfneg nfset nlfldsep \
+ nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl noparms \
+ nors nulrsend numindex numsubstr octsub ofmt ofmtbig ofmtfidl ofmts \
+ onlynl opasnidx opasnslf paramdup paramres paramtyp parse1 parsefld \
+ parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
+ prt1eval prtoeval psx96sub rand rebt8b1 redfilnm regeq reindops \
+ reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \
+ rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin sortempty \
+ splitargv splitarr splitdef splitvar splitwht strcat1 strnum1 \
+ strtod subamp subi18n subsepnm subslash substr swaplns synerr1 \
+ synerr2 tradanch tweakfld uninit2 uninit3 uninit4 uninitialized \
+ unterm uparrfs wideidx wideidx2 widesub widesub2 widesub3 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
UNIX_TESTS = fflush getlnhd localenl pid pipeio1 pipeio2 poundbang space strftlng
-GAWK_EXT_TESTS = argtest asort asorti backw badargs binmode1 clos1way devfd devfd1 devfd2 double1 double2 \
- fieldwdth fsfwfs fwtest fwtest2 gensub gensub2 gnuops2 gnuops3 gnureops icasefs \
- icasers igncdym igncfs ignrcase ignrcas2 lint lintold match1 match2 manyfiles \
- nondec nondec2 posix procinfs printfbad1 regx8bit rebuf reint reint2 rsstart1 \
- rsstart2 rsstart3 rstest6 shadow sort1 strtonum strftime whiny
+GAWK_EXT_TESTS = \
+ argtest backw badargs binmode1 clos1way devfd devfd1 devfd2 fieldwdth \
+ fsfwfs funlen fwtest fwtest2 gensub gensub2 getlndir gnuops2 gnuops3 \
+ gnureops icasefs icasers igncdym igncfs ignrcas2 ignrcase lint lintold \
+ manyfiles match1 match2 match3 mbprintf3 mbstr1 nondec nondec2 posix \
+ printfbad1 printfbad2 procinfs rebuf regx8bit reint reint2 rsstart1 \
+ rsstart2 rsstart3 rstest6 shadow strftime strtonum
EXTRA_TESTS = regtest inftest
INET_TESTS = inetechu inetecht inetdayu inetdayt
+MACHINE_TESTS = double1 double2 fmtspcl intformat
+
+LOCALE_CHARSET_TESTS = asort asorti fmttest fnarydel fnparydl lc_num1 mbfw1 \
+ mbprintf1 mbprintf2 rebt8b2 sort1 sprintfc whiny
+
# List of the tests which should be run with --lint option:
NEED_LINT = defref fmtspcl noeffect nofmtch shadow uninit2 uninit3 uninit4 uninitialized
@@ -714,7 +756,9 @@ check: msg \
printlang \
basic-msg-start basic basic-msg-end \
unix-msg-start unix-tests unix-msg-end \
- extend-msg-start gawk-extensions extend-msg-end
+ extend-msg-start gawk-extensions extend-msg-end \
+ machine-msg-start machine-tests machine-msg-end \
+ charset-msg-start charset-tests charset-msg-end
@$(MAKE) pass-fail
basic: $(BASIC_TESTS)
@@ -723,10 +767,14 @@ unix-tests: $(UNIX_TESTS)
gawk-extensions: $(GAWK_EXT_TESTS)
+charset-tests: $(LOCALE_CHARSET_TESTS)
+
extra: $(EXTRA_TESTS) inet
inet: inetmesg $(INET_TESTS)
+machine-tests: $(MACHINE_TESTS)
+
msg::
@echo ''
@echo 'Any output from "cmp" is bad news, although some differences'
@@ -755,6 +803,25 @@ extend-msg-start:
extend-msg-end:
@echo "======== Done with gawk extension tests ========"
+machine-msg-start:
+ @echo "======== Starting machine-specific tests ========"
+
+machine-msg-end:
+ @echo "======== Done with machine-specific tests ========"
+
+charset-msg-start:
+ @echo "======== Starting tests that can vary based on character set or locale support ========"
+
+charset-msg-end:
+ @echo "======== Done with tests that can vary based on character set or locale support ========"
+
+
+lc_num1:
+ @echo $@
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
# This test is a PITA because increasingly, /tmp is getting
# mounted noexec. So, we'll test it locally. Sigh.
@@ -1143,9 +1210,48 @@ reint2::
localenl::
@echo $@
- @$(srcdir)/$@.sh >_$@
+ @$(srcdir)/$@.sh >_$@ 2>/dev/null
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+mbprintf1::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf2::
+ @echo $@
+ @GAWKLOCALE=ja_JP.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf3::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbfw1::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+gsubtst6::
+ @echo $@
+ @GAWKLOCALE=C ; $(AWK) -f $(srcdir)/$@.awk > _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbstr1::
+ @echo $@
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+printfbad2: printfbad2.ok
+ @echo $@
+ @$(AWK) --lint -f $(srcdir)/$@.awk $(srcdir)/$@.in 2>&1 | sed 's;\$(srcdir)/;;g' >_$@ || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
# Targets generated for other tests:
diff --git a/test/Makefile.in b/test/Makefile.in
index 0f273e65..75061808 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 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.
@@ -17,7 +18,7 @@
#
# test/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 1988-2006 the Free Software Foundation, Inc.
+# Copyright (C) 1988-2008 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -38,8 +39,9 @@
#
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -64,21 +66,25 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
$(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/isc-posix.m4 \
$(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/nls.m4 \
- $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
- $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \
- $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/longlong.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+ $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/socket.m4 \
+ $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \
+ $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -97,11 +103,15 @@ CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
@@ -112,11 +122,15 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+LD = @LD@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
+LIBSIGSEGV = @LIBSIGSEGV@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
@@ -126,7 +140,12 @@ MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
@@ -136,6 +155,9 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POSUB = @POSUB@
RANLIB = @RANLIB@
+SED = @SED@
+SEGVINCLUDE = @SEGVINCLUDE@
+SEGVSUBDIR = @SEGVSUBDIR@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
@@ -145,6 +167,7 @@ USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
@@ -152,6 +175,7 @@ abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -182,6 +206,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@@ -192,8 +217,10 @@ psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
+subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = \
@@ -280,6 +307,8 @@ EXTRA_DIST = \
clobber.ok \
clos1way.awk \
clos1way.ok \
+ closebad.awk \
+ closebad.ok \
clsflnam.awk \
clsflnam.in \
clsflnam.ok \
@@ -384,6 +413,9 @@ EXTRA_DIST = \
fstabplus.awk \
fstabplus.in \
fstabplus.ok \
+ funlen.awk \
+ funlen.in \
+ funlen.ok \
funsemnl.awk \
funsemnl.ok \
funsmnam.awk \
@@ -412,6 +444,8 @@ EXTRA_DIST = \
getlnbuf.awk \
getlnbuf.in \
getlnbuf.ok \
+ getlndir.awk \
+ getlndir.ok \
getlnhd.awk \
getlnhd.ok \
getnr2tb.awk \
@@ -440,6 +474,8 @@ EXTRA_DIST = \
gsubtst5.awk \
gsubtst5.in \
gsubtst5.ok \
+ gsubtst6.awk \
+ gsubtst6.ok \
gtlnbufv.awk \
hex.awk \
hex.ok \
@@ -473,6 +509,8 @@ EXTRA_DIST = \
intprec.ok \
iobug1.awk \
iobug1.ok \
+ lc_num1.awk \
+ lc_num1.ok \
leaddig.awk \
leaddig.ok \
leadnl.awk \
@@ -505,8 +543,24 @@ EXTRA_DIST = \
match1.ok \
match2.awk \
match2.ok \
+ match3.awk \
+ match3.in \
+ match3.ok \
math.awk \
math.ok \
+ mbfw1.awk \
+ mbfw1.in \
+ mbfw1.ok \
+ mbprintf1.awk \
+ mbprintf1.in \
+ mbprintf1.ok \
+ mbprintf2.awk \
+ mbprintf2.ok \
+ mbprintf3.awk \
+ mbprintf3.in \
+ mbprintf3.ok \
+ mbstr1.awk \
+ mbstr1.ok \
membug1.awk \
membug1.in \
membug1.ok \
@@ -597,10 +651,10 @@ EXTRA_DIST = \
out1.ok \
out2.ok \
out3.ok \
- ovrflow1.awk \
- ovrflow1.ok \
paramdup.awk \
paramdup.ok \
+ paramres.awk \
+ paramres.ok \
paramtyp.awk \
paramtyp.ok \
parse1.awk \
@@ -636,6 +690,9 @@ EXTRA_DIST = \
printf1.ok \
printfbad1.awk \
printfbad1.ok \
+ printfbad2.awk \
+ printfbad2.in \
+ printfbad2.ok \
printfloat.awk \
printlang.awk \
prmarscl.awk \
@@ -788,6 +845,9 @@ EXTRA_DIST = \
uninitialized.ok \
unterm.awk \
unterm.ok \
+ uparrfs.awk \
+ uparrfs.in \
+ uparrfs.ok \
whiny.awk \
whiny.in \
whiny.ok \
@@ -821,40 +881,48 @@ TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl
CLEANFILES = core core.* fmtspcl.ok
# try to keep these sorted
-BASIC_TESTS = addcomma anchgsub argarray arrayparm arrayref arrymem1 \
- arrayprm2 arrayprm3 arryref2 arryref3 arryref4 arryref5 arynasty \
- arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
- aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \
- clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt datanonl defref \
- delarprm delarpm2 delfunc dynlj eofsplit exitval1 exitval2 fldchg fldchgnf fmtspcl fmttest fnamedat \
- fnarray fnarray2 fnarydel fnaryscl fnasgnm fnmisc fnparydl \
- fordel forsimp fsbs fsspcoln fsrs fstabplus funsemnl funsmnam funstack getline \
- getline2 getline3 getlnbuf getnr2tb getnr2tm gsubasgn gsubtest \
- gsubtst2 gsubtst3 gsubtst4 gsubtst5 hex hsprint inputred intest intformat \
- intprec iobug1 leaddig leadnl litoct longsub longwrds manglprm math membug1 \
- messages minusstr mmap8k mtchi18n nasty nasty2 negexp nested nfldstr \
- nfneg nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \
- noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \
- ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf ovrflow1 paramdup paramtyp \
- parse1 parsefld parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
- prt1eval prtoeval psx96sub rand rebt8b1 rebt8b2 redfilnm regeq \
- reindops reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 \
- rstest2 rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin \
- sortempty splitargv splitarr splitdef splitvar splitwht sprintfc \
- strcat1 strtod strnum1 subamp subi18n subsepnm subslash substr swaplns \
- synerr1 synerr2 tradanch \
- tweakfld uninit2 uninit3 uninit4 uninitialized unterm wideidx wideidx2 \
- widesub widesub2 widesub3 widesub4 wjposer1 zeroe0 zeroflag zero2
+BASIC_TESTS = \
+ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 arrayref \
+ arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty arynocls \
+ aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 \
+ arysubnm asgext awkpath back89 backgsub childin clobber closebad \
+ clsflnam compare compare2 concat1 concat2 concat3 concat4 convfmt \
+ datanonl defref delarpm2 delarprm delfunc dynlj eofsplit exitval1 \
+ exitval2 fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm \
+ fnmisc fordel forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \
+ funstack getline getline2 getline3 getlnbuf getnr2tb getnr2tm \
+ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \
+ hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \
+ longsub longwrds manglprm math membug1 messages minusstr mmap8k \
+ mtchi18n nasty nasty2 negexp nested nfldstr nfneg nfset nlfldsep \
+ nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl noparms \
+ nors nulrsend numindex numsubstr octsub ofmt ofmtbig ofmtfidl ofmts \
+ onlynl opasnidx opasnslf paramdup paramres paramtyp parse1 parsefld \
+ parseme pcntplus prdupval prec printf0 printf1 prmarscl prmreuse \
+ prt1eval prtoeval psx96sub rand rebt8b1 redfilnm regeq reindops \
+ reparse resplit rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \
+ rstest3 rstest4 rstest5 rswhite scalar sclforin sclifin sortempty \
+ splitargv splitarr splitdef splitvar splitwht strcat1 strnum1 \
+ strtod subamp subi18n subsepnm subslash substr swaplns synerr1 \
+ synerr2 tradanch tweakfld uninit2 uninit3 uninit4 uninitialized \
+ unterm uparrfs wideidx wideidx2 widesub widesub2 widesub3 \
+ widesub4 wjposer1 zero2 zeroe0 zeroflag
UNIX_TESTS = fflush getlnhd localenl pid pipeio1 pipeio2 poundbang space strftlng
-GAWK_EXT_TESTS = argtest asort asorti backw badargs binmode1 clos1way devfd devfd1 devfd2 double1 double2 \
- fieldwdth fsfwfs fwtest fwtest2 gensub gensub2 gnuops2 gnuops3 gnureops icasefs \
- icasers igncdym igncfs ignrcase ignrcas2 lint lintold match1 match2 manyfiles \
- nondec nondec2 posix procinfs printfbad1 regx8bit rebuf reint reint2 rsstart1 \
- rsstart2 rsstart3 rstest6 shadow sort1 strtonum strftime whiny
+GAWK_EXT_TESTS = \
+ argtest backw badargs binmode1 clos1way devfd devfd1 devfd2 fieldwdth \
+ fsfwfs funlen fwtest fwtest2 gensub gensub2 getlndir gnuops2 gnuops3 \
+ gnureops icasefs icasers igncdym igncfs ignrcas2 ignrcase lint lintold \
+ manyfiles match1 match2 match3 mbprintf3 mbstr1 nondec nondec2 posix \
+ printfbad1 printfbad2 procinfs rebuf regx8bit reint reint2 rsstart1 \
+ rsstart2 rsstart3 rstest6 shadow strftime strtonum
EXTRA_TESTS = regtest inftest
INET_TESTS = inetechu inetecht inetdayu inetdayt
+MACHINE_TESTS = double1 double2 fmtspcl intformat
+LOCALE_CHARSET_TESTS = asort asorti fmttest fnarydel fnparydl lc_num1 mbfw1 \
+ mbprintf1 mbprintf2 rebt8b2 sort1 sprintfc whiny
+
# List of the tests which should be run with --lint option:
NEED_LINT = defref fmtspcl noeffect nofmtch shadow uninit2 uninit3 uninit4 uninitialized
@@ -876,14 +944,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Maketests $(am__configur
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu test/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu test/Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu test/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu test/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -901,6 +969,13 @@ $(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
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
tags: TAGS
TAGS:
@@ -924,13 +999,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -959,11 +1038,12 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-clean-am: clean-generic mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-am
-rm -f Makefile
@@ -975,6 +1055,8 @@ dvi-am:
html: html-am
+html-am:
+
info: info-am
info-am:
@@ -983,18 +1065,28 @@ install-data-am:
install-dvi: install-dvi-am
+install-dvi-am:
+
install-exec-am:
install-html: install-html-am
+install-html-am:
+
install-info: install-info-am
+install-info-am:
+
install-man:
install-pdf: install-pdf-am
+install-pdf-am:
+
install-ps: install-ps-am
+install-ps-am:
+
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -1003,7 +1095,7 @@ maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
-mostlyclean-am: mostlyclean-generic
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
pdf: pdf-am
@@ -1017,15 +1109,16 @@ uninstall-am:
.MAKE: install-am install-strip
-.PHONY: all all-am check check-am clean clean-generic distclean \
- distclean-generic distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ distclean distclean-generic distclean-libtool distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
# Message stuff is to make it a little easier to follow.
@@ -1035,7 +1128,9 @@ check: msg \
printlang \
basic-msg-start basic basic-msg-end \
unix-msg-start unix-tests unix-msg-end \
- extend-msg-start gawk-extensions extend-msg-end
+ extend-msg-start gawk-extensions extend-msg-end \
+ machine-msg-start machine-tests machine-msg-end \
+ charset-msg-start charset-tests charset-msg-end
@$(MAKE) pass-fail
basic: $(BASIC_TESTS)
@@ -1044,10 +1139,14 @@ unix-tests: $(UNIX_TESTS)
gawk-extensions: $(GAWK_EXT_TESTS)
+charset-tests: $(LOCALE_CHARSET_TESTS)
+
extra: $(EXTRA_TESTS) inet
inet: inetmesg $(INET_TESTS)
+machine-tests: $(MACHINE_TESTS)
+
msg::
@echo ''
@echo 'Any output from "cmp" is bad news, although some differences'
@@ -1076,6 +1175,24 @@ extend-msg-start:
extend-msg-end:
@echo "======== Done with gawk extension tests ========"
+machine-msg-start:
+ @echo "======== Starting machine-specific tests ========"
+
+machine-msg-end:
+ @echo "======== Done with machine-specific tests ========"
+
+charset-msg-start:
+ @echo "======== Starting tests that can vary based on character set or locale support ========"
+
+charset-msg-end:
+ @echo "======== Done with tests that can vary based on character set or locale support ========"
+
+lc_num1:
+ @echo $@
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
# This test is a PITA because increasingly, /tmp is getting
# mounted noexec. So, we'll test it locally. Sigh.
#
@@ -1463,7 +1580,47 @@ reint2::
localenl::
@echo $@
- @$(srcdir)/$@.sh >_$@
+ @$(srcdir)/$@.sh >_$@ 2>/dev/null
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf1::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf2::
+ @echo $@
+ @GAWKLOCALE=ja_JP.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbprintf3::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbfw1::
+ @echo $@
+ @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \
+ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+gsubtst6::
+ @echo $@
+ @GAWKLOCALE=C ; $(AWK) -f $(srcdir)/$@.awk > _$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+mbstr1::
+ @echo $@
+ @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \
+ AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+printfbad2: printfbad2.ok
+ @echo $@
+ @$(AWK) --lint -f $(srcdir)/$@.awk $(srcdir)/$@.in 2>&1 | sed 's;\$(srcdir)/;;g' >_$@ || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
Gt-dummy:
# file Maketests, generated from Makefile.am by the Gentests program
@@ -1482,23 +1639,23 @@ arrayparm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayref:
- @echo arrayref
+arrayprm2:
+ @echo arrayprm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrymem1:
- @echo arrymem1
+arrayprm3:
+ @echo arrayprm3
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm2:
- @echo arrayprm2
+arrayref:
+ @echo arrayref
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm3:
- @echo arrayprm3
+arrymem1:
+ @echo arrymem1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -1592,6 +1749,11 @@ childin:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+closebad:
+ @echo closebad
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
clsflnam:
@echo clsflnam
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1632,13 +1794,13 @@ defref:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarprm:
- @echo delarprm
+delarpm2:
+ @echo delarpm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarpm2:
- @echo delarpm2
+delarprm:
+ @echo delarprm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -1672,11 +1834,6 @@ fldchgnf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fmttest:
- @echo fmttest
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnamedat:
@echo fnamedat
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1692,11 +1849,6 @@ fnarray2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnarydel:
- @echo fnarydel
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnaryscl:
@echo fnaryscl
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1712,11 +1864,6 @@ fnmisc:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnparydl:
- @echo fnparydl
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fordel:
@echo fordel
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1822,11 +1969,6 @@ intest:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-intformat:
- @echo intformat
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
intprec:
@echo intprec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2002,13 +2144,13 @@ opasnslf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-ovrflow1:
- @echo ovrflow1
+paramdup:
+ @echo paramdup
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-paramdup:
- @echo paramdup
+paramres:
+ @echo paramres
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -2087,11 +2229,6 @@ rebt8b1:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-rebt8b2:
- @echo rebt8b2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
regeq:
@echo regeq
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2197,26 +2334,21 @@ splitwht:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-sprintfc:
- @echo sprintfc
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
strcat1:
@echo strcat1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strtod:
- @echo strtod
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
strnum1:
@echo strnum1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strtod:
+ @echo strtod
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
subsepnm:
@echo subsepnm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2272,11 +2404,21 @@ unterm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+uparrfs:
+ @echo uparrfs
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
wjposer1:
@echo wjposer1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+zero2:
+ @echo zero2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
zeroe0:
@echo zeroe0
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2287,26 +2429,11 @@ zeroflag:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-zero2:
- @echo zero2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
getlnhd:
@echo getlnhd
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-asort:
- @echo asort
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-asorti:
- @echo asorti
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
backw:
@echo backw
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2317,16 +2444,6 @@ clos1way:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-double1:
- @echo double1
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-double2:
- @echo double2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fieldwdth:
@echo fieldwdth
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2337,6 +2454,11 @@ fsfwfs:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+funlen:
+ @echo funlen
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
fwtest:
@echo fwtest
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2357,6 +2479,11 @@ gensub2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+getlndir:
+ @echo getlndir
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
gnuops2:
@echo gnuops2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2417,6 +2544,11 @@ match2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+match3:
+ @echo match3
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
nondec:
@echo nondec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2427,18 +2559,13 @@ posix:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-procinfs:
- @echo procinfs
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
printfbad1:
@echo printfbad1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-regx8bit:
- @echo regx8bit
+procinfs:
+ @echo procinfs
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -2447,6 +2574,11 @@ rebuf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+regx8bit:
+ @echo regx8bit
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
rstest6:
@echo rstest6
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -2457,14 +2589,64 @@ shadow:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strtonum:
+ @echo strtonum
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double1:
+ @echo double1
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double2:
+ @echo double2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+intformat:
+ @echo intformat
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asort:
+ @echo asort
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asorti:
+ @echo asorti
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fmttest:
+ @echo fmttest
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnarydel:
+ @echo fnarydel
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnparydl:
+ @echo fnparydl
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+rebt8b2:
+ @echo rebt8b2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
sort1:
@echo sort1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strtonum:
- @echo strtonum
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+sprintfc:
+ @echo sprintfc
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
# end of file Maketests
@@ -2526,6 +2708,7 @@ efence:
rm _$$i ; \
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:
diff --git a/test/Maketests b/test/Maketests
index 8edf10c5..0da281d2 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -15,23 +15,23 @@ arrayparm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayref:
- @echo arrayref
+arrayprm2:
+ @echo arrayprm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrymem1:
- @echo arrymem1
+arrayprm3:
+ @echo arrayprm3
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm2:
- @echo arrayprm2
+arrayref:
+ @echo arrayref
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-arrayprm3:
- @echo arrayprm3
+arrymem1:
+ @echo arrymem1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -125,6 +125,11 @@ childin:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+closebad:
+ @echo closebad
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
clsflnam:
@echo clsflnam
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -165,13 +170,13 @@ defref:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarprm:
- @echo delarprm
+delarpm2:
+ @echo delarpm2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-delarpm2:
- @echo delarpm2
+delarprm:
+ @echo delarprm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -205,11 +210,6 @@ fldchgnf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fmttest:
- @echo fmttest
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnamedat:
@echo fnamedat
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -225,11 +225,6 @@ fnarray2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnarydel:
- @echo fnarydel
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fnaryscl:
@echo fnaryscl
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -245,11 +240,6 @@ fnmisc:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-fnparydl:
- @echo fnparydl
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fordel:
@echo fordel
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -355,11 +345,6 @@ intest:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-intformat:
- @echo intformat
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
intprec:
@echo intprec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -535,13 +520,13 @@ opasnslf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-ovrflow1:
- @echo ovrflow1
+paramdup:
+ @echo paramdup
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-paramdup:
- @echo paramdup
+paramres:
+ @echo paramres
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -620,11 +605,6 @@ rebt8b1:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-rebt8b2:
- @echo rebt8b2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
regeq:
@echo regeq
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -730,26 +710,21 @@ splitwht:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-sprintfc:
- @echo sprintfc
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
strcat1:
@echo strcat1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strtod:
- @echo strtod
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
strnum1:
@echo strnum1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strtod:
+ @echo strtod
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
subsepnm:
@echo subsepnm
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -805,11 +780,21 @@ unterm:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+uparrfs:
+ @echo uparrfs
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
wjposer1:
@echo wjposer1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+zero2:
+ @echo zero2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
zeroe0:
@echo zeroe0
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -820,26 +805,11 @@ zeroflag:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-zero2:
- @echo zero2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
getlnhd:
@echo getlnhd
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-asort:
- @echo asort
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-asorti:
- @echo asorti
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
backw:
@echo backw
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -850,16 +820,6 @@ clos1way:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-double1:
- @echo double1
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
-double2:
- @echo double2
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
fieldwdth:
@echo fieldwdth
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -870,6 +830,11 @@ fsfwfs:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+funlen:
+ @echo funlen
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
fwtest:
@echo fwtest
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -890,6 +855,11 @@ gensub2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+getlndir:
+ @echo getlndir
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
gnuops2:
@echo gnuops2
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -950,6 +920,11 @@ match2:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+match3:
+ @echo match3
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
nondec:
@echo nondec
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -960,18 +935,13 @@ posix:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-procinfs:
- @echo procinfs
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
- @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-
printfbad1:
@echo printfbad1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-regx8bit:
- @echo regx8bit
+procinfs:
+ @echo procinfs
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
@@ -980,6 +950,11 @@ rebuf:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+regx8bit:
+ @echo regx8bit
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
rstest6:
@echo rstest6
@AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -990,14 +965,64 @@ shadow:
@AWKPATH=$(srcdir) $(AWK) -f $@.awk --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+strtonum:
+ @echo strtonum
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double1:
+ @echo double1
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+double2:
+ @echo double2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+intformat:
+ @echo intformat
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asort:
+ @echo asort
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+asorti:
+ @echo asorti
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fmttest:
+ @echo fmttest
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnarydel:
+ @echo fnarydel
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+fnparydl:
+ @echo fnparydl
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
+rebt8b2:
+ @echo rebt8b2
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
+
sort1:
@echo sort1
@AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
-strtonum:
- @echo strtonum
- @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+sprintfc:
+ @echo sprintfc
+ @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@
# end of file Maketests
diff --git a/test/badargs.ok b/test/badargs.ok
index 28e42360..44528adf 100644
--- a/test/badargs.ok
+++ b/test/badargs.ok
@@ -6,6 +6,7 @@ POSIX options: GNU long options:
-F fs --field-separator=fs
-v var=val --assign=var=val
-m[fr] val
+ -O --optimize
-W compat --compat
-W copyleft --copyleft
-W copyright --copyright
diff --git a/test/closebad.awk b/test/closebad.awk
new file mode 100644
index 00000000..83133ae8
--- /dev/null
+++ b/test/closebad.awk
@@ -0,0 +1,7 @@
+BEGIN {
+ f = "/no/such/file/1"
+ print (getline junk < f)
+ print close(f)
+ f = "/no/such/file/2"
+ print close(f)
+}
diff --git a/test/closebad.ok b/test/closebad.ok
new file mode 100644
index 00000000..64861d87
--- /dev/null
+++ b/test/closebad.ok
@@ -0,0 +1,3 @@
+-1
+-1
+-1
diff --git a/test/funlen.awk b/test/funlen.awk
new file mode 100644
index 00000000..e881fcbf
--- /dev/null
+++ b/test/funlen.awk
@@ -0,0 +1,69 @@
+# Date: Sat, 15 Mar 2008 16:21:19 +0100
+# From: Hermann Peifer <peifer@gmx.net>
+# Subject: [Fwd: Gawk length(array) bug]
+# To: bug-gawk@gnu.org
+# Cc: Aharon Robbins <arnold@skeeve.com>
+# Message-id: <47DBE96F.1060406@gmx.net>
+#
+# See below. Regards, Hermann
+#
+# -------- Original Message --------
+# Subject: Re: Gawk length(array) question
+# Date: Sat, 15 Mar 2008 08:02:03 -0500
+# From: Ed Morton <morton@lsupcaemnt.com>
+# Newsgroups: comp.lang.awk
+# References: <47DBAE29.4050709@gmx.eu>
+#
+# On 3/15/2008 6:08 AM, Hermann Peifer wrote:
+# > Hi All,
+# >
+# > The Gawk man page says:
+# > > Starting with version 3.1.5, as a non-standard extension,
+# > > with an array argument, length() returns the number
+# > > of elements in the array.
+# >
+# > It looks like Gawk's length(array) extension does not work inside
+# > functions. Is this a bug or feature or am I missing something? See the
+# > example below. I am using GNU Awk 3.1.6
+# >
+# > $ cat testdata
+# > CD NAME
+# > AT Austria
+# > BG Bulgaria
+# > CH Switzerland
+# > DE Germany
+# > EE Estonia
+# > FR France
+# > GR Greece
+# >
+# > $ cat test.awk
+# >
+# Populate array
+NR > 1 { array[$1] = $2 }
+
+# Print array length and call function A
+END { print "array:",length(array) ; A(array) }
+
+function A(array_A) { print "array_A:", length(array_A) }
+# >
+# > $ gawk -f test.awk testdata
+# > array: 7
+# > gawk: test.awk:8: (FILENAME=data FNR=8) fatal: attempt to use array
+# > `array_A (from array)' in a scalar context
+# >
+# > BTW, there is no such error if I have asort(array_A) or asorti(array_A)
+# > inside the function.
+# >
+# > Hermann
+#
+# I get the same result with gawk 3.1.6 for cygwin. Obviously you can work
+# around
+# it since asort() returns the number of elements in an array just like
+# length()
+# is supposed to (or "for (i in array) lgth++" if you don't want to be
+# gawk-specific) but it does seem like a bug. Anyone know if there's a list of
+# known gawk bugs on-line somewhere?
+#
+# Ed.
+#
+#
diff --git a/test/funlen.in b/test/funlen.in
new file mode 100644
index 00000000..d0e0b04f
--- /dev/null
+++ b/test/funlen.in
@@ -0,0 +1,8 @@
+CD NAME
+AT Austria
+BG Bulgaria
+CH Switzerland
+DE Germany
+EE Estonia
+FR France
+GR Greece
diff --git a/test/funlen.ok b/test/funlen.ok
new file mode 100644
index 00000000..2e2ba9df
--- /dev/null
+++ b/test/funlen.ok
@@ -0,0 +1,2 @@
+array: 7
+array_A: 7
diff --git a/test/getlndir.awk b/test/getlndir.awk
new file mode 100644
index 00000000..250c5abb
--- /dev/null
+++ b/test/getlndir.awk
@@ -0,0 +1,7 @@
+BEGIN {
+ if (!SRCDIR) SRCDIR = "."
+ OFS = ", "
+ x = 4
+ ret = (getline x < SRCDIR)
+ print x, ret, ERRNO
+}
diff --git a/test/getlndir.ok b/test/getlndir.ok
new file mode 100644
index 00000000..a9bafa01
--- /dev/null
+++ b/test/getlndir.ok
@@ -0,0 +1 @@
+4, -1, Is a directory
diff --git a/test/gsubtst6.awk b/test/gsubtst6.awk
new file mode 100644
index 00000000..2b1df51d
--- /dev/null
+++ b/test/gsubtst6.awk
@@ -0,0 +1,24 @@
+# From: "T. X. G." <leopardie333@yahoo.com>
+# Subject: Bug in regular expression \B using DFA
+# Date: Wed, 16 Jul 2008 05:23:09 -0700 (PDT)
+# To: bug-gawk@gnu.org
+#
+# ~ gawk --version
+# GNU Awk 3.1.6
+# Copyright (C) 1989, 1991-2007 Free Software Foundation.
+#
+# ......
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see http://www.gnu.org/licenses/.
+#
+# ~ LC_ALL=C gawk 'BEGIN{x="abcd";gsub(/\B/,":",x);print x}'
+# a:b:cd
+#
+# ~ LC_ALL=en_US.UTF-8 gawk 'BEGIN{x="abcd";gsub(/\B/,":",x);print x}'
+# a:b:c:d
+#
+# ~ GAWK_NO_DFA=1 gawk 'BEGIN{x="abcd";gsub(/\B/,":",x);print x}'
+# a:b:c:d
+
+BEGIN { x = "abcd"; gsub(/\B/,":",x); print x }
diff --git a/test/gsubtst6.ok b/test/gsubtst6.ok
new file mode 100644
index 00000000..5b6bb798
--- /dev/null
+++ b/test/gsubtst6.ok
@@ -0,0 +1 @@
+a:b:c:d
diff --git a/test/intformat.awk b/test/intformat.awk
index 56ce606b..2f235290 100644
--- a/test/intformat.awk
+++ b/test/intformat.awk
@@ -46,6 +46,10 @@ function check_cons(fmt,base,rot,mexp, i,j,dig,res,s) {
}
BEGIN {
+ # this doesn't necessarily have to be exact since we're checking
+ # magnitude rather than precision
+ if (!HUGEVAL) HUGEVAL = 1.7976931348623157e+308
+
formats["%s"] = ""
formats["%d"] = ""
formats["%.0f"] = ""
@@ -53,13 +57,23 @@ BEGIN {
formats["0x%x"] = "non-decimal"
check(0,"0")
- for (i = 0; i <= 308; i++) {
+ limit = HUGEVAL / 10
+ value = 1
+ for (i = 0; ; i++) {
check(10^i,"10^"i)
check(-10^i,"-10^"i)
+ #[probably should test value against 10^i here]
+ if (value >= limit) break
+ value *= 10
}
- for (i = 0; i <= 1023; i++) {
+ limit = HUGEVAL / 2
+ value = 1
+ for (i = 0; ; i++) {
check(2^i,"2^"i)
check(-2^i,"-2^"i)
+ #[probably should test value against 2^i here]
+ if (value >= limit) break
+ value *= 2
}
check_cons("%d",10,1,9)
diff --git a/test/lc_num1.awk b/test/lc_num1.awk
new file mode 100644
index 00000000..c982a146
--- /dev/null
+++ b/test/lc_num1.awk
@@ -0,0 +1,4 @@
+# Bug reported by Ulrich Drepper.
+BEGIN {
+ printf("%'d %d\n", 1000000, 1000000)
+}
diff --git a/test/lc_num1.ok b/test/lc_num1.ok
new file mode 100644
index 00000000..1f65708e
--- /dev/null
+++ b/test/lc_num1.ok
@@ -0,0 +1 @@
+1,000,000 1000000
diff --git a/test/lintold.awk b/test/lintold.awk
index 61d12f2f..698187a3 100644
--- a/test/lintold.awk
+++ b/test/lintold.awk
@@ -8,7 +8,7 @@ BEGIN {
if (2 in a)
a[2] **= 2;
if ((2,3) in a)
- a[2,3] ^= 2 ** 3 ^ 15;
+ a[2,3] ^= 2 ** 3 ^ 5;
}
BEGIN {
FS = "ab"
diff --git a/test/match3.awk b/test/match3.awk
new file mode 100644
index 00000000..f3b6b838
--- /dev/null
+++ b/test/match3.awk
@@ -0,0 +1,46 @@
+# Date: Mon, 28 Jul 2008 17:25:32 +0200
+# From: Dirk Zimoch <dirk.zimoch@psi.ch>
+# Subject: match() prevents numeric strings from beeing treated numerically
+# To: bug-gawk@gnu.org
+# Message-id: <488DE4EC.6020400@psi.ch>
+#
+# In gawk version 3.1.5, numeric user input that is parsed with match() is not
+# recognized as "numeric string" any more. I.e. mixed string-numeric comparison
+# does not work any more. In version 3.1.1, it worked. (Even though the
+# documentation never explicitly mentioned this behavior for match(), as it does
+# for split(). But is says that "user input" should be treated that way.)
+#
+# awk 'BEGIN{match(".5",/.*/,a);print a[0]==.5?"OK":"FAULT"}'
+#
+# Version 3.1.1 prints OK, version 3.1.5 prints FAULT.
+#
+# awk '{match($0,/.*/,a);print a[0]==a[0]+0?"OK":"FAULT"}' << EOF
+# 5
+# 5.0
+# 0.5
+# .5
+# EOF
+#
+# Version 3.1.1 prints
+# OK
+# OK
+# OK
+# OK
+#
+# Version 3.1.5 prints
+# OK
+# FAULT
+# OK
+# FAULT
+#
+#
+# --
+# Dr. Dirk Zimoch
+# Paul Scherrer Institut, WBGB/006
+# 5232 Villigen PSI, Switzerland
+# Phone +41 56 310 5182
+#
+{
+ match($0,/.*/,a)
+ print a[0] == a[0]+0 ? "OK" : "FAULT"
+}
diff --git a/test/match3.in b/test/match3.in
new file mode 100644
index 00000000..a45babdd
--- /dev/null
+++ b/test/match3.in
@@ -0,0 +1,4 @@
+5
+5.0
+0.5
+.5
diff --git a/test/match3.ok b/test/match3.ok
new file mode 100644
index 00000000..b462a5a7
--- /dev/null
+++ b/test/match3.ok
@@ -0,0 +1,4 @@
+OK
+OK
+OK
+OK
diff --git a/test/mbfw1.awk b/test/mbfw1.awk
new file mode 100644
index 00000000..25d8e5cc
--- /dev/null
+++ b/test/mbfw1.awk
@@ -0,0 +1,40 @@
+# Date: Sun, 16 Mar 2008 18:51:14 +0100
+# From: Hermann Peifer <peifer@gmx.eu>
+# Subject: [Fwd: Gawk FIELDWIDTHS and multibyte characters]
+# To: bug-gawk@gnu.org
+# Message-id: <47DD5E12.2010403@gmx.eu>
+#
+# See below. Regards, Hermann
+#
+# --- Original Message ---
+#
+# Newsgroups: comp.lang.awk
+# From: Hermann Peifer <peifer@gmx.eu>
+# Date: Sun, 16 Mar 2008 01:23:38 -0700 (PDT)
+# Subject: Gawk FIELDWIDTHS and multibyte characters
+#
+# Hi,
+#
+# It looks to me that Gawk's FIELDWIDTHS extension is not aware of
+# multibyte characters, see my example below.
+#
+# $ cat testdata
+# CDRegion Commune Site
+# SEVästsverige Hallands län Kungsbacka
+# SESmåland med öarna Västra Götalands länGöteborg
+# SEKronoberg Alvesta Stenungsund
+#
+# $ file testdata
+# testdata: UTF-8 Unicode text
+#
+# $ awk 'BEGIN{FIELDWIDTHS = "2 20 20 20"}{print $4}' testdata
+# Site
+# Kungsbacka
+# länGöteborg
+# Stenungsund
+#
+# Can someone confirm?
+#
+# Hermann
+BEGIN { FIELDWIDTHS = "2 20 20 20" }
+{ print $4 }
diff --git a/test/mbfw1.in b/test/mbfw1.in
new file mode 100644
index 00000000..58ba36a3
--- /dev/null
+++ b/test/mbfw1.in
@@ -0,0 +1,4 @@
+CDRegion Commune Site
+SEVästsverige Hallands län Kungsbacka
+SESmåland med öarna Västra Götalands länGöteborg
+SEKronoberg Alvesta Stenungsund
diff --git a/test/mbfw1.ok b/test/mbfw1.ok
new file mode 100644
index 00000000..c0a80f1c
--- /dev/null
+++ b/test/mbfw1.ok
@@ -0,0 +1,4 @@
+Site
+Kungsbacka
+Göteborg
+Stenungsund
diff --git a/test/mbprintf1.awk b/test/mbprintf1.awk
new file mode 100644
index 00000000..974c109f
--- /dev/null
+++ b/test/mbprintf1.awk
@@ -0,0 +1 @@
+{ printf "%-7s|\n", $0 }
diff --git a/test/mbprintf1.in b/test/mbprintf1.in
new file mode 100644
index 00000000..8ee09e6d
--- /dev/null
+++ b/test/mbprintf1.in
@@ -0,0 +1,2 @@
+AAA
+ÅÃÆ
diff --git a/test/mbprintf1.ok b/test/mbprintf1.ok
new file mode 100644
index 00000000..40935cc8
--- /dev/null
+++ b/test/mbprintf1.ok
@@ -0,0 +1,2 @@
+AAA |
+ÅÃÆ |
diff --git a/test/mbprintf2.awk b/test/mbprintf2.awk
new file mode 100644
index 00000000..46c68135
--- /dev/null
+++ b/test/mbprintf2.awk
@@ -0,0 +1,4 @@
+BEGIN {
+ printf "%c\n", 65
+ printf "%c\n", "AA"
+}
diff --git a/test/mbprintf2.ok b/test/mbprintf2.ok
new file mode 100644
index 00000000..67aa8665
--- /dev/null
+++ b/test/mbprintf2.ok
@@ -0,0 +1,2 @@
+A
+A
diff --git a/test/mbprintf3.awk b/test/mbprintf3.awk
new file mode 100644
index 00000000..1f99bd8f
--- /dev/null
+++ b/test/mbprintf3.awk
@@ -0,0 +1 @@
+FNR == 1 { print $0; printf "%s\n", $0 }
diff --git a/test/mbprintf3.in b/test/mbprintf3.in
new file mode 100644
index 00000000..10971bc4
--- /dev/null
+++ b/test/mbprintf3.in
@@ -0,0 +1 @@
+COMPONENT suspended particulates <10 µm (air), day
diff --git a/test/mbprintf3.ok b/test/mbprintf3.ok
new file mode 100644
index 00000000..01317801
--- /dev/null
+++ b/test/mbprintf3.ok
@@ -0,0 +1,2 @@
+COMPONENT suspended particulates <10 µm (air), day
+COMPONENT suspended particulates <10 µm (air), day
diff --git a/test/mbstr1.awk b/test/mbstr1.awk
new file mode 100644
index 00000000..2abcff21
--- /dev/null
+++ b/test/mbstr1.awk
@@ -0,0 +1,4 @@
+BEGIN {
+ print length("\x81\x82\x83\x84")
+ print index("\x81\x82\x83\x84", "\x81\x82")
+}
diff --git a/test/mbstr1.ok b/test/mbstr1.ok
new file mode 100644
index 00000000..dcb4347b
--- /dev/null
+++ b/test/mbstr1.ok
@@ -0,0 +1,2 @@
+4
+1
diff --git a/test/ovrflow1.awk b/test/ovrflow1.awk
deleted file mode 100644
index 0506a06e..00000000
--- a/test/ovrflow1.awk
+++ /dev/null
@@ -1,82 +0,0 @@
-# From arnold@f7.net Thu Dec 15 08:57:08 2005
-# Return-Path: <arnold@f7.net>
-# Received: from localhost (skeeve [127.0.0.1])
-# by skeeve.com (8.12.11/8.12.11) with ESMTP id jBF6ubXX003003
-# for <arnold@localhost>; Thu, 15 Dec 2005 08:57:08 +0200
-# Received: from pop.012.net.il [84.95.5.221]
-# by localhost with POP3 (fetchmail-6.2.5)
-# for arnold@localhost (single-drop); Thu, 15 Dec 2005 08:57:08 +0200 (IST)
-# Received: from mtain3.012.net.il ([10.220.5.7])
-# by i_mss3.012.net.il (HyperSendmail v2004.12)
-# with ESMTP id <0IRI007F9SHYRDF0@i_mss3.012.net.il> for arobbins@012.net.il;
-# Thu, 15 Dec 2005 05:32:22 +0200 (IST)
-# Received: from i_mtain1.012.net.il ([10.220.20.4])
-# by i_mtain3.012.net.il (HyperSendmail v2004.12)
-# with ESMTP id <0IRI00CUNSHXU5D0@i_mtain3.012.net.il> for arobbins@012.net.il
-# (ORCPT arobbins@012.net.il); Thu, 15 Dec 2005 05:32:22 +0200 (IST)
-# Received: from f7.net ([64.34.169.74])
-# by i_mtain1.012.net.il (HyperSendmail v2004.12)
-# with ESMTP id <0IRI005JEPNHIG00@i_mtain1.012.net.il> for arobbins@012.net.il;
-# Thu, 15 Dec 2005 04:30:54 +0200 (IST)
-# Received: (from arnold@localhost) by f7.net (8.11.7-20030920/8.11.7)
-# id jBF2TkQ18162 for arobbins@012.net.il; Wed, 14 Dec 2005 20:29:46 -0600
-# Received: from fencepost.gnu.org (fencepost.gnu.org [199.232.76.164])
-# by f7.net (8.11.7-20030920/8.11.7) with ESMTP id jBF2Tis18148 for
-# <arnold@skeeve.com>; Wed, 14 Dec 2005 20:29:44 -0600
-# Received: from monty-python.gnu.org ([199.232.76.173])
-# by fencepost.gnu.org with esmtp (Exim 4.34)
-# id 1Emir1-0007i6-1e for bug-gawk@gnu.org; Wed, 14 Dec 2005 21:28:23 -0500
-# Received: from Debian-exim by monty-python.gnu.org with spam-scanned
-# (Exim 4.34) id 1Emiv6-0006FV-9G for bug-gawk@gnu.org; Wed,
-# 14 Dec 2005 21:32:37 -0500
-# Received: from [129.99.139.165] (helo=ece03.nas.nasa.gov)
-# by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24)
-# (Exim 4.34) id 1Emiv5-0006F0-UO for bug-gawk@gnu.org; Wed,
-# 14 Dec 2005 21:32:36 -0500
-# Received: from ece03.nas.nasa.gov (localhost.localdomain [127.0.0.1])
-# by ece03.nas.nasa.gov (8.12.11/8.12.11) with ESMTP id jBF2TcNa022308; Wed,
-# 14 Dec 2005 18:29:38 -0800
-# Received: (from ellswort@localhost)
-# by ece03.nas.nasa.gov (8.12.11/8.12.11/Submit) id jBF2TcQC022307; Wed,
-# 14 Dec 2005 18:29:38 -0800
-# Date: Wed, 14 Dec 2005 18:29:38 -0800
-# From: David Ellsworth <ellswort@nas.nasa.gov>
-# Subject: gawk number to string bug
-# To: bug-gawk@gnu.org
-# Cc: ellswort@nas.nasa.gov
-# Message-id: <200512150229.jBF2TcQC022307@ece03.nas.nasa.gov>
-# Original-recipient: rfc822;arobbins@012.net.il
-# X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on skeeve.com
-# X-Spam-Level:
-# X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=ham
-# version=2.63
-#
-#
-# I ran into a bug in how gawk converts numbers into strings.
-#
-# Running the program
- BEGIN { print 9223372036854775808 }
-# prints
-# -9223372036854775808
-# on a 64-bit machine. On a 32-bit machine, the same program prints out
-# 9.22337e+18
-# which is correct.
-#
-# Note that 9223372036854775808 == 2^63. Printing out other powers of 2
-# is OK.
-#
-# Version details:
-# gawk version 3.1.5, freshly downloaded from gnu.org
-# gcc (GCC) 3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8)
-# uname -a output:
-# Linux pixie 2.6.12-gentoo-r10 #2 SMP Tue Nov 1 03:42:22 PST 2005
-# x86_64 Dual Core AMD Opteron(tm) Processor 275 AuthenticAMD GNU/Linux
-#
-# (the 32-bit example used gawk version 3.1.3)
-#
-# - David
-#
-#
-# #####################################################################################
-# This Mail Was Scanned by 012.net AntiVirus Service4- Powered by TrendMicro Interscan
-#
diff --git a/test/ovrflow1.ok b/test/ovrflow1.ok
deleted file mode 100644
index b0898f38..00000000
--- a/test/ovrflow1.ok
+++ /dev/null
@@ -1 +0,0 @@
-9223372036854775808
diff --git a/test/paramres.awk b/test/paramres.awk
new file mode 100644
index 00000000..e2f18927
--- /dev/null
+++ b/test/paramres.awk
@@ -0,0 +1,6 @@
+BEGIN { foo() }
+
+function foo(a, FS, q)
+{
+ print "a =", a
+}
diff --git a/test/paramres.ok b/test/paramres.ok
new file mode 100644
index 00000000..6c3d00a3
--- /dev/null
+++ b/test/paramres.ok
@@ -0,0 +1,2 @@
+gawk: paramres.awk:7: fatal: function `foo': can't use special variable `FS' as a function parameter
+EXIT CODE: 2
diff --git a/test/printfbad2.awk b/test/printfbad2.awk
new file mode 100644
index 00000000..d3bb3685
--- /dev/null
+++ b/test/printfbad2.awk
@@ -0,0 +1,2 @@
+BEGIN { FS = "a" }
+{ printf ($2 "\n") }
diff --git a/test/printfbad2.in b/test/printfbad2.in
new file mode 100644
index 00000000..1faae6d8
--- /dev/null
+++ b/test/printfbad2.in
@@ -0,0 +1 @@
+a%28b%29%c
diff --git a/test/printfbad2.ok b/test/printfbad2.ok
new file mode 100644
index 00000000..67d16608
--- /dev/null
+++ b/test/printfbad2.ok
@@ -0,0 +1,3 @@
+gawk: printfbad2.awk:2: (FILENAME=printfbad2.in FNR=1) warning: ignoring unknown format specifier character `b': no argument converted
+gawk: printfbad2.awk:2: (FILENAME=printfbad2.in FNR=1) warning: field width is ignored for `%%' specifier
+%28b%c
diff --git a/test/uparrfs.awk b/test/uparrfs.awk
new file mode 100644
index 00000000..85905240
--- /dev/null
+++ b/test/uparrfs.awk
@@ -0,0 +1,8 @@
+BEGIN {
+ FS = "(^x+)|( +)"
+}
+
+{
+ for (i = 1; i <= NF; i++)
+ printf "-->%s<--\n", $i
+}
diff --git a/test/uparrfs.in b/test/uparrfs.in
new file mode 100644
index 00000000..8e6b5c0d
--- /dev/null
+++ b/test/uparrfs.in
@@ -0,0 +1 @@
+xxAA xxBxx C
diff --git a/test/uparrfs.ok b/test/uparrfs.ok
new file mode 100644
index 00000000..944ba9aa
--- /dev/null
+++ b/test/uparrfs.ok
@@ -0,0 +1,4 @@
+--><--
+-->AA<--
+-->xxBxx<--
+-->C<--
diff --git a/unsupported/atari/ChangeLog b/unsupported/atari/ChangeLog
index 9fe50fd3..371f5ac5 100644
--- a/unsupported/atari/ChangeLog
+++ b/unsupported/atari/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/unsupported/tandem/ChangeLog b/unsupported/tandem/ChangeLog
index 7585feb6..79abda72 100644
--- a/unsupported/tandem/ChangeLog
+++ b/unsupported/tandem/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/version.c b/version.c
index d2d2667a..486f3aaa 100644
--- a/version.c
+++ b/version.c
@@ -1,6 +1,6 @@
#include "config.h"
-const char *version_string = "@(#)GNU Awk 3.1.6";
+const char *version_string = "@(#)GNU Awk 3.1.7";
/* 1.02 fixed /= += *= etc to return the new Left Hand Side instead
of the Right Hand Side */
diff --git a/vms/ChangeLog b/vms/ChangeLog
index 13422217..4612fe79 100644
--- a/vms/ChangeLog
+++ b/vms/ChangeLog
@@ -1,3 +1,51 @@
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Wed Jul 8 18:59:22 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (charset_tests): New list; move various tests from
+ basic and gawk_ext lists.
+ (fmtspcl): Move to machine_tests list.
+ (lc_num1, mbfw1, mbprintf1, rsstart3): Skip these failing tests.
+ (double1, double2): Likewise.
+
+Mon Jun 22 00:51:17 2009 Pat Ranin <rankin@pactechdata.com>
+
+ * vms_misc.c (vms_open): Explicitly specify "rat=cr" to force
+ carriage-return-carraige-control record attribute along with
+ stmlf foramt. gawk failed on an internal redirection attempt
+ (``print anything > file'') if an earlier version of the output
+ file existed with conflicting attributes and the program was
+ built using DECC$SHR run-time library rather than VAXCRTL.
+
+ * vmstest.com: Add over 70 new tests. Overhaul how lists of
+ tests are specified and executed. Make many similar tests run
+ with shared commands instead of maintaining separate code for
+ each one. Put output for 'test' into "_'test'.tmp" instead of
+ "tmp." so that it's easier to investigate if/when multiple test
+ failures occur in the same run.
+ (vms_io2): New test to check the ``print anything > file'' fix.
+
+Wed Mar 18 18:16:50 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h (EXIT_SUCCESS, EXIT_FAILURE): Define #if !HAVE_STDLIB_H.
+ (EXIT_FATAL): Define.
+
+Mon Mar 16 19:09:27 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Synchronize with configh.in,
+ (HAVE_ATEXIT): Define.
+
+Tue Jan 27 21:49:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Per Pat Rankin based on changes to awk.h and change in main code
+ to use EXIT_SUCCESS / EXIT_FAILURE from Toni Schilling
+ <Schilling@equicon.de>.
+
+ * redirect.h (exit): Remove definition.
+ * vms_misc.c (vms_exit): Remove code.
+
Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
* Release 3.1.6: Release tar file made.
diff --git a/vms/descrip.mms b/vms/descrip.mms
index 994ee46b..c89f6c00 100644
--- a/vms/descrip.mms
+++ b/vms/descrip.mms
@@ -128,7 +128,7 @@ DOCS= $(DOCDIR)gawk.1,$(DOCDIR)gawk.texi,$(DOCDIR)texinfo.tex
# Release of gawk
REL=3.1
-PATCHLVL=5
+PATCHLVL=7
# generic target
all : gawk,pgawk
diff --git a/vms/redirect.h b/vms/redirect.h
index 943af981..86de42f6 100644
--- a/vms/redirect.h
+++ b/vms/redirect.h
@@ -79,7 +79,6 @@ extern int gettimeofday(struct timeval *,void *);
#ifndef bcopy
#define bcopy vms_bcopy
#endif
-#define exit vms_exit
#define open vms_open
#define popen vms_popen
#define pclose vms_pclose
diff --git a/vms/vms-conf.h b/vms/vms-conf.h
index 91de82f7..029fb4f2 100644
--- a/vms/vms-conf.h
+++ b/vms/vms-conf.h
@@ -7,7 +7,7 @@
*/
/*
- * Copyright (C) 1991-1992, 1995-1996, 1999, 2001, 2002, 2003, 2005
+ * Copyright (C) 1991-1992, 1995-1996, 1999, 2001, 2002, 2003, 2005, 2009
* the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
@@ -65,6 +65,9 @@
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
+/* Define to 1 if you have the `atexit' function. */
+#define HAVE_ATEXIT 1
+
/* Define to 1 if you have the `btowc' function. */
#undef HAVE_BTOWC
@@ -381,13 +384,13 @@
#define PACKAGE_NAME "GNU Awk"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GNU Awk 3.1.6"
+#define PACKAGE_STRING "GNU Awk 3.1.7"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "gawk"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "3.1.6"
+#define PACKAGE_VERSION "3.1.7"
/* Define to 1 if *printf supports %F format */
#undef PRINTF_HAS_F_FORMAT
@@ -637,6 +640,14 @@
#undef REGEX_MALLOC /* use true alloca() in regex.c */
#endif
+/* EXIT_SUCCESS and EXIT_FAILURE normally come from <stdlib.h> */
+#ifndef HAVE_STDLIB_H
+# define EXIT_SUCCESS 1 /* SYS$_NORMAL */
+# define EXIT_FAILURE 0x10000002 /* STS$M_INHIB_MSG|STS$K_ERROR */
+#endif
+/* EXIT_FATAL is specific to gawk, not part of Standard C */
+#define EXIT_FATAL 0x10000004 /* STS$M_INHIB_MSG|STS$K_SEVERE */
+
#define IN_CONFIG_H
#include "vms/redirect.h"
#undef IN_CONFIG_H
diff --git a/vms/vms_misc.c b/vms/vms_misc.c
index cbc51c3a..a27b47ce 100644
--- a/vms/vms_misc.c
+++ b/vms/vms_misc.c
@@ -1,6 +1,6 @@
/* vms_misc.c -- sustitute code for missing/different run-time library routines.
- Copyright (C) 1991-1993, 1996-1997, 2001, 2003 the Free Software Foundation, Inc.
+ Copyright (C) 1991-1993, 1996-1997, 2001, 2003, 2009 the 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
@@ -29,21 +29,6 @@
#include <stsdef.h>
/*
- * VMS uses a completely different status scheme (odd => success,
- * even => failure), so we'll trap calls to exit() and alter the
- * exit status code. [VAXC can't handle this as a macro.]
- */
-#ifdef exit
-# undef exit
-#endif
-void
-vms_exit( int final_status )
-{
- exit(final_status == 0 ? SS$_NORMAL : (SS$_ABORT | STS$M_INHIB_MSG));
-}
-#define exit(v) vms_exit(v)
-
- /*
* In VMS's VAXCRTL, strerror() takes an optional second argument.
* #define strerror(errnum) strerror(errnum,vaxc$errno)
* is all that's needed, but VAXC can't handle that (gcc can).
@@ -124,7 +109,12 @@ vms_open( const char *name, int mode, ... )
if (mode == (O_WRONLY|O_CREAT|O_TRUNC)) {
/* explicitly force stream_lf record format to override DECC$SHR's
defaulting of RFM to earlier file version's when one is present */
- result = creat(name, 0, "rfm=stmlf", "shr=nil", "mbc=32");
+ /* 3.1.7 fix: letting record attibutes default resulted in DECC$SHR's
+ creat() failing with "invalid record attributes" when trying to
+ make a new version of an existing file which had rfm=vfc,rat=prn
+ format, so add explicit "rat=cr" to go with rfm=stmlf to force
+ the usual "carriage return carriage control" setting */
+ result = creat(name, 0, "rfm=stmlf", "rat=cr", "shr=nil", "mbc=32");
} else {
struct stat stb;
const char *mbc, *shr = "shr=get", *ctx = "ctx=stm";
diff --git a/vms/vmsbuild.com b/vms/vmsbuild.com
index ea33290a..c9402b12 100644
--- a/vms/vmsbuild.com
+++ b/vms/vmsbuild.com
@@ -10,7 +10,7 @@ $! gawk 3.1.1 revised, Apr'02
$! gawk 3.1.6 revised, Mar'07
$!
$ REL = "3.1" !release version number
-$ PATCHLVL = "6"
+$ PATCHLVL = "7"
$!
$!
$ CCFLAGS = "/noList" ! "/noOpt/Debug"
diff --git a/vms/vmstest.com b/vms/vmstest.com
index a5cbc03d..3c1e75d7 100644
--- a/vms/vmstest.com
+++ b/vms/vmstest.com
@@ -4,146 +4,322 @@ $! Usage:
$! $ set default [-.test]
$! $ @[-.vms]vmstest.com bigtest
$! This assumes that newly built gawk.exe is in the next directory up.
+$
+$! 3.1.7: changed to share code among many common tests, and
+$! to put results for test foo into _foo.tmp instead of tmp.
$!
$ echo = "write sys$output"
$ cmp = "diff/Output=_NL:/Maximum=1"
+$ igncascmp = "''cmp'/Ignore=Case"
$ rm = "delete/noConfirm/noLog"
+$ mv = "rename/New_Vers"
$ gawk = "$sys$disk:[-]gawk"
$ AWKPATH_srcdir = "define/User AWKPATH sys$disk:[]"
$
-$ if p1.eqs."" then p1 = "bigtest"
-$ gosub 'p1'
-$ if p2.nes."" then gosub 'p2'
-$ if p3.nes."" then gosub 'p3'
-$ if p4.nes."" then gosub 'p4'
-$ if p5.nes."" then gosub 'p5'
-$ if p6.nes."" then gosub 'p6'
-$ if p7.nes."" then gosub 'p7'
-$ if p8.nes."" then gosub 'p8'
+$ listdepth = 0
+$ pipeok = 0
+$ floatmode = -1 ! 0: D_float, 1: G_float, 2: IEEE T_float
+$
+$ list = p1+" "+p2+" "+p3+" "+p4+" "+p5+" "+p6+" "+p7+" "+p8
+$ list = f$edit(list,"TRIM,LOWERCASE")
+$ if list.eqs."" then list = "all" ! bigtest
+$ gosub list_of_tests
+$ echo "done."
$ exit
$
$all:
-$bigtest: bigtest_list = "basic unix_tests gawk_ext vms_tests"
-$ echo "bigtest..."
-$bigtest_loop: bigtest_test = f$element(0," ",bigtest_list)
-$ bigtest_list = bigtest_list - bigtest_test - " "
-$ if bigtest_test.nes." " then gosub 'bigtest_test'
-$ if bigtest_list.nes."" then goto bigtest_loop
+$bigtest: echo "bigtest..."
+$ ! omits "printlang" and "extra"
+$ list = "basic unix_tests gawk_ext vms_tests charset_tests machine_tests"
+$ gosub list_of_tests
+$ return
+$
+$basic: echo "basic..."
+$ list = "msg addcomma anchgsub argarray arrayparm arrayref" -
+ + " arrymem1 arrayprm2 arrayprm3 arryref2 arryref3" -
+ + " arryref4 arryref5 arynasty arynocls aryprm1 aryprm2" -
+ + " aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 aryprm8" -
+ + " arysubnm asgext awkpath back89 backgsub childin" -
+ + " clobber closebad clsflnam compare compare2 concat1"
+$ gosub list_of_tests
+$ list = "concat2 concat3 concat4 convfmt datanonl defref" -
+ + " delarprm delarpm2 delfunc dynlj eofsplit exitval1" -
+ + " exitval2 fldchg fldchgnf fnamedat" -
+ + " fnarray fnarray2 fnaryscl fnasgnm fnmisc" -
+ + " fordel forsimp fsbs fsspcoln fsrs fstabplus" -
+ + " funsemnl funsmnam funstack getline getline2 getline3"
+$ gosub list_of_tests
+$ list = "getlnbuf getnr2tb getnr2tm gsubasgn gsubtest" -
+ + " gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 hex" -
+ + " hsprint inputred intest intprec iobug1" -
+ + " leaddig leadnl litoct longsub longwrds"-
+ + " manglprm math membug1 messages minusstr mmap8k" -
+ + " mtchi18n nasty nasty2 negexp nested nfldstr nfneg"
+$ gosub list_of_tests
+$ list = "nfset nlfldsep nlinstr nlstrina noeffect nofile" -
+ + " nofmtch noloop1 noloop2 nonl noparms nors nulrsend" -
+ + " numindex numsubstr octsub ofmt ofmtbig ofmtfidl" -
+ + " ofmts onlynl opasnidx opasnslf paramdup" -
+ + " paramres paramtyp parse1 parsefld parseme pcntplus" -
+ + " prdupval prec printf0 printf1 prmarscl prmreuse"
+$ gosub list_of_tests
+$ list = "prt1eval prtoeval psx96sub rand rebt8b1" -
+ + " redfilnm regeq reindops reparse resplit rs rsnul1nl" -
+ + " rsnulbig rsnulbig2 rstest1 rstest2 rstest3 rstest4" -
+ + " rstest5 rswhite scalar sclforin sclifin sortempty" -
+ + " splitargv splitarr splitdef splitvar splitwht" -
+ + " strcat1 strtod strnum1 subamp subi18n"
+$ gosub list_of_tests
+$ list = "subsepnm subslash substr swaplns synerr1 synerr2" -
+ + " tradanch tweakfld uninit2 uninit3 uninit4 uninitialized" -
+ + " unterm uparrfs wideidx wideidx2 widesub widesub2" -
+ + " widesub3 widesub4 wjposer1 zeroe0 zeroflag zero2"
+$ gosub list_of_tests
+$ return
+$
+$unix:
+$unix_tests: echo "unix_tests..."
+$ list = "fflush getlnhd localenl pid pipeio1 pipeio2" -
+ + " poundbang space strftlng"
+$ gosub list_of_tests
$ return
$
-$basic: basic_lst1 = "msg swaplns messages argarray longwrds" -
- + " getline2 fstabplus compare arrayref rs fsrs rand" -
- + " fsbs negexp asgext anchgsub splitargv awkpath nfset" -
- + " reparse convfmt arrayparm paramdup nonl defref" -
- + " nofmtch litoct resplit rswhite prmarscl sclforin" -
- + " sclifin intprec childin noeffect numsubstr pcntplus" -
- + " prmreuse math fldchg fldchgnf reindops sprintfc" -
- + " backgsub tweakfld clsflnam mmap8k fnarray dynlj" -
- + " substr eofsplit prt1eval splitwht back89 tradanch"
-$ basic_lst2 = "nlfldsep splitvar intest nfldstr nors" -
- + " fnarydel noparms funstack clobber delarprm prdupval" -
- + " nasty nasty2 zeroflag getnr2tm getnr2tb printf1" -
- + " funsmnam fnamedat numindex subslash opasnslf" -
- + " opasnidx arynocls getlnbuf arysubnm fnparydl" -
- + " nlstrina octsub nlinstr ofmt hsprint ofmts parseme" -
- + " splitdef fnaryscl fnasgnm ofmtbig paramtyp rsnul1nl" -
- + " datanonl regeq redfilnm strtod leaddig arynasty" -
- + " psx96sub addcomma"
-$ basic_lst3 = "rebt8b1 rebt8b2 leadnl funsemnl ofmtfidl" -
- + " onlynl arrymem1 compare2 minusstr membug1 forsimp" -
- + " concat1 longsub arrayprm2 arrayprm3 arryref2" -
- + " arryref3 arryref4 arryref5 aryprm1 aryprm2 aryprm3" -
- + " aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 concat2" -
- + " concat3 delarpm2 delfunc exitval2 fmttest fnarray2" -
- + " fnmisc fordel getline getline3 gsubasgn gsubtest" -
- + " gsubtst2 gsubtst4 gsubtst5 hex inputred iobug1"
-$ basic_lst4 = "manglprm nested nfneg noloop1 noloop2" -
- + " nulrsend prec prtoeval rstest1 rstest2 rstest3" -
- + " rstest4 rstest5 scalar sortempty splitarr strcat1" -
- + " subsepnm synerr1 uninit2 uninit3 uninit4" -
- + " uninitialized unterm wjposer1 zeroe0"
-$ echo "basic..."
-$basic_loop1: basic_test = f$element(0," ",basic_lst1)
-$ basic_lst1 = basic_lst1 - basic_test - " "
-$ if basic_test.nes." " then gosub 'basic_test'
-$ if basic_lst1.nes."" then goto basic_loop1
-$basic_loop2: basic_test = f$element(0," ",basic_lst2)
-$ basic_lst2 = basic_lst2 - basic_test - " "
-$ if basic_test.nes." " then gosub 'basic_test'
-$ if basic_lst2.nes."" then goto basic_loop2
-$basic_loop3: basic_test = f$element(0," ",basic_lst3)
-$ basic_lst3 = basic_lst3 - basic_test - " "
-$ if basic_test.nes." " then gosub 'basic_test'
-$ if basic_lst3.nes."" then goto basic_loop3
-$basic_loop4: basic_test = f$element(0," ",basic_lst4)
-$ basic_lst4 = basic_lst4 - basic_test - " "
-$ if basic_test.nes." " then gosub 'basic_test'
-$ if basic_lst4.nes."" then goto basic_loop4
+$gnu:
+$gawk_ext: echo "gawk_ext... (gawk.extensions)"
+$ list = "argtest backw badargs binmode1" -
+ + " clos1way devfd devfd1 devfd2" -
+ + " fieldwdth funlen fsfwfs fwtest fwtest2 gensub" -
+ + " gensub2 getlndir gnuops2 gnuops3 gnureops icasefs" -
+ + " icasers igncdym igncfs ignrcase ignrcas2 lint"
+$ gosub list_of_tests
+$ list = "lintold match1 match2 match3 manyfiles" -
+ + " mbprintf3 mbstr1" -
+ + " nondec nondec2 posix procinfs printfbad1" -
+ + " printfbad2 regx8bit rebuf reint reint2 rsstart1" -
+ + " rsstart2 rsstart3 rstest6 shadow strtonum strftime"
+$ gosub list_of_tests
$ return
$
-$unix_tests: unix_tst_list = "fflush getlnhd pid pipeio1" -
- + " pipeio2 poundbang strftlng"
-$ echo "unix_tests..."
-$unix_tst_loop: unix_tst_test = f$element(0," ",unix_tst_list)
-$ unix_tst_list = unix_tst_list - unix_tst_test - " "
-$ if unix_tst_test.nes." " then gosub 'unix_tst_test'
-$ if unix_tst_list.nes."" then goto unix_tst_loop
+$vms:
+$vms_tests: echo "vms_tests..."
+$ list = "vms_cmd vms_io1 vms_io2"
+$ gosub list_of_tests
$ return
$
-$gawk_ext: gawk_ext_list = "argtest badargs clos1way fieldwdth" -
- + " fsfwfs gensub gnuops2 gnureops igncdym igncfs" -
- + " ignrcase lint manyfiles nondec posix procinfs" -
- + " regx8bit reint shadow sort1 strftime"
-$ echo "gawk_ext... (gawk.extensions)"
-$gawk_ext_loop: gawk_ext_test = f$element(0," ",gawk_ext_list)
-$ gawk_ext_list = gawk_ext_list - gawk_ext_test - " "
-$ if gawk_ext_test.nes." " then gosub 'gawk_ext_test'
-$ if gawk_ext_list.nes."" then goto gawk_ext_loop
+$locale_tests:
+$charset_tests: echo "charset_tests..."
+$ ! without i18n kit, VMS only supports the C locale
+$ ! and several of these fail
+$ list = "asort asorti fmttest fnarydel fnparydl lc_num1 mbfw1" -
+ + " mbprintf1 mbprintf2 rebt8b2 sort1 sprintfc whiny"
+$ gosub list_of_tests
$ return
$
-$vms_tests: vms_tst_list = "vms_io1 vms_cmd"
-$ echo "vms_tests..."
-$vms_tst_loop: vms_tst_test = f$element(0," ",vms_tst_list)
-$ vms_tst_list = vms_tst_list - vms_tst_test - " "
-$ if vms_tst_test.nes." " then gosub 'vms_tst_test'
-$ if vms_tst_list.nes."" then goto vms_tst_loop
+$hardware:
+$machine_tests: echo "machine_tests..."
+$ ! these depend upon the floating point format in use
+$ list = "double1 double2 fmtspcl intformat"
+$ gosub list_of_tests
$ return
$
-$extra: extra_list = "regtest inftest inet"
-$ echo "extra..."
-$extra_loop: extra_test = f$element(0," ",extra_list)
-$ extra_list = extra_list - extra_test - " "
-$ if extra_test.nes." " then gosub 'extra_test'
-$ if extra_list.nes."" then goto extra_loop
+$extra: echo "extra..."
+$ list = "regtest inftest inet"
+$ gosub list_of_tests
$ return
$
-$inet: inet_list = "inetechu inetecht inetdayu inetdayt"
-$ echo "inet..."
+$inet: echo "inet..."
$ type sys$input:
- The inet tests only work if gawk has been built with tcp/ip socket
+ The inet tests only work if gawk has been built with TCP/IP socket
support and your system supports the services "discard" at port 9
and "daytimed" at port 13.
-$inet_loop: inet_test = f$element(0," ",inet_list)
-$ inet_list = inet_list - inet_test - " "
-$ if inet_test.nes." " then gosub 'inet_test'
-$ if inet_list.nes."" then goto inet_loop
+$ list = "inetechu inetecht inetdayu inetdayt"
+$ gosub list_of_tests
$ return
$
-$poundbang:
-$ echo "poundbang: useless for VMS, so skipped"
+$! list_of_tests: process 'list', a space-separated list of tests.
+$! Some tests assign their own 'list' and call us recursively,
+$! so we have to emulate a local stack to prevent the current list
+$! from being clobbered by nested execution. We do this by making
+$! and operating on list1, list2, &c depending upon call depth.
+$! Lower level tests access higher numbered entries; the lower
+$! entries in use by caller or caller's caller are kept intact.
+$list_of_tests:
+$ listdepth = listdepth + 1 ! increment calling depth
+$ list'listdepth' = f$edit(list,"COMPRESS,TRIM")
+$next_test:
+$ test = f$element(0," ",list'listdepth')
+$ list'listdepth' = list'listdepth' - test - " "
+$ gosub 'test'
+$ if list'listdepth'.nes."" then goto next_test
+$ listdepth = listdepth - 1 ! reset
+$ return
+$
+$
+$! common tests, not needing special set up: gawk -f 'test'.awk 'test'.in
+$addcomma:
+$anchgsub:
+$arrayprm2:
+$arryref2:
+$aryprm8:
+$asgext:
+$backgsub:
+$backw:
+$concat1:
+$concat2:
+$concat3:
+$datanonl:
+$delarpm2:
+$fldchg:
+$fldchgnf:
+$fmttest:
+$fordel:
+$fsfwfs:
+$fsrs:
+$funlen:
+$funstack:
+$fwtest:
+$fwtest2:
+$gensub:
+$getline3:
+$getnr2tb:
+$getnr2tm:
+$gsubtest:
+$gsubtst2:
+$gsubtst4:
+$gsubtst5:
+$hex:
+$icasers:
+$igncfs:
+$igncdym:
+$inputred:
+$leadnl:
+$manglprm:
+$match3:
+$membug1:
+$nested:
+$nfset:
+$nlfldsep:
+$nlinstr:
+$noloop1:
+$noloop2:
+$nulrsend:
+$ofmt:
+$ofmtfidl:
+$ofmts:
+$onlynl:
+$parse1:
+$parsefld:
+$prdupval:
+$prec:
+$prtoeval:
+$rebuf:
+$regeq:
+$reindops:
+$reparse:
+$rsnul1nl:
+$rsstart1:
+$rstest1:
+$rstest2:
+$rstest3:
+$rstest6:
+$rswhite:
+$sortempty:
+$splitargv:
+$splitarr:
+$splitvar:
+$sprintfc:
+$strcat1:
+$strtod:
+$subsepnm:
+$swaplns:
+$uparrfs:
+$wjposer1:
+$zeroe0:
+$! common with 'test'.in
+$ echo "''test'"
+$ gawk -f 'test'.awk 'test'.in >_'test'.tmp
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
+$ return
+$
+$! more common tests, without a data file: gawk -f 'test'.awk
+$arrayref:
+$arrymem1:
+$arynasty:
+$arysubnm:
+$asort:
+$asorti:
+$closebad:
+$compare2:
+$convfmt:
+$delarprm:
+$!!double1:
+$!!double2:
+$dynlj:
+$fnarydel:
+$fnparydl:
+$forsimp:
+$funsemnl:
+$gensub2:
+$gnuops2:
+$gnuops3:
+$gnureops:
+$hsprint:
+$icasefs:
+$intest:
+$match1:
+$math:
+$minusstr:
+$nlstrina:
+$nondec:
+$octsub:
+$paramtyp:
+$pcntplus:
+$printf1:
+$procinfs:
+$prt1eval:
+$psx96sub:
+$rebt8b1:
+$rebt8b2:
+$regx8bit:
+$sort1:
+$splitdef:
+$splitwht:
+$strnum1:
+$strtonum:
+$substr:
+$zero2:
+$zeroflag:
+$! common without 'test'.in
+$ echo "''test'"
+$ gawk -f 'test'.awk >_'test'.tmp
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
+$ return
+$
+$double1:
+$double2:
+$lc_num1:
+$mbprintf1:
+$ echo "''test' skipped"
$ return
$
$msg:
-$ echo "Any output from ""DIFF"" is bad news, although some differences"
+$ echo "Any output from ""DIF"" is bad news, although some differences"
$ echo "in floating point values are probably benign -- in particular,"
$ echo "some systems may omit a leading zero and the floating point"
$ echo "precision may lead to slightly different output in a few cases."
$ return
$
-$swaplns: echo "swaplns"
-$ gawk -f swaplns.awk swaplns.in >tmp.
-$ cmp swaplns.ok tmp.
-$ if $status then rm tmp.;
+$printlang:
+$! the default locale is C, with LC_LANG and LC_ALL left empty;
+$! showing that at the very beginning may cause some confusion about
+$! whether gawk requires those, so we don't run this as the first test
+$ gawk -f printlang.awk
+$ return
+$
+$poundbang:
+$ echo "poundbang: not supported"
$ return
$
$messages: echo "messages"
@@ -160,49 +336,37 @@ $ return
$
$argarray: echo "argarray"
$ define/User TEST "test" !this is useless...
-$ gawk -f argarray.awk ./argarray.in - >tmp.
+$ gawk -f argarray.awk ./argarray.in - >_argarray.tmp
just a test
-$ cmp argarray.ok tmp.
-$ if $status then rm tmp.;
+$ cmp argarray.ok _argarray.tmp
+$ if $status then rm _argarray.tmp;
$ return
$
$fstabplus: echo "fstabplus"
-$ gawk -f fstabplus.awk >tmp.
+$ gawk -f fstabplus.awk >_fstabplus.tmp
1 2
-$ cmp fstabplus.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fsrs: echo "fsrs"
-$ gawk -f fsrs.awk fsrs.in >tmp.
-$ cmp fsrs.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$igncfs: echo "igncfs"
-$ gawk -f igncfs.awk igncfs.in >tmp.
-$ cmp igncfs.ok tmp.
-$ if $status then rm tmp.;
+$ cmp fstabplus.ok _fstabplus.tmp
+$ if $status then rm _fstabplus.tmp;
$ return
$
$longwrds: echo "longwrds"
-$ gawk -v "SORT=sort sys$input: tmp." -f longwrds.awk longwrds.in >_NL:
-$ cmp longwrds.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "SORT=sort sys$input: _longwrds.tmp" -f longwrds.awk longwrds.in >_NL:
+$ cmp longwrds.ok _longwrds.tmp
+$ if $status then rm _longwrds.tmp;
$ return
$
$fieldwdth: echo "fieldwdth"
-$ gawk -v "FIELDWIDTHS=2 3 4" "{ print $2}" >tmp.
+$ gawk -v "FIELDWIDTHS=2 3 4" "{ print $2}" >_fieldwdth.tmp
123456789
-$ cmp fieldwdth.ok tmp.
-$ if $status then rm tmp.;
+$ cmp fieldwdth.ok _fieldwdth.tmp
+$ if $status then rm _fieldwdth.tmp;
$ return
$
$ignrcase: echo "ignrcase"
-$ gawk -v "IGNORECASE=1" "{ sub(/y/, """"); print}" >tmp.
+$ gawk -v "IGNORECASE=1" "{ sub(/y/, """"); print}" >_ignrcase.tmp
xYz
-$ cmp ignrcase.ok tmp.
-$ if $status then rm tmp.;
+$ cmp ignrcase.ok _ignrcase.tmp
+$ if $status then rm _ignrcase.tmp;
$ return
$
$regtest:
@@ -217,10 +381,10 @@ $ endif
$ return
$
$posix: echo "posix"
-$ gawk -f posix.awk >tmp.
+$ gawk -f posix.awk >_posix.tmp
1:2,3 4
-$ cmp posix.ok tmp.
-$ if $status then rm tmp.;
+$ cmp posix.ok _posix.tmp
+$ if $status then rm _posix.tmp;
$ return
$
$manyfiles: echo "manyfiles"
@@ -235,58 +399,52 @@ $ if fillm.ge.chnlc then fillm = chnlc - 1
$ if fillm.ge.f_cnt then f_cnt = fillm + 10
$ if f$search("[.junk]*.*").nes."" then rm [.junk]*.*;*
$ if f$parse("[.junk]").eqs."" then create/Dir/Prot=(O:rwed) [.junk]
-$ gawk -v "F_CNT=''f_cnt'" "BEGIN {for (i = 1; i <= F_CNT; i++) print i, i}" >tmp.
+$ gawk -- "BEGIN {for (i = 1; i <= ''f_cnt'; i++) print i, i}" >_manyfiles.dat
$ echo "(processing ''f_cnt' files; this may take quite a while)"
-$ gawk -f manyfiles.awk tmp. tmp.
+$ gawk -f manyfiles.awk _manyfiles.dat _manyfiles.dat
$ define/User sys$error _NL:
-$ define/User sys$output tmp.too
+$ define/User sys$output _manyfiles.tmp
$ search/Match=Nor/Output=_NL:/Log [.junk]*.* ""
$!/Log output: "%SEARCH-S-NOMATCH, <filename> - <#> records" plus 1 line summary
-$ gawk -v "F_CNT=''f_cnt'" -f - tmp.too
+$ gawk -v "F_CNT=''f_cnt'" -f - _manyfiles.tmp
$deck !some input begins with "$"
$4 != 2 {++count}
END {if (NR != F_CNT+1 || count != 1) {print "\nFailed!"}}
$eod
-$ rm tmp.;,tmp.too;,[.junk]*.*;*,[]junk.dir;
+$ rm _manyfiles.tmp;,_manyfiles.dat;,[.junk]*.*;*,[]junk.dir;
$ return
$
$compare: echo "compare"
-$ gawk -f compare.awk 0 1 compare.in >tmp.
-$ cmp compare.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arrayref: echo "arrayref"
-$ gawk -f arrayref.awk >tmp.
-$ cmp arrayref.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f compare.awk 0 1 compare.in >_compare.tmp
+$ cmp compare.ok _compare.tmp
+$ if $status then rm _compare.tmp;
$ return
$
$rs: echo "rs"
-$ gawk -v "RS=" "{ print $1, $2}" rs.in >tmp.
-$ cmp rs.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "RS=" "{ print $1, $2}" rs.in >_rs.tmp
+$ cmp rs.ok _rs.tmp
+$ if $status then rm _rs.tmp;
$ return
$
$fsbs: echo "fsbs"
-$ gawk -v "FS=\" "{ print $1, $2 }" fsbs.in >tmp.
-$ cmp fsbs.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "FS=\" "{ print $1, $2 }" fsbs.in >_fsbs.tmp
+$ cmp fsbs.ok _fsbs.tmp
+$ if $status then rm _fsbs.tmp;
$ return
$
$inftest: echo "inftest"
$ !! echo "This test is very machine specific..."
$ set noOn
-$ gawk -f inftest.awk >tmp.
-$ !! cmp inftest.ok tmp. !just care that gawk doesn't crash...
-$ if $status then rm tmp.;
+$ gawk -f inftest.awk >_inftest.tmp
+$ !! cmp inftest.ok _inftest.tmp !just care that gawk doesn't crash...
+$ if $status then rm _inftest.tmp;
$ set On
$ return
$
$getline2: echo "getline2"
-$ gawk -f getline2.awk getline2.awk getline2.awk >tmp.
-$ cmp getline2.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f getline2.awk getline2.awk getline2.awk >_getline2.tmp
+$ cmp getline2.ok _getline2.tmp
+$ if $status then rm _getline2.tmp;
$ return
$
$rand: echo "rand"
@@ -296,119 +454,72 @@ $ gawk -f rand.awk
$ return
$
$negexp: echo "negexp"
-$ gawk "BEGIN { a = -2; print 10^a }" >tmp.
-$ cmp negexp.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$asgext: echo "asgext"
-$ gawk -f asgext.awk asgext.in >tmp.
-$ cmp asgext.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$anchgsub: echo "anchgsub"
-$ gawk -f anchgsub.awk anchgsub.in >tmp.
-$ cmp anchgsub.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$splitargv: echo "splitargv"
-$ gawk -f splitargv.awk splitargv.in >tmp.
-$ cmp splitargv.ok tmp.
-$ if $status then rm tmp.;
+$ gawk "BEGIN { a = -2; print 10^a }" >_negexp.tmp
+$ cmp negexp.ok _negexp.tmp
+$ if $status then rm _negexp.tmp;
$ return
$
$awkpath: echo "awkpath"
$ define/User AWK_LIBRARY [],[.lib]
-$ gawk -f awkpath.awk >tmp.
-$ cmp awkpath.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$nfset: echo "nfset"
-$ gawk -f nfset.awk nfset.in >tmp.
-$ cmp nfset.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$reparse: echo "reparse"
-$ gawk -f reparse.awk reparse.in >tmp.
-$ cmp reparse.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f awkpath.awk >_awkpath.tmp
+$ cmp awkpath.ok _awkpath.tmp
+$ if $status then rm _awkpath.tmp;
$ return
$
$argtest: echo "argtest"
-$ gawk -f argtest.awk -x -y abc >tmp.
-$ cmp argtest.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f argtest.awk -x -y abc >_argtest.tmp
+$ cmp argtest.ok _argtest.tmp
+$ if $status then rm _argtest.tmp;
$ return
$
$badargs: echo "badargs"
$ on error then continue
-$ gawk -f 2>&1 >tmp.too
-$! search/Match=Nor tmp. "patchlevel" /Output=tmp.
-$ gawk "/patchlevel/{next}; {gsub(""\"""",""'""); print}" <tmp.too >tmp.
-$ cmp badargs.ok tmp.
-$ if $status then rm tmp.;,tmp.too;
-$ return
-$
-$convfmt: echo "convfmt"
-$ gawk -f convfmt.awk >tmp.
-$ cmp convfmt.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arrayparm: echo "arrayparm"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f arrayparm.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp arrayparm.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f 2>&1 >_badargs.too
+$! search/Match=Nor _badargs.too "patchlevel" /Output=_badargs.tmp
+$ gawk "/patchlevel/{next}; {gsub(""\"""",""'""); print}" <_badargs.too >_badargs.tmp
+$ cmp badargs.ok _badargs.tmp
+$ if $status then rm _badargs.tmp;,_badargs.too;
$ return
$
$paramdup: echo "paramdup"
$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f paramdup.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ gawk -f paramdup.awk >_paramdup.tmp 2>&1
+$ if .not.$status then call exit_code 1 _paramdup.tmp
$ set On
-$ cmp paramdup.ok tmp.
-$ if $status then rm tmp.;
+$ cmp paramdup.ok _paramdup.tmp
+$ if $status then rm _paramdup.tmp;
$ return
$
$nonl: echo "nonl"
$ ! This one might fail, depending on the tool used to unpack the
$ ! distribution. Some will add a final newline if the file lacks one.
$ AWKPATH_srcdir
-$ gawk --lint -f nonl.awk _NL: >tmp. 2>&1
-$ cmp nonl.ok tmp.
-$ if $status then rm tmp.;
+$ gawk --lint -f nonl.awk _NL: >_nonl.tmp 2>&1
+$ cmp nonl.ok _nonl.tmp
+$ if $status then rm _nonl.tmp;
$ return
$
$defref: echo "defref"
$ set noOn
$ AWKPATH_srcdir
-$ gawk --lint -f defref.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk --lint -f defref.awk >_defref.tmp 2>&1
+$ if .not.$status then call exit_code 2 _defref.tmp
$ set On
-$ cmp defref.ok tmp.
-$ if $status then rm tmp.;
+$ cmp defref.ok _defref.tmp
+$ if $status then rm _defref.tmp;
$ return
$
$nofmtch: echo "nofmtch"
$ AWKPATH_srcdir
-$ gawk --lint -f nofmtch.awk >tmp. 2>&1
-$ cmp nofmtch.ok tmp.
-$ if $status then rm tmp.;
+$ gawk --lint -f nofmtch.awk >_nofmtch.tmp 2>&1
+$ cmp nofmtch.ok _nofmtch.tmp
+$ if $status then rm _nofmtch.tmp;
$ return
$
$strftime: echo "strftime"
$ ! this test could fail on slow machines or on a second boundary,
$ ! so if it does, double check the actual results
-$!! date | gawk -v "OUTPUT"=tmp. -f strftime.awk
+$!! date | gawk -v "OUTPUT"=_strftime.tmp -f strftime.awk
$ now = f$time()
$ wkd = f$extract(0,3,f$cvtime(now,,"WEEKDAY"))
$ mon = f$cvtime(now,"ABSOLUTE","MONTH")
@@ -418,615 +529,283 @@ $ tim = f$extract(0,8,f$cvtime(now,,"TIME"))
$ tz = ""
$ yr = f$cvtime(now,,"YEAR")
$ if f$trnlnm("FTMP").nes."" then close/noLog ftmp
-$ open/Write ftmp strftime.in
+$ open/Write ftmp strftime.in
$ write ftmp wkd," ",mon," ",day," ",tim," ",tz," ",yr
$ close ftmp
-$ gawk -v "OUTPUT"=tmp. -f strftime.awk strftime.in
+$ gawk -v "OUTPUT"=_strftime.tmp -f strftime.awk strftime.in
$ set noOn
-$ cmp strftime.ok tmp.
-$ if $status then rm tmp.;,strftime.ok;*,strftime.in;*
+$ cmp strftime.ok _strftime.tmp
+$ if $status then rm _strftime.tmp;,strftime.ok;*,strftime.in;*
$ set On
$ return
$
$litoct: echo "litoct"
-$ gawk --traditional -f litoct.awk >tmp.
+$ gawk --traditional -f litoct.awk >_litoct.tmp
ab
-$ cmp litoct.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$gensub: echo "gensub"
-$ gawk -f gensub.awk gensub.in >tmp.
-$ cmp gensub.ok tmp.
-$ if $status then rm tmp.;
+$ cmp litoct.ok _litoct.tmp
+$ if $status then rm _litoct.tmp;
$ return
$
$resplit: echo "resplit"
-$ gawk -- "{ FS = "":""; $0 = $0; print $2 }" >tmp.
+$ gawk -- "{ FS = "":""; $0 = $0; print $2 }" >_resplit.tmp
a:b:c d:e:f
-$ cmp resplit.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$rswhite: echo "rswhite"
-$ gawk -f rswhite.awk rswhite.in >tmp.
-$ cmp rswhite.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$prmarscl: echo "prmarscl"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f prmarscl.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp prmarscl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$sclforin: echo "sclforin"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f sclforin.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp sclforin.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$sclifin: echo "sclifin"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f sclifin.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp sclifin.ok tmp.
-$ if $status then rm tmp.;
+$ cmp resplit.ok _resplit.tmp
+$ if $status then rm _resplit.tmp;
$ return
$
$intprec: echo "intprec"
-$ gawk -f intprec.awk >tmp. 2>&1
-$ cmp intprec.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f intprec.awk >_intprec.tmp 2>&1
+$ cmp intprec.ok _intprec.tmp
+$ if $status then rm _intprec.tmp;
$ return
$
-$childin: echo "childin: currently fails for the VMS port, so skipped"
+$childin: echo "childin skipped"
$ return
$! note: this `childin' test currently [gawk 3.0.3] fails for vms
$!!childin: echo "childin"
$ echo "note: type ``hi<return><ctrl/Z>'",-
"' if testing appears to hang in `childin'"
-$!! @echo hi | gawk "BEGIN { ""cat"" | getline; print; close(""cat"") }" >tmp.
-$ gawk "BEGIN { ""type sys$input:"" | getline; print; close(""type sys$input:"") }" >tmp.
+$!! @echo hi | gawk "BEGIN { ""cat"" | getline; print; close(""cat"") }" >_childin.tmp
+$ gawk "BEGIN { ""type sys$input:"" | getline; print; close(""type sys$input:"") }" >_childin.tmp
hi
-$ cmp childin.ok tmp.
-$ if $status then rm tmp.;
+$ cmp childin.ok _childin.tmp
+$ if $status then rm _childin.tmp;
$ return
$
$noeffect: echo "noeffect"
$ AWKPATH_srcdir
-$ gawk --lint -f noeffect.awk >tmp. 2>&1
-$ cmp noeffect.ok tmp.
-$ if $status then rm tmp.;
+$ gawk --lint -f noeffect.awk >_noeffect.tmp 2>&1
+$ cmp noeffect.ok _noeffect.tmp
+$ if $status then rm _noeffect.tmp;
$ return
$
$numsubstr: echo "numsubstr"
$ AWKPATH_srcdir
-$ gawk -f numsubstr.awk numsubstr.in >tmp.
-$ cmp numsubstr.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$gnureops: echo "gnureops"
-$ gawk -f gnureops.awk >tmp.
-$ cmp gnureops.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$pcntplus: echo "pcntplus"
-$ gawk -f pcntplus.awk >tmp.
-$ cmp pcntplus.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f numsubstr.awk numsubstr.in >_numsubstr.tmp
+$ cmp numsubstr.ok _numsubstr.tmp
+$ if $status then rm _numsubstr.tmp;
$ return
$
$prmreuse: echo "prmreuse"
$ if f$search("prmreuse.ok").eqs."" then create prmreuse.ok
-$ gawk -f prmreuse.awk >tmp.
-$ cmp prmreuse.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$math: echo "math"
-$ gawk -f math.awk >tmp.
-$ cmp math.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f prmreuse.awk >_prmreuse.tmp
+$ cmp prmreuse.ok _prmreuse.tmp
+$ if $status then rm _prmreuse.tmp;
$ return
$
$fflush:
-$ echo "fflush: hopeless for VMS, so skipped"
+$ echo "fflush: not supported"
$ return
$!!fflush: echo "fflush"
$ ! hopelessly Unix-specific
-$!! @fflush.sh >tmp.
-$ cmp fflush.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fldchg: echo "fldchg"
-$ gawk -f fldchg.awk fldchg.in >tmp.
-$ cmp fldchg.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fldchgnf: echo "fldchgnf"
-$ gawk -f fldchgnf.awk fldchgnf.in >tmp.
-$ cmp fldchgnf.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$reindops: echo "reindops"
-$ gawk -f reindops.awk reindops.in >tmp.
-$ cmp reindops.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$sprintfc: echo "sprintfc"
-$ gawk -f sprintfc.awk sprintfc.in >tmp.
-$ cmp sprintfc.ok tmp.
-$ if $status then rm tmp.;
+$!! @fflush.sh >_fflush.tmp
+$ cmp fflush.ok _fflush.tmp
+$ if $status then rm _fflush.tmp;
$ return
$
$getlnhd:
-$ echo "getlnhd: uses Unix-specific command so won't work on VMS"
+$ echo "getlnhd skipped"
$ return
$!!getlnhd: echo "getlnhd"
-$ gawk -f getlnhd.awk >tmp.
-$ cmp getlnhd.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$backgsub: echo "backgsub"
-$ gawk -f backgsub.awk backgsub.in >tmp.
-$ cmp backgsub.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f getlnhd.awk >_getlnhd.tmp
+$ cmp getlnhd.ok _getlnhd.tmp
+$ if $status then rm _getlnhd.tmp;
$ return
$
$tweakfld: echo "tweakfld"
-$ gawk -f tweakfld.awk tweakfld.in >tmp.
+$ gawk -f tweakfld.awk tweakfld.in >_tweakfld.tmp
$ if f$search("errors.cleanup").nes."" then rm errors.cleanup;*
-$ cmp tweakfld.ok tmp.
-$ if $status then rm tmp.;
+$ cmp tweakfld.ok _tweakfld.tmp
+$ if $status then rm _tweakfld.tmp;
$ return
$
$clsflnam: echo "clsflnam"
$ if f$search("clsflnam.ok").eqs."" then create clsflnam.ok
-$ gawk -f clsflnam.awk clsflnam.in >tmp. 2>&1
-$ cmp clsflnam.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f clsflnam.awk clsflnam.in >_clsflnam.tmp 2>&1
+$ cmp clsflnam.ok _clsflnam.tmp
+$ if $status then rm _clsflnam.tmp;
$ return
$
$mmap8k: echo "mmap8k"
-$ gawk "{ print }" mmap8k.in >tmp.
-$ cmp mmap8k.in tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnarray: echo "fnarray"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f fnarray.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp fnarray.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$dynlj: echo "dynlj"
-$ gawk -f dynlj.awk >tmp.
-$ cmp dynlj.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$substr: echo "substr"
-$ gawk -f substr.awk >tmp.
-$ cmp substr.ok tmp.
-$ if $status then rm tmp.;
+$ gawk "{ print }" mmap8k.in >_mmap8k.tmp
+$ cmp mmap8k.in _mmap8k.tmp
+$ if $status then rm _mmap8k.tmp;
$ return
$
$eofsplit: echo "eofsplit"
$ if f$search("eofsplit.ok").eqs."" then create eofsplit.ok
-$ gawk -f eofsplit.awk >tmp.
-$ cmp eofsplit.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$prt1eval: echo "prt1eval"
-$ gawk -f prt1eval.awk >tmp.
-$ cmp prt1eval.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$splitwht: echo "splitwht"
-$ gawk -f splitwht.awk >tmp.
-$ cmp splitwht.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f eofsplit.awk >_eofsplit.tmp
+$ cmp eofsplit.ok _eofsplit.tmp
+$ if $status then rm _eofsplit.tmp;
$ return
$
$back89: echo "back89"
-$ gawk "/a\8b/" back89.in >tmp.
-$ cmp back89.ok tmp.
-$ if $status then rm tmp.;
+$ gawk "/a\8b/" back89.in >_back89.tmp
+$ cmp back89.ok _back89.tmp
+$ if $status then rm _back89.tmp;
$ return
$
$tradanch: echo "tradanch"
$ if f$search("tradanch.ok").eqs."" then create tradanch.ok
-$ gawk --traditional -f tradanch.awk tradanch.in >tmp.
-$ cmp tradanch.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$nlfldsep: echo "nlfldsep"
-$ gawk -f nlfldsep.awk nlfldsep.in >tmp.
-$ cmp nlfldsep.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$splitvar: echo "splitvar"
-$ gawk -f splitvar.awk splitvar.in >tmp.
-$ cmp splitvar.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$intest: echo "intest"
-$ gawk -f intest.awk >tmp.
-$ cmp intest.ok tmp.
-$ if $status then rm tmp.;
+$ gawk --traditional -f tradanch.awk tradanch.in >_tradanch.tmp
+$ cmp tradanch.ok _tradanch.tmp
+$ if $status then rm _tradanch.tmp;
$ return
$
$pid: echo "pid"
$ pid = f$integer("%x" + f$getjpi("","PID"))
$ ppid = f$integer("%x" + f$getjpi("","OWNER"))
-$ gawk -v "ok_pid=''pid'" -v "ok_ppid=''ppid'" -f pid.awk >tmp. >& _NL:
-$ cmp pid.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "ok_pid=''pid'" -v "ok_ppid=''ppid'" -f pid.awk >_pid.tmp >& _NL:
+$ cmp pid.ok _pid.tmp
+$ if $status then rm _pid.tmp;
$ return
$
$strftlng: echo "strftlng"
$ define/User TZ "UTC" !useless
-$ gawk -f strftlng.awk >tmp.
-$ cmp strftlng.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f strftlng.awk >_strftlng.tmp
+$ cmp strftlng.ok _strftlng.tmp
+$ if $status then rm _strftlng.tmp;
$ return
$
$nfldstr: echo "nfldstr"
$ if f$search("nfldstr.ok").eqs."" then create nfldstr.ok
-$ gawk "$1 == 0 { print ""bug"" }" >tmp.
+$ gawk "$1 == 0 { print ""bug"" }" >_nfldstr.tmp
-$ cmp nfldstr.ok tmp.
-$ if $status then rm tmp.;
+$ cmp nfldstr.ok _nfldstr.tmp
+$ if $status then rm _nfldstr.tmp;
$ return
$
$nors: echo "nors"
$!! there's no straightforward way to supply non-terminated input on the fly
$!! @echo A B C D E | tr -d '\12' | $(AWK) '{ print $$NF }' - $(srcdir)/nors.in > _$@
$!! so just read a line from sys$input instead
-$ gawk "{ print $NF }" - nors.in >tmp.
+$ gawk "{ print $NF }" - nors.in >_nors.tmp
A B C D E
-$ cmp nors.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnarydel: echo "fnarydel"
-$ gawk -f fnarydel.awk >tmp.
-$ cmp fnarydel.ok tmp.
-$ if $status then rm tmp.;
+$ cmp nors.ok _nors.tmp
+$ if $status then rm _nors.tmp;
$ return
$
$reint: echo "reint"
-$ gawk --re-interval -f reint.awk reint.in >tmp.
-$ cmp reint.ok tmp.
-$ if $status then rm tmp.;
+$ gawk --re-interval -f reint.awk reint.in >_reint.tmp
+$ cmp reint.ok _reint.tmp
+$ if $status then rm _reint.tmp;
$ return
$
$noparms: echo "noparms"
$ set noOn
$ AWKPATH_srcdir
-$ gawk -f noparms.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ gawk -f noparms.awk >_noparms.tmp 2>&1
+$ if .not.$status then call exit_code 1 _noparms.tmp
$ set On
-$ cmp noparms.ok tmp.
-$ if $status then rm tmp.;
+$ cmp noparms.ok _noparms.tmp
+$ if $status then rm _noparms.tmp;
$ return
$
$pipeio1: echo "pipeio1"
$ cat = "TYPE" !close enough, as long as we avoid .LIS default suffix
$ define/User test1 []test1.
$ define/User test2 []test2.
-$ gawk -f pipeio1.awk >tmp.
+$ gawk -f pipeio1.awk >_pipeio1.tmp
$ rm test1.;,test2.;
-$ cmp pipeio1.ok tmp.
-$ if $status then rm tmp.;
+$ cmp pipeio1.ok _pipeio1.tmp
+$ if $status then rm _pipeio1.tmp;
$ return
$
$pipeio2:
-$ echo "pipeio2: uses Unix-specific command so won't work on VMS"
+$ echo "pipeio2 skipped"
$ return
$!!pipeio2: echo "pipeio2"
$ cat = "gawk -- {print}"
$ tr = "??" !unfortunately, no trivial substitution available...
-$ gawk -v "SRCDIR=." -f pipeio2.awk >tmp.
-$ cmp pipeio2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$funstack: echo "funstack"
-$ gawk -f funstack.awk funstack.in >tmp.
-$ cmp funstack.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "SRCDIR=." -f pipeio2.awk >_pipeio2.tmp
+$ cmp pipeio2.ok _pipeio2.tmp
+$ if $status then rm _pipeio2.tmp;
$ return
$
$clobber: echo "clobber"
-$ gawk -f clobber.awk >tmp.
+$ gawk -f clobber.awk >_clobber.tmp
$ cmp clobber.ok seq.
$ if $status then rm seq.;*
-$ cmp clobber.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$delarprm: echo "delarprm"
-$ gawk -f delarprm.awk >tmp.
-$ cmp delarprm.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$prdupval: echo "prdupval"
-$ gawk -f prdupval.awk prdupval.in >tmp.
-$ cmp prdupval.ok tmp.
-$ if $status then rm tmp.;
+$ cmp clobber.ok _clobber.tmp
+$ if $status then rm _clobber.tmp;
$ return
$
$nasty: echo "nasty"
$ set noOn
-$ gawk -f nasty.awk >tmp.
+$ gawk -f nasty.awk >_nasty.tmp
$ call fixup_LRL nasty.ok
-$ call fixup_LRL tmp. "purge"
-$ cmp nasty.ok tmp.
-$ if $status then rm tmp.;
+$ call fixup_LRL _nasty.tmp "purge"
+$ cmp nasty.ok _nasty.tmp
+$ if $status then rm _nasty.tmp;
$ set On
$ return
$
$nasty2: echo "nasty2"
$ set noOn
-$ gawk -f nasty2.awk >tmp.
+$ gawk -f nasty2.awk >_nasty2.tmp
$ call fixup_LRL nasty2.ok
-$ call fixup_LRL tmp. "purge"
-$ cmp nasty2.ok tmp.
-$ if $status then rm tmp.;
-$ set On
-$ return
-$
-$zeroflag: echo "zeroflag"
-$ gawk -f zeroflag.awk >tmp.
-$ cmp zeroflag.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$getnr2tm: echo "getnr2tm"
-$ gawk -f getnr2tm.awk getnr2tm.in >tmp.
-$ cmp getnr2tm.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$getnr2tb: echo "getnr2tb"
-$ gawk -f getnr2tb.awk getnr2tb.in >tmp.
-$ cmp getnr2tb.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$printf1: echo "printf1"
-$ gawk -f printf1.awk >tmp.
-$ cmp printf1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$funsmnam: echo "funsmnam"
-$ set noOn
-$ gawk -f funsmnam.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp funsmnam.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnamedat: echo "fnamedat"
-$ set noOn
-$ gawk -f fnamedat.awk < fnamedat.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp fnamedat.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$numindex: echo "numindex"
-$ set noOn
-$ gawk -f numindex.awk < numindex.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp numindex.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$subslash: echo "subslash"
-$ set noOn
-$ gawk -f subslash.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ call fixup_LRL _nasty2.tmp "purge"
+$ cmp nasty2.ok _nasty2.tmp
+$ if $status then rm _nasty2.tmp;
$ set On
-$ cmp subslash.ok tmp.
-$ if $status then rm tmp.;
$ return
$
-$opasnslf: echo "opasnslf"
+$arrayparm:
+$fnarray:
+$fnaryscl:
+$funsmnam:
+$match2:
+$opasnslf:
+$opasnidx:
+$paramres:
+$parseme:
+$printfbad1:
+$prmarscl:
+$subslash:
+$ echo "''test'"
$ set noOn
-$ gawk -f opasnslf.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f 'test'.awk >_'test'.tmp 2>&1
+$ if .not.$status then call exit_code 2 _'test'.tmp
$ set On
-$ cmp opasnslf.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$opasnidx: echo "opasnidx"
-$ set noOn
-$ gawk -f opasnidx.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp opasnidx.ok tmp.
-$ if $status then rm tmp.;
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
$
$arynocls: echo "arynocls"
-$ gawk -v "INPUT"=arynocls.in -f arynocls.awk >tmp.
-$ cmp arynocls.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$igncdym: echo "igncdym"
-$ gawk -f igncdym.awk igncdym.in >tmp.
-$ cmp igncdym.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "INPUT"=arynocls.in -f arynocls.awk >_arynocls.tmp
+$ cmp arynocls.ok _arynocls.tmp
+$ if $status then rm _arynocls.tmp;
$ return
$
$getlnbuf: echo "getlnbuf"
-$ gawk -f getlnbuf.awk getlnbuf.in >tmp.
-$ gawk -f gtlnbufv.awk getlnbuf.in >tmp2.
-$ cmp getlnbuf.ok tmp.
-$ if $status then rm tmp.;
-$ cmp getlnbuf.ok tmp2.
-$ if $status then rm tmp2.;
-$ return
-$
-$arysubnm: echo "arysubnm"
-$ gawk -f arysubnm.awk >tmp.
-$ cmp arysubnm.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnparydl: echo "fnparydl"
-$ gawk -f fnparydl.awk >tmp.
-$ cmp fnparydl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$nondec: echo "nondec"
-$ gawk -f nondec.awk >tmp.
-$ cmp nondec.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$nlstrina: echo "nlstrina"
-$ AWKPATH_srcdir
-$ gawk -f nlstrina.awk >tmp.
-$ cmp nlstrina.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$octsub: echo "octsub"
-$ AWKPATH_srcdir
-$ gawk -f octsub.awk >tmp.
-$ cmp octsub.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$nlinstr: echo "nlinstr"
-$ gawk -f nlinstr.awk nlinstr.in >tmp.
-$ cmp nlinstr.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$ofmt: echo "ofmt"
-$ gawk -f ofmt.awk ofmt.in >tmp.
-$ cmp ofmt.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$hsprint: echo "hsprint"
-$ gawk -f hsprint.awk >tmp.
-$ cmp hsprint.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fsfwfs: echo "fsfwfs"
-$ gawk -f fsfwfs.awk fsfwfs.in >tmp.
-$ cmp fsfwfs.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$ofmts: echo "ofmts"
-$ gawk -f ofmts.awk ofmts.in >tmp.
-$ cmp ofmts.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$parseme: echo "parseme"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f parseme.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp parseme.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$splitdef: echo "splitdef"
-$ gawk -f splitdef.awk >tmp.
-$ cmp splitdef.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnaryscl: echo "fnaryscl"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f fnaryscl.awk >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp fnaryscl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnasgnm: echo "fnasgnm"
-$ set noOn
-$ AWKPATH_srcdir
-$ gawk -f fnasgnm.awk < fnasgnm.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp fnasgnm.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f getlnbuf.awk getlnbuf.in >_getlnbuf.tmp
+$ gawk -f gtlnbufv.awk getlnbuf.in >_getlnbuf.too
+$ cmp getlnbuf.ok _getlnbuf.tmp
+$ if $status then rm _getlnbuf.tmp;
+$ cmp getlnbuf.ok _getlnbuf.too
+$ if $status then rm _getlnbuf.too;
$ return
$
$lint: echo "lint"
$ AWKPATH_srcdir
-$ gawk -f lint.awk >tmp. 2>&1
-$ cmp lint.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f lint.awk >_lint.tmp 2>&1
+$ cmp lint.ok _lint.tmp
+$ if $status then rm _lint.tmp;
$ return
$
-$procinfs: echo "procinfs"
-$ gawk -f procinfs.awk >tmp.
-$ cmp procinfs.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$sort1: echo "sort1"
-$ gawk -f sort1.awk >tmp.
-$ cmp sort1.ok tmp.
-$ if $status then rm tmp.;
+$lintold: echo "lintold"
+$ AWKPATH_srcdir
+$ gawk -f lintold.awk --lint-old <lintold.in >_lintold.tmp 2>&1
+$ cmp lintold.ok _lintold.tmp
+$ if $status then rm _lintold.tmp;
$ return
$
$ofmtbig: echo "ofmtbig"
$ set noOn
-$ gawk -f ofmtbig.awk ofmtbig.in >tmp. 2>&1
+$ gawk -f ofmtbig.awk ofmtbig.in >_ofmtbig.tmp 2>&1
$ set On
-$ cmp ofmtbig.ok tmp.
-$ if $status then rm tmp.;
+$ cmp ofmtbig.ok _ofmtbig.tmp
+$ if $status then rm _ofmtbig.tmp;
$ return
$
$inetechu: echo "inetechu"
@@ -1061,602 +840,500 @@ BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13";
$ set On
$ return
$
-$paramtyp: echo "paramtyp"
-$ gawk -f paramtyp.awk >tmp.
-$ cmp paramtyp.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$rsnul1nl: echo "rsnul1nl"
-$ gawk -f rsnul1nl.awk rsnul1nl.in >tmp.
-$ cmp rsnul1nl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$datanonl: echo "datanonl"
-$ gawk -f datanonl.awk datanonl.in >tmp.
-$ cmp datanonl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$regeq: echo "regeq"
-$ gawk -f regeq.awk regeq.in >tmp.
-$ cmp regeq.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
$redfilnm: echo "redfilnm"
-$ gawk -f redfilnm.awk srcdir="." redfilnm.in >tmp.
-$ cmp redfilnm.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$strtod: echo "strtod"
-$ gawk -f strtod.awk strtod.in >tmp.
-$ cmp strtod.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f redfilnm.awk srcdir="." redfilnm.in >_redfilnm.tmp
+$ cmp redfilnm.ok _redfilnm.tmp
+$ if $status then rm _redfilnm.tmp;
$ return
$
$leaddig: echo "leaddig"
-$ gawk -v "x=2E" -f leaddig.awk >tmp.
-$ cmp leaddig.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -v "x=2E" -f leaddig.awk >_leaddig.tmp
+$ cmp leaddig.ok _leaddig.tmp
+$ if $status then rm _leaddig.tmp;
$ return
$
$clos1way:
-$ echo "clos1way: uses unsupported `|&' redirection, so skipped"
+$ echo "clos1way: not supported"
$ return
$!!clos1way: echo "clos1way"
-$ gawk -f clos1way.awk >tmp.
-$ cmp clos1way.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arynasty: echo "arynasty"
-$ gawk -f arynasty.awk >tmp.
-$ cmp arynasty.ok tmp.
-$ if $status then rm tmp.;
+$ gawk -f clos1way.awk >_clos1way.tmp
+$ cmp clos1way.ok _clos1way.tmp
+$ if $status then rm _clos1way.tmp;
$ return
$
$shadow: echo "shadow"
$ set noOn
$ AWKPATH_srcdir
-$ gawk --lint -f shadow.awk >tmp. 2>&1
+$ gawk --lint -f shadow.awk >_shadow.tmp 2>&1
$ set On
-$ cmp shadow.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$regx8bit: echo "regx8bit"
-$ gawk -f regx8bit.awk >tmp.
-$ cmp regx8bit.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$psx96sub: echo "psx96sub"
-$ gawk -f psx96sub.awk >tmp.
-$ cmp psx96sub.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$addcomma: echo "addcomma"
-$ gawk -f addcomma.awk addcomma.in >tmp.
-$ cmp addcomma.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$gnuops2: echo "gnuops2"
-$ gawk -f gnuops2.awk >tmp.
-$ cmp gnuops2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$rebt8b1: echo "rebt8b1"
-$ gawk -f rebt8b1.awk >tmp.
-$ cmp rebt8b1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$rebt8b2: echo "rebt8b2"
-$ gawk -f rebt8b2.awk >tmp.
-$ cmp rebt8b2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$leadnl: echo "leadnl"
-$ gawk -f leadnl.awk leadnl.in >tmp.
-$ cmp leadnl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$funsemnl: echo "funsemnl"
-$ gawk -f funsemnl.awk >tmp.
-$ cmp funsemnl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$ofmtfidl: echo "ofmtfidl"
-$ gawk -f ofmtfidl.awk ofmtfidl.in >tmp.
-$ cmp ofmtfidl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$onlynl: echo "onlynl"
-$ gawk -f onlynl.awk onlynl.in >tmp.
-$ cmp onlynl.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arrymem1: echo "arrymem1"
-$ gawk -f arrymem1.awk >tmp.
-$ cmp arrymem1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$compare2: echo "compare2"
-$ gawk -f compare2.awk >tmp.
-$ cmp compare2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$minusstr: echo "minusstr"
-$ gawk -f minusstr.awk >tmp.
-$ cmp minusstr.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$membug1: echo "membug1"
-$ gawk -f membug1.awk membug1.in >tmp.
-$ cmp membug1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$forsimp: echo "forsimp"
-$ gawk -f forsimp.awk >tmp.
-$ cmp forsimp.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$concat1: echo "concat1"
-$ gawk -f concat1.awk concat1.in >tmp.
-$ cmp concat1.ok tmp.
-$ if $status then rm tmp.;
+$ cmp shadow.ok _shadow.tmp
+$ if $status then rm _shadow.tmp;
$ return
$
$longsub: echo "longsub"
$ set noOn
-$ gawk -f longsub.awk longsub.in >tmp.
+$ gawk -f longsub.awk longsub.in >_longsub.tmp
$!! the records here are too long for DIFF to handle
$!! so assume success as long as gawk doesn't crash
$!! call fixup_LRL longsub.ok
-$!! call fixup_LRL tmp. "purge"
-$!! cmp longsub.ok tmp.
-$ if $status then rm tmp.;
+$!! call fixup_LRL _longsub.tmp "purge"
+$!! cmp longsub.ok _longsub.tmp
+$ if $status then rm _longsub.tmp;
$ set On
$ return
$
-$arrayprm2: echo "arrayprm2"
-$ gawk -f arrayprm2.awk arrayprm2.in >tmp.
-$ cmp arrayprm2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
$arrayprm3: echo "arrayprm3"
-$ gawk -f arrayprm3.awk arrayprm3.in >tmp.
-$ cmp arrayprm3.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arryref2: echo "arryref2"
-$ gawk -f arryref2.awk arryref2.in >tmp.
-$ cmp arryref2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arryref3: echo "arryref3"
-$ set noOn
-$ gawk -f arryref3.awk arryref3.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp arryref3.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$arryref4: echo "arryref4"
+$ gawk -f arrayprm3.awk arrayprm3.in >_arrayprm3.tmp
+$ cmp arrayprm3.ok _arrayprm3.tmp
+$ if $status then rm _arrayprm3.tmp;
+$ return
+$
+$arryref3:
+$arryref4:
+$arryref5:
+$aryprm1:
+$aryprm2:
+$aryprm3:
+$aryprm4:
+$aryprm5:
+$aryprm6:
+$aryprm7:
+$delfunc:
+$nfneg:
+$numindex:
+$scalar:
+$sclforin:
+$sclifin:
+$ echo "''test'"
$ set noOn
-$ gawk -f arryref4.awk arryref4.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f 'test'.awk 'test'.in >_'test'.tmp 2>&1
+$ if .not.$status then call exit_code 2 _'test'.tmp
$ set On
-$ cmp arryref4.ok tmp.
-$ if $status then rm tmp.;
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
$
-$arryref5: echo "arryref5"
+$fnamedat:
+$fnasgnm:
+$ echo "''test'"
$ set noOn
-$ gawk -f arryref5.awk arryref5.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f 'test'.awk <'test'.in >_'test'.tmp 2>&1
+$ if .not.$status then call exit_code 2 _'test'.tmp
$ set On
-$ cmp arryref5.ok tmp.
-$ if $status then rm tmp.;
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
$
-$aryprm1: echo "aryprm1"
-$ set noOn
-$ gawk -f aryprm1.awk aryprm1.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm1.ok tmp.
-$ if $status then rm tmp.;
+$exitval2: echo "exitval2 skipped"
$ return
-$
-$aryprm2: echo "aryprm2"
-$ set noOn
-$ gawk -f aryprm2.awk aryprm2.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm2.ok tmp.
-$ if $status then rm tmp.;
+$!!exitval2: echo "exitval2"
+$ gawk -f exitval2.awk exitval2.in >_exitval2.tmp
+$ cmp exitval2.ok _exitval2.tmp
+$ if $status then rm _exitval2.tmp;
$ return
$
-$aryprm3: echo "aryprm3"
+$fnarray2:
+$fnmisc:
+$gsubasgn:
+$unterm:
+$ echo "''test'"
$ set noOn
-$ gawk -f aryprm3.awk aryprm3.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f 'test'.awk 'test'.in >_'test'.tmp 2>&1
+$ if .not.$status then call exit_code 1 _'test'.tmp
$ set On
-$ cmp aryprm3.ok tmp.
-$ if $status then rm tmp.;
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
$
-$aryprm4: echo "aryprm4"
-$ set noOn
-$ gawk -f aryprm4.awk aryprm4.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm4.ok tmp.
-$ if $status then rm tmp.;
+$getline: echo "getline skipped"
$ return
-$
-$aryprm5: echo "aryprm5"
-$ set noOn
-$ gawk -f aryprm5.awk aryprm5.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm5.ok tmp.
-$ if $status then rm tmp.;
+$!!getline: echo "getline"
+$ gawk -f getline.awk getline.in >_getline.tmp
+$ cmp getline.ok _getline.tmp
+$ if $status then rm _getline.tmp;
$ return
$
-$aryprm6: echo "aryprm6"
-$ set noOn
-$ gawk -f aryprm6.awk aryprm6.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm6.ok tmp.
-$ if $status then rm tmp.;
+$gsubtst3: echo "gsubtst3"
+$ gawk --re-interval -f gsubtst3.awk gsubtst3.in >_gsubtst3.tmp
+$ cmp gsubtst3.ok _gsubtst3.tmp
+$ if $status then rm _gsubtst3.tmp;
$ return
$
-$aryprm7: echo "aryprm7"
-$ set noOn
-$ gawk -f aryprm7.awk aryprm7.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp aryprm7.ok tmp.
-$ if $status then rm tmp.;
+$! FIXME: gawk generates an extra, empty output file while running this test...
+$iobug1: echo "iobug1"
+$ cat = "TYPE sys$input:"
+$ true = "exit 1" !success
+$ gawk -f iobug1.awk iobug1.in >_iobug1.tmp
+$ cmp iobug1.ok _iobug1.tmp
+$ if $status then rm _iobug1.tmp;
$ return
$
-$aryprm8: echo "aryprm8"
-$ gawk -f aryprm8.awk aryprm8.in >tmp.
-$ cmp aryprm8.ok tmp.
-$ if $status then rm tmp.;
+$rstest4: echo "rstest4 skipped"
$ return
-$
-$concat2: echo "concat2"
-$ gawk -f concat2.awk concat2.in >tmp.
-$ cmp concat2.ok tmp.
-$ if $status then rm tmp.;
+$!!rstest4: echo "rstest4"
+$ gawk -f rstest4.awk rstest4.in >_rstest4.tmp
+$ cmp rstest4.ok _rstest4.tmp
+$ if $status then rm _rstest4.tmp;
$ return
$
-$concat3: echo "concat3"
-$ gawk -f concat3.awk concat3.in >tmp.
-$ cmp concat3.ok tmp.
-$ if $status then rm tmp.;
+$rstest5: echo "rstest5 skipped"
$ return
-$
-$delarpm2: echo "delarpm2"
-$ gawk -f delarpm2.awk delarpm2.in >tmp.
-$ cmp delarpm2.ok tmp.
-$ if $status then rm tmp.;
+$!!rstest5: echo "rstest5"
+$ gawk -f rstest5.awk rstest5.in >_rstest5.tmp
+$ cmp rstest5.ok _rstest5.tmp
+$ if $status then rm _rstest5.tmp;
$ return
$
-$delfunc: echo "delfunc"
+$synerr1:
+$synerr2:
+$ echo "''test'"
$ set noOn
-$ gawk -f delfunc.awk delfunc.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f 'test'.awk >_'test'.tmp 2>&1
+$ if .not.$status then call exit_code 1 _'test'.tmp
$ set On
-$ cmp delfunc.ok tmp.
-$ if $status then rm tmp.;
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
$
-$exitval2: echo "exitval2 skipped"
+$uninit2:
+$uninit3:
+$uninit4:
+$uninitialized:
+$ echo "''test'"
+$ gawk --lint -f 'test'.awk 'test'.in >_'test'.tmp 2>&1
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
$ return
-$!!exitval2: echo "exitval2"
-$ gawk -f exitval2.awk exitval2.in >tmp.
-$ cmp exitval2.ok tmp.
-$ if $status then rm tmp.;
+$
+$space: echo "space"
+$ set noOn
+$ gawk -f " " space.awk >_space.tmp 2>&1
+$ if .not.$status then call exit_code 2 _space.tmp
+$ set On
+$! space.ok expects "No such file...", we see "no such file..."
+$ igncascmp space.ok _space.tmp
+$ if $status then rm _space.tmp;
$ return
$
-$fmttest: echo "fmttest"
-$ gawk -f fmttest.awk fmttest.in >tmp.
-$ cmp fmttest.ok tmp.
-$ if $status then rm tmp.;
+$printf0: echo "printf0"
+$ gawk --posix -f printf0.awk >_printf0.tmp
+$ cmp printf0.ok _printf0.tmp
+$ if $status then rm _printf0.tmp;
$ return
$
-$fnarray2: echo "fnarray2"
+$rsnulbig: echo "rsnulbig"
+$ if .not.pipeok
+$ then echo "Without the PIPE command, ''test' can't be run."
+$ On warning then return
+$ pipe echo "With PIPE, this will probably take quite a while..."
+$ On warning then $
+$ pipeok = 1
+$ else echo "This will probably take quite a while too..."
+$ endif
$ set noOn
-$ gawk -f fnarray2.awk fnarray2.in >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ pipe -
+ gawk -- "BEGIN {for (i = 1; i <= 128*64+1; i++) print ""abcdefgh123456\n""}" | -
+ gawk -- "BEGIN {RS = """"; ORS = ""\n\n""}; {print}" | -
+ gawk -- "/^[^a]/; END {print NR}" >_rsnulbig.tmp
$ set On
-$ cmp fnarray2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fnmisc: echo "fnmisc"
+$ cmp rsnulbig.ok _rsnulbig.tmp
+$ if $status then rm _rsnulbig.tmp;
+$ return
+$
+$rsnulbig2: echo "rsnulbig2"
+$ if .not.pipeok
+$ then echo "Without the PIPE command, ''test' can't be run."
+$ On warning then return
+$ pipe echo "With PIPE, this will probably take quite a while..."
+$ On warning then $
+$ pipeok = 1
+$ else echo "This will probably take quite a while too..."
+$ endif
$ set noOn
-$ gawk -f fnmisc.awk fnmisc.in >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ pipe -
+ gawk -- "BEGIN {ORS=""""; n=""\n""; for (i=1; i<=10; i++) n=(n n); for (i=1; i<=128; i++) print n; print ""abc\n""}" | -
+ gawk -- "BEGIN {RS=""""; ORS=""\n\n"" }; {print}" | -
+ gawk -- "/^[^a]/; END {print NR}" >_rsnulbig2.tmp
$ set On
-$ cmp fnmisc.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$fordel: echo "fordel"
-$ gawk -f fordel.awk fordel.in >tmp.
-$ cmp fordel.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$getline: echo "getline skipped"
-$ return
-$!!getline: echo "getline"
-$ gawk -f getline.awk getline.in >tmp.
-$ cmp getline.ok tmp.
-$ if $status then rm tmp.;
+$ cmp rsnulbig2.ok _rsnulbig2.tmp
+$ if $status then rm _rsnulbig2.tmp;
+$ return
+$
+$whiny: echo "whiny"
+$ ! WHINY_USERS=1 $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@
+$ Define/User WHINY_USERS 1
+$ gawk -f whiny.awk whiny.in >_whiny.tmp
+$ cmp whiny.ok _whiny.tmp
+$ if $status then rm _whiny.tmp;
+$ return
+$
+$subamp:
+$wideidx:
+$widesub2:
+$widesub3:
+$ echo "''test'"
+$ gosub define_gawklocale
+$ gawk -f 'test'.awk 'test'.in >_'test'.tmp
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
+$ return
+$
+$ignrcas2:
+$!!lc_num1:
+$wideidx2:
+$widesub:
+$widesub4:
+$ echo "''test'"
+$ gosub define_gawklocale
+$ gawk -f 'test'.awk >_'test'.tmp
+$ cmp 'test'.ok _'test'.tmp
+$ if $status then rm _'test'.tmp;
+$ return
+$
+$! This test is somewhat suspect for vms due to exit code manipulation
+$exitval1: echo "exitval1"
+$ gawk -f exitval1.awk >_exitval1.tmp 2>&1
+$ if $status then call exit_code 0 _exitval1.tmp
+$ cmp exitval1.ok _exitval1.tmp
+$ if $status then rm _exitval1.tmp;
+$ return
+$
+$fsspcoln: echo "fsspcoln"
+$ gawk -f fsspcoln.awk "FS=[ :]+" fsspcoln.in >_forspcoln.tmp
+$ cmp fsspcoln.ok _forspcoln.tmp
+$ if $status then rm _forspcoln.tmp;
+$ return
+$
+$getlndir: echo "getlndir"
+$ ! assume we're running in the test subdirectory; we don't want to
+$ ! perform a messy conversion of [] into its file specification
+$ gawk -v "SRCDIR=[-]test.dir" -f getlndir.awk >_getlndir.tmp
+$! getlndir.ok expects "Is a directory", we see "is a directory"
+$ igncascmp getlndir.ok _getlndir.tmp
+$ if $status then rm _getlndir.tmp;
+$ return
+$
+$rsstart2: echo "rsstart2"
+$ gawk -f rsstart2.awk rsstart1.in >_rsstart2.tmp
+$ cmp rsstart2.ok _rsstart2.tmp
+$ if $status then rm _rsstart2.tmp;
+$ return
+$
+$! rsstart3 fails, presumeably due to PIPE's use of print file format
+$rsstart3: echo "rsstart3 skipped"
+$ return
+$!!rsstart3: echo "rsstart3"
+$ if .not.pipeok
+$ then echo "Without the PIPE command, ''test' can't be run."
+$ On warning then return
+$ pipe echo "With PIPE, ''test' will finish quickly."
+$ On warning then $
+$ pipeok = 1
+$ endif
+$ ! head rsstart1.in | gawk -f rsstart2.awk >_rsstart3.tmp
+$ ! splitting this into two steps would make it the same as rsstart2
+$ set noOn
+$ pipe -
+ gawk -- "FNR <= 10" rsstart1.in | -
+ gawk -f rsstart2.awk >_rsstart3.tmp
+$ set On
+$ cmp rsstart3.ok _rsstart3.tmp
+$ if $status then rm _rsstart3.tmp;
$ return
$
-$getline3: echo "getline3"
-$ gawk -f getline3.awk getline3.in >tmp.
-$ cmp getline3.ok tmp.
-$ if $status then rm tmp.;
+$nondec2: echo "nondec2"
+$ gawk --non-decimal-data -v "a=0x1" -f nondec2.awk >_nondec2.tmp
+$ cmp nondec2.ok _nondec2.tmp
+$ if $status then rm _nondec2.tmp;
$ return
$
-$gsubasgn: echo "gsubasgn"
+$nofile: echo "nofile"
+$! gawk "{}" no/such/file >_nofile.tmp 2>&1
+$! nofile.ok expects no/such/file, but using that name in the test would
+$! yield "file specification syntax error" instead of "no such file..."
$ set noOn
-$ gawk -f gsubasgn.awk gsubasgn.in >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ gawk "{}" no-such-file >_nofile.tmp 2>&1
+$ if .not.$status then call exit_code 2 _nofile.tmp
$ set On
-$ cmp gsubasgn.ok tmp.
-$ if $status then rm tmp.;
+$! restore altered file name
+$ gawk "{gsub(""no-such-file"", ""no/such/file""); print}" _nofile.tmp >_nofile.too
+$ rm _nofile.tmp;
+$ mv _nofile.too _nofile.tmp
+$! nofile.ok expects "No such file ...", we see "no such file ..."
+$ igncascmp nofile.ok _nofile.tmp
+$ if $status then rm _nofile.tmp;
$ return
$
-$gsubtest: echo "gsubtest"
-$ gawk -f gsubtest.awk gsubtest.in >tmp.
-$ cmp gsubtest.ok tmp.
-$ if $status then rm tmp.;
+$binmode1: echo "binmode1"
+$ gawk -v "BINMODE=3" "BEGIN { print BINMODE }" >_binmode1.tmp
+$ cmp binmode1.ok _binmode1.tmp
+$ if $status then rm _binmode1.tmp;
$ return
$
-$gsubtst2: echo "gsubtst2"
-$ gawk -f gsubtst2.awk gsubtst2.in >tmp.
-$ cmp gsubtst2.ok tmp.
-$ if $status then rm tmp.;
+$subi18n: echo "subi18n"
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ gawk -f subi18n.awk >_subi18n.tmp
+$ cmp subi18n.ok _subi18n.tmp
+$ if $status then rm _subi18n.tmp;
$ return
$
-$gsubtst3: echo "gsubtst3"
-$ gawk --re-interval -f gsubtst3.awk gsubtst3.in >tmp.
-$ cmp gsubtst3.ok tmp.
-$ if $status then rm tmp.;
+$concat4: echo "concat4"
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ gawk -f concat4.awk concat4.in >_concat4.tmp
+$ cmp concat4.ok _concat4.tmp
+$ if $status then rm _concat4.tmp;
$ return
$
-$gsubtst4: echo "gsubtst4"
-$ gawk -f gsubtst4.awk gsubtst4.in >tmp.
-$ cmp gsubtst4.ok tmp.
-$ if $status then rm tmp.;
+$devfd: echo "devfd: not supported"
$ return
-$
-$gsubtst5: echo "gsubtst5"
-$ gawk -f gsubtst5.awk gsubtst5.in >tmp.
-$ cmp gsubtst5.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$hex: echo "hex"
-$ gawk -f hex.awk hex.in >tmp.
-$ cmp hex.ok tmp.
-$ if $status then rm tmp.;
+$!!devfd: echo "devfd"
+$ gawk 1 /dev/fd/4 /dev/fd/5 4< /devfd.in4 5< devfd.in5 >_devfd.tmp
+$ cmp devfd.ok _devfd.tmp
+$ if $status then rm _devfd.tmp;
$ return
$
-$inputred: echo "inputred"
-$ gawk -f inputred.awk inputred.in >tmp.
-$ cmp inputred.ok tmp.
-$ if $status then rm tmp.;
+$devfd1: echo "devfd1: not supported"
$ return
-$
-$iobug1: echo "iobug1"
-$ cat = "TYPE sys$input:"
-$ true = "exit 1" !success
-$ gawk -f iobug1.awk iobug1.in >tmp.
-$ cmp iobug1.ok tmp.
-$ if $status then rm tmp.;
+$!!devfd1: echo "devfd1"
+$ gawk -f devfd1.awk 4< devfd.in1 5< devfd.in2 >_devfd1.tmp
+$ cmp devfd1.ok _devfd1.tmp
+$ if $status then rm _devfd1.tmp;
$ return
$
-$manglprm: echo "manglprm"
-$ gawk -f manglprm.awk manglprm.in >tmp.
-$ cmp manglprm.ok tmp.
-$ if $status then rm tmp.;
+$devfd2: echo "devfd2: not supported"
$ return
-$
-$nested: echo "nested"
-$ gawk -f nested.awk nested.in >tmp.
-$ cmp nested.ok tmp.
-$ if $status then rm tmp.;
+$!!devfd2: echo "devfd2"
+$! The program text is the '1' which will print each record. How compact can you get?
+$ gawk 1 /dev/fd/4 /dev/fd/5 4< /devfd.in1 5< devfd.in2 >_devfd2.tmp
+$ cmp devfd2.ok _devfd2.tmp
+$ if $status then rm _devfd2.tmp;
$ return
$
-$nfneg: echo "nfneg"
+$mixed1: echo "mixed1"
$ set noOn
-$ gawk -f nfneg.awk nfneg.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
+$ gawk -f /dev/null --source "BEGIN {return junk}" >_mixed1.tmp 2>&1
+$ if .not.$status then call exit_code 1 _mixed1.tmp
$ set On
-$ cmp nfneg.ok tmp.
-$ if $status then rm tmp.;
+$ cmp mixed1.ok _mixed1.tmp
+$ if $status then rm _mixed1.tmp;
$ return
$
-$noloop1: echo "noloop1"
-$ gawk -f noloop1.awk noloop1.in >tmp.
-$ cmp noloop1.ok tmp.
-$ if $status then rm tmp.;
+$mtchi18n: echo "mtchi18n"
+$ define/User GAWKLOCALE "ru_RU.UTF-8"
+$ gawk -f mtchi18n.awk mtchi18n.in >_mtchi18n.tmp
+$ cmp mtchi18n.ok _mtchi18n.tmp
+$ if $status then rm _mtchi18n.tmp;
$ return
$
-$noloop2: echo "noloop2"
-$ gawk -f noloop2.awk noloop2.in >tmp.
-$ cmp noloop2.ok tmp.
-$ if $status then rm tmp.;
+$reint2: echo "reint2"
+$ gosub define_gawklocale
+$ gawk --re-interval -f reint2.awk reint2.in >_reint2.tmp
+$ cmp reint2.ok _reint2.tmp
+$ if $status then rm _reint2.tmp;
$ return
$
-$nulrsend: echo "nulrsend"
-$ gawk -f nulrsend.awk nulrsend.in >tmp.
-$ cmp nulrsend.ok tmp.
-$ if $status then rm tmp.;
+$localenl: echo "localenl skipped"
$ return
-$
-$prec: echo "prec"
-$ gawk -f prec.awk prec.in >tmp.
-$ cmp prec.ok tmp.
-$ if $status then rm tmp.;
+$!!localenl: echo "localenl"
+$ @localenl.com /Output=_localenl.tmp ! sh ./localenl.sh >tmp.
+$ cmp localenl.ok _localenl.tmp
+$ if $status then rm _localenl.tmp;
$ return
$
-$prtoeval: echo "prtoeval"
-$ gawk -f prtoeval.awk prtoeval.in >tmp.
-$ cmp prtoeval.ok tmp.
-$ if $status then rm tmp.;
+$mbprintf1: echo "mbprintf1 skipped"
$ return
-$
-$rstest1: echo "rstest1"
-$ gawk -f rstest1.awk rstest1.in >tmp.
-$ cmp rstest1.ok tmp.
-$ if $status then rm tmp.;
+$!!mbprintf1: echo "mbprintf1"
+$! Makefile test exports this, but we don't want to impact user's environment
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ gawk -f mbprintf1.awk mbprintf1.in >_mbprintf1.tmp
+$ cmp mbprintf1.ok _mbprintf1.tmp
+$ if $status then rm _mbprintf1.tmp;
$ return
$
-$rstest2: echo "rstest2"
-$ gawk -f rstest2.awk rstest2.in >tmp.
-$ cmp rstest2.ok tmp.
-$ if $status then rm tmp.;
+$mbprintf2: echo "mbprintf2"
+$! Makefile test exports this, ...
+$ define/User GAWKLOCALE "ja_JP.UTF-8"
+$ gawk -f mbprintf2.awk >_mbprintf2.tmp
+$ cmp mbprintf2.ok _mbprintf2.tmp
+$ if $status then rm _mbprintf2.tmp;
$ return
$
-$rstest3: echo "rstest3"
-$ gawk -f rstest3.awk rstest3.in >tmp.
-$ cmp rstest3.ok tmp.
-$ if $status then rm tmp.;
+$mbprintf3: echo "mbprintf3"
+$! Makefile test exports this, ...
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ gawk -f mbprintf3.awk mbprintf3.in >_mbprintf2.tmp
+$ cmp mbprintf3.ok _mbprintf2.tmp
+$ if $status then rm _mbprintf2.tmp;
$ return
$
-$rstest4: echo "rstest4 skipped"
+$mbfw1: echo "mbfw1 skipped"
$ return
-$!!rstest4: echo "rstest4"
-$ gawk -f rstest4.awk rstest4.in >tmp.
-$ cmp rstest4.ok tmp.
-$ if $status then rm tmp.;
+$!!mbfw1: echo "mbfw1"
+$! Makefile test exports this, ...
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ gawk -f mbfw1.awk mbfw1.in >_mbfw1.tmp
+$ cmp mbfw1.ok _mbfw1.tmp
+$ if $status then rm _mbfw1.tmp;
$ return
$
-$rstest5: echo "rstest5 skipped"
-$ return
-$!!rstest5: echo "rstest5"
-$ gawk -f rstest5.awk rstest5.in >tmp.
-$ cmp rstest5.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$scalar: echo "scalar"
-$ set noOn
-$ gawk -f scalar.awk scalar.in >tmp. 2>&1
-$ if .not.$status then call exit_code 2
-$ set On
-$ cmp scalar.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$sortempty: echo "sortempty"
-$ gawk -f sortempty.awk sortempty.in >tmp.
-$ cmp sortempty.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$splitarr: echo "splitarr"
-$ gawk -f splitarr.awk splitarr.in >tmp.
-$ cmp splitarr.ok tmp.
-$ if $status then rm tmp.;
+$gsubtst6: echo "gsubtst6"
+$ define/User GAWKLOCALE "C"
+$ gawk -f gsubtst6.awk >_gsubtst6.tmp
+$ cmp gsubtst6.ok _gsubtst6.tmp
+$ if $status then rm _gsubtst6.tmp;
$ return
$
-$strcat1: echo "strcat1"
-$ gawk -f strcat1.awk strcat1.in >tmp.
-$ cmp strcat1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$subsepnm: echo "subsepnm"
-$ gawk -f subsepnm.awk subsepnm.in >tmp.
-$ cmp subsepnm.ok tmp.
-$ if $status then rm tmp.;
+$mbstr1: echo "mbstr1"
+$ gosub define_gawklocale
+$ AWKPATH_srcdir
+$ gawk -f mbstr1.awk >_mbstr1.tmp
+$ cmp mbstr1.ok _mbstr1.tmp
+$ if $status then rm _mbstr1.tmp;
$ return
$
-$synerr1: echo "synerr1"
+$printfbad2: echo "printfbad2"
$ set noOn
-$ gawk -f synerr1.awk synerr1.in >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ gawk --lint -f printfbad2.awk printfbad2.in >_printfbad2.tmp 2>&1
$ set On
-$ cmp synerr1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$uninitialized: echo "uninitialized"
-$ gawk --lint -f uninitialized.awk uninitialized.in >tmp. 2>&1
-$ cmp uninitialized.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$uninit2: echo "uninit2"
-$ gawk --lint -f uninit2.awk uninit2.in >tmp. 2>&1
-$ cmp uninit2.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$uninit3: echo "uninit3"
-$ gawk --lint -f uninit3.awk uninit3.in >tmp. 2>&1
-$ cmp uninit3.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$uninit4: echo "uninit4"
-$ gawk --lint -f uninit4.awk uninit4.in >tmp. 2>&1
-$ cmp uninit4.ok tmp.
-$ if $status then rm tmp.;
+$ cmp printfbad2.ok _printfbad2.tmp
+$ if $status then rm _printfbad2.tmp;
+$ return
+$
+$fmtspcl:
+$! fmtspcl only works if gawk was compiled to use IEEE floating point
+$ if floatmode.lt.0 then gosub calc_floatmode
+$ if floatmode.lt.2
+$ then echo "fmtspcl: not supported"
+$ else echo "fmtspcl"
+$ gawk -f fmtspcl.awk >_fmtspcl.tmp
+$ cmp fmtspcl.ok _fmtspcl.tmp
+$ if $status then rm _fmtspcl.tmp;
+$ endif
$ return
$
-$unterm: echo "unterm"
+$intformat: echo "intformat"
+$! note: we use the Alpha value for D_float; VAX value is slightly higher
+$! due to not losing precision by being processed via G_float
+$ huge_0 = "1.70141183460469213e+38" ! D_float
+$ huge_1 = "8.98846567431157854e+307" ! G_float
+$ huge_2 = "1.79769313486231570e+308" ! IEEE T_float
+$ if floatmode.lt.0 then gosub calc_floatmode
+$ hugeval = huge_'floatmode'
$ set noOn
-$ gawk -f unterm.awk unterm.in >tmp. 2>&1
-$ if .not.$status then call exit_code 1
+$ gawk -v "HUGEVAL=''hugeval'" -f intformat.awk >_intformat.tmp 2>&1
$ set On
-$ cmp unterm.ok tmp.
-$ if $status then rm tmp.;
+$ cmp intformat.ok _intformat.tmp
+$ if $status then rm _intformat.tmp;
$ return
$
-$wjposer1: echo "wjposer1"
-$ gawk -f wjposer1.awk wjposer1.in >tmp.
-$ cmp wjposer1.ok tmp.
-$ if $status then rm tmp.;
-$ return
-$
-$zeroe0: echo "zeroe0"
-$ gawk -f zeroe0.awk zeroe0.in >tmp.
-$ cmp zeroe0.ok tmp.
-$ if $status then rm tmp.;
+$vms_cmd: echo "vms_cmd"
+$ if f$search("vms_cmd.ok").eqs.""
+$ then create vms_cmd.ok
+World!
+$ endif
+$ gawk /Commands="BEGIN { print ""World!"" }" _NL: /Output=_vms_cmd.tmp
+$ cmp vms_cmd.ok _vms_cmd.tmp
+$ if $status then rm _vms_cmd.tmp;
$ return
$
$vms_io1: echo "vms_io1"
@@ -1665,33 +1342,84 @@ $ then create vms_io1.ok
Hello
$ endif
$ ! define/User dbg$input sys$command:
-$ gawk -f - >tmp.
+$ gawk -f - >_vms_io1.tmp
# prior to 3.0.4, gawk crashed doing any redirection after closing stdin
BEGIN { print "Hello" >"/dev/stdout" }
-$ cmp vms_io1.ok tmp.
-$ if $status then rm tmp.;
+$ cmp vms_io1.ok _vms_io1.tmp
+$ if $status then rm _vms_io1.tmp;
$ return
$
-$vms_cmd: echo "vms_cmd"
-$ if f$search("vms_cmd.ok").eqs.""
-$ then create vms_cmd.ok
-World!
+$vms_io2: echo "vms_io2"
+$ if f$search("vms_io2.ok").eqs.""
+$ then create vms_io2.ok
+xyzzy
$ endif
-$ gawk /Commands="BEGIN { print ""World!"" }" _NL: /Output=tmp.
-$ cmp vms_cmd.ok tmp.
-$ if $status then rm tmp.;
+$ ! VAXCRTL created all files in stream_LF format unless explicitly
+$ ! overridden by the program; with DECC$SHR, a new version of an
+$ ! existing file inherits the previous version's record format;
+$ ! for gawk versions older than 3.1.7, that resulted in
+$ ! "can't redirect to `File' (invalid record attributes)"
+$ ! when an awk program used >"File" (internally, not on command line)
+$ ! and File already existed as a batch log file or PIPE output file
+$ create /FDL=sys$input: _vms_io2.vfc
+file
+ organization sequential
+record
+ format VFC ! variable with fixed control area (default size 2 bytes)
+ carriage_control print
+$ set noOn
+$ ! define/User dbg$input sys$command:
+$ gawk -- "BEGIN { print ""xyzzy"" >""_vms_io2.vfc"" }" >_vms_io2.tmp 2>&1
+$ set On
+$ cmp _NL: _vms_io2.tmp
+$ if $status then rm _vms_io2.tmp;
+$ cmp vms_io2.ok _vms_io2.vfc
+$ if $status then rm _vms_io2.vfc;*
$ return
$
$clean:
-$ if f$search("tmp.") .nes."" then rm tmp.;*
-$ if f$search("tmp.too") .nes."" then rm tmp.too;*
+$ if f$search("_*.*") .nes."" then rm _*.tmp;*
+$ if f$search("_*.too") .nes."" then rm _*.too;*
$ if f$search("out%.") .nes."" then rm out%.;*
+$ if f$search("strftime.in").nes."" then rm strftime.in;*
$ if f$search("strftime.ok").nes."" then rm strftime.ok;*
$ if f$search("test%.") .nes."" then rm test%.;*
$ if f$search("seq.") .nes."" then rm seq.;*
$ if f$search("_pid.in") .nes."" then rm _pid.in;*
$ if f$search("[.junk]*.*").nes."" then rm [.junk]*.*;*
$ if f$parse("[.junk]") .nes."" then rm []junk.dir;1
+$ if f$search("_vms_io2.vfc") .nes."" then rm _vms_io2.vfc;*
+$ return
+$
+$! try to determine what type of double precision floating point gawk uses
+$calc_floatmode:
+$ ! this is fragile; it might break if gawk changes overflow handling
+$ Set noOn
+$ gawk -- "BEGIN {print 10^308}" >_NL: 2>&1
+$ if $status
+$ then floatmode = 2 ! IEEE T_float
+$ else gawk -- "BEGIN {print 10^307}" >_NL: 2>&1
+$ if $status
+$ then floatmode = 1 ! Alpha/VAX G_float
+$ else floatmode = 0 ! VAX D_float
+$ endif
+$ endif
+$ Set On
+$ return
+$
+$! assign temporary value to logical name GAWKLOCALE unless it already has one
+$! [ -z "$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8
+$define_gawklocale:
+$ ! gawk uses the C run-time libary's getenv() function to look up
+$ ! GAWKLOCALE, so a symbol provides another way to supply the value;
+$ ! we don't want to override logical or symbol if either is present
+$ if f$trnlnm("GAWKLOCALE").eqs.""
+$ then
+$ if f$type(gawklocale).nes."STRING" .or. "''gawklocale'".eqs.""
+$ then
+$ define/User GAWKLOCALE "en_US.UTF-8"
+$ endif
+$ endif
$ return
$
$! make sure that the specified file's longest-record-length field is set;
@@ -1718,7 +1446,7 @@ $! add a fake "EXIT CODE" record to the end of the temporary output file
$! to simulate the ``|| echo EXIT CODE $$? >>_$@'' shell script usage
$exit_code: subroutine
$ if f$trnlnm("FTMP").nes."" then close/noLog ftmp
-$ open/Append ftmp tmp.
+$ open/Append ftmp 'p2'
$ write ftmp "EXIT CODE: ",p1
$ close ftmp
$ endsubroutine !exit_code