diff --git a/.gitignore b/.gitignore index 4c633c1..253fd9b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ insight-6.8-1.tar.bz2 +/insight-7.4.50.tar.bz2 diff --git a/gdb-6.3-bz231832-obstack-2gb.patch b/gdb-6.3-bz231832-obstack-2gb.patch new file mode 100644 index 0000000..0b08cee --- /dev/null +++ b/gdb-6.3-bz231832-obstack-2gb.patch @@ -0,0 +1,192 @@ +https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=231832 + + +Index: gdb-7.4.50.20111218/gdb/symmisc.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/symmisc.c 2011-04-04 17:19:59.000000000 +0200 ++++ gdb-7.4.50.20111218/gdb/symmisc.c 2011-12-19 00:28:18.189232014 +0100 +@@ -147,8 +147,8 @@ print_objfile_statistics (void) + if (OBJSTAT (objfile, sz_strtab) > 0) + printf_filtered (_(" Space used by a.out string tables: %d\n"), + OBJSTAT (objfile, sz_strtab)); +- printf_filtered (_(" Total memory used for objfile obstack: %d\n"), +- obstack_memory_used (&objfile->objfile_obstack)); ++ printf_filtered (_(" Total memory used for objfile obstack: %ld\n"), ++ (long) obstack_memory_used (&objfile->objfile_obstack)); + printf_filtered (_(" Total memory used for psymbol cache: %d\n"), + bcache_memory_used (psymbol_bcache_get_bcache + (objfile->psymbol_cache))); +Index: gdb-7.4.50.20111218/include/obstack.h +=================================================================== +--- gdb-7.4.50.20111218.orig/include/obstack.h 2011-10-22 03:35:29.000000000 +0200 ++++ gdb-7.4.50.20111218/include/obstack.h 2011-12-19 00:28:18.189232014 +0100 +@@ -188,31 +188,31 @@ struct obstack /* control current objec + + /* Declare the external functions we use; they are in obstack.c. */ + +-extern void _obstack_newchunk (struct obstack *, int); ++extern void _obstack_newchunk (struct obstack *, PTR_INT_TYPE); + extern void _obstack_free (struct obstack *, void *); +-extern int _obstack_begin (struct obstack *, int, int, ++extern int _obstack_begin (struct obstack *, PTR_INT_TYPE, int, + void *(*) (long), void (*) (void *)); +-extern int _obstack_begin_1 (struct obstack *, int, int, ++extern int _obstack_begin_1 (struct obstack *, PTR_INT_TYPE, int, + void *(*) (void *, long), + void (*) (void *, void *), void *); +-extern int _obstack_memory_used (struct obstack *); ++extern PTR_INT_TYPE _obstack_memory_used (struct obstack *); + + /* Do the function-declarations after the structs + but before defining the macros. */ + + void obstack_init (struct obstack *obstack); + +-void * obstack_alloc (struct obstack *obstack, int size); ++void * obstack_alloc (struct obstack *obstack, PTR_INT_TYPE size); + +-void * obstack_copy (struct obstack *obstack, void *address, int size); +-void * obstack_copy0 (struct obstack *obstack, void *address, int size); ++void * obstack_copy (struct obstack *obstack, void *address, PTR_INT_TYPE size); ++void * obstack_copy0 (struct obstack *obstack, void *address, PTR_INT_TYPE size); + + void obstack_free (struct obstack *obstack, void *block); + +-void obstack_blank (struct obstack *obstack, int size); ++void obstack_blank (struct obstack *obstack, PTR_INT_TYPE size); + +-void obstack_grow (struct obstack *obstack, void *data, int size); +-void obstack_grow0 (struct obstack *obstack, void *data, int size); ++void obstack_grow (struct obstack *obstack, void *data, PTR_INT_TYPE size); ++void obstack_grow0 (struct obstack *obstack, void *data, PTR_INT_TYPE size); + + void obstack_1grow (struct obstack *obstack, int data_char); + void obstack_ptr_grow (struct obstack *obstack, void *data); +@@ -220,20 +220,20 @@ void obstack_int_grow (struct obstack *o + + void * obstack_finish (struct obstack *obstack); + +-int obstack_object_size (struct obstack *obstack); ++PTR_INT_TYPE obstack_object_size (struct obstack *obstack); + +-int obstack_room (struct obstack *obstack); +-void obstack_make_room (struct obstack *obstack, int size); ++PTR_INT_TYPE obstack_room (struct obstack *obstack); ++void obstack_make_room (struct obstack *obstack, PTR_INT_TYPE size); + void obstack_1grow_fast (struct obstack *obstack, int data_char); + void obstack_ptr_grow_fast (struct obstack *obstack, void *data); + void obstack_int_grow_fast (struct obstack *obstack, int data); +-void obstack_blank_fast (struct obstack *obstack, int size); ++void obstack_blank_fast (struct obstack *obstack, PTR_INT_TYPE size); + + void * obstack_base (struct obstack *obstack); + void * obstack_next_free (struct obstack *obstack); + int obstack_alignment_mask (struct obstack *obstack); +-int obstack_chunk_size (struct obstack *obstack); +-int obstack_memory_used (struct obstack *obstack); ++size_t obstack_chunk_size (struct obstack *obstack); ++size_t obstack_memory_used (struct obstack *obstack); + + /* Error handler called when `obstack_chunk_alloc' failed to allocate + more memory. This can be set to a user defined function. The +@@ -318,7 +318,7 @@ extern int obstack_exit_failure; + # define obstack_make_room(OBSTACK,length) \ + __extension__ \ + ({ struct obstack *__o = (OBSTACK); \ +- int __len = (length); \ ++ PTR_INT_TYPE __len = (length); \ + if (__o->chunk_limit - __o->next_free < __len) \ + _obstack_newchunk (__o, __len); \ + (void) 0; }) +@@ -331,7 +331,7 @@ __extension__ \ + # define obstack_grow(OBSTACK,where,length) \ + __extension__ \ + ({ struct obstack *__o = (OBSTACK); \ +- int __len = (length); \ ++ PTR_INT_TYPE __len = (length); \ + if (__o->next_free + __len > __o->chunk_limit) \ + _obstack_newchunk (__o, __len); \ + _obstack_memcpy (__o->next_free, (where), __len); \ +@@ -341,7 +341,7 @@ __extension__ \ + # define obstack_grow0(OBSTACK,where,length) \ + __extension__ \ + ({ struct obstack *__o = (OBSTACK); \ +- int __len = (length); \ ++ PTR_INT_TYPE __len = (length); \ + if (__o->next_free + __len + 1 > __o->chunk_limit) \ + _obstack_newchunk (__o, __len + 1); \ + _obstack_memcpy (__o->next_free, (where), __len); \ +@@ -392,7 +392,7 @@ __extension__ \ + # define obstack_blank(OBSTACK,length) \ + __extension__ \ + ({ struct obstack *__o = (OBSTACK); \ +- int __len = (length); \ ++ PTR_INT_TYPE __len = (length); \ + if (__o->chunk_limit - __o->next_free < __len) \ + _obstack_newchunk (__o, __len); \ + obstack_blank_fast (__o, __len); \ +Index: gdb-7.4.50.20111218/libiberty/obstack.c +=================================================================== +--- gdb-7.4.50.20111218.orig/libiberty/obstack.c 2005-05-10 17:33:33.000000000 +0200 ++++ gdb-7.4.50.20111218/libiberty/obstack.c 2011-12-19 00:28:18.191232006 +0100 +@@ -44,9 +44,11 @@ + #if !defined (_LIBC) && defined (__GNU_LIBRARY__) && __GNU_LIBRARY__ > 1 + #include + #if _GNU_OBSTACK_INTERFACE_VERSION == OBSTACK_INTERFACE_VERSION ++#if 0 /* 64-bit obstack is not compatible with any glibc implementation. */ + #define ELIDE_CODE + #endif + #endif ++#endif + + + #ifndef ELIDE_CODE +@@ -139,7 +141,7 @@ struct obstack *_obstack; + free up some memory, then call this again. */ + + int +-_obstack_begin (struct obstack *h, int size, int alignment, ++_obstack_begin (struct obstack *h, PTR_INT_TYPE size, int alignment, + POINTER (*chunkfun) (long), void (*freefun) (void *)) + { + register struct _obstack_chunk *chunk; /* points to new chunk */ +@@ -183,7 +185,7 @@ _obstack_begin (struct obstack *h, int s + } + + int +-_obstack_begin_1 (struct obstack *h, int size, int alignment, ++_obstack_begin_1 (struct obstack *h, PTR_INT_TYPE size, int alignment, + POINTER (*chunkfun) (POINTER, long), + void (*freefun) (POINTER, POINTER), POINTER arg) + { +@@ -235,7 +237,7 @@ _obstack_begin_1 (struct obstack *h, int + to the beginning of the new one. */ + + void +-_obstack_newchunk (struct obstack *h, int length) ++_obstack_newchunk (struct obstack *h, PTR_INT_TYPE length) + { + register struct _obstack_chunk *old_chunk = h->chunk; + register struct _obstack_chunk *new_chunk; +@@ -388,11 +390,11 @@ obstack_free (struct obstack *h, POINTER + abort (); + } + +-int ++PTR_INT_TYPE + _obstack_memory_used (struct obstack *h) + { + register struct _obstack_chunk* lp; +- register int nbytes = 0; ++ register PTR_INT_TYPE nbytes = 0; + + for (lp = h->chunk; lp != 0; lp = lp->prev) + { +@@ -421,6 +423,7 @@ print_and_abort (void) + } + + #if 0 ++/* These functions are now broken for 64-bit obstack! */ + /* These are now turned off because the applications do not use it + and it uses bcopy via obstack_grow, which causes trouble on sysV. */ + diff --git a/gdb-6.3-gcore-thread-20050204.patch b/gdb-6.3-gcore-thread-20050204.patch new file mode 100644 index 0000000..31ecbba --- /dev/null +++ b/gdb-6.3-gcore-thread-20050204.patch @@ -0,0 +1,25 @@ +2005-02-07 Jeff Johnston + + * linux-nat.c (linux_nat_xfer_memory): Don't use + linux_proc_xfer_memory for ia64. + +Index: gdb-6.8.50.20090803/gdb/linux-nat.c +=================================================================== +--- gdb-6.8.50.20090803.orig/gdb/linux-nat.c 2009-08-04 06:29:47.000000000 +0200 ++++ gdb-6.8.50.20090803/gdb/linux-nat.c 2009-08-04 06:29:55.000000000 +0200 +@@ -4495,10 +4495,15 @@ linux_xfer_partial (struct target_ops *o + offset &= ((ULONGEST) 1 << addr_bit) - 1; + } + ++#ifndef NATIVE_XFER_UNWIND_TABLE ++ /* FIXME: For ia64, we cannot currently use linux_proc_xfer_memory ++ for accessing thread storage. Revert when Bugzilla 147436 ++ is fixed. */ + xfer = linux_proc_xfer_partial (ops, object, annex, readbuf, writebuf, + offset, len); + if (xfer != 0) + return xfer; ++#endif + + return super_xfer_partial (ops, object, annex, readbuf, writebuf, + offset, len); diff --git a/gdb-6.3-gstack-20050411.patch b/gdb-6.3-gstack-20050411.patch new file mode 100644 index 0000000..d6f4cb0 --- /dev/null +++ b/gdb-6.3-gstack-20050411.patch @@ -0,0 +1,232 @@ +2004-11-23 Andrew Cagney + + * Makefile.in (uninstall-gstack, install-gstack): New rules, add + to install and uninstall. + * gstack.sh, gstack.1: New files. + +Index: gdb-7.4.50.20120103/gdb/Makefile.in +=================================================================== +--- gdb-7.4.50.20120103.orig/gdb/Makefile.in 2012-01-03 05:52:15.000000000 +0100 ++++ gdb-7.4.50.20120103/gdb/Makefile.in 2012-01-03 05:53:25.974210230 +0100 +@@ -1017,7 +1017,7 @@ gdb.z:gdb.1 + install: all + @$(MAKE) $(FLAGS_TO_PASS) install-only + +-install-only: $(CONFIG_INSTALL) ++install-only: install-gstack $(CONFIG_INSTALL) + transformed_name=`t='$(program_transform_name)'; \ + echo gdb | sed -e "$$t"` ; \ + if test "x$$transformed_name" = x; then \ +@@ -1039,7 +1039,25 @@ install-only: $(CONFIG_INSTALL) + install-python: + $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(GDB_DATADIR)/python/gdb + +-uninstall: force $(CONFIG_UNINSTALL) ++GSTACK=gstack ++.PHONY: install-gstack ++install-gstack: ++ transformed_name=`t='$(program_transform_name)'; \ ++ echo $(GSTACK) | sed -e "$$t"` ; \ ++ if test "x$$transformed_name" = x; then \ ++ transformed_name=$(GSTACK) ; \ ++ else \ ++ true ; \ ++ fi ; \ ++ $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(bindir) ; \ ++ $(INSTALL_PROGRAM) $(srcdir)/$(GSTACK).sh \ ++ $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) ; \ ++ : $(SHELL) $(srcdir)/../mkinstalldirs \ ++ $(DESTDIR)$(man1dir) ; \ ++ : $(INSTALL_DATA) $(srcdir)/gstack.1 \ ++ $(DESTDIR)$(man1dir)/$$transformed_name.1 ++ ++uninstall: force uninstall-gstack $(CONFIG_UNINSTALL) + transformed_name=`t='$(program_transform_name)'; \ + echo gdb | sed -e $$t` ; \ + if test "x$$transformed_name" = x; then \ +@@ -1051,6 +1069,18 @@ uninstall: force $(CONFIG_UNINSTALL) + $(DESTDIR)$(man1dir)/$$transformed_name.1 + @$(MAKE) DO=uninstall "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do + ++.PHONY: uninstall-gstack ++uninstall-gstack: ++ transformed_name=`t='$(program_transform_name)'; \ ++ echo $(GSTACK) | sed -e $$t` ; \ ++ if test "x$$transformed_name" = x; then \ ++ transformed_name=$(GSTACK) ; \ ++ else \ ++ true ; \ ++ fi ; \ ++ rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \ ++ $(DESTDIR)$(man1dir)/$$transformed_name.1 ++ + # The C++ name parser can be built standalone for testing. + test-cp-name-parser.o: cp-name-parser.c + $(COMPILE) -DTEST_CPNAMES cp-name-parser.c +Index: gdb-7.4.50.20120103/gdb/gstack.sh +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20120103/gdb/gstack.sh 2012-01-03 05:52:37.278385632 +0100 +@@ -0,0 +1,43 @@ ++#!/bin/sh ++ ++if test $# -ne 1; then ++ echo "Usage: `basename $0 .sh` " 1>&2 ++ exit 1 ++fi ++ ++if test ! -r /proc/$1; then ++ echo "Process $1 not found." 1>&2 ++ exit 1 ++fi ++ ++# GDB doesn't allow "thread apply all bt" when the process isn't ++# threaded; need to peek at the process to determine if that or the ++# simpler "bt" should be used. ++ ++backtrace="bt" ++if test -d /proc/$1/task ; then ++ # Newer kernel; has a task/ directory. ++ if test `/bin/ls /proc/$1/task | /usr/bin/wc -l` -gt 1 2>/dev/null ; then ++ backtrace="thread apply all bt" ++ fi ++elif test -f /proc/$1/maps ; then ++ # Older kernel; go by it loading libpthread. ++ if /bin/grep -e libpthread /proc/$1/maps > /dev/null 2>&1 ; then ++ backtrace="thread apply all bt" ++ fi ++fi ++ ++GDB=${GDB:-/usr/bin/gdb} ++ ++# Run GDB, strip out unwanted noise. ++# --readnever is no longer used since .gdb_index is now in use. ++$GDB --quiet -nx /proc/$1/exe $1 <&1 | ++set width 0 ++set height 0 ++set pagination no ++$backtrace ++EOF ++/bin/sed -n \ ++ -e 's/^\((gdb) \)*//' \ ++ -e '/^#/p' \ ++ -e '/^Thread/p' +Index: gdb-7.4.50.20120103/gdb/testsuite/gdb.base/gstack.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20120103/gdb/testsuite/gdb.base/gstack.exp 2012-01-03 05:52:37.279385629 +0100 +@@ -0,0 +1,66 @@ ++# Copyright (C) 2012 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 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, see . ++ ++set testfile gstack ++set executable ${testfile} ++set binfile ${objdir}/${subdir}/$executable ++if {[build_executable ${testfile} ${executable} "" {debug}] == -1} { ++ return -1 ++} ++ ++set test "spawn inferior" ++set command "${binfile}" ++set res [remote_spawn host $command]; ++if { $res < 0 || $res == "" } { ++ perror "Spawning $command failed." ++ fail $test ++ return ++} ++set use_gdb_stub 1 ++set pid [exp_pid -i $res] ++gdb_expect { ++ -re "looping\r\n" { ++ pass $test ++ } ++ eof { ++ fail "$test (eof)" ++ return ++ } ++ timeout { ++ fail "$test (timeout)" ++ return ++ } ++} ++gdb_exit ++ ++# Testcase uses the most simple notification not to get caught by attach on ++# exiting the function. Still we could retry the gstack command if we fail. ++ ++set test "spawn gstack" ++set command "sh -c GDB=$GDB\\ sh\\ ${srcdir}/../gstack.sh\\ $pid\\;echo\\ GSTACK-END" ++set res [remote_spawn host $command]; ++if { $res < 0 || $res == "" } { ++ perror "Spawning $command failed." ++ fail $test ++} ++set pid [exp_pid -i $res] ++gdb_test_multiple "" $test { ++ -re "^#0 +(0x\[0-9a-f\]+ in )?\\.?func \\(\\) at \[^\r\n\]*\r\n#1 +0x\[0-9a-f\]+ in \\.?main \\(\\) at \[^\r\n\]*\r\nGSTACK-END\r\n\$" { ++ pass $test ++ } ++} ++gdb_exit ++ ++remote_exec host "kill -9 $pid" +Index: gdb-7.4.50.20120103/gdb/testsuite/gdb.base/gstack.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20120103/gdb/testsuite/gdb.base/gstack.c 2012-01-03 05:52:37.279385629 +0100 +@@ -0,0 +1,43 @@ ++/* This testcase is part of GDB, the GNU debugger. ++ ++ Copyright 2005, 2007, 2008, 2009 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 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, see . */ ++ ++#include ++#include ++#include ++ ++void ++func (void) ++{ ++ const char msg[] = "looping\n"; ++ ++ /* Use the most simple notification not to get caught by attach on exiting ++ the function. */ ++ write (1, msg, strlen (msg)); ++ ++ for (;;); ++} ++ ++int ++main (void) ++{ ++ alarm (60); ++ nice (100); ++ ++ func (); ++ ++ return 0; ++} diff --git a/gdb-6.3-ia64-gcore-page0-20050421.patch b/gdb-6.3-ia64-gcore-page0-20050421.patch new file mode 100644 index 0000000..ecdfbae --- /dev/null +++ b/gdb-6.3-ia64-gcore-page0-20050421.patch @@ -0,0 +1,20 @@ +Index: gdb-7.2.50.20110107/gdb/gcore.c +=================================================================== +--- gdb-7.2.50.20110107.orig/gdb/gcore.c 2011-01-05 23:22:49.000000000 +0100 ++++ gdb-7.2.50.20110107/gdb/gcore.c 2011-01-07 09:04:28.000000000 +0100 +@@ -534,8 +534,14 @@ gcore_copy_callback (bfd *obfd, asection + if (size > total_size) + size = total_size; + ++ /* Warn if read error occurs except if we were trying to read the ++ first page for ia64. The first page is marked readable, but it cannot ++ be read. */ + if (target_read_memory (bfd_section_vma (obfd, osec) + offset, +- memhunk, size) != 0) ++ memhunk, size) != 0 ++ && (strcmp (gdbarch_bfd_arch_info (target_gdbarch)->arch_name, ++ "ia64") ++ || bfd_section_vma (obfd, osec) != 0)) + { + warning (_("Memory read failed for corefile " + "section, %s bytes at %s."), diff --git a/gdb-6.3-ia64-gcore-speedup-20050714.patch b/gdb-6.3-ia64-gcore-speedup-20050714.patch new file mode 100644 index 0000000..f902e62 --- /dev/null +++ b/gdb-6.3-ia64-gcore-speedup-20050714.patch @@ -0,0 +1,126 @@ +2005-07-14 Jeff Johnsotn + + * linux-nat.c (linux_nat_xfer_memory): Incorporate Fujitsu + work-around to use /proc/mem for storage, but to fall-back + to PTRACE for ia64 rse register areas. + * ia64-linux-nat.c (ia64_rse_slot_num): New static function. + (ia64_rse_skip_regs): Ditto. + (ia64_linux_check_stack_region): New function. + +Index: gdb-6.8.50.20090803/gdb/linux-nat.c +=================================================================== +--- gdb-6.8.50.20090803.orig/gdb/linux-nat.c 2009-08-04 06:29:55.000000000 +0200 ++++ gdb-6.8.50.20090803/gdb/linux-nat.c 2009-08-04 06:30:53.000000000 +0200 +@@ -4495,15 +4495,38 @@ linux_xfer_partial (struct target_ops *o + offset &= ((ULONGEST) 1 << addr_bit) - 1; + } + +-#ifndef NATIVE_XFER_UNWIND_TABLE +- /* FIXME: For ia64, we cannot currently use linux_proc_xfer_memory +- for accessing thread storage. Revert when Bugzilla 147436 +- is fixed. */ + xfer = linux_proc_xfer_partial (ops, object, annex, readbuf, writebuf, + offset, len); + if (xfer != 0) +- return xfer; ++ { ++#ifdef NATIVE_XFER_UNWIND_TABLE ++ struct mem_region range; ++ range.lo = memaddr; ++ range.hi = memaddr + len; ++ ++ /* FIXME: For ia64, we cannot currently use ++ linux_proc_xfer_partial for accessing rse register storage. ++ Revert when Bugzilla 147436 is fixed. */ ++#ifdef NATIVE_XFER_UNWIND_TABLE ++ extern int ia64_linux_check_stack_region (struct lwp_info *lwp, ++ void *range); ++#endif ++ if (iterate_over_lwps (ia64_linux_check_stack_region, &range) != NULL) ++ { /* This region contains ia64 rse registers, we have to re-read. */ ++ int xxfer; ++ ++ /* Re-read register stack area. */ ++ xxfer = super_xfer_partial (ops, object, annex, ++ readbuf + (range.lo - memaddr), ++ writebuf + (range.lo - memaddr), ++ offset + (range.lo - memaddr), ++ range.hi - range.lo); ++ if (xxfer == 0) ++ xfer = 0; ++ } + #endif ++ return xfer; ++ } + + return super_xfer_partial (ops, object, annex, readbuf, writebuf, + offset, len); +Index: gdb-6.8.50.20090803/gdb/ia64-linux-nat.c +=================================================================== +--- gdb-6.8.50.20090803.orig/gdb/ia64-linux-nat.c 2009-02-23 01:03:49.000000000 +0100 ++++ gdb-6.8.50.20090803/gdb/ia64-linux-nat.c 2009-08-04 06:30:53.000000000 +0200 +@@ -809,6 +809,64 @@ ia64_linux_xfer_partial (struct target_o + + void _initialize_ia64_linux_nat (void); + ++/* ++ * Note: taken from ia64_tdep.c ++ * ++ */ ++ ++static __inline__ unsigned long ++ia64_rse_slot_num (unsigned long addr) ++{ ++ return (addr >> 3) & 0x3f; ++} ++ ++/* Skip over a designated number of registers in the backing ++ store, remembering every 64th position is for NAT. */ ++static __inline__ unsigned long ++ia64_rse_skip_regs (unsigned long addr, long num_regs) ++{ ++ long delta = ia64_rse_slot_num(addr) + num_regs; ++ ++ if (num_regs < 0) ++ delta -= 0x3e; ++ return addr + ((num_regs + delta/0x3f) << 3); ++} ++ ++/* ++ * Check mem_region is stack or not. If stack, /proc//mem cannot return ++ * expected value. ++ */ ++int ia64_linux_check_stack_region(struct lwp_info *ti, struct mem_region *range) ++{ ++ CORE_ADDR addr; ++ int error; ++ unsigned long bsp, cfm, bspstore; ++ long sof; ++ pid_t pid = ptid_get_lwp(ti->ptid); ++ bsp = ptrace(PTRACE_PEEKUSER, pid, PT_AR_BSP ,NULL); ++ if (bsp == (unsigned long)-1) { ++ return 1; ++ } ++ /* stack is allocated by one-segment, not separated into several segments. ++ So, we only have to check whether bsp is in *range* or not. */ ++ if((range->lo <= bsp) && (bsp <= range->hi)) { ++ bspstore = ptrace(PTRACE_PEEKUSER, pid, PT_AR_BSPSTORE, NULL); ++ cfm = ptrace(PTRACE_PEEKUSER, pid, PT_CFM, NULL); ++ sof = cfm & 0x3f; ++ bsp = ia64_rse_skip_regs(bsp, -sof); ++ range->lo = bspstore; ++ range->hi = bsp; ++ /* we have to check the size of dirty register stack area */ ++ /* ++ fprintf_unfiltered(gdb_stdlog, "<%d> <%p> <%lx> <%p> <%p>\n", ++ pid, bsp, sof, range->lo, range->hi); ++ */ ++ return 1; ++ } ++ ++ return 0; ++} ++ + void + _initialize_ia64_linux_nat (void) + { diff --git a/gdb-6.3-ia64-info-frame-fix-20050725.patch b/gdb-6.3-ia64-info-frame-fix-20050725.patch new file mode 100644 index 0000000..2ebab9e --- /dev/null +++ b/gdb-6.3-ia64-info-frame-fix-20050725.patch @@ -0,0 +1,107 @@ +2005-07-25 Jeff Johnstno + + * libunwind-frame.c (libunwind_frame_prev_register): Check valuep + is not NULL before copying cursor address into it. + +testsuite: +2005-07-25 Jeff Johnstno + + * gdb.arch/ia64-sigtramp.exp: New test. + * gdb.arch/ia64-sigtramp.c: Ditto. + +2008-02-24 Jan Kratochvil + + Port to GDB-6.8pre. (Only the testcase has remained.) + +--- gdb-6.3/gdb/testsuite/gdb.arch/ia64-sigtramp.c.fix 2005-07-25 16:42:46.000000000 -0400 ++++ gdb-6.3/gdb/testsuite/gdb.arch/ia64-sigtramp.c 2005-07-25 16:42:08.000000000 -0400 +@@ -0,0 +1,23 @@ ++#include ++#include ++ ++int *l; ++ ++void x (int sig) ++{ ++ printf ("in signal handler for signal %d\n", sig); ++} ++ ++int main() ++{ ++ int k; ++ ++ signal (SIGSEGV, &x); ++ ++ k = *l; ++ ++ printf ("k is %d\n", k); ++ ++ return 0; ++} ++ +--- gdb-6.3/gdb/testsuite/gdb.arch/ia64-sigtramp.exp.fix 2005-07-25 16:42:50.000000000 -0400 ++++ gdb-6.3/gdb/testsuite/gdb.arch/ia64-sigtramp.exp 2005-07-25 16:42:01.000000000 -0400 +@@ -0,0 +1,63 @@ ++# Copyright 2005 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 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. ++ ++# Please email any bugs, comments, and/or additions to this file to: ++# bug-gdb@prep.ai.mit.edu ++ ++# This file was written by Jeff Johnston (jjohnstn@redhat.com) ++ ++if ![istarget "ia64-*-*"] then { ++ return ++} ++ ++set testfile "ia64-sigtramp" ++set srcfile ${testfile}.c ++set binfile ${objdir}/${subdir}/${testfile} ++ ++if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-w}] != "" } { ++ gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." ++} ++ ++if [get_compiler_info ${binfile}] { ++ return -1 ++} ++ ++gdb_exit ++set match_max_old [match_max] ++match_max -d 1000000 ++gdb_start ++match_max -d $match_max_old ++gdb_reinitialize_dir $srcdir/$subdir ++gdb_load ${binfile} ++ ++if ![runto_main] then { ++ fail "Can't run to main" ++ return 0 ++} ++ ++gdb_test "handle SIGSEGV" "SIGSEGV.*Yes.*Yes.*Yes.*Segmentation fault" ++gdb_test "next" "" "first next" ++gdb_test "next" "Program received signal SIGSEGV.*" "getting SIGSEGV" ++gdb_breakpoint "x" ++gdb_test "continue" "Breakpoint.*x.*" "continue to x" ++ ++gdb_test "f 1" ".*signal handler called.*" "frame 1" ++ ++# gdb-7.0+ no longer prints the pseudo registers as they are computed. ++# frame_info says: /* For moment, only display registers that were saved on the ++# stack. */ ++gdb_test "set debug frame 1" ++gdb_test "info frame" "Stack level 1, .*frame_unwind_register_value \\(frame=1,regnum=750\\(p63\\),\[^\r\n\]*\r\n\[^\r\n\]*-> computed bytes=.*" "info sigtramp frame" diff --git a/gdb-6.3-ia64-sigill-20051115.patch b/gdb-6.3-ia64-sigill-20051115.patch new file mode 100644 index 0000000..bf8a1f1 --- /dev/null +++ b/gdb-6.3-ia64-sigill-20051115.patch @@ -0,0 +1,95 @@ +2005-11-15 Jeff Johnston + + * linux-thread-db.c (thread_db_wait): Don't bother continuing if + the wait result indicates the program terminated with a signal. + * linux-nat.c (linux_nat_wait): For SIGILL and SIGTRAP, don't + throw away the event if the user has specified nostop noprint. + +gdb/testsuite: + +2005-11-15 Jeff Johnston + + * gdb.arch/ia64-sigill.c: New test. + * gdb.arch/ia64-sigill.exp: Ditto. + +Index: gdb-7.3.50.20110722/gdb/testsuite/gdb.arch/ia64-sigill.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.3.50.20110722/gdb/testsuite/gdb.arch/ia64-sigill.exp 2011-07-22 19:16:13.000000000 +0200 +@@ -0,0 +1,49 @@ ++# Copyright 2005 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 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. ++ ++# Please email any bugs, comments, and/or additions to this file to: ++# bug-gdb@prep.ai.mit.edu ++ ++# This file was written by Jeff Johnston (jjohnstn@redhat.com) ++ ++if ![istarget "ia64-*-*"] then { ++ return ++} ++ ++set testfile "ia64-sigill" ++set srcfile ${testfile}.c ++set binfile ${objdir}/${subdir}/${testfile} ++ ++# Deliberately compile with pthreads, even though test is single-threaded. ++# We want to force gdb thread code to be exercised. ++if { [gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-w}] != "" } { ++ gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." ++} ++ ++if [get_compiler_info ${binfile}] { ++ return -1 ++} ++ ++gdb_exit ++gdb_start ++gdb_reinitialize_dir $srcdir/$subdir ++gdb_load ${binfile} ++ ++# We set up SIGILL nostop, noprint, pass and then run the program. ++# We expect to just see a normal run. ++gdb_test "handle SIGILL nostop noprint" "SIGILL.*No.*No.*Yes.*" "handle sigill" ++gdb_test "run" "Starting program.*ia64-sigill.*\[New thread.*\].*hello world.*Program exited normally." "run to exit" ++ +Index: gdb-7.3.50.20110722/gdb/testsuite/gdb.arch/ia64-sigill.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.3.50.20110722/gdb/testsuite/gdb.arch/ia64-sigill.c 2011-07-22 19:16:13.000000000 +0200 +@@ -0,0 +1,8 @@ ++#include ++ ++int main() ++{ ++ printf ("hello world\n"); ++ return 0; ++} ++ +Index: gdb-7.3.50.20110722/gdb/linux-nat.c +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/linux-nat.c 2011-07-22 19:15:05.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/linux-nat.c 2011-07-22 19:16:13.000000000 +0200 +@@ -3733,7 +3733,8 @@ retry: + threads can be a bit time-consuming so if we want decent + performance with heavily multi-threaded programs, especially when + they're using a high frequency timer, we'd better avoid it if we +- can. */ ++ can. For possible trap signals like SIGTRAP and SIGILL, don't ++ avoid reporting. */ + + if (WIFSTOPPED (status)) + { diff --git a/gdb-6.3-ia64-sigtramp-frame-20050708.patch b/gdb-6.3-ia64-sigtramp-frame-20050708.patch new file mode 100644 index 0000000..c6a7789 --- /dev/null +++ b/gdb-6.3-ia64-sigtramp-frame-20050708.patch @@ -0,0 +1,158 @@ +2005-07-08 Jeff Johnston + + * ia64-tdep.c (ia64_sigtramp_frame_prev_register): Build + pseudo-registers the same as ia64_pseudo_register_read. + +2008-04-16 Yi Zhan + + * ia64-tdep.c (ia64_sigtramp_frame_prev_register): Fix an + ISO C compliance compilation error. + +2008-02-12 Jan Kratochvil + + Port to gdb-6.8.50.20081128, follow the upstream change: + http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/ia64-tdep.c.diff?cvsroot=src&r1=1.176&r2=1.177 + +Index: gdb-6.8.50.20081128/gdb/ia64-tdep.c +=================================================================== +--- gdb-6.8.50.20081128.orig/gdb/ia64-tdep.c 2008-11-26 06:27:48.000000000 +0100 ++++ gdb-6.8.50.20081128/gdb/ia64-tdep.c 2008-12-02 19:04:32.000000000 +0100 +@@ -2107,6 +2107,94 @@ ia64_sigtramp_frame_prev_register (struc + return frame_unwind_got_constant (this_frame, regnum, pc); + } + ++ /* Red Hat patch begin. */ ++ else if (IA64_NAT0_REGNUM <= regnum && regnum <= IA64_NAT31_REGNUM) ++ { ++ /* NAT pseudo registers 0-31: get them from UNAT. ++ * "copied" from ia64_pseudo_register_read() */ ++ ULONGEST unatN_val; ++ ULONGEST unat; ++ read_memory (cache->saved_regs[IA64_UNAT_REGNUM], (char *) &unat, ++ register_size (target_gdbarch, IA64_UNAT_REGNUM)); ++ unatN_val = (unat & (1LL << (regnum - IA64_NAT0_REGNUM))) != 0; ++ return frame_unwind_got_constant (this_frame, regnum, unatN_val); ++ } ++ else if (IA64_NAT32_REGNUM <= regnum && regnum <= IA64_NAT127_REGNUM) ++ { ++ /* NAT pseudo registers 32-127. ++ * "copied" from ia64_pseudo_register_read() ++ * FIXME: Not currently tested -- cannot get the frame to include ++ * NAT32-NAT127. */ ++ ULONGEST bsp; ++ ULONGEST cfm; ++ ULONGEST natN_val = 0; ++ CORE_ADDR gr_addr = 0, nat_addr = 0; ++ ++ read_memory (cache->saved_regs[IA64_BSP_REGNUM], (char *) &bsp, ++ register_size (target_gdbarch, IA64_BSP_REGNUM)); ++ read_memory (cache->saved_regs[IA64_CFM_REGNUM], (char *) &cfm, ++ register_size (target_gdbarch, IA64_CFM_REGNUM)); ++ ++ /* The bsp points at the end of the register frame so we ++ subtract the size of frame from it to get start of register frame. */ ++ bsp = rse_address_add (bsp, -(cfm & 0x7f)); ++ ++ if ((cfm & 0x7f) > regnum - V32_REGNUM) ++ gr_addr = rse_address_add (bsp, (regnum - V32_REGNUM)); ++ ++ if (gr_addr != 0) ++ { ++ /* Compute address of nat collection bits */ ++ CORE_ADDR nat_collection; ++ int nat_bit; ++ nat_addr = gr_addr | 0x1f8; ++ /* If our nat collection address is bigger than bsp, we have to get ++ the nat collection from rnat. Otherwise, we fetch the nat ++ collection from the computed address. FIXME: Do not know if ++ RNAT can be not stored in the frame--being extra cautious. */ ++ if (nat_addr >= bsp) ++ { ++ nat_addr = cache->saved_regs[IA64_RNAT_REGNUM]; ++ if (nat_addr != 0) ++ read_memory (nat_addr, (char *) &nat_collection, ++ register_size (target_gdbarch, IA64_RNAT_REGNUM)); ++ } ++ else ++ nat_collection = read_memory_integer (nat_addr, 8, BFD_ENDIAN_LITTLE); ++ if (nat_addr != 0) ++ { ++ nat_bit = (gr_addr >> 3) & 0x3f; ++ natN_val = (nat_collection >> nat_bit) & 1; ++ return frame_unwind_got_constant (this_frame, regnum, natN_val); ++ } ++ } ++ warning (_("ia64_sigtramp_frame_prev_register: unhandled register %d"), ++ regnum); ++ } ++ else if (regnum == VBOF_REGNUM) ++ { ++ /* BOF pseudo register. ++ * "copied" from ia64_pseudo_register_read() ++ * ++ * A virtual register frame start is provided for user convenience. ++ * It can be calculated as the bsp - sof (sizeof frame). */ ++ ULONGEST bsp; ++ ULONGEST cfm; ++ ULONGEST bof; ++ ++ read_memory (cache->saved_regs[IA64_BSP_REGNUM], (char *) &bsp, ++ register_size (target_gdbarch, IA64_BSP_REGNUM)); ++ read_memory (cache->saved_regs[IA64_CFM_REGNUM], (char *) &cfm, ++ register_size (target_gdbarch, IA64_CFM_REGNUM)); ++ ++ /* The bsp points at the end of the register frame so we ++ subtract the size of frame from it to get beginning of frame. */ ++ bof = rse_address_add (bsp, -(cfm & 0x7f)); ++ ++ return frame_unwind_got_constant (this_frame, regnum, bof); ++ } ++ /* Red Hat patch end. */ ++ + else if ((regnum >= IA64_GR32_REGNUM && regnum <= IA64_GR127_REGNUM) + || (regnum >= V32_REGNUM && regnum <= V127_REGNUM)) + { +@@ -2121,7 +2209,42 @@ ia64_sigtramp_frame_prev_register (struc + return frame_unwind_got_constant (this_frame, regnum, 0); + } + +- else /* All other registers not listed above. */ ++ /* Red Hat patch begin. */ ++ else if (VP0_REGNUM <= regnum && regnum <= VP63_REGNUM) ++ { ++ /* VP 0-63. ++ * "copied" from ia64_pseudo_register_read() ++ * ++ * FIXME: Not currently tested--cannot get the frame to include PR. */ ++ CORE_ADDR pr_addr = 0; ++ ++ pr_addr = cache->saved_regs[IA64_PR_REGNUM]; ++ if (pr_addr != 0) ++ { ++ ULONGEST pr; ++ ULONGEST cfm; ++ ULONGEST prN_val; ++ read_memory (pr_addr, (char *) &pr, ++ register_size (target_gdbarch, IA64_PR_REGNUM)); ++ read_memory (cache->saved_regs[IA64_CFM_REGNUM], (char *) &cfm, ++ register_size (target_gdbarch, IA64_CFM_REGNUM)); ++ ++ /* Get the register rename base for this frame and adjust the ++ * register name to take rotation into account. */ ++ if (VP16_REGNUM <= regnum && regnum <= VP63_REGNUM) ++ { ++ int rrb_pr = (cfm >> 32) & 0x3f; ++ regnum = VP16_REGNUM + ((regnum - VP16_REGNUM) + rrb_pr) % 48; ++ } ++ prN_val = (pr & (1LL << (regnum - VP0_REGNUM))) != 0; ++ return frame_unwind_got_constant (this_frame, regnum, prN_val); ++ } ++ warning (_("ia64_sigtramp_frame_prev_register: unhandled register %d"), ++ regnum); ++ } ++ /* Red Hat patch end. */ ++ ++ /* All other registers not listed above. */ + { + CORE_ADDR addr = cache->saved_regs[regnum]; + diff --git a/gdb-6.3-ppc64displaysymbol-20041124.patch b/gdb-6.3-ppc64displaysymbol-20041124.patch new file mode 100644 index 0000000..8e94e00 --- /dev/null +++ b/gdb-6.3-ppc64displaysymbol-20041124.patch @@ -0,0 +1,24 @@ +2004-11-24 Andrew Cagney + + * printcmd.c (build_address_symbolic): Find a section for the + address. + +Index: gdb-6.8.50.20081128/gdb/printcmd.c +=================================================================== +--- gdb-6.8.50.20081128.orig/gdb/printcmd.c 2008-12-04 01:36:05.000000000 +0100 ++++ gdb-6.8.50.20081128/gdb/printcmd.c 2008-12-04 01:37:18.000000000 +0100 +@@ -616,6 +616,14 @@ build_address_symbolic (CORE_ADDR addr, + addr = overlay_mapped_address (addr, section); + } + } ++ /* To ensure that the symbol returned belongs to the correct setion ++ (and that the last [random] symbol from the previous section ++ isn't returned) try to find the section containing PC. First try ++ the overlay code (which by default returns NULL); and second try ++ the normal section code (which almost always succeeds). */ ++ section = find_pc_overlay (addr); ++ if (section == NULL) ++ section = find_pc_section (addr); + + /* First try to find the address in the symbol table, then + in the minsyms. Take the closest one. */ diff --git a/gdb-6.3-ppc64syscall-20040622.patch b/gdb-6.3-ppc64syscall-20040622.patch new file mode 100644 index 0000000..a237cc1 --- /dev/null +++ b/gdb-6.3-ppc64syscall-20040622.patch @@ -0,0 +1,111 @@ +2004-06-22 Andrew Cagney + + * rs6000-tdep.c (struct rs6000_framedata): Add field "func_start". + (skip_prologue): Delete local variable "orig_pc", use + "func_start". Add local variable "num_skip_linux_syscall_insn", + use to skip over first half of a GNU/Linux syscall and update + "func_start". + +Index: gdb-7.2.50.20110117/gdb/rs6000-tdep.c +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/rs6000-tdep.c 2011-01-11 20:23:02.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/rs6000-tdep.c 2011-01-17 15:48:19.000000000 +0100 +@@ -126,6 +126,7 @@ static const char *powerpc_vector_abi_st + + struct rs6000_framedata + { ++ CORE_ADDR func_start; /* True function start. */ + int offset; /* total size of frame --- the distance + by which we decrement sp to allocate + the frame */ +@@ -1496,7 +1497,6 @@ static CORE_ADDR + skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR lim_pc, + struct rs6000_framedata *fdata) + { +- CORE_ADDR orig_pc = pc; + CORE_ADDR last_prologue_pc = pc; + CORE_ADDR li_found_pc = 0; + gdb_byte buf[4]; +@@ -1514,12 +1514,14 @@ skip_prologue (struct gdbarch *gdbarch, + int minimal_toc_loaded = 0; + int prev_insn_was_prologue_insn = 1; + int num_skip_non_prologue_insns = 0; ++ int num_skip_ppc64_gnu_linux_syscall_insn = 0; + int r0_contains_arg = 0; + const struct bfd_arch_info *arch_info = gdbarch_bfd_arch_info (gdbarch); + struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); + + memset (fdata, 0, sizeof (struct rs6000_framedata)); ++ fdata->func_start = pc; + fdata->saved_gpr = -1; + fdata->saved_fpr = -1; + fdata->saved_vr = -1; +@@ -1553,6 +1555,55 @@ skip_prologue (struct gdbarch *gdbarch, + break; + op = extract_unsigned_integer (buf, 4, byte_order); + ++ /* A PPC64 GNU/Linux system call function is split into two ++ sub-functions: a non-threaded fast-path (__NAME_nocancel) ++ which does not use a frame; and a threaded slow-path ++ (Lpseudo_cancel) that does create a frame. Ref: ++ nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h ++ ++ *INDENT-OFF* ++ NAME: ++ SINGLE_THREAD_P ++ bne- .Lpseudo_cancel ++ __NAME_nocancel: ++ li r0,162 ++ sc ++ bnslr+ ++ b 0x7fe014ef64 <.__syscall_error> ++ Lpseudo_cancel: ++ stdu r1,-128(r1) ++ ... ++ *INDENT-ON* ++ ++ Unfortunatly, because the latter case uses a local label (not ++ in the symbol table) a PC in "Lpseudo_cancel" appears to be ++ in "__NAME_nocancel". The following code recognizes this, ++ adjusting FUNC_START to point to where "Lpseudo_cancel" ++ should be, and parsing the prologue sequence as if ++ "Lpseudo_cancel" was the entry point. */ ++ ++ if (((op & 0xffff0000) == 0x38000000 /* li r0,N */ ++ && pc == fdata->func_start + 0 ++ && num_skip_ppc64_gnu_linux_syscall_insn == 0) ++ || (op == 0x44000002 /* sc */ ++ && pc == fdata->func_start + 4 ++ && num_skip_ppc64_gnu_linux_syscall_insn == 1) ++ || (op == 0x4ca30020 /* bnslr+ */ ++ && pc == fdata->func_start + 8 ++ && num_skip_ppc64_gnu_linux_syscall_insn == 2)) ++ { ++ num_skip_ppc64_gnu_linux_syscall_insn++; ++ continue; ++ } ++ else if ((op & 0xfc000003) == 0x48000000 /* b __syscall_error */ ++ && pc == fdata->func_start + 12 ++ && num_skip_ppc64_gnu_linux_syscall_insn == 3) ++ { ++ num_skip_ppc64_gnu_linux_syscall_insn = -1; ++ fdata->func_start = pc; ++ continue; ++ } ++ + if ((op & 0xfc1fffff) == 0x7c0802a6) + { /* mflr Rx */ + /* Since shared library / PIC code, which needs to get its +@@ -1734,9 +1785,9 @@ skip_prologue (struct gdbarch *gdbarch, + we have no line table information or the line info tells + us that the subroutine call is not part of the line + associated with the prologue. */ +- if ((pc - orig_pc) > 8) ++ if ((pc - fdata->func_start) > 8) + { +- struct symtab_and_line prologue_sal = find_pc_line (orig_pc, 0); ++ struct symtab_and_line prologue_sal = find_pc_line (fdata->func_start, 0); + struct symtab_and_line this_sal = find_pc_line (pc, 0); + + if ((prologue_sal.line == 0) diff --git a/gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch b/gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch new file mode 100644 index 0000000..fa2f4ed --- /dev/null +++ b/gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch @@ -0,0 +1,143 @@ +https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=185337 + +2008-02-24 Jan Kratochvil + + Port to GDB-6.8pre. + +currently for trivial nonthreaded helloworld with no debug info up to -ggdb2 you +will get: + (gdb) p errno + [some error] + +* with -ggdb2 and less "errno" in fact does not exist anywhere as it was + compiled to "(*__errno_location ())" and the macro definition is not present. + Unfortunately gdb will find the TLS symbol and it will try to access it but + as the program has been compiled without -lpthread the TLS base register + (%gs on i386) is not setup and it will result in: + Cannot access memory at address 0x8 + +Attached suggestion patch how to deal with the most common "errno" symbol +for the most common under-ggdb3 compiled programs. + +Original patch hooked into target_translate_tls_address. But its inferior +call invalidates `struct frame *' in the callers - RH BZ 690908. + + +2007-11-03 Jan Kratochvil + + * ./gdb/dwarf2read.c (read_partial_die, dwarf2_linkage_name): Prefer + DW_AT_MIPS_linkage_name over DW_AT_name now only for non-C. + +glibc-debuginfo-2.7-2.x86_64: /usr/lib/debug/lib64/libc.so.6.debug: + <81a2> DW_AT_name : (indirect string, offset: 0x280e): __errno_location + <81a8> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x2808): *__GI___errno_location + +--- a/gdb/printcmd.c ++++ b/gdb/printcmd.c +@@ -967,6 +967,8 @@ print_command_1 (char *exp, int inspect, int voidprint) + + if (exp && *exp) + { ++ if (strcmp (exp, "errno") == 0) ++ exp = "*((int *(*) (void)) __errno_location) ()"; + expr = parse_expression (exp); + old_chain = make_cleanup (free_current_contents, &expr); + cleanup = 1; +Index: gdb-7.2/gdb/testsuite/gdb.dwarf2/dw2-errno.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2/gdb/testsuite/gdb.dwarf2/dw2-errno.c 2011-03-29 10:55:35.000000000 +0200 +@@ -0,0 +1,28 @@ ++/* This testcase is part of GDB, the GNU debugger. ++ ++ Copyright 2005, 2007 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 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, see . ++ ++ Please email any bugs, comments, and/or additions to this file to: ++ bug-gdb@prep.ai.mit.edu */ ++ ++#include ++ ++int main() ++{ ++ errno = 42; ++ ++ return 0; /* breakpoint */ ++} +Index: gdb-7.2/gdb/testsuite/gdb.dwarf2/dw2-errno.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2/gdb/testsuite/gdb.dwarf2/dw2-errno.exp 2011-03-29 10:55:35.000000000 +0200 +@@ -0,0 +1,60 @@ ++# Copyright 2007 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 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, see . ++ ++set testfile dw2-errno ++set srcfile ${testfile}.c ++set binfile ${objdir}/${subdir}/${testfile} ++ ++proc prep {} { ++ global srcdir subdir binfile ++ gdb_exit ++ gdb_start ++ gdb_reinitialize_dir $srcdir/$subdir ++ gdb_load ${binfile} ++ ++ runto_main ++ ++ gdb_breakpoint [gdb_get_line_number "breakpoint"] ++ gdb_continue_to_breakpoint "breakpoint" ++} ++ ++if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable "additional_flags=-g2"] != "" } { ++ untested "Couldn't compile test program" ++ return -1 ++} ++prep ++gdb_test "print errno" ".* = 42" "errno with macros=N threads=N" ++ ++if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable "additional_flags=-g3"] != "" } { ++ untested "Couldn't compile test program" ++ return -1 ++} ++prep ++gdb_test "print errno" ".* = 42" "errno with macros=Y threads=N" ++ ++if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable "additional_flags=-g2"] != "" } { ++ return -1 ++} ++prep ++gdb_test "print errno" ".* = 42" "errno with macros=N threads=Y" ++ ++if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable "additional_flags=-g3"] != "" } { ++ return -1 ++} ++prep ++gdb_test "print errno" ".* = 42" "errno with macros=Y threads=Y" ++ ++# TODO: Test the error on resolving ERRNO with only libc loaded. ++# Just how to find the current libc filename? diff --git a/gdb-6.5-bz203661-emit-relocs.patch b/gdb-6.5-bz203661-emit-relocs.patch new file mode 100644 index 0000000..61e0d56 --- /dev/null +++ b/gdb-6.5-bz203661-emit-relocs.patch @@ -0,0 +1,17 @@ +Index: gdb-7.0.90.20100306/gdb/symfile.c +=================================================================== +--- gdb-7.0.90.20100306.orig/gdb/symfile.c 2010-03-06 23:20:35.000000000 +0100 ++++ gdb-7.0.90.20100306/gdb/symfile.c 2010-03-06 23:26:25.000000000 +0100 +@@ -3642,6 +3642,12 @@ default_symfile_relocate (struct objfile + { + bfd *abfd = objfile->obfd; + ++ /* Executable files have all the relocations already resolved. ++ * Handle files linked with --emit-relocs. ++ * http://sources.redhat.com/ml/gdb/2006-08/msg00137.html */ ++ if ((abfd->flags & EXEC_P) != 0) ++ return NULL; ++ + /* We're only interested in sections with relocation + information. */ + if ((sectp->flags & SEC_RELOC) == 0) diff --git a/gdb-6.5-bz218379-solib-trampoline-lookup-lock-fix.patch b/gdb-6.5-bz218379-solib-trampoline-lookup-lock-fix.patch new file mode 100644 index 0000000..082b9a0 --- /dev/null +++ b/gdb-6.5-bz218379-solib-trampoline-lookup-lock-fix.patch @@ -0,0 +1,21 @@ +https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=218379 + + +Index: gdb-7.2.50.20110117/gdb/symtab.c +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/symtab.c 2011-01-17 15:47:37.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/symtab.c 2011-01-17 15:51:48.000000000 +0100 +@@ -2015,6 +2015,13 @@ find_pc_sect_line (CORE_ADDR pc, struct + SYMBOL_LINKAGE_NAME (msymbol)); */ + ; + /* fall through */ ++ /* `msymbol' trampoline may be located before its .text symbol ++ but this text symbol may be the address we were looking for. ++ Avoid `find_pc_sect_line'<->`find_pc_line' infinite loop. ++ Red Hat Bug 218379. */ ++ else if (SYMBOL_VALUE (mfunsym) == pc) ++ warning ("In stub for %s (0x%s); interlocked, please submit the binary to http://bugzilla.redhat.com", SYMBOL_LINKAGE_NAME (msymbol), paddress (target_gdbarch, pc)); ++ /* fall through */ + else + return find_pc_line (SYMBOL_VALUE_ADDRESS (mfunsym), 0); + } diff --git a/gdb-6.6-bfd-vdso8k.patch b/gdb-6.6-bfd-vdso8k.patch new file mode 100644 index 0000000..06507b0 --- /dev/null +++ b/gdb-6.6-bfd-vdso8k.patch @@ -0,0 +1,119 @@ +2007-09-23 Jan Kratochvil + + * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): New variables + X_SHDR_SHSTRTAB and I_SHDR_SHSTRTAB. Fixed the CONTENTS_SIZE trimming + check for its aligned size between the last segment and still before + the section header end. Added variables check to cover also the + section header string table. + +--- gdb-7.4.50.20120120-orig/bfd/elfcode.h 2012-02-29 09:17:08.000000000 +0100 ++++ gdb-7.4.50.20120120/bfd/elfcode.h 2012-02-29 10:23:03.000000000 +0100 +@@ -1621,6 +1621,8 @@ NAME(_bfd_elf,bfd_from_remote_memory) + Elf_Internal_Ehdr i_ehdr; /* Elf file header, internal form */ + Elf_External_Phdr *x_phdrs; + Elf_Internal_Phdr *i_phdrs, *last_phdr; ++ Elf_External_Shdr *x_shdrs; ++ Elf_Internal_Shdr *i_shdrs; + bfd *nbfd; + struct bfd_in_memory *bim; + int contents_size; +@@ -1740,24 +1742,46 @@ NAME(_bfd_elf,bfd_from_remote_memory) + + /* Trim the last segment so we don't bother with zeros in the last page + that are off the end of the file. However, if the extra bit in that +- page includes the section headers, keep them. */ +- if ((bfd_vma) contents_size > last_phdr->p_offset + last_phdr->p_filesz +- && (bfd_vma) contents_size >= (i_ehdr.e_shoff +- + i_ehdr.e_shnum * i_ehdr.e_shentsize)) ++ page includes the section headers os the section header string table, ++ keep them. */ ++ if ((bfd_vma) contents_size > last_phdr->p_offset + last_phdr->p_filesz) ++ contents_size = last_phdr->p_offset + last_phdr->p_filesz; ++ ++ if ((bfd_vma) contents_size < i_ehdr.e_shoff ++ + i_ehdr.e_shnum * i_ehdr.e_shentsize) ++ contents_size = i_ehdr.e_shoff + i_ehdr.e_shnum * i_ehdr.e_shentsize; ++ ++ /* Verify also all the sections fit into CONTENTS_SIZE. */ ++ ++ x_shdrs = bfd_malloc (i_ehdr.e_shnum * (sizeof *x_shdrs + sizeof *i_shdrs)); ++ if (x_shdrs == NULL) + { +- contents_size = last_phdr->p_offset + last_phdr->p_filesz; +- if ((bfd_vma) contents_size < (i_ehdr.e_shoff +- + i_ehdr.e_shnum * i_ehdr.e_shentsize)) +- contents_size = i_ehdr.e_shoff + i_ehdr.e_shnum * i_ehdr.e_shentsize; ++ free (x_phdrs); ++ bfd_set_error (bfd_error_no_memory); ++ return NULL; + } ++ err = target_read_memory (ehdr_vma + i_ehdr.e_shoff, (bfd_byte *) x_shdrs, ++ i_ehdr.e_shnum * sizeof *x_shdrs); ++ if (err) ++ i_shdrs = NULL; + else +- contents_size = last_phdr->p_offset + last_phdr->p_filesz; ++ { ++ i_shdrs = (Elf_Internal_Shdr *) &x_shdrs[i_ehdr.e_shnum]; ++ for (i = 0; i < i_ehdr.e_shnum; ++i) ++ { ++ elf_swap_shdr_in (templ, &x_shdrs[i], &i_shdrs[i]); ++ ++ if ((bfd_vma) contents_size < i_shdrs[i].sh_offset + i_shdrs[i].sh_size) ++ contents_size = i_shdrs[i].sh_offset + i_shdrs[i].sh_size; ++ } ++ } + + /* Now we know the size of the whole image we want read in. */ + contents = (bfd_byte *) bfd_zmalloc (contents_size); + if (contents == NULL) + { + free (x_phdrs); ++ free (x_shdrs); + bfd_set_error (bfd_error_no_memory); + return NULL; + } +@@ -1776,6 +1800,7 @@ NAME(_bfd_elf,bfd_from_remote_memory) + if (err) + { + free (x_phdrs); ++ free (x_shdrs); + free (contents); + bfd_set_error (bfd_error_system_call); + errno = err; +@@ -1784,10 +1809,32 @@ NAME(_bfd_elf,bfd_from_remote_memory) + } + free (x_phdrs); + +- /* If the segments visible in memory didn't include the section headers, ++ if (i_shdrs) ++ { ++ memcpy (contents + i_ehdr.e_shoff, x_shdrs, ++ i_ehdr.e_shnum * sizeof *x_shdrs); ++ ++ for (i = 0; i < i_ehdr.e_shnum; ++i) ++ { ++ bfd_vma start = i_shdrs[i].sh_offset; ++ bfd_vma end = i_shdrs[i].sh_offset + i_shdrs[i].sh_size; ++ ++ if (end > (bfd_vma) contents_size) ++ end = contents_size; ++ err = target_read_memory (ehdr_vma + start, contents + start, ++ end - start); ++ if (err) ++ { ++ i_shdrs = NULL; ++ break; ++ } ++ } ++ } ++ free (x_shdrs); ++ ++ /* If the segments readable in memory didn't include the section headers, + then clear them from the file header. */ +- if ((bfd_vma) contents_size < (i_ehdr.e_shoff +- + i_ehdr.e_shnum * i_ehdr.e_shentsize)) ++ if (i_shdrs == NULL) + { + memset (&x_ehdr.e_shoff, 0, sizeof x_ehdr.e_shoff); + memset (&x_ehdr.e_shnum, 0, sizeof x_ehdr.e_shnum); diff --git a/gdb-6.6-bz235197-fork-detach-info.patch b/gdb-6.6-bz235197-fork-detach-info.patch new file mode 100644 index 0000000..d7263ff --- /dev/null +++ b/gdb-6.6-bz235197-fork-detach-info.patch @@ -0,0 +1,121 @@ +2008-03-01 Jan Kratochvil + + Port to GDB-6.8pre. + Remove the `[' character from the GDB-6.8 default message. + +Index: gdb-7.2.50.20110320/gdb/linux-nat.c +=================================================================== +--- gdb-7.2.50.20110320.orig/gdb/linux-nat.c 2011-03-20 16:59:51.000000000 +0100 ++++ gdb-7.2.50.20110320/gdb/linux-nat.c 2011-03-20 16:59:51.000000000 +0100 +@@ -716,7 +716,7 @@ holding the child stopped. Try \"set de + remove_breakpoints_pid (GET_PID (inferior_ptid)); + } + +- if (info_verbose || debug_linux_nat) ++ if (1 /* Fedora Bug 235197 */ || info_verbose || debug_linux_nat) + { + target_terminal_ours (); + fprintf_filtered (gdb_stdlog, +Index: gdb-7.2.50.20110320/gdb/testsuite/gdb.base/fork-detach.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20110320/gdb/testsuite/gdb.base/fork-detach.c 2011-03-20 16:59:51.000000000 +0100 +@@ -0,0 +1,57 @@ ++/* This testcase is part of GDB, the GNU debugger. ++ ++ Copyright 2007 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 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. ++ ++ Please email any bugs, comments, and/or additions to this file to: ++ bug-gdb@prep.ai.mit.edu */ ++ ++#include ++#include ++#include ++#include ++#include ++ ++static void func (void) ++{ ++} ++ ++int main (void) ++{ ++ pid_t child; ++ ++ child = fork (); ++ switch (child) ++ { ++ case -1: ++ abort (); ++ case 0: ++ func (); ++ break; ++ default: ++ { ++/* We do not test the switching to the other fork by GDB `fork 1'. */ ++#if 0 ++ pid_t got; ++ ++ got = waitpid (child, NULL, 0); ++ assert (got == child); ++#endif ++ break; ++ } ++ } ++ return 0; ++} +Index: gdb-7.2.50.20110320/gdb/testsuite/gdb.base/fork-detach.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20110320/gdb/testsuite/gdb.base/fork-detach.exp 2011-03-20 17:12:22.000000000 +0100 +@@ -0,0 +1,36 @@ ++# Copyright 2007 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 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. ++ ++set testfile fork-detach ++set srcfile ${testfile}.c ++set binfile ${objdir}/${subdir}/${testfile} ++if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { ++ untested "Couldn't compile test program" ++ return -1 ++} ++ ++# Get things started. ++ ++gdb_exit ++gdb_start ++gdb_reinitialize_dir $srcdir/$subdir ++gdb_load ${binfile} ++ ++gdb_run_cmd ++# `Starting program: .*' prefix is available since gdb-6.7. ++gdb_test "" \ ++ "Detaching after fork from child process.*\\\[Inferior .* exited normally\\\]" \ ++ "Info message caught" diff --git a/gdb-6.6-scheduler_locking-step-is-default.patch b/gdb-6.6-scheduler_locking-step-is-default.patch new file mode 100644 index 0000000..50af796 --- /dev/null +++ b/gdb-6.6-scheduler_locking-step-is-default.patch @@ -0,0 +1,54 @@ +Index: gdb-7.3.50.20110722/gdb/infrun.c +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/infrun.c 2011-07-22 19:12:56.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/infrun.c 2011-07-22 19:17:06.000000000 +0200 +@@ -1549,7 +1549,7 @@ static const char *scheduler_enums[] = { + schedlock_step, + NULL + }; +-static const char *scheduler_mode = schedlock_off; ++static const char *scheduler_mode = schedlock_step; + static void + show_scheduler_mode (struct ui_file *file, int from_tty, + struct cmd_list_element *c, const char *value) +Index: gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi-console.exp +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/testsuite/gdb.mi/mi-console.exp 2011-01-01 16:33:47.000000000 +0100 ++++ gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi-console.exp 2011-07-22 19:17:06.000000000 +0200 +@@ -47,6 +47,9 @@ if { [gdb_compile "${srcdir}/${subdir}/ + + mi_run_to_main + ++# thread-id=\"all\" vs. thread-id=\"1\" below: ++mi_gdb_test "210-gdb-set scheduler-locking off" "210\\^done" "set scheduler-locking off" ++ + # Next over the hello() call which will produce lots of output + mi_gdb_test "220-exec-next" \ + "220\\^running(\r\n\\*running,thread-id=\"all\")?" \ +Index: gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi2-console.exp +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/testsuite/gdb.mi/mi2-console.exp 2011-06-23 11:40:50.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi2-console.exp 2011-07-22 19:17:27.000000000 +0200 +@@ -47,6 +47,9 @@ if { [gdb_compile "${srcdir}/${subdir}/ + + mi_run_to_main + ++# thread-id=\"all\" vs. thread-id=\"1\" below: ++mi_gdb_test "210-gdb-set scheduler-locking off" "210\\^done" "set scheduler-locking off" ++ + # Next over the hello() call which will produce lots of output + mi_gdb_test "220-exec-next" "220\\^running(\r\n)?(\\*running,thread-id=\"all\")?" \ + "Started step over hello" +Index: gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi-cli.exp +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/testsuite/gdb.mi/mi-cli.exp 2011-04-27 12:17:38.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/testsuite/gdb.mi/mi-cli.exp 2011-07-22 19:17:06.000000000 +0200 +@@ -176,7 +176,7 @@ mi_execute_to "exec-continue" "breakpoin + # Test that the token is output even for CLI commands + # Also test that *stopped includes frame information. + mi_gdb_test "34 next" \ +- ".*34\\\^running.*\\*running,thread-id=\"all\"" \ ++ ".*34\\\^running.*\\*running,thread-id=\"1\"" \ + "34 next: run" + + if {!$async} { diff --git a/gdb-6.6-scheduler_locking-step-sw-watchpoints2.patch b/gdb-6.6-scheduler_locking-step-sw-watchpoints2.patch new file mode 100644 index 0000000..c7f0d33 --- /dev/null +++ b/gdb-6.6-scheduler_locking-step-sw-watchpoints2.patch @@ -0,0 +1,204 @@ +2007-06-25 Jan Kratochvil + + * inferior.h (enum resume_step): New definition. + (resume): Change STEP parameter type to ENUM RESUME_STEP. + * infrun.c (resume): Likewise. Extend debug printing of the STEP + parameter. Lock the scheduler only for intentional stepping. + (proceed): Replace the variable ONESTEP with tristate RESUME_STEP. + Set the third RESUME_STEP state according to BPSTAT_SHOULD_STEP. + (currently_stepping): Change the return type to ENUM RESUME_STEP. + Return RESUME_STEP_NEEDED if it is just due to BPSTAT_SHOULD_STEP. + * linux-nat.c (select_singlestep_lwp_callback): Do not focus on + the software watchpoint events. + * linux-nat.h (struct lwp_info): Redeclare STEP as ENUM RESUME_STEP. + +2007-10-19 Jan Kratochvil + + * infrun.c (proceed): RESUME_STEP initialized for non-stepping. + RESUME_STEP set according to STEP only at the end of the function. + +2008-02-24 Jan Kratochvil + + Port to GDB-6.8pre. + +Index: gdb-7.4.50.20111218/gdb/inferior.h +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/inferior.h 2011-10-07 14:06:46.000000000 +0200 ++++ gdb-7.4.50.20111218/gdb/inferior.h 2011-12-18 23:40:59.257300451 +0100 +@@ -162,7 +162,15 @@ extern void reopen_exec_file (void); + /* The `resume' routine should only be called in special circumstances. + Normally, use `proceed', which handles a lot of bookkeeping. */ + +-extern void resume (int, enum target_signal); ++enum resume_step ++ { ++ /* currently_stepping () should return non-zero for non-continue. */ ++ RESUME_STEP_CONTINUE = 0, ++ RESUME_STEP_USER, /* Stepping is intentional by the user. */ ++ RESUME_STEP_NEEDED /* Stepping only for software watchpoints. */ ++ }; ++ ++extern void resume (enum resume_step, enum target_signal); + + extern ptid_t user_visible_resume_ptid (int step); + +Index: gdb-7.4.50.20111218/gdb/infrun.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/infrun.c 2011-11-22 22:25:17.000000000 +0100 ++++ gdb-7.4.50.20111218/gdb/infrun.c 2011-12-19 00:12:34.470854218 +0100 +@@ -79,7 +79,7 @@ static int follow_fork (void); + static void set_schedlock_func (char *args, int from_tty, + struct cmd_list_element *c); + +-static int currently_stepping (struct thread_info *tp); ++static enum resume_step currently_stepping (struct thread_info *tp); + + static int currently_stepping_or_nexting_callback (struct thread_info *tp, + void *data); +@@ -1668,7 +1668,8 @@ user_visible_resume_ptid (int step) + } + else if ((scheduler_mode == schedlock_on) + || (scheduler_mode == schedlock_step +- && (step || singlestep_breakpoints_inserted_p))) ++ && (step == RESUME_STEP_USER ++ || singlestep_breakpoints_inserted_p))) + { + /* User-settable 'scheduler' mode requires solo thread resume. */ + resume_ptid = inferior_ptid; +@@ -1686,7 +1687,7 @@ user_visible_resume_ptid (int step) + STEP nonzero if we should step (zero to continue instead). + SIG is the signal to give the inferior (zero for none). */ + void +-resume (int step, enum target_signal sig) ++resume (enum resume_step step, enum target_signal sig) + { + int should_resume = 1; + struct cleanup *old_cleanups = make_cleanup (resume_cleanups, 0); +@@ -1719,9 +1720,13 @@ resume (int step, enum target_signal sig + + if (debug_infrun) + fprintf_unfiltered (gdb_stdlog, +- "infrun: resume (step=%d, signal=%d), " ++ "infrun: resume (step=%s, signal=%d), " + "trap_expected=%d, current thread [%s] at %s\n", +- step, sig, tp->control.trap_expected, ++ (step == RESUME_STEP_CONTINUE ++ ? "RESUME_STEP_CONTINUE" ++ : (step == RESUME_STEP_USER ? "RESUME_STEP_USER" ++ : "RESUME_STEP_NEEDED")), ++ sig, tp->control.trap_expected, + target_pid_to_str (inferior_ptid), + paddress (gdbarch, pc)); + +@@ -2094,7 +2099,7 @@ proceed (CORE_ADDR addr, enum target_sig + struct thread_info *tp; + CORE_ADDR pc; + struct address_space *aspace; +- int oneproc = 0; ++ enum resume_step resume_step = RESUME_STEP_CONTINUE; + + /* If we're stopped at a fork/vfork, follow the branch set by the + "set follow-fork-mode" command; otherwise, we'll just proceed +@@ -2134,13 +2139,13 @@ proceed (CORE_ADDR addr, enum target_sig + actually be executing the breakpoint insn anyway. + We'll be (un-)executing the previous instruction. */ + +- oneproc = 1; ++ resume_step = RESUME_STEP_USER; + else if (gdbarch_single_step_through_delay_p (gdbarch) + && gdbarch_single_step_through_delay (gdbarch, + get_current_frame ())) + /* We stepped onto an instruction that needs to be stepped + again before re-inserting the breakpoint, do so. */ +- oneproc = 1; ++ resume_step = RESUME_STEP_USER; + } + else + { +@@ -2171,13 +2176,13 @@ proceed (CORE_ADDR addr, enum target_sig + is required it returns TRUE and sets the current thread to + the old thread. */ + if (prepare_to_proceed (step)) +- oneproc = 1; ++ resume_step = RESUME_STEP_USER; + } + + /* prepare_to_proceed may change the current thread. */ + tp = inferior_thread (); + +- if (oneproc) ++ if (resume_step == RESUME_STEP_USER) + { + tp->control.trap_expected = 1; + /* If displaced stepping is enabled, we can step over the +@@ -2264,8 +2269,13 @@ proceed (CORE_ADDR addr, enum target_sig + /* Reset to normal state. */ + init_infwait_state (); + ++ if (step) ++ resume_step = RESUME_STEP_USER; ++ if (resume_step == RESUME_STEP_CONTINUE && bpstat_should_step ()) ++ resume_step = RESUME_STEP_NEEDED; ++ + /* Resume inferior. */ +- resume (oneproc || step || bpstat_should_step (), tp->suspend.stop_signal); ++ resume (resume_step, tp->suspend.stop_signal); + + /* Wait for it to stop (if not standalone) + and in any case decode why it stopped, and act accordingly. */ +@@ -5223,13 +5233,18 @@ process_event_stop_test: + + /* Is thread TP in the middle of single-stepping? */ + +-static int ++static enum resume_step + currently_stepping (struct thread_info *tp) + { +- return ((tp->control.step_range_end +- && tp->control.step_resume_breakpoint == NULL) +- || tp->control.trap_expected +- || bpstat_should_step ()); ++ if ((tp->control.step_range_end ++ && tp->control.step_resume_breakpoint == NULL) ++ || tp->control.trap_expected) ++ return RESUME_STEP_USER; ++ ++ if (bpstat_should_step ()) ++ return RESUME_STEP_NEEDED; ++ ++ return RESUME_STEP_CONTINUE; + } + + /* Returns true if any thread *but* the one passed in "data" is in the +Index: gdb-7.4.50.20111218/gdb/linux-nat.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/linux-nat.c 2011-12-18 23:35:23.000000000 +0100 ++++ gdb-7.4.50.20111218/gdb/linux-nat.c 2011-12-19 00:08:41.824855353 +0100 +@@ -3036,7 +3036,11 @@ static int + select_singlestep_lwp_callback (struct lwp_info *lp, void *data) + { + if (lp->last_resume_kind == resume_step +- && lp->status != 0) ++ && lp->status != 0 ++ /* We do not focus on software watchpoints as we would not catch ++ STEPPING_PAST_SINGLESTEP_BREAKPOINT breakpoints in some other thread ++ as they would remain pending due to `Push back breakpoint for %s'. */ ++ && lp->step == RESUME_STEP_USER) + return 1; + else + return 0; +Index: gdb-7.4.50.20111218/gdb/linux-nat.h +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/linux-nat.h 2011-12-18 23:35:23.000000000 +0100 ++++ gdb-7.4.50.20111218/gdb/linux-nat.h 2011-12-18 23:40:59.262300431 +0100 +@@ -74,8 +74,8 @@ struct lwp_info + /* If non-zero, a pending wait status. */ + int status; + +- /* Non-zero if we were stepping this LWP. */ +- int step; ++ /* The kind of stepping of this LWP. */ ++ enum resume_step step; + + /* Non-zero si_signo if this LWP stopped with a trap. si_addr may + be the address of a hardware watchpoint. */ diff --git a/gdb-6.8-bz436037-reg-no-longer-active.patch b/gdb-6.8-bz436037-reg-no-longer-active.patch new file mode 100644 index 0000000..4987714 --- /dev/null +++ b/gdb-6.8-bz436037-reg-no-longer-active.patch @@ -0,0 +1,25 @@ +Index: gdb-6.8.50.20090803/gdb/valops.c +=================================================================== +--- gdb-6.8.50.20090803.orig/gdb/valops.c 2009-08-04 06:30:45.000000000 +0200 ++++ gdb-6.8.50.20090803/gdb/valops.c 2009-08-04 06:33:05.000000000 +0200 +@@ -926,10 +926,18 @@ value_assign (struct value *toval, struc + struct gdbarch *gdbarch; + int value_reg; + +- /* Figure out which frame this is in currently. */ +- frame = frame_find_by_id (VALUE_FRAME_ID (toval)); + value_reg = VALUE_REGNUM (toval); + ++ /* Figure out which frame this is in currently. */ ++ frame = frame_find_by_id (VALUE_FRAME_ID (toval)); ++ /* "set $reg+=1" should work on programs with no debug info, ++ but frame_find_by_id returns NULL here (RH bug 436037). ++ Use current frame, it represents CPU state in this case. ++ If frame_find_by_id is changed to do it internally ++ (it is contemplated there), remove this. */ ++ if (!frame) ++ frame = get_current_frame (); ++ /* Probably never happens. */ + if (!frame) + error (_("Value being assigned to is no longer active.")); + diff --git a/gdb-6.8-quit-never-aborts.patch b/gdb-6.8-quit-never-aborts.patch new file mode 100644 index 0000000..d71557f --- /dev/null +++ b/gdb-6.8-quit-never-aborts.patch @@ -0,0 +1,72 @@ +We may abort the process of detaching threads with multiple SIGINTs - which are +being sent during a testcase terminating its child GDB. + +Some of the threads may not be properly PTRACE_DETACHed which hurts if they +should have been detached with SIGSTOP (as they are accidentally left running +on the debugger termination). + +Index: gdb-7.2.50.20110117/gdb/defs.h +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/defs.h 2011-01-17 15:47:37.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/defs.h 2011-01-17 15:53:05.000000000 +0100 +@@ -165,6 +165,7 @@ extern char *python_libdir; + extern char *debug_file_directory; + + extern int quit_flag; ++extern int quit_flag_cleanup; + extern int immediate_quit; + extern int sevenbit_strings; + +@@ -178,7 +179,7 @@ extern void quit (void); + needed. */ + + #define QUIT { \ +- if (quit_flag) quit (); \ ++ if (quit_flag && !quit_flag_cleanup) quit (); \ + if (deprecated_interactive_hook) deprecated_interactive_hook (); \ + } + +Index: gdb-7.2.50.20110117/gdb/event-top.c +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/event-top.c 2011-01-17 15:52:39.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/event-top.c 2011-01-17 15:52:49.000000000 +0100 +@@ -904,7 +904,7 @@ async_request_quit (gdb_client_data arg) + is no reason to call quit again here, unless immediate_quit is + set. */ + +- if (quit_flag || immediate_quit) ++ if ((quit_flag || immediate_quit) && !quit_flag_cleanup) + quit (); + } + +Index: gdb-7.2.50.20110117/gdb/top.c +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/top.c 2011-01-17 15:47:37.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/top.c 2011-01-17 15:52:49.000000000 +0100 +@@ -1257,7 +1257,9 @@ quit_force (char *args, int from_tty) + qt.args = args; + qt.from_tty = from_tty; + +- /* We want to handle any quit errors and exit regardless. */ ++ /* We want to handle any quit errors and exit regardless but we should never ++ get user-interrupted to properly detach the inferior. */ ++ quit_flag_cleanup = 1; + catch_errors (quit_target, &qt, + "Quitting: ", RETURN_MASK_ALL); + +Index: gdb-7.2.50.20110117/gdb/utils.c +=================================================================== +--- gdb-7.2.50.20110117.orig/gdb/utils.c 2011-01-17 15:47:37.000000000 +0100 ++++ gdb-7.2.50.20110117/gdb/utils.c 2011-01-17 15:52:49.000000000 +0100 +@@ -121,6 +121,11 @@ int job_control; + + int quit_flag; + ++/* Nonzero means we are already processing the quitting cleanups and we should ++ no longer get aborted. */ ++ ++int quit_flag_cleanup; ++ + /* Nonzero means quit immediately if Control-C is typed now, rather + than waiting until QUIT is executed. Be careful in setting this; + code which executes with immediate_quit set has to be very careful diff --git a/gdb-6.8-sparc64-silence-memcpy-check.patch b/gdb-6.8-sparc64-silence-memcpy-check.patch new file mode 100644 index 0000000..6df8c9a --- /dev/null +++ b/gdb-6.8-sparc64-silence-memcpy-check.patch @@ -0,0 +1,12 @@ +Index: gdb-7.4.50.20111218/gdb/sparc-tdep.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/sparc-tdep.c 2011-09-28 19:59:42.000000000 +0200 ++++ gdb-7.4.50.20111218/gdb/sparc-tdep.c 2011-12-19 01:25:29.294046199 +0100 +@@ -1316,6 +1316,7 @@ sparc32_store_return_value (struct type + if (sparc_floating_p (type) || sparc_complex_floating_p (type)) + { + /* Floating return values. */ ++ len = (len <= 8) ? len : 8; + memcpy (buf, valbuf, len); + regcache_cooked_write (regcache, SPARC_F0_REGNUM, buf); + if (len > 4) diff --git a/gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch b/gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch new file mode 100644 index 0000000..b011658 --- /dev/null +++ b/gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch @@ -0,0 +1,51 @@ +Index: gdb-7.3.50.20110722/gdb/dwarf2read.c +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/dwarf2read.c 2011-07-22 19:37:15.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/dwarf2read.c 2011-07-22 19:44:42.000000000 +0200 +@@ -67,12 +67,14 @@ + #ifdef HAVE_ZLIB_H + #include + #endif ++#ifndef __sparc__ + #ifdef HAVE_MMAP + #include + #ifndef MAP_FAILED + #define MAP_FAILED ((void *) -1) + #endif + #endif ++#endif + + typedef struct symbol *symbolp; + DEF_VEC_P (symbolp); +@@ -1618,6 +1620,7 @@ dwarf2_read_section (struct objfile *obj + } + } + ++#ifndef __sparc__ + #ifdef HAVE_MMAP + if (pagesize == 0) + pagesize = getpagesize (); +@@ -1641,6 +1644,7 @@ dwarf2_read_section (struct objfile *obj + } + } + #endif ++#endif + + /* If we get here, we are a normal, not-compressed section. */ + info->buffer = buf +@@ -15983,6 +15987,7 @@ munmap_section_buffer (struct dwarf2_sec + { + if (info->map_addr != NULL) + { ++#ifndef __sparc__ + #ifdef HAVE_MMAP + int res; + +@@ -15992,6 +15997,7 @@ munmap_section_buffer (struct dwarf2_sec + /* Without HAVE_MMAP, we should never be here to begin with. */ + gdb_assert_not_reached ("no mmap support"); + #endif ++#endif + } + } + diff --git a/gdb-bz533176-fortran-omp-step.patch b/gdb-bz533176-fortran-omp-step.patch new file mode 100644 index 0000000..2cddac3 --- /dev/null +++ b/gdb-bz533176-fortran-omp-step.patch @@ -0,0 +1,121 @@ +https://bugzilla.redhat.com/show_bug.cgi?id=533176#c4 + +I find it a bug in DWARF and gdb behaves correctly according to it. From the +current DWARF's point of view the is a function call which you skip by "next". + +If you hide any /usr/lib/debug such as using: +gdb -nx -ex 'set debug-file-directory /qwe' -ex 'file ./tpcommon_gfortran44' +and use "step" command instead of "next" there it will work. +(You need to hide debuginfo from libgomp as you would step into libgomp sources +to maintain the threads for execution.) + +There should be some DWARF extension for it, currently tried to detect +substring ".omp_fn." as this function is called "MAIN__.omp_fn.0" and do not +consider such sub-function as a skippable by "next". + +Another problem is that with "set scheduler-locking" being "off" (default +upstream) or "step" (default in F/RHEL) the simultaneous execution of the +threads is inconvenient. Setting it to "on" will lockup the debugging as the +threads need to get synchronized at some point. This is a more general +debugging problem of GOMP outside of the scope of this Bug. + + + +Index: gdb-7.2.50.20101231/gdb/infrun.c +=================================================================== +--- gdb-7.2.50.20101231.orig/gdb/infrun.c 2011-01-01 01:02:45.000000000 +0100 ++++ gdb-7.2.50.20101231/gdb/infrun.c 2011-01-01 01:10:22.000000000 +0100 +@@ -4585,6 +4585,12 @@ infrun: not switching back to stepped th + + if (ecs->event_thread->control.step_over_calls == STEP_OVER_ALL) + { ++ struct symbol *stop_fn = find_pc_function (stop_pc); ++ ++ if (stop_fn == NULL ++ || strstr (SYMBOL_LINKAGE_NAME (stop_fn), ".omp_fn.") == NULL) ++{ /* ".omp_fn." */ ++ + /* We're doing a "next". + + Normal (forward) execution: set a breakpoint at the +@@ -4612,6 +4618,7 @@ infrun: not switching back to stepped th + + keep_going (ecs); + return; ++} /* ".omp_fn." */ + } + + /* If we are in a function call trampoline (a stub between the +Index: gdb-7.2.50.20101231/gdb/testsuite/gdb.fortran/omp-step.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20101231/gdb/testsuite/gdb.fortran/omp-step.exp 2011-01-01 01:09:58.000000000 +0100 +@@ -0,0 +1,31 @@ ++# Copyright 2009 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 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, see . ++ ++set testfile "omp-step" ++set srcfile ${testfile}.f90 ++if { [prepare_for_testing $testfile.exp $testfile $srcfile {debug f90 additional_flags=-fopenmp}] } { ++ return -1 ++} ++ ++if ![runto [gdb_get_line_number "start-here"]] { ++ perror "Couldn't run to start-here" ++ return 0 ++} ++ ++gdb_test "next" {!\$omp parallel} "step closer" ++gdb_test "next" {a\(omp_get_thread_num\(\) \+ 1\) = 1} "step into omp" ++ ++gdb_breakpoint [gdb_get_line_number "success"] ++gdb_continue_to_breakpoint "success" ".*success.*" +Index: gdb-7.2.50.20101231/gdb/testsuite/gdb.fortran/omp-step.f90 +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20101231/gdb/testsuite/gdb.fortran/omp-step.f90 2011-01-01 01:09:58.000000000 +0100 +@@ -0,0 +1,32 @@ ++! Copyright 2009 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 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, see . ++ ++ use omp_lib ++ integer nthreads, i, a(1000) ++ nthreads = omp_get_num_threads() ++ if (nthreads .gt. 1000) call abort ++ ++ do i = 1, nthreads ++ a(i) = 0 ++ end do ++ print *, "start-here" ++!$omp parallel ++ a(omp_get_thread_num() + 1) = 1 ++!$omp end parallel ++ do i = 1, nthreads ++ if (a(i) .ne. 1) call abort ++ end do ++ print *, "success" ++ end diff --git a/gdb-bz562763-pretty-print-2d-vectors.patch b/gdb-bz562763-pretty-print-2d-vectors.patch new file mode 100644 index 0000000..0e3d216 --- /dev/null +++ b/gdb-bz562763-pretty-print-2d-vectors.patch @@ -0,0 +1,398 @@ +2010-05-31 Chris Moller + + * python/py-prettyprint.c (print_children): Add formatting for + matrices. (apply_val_pretty_printer): Detect and deal with matrix + hints. + + +2010-05-31 Chris Moller + + * gdb.python/Makefile.in (EXECUTABLES): Added pr10659. + * gdb.python/pr10659.cc: New file. + * gdb.python/pr10659.exp. New file. + * gdb.python/pr10659.py: New file. + +Index: gdb-7.2.50.20110218/gdb/valprint.h +=================================================================== +--- gdb-7.2.50.20110218.orig/gdb/valprint.h 2011-02-14 12:35:45.000000000 +0100 ++++ gdb-7.2.50.20110218/gdb/valprint.h 2011-02-18 10:44:32.000000000 +0100 +@@ -90,6 +90,9 @@ struct value_print_options + + /* If nonzero, print the value in "summary" form. */ + int summary; ++ ++ /* Affects pretty printing of matrices. */ ++ int prettyprint_matrix; + }; + + /* The global print options set by the user. In general this should +Index: gdb-7.2.50.20110218/gdb/python/py-prettyprint.c +=================================================================== +--- gdb-7.2.50.20110218.orig/gdb/python/py-prettyprint.c 2011-02-14 12:10:53.000000000 +0100 ++++ gdb-7.2.50.20110218/gdb/python/py-prettyprint.c 2011-02-18 10:45:02.000000000 +0100 +@@ -501,7 +501,7 @@ print_children (PyObject *printer, const + + /* Use the prettyprint_arrays option if we are printing an array, + and the pretty option otherwise. */ +- if (is_array) ++ if (is_array || options->prettyprint_matrix) + pretty = options->prettyprint_arrays; + else + { +@@ -521,6 +521,9 @@ print_children (PyObject *printer, const + goto done; + } + make_cleanup_py_decref (frame); ++ ++ if (options->prettyprint_matrix && recurse == 0) ++ fputs_filtered ("\n", stream); + + done_flag = 0; + for (i = 0; i < options->print_max; ++i) +@@ -555,12 +558,23 @@ print_children (PyObject *printer, const + 3. Other. Always print a ",". */ + if (i == 0) + { +- if (is_py_none) +- fputs_filtered ("{", stream); +- else +- fputs_filtered (" = {", stream); ++ if (options->prettyprint_matrix && recurse == 0) ++ print_spaces_filtered (2 + 2 * recurse, stream); ++ if (is_py_none) ++ { ++ if (options->prettyprint_matrix && strcmp (hint, "array")) ++ { ++ fputs_filtered ("{\n", stream); ++ print_spaces_filtered (4 + 2 * recurse, stream); ++ } ++ else ++ fputs_filtered ("{", stream); ++ } ++ else ++ fputs_filtered (" = {", stream); + } +- ++ else if (options->prettyprint_matrix) ++ print_spaces_filtered (4 + 2 * recurse, stream); + else if (! is_map || i % 2 == 0) + fputs_filtered (pretty ? "," : ", ", stream); + +@@ -589,6 +603,10 @@ print_children (PyObject *printer, const + + if (is_map && i % 2 == 0) + fputs_filtered ("[", stream); ++ else if (options->prettyprint_matrix) ++ { ++ /* Force a do-nothing. */ ++ } + else if (is_array) + { + /* We print the index, not whatever the child method +@@ -667,7 +685,12 @@ print_children (PyObject *printer, const + fputs_filtered ("\n", stream); + print_spaces_filtered (2 * recurse, stream); + } +- fputs_filtered ("}", stream); ++ if (options->prettyprint_matrix) ++ { ++ print_spaces_filtered (4 * recurse, stream); ++ fputs_filtered ("}\n", stream); ++ } ++ else fputs_filtered ("}", stream); + } + + done: +@@ -689,6 +712,7 @@ apply_val_pretty_printer (struct type *t + char *hint = NULL; + struct cleanup *cleanups; + int result = 0; ++ struct value_print_options *options_copy; + enum string_repr_result print_result; + + /* No pretty-printer support for unavailable values. */ +@@ -726,9 +750,21 @@ apply_val_pretty_printer (struct type *t + + /* If we are printing a map, we want some special formatting. */ + hint = gdbpy_get_display_hint (printer); ++ ++ if (recurse == 0) ++ { ++ options_copy = alloca (sizeof (struct value_print_options)); ++ memcpy (options_copy, options, sizeof (struct value_print_options)); ++ options_copy->prettyprint_matrix = hint && !strcmp (hint, "matrix"); ++ } ++ else options_copy = (struct value_print_options *)options; ++ + make_cleanup (free_current_contents, &hint); + + /* Print the section */ ++ if (options_copy->prettyprint_matrix) ++ print_result = string_repr_none; ++else /* Red Hat 2D matrix patch */ + print_result = print_string_repr (printer, hint, stream, recurse, + options, language, gdbarch); + if (print_result != string_repr_error) +Index: gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.cc +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.cc 2011-02-18 10:44:32.000000000 +0100 +@@ -0,0 +1,43 @@ ++#include ++#include // /usr/include/c++/4.4.1/bits/vector.tcc ++#include ++ ++using namespace std; ++ ++int use_windows = 9999; ++ ++int ++main(){ ++ vector test1(2,0); ++ test1[0]=8; ++ test1[1]=9; ++ ++ vector< vector > test2(3, vector(2,0)); ++ test2[0][0]=0; ++ test2[0][1]=1; ++ test2[1][0]=2; ++ test2[1][1]=3; ++ test2[2][0]=4; ++ test2[2][1]=5; ++ ++#define NR_ROWS 2 ++#define NR_COLS 3 ++#define NR_PLANES 4 ++ vector rows(NR_ROWS, 0); ++ vector< vector > columns(NR_COLS, rows); ++ vector< vector < vector > > test3(NR_PLANES, columns); ++ ++ cout << "rows.size() = " << rows.size() ++ << ", columns.size() = " << columns.size() ++ << ", test3.size() = " << test3.size() << "\n"; ++ ++ for (int i = 0; i < rows.size(); i++) { ++ for (int j = 0; j < columns.size(); j++) { ++ for (int k = 0; k < test3.size(); k++) { ++ test3[k][j][i] = k * 100 + j * 10 + i; ++ } ++ } ++ } ++ ++ return 0; // break ++} +Index: gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.exp 2011-02-18 10:44:32.000000000 +0100 +@@ -0,0 +1,82 @@ ++#Copyright 2010 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 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, see . ++ ++set nl "\[\r\n\]+" ++ ++set testfile pr10659 ++set srcfile ${testfile}.cc ++if [prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}] { ++ return -1 ++} ++ ++#if { [skip_python_tests] } { continue } ++ ++gdb_test "python execfile(\"$srcdir/$subdir/pr10659.py\")" "" ++gdb_test "python gdb.pretty_printers = \[lookup_function\]" "" ++ ++if ![runto_main] then { ++ fail "Can't run to main" ++ return ++} ++ ++gdb_breakpoint [gdb_get_line_number "break"] ++gdb_continue_to_breakpoint "break" ++ ++gdb_test "p test1" "vector of length 2, capacity 2 =.*" ++ ++gdb_test "p test2" "= $nl {$nl {.*" ++ ++# Complete result is: ++# ++# (gdb) p test2 ++# $2 = ++# { ++# {0 1 } ++# {2 3 } ++# {4 5 } ++# } ++ ++ ++gdb_test "p test3" "= $nl {$nl {$nl {.*" ++ ++# Complete result is: ++# ++# (gdb) p test3 ++# $3 = ++# { ++# { ++# {0 1 } ++# {10 11 } ++# {20 21 } ++# } ++# { ++# {100 101 } ++# {110 111 } ++# {120 121 } ++# } ++# { ++# {200 201 } ++# {210 211 } ++# {220 221 } ++# } ++# { ++# {300 301 } ++# {310 311 } ++# {320 321 } ++# } ++# } ++# ++ ++ +Index: gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.py +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.2.50.20110218/gdb/testsuite/gdb.python/pr10659.py 2011-02-18 10:44:32.000000000 +0100 +@@ -0,0 +1,109 @@ ++# Copyright (C) 2008, 2009 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 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, see . ++ ++import gdb ++import itertools ++import re ++ ++vector_sig = 'std::vector' ++vector_regex = re.compile('^' + vector_sig + '<.*>$') ++ ++class FakeVectorPrinter: ++ "Print a std::vector" ++ ++ class _iterator: ++ def __init__ (self, start, finish): ++ self.item = start ++ self.finish = finish ++ self.count = 0 ++ ++ def __iter__(self): ++ return self ++ ++ def next(self): ++ if self.item == self.finish: ++ raise StopIteration ++ count = self.count ++ self.count = self.count + 1 ++ elt = self.item.dereference() ++ self.item = self.item + 1 ++ return ('[%d]' % count, elt) ++ ++ def __init__(self, typename, val): ++ self.typename = typename ++ self.val = val ++ ++ def children(self): ++ return self._iterator(self.val['_M_impl']['_M_start'], ++ self.val['_M_impl']['_M_finish']) ++ ++ def to_string(self): ++ start = self.val['_M_impl']['_M_start'] ++ finish = self.val['_M_impl']['_M_finish'] ++ end = self.val['_M_impl']['_M_end_of_storage'] ++ return ('std::vector of length %d, capacity %d' ++ % (int (finish - start), int (end - start))) ++ ++ def display_hint(self): ++ itype0 = self.val.type.template_argument(0) ++ itag = itype0.tag ++ if itag and re.match(vector_regex, itag): ++ rc = 'matrix' ++ else: ++ rc = 'array' ++ return rc ++ ++def register_libstdcxx_printers (obj): ++ "Register libstdc++ pretty-printers with objfile Obj." ++ ++ if obj == None: ++ obj = gdb ++ ++ obj.pretty_printers.append (lookup_function) ++ ++def lookup_function (val): ++ "Look-up and return a pretty-printer that can print val." ++ ++ # Get the type. ++ type = val.type; ++ ++ # If it points to a reference, get the reference. ++ if type.code == gdb.TYPE_CODE_REF: ++ type = type.target () ++ ++ # Get the unqualified type, stripped of typedefs. ++ type = type.unqualified ().strip_typedefs () ++ ++ # Get the type name. ++ typename = type.tag ++ if typename == None: ++ return None ++ ++ # Iterate over local dictionary of types to determine ++ # if a printer is registered for that type. Return an ++ # instantiation of the printer if found. ++ for function in fake_pretty_printers_dict: ++ if function.search (typename): ++ return fake_pretty_printers_dict[function] (val) ++ ++ # Cannot find a pretty printer. Return None. ++ return None ++ ++def build_libfakecxx_dictionary (): ++ fake_pretty_printers_dict[vector_regex] = lambda val: FakeVectorPrinter(vector_sig, val) ++ ++fake_pretty_printers_dict = {} ++ ++build_libfakecxx_dictionary () +Index: gdb-7.2.50.20110218/gdb/valprint.c +=================================================================== +--- gdb-7.2.50.20110218.orig/gdb/valprint.c 2011-02-18 10:44:16.000000000 +0100 ++++ gdb-7.2.50.20110218/gdb/valprint.c 2011-02-18 10:44:32.000000000 +0100 +@@ -85,7 +85,8 @@ struct value_print_options user_print_op + 1, /* static_field_print */ + 1, /* pascal_static_field_print */ + 0, /* raw */ +- 0 /* summary */ ++ 0, /* summary */ ++ 0 /* prettyprint_matrix */ + }; + + /* Initialize *OPTS to be a copy of the user print options. */ diff --git a/gdb-bz568248-oom-is-error.patch b/gdb-bz568248-oom-is-error.patch new file mode 100644 index 0000000..045d34e --- /dev/null +++ b/gdb-bz568248-oom-is-error.patch @@ -0,0 +1,68 @@ +http://sourceware.org/ml/gdb-patches/2010-06/msg00005.html +Subject: [rfc patch] nomem: internal_error -> error + +Hi, + +unfortunately I see this problem reproducible only with the +archer-jankratochvil-vla branch (VLA = Variable Length Arrays - char[var]). +OTOH this branch I hopefully submit in some form for FSF GDB later. + +In this case (a general problem but tested for example on Fedora 13 i686): + +int +main (int argc, char **argv) +{ + char a[argc]; + return a[0]; +} + +(gdb) start +(gdb) print a +../../gdb/utils.c:1251: internal-error: virtual memory exhausted: can't allocate 4294951689 bytes. + +It is apparently because boundary for the variable `a' is not initialized +there. Users notice it due to Eclipse-CDT trying to automatically display all +the local variables on each step. + + +Apparentl no regressions on {x86_64,x86_64-m32,i686}-fedora13-linux-gnu. +But is anone aware of the reasons to use internal_error there? +I find simple error as a perfectly reasonable there. +(history only tracks it since the initial import) + +IIRC this idea has been discussed with Tom Tromey, not sure of its origin. + +I understand it may be offtopic for FSF GDB but from some GDB crashes I am not +sure if it can happen only due to the VLA variables. + + +Thanks, +Jan + + +gdb/ +2010-06-01 Jan Kratochvil + Tom Tromey + + * utils.c (nomem): Change internal_error to error. + +Index: gdb-7.3.50.20110722/gdb/utils.c +=================================================================== +--- gdb-7.3.50.20110722.orig/gdb/utils.c 2011-07-22 19:28:58.000000000 +0200 ++++ gdb-7.3.50.20110722/gdb/utils.c 2011-07-22 19:34:25.000000000 +0200 +@@ -1219,13 +1219,11 @@ malloc_failure (long size) + { + if (size > 0) + { +- internal_error (__FILE__, __LINE__, +- _("virtual memory exhausted: can't allocate %ld bytes."), +- size); ++ error (_("virtual memory exhausted: can't allocate %ld bytes."), size); + } + else + { +- internal_error (__FILE__, __LINE__, _("virtual memory exhausted.")); ++ error (_("virtual memory exhausted.")); + } + } + diff --git a/gdb-bz592031-siginfo-lost-4of5.patch b/gdb-bz592031-siginfo-lost-4of5.patch new file mode 100644 index 0000000..3810fec --- /dev/null +++ b/gdb-bz592031-siginfo-lost-4of5.patch @@ -0,0 +1,994 @@ +http://sourceware.org/ml/gdb-patches/2010-09/msg00360.html +Subject: [patch 3/4]#3 linux-nat: Do not respawn signals + +Hi, + +linux-nat.c is fixed to never respawn signals; possibly keeping SIGSTOP +pending, as is done in current in FSF gdbserver and as suggested by Pedro: + http://sourceware.org/ml/gdb-patches/2010-08/msg00544.html + +The last linux-nat.c removed patch chunk comes from the initial implementation +by Mark Kettenis: + [PATCH] New Linux threads support + http://sourceware.org/ml/gdb-patches/2000-09/msg00020.html + 92280a75e017683bf8e4f339f4f85640b0700509 +It gets in part reimplemented into the new stop_wait_callback step)> +part and partially just not needed as currently GDB never drops the signals as +it does not PTRACE_CONT the thread; signal is kept for processing: + "RC: Not resuming sibling %s (has pending)\n" + +In stop_wait_callback I believe breakpoints cancellation is not needed here, +it would be done later. + + +The testcase sigstep-threads.exp was written to catch a regression-like +appearance then the new step)> part of stop_wait_callback gets +removed. Still the tecase fails even with FSF HEAD: + +32 var++; /* step-1 */ +(gdb) step +Program received signal SIGUSR1, User defined signal 1. +Program received signal SIGUSR1, User defined signal 1. +31 { /* step-0 */ + +There is no reason why it shouldn't stop on line 33, between line 32 and line +33 no signal would occur. Stepping of the current thread should not be +affected by whatever happens in the other threads as select_event_lwp has: + /* Give preference to any LWP that is being single-stepped. */ + +There is a problem that with FSF HEAD GDB does PTRACE_SINGLESTEP for thread A, +PTRACE_CONT for thread B (because of set scheduler-locking off), thread B hits +SIGUSR1, so GDB tkills thread A with SIGSTOP and it can receive SIGSTOP for +thread A before the SIGTRAP for completed PTRACE_SINGLESTEP. At that moment +select_event_lwp. forgets it was stepping thread A because there is no pending +SIGTRAP event. currently_stepping still remembers thread A was stepping so it +will later stop but as thread A was PTRACE_CONT-ed in the meantime it is too +late. + +There is the new step)> part of stop_wait_callback to always track +thread A is stepping. Due to different scheduling without this part the +changed GDB would very rarely stop in this testcase otherwise, making it look +as a regression. + +I have some another patch I may post separately as if multiple signals happen +besides SIGTRAP GDB still may switch from thread A away (as not considering it +stepping) to thread B for SIGUSR and accidentally PTRACE_CONT thread A. +But I do not find this as a prerequisite for this patchset. + + + +Thanks, +Jan + + +gdb/ +2010-09-20 Jan Kratochvil + + * linux-nat.c (stop_wait_callback): New gdb_assert. Remove signals + respawning; keep TP with SIGNALLED. New debugging message "SWC: + Delayed SIGSTOP caught for %s.". Catch next signal if SIGSTOP has + been caught and LP->STEP is set. + (linux_nat_wait_1) signalled>: Remove. + +gdb/testsuite/ +2010-09-20 Jan Kratochvil + + * gdb.threads/siginfo-threads.exp: New file. + * gdb.threads/siginfo-threads.c: New file. + * gdb.threads/sigstep-threads.exp: New file. + * gdb.threads/sigstep-threads.c: New file. + +Index: gdb-7.4.50.20111218/gdb/linux-nat.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/linux-nat.c 2011-12-19 01:25:42.000000000 +0100 ++++ gdb-7.4.50.20111218/gdb/linux-nat.c 2011-12-19 02:17:05.412607735 +0100 +@@ -2843,6 +2843,8 @@ stop_wait_callback (struct lwp_info *lp, + { + int status; + ++ gdb_assert (lp->resumed); ++ + status = wait_lwp (lp); + if (status == 0) + return 0; +@@ -2868,110 +2870,61 @@ stop_wait_callback (struct lwp_info *lp, + + if (WSTOPSIG (status) != SIGSTOP) + { +- if (linux_nat_status_is_event (status)) +- { +- /* If a LWP other than the LWP that we're reporting an +- event for has hit a GDB breakpoint (as opposed to +- some random trap signal), then just arrange for it to +- hit it again later. We don't keep the SIGTRAP status +- and don't forward the SIGTRAP signal to the LWP. We +- will handle the current event, eventually we will +- resume all LWPs, and this one will get its breakpoint +- trap again. +- +- If we do not do this, then we run the risk that the +- user will delete or disable the breakpoint, but the +- thread will have already tripped on it. */ +- +- /* Save the trap's siginfo in case we need it later. */ +- save_siginfo (lp); +- +- save_sigtrap (lp); +- +- /* Now resume this LWP and get the SIGSTOP event. */ +- errno = 0; +- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0); +- if (debug_linux_nat) +- { +- fprintf_unfiltered (gdb_stdlog, +- "PTRACE_CONT %s, 0, 0 (%s)\n", +- target_pid_to_str (lp->ptid), +- errno ? safe_strerror (errno) : "OK"); +- +- fprintf_unfiltered (gdb_stdlog, +- "SWC: Candidate SIGTRAP event in %s\n", +- target_pid_to_str (lp->ptid)); +- } +- /* Hold this event/waitstatus while we check to see if +- there are any more (we still want to get that SIGSTOP). */ +- stop_wait_callback (lp, NULL); ++ /* The thread was stopped with a signal other than SIGSTOP. */ + +- /* Hold the SIGTRAP for handling by linux_nat_wait. If +- there's another event, throw it back into the +- queue. */ +- if (lp->status) +- { +- if (debug_linux_nat) +- fprintf_unfiltered (gdb_stdlog, +- "SWC: kill %s, %s\n", +- target_pid_to_str (lp->ptid), +- status_to_str ((int) status)); +- kill_lwp (GET_LWP (lp->ptid), WSTOPSIG (lp->status)); +- } +- +- /* Save the sigtrap event. */ +- lp->status = status; +- return 0; +- } +- else +- { +- /* The thread was stopped with a signal other than +- SIGSTOP, and didn't accidentally trip a breakpoint. */ ++ /* Save the trap's siginfo in case we need it later. */ ++ save_siginfo (lp); + +- if (debug_linux_nat) +- { +- fprintf_unfiltered (gdb_stdlog, +- "SWC: Pending event %s in %s\n", +- status_to_str ((int) status), +- target_pid_to_str (lp->ptid)); +- } +- /* Now resume this LWP and get the SIGSTOP event. */ +- errno = 0; +- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0); +- if (debug_linux_nat) +- fprintf_unfiltered (gdb_stdlog, +- "SWC: PTRACE_CONT %s, 0, 0 (%s)\n", +- target_pid_to_str (lp->ptid), +- errno ? safe_strerror (errno) : "OK"); ++ save_sigtrap (lp); + +- /* Hold this event/waitstatus while we check to see if +- there are any more (we still want to get that SIGSTOP). */ +- stop_wait_callback (lp, NULL); ++ if (debug_linux_nat) ++ fprintf_unfiltered (gdb_stdlog, ++ "SWC: Pending event %s in %s\n", ++ status_to_str ((int) status), ++ target_pid_to_str (lp->ptid)); + +- /* If the lp->status field is still empty, use it to +- hold this event. If not, then this event must be +- returned to the event queue of the LWP. */ +- if (lp->status) +- { +- if (debug_linux_nat) +- { +- fprintf_unfiltered (gdb_stdlog, +- "SWC: kill %s, %s\n", +- target_pid_to_str (lp->ptid), +- status_to_str ((int) status)); +- } +- kill_lwp (GET_LWP (lp->ptid), WSTOPSIG (status)); +- } +- else +- lp->status = status; +- return 0; +- } ++ /* Save the sigtrap event. */ ++ lp->status = status; ++ gdb_assert (! lp->stopped); ++ gdb_assert (lp->signalled); ++ lp->stopped = 1; + } + else + { + /* We caught the SIGSTOP that we intended to catch, so + there's no SIGSTOP pending. */ +- lp->stopped = 1; ++ ++ if (debug_linux_nat) ++ fprintf_unfiltered (gdb_stdlog, ++ "SWC: Delayed SIGSTOP caught for %s.\n", ++ target_pid_to_str (lp->ptid)); ++ ++ if (lp->step) ++ { ++ /* LP->STATUS is 0 here. That means SIGTRAP from ++ PTRACE_SINGLESTEP still has to be delivered for this inferior ++ stop. Catching the SIGTRAP event is important to prevent ++ starvation in select_event_lwp. */ ++ ++ registers_changed (); ++ linux_ops->to_resume (linux_ops, pid_to_ptid (GET_LWP (lp->ptid)), ++ 1, TARGET_SIGNAL_0); ++ if (debug_linux_nat) ++ fprintf_unfiltered (gdb_stdlog, ++ "SWC: %s %s, 0, 0 (discard SIGSTOP)\n", ++ "PTRACE_SINGLESTEP", ++ target_pid_to_str (lp->ptid)); ++ ++ lp->stopped = 0; ++ gdb_assert (lp->resumed); ++ stop_wait_callback (lp, NULL); ++ gdb_assert (lp->stopped); ++ } ++ else ++ lp->stopped = 1; ++ ++ /* Reset SIGNALLED only after the stop_wait_callback call above as ++ it does gdb_assert on SIGNALLED. */ + lp->signalled = 0; + } + } +@@ -3627,54 +3580,6 @@ retry: + lp = NULL; + } + +- if (lp && lp->signalled && lp->last_resume_kind != resume_stop) +- { +- /* A pending SIGSTOP may interfere with the normal stream of +- events. In a typical case where interference is a problem, +- we have a SIGSTOP signal pending for LWP A while +- single-stepping it, encounter an event in LWP B, and take the +- pending SIGSTOP while trying to stop LWP A. After processing +- the event in LWP B, LWP A is continued, and we'll never see +- the SIGTRAP associated with the last time we were +- single-stepping LWP A. */ +- +- /* Resume the thread. It should halt immediately returning the +- pending SIGSTOP. */ +- registers_changed (); +- if (linux_nat_prepare_to_resume != NULL) +- linux_nat_prepare_to_resume (lp); +- linux_ops->to_resume (linux_ops, pid_to_ptid (GET_LWP (lp->ptid)), +- lp->step, TARGET_SIGNAL_0); +- if (debug_linux_nat) +- fprintf_unfiltered (gdb_stdlog, +- "LLW: %s %s, 0, 0 (expect SIGSTOP)\n", +- lp->step ? "PTRACE_SINGLESTEP" : "PTRACE_CONT", +- target_pid_to_str (lp->ptid)); +- lp->stopped = 0; +- gdb_assert (lp->resumed); +- +- /* Catch the pending SIGSTOP. */ +- status = lp->status; +- lp->status = 0; +- +- stop_wait_callback (lp, NULL); +- +- /* If the lp->status field isn't empty, we caught another signal +- while flushing the SIGSTOP. Return it back to the event +- queue of the LWP, as we already have an event to handle. */ +- if (lp->status) +- { +- if (debug_linux_nat) +- fprintf_unfiltered (gdb_stdlog, +- "LLW: kill %s, %s\n", +- target_pid_to_str (lp->ptid), +- status_to_str (lp->status)); +- kill_lwp (GET_LWP (lp->ptid), WSTOPSIG (lp->status)); +- } +- +- lp->status = status; +- } +- + if (!target_can_async_p ()) + { + /* Causes SIGINT to be passed on to the attached process. */ +Index: gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/siginfo-threads.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/siginfo-threads.c 2011-12-19 02:16:35.236720272 +0100 +@@ -0,0 +1,447 @@ ++/* This testcase is part of GDB, the GNU debugger. ++ ++ Copyright 2010 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 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, see . */ ++ ++#define _GNU_SOURCE ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#define gettid() syscall (__NR_gettid) ++#define tgkill(tgid, tid, sig) syscall (__NR_tgkill, tgid, tid, sig) ++ ++/* Terminate always in the main task, it can lock up with SIGSTOPped GDB ++ otherwise. */ ++#define TIMEOUT (gettid () == getpid() ? 10 : 15) ++ ++static pid_t thread1_tid; ++static pthread_cond_t thread1_tid_cond = PTHREAD_COND_INITIALIZER; ++static pthread_mutex_t thread1_tid_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP; ++static int thread1_sigusr1_hit; ++static int thread1_sigusr2_hit; ++ ++static pid_t thread2_tid; ++static pthread_cond_t thread2_tid_cond = PTHREAD_COND_INITIALIZER; ++static pthread_mutex_t thread2_tid_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP; ++static int thread2_sigusr1_hit; ++static int thread2_sigusr2_hit; ++ ++static pthread_mutex_t terminate_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP; ++ ++/* Do not use alarm as it would create a ptrace event which would hang up us if ++ we are being traced by GDB which we stopped ourselves. */ ++ ++static void timed_mutex_lock (pthread_mutex_t *mutex) ++{ ++ int i; ++ struct timespec start, now; ++ ++ i = clock_gettime (CLOCK_MONOTONIC, &start); ++ assert (i == 0); ++ ++ do ++ { ++ i = pthread_mutex_trylock (mutex); ++ if (i == 0) ++ return; ++ assert (i == EBUSY); ++ ++ i = clock_gettime (CLOCK_MONOTONIC, &now); ++ assert (i == 0); ++ assert (now.tv_sec >= start.tv_sec); ++ } ++ while (now.tv_sec - start.tv_sec < TIMEOUT); ++ ++ fprintf (stderr, "Timed out waiting for internal lock!\n"); ++ exit (EXIT_FAILURE); ++} ++ ++static void ++handler (int signo, siginfo_t *siginfo, void *exception) ++{ ++ int *varp; ++ ++ assert (siginfo->si_signo == signo); ++ assert (siginfo->si_code == SI_TKILL); ++ assert (siginfo->si_pid == getpid ()); ++ ++ if (gettid () == thread1_tid) ++ { ++ if (signo == SIGUSR1) ++ varp = &thread1_sigusr1_hit; ++ else if (signo == SIGUSR2) ++ varp = &thread1_sigusr2_hit; ++ else ++ assert (0); ++ } ++ else if (gettid () == thread2_tid) ++ { ++ if (signo == SIGUSR1) ++ varp = &thread2_sigusr1_hit; ++ else if (signo == SIGUSR2) ++ varp = &thread2_sigusr2_hit; ++ else ++ assert (0); ++ } ++ else ++ assert (0); ++ ++ if (*varp) ++ { ++ fprintf (stderr, "Signal %d for TID %lu has been already hit!\n", signo, ++ (unsigned long) gettid ()); ++ exit (EXIT_FAILURE); ++ } ++ *varp = 1; ++} ++ ++static void * ++thread1_func (void *unused) ++{ ++ int i; ++ ++ timed_mutex_lock (&thread1_tid_mutex); ++ ++ /* THREAD1_TID_MUTEX must be already locked to avoid race. */ ++ thread1_tid = gettid (); ++ ++ i = pthread_cond_signal (&thread1_tid_cond); ++ assert (i == 0); ++ i = pthread_mutex_unlock (&thread1_tid_mutex); ++ assert (i == 0); ++ ++ /* Be sure the "t (tracing stop)" test can proceed for both threads. */ ++ timed_mutex_lock (&terminate_mutex); ++ i = pthread_mutex_unlock (&terminate_mutex); ++ assert (i == 0); ++ ++ if (! thread1_sigusr1_hit) ++ { ++ fprintf (stderr, "Thread 1 signal SIGUSR1 not hit!\n"); ++ exit (EXIT_FAILURE); ++ } ++ if (! thread1_sigusr2_hit) ++ { ++ fprintf (stderr, "Thread 1 signal SIGUSR2 not hit!\n"); ++ exit (EXIT_FAILURE); ++ } ++ ++ return NULL; ++} ++ ++static void * ++thread2_func (void *unused) ++{ ++ int i; ++ ++ timed_mutex_lock (&thread2_tid_mutex); ++ ++ /* THREAD2_TID_MUTEX must be already locked to avoid race. */ ++ thread2_tid = gettid (); ++ ++ i = pthread_cond_signal (&thread2_tid_cond); ++ assert (i == 0); ++ i = pthread_mutex_unlock (&thread2_tid_mutex); ++ assert (i == 0); ++ ++ /* Be sure the "t (tracing stop)" test can proceed for both threads. */ ++ timed_mutex_lock (&terminate_mutex); ++ i = pthread_mutex_unlock (&terminate_mutex); ++ assert (i == 0); ++ ++ if (! thread2_sigusr1_hit) ++ { ++ fprintf (stderr, "Thread 2 signal SIGUSR1 not hit!\n"); ++ exit (EXIT_FAILURE); ++ } ++ if (! thread2_sigusr2_hit) ++ { ++ fprintf (stderr, "Thread 2 signal SIGUSR2 not hit!\n"); ++ exit (EXIT_FAILURE); ++ } ++ ++ return NULL; ++} ++ ++static const char * ++proc_string (const char *filename, const char *line) ++{ ++ FILE *f; ++ static char buf[LINE_MAX]; ++ size_t line_len = strlen (line); ++ ++ f = fopen (filename, "r"); ++ if (f == NULL) ++ { ++ fprintf (stderr, "fopen (\"%s\") for \"%s\": %s\n", filename, line, ++ strerror (errno)); ++ exit (EXIT_FAILURE); ++ } ++ while (errno = 0, fgets (buf, sizeof (buf), f)) ++ { ++ char *s; ++ ++ s = strchr (buf, '\n'); ++ assert (s != NULL); ++ *s = 0; ++ ++ if (strncmp (buf, line, line_len) != 0) ++ continue; ++ ++ if (fclose (f)) ++ { ++ fprintf (stderr, "fclose (\"%s\") for \"%s\": %s\n", filename, line, ++ strerror (errno)); ++ exit (EXIT_FAILURE); ++ } ++ ++ return &buf[line_len]; ++ } ++ if (errno != 0) ++ { ++ fprintf (stderr, "fgets (\"%s\": %s\n", filename, strerror (errno)); ++ exit (EXIT_FAILURE); ++ } ++ fprintf (stderr, "\"%s\": No line \"%s\" found.\n", filename, line); ++ exit (EXIT_FAILURE); ++} ++ ++static unsigned long ++proc_ulong (const char *filename, const char *line) ++{ ++ const char *s = proc_string (filename, line); ++ long retval; ++ char *end; ++ ++ errno = 0; ++ retval = strtol (s, &end, 10); ++ if (retval < 0 || retval >= LONG_MAX || (end && *end)) ++ { ++ fprintf (stderr, "\"%s\":\"%s\": %ld, %s\n", filename, line, retval, ++ strerror (errno)); ++ exit (EXIT_FAILURE); ++ } ++ return retval; ++} ++ ++static void ++state_wait (pid_t process, const char *wanted) ++{ ++ char *filename; ++ int i; ++ struct timespec start, now; ++ const char *state; ++ ++ i = asprintf (&filename, "/proc/%lu/status", (unsigned long) process); ++ assert (i > 0); ++ ++ i = clock_gettime (CLOCK_MONOTONIC, &start); ++ assert (i == 0); ++ ++ do ++ { ++ state = proc_string (filename, "State:\t"); ++ ++ /* torvalds/linux-2.6.git 464763cf1c6df632dccc8f2f4c7e50163154a2c0 ++ has changed "T (tracing stop)" to "t (tracing stop)". Make the GDB ++ testcase backward compatible with older Linux kernels. */ ++ if (strcmp (state, "T (tracing stop)") == 0) ++ state = "t (tracing stop)"; ++ ++ if (strcmp (state, wanted) == 0) ++ { ++ free (filename); ++ return; ++ } ++ ++ if (sched_yield ()) ++ { ++ perror ("sched_yield()"); ++ exit (EXIT_FAILURE); ++ } ++ ++ i = clock_gettime (CLOCK_MONOTONIC, &now); ++ assert (i == 0); ++ assert (now.tv_sec >= start.tv_sec); ++ } ++ while (now.tv_sec - start.tv_sec < TIMEOUT); ++ ++ fprintf (stderr, "Timed out waiting for PID %lu \"%s\" (now it is \"%s\")!\n", ++ (unsigned long) process, wanted, state); ++ exit (EXIT_FAILURE); ++} ++ ++static volatile pid_t tracer = 0; ++static pthread_t thread1, thread2; ++ ++static void ++cleanup (void) ++{ ++ printf ("Resuming GDB PID %lu.\n", (unsigned long) tracer); ++ ++ if (tracer) ++ { ++ int i; ++ int tracer_save = tracer; ++ ++ tracer = 0; ++ ++ i = kill (tracer_save, SIGCONT); ++ assert (i == 0); ++ } ++} ++ ++int ++main (int argc, char **argv) ++{ ++ int i; ++ int standalone = 0; ++ struct sigaction act; ++ ++ if (argc == 2 && strcmp (argv[1], "-s") == 0) ++ standalone = 1; ++ else ++ assert (argc == 1); ++ ++ setbuf (stdout, NULL); ++ ++ timed_mutex_lock (&thread1_tid_mutex); ++ timed_mutex_lock (&thread2_tid_mutex); ++ ++ timed_mutex_lock (&terminate_mutex); ++ ++ errno = 0; ++ memset (&act, 0, sizeof (act)); ++ act.sa_sigaction = handler; ++ act.sa_flags = SA_RESTART | SA_SIGINFO; ++ i = sigemptyset (&act.sa_mask); ++ assert_perror (errno); ++ assert (i == 0); ++ i = sigaction (SIGUSR1, &act, NULL); ++ assert_perror (errno); ++ assert (i == 0); ++ i = sigaction (SIGUSR2, &act, NULL); ++ assert_perror (errno); ++ assert (i == 0); ++ ++ i = pthread_create (&thread1, NULL, thread1_func, NULL); ++ assert (i == 0); ++ ++ i = pthread_create (&thread2, NULL, thread2_func, NULL); ++ assert (i == 0); ++ ++ if (!standalone) ++ { ++ tracer = proc_ulong ("/proc/self/status", "TracerPid:\t"); ++ if (tracer == 0) ++ { ++ fprintf (stderr, "The testcase must be run by GDB!\n"); ++ exit (EXIT_FAILURE); ++ } ++ if (tracer != getppid ()) ++ { ++ fprintf (stderr, "The testcase parent must be our GDB tracer!\n"); ++ exit (EXIT_FAILURE); ++ } ++ } ++ ++ /* SIGCONT our debugger in the case of our crash as we would deadlock ++ otherwise. */ ++ ++ atexit (cleanup); ++ ++ printf ("Stopping GDB PID %lu.\n", (unsigned long) tracer); ++ ++ if (tracer) ++ { ++ i = kill (tracer, SIGSTOP); ++ assert (i == 0); ++ state_wait (tracer, "T (stopped)"); ++ } ++ ++ /* Threads are now waiting at timed_mutex_lock (thread1_tid_mutex) and so ++ they could not trigger the signals before GDB gets unstopped later. ++ Threads get resumed at pthread_cond_wait below. Use `while' loops for ++ protection against spurious pthread_cond_wait wakeups. */ ++ ++ printf ("Waiting till the threads initialize their TIDs.\n"); ++ ++ while (thread1_tid == 0) ++ { ++ i = pthread_cond_wait (&thread1_tid_cond, &thread1_tid_mutex); ++ assert (i == 0); ++ } ++ ++ while (thread2_tid == 0) ++ { ++ i = pthread_cond_wait (&thread2_tid_cond, &thread2_tid_mutex); ++ assert (i == 0); ++ } ++ ++ printf ("Thread 1 TID = %lu, thread 2 TID = %lu, PID = %lu.\n", ++ (unsigned long) thread1_tid, (unsigned long) thread2_tid, ++ (unsigned long) getpid ()); ++ ++ errno = 0; ++ i = tgkill (getpid (), thread1_tid, SIGUSR1); ++ assert_perror (errno); ++ assert (i == 0); ++ i = tgkill (getpid (), thread1_tid, SIGUSR2); ++ assert_perror (errno); ++ assert (i == 0); ++ i = tgkill (getpid (), thread2_tid, SIGUSR1); ++ assert_perror (errno); ++ assert (i == 0); ++ i = tgkill (getpid (), thread2_tid, SIGUSR2); ++ assert_perror (errno); ++ assert (i == 0); ++ ++ printf ("Waiting till the threads get trapped by the signals.\n"); ++ ++ if (tracer) ++ { ++ /* s390x-unknown-linux-gnu will fail with "R (running)". */ ++ ++ state_wait (thread1_tid, "t (tracing stop)"); ++ ++ state_wait (thread2_tid, "t (tracing stop)"); ++ } ++ ++ cleanup (); ++ ++ printf ("Joining the threads.\n"); ++ ++ i = pthread_mutex_unlock (&terminate_mutex); ++ assert (i == 0); ++ ++ i = pthread_join (thread1, NULL); ++ assert (i == 0); ++ ++ i = pthread_join (thread2, NULL); ++ assert (i == 0); ++ ++ printf ("Exiting.\n"); /* break-at-exit */ ++ ++ return EXIT_SUCCESS; ++} +Index: gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/siginfo-threads.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/siginfo-threads.exp 2011-12-19 02:16:35.237720268 +0100 +@@ -0,0 +1,94 @@ ++# Copyright 2010 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 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, see . ++ ++set testfile "siginfo-threads" ++set srcfile ${testfile}.c ++set binfile ${objdir}/${subdir}/${testfile} ++if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" ${binfile} executable [list debug additional_flags=-lrt]] != "" } { ++ return -1 ++} ++ ++clean_restart $testfile ++ ++if ![runto_main] { ++ return -1 ++} ++ ++# `nostop noprint pass' could in some cases report false PASS due to the ++# (preempt 'handle') code path. ++ ++gdb_test "handle SIGUSR1 stop print pass" "Signal\[ \t\]+Stop\[ \t\]+Print\[ \t\]+Pass to program\[ \t\]+Description\r\nSIGUSR1\[ \t\]+Yes\[ \t\]+Yes\[ \t\]+Yes\[ \t\].*" ++gdb_test "handle SIGUSR2 stop print pass" "Signal\[ \t\]+Stop\[ \t\]+Print\[ \t\]+Pass to program\[ \t\]+Description\r\nSIGUSR2\[ \t\]+Yes\[ \t\]+Yes\[ \t\]+Yes\[ \t\].*" ++ ++gdb_breakpoint [gdb_get_line_number "break-at-exit"] ++ ++set test "get pid" ++gdb_test_multiple "p getpid ()" $test { ++ -re " = (\[0-9\]+)\r\n$gdb_prompt $" { ++ set pid $expect_out(1,string) ++ pass $test ++ } ++} ++ ++for {set sigcount 0} {$sigcount < 4} {incr sigcount} { ++ set test "catch signal $sigcount" ++ set sigusr "" ++ gdb_test_multiple "continue" $test { ++ -re "Program received signal SIGUSR(\[12\]), User defined signal \[12\]\\.\r\n.*\r\n$gdb_prompt $" { ++ set sigusr $expect_out(1,string) ++ pass $test ++ } ++ } ++ if {$sigusr == ""} { ++ return -1 ++ } ++ ++ set test "signal $sigcount si_signo" ++ if {$sigusr == 1} { ++ set signo 10 ++ } else { ++ set signo 12 ++ } ++ gdb_test_multiple {p $_siginfo.si_signo} $test { ++ -re " = $signo\r\n$gdb_prompt $" { ++ pass $test ++ } ++ -re "Attempt to extract a component of a value that is not a structure\\.\r\n$gdb_prompt $" { ++ unsupported $test ++ } ++ } ++ ++ set test "signal $sigcount si_code is SI_TKILL" ++ gdb_test_multiple {p $_siginfo.si_code} $test { ++ -re " = -6\r\n$gdb_prompt $" { ++ pass $test ++ } ++ -re "Attempt to extract a component of a value that is not a structure\\.\r\n$gdb_prompt $" { ++ unsupported $test ++ } ++ } ++ ++ set test "signal $sigcount si_pid" ++ gdb_test_multiple {p $_siginfo._sifields._kill.si_pid} $test { ++ -re " = $pid\r\n$gdb_prompt $" { ++ pass $test ++ } ++ -re "Attempt to extract a component of a value that is not a structure\\.\r\n$gdb_prompt $" { ++ unsupported $test ++ } ++ } ++} ++ ++gdb_continue_to_breakpoint break-at-exit ".*break-at-exit.*" +Index: gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/sigstep-threads.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/sigstep-threads.c 2011-12-19 02:16:35.237720268 +0100 +@@ -0,0 +1,54 @@ ++/* This testcase is part of GDB, the GNU debugger. ++ ++ Copyright 2010 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 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, see . */ ++ ++#include ++#include ++#include ++ ++#include ++#include ++#define tgkill(tgid, tid, sig) syscall (__NR_tgkill, (tgid), (tid), (sig)) ++#define gettid() syscall (__NR_gettid) ++ ++static volatile int var; ++ ++static void ++handler (int signo) /* step-0 */ ++{ /* step-0 */ ++ var++; /* step-1 */ ++ tgkill (getpid (), gettid (), SIGUSR1); /* step-2 */ ++} ++ ++static void * ++start (void *arg) ++{ ++ signal (SIGUSR1, handler); ++ tgkill (getpid (), gettid (), SIGUSR1); ++ assert (0); ++ ++ return NULL; ++} ++ ++int ++main (void) ++{ ++ pthread_t thread; ++ ++ pthread_create (&thread, NULL, start, NULL); ++ start (NULL); /* main-start */ ++ return 0; ++} +Index: gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/sigstep-threads.exp +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20111218/gdb/testsuite/gdb.threads/sigstep-threads.exp 2011-12-19 02:16:35.237720268 +0100 +@@ -0,0 +1,74 @@ ++# Copyright 2010 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 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, see . ++ ++set testfile sigstep-threads ++set srcfile ${testfile}.c ++set executable ${testfile} ++set binfile ${objdir}/${subdir}/${executable} ++ ++if { [gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { ++ untested ${testfile}.exp ++ return -1 ++} ++ ++clean_restart $executable ++ ++if ![runto_main] { ++ return -1; ++} ++ ++# `noprint' would not test the full logic of GDB. ++gdb_test "handle SIGUSR1 nostop print pass" "\r\nSIGUSR1\[ \t\]+No\[ \t\]+Yes\[ \t\]+Yes\[ \t\].*" ++ ++gdb_test_no_output "set scheduler-locking off" ++ ++gdb_breakpoint [gdb_get_line_number "step-1"] ++gdb_test_no_output {set $step1=$bpnum} ++gdb_continue_to_breakpoint "step-1" ".* step-1 .*" ++gdb_test_no_output {disable $step1} ++ ++# 1 as we are now stopped at the `step-1' label. ++set step_at 1 ++for {set i 0} {$i < 100} {incr i} { ++ set test "step $i" ++ # Presume this step failed - as in the case of a timeout. ++ set failed 1 ++ gdb_test_multiple "step" $test { ++ -re "\r\nProgram received signal SIGUSR1, User defined signal 1.\r\n" { ++ exp_continue -continue_timer ++ } ++ -re "step-(\[012\]).*\r\n$gdb_prompt $" { ++ set now $expect_out(1,string) ++ if {$step_at == 2 && $now == 1} { ++ set failed 0 ++ } elseif {$step_at == 1 && $now == 2} { ++ set failed 0 ++ # Continue over the re-signalling back to the handle entry. ++ gdb_test_no_output {enable $step1} "" ++ gdb_test "continue" " step-1 .*" "" ++ set now 1 ++ gdb_test_no_output {disable $step1} "" ++ } else { ++ fail $test ++ } ++ set step_at $now ++ } ++ } ++ if $failed { ++ return ++ } ++} ++# We can never reliably say the racy problematic case has been tested. ++pass "step" diff --git a/gdb-bz623749-gcore-relro.patch b/gdb-bz623749-gcore-relro.patch new file mode 100644 index 0000000..4015a7a --- /dev/null +++ b/gdb-bz623749-gcore-relro.patch @@ -0,0 +1,169 @@ +gdb: +https://bugzilla.redhat.com/show_bug.cgi?id=623749 +kernel: +https://bugzilla.redhat.com/show_bug.cgi?id=636937 + +http://sourceware.org/ml/gdb-patches/2010-09/msg00395.html +Subject: Re: [patch] Fix gcore writer for -Wl,-z,relro (PR corefiles/11804) + +gdb/testsuite/ +2010-09-22 Jan Kratochvil + + Fix gcore writer for -Wl,-z,relro. + * gdb.base/gcore-relro.exp: New file. + * gdb.base/gcore-relro-main.c: New file. + * gdb.base/gcore-relro-lib.c: New file. + +--- ./gdb/gcore.c 2010-09-23 20:14:56.000000000 +0200 ++++ ./gdb/gcore.c 2010-09-23 20:37:56.000000000 +0200 +@@ -401,6 +401,7 @@ gcore_create_callback (CORE_ADDR vaddr, + + if (write == 0 && !solib_keep_data_in_core (vaddr, size)) + { ++#if 0 /* https://bugzilla.redhat.com/show_bug.cgi?id=636937 */ + /* See if this region of memory lies inside a known file on disk. + If so, we can avoid copying its contents by clearing SEC_LOAD. */ + struct objfile *objfile; +@@ -433,6 +434,7 @@ gcore_create_callback (CORE_ADDR vaddr, + } + + keep: ++#endif + flags |= SEC_READONLY; + } + +--- /dev/null ++++ b/gdb/testsuite/gdb.base/gcore-relro-lib.c +@@ -0,0 +1,21 @@ ++/* Copyright 2010 Free Software Foundation, Inc. ++ ++ This file is part of GDB. ++ ++ 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 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, see . */ ++ ++void ++lib (void) ++{ ++} +--- /dev/null ++++ b/gdb/testsuite/gdb.base/gcore-relro-main.c +@@ -0,0 +1,25 @@ ++/* Copyright 2010 Free Software Foundation, Inc. ++ ++ This file is part of GDB. ++ ++ 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 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, see . */ ++ ++extern void lib (void); ++ ++int ++main (void) ++{ ++ lib (); ++ return 0; ++} +--- /dev/null ++++ b/gdb/testsuite/gdb.base/gcore-relro.exp +@@ -0,0 +1,80 @@ ++# Copyright 2010 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 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, see . ++ ++if {[skip_shlib_tests]} { ++ return 0 ++} ++ ++set testfile "gcore-relro" ++set srcmainfile ${testfile}-main.c ++set srclibfile ${testfile}-lib.c ++set libfile ${objdir}/${subdir}/${testfile}-lib.so ++set objfile ${objdir}/${subdir}/${testfile}-main.o ++set executable ${testfile}-main ++set binfile ${objdir}/${subdir}/${executable} ++set gcorefile ${objdir}/${subdir}/${executable}.gcore ++ ++if { [gdb_compile_shlib ${srcdir}/${subdir}/${srclibfile} ${libfile} {debug}] != "" ++ || [gdb_compile ${srcdir}/${subdir}/${srcmainfile} ${objfile} object {debug}] != "" } { ++ untested ${testfile}.exp ++ return -1 ++} ++set opts [list debug shlib=${libfile} additional_flags=-Wl,-z,relro] ++if { [gdb_compile ${objfile} ${binfile} executable $opts] != "" } { ++ unsupported "-Wl,-z,relro compilation failed" ++ return -1 ++} ++ ++clean_restart $executable ++gdb_load_shlibs $libfile ++ ++# Does this gdb support gcore? ++set test "help gcore" ++gdb_test_multiple $test $test { ++ -re "Undefined command: .gcore.*\r\n$gdb_prompt $" { ++ # gcore command not supported -- nothing to test here. ++ unsupported "gdb does not support gcore on this target" ++ return -1; ++ } ++ -re "Save a core file .*\r\n$gdb_prompt $" { ++ pass $test ++ } ++} ++ ++if { ![runto lib] } then { ++ return -1 ++} ++ ++set escapedfilename [string_to_regexp ${gcorefile}] ++ ++set test "save a corefile" ++gdb_test_multiple "gcore ${gcorefile}" $test { ++ -re "Saved corefile ${escapedfilename}\r\n$gdb_prompt $" { ++ pass $test ++ } ++ -re "Can't create a corefile\r\n$gdb_prompt $" { ++ unsupported $test ++ return -1 ++ } ++} ++ ++# Now restart gdb and load the corefile. ++ ++clean_restart $executable ++gdb_load_shlibs $libfile ++ ++gdb_test "core ${gcorefile}" "Core was generated by .*" "re-load generated corefile" ++ ++gdb_test "frame" "#0 \[^\r\n\]* lib .*" "library got loaded" diff --git a/gdb-core-open-vdso-warning.patch b/gdb-core-open-vdso-warning.patch new file mode 100644 index 0000000..a421367 --- /dev/null +++ b/gdb-core-open-vdso-warning.patch @@ -0,0 +1,84 @@ +http://sourceware.org/ml/gdb-patches/2009-10/msg00142.html +Subject: [patch] Fix GNU/Linux core open: Can't read pathname for load map: Input/output error. + +Hi, + +GDB currently always prints on loading a core file: + warning: Can't read pathname for load map: Input/output error. + +The patch is not nice but it was WONTFIXed on the glibc side in: + http://sourceware.org/ml/libc-alpha/2009-10/msg00001.html + +The same message in GDB PR 8882 and glibc PR 387 was for ld-linux.so.2 l_name +but that one is now ignored thanks to IGNORE_FIRST_LINK_MAP_ENTRY. + +This fix is intended for Linux system vDSO l_name which is a second entry in +the DSO list. + +Regression tested on {x86_86,x86_64-m32,i686}-fedora11-linux-gnu. + + +Thanks, +Jan + + +gdb/ +2009-10-06 Jan Kratochvil + + Do not print false warning on reading core file with vDSO on GNU/Linux. + * solib-svr4.c (svr4_current_sos): Suppress the warning if + MASTER_SO_LIST is still NULL. + * solib.c (update_solib_list): New variable saved_so_list_head. + Conditionally restart the function. + +[ Context backport. ] + +Index: gdb-7.4.50.20111218/gdb/solib-svr4.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/solib-svr4.c 2011-12-19 01:14:31.000000000 +0100 ++++ gdb-7.4.50.20111218/gdb/solib-svr4.c 2011-12-19 01:31:10.106752164 +0100 +@@ -1222,8 +1222,17 @@ svr4_read_so_list (CORE_ADDR lm, struct + SO_NAME_MAX_PATH_SIZE - 1, &errcode); + if (errcode != 0) + { +- warning (_("Can't read pathname for load map: %s."), +- safe_strerror (errcode)); ++ /* During the first ever DSO list reading some strings may be ++ unreadable as residing in the ld.so readonly memory not being ++ present in a dumped core file. Delay the error check after ++ the first pass of DSO list scanning when ld.so should be ++ already mapped in and all the DSO list l_name memory gets ++ readable. */ ++ ++ if (master_so_list () != NULL) ++ warning (_("Can't read pathname for load map: %s."), ++ safe_strerror (errcode)); ++ + do_cleanups (old_chain); + continue; + } +Index: gdb-7.4.50.20111218/gdb/solib.c +=================================================================== +--- gdb-7.4.50.20111218.orig/gdb/solib.c 2011-09-12 21:00:22.000000000 +0200 ++++ gdb-7.4.50.20111218/gdb/solib.c 2011-12-19 01:29:04.815227898 +0100 +@@ -676,6 +676,7 @@ update_solib_list (int from_tty, struct + struct target_so_ops *ops = solib_ops (target_gdbarch); + struct so_list *inferior = ops->current_sos(); + struct so_list *gdb, **gdb_link; ++ struct so_list *saved_so_list_head = so_list_head; + + /* We can reach here due to changing solib-search-path or the + sysroot, before having any inferior. */ +@@ -817,6 +818,12 @@ update_solib_list (int from_tty, struct + observer_notify_solib_loaded (i); + } + ++ /* If this was the very first DSO list scan and we possibly read in ld.so ++ recheck all the formerly unreadable DSO names strings. */ ++ ++ if (saved_so_list_head == NULL && so_list_head != NULL) ++ return update_solib_list (from_tty, target); ++ + /* If a library was not found, issue an appropriate warning + message. We have to use a single call to warning in case the + front end does something special with warnings, e.g., pop up diff --git a/gdb-follow-child-stale-parent.patch b/gdb-follow-child-stale-parent.patch new file mode 100644 index 0000000..336790c --- /dev/null +++ b/gdb-follow-child-stale-parent.patch @@ -0,0 +1,27 @@ +Problem occurs with python and its get_current_arch () as it selects +selected_frame and current_frame while still inferior_ptid is valid for the +original parent. But since this place it is already attached and later +unwinders try to access it, breaking: + -PASS: gdb.threads/watchpoint-fork.exp: child: singlethreaded: breakpoint after the first fork + -PASS: gdb.threads/watchpoint-fork.exp: child: singlethreaded: watchpoint after the first fork + -PASS: gdb.threads/watchpoint-fork.exp: child: singlethreaded: breakpoint after the second fork + -PASS: gdb.threads/watchpoint-fork.exp: child: singlethreaded: watchpoint after the second fork + -PASS: gdb.threads/watchpoint-fork.exp: child: singlethreaded: finish + +FAIL: gdb.threads/watchpoint-fork.exp: child: singlethreaded: breakpoint after the first fork + +FAIL: gdb.threads/watchpoint-fork.exp: child: singlethreaded: watchpoint after the first fork + +FAIL: gdb.threads/watchpoint-fork.exp: child: singlethreaded: breakpoint after the second fork + +FAIL: gdb.threads/watchpoint-fork.exp: child: singlethreaded: watchpoint after the second fork + +FAIL: gdb.threads/watchpoint-fork.exp: child: singlethreaded: finish + +--- ./gdb/infrun.c 2009-12-21 20:26:30.000000000 +0100 ++++ ./gdb/infrun.c 2009-12-21 20:26:11.000000000 +0100 +@@ -375,6 +375,9 @@ follow_fork (void) + } + else + { ++ /* Possibly referenced PARENT is no longer valid. */ ++ reinit_frame_cache (); ++ + /* This pending follow fork event is now handled, one way + or another. The previous selected thread may be gone + from the lists by now, but if it is still around, need diff --git a/gdb-gdb-add-index-script.patch b/gdb-gdb-add-index-script.patch new file mode 100644 index 0000000..c15df68 --- /dev/null +++ b/gdb-gdb-add-index-script.patch @@ -0,0 +1,118 @@ +http://sourceware.org/ml/gdb-patches/2010-07/msg00184.html +Subject: Re: [0/4] RFC: add DWARF index support + +Jan Kratochvil: Fixed $d -> $dir. +Jan Kratochvil: Remove /dev/null redirection. + +>>>>> "Tom" == Tom Tromey writes: + +Tom> This patch series adds support for a DWARF index to gdb. + +Roland suggested we wrap up the index-creation code into a helper +script. + +I'm not sure if this is something people would want in gdb proper, but I +figured I would send it here just in case. + +Tom + +2010-07-09 Tom Tromey + + * Makefile.in (install-only): Install gdb-add-index. + * gdb-add-index: New file. + +2010-07-09 Tom Tromey + + * gdb.texinfo (Index Files): Mention gdb-add-index. + +>From 30714fe719e61baea03d0dc5793eb0d564faebb7 Mon Sep 17 00:00:00 2001 +From: Tom Tromey +Date: Fri, 9 Jul 2010 11:17:54 -0600 +Subject: [PATCH 4/4] add gdb-add-index +Subject: [PATCH 4/4] add gdb-add-index + +--- + gdb/ChangeLog | 5 +++++ + gdb/Makefile.in | 11 ++++++++++- + gdb/doc/ChangeLog | 4 ++++ + gdb/doc/gdb.texinfo | 8 ++++++++ + gdb/gdb-add-index | 30 ++++++++++++++++++++++++++++++ + 5 files changed, 57 insertions(+), 1 deletions(-) + create mode 100755 gdb/gdb-add-index + +Index: gdb-7.4.50.20120103/gdb/Makefile.in +=================================================================== +--- gdb-7.4.50.20120103.orig/gdb/Makefile.in 2012-01-03 05:53:25.000000000 +0100 ++++ gdb-7.4.50.20120103/gdb/Makefile.in 2012-01-03 15:24:25.693543435 +0100 +@@ -1033,7 +1033,16 @@ install-only: install-gstack $(CONFIG_IN + $(INSTALL_DATA) $(srcdir)/gdb.1 \ + $(DESTDIR)$(man1dir)/$$transformed_name.1 ; \ + $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(includedir)/gdb ; \ +- $(INSTALL_DATA) jit-reader.h $(DESTDIR)$(includedir)/gdb/jit-reader.h ++ $(INSTALL_DATA) jit-reader.h $(DESTDIR)$(includedir)/gdb/jit-reader.h; \ ++ transformed_name=`t='$(program_transform_name)'; \ ++ echo gdb-add-index | sed -e "$$t"` ; \ ++ if test "x$$transformed_name" = x; then \ ++ transformed_name=gdb-add-index ; \ ++ else \ ++ true ; \ ++ fi ; \ ++ $(INSTALL_PROGRAM) $(srcdir)/gdb-add-index \ ++ $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) + @$(MAKE) DO=install "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do + + install-python: +Index: gdb-7.4.50.20120103/gdb/doc/gdb.texinfo +=================================================================== +--- gdb-7.4.50.20120103.orig/gdb/doc/gdb.texinfo 2012-01-03 15:20:54.000000000 +0100 ++++ gdb-7.4.50.20120103/gdb/doc/gdb.texinfo 2012-01-03 15:23:43.295231946 +0100 +@@ -16228,6 +16228,14 @@ There are currently some limitation on i + for DWARF debugging information, not stabs. And, they do not + currently work for programs using Ada. + ++@value{GDBN} comes with a program, @command{gdb-add-index}, which can ++be used to add the index to a symbol file. It takes the symbol file ++as its only argument: ++ ++@smallexample ++$ gdb-add-index symfile ++@end smallexample ++ + @node Symbol Errors + @section Errors Reading Symbol Files + +Index: gdb-7.4.50.20120103/gdb/gdb-add-index +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ gdb-7.4.50.20120103/gdb/gdb-add-index 2012-01-03 15:23:43.296231942 +0100 +@@ -0,0 +1,30 @@ ++#! /bin/sh ++ ++# Add a .gdb_index section to a file. ++ ++# Copyright (C) 2010 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 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, see . ++ ++file="$1" ++dir="${file%/*}" ++ ++# We don't care if gdb gives an error. ++gdb -nx --batch-silent -ex "file $file" -ex "save gdb-index $dir" ++ ++if test -f "${file}.gdb-index"; then ++ objcopy --add-section .gdb_index="${file}.gdb-index" --set-section-flags .gdb_index=readonly "$file" "$file" ++ rm -f "${file}.gdb-index" ++fi ++ ++exit 0 diff --git a/gdb-glibc-vdso-workaround.patch b/gdb-glibc-vdso-workaround.patch new file mode 100644 index 0000000..48646d7 --- /dev/null +++ b/gdb-glibc-vdso-workaround.patch @@ -0,0 +1,30 @@ +http://sourceware.org/ml/gdb-patches/2011-08/msg00331.html +Subject: [RFC] Work around PR libc/13097 "linux-vdso.so.1" #2 + +Hi, + +missed the x86_64-m32 case: + +gdb/ +2011-08-16 Jan Kratochvil + + Work around PR libc/13097. + * solib.c (update_solib_list): Ignore "linux-vdso.so.1". + +--- a/gdb/solib.c ++++ b/gdb/solib.c +@@ -783,8 +783,11 @@ update_solib_list (int from_tty, struct target_ops *target) + + TRY_CATCH (e, RETURN_MASK_ERROR) + { +- /* Fill in the rest of the `struct so_list' node. */ +- if (!solib_map_sections (i)) ++ /* Fill in the rest of the `struct so_list' node. ++ Work around PR libc/13097. */ ++ if (!solib_map_sections (i) ++ && strcmp (i->so_original_name, "linux-vdso.so.1") != 0 ++ && strcmp (i->so_original_name, "linux-gate.so.1") != 0) + { + not_found++; + if (not_found_filename == NULL) + diff --git a/gdb-moribund-utrace-workaround.patch b/gdb-moribund-utrace-workaround.patch new file mode 100644 index 0000000..6b50a8e --- /dev/null +++ b/gdb-moribund-utrace-workaround.patch @@ -0,0 +1,16 @@ +https://bugzilla.redhat.com/show_bug.cgi?id=590623 +http://sources.redhat.com/bugzilla/show_bug.cgi?id=11593 + +Bug in FSF GDB exploited by the ptrace-on-utrace interaction. + +--- a/gdb/breakpoint.c ++++ b/gdb/breakpoint.c +@@ -9084,6 +9084,8 @@ update_global_location_list (int should_insert) + traps we can no longer explain. */ + + old_loc->events_till_retirement = 3 * (thread_count () + 1); ++ /* Red Hat Bug 590623. */ ++ old_loc->events_till_retirement *= 10; + old_loc->owner = NULL; + + VEC_safe_push (bp_location_p, moribund_locations, old_loc); diff --git a/gdb-x86-onstack-2of2.patch b/gdb-x86-onstack-2of2.patch new file mode 100644 index 0000000..a49904a --- /dev/null +++ b/gdb-x86-onstack-2of2.patch @@ -0,0 +1,166 @@ +http://sourceware.org/ml/gdb-patches/2012-03/msg00358.html +Subject: [patch 2/2] Fix gdb.cp/gdb2495.exp regression with gcc-4.7 #5 + +Hi, + +here is the ON_STACK code again, with fixed alignment for i386 SSE. + +It is generalized for all OSes on i386/amd64. I can move it to +{i386,amd64)-linux-tdep.c but I find this code much more lightweight than +i386_push_dummy_call which is already present in i386-tdep. + +No regressions on +{x86_64,x86_64-m32,i686}-fedora(15-rawhide)/rhel(5-6)-linux-gnu and for +gdbsever non-extended mode. + +For x86_64-fedora17-linux-gnu it fixes: +-FAIL: gdb.cp/gdb2495.exp: Call a function that raises an exception without a handler. +-FAIL: gdb.cp/gdb2495.exp: bt after returning from a popped frame ++PASS: gdb.cp/gdb2495.exp: Call a function that raises an exception without a handler. ++PASS: gdb.cp/gdb2495.exp: bt after returning from a popped frame + + +Thanks, +Jan + + +gdb/ +2012-03-09 Jan Kratochvil + + * amd64-dicos-tdep.c (amd64_dicos_push_dummy_code): Remove. + (amd64_dicos_init_abi): Remove its installment. + * dicos-tdep.c (dicos_init_abi): Remove the + set_gdbarch_call_dummy_location call. Update the comment here. + * i386-dicos-tdep.c (i386_dicos_push_dummy_code): Remove. + (i386_dicos_init_abi): Remove its installment. + * i386-tdep.c (i386_push_dummy_code): New function. + (i386_gdbarch_init): Call set_gdbarch_call_dummy_location, install + i386_push_dummy_code. + +--- a/gdb/amd64-dicos-tdep.c ++++ b/gdb/amd64-dicos-tdep.c +@@ -23,24 +23,6 @@ + #include "amd64-tdep.h" + #include "dicos-tdep.h" + +-static CORE_ADDR +-amd64_dicos_push_dummy_code (struct gdbarch *gdbarch, +- CORE_ADDR sp, CORE_ADDR funaddr, +- struct value **args, int nargs, +- struct type *value_type, +- CORE_ADDR *real_pc, CORE_ADDR *bp_addr, +- struct regcache *regcache) +-{ +- int bplen; +- CORE_ADDR bppc = sp; +- +- gdbarch_breakpoint_from_pc (gdbarch, &bppc, &bplen); +- *bp_addr = sp - bplen; +- *real_pc = funaddr; +- +- return *bp_addr; +-} +- + static void + amd64_dicos_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) + { +@@ -49,8 +31,6 @@ amd64_dicos_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) + amd64_init_abi (info, gdbarch); + + dicos_init_abi (gdbarch); +- +- set_gdbarch_push_dummy_code (gdbarch, amd64_dicos_push_dummy_code); + } + + static enum gdb_osabi +--- a/gdb/dicos-tdep.c ++++ b/gdb/dicos-tdep.c +@@ -43,8 +43,8 @@ dicos_init_abi (struct gdbarch *gdbarch) + + /* There's no (standard definition of) entry point or a guaranteed + text location with a symbol where to place the call dummy, so we +- put it on the stack. */ +- set_gdbarch_call_dummy_location (gdbarch, ON_STACK); ++ need it on the stack. Rely on i386_gdbarch_init used also for ++ amd64 to set up ON_STACK inferior calls. */ + + /* DICOS rewinds the PC itself. */ + set_gdbarch_decr_pc_after_break (gdbarch, 0); +--- a/gdb/i386-dicos-tdep.c ++++ b/gdb/i386-dicos-tdep.c +@@ -22,32 +22,12 @@ + #include "gdb_string.h" + #include "dicos-tdep.h" + +-static CORE_ADDR +-i386_dicos_push_dummy_code (struct gdbarch *gdbarch, +- CORE_ADDR sp, CORE_ADDR funaddr, +- struct value **args, int nargs, +- struct type *value_type, +- CORE_ADDR *real_pc, CORE_ADDR *bp_addr, +- struct regcache *regcache) +-{ +- int bplen; +- CORE_ADDR bppc = sp; +- +- gdbarch_breakpoint_from_pc (gdbarch, &bppc, &bplen); +- *bp_addr = sp - bplen; +- *real_pc = funaddr; +- +- return *bp_addr; +-} +- + static void + i386_dicos_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) + { + struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + + dicos_init_abi (gdbarch); +- +- set_gdbarch_push_dummy_code (gdbarch, i386_dicos_push_dummy_code); + } + + static enum gdb_osabi +--- a/gdb/i386-tdep.c ++++ b/gdb/i386-tdep.c +@@ -2326,6 +2326,30 @@ i386_16_byte_align_p (struct type *type) + return 0; + } + ++/* Implementation for set_gdbarch_push_dummy_code. */ ++ ++static CORE_ADDR ++i386_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr, ++ struct value **args, int nargs, struct type *value_type, ++ CORE_ADDR *real_pc, CORE_ADDR *bp_addr, ++ struct regcache *regcache) ++{ ++ int bplen; ++ CORE_ADDR bppc = sp; ++ ++ gdbarch_breakpoint_from_pc (gdbarch, &bppc, &bplen); ++ sp -= bplen; ++ ++ /* amd64_push_dummy_call does alignment on its own but i386_push_dummy_call ++ does not. ABI requires stack alignment for executables using SSE. */ ++ if (gdbarch_frame_align_p (gdbarch)) ++ sp = gdbarch_frame_align (gdbarch, sp); ++ ++ *bp_addr = sp; ++ *real_pc = funaddr; ++ return sp; ++} ++ + static CORE_ADDR + i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function, + struct regcache *regcache, CORE_ADDR bp_addr, int nargs, +@@ -7372,6 +7396,8 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) + set_gdbarch_get_longjmp_target (gdbarch, i386_get_longjmp_target); + + /* Call dummy code. */ ++ set_gdbarch_call_dummy_location (gdbarch, ON_STACK); ++ set_gdbarch_push_dummy_code (gdbarch, i386_push_dummy_code); + set_gdbarch_push_dummy_call (gdbarch, i386_push_dummy_call); + set_gdbarch_frame_align (gdbarch, i386_frame_align); + + diff --git a/gdb-x86_64-i386-syscall-restart.patch b/gdb-x86_64-i386-syscall-restart.patch new file mode 100644 index 0000000..d5d6b10 --- /dev/null +++ b/gdb-x86_64-i386-syscall-restart.patch @@ -0,0 +1,121 @@ +http://sourceware.org/ml/gdb-patches/2009-11/msg00592.html +Subject: [patch] Fix syscall restarts for amd64->i386 biarch + +Hi, + +tested only on recent Linux kernels, it should apply also on vanilla ones. +There were various changes of the kernels behavior in the past. + +FSF GDB HEAD state: +kernel debugger inferior state +x86_64 x86_64 x86_64 PASS +x86_64 x86_64 i386 FAIL without this patch, PASS with this patch +x86_64 i386 i386 PASS on recent kernels + (FAIL: kernel-2.6.31.5-127.fc12.x86_64 - Fedora 12) + (PASS: kernel-2.6.32-0.55.rc8.git1.fc13.x86_64) +i386 i386 i386 PASS + + +Currently gdb.base/interrupt.exp fails on amd64 host running under +--target_board unix/-m32 with: + continue + Continuing. + Unknown error 512 + +: +/* + * These should never be seen by user programs. To return one of ERESTART* + * codes, signal_pending() MUST be set. Note that ptrace can observe these + * at syscall exit tracing, but they will never be left for the debugged user + * process to see. + */ +#define ERESTARTSYS 512 + +"Unknown error 512" printed above is printed by the inferior itself, not by GDB. + +It is because GDB reads it as 0xfffffffffffffe00 but writes it back as +0xfffffe00. ++ /* Sign-extend %eax as during return from a syscall it is being checked ++ for -ERESTART* values -512 being above 0xfffffffffffffe00; tested by ++ interrupt.exp. */ + + +Quote of Roland McGrath from IRC: + +roland: in the user_regset model, there are 64-bit user_regset flavors and +32-bit user_regset flavors, so at the kabi level the (kernel) caller can say +what it means: calls on the 32-bit user_regset flavor will behave as if on +a 32-bit kernel/userland. in ptrace, there is no way for x86_64 ptrace calls +to say "i think of the inferior as being 32 bits, so act accordingly" (tho ppc +and/or sparc have ptr +roland: ace requests that do that iirc) +roland: ergo 64-bit ptrace callers must either save/restore full 64-bits so +the kernel's sign-extension choices are preserved, or else grok magic ways to +expand stored 32-bit register contents to 64-bit values to stuff via 64-bit +ptrace +[...] +roland: there is a "32-bit-flavored task", but it's not really true that it +has 32-bit registers. there is no 32-bit-only userland condition. any task +can always ljmp to the 64-bit code segment and run 64-bit insns including +a 64-bit syscall +roland: so a 64-bit debugger should see and be able to fiddle the full +registers. it can even change cs via ptrace to force the inferior into +running 32 or 64 bit code. + + +Saving whole 64bits for i386 targets on x86_64 hosts does not much match the +GDB architecture as `struct type' for these registers still should be 32bit +etc. Therefore provided just this exception. + +The problem is reproducible only if one does an inferior call during the +interruption to do full inferior save/restore from GDB regcache. + +Regression tested on {x86_64,x86_64-m32,i686}-fedora12-linux-gnu. + + +Thanks, +Jan + + +gdb/ +2009-11-29 Jan Kratochvil + + * amd64-nat.c (amd64_collect_native_gregset): Do not pre-clear %eax. + Sign extend it afterwards. + +--- a/gdb/amd64-nat.c ++++ b/gdb/amd64-nat.c +@@ -131,9 +131,9 @@ amd64_collect_native_gregset (const struct regcache *regcache, + { + num_regs = amd64_native_gregset32_num_regs; + +- /* Make sure %eax, %ebx, %ecx, %edx, %esi, %edi, %ebp, %esp and ++ /* Make sure %ebx, %ecx, %edx, %esi, %edi, %ebp, %esp and + %eip get zero-extended to 64 bits. */ +- for (i = 0; i <= I386_EIP_REGNUM; i++) ++ for (i = I386_ECX_REGNUM; i <= I386_EIP_REGNUM; i++) + { + if (regnum == -1 || regnum == i) + memset (regs + amd64_native_gregset_reg_offset (gdbarch, i), 0, 8); +@@ -159,4 +159,20 @@ amd64_collect_native_gregset (const struct regcache *regcache, + regcache_raw_collect (regcache, i, regs + offset); + } + } ++ ++ if (gdbarch_ptr_bit (gdbarch) == 32) ++ { ++ /* Sign-extend %eax as during return from a syscall it is being checked ++ for -ERESTART* values -512 being above 0xfffffffffffffe00; tested by ++ interrupt.exp. */ ++ ++ int i = I386_EAX_REGNUM; ++ ++ if (regnum == -1 || regnum == i) ++ { ++ void *ptr = regs + amd64_native_gregset_reg_offset (gdbarch, i); ++ ++ *(int64_t *) ptr = *(int32_t *) ptr; ++ } ++ } + } + diff --git a/insight-6.8-derefbug.patch b/insight-6.8-derefbug.patch deleted file mode 100644 index 0ab7ea9..0000000 --- a/insight-6.8-derefbug.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -Naur insight-6.8.orig/gdb/gdbtk/generic/gdbtk-stack.c insight-6.8.new/gdb/gdbtk/generic/gdbtk-stack.c ---- insight-6.8.orig/gdb/gdbtk/generic/gdbtk-stack.c 2008-03-07 09:03:19.000000000 +0100 -+++ insight-6.8.new/gdb/gdbtk/generic/gdbtk-stack.c 2008-08-15 17:52:50.000000000 +0200 -@@ -251,7 +251,9 @@ - gdb_get_args_command (ClientData clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *CONST objv[]) - { -- return gdb_get_vars_command ((ClientData) 1, interp, objc, objv); -+ static const int one = 1; -+ -+ return gdb_get_vars_command ((ClientData) &one, interp, objc, objv); - } - - -@@ -259,7 +261,9 @@ - gdb_get_locals_command (ClientData clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *CONST objv[]) - { -- return gdb_get_vars_command ((ClientData) 0, interp, objc, objv); -+ static const int zero = 0; -+ -+ return gdb_get_vars_command ((ClientData) &zero, interp, objc, objv); - } - - /* This implements the tcl commands "gdb_get_locals" and "gdb_get_args" diff --git a/insight-6.8-destdir.patch b/insight-6.8-destdir.patch deleted file mode 100644 index 6cd537c..0000000 --- a/insight-6.8-destdir.patch +++ /dev/null @@ -1,174 +0,0 @@ -diff -Naur insight-6.8.orig/itcl/itcl/Makefile.in insight-6.8.new/itcl/itcl/Makefile.in ---- insight-6.8.orig/itcl/itcl/Makefile.in 2005-09-01 07:32:08.000000000 +0200 -+++ insight-6.8.new/itcl/itcl/Makefile.in 2008-08-15 14:50:06.000000000 +0200 -@@ -149,8 +149,6 @@ - includedir = @includedir@ - oldincludedir = /usr/include - --DESTDIR = -- - pkgdatadir = $(datadir)/@PACKAGE@@VERSION@ - pkglibdir = $(libdir)/@PACKAGE@@VERSION@ - pkgincludedir = $(includedir)/@PACKAGE@@VERSION@ -@@ -276,12 +274,12 @@ - @echo "Installing header files in $(includedir)" - @for i in $(GENERIC_HDRS) ; do \ - echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(includedir) ; \ -+ $(INSTALL_DATA) $$i $(DESTDIR)$(includedir) ; \ - done; - @echo "Installing library files in $(ITCL_LIBRARY)" - @for i in $(srcdir)/library/*.tcl ; do \ - echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(ITCL_LIBRARY) ; \ -+ $(INSTALL_DATA) $$i $(DESTDIR)$(ITCL_LIBRARY) ; \ - done; - - #======================================================================== -@@ -290,14 +288,14 @@ - #======================================================================== - - install-doc: doc -- $(mkinstalldirs) $(mandir)/mann -+ $(mkinstalldirs) $(DESTDIR)$(mandir)/mann - @echo "Installing man pages in $(mandir)" - @cd $(srcdir)/doc; for i in *.n; \ - do \ - echo "Installing $$i"; \ - sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(mandir)/mann/$$i; \ -- chmod 444 $(mandir)/mann/$$i; \ -+ $$i > $(DESTDIR)$(mandir)/mann/$$i; \ -+ chmod 444 $(DESTDIR)$(mandir)/mann/$$i; \ - done - - test: $(TCLSH_PROG) -@@ -447,7 +445,7 @@ - $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ - else :; fi; \ - done -- $(INSTALL_DATA) pkgIndex.tcl $(pkglibdir) -+ $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir) - - #======================================================================== - # Install binary executables (e.g. .exe files) -@@ -485,7 +483,7 @@ - $(mkinstalldirs) $(DESTDIR)$(libdir) - $(mkinstalldirs) $(DESTDIR)$(bindir) - $(mkinstalldirs) $(DESTDIR)$(pkglibdir) -- $(mkinstalldirs) $(ITCL_LIBRARY) -+ $(mkinstalldirs) $(DESTDIR)$(ITCL_LIBRARY) - - .PHONY: all binaries clean depend distclean doc install installdirs \ - libraries test -diff -Naur insight-6.8.orig/itcl/itk/Makefile.in insight-6.8.new/itcl/itk/Makefile.in ---- insight-6.8.orig/itcl/itk/Makefile.in 2005-09-01 07:32:09.000000000 +0200 -+++ insight-6.8.new/itcl/itk/Makefile.in 2008-08-15 14:55:41.000000000 +0200 -@@ -137,8 +137,6 @@ - includedir = @includedir@ - oldincludedir = /usr/include - --DESTDIR = -- - pkgdatadir = $(datadir)/@PACKAGE@@VERSION@ - pkglibdir = $(libdir)/@PACKAGE@@VERSION@ - pkgincludedir = $(includedir)/@PACKAGE@@VERSION@ -@@ -267,16 +265,16 @@ - #======================================================================== - - install-libraries: libraries -- $(mkinstalldirs) $(includedir) -+ $(mkinstalldirs) $(DESTDIR)$(includedir) - @echo "Installing header files in $(includedir)" - @for i in $(GENERIC_HDRS) ; do \ - echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(includedir) ; \ -+ $(INSTALL_DATA) $$i $(DESTDIR)$(includedir) ; \ - done; - @echo "Installing library files in $(ITK_LIBRARY)" - @for i in $(srcdir)/library/*.* $(srcdir)/library/tclIndex ; do \ - echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(ITK_LIBRARY) ; \ -+ $(INSTALL_DATA) $$i $(DESTDIR)$(ITK_LIBRARY) ; \ - done; - - #======================================================================== -@@ -285,14 +283,14 @@ - #======================================================================== - - install-doc: doc -- $(mkinstalldirs) $(mandir)/mann -+ $(mkinstalldirs) $(DESTDIR)$(mandir)/mann - @echo "Installing man pages in $(mandir)" - @cd $(srcdir)/doc; for i in *.n; \ - do \ - echo "Installing $$i info $(mandir)/mann"; \ - sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(mandir)/mann/$$i; \ -- chmod 444 $(mandir)/mann/$$i; \ -+ $$i > $(DESTDIR)$(mandir)/mann/$$i; \ -+ chmod 444 $(DESTDIR)$(mandir)/mann/$$i; \ - done - - test: $(TCLSH_PROG) -@@ -421,7 +419,7 @@ - $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ - else :; fi; \ - done -- $(INSTALL_DATA) pkgIndex.tcl $(pkglibdir) -+ $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir) - - #======================================================================== - # Install binary executables (e.g. .exe files) -@@ -459,7 +457,7 @@ - $(mkinstalldirs) $(DESTDIR)$(libdir) - $(mkinstalldirs) $(DESTDIR)$(bindir) - $(mkinstalldirs) $(DESTDIR)$(pkglibdir) -- $(mkinstalldirs) $(ITK_LIBRARY) -+ $(mkinstalldirs) $(DESTDIR)$(ITK_LIBRARY) - - .PHONY: all binaries clean depend distclean doc install installdirs \ - libraries test -diff -Naur insight-6.8.orig/itcl/iwidgets/Makefile.in insight-6.8.new/itcl/iwidgets/Makefile.in ---- insight-6.8.orig/itcl/iwidgets/Makefile.in 2003-02-25 01:42:12.000000000 +0100 -+++ insight-6.8.new/itcl/iwidgets/Makefile.in 2008-08-15 15:04:17.000000000 +0200 -@@ -36,13 +36,13 @@ - # to be different than those used for actually reference files at - # run-time. INSTALL_ROOT is prepended to $prefix and $exec_prefix - # when installing files. --INSTALL_ROOT = -+INSTALL_ROOT = $(DESTDIR) - - # Path name to use when installing library scripts: - - # REDHAT LOCAL - #SCRIPT_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/lib/iwidgets$(IWIDGETS_VERSION) --SCRIPT_INSTALL_DIR = @datadir@/iwidgets$(IWIDGETS_VERSION) -+SCRIPT_INSTALL_DIR = $(INSTALL_ROOT)@datadir@/iwidgets$(IWIDGETS_VERSION) - # END REDHAT LOCAL - - # Directory in which to install the archive libtcl.a: -diff -Naur insight-6.8.orig/tcl/unix/Makefile.in insight-6.8.new/tcl/unix/Makefile.in ---- insight-6.8.orig/tcl/unix/Makefile.in 2003-01-21 20:40:18.000000000 +0100 -+++ insight-6.8.new/tcl/unix/Makefile.in 2008-08-15 12:12:33.000000000 +0200 -@@ -38,7 +38,7 @@ - # to be different than those used for actually reference files at - # run-time. INSTALL_ROOT is prepended to $prefix and $exec_prefix - # when installing files. --INSTALL_ROOT = -+INSTALL_ROOT = $(DESTDIR) - - # Path for the platform independent Tcl scripting libraries: - # REDHAT LOCAL -diff -Naur insight-6.8.orig/tk/unix/Makefile.in insight-6.8.new/tk/unix/Makefile.in ---- insight-6.8.orig/tk/unix/Makefile.in 2003-01-21 21:24:51.000000000 +0100 -+++ insight-6.8.new/tk/unix/Makefile.in 2008-08-15 15:08:00.000000000 +0200 -@@ -41,7 +41,7 @@ - # to be different than those used for actually reference files at - # run-time. INSTALL_ROOT is prepended to $prefix and $exec_prefix - # when installing files. --INSTALL_ROOT = -+INSTALL_ROOT = $(DESTDIR) - - # Directory from which applications will reference the library of Tcl - # scripts (note: you can set the TK_LIBRARY environment variable at diff --git a/insight-6.8-doubleinstall.patch b/insight-6.8-doubleinstall.patch deleted file mode 100644 index e200475..0000000 --- a/insight-6.8-doubleinstall.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -Naur insight-6.8.orig/libgui/library/Makefile.am insight-6.8.new/libgui/library/Makefile.am ---- insight-6.8.orig/libgui/library/Makefile.am 2009-07-15 11:23:41.000000000 +0200 -+++ insight-6.8.new/libgui/library/Makefile.am 2009-07-15 11:40:34.000000000 +0200 -@@ -11,11 +11,9 @@ - ulset.tcl wframe.tcl wingrab.tcl ventry.tcl combobox.tcl \ - pane.tcl panedwindow.tcl - --PACKAGES = combobox.tcl -- - ## This directory is also referenced in paths.c, which see. - guidir = $(datadir)/insight/gui --gui_DATA = tclIndex pkgIndex.tcl $(TCL) $(PACKAGES) -+gui_DATA = tclIndex pkgIndex.tcl $(TCL) - - - if CROSS_COMPILING diff --git a/insight-6.8-gcc43.patch b/insight-6.8-gcc43.patch deleted file mode 100644 index 2ae6949..0000000 --- a/insight-6.8-gcc43.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Naur insight-6.8.orig/gdb/remote.c insight-6.8.new/gdb/remote.c ---- insight-6.8.orig/gdb/remote.c 2008-02-25 10:59:06.000000000 +0100 -+++ insight-6.8.new/gdb/remote.c 2008-08-15 18:06:14.000000000 +0200 -@@ -1703,7 +1703,7 @@ - { - struct remote_state *rs = get_remote_state (); - char *limit; -- int count, resultcount, done; -+ int count, resultcount, done = 0; - - resultcount = 0; - /* Assume the 'q' and 'M chars have been stripped. */ -diff -Naur insight-6.8.orig/gdb/symtab.c insight-6.8.new/gdb/symtab.c ---- insight-6.8.orig/gdb/symtab.c 2008-02-05 23:17:40.000000000 +0100 -+++ insight-6.8.new/gdb/symtab.c 2008-08-15 18:07:07.000000000 +0200 -@@ -2275,7 +2275,7 @@ - struct symtab * - find_line_symtab (struct symtab *symtab, int line, int *index, int *exact_match) - { -- int exact; -+ int exact = 0; - - /* BEST_INDEX and BEST_LINETABLE identify the smallest linenumber > LINE - so far seen. */ diff --git a/insight-6.8-gcc44.patch b/insight-6.8-gcc44.patch deleted file mode 100644 index 8033a3f..0000000 --- a/insight-6.8-gcc44.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur insight-6.8.orig/gdb/eval.c insight-6.8.new/gdb/eval.c ---- insight-6.8.orig/gdb/eval.c 2008-02-04 01:23:04.000000000 +0100 -+++ insight-6.8.new/gdb/eval.c 2009-02-18 15:24:53.000000000 +0100 -@@ -1647,6 +1647,9 @@ - struct type *tmp_type; - int offset_item; /* The array offset where the item lives */ - -+ /* Be sure it is initialized. */ -+ memset((char *) subscript_array, 0, sizeof subscript_array); -+ - if (nargs > MAX_FORTRAN_DIMS) - error (_("Too many subscripts for F77 (%d Max)"), MAX_FORTRAN_DIMS); - diff --git a/insight-6.8-ia64bound.patch b/insight-6.8-ia64bound.patch deleted file mode 100644 index 937ca4c..0000000 --- a/insight-6.8-ia64bound.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur insight-6.8.orig/gdb/ia64-tdep.c insight-6.8.new/gdb/ia64-tdep.c ---- insight-6.8.orig/gdb/ia64-tdep.c 2008-02-20 15:31:40.000000000 +0100 -+++ insight-6.8.new/gdb/ia64-tdep.c 2008-08-15 18:18:53.000000000 +0200 -@@ -1234,7 +1234,7 @@ - spill_reg = rN; - last_prologue_pc = next_pc; - } -- else if (qp == 0 && rM >= 32 && rM < 40 && !instores[rM] && -+ else if (qp == 0 && rM >= 32 && rM < 40 && !instores[rM - 32] && - rN < 256 && imm == 0) - { - /* mov rN, rM where rM is an input register */ diff --git a/insight-6.8-itcl33.patch b/insight-6.8-itcl33.patch deleted file mode 100644 index 202f23b..0000000 --- a/insight-6.8-itcl33.patch +++ /dev/null @@ -1,124385 +0,0 @@ -diff -Naur insight-6.8.orig/itcl/aclocal.m4 insight-6.8.new/itcl/aclocal.m4 ---- insight-6.8.orig/itcl/aclocal.m4 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/aclocal.m4 2008-08-18 18:56:35.000000000 +0200 -@@ -1,480 +1,612 @@ --dnl written by Rob Savoye for Cygnus Support --dnl major rewriting for Tcl 7.5 by Don Libes -+# generated automatically by aclocal 1.10 -*- Autoconf -*- - --dnl CY_AC_PATH_TCLCONFIG and CY_AC_LOAD_TCLCONFIG should be invoked --dnl (in that order) before any other TCL macros. Similarly for TK. -- --dnl CYGNUS LOCAL: This gets the right posix flag for gcc --AC_DEFUN(CY_AC_TCL_LYNX_POSIX, --[AC_REQUIRE([AC_PROG_CC])AC_REQUIRE([AC_PROG_CPP]) --AC_MSG_CHECKING([if running LynxOS]) --AC_CACHE_VAL(ac_cv_os_lynx, --[AC_EGREP_CPP(yes, --[/* -- * The old Lynx "cc" only defines "Lynx", but the newer one uses "__Lynx__" -- */ --#if defined(__Lynx__) || defined(Lynx) --yes --#endif --], ac_cv_os_lynx=yes, ac_cv_os_lynx=no)]) --# --if test "$ac_cv_os_lynx" = "yes" ; then -- AC_MSG_RESULT(yes) -- AC_DEFINE(LYNX) -- AC_MSG_CHECKING([whether -mposix or -X is available]) -- AC_CACHE_VAL(ac_cv_c_posix_flag, -- [AC_TRY_COMPILE(,[ -- /* -- * This flag varies depending on how old the compiler is. -- * -X is for the old "cc" and "gcc" (based on 1.42). -- * -mposix is for the new gcc (at least 2.5.8). -- */ -- #if defined(__GNUC__) && __GNUC__ >= 2 -- choke me -- #endif -- ], ac_cv_c_posix_flag=" -mposix", ac_cv_c_posix_flag=" -X")]) -- CC="$CC $ac_cv_c_posix_flag" -- AC_MSG_RESULT($ac_cv_c_posix_flag) -- else -- AC_MSG_RESULT(no) --fi -+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 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. -+ -+# 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_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])]) -+ -+# Copyright (C) 2002, 2003, 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_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.10' -+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], [], -+ [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl - ]) - --# --# Sometimes the native compiler is a bogus stub for gcc or /usr/ucb/cc. This --# makes configure think it's cross compiling. If --target wasn't used, then --# we can't configure, so something is wrong. We don't use the cache --# here cause if somebody fixes their compiler install, we want this to work. --AC_DEFUN(CY_AC_C_WORKS, --[# If we cannot compile and link a trivial program, we can't expect anything to work --AC_MSG_CHECKING(whether the compiler ($CC) actually works) --AC_TRY_COMPILE(, [/* don't need anything here */], -- c_compiles=yes, c_compiles=no) -- --AC_TRY_LINK(, [/* don't need anything here */], -- c_links=yes, c_links=no) -- --if test x"${c_compiles}" = x"no" ; then -- AC_MSG_ERROR(the native compiler is broken and won't compile.) --fi -- --if test x"${c_links}" = x"no" ; then -- AC_MSG_ERROR(the native compiler is broken and won't link.) --fi --AC_MSG_RESULT(yes) -+# _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 AC_INIT_AUTOMAKE. -+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -+[AM_AUTOMAKE_VERSION([1.10])dnl -+_AM_AUTOCONF_VERSION(m4_PACKAGE_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` - ]) - --AC_DEFUN(CY_AC_PATH_TCLH, [ -+# AM_CONDITIONAL -*- Autoconf -*- -+ -+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006 -+# Free Software Foundation, Inc. - # --# Ok, lets find the tcl source trees so we can use the headers --# Warning: transition of version 9 to 10 will break this algorithm --# because 10 sorts before 9. We also look for just tcl. We have to --# be careful that we don't match stuff like tclX by accident. --# the alternative search directory is involked by --with-tclinclude --# --no_tcl=true --AC_MSG_CHECKING(for Tcl private headers) --AC_ARG_WITH(tclinclude, [ --with-tclinclude directory where tcl private headers are], with_tclinclude=${withval}) --AC_CACHE_VAL(ac_cv_c_tclh,[ --# first check to see if --with-tclinclude was specified --if test x"${with_tclinclude}" != x ; then -- if test -f ${with_tclinclude}/tclInt.h ; then -- ac_cv_c_tclh=`(cd ${with_tclinclude}; pwd)` -- elif test -f ${with_tclinclude}/generic/tclInt.h ; then -- ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; pwd)` -- else -- AC_MSG_ERROR([${with_tclinclude} directory doesn't contain private headers]) -- fi -+# 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_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 -+if $2; then -+ $1_TRUE= -+ $1_FALSE='#' -+else -+ $1_TRUE='#' -+ $1_FALSE= - fi -- --# next check if it came with Tcl configuration file --if test x"${ac_cv_c_tclconfig}" != x ; then -- if test -f $ac_cv_c_tclconfig/../generic/tclInt.h ; then -- ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/../generic; pwd)` -+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])]) -+ -+# Do all the work for Automake. -*- Autoconf -*- -+ -+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 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. -+ -+# serial 12 -+ -+# 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.60])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 - --# next check in private source directory --# --# since ls returns lowest version numbers first, reverse its output --if test x"${ac_cv_c_tclh}" = x ; then -- for i in \ -- ${srcdir}/../tcl \ -- `ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` \ -- ${srcdir}/../../tcl \ -- `ls -dr ${srcdir}/../../tcl[[7-9]]* 2>/dev/null` \ -- ${srcdir}/../../../tcl \ -- `ls -dr ${srcdir}/../../../tcl[[7-9]]* 2>/dev/null ` ; do -- if test -f $i/generic/tclInt.h ; then -- ac_cv_c_tclh=`(cd $i/generic; pwd)` -- break -- fi -- done --fi --# finally check in a few common install locations --# --# since ls returns lowest version numbers first, reverse its output --if test x"${ac_cv_c_tclh}" = x ; then -- for i in \ -- `ls -dr /usr/local/src/tcl[[7-9]]* 2>/dev/null` \ -- `ls -dr /usr/local/lib/tcl[[7-9]]* 2>/dev/null` \ -- /usr/local/src/tcl \ -- /usr/local/lib/tcl \ -- ${prefix}/include ; do -- if test -f $i/generic/tclInt.h ; then -- ac_cv_c_tclh=`(cd $i/generic; pwd)` -- break -- fi -- done --fi --# see if one is installed --if test x"${ac_cv_c_tclh}" = x ; then -- AC_HEADER_CHECK(tclInt.h, ac_cv_c_tclh=installed, ac_cv_c_tclh="") --fi --]) --if test x"${ac_cv_c_tclh}" = x ; then -- TCLHDIR="# no Tcl private headers found" -- AC_MSG_ERROR([Can't find Tcl private headers]) --fi --if test x"${ac_cv_c_tclh}" != x ; then -- no_tcl="" -- if test x"${ac_cv_c_tclh}" = x"installed" ; then -- AC_MSG_RESULT([is installed]) -- TCLHDIR="" -+# 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 -- AC_MSG_RESULT([found in ${ac_cv_c_tclh}]) -- # this hack is cause the TCLHDIR won't print if there is a "-I" in it. -- TCLHDIR="-I${ac_cv_c_tclh}" -+ CYGPATH_W=echo - fi - fi -+AC_SUBST([CYGPATH_W]) - --AC_SUBST(TCLHDIR) -+# 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) -+AM_PROG_INSTALL_SH -+AM_PROG_INSTALL_STRIP -+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 - ]) -- -- --AC_DEFUN(CY_AC_PATH_TCLCONFIG, [ --# --# Ok, lets find the tcl configuration --# First, look for one uninstalled. --# the alternative search directory is invoked by --with-tclconfig --# -- --if test x"${no_tcl}" = x ; then -- # we reset no_tcl in case something fails here -- no_tcl=true -- AC_ARG_WITH(tclconfig, [ --with-tclconfig directory containing tcl configuration (tclConfig.sh)], -- with_tclconfig=${withval}) -- AC_MSG_CHECKING([for Tcl configuration]) -- AC_CACHE_VAL(ac_cv_c_tclconfig,[ -- -- # First check to see if --with-tclconfig was specified. -- if test x"${with_tclconfig}" != x ; then -- if test -f "${with_tclconfig}/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` -- else -- AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh]) -- fi -- fi -- -- # then check for a private Tcl installation -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in \ -- ../tcl \ -- `ls -dr ../tcl[[7-9]]* 2>/dev/null` \ -- ../../tcl \ -- `ls -dr ../../tcl[[7-9]]* 2>/dev/null` \ -- ../../../tcl \ -- `ls -dr ../../../tcl[[7-9]]* 2>/dev/null` ; do -- if test -f "$i/unix/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/unix; pwd)` -- break -- fi -- done -- fi -- # check in a few common install locations -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do -- if test -f "$i/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i; pwd)` -- break -- fi -- done -- fi -- # check in a few other private locations -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in \ -- ${srcdir}/../tcl \ -- `ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` ; do -- if test -f "$i/unix/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/unix; pwd)` -- break -- fi -- done -- fi -- ]) -- if test x"${ac_cv_c_tclconfig}" = x ; then -- TCLCONFIG="# no Tcl configs found" -- AC_MSG_WARN(Can't find Tcl configuration definitions) -- else -- no_tcl= -- TCLCONFIG=${ac_cv_c_tclconfig}/tclConfig.sh -- AC_MSG_RESULT(found $TCLCONFIG) -- fi --fi - ]) - --# Defined as a separate macro so we don't have to cache the values --# from PATH_TCLCONFIG (because this can also be cached). --AC_DEFUN(CY_AC_LOAD_TCLCONFIG, [ -- . $TCLCONFIG -- --dnl AC_SUBST(TCL_VERSION) --dnl AC_SUBST(TCL_MAJOR_VERSION) --dnl AC_SUBST(TCL_MINOR_VERSION) --dnl AC_SUBST(TCL_CC) -- AC_SUBST(TCL_DEFS) -- --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_LIB_FILE) -- -- AC_SUBST(TCL_LIBS) --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_PREFIX) -- --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_EXEC_PREFIX) -- -- AC_SUBST(TCL_SHLIB_CFLAGS) -- AC_SUBST(TCL_SHLIB_LD) --dnl don't export, not used outside of configure --dnl AC_SUBST(TCL_SHLIB_LD_LIBS) --dnl AC_SUBST(TCL_SHLIB_SUFFIX) --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_DL_LIBS) -- AC_SUBST(TCL_LD_FLAGS) --dnl don't export, not used outside of configure -- AC_SUBST(TCL_LD_SEARCH_FLAGS) --dnl AC_SUBST(TCL_COMPAT_OBJS) -- AC_SUBST(TCL_RANLIB) -- AC_SUBST(TCL_BUILD_LIB_SPEC) -- AC_SUBST(TCL_LIB_SPEC) --dnl AC_SUBST(TCL_LIB_VERSIONS_OK) -- --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_SHARED_LIB_SUFFIX) - --dnl not used, don't export to save symbols --dnl AC_SUBST(TCL_UNSHARED_LIB_SUFFIX) --]) -- --# Warning: Tk definitions are very similar to Tcl definitions but --# are not precisely the same. There are a couple of differences, --# so don't do changes to Tcl thinking you can cut and paste it do --# the Tk differences and later simply substitute "Tk" for "Tcl". --# Known differences: --# - Acceptable Tcl major version #s is 7-9 while Tk is 4-9 --# - Searching for Tcl includes looking for tclInt.h, Tk looks for tk.h --# - Computing major/minor versions is different because Tk depends on --# headers to Tcl, Tk, and X. --# - Symbols in tkConfig.sh are different than tclConfig.sh --# - Acceptable for Tk to be missing but not Tcl. -- --AC_DEFUN(CY_AC_PATH_TKH, [ --# --# Ok, lets find the tk source trees so we can use the headers --# If the directory (presumably symlink) named "tk" exists, use that one --# in preference to any others. Same logic is used when choosing library --# and again with Tcl. The search order is the best place to look first, then in --# decreasing significance. The loop breaks if the trigger file is found. --# Note the gross little conversion here of srcdir by cd'ing to the found --# directory. This converts the path from a relative to an absolute, so --# recursive cache variables for the path will work right. We check all --# the possible paths in one loop rather than many seperate loops to speed --# things up. --# the alternative search directory is involked by --with-tkinclude --# --#no_tk=true --AC_MSG_CHECKING(for Tk private headers) --AC_ARG_WITH(tkinclude, [ --with-tkinclude directory where tk private headers are], with_tkinclude=${withval}) --AC_CACHE_VAL(ac_cv_c_tkh,[ --# first check to see if --with-tkinclude was specified --if test x"${with_tkinclude}" != x ; then -- if test -f ${with_tkinclude}/tk.h ; then -- ac_cv_c_tkh=`(cd ${with_tkinclude}; pwd)` -- elif test -f ${with_tkinclude}/generic/tk.h ; then -- ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; pwd)` -- else -- AC_MSG_ERROR([${with_tkinclude} directory doesn't contain private headers]) -- fi -+# 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_stamp_count=1 -+for _am_header in $config_headers :; do -+ case $_am_header in -+ $1 | $1:* ) -+ break ;; -+ * ) -+ _am_stamp_count=`expr $_am_stamp_count + 1` ;; -+ esac -+done -+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) -+ -+# 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_SH -+# ------------------ -+# 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"} -+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])]) - --# next check if it came with Tk configuration file --if test x"${ac_cv_c_tkconfig}" != x ; then -- if test -f $ac_cv_c_tkconfig/../generic/tk.h ; then -- ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/../generic; pwd)` -- fi --fi -+# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- -+# From Jim Meyering - --# next check in private source directory --# --# since ls returns lowest version numbers first, reverse its output --if test x"${ac_cv_c_tkh}" = x ; then -- for i in \ -- ${srcdir}/../tk \ -- `ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` \ -- ${srcdir}/../../tk \ -- `ls -dr ${srcdir}/../../tk[[4-9]]* 2>/dev/null` \ -- ${srcdir}/../../../tk \ -- `ls -dr ${srcdir}/../../../tk[[4-9]]* 2>/dev/null ` ; do -- if test -f $i/generic/tk.h ; then -- if test x"${TK_BUILD_INCLUDES}" != x; then -- ac_cv_c_tkh=`echo "${TK_BUILD_INCLUDES}" | sed -e 's/^-I//'` -- else -- ac_cv_c_tkh=`(cd $i/generic; pwd)` -- fi -- break -- fi -- done --fi --# finally check in a few common install locations --# --# since ls returns lowest version numbers first, reverse its output --if test x"${ac_cv_c_tkh}" = x ; then -- for i in \ -- `ls -dr /usr/local/src/tk[[4-9]]* 2>/dev/null` \ -- `ls -dr /usr/local/lib/tk[[4-9]]* 2>/dev/null` \ -- /usr/local/src/tk \ -- /usr/local/lib/tk \ -- ${prefix}/include ; do -- if test -f $i/generic/tk.h ; then -- ac_cv_c_tkh=`(cd $i/generic; pwd)` -- break -- fi -- done --fi --# see if one is installed --if test x"${ac_cv_c_tkh}" = x ; then -- AC_HEADER_CHECK(tk.h, ac_cv_c_tkh=installed, ac_cv_c_tkh="") --fi --]) --if test x"${ac_cv_c_tkh}" != x ; then --# no_tk="" -- if test x"${ac_cv_c_tkh}" = x"installed" ; then -- AC_MSG_RESULT([is installed]) -- TKHDIR="" -- else -- AC_MSG_RESULT([found in ${ac_cv_c_tkh}]) -- # this hack is cause the TKHDIR won't print if there is a "-I" in it. -- TKHDIR="-I${ac_cv_c_tkh}" -- fi -+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 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 4 -+ -+AC_DEFUN([AM_MAINTAINER_MODE], -+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) -+ dnl maintainer-mode is disabled by default -+ AC_ARG_ENABLE(maintainer-mode, -+[ --enable-maintainer-mode enable make rules and dependencies not useful -+ (and sometimes confusing) to the casual installer], -+ USE_MAINTAINER_MODE=$enableval, -+ USE_MAINTAINER_MODE=no) -+ AC_MSG_RESULT([$USE_MAINTAINER_MODE]) -+ AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) -+ MAINT=$MAINTAINER_MODE_TRUE -+ AC_SUBST(MAINT)dnl -+] -+) -+ -+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) -+ -+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -+ -+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 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 5 -+ -+# 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 -+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" -+# Use eval to expand $SHELL -+if eval "$MISSING --run true"; then -+ am_missing_run="$MISSING --run " - else -- TKHDIR="# no Tk directory found" -- AC_MSG_WARN([Can't find Tk private headers]) -- no_tk=true -+ am_missing_run= -+ AC_MSG_WARN([`missing' script is too old or missing]) - fi -+]) - --AC_SUBST(TKHDIR) -+# 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 -*- - --AC_DEFUN(CY_AC_PATH_TKCONFIG, [ -+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. - # --# Ok, lets find the tk configuration --# First, look for one uninstalled. --# the alternative search directory is invoked by --with-tkconfig --# -- --if test x"${no_tk}" = x ; then -- # we reset no_tk in case something fails here -- no_tk=true -- AC_ARG_WITH(tkconfig, [ --with-tkconfig directory containing tk configuration (tkConfig.sh)], -- with_tkconfig=${withval}) -- AC_MSG_CHECKING([for Tk configuration]) -- AC_CACHE_VAL(ac_cv_c_tkconfig,[ -- -- # First check to see if --with-tkconfig was specified. -- if test x"${with_tkconfig}" != x ; then -- if test -f "${with_tkconfig}/tkConfig.sh" ; then -- ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)` -- else -- AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh]) -- fi -- fi -- -- # then check for a private Tk library -- if test x"${ac_cv_c_tkconfig}" = x ; then -- for i in \ -- ../tk \ -- `ls -dr ../tk[[4-9]]* 2>/dev/null` \ -- ../../tk \ -- `ls -dr ../../tk[[4-9]]* 2>/dev/null` \ -- ../../../tk \ -- `ls -dr ../../../tk[[4-9]]* 2>/dev/null` ; do -- if test -f "$i/unix/tkConfig.sh" ; then -- ac_cv_c_tkconfig=`(cd $i/unix; pwd)` -- break -- fi -- done -- fi -- # check in a few common install locations -- if test x"${ac_cv_c_tkconfig}" = x ; then -- for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do -- if test -f "$i/tkConfig.sh" ; then -- ac_cv_c_tkconfig=`(cd $i; pwd)` -- break -- fi -- done -- fi -- # check in a few other private locations -- if test x"${ac_cv_c_tkconfig}" = x ; then -- for i in \ -- ${srcdir}/../tk \ -- `ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` ; do -- if test -f "$i/unix/tkConfig.sh" ; then -- ac_cv_c_tkconfig=`(cd $i/unix; pwd)` -- break -- fi -- done -- fi -- ]) -- if test x"${ac_cv_c_tkconfig}" = x ; then -- TKCONFIG="# no Tk configs found" -- AC_MSG_WARN(Can't find Tk configuration definitions) -- else -- no_tk= -- TKCONFIG=${ac_cv_c_tkconfig}/tkConfig.sh -- AC_MSG_RESULT(found $TKCONFIG) -- fi -+# 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 -+ -+# _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], -+[AC_FOREACH([_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 -+# 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_SANITY_CHECK -+# --------------- -+AC_DEFUN([AM_SANITY_CHECK], -+[AC_MSG_CHECKING([whether build environment is sane]) -+# Just in case -+sleep 1 -+echo timestamp > conftest.file -+# 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 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_SUBST_NOTMAKE(VARIABLE) -+# --------------------------- -+# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in. -+# This macro is traced by Automake. -+AC_DEFUN([_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 /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 - --# Defined as a separate macro so we don't have to cache the values --# from PATH_TKCONFIG (because this can also be cached). --AC_DEFUN(CY_AC_LOAD_TKCONFIG, [ -- if test -f "$TKCONFIG" ; then -- . $TKCONFIG -- fi -- -- AC_SUBST(TK_VERSION) --dnl not actually used, don't export to save symbols --dnl AC_SUBST(TK_MAJOR_VERSION) --dnl AC_SUBST(TK_MINOR_VERSION) -- AC_SUBST(TK_DEFS) -- --dnl not used, don't export to save symbols -- dnl AC_SUBST(TK_LIB_FILE) -- --dnl not used outside of configure --dnl AC_SUBST(TK_LIBS) --dnl not used, don't export to save symbols --dnl AC_SUBST(TK_PREFIX) -- --dnl not used, don't export to save symbols --dnl AC_SUBST(TK_EXEC_PREFIX) -- -- AC_SUBST(TK_XINCLUDES) -- AC_SUBST(TK_XLIBSW) -- AC_SUBST(TK_BUILD_LIB_SPEC) -- AC_SUBST(TK_LIB_SPEC) --]) -diff -Naur insight-6.8.orig/itcl/ChangeLog insight-6.8.new/itcl/ChangeLog ---- insight-6.8.orig/itcl/ChangeLog 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/ChangeLog 2008-08-18 18:56:19.000000000 +0200 -@@ -1,3 +1,30 @@ -+2008-07-23 Keith Seitz -+ -+ Import of Itcl 3.3. -+ * itcl/configure.in, itk/configure.in, iwidgets/configure.in: -+ Replace with configure.ac. -+ * itcl/configure, itk/configure, iwidgets/configure: Regenerate. -+ * configure.ac, Makefile.am, Makefile.in: New files. -+ * README: "New" file. -+ * aclocal.m4: Regenerate. -+ * itcl/Makefile.in (RANLIB): Replace with RANLIB_LIB so -+ that the toplevel build does not override this variable. -+ * itk/Makefile.in (RANLIB): Likewise. -+ * itcl/tclconfig/tcl.m4 (TEA_PATH_TCLCONFIG): Look for itclConfig.sh -+ in the platform-specific location (unix or win). -+ (TEA_PATH_TKCONFIG): Likewise. -+ (TEA_MAKE_LIB): Even on windows, GCC libraries must start with "lib". -+ * itk/tclconfig.m4: Copy of itcl/tcl.m4. -+ * iwidgets/tcl.m4: Remove. -+ * iwidgets/tclconfig: New directory. -+ * iwidgets/tclconfig/tcl.m4, iwidgets/tclconfig/install-sh: Copies -+ of itcl/tclconfig files. -+ * iwidgets/Makefile.in (MKINSTALLDIRS): Use mkdir -p. -+ * iwidgets/configure.ac (PACKAGE): Rename to PACKAGE_NAME. -+ Call TEA_INIT, add AC_CONFIG_AUX_DIR and AC_PROG_INSTALL. -+ Use TEA_* instead of SC_* macros. -+ Search a few more directories for the itcl and itk libraries. -+ - 2006-06-16 Steve Ellcey - - * configure.in: Fix for autoconf 2.5. -diff -Naur insight-6.8.orig/itcl/CHANGES insight-6.8.new/itcl/CHANGES ---- insight-6.8.orig/itcl/CHANGES 2003-01-21 21:40:24.000000000 +0100 -+++ insight-6.8.new/itcl/CHANGES 1970-01-01 01:00:00.000000000 +0100 -@@ -1,2041 +0,0 @@ -- -- [incr Tcl] - CHANGE LOG --========================================================================== -- ----------------------- CHANGES FROM itcl-1.5 -------------------------- --========================================================================== -- -- Release itcl-2.0 provides a new syntax for defining classes. The -- new syntax is accessed using the new "itcl::class" command. For the -- time being, the old syntax will be supported via the old "itcl_class" -- command, but support for this will be phased out over time. -- -- Because both syntaxes are supported, the new version is "backward -- compatible" with the previous itcl-1.5 release. However, there are -- some semantic changes that may break existing scripts. These are -- listed in detail in the section "INCOMPATIBLE CHANGES". -- -- -- CATALOG OF NEW COMMANDS ---------------------------------------------------------------------------- -- Following is a brief catalog of new commands available in this release. -- -- == Tcl with Namespaces ================================================= -- -- delete namespace name ?name...? -- -- Deletes one or more namespaces, destroying all commands, variables, -- and child namespaces within it. -- -- -- ensemble name { -- option optName arglist body -- option optName arglist body -- ... -- ensemble optName { -- option subOptName arglist body -- option subOptName arglist body -- ... -- } -- } -- -- Adds options to an ensemble called "name". If the ensemble does -- not already exist, it is created automatically. An "ensemble" is -- a toplevel command that groups a collection of sub-commands. For -- example, the usual Tcl "info" command is an ensemble with options -- like "globals", "level", "tclversion", etc. -- -- Ensembles are good for two reasons. First, new options can be -- integrated in without modifying any source code or "switch" -- statements. For example, [incr Tcl] adds the "info classes" -- and "info objects" commands simply by adding options to the -- "info" ensemble. Second, error messages are generated automatically -- by the ensemble mechanism. Try invoking "info" with no options -- and see the result. -- -- Each option declaration is just like a Tcl proc declaration, -- with an option name, arglist and body. Ensembles can also -- contain sub-ensembles with more options. -- -- -- import add name ?name...? ?-where pos...? -- import all ?name? -- import list ?importList? -- import remove name ?name...? -- -- Used to manipulate the "import" list for the current namespace. -- When one namespace imports another, it gains access to all of -- its public commands/variables as if they were part of the -- same namespace. In other words, one namespace can be integrated -- seamlessly into another by adding it to the import list of the -- other namespace. By default, each namespace imports its parent, -- so most namespaces import the global scope in some fashion. -- -- The form "import list" is used to query or set the import list -- for the current namespace. The form "import all" returns the -- namespace search path that is consulted when commands/variables -- are accessed. -- -- -- info context -- -- Returns the current namespace context. The global namespace -- context is reported here as "", so it is easy to build -- namespace paths like this: -- -- set path "[info context]::name" -- -- -- info namespace all ?pattern? -- -- Returns a list of namespaces found in the current namespace -- context, whose names match an optional string pattern. This -- includes children of the current namespace, and children of -- all imported namespaces. -- -- -- info namespace children ?name? -- -- Returns a list of child namespaces for namespace "name", -- or for the current namespace if "name" is not specified. -- -- -- info namespace parent ?name? -- -- Returns the parent namespace for namespace "name", or -- for the current namespace if "name" is not specified. -- -- -- info namespace qualifiers string -- -- Parses a string of the form "namesp::namesp::name", and returns -- the leading "namesp::namesp" scope qualifiers. -- -- -- info namespace tail string -- -- Parses a string of the form "namesp::namesp::name", and returns -- the trailing "name" element. -- -- -- info protection ?-command? ?-variable? name -- -- Returns the protection level for an element. By default, "name" -- is treated as a command name, but the "-command" or "-variable" -- flags can be used to request a specific treatment. -- -- -- info which ?-command? ?-variable? ?-namespace? name -- -- Reports the full namespace path (e.g., "::namesp::namesp::name") -- for an element. By default, "name" is treated as a command name, -- but the "-command", "-variable" and "-namespace" flags can be -- used to request a specific treatment. -- -- -- namespace name ?-local? ?-enforced val? ?--? ?commands? -- -- This is the usual mechanism for creating a namespace and defining -- elements within it. -- -- If namespace "name" does not exist, it is created automatically. -- The namespace name may include a full namespace path (e.g., -- "namesp::namesp::namesp"). During the search for this namespace, -- all imported namespaces are consulted. If the "-local" flag is -- specified, then the search is restricted to the local namespace; -- this prevents against accidentally importing a namespace if the -- intent is to create a child namespace. -- -- If the "-enforced" flag is specified, then "val" is treated as a -- boolean value; if true, then command/variable enforcement is -- turned on for this namespace. Each time a new command is -- referenced within the namespace, Tcl automatically calls a -- procedure: -- -- enforce_cmd -- -- with the of the command that is about to be executed. The -- "enforce_cmd" proc can return an error, and access to that command -- will be denied. It can return another command name, or a more -- specific namespace path, and that command will be used instead. -- Or it can return "", and command lookup will continue via the -- normal namespace rules (i.e., in local scope, imported namespaces, -- etc.). -- -- Each time a new variable is referenced within an enforced -- namespace, Tcl automatically calls a procedure: -- -- enforce_var -- -- with the of a global variable that is being referenced. -- The "enforce_var" proc can return an error, and access to that -- variable will be denied. It can return another variable name, -- or a more specific namespace path, and that variable will be -- used instead. Or it can return "", and variable lookup will -- continue via the normal namespace rules (i.e., in local scope, -- imported namespaces, etc.). -- -- Note that command/variable enforcement done at the Tcl language -- level can be slow. There is also a C language interface for -- the same functionality, which offers much better performance. -- -- The namespace is first found and updated with whatever flags were -- specified. After that, if a "commands" string was specified, it -- is executed in the context of the namespace. -- -- -- public command ?arg arg...? -- protected command ?arg arg...? -- private command ?arg arg...? -- -- These commands attach a particular protection level to whatever -- commands or variables are created while executing the specified -- command. They are used in conjunction with commands like -- "proc" and "variable" to create public/protected/private elements. -- -- -- scope string -- code ?-namespace name? command ?arg arg ...? -- @scope namespace value -- -- The "scope" command takes a string and encodes it into an "@scope" -- declaration. The "code" command performs a similar function, -- but accepts multiple arguments and is usually used to wrap up -- code fragments. The "@scope" declaration keeps a value (like a -- variable name or code fragment) together with its context -- namespace. It can be executed like an ordinary command: -- -- set cmd {@scope :: puts} -- $cmd "hello world!" -- -- or used as an ordinary variable name: -- -- set var {@scope :: auto_path} -- lappend $var /usr/local/mylib -- -- The difference, however, is that an "@scope" value bypasses the -- usual access protections and guarantees that values have the -- proper scope. -- -- Ordinary variable names refer to variables in the global -- namespace. Ordinary code fragments are usually interpreted -- by extensions like Tk in the global namespace. The "scope" -- and "code" commands are used to wrap up variable names and -- code fragments to preserve the namespace context. For example: -- -- namespace foo { -- private variable state 0 -- private proc show_state {mesg} { -- global state -- puts "$mesg: $state" -- } -- -- checkbutton .cb -text "Toggle" \ -- -variable [scope state] \ -- -command [code show_state "current state"] -- -- pack .cb -- } -- -- In this example, the checkbutton is tied to the variable -- "foo::state" and executes the command "foo::show_state" -- whenever it is pressed. -- -- When a Tk widget uses commands and variables within a -- namespace, these names should be wrapped up as scoped -- values, as shown above. -- -- -- variable name ?value? -- Creates a variable called "name" and initializes it to an optional -- value. This is normally used in conjunction with public, protected -- and private commands to declare variables within a namespace: -- -- namespace foo { -- public variable x 0 -- private variable y 1 -- } -- -- If the variable "name" already exists, it updated to have -- the protection level that is currently active. -- -- -- == Tk with Namespaces ================================================== -- -- bind... -- -- Recognizes and expands the following fields within command -- strings: -- -- %q => Replaced with the fully-qualified access command -- for the widget receiving the event. For example, -- -- namespace foo { -- namespace bar { -- button .b -text "Hello World!" -- } -- } -- -- The fully-qualified access command for this widget -- is "::foo::bar::.b". The "%q" field should be used -- instead of "%W" as the widget access command: -- -- bind Button "%q flash; %q invoke" -- -- -- %M => Replaced with the window path name of the mega-widget -- containing the window receiving the event. For example, -- if an "entryfield" mega-widget ".x" contains an entry -- widget ".x.entry", bindings added to ".x.entry" will -- replace "%M" with ".x". This allows generic bindings -- to be added to component widgets which affect the -- mega-widget as a whole. -- -- For this to work properly, mega-widget packages must -- register their component widgets using Itk_SetMegaWidget(). -- -- -- winfo command window -- -- Returns the fully-qualified access command for the widget "window". -- This is equivalent to the "%q" field in bindings, and is useful -- in procedures where the only the window name is known: -- -- foreach kid [winfo children $win] { -- [winfo command $kid] configure -bg blue -- } -- -- -- winfo megawidget window -- -- Returns the window path name of the mega-widget containing "window" -- as a component. This is equivalent to the "%M" field in bindings, -- and is useful in procedures where only the component window name -- is known. For this to work properly, mega-widget packages must -- register their component widgets using Itk_SetMegaWidget(). -- -- -- == [incr Tcl] ========================================================== -- -- delete class name ?name...? -- -- Deletes one or more object classes. Deleting a class also -- causes all derived classes, and all objects belonging to the -- class, to be deleted as well. -- -- -- delete object name ?name...? -- -- Deletes one or more objects. If the access command for an -- object resides in another namespace, then the full namespace -- path should be used: -- -- delete object foo::bar::x -- -- -- info classes ?pattern? -- -- Returns a list of all classes in the current namespace -- whose names match an optional string pattern. -- -- -- info objects ?-class className? ?-isa className? ?pattern? -- -- Returns a list of all objects whose names match an optional -- string pattern. If the "-class" option is specified, then -- the list is further restricted to those objects whose -- most-specific class is "className". If the "-isa" option -- is specified, then the list is further restricted to those -- objects who belong to class "className". -- -- -- itcl::class name { definition } -- -- Used to create define a new class "name". The "definition" -- commands include: -- -- inherit baseClass ?baseClass...? -- -- constructor arglist ?init? body -- destructor body -- -- method name ?arglist? ?body? -- proc name ?arglist? ?body? -- variable name ?init? ?config? -- common name ?init? -- -- public command ?arg arg...? -- protected command ?arg arg...? -- private command ?arg arg...? -- -- Note that the constructor statement has changed to include an -- optional "init" argument. This is an initialization statement -- that can be used to call out base class constructors. If it -- is not included, base classes are constructors are invoked -- automatically without any arguments. -- -- The "variable" statement is now used to create object-specific -- data members. The "common" statement is used to create "common" -- variables, which are global within the class namespace. Both -- types of variables can be designated public, protected or -- private. -- -- -- itcl::body class::func arglist body -- -- Used to define the body of a class member function outside of -- the class definition. If "body" declarations are kept in a -- separate file, they can be sourced again and again to test -- changes as bugs are fixed. If an "arglist" is specified in -- the class definition, then the "arglist" for the body definition -- must have the same meaning. -- -- -- itcl::configbody class::option body -- -- Similar to the "body" command, but used to define the configuration -- code for a public variable. -- -- -- itcl_class name { old-style-definition } \__ backward compatibility -- itcl_info option ?arg arg...? / -- -- -- == [incr Tk] =========================================================== -- -- itcl::class name { -- ... -- itk_option define -switch resName resClass initVal ?configCode? -- } -- -- The "itk_option define" command is recognized at the level of -- the class definition. It defines a new mega-widget option with -- the given switch name and X11 resource database names. The -- "initVal" is used as a last resort to initialize the option -- if no other value can be queried from the X11 resource database. -- If "configCode" is specified, it is executed whenever the option -- is modified via the "configure" method. The "configCode" can -- also be specified outside of the class definition via the -- "itcl::configbody" command. -- -- -- Methods provided by itk::Archetype base class: -- -- component -- component name -- component name command ?arg arg...? -- -- Used to query or access components within a mega-widget. With -- no arguments, this returns a list of component widgets that -- are accessible in the current scope. Note that component -- widgets obey any public/protected/private access restriction -- that is in force when the component is created. -- -- With one argument, this returns the window path name for a -- component with the symbolic name "name". -- -- In any other case, the remaining arguments are invoked as a -- method on the component with the symbolic name "name". -- -- -- configure -- configure option -- configure option value ?-switch value...? -- -- Works just like the usual Tk configure method, but for mega-widgets. -- Here options are really composite widget options. When set, they -- trigger changes to many different internal components, and may -- invoke many bits of "configCode" for options defined by "itk_option -- define". However, there is only one value for the composite option. -- -- -- cget option -- -- Works just like the usual Tk cget method, but for mega-widgets. -- Returns the current value for a composite widget option. -- -- -- itk_component add name {create-commands} ?{option-commands}? -- -- Adds a new mega-widget component with the symbolic name "name". -- Invokes the "create-commands" to create the component, and -- invokes "option-commands" to integrate its options into the -- composite list. By default, no options are integrated. Options -- may be added using the following commands: -- -- keep option ?option...? -- ignore option ?option...? -- rename oldswitch newswitch resname resclass -- usual ?tag? -- -- -- itk_component delete name ?name...? -- -- Deletes an existing mega-widget component with the symbolic -- name "name". The component will still exist as a widget, -- but it will no longer be accessible as a component for this -- mega-widget. Any options associated with the component are -- removed from the composite list. -- -- Note that you can destroy a component like any ordinary widget: -- -- destroy .foo.bar.b -- -- Components automatically detach themselves from their mega-widget -- parent when destroyed, so "itk_component delete" is not used -- very often. -- -- -- itk_option add option ?option...? \__ class::option -- itk_option remove option ?option...? / component.option -- -- Adds or removes an option from the composite option list for -- a mega-widget. These commands cannot be used at the level of -- the class definition; they must be invoked for a particular -- mega-widget. They usually appear in the constructor for a -- mega-widget class, to add or redefine options in components -- created by a base class. For example, the base classes -- itk::Toplevel and itk::Widget keep only the bare minimum -- options for their "hull" component: -background and -cursor. -- If you want your mega-widget to have a border around it, you -- can add the hull options back in: -- -- itcl::class MyWidget { -- inherit itk::Widget -- -- constructor {args} { -- itk_option add hull.borderwidth hull.relief -- } -- } -- -- -- itk_initialize ?option value option value...? -- -- Initializes the composite option list for a mega-widget. -- This method should be invoked within the constructor for each -- mega-widget class. It is usually included the end of the -- constructor, below the component creation code. It integrates -- all "itk_option" options defined in the current class into -- the composite configuration list, and includes "-option value" -- settings usually received as arguments to the constructor. -- When this is executed in the most-specific class, it scans -- through the composite option list and makes sure that all -- options have been properly initialized. -- -- itk::usual tag ?commands? -- -- Used outside of a mega-widget class definition to declare -- the "usual" option-handling commands for the mega-widget. -- These commands suggest how the configuration options should -- be handled if the mega-widget becomes a component of an even -- larger mega-widget. They include commands like "keep" and -- "rename". -- -- -- INCOMPATIBLE CHANGES ---------------------------------------------------------------------------- -- -- >> Object construction/destruction now follows C++ model. -- -- In the previous release, object construction started at the -- most-specific constructor. Base class constructors could -- be called out explicitly within the body of a constructor. -- If they were not, they were invoked implicitly when the -- constructor finished executing. This led to a construction -- model that was backward from C++, and contrary to what most -- people expected. Destructors were backwards in a similar -- manner. -- -- In the current release, object construction starts at the -- least-specific class in the hierarchy, and proceeds to the -- most-specific class. Therefore, each base class is fully -- constructed before the derived class constructor is executed. -- -- Arguments are now passed to base class constructors through -- an optional "initialization" statement. This statement is -- included between the argument list and the body of the -- constructor, so the syntax is reminiscent of C++: -- -- class Base { -- constructor {x y} { -- ...constructor body... -- } -- } -- class Derived { -- inherit Base -- constructor {x y z} { -- Base::constructor $x $y << "initialization" -- } { -- ...constructor body... -- } -- } -- -- Note that variables from the argument list (e.g., $x and $y) -- can be referenced within the initialization statement. With -- multiple inheritance, each of the base class constructors -- can be called out individually. -- -- Object destruction is the exact opposite of construction. -- It proceeds from most-specific to least-specific class. -- -- -- >> All class methods are now implicitly virtual -- -- In the previous release, all method names were interpreted -- with respect to the current class scope and its base classes. -- If you wanted a method to act virtual, you had to explicitly -- preface it with the "virtual" command each time you used it. -- This proved to be error prone. -- -- In the new release, all methods are virtual by default. If -- you invoke a method with a simple name, the most-specific -- method with that name will be invoked, regardless of your -- class scope: -- -- class Base { -- constructor {} {show} -- method show {} {puts "Base::show"} -- } -- class Derived { -- inherit Base -- constructor {} {show} -- method show {} {puts "Derived::show"} -- } -- -- The method "show" called out in the constructors for both of -- these classes is virtual. When Base::constructor is executed -- it finds the most-specific "show" method and prints -- "Derived::show". When Derived::constructor is executed, it -- finds the most-specific "show" method and prints "Derived::show" -- again. -- -- If you want to invoke a particular method, you have to scope -- it explicity: -- -- class Base { -- constructor {} {Base::show} -- method show {} {puts "Base::show"} -- } -- class Derived { -- inherit Base -- constructor {} {Derived::show} -- method show {} {puts "Derived::show"} -- } -- -- -- >> Within class methods/procs the "global" command now refers to -- variables within the class namespace. -- -- In the previous release, the "global" command was used to -- access variables at the global scope. The "global" command -- now refers to variables that are "global" within the current -- namespace context. Within the scope of a class, this refers -- to "global" class variables. Note that common data members -- are global variables, but they can be accessed transparently, -- without any special "global" declaration. You can also create -- ordinary global variables within a class, but you will have to -- declare them each time they are used with a "global" statement. -- The new scheme will allow classes to have their own private -- global variables (e.g., for interacting with widgets) without -- flooding the global namespace. -- -- If you really want to access a variable at the "::" global -- scope, use its complete path name: -- -- itcl::class Foo { -- method getenv {name} { -- global ::env -- return $env($name) -- } -- } -- -- -- >> "this" variable used to be included in every class scope -- -- In the previous release, each class scope included a separate -- "this" variable containing the object name. There is now only -- one "this" variable, kept in the most-specific class scope. -- It can still be referenced as if it belongs to all classes, -- e.g., "Base::this", "Derived::this". -- -- This change is probably not important to most applications. -- But it did break my test suite, which expected to find many -- different "this" variables coming back from the "info" command. -- -- -- >> "this" variable now contains complete namespace path for the -- object access command -- -- This change will break many scripts written for mega-widgets. -- In the previous release, mega-widgets had a window name and an -- access command name that were interchangeable. For example, -- you would create a widget ".dialog" and configure it using -- the ".dialog" command. Inside of this widget there was a -- "this" variable containing the name ".dialog". -- -- In the current release, an object can exist in any namespace, -- so the complete namespace path is a part of the object's -- identity. Instead of just ".dialog", the "this" variable will -- now contain a name like "::.dialog" or "::foo::.dialog". But -- the window name is still just ".dialog". -- -- Scripts that used to use "$this" as a window name: -- -- wm title $this "Dialog" -- -- must now use the [incr Tk] "hull" component instead: -- -- wm title $itk_component(hull) "Dialog" -- -- If for some other reason you need the simple object name at the -- end of the namespace path, you can get at it using the -- "info namespace tail" command: -- -- set oldthis [info namespace tail $this] -- -- -- >> "#auto" generated names now start with lower-case letter -- -- In the previous release, "#auto" could be used in place of -- an object name to produce an automatically generated name: -- -- Toaster #auto -heat light -- -- The names were generated by adding a unique number onto the -- class name: "Toaster0", "Toaster1", etc. -- -- The current release supports the same functionality, except -- that the names generated are guaranteed to start with a -- lowercase letter: "toaster0", "toaster1", etc. This helps -- out in the mega-widget arena, where window names must start -- with lowercase letters. -- -- -- >> "config" argument used to allow multiple default values -- -- The magic "config" argument used to allow multiple default -- values, which were simply concatenated into a single value -- before processing. For example, in the previous release -- you could say: -- -- itcl_class Foo { -- method test {x y {config -foo 0 -bar 0}} { -- ... -- } -- } -- -- and if the "test" method was used without extra configuration -- arguments, they would default to "-foo 0 -bar 0". -- -- In the current release, you must make the default value for -- a "config" argument a single string: -- -- itcl::class Foo { -- method test {x y {config "-foo 0 -bar 0"}} { -- ... -- } -- } -- -- >> "info class" now acts "virtual" -- -- In the previous release, the "info class" command would report -- the current class context. In a base class method, it would -- report the base class name, and in a derived class method, it -- would report the derived class name. If you wanted to know -- the most-specific class for an object, you would have to use -- the "virtual" command explicitly: -- -- itcl_class Base { -- method whatAmI {} { -- return [virtual info class] -- } -- } -- -- The "info" command is now virtual by default, as long as an -- object context is present. This means that you can drop the -- "virtual" command: -- -- itcl::class Base { -- method whatAmI {} { -- return [info class] -- } -- } -- -- If you really want to know the current class scope, use the -- "info context" command instead to query the current namespace -- context. -- -- If an object context is not present (i.e., in the body of a -- common class "proc"), the "info class" command reverts to -- the current class context, the same as the "info context" command. -- -- -- >> Library procedures "itcl_unload" and "itcl_reload" have been removed -- -- In the previous release, the library procedure "itcl_unload" -- provided a way of deleting a class. You can now do the same -- thing using the "delete class" command: -- -- delete class Toaster -- -- This deletes the specified class, all derived classes, and all -- objects belonging to this class. If autoloading is set up, -- you can reload a deleted class just by invoking its name. -- The old "itcl_reload" function is now trivial: -- -- proc itcl_reload {class} { -- delete class $class -- $class -- } -- -- -- >> Class definition no longer recognizes ordinary Tcl commands. -- -- As an undocumented "feature" of the previous release, you could -- include ordinary Tcl commands in the body of your class definition. -- For example: -- -- itcl_class Foo { -- ... -- if {$somevar} { -- public foo -- } -- } -- -- In the new release, only class definition commands are allowed -- within the body of a class definition. You can, however, use Tcl -- commands outside of the class definition to modify the class -- definition as a string, and then define the class: -- -- set defn { -- method test {} {return "test"} -- } -- if {$somevar} { -- append defn "public variable foo" -- } -- class Foo $defn -- -- -- IMPROVEMENTS ---------------------------------------------------------------------------- -- -- >> an object can be renamed by renaming its access command -- -- In the previous release, an object's identity was fixed when -- it was created. In the new release, the object is tied -- directly to its access command. If you rename the access -- command, you have renamed the object. The "this" variable -- automatically keeps in sync with name changes. If you delete -- the access command, you automatically delete the object. -- -- Toaster new -heat light -- rename new fred << rename Toaster -- fred toast 2 -- fred toast 1 -- rename fred "" << delete Toaster -- -- -- >> Bodies of methods, procs and public variables can be defined -- outside of the class definition, and can be redefined on the fly. -- -- In the previous release, all of the code related to a class was -- defined within the class definition. This kept everything -- together in one place, but it made it difficult to get an overview -- of the class interface. -- -- In the new release, bodies can be defined outside of the class -- definition, perhaps in a separate file. When debugging, the -- implementations can be fixed and sourced again and again, without -- having to delete existing objects and classes. -- -- Use the "itcl::body" command to redefine the body of a class -- method or proc. Use "itcl::configbody" to redefine the configuration -- code associated with a public variable. For example: -- -- itcl::class Toaster { -- constructor {args} { -- eval configure $args -- } -- destructor { -- if {$crumbs > 0} { -- error "cannot destroy dirty toaster: clean first" -- } -- } -- -- method toast {nslices} -- method clean {} -- -- public variable heat 3 -- protected variable crumbs 0 -- } -- -- itcl::body Toaster::toast {nslices} { -- if {$nslices < 1 || $nslices > 2} { -- error "bad number of slices: should be 1 or 2" -- } -- set crumbs [expr $crumbs+$heat*$nslices] -- if {$crumbs >= 50} { -- puts stderr "== FIRE! FIRE! ==" -- } -- } -- -- itcl::body Toaster::clean {} { -- set crumbs 0 -- } -- -- itcl::configbody Toaster::heat { -- if {$heat < 1 || $heat > 5} { -- error "invalid setting \"$heat\": should be 1-5" -- } -- } -- -- If an argument list is specified in the class definition, then -- the same argument list must be used when the implementation is -- redefined. The variable names can change, but the meaning of -- the arguments must be the same. If you leave the argument -- list out of the class definition, or if you include the "args" -- argument, the argument list can change. -- -- -- >> C procedures can be integrated into class definitions -- -- Any method body that is specified as "@symbol" is treated as a -- reference to a C procedure with the symbolic name "symbol". -- Symbolic names are established by registering C procedures -- via the Itcl_RegisterC() procedure. This is usually done -- when the interpreter starts up in the Tcl_AppInit() procedure: -- -- if (Itcl_RegisterC(interp, "foo", My_FooCmd) != TCL_OK) { -- return TCL_ERROR; -- } -- -- This registers a procedure My_FooCmd() with the symbolic name -- "foo". It can be used as the implementation for a class method, -- proc, or bit of configuration code simply by specifying "@foo" -- in place of the Tcl code body. -- -- These C procedures are just like ordinary Tcl command handlers. -- They take the usual arguments: -- -- int My_FooCmd(ClientData cdata, Tcl_Interp *interp, -- int argc, char** argv) -- { -- ... -- return TCL_OK; -- } -- -- including the (argc,argv) arguments from the command line. But -- before these procedures are invoked, the proper class scope is -- established so that object data members can be accessed as if -- they were ordinary variables via Tcl_GetVar() and Tcl_SetVar(). -- -- Look at the [incr Tk] base class itk::Archetype as an example -- for integrating C code. -- -- -- >> "#auto" can be buried within an object name: ".x.y.z.#auto" -- -- In the previous release, "#auto" was a keyword that could be -- used in place of an object name. It can now be used as a -- part of the object name, making it easier to generate automatic -- names for mega-widgets. -- -- -- >> Every object now has built-in "configure" and "cget" methods -- that follow the Tk paradigm. For [incr Tk] widgets, they follow -- the paradigm exactly. The ordinary [incr Tcl] objects, the -- X11 resource values are missing. -- -- -- >> There is no longer a built-in "delete" method, so classes can -- define their own "delete" operations. -- -- Instead of "objName delete", use the new "delete object" command: -- -- Toaster fred -heat dark -- delete object fred -- -- -- >> All data members can be declared public, protected or private. -- -- Private data members can only be accessed in the class where -- they are defined. Protected data members can be accessed in -- the defining class and all derived classes. Public data members -- can be accessed like protected data members, but are also -- recognized as configuration options by the built-in "configure" -- and "cget" methods. -- -- -- >> In [incr Tk], options are now defined outside of the constructor, -- at the level of the class definition. -- -- -- >> In [incr Tk], configuration options belonging to components -- created in a base class can be added or removed in derived -- classes. -- -- The base classes "itk::Toplevel" and "itk::Widget" are now stripped -- down to the bare minimum options. For example, if you want to add -- "-width" and "-height" options for the hull component, do this using -- the "itk_option" command in the body of the constructor: -- -- class MyWidget { -- inherit itk::Widget -- -- constructor {args} { -- itk_option add hull.widget hull.height -- ... -- } -- } -- -- Options can be added and removed on-the-fly during normal operation, -- but this is not recommended, since it could lead to a confusing -- interface. -- -- -- >> In [incr Tk], components can now be added or removed on-the-fly. -- -- The "itk_component" method now supports "add" and "delete" -- operations that are used to add/delete components. -- -- -- >> All [incr Tk] widgets can be destroyed like normal Tk widgets. -- -- If you destroy a component widget, for example, it will automatically -- remove itself from its parent via "itk_component delete". Likewise, -- when a parent widget is destroyed, it will automatically destroy -- all component widgets. -- -- -- >> In [incr Tk], the "itk::Archetype::component" method now provides -- access to mega-widget components. -- -- In the previous [incr Tk] prototype, the "component" method had -- a different syntax and only supported query operations. You can -- now access an internal component via the "component" method using -- its symbolic name: -- -- .dialog component hull configure -width 450 -height 500 -- -- This example accesses the "hull" component of the ".dialog" -- mega-widget, and sets the width and height options. -- --========================================================================== -- ---------------------- RELEASE 2.0beta - 9/6/95 ------------------------ --========================================================================== -- --9/8/95 (bug fix) -- Fixed menus to work properly within namespaces. Menu library code -- now recognizes the proper namespace context for all "-menu" options. -- --9/8/95 (new feature) -- Added "winfo command name" option to report the scoped access command -- for a given window. -- --9/8/95 (configuration changes) -- - fixed "sed" invocation in iwidgets Makefile -- - added configuration guesses for Tadpole Sparcbook -- - added George Howlett's test for "gcc", so that "-fwritable-strings" -- is added even if gcc is masquerading as "cc" -- - fixed tcl/tk configure scripts to have default prefix "/usr/local/itcl" -- or wherever itclsh/itkwish is installed -- - fixed makefiles to use $(MAKE) instead of "make" -- --9/9/95 (bug fix) -- Protected references to obj->accessCmd to avoid seg faults when -- an object is being destroyed. -- --9/9/95 (new features) -- Changed the syntax of the "namespace" command: -- -- namespace name ?-local? ?-hidden val? ?-enforced val? ?--? ?commands? -- -- Flags now follow the namespace name, and the "commands" body is -- optional. The "-hidden" option allows a namespace to be hidden -- during "info namespace all" queries. The "-enforced" option turns -- command/variable enforcement on or off. -- -- Update "info namespaces all" command to allow for display of hidden -- namespaces: info namespaces all ?-hidden? ?pattern? -- --9/10/95 (bug fix) -- Fixed "auto_mkindex" to work properly for procs defined within -- namespaces. Added support for itcl::class, itcl::body and -- itcl::configbody as well. Added tests for tclIndex file generation. -- --9/11/95 (configuration changes) -- Fixed makefiles to reference sources and libraries properly, so -- it should be possible to build different object trees for -- different platforms with "gmake". -- --9/13/95 (configuration changes) -- Added "AC_C_CROSS" to configure files, so configuration should work -- properly on Solaris 2.4. -- --9/13/95 (bug fix) -- Changed option configuration to work synchronously, and added -- "itk_initialize" command to initialize the configuration options -- for each mega-widget class. The original behavior of handling -- option changes via "do-when-idle" has been removed. -- --9/13/95 (bug fix) -- Changed all structure members called "namespace" to "namesp". -- This allows the code to compile correctly under C++. -- --9/13/95 (configuration changes) -- - added support for "i[34]86:BSD/OS" in "config/config.guess" -- - fixed "test" target for iwidgets -- --9/13/95 (bug fix) -- Fixed "global" command and other places where namespace paths -- are parsed to allow for a single ":" in command/variable names. -- --9/13/95 (bug fix) -- Fixed a problem which caused class-based options to be lost when -- a widget class was defined within a proc. -- --9/14/95 (bug fix) -- Fixed class access command so that when it is deleted, it -- automatically destroys the class. This also fixed a seg fault -- that occurred when an object's access command stomped on the -- class access command. -- --9/14/95 (enhancement) -- Fixed "scope" command and the @scope facility so that null strings -- can be passed around without all of the extra scoping info. -- --========================================================================== -- ----------------------- RELEASE 2.0b2 - 9/14/95 ------------------------ --========================================================================== -- --9/15/95 (enhancement) -- Changed error messages reported when a class method/proc gets the -- wrong number of arguments to report the usage information, like: -- {wrong # args: should be "obj foo x y ?arg arg...?"} -- --9/18/95 (bug fix) -- Fixed a seg fault that occurred when the "cget" method was called -- with no args. -- --9/18/95 (bug fix) -- Fixed a bug that caused private variables in a base class to be -- uninitialized, even if an initial value was specified in the -- class definition. -- --9/22/95 (configuration changes) -- Added the "SHELL=/bin/sh" statement to the main makefile. This -- fixes build problems on SGI machines. -- --10/9/95 (paradigm shift) -- Removed the implicit scoping from any facility that takes a command -- or variable name. Implicit scoping made it difficult to pass a -- command string or variable name into a wrapper proc and yet preserve -- the scope that it came from. All scoping is now explicit. All -- commands and variables are interpreted in the global "::" scope -- unless they are wrapped in an "@scope" declaration. Commands can -- be wrapped up like this: -- -- button .b -text "Push Me" -command [code .b configure -bg red] -- -- Variable names can be wrapped up like this: -- -- radiobutton .rb1 -text "Choice #1" -variable [scope mode] -value 1 -- -- The "code" and "scope" commands wrap up strings with an "@scope" -- specification which preserves the namespace context. -- --10/17/95 (paradigm shift) -- Changed the "%C" option of the "bind" command to return a scoped -- command of the form "@scope namespace widget" that can be used to -- access the widget. "%C" should be used instead of the usual "%W" -- window name when attempting to access the widget. Bindings should -- be written like this: -- -- bind Entry {%C configure -bg white} -- bind Entry {%C configure -bg gray} -- -- The command "%C" can be used to access the widget regardless which -- namespace it belongs to. -- --10/31/95 (enhancement) -- Fixed "unknown" command to support a general facility for adding -- unknown command handlers. The "unknown_handler" proc is used to -- register new handlers. Each time an unknown command is encountered, -- each of the handlers is invoked to attempt to handle the command. -- If a handler returns "-code continue", control passes to the next -- handler on the list. Handlers are invoked in the order opposite to -- the way they were registered. Extensions can use this facility to -- add their own handlers into the "unknown" scheme. -- --11/7/95 (enhancement) -- Added a "backward-compatibility" mode to [incr Tcl]. By default, -- widget names can now be used as access commands in any namespace, -- even if the widget access command exists in another namespace. -- This emulates the normal Tk behavior that widgets are global resources -- in the application that can be accessed anywhere. This behavior can -- be disabled by setting the global variable "itcl_purist" to "1". When -- this variable is set non-zero, care must be used to use "%C" or -- "[winfo command %W]" as an access command when the widget is used -- outside of the namespace that contains it. From the standpoint of -- the object-oriented paradigm, the "purist" mode is better since it -- supports encapsulation. The "backward-compatible" mode, however, -- allows [incr Tcl] to work better with existing Tk applications and -- extensions. -- --11/22/95 (bug fix and enhancement) -- Fixed the built-in "info" command for classes to include the "info -- classes" and "info objects" queries. These were initially overlooked -- in a hard-wired list of "info" queries. -- -- Fixed the ensemble facility in general to support unknown options -- via an "@error" handler. Any option registered with the name "@error" -- is treated as an error handler for the ensemble. Arguments passed -- to the option include the ensemble name, the unknown option, and all -- remaining arguments. For the built-in "info" command, the "@error" -- handler passes any unknown options to the usual Tcl "info" command, -- so all of the standard options are automatically available. -- --11/23/95 (bug fix) -- Fixed usual tkerror dialog to truncate error messages at 5 lines. -- The usage information returned by an ensemble or itcl object can -- be much longer, causing the "Stack Trace" button to get lost in -- many cases. -- --11/27/95 (bug fix) -- Removed the constructor/destructor from the list of public methods -- returned as usage information when an unknown method is encountered -- on an object. -- --12/2/95 (bug fix) -- Fixed error reporting for object construction. Used to say -- something like "object constructor x y z" which made it look -- like a method invocation. Now says "class object x y z" which -- looks more like the call that the user made to trigger the error. -- --12/4/95 (bug fix) -- Fixed class creation and object creation to avoid clobbering -- existing commands with new class/object access commands. This -- prevents all hell from breaking loose when a command like -- "class set {...}" is invoked. -- --12/6/95 (configuration changes) -- Fixed parsing of namespace paths to use local storage instead of -- assuming that strings are writable. This means that the -- "-fwritable-strings" option is no longer necessary for GCC and -- other compilers that store static strings in the program text -- segment. This option has been removed from all "configure.in" -- files. Linux users will no longer see core dumps on start-up. -- --12/8/95 (bug fix) -- Fixed "upvar" so that class data members can be accessed from -- another calling procedure. This fixed a problem with using -- "parray" from within class methods. -- --12/9/95 (bug fix) -- Fixed "@scope" variable references so that variables can be created -- using "@scope" in any context and referenced later. -- --12/9/95 (feature change) -- Removed "-hidden" option from namespaces. It seemed to complicated -- and quirky to explain on the man page. Instead, all parser -- namespaces like "scope-parser" and "mkindex-parser" are grouped -- into a "::tcl" namespace. This keeps them somewhat hidden even -- without any special treatment. -- --12/9/95 (minor enhancement) -- Added "array" command to class definition parser, so it can be -- used along with "set" to initialize common arrays. -- --12/10/95 (paradigm shift) -- Removed the "%C" pattern from the expansions recognized by the -- "bind" command, in favor of the following scheme: -- %W ........ name of widget receiving event -- %M ........ name of mega-widget containing widget receiving event -- %q ........ fully-qualified command name of widget receiving event -- %Q ........ fully-qualified command name of mega-widget receiving event -- Fixed "winfo command" to return the fully-qualified command name of -- a widget (instead of a scoped access command) to be consistent with -- the "%q" bind pattern. -- --12/10/95 (bug fix) -- Fixed Tk library code to use "%q" and "winfo command", so that the -- default widget behaviors will work even in "itcl_purist" mode. -- --12/11/95 (minor enhancement) -- Added "winfo megawidget" query, which will return the name of the -- mega-widget containing a specified component widget. In order for -- this to work, a mega-widget package must use the procedure -- Itcl_SetMegaWidget() to register each component as it is added -- to a mega-widget. -- --12/12/95 (bug fix) -- Fixed Archetype base class to keep all options sorted in alphabetical -- order. This way they can be reported back by the "configure" method -- in alphabetical order. Options are now initialized by "itk_initialize" -- in alphabetical order as well. -- --12/12/95 (bug fix) -- Fixed the Archetype base class to register each component widget with -- Tk via Itk_SetMegaWidget(). This means that "winfo megawidget" and -- "%Q" can be used to reference the containing mega-widget for any component. -- --12/12/95 (bug fix) -- Fixed the "configure" method in the Archetype base class so that when -- an error is encountered while setting a configuration option, the option -- is set back to its previous value. -- --12/12/95 (bug fix) -- Fixed the "itk_component add" method to find access commands for -- components even if they are created in the global scope. Components -- that are meant to be shared can be created using "uplevel #0". The -- access command for this component will be installed in the global scope, -- and therefore available to all other namespaces. -- -- Syntactic sugar like a "-global" option would be nice, but references -- like $itk_component(...) must be substituted in the calling scope, and -- it is not possible to get these properly substituted and still maintain -- the boundaries around arguments. -- --12/12/95 (bug fix) -- Fixed Archetype base class to handle public/protected/private components -- properly. The usual public/protected/private commands can be used in -- conjunction with "itk_component add" to set the protection level of a -- component. The protection level affects the action of the "component" -- method. Public components are reported in any namespace, and are -- accessible from any namespace. Protected components are accessible -- within a base class and derived classes. Private components are -- accessible only within the class where they are defined. This feature -- can be used to keep unimportant components (such as frames) off of the -- component list that a client would see. -- --12/13/95 (enhancement) -- Added "usual" and "ignore" commands for processing component widget -- configuration options. The "usual" command finds the usual code fragment -- for the widget class of the component, and executes it. The command -- "itk::usual" can be used to register option code for new widget classes. -- -- The "ignore" command can be used to override previous "keep" and "rename" -- commands. This is useful for removing options that the "usual" code -- keeps or renames. -- -- Fixed the "itk_component add" command so that if the option handling code -- is not specified, the "usual" command is invoked automatically. -- --12/13/95 (bug fix) -- Fixed the Archetype base class to handle the immutable Tk options -- properly. Options like -class, -colormap, -screen and -visual can only -- be set at creation time. The itk_option array is now properly -- initialized to report their creation value. -- --12/14/95 (bug fix) -- Fixed "itk_option add" command to report errors properly for unknown -- options. -- --12/14/95 (bug fix) -- Fixed "body" command to report errors properly for unknown functions. -- --12/14/95 (bug fix) -- Fixed a bug in the handling of TCL_GLOBAL_ONLY flag when looking up -- class variables. Previously, this was ignored, so object-specific -- variables could be accessed in a "global" context by Tk widgets. -- This caused some strange behavior when object-specific variables -- were used in conjunction with widget options like "-textvariable". -- Tk widgets now properly interact with classes via global variables. -- --12/14/95 (bug fix) -- Fixed "auto_mkindex" to recognize procs within class definitions and -- add them to the "tclIndex" file. -- --12/15/95 (bug fix) -- Fixed "body" command to find functions only in the specified class. -- The bug caused a base class method to be redefined whenever a "body" -- command was issued for a derived class if the method was not declared -- in the derived class. Made a corresponding fix to the "configbody" -- command for public variables. -- --12/15/95 (enhancement) -- Added the following commands to the class definition parser: bind, -- scope and code. This allows generic class bindings to be included -- in the body of a class definition. -- --12/15/95 (enhancement) -- Added "-clientdata" option in itk::Archetype base class so that -- all widgets will have an extra field for client data. For application -- developers, this may come in handy. -- --12/16/95 (bug fix) -- Fixed the itk::Archetype base class so that if "itk_option add" or -- "itk_option remove" is called for ordinary class-based options before -- "itk_initialize" (which normally integrates them in) it does not cause -- a problem. -- --12/17/95 (bug fix) -- Fixed namespace resolution so that a command/variable with a -- specific path like "itk::body" will not be found in another -- imported namespace. For the import list to be followed, the -- command name must be generic like "body". -- --12/19/95 (configuration changes) -- Changed from generic directories like "tcl" and "tk" to directory -- names with version numbers like "tcl7.4" and "tk4.0". -- --12/19/95 (bug fix) -- Changed names like "itcl_library" and "itcl_purist" to "itcl::library" -- and "itcl::purist". This makes more sense in the documentation, since -- the underbar stuff is no longer needed with namespaces, and extension -- writers are discouraged from using it. -- --12/21/95 (bug fix) -- Changed handling of argument lists for functions with Tcl or C -- implementations. All argument lists are now treated as Tcl -- argument specifications. For Tcl implementations, this determines -- what arguments are available in the body of the procedure; for C -- implementations, this merely gives the intended usage information -- for the function (the C implementation may choose to ignore this -- and do something else). This fix makes it easier to override -- C implementations with Tcl procedure bodies. -- --12/25/95 (bug fix) -- Split the usual TCL_GLOBAL_ONLY flag into two meanings: TCL_GLOBAL_ONLY -- now means "a global variable in the global namespace", and ITCL_GLOBAL_VAR -- means "a global variable in the current namespace". This enhancement -- fixes Tk (and many other extensions) which request global variables. -- A plain variable name together with TCL_GLOBAL_ONLY is now interpreted -- as an ordinary Tcl global variable, so the behavior is backward-compatible. -- A scoped variable reference will work properly with namespaces. If -- extension writers get more ambitious, they can start using the -- ITCL_GLOBAL_VAR flag, which will make their extensions namespace-friendly. -- --12/26/95 (bug fix) -- Fixed "@scope" command so that extra arguments added at the end are -- kept as proper list elements when added to the command string. This -- makes sure that boundaries around Tcl words are not lost when the -- scoped command is interpreted. -- --12/28/95 (minor enhancement) -- Added "config" method to the Archetype base class as an alias for -- the usual "configure" method. Many Tk applications use "config" -- as an abbreviation for "configure", so this fix improves compatibility -- with other packages. -- --12/28/95 (bug fix) -- Fixed Itcl_SaveInterpState() and Itcl_RestoreInterpState() to -- properly save/restore the interp state even for commands like -- Tcl_SetCmd(), which are sloppy about setting the interpreter -- result. This fixed bad memory references that were encountered -- in enforced namespaces. -- --12/28/95 (bug fix) -- Fixed Itcl_DeleteNamesp() to allow variable traces to be fired -- off properly when a namespace is destroyed. -- --12/30/95 (bug fix) -- Fixed the Archetype base class to do the "ignore" operation -- properly for mega-widget options. A bug was causing a single -- "ignore" request not only to eliminate the desired option, but -- to eliminate options that were renamed to the "ignore" name -- as well. -- --========================================================================== -- ------------------------ RELEASE 2.0 - 12/31/95 ------------------------ --========================================================================== -- --1/2/96 (cleanup) -- Fixed some compiler warnings reported by Christopher Hylands -- (cxh@EECS.Berkeley.EDU) -- --1/4/96 (cleanup) -- Fixed the description of the last test in itk/tests/option.test. -- --1/4/96 (cleanup) -- Fixed code examples in man pages. Lines starting with "." now -- start with the null character "\&", to avoid errors with troff. -- --1/5/96 (bug fix) -- Fixed a bug in tkMenuUnpost. Popup menus associated with something -- other than a menubutton can now be unposted properly. -- --1/10/96 (bug fix) -- If an error occurs during construction, all destructors are now -- invoked--even if an error is encountered. All destructor errors -- are completely ignored. This fixed a core dump reported by -- Christopher Hylands (cxh@EECS.Berkeley.EDU). -- --2/5/96 (cleanup) -- Fixed memory leaks reported by Forest Rouse (rouse@flash.icemcfd.com). -- Also fixed a problem in Itcl_DeleteNamesp() with the way that -- the variable cache was destroyed. This caused a core dump on Solaris -- systems when a namespace was deleted. -- --2/8/96 (cleanup) -- Fixed itk tests to ignore any resources that the user might have -- on the desktop (e.g., *background: red) -- --2/11/96 (bug fix) -- Fixed auto_mkindex so that the "proc" command accepts arglist and -- body as optional arguments. Within class definitions, these -- parameters may not be specified. Also, fixed the "source" command -- so that it is ignored within the file being indexed. Otherwise, -- it brought in program elements that confused the index. -- --2/15/96 (bug fix) -- Fixed the unknown command to save errorInfo and restore it before -- invoking each handler. This fixed an irritating bug that caused -- the first error message to be lost as "tkerror" was autoloaded. -- --2/20/96 (bug fix) -- Fixed a bug in variable lookup that allowed private/protected -- variables to be set from outside the normal context. On initial -- lookup variables were being passed over, but since they did not -- appear to exist, they were being created. Variables are now -- protected from being set or redeclared from an improper context. -- --3/1/96 (enhancement) -- Changed namespaces to import from their parent in "protected" -- mode instead of "public" mode. This is a better default, since -- it emphasizes the strong relationship between a parent and a -- child. They can share variables that are hidden from anyone else. -- --3/5/96 (bug fix) -- Fixed the "info objects" to autoload any classes referenced by -- "-isa" or "-class" that are not yet defined. -- --3/12/96 (enhancement) -- Fixed class parser to recognize commands at the global scope. -- This makes it possible to embed normal Tcl commands like an -- "if" statement within a class definition. It also makes it -- easy to extend the class parser by defining procs in the -- ::itcl::parser namespace. -- --3/17/96 (enhancement) -- Fixed "usual" command so that with no arguments, it returns a -- list of all known tags. Each tag name can be used to query its -- associated code. -- --3/19/96 (enhancement) -- Fixed the "configure" method for mega-widgets to include public -- variables as configuration options. Normally, mega-widget -- classes use "itk_option define" to define configuration options. -- However, if a mega-widget includes an ordinary itcl class as -- a base class, it should provide access to the base class options. -- Public variables are now integrated into the composite option -- list by "itk_initialize". -- --4/2/96 (enhancement) -- Added a "chain" command to the built-ins available in each class. -- A command like "chain 1 2 3" invokes the next implementation of -- the current method/proc found looking up the inheritance hierarchy -- toward base classes. This can be used to invoke a base class method -- in a generic way, without hard-coding the base class name. -- --4/10/96 (bug fix) -- Fixed "configure" operation for mega-widgets. Previously, if an -- error was encountered during configuration, the value in itk_option -- was set back to the previous value, but some parts of the mega-widget -- might be left in a partially configured state. Now, if an error is -- encountered and the option is set back to its previous value, the -- change is propagated down to all parts, so the widget remains in a -- consistent state. -- --4/15/96 (bug fix) -- Fixed a bug reported by Karel Zuiderveld (karel.zuiderveld@cv.ruu.nl) -- related to virtual method selection in "itcl_methods.c". If for some -- reason a method name was not found in the virtual table, the table -- access caused a core dump. This is now fixed. -- --5/13/96 (bug fix) -- Fixed "itk_initialize" to recognize errors when executing the "config" -- code associated with configuration options. Any error immediately -- causes itk_initialize to abort, which usually aborts construction. -- --5/13/96 (bug fix) -- Fixed a bug in Itcl_SaveInterpState() and Itcl_RestoreInterpState() -- which caused error information to get lost during object construction -- when errors were encountered. The new iPtr->appendResult buffer was -- being ignored, and results in this buffer were getting lost. -- --6/1/96 (bug fix) -- Changed the internal Interp and TkWindow data structures so that all -- of the extra [incr Tcl] data members are at the bottom of the structure. -- This should prevent errors when modules that have been compiled against -- vanilla Tcl/Tk are dynamically loaded into [incr Tcl]. -- --6/12/96 (enhancement) -- Integrated changes for "itcl2.0+3" release by Karel Zuiderveld, -- Jan Nijtmans and Vince Darley. This added support for tcl7.5/tk4.1, -- dynamic loading, canvas improvements, and support for Macintosh -- environments. Many thanks to these guys for all of their hard -- work! -- --6/22/96 (installation) -- Changed the way things are installed: -- - the startup file "init.itcl" is now called "itcl.tcl" -- - the startup file "init.itk" is now called "itk.tcl" -- - libraries, include files and man pages are now installed under -- a special "itcl" directory to avoid conflicts with a vanilla -- Tcl/Tk installation. For example, if your --prefix is set -- to /usr/local, things would be installed as follows: -- -- /usr/local/bin ............ executables: -- ish = tclsh with namespaces -- iwish = wish with namespaces -- itclwish = tclsh with namespaces and classes -- itkwish = wish with namespaces and classes -- -- /usr/local/include/itcl ... include files -- /usr/local/lib/itcl ....... libraries -- /usr/local/man/itcl ....... manual pages -- --6/24/96 (bug fix) -- Fixed "itkwish" so that it requires the Iwidgets package automatically -- during initialization. For all other shells, you must specifically -- request Iwidgets with a statement like "package require Iwidgets" -- --6/26/96 (bug fix) -- Fixed Tk_CanvasTagsParseProc to avoid dumping core when an item -- is configured with a null tag string. -- --6/26/96 (bug fix) -- Fixed PolygonToPoint() in tkCanvPoly.c so that invisible polygons -- (with no outline and no fill) are still considered when picking -- the closest item. Without this fix, programs like the "floor plan" -- in the Tk widget demo will not work. -- --6/26/96 (bug fix) -- Fixed the [incr Widgets] "feedback" widget to do a full update on -- each step. Without this, changes appear from time to time, but -- the bar does not grow smoothly. -- --6/26/96 (bug fix) -- Fixed fileselectiondialog and fileselectionbox to update directory -- list properly when "-directory" option is configured. -- --6/28/96 (bug fix) -- Fixed "itk_option define" to properly preserve a "config" code -- body so that it can be released if it is redefined later. -- --========================================================================== -- ------------------------ RELEASE 2.1 - 6/28/96 ------------------------- --========================================================================== -- --7/22/96 (bug fix) -- Fixed C-level variable access so flags like ITCL_FIND_LOCAL_ONLY -- can be passed into Tcl_GetVar() and Tcl_SetVar(). -- --7/25/96 (bug fix) -- Fixed the "notebook" widget in the [incr Widgets] set. The "index" -- method now supports pattern matching and index names with spaces in -- them. -- --8/1/96 (bug fix) -- Fixed destructor invocation so that if an object is being -- destructed and you try to delete it again, it will report an -- error. -- --8/7/96 (bug fix) -- Fixed the "inherit" command to make sure all names are really -- valid classes. Previously, trying to inherit from a proc would -- dump core. -- --8/29/96 (enhancement) -- Integrated with itcl2.1+2 (tcl7.5p1/tk4.1p1). -- --9/1/96 (bug fix) -- Fixed the Itcl_RegisterC() procedure so that the same name can be -- registered more than once, as long as it has the same function -- pointer. -- --9/7/96 (bug fix) -- Fixed a bug in method access for protected methods. There was a -- problem when a base class defined a method, and a derived class -- overloaded the method, and the method was accessed from the base -- class namespace. Added function Itcl_CanAccessMethod() to check -- for overloaded methods and allow access accordingly. -- --9/13/96 (bug fix) -- Fixed the Itcl_RestoreInterpState() procedure so that the "errorCode" -- variable is restored properly. There was a problem when the -- error code contained a list of elements. -- --9/20/96 (bug fix) -- Fixed a bug in the way namespaces were deleted. The hash table of -- child namespaces was being traversed while elements within it were -- being deleted. This caused a core dump when you tried to exit -- the application with a command like "destroy .". -- --9/28/96 (bug fix) -- Fixed the way that errors are reported when a base class is constructed -- with the wrong arguments. Previously, the error message showed the -- object creation command like "wrong # args: should be Foo name val1 val2". -- Now, it shows the base class constructor name, so it is more obvious -- where the error is coming from. -- --10/5/96 (bug fix) -- Fixed a bug in constructor invocations. All base class constructors -- are now invoked properly, even if a derived class does not have a -- constructor. -- --10/9/96 (enhancement) -- Added proper support for safe interpreters. You can now use namespace -- commands in a safe interpreter, and you can load Itcl as a safe package. -- --10/11/96 (bug fix) -- Fixed a core dump with "namespace foo {info locals}". The namespace -- call frame was not being set up properly, so the local variable table -- was garbage. Normally, you don't access local variables at the -- namespace level. But now it is fixed. -- --10/14/96 (bug fix) -- Fixed the Itcl_RegisterC() procedure so that each interpreter has -- its own list of symbolic function names. This avoids global data -- and makes more sense for people using multiple interpreters. -- --10/20/96 (bug fix) -- Fixed variable lookup so that when you try to access a variable -- like "::foo::x" inside of a procedure, you get an error instead -- of a local variable named "::foo::x". Variables like this need -- to be declared global. -- --10/22/96 (enhancement) -- Fixed the built-in "isa" method to autoload class definitions as -- needed for each "isa" test. If a class is not defined and cannot -- be autoloaded, it is an error. -- --10/26/96 (enhancement) -- Fixed "delete object" command so that objects can be deleted -- using scoped values for the object name. -- --10/29/96 (enhancement) -- Integrated with itcl2.1+5 (tcl7.6/tk4.2). -- --11/1/96 (porting) -- Removed "plus" and "dash" patches to allow for porting to Windows95 -- and Macintosh platforms. Simplified configuration and makefiles -- for Unix platforms. -- --11/4/96 (installation) -- Fixed configuration and makefiles to support building in a -- separate directory. There is a bug in "autoconf" which prevents -- this from going smoothly. You have to copy all of the configure -- scripts to a separate tree (e.g., using a tar file), and then build. -- --11/5/96 (bug fix) -- Fixed a bug in the way variables were reported by the built-in -- "info" command for classes and objects. Private variables in -- a base class were incorrectly reported as "". They -- are now reported properly. -- --11/10/96 (bug fix) -- Fixed the "this" variable so that if an object is deleted while it -- is still in use, its name is properly reported as the null string. -- --11/10/96 (bug fix) -- Fixed the way namespaces are deleted so that the "::errorInfo" and -- "::errorCode" variables remain intact until everything else has been -- destroyed. These variables are needed if any errors are encountered -- as an interpreter is being destroyed. -- --11/11/96 (installation) -- Split the "itclConfig.sh" file into separate "itclConfig.sh" and -- "itkConfig.sh" files. -- --11/11/96 (installation) -- Fixed the package installation to conform to tcl7.6/tk4.2. The -- pkgIndex.tcl files are now stored in the library directory for -- each package. -- --11/13/96 (enhancement) -- Overhauled the scrolledcanvas widget. It is now about an order of -- magnitude faster. -- --11/14/96 (enhancement) -- Overhauled the [incr Widgets] "catalog" demo. When you pick any -- mega-widget class, the demo displays an example widget, the code -- used to build it, the class hierarchy, and the man page. -- --11/23/96 (bug fix) -- Fixed the way the "inherit" command autoloads class definitions. -- Previously, it invoked the class name as a command. Now, it uses -- the "auto_load" command. -- --11/23/96 (installation) -- Fixed the "configure" files to use "mkinstalldirs" instead of "mkdir" -- so that the entire distribution can be built in a separate directory -- starting with a single "configure" file. Fixed the way the distribution -- is created to make this patch for each new distribution. -- --11/23/96 (installation) -- Fixed the iwidgets installation so that the installed files (instead -- of the source files) are chmod'd to have the proper permissions. -- --11/29/96 (installation) -- Fixed iwidgets (combobox, optionmenu, shell) so that they don't rely -- on "tkwait visibility" before doing a grab. On the Macintosh, this -- only works the first time a window is mapped. After that, this -- command does not return control, even when a window is remapped. -- --11/30/96 (bug fix) -- Fixed "tk4.2/library/menu.tcl", moving a comment in a switch statement -- above the default case into the default case. When the comment is -- above the case, it is treated as a list element and a parsing error -- occurs. You can trigger the error with a command like "tkMenuFind . x". -- When the comment is inside the case, everything works fine. -- --11/30/96 (bug fix) -- Fixed a memory error that occured when an interpreter was destroyed. -- One namespace (e.g., base class) caused another (e.g., derived class) -- to be destroyed. Then the namespace was destroyed again later on. -- Now, as we iteration through the safeCopy list, we check to make -- sure the namespace still exists. -- --11/30/96 (bug fix) -- Fixed entryfield mega-widget to avoid using the "%s" state field -- for key presses. It was using it to find out whether or not Control, -- Shift, or Alt keys were being held down during a key press. But this -- field confuses Alt with NumLock when you go between Unix and Windows -- platforms. The entryfield appeared to be broken when NumLock was -- turned on. Nothing is lost if we simply ignore it and let all -- keypresses through. -- --12/1/96 (installation) -- Fixed the way that "pkgIndex.tcl" files are built for Itcl/Itk. -- When you build with "--enable-shared", the package files load the -- shared library, but when you build without, the package files -- use {load "" Itcl} to get the static package. This lets you -- do "package require" commands in slave interpreters, even if -- things were built with static packages. -- --12/1/96 (bug fix) -- Fixed how namespaces are deleted when an interpreter is deleted. -- Previously, namespaces were deleted after the assocData for the -- interp. If any background errors occurred while the namespace -- was being deleted, they caused seg faults later on. Now, the -- global namespace is cleared (but not deleted) *before* deleting -- the assocData. Any background errors are deleted, and the global -- namespace is finally deleted at that point. -- --12/2/96 (enhancement) JCI -- Defined "tkOpenDocument" in tk.tcl so that Macintosh users can -- double-click on an [incr Tcl] source file, and itkwish will be -- invoked to execute it. -- --12/2/96 (bug fix) -- Fixed the entryfield widget so that characters like: " [ ] { } \ & -- are substituted properly into the "%c" field when doing character -- validation. -- --12/2/96 (enhancement) **POTENTIAL INCOMPATIBILITY** -- Changed the HTML parsing in the scrolledhtml widget to speed it up. -- Also, changed the "-feedback" option so that it appends two numbers -- on the end of the feedback command: the current position and the -- maximum position. This frees the caller from having to figure out -- the maximum position. -- --12/2/96 (enhancement) -- Added "-borderwidth", "-relief" and "-elementborderwidth" options -- to the feedback widget, so you can control its appearance a little -- better. -- --========================================================================== -- ------------------------ RELEASE 2.2 - 12/3/96 ------------------------- --========================================================================== -- --12/12/96 (installation) -- Fixed "iwidgets.tcl" initialization file to rely on the environment -- variable IWIDGETS_LIBRARY (if it exists), and use the compiled-in -- path as a last resort. That way, the user can override the iwidgets -- library with an environment variable setting. -- --12/12/96 (installation) -- Fixed the "catalog" demo for [incr Widgets] to help support Windows3.1. -- The code is now arranged to make it easy to translate between the -- real demo names and DOS 8.3 file names. -- --12/13/96 (bug fix) -- Added a "usual" test for all of the [incr Widgets]. This checks to -- make sure that there is a bit of "usual" code for each widget, that -- the options in the "usual" code are valid, and that all of the -- widgets mix together without errors. -- --4/11/97 (enhancement) -- Merged in patches for tcl7.6p2/tk4.2p2 (jingham) -- --5/17/97 (bug fix) -- Fixed itk::Toplevel to have the hull keep the -takefocus option. -- This fixed a problem with the tab ring in iwidget dialogs. -- --6/1/98 (complete rewrite) -- Rewrote the entire package to work with Tcl8.0 namespaces and the -- new byte code compiler. -- --========================================================================== -- ----------------------- RELEASE 3.0a1 - 6/16/98 ------------------------ --========================================================================== -- --7/23/98 (bug fix) -- Removed references to Tcl internal macros such as TclDecrRefCount. -- This was causing problems under Windows, since those macros use -- global variables that are not available outside of tcl80.dll. -- --7/23/98 (bug fix) -- Added my own definition of the assert macro. Since Tcl/Tk doesn't -- use assert, the default version was causing build problems with -- gcc. -- --7/27/98 (configuration change) -- Changed all "configure" scripts to rely on tclConfig.sh and tkConfig.sh -- for compile options. -- --7/27/98 (configuration change) -- Changed the initialization process for Itcl/Itk. Both packages now -- key off of tcl_library to find their initialization scripts. -- --7/27/98 (configuration change) -- Removed IWIDGETS_LIBRARY environment variable from the Iwidgets -- package. If Iwidgets is installed properly, this variable is not -- needed. -- --7/29/98 (configuration change) -- Added Scott Stanton's patch to the initialization process. The -- last-ditch installation directory is no longer compiled into the -- itcl sources. Instead, itcl searches for the installation directory -- starting from $tcl_library. Also, if the variable itcl::library is -- set before loading itcl, then itcl aborts the search and uses that -- as its library directory. -- --7/30/98 (Macintosh) -- Added Jim Ingham's patches for the Mac. -- --7/30/98 (configuration) -- Fixed Makefiles for Iwidgets 2.2/3.0 to avoid a problem while -- installing the demo images/html. The INSTALL_DATA program may -- have a relative name (../../config/install-sh) so we must be -- careful to "cd" into library, demos, etc., but not into other -- directories below them. -- --8/8/98 (bug fix) -- Fixed "namespace import" to work with autoloading. If you -- execute "namespace import iwidgets::*", the auto_import proc -- will create stubs for all of the iwidgets commands. Executing -- one of the stubs triggers autoloading for the appropriate command. -- --8/10/98 (bug fix) -- Integrated changes from Scriptics team to work seamlessly with -- Tcl 8.0.3. -- --8/10/98 (bug fix) -- Fixed the iwidgets::optionmenu to work properly under Windows 95/NT. -- Extended the "get" method in iwidgets3.0 so that you can query -- existing elements from an optionmenu. -- --========================================================================== -- ------------------------ RELEASE 3.0 - 8/11/98 ------------------------- --========================================================================== -- --8/16/98 (bug fix) -- Fixed the windows pkgIndex.tcl files for Itcl and Itk to properly -- load their .dll. Also fixed iwidgets/catalog to package require -- Itcl, Itk, and to import ::itcl::* to get "class" defined. (BW) -- --12/21/99 (bug fix) -- Fixed tests for auto_mkindex to work properly outside of itkwish. -- Tests now include "namespace import itcl::*" instead of assuming that -- this behavior is built into the wish. -- --4/18/00 (feature enhancement) -- Fixed itcl::find to find classes and objects in *all* namespaces -- in the interpreter. Until this fix, the itcl::find command would -- report only the objects in the active namespace or the global -- namespace. Being able to find classes/objects in all namespaces -- makes debugging easier. Thanks to Chad Smith for pushing to make -- this change happen. -- --6/26/00 (bug fix) -- Fixed Itcl_ClassVarResolver so that the formal parameters in a -- method/proc take precedence over class data members. -- --6/30/00 (bug fix) -- Fixed all itcl/itk/iwidgets3.0.0 tests to run cleanly with the new -- tcltest package. -- --7/1/00 (bug fix) -- Fixed "itk_component delete" so that the composite option list is -- cleaned up whenever a component is deleted. For example, suppose -- a component is the sole contributor of -font. When that component -- is removed via "itk_component delete", the -font option goes away -- as well. Also fixed the handling of the itk-delete-* binding for -- the component. When the component is removed, the binding tag -- is also removed by itk::remove_destroy_hook. -- --7/5/00 (bug fix) -- Fixed the check done during object creation to avoid clobbering -- existing commands. Previously, itcl would look for any command-- -- in the local *and* global namespace--that might be clobbered. -- Now, it looks for commands only in the local namespace, since -- those are the only ones that could truly be clobbered. -- --7/5/00 (cleanup) -- Removed obsolete Makefile/configure files in the various "unix" -- directories. Makefiles and configure files now reside one level -- above, in the standard TEA place. -- --7/11/00 (stubs cleanup) -- Fix the build so static links do not use the stubs library. -- --8/1/00 (stubs cleanup) -- Added missing declarations for Itcl_InitStubs and Itk_InitStubs -- and simplified how Itcl Stubs are set in Initialize() of itk_cmds.c -- --8/1/00 (Makefile) -- Added config/installFiles.tcl and changed the various Makefile.in -- files to use this instead of install-sh. installFiles.tcl can -- optimize out a copy if the target file is already up-to-date. -- This eliminates conflicts from parallel builds on different platforms -- where one build is zipping up the installed files while another platform -- is copying platform-independent files (i.e., the iwidgets demos). -- --8/4/00 (stubs cleanup) -- Fixed dll linkage problem with the prototypes of the 2 XX_InitStubs -- functions use. I copied the core too literally. Stubs libraries are -- always static, so there's no need to play games with __declspec on -- windows. -- --8/7/00 (stubs cleanup) -- Cleaned up use of Itcl_InitStubs by Itk. Finally got it right after -- much flailing about. itcl.h has the correct definitions, and -- itclStubLib.c has the correct #ifdefs. -- Also nuked extra definitions of itclStubsPtr from the itk_cmds.c file. -- --8/17/00 (more stubs cleanup) -- Tcl_InitStubs in itcl/generic/itcl_cmds.c was using the TCL_VERSION macro -- set by the tcl.h header. Changed it to be "8.1" instead as it doesn't -- matter unless Itcl needs special/new features of the core it's header is -- from. But it doesn't.. so hard code it for an 8.1 minimum to make the -- Itcl library have a better version range with the core as specific -- version tracking with the core isn't needed (at this time). -- --========================================================================== -- ------------------------ RELEASE 3.2 - 08/18/00 ------------------------ --========================================================================== -- --9/22/00 (stubs cleanup) -- Itcl_InitStub prototype in itcl/generic/itcl.h was getting name mangled -- by c++ compilers. Fixed with an 'extern "C"' appropriately applied. -- --4/07/01 (bug fix) -- Tcl's internal header, tclInt.h, in 8.4a2 got a small change in the Command -- structure that needed 2 changes in Itcl to resolve. 1) #if/#else/#endif blocks -- added in itcl_class.c and itc_ensemble.c allowing Itcl to compile. 2) added -- a global variable called itclCompatFlags that's sets a flag in Itcl_Init() -- that will modify the logic around access to cmdPtr->flags/deleted. This -- way, any core compile will yield a fully forward/backward compatible -- binary (correct logic set at runtime). -- --5/22/01 (bug fixes) -- makefile.vc lives again! Brought back from it's death to conquere windows -- once again for users who prefer to avoid (or can't understand or get the tools -- installed for) the TEA build system. -- -- Also, numerous fixes relating to Kevin Kenny's Tcl API mods for better CONST -- support. The latest headers for Tcl where throwing warnings all over the place -- about type errors. I fixed the sources, but haven't checked against older -- headers yet. -\ No newline at end of file -diff -Naur insight-6.8.orig/itcl/config/config.guess insight-6.8.new/itcl/config/config.guess ---- insight-6.8.orig/itcl/config/config.guess 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/config/config.guess 1970-01-01 01:00:00.000000000 +0100 -@@ -1,483 +0,0 @@ --#!/bin/sh --# Attempt to guess a canonical system name. --# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. --# --# 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., 675 Mass Ave, Cambridge, MA 02139, 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. -- --# Written by Per Bothner . --# The master version of this file is at the FSF in /home/gd/gnu/lib. --# --# 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 system type (host/target name). --# --# Only a few systems have been added to this list; please add others --# (but try to keep the structure clean). --# -- --# This is needed to find uname on a Pyramid OSx when run in the BSD universe. --# (ghazi@noc.rutgers.edu 8/24/94.) --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 -- --trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15 -- --# Note: order is significant - the case branches are not exclusive. -- --case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in -- alpha:OSF1:V*:*) -- # After 1.2, OSF1 uses "V1.3" for uname -r. -- echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'` -- exit 0 ;; -- alpha:OSF1:*:*) -- # 1.2 uses "1.2" for uname -r. -- echo alpha-dec-osf${UNAME_RELEASE} -- exit 0 ;; -- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) -- echo arm-acorn-riscix${UNAME_RELEASE} -- exit 0;; -- Pyramid*:OSx*:*:*) -- if test "`(/bin/universe) 2>/dev/null`" = att ; then -- echo pyramid-pyramid-sysv3 -- else -- echo pyramid-pyramid-bsd -- fi -- exit 0 ;; -- i86pc:SunOS:5.*:*) -- echo i486-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -- sun4*:SunOS:5.*:*) -- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -- 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 0 ;; -- sun4*:SunOS:*:*) -- # Japanese Language versions have a version number like `4.1.3-JL'. -- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` -- exit 0 ;; -- sun3*:SunOS:*:*) -- echo m68k-sun-sunos${UNAME_RELEASE} -- exit 0 ;; -- tp_s2*:SunOS:*:*) -- # Tadpole Sparcbook 2 running a modified 4.1.3 -- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` -- exit 0 ;; -- RISC*:ULTRIX:*:*) -- echo mips-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -- VAX*:ULTRIX*:*:*) -- echo vax-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -- mips:*:5*:RISCos) -- echo mips-mips-riscos${UNAME_RELEASE} -- exit 0 ;; -- m88k:CX/UX:7*:*) -- echo m88k-harris-cxux7 -- exit 0 ;; -- m88k:*:4*:R4*) -- echo m88k-motorola-sysv4 -- exit 0 ;; -- m88k:*:3*:R3*) -- echo m88k-motorola-sysv3 -- exit 0 ;; -- AViiON:dgux:*:*) -- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ -- -o ${TARGET_BINARY_INTERFACE}x = x ] ; then -- echo m88k-dg-dgux${UNAME_RELEASE} -- else -- echo m88k-dg-dguxbcs${UNAME_RELEASE} -- fi -- exit 0 ;; -- M88*:DolphinOS:*:*) # DolphinOS (SVR3) -- echo m88k-dolphin-sysv3 -- exit 0 ;; -- M88*:*:R3*:*) -- # Delta 88k system running SVR3 -- echo m88k-motorola-sysv3 -- exit 0 ;; -- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) -- echo m88k-tektronix-sysv3 -- exit 0 ;; -- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) -- echo m68k-tektronix-bsd -- exit 0 ;; -- *:IRIX:*:*) -- echo mips-sgi-irix${UNAME_RELEASE} -- exit 0 ;; -- i[34]86:AIX:*:*) -- echo i386-ibm-aix -- exit 0 ;; -- *:AIX:2:3) -- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then -- sed 's/^ //' << EOF >dummy.c -- #include -- -- main() -- { -- if (!__power_pc()) -- exit(1); -- puts("powerpc-ibm-aix3.2.5"); -- exit(0); -- } --EOF -- ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 -- rm -f dummy.c dummy -- echo rs6000-ibm-aix3.2.5 -- 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 0 ;; -- *:AIX:*:4) -- if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then -- IBM_ARCH=rs6000 -- else -- IBM_ARCH=powerpc -- fi -- if grep bos410 /usr/include/stdio.h >/dev/null 2>&1; then -- IBM_REV=4.1 -- elif grep bos411 /usr/include/stdio.h >/dev/null 2>&1; then -- IBM_REV=4.1.1 -- else -- IBM_REV=4.${UNAME_RELEASE} -- fi -- echo ${IBM_ARCH}-ibm-aix${IBM_REV} -- exit 0 ;; -- *:AIX:*:*) -- echo rs6000-ibm-aix -- exit 0 ;; -- *:BOSX:*:*) -- echo rs6000-bull-bosx -- exit 0 ;; -- DPX/2?00:B.O.S.:*:*) -- echo m68k-bull-sysv3 -- exit 0 ;; -- 9000/[34]??:4.3bsd:1.*:*) -- echo m68k-hp-bsd -- exit 0 ;; -- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) -- echo m68k-hp-bsd4.4 -- exit 0 ;; -- 9000/[3478]??:HP-UX:*:*) -- case "${UNAME_MACHINE}" in -- 9000/31? ) HP_ARCH=m68000 ;; -- 9000/[34]?? ) HP_ARCH=m68k ;; -- 9000/7?? | 9000/8?7 ) HP_ARCH=hppa1.1 ;; -- 9000/8?? ) HP_ARCH=hppa1.0 ;; -- esac -- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` -- echo ${HP_ARCH}-hp-hpux${HPUX_REV} -- exit 0 ;; -- 3050*:HI-UX:*:*) -- sed 's/^ //' << EOF >dummy.c -- #include -- 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-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 -- rm -f dummy.c dummy -- echo unknown-hitachi-hiuxwe2 -- exit 0 ;; -- 9000/7??:4.3bsd:*:* | 9000/8?7:4.3bsd:*:* ) -- echo hppa1.1-hp-bsd -- exit 0 ;; -- 9000/8??:4.3bsd:*:*) -- echo hppa1.0-hp-bsd -- exit 0 ;; -- hp7??:OSF1:*:* | hp8?7:OSF1:*:* ) -- echo hppa1.1-hp-osf -- exit 0 ;; -- hp8??:OSF1:*:*) -- echo hppa1.0-hp-osf -- exit 0 ;; -- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) -- echo c1-convex-bsd -- exit 0 ;; -- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) -- if getsysinfo -f scalar_acc -- then echo c32-convex-bsd -- else echo c2-convex-bsd -- fi -- exit 0 ;; -- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) -- echo c34-convex-bsd -- exit 0 ;; -- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) -- echo c38-convex-bsd -- exit 0 ;; -- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) -- echo c4-convex-bsd -- exit 0 ;; -- CRAY*X-MP:UNICOS:*:*) -- echo xmp-cray-unicos -- exit 0 ;; -- CRAY*Y-MP:UNICOS:*:*) -- echo ymp-cray-unicos -- exit 0 ;; -- CRAY-2:UNICOS:*:*) -- echo cray2-cray-unicos -- exit 0 ;; -- hp3[0-9][05]:NetBSD:*:*) -- echo m68k-hp-netbsd${UNAME_RELEASE} -- exit 0 ;; -- i[34]86:BSD/386:*:*) -- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -- i[34]86:BSD/OS:*:*) -- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -- *:FreeBSD:*:*) -- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` -- exit 0 ;; -- *:NetBSD:*:*) -- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` -- exit 0 ;; -- *:GNU:*:*) -- echo `echo ${UNAME_MACHINE}|sed -e 's,/.*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` -- exit 0 ;; -- *:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux -- exit 0 ;; --# 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. -- i[34]86:DYNIX/ptx:4*:*) -- echo i386-sequent-sysv4 -- exit 0 ;; -- i[34]86:*:4.*:* | i[34]86:SYSTEM_V:4.*:*) -- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then -- echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} -- else -- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE} -- fi -- exit 0 ;; -- i[34]86:*:3.2:*) -- if /bin/uname -X 2>/dev/null >/dev/null ; then -- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` -- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 -- echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL -- elif test -f /usr/options/cb.name; then -- UNAME_REL=`sed -n 's/.*Version //p' /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 0 ;; -- mini*:CTIX:SYS*5:*) -- # "miniframe" -- echo m68010-convergent-sysv -- exit 0 ;; -- M680[234]0:*:R3V[567]*:*) -- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; -- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0) -- uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4.3 && exit 0 ;; -- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) -- uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4 && exit 0 ;; -- m680[234]0:LynxOS:2.2*:*) -- echo m68k-lynx-lynxos${UNAME_RELEASE} -- exit 0 ;; -- PowerPC:LynxOS:2.2*:*) -- echo powerpc-lynx-lynxos${UNAME_RELEASE} -- exit 0 ;; -- mc68030:UNIX_System_V:4.*:*) -- echo m68k-atari-sysv4 -- exit 0 ;; -- i[34]86:LynxOS:2.2*:*) -- echo i386-lynx-lynxos${UNAME_RELEASE} -- exit 0 ;; -- TSUNAMI:LynxOS:2.2*:*) -- echo sparc-lynx-lynxos${UNAME_RELEASE} -- exit 0 ;; -- rs6000:LynxOS:2.2*:*) -- echo rs6000-lynx-lynxos${UNAME_RELEASE} -- exit 0 ;; -- RM*:SINIX-*:*:*) -- echo mips-sni-sysv4 -- exit 0 ;; -- *: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 0 ;; --esac -- --#echo '(No uname command or uname output not recognized.)' 1>&2 --#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 -- --cat >dummy.c </dev/null`; -- printf ("%s-next-nextstep%s\n", __ARCHITECTURE__, version==2 ? "2" : "3"); -- 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-unknown-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_) -- printf ("i386-sequent-ptx\n"); exit (0); --#endif -- --#if defined (vax) --#if !defined (ultrix) -- printf ("vax-dec-bsd\n"); exit (0); --#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-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0 --rm -f dummy.c dummy -- --# Apollos put the system type in the environment. -- --test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } -- --# 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 0 ;; -- c2*) -- if getsysinfo -f scalar_acc -- then echo c32-convex-bsd -- else echo c2-convex-bsd -- fi -- exit 0 ;; -- c34*) -- echo c34-convex-bsd -- exit 0 ;; -- c38*) -- echo c38-convex-bsd -- exit 0 ;; -- c4*) -- echo c4-convex-bsd -- exit 0 ;; -- esac --fi -- --#echo '(Unable to guess system type)' 1>&2 -- --exit 1 -diff -Naur insight-6.8.orig/itcl/config/config.sub insight-6.8.new/itcl/config/config.sub ---- insight-6.8.orig/itcl/config/config.sub 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/config/config.sub 1970-01-01 01:00:00.000000000 +0100 -@@ -1,793 +0,0 @@ --#!/bin/sh --# Configuration validation subroutine script, version 1.1. --# Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc. --# 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., 675 Mass Ave, Cambridge, MA 02139, 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. -- --# 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 --# It is wrong to echo any other type of specification. -- --# First pass through any local machine types. --case $1 in -- *local*) -- echo $1 -- exit 0 -- ;; -- *) -- ;; --esac -- --# Separate what the user gave into CPU-COMPANY and OS (if any). --basic_machine=`echo $1 | sed 's/-[^-]*$//'` --if [ $basic_machine != $1 ] --then os=`echo $1 | sed 's/.*-/-/'` --else os=; fi -- --### 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 ) -- os= -- basic_machine=$1 -- ;; -- -hiux*) -- os=-hiuxwe2 -- ;; -- -sco4) -- os=-sco3.2v4 -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -sco3.2.[4-9]*) -- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -sco3.2v[4-9]*) -- # Don't forget version if it is 3.2v4 or newer. -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -sco*) -- os=-sco3.2v2 -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -isc) -- os=-isc2.2 -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -clix*) -- basic_machine=clipper-intergraph -- ;; -- -isc*) -- basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` -- ;; -- -lynx) -- os=-lynxos -- ;; -- -ptx*) -- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` -- ;; -- -windowsnt*) -- os=`echo $os | sed -e 's/windowsnt/winnt/'` -- ;; --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. -- tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm | pyramid \ -- | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \ -- | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \ -- | powerpc | sparc64 | 1750a | dsp16xx | mips64 | mipsel \ -- | pdp11 | mips64el | mips64orion | mips64orionel ) -- basic_machine=$basic_machine-unknown -- ;; -- # 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. -- vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \ -- | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \ -- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ -- | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \ -- | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \ -- | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \ -- | pdp11-* | sh-* | powerpc-* | sparc64-* | mips64-* | mipsel-* \ -- | mips64el-* | mips64orion-* | mips64orionel-* ) -- ;; -- # Recognize the various machine names and aliases which stand -- # for a CPU type and a company and sometimes even an OS. -- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) -- basic_machine=m68000-att -- ;; -- 3b*) -- basic_machine=we32k-att -- ;; -- alliant | fx80) -- basic_machine=fx80-alliant -- ;; -- altos | altos3068) -- basic_machine=m68k-altos -- ;; -- am29k) -- basic_machine=a29k-none -- os=-bsd -- ;; -- amdahl) -- basic_machine=580-amdahl -- os=-sysv -- ;; -- amiga | amiga-*) -- basic_machine=m68k-cbm -- ;; -- amigados) -- basic_machine=m68k-cbm -- os=-amigados -- ;; -- amigaunix | amix) -- basic_machine=m68k-cbm -- os=-sysv4 -- ;; -- apollo68) -- basic_machine=m68k-apollo -- os=-sysv -- ;; -- balance) -- basic_machine=ns32k-sequent -- os=-dynix -- ;; -- 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 | ymp) -- basic_machine=ymp-cray -- os=-unicos -- ;; -- cray2) -- basic_machine=cray2-cray -- os=-unicos -- ;; -- crds | unos) -- basic_machine=m68k-crds -- ;; -- da30 | da30-*) -- basic_machine=m68k-da30 -- ;; -- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) -- basic_machine=mips-dec -- ;; -- delta | 3300 | motorola-3300 | motorola-delta \ -- | 3300-motorola | delta-motorola) -- basic_machine=m68k-motorola -- ;; -- delta88) -- basic_machine=m88k-motorola -- os=-sysv3 -- ;; -- 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 -- ;; -- fx2800) -- basic_machine=i860-alliant -- ;; -- genix) -- basic_machine=ns32k-ns -- ;; -- gmicro) -- basic_machine=tron-gmicro -- os=-sysv -- ;; -- h3050r* | hiux*) -- basic_machine=hppa1.1-hitachi -- os=-hiuxwe2 -- ;; -- h8300hms) -- basic_machine=h8300-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 -- ;; -- hp9k2[0-9][0-9] | hp9k31[0-9]) -- basic_machine=m68000-hp -- ;; -- hp9k3[2-9][0-9]) -- basic_machine=m68k-hp -- ;; -- hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) -- basic_machine=hppa1.1-hp -- ;; -- hp9k8[0-9][0-9] | hp8[0-9][0-9]) -- basic_machine=hppa1.0-hp -- ;; -- i370-ibm* | ibm*) -- basic_machine=i370-ibm -- os=-mvs -- ;; --# I'm not sure what "Sysv32" means. Should this be sysv3.2? -- i[345]86v32) -- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` -- os=-sysv32 -- ;; -- i[345]86v4*) -- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` -- os=-sysv4 -- ;; -- i[345]86v) -- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` -- os=-sysv -- ;; -- i[345]86sol2) -- basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` -- os=-solaris2 -- ;; -- iris | iris4d) -- basic_machine=mips-sgi -- case $os in -- -irix*) -- ;; -- *) -- os=-irix4 -- ;; -- esac -- ;; -- isi68 | isi) -- basic_machine=m68k-isi -- os=-sysv -- ;; -- m88k-omron*) -- basic_machine=m88k-omron -- ;; -- magnum | m3230) -- basic_machine=mips-mips -- os=-sysv -- ;; -- merlin) -- basic_machine=ns32k-utek -- os=-sysv -- ;; -- miniframe) -- basic_machine=m68000-convergent -- ;; -- mips3*-*) -- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` -- ;; -- mips3*) -- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown -- ;; -- ncr3000) -- basic_machine=i486-ncr -- os=-sysv4 -- ;; -- 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 -- ;; -- 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 -- ;; -- np1) -- basic_machine=np1-gould -- ;; -- pa-hitachi) -- basic_machine=hppa1.1-hitachi -- os=-hiuxwe2 -- ;; -- paragon) -- basic_machine=i860-intel -- os=-osf -- ;; -- pbd) -- basic_machine=sparc-tti -- ;; -- pbb) -- basic_machine=m68k-tti -- ;; -- pc532 | pc532-*) -- basic_machine=ns32k-pc532 -- ;; -- pentium-*) -- # We will change tis to say i586 once there has been -- # time for various packages to start to recognize that. -- basic_machine=i486-`echo $basic_machine | sed 's/^[^-]*-//'` -- ;; -- pn) -- basic_machine=pn-gould -- ;; -- ps2) -- basic_machine=i386-ibm -- ;; -- rtpc | rtpc-*) -- basic_machine=romp-ibm -- ;; -- sequent) -- basic_machine=i386-sequent -- ;; -- sh) -- basic_machine=sh-hitachi -- os=-hms -- ;; -- sps7) -- basic_machine=m68k-bull -- os=-sysv2 -- ;; -- spur) -- basic_machine=spur-unknown -- ;; -- 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 -- ;; -- sun3 | sun3-*) -- basic_machine=m68k-sun -- ;; -- sun4) -- basic_machine=sparc-sun -- ;; -- sun386 | sun386i | roadrunner) -- basic_machine=i386-sun -- ;; -- symmetry) -- basic_machine=i386-sequent -- os=-dynix -- ;; -- tower | tower-32) -- basic_machine=m68k-ncr -- ;; -- ultra3) -- basic_machine=a29k-nyu -- os=-sym1 -- ;; -- vaxv) -- basic_machine=vax-dec -- os=-sysv -- ;; -- vms) -- basic_machine=vax-dec -- os=-vms -- ;; -- vxworks960) -- basic_machine=i960-wrs -- os=-vxworks -- ;; -- vxworks68) -- basic_machine=m68k-wrs -- os=-vxworks -- ;; -- xmp) -- basic_machine=xmp-cray -- os=-unicos -- ;; -- xps | xps100) -- basic_machine=xps100-honeywell -- ;; -- 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. -- mips) -- basic_machine=mips-mips -- ;; -- romp) -- basic_machine=romp-ibm -- ;; -- rs6000) -- basic_machine=rs6000-ibm -- ;; -- vax) -- basic_machine=vax-dec -- ;; -- pdp11) -- basic_machine=pdp11-dec -- ;; -- we32k) -- basic_machine=we32k-att -- ;; -- sparc) -- basic_machine=sparc-sun -- ;; -- cydra) -- basic_machine=cydra-cydrome -- ;; -- orion) -- basic_machine=orion-highlevel -- ;; -- orion105) -- basic_machine=clipper-highlevel -- ;; -- *) -- 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 -- # -solaris* is a basic system type, with this one exception. -- -solaris1 | -solaris1.*) -- os=`echo $os | sed -e 's|solaris1|sunos4|'` -- ;; -- -solaris) -- os=-solaris2 -- ;; -- -gnu/linux*) -- os=`echo $os | sed -e 's|gnu/linux|linux|'` -- ;; -- # 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[345]* \ -- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ -- | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \ -- | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \ -- | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \ -- | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \ -- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \ -- | -ptx* | -coff* | -winnt*) -- ;; -- -sunos5*) -- os=`echo $os | sed -e 's|sunos5|solaris2|'` -- ;; -- -sunos6*) -- os=`echo $os | sed -e 's|sunos6|solaris3|'` -- ;; -- -osfrose*) -- os=-osfrose -- ;; -- -osf*) -- os=-osf -- ;; -- -utek*) -- os=-bsd -- ;; -- -dynix*) -- os=-bsd -- ;; -- -acis*) -- os=-aos -- ;; -- -ctix* | -uts*) -- os=-sysv -- ;; -- -triton*) -- os=-sysv3 -- ;; -- -oss*) -- os=-sysv3 -- ;; -- -svr4) -- os=-sysv4 -- ;; -- -svr3) -- os=-sysv3 -- ;; -- -sysvr4) -- os=-sysv4 -- ;; -- # This must come after -sysvr4. -- -sysv*) -- ;; -- -xenix) -- os=-xenix -- ;; -- -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 -- *-acorn) -- os=-riscix1.2 -- ;; -- pdp11-*) -- os=-none -- ;; -- *-dec | vax-*) -- os=-ultrix4.2 -- ;; -- i386-sun) -- os=-sunos4.0.2 -- ;; -- m68000-sun) -- os=-sunos3 -- # This also exists in the configure program, but was not the -- # default. -- # os=-sunos4 -- ;; -- *-tti) # must be before sparc entry or we get the wrong os. -- os=-sysv3 -- ;; -- sparc-* | *-sun) -- os=-sunos4.1.1 -- ;; -- *-ibm) -- os=-aix -- ;; -- *-hp) -- os=-hpux -- ;; -- *-hitachi) -- os=-hiux -- ;; -- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) -- os=-sysv -- ;; -- *-cbm) -- os=-amigados -- ;; -- *-dg) -- os=-dgux -- ;; -- *-dolphin) -- os=-sysv3 -- ;; -- m68k-ccur) -- os=-rtu -- ;; -- m88k-omron*) -- os=-luna -- ;; -- *-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 -- ;; -- *-masscomp) -- os=-rtu -- ;; -- *) -- 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 -- ;; -- -lynxos*) -- vendor=lynx -- ;; -- -aix*) -- vendor=ibm -- ;; -- -hpux*) -- vendor=hp -- ;; -- -hiux*) -- vendor=hitachi -- ;; -- -unos*) -- vendor=crds -- ;; -- -dgux*) -- vendor=dg -- ;; -- -luna*) -- vendor=omron -- ;; -- -genix*) -- vendor=ns -- ;; -- -mvs*) -- vendor=ibm -- ;; -- -ptx*) -- vendor=sequent -- ;; -- esac -- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` -- ;; --esac -- --echo $basic_machine$os -diff -Naur insight-6.8.orig/itcl/config/installFile.tcl insight-6.8.new/itcl/config/installFile.tcl ---- insight-6.8.orig/itcl/config/installFile.tcl 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/config/installFile.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,119 +0,0 @@ --#!/bin/sh --# --# installFile.tcl - a Tcl version of install-sh --# that copies a file and preserves its permission bits. --# This also optimizes out installation of existing files --# that have the same size and time stamp as the source. --# --# \ --exec tclsh8.3 "$0" ${1+"$@"} -- --set doCopy 0 ;# Rename files instead of copy --set doStrip 0 ;# Strip the symbols from installed copy --set verbose 0 --set src "" --set dst "" -- --# Process command line arguments, compatible with install-sh -- --for {set i 0} {$i < $argc} {incr i} { -- set arg [lindex $argv $i] -- switch -- $arg { -- -c { -- set doCopy 1 -- } -- -m { -- incr i -- # Assume UNIX standard "644", etc, so force Tcl to think octal -- set permissions 0[lindex $argv $i] -- } -- -o { -- incr i -- set owner [lindex $argv $i] -- } -- -g { -- incr i -- set group [lindex $argv $i] -- } -- -s { -- set doStrip 1 -- } -- -v { -- set verbose 1 -- } -- default { -- set src $arg -- incr i -- set dst [lindex $argv $i] -- break -- } -- } --} --if {[string length $src] == 0} { -- puts stderr "$argv0: no input file specified" -- exit 1 --} --if {[string length $dst] == 0} { -- puts stderr "$argv0: no destination file specified" -- exit 1 --} -- --# Compatibility with CYGNUS-style pathnames --regsub {^/(cygdrive)?/(.)/(.*)} $src {\2:/\3} src --regsub {^/(cygdrive)?/(.)/(.*)} $dst {\2:/\3} dst -- --if {$verbose && $doStrip} { -- puts stderr "Ignoring -s (strip) option for $dst" --} --if {[file isdirectory $dst]} { -- set dst [file join $dst [file tail $src]] --} -- --# Temporary file name -- --set dsttmp [file join [file dirname $dst] #inst.[pid]#] -- --# Optimize out install if the file already exists -- --set actions "" --if {[file exists $dst] && -- ([file mtime $src] == [file mtime $dst]) && -- ([file size $src] == [file size $dst])} { -- -- # Looks like the same file, so don't bother to copy. -- # Set dsttmp in case we still need to tweak mode, group, etc. -- -- set dsttmp $dst -- lappend actions "already installed" --} else { -- file copy -force $src $dsttmp -- lappend actions copied --} -- --# At this point "$dsttmp" is installed, but might not have the --# right permissions and may need to be renamed. -- -- --foreach attrName {owner group permissions} { -- upvar 0 $attrName attr -- -- if {[info exists attr]} { -- if {![catch {file attributes $dsttmp -$attrName} dstattr]} { -- -- # This system supports "$attrName" kind of attributes -- -- if {($attr != $dstattr)} { -- file attributes $dsttmp -$attrName $attr -- lappend actions "set $attrName to $attr" -- } -- } -- } --} -- --if {[string compare $dst $dsttmp] != 0} { -- file rename -force $dsttmp $dst --} --if {$verbose} { -- puts stderr "$dst: [join $actions ", "]" --} --exit 0 -diff -Naur insight-6.8.orig/itcl/config/install-sh insight-6.8.new/itcl/config/install-sh ---- insight-6.8.orig/itcl/config/install-sh 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/config/install-sh 1970-01-01 01:00:00.000000000 +0100 -@@ -1,119 +0,0 @@ --#!/bin/sh -- --# --# install - install a program, script, or datafile --# This comes from X11R5; it is not part of GNU. --# --# $XConsortium: install.sh,v 1.2 89/12/18 14:47:22 jim Exp $ --# --# This script is compatible with the BSD install script, but was written --# from scratch. --# -- -- --# 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}" -- --instcmd="$mvprog" --chmodcmd="" --chowncmd="" --chgrpcmd="" --stripcmd="" --rmcmd="$rmprog -f" --mvcmd="$mvprog -f" --src="" --dst="" -- --while [ x"$1" != x ]; do -- case $1 in -- -c) instcmd="$cpprog" -- shift -- continue;; -- -- -m) chmodcmd="$chmodprog $2" -- shift -- shift -- continue;; -- -- -o) chowncmd="$chownprog $2" -- shift -- shift -- continue;; -- -- -g) chgrpcmd="$chgrpprog $2" -- shift -- shift -- continue;; -- -- -s) stripcmd="$stripprog" -- shift -- continue;; -- -- *) if [ x"$src" = x ] -- then -- src=$1 -- else -- dst=$1 -- fi -- shift -- continue;; -- esac --done -- --if [ x"$src" = x ] --then -- echo "install: no input file specified" -- exit 1 --fi -- --if [ x"$dst" = x ] --then -- echo "install: no destination specified" -- exit 1 --fi -- -- --# If destination is a directory, append the input filename; if your system --# does not like double slashes in filenames, you may need to add some logic -- --if [ -d $dst ] --then -- dst="$dst"/`basename $src` --fi -- --# Make a temp file name in the proper directory. -- --dstdir=`dirname $dst` --dsttmp=$dstdir/#inst.$$# -- --# Move or copy the file name to the temp name -- --$doit $instcmd $src $dsttmp -- --# and set any options; do chmod last to preserve setuid bits -- --if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; fi --if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; fi --if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; fi --if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; fi -- --# Now rename the file to the real destination. -- --$doit $rmcmd $dst --$doit $mvcmd $dsttmp $dst -- -- --exit 0 -diff -Naur insight-6.8.orig/itcl/config/mkinstalldirs insight-6.8.new/itcl/config/mkinstalldirs ---- insight-6.8.orig/itcl/config/mkinstalldirs 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/config/mkinstalldirs 1970-01-01 01:00:00.000000000 +0100 -@@ -1,32 +0,0 @@ --#! /bin/sh --# mkinstalldirs --- make directory hierarchy --# Author: Noah Friedman --# Created: 1993-05-16 --# Last modified: 1994-03-25 --# Public domain -- --errstatus=0 -- --for file in ${1+"$@"} ; do -- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` -- shift -- -- pathcomp= -- for d in ${1+"$@"} ; do -- pathcomp="$pathcomp$d" -- case "$pathcomp" in -- -* ) pathcomp=./$pathcomp ;; -- esac -- -- if test ! -d "$pathcomp"; then -- echo "mkdir $pathcomp" 1>&2 -- mkdir "$pathcomp" || errstatus=$? -- fi -- -- pathcomp="$pathcomp/" -- done --done -- --exit $errstatus -- --# mkinstalldirs ends here -diff -Naur insight-6.8.orig/itcl/configure insight-6.8.new/itcl/configure ---- insight-6.8.orig/itcl/configure 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/configure 2008-08-18 18:56:39.000000000 +0200 -@@ -1,25 +1,54 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.59. -+# Generated by GNU Autoconf 2.61. - # --# Copyright (C) 2003 Free Software Foundation, Inc. -+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -+# 2002, 2003, 2004, 2005, 2006 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 Bourne compatible -+# 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=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix -+ 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 -+ -+# 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=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh - fi --DUALCASE=1; export DUALCASE # for MKS sh - - # Support unset when possible. - if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -@@ -29,8 +58,43 @@ - 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.) -+as_nl=' -+' -+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 -+ 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. --$as_unset ENV MAIL MAILPATH -+for as_var in ENV MAIL MAILPATH -+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -+done - PS1='$ ' - PS2='> ' - PS4='+ ' -@@ -44,18 +108,19 @@ - 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 -+ ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi - done - - # Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; then -+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 -+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename - else - as_basename=false -@@ -63,157 +128,388 @@ - - - # Name of the executable. --as_me=`$as_basename "$0" || -+as_me=`$as_basename -- "$0" || - $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)$' \| \ -- . : '\(.\)' 2>/dev/null || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\/\)$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\).*/{ -+ s//\1/ -+ q -+ } -+ s/.*/./; q'` - -+# CDPATH. -+$as_unset CDPATH - --# PATH needs CR, and LINENO needs CR and PATH. --# 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 - --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh -+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 - -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 -+if as_func_ret_success; then -+ : -+else -+ exitcode=1 -+ echo as_func_ret_success failed. -+fi - -- ;; -- 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 -- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -+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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -+ case $as_dir in - /*) -- if ("$as_dir/$as_base" -c ' -+ 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=: -+ # 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 -+ -+ -+: -+_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=: -+ # 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 -+ -+ -+: -+(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 -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -+ 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 autoconf@gnu.org about your system, -+ echo including any error possibly output before this -+ echo message -+} -+ -+ -+ -+ 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, and appends trailing '-' during -- # substitution so that $LINENO is not a special case at line end. -+ # 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -+ # 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 -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ :loop -+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -+ s/-\n.*// - ' >$as_me.lineno && -- chmod +x $as_me.lineno || -+ chmod +x "$as_me.lineno" || - { 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 sensible to this). -- . ./$as_me.lineno -+ # original and so on. Autoconf is especially sensitive to this). -+ . "./$as_me.lineno" - # Exit status is that of the last command. - exit - } - - --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+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; then -+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 -+fi - echo >conf$$.file - if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -+ 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' -- else -- as_ln_s='ln -s' -- fi - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi --rm -f conf$$ conf$$.exe conf$$.file -+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=: -@@ -222,7 +518,28 @@ - as_mkdir_p=false - fi - --as_executable_p="test -f" -+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'" -@@ -231,39 +548,27 @@ - as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH - -+exec 7<&0 &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` - --exec 6>&1 -- - # - # 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} - --# Maximum number of lines to put in a shell here document. --# This variable seems obsolete. It should probably be removed, and --# only ac_max_sed_lines should be used. --: ${ac_max_here_lines=38} -- - # Identity of this package. - PACKAGE_NAME= - PACKAGE_TARNAME= -@@ -272,11 +577,84 @@ - PACKAGE_BUGREPORT= - - ac_unique_file="itcl/generic/itcl.h" --ac_default_prefix=/usr/local --ac_subdirs_all="$ac_subdirs_all itcl itk" --ac_subdirs_all="$ac_subdirs_all iwidgets" --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 datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os SET_MAKE ac_prefix_program subdirs LIBOBJS LTLIBOBJS' -+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 -+MAINTAINER_MODE_TRUE -+MAINTAINER_MODE_FALSE -+MAINT -+build -+build_cpu -+build_vendor -+build_os -+host -+host_cpu -+host_vendor -+host_os -+subdirs -+LIBOBJS -+LTLIBOBJS' - ac_subst_files='' -+ ac_precious_vars='build_alias -+host_alias -+target_alias' -+ac_subdirs_all='itcl itk iwidgets' - - # Initialize some variables set by options. - ac_init_help= -@@ -303,34 +681,48 @@ - # 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' --datadir='${prefix}/share' -+datarootdir='${prefix}/share' -+datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' --libdir='${exec_prefix}/lib' - includedir='${prefix}/include' - oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -+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" -+ eval $ac_prev=\$ac_option - ac_prev= - continue - fi - -- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` -+ 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_option in -+ case $ac_dashdash$ac_option in -+ --) -+ ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; -@@ -352,33 +744,45 @@ - --config-cache | -C) - cache_file=config.cache ;; - -- -datadir | --datadir | --datadi | --datad | --data | --dat | --da) -+ -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; -- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ -- | --da=*) -+ -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_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- eval "enable_$ac_feature=no" ;; -+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` -+ eval enable_$ac_feature=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_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "enable_$ac_feature='$ac_optarg'" ;; -+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` -+ eval enable_$ac_feature=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ -@@ -405,6 +809,12 @@ - -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 ;; -@@ -429,13 +839,16 @@ - | --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 | --local | --loca | --loc | --lo) -+ | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ -- | --localstate=* | --localstat=* | --localsta=* | --localst=* \ -- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) -+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) -@@ -500,6 +913,16 @@ - | --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 ;; -@@ -552,24 +975,20 @@ - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package| sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "with_$ac_package='$ac_optarg'" ;; -+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'` -+ eval with_$ac_package=\$ac_optarg ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package | sed 's/-/_/g'` -- eval "with_$ac_package=no" ;; -+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'` -+ eval with_$ac_package=no ;; - - --x) - # Obsolete; use --with-x. -@@ -600,8 +1019,7 @@ - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } -- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` -- eval "$ac_envvar='$ac_optarg'" -+ eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) -@@ -621,27 +1039,19 @@ - { (exit 1); exit 1; }; } - fi - --# Be sure to have absolute paths. --for ac_var in exec_prefix prefix --do -- eval ac_val=$`echo $ac_var` -- case $ac_val in -- [\\/$]* | ?:[\\/]* | NONE | '' ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -- esac --done -- --# Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -- localstatedir libdir includedir oldincludedir infodir mandir -+# Be sure to have absolute directory names. -+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=$`echo $ac_var` -+ eval ac_val=\$$ac_var - case $ac_val in -- [\\/$]* | ?:[\\/]* ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -+ [\\/$]* | ?:[\\/]* ) 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 -+ { (exit 1); exit 1; }; } - done - - # There might be people who depend on the old broken behavior: `$host' -@@ -668,54 +1078,76 @@ - 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 -+ { (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 -+ { (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 its parent. -- ac_confdir=`(dirname "$0") 2>/dev/null || -+ # 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 || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X"$0" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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 -+ if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi - else - ac_srcdir_defaulted=no - fi --if test ! -r $srcdir/$ac_unique_file; then -- if test "$ac_srcdir_defaulted" = yes; then -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 -- { (exit 1); exit 1; }; } -- else -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 -- { (exit 1); exit 1; }; } -- fi --fi --(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || -- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 -- { (exit 1); exit 1; }; } --srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` --ac_env_build_alias_set=${build_alias+set} --ac_env_build_alias_value=$build_alias --ac_cv_env_build_alias_set=${build_alias+set} --ac_cv_env_build_alias_value=$build_alias --ac_env_host_alias_set=${host_alias+set} --ac_env_host_alias_value=$host_alias --ac_cv_env_host_alias_set=${host_alias+set} --ac_cv_env_host_alias_value=$host_alias --ac_env_target_alias_set=${target_alias+set} --ac_env_target_alias_value=$target_alias --ac_cv_env_target_alias_set=${target_alias+set} --ac_cv_env_target_alias_value=$target_alias -+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 -+ { (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 -+ { (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. -@@ -744,9 +1176,6 @@ - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - --_ACEOF -- -- cat <<_ACEOF - Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] -@@ -764,19 +1193,31 @@ - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] - --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] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] -+ --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] -@@ -787,119 +1228,93 @@ - - cat <<\_ACEOF - -+Optional Features: -+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) -+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -+ --enable-maintainer-mode enable make rules and dependencies not useful -+ (and sometimes confusing) to the casual installer -+ - _ACEOF -+ac_status=$? - fi - - if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. -- ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue -- test -d $ac_dir || continue -+ test -d "$ac_dir" || continue - ac_builddir=. - --if test "$ac_dir" != .; then -+case "$ac_dir" in -+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -+*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -+ # A ".." for each directory in $ac_dir_suffix. -+ ac_top_builddir_sub=`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 -- .) # No --srcdir option. We are building in place. -+ .) # We are building in place. - ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -+ 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 ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -- --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; --esac -- -- cd $ac_dir -- # Check for guested configure; otherwise get Cygnus style 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 -- elif test -f $ac_srcdir/configure.ac || -- test -f $ac_srcdir/configure.in; then -- echo -- $ac_configure --help -+ 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 - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 -- fi -- cd $ac_popdir -+ fi || ac_status=$? -+ cd "$ac_pwd" || { ac_status=$?; break; } - done - fi - --test -n "$ac_init_help" && exit 0 -+test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF -+configure -+generated by GNU Autoconf 2.61 - --Copyright (C) 2003 Free Software Foundation, Inc. -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -+2002, 2003, 2004, 2005, 2006 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 0 -+ exit - fi --exec 5>config.log --cat >&5 <<_ACEOF -+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.59. Invocation command line was -+generated by GNU Autoconf 2.61. Invocation command line was - - $ $0 $@ - - _ACEOF -+exec 5>>config.log - { - cat <<_ASUNAME - ## --------- ## -@@ -918,7 +1333,7 @@ - /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` --hostinfo = `(hostinfo) 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` -@@ -932,6 +1347,7 @@ - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" - done -+IFS=$as_save_IFS - - } >&5 - -@@ -953,7 +1369,6 @@ - ac_configure_args= - ac_configure_args0= - ac_configure_args1= --ac_sep= - ac_must_keep_next=false - for ac_pass in 1 2 - do -@@ -964,7 +1379,7 @@ - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; -- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -+ *\'*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in -@@ -986,9 +1401,7 @@ - -* ) ac_must_keep_next=true ;; - esac - fi -- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" -- # Get rid of the leading space. -- ac_sep=" " -+ ac_configure_args="$ac_configure_args '$ac_arg'" - ;; - esac - done -@@ -999,8 +1412,8 @@ - # 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: Be sure not to use single quotes in there, as some shells, --# such as our DU 5.0 friend, will then `close' the trap. -+# 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. - { -@@ -1013,20 +1426,34 @@ - _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_*) { 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;} ;; -+ esac -+ case $ac_var in #( -+ _ | IFS | as_nl) ;; #( -+ *) $as_unset $ac_var ;; -+ esac ;; -+ esac -+ done - (set) 2>&1 | -- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -+ 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" -- ;; -+ "s/'\''/'\''\\\\'\'''\''/g; -+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" -+ ;; #( - *) -- sed -n \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; -- esac; --} -+ esac | -+ sort -+) - echo - - cat <<\_ASBOX -@@ -1037,22 +1464,28 @@ - echo - for ac_var in $ac_subst_vars - do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -+ eval ac_val=\$$ac_var -+ case $ac_val in -+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; -+ esac -+ echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX --## ------------- ## --## Output files. ## --## ------------- ## -+## ------------------- ## -+## File substitutions. ## -+## ------------------- ## - _ASBOX - echo - for ac_var in $ac_subst_files - do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -+ eval ac_val=\$$ac_var -+ case $ac_val in -+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; -+ esac -+ echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi -@@ -1064,26 +1497,24 @@ - ## ----------- ## - _ASBOX - echo -- sed "/^$/d" confdefs.h | sort -+ cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 -- rm -f core *.core && -- rm -rf conftest* confdefs* conf$$* $ac_clean_files && -+ rm -f core *.core core.conftest.* && -+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -- ' 0 -+' 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 -rf conftest* confdefs.h --# AIX cpp loses on an empty file, so make sure it contains at least a newline. --echo >confdefs.h -+rm -f -r conftest* confdefs.h - - # Predefined preprocessor variables. - -@@ -1114,14 +1545,17 @@ - - # Let the site file select an alternate cache file if it wants to. - # Prefer explicitly selected file to automatically selected ones. --if test -z "$CONFIG_SITE"; then -- if test "x$prefix" != xNONE; then -- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -- else -- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -- fi -+if test -n "$CONFIG_SITE"; then -+ set x "$CONFIG_SITE" -+elif test "x$prefix" != xNONE; then -+ set x "$prefix/share/config.site" "$prefix/etc/config.site" -+else -+ set x "$ac_default_prefix/share/config.site" \ -+ "$ac_default_prefix/etc/config.site" - fi --for ac_site_file in $CONFIG_SITE; do -+shift -+for ac_site_file -+do - 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;} -@@ -1137,8 +1571,8 @@ - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 - echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in -- [\\/]* | ?:[\\/]* ) . $cache_file;; -- *) . ./$cache_file;; -+ [\\/]* | ?:[\\/]* ) . "$cache_file";; -+ *) . "./$cache_file";; - esac - fi - else -@@ -1150,12 +1584,11 @@ - # Check that the precious variables saved in the cache have kept the same - # value. - ac_cache_corrupted=false --for ac_var in `(set) 2>&1 | -- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do -+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" -+ 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,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -@@ -1180,8 +1613,7 @@ - # 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=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in -@@ -1198,12 +1630,6 @@ - { (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 -- - - - -@@ -1220,237 +1646,621 @@ - - - -+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 $srcdir $srcdir/.. $srcdir/../..; do -- if test -f $ac_dir/install-sh; then -+for ac_dir in .. "$srcdir"/..; 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 -+ 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 -+ 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 -- { { 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;} -+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in .. \"$srcdir\"/.." >&5 -+echo "$as_me: error: cannot find install-sh or install.sh in .. \"$srcdir\"/.." >&2;} - { (exit 1); exit 1; }; } - fi --ac_config_guess="$SHELL $ac_aux_dir/config.guess" --ac_config_sub="$SHELL $ac_aux_dir/config.sub" --ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. -- --# Make sure we can run config.sub. --$ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 --echo "$as_me: error: cannot run $ac_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 -+# 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. -+ -+ -+am__api_version='1.10' -+ -+# 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 - else -- ac_cv_build_alias=$build_alias --test -z "$ac_cv_build_alias" && -- ac_cv_build_alias=`$ac_config_guess` --test -z "$ac_cv_build_alias" && -- { { 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=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_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 --build=$ac_cv_build --build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -+ 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 -+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" -+ break 3 -+ fi -+ fi -+ done -+ done -+ ;; -+esac -+done -+IFS=$as_save_IFS - - --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 -+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 -+{ 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 build environment is sane" >&5 -+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } -+# Just in case -+sleep 1 -+echo timestamp > conftest.file -+# 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". -+ { { 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 -+alias in your environment" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ -+ test "$2" = conftest.file -+ ) -+then -+ # Ok. -+ : -+else -+ { { 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! -+Check your system clock" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+{ echo "$as_me:$LINENO: result: yes" >&5 -+echo "${ECHO_T}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. -+# 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 -+ -+# 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" -+# 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;} -+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; } -+if test -z "$MKDIR_P"; then -+ if test "${ac_cv_path_mkdir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_cv_host_alias=$host_alias --test -z "$ac_cv_host_alias" && -- ac_cv_host_alias=$ac_cv_build_alias --ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} -- { (exit 1); exit 1; }; } -+ 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 --echo "$as_me:$LINENO: result: $ac_cv_host" >&5 --echo "${ECHO_T}$ac_cv_host" >&6 --host=$ac_cv_host --host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -+ 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 -+{ echo "$as_me:$LINENO: result: $MKDIR_P" >&5 -+echo "${ECHO_T}$MKDIR_P" >&6; } - -+mkdir_p="$MKDIR_P" -+case $mkdir_p in -+ [\\/$]* | ?:[\\/]*) ;; -+ */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; -+esac - --# Note, we don't use the files in the config subdirectory! --ac_aux_dir= --for ac_dir in .. $srcdir/..; 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 -+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; } -+if test "${ac_cv_prog_AWK+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 - fi - done --if test -z "$ac_aux_dir"; then -- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in .. $srcdir/.." >&5 --echo "$as_me: error: cannot find install-sh or install.sh in .. $srcdir/.." >&2;} -- { (exit 1); exit 1; }; } -+done -+IFS=$as_save_IFS -+ -+fi -+fi -+AWK=$ac_cv_prog_AWK -+if test -n "$AWK"; then -+ { echo "$as_me:$LINENO: result: $AWK" >&5 -+echo "${ECHO_T}$AWK" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi --ac_config_guess="$SHELL $ac_aux_dir/config.guess" --ac_config_sub="$SHELL $ac_aux_dir/config.sub" --ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. -- --echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 --echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 --set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` --if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then -+ -+ -+ 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'` -+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 'ac_maketemp="$(MAKE)"' -+ @echo '@@@%%%=$(MAKE)=@@@%%%' - _ACEOF - # GNU make sometimes prints "make[1]: Entering...", which would confuse us. --eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` --if test -n "$ac_maketemp"; then -- eval ac_cv_prog_make_${ac_make}_set=yes --else -- eval ac_cv_prog_make_${ac_make}_set=no --fi -+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 \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then -- echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+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 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" - fi - --# END CYGNUS LOCAL -+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 -+ { { 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;} -+ { (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=itcl -+ VERSION=3.3 -+ -+ -+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}"} - --# ----------------------------------------------------------------------- --# --# Set up a new default --prefix. If a previous installation of --# [incr Tcl] can be found searching $PATH use that directory. --# --# ----------------------------------------------------------------------- - -+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} - --if test "x$prefix" = xNONE; then -- echo $ECHO_N "checking for prefix by $ECHO_C" >&6 -- # Extract the first word of "itclsh", so it can be a program name with args. --set dummy itclsh; 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_path_ac_prefix_program+set}" = set; then -+ -+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} -+ -+ -+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 -- case $ac_prefix_program in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_ac_prefix_program="$ac_prefix_program" # Let the user override the test with a path. -- ;; -- *) -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+ 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_path_ac_prefix_program="$as_dir/$ac_word$ac_exec_ext" -+ 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 -+ - -- ;; --esac - fi --ac_prefix_program=$ac_cv_path_ac_prefix_program -+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 - --if test -n "$ac_prefix_program"; then -- echo "$as_me:$LINENO: result: $ac_prefix_program" >&5 --echo "${ECHO_T}$ac_prefix_program" >&6 -+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 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -- if test -n "$ac_prefix_program"; then -- prefix=`(dirname "$ac_prefix_program") 2>/dev/null || --$as_expr X"$ac_prefix_program" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$ac_prefix_program" : 'X\(//\)[^/]' \| \ -- X"$ac_prefix_program" : 'X\(//\)$' \| \ -- X"$ac_prefix_program" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$ac_prefix_program" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- prefix=`(dirname "$prefix") 2>/dev/null || --$as_expr X"$prefix" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$prefix" : 'X\(//\)[^/]' \| \ -- X"$prefix" : 'X\(//\)$' \| \ -- X"$prefix" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$prefix" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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. -+ -+AMTAR=${AMTAR-"${am_missing_run}tar"} -+ -+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' -+ -+ -+ -+ -+ -+{ echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 -+echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6; } -+ # Check whether --enable-maintainer-mode was given. -+if test "${enable_maintainer_mode+set}" = set; then -+ enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -+else -+ USE_MAINTAINER_MODE=no -+fi -+ -+ { echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5 -+echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6; } -+ if test $USE_MAINTAINER_MODE = yes; then -+ MAINTAINER_MODE_TRUE= -+ MAINTAINER_MODE_FALSE='#' -+else -+ MAINTAINER_MODE_TRUE='#' -+ MAINTAINER_MODE_FALSE= - fi - -+ MAINT=$MAINTAINER_MODE_TRUE - - -+# 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; }; } - --subdirs="$subdirs itcl itk" -+{ 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; }; } - --# Source-Navigator does not use the iwidgets packag --if test ! -d ${srcdir}/../snavigator || test -d ${srcdir}/../gdb/gdbtk ; then -+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 - - --subdirs="$subdirs iwidgets" -+{ 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 -+ -+ -+ -+# Itcl et al require tclsh and wish. Since they have not been built yet, -+# we simply set the environment variables TCLSH_PROG and WISH_PROG so that -+# the two TEA macros do not run. -+case "${host}" in -+ *-*-cywin* | *-*-mingw* ) -+ platform="win" -+ ;; -+ *) -+ platform="unix" -+ ;; -+esac -+ -+export TCLSH_PROG=`pwd`/../tcl/${platform}/tclsh -+export WISH_PROG=`pwd`/../tk/${platform}/wish -+ -+subdirs="$subdirs itcl itk iwidgets" -+ -+ac_config_files="$ac_config_files Makefile" - -- ac_config_files="$ac_config_files Makefile" -- ac_config_commands="$ac_config_commands default" - 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 -@@ -1469,39 +2279,58 @@ - - # The following way of writing the cache mishandles newlines in values, - # but we know of no workaround that is simple, portable, and efficient. --# So, don't put newlines in cache variables' values. -+# 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_*) { 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;} ;; -+ esac -+ case $ac_var in #( -+ _ | IFS | as_nl) ;; #( -+ *) $as_unset $ac_var ;; -+ esac ;; -+ esac -+ done -+ - (set) 2>&1 | -- case `(ac_space=' '; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -+ 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 \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; -- esac; --} | -+ esac | -+ sort -+) | - sed ' -+ /^ac_cv_env_/b end - t clear -- : clear -+ :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end -- /^ac_cv_env/!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" && echo "updating cache $cache_file" -+ 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" && -+ { echo "$as_me:$LINENO: updating cache $cache_file" >&5 -+echo "$as_me: updating cache $cache_file" >&6;} - cat confcache >$cache_file - else -- echo "not updating unwritable cache $cache_file" -+ { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 -+echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi - fi - rm -f confcache -@@ -1510,69 +2339,61 @@ - # Let make expand exec_prefix. - test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - --# 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 -- - # Transform confdefs.h into DEFS. - # Protect against shell expansion while executing Makefile rules. - # Protect against Makefile macro expansion. - # - # If the first sed substitution is executed (which looks for macros that --# take arguments), then we branch to the quote section. Otherwise, -+# take arguments), then branch to the quote section. Otherwise, - # look for a macro that doesn't take arguments. --cat >confdef2opt.sed <<\_ACEOF -+ac_script=' - t clear --: clear --s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g -+:clear -+s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g - t quote --s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g -+s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g - t quote --d --: quote --s,[ `~#$^&*(){}\\|;'"<>?],\\&,g --s,\[,\\&,g --s,\],\\&,g --s,\$,$$,g --p --_ACEOF --# We use echo to avoid assuming a particular line-breaking character. --# The extra dot is to prevent the shell from consuming trailing --# line-breaks from the sub-command output. A line-break within --# single-quotes doesn't work because, if this script is created in a --# platform that uses two characters for line-breaks (e.g., DOS), tr --# would break. --ac_LF_and_DOT=`echo; echo .` --DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` --rm -f confdef2opt.sed -+b any -+:quote -+s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g -+s/\[/\\&/g -+s/\]/\\&/g -+s/\$/$$/g -+H -+:any -+${ -+ g -+ s/^\n// -+ s/\n/ /g -+ p -+} -+' -+DEFS=`sed -n "$ac_script" confdefs.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_i=`echo "$ac_i" | -- sed 's/\$U\././;s/\.o$//;s/\.obj$//'` -- # 2. Add them. -- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" -- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' -+ ac_i=`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 -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then -+ { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined. -+Usually this means the macro was only invoked conditionally." >&5 -+echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. -+Usually this means the macro was only invoked conditionally." >&2;} -+ { (exit 1); exit 1; }; } -+fi - - : ${CONFIG_STATUS=./config.status} - ac_clean_files_save=$ac_clean_files -@@ -1597,28 +2418,91 @@ - ## M4sh Initialization. ## - ## --------------------- ## - --# Be Bourne compatible -+# 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=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix -+ setopt NO_GLOB_SUBST -+else -+ case `(set -o) 2>/dev/null` in -+ *posix*) set -o posix ;; -+esac -+ - fi --DUALCASE=1; export DUALCASE # for MKS sh - --# Support unset when possible. --if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -- as_unset=unset -+ -+ -+ -+# 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 -+ -+# 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=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh -+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.) -+as_nl=' -+' -+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 -+ 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. --$as_unset ENV MAIL MAILPATH -+for as_var in ENV MAIL MAILPATH -+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -+done - PS1='$ ' - PS2='> ' - PS4='+ ' -@@ -1632,18 +2516,19 @@ - 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 -+ ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi - done - - # Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; then -+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 -+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename - else - as_basename=false -@@ -1651,159 +2536,120 @@ - - - # Name of the executable. --as_me=`$as_basename "$0" || -+as_me=`$as_basename -- "$0" || - $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)$' \| \ -- . : '\(.\)' 2>/dev/null || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\/\)$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\).*/{ -+ s//\1/ -+ q -+ } -+ s/.*/./; q'` - -- --# PATH needs CR, and LINENO needs CR and PATH. --# 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 -- --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh --fi -+# CDPATH. -+$as_unset CDPATH - - -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 - -- ;; -- 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 -- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 --echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -- 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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -- /*) -- if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -+ 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, and appends trailing '-' during -- # substitution so that $LINENO is not a special case at line end. -+ # 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -+ # 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 -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ :loop -+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -+ s/-\n.*// - ' >$as_me.lineno && -- chmod +x $as_me.lineno || -- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 --echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} -+ chmod +x "$as_me.lineno" || -+ { 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 sensible to this). -- . ./$as_me.lineno -+ # original and so on. Autoconf is especially sensitive to this). -+ . "./$as_me.lineno" - # Exit status is that of the last command. - exit - } - - --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+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; then -+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 -+fi - echo >conf$$.file - if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -+ 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' -- else -- as_ln_s='ln -s' -- fi - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi --rm -f conf$$ conf$$.exe conf$$.file -+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=: -@@ -1812,7 +2658,28 @@ - as_mkdir_p=false - fi - --as_executable_p="test -f" -+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'" -@@ -1821,31 +2688,14 @@ - as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH -- - exec 6>&1 - --# Open the log real soon, to keep \$[0] and so on meaningful, and to -+# 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. Logging --version etc. is OK. --exec 5>>config.log --{ -- echo -- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX --## Running $as_me. ## --_ASBOX --} >&5 --cat >&5 <<_CSEOF -- -+# values after options handling. -+ac_log=" - This file was extended by $as_me, which was --generated by GNU Autoconf 2.59. Invocation command line was -+generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS -@@ -1853,30 +2703,18 @@ - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - --_CSEOF --echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 --echo >&5 -+on `(hostname || uname -n) 2>/dev/null | sed 1q` -+" -+ - _ACEOF - -+cat >>$CONFIG_STATUS <<_ACEOF - # Files that config.status was made for. --if test -n "$ac_config_files"; then -- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_headers"; then -- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_links"; then -- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS --fi -+config_files="$ac_config_files" - --if test -n "$ac_config_commands"; then -- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS --fi -+_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -- - ac_cs_usage="\ - \`$as_me' instantiates files from templates according to the - current configuration. -@@ -1884,7 +2722,7 @@ - Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit -- -V, --version print version number, then exit -+ -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions -@@ -1894,22 +2732,23 @@ - Configuration files: - $config_files - --Configuration commands: --$config_commands -- - Report bugs to ." --_ACEOF - -+_ACEOF - cat >>$CONFIG_STATUS <<_ACEOF - ac_cs_version="\\ - config.status --configured by $0, generated by GNU Autoconf 2.59, -- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" -+configured by $0, generated by GNU Autoconf 2.61, -+ with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - --Copyright (C) 2003 Free Software Foundation, Inc. -+Copyright (C) 2006 Free Software Foundation, Inc. - This config.status script is free software; the Free Software Foundation - gives unlimited permission to copy, distribute and modify it." --srcdir=$srcdir -+ -+ac_pwd='$ac_pwd' -+srcdir='$srcdir' -+INSTALL='$INSTALL' -+MKDIR_P='$MKDIR_P' - _ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -@@ -1920,60 +2759,42 @@ - do - case $1 in - --*=*) -- ac_option=`expr "x$1" : 'x\([^=]*\)='` -- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` -+ ac_option=`expr "X$1" : 'X\([^=]*\)='` -+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; -- -*) -+ *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; -- *) # This is not an option, so the user has probably given explicit -- # arguments. -- ac_option=$1 -- ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; -- --version | --vers* | -V ) -- echo "$ac_cs_version"; exit 0 ;; -- --he | --h) -- # Conflict between --help and --header -- { { echo "$as_me:$LINENO: error: ambiguous option: $1 --Try \`$0 --help' for more information." >&5 --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 0 ;; -- --debug | --d* | -d ) -+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) -+ echo "$ac_cs_version"; exit ;; -+ --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; -- --header | --heade | --head | --hea ) -- $ac_shift -- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" -- ac_need_defaults=false;; -+ --he | --h | --help | --hel | -h ) -+ 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:$LINENO: error: unrecognized option: $1 --Try \`$0 --help' for more information." >&5 --echo "$as_me: error: unrecognized option: $1 --Try \`$0 --help' for more information." >&2;} -+ -*) { 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_config_targets="$ac_config_targets $1" -+ ac_need_defaults=false ;; - - esac - shift -@@ -1989,326 +2810,437 @@ - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF - if \$ac_cs_recheck; then -- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -+ echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -+ CONFIG_SHELL=$SHELL -+ export CONFIG_SHELL -+ exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - fi - - _ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+exec 5>>config.log -+{ -+ echo -+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -+## Running $as_me. ## -+_ASBOX -+ echo "$ac_log" -+} >&5 - -- -- -- -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -+ -+# Handling of arguments. - for ac_config_target in $ac_config_targets - do -- case "$ac_config_target" in -- # Handling of arguments. -- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; -- "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; -+ case $ac_config_target in -+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; -+ - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 - 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_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 to put it here, and in addition, -+# simply because there is no reason against having it here, and in addition, - # creating and moving files from /tmp can sometimes cause problems. --# Create a temporary directory, and hook for its removal unless debugging. -+# 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 || - { -- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ 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 -q "./confstatXXXXXX") 2>/dev/null` && -+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" - } || - { -- tmp=./confstat$$-$RANDOM -- (umask 077 && mkdir $tmp) -+ tmp=./conf$$-$RANDOM -+ (umask 077 && mkdir "$tmp") - } || - { - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } - } - --_ACEOF -- --cat >>$CONFIG_STATUS <<_ACEOF -- - # --# CONFIG_FILES section. -+# 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 --if test -n "\$CONFIG_FILES"; then -- # Protect against being on the right side of a sed subst in config.status. -- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; -- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF --s,@SHELL@,$SHELL,;t t --s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t --s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t --s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t --s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t --s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t --s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t --s,@exec_prefix@,$exec_prefix,;t t --s,@prefix@,$prefix,;t t --s,@program_transform_name@,$program_transform_name,;t t --s,@bindir@,$bindir,;t t --s,@sbindir@,$sbindir,;t t --s,@libexecdir@,$libexecdir,;t t --s,@datadir@,$datadir,;t t --s,@sysconfdir@,$sysconfdir,;t t --s,@sharedstatedir@,$sharedstatedir,;t t --s,@localstatedir@,$localstatedir,;t t --s,@libdir@,$libdir,;t t --s,@includedir@,$includedir,;t t --s,@oldincludedir@,$oldincludedir,;t t --s,@infodir@,$infodir,;t t --s,@mandir@,$mandir,;t t --s,@build_alias@,$build_alias,;t t --s,@host_alias@,$host_alias,;t t --s,@target_alias@,$target_alias,;t t --s,@DEFS@,$DEFS,;t t --s,@ECHO_C@,$ECHO_C,;t t --s,@ECHO_N@,$ECHO_N,;t t --s,@ECHO_T@,$ECHO_T,;t t --s,@LIBS@,$LIBS,;t t --s,@build@,$build,;t t --s,@build_cpu@,$build_cpu,;t t --s,@build_vendor@,$build_vendor,;t t --s,@build_os@,$build_os,;t t --s,@host@,$host,;t t --s,@host_cpu@,$host_cpu,;t t --s,@host_vendor@,$host_vendor,;t t --s,@host_os@,$host_os,;t t --s,@SET_MAKE@,$SET_MAKE,;t t --s,@ac_prefix_program@,$ac_prefix_program,;t t --s,@subdirs@,$subdirs,;t t --s,@LIBOBJS@,$LIBOBJS,;t t --s,@LTLIBOBJS@,$LTLIBOBJS,;t t --CEOF -+if test -n "$CONFIG_FILES"; then - - _ACEOF - -- cat >>$CONFIG_STATUS <<\_ACEOF -- # Split the substitutions into bite-sized pieces for seds with -- # small command number limits, like on Digital OSF/1 and HP-UX. -- ac_max_sed_lines=48 -- ac_sed_frag=1 # Number of current file. -- ac_beg=1 # First line for current file. -- ac_end=$ac_max_sed_lines # Line after last line for current file. -- ac_more_lines=: -- ac_sed_cmds= -- while $ac_more_lines; do -- if test $ac_beg -gt 1; then -- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- else -- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- fi -- if test ! -s $tmp/subs.frag; then -- ac_more_lines=false -- else -- # The purpose of the label and of the branching condition is to -- # speed up the sed processing (if there are no `@' at all, there -- # is no need to browse any of the substitutions). -- # These are the two extra sed commands mentioned above. -- (echo ':t -- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" -- else -- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" -- fi -- ac_sed_frag=`expr $ac_sed_frag + 1` -- ac_beg=$ac_end -- ac_end=`expr $ac_end + $ac_max_sed_lines` -- fi -- done -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds=cat -+ -+ -+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 -+MAINTAINER_MODE_TRUE!$MAINTAINER_MODE_TRUE$ac_delim -+MAINTAINER_MODE_FALSE!$MAINTAINER_MODE_FALSE$ac_delim -+MAINT!$MAINT$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 -+host_cpu!$host_cpu$ac_delim -+host_vendor!$host_vendor$ac_delim -+host_os!$host_os$ac_delim -+subdirs!$subdirs$ac_delim -+LIBOBJS!$LIBOBJS$ac_delim -+LTLIBOBJS!$LTLIBOBJS$ac_delim -+_ACEOF -+ -+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 73; 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 --fi # test -n "$CONFIG_FILES" -+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` -+fi - -+cat >>$CONFIG_STATUS <<_ACEOF -+cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof -+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -+_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 >$CONFIG_STATUS <<_ACEOF -+:end -+s/|#_!!_#|//g -+CEOF$ac_eof - _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 --for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue -- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". -- case $ac_file in -- - | *:- | *:-:* ) # input from stdin -- cat >$tmp/stdin -- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- * ) ac_file_in=$ac_file.in ;; -+fi # test -n "$CONFIG_FILES" -+ -+ -+for ac_tag in :F $CONFIG_FILES -+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;} -+ { (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 - -- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. -- ac_dir=`(dirname "$ac_file") 2>/dev/null || -+ 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 || -+ { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -+echo "$as_me: error: cannot find input file: $ac_f" >&2;} -+ { (exit 1); exit 1; }; };; -+ 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." -+ 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;} -+ fi -+ -+ case $ac_tag in -+ *:-:* | *:-) cat >"$tmp/stdin";; -+ 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 || -+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || - echo X"$ac_file" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- { if $as_mkdir_p; then -- mkdir -p "$ac_dir" -- else -- as_dir="$ac_dir" -+ 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 test ! -d "$as_dir"; do -- as_dirs="$as_dir $as_dirs" -- as_dir=`(dirname "$as_dir") 2>/dev/null || -+ while :; do -+ case $as_dir in #( -+ *\'*) as_qdir=`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 || -+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || - echo X"$as_dir" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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 ! -n "$as_dirs" || mkdir $as_dirs -- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 --echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ 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;} - { (exit 1); exit 1; }; }; } -- - ac_builddir=. - --if test "$ac_dir" != .; then -+case "$ac_dir" in -+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -+*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -+ # A ".." for each directory in $ac_dir_suffix. -+ ac_top_builddir_sub=`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 -- .) # No --srcdir option. We are building in place. -+ .) # We are building in place. - ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -+ 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 ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -+ 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 - --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; -+cat >>$CONFIG_STATUS <<\_ACEOF -+# 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/ { -+ p -+ q -+} -+/@datadir@/p -+/@docdir@/p -+/@infodir@/p -+/@localedir@/p -+/@mandir@/p -+' $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;} -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+ 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 -- -- -- -- if test x"$ac_file" != x-; then -- { echo "$as_me:$LINENO: creating $ac_file" >&5 --echo "$as_me: creating $ac_file" >&6;} -- rm -f "$ac_file" -- fi -- # 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. */ -- if test x"$ac_file" = x-; then -- configure_input= -- else -- configure_input="$ac_file. " -- fi -- configure_input=$configure_input"Generated from `echo $ac_file_in | -- sed 's,.*/,,'` by configure." -- -- # First look for the input files in the build tree, otherwise in the -- # src tree. -- ac_file_inputs=`IFS=: -- for f in $ac_file_in; do -- case $f in -- -) echo $tmp/stdin ;; -- [\\/$]*) -- # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- echo "$f";; -- *) # Relative -- if test -f "$f"; then -- # Build tree -- echo "$f" -- elif test -f "$srcdir/$f"; then -- # Source tree -- echo "$srcdir/$f" -- else -- # /dev/null tree -- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- fi;; -- esac -- done` || { (exit 1); exit 1; } - _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 - $extrasub -@@ -2316,146 +3248,41 @@ - cat >>$CONFIG_STATUS <<\_ACEOF - :t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b --s,@configure_input@,$configure_input,;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,@top_builddir@,$ac_top_builddir,;t t --s,@abs_top_builddir@,$ac_abs_top_builddir,;t t --" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out -- rm -f $tmp/stdin -- if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -- else -- cat $tmp/out -- rm -f $tmp/out -- fi -+s&@configure_input@&$configure_input&;t t -+s&@top_builddir@&$ac_top_builddir_sub&;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 -+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out -+ -+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' -+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' -+which seems to be undefined. Please make sure it is defined." >&2;} - --done --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF -- --# --# CONFIG_COMMANDS section. --# --for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue -- ac_dest=`echo "$ac_file" | sed 's,:.*,,'` -- ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_dir=`(dirname "$ac_dest") 2>/dev/null || --$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$ac_dest" : 'X\(//\)[^/]' \| \ -- X"$ac_dest" : 'X\(//\)$' \| \ -- X"$ac_dest" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$ac_dest" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- { if $as_mkdir_p; then -- mkdir -p "$ac_dir" -- else -- as_dir="$ac_dir" -- as_dirs= -- while test ! -d "$as_dir"; do -- as_dirs="$as_dir $as_dirs" -- as_dir=`(dirname "$as_dir") 2>/dev/null || --$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" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- done -- test ! -n "$as_dirs" || mkdir $as_dirs -- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 --echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -- { (exit 1); exit 1; }; }; } -- -- ac_builddir=. -+ 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 -+ ;; - --if test "$ac_dir" != .; then -- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi - --case $srcdir in -- .) # No --srcdir option. We are building in place. -- ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -- ac_srcdir=$srcdir$ac_dir_suffix; -- ac_top_srcdir=$srcdir ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac - --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; --esac -- -- -- { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 --echo "$as_me: executing $ac_dest commands" >&6;} -- case $ac_dest in -- default ) chmod +x ${srcdir}/config/install-sh ${srcdir}/config/mkinstalldirs ;; - esac --done --_ACEOF - --cat >>$CONFIG_STATUS <<\_ACEOF -+done # for ac_tag -+ - - { (exit 0); exit 0; } - _ACEOF -@@ -2492,7 +3319,10 @@ - # Remove --cache-file and --srcdir arguments so they do not pile up. - ac_sub_configure_args= - ac_prev= -- for ac_arg in $ac_configure_args; do -+ eval "set x $ac_configure_args" -+ shift -+ for ac_arg -+ do - if test -n "$ac_prev"; then - ac_prev= - continue -@@ -2515,123 +3345,123 @@ - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - ;; -- *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; -+ *) -+ case $ac_arg in -+ *\'*) ac_arg=`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_sub_configure_args="--prefix=$prefix $ac_sub_configure_args" -+ ac_arg="--prefix=$prefix" -+ case $ac_arg in -+ *\'*) ac_arg=`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 - - 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 -+ test -d "$srcdir/$ac_dir" || continue - -- { echo "$as_me:$LINENO: configuring in $ac_dir" >&5 --echo "$as_me: configuring in $ac_dir" >&6;} -- { if $as_mkdir_p; then -- mkdir -p "$ac_dir" -- else -- as_dir="$ac_dir" -+ ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)" -+ echo "$as_me:$LINENO: $ac_msg" >&5 -+ 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 test ! -d "$as_dir"; do -- as_dirs="$as_dir $as_dirs" -- as_dir=`(dirname "$as_dir") 2>/dev/null || -+ while :; do -+ case $as_dir in #( -+ *\'*) as_qdir=`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 || -+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || - echo X"$as_dir" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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 ! -n "$as_dirs" || mkdir $as_dirs -- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 --echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ 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;} - { (exit 1); exit 1; }; }; } -- - ac_builddir=. - --if test "$ac_dir" != .; then -+case "$ac_dir" in -+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -+*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -+ # A ".." for each directory in $ac_dir_suffix. -+ ac_top_builddir_sub=`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 -- .) # No --srcdir option. We are building in place. -+ .) # We are building in place. - ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -+ 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 ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -- --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; -+ 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 -+ cd "$ac_dir" - - # Check for guested configure; otherwise get Cygnus style configure. -- if test -f $ac_srcdir/configure.gnu; then -- ac_sub_configure="$SHELL '$ac_srcdir/configure.gnu'" -- elif test -f $ac_srcdir/configure; then -- ac_sub_configure="$SHELL '$ac_srcdir/configure'" -- elif test -f $ac_srcdir/configure.in; then -- ac_sub_configure=$ac_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 - { echo "$as_me:$LINENO: WARNING: no configuration information is in $ac_dir" >&5 - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;} -@@ -2643,21 +3473,21 @@ - # Make the cache file name correct relative to the subdirectory. - case $cache_file in - [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;; -- *) # Relative path. -- ac_sub_cache_file=$ac_top_builddir$cache_file ;; -+ *) # Relative name. -+ ac_sub_cache_file=$ac_top_build_prefix$cache_file ;; - esac - -- { echo "$as_me:$LINENO: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 --echo "$as_me: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;} -+ { echo "$as_me:$LINENO: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 -+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 $ac_sub_configure $ac_sub_configure_args \ -- --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir || -+ eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \ -+ --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" || - { { echo "$as_me:$LINENO: error: $ac_sub_configure failed for $ac_dir" >&5 - echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} - { (exit 1); exit 1; }; } - fi - -- cd $ac_popdir -+ cd "$ac_popdir" - done - fi - -diff -Naur insight-6.8.orig/itcl/configure.ac insight-6.8.new/itcl/configure.ac ---- insight-6.8.orig/itcl/configure.ac 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/configure.ac 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,25 @@ -+dnl Process this file with autoconf to produce configure. -+ -+AC_INIT(itcl/generic/itcl.h) -+AC_CONFIG_AUX_DIR(..) -+AM_INIT_AUTOMAKE(itcl, 3.3) -+AM_MAINTAINER_MODE -+AC_CANONICAL_HOST -+ -+# Itcl et al require tclsh and wish. Since they have not been built yet, -+# we simply set the environment variables TCLSH_PROG and WISH_PROG so that -+# the two TEA macros do not run. -+case "${host}" in -+ *-*-cywin* | *-*-mingw* ) -+ platform="win" -+ ;; -+ *) -+ platform="unix" -+ ;; -+esac -+ -+export TCLSH_PROG=`pwd`/../tcl/${platform}/tclsh -+export WISH_PROG=`pwd`/../tk/${platform}/wish -+ -+AC_CONFIG_SUBDIRS(itcl itk iwidgets) -+AC_OUTPUT(Makefile) -diff -Naur insight-6.8.orig/itcl/configure.in insight-6.8.new/itcl/configure.in ---- insight-6.8.orig/itcl/configure.in 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/configure.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,34 +0,0 @@ --dnl This file is an input file used by the GNU "autoconf" program to --dnl generate the file "configure", which is run during [incr Tcl] --dnl installation to configure the system for the local environment. --dnl RCS: $Id: configure.in,v 1.12.150.3 2001/05/18 02:21:42 mdejong Exp $ -- --# CYGNUS LOCAL --AC_PREREQ(2.5) -- --AC_INIT(itcl/generic/itcl.h) --AC_CANONICAL_HOST -- --# Note, we don't use the files in the config subdirectory! --AC_CONFIG_AUX_DIR(..) --AC_PROG_MAKE_SET --# END CYGNUS LOCAL -- --# ----------------------------------------------------------------------- --# --# Set up a new default --prefix. If a previous installation of --# [incr Tcl] can be found searching $PATH use that directory. --# --# ----------------------------------------------------------------------- -- --AC_PREFIX_DEFAULT(/usr/local) --AC_PREFIX_PROGRAM(itclsh) -- --AC_CONFIG_SUBDIRS(itcl itk) --# Source-Navigator does not use the iwidgets packag --if test ! -d ${srcdir}/../snavigator || test -d ${srcdir}/../gdb/gdbtk ; then -- AC_CONFIG_SUBDIRS(iwidgets) --fi -- --AC_OUTPUT(Makefile, -- chmod +x ${srcdir}/config/install-sh ${srcdir}/config/mkinstalldirs) -diff -Naur insight-6.8.orig/itcl/config.vc insight-6.8.new/itcl/config.vc ---- insight-6.8.orig/itcl/config.vc 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/config.vc 1970-01-01 01:00:00.000000000 +0100 -@@ -1,73 +0,0 @@ --###################################################################### --# --# Edit for your local configuration. This should be the only file --# that needs editing to build [Incr Tcl/Tk]. --# --# RCS: @(#) $Id: config.vc,v 1.3 2003/01/21 21:04:23 hunt Exp $ --###################################################################### -- --# only affects the linker and resource compiler --# pick from: --# ALPHA|ARM|IX86|MIPS|MIPS16|MIPSR41XX|PPC|SH3|SH4 --# --# Or set to IA64 to rearrange everything to use the Intel IA64 SDK. --# --MACHINE = IX86 -- -- --# are we MSVC++ version 5 or 6 ? --# --MSDEV_VER = 6 -- --# Where is MSVC++ located? --# --MSDEVROOT = C:\Dev\DevStudio60 -- --# Where is Tcl ? --# --TCLROOT = D:\tclpro_ws\tcl -- --# Does the above path point to the Tcl install or sources ? --# --ISTCLINSTALL = 0 -- --# Where is Tk ? Only needed for a build from the sources. --# --!if $(ISTCLINSTALL) == 0 --TKROOT = D:\tclpro_ws\tk --!endif -- --# Where are we installing to? When TCLROOT is already the install, this --# is bypassed. --# --!if $(ISTCLINSTALL) == 0 --INSTALLDIR = c:\progra~1\tcl --!else --INSTALLDIR = $(TCLROOT) --!endif -- --# What Tcl version are we grabbing ? --# --TCLMAJOR = 8 --TCLMINOR = 4 -- --TCL_VERSION = $(TCLMAJOR)$(TCLMINOR) --TCL_DOTVERSION = $(TCLMAJOR).$(TCLMINOR) -- -- --!if "$(MACHINE)" == "IA64" --# untested logic path --# --vcvars = "c:\ia64sdk17\vcvars32.bat" --!elseif $(MSDEV_VER) == 5 --vcvars = "$(MSDEVROOT)\vc\bin\vcvars32.bat" --!elseif $(MSDEV_VER) == 6 --vcvars = "$(MSDEVROOT)\vc98\bin\vcvars32.bat" --!endif -- --rc32 = rc --cc32 = cl --link32 = link --lib32 = lib --cvtres32 = cvtres -- -diff -Naur insight-6.8.orig/itcl/cygtcl.m4 insight-6.8.new/itcl/cygtcl.m4 ---- insight-6.8.orig/itcl/cygtcl.m4 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/cygtcl.m4 1970-01-01 01:00:00.000000000 +0100 -@@ -1,294 +0,0 @@ --# CYGNUS LOCAL --# --# This entire file is Cygnus local, it contains a set of cross --# platform autoconf macros to be used by Tcl extensions. -- --# FIXME: There seems to be a problem with variable --# names that still need an expansion (like $foo_FILE) --# since another eval might be needed in these macros. -- --#-------------------------------------------------------------------- --# TCL_TOOL_PATH --# --# Return a file path that the build system tool will understand. --# This path might be different than the path used in the --# Makefiles. --# --# Arguments: --# --# VAR --# PATH --# --# Results: --# --# --# Example: --# --# TCL_TOOL_PATH(TCL_CC_PATH, /usr/local/compiler) --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_PATH, [ -- val=$2 -- -- if test "$val" = "" ; then -- AC_MSG_ERROR([Empty value for variable $1]) -- fi -- -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- AC_MSG_ERROR([CYGPATH variable is not defined.]) -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- $1=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- $1="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- $1=$val -- ;; -- esac --]) -- --# FIXME: It would simplify things if no SUFFIX had to be passed --# into these LONGNAME macros. Using the TCL_SHARED_LIB_SUFFIX --# and TCL_UNSHARED_LIB_SUFFIX from tclConfig.sh might do the trick! -- --#-------------------------------------------------------------------- --# TCL_TOOL_STATIC_LIB_LONGNAME --# --# Return static library name in the "long format" understood by --# the build tools. This might involve prepending a suffix --# and appending version information to the library name. --# --# Arguments: --# --# VAR --# LIBNAME --# SUFFIX --# --# Depends on: --# TCL_DBGX --# TCL_VENDOR_PREFIX --# --# Example: --# --# TCL_TOOL_STATIC_LIB_LONGNAME(TCL_LIB, tcl, $TCL_UNSHARED_LIB_SUFFIX) --# --# Results: --# --# TCL_LIB=libtcl83.a --# --# or --# --# TCL_LIB=tcl83.lib --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_STATIC_LIB_LONGNAME, [ -- libname=$2 -- suffix=$3 -- -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- else -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- fi -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac -- -- eval "long_libname=${long_libname}" -- -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" -- -- $1=$long_libname --]) -- --#-------------------------------------------------------------------- --# TCL_TOOL_SHARED_LIB_LONGNAME --# --# Return the shared library name in the "long format" understood by --# the build tools. This might involve prepending a suffix --# and appending version information to the shared library name. --# --# Arguments: --# --# VAR --# LIBNAME --# SUFFIX --# --# Depends on: --# TCL_DBGX --# TCL_VENDOR_PREFIX --# --# Example: --# --# TCL_TOOL_SHARED_LIB_LONGNAME(TCL_SHLIB, tcl, $TCL_SHARED_LIB_SUFFIX) --# --# Results: --# The above example could result in the following. --# --# TCL_SHLIB=libtcl83.so --# --# or --# --# TCL_SHLIB=tcl83.dll --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_SHARED_LIB_LONGNAME, [ -- libname=$2 -- suffix=$3 -- -- case "${host}" in -- *windows32* | *mingw32* | *cygwin*) -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac -- -- eval "long_libname=${long_libname}" -- -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" -- -- $1=$long_libname --]) -- --#-------------------------------------------------------------------- --# TCL_TOOL_LIB_SHORTNAME --# --# Return the library name in the "short format" understood by --# the build tools. This might involve prepending a suffix --# and appending version information to the library name. --# The VC++ compiler does not support short library names --# so we just use the static import lib name in that case. --# --# Arguments: --# --# VAR --# LIBNAME --# VERSION --# --# Depends on: --# TCL_LIB_VERSIONS_OK --# TCL_DBGX --# SHARED_BUILD --# --# --# Example: --# --# TCL_TOOL_LIB_SHORTNAME(TCL_LIB, tcl, 8.3) --# --# Results: --# The above example could result in the following. --# --# TCL_LIB=-ltcl83 --# --# or --# --# TCL_LIB=tcl83.lib --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_LIB_SHORTNAME, [ -- libname=$2 -- version=$3 -- -- # If the . character is not allowed in lib name, remove it from version -- if test "${TCL_LIB_VERSIONS_OK}" != "ok"; then -- version=`echo $version | tr -d .` -- fi -- -- short_libname="-l${TCL_VENDOR_PREFIX}${libname}${version}\${TCL_DBGX}" -- $1=$short_libname --]) -- --#-------------------------------------------------------------------- --# TCL_TOOL_LIB_SPEC --# --# Return the "lib spec format" understood by the build tools. --# --# Arguments: --# --# VAR --# DIR --# LIBARG --# --# Depends on: --# --# --# Example: --# --# TCL_TOOL_LIB_SPEC(SPEC, /usr/lib, -ltcl) --# --# Results: --# The above example could result in the following. --# --# SPEC="-L/usr/lib -ltcl83" --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_LIB_SPEC, [ -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- TCL_TOOL_PATH($1, "$2/$3") -- else -- TCL_TOOL_PATH(dirname, $2) -- $1="-L${dirname} $3" -- fi -- ;; -- *) -- $1="-L$2 $3" -- ;; -- esac --]) -- --#-------------------------------------------------------------------- --# TCL_TOOL_LIB_PATH --# --# Return the "lib path format" understood by the build tools. --# Typically, this is the fully qualified path name of the library. --# --# Arguments: --# --# VAR --# DIR --# LIBARG --# --# Depends on: --# --# --# Example: --# --# TCL_TOOL_LIB_PATH(TMP_PATH, /usr/lib, libtcl83.a) --# --# Results: --# The above example could result in the following. --# --# TMP_PATH="/usr/lib/libtcl83.a" --# --#-------------------------------------------------------------------- -- --AC_DEFUN(TCL_TOOL_LIB_PATH, [ -- TCL_TOOL_PATH($1, "$2/$3") --]) -diff -Naur insight-6.8.orig/itcl/doc/README insight-6.8.new/itcl/doc/README ---- insight-6.8.orig/itcl/doc/README 2003-01-21 21:40:25.000000000 +0100 -+++ insight-6.8.new/itcl/doc/README 1970-01-01 01:00:00.000000000 +0100 -@@ -1,14 +0,0 @@ -- -- OVERVIEW -------------------------------------------------------------------------- -- If you are just getting started with [incr Tcl], download the -- "tutorial" from the itcl web site: -- -- http://www.tcltk.com/itcl/ -- -- This has over 100 pages of introductory text and code examples. -- I didn't include it here, since it adds another megabyte to the -- distribution, and long-time users won't need it. -- -- You can find the same tutorial in the book "Tcl/Tk Tools" -- published by O'Reilly and Associates. -diff -Naur insight-6.8.orig/itcl/INCOMPATIBLE insight-6.8.new/itcl/INCOMPATIBLE ---- insight-6.8.orig/itcl/INCOMPATIBLE 2003-01-21 21:40:24.000000000 +0100 -+++ insight-6.8.new/itcl/INCOMPATIBLE 1970-01-01 01:00:00.000000000 +0100 -@@ -1,102 +0,0 @@ -- --As much as possible, I've tried to make itcl3.0 backward-compatible --with earlier releases. The class definition syntax has not changed --at all from itcl2.2, and the old itcl1.x syntax is still supported. --But you'll notice changes related to namespaces. John Ousterhout --adopted a slightly different namespace model for Tcl8. The syntax --of the "namespace" command is different, as well as the semantics --for command/variable lookups and imports. Also, John Ousterhout --failed to adopt ensembles into the Tcl core, so itcl can't add --functions like "info objects" and "info classes" into the usual "info" --command. These functions have been moved to a new "itcl::find" command. -- --The [incr Widgets] package has changed quite a bit. There are many --new widgets, and some of the existing widgets were streamlined--some --of the widget options were removed to improve performance. For details, --see the "CHANGES" file in the iwidgets3.0.0 directory. Because there --are a lot of changes, this distribution contains the iwidgets2.2.0 --package, which is backward-compatible with the existing [incr Widgets]. -- --Following is a quick summary of changes, to serve as a porting guide. -- -- ------------------------------------|------------------------------------- -- You have code like this... | change to this... ------------------------------------|------------------------------------- -- namespace foo {...} | namespace eval foo {...} -- | -- delete namespace foo | namespace delete foo -- | -- info which -namespace $name | if {![string match ::* $name]} { -- | set name [namespace current]::$name -- | } -- | -- info context | namespace current -- | -- info objects ... | itcl::find objects ... -- | -- info classes ... | itcl::find classes ... -- | -- In itcl2.2, commands/classes | In Tcl8.0, all commands/classes that -- could be found in any namespace | are not in the global namespace must -- in a hierarchy. So within a | be qualified. For example, the -- namespace like "iwidgets" you | "iwidgets" namespace has a bunch of -- could use simple names like: | classes within it. You must always -- | refer to these classes with qualified -- | names, like this: -- | -- Labeledwidget::alignlabels ... | iwidgets::Labeledwidget::alignlabels ... -- Pane #auto | iwidgets::Pane #auto -- | -- | -- In itcl2.2, the "global" | In Tcl8.0, the "variable" command is -- command was used to access | used to access variables in a namespace: -- variables in a namespace: | -- | -- namespace foo { | namespace eval foo { -- variable x 0 | variable x 0 -- proc example {} { | proc example {} { -- global x | variable x -- return $x | return $x -- } | } -- } | } -- | -- | -- public itk_component add... | itk_component add ... -- protected itk_component add... | itk_component add -protected ... -- private itk_component add... | itk_component add -private ... -- | -- | -- -- OTHER DIFFERENCES -------------------------------------------------------------------------- --- You can now use instance variables (along with the usual common -- variables) with the "scope" command. Thus, you're no longer forced -- to use the trick with a common array like: [scope modes($this)] -- --- All widget/mega-widget access commands (e.g., ".foo.bar") are -- installed in the global namespace. Therefore, they can be accessed -- from any namespace context. -- --- The [incr Widgets] package used to be loaded by default. You must -- now use the "package require" command to load it explicitly: -- -- package require Iwidgets <-- loads the lastest (iwidgets3.0.0) -- package require -exact Iwidgets 2.2 <-- loads the older release -- --- Command/variable names are now reported with fully-qualified names -- in "info" inquiries and in error messages. -- --- No public/protected/private declarations outside of class definitions -- --- The "scope" command used to be more or less the same as the "code" -- command. In itcl3.x, "scope" is only for variables, and if a variable -- is not recognized, you'll get an error. -- --- The "code" command used to return a value like "@scope ...". It now -- returns "namespace inscope ...", to be compatible with Tcl8. -- --- The prototypes for Itcl_RegisterC and Itcl_FindC have changed. You -- can now include ClientData when you register C functions. Also, there -- is a new Itcl_RegisterObjC function for (objc,objv)-style command -- handlers. -diff -Naur insight-6.8.orig/itcl/itcl/aclocal.m4 insight-6.8.new/itcl/itcl/aclocal.m4 ---- insight-6.8.orig/itcl/itcl/aclocal.m4 2003-01-21 21:40:26.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/aclocal.m4 2008-08-18 18:56:39.000000000 +0200 -@@ -1,2 +1 @@ --builtin(include,../tcl.m4) --builtin(include,../cygtcl.m4) -+builtin(include,tclconfig/tcl.m4) -diff -Naur insight-6.8.orig/itcl/itcl/ChangeLog insight-6.8.new/itcl/itcl/ChangeLog ---- insight-6.8.orig/itcl/itcl/ChangeLog 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/ChangeLog 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,1902 @@ -+2005-03-25 Jeff Hobbs -+ -+ * Makefile.in: OS X patches from Steffen -+ * itcl/generic/itcl_cmds.c (initScript): -+ * itk/generic/itk_cmds.c (initScript): -+ -+2005-03-18 Jeff Hobbs -+ -+ * itcl/Makefile.in, itk/Makefile.in (AR): use @AR@ -+ * tclconfig/tcl.m4, itcl/configure, itk/configure: update to TEA 3.2 -+ -+2005-02-14 Jean-Claude Wippler -+ -+ * configure.in, tclconfig/tcl.m4: update to TEA 3.2 -+ * configure, itcl/configure, itk/configure: regen with autoconf 2.59 -+ -+2005-02-11 Jeff Hobbs -+ -+ * itcl/generic/itcl_methods.c (Itcl_GetMemberCode): fixed c99 var -+ decl from previous patch. -+ -+2005-02-10 Jeff Hobbs -+ -+ * itcl/generic/itclInt.h: [Bug 1115085] (dejong) Fix crash -+ * itcl/generic/itcl_bicmds.c: with TclInitCompiledLocals reliance -+ * itcl/generic/itcl_methods.c: on bytecode ptr type -+ -+2005-01-24 Jeff Hobbs -+ -+ * itcl/configure, itk/configure: update to TEA 3.1 r1.54, removes -+ * configure, tclconfig/tcl.m4: DBGX, updates default opt levels -+ -+2004-12-11 David Gravereaux -+ -+ * itcl/generic/itc_class.c: instansiation of an object must return -+ an FQN. -+ -+2004-11-23 David Gravereaux -+ -+ * itcl/generic/itcl_cmds.c: Fix for [Bug 1047544] Forward loading -+ * itcl/generic/itcl_util.c: from an 8.4 build loading into in 8.5 -+ is not possible at this time. -+ -+2004-11-11 David Gravereaux -+ -+ * itk/Makefile.in: Possible fix for 1049579, but untested. -+ -+2004-09-21 David Gravereaux -+ -+ * itcl/generic/itcl_utils.c: Error code internal flag abuse -+ fixed. From Don Porter. [Bug 1032210] -+ -+ * makefile.vc: Some VC7 support. -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: Had to include the win directory to Tcl's -+ includes since Tcl has had an order change recently. -+ -+2004-09-19 David Gravereaux -+ -+ * itcl/doc/*.n: Tree name for commands changed from "[Incr Tcl]" -+ to "[Incr Tcl] Commands". Started to add exported API docs under -+ the new "[Incr Tcl] Library Procedures" tree. -+ -+ * itcl/doc/RegisterC.3 (new): docs for Itcl_RegisterC and -+ Itcl_RegisterObjC. More to be added over time. -+ -+2004-09-07 Jeff Hobbs -+ -+ * itcl/configure, itk/configure, tclconfig/tcl.m4: updated TEA m4 -+ to support evc4 Win/CE builds -+ -+2004-08-31 David Gravereaux -+ -+ * itcl/doc/body.n -+ * itcl/doc/class.n: -+ * itcl/doc/configbody.n:: -+ * itcl/doc/delete.n: -+ * itcl/doc/ensemble.n: -+ * itcl/doc/find.n: -+ * itcl/doc/is.n: -+ * itcl/doc/local.n: Updated code examples to use the fully -+ qualified Itcl command names. A few references to the itcl -+ namespace command are still there and need to be changed at -+ some point. -+ -+ * itk/doc/Archetype.n: -+ * itk/doc/Toplevel.n: -+ * itk/doc/usual.n: -+ * itk/doc/Widget.n: Ditto as above. -+ -+2004-08-17 Jeff Hobbs -+ -+ * */Makefile.in (install-doc): sed in man.macros on doc install -+ [Bug 631378] (rmax) -+ -+ * */Makefile.in (VPATH): move $(srcdir)/unix to front (unused) to -+ get around bug in autoconf that strips $(srcdir) from first -+ element when building in the source directory. -+ -+ * itk/configure: remove extraneous --with-itcl AC macro -+ * itk/configure.in: TEA_PATH_CONFIG handles this for us -+ -+ * itcl/itclConfig.sh.in: must be absolute path to -+ * itcl/configure.in (itcl_SRC_DIR): configure in the srcdir. -+ * itcl/configure: [Bug 582951] -+ -+2004-08-10 Jeff Hobbs -+ -+ * README, TODO: version, info updates -+ -+ * Makefile.in, configure, configure.in: Update to TEA 3.1 -+ * tcl.m4 (removed): cleanup build system to only -+ * config/config.guess (removed): provide the parts that are -+ * config/config.sub (removed): necessary to itcl and itk. -+ * config/install-sh (removed): Update to 3.3.0 as version -+ * tclconfig/install-sh (added): throughout. -+ * tclconfig/tcl.m4 (added): -+ * itcl/generic/itcl.h: -+ * itcl/Makefile.in, itcl/aclocal.m4, itcl/configure: -+ * itcl/configure.in, itcl/itclConfig.sh.in, itcl/pkgIndex.tcl.in: -+ * itk/Makefile.in, itk/aclocal.m4, itk/configure, itk/configure.in: -+ * itk/itkConfig.sh.in, itk/pkgIndex.tcl.in, itk/generic/itk.h: -+ -+ * itcl/mac/MW_ItclHeader.pch (removed) Removed Mac Classic -+ * itcl/mac/itclMacApplication.r (removed) sources. There were -+ * itcl/mac/itclMacLibrary.r (removed) no longer maintained, -+ * itcl/mac/itclMacResource.r (removed) and Tcl has dropped -+ * itcl/mac/itclMacTclCode.r (removed) ongoing Mac Classic -+ * itcl/mac/itclStaticApplication.r (removed) support as well (in -+ * itcl/mac/pkgIndex.tcl (removed) favor of OS X). -+ * itk/mac/MW_ItkHeader.pch (removed) -+ * itk/mac/itkMacApplication.r (removed) -+ * itk/mac/itkMacLibrary.r (removed) -+ * itk/mac/itkMacResource.r (removed) -+ * itk/mac/itkMacTclCode.r (removed) -+ * itk/mac/itkStaticApplication.r (removed) -+ * itk/mac/pkgIndex.tcl (removed) -+ * itk/mac/tclIndex (removed) -+ -+2004-04-29 davygrvy -+ -+ * itcl/tests/import.test: fixed [subst] problem. -+ -+ * itcl/win/makefile.vc: -+ * itcl/win/nmakehlp.c: -+ * itk/win/makefile.vc: -+ * itk/win/nmakehlp.c: -+ * rules.vc: brain dump -+ -+ * itcl/Makefile.in: test target now calling tcltest correctly -+ -+2004-02-13 davygrvy -+ * itcl/tests/all: -+ * itcl/tests/defs (deleted): This serves no purpose today with -+ tcltest being so powerful. -+ -+ * itcl/tests/import.test: more load precision with -+ ::tcltest::loadTestedCommands in sub interps. -+ -+ * itcl/tests/mkindex.itcl: -+ * itcl/tests/mkindex.test: -+ * itcl/tests/tclIndex: reference to itcl_class removed from -+ mkindex.test so 1.3 can now pass. -+ -+2004-02-12 davygrvy -+ * itcl/win/makefile.vc: -+ * itcl/win/rc/itcl.rc: rc file work -+ -+ * itcl/tests/all.tcl: -+ * itcl/tests/import.test: -+ * itcl/tests/mkindex.test: some cleanup. -+ -+ * itcl/generic/itclInt.h: commentary -+ -+ * itcl/win/makefile.vc: now runs the test suite, OMG! -+ -+ * itcl/tests/all.tcl: -+ * itcl/tests/basic.test: -+ * itcl/tests/body.test: -+ * itcl/tests/chain.test: -+ * itcl/tests/delete.test: -+ * itcl/tests/ensemble.test: -+ * itcl/tests/import.test: -+ * itcl/tests/info.test: -+ * itcl/tests/inherit.test: -+ * itcl/tests/interp.test: -+ * itcl/tests/local.test: -+ * itcl/tests/methods.test: -+ * itcl/tests/mkindex.test: -+ * itcl/tests/namespace.test: -+ * itcl/tests/protection.test: -+ * itcl/tests/scope.test: Modified test suite to use -loadfile and -+ ::tcltest:: loadTestedCommands in each test file. -+ -+2003-12-24 davygrvy -+ * itcl/generic/itcl.h: -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_migrate.c: -+ * itcl/generic/itcl_util.c: -+ * itcl/win/makefile.vc: Changed deprecated 'panic' to 'Tcl_Panic'. -+ -+ * itcl/generic/itclStubLib.c: -+ * itk/generic/itkStubLib.c: -+ * itk/win/makefile.vc: Small 'const' issue with Tcl_PkgRequireEx -+ under 8.1.0 -+ -+2003-12-23 davygrvy -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: -+ 8.0 build needs a different output name for the binaries. -+ -+ * itcl/win/nmakehlp.c: -+ * itk/win/nmakehlp.c: -+ * rules.vc: sync'd to Tcl. -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclStubLib.c: -+ * itk/generic/itk.h: -+ * itk/generic/itkStubLib.c: Some It*_InitStubs adjustments for CONST. -+ -+ * itcl/win/makefile.vc: temp help merge script should be deleted -+ after use. -+ -+ * tools/genStubs.tcl: we need this. -+ -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: install target bugs fixed -+ -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: -+ * pkg.vc: Uses new features of nmakehlp to get the version strings -+ from header files without the use of hardcoded values. -+ -+ * itk/generic/itk_archetype.c: -+ * itk/generic/itk_cmds.c: -+ * itk/win/makefile.vc: changes to support building against 8.0.5 -+ -+ * itcl/doc/itclsh.1: -+ * itcl/mac/tclMacAppInit.c: -+ * itk/doc/itkwish.1: -+ * itk/mac/tkMacAppInit.c: custom shell no longer exists -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/win/makefile.vc: -+ * itcl/win/rc/itcl.rc: -+ * itk/generic/itk.h: -+ * itk/generic/itkDecls.h: -+ * itk/win/makefile.vc: -+ * makefile.vc: winhelp targets fixed and Stubs table issues resolved. -+ -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: some pkgIndex.tcl generation work. -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itcl_bicmds.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/generic/itcl_util.c: -+ * itcl/win/makefile.vc: -+ * itk/generic/itk_cmds.c: -+ * itk/win/makefile.vc: Now builds against Tcl 8.0! Unbeleivable, -+ but true :) Tcl bug #803489 now suppressed with grotesque macros -+ in itclInt.h -+ -+ * itcl/win/makefile.vc: -+ * itcl/win/rc/itcl.rc: -+ * itk/win/rc/itk.rc: -+ * itk/win/rc/itk.rc: some resource bugs fixed -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclInt.h: moved some backward compat macros to -+ itclInt.h -+ -+ * itcl/win/nmakehlp.c: -+ * itk/win/nmakehlp.c: prevent static buffer overflow (Doh!) -+ -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itcl_cmds.c: -+ changes to support Itk building against 8.0.5 -+ -+2003-12-22 davygrvy -+ * itcl/generic/itcl.h: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/generic/itcl_util.c: -+ * itk/generic/itk_archetype.c: -+ Now builds with 8.3 regarding CONST84 trims on some Tcl API calls. -+ -+ * itcl/generic/itcl_cmds.c: -+ * itk/generic/itk_cmds.c: -+ Because the Tcl_Namespace APIs in Tcl have moved to the public -+ space in 8.5, the stub slots have shifted. This now causes Itcl -+ when built against 8.5 to core when loaded into 8.4. What genius -+ you developers! The absolute first rule with Stubs is not to EVER -+ move the slots, but now you did. Previously, one could build Itcl -+ against 8.4 and load into any core 8.1+. Now we can't do this. -+ Gee, thank you all for the support... -+ -+ Now, what we compile against is the lowest we can load -+ into.. Sorry! send heated complaints to tcl-core@lists.sf.net -+ -+2003-12-17 davygrvy -+ * itcl/generic/itcl.h: -+ Use fancy STRINGIFY macros for version string. -+ -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_objects.c: -+ Needed to fix usage of Itcl_DecodeScopedCommand as rCmdPtr always -+ needs to be freed. -+ -+ * itcl/generic/itcl_cmd.c (Itcl_FindClassesCmd) : Memory leaking -+ Tcl_Obj plugged. [Bug 738189] -+ -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itcl_util.c: -+ Itcl_DecodeScopedCommand now fixed. -+ -+ * itcl/generic/itcl.decls: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/generic/itcl_linkage.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/generic/itcl_util.c: -+ full brain dump. All CONST issues fixed except for -+ Itcl_DecodeScopedCommand. Will address this next. -+ -+2003-04-04 andreas_kupries -+ * itcl/configure: -+ * itk/configure: -+ * tcl.m4: -+ * itcl/configure.in: -+ * itk/configure.in: -+ * tclconfig/tcl.m4: Updated to newest tcl.m4, regenerated configure's. -+ -+2003-01-28 davygrvy -+ * itcl/configure: -+ * itk/configure: -+ * itk/configure.in: -+ Make sure threading is always on for compiling. -+ -+2002-10-16 andreas_kupries -+ * itcl/configure: -+ * itk/configure: -+ * tcl.m4: tcl.m4 typo correction, Regen'd. aix fix -+ -+2002-10-15 andreas_kupries -+ * itcl/configure: -+ * itk/configure: -+ * tcl.m4: Regen'd configure for new tcl.m4. -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: -+ Changed to propagate an initial CFLAGS value -+ to the final definition. A TEA condition (SHARED_BUILD == 1) -+ squashed it, causing it the build system to loose the -+ +DAportable we specify for the AS PA-RISC2.2 build host. This is -+ a problem for _all_ TEA and TEA 2 based configure files. -+ -+2002-10-15 hobbs -+ * itcl/configure: move the CFLAGS definition into -+ * itcl/configure.in: TEA_ENABLE_SHARED and make it pick up the env -+ * itk/configure: CFLAGS at configure time. -+ * itk/configure.in: -+ * tcl.m4: -+ -+2002-09-29 davygrvy -+ * itcl/win/makefile.vc: -+ needed `if !exist` logic for the non-8.4 case. -+ -+ * itcl/win/makefile.vc: -+ Use virtual base address rule from the master file contained in -+ the Tcl source. -+ -+ * itcl/library/itcl.tcl: -+ Reference to [itcl_class] removed. -+ -+2002-08-12 andreas_kupries -+ * itcl/generic/itcl_class.c (ItclDestroyClassNamesp): Applied itcl -+ patch 593112 provided by Reinhard Max -+ . This fixes the segfault in itcl bug -+ 577719, reported by Simon White . -+ -+2002-08-11 davygrvy -+ * itcl/generic/itcl_class.c (Itcl_ClassVarResolver, -+ Itcl_ClassCompiledVarResolver): -+ * itcl/generic/itcl_object.c (Itcl_ScopedVarResolver, -+ ItclTraceThisVar): -+ * itcl/generic/itcl_parse.c (Itcl_ParseVarResolver): -+ * itcl/generic/itclInt.decls: -+ Signiture changes to match 8.4b2 CONST'ification of the -+ Tcl_ResolveVarProc typedef. Stubs slot positions nor sizes -+ have changed -- just the sigs. -+ -+ * itk/win/makefile.vc: -+ more install target fixes -+ -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itclStubInit.c: Re-gen from modified genStubs.tcl -+ for the special TCL_EXTERN macro changes that Itcl has. -+ -+ * itk/generic/itk.h: speling error. -+ -+ * README.vc.txt: This no longer is needed. -+ -+ * itcl/generic/itcl.h: Borland TCL_EXTERN support revistited and -+ refreshed. -+ -+ * itcl/win/makefile.vc: -+ * itcl/Makefile.in: Removed itcl_obsolete.c from the build -+ instructions. -+ -+ * itcl/generic/itcl_obsolete.c (deleted): -+ * itcl/generic/itcl_cmds.c: Removed old [itcl_class] command -+ and old backward support that came with it. -+ -+ * itk/generic/itk.h: -+ * itk/generic/itcl.h: Borland TCL_EXTERN support revistited and -+ refreshed. -+ -+ * itk/generic/itkDecls.h: -+ * itk/generic/itkStubInit.c: regenerated for newer Borland TCL_EXTERN -+ support refreshing. -+ -+ * itk/generic/itk_option.c (Itk_TraceClassDestroy): -+ Signiture change to match 8.4b2 CONST'ification. -+ -+ * itk/generic/itk_archetype.c: CONST`ification updates. -+ -+ * itk/win/makefile.vc: genstubs target fixed. -+ -+ * itcl/doc/itcl_class.n: -+ * itcl/doc/itcl_info.n: old docs for old commands removed, removed. -+ -+ * itk/win/makefile.vc: install target fixed -+ -+2002-07-17 hobbs -+ -+ * itcl/itclConfig.sh.in: dupped vars to have both itcl_* and -+ ITCL_* to support apps that used old-style itclConfig.sh. -+ -+2002-06-13 davygrvy -+ * itk/library/Toplevel.itk (destructor): -+ * itk/library/Widget.itk (destructor): Remove the -+ hull component after possibly destroying the hull. -+ Destroy any component that still exists after -+ destroying the hull since it must have been -+ created outside the hull. -+ * itk/tests/toplevel.test: -+ * itk/tests/widget.test: Test that a component -+ outside the hull is destroyed when the mega-widget -+ is destroyed. Also check for case where one external -+ widget contains another. -+ [Patch 515010] -+ -+2002-05-14 davygrvy -+ * itk/generic/itk_archetype.c: -+ * itk/library/itk.tcl: -+ -+2002-05-14 Mo DeJong -+ -+ * itk/generic/itk_archetype.c (ArchComponent, Itk_ArchCompDeleteCmd, -+ Itk_CreateArchComponent, Itk_DelArchComponent): Save a copy -+ of the window path name in the ArchComponent struct and use -+ it in the Itk_ArchCompDeleteCmd method. The old code was -+ invoking Tk_PathName(tkwin) on a Tk_Window which lead to -+ a memory access on memory that has already been free'd -+ when the widget was destroyed. -+ * itk/library/itk.tcl (itk::remove_destroy_hook): Don't attempt -+ to remove the widget binding if the widget has already been -+ destroyed. -+ -+2002-05-02 davygrvy -+ * itcl/configure: -+ * itk/configure: -+ re'gened with autoconf 2.13-4 -+ -+2002-04-25 davygrvy -+ * itcl/win/makefile.vc: -+ install bug set pkgIndex.tcl to load itcl33.dll.dll. corrected. -+ -+ * itcl/doc/is.n: -+ Changed "last update" to be 3.3 instead 3.2 -+ -+ * itcl/generic/itcl_cmds.c: -+ Patch from Brett Schwarz for not exporting itcl::is [Patch -+ 548757] -+ -+ * itcl/doc/is.n: -+ small format fix. -+ -+2002-04-20 davygrvy -+ * config.vc: -+ * itcl/win/.cvsignore: -+ * itcl/win/makefile.vc: -+ * itcl/win/nmakehlp.c: -+ * itcl/win/toaster.bmp: -+ * makefile.vc: -+ * rules.vc: -+ makefile.vc changes. -+ -+ * pkg.vc: -+ missed this file.. -+ -+ * itcl/configure.in: -+ * itcl/generic/itcl.h: -+ With a new command, we need to bump up the version to 3.3.0 -+ -+ * itcl/generic/itcl_objects.c: -+ I missed a CONST for ItclTraceThisVar() -+ -+ * itcl/doc/is.n: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itclStubInit.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/tests/basic.test: -+ Added the itcl::is command from Brett Schwarz. -+ Untested by me, but looks great. -+ [Patch 546343 546344 546345 546346] -+ -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_objects.c: -+ * itk/generic/itk_option.c: -+ minor changes for CONST'ification project. -+ -+ * itk/win/.cvsignore: -+ * itk/win/makefile.vc: -+ * itk/win/nmakehlp.c: -+ * itk/win/toaster.bmp: -+ makefile.vc changes to match the core. -+ -+ * itk/configure.in: -+ missed this file, too -+ -+2002-04-11 Jeff Hobbs -+ -+ * itcl/configure: -+ * itk/configure: -+ * tcl.m4: Enabled COFF as well as CV style debug info with -+ --enable-symbols to allow Dr. Watson users to see function info. -+ More info on debugging levels can be obtained at: -+ http://msdn.microsoft.com/library/en-us/dnvc60/html/gendepdebug.asp -+ -+2002-04-03 Jeff Hobbs -+ -+ * */configure: regend -+ * configure.in: removed prefix default calls -+ * itcl/configure.in: -+ * itk/configure.in: -+ * tcl.m4: updated of TEA base -+ -+ * itcl/tests/mkindex.test: corrected to work tests are run from a -+ different build dir -+ -+ * itcl/Makefile.in: -+ * itk/Makefile.in: updated to use DESTDIR for install everywhere -+ and added shell and gdb targets -+ -+2002-04-01 Jeff Hobbs -+ -+ * itcl/Makefile.in (install-lib-binaries): -+ * itk/Makefile.in (install-lib-binaries): ensure that dynamic -+ library is installed executable -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: redid generation of itclConfig.sh (making it -+ work on Windows broke Unix). Retested so that it is happy on -+ Windows and Unix (calls ${CYGPATH} only when necessary). -+ -+2002-03-29 Jeff Hobbs -+ -+ * */configure: regenerated -+ * tcl.m4: updated from sample changes -+ -+2002-03-28 Jeff Hobbs -+ -+ * configure: -+ * configure.in: -+ * tcl.m4: -+ * itcl/Makefile.in: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/itclConfig.sh.in: -+ * itcl/pkgIndex.tcl.in: -+ * itcl/generic/itclStubLib.c: -+ * itcl/tests/all.tcl: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/pkgIndex.tcl.in: -+ * itk/tests/all.tcl: -+ * config/installFile.tcl (removed): -+ * config/mkinstalldirs (removed): Massive overhaul (and -+ simplification) of the build framework to adapt to TEA 2002 -+ specs. Dynamic libraries now install in the pkglibdir (before it -+ was libdir), itclConfig.sh is properly generated and itk uses it. -+ Stubs libraries are now correctly generated and used. You can now -+ build and test itcl/itk against built but not installed Tcl/Tk. -+ -+2002-03-27 Jeff Hobbs -+ -+ * configure: -+ * tcl.m4: corrected pointer to ldAix to use Tcl version and add -+ -lc for AIX builds -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: corrected to use SHLIB_LD_LIBS instead of -+ TCL_SHLIB_LD_LIBS. -+ -+2002-03-02 Andreas Kupries -+ -+ * itcl/Makefile.in: -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itcl_bicmds.c: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/generic/itcl_obsolete.c: -+ * itcl/generic/itcl_parse.c: -+ * itcl/generic/itcl_util.c: -+ * itk/Makefile.in: -+ * itk/generic/itk.decls: -+ * itk/generic/itk_archetype.c: -+ * itk/generic/itk_option.c: Applied SF patch #511035 (provided by -+ Don Porter ) to remove warnings -+ related to TIP 27. -+ -+2002-01-16 Andreas Kupries -+ -+ * tcl.m4: Fix from patch #501979 applied. -+ -+ * itcl/configure: -+ * itk/configure: Regenerated. -+ -+2002-01-10 David Gravereaux -+ -+ * itcl/generic/itcl_cmds.c (Itcl_FindObjectsCmd, Itcl_FindClassesCmd): -+ optimized use of Tcl_Objs to remove the creation of new ones that ended -+ just being set to the interp's result. Let it use the result obj -+ instead. Changed a few Tcl_GetStringFromObj() calls to Tcl_GetString() -+ when a length int* isn't used. -+ -+ * itcl/generic/itcl.h: fix from patch #501979 applied. -+ -+2001-11-24 David Gravereaux -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclIntDecls.h: -+ * itk/generic/itk.h: -+ * itk/generic/itkDecls.h: -+ * itk/generic/itk.decls: Changed redefining the macro EXTERN to -+ making a new macro called TCL_EXTERN to get this Borland problem -+ squashed without breaking all headers included after itcl.h that -+ use the EXTERN macro. -+ -+2001-11-05 Jeff Hobbs -+ -+ * itcl/tests/ensemble.test: fixed 1.5 to work with 8.4 updated -+ warning messages -+ -+2001-10-29 Jeff Hobbs -+ -+ * configure: -+ * itcl/configure: -+ * itk/configure: regen'ed -+ * tcl.m4: changed MSSDK cygpath check to use pipe instead of -+ subshell to only occur at the right point. -+ -+2001-10-25 Jeff Hobbs -+ -+ * configure: -+ * tcl.m4: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: added Win64 build support. -+ -+ * itcl/generic/itcl_methods.c (Itcl_GetMemberFuncUsage): corrected -+ casting of CONST char * to prevent compile warnings. -+ -+ * itcl/generic/itcl_ensemble.c (CreateEnsemble, AddEnsemblePart): -+ made the <8.4 Tcl header version changes easier in the code. -+ -+2001-10-24 Jeff Hobbs -+ -+ * itcl/generic/itcl_cmds.c (Itcl_FindObjectsCmd): fixed potential -+ crash where cmdName was never initialized -+ -+2001-09-06 David Gravereaux -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itclIntDecls.h: -+ * itk/generic/itk.h: -+ * itk/generic/itkDecls.h: EXTERN macro changed to support TIP#60 -+ in draft form. [Incr Tcl] will be the "successful implementation" -+ part of the TIP. -+ -+2001-09-06 David Gravereaux -+ -+ * itcl/generic/itcl_util.c: Threading patch from "Haneef Mohammed" -+ . -+ [Patch: 445670] -+ -+ -=[ Incr Tcl/Tk 3.2.1 tagged as done. ]=- -+ -+2001-06-22 David Gravereaux -+ -+ * tcl.m4: Added support for MacOS X [#435256] -+ -+ * itk/win/makefile.vc: fixed a bad macro use in the genstubs target. -+ -+ * itk/generic/itk_cmds.c: Added Itk_SafeInit(). -+ -+ * itk/generic/itk.decls: -+ * itk/generic/itkDecls.h: -+ * itk/generic/itkStubInit.c: Needed to add Itk_SafeInit() to the -+ Stubs table. Regen'd Stubs table. -+ -+2001-05-28 Andreas Kupries -+ -+ * itcl/Makefile.in: -+ * itk/Makefile.in: -+ * iwidgets/Makefile.in: Fixed installation of manpages, added -+ invocations of "basename" to create the correct paths into the -+ installation directories. Fixes [#427118]. -+ -+2001-05-25 davygrvy -+ * ChangeLog (new): -+ Auto-generated this from the output of `cvs log`. This will be the -+ day-to-day reference of per-commits. CHANGES will now be the digest -+ of the data in here. Just like how Tcl does it. Information from -+ iwidgets was not used. -+ -+ * itk/generic/itk.h: -+ * itk/generic/itkStubLib.c: -+ * itk/generic/itk_cmds.c: added CONST to return type for -+ Itk_InitStubs() to match what Kevin Kenny is doing to Tcl. Along -+ with a little lint cleaning regarding Stubs. -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclStubLib.c: -+ added CONST to return type for Itcl_InitStubs() to match what -+ Kevin Kenny is doing to Tcl -+ -+2001-05-24 davygrvy -+ * README.vc.txt: -+ instructions how to use makefile.vc to build the package -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/itclConfig.sh.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/itkConfig.sh.in: -+ Bug #427113 -+ -+2001-05-23 davygrvy -+ * itcl/win/makefile.vc: -+ added missing quotes around include paths. -+ -+ * .cvsignore: -+ * configure: -+ * configure.in: -+ changed configure.in to the new iwidgets subdir. Removed the older -+ references to iwidgets3.0.0 and iwidgets2.2.0 -+ -+ * configure: -+ this could be useful. -+ -+ * itcl/.cvsignore: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/.cvsignore: -+ * itk/configure: -+ * itk/configure.in: -+ Updated patch level to 3.2.1 in prep for a release. -+ -+ * itcl/win/makefile.vc: -+ * itcl/win/rc/itcl.rc: -+ yet another rc problem repaired -+ -+ * itcl/win/makefile.vc: -+ rc problem repaired -+ -+2001-05-22 davygrvy -+ * itcl/generic/itcl_objects.c: -+ * itcl/tests/interp.test: -+ patch #426205, self deleting class caused core dump. -+ -+ * itk/generic/itk_archetype.c: -+ * itk/generic/itk_cmds.c: -+ Fix for Tcl_GetCommandName() now returning a CONST char * -+ from the changes Kevin Kenny is doing to the HEAD tcl code. -+ This hasn't been tested with older header files, yet. -+ -+ * config.vc: -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: -+ * itk/win/rc/itk.rc: -+ * makefile.vc: -+ makefile.vc actually works again. -+ -+ * itk/win/rc/cursor00.cur: -+ * itk/win/rc/cursor02.cur: -+ * itk/win/rc/cursor04.cur: -+ * itk/win/rc/cursor06.cur: -+ * itk/win/rc/cursor08.cur: -+ * itk/win/rc/cursor0a.cur: -+ * itk/win/rc/cursor0c.cur: -+ * itk/win/rc/cursor0e.cur: -+ * itk/win/rc/cursor10.cur: -+ * itk/win/rc/cursor12.cur: -+ * itk/win/rc/cursor14.cur: -+ * itk/win/rc/cursor16.cur: -+ * itk/win/rc/cursor18.cur: -+ * itk/win/rc/cursor1a.cur: -+ * itk/win/rc/cursor1c.cur: -+ * itk/win/rc/cursor1e.cur: -+ * itk/win/rc/cursor20.cur: -+ * itk/win/rc/cursor22.cur: -+ * itk/win/rc/cursor24.cur: -+ * itk/win/rc/cursor26.cur: -+ * itk/win/rc/cursor28.cur: -+ * itk/win/rc/cursor2a.cur: -+ * itk/win/rc/cursor2c.cur: -+ * itk/win/rc/cursor2e.cur: -+ * itk/win/rc/cursor30.cur: -+ * itk/win/rc/cursor32.cur: -+ * itk/win/rc/cursor34.cur: -+ * itk/win/rc/cursor36.cur: -+ * itk/win/rc/cursor38.cur: -+ * itk/win/rc/cursor3a.cur: -+ * itk/win/rc/cursor3c.cur: -+ * itk/win/rc/cursor3e.cur: -+ * itk/win/rc/cursor40.cur: -+ * itk/win/rc/cursor42.cur: -+ * itk/win/rc/cursor44.cur: -+ * itk/win/rc/cursor46.cur: -+ * itk/win/rc/cursor48.cur: -+ * itk/win/rc/cursor4a.cur: -+ * itk/win/rc/cursor4c.cur: -+ * itk/win/rc/cursor4e.cur: -+ * itk/win/rc/cursor50.cur: -+ * itk/win/rc/cursor52.cur: -+ * itk/win/rc/cursor54.cur: -+ * itk/win/rc/cursor56.cur: -+ * itk/win/rc/cursor58.cur: -+ * itk/win/rc/cursor5a.cur: -+ * itk/win/rc/cursor5c.cur: -+ * itk/win/rc/cursor5e.cur: -+ * itk/win/rc/cursor60.cur: -+ * itk/win/rc/cursor62.cur: -+ * itk/win/rc/cursor64.cur: -+ * itk/win/rc/cursor66.cur: -+ * itk/win/rc/cursor68.cur: -+ * itk/win/rc/cursor6a.cur: -+ * itk/win/rc/cursor6c.cur: -+ * itk/win/rc/cursor6e.cur: -+ * itk/win/rc/cursor70.cur: -+ * itk/win/rc/cursor72.cur: -+ * itk/win/rc/cursor74.cur: -+ * itk/win/rc/cursor76.cur: -+ * itk/win/rc/cursor78.cur: -+ * itk/win/rc/cursor7a.cur: -+ * itk/win/rc/cursor7c.cur: -+ * itk/win/rc/cursor7e.cur: -+ * itk/win/rc/cursor80.cur: -+ * itk/win/rc/cursor82.cur: -+ * itk/win/rc/cursor84.cur: -+ * itk/win/rc/cursor86.cur: -+ * itk/win/rc/cursor88.cur: -+ * itk/win/rc/cursor8a.cur: -+ * itk/win/rc/cursor8c.cur: -+ * itk/win/rc/cursor8e.cur: -+ * itk/win/rc/cursor90.cur: -+ * itk/win/rc/cursor92.cur: -+ * itk/win/rc/cursor94.cur: -+ * itk/win/rc/cursor96.cur: -+ * itk/win/rc/cursor98.cur: -+ * itk/win/rc/itkwish.rc: -+ * itk/win/winMain.c: -+ Removing of old cruft. itkwishXX.exe is no longer needed as -+ itkXX.dll is a pure extension and loads in a vanilla wish just -+ fine. -+ -+ * itcl/win/pkgIndex.tcl: -+ * itk/win/pkgIndex.tcl: -+ we'll auto gen these from the makefile -+ -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: -+ fixed include paths to make sure paths to itcl.h and itk.h in the -+ source tree are mentioned first to avoid a possible bug during -+ building. -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: -+ patch #426203 -+ -+ * itk/win/makefile.vc: -+ Mostly working. Not fully tested, but lots closer. -+ -+ * itk/win/makefile.vc: -+ more closer, but not yet perfect. -+ -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_methods.c: -+ Fix for Tcl_GetCommandName() now returning a CONST char * -+ from the changes Kevein Kenny is doing to the HEAD tcl code. -+ This hasn't been tested with older header files, yet. -+ -+ * itk/generic/itk_cmds.c: -+ Removed old reference to external ItkStubs structure. -+ Old cruft left from before Itk_InitStubs existed. -+ -+ * itcl/win/itcl.rc: -+ * itcl/win/rc/itcl.rc: -+ moving the resource script -+ -+ * itcl/win/rc/itcl.rc: -+ subtle changes. -+ -+ * itcl/win/itclsh.rc: -+ * itcl/win/tclAppInit.c: -+ Removing of old cruft. itclshXX.exe is no longer needed as -+ itclXX.dll is a pure extension and loads in a vanilla shell just -+ fine. -+ -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_util.c: -+ removed #include "tclCompile.h"! It wasn't needed. Those source -+ files made no reference to anything in it. -+ -+ * itk/win/makefile.vc: -+ closer to perfection. -+ -+ * itk/win/rc/itk.rc: -+ This is now the resource script for the dll. -+ -+ * itcl/generic/itcl_methods.c: -+ whoops.. doh! -+ -+ * itk/win/dllEntryPoint.c: -+ Stubs bug logic fix. Same as itcl/win/dllEntryPoint.c. This help -+ build a debug version of itcl/itk from the standard tclstubXX.lib -+ by removing the link requirement to msvcrt.lib which should never -+ have been there. -+ -+ * itcl/win/makefile.vc: -+ adapted for new location of itcl.rc -+ -+ * itk/win/rc/itk.rc: -+ subtle changes to infere the correct filename and support more -+ complete versioning info. -+ -+ * itcl/generic/itcl.h: -+ * itk/generic/itk.h: -+ changed RESOURCE_INCLUDED to RC_INVOKED. The windows resource -+ compiler to preset to define this already. -+ -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itcl_class.c: -+ Fix for Itcl_ClassCmdResolver() not being of type -+ Tcl_ResolveCmdProc with the CONST type added to param 2 in the -+ lastest headers. I haven't tested this with an older tcl.h yet. -+ Hopefully, this won't get messy. -+ -+ * itcl/win/makefile.vc: -+ small $(RCDIR) change. -+ -+ * itcl/generic/itcl_bicmds.c: -+ patch #426207, contextNs ptr can be NULL in Itcl_BiInfoClassCmd -+ -+2001-05-18 andreas_kupries -+ * itcl/generic/itcl_class.c: -+ [Fix 227811] Check for any command with the given name, not only -+ objects. -+ -+2001-05-17 andreas_kupries -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_cmds.c: Fixed bug 227804. -+ -+2001-05-11 Andreas Kupries -+ -+ * itk/generic/itk_archetype.c: Fixed bug 227876. -+ -+ * itcl/generic/itcl_objects.c: Fixed bug 227824 (and several -+ duplicates). -+ -+ * itk/generic/itk_archetype.c: Fixed bug 227814 -+ -+2001-04-25 davygrvy -+ * pkg.vc: moved the info about the iwidget version for makefile.vc -+ -+2001-04-18 davygrvy -+ * itcl/win/dllEntryPoint.c: -+ whoops... removed C++ style comment from this .c file :) -+ -+2001-04-14 davygrvy -+ -+ * itcl/library/itcl.tcl: Patch ID #227860 -+ -+ * rules.vc: added an rcs keyword -+ -+ * .cvsignore: just testing loginfo mailing... -+ -+ * .cvsignore: only making a change to see the history file get an -+ entry... -+ -+2001-04-12 davygrvy -+ * itcl/win/makefile.vc: progress is happening -+ -+2001-04-08 davygrvy -+ * itcl/win/.cvsignore: -+ * itk/win/.cvsignore: -+ no need to have CVS bother itself with the build directories -+ -+ * itcl/win/makefile.vc: -+ a large rewrite -+ -+ * makefile.vc: -+ todays work progress. I'm not done yet. -+ -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/generic/itcl_util.c: -+ Added mutex locking around the ItclPreservedList global hash table. This -+ appears to be the only work needed to support multithreading. -+ -+ * config.vc: -+ * pkg.vc: -+ * rules.vc: -+ new build files for VC++ compiles -+ -+ * .cvsignore: -+ ignore MSVC++ project artifacts -+ -+2001-04-07 davygrvy -+ * itcl/win/dllEntryPoint.c: -+ a small windows specific fix against Tcl's Stubs library. -+ -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itclStubLib.c: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_ensemble.c: -+ Tcl's internal header, tclInt.h, in 8.4a2 got a small change in -+ the Command structure that needed 2 changes in Itcl to resolve. -+ 1) #if/#else/#endif blocks added in itcl_class.c and -+ itc_ensemble.c allowing Itcl to compile. 2) added a global -+ variable called itclCompatFlags that's sets a flag in -+ Itcl_Init() that will modify the logic around access to -+ cmdPtr->flags/deleted. This way, any core compile will yeild a -+ fully forward/backward compatible binary (correct logic set at -+ runtime). -+ -+2000-12-21 smithc -+ * itk/win/makefile.vc: Patch #102914. -+ -+2000-12-12 smithc -+ * itcl/generic/itcl_ensemble.c: Patch #102774 -+ -+ * itcl/generic/itcl_class.c: Patch #100274 -+ -+2000-09-23 davidg -+ * CHANGES: added a note about the 3.2 release -+ -+ * itcl/generic/itcl.h: -+ Itcl_InitStub prototype in itcl/generic/itcl.h was getting name -+ mangled by c++ compilers. Fixed with an 'extern "C"' -+ appropriately applied. -+ -+2000-08-18 davidg -+ * itcl/generic/itcl_cmds.c: -+ Tcl_InitStubs was using the TCL_VERSION macro set by the -+ tcl.h header. Changed it to be "8.1" instead as it -+ doesn't matter unless Itcl needs special/new features of -+ the core it's header is from. But it doesn't.. so hard -+ code it for an 8.1 minimum. -+ -+2000-08-07 welch -+ * itcl/Makefile.in: -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclStubLib.c: -+ Final iteration, really, on getting Itcl_StubInit -+ correctly set up. -+ -+ * itk/generic/itk_cmds.c: -+ Removed redundant definitions of itclStubsPtr and -+ itclIntStubsPtr. -+ -+ * itcl/Makefile.in: -+ Added Itcl_InitStubs to the main Itcl library as well as -+ the stubs library for those applications (like Itk) that -+ call Itcl_InitStub but are linked against the main -+ library. -+ -+2000-08-04 davidg -+ * itcl/generic/itcl.decls: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itclStubInit.c: -+ * itk/generic/itk.decls: -+ * itk/generic/itkDecls.h: -+ * itk/generic/itkStubInit.c: -+ * itk/generic/itkStubLib.c: -+ added missing RCS strings -+ -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclStubLib.c: -+ * itk/generic/itk.h: -+ * itk/generic/itkStubLib.c: -+ yanked ugly linkage cruft from the StubLib functions. It's -+ always static. -+ -+2000-08-02 davidg -+ * itk/generic/itk_cmds.c: -+ simplified how Itcl Stubs are set -+ -+ * itcl/generic/itcl.h: -+ * itk/generic/itk.h: -+ added missing Itcl_InitStubs and Itk_InitStubs declarations. -+ -+2000-08-02 welch -+ * itk/generic/itkStubLib.c: -+ Fixed this new function -+ -+ * itcl/Makefile.in: -+ * itk/Makefile.in: -+ Changed this to use installFiles.tcl instead of install-sh -+ -+ * itcl/generic/itclStubLib.c: -+ Fix for new Itcl_InitStubs.c -+ -+ * config/installFile.tcl: -+ Added a Tcl version of install-sh that avoids copying a -+ file if the target has the same size and date stamp as the -+ source file already. This helps parallel builds on -+ different platforms avoid changing files out from one -+ another. -+ -+2000-07-29 welch -+ * itcl/configure: -+ * itk/configure: Ran autoconf -+ -+ * tcl.m4: Fixed this with respect to recent changes in windows def -+ of TCL_SRC_DIR -+ -+2000-07-23 wart -+ * itcl/Makefile.in: -+ * itk/Makefile.in: Use INSTALL_PROGRAM instead of INSTALL_DATA to -+ install libraries so they get execute permission on HPUX -+ -+2000-07-14 welch -+ * itcl/configure: -+ * itk/configure: Updated configure -+ -+ * config/install-sh: Nuked debug echo statement -+ -+2000-07-12 welch -+ * config/install-sh: Added -f to MV command -+ -+ * CHANGES: -+ * Makefile.in: Added some feedback to the top-level makefile loops -+ -+ * itcl/configure.in: -+ * itk/Makefile.in: -+ * itk/configure.in: Disable stubs in the case of static builds. -+ -+2000-07-07 csmith -+ * itcl/tests/info.test: patch submitted by David Cuthbert, 7/7/00 -+ -+ * itcl/generic/itcl_bicmds.c: -+ patch submitted by David Cuthbert, 7/7/00 to fix segfault caused by the -+ following code: -+ -+ itcl::class X { } -+ namespace eval X { info class } -+ -+2000-07-06 mmc -+ * Makefile.in: -+ * README: -+ Touched up README for itcl3.2 release. Fixed master Makefile to -+ avoid testing iwidgets2.2.0, which is an older release provided -+ only for backward-compatibility. Bug fixes and improvements are -+ made and tested in the newer iwidgets3.0.0 release. -+ -+ * CHANGES: -+ * itcl/generic/itcl.h: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/tests/all: -+ * itcl/tests/all.tcl: -+ * itcl/tests/basic.test: -+ * itcl/tests/defs: -+ * itcl/tests/inherit.test: -+ * itcl/tests/methods.test: -+ * itcl/tests/namespace.test: -+ * itcl/unix/Makefile.in: -+ * itcl/unix/configure.in: -+ * itcl/unix/itclConfig.sh.in: -+ * itcl/unix/pkgIndex.tcl.in: -+ * itcl/unix/test.tcl: -+ * itk/Makefile.in: -+ * itk/generic/itk_archetype.c: -+ * itk/library/itk.tcl: -+ * itk/tests/all: -+ * itk/tests/all.tcl: -+ * itk/tests/defs: -+ * itk/tests/widget.test: -+ * itk/unix/Makefile.in: -+ * itk/unix/configure.in: -+ * itk/unix/itkConfig.sh: -+ * itk/unix/itkConfig.sh.in: -+ * itk/unix/pkgIndex.tcl.in: -+ -+ 6/26/00 (bug fix) -+ Fixed Itcl_ClassVarResolver so that the formal -+ parameters in a method/proc take precedence over class -+ data members. -+ -+ 6/30/00 (bug fix) -+ Fixed all itcl/itk/iwidgets3.0.0 tests to run cleanly -+ with the new tcltest package. -+ -+ 7/1/00 (bug fix) -+ Fixed "itk_component delete" so that the composite -+ option list is cleaned up whenever a component is -+ deleted. For example, suppose a component is the sole -+ contributor of -font. When that component is removed -+ via "itk_component delete", the -font option goes away -+ as well. Also fixed the handling of the itk-delete-* -+ binding for the component. When the component is -+ removed, the binding tag is also removed by -+ itk::remove_destroy_hook. -+ -+ 7/5/00 (bug fix) -+ Fixed the check done during object creation to avoid -+ clobbering existing commands. Previously, itcl would -+ look for any command-- in the local *and* global -+ namespace--that might be clobbered. Now, it looks for -+ commands only in the local namespace, since those are -+ the only ones that could truly be clobbered. -+ -+ 7/5/00 (cleanup) -+ Removed obsolete Makefile/configure files in the various -+ "unix" directories. Makefiles and configure files now -+ reside one level above, in the standard TEA place. -+ -+2000-06-22 wart -+ * itcl/Makefile.in: -+ Added itclDecls.h to list of header files to install. -+ -+2000-06-22 welch -+ * itk/Makefile.in: -+ Installing stub table tkDecls.h -+ -+ * itcl/Makefile.in: -+ Installing all header files, not just public ones. -+ -+2000-06-16 matt -+ * itcl/generic/itcl_util.c: -+ Moved #ifndef NDEBUG inside Itcl_Assert routine otherwise -+ it may not get inclued BUT it is specified in the Stubs -+ Table..... -+ -+2000-06-06 wart -+ * itk/tests/all.tcl: -+ Added missing file for running test suite. -+ -+2000-06-01 wart -+ * itcl/Makefile.in: -+ * itcl/tests/basic.test: -+ * itcl/tests/body.test: -+ * itcl/tests/chain.test: -+ * itcl/tests/delete.test: -+ * itcl/tests/ensemble.test: -+ * itcl/tests/import.test: -+ * itcl/tests/info.test: -+ * itcl/tests/inherit.test: -+ * itcl/tests/interp.test: -+ * itcl/tests/local.test: -+ * itcl/tests/methods.test: -+ * itcl/tests/mkindex.test: -+ * itcl/tests/namespace.test: -+ * itcl/tests/protection.test: -+ * itcl/tests/scope.test: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/tests/interp.test: -+ * itk/tests/option.test: -+ * itk/tests/privacy.test: -+ * itk/tests/public.test: -+ * itk/tests/toplevel.test: -+ * itk/tests/widget.test: -+ Tests modified to work with TEA Makefile. -+ -+2000-04-19 mmc -+ * CHANGES: -+ * itcl/Makefile.in: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/doc/find.n: -+ * itcl/generic/itcl.h: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/tests/basic.test: -+ * itcl/tests/body.test: -+ * itcl/tests/chain.test: -+ * itcl/tests/defs: -+ * itcl/tests/delete.test: -+ * itcl/tests/ensemble.test: -+ * itcl/tests/info.test: -+ * itcl/tests/inherit.test: -+ * itcl/tests/local.test: -+ * itcl/tests/methods.test: -+ * itcl/tests/mkindex.itcl: -+ * itcl/tests/namespace.test: -+ * itcl/tests/protection.test: -+ * itcl/tests/scope.test: -+ * itcl/tests/tclIndex: -+ * itcl/unix/configure.in: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/tests/defs: -+ * itk/tests/option.test: -+ * itk/tests/widget.test: -+ * license.terms: -+ - fixed itcl::find to find classes/objects in *all* namespaces -+ - fixed tests to run cleanly -+ -+2000-03-28 csmith -+ * itcl/generic/itcl_cmds.c: -+ Patch for Ticket 4111, submitted by David Cuthbert: -+ -+ *** itcl3.1.0/itcl/generic/itcl_cmds.c.orig Tue Feb 1 16:37:53 2000 -+ --- itcl3.1.0/itcl/generic/itcl_cmds.c.new Tue Feb 1 -+ 16:38:06 2000 -+ *************** -+ *** 94,100 **** -+ static char safeInitScript[] = -+ "proc ::itcl::local {class name args} {\n\ -+ ! set ptr [uplevel eval [list $class $name] $args]\n\ -+ uplevel [list set itcl-local-$ptr $ptr]\n\ -+ set cmd [uplevel namespace which -command $ptr]\n\ -+ uplevel [list trace variable itcl-local-$ptr u \"::itcl::delete object $cmd; list\"]\n\ -+ -+ --- 94,100 ---- -+ static char safeInitScript[] = -+ "proc ::itcl::local {class name args} {\n\ -+ ! set ptr [uplevel [list $class $name] $args]\n\ -+ uplevel [list set itcl-local-$ptr $ptr]\n\ -+ set cmd [uplevel namespace which -command $ptr]\n\ -+ uplevel [list trace variable itcl-local-$ptr u \"::itcl::delete object $cmd; list\"]\n\ -+ -+ * itcl/library/itcl.tcl: -+ Patch for ticket 4111, submitted by David Cuthbert: -+ -+ *** itcl3.1.0/itcl/library/itcl.tcl.orig Tue Feb 1 16:38:24 2000 -+ --- itcl3.1.0/itcl/library/itcl.tcl.new Tue Feb 1 16:38:30 2000 -+ *************** -+ *** 27,33 **** -+ # alive until a procedure exits. -+ # ---------------------------------------------------------------------- -+ proc ::itcl::local {class name args} { -+ ! set ptr [uplevel eval [list $class $name] $args] -+ uplevel [list set itcl-local-$ptr $ptr] -+ set cmd [uplevel namespace which -command $ptr] -+ uplevel [list trace variable itcl-local-$ptr u \ -+ -+ --- 27,33 ---- -+ # alive until a procedure exits. -+ # ---------------------------------------------------------------------- -+ proc ::itcl::local {class name args} { -+ ! set ptr [uplevel [list $class $name] $args] -+ uplevel [list set itcl-local-$ptr $ptr] -+ set cmd [uplevel namespace which -command $ptr] -+ uplevel [list trace variable itcl-local-$ptr u \ -+ -+2000-03-20 wart -+ * itk/configure: -+ * itk/configure.in: -+ Fixed typo in variable name -+ -+2000-03-17 wart -+ * itcl/Makefile.in: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ Added TCL_EXTRA_CFLAGS to compile line to fix build problems on Irix -+ -+2000-02-04 wart -+ * itk/configure: -+ * itk/configure.in: -+ Fixed typo that was causing builds on CYGWIN_NT platforms not to pick up -+ the Tcl stub library (TCL_STUB_LIB_SPEC was not being substituted in the -+ Makefile) -+ -+2000-01-28 wart -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: -+ Fixed a few more places where the configure wasn't checking for cygwin on -+ Windows 95/98 -+ -+2000-01-24 wart -+ * itcl/configure: -+ * itk/configure: -+ Regenerated configure scripts to pick up changes to tcl.m4 -+ -+ * itcl/configure: -+ * itk/configure: -+ Regenerated configure scripts to pick up recent changes to tcl.m4 -+ -+ * tcl.m4: -+ * tcl.m4: -+ Updated to reflect recent TEA changes -+ -+2000-01-18 wart -+ * tcl.m4: -+ Updated to reflect recent TEA changes -+ -+2000-01-03 csmith -+ * itcl/unix/Makefile.in: -+ Patch submitted by Mo Dejong needed so Itcl will link to the Tcl libs -+ when Tcl is compiled with debugging on. -+ -+ * itcl/generic/itcl_parse.c: -+ Patch by Mo Dejong to fix a Windows NT/95 crashing problem where you can -+ build with debugging on, load the Itcl package, and press the X in the -+ upper right corner. Note that I'm unable to test this on Windows and -+ that this patch introduces a compiler warning. -+ -+ * itcl/generic/itcl_parse.c: -+ Duuuuhhhh.... -+ -+ This is the patch from Mo Dejong regarding the Windows NT/95 crashing -+ problem. My previous checkin of itcl_parse.c did not include all of -+ the patch - got in a hurry. Disregard the compiler warning mentioned -+ in my previous checkin. -+ -+ * itcl/tests/defs: -+ Patch submitted by Mo Dejong: needed to add "-force" option to the -+ namespace import command so fix a bug with 'make test'. -+ -+1999-11-24 wart -+ * itcl/configure: -+ * itk/configure: -+ regenerated configure scripts to pick up tcl.m4 changes -+ -+ * itcl/configure: -+ * itk/configure: -+ * tcl.m4: -+ tcl.m4: Updated to reflect recent TEA changes -+ -+ */configure: Regnereated with new tcl.m4 -+ -+ iwidgets2.2.0/Makefile.in: Don't copy nonexistent files -+ -+ * tcl.m4: -+ Updated to reflect recent TEA changes -+ -+1999-09-21 wart -+ * itk/Makefile.in: -+ Itk now installs appropriate library files. -+ -+1999-09-20 wart -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ pkgIndex on Windows now looks in the correct directory for the -+ .dll files. -+ -+1999-09-17 wart -+ * tcl.m4: -+ Updated to reflect recent changes -+ -+1999-09-15 wart -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/pkgIndex.tcl.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/pkgIndex.tcl.in: -+ Better pkgIndex.tcl files that should now work on solaris. -+ -+1999-09-14 wart -+ * itcl/Makefile.in: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/mkIndex.tcl.in: -+ * itcl/pkgIndex.tcl.in: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/mkIndex.tcl.in: -+ * itk/pkgIndex.tcl.in: -+ Fixed installation of pkgIndex.tcl file. We have to install a pre-made -+ pkgIndex.tcl file since pkg_mkIndex can't seem to make a usable one. -+ -+1999-09-10 wart -+ * itk/Makefile.in: -+ Fixed bug when calling mkIndex.tcl for itk -+ -+ reduced amount of output from "make install" in iwidgets -+ -+ * itcl/Makefile.in: -+ * itk/Makefile.in: -+ Removed Makefiles rules to regenerate the configure scripts. This was -+ causing problems when building on Windows and Unix simultaneoulsy. -+ -+1999-09-09 wart -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: -+ configure scripts now look for tclsh82d.exe executable when searching -+ for valid tcl interpreter. -+ -+ * Makefile.in: -+ Added pkgIndex files for Iwidgets -+ -+ Top level Makefile should no longer loop endlessly if the configure went bad. -+ -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/configure: -+ * itk/configure.in: -+ * tcl.m4: -+ Look for tclsh82d.exe before tclsh82.exe. -+ -+ configure scripts for itcl and itk now use the tcl.m4 macro SC_PROG_TCLSH. -+ -+1999-09-07 wart -+ * itcl/Makefile.in: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itk/Makefile.in: -+ * itk/configure: -+ * itk/configure.in: -+ configure now searches for tclsh82 shell in exec-prefix, then prefix, then -+ relative to tclConfig.sh, then in the users path. -+ -+1999-09-04 wart -+ * configure.in: -+ * itcl/Makefile.in: -+ * itcl/aclocal.m4: -+ * itcl/configure: -+ * itcl/configure.in: -+ * itcl/mkIndex.tcl.in: -+ * itk/Makefile.in: -+ * itk/aclocal.m4: -+ * itk/configure: -+ * itk/configure.in: -+ * itk/mkIndex.tcl.in: -+ * tcl.m4: -+ TEA changes. Itcl now uses the same Makefiles and configure scripts for -+ both Windows and Unix. -+ -+ Note that static shells are not yet done in this TEA implementation. -+ -+ * itcl/Makefile.in: -+ * itk/Makefile.in: -+ Temporarily removed pkg_mkIndex step from Makefile since it causes a -+ crash on Windows. -+ -+1999-08-21 matt -+ * itcl/unix/Makefile.in: -+ Fixed mismatch between configure script and makefile for stub -+ enabled builds -+ -+ * itk/unix/Makefile.in: -+ Fixed mismatch between conifgure script and Makefile for stub -+ enabled builds. -+ -+1999-06-28 hershey -+ * itk/unix/configure.in: -+ * itk/unix/itkConfig.sh: -+ remove version number from comments -+ -+1999-06-26 wart -+ * itcl/mac/itclMacLibrary.r: -+ * itcl/mac/pkgIndex.tcl: -+ * itcl/unix/configure.in: -+ * itk/mac/itkMacLibrary.r: -+ * itk/mac/pkgIndex.tcl: -+ * itk/unix/configure.in: -+ * itk/win/pkgIndex.tcl: -+ Version numbers changed from 3.0.1 to 3.1.0 -+ -+1999-05-25 redman -+ * itcl/generic/itcl.h: -+ * itcl/win/makefile.vc: -+ * itk/win/makefile.vc: -+ * itk/win/winMain.c: -+ * makefile.vc: -+ Fixed the use of Tcl & Tk stubs on Windows. -+ -+ Now the extra shells (itclsh31.exe and itkwish31.exe) are being -+ created and run properly. -+ -+ * itcl/generic/itcl_cmds.c: -+ * itcl/unix/Makefile.in: -+ * itcl/unix/configure.in: -+ * itcl/unix/itclConfig.sh.in: -+ * itk/generic/itk_cmds.c: -+ * itk/unix/Makefile.in: -+ * itk/unix/configure.in: -+ * itk/unix/itkConfig.sh: -+ * itk/unix/itkConfig.sh.in: -+ Fix the makefile and configure files, etc., for Unix -+ in order to compile with Tcl/Tk 8.1 with stubs. -+ -+ Builds itclsh and itkwish properly. -+ -+1999-05-24 redman -+ * itcl/generic/itcl.decls: -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclDecls.h: -+ * itcl/generic/itclInt.decls: -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itclIntDecls.h: -+ * itcl/generic/itclStubInit.c: -+ * itcl/generic/itclStubLib.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_ensemble.c: -+ * itcl/tests/defs: -+ * itcl/tests/tclIndex: -+ * itcl/win/itcl.rc: -+ * itcl/win/makefile.vc: -+ * itcl/win/pkgIndex.tcl: -+ * itk/generic/itk.decls: -+ * itk/generic/itk.h: -+ * itk/generic/itkDecls.h: -+ * itk/generic/itkStubInit.c: -+ * itk/generic/itkStubLib.c: -+ * itk/generic/itk_cmds.c: -+ * itk/win/makefile.vc: -+ * itk/win/rc/itk.rc: -+ * makefile.vc: -+ Applied patches from David Gravereaux to update Itcl and Itk to -+ use Tcl/Tk 8.1 stubs and provide it's own stubs interface, on -+ Windows only. -+ -+ Changes have not been made to support I18N (if needed) or MT-safety. -+ -+ Version number has been changed to 3.1.0 (from 3.0.1) by -+ David to coincide with the shift to Tcl/Tk 8.1. -+ -+ Building of itclsh31.exe and iwish31.exe have been disabled -+ until someone else makes them work properly. Test suites -+ have been modified to work with tclsh81.exe instead. -+ -+1999-02-05 stanton -+ * itk/unix/itkConfig.sh: -+ updated version to itcl3.0.1 -+ -+1999-01-15 rjohnson -+ * itcl/tests/mkindex.itcl: -+ -+ Fixed typo in tcl file. -+ -+1998-10-29 stanton -+ * itcl/doc/itcl_info.n: -+ Cleaned up some out of date references to 2.2 syntax. -+ -+1998-09-14 stanton -+ * itk/win/rc/cursor00.cur: -+ * itk/win/rc/cursor02.cur: -+ * itk/win/rc/cursor04.cur: -+ * itk/win/rc/cursor06.cur: -+ * itk/win/rc/cursor08.cur: -+ * itk/win/rc/cursor0a.cur: -+ * itk/win/rc/cursor0c.cur: -+ * itk/win/rc/cursor0e.cur: -+ * itk/win/rc/cursor10.cur: -+ * itk/win/rc/cursor12.cur: -+ * itk/win/rc/cursor14.cur: -+ * itk/win/rc/cursor16.cur: -+ * itk/win/rc/cursor18.cur: -+ * itk/win/rc/cursor1a.cur: -+ * itk/win/rc/cursor1c.cur: -+ * itk/win/rc/cursor1e.cur: -+ * itk/win/rc/cursor20.cur: -+ * itk/win/rc/cursor22.cur: -+ * itk/win/rc/cursor24.cur: -+ * itk/win/rc/cursor26.cur: -+ * itk/win/rc/cursor28.cur: -+ * itk/win/rc/cursor2a.cur: -+ * itk/win/rc/cursor2c.cur: -+ * itk/win/rc/cursor2e.cur: -+ * itk/win/rc/cursor30.cur: -+ * itk/win/rc/cursor32.cur: -+ * itk/win/rc/cursor34.cur: -+ * itk/win/rc/cursor36.cur: -+ * itk/win/rc/cursor38.cur: -+ * itk/win/rc/cursor3a.cur: -+ * itk/win/rc/cursor3c.cur: -+ * itk/win/rc/cursor3e.cur: -+ * itk/win/rc/cursor40.cur: -+ * itk/win/rc/cursor42.cur: -+ * itk/win/rc/cursor44.cur: -+ * itk/win/rc/cursor46.cur: -+ * itk/win/rc/cursor48.cur: -+ * itk/win/rc/cursor4a.cur: -+ * itk/win/rc/cursor4c.cur: -+ * itk/win/rc/cursor4e.cur: -+ * itk/win/rc/cursor50.cur: -+ * itk/win/rc/cursor52.cur: -+ * itk/win/rc/cursor54.cur: -+ * itk/win/rc/cursor56.cur: -+ * itk/win/rc/cursor58.cur: -+ * itk/win/rc/cursor5a.cur: -+ * itk/win/rc/cursor5c.cur: -+ * itk/win/rc/cursor5e.cur: -+ * itk/win/rc/cursor60.cur: -+ * itk/win/rc/cursor62.cur: -+ * itk/win/rc/cursor64.cur: -+ * itk/win/rc/cursor66.cur: -+ * itk/win/rc/cursor68.cur: -+ * itk/win/rc/cursor6a.cur: -+ * itk/win/rc/cursor6c.cur: -+ * itk/win/rc/cursor6e.cur: -+ * itk/win/rc/cursor70.cur: -+ * itk/win/rc/cursor72.cur: -+ * itk/win/rc/cursor74.cur: -+ * itk/win/rc/cursor76.cur: -+ * itk/win/rc/cursor78.cur: -+ * itk/win/rc/cursor7a.cur: -+ * itk/win/rc/cursor7c.cur: -+ * itk/win/rc/cursor7e.cur: -+ * itk/win/rc/cursor80.cur: -+ * itk/win/rc/cursor82.cur: -+ * itk/win/rc/cursor84.cur: -+ * itk/win/rc/cursor86.cur: -+ * itk/win/rc/cursor88.cur: -+ * itk/win/rc/cursor8a.cur: -+ * itk/win/rc/cursor8c.cur: -+ * itk/win/rc/cursor8e.cur: -+ * itk/win/rc/cursor90.cur: -+ * itk/win/rc/cursor92.cur: -+ * itk/win/rc/cursor94.cur: -+ * itk/win/rc/cursor96.cur: -+ * itk/win/rc/cursor98.cur: -+ * itk/win/rc/itk.ico: -+ Fixed binary files -+ -+1998-08-23 stanton -+ * itcl/doc/scope.n: -+ fixed section -+ -+1998-08-20 welch -+ * itcl/generic/itcl.h: -+ Patchlevel 3.0.1 -+ -+1998-08-18 welch -+ * itk/win/pkgIndex.tcl: -+ Fixed loading .dll -+ -+ * itcl/win/pkgIndex.tcl: -+ fixed loading .dll -+ -+1998-08-18 suresh -+ -+ * itk/generic/itk_cmds.c: Removed pedantic check for existance of -+ "::itk" namespace. Changed code to conditionally create the -+ "::itk" namespace based on whether it already exists or not. -+ These changes were necessary to facilitate the wrapper dictating -+ where the [incr Tk] libraries are stored in a wrapped application -+ via the variable '::itk::library". -+ -+1998-08-12 welch -+ * itk/win/makefile.bc: -+ * itk/win/makefile.vc: -+ Fixes for tkConsole -+ -+1998-08-11 welch -+ * CHANGES: -+ * README: -+ * itcl/doc/class.n: -+ * itcl/doc/scope.n: -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclInt.h: -+ * itcl/generic/itcl_bicmds.c: -+ * itcl/generic/itcl_class.c: -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_methods.c: -+ * itcl/generic/itcl_objects.c: -+ * itcl/library/itcl.tcl: -+ * itcl/mac/itclMacApplication.r: -+ * itcl/mac/itclMacLibrary.r: -+ * itcl/mac/itclMacResource.r: -+ * itcl/mac/pkgIndex.tcl: -+ * itcl/mac/tclMacAppInit.c: -+ * itcl/tests/info.test: -+ * itcl/unix/Makefile.in: -+ * itcl/unix/configure.in: -+ * itcl/unix/tclAppInit.c: -+ * itcl/win/itcl.rc: -+ * itcl/win/itclsh.rc: -+ * itcl/win/makefile.vc: -+ * itcl/win/pkgIndex.tcl: -+ * itcl/win/tclAppInit.c: -+ * itk/doc/Toplevel.n: -+ * itk/generic/itk.h: -+ * itk/generic/itk_cmds.c: -+ * itk/mac/MW_ItkHeader.pch: -+ * itk/mac/itkMacApplication.r: -+ * itk/mac/itkMacLibrary.r: -+ * itk/mac/itkMacResource.r: -+ * itk/mac/pkgIndex.tcl: -+ * itk/mac/tclIndex: -+ * itk/mac/tkMacAppInit.c: -+ * itk/unix/Makefile.in: -+ * itk/unix/configure.in: -+ * itk/unix/tkAppInit.c: -+ * itk/win/makefile.vc: -+ * itk/win/pkgIndex.tcl: -+ * itk/win/rc/itk.rc: -+ * itk/win/rc/itkwish.rc: -+ * itk/win/winMain.c: -+ * makefile.vc: -+ 3.0 final from Michael -+ -+1998-08-07 stanton -+ * itcl/generic/itcl_methods.c: -+ changed to reflect new CompiledLocal structure -+ changed to reflect changes in resolver api -+ changed to use TclInitCompiledLocals interface -+ -+ * itcl/generic/itclInt.h: -+ changed to reflect new resolver api -+ -+ * itcl/generic/itcl_bicmds.c: -+ * itcl/generic/itcl_ensemble.c: -+ changed to reflect new CompiledLocal structure -+ -+ * itcl/generic/itcl_class.c: -+ changed to reflect changes in resolver api -+ -+ * itcl/doc/scope.n: fixed section name -+ -+ * itcl/generic/itcl_cmds.c: -+ * itcl/generic/itcl_util.c: -+ * itk/doc/Toplevel.n: lint -+ -+1998-08-04 escoffon -+ * itcl/generic/itcl.h: -+ * itcl/generic/itclInt.h: -+ * itk/generic/itk.h: EXPORT is now TCL_STORAGE_CLASS -+ -+1998-07-29 escoffon -+ * itcl/generic/itcl.h: -+ added setting of EXPORT to DLLEXPORT if we are building the -+ itcl lib. -+ -+ * itk/generic/itk.h: -+ - dropped the EXPORT macro, it is now part of EXTERN -+ - added setting of EXPORT to DLLEXPORT if we are building the itk lib. -+ -+ * itcl/generic/itclInt.h: -+ - added setting of EXPORT to DLLEXPORT if we are building the itcl lib. -+ - use EXTERN instead of extern for Itcl_Assert -+ -+1998-07-28 stanton -+ * itcl/generic/itcl_cmds.c: -+ * itk/generic/itk_cmds.c: changed search order -+ -diff -Naur insight-6.8.orig/itcl/itcl/CHANGES insight-6.8.new/itcl/itcl/CHANGES ---- insight-6.8.orig/itcl/itcl/CHANGES 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/CHANGES 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,2041 @@ -+ -+ [incr Tcl] - CHANGE LOG -+========================================================================== -+ ----------------------- CHANGES FROM itcl-1.5 -------------------------- -+========================================================================== -+ -+ Release itcl-2.0 provides a new syntax for defining classes. The -+ new syntax is accessed using the new "itcl::class" command. For the -+ time being, the old syntax will be supported via the old "itcl_class" -+ command, but support for this will be phased out over time. -+ -+ Because both syntaxes are supported, the new version is "backward -+ compatible" with the previous itcl-1.5 release. However, there are -+ some semantic changes that may break existing scripts. These are -+ listed in detail in the section "INCOMPATIBLE CHANGES". -+ -+ -+ CATALOG OF NEW COMMANDS -+-------------------------------------------------------------------------- -+ Following is a brief catalog of new commands available in this release. -+ -+ == Tcl with Namespaces ================================================= -+ -+ delete namespace name ?name...? -+ -+ Deletes one or more namespaces, destroying all commands, variables, -+ and child namespaces within it. -+ -+ -+ ensemble name { -+ option optName arglist body -+ option optName arglist body -+ ... -+ ensemble optName { -+ option subOptName arglist body -+ option subOptName arglist body -+ ... -+ } -+ } -+ -+ Adds options to an ensemble called "name". If the ensemble does -+ not already exist, it is created automatically. An "ensemble" is -+ a toplevel command that groups a collection of sub-commands. For -+ example, the usual Tcl "info" command is an ensemble with options -+ like "globals", "level", "tclversion", etc. -+ -+ Ensembles are good for two reasons. First, new options can be -+ integrated in without modifying any source code or "switch" -+ statements. For example, [incr Tcl] adds the "info classes" -+ and "info objects" commands simply by adding options to the -+ "info" ensemble. Second, error messages are generated automatically -+ by the ensemble mechanism. Try invoking "info" with no options -+ and see the result. -+ -+ Each option declaration is just like a Tcl proc declaration, -+ with an option name, arglist and body. Ensembles can also -+ contain sub-ensembles with more options. -+ -+ -+ import add name ?name...? ?-where pos...? -+ import all ?name? -+ import list ?importList? -+ import remove name ?name...? -+ -+ Used to manipulate the "import" list for the current namespace. -+ When one namespace imports another, it gains access to all of -+ its public commands/variables as if they were part of the -+ same namespace. In other words, one namespace can be integrated -+ seamlessly into another by adding it to the import list of the -+ other namespace. By default, each namespace imports its parent, -+ so most namespaces import the global scope in some fashion. -+ -+ The form "import list" is used to query or set the import list -+ for the current namespace. The form "import all" returns the -+ namespace search path that is consulted when commands/variables -+ are accessed. -+ -+ -+ info context -+ -+ Returns the current namespace context. The global namespace -+ context is reported here as "", so it is easy to build -+ namespace paths like this: -+ -+ set path "[info context]::name" -+ -+ -+ info namespace all ?pattern? -+ -+ Returns a list of namespaces found in the current namespace -+ context, whose names match an optional string pattern. This -+ includes children of the current namespace, and children of -+ all imported namespaces. -+ -+ -+ info namespace children ?name? -+ -+ Returns a list of child namespaces for namespace "name", -+ or for the current namespace if "name" is not specified. -+ -+ -+ info namespace parent ?name? -+ -+ Returns the parent namespace for namespace "name", or -+ for the current namespace if "name" is not specified. -+ -+ -+ info namespace qualifiers string -+ -+ Parses a string of the form "namesp::namesp::name", and returns -+ the leading "namesp::namesp" scope qualifiers. -+ -+ -+ info namespace tail string -+ -+ Parses a string of the form "namesp::namesp::name", and returns -+ the trailing "name" element. -+ -+ -+ info protection ?-command? ?-variable? name -+ -+ Returns the protection level for an element. By default, "name" -+ is treated as a command name, but the "-command" or "-variable" -+ flags can be used to request a specific treatment. -+ -+ -+ info which ?-command? ?-variable? ?-namespace? name -+ -+ Reports the full namespace path (e.g., "::namesp::namesp::name") -+ for an element. By default, "name" is treated as a command name, -+ but the "-command", "-variable" and "-namespace" flags can be -+ used to request a specific treatment. -+ -+ -+ namespace name ?-local? ?-enforced val? ?--? ?commands? -+ -+ This is the usual mechanism for creating a namespace and defining -+ elements within it. -+ -+ If namespace "name" does not exist, it is created automatically. -+ The namespace name may include a full namespace path (e.g., -+ "namesp::namesp::namesp"). During the search for this namespace, -+ all imported namespaces are consulted. If the "-local" flag is -+ specified, then the search is restricted to the local namespace; -+ this prevents against accidentally importing a namespace if the -+ intent is to create a child namespace. -+ -+ If the "-enforced" flag is specified, then "val" is treated as a -+ boolean value; if true, then command/variable enforcement is -+ turned on for this namespace. Each time a new command is -+ referenced within the namespace, Tcl automatically calls a -+ procedure: -+ -+ enforce_cmd -+ -+ with the of the command that is about to be executed. The -+ "enforce_cmd" proc can return an error, and access to that command -+ will be denied. It can return another command name, or a more -+ specific namespace path, and that command will be used instead. -+ Or it can return "", and command lookup will continue via the -+ normal namespace rules (i.e., in local scope, imported namespaces, -+ etc.). -+ -+ Each time a new variable is referenced within an enforced -+ namespace, Tcl automatically calls a procedure: -+ -+ enforce_var -+ -+ with the of a global variable that is being referenced. -+ The "enforce_var" proc can return an error, and access to that -+ variable will be denied. It can return another variable name, -+ or a more specific namespace path, and that variable will be -+ used instead. Or it can return "", and variable lookup will -+ continue via the normal namespace rules (i.e., in local scope, -+ imported namespaces, etc.). -+ -+ Note that command/variable enforcement done at the Tcl language -+ level can be slow. There is also a C language interface for -+ the same functionality, which offers much better performance. -+ -+ The namespace is first found and updated with whatever flags were -+ specified. After that, if a "commands" string was specified, it -+ is executed in the context of the namespace. -+ -+ -+ public command ?arg arg...? -+ protected command ?arg arg...? -+ private command ?arg arg...? -+ -+ These commands attach a particular protection level to whatever -+ commands or variables are created while executing the specified -+ command. They are used in conjunction with commands like -+ "proc" and "variable" to create public/protected/private elements. -+ -+ -+ scope string -+ code ?-namespace name? command ?arg arg ...? -+ @scope namespace value -+ -+ The "scope" command takes a string and encodes it into an "@scope" -+ declaration. The "code" command performs a similar function, -+ but accepts multiple arguments and is usually used to wrap up -+ code fragments. The "@scope" declaration keeps a value (like a -+ variable name or code fragment) together with its context -+ namespace. It can be executed like an ordinary command: -+ -+ set cmd {@scope :: puts} -+ $cmd "hello world!" -+ -+ or used as an ordinary variable name: -+ -+ set var {@scope :: auto_path} -+ lappend $var /usr/local/mylib -+ -+ The difference, however, is that an "@scope" value bypasses the -+ usual access protections and guarantees that values have the -+ proper scope. -+ -+ Ordinary variable names refer to variables in the global -+ namespace. Ordinary code fragments are usually interpreted -+ by extensions like Tk in the global namespace. The "scope" -+ and "code" commands are used to wrap up variable names and -+ code fragments to preserve the namespace context. For example: -+ -+ namespace foo { -+ private variable state 0 -+ private proc show_state {mesg} { -+ global state -+ puts "$mesg: $state" -+ } -+ -+ checkbutton .cb -text "Toggle" \ -+ -variable [scope state] \ -+ -command [code show_state "current state"] -+ -+ pack .cb -+ } -+ -+ In this example, the checkbutton is tied to the variable -+ "foo::state" and executes the command "foo::show_state" -+ whenever it is pressed. -+ -+ When a Tk widget uses commands and variables within a -+ namespace, these names should be wrapped up as scoped -+ values, as shown above. -+ -+ -+ variable name ?value? -+ Creates a variable called "name" and initializes it to an optional -+ value. This is normally used in conjunction with public, protected -+ and private commands to declare variables within a namespace: -+ -+ namespace foo { -+ public variable x 0 -+ private variable y 1 -+ } -+ -+ If the variable "name" already exists, it updated to have -+ the protection level that is currently active. -+ -+ -+ == Tk with Namespaces ================================================== -+ -+ bind... -+ -+ Recognizes and expands the following fields within command -+ strings: -+ -+ %q => Replaced with the fully-qualified access command -+ for the widget receiving the event. For example, -+ -+ namespace foo { -+ namespace bar { -+ button .b -text "Hello World!" -+ } -+ } -+ -+ The fully-qualified access command for this widget -+ is "::foo::bar::.b". The "%q" field should be used -+ instead of "%W" as the widget access command: -+ -+ bind Button "%q flash; %q invoke" -+ -+ -+ %M => Replaced with the window path name of the mega-widget -+ containing the window receiving the event. For example, -+ if an "entryfield" mega-widget ".x" contains an entry -+ widget ".x.entry", bindings added to ".x.entry" will -+ replace "%M" with ".x". This allows generic bindings -+ to be added to component widgets which affect the -+ mega-widget as a whole. -+ -+ For this to work properly, mega-widget packages must -+ register their component widgets using Itk_SetMegaWidget(). -+ -+ -+ winfo command window -+ -+ Returns the fully-qualified access command for the widget "window". -+ This is equivalent to the "%q" field in bindings, and is useful -+ in procedures where the only the window name is known: -+ -+ foreach kid [winfo children $win] { -+ [winfo command $kid] configure -bg blue -+ } -+ -+ -+ winfo megawidget window -+ -+ Returns the window path name of the mega-widget containing "window" -+ as a component. This is equivalent to the "%M" field in bindings, -+ and is useful in procedures where only the component window name -+ is known. For this to work properly, mega-widget packages must -+ register their component widgets using Itk_SetMegaWidget(). -+ -+ -+ == [incr Tcl] ========================================================== -+ -+ delete class name ?name...? -+ -+ Deletes one or more object classes. Deleting a class also -+ causes all derived classes, and all objects belonging to the -+ class, to be deleted as well. -+ -+ -+ delete object name ?name...? -+ -+ Deletes one or more objects. If the access command for an -+ object resides in another namespace, then the full namespace -+ path should be used: -+ -+ delete object foo::bar::x -+ -+ -+ info classes ?pattern? -+ -+ Returns a list of all classes in the current namespace -+ whose names match an optional string pattern. -+ -+ -+ info objects ?-class className? ?-isa className? ?pattern? -+ -+ Returns a list of all objects whose names match an optional -+ string pattern. If the "-class" option is specified, then -+ the list is further restricted to those objects whose -+ most-specific class is "className". If the "-isa" option -+ is specified, then the list is further restricted to those -+ objects who belong to class "className". -+ -+ -+ itcl::class name { definition } -+ -+ Used to create define a new class "name". The "definition" -+ commands include: -+ -+ inherit baseClass ?baseClass...? -+ -+ constructor arglist ?init? body -+ destructor body -+ -+ method name ?arglist? ?body? -+ proc name ?arglist? ?body? -+ variable name ?init? ?config? -+ common name ?init? -+ -+ public command ?arg arg...? -+ protected command ?arg arg...? -+ private command ?arg arg...? -+ -+ Note that the constructor statement has changed to include an -+ optional "init" argument. This is an initialization statement -+ that can be used to call out base class constructors. If it -+ is not included, base classes are constructors are invoked -+ automatically without any arguments. -+ -+ The "variable" statement is now used to create object-specific -+ data members. The "common" statement is used to create "common" -+ variables, which are global within the class namespace. Both -+ types of variables can be designated public, protected or -+ private. -+ -+ -+ itcl::body class::func arglist body -+ -+ Used to define the body of a class member function outside of -+ the class definition. If "body" declarations are kept in a -+ separate file, they can be sourced again and again to test -+ changes as bugs are fixed. If an "arglist" is specified in -+ the class definition, then the "arglist" for the body definition -+ must have the same meaning. -+ -+ -+ itcl::configbody class::option body -+ -+ Similar to the "body" command, but used to define the configuration -+ code for a public variable. -+ -+ -+ itcl_class name { old-style-definition } \__ backward compatibility -+ itcl_info option ?arg arg...? / -+ -+ -+ == [incr Tk] =========================================================== -+ -+ itcl::class name { -+ ... -+ itk_option define -switch resName resClass initVal ?configCode? -+ } -+ -+ The "itk_option define" command is recognized at the level of -+ the class definition. It defines a new mega-widget option with -+ the given switch name and X11 resource database names. The -+ "initVal" is used as a last resort to initialize the option -+ if no other value can be queried from the X11 resource database. -+ If "configCode" is specified, it is executed whenever the option -+ is modified via the "configure" method. The "configCode" can -+ also be specified outside of the class definition via the -+ "itcl::configbody" command. -+ -+ -+ Methods provided by itk::Archetype base class: -+ -+ component -+ component name -+ component name command ?arg arg...? -+ -+ Used to query or access components within a mega-widget. With -+ no arguments, this returns a list of component widgets that -+ are accessible in the current scope. Note that component -+ widgets obey any public/protected/private access restriction -+ that is in force when the component is created. -+ -+ With one argument, this returns the window path name for a -+ component with the symbolic name "name". -+ -+ In any other case, the remaining arguments are invoked as a -+ method on the component with the symbolic name "name". -+ -+ -+ configure -+ configure option -+ configure option value ?-switch value...? -+ -+ Works just like the usual Tk configure method, but for mega-widgets. -+ Here options are really composite widget options. When set, they -+ trigger changes to many different internal components, and may -+ invoke many bits of "configCode" for options defined by "itk_option -+ define". However, there is only one value for the composite option. -+ -+ -+ cget option -+ -+ Works just like the usual Tk cget method, but for mega-widgets. -+ Returns the current value for a composite widget option. -+ -+ -+ itk_component add name {create-commands} ?{option-commands}? -+ -+ Adds a new mega-widget component with the symbolic name "name". -+ Invokes the "create-commands" to create the component, and -+ invokes "option-commands" to integrate its options into the -+ composite list. By default, no options are integrated. Options -+ may be added using the following commands: -+ -+ keep option ?option...? -+ ignore option ?option...? -+ rename oldswitch newswitch resname resclass -+ usual ?tag? -+ -+ -+ itk_component delete name ?name...? -+ -+ Deletes an existing mega-widget component with the symbolic -+ name "name". The component will still exist as a widget, -+ but it will no longer be accessible as a component for this -+ mega-widget. Any options associated with the component are -+ removed from the composite list. -+ -+ Note that you can destroy a component like any ordinary widget: -+ -+ destroy .foo.bar.b -+ -+ Components automatically detach themselves from their mega-widget -+ parent when destroyed, so "itk_component delete" is not used -+ very often. -+ -+ -+ itk_option add option ?option...? \__ class::option -+ itk_option remove option ?option...? / component.option -+ -+ Adds or removes an option from the composite option list for -+ a mega-widget. These commands cannot be used at the level of -+ the class definition; they must be invoked for a particular -+ mega-widget. They usually appear in the constructor for a -+ mega-widget class, to add or redefine options in components -+ created by a base class. For example, the base classes -+ itk::Toplevel and itk::Widget keep only the bare minimum -+ options for their "hull" component: -background and -cursor. -+ If you want your mega-widget to have a border around it, you -+ can add the hull options back in: -+ -+ itcl::class MyWidget { -+ inherit itk::Widget -+ -+ constructor {args} { -+ itk_option add hull.borderwidth hull.relief -+ } -+ } -+ -+ -+ itk_initialize ?option value option value...? -+ -+ Initializes the composite option list for a mega-widget. -+ This method should be invoked within the constructor for each -+ mega-widget class. It is usually included the end of the -+ constructor, below the component creation code. It integrates -+ all "itk_option" options defined in the current class into -+ the composite configuration list, and includes "-option value" -+ settings usually received as arguments to the constructor. -+ When this is executed in the most-specific class, it scans -+ through the composite option list and makes sure that all -+ options have been properly initialized. -+ -+ itk::usual tag ?commands? -+ -+ Used outside of a mega-widget class definition to declare -+ the "usual" option-handling commands for the mega-widget. -+ These commands suggest how the configuration options should -+ be handled if the mega-widget becomes a component of an even -+ larger mega-widget. They include commands like "keep" and -+ "rename". -+ -+ -+ INCOMPATIBLE CHANGES -+-------------------------------------------------------------------------- -+ -+ >> Object construction/destruction now follows C++ model. -+ -+ In the previous release, object construction started at the -+ most-specific constructor. Base class constructors could -+ be called out explicitly within the body of a constructor. -+ If they were not, they were invoked implicitly when the -+ constructor finished executing. This led to a construction -+ model that was backward from C++, and contrary to what most -+ people expected. Destructors were backwards in a similar -+ manner. -+ -+ In the current release, object construction starts at the -+ least-specific class in the hierarchy, and proceeds to the -+ most-specific class. Therefore, each base class is fully -+ constructed before the derived class constructor is executed. -+ -+ Arguments are now passed to base class constructors through -+ an optional "initialization" statement. This statement is -+ included between the argument list and the body of the -+ constructor, so the syntax is reminiscent of C++: -+ -+ class Base { -+ constructor {x y} { -+ ...constructor body... -+ } -+ } -+ class Derived { -+ inherit Base -+ constructor {x y z} { -+ Base::constructor $x $y << "initialization" -+ } { -+ ...constructor body... -+ } -+ } -+ -+ Note that variables from the argument list (e.g., $x and $y) -+ can be referenced within the initialization statement. With -+ multiple inheritance, each of the base class constructors -+ can be called out individually. -+ -+ Object destruction is the exact opposite of construction. -+ It proceeds from most-specific to least-specific class. -+ -+ -+ >> All class methods are now implicitly virtual -+ -+ In the previous release, all method names were interpreted -+ with respect to the current class scope and its base classes. -+ If you wanted a method to act virtual, you had to explicitly -+ preface it with the "virtual" command each time you used it. -+ This proved to be error prone. -+ -+ In the new release, all methods are virtual by default. If -+ you invoke a method with a simple name, the most-specific -+ method with that name will be invoked, regardless of your -+ class scope: -+ -+ class Base { -+ constructor {} {show} -+ method show {} {puts "Base::show"} -+ } -+ class Derived { -+ inherit Base -+ constructor {} {show} -+ method show {} {puts "Derived::show"} -+ } -+ -+ The method "show" called out in the constructors for both of -+ these classes is virtual. When Base::constructor is executed -+ it finds the most-specific "show" method and prints -+ "Derived::show". When Derived::constructor is executed, it -+ finds the most-specific "show" method and prints "Derived::show" -+ again. -+ -+ If you want to invoke a particular method, you have to scope -+ it explicity: -+ -+ class Base { -+ constructor {} {Base::show} -+ method show {} {puts "Base::show"} -+ } -+ class Derived { -+ inherit Base -+ constructor {} {Derived::show} -+ method show {} {puts "Derived::show"} -+ } -+ -+ -+ >> Within class methods/procs the "global" command now refers to -+ variables within the class namespace. -+ -+ In the previous release, the "global" command was used to -+ access variables at the global scope. The "global" command -+ now refers to variables that are "global" within the current -+ namespace context. Within the scope of a class, this refers -+ to "global" class variables. Note that common data members -+ are global variables, but they can be accessed transparently, -+ without any special "global" declaration. You can also create -+ ordinary global variables within a class, but you will have to -+ declare them each time they are used with a "global" statement. -+ The new scheme will allow classes to have their own private -+ global variables (e.g., for interacting with widgets) without -+ flooding the global namespace. -+ -+ If you really want to access a variable at the "::" global -+ scope, use its complete path name: -+ -+ itcl::class Foo { -+ method getenv {name} { -+ global ::env -+ return $env($name) -+ } -+ } -+ -+ -+ >> "this" variable used to be included in every class scope -+ -+ In the previous release, each class scope included a separate -+ "this" variable containing the object name. There is now only -+ one "this" variable, kept in the most-specific class scope. -+ It can still be referenced as if it belongs to all classes, -+ e.g., "Base::this", "Derived::this". -+ -+ This change is probably not important to most applications. -+ But it did break my test suite, which expected to find many -+ different "this" variables coming back from the "info" command. -+ -+ -+ >> "this" variable now contains complete namespace path for the -+ object access command -+ -+ This change will break many scripts written for mega-widgets. -+ In the previous release, mega-widgets had a window name and an -+ access command name that were interchangeable. For example, -+ you would create a widget ".dialog" and configure it using -+ the ".dialog" command. Inside of this widget there was a -+ "this" variable containing the name ".dialog". -+ -+ In the current release, an object can exist in any namespace, -+ so the complete namespace path is a part of the object's -+ identity. Instead of just ".dialog", the "this" variable will -+ now contain a name like "::.dialog" or "::foo::.dialog". But -+ the window name is still just ".dialog". -+ -+ Scripts that used to use "$this" as a window name: -+ -+ wm title $this "Dialog" -+ -+ must now use the [incr Tk] "hull" component instead: -+ -+ wm title $itk_component(hull) "Dialog" -+ -+ If for some other reason you need the simple object name at the -+ end of the namespace path, you can get at it using the -+ "info namespace tail" command: -+ -+ set oldthis [info namespace tail $this] -+ -+ -+ >> "#auto" generated names now start with lower-case letter -+ -+ In the previous release, "#auto" could be used in place of -+ an object name to produce an automatically generated name: -+ -+ Toaster #auto -heat light -+ -+ The names were generated by adding a unique number onto the -+ class name: "Toaster0", "Toaster1", etc. -+ -+ The current release supports the same functionality, except -+ that the names generated are guaranteed to start with a -+ lowercase letter: "toaster0", "toaster1", etc. This helps -+ out in the mega-widget arena, where window names must start -+ with lowercase letters. -+ -+ -+ >> "config" argument used to allow multiple default values -+ -+ The magic "config" argument used to allow multiple default -+ values, which were simply concatenated into a single value -+ before processing. For example, in the previous release -+ you could say: -+ -+ itcl_class Foo { -+ method test {x y {config -foo 0 -bar 0}} { -+ ... -+ } -+ } -+ -+ and if the "test" method was used without extra configuration -+ arguments, they would default to "-foo 0 -bar 0". -+ -+ In the current release, you must make the default value for -+ a "config" argument a single string: -+ -+ itcl::class Foo { -+ method test {x y {config "-foo 0 -bar 0"}} { -+ ... -+ } -+ } -+ -+ >> "info class" now acts "virtual" -+ -+ In the previous release, the "info class" command would report -+ the current class context. In a base class method, it would -+ report the base class name, and in a derived class method, it -+ would report the derived class name. If you wanted to know -+ the most-specific class for an object, you would have to use -+ the "virtual" command explicitly: -+ -+ itcl_class Base { -+ method whatAmI {} { -+ return [virtual info class] -+ } -+ } -+ -+ The "info" command is now virtual by default, as long as an -+ object context is present. This means that you can drop the -+ "virtual" command: -+ -+ itcl::class Base { -+ method whatAmI {} { -+ return [info class] -+ } -+ } -+ -+ If you really want to know the current class scope, use the -+ "info context" command instead to query the current namespace -+ context. -+ -+ If an object context is not present (i.e., in the body of a -+ common class "proc"), the "info class" command reverts to -+ the current class context, the same as the "info context" command. -+ -+ -+ >> Library procedures "itcl_unload" and "itcl_reload" have been removed -+ -+ In the previous release, the library procedure "itcl_unload" -+ provided a way of deleting a class. You can now do the same -+ thing using the "delete class" command: -+ -+ delete class Toaster -+ -+ This deletes the specified class, all derived classes, and all -+ objects belonging to this class. If autoloading is set up, -+ you can reload a deleted class just by invoking its name. -+ The old "itcl_reload" function is now trivial: -+ -+ proc itcl_reload {class} { -+ delete class $class -+ $class -+ } -+ -+ -+ >> Class definition no longer recognizes ordinary Tcl commands. -+ -+ As an undocumented "feature" of the previous release, you could -+ include ordinary Tcl commands in the body of your class definition. -+ For example: -+ -+ itcl_class Foo { -+ ... -+ if {$somevar} { -+ public foo -+ } -+ } -+ -+ In the new release, only class definition commands are allowed -+ within the body of a class definition. You can, however, use Tcl -+ commands outside of the class definition to modify the class -+ definition as a string, and then define the class: -+ -+ set defn { -+ method test {} {return "test"} -+ } -+ if {$somevar} { -+ append defn "public variable foo" -+ } -+ class Foo $defn -+ -+ -+ IMPROVEMENTS -+-------------------------------------------------------------------------- -+ -+ >> an object can be renamed by renaming its access command -+ -+ In the previous release, an object's identity was fixed when -+ it was created. In the new release, the object is tied -+ directly to its access command. If you rename the access -+ command, you have renamed the object. The "this" variable -+ automatically keeps in sync with name changes. If you delete -+ the access command, you automatically delete the object. -+ -+ Toaster new -heat light -+ rename new fred << rename Toaster -+ fred toast 2 -+ fred toast 1 -+ rename fred "" << delete Toaster -+ -+ -+ >> Bodies of methods, procs and public variables can be defined -+ outside of the class definition, and can be redefined on the fly. -+ -+ In the previous release, all of the code related to a class was -+ defined within the class definition. This kept everything -+ together in one place, but it made it difficult to get an overview -+ of the class interface. -+ -+ In the new release, bodies can be defined outside of the class -+ definition, perhaps in a separate file. When debugging, the -+ implementations can be fixed and sourced again and again, without -+ having to delete existing objects and classes. -+ -+ Use the "itcl::body" command to redefine the body of a class -+ method or proc. Use "itcl::configbody" to redefine the configuration -+ code associated with a public variable. For example: -+ -+ itcl::class Toaster { -+ constructor {args} { -+ eval configure $args -+ } -+ destructor { -+ if {$crumbs > 0} { -+ error "cannot destroy dirty toaster: clean first" -+ } -+ } -+ -+ method toast {nslices} -+ method clean {} -+ -+ public variable heat 3 -+ protected variable crumbs 0 -+ } -+ -+ itcl::body Toaster::toast {nslices} { -+ if {$nslices < 1 || $nslices > 2} { -+ error "bad number of slices: should be 1 or 2" -+ } -+ set crumbs [expr $crumbs+$heat*$nslices] -+ if {$crumbs >= 50} { -+ puts stderr "== FIRE! FIRE! ==" -+ } -+ } -+ -+ itcl::body Toaster::clean {} { -+ set crumbs 0 -+ } -+ -+ itcl::configbody Toaster::heat { -+ if {$heat < 1 || $heat > 5} { -+ error "invalid setting \"$heat\": should be 1-5" -+ } -+ } -+ -+ If an argument list is specified in the class definition, then -+ the same argument list must be used when the implementation is -+ redefined. The variable names can change, but the meaning of -+ the arguments must be the same. If you leave the argument -+ list out of the class definition, or if you include the "args" -+ argument, the argument list can change. -+ -+ -+ >> C procedures can be integrated into class definitions -+ -+ Any method body that is specified as "@symbol" is treated as a -+ reference to a C procedure with the symbolic name "symbol". -+ Symbolic names are established by registering C procedures -+ via the Itcl_RegisterC() procedure. This is usually done -+ when the interpreter starts up in the Tcl_AppInit() procedure: -+ -+ if (Itcl_RegisterC(interp, "foo", My_FooCmd) != TCL_OK) { -+ return TCL_ERROR; -+ } -+ -+ This registers a procedure My_FooCmd() with the symbolic name -+ "foo". It can be used as the implementation for a class method, -+ proc, or bit of configuration code simply by specifying "@foo" -+ in place of the Tcl code body. -+ -+ These C procedures are just like ordinary Tcl command handlers. -+ They take the usual arguments: -+ -+ int My_FooCmd(ClientData cdata, Tcl_Interp *interp, -+ int argc, char** argv) -+ { -+ ... -+ return TCL_OK; -+ } -+ -+ including the (argc,argv) arguments from the command line. But -+ before these procedures are invoked, the proper class scope is -+ established so that object data members can be accessed as if -+ they were ordinary variables via Tcl_GetVar() and Tcl_SetVar(). -+ -+ Look at the [incr Tk] base class itk::Archetype as an example -+ for integrating C code. -+ -+ -+ >> "#auto" can be buried within an object name: ".x.y.z.#auto" -+ -+ In the previous release, "#auto" was a keyword that could be -+ used in place of an object name. It can now be used as a -+ part of the object name, making it easier to generate automatic -+ names for mega-widgets. -+ -+ -+ >> Every object now has built-in "configure" and "cget" methods -+ that follow the Tk paradigm. For [incr Tk] widgets, they follow -+ the paradigm exactly. The ordinary [incr Tcl] objects, the -+ X11 resource values are missing. -+ -+ -+ >> There is no longer a built-in "delete" method, so classes can -+ define their own "delete" operations. -+ -+ Instead of "objName delete", use the new "delete object" command: -+ -+ Toaster fred -heat dark -+ delete object fred -+ -+ -+ >> All data members can be declared public, protected or private. -+ -+ Private data members can only be accessed in the class where -+ they are defined. Protected data members can be accessed in -+ the defining class and all derived classes. Public data members -+ can be accessed like protected data members, but are also -+ recognized as configuration options by the built-in "configure" -+ and "cget" methods. -+ -+ -+ >> In [incr Tk], options are now defined outside of the constructor, -+ at the level of the class definition. -+ -+ -+ >> In [incr Tk], configuration options belonging to components -+ created in a base class can be added or removed in derived -+ classes. -+ -+ The base classes "itk::Toplevel" and "itk::Widget" are now stripped -+ down to the bare minimum options. For example, if you want to add -+ "-width" and "-height" options for the hull component, do this using -+ the "itk_option" command in the body of the constructor: -+ -+ class MyWidget { -+ inherit itk::Widget -+ -+ constructor {args} { -+ itk_option add hull.widget hull.height -+ ... -+ } -+ } -+ -+ Options can be added and removed on-the-fly during normal operation, -+ but this is not recommended, since it could lead to a confusing -+ interface. -+ -+ -+ >> In [incr Tk], components can now be added or removed on-the-fly. -+ -+ The "itk_component" method now supports "add" and "delete" -+ operations that are used to add/delete components. -+ -+ -+ >> All [incr Tk] widgets can be destroyed like normal Tk widgets. -+ -+ If you destroy a component widget, for example, it will automatically -+ remove itself from its parent via "itk_component delete". Likewise, -+ when a parent widget is destroyed, it will automatically destroy -+ all component widgets. -+ -+ -+ >> In [incr Tk], the "itk::Archetype::component" method now provides -+ access to mega-widget components. -+ -+ In the previous [incr Tk] prototype, the "component" method had -+ a different syntax and only supported query operations. You can -+ now access an internal component via the "component" method using -+ its symbolic name: -+ -+ .dialog component hull configure -width 450 -height 500 -+ -+ This example accesses the "hull" component of the ".dialog" -+ mega-widget, and sets the width and height options. -+ -+========================================================================== -+ ---------------------- RELEASE 2.0beta - 9/6/95 ------------------------ -+========================================================================== -+ -+9/8/95 (bug fix) -+ Fixed menus to work properly within namespaces. Menu library code -+ now recognizes the proper namespace context for all "-menu" options. -+ -+9/8/95 (new feature) -+ Added "winfo command name" option to report the scoped access command -+ for a given window. -+ -+9/8/95 (configuration changes) -+ - fixed "sed" invocation in iwidgets Makefile -+ - added configuration guesses for Tadpole Sparcbook -+ - added George Howlett's test for "gcc", so that "-fwritable-strings" -+ is added even if gcc is masquerading as "cc" -+ - fixed tcl/tk configure scripts to have default prefix "/usr/local/itcl" -+ or wherever itclsh/itkwish is installed -+ - fixed makefiles to use $(MAKE) instead of "make" -+ -+9/9/95 (bug fix) -+ Protected references to obj->accessCmd to avoid seg faults when -+ an object is being destroyed. -+ -+9/9/95 (new features) -+ Changed the syntax of the "namespace" command: -+ -+ namespace name ?-local? ?-hidden val? ?-enforced val? ?--? ?commands? -+ -+ Flags now follow the namespace name, and the "commands" body is -+ optional. The "-hidden" option allows a namespace to be hidden -+ during "info namespace all" queries. The "-enforced" option turns -+ command/variable enforcement on or off. -+ -+ Update "info namespaces all" command to allow for display of hidden -+ namespaces: info namespaces all ?-hidden? ?pattern? -+ -+9/10/95 (bug fix) -+ Fixed "auto_mkindex" to work properly for procs defined within -+ namespaces. Added support for itcl::class, itcl::body and -+ itcl::configbody as well. Added tests for tclIndex file generation. -+ -+9/11/95 (configuration changes) -+ Fixed makefiles to reference sources and libraries properly, so -+ it should be possible to build different object trees for -+ different platforms with "gmake". -+ -+9/13/95 (configuration changes) -+ Added "AC_C_CROSS" to configure files, so configuration should work -+ properly on Solaris 2.4. -+ -+9/13/95 (bug fix) -+ Changed option configuration to work synchronously, and added -+ "itk_initialize" command to initialize the configuration options -+ for each mega-widget class. The original behavior of handling -+ option changes via "do-when-idle" has been removed. -+ -+9/13/95 (bug fix) -+ Changed all structure members called "namespace" to "namesp". -+ This allows the code to compile correctly under C++. -+ -+9/13/95 (configuration changes) -+ - added support for "i[34]86:BSD/OS" in "config/config.guess" -+ - fixed "test" target for iwidgets -+ -+9/13/95 (bug fix) -+ Fixed "global" command and other places where namespace paths -+ are parsed to allow for a single ":" in command/variable names. -+ -+9/13/95 (bug fix) -+ Fixed a problem which caused class-based options to be lost when -+ a widget class was defined within a proc. -+ -+9/14/95 (bug fix) -+ Fixed class access command so that when it is deleted, it -+ automatically destroys the class. This also fixed a seg fault -+ that occurred when an object's access command stomped on the -+ class access command. -+ -+9/14/95 (enhancement) -+ Fixed "scope" command and the @scope facility so that null strings -+ can be passed around without all of the extra scoping info. -+ -+========================================================================== -+ ----------------------- RELEASE 2.0b2 - 9/14/95 ------------------------ -+========================================================================== -+ -+9/15/95 (enhancement) -+ Changed error messages reported when a class method/proc gets the -+ wrong number of arguments to report the usage information, like: -+ {wrong # args: should be "obj foo x y ?arg arg...?"} -+ -+9/18/95 (bug fix) -+ Fixed a seg fault that occurred when the "cget" method was called -+ with no args. -+ -+9/18/95 (bug fix) -+ Fixed a bug that caused private variables in a base class to be -+ uninitialized, even if an initial value was specified in the -+ class definition. -+ -+9/22/95 (configuration changes) -+ Added the "SHELL=/bin/sh" statement to the main makefile. This -+ fixes build problems on SGI machines. -+ -+10/9/95 (paradigm shift) -+ Removed the implicit scoping from any facility that takes a command -+ or variable name. Implicit scoping made it difficult to pass a -+ command string or variable name into a wrapper proc and yet preserve -+ the scope that it came from. All scoping is now explicit. All -+ commands and variables are interpreted in the global "::" scope -+ unless they are wrapped in an "@scope" declaration. Commands can -+ be wrapped up like this: -+ -+ button .b -text "Push Me" -command [code .b configure -bg red] -+ -+ Variable names can be wrapped up like this: -+ -+ radiobutton .rb1 -text "Choice #1" -variable [scope mode] -value 1 -+ -+ The "code" and "scope" commands wrap up strings with an "@scope" -+ specification which preserves the namespace context. -+ -+10/17/95 (paradigm shift) -+ Changed the "%C" option of the "bind" command to return a scoped -+ command of the form "@scope namespace widget" that can be used to -+ access the widget. "%C" should be used instead of the usual "%W" -+ window name when attempting to access the widget. Bindings should -+ be written like this: -+ -+ bind Entry {%C configure -bg white} -+ bind Entry {%C configure -bg gray} -+ -+ The command "%C" can be used to access the widget regardless which -+ namespace it belongs to. -+ -+10/31/95 (enhancement) -+ Fixed "unknown" command to support a general facility for adding -+ unknown command handlers. The "unknown_handler" proc is used to -+ register new handlers. Each time an unknown command is encountered, -+ each of the handlers is invoked to attempt to handle the command. -+ If a handler returns "-code continue", control passes to the next -+ handler on the list. Handlers are invoked in the order opposite to -+ the way they were registered. Extensions can use this facility to -+ add their own handlers into the "unknown" scheme. -+ -+11/7/95 (enhancement) -+ Added a "backward-compatibility" mode to [incr Tcl]. By default, -+ widget names can now be used as access commands in any namespace, -+ even if the widget access command exists in another namespace. -+ This emulates the normal Tk behavior that widgets are global resources -+ in the application that can be accessed anywhere. This behavior can -+ be disabled by setting the global variable "itcl_purist" to "1". When -+ this variable is set non-zero, care must be used to use "%C" or -+ "[winfo command %W]" as an access command when the widget is used -+ outside of the namespace that contains it. From the standpoint of -+ the object-oriented paradigm, the "purist" mode is better since it -+ supports encapsulation. The "backward-compatible" mode, however, -+ allows [incr Tcl] to work better with existing Tk applications and -+ extensions. -+ -+11/22/95 (bug fix and enhancement) -+ Fixed the built-in "info" command for classes to include the "info -+ classes" and "info objects" queries. These were initially overlooked -+ in a hard-wired list of "info" queries. -+ -+ Fixed the ensemble facility in general to support unknown options -+ via an "@error" handler. Any option registered with the name "@error" -+ is treated as an error handler for the ensemble. Arguments passed -+ to the option include the ensemble name, the unknown option, and all -+ remaining arguments. For the built-in "info" command, the "@error" -+ handler passes any unknown options to the usual Tcl "info" command, -+ so all of the standard options are automatically available. -+ -+11/23/95 (bug fix) -+ Fixed usual tkerror dialog to truncate error messages at 5 lines. -+ The usage information returned by an ensemble or itcl object can -+ be much longer, causing the "Stack Trace" button to get lost in -+ many cases. -+ -+11/27/95 (bug fix) -+ Removed the constructor/destructor from the list of public methods -+ returned as usage information when an unknown method is encountered -+ on an object. -+ -+12/2/95 (bug fix) -+ Fixed error reporting for object construction. Used to say -+ something like "object constructor x y z" which made it look -+ like a method invocation. Now says "class object x y z" which -+ looks more like the call that the user made to trigger the error. -+ -+12/4/95 (bug fix) -+ Fixed class creation and object creation to avoid clobbering -+ existing commands with new class/object access commands. This -+ prevents all hell from breaking loose when a command like -+ "class set {...}" is invoked. -+ -+12/6/95 (configuration changes) -+ Fixed parsing of namespace paths to use local storage instead of -+ assuming that strings are writable. This means that the -+ "-fwritable-strings" option is no longer necessary for GCC and -+ other compilers that store static strings in the program text -+ segment. This option has been removed from all "configure.in" -+ files. Linux users will no longer see core dumps on start-up. -+ -+12/8/95 (bug fix) -+ Fixed "upvar" so that class data members can be accessed from -+ another calling procedure. This fixed a problem with using -+ "parray" from within class methods. -+ -+12/9/95 (bug fix) -+ Fixed "@scope" variable references so that variables can be created -+ using "@scope" in any context and referenced later. -+ -+12/9/95 (feature change) -+ Removed "-hidden" option from namespaces. It seemed to complicated -+ and quirky to explain on the man page. Instead, all parser -+ namespaces like "scope-parser" and "mkindex-parser" are grouped -+ into a "::tcl" namespace. This keeps them somewhat hidden even -+ without any special treatment. -+ -+12/9/95 (minor enhancement) -+ Added "array" command to class definition parser, so it can be -+ used along with "set" to initialize common arrays. -+ -+12/10/95 (paradigm shift) -+ Removed the "%C" pattern from the expansions recognized by the -+ "bind" command, in favor of the following scheme: -+ %W ........ name of widget receiving event -+ %M ........ name of mega-widget containing widget receiving event -+ %q ........ fully-qualified command name of widget receiving event -+ %Q ........ fully-qualified command name of mega-widget receiving event -+ Fixed "winfo command" to return the fully-qualified command name of -+ a widget (instead of a scoped access command) to be consistent with -+ the "%q" bind pattern. -+ -+12/10/95 (bug fix) -+ Fixed Tk library code to use "%q" and "winfo command", so that the -+ default widget behaviors will work even in "itcl_purist" mode. -+ -+12/11/95 (minor enhancement) -+ Added "winfo megawidget" query, which will return the name of the -+ mega-widget containing a specified component widget. In order for -+ this to work, a mega-widget package must use the procedure -+ Itcl_SetMegaWidget() to register each component as it is added -+ to a mega-widget. -+ -+12/12/95 (bug fix) -+ Fixed Archetype base class to keep all options sorted in alphabetical -+ order. This way they can be reported back by the "configure" method -+ in alphabetical order. Options are now initialized by "itk_initialize" -+ in alphabetical order as well. -+ -+12/12/95 (bug fix) -+ Fixed the Archetype base class to register each component widget with -+ Tk via Itk_SetMegaWidget(). This means that "winfo megawidget" and -+ "%Q" can be used to reference the containing mega-widget for any component. -+ -+12/12/95 (bug fix) -+ Fixed the "configure" method in the Archetype base class so that when -+ an error is encountered while setting a configuration option, the option -+ is set back to its previous value. -+ -+12/12/95 (bug fix) -+ Fixed the "itk_component add" method to find access commands for -+ components even if they are created in the global scope. Components -+ that are meant to be shared can be created using "uplevel #0". The -+ access command for this component will be installed in the global scope, -+ and therefore available to all other namespaces. -+ -+ Syntactic sugar like a "-global" option would be nice, but references -+ like $itk_component(...) must be substituted in the calling scope, and -+ it is not possible to get these properly substituted and still maintain -+ the boundaries around arguments. -+ -+12/12/95 (bug fix) -+ Fixed Archetype base class to handle public/protected/private components -+ properly. The usual public/protected/private commands can be used in -+ conjunction with "itk_component add" to set the protection level of a -+ component. The protection level affects the action of the "component" -+ method. Public components are reported in any namespace, and are -+ accessible from any namespace. Protected components are accessible -+ within a base class and derived classes. Private components are -+ accessible only within the class where they are defined. This feature -+ can be used to keep unimportant components (such as frames) off of the -+ component list that a client would see. -+ -+12/13/95 (enhancement) -+ Added "usual" and "ignore" commands for processing component widget -+ configuration options. The "usual" command finds the usual code fragment -+ for the widget class of the component, and executes it. The command -+ "itk::usual" can be used to register option code for new widget classes. -+ -+ The "ignore" command can be used to override previous "keep" and "rename" -+ commands. This is useful for removing options that the "usual" code -+ keeps or renames. -+ -+ Fixed the "itk_component add" command so that if the option handling code -+ is not specified, the "usual" command is invoked automatically. -+ -+12/13/95 (bug fix) -+ Fixed the Archetype base class to handle the immutable Tk options -+ properly. Options like -class, -colormap, -screen and -visual can only -+ be set at creation time. The itk_option array is now properly -+ initialized to report their creation value. -+ -+12/14/95 (bug fix) -+ Fixed "itk_option add" command to report errors properly for unknown -+ options. -+ -+12/14/95 (bug fix) -+ Fixed "body" command to report errors properly for unknown functions. -+ -+12/14/95 (bug fix) -+ Fixed a bug in the handling of TCL_GLOBAL_ONLY flag when looking up -+ class variables. Previously, this was ignored, so object-specific -+ variables could be accessed in a "global" context by Tk widgets. -+ This caused some strange behavior when object-specific variables -+ were used in conjunction with widget options like "-textvariable". -+ Tk widgets now properly interact with classes via global variables. -+ -+12/14/95 (bug fix) -+ Fixed "auto_mkindex" to recognize procs within class definitions and -+ add them to the "tclIndex" file. -+ -+12/15/95 (bug fix) -+ Fixed "body" command to find functions only in the specified class. -+ The bug caused a base class method to be redefined whenever a "body" -+ command was issued for a derived class if the method was not declared -+ in the derived class. Made a corresponding fix to the "configbody" -+ command for public variables. -+ -+12/15/95 (enhancement) -+ Added the following commands to the class definition parser: bind, -+ scope and code. This allows generic class bindings to be included -+ in the body of a class definition. -+ -+12/15/95 (enhancement) -+ Added "-clientdata" option in itk::Archetype base class so that -+ all widgets will have an extra field for client data. For application -+ developers, this may come in handy. -+ -+12/16/95 (bug fix) -+ Fixed the itk::Archetype base class so that if "itk_option add" or -+ "itk_option remove" is called for ordinary class-based options before -+ "itk_initialize" (which normally integrates them in) it does not cause -+ a problem. -+ -+12/17/95 (bug fix) -+ Fixed namespace resolution so that a command/variable with a -+ specific path like "itk::body" will not be found in another -+ imported namespace. For the import list to be followed, the -+ command name must be generic like "body". -+ -+12/19/95 (configuration changes) -+ Changed from generic directories like "tcl" and "tk" to directory -+ names with version numbers like "tcl7.4" and "tk4.0". -+ -+12/19/95 (bug fix) -+ Changed names like "itcl_library" and "itcl_purist" to "itcl::library" -+ and "itcl::purist". This makes more sense in the documentation, since -+ the underbar stuff is no longer needed with namespaces, and extension -+ writers are discouraged from using it. -+ -+12/21/95 (bug fix) -+ Changed handling of argument lists for functions with Tcl or C -+ implementations. All argument lists are now treated as Tcl -+ argument specifications. For Tcl implementations, this determines -+ what arguments are available in the body of the procedure; for C -+ implementations, this merely gives the intended usage information -+ for the function (the C implementation may choose to ignore this -+ and do something else). This fix makes it easier to override -+ C implementations with Tcl procedure bodies. -+ -+12/25/95 (bug fix) -+ Split the usual TCL_GLOBAL_ONLY flag into two meanings: TCL_GLOBAL_ONLY -+ now means "a global variable in the global namespace", and ITCL_GLOBAL_VAR -+ means "a global variable in the current namespace". This enhancement -+ fixes Tk (and many other extensions) which request global variables. -+ A plain variable name together with TCL_GLOBAL_ONLY is now interpreted -+ as an ordinary Tcl global variable, so the behavior is backward-compatible. -+ A scoped variable reference will work properly with namespaces. If -+ extension writers get more ambitious, they can start using the -+ ITCL_GLOBAL_VAR flag, which will make their extensions namespace-friendly. -+ -+12/26/95 (bug fix) -+ Fixed "@scope" command so that extra arguments added at the end are -+ kept as proper list elements when added to the command string. This -+ makes sure that boundaries around Tcl words are not lost when the -+ scoped command is interpreted. -+ -+12/28/95 (minor enhancement) -+ Added "config" method to the Archetype base class as an alias for -+ the usual "configure" method. Many Tk applications use "config" -+ as an abbreviation for "configure", so this fix improves compatibility -+ with other packages. -+ -+12/28/95 (bug fix) -+ Fixed Itcl_SaveInterpState() and Itcl_RestoreInterpState() to -+ properly save/restore the interp state even for commands like -+ Tcl_SetCmd(), which are sloppy about setting the interpreter -+ result. This fixed bad memory references that were encountered -+ in enforced namespaces. -+ -+12/28/95 (bug fix) -+ Fixed Itcl_DeleteNamesp() to allow variable traces to be fired -+ off properly when a namespace is destroyed. -+ -+12/30/95 (bug fix) -+ Fixed the Archetype base class to do the "ignore" operation -+ properly for mega-widget options. A bug was causing a single -+ "ignore" request not only to eliminate the desired option, but -+ to eliminate options that were renamed to the "ignore" name -+ as well. -+ -+========================================================================== -+ ------------------------ RELEASE 2.0 - 12/31/95 ------------------------ -+========================================================================== -+ -+1/2/96 (cleanup) -+ Fixed some compiler warnings reported by Christopher Hylands -+ (cxh@EECS.Berkeley.EDU) -+ -+1/4/96 (cleanup) -+ Fixed the description of the last test in itk/tests/option.test. -+ -+1/4/96 (cleanup) -+ Fixed code examples in man pages. Lines starting with "." now -+ start with the null character "\&", to avoid errors with troff. -+ -+1/5/96 (bug fix) -+ Fixed a bug in tkMenuUnpost. Popup menus associated with something -+ other than a menubutton can now be unposted properly. -+ -+1/10/96 (bug fix) -+ If an error occurs during construction, all destructors are now -+ invoked--even if an error is encountered. All destructor errors -+ are completely ignored. This fixed a core dump reported by -+ Christopher Hylands (cxh@EECS.Berkeley.EDU). -+ -+2/5/96 (cleanup) -+ Fixed memory leaks reported by Forest Rouse (rouse@flash.icemcfd.com). -+ Also fixed a problem in Itcl_DeleteNamesp() with the way that -+ the variable cache was destroyed. This caused a core dump on Solaris -+ systems when a namespace was deleted. -+ -+2/8/96 (cleanup) -+ Fixed itk tests to ignore any resources that the user might have -+ on the desktop (e.g., *background: red) -+ -+2/11/96 (bug fix) -+ Fixed auto_mkindex so that the "proc" command accepts arglist and -+ body as optional arguments. Within class definitions, these -+ parameters may not be specified. Also, fixed the "source" command -+ so that it is ignored within the file being indexed. Otherwise, -+ it brought in program elements that confused the index. -+ -+2/15/96 (bug fix) -+ Fixed the unknown command to save errorInfo and restore it before -+ invoking each handler. This fixed an irritating bug that caused -+ the first error message to be lost as "tkerror" was autoloaded. -+ -+2/20/96 (bug fix) -+ Fixed a bug in variable lookup that allowed private/protected -+ variables to be set from outside the normal context. On initial -+ lookup variables were being passed over, but since they did not -+ appear to exist, they were being created. Variables are now -+ protected from being set or redeclared from an improper context. -+ -+3/1/96 (enhancement) -+ Changed namespaces to import from their parent in "protected" -+ mode instead of "public" mode. This is a better default, since -+ it emphasizes the strong relationship between a parent and a -+ child. They can share variables that are hidden from anyone else. -+ -+3/5/96 (bug fix) -+ Fixed the "info objects" to autoload any classes referenced by -+ "-isa" or "-class" that are not yet defined. -+ -+3/12/96 (enhancement) -+ Fixed class parser to recognize commands at the global scope. -+ This makes it possible to embed normal Tcl commands like an -+ "if" statement within a class definition. It also makes it -+ easy to extend the class parser by defining procs in the -+ ::itcl::parser namespace. -+ -+3/17/96 (enhancement) -+ Fixed "usual" command so that with no arguments, it returns a -+ list of all known tags. Each tag name can be used to query its -+ associated code. -+ -+3/19/96 (enhancement) -+ Fixed the "configure" method for mega-widgets to include public -+ variables as configuration options. Normally, mega-widget -+ classes use "itk_option define" to define configuration options. -+ However, if a mega-widget includes an ordinary itcl class as -+ a base class, it should provide access to the base class options. -+ Public variables are now integrated into the composite option -+ list by "itk_initialize". -+ -+4/2/96 (enhancement) -+ Added a "chain" command to the built-ins available in each class. -+ A command like "chain 1 2 3" invokes the next implementation of -+ the current method/proc found looking up the inheritance hierarchy -+ toward base classes. This can be used to invoke a base class method -+ in a generic way, without hard-coding the base class name. -+ -+4/10/96 (bug fix) -+ Fixed "configure" operation for mega-widgets. Previously, if an -+ error was encountered during configuration, the value in itk_option -+ was set back to the previous value, but some parts of the mega-widget -+ might be left in a partially configured state. Now, if an error is -+ encountered and the option is set back to its previous value, the -+ change is propagated down to all parts, so the widget remains in a -+ consistent state. -+ -+4/15/96 (bug fix) -+ Fixed a bug reported by Karel Zuiderveld (karel.zuiderveld@cv.ruu.nl) -+ related to virtual method selection in "itcl_methods.c". If for some -+ reason a method name was not found in the virtual table, the table -+ access caused a core dump. This is now fixed. -+ -+5/13/96 (bug fix) -+ Fixed "itk_initialize" to recognize errors when executing the "config" -+ code associated with configuration options. Any error immediately -+ causes itk_initialize to abort, which usually aborts construction. -+ -+5/13/96 (bug fix) -+ Fixed a bug in Itcl_SaveInterpState() and Itcl_RestoreInterpState() -+ which caused error information to get lost during object construction -+ when errors were encountered. The new iPtr->appendResult buffer was -+ being ignored, and results in this buffer were getting lost. -+ -+6/1/96 (bug fix) -+ Changed the internal Interp and TkWindow data structures so that all -+ of the extra [incr Tcl] data members are at the bottom of the structure. -+ This should prevent errors when modules that have been compiled against -+ vanilla Tcl/Tk are dynamically loaded into [incr Tcl]. -+ -+6/12/96 (enhancement) -+ Integrated changes for "itcl2.0+3" release by Karel Zuiderveld, -+ Jan Nijtmans and Vince Darley. This added support for tcl7.5/tk4.1, -+ dynamic loading, canvas improvements, and support for Macintosh -+ environments. Many thanks to these guys for all of their hard -+ work! -+ -+6/22/96 (installation) -+ Changed the way things are installed: -+ - the startup file "init.itcl" is now called "itcl.tcl" -+ - the startup file "init.itk" is now called "itk.tcl" -+ - libraries, include files and man pages are now installed under -+ a special "itcl" directory to avoid conflicts with a vanilla -+ Tcl/Tk installation. For example, if your --prefix is set -+ to /usr/local, things would be installed as follows: -+ -+ /usr/local/bin ............ executables: -+ ish = tclsh with namespaces -+ iwish = wish with namespaces -+ itclwish = tclsh with namespaces and classes -+ itkwish = wish with namespaces and classes -+ -+ /usr/local/include/itcl ... include files -+ /usr/local/lib/itcl ....... libraries -+ /usr/local/man/itcl ....... manual pages -+ -+6/24/96 (bug fix) -+ Fixed "itkwish" so that it requires the Iwidgets package automatically -+ during initialization. For all other shells, you must specifically -+ request Iwidgets with a statement like "package require Iwidgets" -+ -+6/26/96 (bug fix) -+ Fixed Tk_CanvasTagsParseProc to avoid dumping core when an item -+ is configured with a null tag string. -+ -+6/26/96 (bug fix) -+ Fixed PolygonToPoint() in tkCanvPoly.c so that invisible polygons -+ (with no outline and no fill) are still considered when picking -+ the closest item. Without this fix, programs like the "floor plan" -+ in the Tk widget demo will not work. -+ -+6/26/96 (bug fix) -+ Fixed the [incr Widgets] "feedback" widget to do a full update on -+ each step. Without this, changes appear from time to time, but -+ the bar does not grow smoothly. -+ -+6/26/96 (bug fix) -+ Fixed fileselectiondialog and fileselectionbox to update directory -+ list properly when "-directory" option is configured. -+ -+6/28/96 (bug fix) -+ Fixed "itk_option define" to properly preserve a "config" code -+ body so that it can be released if it is redefined later. -+ -+========================================================================== -+ ------------------------ RELEASE 2.1 - 6/28/96 ------------------------- -+========================================================================== -+ -+7/22/96 (bug fix) -+ Fixed C-level variable access so flags like ITCL_FIND_LOCAL_ONLY -+ can be passed into Tcl_GetVar() and Tcl_SetVar(). -+ -+7/25/96 (bug fix) -+ Fixed the "notebook" widget in the [incr Widgets] set. The "index" -+ method now supports pattern matching and index names with spaces in -+ them. -+ -+8/1/96 (bug fix) -+ Fixed destructor invocation so that if an object is being -+ destructed and you try to delete it again, it will report an -+ error. -+ -+8/7/96 (bug fix) -+ Fixed the "inherit" command to make sure all names are really -+ valid classes. Previously, trying to inherit from a proc would -+ dump core. -+ -+8/29/96 (enhancement) -+ Integrated with itcl2.1+2 (tcl7.5p1/tk4.1p1). -+ -+9/1/96 (bug fix) -+ Fixed the Itcl_RegisterC() procedure so that the same name can be -+ registered more than once, as long as it has the same function -+ pointer. -+ -+9/7/96 (bug fix) -+ Fixed a bug in method access for protected methods. There was a -+ problem when a base class defined a method, and a derived class -+ overloaded the method, and the method was accessed from the base -+ class namespace. Added function Itcl_CanAccessMethod() to check -+ for overloaded methods and allow access accordingly. -+ -+9/13/96 (bug fix) -+ Fixed the Itcl_RestoreInterpState() procedure so that the "errorCode" -+ variable is restored properly. There was a problem when the -+ error code contained a list of elements. -+ -+9/20/96 (bug fix) -+ Fixed a bug in the way namespaces were deleted. The hash table of -+ child namespaces was being traversed while elements within it were -+ being deleted. This caused a core dump when you tried to exit -+ the application with a command like "destroy .". -+ -+9/28/96 (bug fix) -+ Fixed the way that errors are reported when a base class is constructed -+ with the wrong arguments. Previously, the error message showed the -+ object creation command like "wrong # args: should be Foo name val1 val2". -+ Now, it shows the base class constructor name, so it is more obvious -+ where the error is coming from. -+ -+10/5/96 (bug fix) -+ Fixed a bug in constructor invocations. All base class constructors -+ are now invoked properly, even if a derived class does not have a -+ constructor. -+ -+10/9/96 (enhancement) -+ Added proper support for safe interpreters. You can now use namespace -+ commands in a safe interpreter, and you can load Itcl as a safe package. -+ -+10/11/96 (bug fix) -+ Fixed a core dump with "namespace foo {info locals}". The namespace -+ call frame was not being set up properly, so the local variable table -+ was garbage. Normally, you don't access local variables at the -+ namespace level. But now it is fixed. -+ -+10/14/96 (bug fix) -+ Fixed the Itcl_RegisterC() procedure so that each interpreter has -+ its own list of symbolic function names. This avoids global data -+ and makes more sense for people using multiple interpreters. -+ -+10/20/96 (bug fix) -+ Fixed variable lookup so that when you try to access a variable -+ like "::foo::x" inside of a procedure, you get an error instead -+ of a local variable named "::foo::x". Variables like this need -+ to be declared global. -+ -+10/22/96 (enhancement) -+ Fixed the built-in "isa" method to autoload class definitions as -+ needed for each "isa" test. If a class is not defined and cannot -+ be autoloaded, it is an error. -+ -+10/26/96 (enhancement) -+ Fixed "delete object" command so that objects can be deleted -+ using scoped values for the object name. -+ -+10/29/96 (enhancement) -+ Integrated with itcl2.1+5 (tcl7.6/tk4.2). -+ -+11/1/96 (porting) -+ Removed "plus" and "dash" patches to allow for porting to Windows95 -+ and Macintosh platforms. Simplified configuration and makefiles -+ for Unix platforms. -+ -+11/4/96 (installation) -+ Fixed configuration and makefiles to support building in a -+ separate directory. There is a bug in "autoconf" which prevents -+ this from going smoothly. You have to copy all of the configure -+ scripts to a separate tree (e.g., using a tar file), and then build. -+ -+11/5/96 (bug fix) -+ Fixed a bug in the way variables were reported by the built-in -+ "info" command for classes and objects. Private variables in -+ a base class were incorrectly reported as "". They -+ are now reported properly. -+ -+11/10/96 (bug fix) -+ Fixed the "this" variable so that if an object is deleted while it -+ is still in use, its name is properly reported as the null string. -+ -+11/10/96 (bug fix) -+ Fixed the way namespaces are deleted so that the "::errorInfo" and -+ "::errorCode" variables remain intact until everything else has been -+ destroyed. These variables are needed if any errors are encountered -+ as an interpreter is being destroyed. -+ -+11/11/96 (installation) -+ Split the "itclConfig.sh" file into separate "itclConfig.sh" and -+ "itkConfig.sh" files. -+ -+11/11/96 (installation) -+ Fixed the package installation to conform to tcl7.6/tk4.2. The -+ pkgIndex.tcl files are now stored in the library directory for -+ each package. -+ -+11/13/96 (enhancement) -+ Overhauled the scrolledcanvas widget. It is now about an order of -+ magnitude faster. -+ -+11/14/96 (enhancement) -+ Overhauled the [incr Widgets] "catalog" demo. When you pick any -+ mega-widget class, the demo displays an example widget, the code -+ used to build it, the class hierarchy, and the man page. -+ -+11/23/96 (bug fix) -+ Fixed the way the "inherit" command autoloads class definitions. -+ Previously, it invoked the class name as a command. Now, it uses -+ the "auto_load" command. -+ -+11/23/96 (installation) -+ Fixed the "configure" files to use "mkinstalldirs" instead of "mkdir" -+ so that the entire distribution can be built in a separate directory -+ starting with a single "configure" file. Fixed the way the distribution -+ is created to make this patch for each new distribution. -+ -+11/23/96 (installation) -+ Fixed the iwidgets installation so that the installed files (instead -+ of the source files) are chmod'd to have the proper permissions. -+ -+11/29/96 (installation) -+ Fixed iwidgets (combobox, optionmenu, shell) so that they don't rely -+ on "tkwait visibility" before doing a grab. On the Macintosh, this -+ only works the first time a window is mapped. After that, this -+ command does not return control, even when a window is remapped. -+ -+11/30/96 (bug fix) -+ Fixed "tk4.2/library/menu.tcl", moving a comment in a switch statement -+ above the default case into the default case. When the comment is -+ above the case, it is treated as a list element and a parsing error -+ occurs. You can trigger the error with a command like "tkMenuFind . x". -+ When the comment is inside the case, everything works fine. -+ -+11/30/96 (bug fix) -+ Fixed a memory error that occured when an interpreter was destroyed. -+ One namespace (e.g., base class) caused another (e.g., derived class) -+ to be destroyed. Then the namespace was destroyed again later on. -+ Now, as we iteration through the safeCopy list, we check to make -+ sure the namespace still exists. -+ -+11/30/96 (bug fix) -+ Fixed entryfield mega-widget to avoid using the "%s" state field -+ for key presses. It was using it to find out whether or not Control, -+ Shift, or Alt keys were being held down during a key press. But this -+ field confuses Alt with NumLock when you go between Unix and Windows -+ platforms. The entryfield appeared to be broken when NumLock was -+ turned on. Nothing is lost if we simply ignore it and let all -+ keypresses through. -+ -+12/1/96 (installation) -+ Fixed the way that "pkgIndex.tcl" files are built for Itcl/Itk. -+ When you build with "--enable-shared", the package files load the -+ shared library, but when you build without, the package files -+ use {load "" Itcl} to get the static package. This lets you -+ do "package require" commands in slave interpreters, even if -+ things were built with static packages. -+ -+12/1/96 (bug fix) -+ Fixed how namespaces are deleted when an interpreter is deleted. -+ Previously, namespaces were deleted after the assocData for the -+ interp. If any background errors occurred while the namespace -+ was being deleted, they caused seg faults later on. Now, the -+ global namespace is cleared (but not deleted) *before* deleting -+ the assocData. Any background errors are deleted, and the global -+ namespace is finally deleted at that point. -+ -+12/2/96 (enhancement) JCI -+ Defined "tkOpenDocument" in tk.tcl so that Macintosh users can -+ double-click on an [incr Tcl] source file, and itkwish will be -+ invoked to execute it. -+ -+12/2/96 (bug fix) -+ Fixed the entryfield widget so that characters like: " [ ] { } \ & -+ are substituted properly into the "%c" field when doing character -+ validation. -+ -+12/2/96 (enhancement) **POTENTIAL INCOMPATIBILITY** -+ Changed the HTML parsing in the scrolledhtml widget to speed it up. -+ Also, changed the "-feedback" option so that it appends two numbers -+ on the end of the feedback command: the current position and the -+ maximum position. This frees the caller from having to figure out -+ the maximum position. -+ -+12/2/96 (enhancement) -+ Added "-borderwidth", "-relief" and "-elementborderwidth" options -+ to the feedback widget, so you can control its appearance a little -+ better. -+ -+========================================================================== -+ ------------------------ RELEASE 2.2 - 12/3/96 ------------------------- -+========================================================================== -+ -+12/12/96 (installation) -+ Fixed "iwidgets.tcl" initialization file to rely on the environment -+ variable IWIDGETS_LIBRARY (if it exists), and use the compiled-in -+ path as a last resort. That way, the user can override the iwidgets -+ library with an environment variable setting. -+ -+12/12/96 (installation) -+ Fixed the "catalog" demo for [incr Widgets] to help support Windows3.1. -+ The code is now arranged to make it easy to translate between the -+ real demo names and DOS 8.3 file names. -+ -+12/13/96 (bug fix) -+ Added a "usual" test for all of the [incr Widgets]. This checks to -+ make sure that there is a bit of "usual" code for each widget, that -+ the options in the "usual" code are valid, and that all of the -+ widgets mix together without errors. -+ -+4/11/97 (enhancement) -+ Merged in patches for tcl7.6p2/tk4.2p2 (jingham) -+ -+5/17/97 (bug fix) -+ Fixed itk::Toplevel to have the hull keep the -takefocus option. -+ This fixed a problem with the tab ring in iwidget dialogs. -+ -+6/1/98 (complete rewrite) -+ Rewrote the entire package to work with Tcl8.0 namespaces and the -+ new byte code compiler. -+ -+========================================================================== -+ ----------------------- RELEASE 3.0a1 - 6/16/98 ------------------------ -+========================================================================== -+ -+7/23/98 (bug fix) -+ Removed references to Tcl internal macros such as TclDecrRefCount. -+ This was causing problems under Windows, since those macros use -+ global variables that are not available outside of tcl80.dll. -+ -+7/23/98 (bug fix) -+ Added my own definition of the assert macro. Since Tcl/Tk doesn't -+ use assert, the default version was causing build problems with -+ gcc. -+ -+7/27/98 (configuration change) -+ Changed all "configure" scripts to rely on tclConfig.sh and tkConfig.sh -+ for compile options. -+ -+7/27/98 (configuration change) -+ Changed the initialization process for Itcl/Itk. Both packages now -+ key off of tcl_library to find their initialization scripts. -+ -+7/27/98 (configuration change) -+ Removed IWIDGETS_LIBRARY environment variable from the Iwidgets -+ package. If Iwidgets is installed properly, this variable is not -+ needed. -+ -+7/29/98 (configuration change) -+ Added Scott Stanton's patch to the initialization process. The -+ last-ditch installation directory is no longer compiled into the -+ itcl sources. Instead, itcl searches for the installation directory -+ starting from $tcl_library. Also, if the variable itcl::library is -+ set before loading itcl, then itcl aborts the search and uses that -+ as its library directory. -+ -+7/30/98 (Macintosh) -+ Added Jim Ingham's patches for the Mac. -+ -+7/30/98 (configuration) -+ Fixed Makefiles for Iwidgets 2.2/3.0 to avoid a problem while -+ installing the demo images/html. The INSTALL_DATA program may -+ have a relative name (../../config/install-sh) so we must be -+ careful to "cd" into library, demos, etc., but not into other -+ directories below them. -+ -+8/8/98 (bug fix) -+ Fixed "namespace import" to work with autoloading. If you -+ execute "namespace import iwidgets::*", the auto_import proc -+ will create stubs for all of the iwidgets commands. Executing -+ one of the stubs triggers autoloading for the appropriate command. -+ -+8/10/98 (bug fix) -+ Integrated changes from Scriptics team to work seamlessly with -+ Tcl 8.0.3. -+ -+8/10/98 (bug fix) -+ Fixed the iwidgets::optionmenu to work properly under Windows 95/NT. -+ Extended the "get" method in iwidgets3.0 so that you can query -+ existing elements from an optionmenu. -+ -+========================================================================== -+ ------------------------ RELEASE 3.0 - 8/11/98 ------------------------- -+========================================================================== -+ -+8/16/98 (bug fix) -+ Fixed the windows pkgIndex.tcl files for Itcl and Itk to properly -+ load their .dll. Also fixed iwidgets/catalog to package require -+ Itcl, Itk, and to import ::itcl::* to get "class" defined. (BW) -+ -+12/21/99 (bug fix) -+ Fixed tests for auto_mkindex to work properly outside of itkwish. -+ Tests now include "namespace import itcl::*" instead of assuming that -+ this behavior is built into the wish. -+ -+4/18/00 (feature enhancement) -+ Fixed itcl::find to find classes and objects in *all* namespaces -+ in the interpreter. Until this fix, the itcl::find command would -+ report only the objects in the active namespace or the global -+ namespace. Being able to find classes/objects in all namespaces -+ makes debugging easier. Thanks to Chad Smith for pushing to make -+ this change happen. -+ -+6/26/00 (bug fix) -+ Fixed Itcl_ClassVarResolver so that the formal parameters in a -+ method/proc take precedence over class data members. -+ -+6/30/00 (bug fix) -+ Fixed all itcl/itk/iwidgets3.0.0 tests to run cleanly with the new -+ tcltest package. -+ -+7/1/00 (bug fix) -+ Fixed "itk_component delete" so that the composite option list is -+ cleaned up whenever a component is deleted. For example, suppose -+ a component is the sole contributor of -font. When that component -+ is removed via "itk_component delete", the -font option goes away -+ as well. Also fixed the handling of the itk-delete-* binding for -+ the component. When the component is removed, the binding tag -+ is also removed by itk::remove_destroy_hook. -+ -+7/5/00 (bug fix) -+ Fixed the check done during object creation to avoid clobbering -+ existing commands. Previously, itcl would look for any command-- -+ in the local *and* global namespace--that might be clobbered. -+ Now, it looks for commands only in the local namespace, since -+ those are the only ones that could truly be clobbered. -+ -+7/5/00 (cleanup) -+ Removed obsolete Makefile/configure files in the various "unix" -+ directories. Makefiles and configure files now reside one level -+ above, in the standard TEA place. -+ -+7/11/00 (stubs cleanup) -+ Fix the build so static links do not use the stubs library. -+ -+8/1/00 (stubs cleanup) -+ Added missing declarations for Itcl_InitStubs and Itk_InitStubs -+ and simplified how Itcl Stubs are set in Initialize() of itk_cmds.c -+ -+8/1/00 (Makefile) -+ Added config/installFiles.tcl and changed the various Makefile.in -+ files to use this instead of install-sh. installFiles.tcl can -+ optimize out a copy if the target file is already up-to-date. -+ This eliminates conflicts from parallel builds on different platforms -+ where one build is zipping up the installed files while another platform -+ is copying platform-independent files (i.e., the iwidgets demos). -+ -+8/4/00 (stubs cleanup) -+ Fixed dll linkage problem with the prototypes of the 2 XX_InitStubs -+ functions use. I copied the core too literally. Stubs libraries are -+ always static, so there's no need to play games with __declspec on -+ windows. -+ -+8/7/00 (stubs cleanup) -+ Cleaned up use of Itcl_InitStubs by Itk. Finally got it right after -+ much flailing about. itcl.h has the correct definitions, and -+ itclStubLib.c has the correct #ifdefs. -+ Also nuked extra definitions of itclStubsPtr from the itk_cmds.c file. -+ -+8/17/00 (more stubs cleanup) -+ Tcl_InitStubs in itcl/generic/itcl_cmds.c was using the TCL_VERSION macro -+ set by the tcl.h header. Changed it to be "8.1" instead as it doesn't -+ matter unless Itcl needs special/new features of the core it's header is -+ from. But it doesn't.. so hard code it for an 8.1 minimum to make the -+ Itcl library have a better version range with the core as specific -+ version tracking with the core isn't needed (at this time). -+ -+========================================================================== -+ ------------------------ RELEASE 3.2 - 08/18/00 ------------------------ -+========================================================================== -+ -+9/22/00 (stubs cleanup) -+ Itcl_InitStub prototype in itcl/generic/itcl.h was getting name mangled -+ by c++ compilers. Fixed with an 'extern "C"' appropriately applied. -+ -+4/07/01 (bug fix) -+ Tcl's internal header, tclInt.h, in 8.4a2 got a small change in the Command -+ structure that needed 2 changes in Itcl to resolve. 1) #if/#else/#endif blocks -+ added in itcl_class.c and itc_ensemble.c allowing Itcl to compile. 2) added -+ a global variable called itclCompatFlags that's sets a flag in Itcl_Init() -+ that will modify the logic around access to cmdPtr->flags/deleted. This -+ way, any core compile will yield a fully forward/backward compatible -+ binary (correct logic set at runtime). -+ -+5/22/01 (bug fixes) -+ makefile.vc lives again! Brought back from it's death to conquere windows -+ once again for users who prefer to avoid (or can't understand or get the tools -+ installed for) the TEA build system. -+ -+ Also, numerous fixes relating to Kevin Kenny's Tcl API mods for better CONST -+ support. The latest headers for Tcl where throwing warnings all over the place -+ about type errors. I fixed the sources, but haven't checked against older -+ headers yet. -\ No newline at end of file -diff -Naur insight-6.8.orig/itcl/itcl/configure insight-6.8.new/itcl/itcl/configure ---- insight-6.8.orig/itcl/itcl/configure 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/itcl/configure 2008-08-18 18:56:39.000000000 +0200 -@@ -1,25 +1,54 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.59. -+# Generated by GNU Autoconf 2.61 for itcl 3.3. - # --# Copyright (C) 2003 Free Software Foundation, Inc. -+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -+# 2002, 2003, 2004, 2005, 2006 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 Bourne compatible -+# 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=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix -+ 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 -+ -+# 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=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh - fi --DUALCASE=1; export DUALCASE # for MKS sh - - # Support unset when possible. - if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -@@ -29,8 +58,43 @@ - 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.) -+as_nl=' -+' -+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 -+ 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. --$as_unset ENV MAIL MAILPATH -+for as_var in ENV MAIL MAILPATH -+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -+done - PS1='$ ' - PS2='> ' - PS4='+ ' -@@ -44,18 +108,19 @@ - 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 -+ ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi - done - - # Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; then -+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 -+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename - else - as_basename=false -@@ -63,157 +128,388 @@ - - - # Name of the executable. --as_me=`$as_basename "$0" || -+as_me=`$as_basename -- "$0" || - $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)$' \| \ -- . : '\(.\)' 2>/dev/null || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\/\)$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\).*/{ -+ s//\1/ -+ q -+ } -+ s/.*/./; q'` - -+# CDPATH. -+$as_unset CDPATH - --# PATH needs CR, and LINENO needs CR and PATH. --# 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 - --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh -+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 -+} - -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 -+exitcode=0 -+if as_func_success; then -+ : -+else -+ exitcode=1 -+ echo as_func_success failed. -+fi - -- ;; -- 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 -- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -+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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -+ case $as_dir in - /*) -- if ("$as_dir/$as_base" -c ' -+ 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=: -+ # 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 -+ -+ -+: -+_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=: -+ # 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 -+ -+ -+: -+(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 -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -+ 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 autoconf@gnu.org about your system, -+ echo including any error possibly output before this -+ echo message -+} -+ -+ -+ -+ 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, and appends trailing '-' during -- # substitution so that $LINENO is not a special case at line end. -+ # 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -+ # 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 -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ :loop -+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -+ s/-\n.*// - ' >$as_me.lineno && -- chmod +x $as_me.lineno || -+ chmod +x "$as_me.lineno" || - { 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 sensible to this). -- . ./$as_me.lineno -+ # original and so on. Autoconf is especially sensitive to this). -+ . "./$as_me.lineno" - # Exit status is that of the last command. - exit - } - - --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+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; then -+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 -+fi - echo >conf$$.file - if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -+ 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' -- else -- as_ln_s='ln -s' -- fi - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi --rm -f conf$$ conf$$.exe conf$$.file -+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=: -@@ -222,7 +518,28 @@ - as_mkdir_p=false - fi - --as_executable_p="test -f" -+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'" -@@ -231,49 +548,205 @@ - as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH - -+exec 7<&0 &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` - --exec 6>&1 -- - # - # 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} - --# Maximum number of lines to put in a shell here document. --# This variable seems obsolete. It should probably be removed, and --# only ac_max_sed_lines should be used. --: ${ac_max_here_lines=38} -- - # Identity of this package. --PACKAGE_NAME= --PACKAGE_TARNAME= --PACKAGE_VERSION= --PACKAGE_STRING= --PACKAGE_BUGREPORT= -+PACKAGE_NAME='itcl' -+PACKAGE_TARNAME='itcl' -+PACKAGE_VERSION='3.3' -+PACKAGE_STRING='itcl 3.3' -+PACKAGE_BUGREPORT='' - --ac_unique_file="generic/itcl.h" --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 datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PACKAGE VERSION CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA SET_MAKE RANLIB ac_ct_RANLIB build build_cpu build_vendor build_os host host_cpu host_vendor host_os CYGPATH RELPATH ITCL_GENERIC_DIR_NATIVE ITCL_WIN_DIR_NATIVE ITCL_UNIX_DIR_NATIVE ITCL_INCLUDES TCL_DBGX TCL_BIN_DIR TCL_SRC_DIR TCL_LIB_FILE TCL_LIBS TCL_DEFS TCL_SHLIB_LD_LIBS TCL_EXTRA_CFLAGS TCL_LD_FLAGS TCL_STUB_LIB_FILE TCL_LIB_SPEC TCL_BUILD_LIB_SPEC TCL_STUB_LIB_SPEC TCL_BUILD_STUB_LIB_SPEC TCL_TOP_DIR_NATIVE TCL_GENERIC_DIR_NATIVE TCL_UNIX_DIR_NATIVE TCL_WIN_DIR_NATIVE TCL_BMAP_DIR_NATIVE TCL_TOOL_DIR_NATIVE TCL_PLATFORM_DIR_NATIVE TCL_INCLUDES CLEANFILES PLATFORM_SOURCES PLATFORM_OBJECTS PLATFORM_DIR CFLAGS_DEBUG CFLAGS_OPTIMIZE STLIB_LD SHLIB_LD SHLIB_CFLAGS SHLIB_LDFLAGS CFLAGS_DEFAULT LDFLAGS_DEFAULT MAKE_LIB MAKE_SHARED_LIB MAKE_STATIC_LIB POST_MAKE_LIB POST_MAKE_STATIC_LIB ITCL_LIB_FILE ITCL_STUB_LIB_FILE ITCL_BUILD_LIB_SPEC ITCL_BUILD_STUB_LIB_SPEC ITCL_LIB_SPEC ITCL_STUB_LIB_SPEC ITCL_LIB_FULL_PATH ITCL_STUB_LIB_FULL_PATH itclstub_LIB_FILE itcl_LIB_FILE SHLIB_LD_LIBS ITCL_VERSION ITCL_MAJOR_VERSION ITCL_MINOR_VERSION ITCL_RELEASE_LEVEL ITCL_SRC_DIR ITCL_SH LIBOBJS LTLIBOBJS' -+# Factoring default headers for most tests. -+ac_includes_default="\ -+#include -+#ifdef HAVE_SYS_TYPES_H -+# include -+#endif -+#ifdef HAVE_SYS_STAT_H -+# include -+#endif -+#ifdef STDC_HEADERS -+# include -+# include -+#else -+# ifdef HAVE_STDLIB_H -+# include -+# endif -+#endif -+#ifdef HAVE_STRING_H -+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -+# include -+# endif -+# include -+#endif -+#ifdef HAVE_STRINGS_H -+# include -+#endif -+#ifdef HAVE_INTTYPES_H -+# include -+#endif -+#ifdef HAVE_STDINT_H -+# include -+#endif -+#ifdef HAVE_UNISTD_H -+# include -+#endif" -+ -+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 -+CYGPATH -+EXEEXT -+PKG_LIB_FILE -+PKG_STUB_LIB_FILE -+PKG_STUB_SOURCES -+PKG_STUB_OBJECTS -+PKG_TCL_SOURCES -+PKG_HEADERS -+PKG_INCLUDES -+PKG_LIBS -+PKG_CFLAGS -+LN_S -+CONFIG_CLEAN_FILES -+TCL_VERSION -+TCL_BIN_DIR -+TCL_SRC_DIR -+TCL_LIB_FILE -+TCL_LIB_FLAG -+TCL_LIB_SPEC -+TCL_STUB_LIB_FILE -+TCL_STUB_LIB_FLAG -+TCL_STUB_LIB_SPEC -+TCL_LIBS -+TCL_DEFS -+TCL_EXTRA_CFLAGS -+TCL_LD_FLAGS -+TCL_SHLIB_LD_LIBS -+CC -+CFLAGS -+LDFLAGS -+CPPFLAGS -+ac_ct_CC -+OBJEXT -+CPP -+INSTALL_PROGRAM -+INSTALL_SCRIPT -+INSTALL_DATA -+SET_MAKE -+RANLIB -+GREP -+EGREP -+MATH_LIBS -+PKG_SOURCES -+PKG_OBJECTS -+CLEANFILES -+TCL_TOP_DIR_NATIVE -+TCL_GENERIC_DIR_NATIVE -+TCL_UNIX_DIR_NATIVE -+TCL_WIN_DIR_NATIVE -+TCL_BMAP_DIR_NATIVE -+TCL_TOOL_DIR_NATIVE -+TCL_PLATFORM_DIR_NATIVE -+TCL_INCLUDES -+SHARED_BUILD -+AR -+TCLSH_PROG -+CELIB_DIR -+LIBOBJS -+DL_LIBS -+CFLAGS_DEBUG -+CFLAGS_OPTIMIZE -+CFLAGS_WARNING -+STLIB_LD -+SHLIB_LD -+SHLIB_CFLAGS -+SHLIB_LD_LIBS -+LDFLAGS_DEBUG -+LDFLAGS_OPTIMIZE -+LD_LIBRARY_PATH_VAR -+TCL_DBGX -+CFLAGS_DEFAULT -+LDFLAGS_DEFAULT -+MAKE_LIB -+MAKE_SHARED_LIB -+MAKE_STATIC_LIB -+MAKE_STUB_LIB -+RANLIB_STUB -+itcl_STUB_LIB_FILE -+itcl_LIB_FILE -+itcl_BUILD_LIB_SPEC -+itcl_LIB_SPEC -+itcl_BUILD_STUB_LIB_SPEC -+itcl_STUB_LIB_SPEC -+itcl_BUILD_STUB_LIB_PATH -+itcl_STUB_LIB_PATH -+itcl_SRC_DIR -+LTLIBOBJS' - ac_subst_files='' -+ ac_precious_vars='build_alias -+host_alias -+target_alias -+CC -+CFLAGS -+LDFLAGS -+LIBS -+CPPFLAGS -+CPP' -+ - - # Initialize some variables set by options. - ac_init_help= -@@ -300,34 +773,48 @@ - # 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' --datadir='${prefix}/share' -+datarootdir='${prefix}/share' -+datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' --libdir='${exec_prefix}/lib' - includedir='${prefix}/include' - oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -+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" -+ eval $ac_prev=\$ac_option - ac_prev= - continue - fi - -- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` -+ 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_option in -+ case $ac_dashdash$ac_option in -+ --) -+ ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; -@@ -349,33 +836,45 @@ - --config-cache | -C) - cache_file=config.cache ;; - -- -datadir | --datadir | --datadi | --datad | --data | --dat | --da) -+ -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; -- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ -- | --da=*) -+ -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_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- eval "enable_$ac_feature=no" ;; -+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` -+ eval enable_$ac_feature=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_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "enable_$ac_feature='$ac_optarg'" ;; -+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` -+ eval enable_$ac_feature=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ -@@ -402,6 +901,12 @@ - -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 ;; -@@ -426,13 +931,16 @@ - | --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 | --local | --loca | --loc | --lo) -+ | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ -- | --localstate=* | --localstat=* | --localsta=* | --localst=* \ -- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) -+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) -@@ -497,6 +1005,16 @@ - | --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 ;; -@@ -549,24 +1067,20 @@ - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package| sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "with_$ac_package='$ac_optarg'" ;; -+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'` -+ eval with_$ac_package=\$ac_optarg ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. -- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && -+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package | sed 's/-/_/g'` -- eval "with_$ac_package=no" ;; -+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'` -+ eval with_$ac_package=no ;; - - --x) - # Obsolete; use --with-x. -@@ -597,8 +1111,7 @@ - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } -- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` -- eval "$ac_envvar='$ac_optarg'" -+ eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) -@@ -618,27 +1131,19 @@ - { (exit 1); exit 1; }; } - fi - --# Be sure to have absolute paths. --for ac_var in exec_prefix prefix --do -- eval ac_val=$`echo $ac_var` -- case $ac_val in -- [\\/$]* | ?:[\\/]* | NONE | '' ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -- esac --done -- --# Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -- localstatedir libdir includedir oldincludedir infodir mandir -+# Be sure to have absolute directory names. -+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=$`echo $ac_var` -+ eval ac_val=\$$ac_var - case $ac_val in -- [\\/$]* | ?:[\\/]* ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -+ [\\/$]* | ?:[\\/]* ) 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 -+ { (exit 1); exit 1; }; } - done - - # There might be people who depend on the old broken behavior: `$host' -@@ -665,70 +1170,76 @@ - test "$silent" = yes && exec 6>/dev/null - - --# 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 its parent. -- ac_confdir=`(dirname "$0") 2>/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 -+ { (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 -+ { (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 -- "$0" || - $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X"$0" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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 -+ if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi - else - ac_srcdir_defaulted=no - fi --if test ! -r $srcdir/$ac_unique_file; then -- if test "$ac_srcdir_defaulted" = yes; then -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 -- { (exit 1); exit 1; }; } -- else -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 -- { (exit 1); exit 1; }; } -- fi --fi --(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || -- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 -- { (exit 1); exit 1; }; } --srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` --ac_env_build_alias_set=${build_alias+set} --ac_env_build_alias_value=$build_alias --ac_cv_env_build_alias_set=${build_alias+set} --ac_cv_env_build_alias_value=$build_alias --ac_env_host_alias_set=${host_alias+set} --ac_env_host_alias_value=$host_alias --ac_cv_env_host_alias_set=${host_alias+set} --ac_cv_env_host_alias_value=$host_alias --ac_env_target_alias_set=${target_alias+set} --ac_env_target_alias_value=$target_alias --ac_cv_env_target_alias_set=${target_alias+set} --ac_cv_env_target_alias_value=$target_alias --ac_env_CC_set=${CC+set} --ac_env_CC_value=$CC --ac_cv_env_CC_set=${CC+set} --ac_cv_env_CC_value=$CC --ac_env_CFLAGS_set=${CFLAGS+set} --ac_env_CFLAGS_value=$CFLAGS --ac_cv_env_CFLAGS_set=${CFLAGS+set} --ac_cv_env_CFLAGS_value=$CFLAGS --ac_env_LDFLAGS_set=${LDFLAGS+set} --ac_env_LDFLAGS_value=$LDFLAGS --ac_cv_env_LDFLAGS_set=${LDFLAGS+set} --ac_cv_env_LDFLAGS_value=$LDFLAGS --ac_env_CPPFLAGS_set=${CPPFLAGS+set} --ac_env_CPPFLAGS_value=$CPPFLAGS --ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} --ac_cv_env_CPPFLAGS_value=$CPPFLAGS -+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 -+ { (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 -+ { (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. -@@ -737,7 +1248,7 @@ - # 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. -+\`configure' configures itcl 3.3 to adapt to many kinds of systems. - - Usage: $0 [OPTION]... [VAR=VALUE]... - -@@ -757,9 +1268,6 @@ - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - --_ACEOF -- -- cat <<_ACEOF - Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] -@@ -777,165 +1285,144 @@ - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] - --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] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] -+ --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/itcl] -+ --htmldir=DIR html documentation [DOCDIR] -+ --dvidir=DIR dvi documentation [DOCDIR] -+ --pdfdir=DIR pdf documentation [DOCDIR] -+ --psdir=DIR ps documentation [DOCDIR] - _ACEOF - - cat <<\_ACEOF -- --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 -- -+ case $ac_init_help in -+ short | recursive ) echo "Configuration of itcl 3.3:";; -+ esac - cat <<\_ACEOF - - Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -- --enable-threads build with threads - --enable-shared build and link with shared libraries --enable-shared -+ --enable-64bit enable 64bit support (where applicable) -+ --enable-64bit-vis enable 64bit Sparc VIS support -+ --enable-wince enable Win/CE support (where applicable) -+ --disable-load disallow dynamic loading and "load" command - --enable-symbols build with debugging symbols --disable-symbols - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-tcl directory containing tcl configuration (tclConfig.sh) -+ --with-celib=DIR use Windows/CE support library from DIR - - Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory -- CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have -- headers in a nonstandard directory -+ LIBS libraries to pass to the linker, e.g. -l -+ CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if -+ you have headers in a nonstandard directory -+ 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. -- ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue -- test -d $ac_dir || continue -+ test -d "$ac_dir" || continue - ac_builddir=. - --if test "$ac_dir" != .; then -+case "$ac_dir" in -+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -+*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -+ # A ".." for each directory in $ac_dir_suffix. -+ ac_top_builddir_sub=`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 -- .) # No --srcdir option. We are building in place. -+ .) # We are building in place. - ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -+ 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 ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -- --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; -+ 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 -- echo -- $SHELL $ac_srcdir/configure.gnu --help=recursive -- elif test -f $ac_srcdir/configure; then -- echo -- $SHELL $ac_srcdir/configure --help=recursive -- elif test -f $ac_srcdir/configure.ac || -- test -f $ac_srcdir/configure.in; then -- echo -- $ac_configure --help -+ 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 - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 -- fi -- cd $ac_popdir -+ fi || ac_status=$? -+ cd "$ac_pwd" || { ac_status=$?; break; } - done - fi - --test -n "$ac_init_help" && exit 0 -+test -n "$ac_init_help" && exit $ac_status - if $ac_init_version; then - cat <<\_ACEOF -+itcl configure 3.3 -+generated by GNU Autoconf 2.61 - --Copyright (C) 2003 Free Software Foundation, Inc. -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -+2002, 2003, 2004, 2005, 2006 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 0 -+ exit - fi --exec 5>config.log --cat >&5 <<_ACEOF -+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.59. Invocation command line was -+It was created by itcl $as_me 3.3, which was -+generated by GNU Autoconf 2.61. Invocation command line was - - $ $0 $@ - - _ACEOF -+exec 5>>config.log - { - cat <<_ASUNAME - ## --------- ## -@@ -954,7 +1441,7 @@ - /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` --hostinfo = `(hostinfo) 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` -@@ -968,6 +1455,7 @@ - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" - done -+IFS=$as_save_IFS - - } >&5 - -@@ -989,7 +1477,6 @@ - ac_configure_args= - ac_configure_args0= - ac_configure_args1= --ac_sep= - ac_must_keep_next=false - for ac_pass in 1 2 - do -@@ -1000,7 +1487,7 @@ - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; -- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) -+ *\'*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in -@@ -1022,9 +1509,7 @@ - -* ) ac_must_keep_next=true ;; - esac - fi -- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" -- # Get rid of the leading space. -- ac_sep=" " -+ ac_configure_args="$ac_configure_args '$ac_arg'" - ;; - esac - done -@@ -1035,8 +1520,8 @@ - # 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: Be sure not to use single quotes in there, as some shells, --# such as our DU 5.0 friend, will then `close' the trap. -+# 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. - { -@@ -1049,20 +1534,34 @@ - _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_*) { 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;} ;; -+ esac -+ case $ac_var in #( -+ _ | IFS | as_nl) ;; #( -+ *) $as_unset $ac_var ;; -+ esac ;; -+ esac -+ done - (set) 2>&1 | -- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -+ 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" -- ;; -+ "s/'\''/'\''\\\\'\'''\''/g; -+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" -+ ;; #( - *) -- sed -n \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; -- esac; --} -+ esac | -+ sort -+) - echo - - cat <<\_ASBOX -@@ -1073,22 +1572,28 @@ - echo - for ac_var in $ac_subst_vars - do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -+ eval ac_val=\$$ac_var -+ case $ac_val in -+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; -+ esac -+ echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX --## ------------- ## --## Output files. ## --## ------------- ## -+## ------------------- ## -+## File substitutions. ## -+## ------------------- ## - _ASBOX - echo - for ac_var in $ac_subst_files - do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -+ eval ac_val=\$$ac_var -+ case $ac_val in -+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; -+ esac -+ echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi -@@ -1100,26 +1605,24 @@ - ## ----------- ## - _ASBOX - echo -- sed "/^$/d" confdefs.h | sort -+ cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 -- rm -f core *.core && -- rm -rf conftest* confdefs* conf$$* $ac_clean_files && -+ rm -f core *.core core.conftest.* && -+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -- ' 0 -+' 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 -rf conftest* confdefs.h --# AIX cpp loses on an empty file, so make sure it contains at least a newline. --echo >confdefs.h -+rm -f -r conftest* confdefs.h - - # Predefined preprocessor variables. - -@@ -1150,14 +1653,17 @@ - - # Let the site file select an alternate cache file if it wants to. - # Prefer explicitly selected file to automatically selected ones. --if test -z "$CONFIG_SITE"; then -- if test "x$prefix" != xNONE; then -- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -- else -- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -- fi -+if test -n "$CONFIG_SITE"; then -+ set x "$CONFIG_SITE" -+elif test "x$prefix" != xNONE; then -+ set x "$prefix/share/config.site" "$prefix/etc/config.site" -+else -+ set x "$ac_default_prefix/share/config.site" \ -+ "$ac_default_prefix/etc/config.site" - fi --for ac_site_file in $CONFIG_SITE; do -+shift -+for ac_site_file -+do - 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;} -@@ -1173,8 +1679,8 @@ - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 - echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in -- [\\/]* | ?:[\\/]* ) . $cache_file;; -- *) . ./$cache_file;; -+ [\\/]* | ?:[\\/]* ) . "$cache_file";; -+ *) . "./$cache_file";; - esac - fi - else -@@ -1186,12 +1692,11 @@ - # Check that the precious variables saved in the cache have kept the same - # value. - ac_cache_corrupted=false --for ac_var in `(set) 2>&1 | -- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do -+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" -+ 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,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -@@ -1216,8 +1721,7 @@ - # 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=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in -@@ -1234,13 +1738,6 @@ - { (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 -- -- - - - -@@ -1258,100 +1755,65 @@ - - - --# CYGNUS LOCAL --ac_aux_dir= --for ac_dir in ../.. $srcdir/../..; 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 -- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in ../.. $srcdir/../.." >&5 --echo "$as_me: error: cannot find install-sh or install.sh in ../.. $srcdir/../.." >&2;} -- { (exit 1); exit 1; }; } --fi --ac_config_guess="$SHELL $ac_aux_dir/config.guess" --ac_config_sub="$SHELL $ac_aux_dir/config.sub" --ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. - --# END CYGNUS LOCAL - --#-------------------------------------------------------------------- --# __CHANGE__ --# Set your package name and version numbers here. The NODOT_VERSION is --# required for constructing the library name on systems that don't like --# dots in library names (Windows). The VERSION variable is used on the --# other systems. --#-------------------------------------------------------------------- - --PACKAGE=itcl - --MAJOR_VERSION=3 --MINOR_VERSION=2 --PATCHLEVEL=.1 - --VERSION=${MAJOR_VERSION}.${MINOR_VERSION} --NODOT_VERSION=${MAJOR_VERSION}${MINOR_VERSION} - - -+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 - - - - #-------------------------------------------------------------------- --# We put this here so that you can compile with -DVERSION="1.2" to --# encode the package version directly into the source files. -+# Call TEA_INIT as the first TEA_ macro to set up initial vars. -+# This will define a ${TEA_PLATFORM} variable == "unix" or "windows" -+# as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. - #-------------------------------------------------------------------- - --eval cat >>confdefs.h <<_ACEOF --#define VERSION "${VERSION}" --_ACEOF -- -- --#------------------------------------------------------------------------ --# Handle the --prefix=... option --#------------------------------------------------------------------------ -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --#-------------------------------------------------------------------- --# Check whether --enable-gcc or --disable-gcc was given. Do this --# before AC_CYGWIN is called so the compiler can --# be fully tested by built-in autoconf tools. --# This macro also calls AC_PROG_CC to set the compiler if --enable-gcc --# was not used. --#-------------------------------------------------------------------- - --# CYGNUS LOCAL --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -+ # TEA extensions pass this us the version of TEA they think they -+ # are compatible with. -+ TEA_VERSION="3.2" -+ -+ { echo "$as_me:$LINENO: checking for correct TEA configuration" >&5 -+echo $ECHO_N "checking for correct TEA configuration... $ECHO_C" >&6; } -+ if test x"${PACKAGE_NAME}" = x ; then -+ { { echo "$as_me:$LINENO: error: -+The PACKAGE_NAME variable must be defined by your TEA configure.in" >&5 -+echo "$as_me: error: -+The PACKAGE_NAME variable must be defined by your TEA configure.in" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ if test x"3.2" = x ; then -+ { { echo "$as_me:$LINENO: error: -+TEA version not specified." >&5 -+echo "$as_me: error: -+TEA version not specified." >&2;} -+ { (exit 1); exit 1; }; } -+ elif test "3.2" != "${TEA_VERSION}" ; then -+ { echo "$as_me:$LINENO: result: warning: requested TEA version \"3.2\", have \"${TEA_VERSION}\"" >&5 -+echo "${ECHO_T}warning: requested TEA version \"3.2\", have \"${TEA_VERSION}\"" >&6; } -+ else -+ { echo "$as_me:$LINENO: result: ok (TEA ${TEA_VERSION})" >&5 -+echo "${ECHO_T}ok (TEA ${TEA_VERSION})" >&6; } -+ fi -+ case "`uname -s`" in -+ *win32*|*WIN32*|*CYGWIN_NT*|*CYGWIN_9*|*CYGWIN_ME*|*MINGW32_*) -+ # Extract the first word of "cygpath", so it can be a program name with args. -+set dummy cygpath; 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_CYGPATH+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. -+ if test -n "$CYGPATH"; then -+ ac_cv_prog_CYGPATH="$CYGPATH" # Let the user override the test. - else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR - for as_dir in $PATH -@@ -1359,154 +1821,499 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CC="${ac_tool_prefix}gcc" -+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -+ ac_cv_prog_CYGPATH="cygpath -w" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi - done - done -+IFS=$as_save_IFS - -+ test -z "$ac_cv_prog_CYGPATH" && ac_cv_prog_CYGPATH="echo" - fi - fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 -+CYGPATH=$ac_cv_prog_CYGPATH -+if test -n "$CYGPATH"; then -+ { echo "$as_me:$LINENO: result: $CYGPATH" >&5 -+echo "${ECHO_T}$CYGPATH" >&6; } - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}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 --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_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done - --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 -+ EXEEXT=".exe" -+ TEA_PLATFORM="windows" -+ ;; -+ *) -+ CYGPATH=echo -+ EXEEXT="" -+ TEA_PLATFORM="unix" -+ ;; -+ esac -+ -+ # Check if exec_prefix is set. If not use fall back to prefix. -+ # Note when adjusted, so that TEA_PREFIX can correct for this. -+ # This is needed for recursive configures, since autoconf propagates -+ # $prefix, but not $exec_prefix (doh!). -+ if test x$exec_prefix = xNONE ; then -+ exec_prefix_default=yes -+ exec_prefix=$prefix -+ fi -+ -+ -+ -+ -+ # This package name must be replaced statically for AC_SUBST to work -+ -+ # Substitute STUB_LIB_FILE in case package creates a stub library too. -+ -+ -+ # We AC_SUBST these here to ensure they are subst'ed, -+ # in case the user doesn't call TEA_ADD_... -+ -+ -+ -+ -+ -+ -+ -+ -+ -+{ 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" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no, using $LN_S" >&5 -+echo "${ECHO_T}no, using $LN_S" >&6; } - fi - -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" -+CONFIG_CLEAN_FILES= -+if test ! -d $srcdir/tclconfig ; then -+ if test -d $srcdir/../tclconfig ; then -+ $LN_S $srcdir/../tclconfig tclconfig -+ CONFIG_CLEAN_FILES=tclconfig -+ fi - 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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -+ -+ac_aux_dir= -+for ac_dir in tclconfig "$srcdir"/tclconfig; 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 --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+if test -z "$ac_aux_dir"; then -+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in tclconfig \"$srcdir\"/tclconfig" >&5 -+echo "$as_me: error: cannot find install-sh or install.sh in tclconfig \"$srcdir\"/tclconfig" >&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. -+ -+ -+ -+#-------------------------------------------------------------------- -+# Load the tclConfig.sh file -+#-------------------------------------------------------------------- -+ -+ -+ -+ # -+ # Ok, lets find the tcl configuration -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-tcl -+ # -+ -+ if test x"${no_tcl}" = x ; then -+ # we reset no_tcl in case something fails here -+ no_tcl=true -+ -+# Check whether --with-tcl was given. -+if test "${with_tcl+set}" = set; then -+ withval=$with_tcl; with_tclconfig=${withval} - fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # 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 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -+ -+ { echo "$as_me:$LINENO: checking for Tcl configuration" >&5 -+echo $ECHO_N "checking for Tcl configuration... $ECHO_C" >&6; } -+ if test "${ac_cv_c_tclconfig+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="cc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done - --fi -+ -+ # For platform-specific directories -+ case $TEA_PLATFORM in -+ windows) platform="win" ;; -+ unix) platform="unix" ;; -+ *) { { echo "$as_me:$LINENO: error: unknown TEA_PLATFORM: \"$TEA_PLATFORM\"" >&5 -+echo "$as_me: error: unknown TEA_PLATFORM: \"$TEA_PLATFORM\"" >&2;} -+ { (exit 1); exit 1; }; } -+ esac -+ -+ # First check to see if --with-tcl was specified. -+ if test x"${with_tclconfig}" != x ; then -+ case ${with_tclconfig} in -+ */tclConfig.sh ) -+ if test -f ${with_tclconfig}; then -+ { echo "$as_me:$LINENO: WARNING: --with-tcl argument should refer to directory containing tclConfig.sh, not to tclConfig.sh itself" >&5 -+echo "$as_me: WARNING: --with-tcl argument should refer to directory containing tclConfig.sh, not to tclConfig.sh itself" >&2;} -+ with_tclconfig=`echo ${with_tclconfig} | sed 's!/tclConfig\.sh$!!'` -+ fi ;; -+ esac -+ if test -f "${with_tclconfig}/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` -+ else -+ { { echo "$as_me:$LINENO: error: ${with_tclconfig} directory doesn't contain tclConfig.sh" >&5 -+echo "$as_me: error: ${with_tclconfig} directory doesn't contain tclConfig.sh" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ fi -+ -+ # then check for a private Tcl installation -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in \ -+ ../tcl \ -+ `ls -dr ../tcl[8-9].[0-9].[0-9]* 2>/dev/null` \ -+ `ls -dr ../tcl[8-9].[0-9] 2>/dev/null` \ -+ `ls -dr ../tcl[8-9].[0-9]* 2>/dev/null` \ -+ ../../tcl \ -+ `ls -dr ../../tcl[8-9].[0-9].[0-9]* 2>/dev/null` \ -+ `ls -dr ../../tcl[8-9].[0-9] 2>/dev/null` \ -+ `ls -dr ../../tcl[8-9].[0-9]* 2>/dev/null` \ -+ ../../../tcl \ -+ `ls -dr ../../../tcl[8-9].[0-9].[0-9]* 2>/dev/null` \ -+ `ls -dr ../../../tcl[8-9].[0-9] 2>/dev/null` \ -+ `ls -dr ../../../tcl[8-9].[0-9]* 2>/dev/null` ; do -+ if test -f "$i/$platform/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ -+ # check in a few common install locations -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in `ls -d ${exec_prefix}/lib 2>/dev/null` \ -+ `ls -d ${prefix}/lib 2>/dev/null` \ -+ `ls -d /usr/local/lib 2>/dev/null` \ -+ `ls -d /usr/contrib/lib 2>/dev/null` \ -+ `ls -d /usr/lib 2>/dev/null` \ -+ ; do -+ if test -f "$i/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ -+ # check in a few other private locations -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in \ -+ ${srcdir}/../tcl \ -+ `ls -dr ${srcdir}/../tcl[8-9].[0-9].[0-9]* 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tcl[8-9].[0-9] 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tcl[8-9].[0-9]* 2>/dev/null` ; do -+ -+ if test -f "$i/$platform/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ -+fi -+ -+ -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ TCL_BIN_DIR="# no Tcl configs found" -+ { echo "$as_me:$LINENO: WARNING: \"Cannot find Tcl configuration definitions\"" >&5 -+echo "$as_me: WARNING: \"Cannot find Tcl configuration definitions\"" >&2;} -+ exit 0 -+ else -+ no_tcl= -+ TCL_BIN_DIR=${ac_cv_c_tclconfig} -+ { echo "$as_me:$LINENO: result: found $TCL_BIN_DIR/tclConfig.sh" >&5 -+echo "${ECHO_T}found $TCL_BIN_DIR/tclConfig.sh" >&6; } -+ fi -+ fi -+ -+ -+ { echo "$as_me:$LINENO: checking for existence of $TCL_BIN_DIR/tclConfig.sh" >&5 -+echo $ECHO_N "checking for existence of $TCL_BIN_DIR/tclConfig.sh... $ECHO_C" >&6; } -+ -+ if test -f "$TCL_BIN_DIR/tclConfig.sh" ; then -+ { echo "$as_me:$LINENO: result: loading" >&5 -+echo "${ECHO_T}loading" >&6; } -+ . $TCL_BIN_DIR/tclConfig.sh -+ else -+ { echo "$as_me:$LINENO: result: file not found" >&5 -+echo "${ECHO_T}file not found" >&6; } -+ fi -+ -+ # -+ # If the TCL_BIN_DIR is the build directory (not the install directory), -+ # then set the common variable name to the value of the build variables. -+ # For example, the variable TCL_LIB_SPEC will be set to the value -+ # of TCL_BUILD_LIB_SPEC. An extension should make use of TCL_LIB_SPEC -+ # instead of TCL_BUILD_LIB_SPEC since it will work with both an -+ # installed and uninstalled version of Tcl. -+ # -+ -+ if test -f $TCL_BIN_DIR/Makefile ; then -+ TCL_LIB_SPEC=${TCL_BUILD_LIB_SPEC} -+ TCL_STUB_LIB_SPEC=${TCL_BUILD_STUB_LIB_SPEC} -+ TCL_STUB_LIB_PATH=${TCL_BUILD_STUB_LIB_PATH} -+ fi -+ -+ # -+ # eval is required to do the TCL_DBGX substitution -+ # -+ -+ eval "TCL_LIB_FILE=\"${TCL_LIB_FILE}\"" -+ eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" -+ eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" -+ -+ eval "TCL_STUB_LIB_FILE=\"${TCL_STUB_LIB_FILE}\"" -+ eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" -+ eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ #AC_SUBST(TCL_BUILD_LIB_SPEC) -+ #AC_SUBST(TCL_BUILD_STUB_LIB_SPEC) -+ -+ -+#----------------------------------------------------------------------- -+# Handle the --prefix=... option by defaulting to what Tcl gave. -+# Must be called after TEA_LOAD_TCLCONFIG and before TEA_SETUP_COMPILER. -+#----------------------------------------------------------------------- -+ -+ -+ if test "${prefix}" = "NONE"; then -+ prefix_default=yes -+ if test x"${TCL_PREFIX}" != x; then -+ { echo "$as_me:$LINENO: --prefix defaulting to TCL_PREFIX ${TCL_PREFIX}" >&5 -+echo "$as_me: --prefix defaulting to TCL_PREFIX ${TCL_PREFIX}" >&6;} -+ prefix=${TCL_PREFIX} -+ else -+ { echo "$as_me:$LINENO: --prefix defaulting to /usr/local" >&5 -+echo "$as_me: --prefix defaulting to /usr/local" >&6;} -+ prefix=/usr/local -+ fi -+ fi -+ if test "${exec_prefix}" = "NONE" -a x"${prefix_default}" = x"yes" \ -+ -o x"${exec_prefix_default}" = x"yes" ; then -+ if test x"${TCL_EXEC_PREFIX}" != x; then -+ { echo "$as_me:$LINENO: --exec-prefix defaulting to TCL_EXEC_PREFIX ${TCL_EXEC_PREFIX}" >&5 -+echo "$as_me: --exec-prefix defaulting to TCL_EXEC_PREFIX ${TCL_EXEC_PREFIX}" >&6;} -+ exec_prefix=${TCL_EXEC_PREFIX} -+ else -+ { echo "$as_me:$LINENO: --exec-prefix defaulting to ${prefix}" >&5 -+echo "$as_me: --exec-prefix defaulting to ${prefix}" >&6;} -+ exec_prefix=$prefix -+ fi -+ fi -+ -+ -+#----------------------------------------------------------------------- -+# Standard compiler checks. -+# This sets up CC by using the CC env var, or looks for gcc otherwise. -+# This also calls AC_PROG_CC, AC_PROG_INSTALL and a few others to create -+# the basic setup necessary to compile executables. -+#----------------------------------------------------------------------- -+ -+ -+ # Don't put any macros that use the compiler (e.g. AC_TRY_COMPILE) -+ # in this macro, they need to go into TEA_SETUP_COMPILER instead. -+ -+ # If the user did not set CFLAGS, set it now to keep -+ # the AC_PROG_CC macro from adding "-g -O2". -+ if test "${CFLAGS+set}" != "set" ; then -+ CFLAGS="" -+ 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 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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" -+ 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 -+ { echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}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 -+{ 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_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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" -+ 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 -- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 -+ { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6; } - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -- CC=$ac_ct_CC -+ if test "x$ac_ct_CC" = x; then -+ CC="" -+ 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 -+ 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 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -+if test "${ac_cv_prog_CC+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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" -+ 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 -+ { echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -@@ -1520,7 +2327,7 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ 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 -@@ -1531,6 +2338,7 @@ - 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. -@@ -1548,22 +2356,23 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 -+ { echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6; } - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -+ - fi - if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -+ 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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -@@ -1576,36 +2385,38 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ 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 - break 2 - fi - done - done -+IFS=$as_save_IFS - - fi - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 -+ { echo "$as_me:$LINENO: result: $CC" >&5 -+echo "${ECHO_T}$CC" >&6; } - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -+ - test -n "$CC" && break - done - fi - if test -z "$CC"; then - ac_ct_CC=$CC -- for ac_prog in cl -+ 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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+{ 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_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -@@ -1618,29 +2429,45 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ 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 - 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 -- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 -+ { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -+echo "${ECHO_T}$ac_ct_CC" >&6; } - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -+ - test -n "$ac_ct_CC" && break - done - -- CC=$ac_ct_CC -+ if test "x$ac_ct_CC" = x; then -+ CC="" -+ 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 -+ CC=$ac_ct_CC -+ fi - fi - - fi -@@ -1653,21 +2480,35 @@ - { (exit 1); exit 1; }; } - - # Provide some information about the compiler. --echo "$as_me:$LINENO:" \ -- "checking for C compiler version" >&5 -+echo "$as_me:$LINENO: checking for C compiler version" >&5 - ac_compiler=`set X $ac_compile; echo $2` --{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -- (eval $ac_compiler --version &5) 2>&5 -+{ (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_compiler --version >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -- (eval $ac_compiler -v &5) 2>&5 -+{ (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_compiler -v >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -- (eval $ac_compiler -V &5) 2>&5 -+{ (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_compiler -V >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -@@ -1692,47 +2533,77 @@ - # 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 -+{ 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[^ ]*//'` --if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 -- (eval $ac_link_default) 2>&5 -+# -+# 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. -+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_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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 -+ (eval "$ac_link_default") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- # Find the output, starting from the most likely. This scheme is --# not robust to junk in `.', hence go to wildcards (a.*) only as a last --# resort. -- --# Be careful to initialize this variable, since it used to be cached. --# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. --ac_cv_exeext= --# b.out is created by i960 compilers. --for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -+ # 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 | *.o | *.obj ) -- ;; -- conftest.$ac_ext ) -- # This is the source file. -+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) -- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` -- # FIXME: I believe we export ac_cv_exeext for Libtool, -- # but it would be cool to find out if it's true. Does anybody -- # maintain Libtool? --akim. -- export ac_cv_exeext -+ 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 -+ -+{ echo "$as_me:$LINENO: result: $ac_file" >&5 -+echo "${ECHO_T}$ac_file" >&6; } -+if test -z "$ac_file"; then - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -@@ -1744,19 +2615,21 @@ - fi - - ac_exeext=$ac_cv_exeext --echo "$as_me:$LINENO: result: $ac_file" >&5 --echo "${ECHO_T}$ac_file" >&6 - --# Check the compiler produces executables we can run. If not, either -+# 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 -+{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&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' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&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") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -@@ -1775,22 +2648,27 @@ - fi - fi - fi --echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+{ echo "$as_me:$LINENO: result: yes" >&5 -+echo "${ECHO_T}yes" >&6; } - - rm -f a.out a.exe conftest$ac_cv_exeext b.out - ac_clean_files=$ac_clean_files_save --# Check the compiler produces executables we can run. If not, either -+# 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 -- --echo "$as_me:$LINENO: checking for suffix of executables" >&5 --echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+{ 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; } -+ -+{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 -+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&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_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then -@@ -1801,9 +2679,8 @@ - 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 | *.o | *.obj ) ;; -+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` -- export ac_cv_exeext - break;; - * ) break;; - esac -@@ -1817,14 +2694,14 @@ - fi - - rm -f conftest$ac_cv_exeext --echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 --echo "${ECHO_T}$ac_cv_exeext" >&6 -+{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -+echo "${ECHO_T}$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 -+{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 -+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } - if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -@@ -1844,14 +2721,20 @@ - } - _ACEOF - rm -f conftest.o conftest.obj --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+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>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do -+ 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 ) ;; -+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -@@ -1869,12 +2752,12 @@ - - 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 -+{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -+echo "${ECHO_T}$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 -+{ 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; } - if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -@@ -1897,50 +2780,49 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -+ (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 - sed 's/^/| /' conftest.$ac_ext >&5 - --ac_compiler_gnu=no -+ ac_compiler_gnu=no - fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -+ -+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 -+{ 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` - ac_test_CFLAGS=${CFLAGS+set} - ac_save_CFLAGS=$CFLAGS --CFLAGS="-g" --echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 --echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -+{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } - if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF -+ 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 -@@ -1956,59 +2838,139 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -+ (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 - sed 's/^/| /' conftest.$ac_ext >&5 - --ac_cv_prog_cc_g=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 --echo "${ECHO_T}$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 -+ 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 "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 -+ : -+else -+ 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 "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_prog_cc_g=yes -+else -+ 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 -+{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -+echo "${ECHO_T}$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 --echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -+{ 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; } -+if test "${ac_cv_prog_cc_c89+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_cv_prog_cc_stdc=no -+ ac_cv_prog_cc_c89=no - ac_save_CC=$CC - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ -@@ -2042,12 +3004,17 @@ - /* 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 -std1 is added to get -+ 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 -std1. */ -+ 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);}; -@@ -2062,213 +3029,295 @@ - return 0; - } - _ACEOF --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -+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 { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break -+ (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 - sed 's/^/| /' conftest.$ac_ext >&5 - -+ - fi --rm -f conftest.err conftest.$ac_objext -+ -+rm -f core conftest.err conftest.$ac_objext -+ test "x$ac_cv_prog_cc_c89" != "xno" && break - done --rm -f conftest.$ac_ext conftest.$ac_objext -+rm -f conftest.$ac_ext - CC=$ac_save_CC - - fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:$LINENO: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -+# 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; } ;; -+ xno) -+ { echo "$as_me:$LINENO: result: unsupported" >&5 -+echo "${ECHO_T}unsupported" >&6; } ;; - *) -- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; -+ 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; } ;; - esac - --# Some people use a C++ compiler to compile C. Since we use `exit', --# in C++ we need to declare it. In case someone uses the same compiler --# for both compiling C and C++ we need to have the C++ compiler decide --# the declaration of exit, since it's the most demanding environment. --cat >conftest.$ac_ext <<_ACEOF --#ifndef __cplusplus -- choke me -+ -+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_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; } -+# 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 -+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 to if __STDC__ is defined, since -+ # 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 -+#else -+# include - #endif -+ Syntax error - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+if { (ac_try="$ac_cpp conftest.$ac_ext" -+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_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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&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 -+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 -+_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 "echo \"\$as_me:$LINENO: $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 -- (exit $ac_status); }; }; then -- for ac_declaration in \ -- '' \ -- 'extern "C" void std::exit (int) throw (); using std::exit;' \ -- 'extern "C" void std::exit (int); using std::exit;' \ -- 'extern "C" void exit (int) throw ();' \ -- 'extern "C" void exit (int);' \ -- 'void exit (int);' -+ (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 -+ 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 -+{ echo "$as_me:$LINENO: result: $CPP" >&5 -+echo "${ECHO_T}$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 to if __STDC__ is defined, since -+ # 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. */ --$ac_declaration --#include --int --main () --{ --exit (42); -- ; -- return 0; --} -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ Syntax error - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+if { (ac_try="$ac_cpp conftest.$ac_ext" -+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_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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -+ (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 - sed 's/^/| /' conftest.$ac_ext >&5 - -+ # Broken: fails on valid input. - continue - fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -+ -+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. */ --$ac_declaration --int --main () --{ --exit (42); -- ; -- return 0; --} -+#include - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>conftest.er1 -+if { (ac_try="$ac_cpp conftest.$ac_ext" -+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_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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- break -+ (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 - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --done --rm -f conftest* --if test -n "$ac_declaration"; then -- echo '#ifdef __cplusplus' >>confdefs.h -- echo $ac_declaration >>confdefs.h -- echo '#endif' >>confdefs.h -+ # Passes both tests. -+ac_preproc_ok=: -+break - fi - --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -+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 -+ { { 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 -+See \`config.log' for more details." >&2;} -+ { (exit 1); exit 1; }; } - fi --rm -f conftest.err conftest.$ac_objext 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 - --# END CYGNUS LOCAL --# Find a good install program. We prefer a C program (faster), -+ -+ # 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 -@@ -2281,8 +3330,8 @@ - # 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 -+{ 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 -@@ -2304,7 +3353,7 @@ - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ 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. -@@ -2323,21 +3372,22 @@ - ;; - esac - 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. We don't cache a -- # path for INSTALL within a source directory, because that will -+ # 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 path is relative. -+ # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi - fi --echo "$as_me:$LINENO: result: $INSTALL" >&5 --echo "${ECHO_T}$INSTALL" >&6 -+{ 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. -@@ -2348,49 +3398,50 @@ - test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - --#-------------------------------------------------------------------- --# Checks to see if the make program sets the $MAKE variable. --#-------------------------------------------------------------------- -- --echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 --echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 --set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` --if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then -+ #-------------------------------------------------------------------- -+ # Checks to see if the make program sets the $MAKE variable. -+ #-------------------------------------------------------------------- -+ -+ { 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 'ac_maketemp="$(MAKE)"' -+ @echo '@@@%%%=$(MAKE)=@@@%%%' - _ACEOF - # GNU make sometimes prints "make[1]: Entering...", which would confuse us. --eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` --if test -n "$ac_maketemp"; then -- eval ac_cv_prog_make_${ac_make}_set=yes --else -- eval ac_cv_prog_make_${ac_make}_set=no --fi -+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 \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then -- echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+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 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" - fi - - --#-------------------------------------------------------------------- --# Find ranlib --#-------------------------------------------------------------------- -+ #-------------------------------------------------------------------- -+ # Find ranlib -+ #-------------------------------------------------------------------- - --if test -n "$ac_tool_prefix"; then -+ 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 -+{ 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 -@@ -2403,32 +3454,34 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ 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 -+ { 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 -+ { 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 -+{ 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 -@@ -2441,319 +3494,394 @@ - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ 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 - done -+IFS=$as_save_IFS - -- test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" - 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 -+ { 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 -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } - fi - -- RANLIB=$ac_ct_RANLIB -+ 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 -+ fi - else - RANLIB="$ac_cv_prog_RANLIB" - fi - - --#-------------------------------------------------------------------- --# This macro performs additional compiler tests. --#-------------------------------------------------------------------- -+ #-------------------------------------------------------------------- -+ # Determines the correct binary file extension (.o, .obj, .exe etc.) -+ #-------------------------------------------------------------------- -+ - --# Make sure we can run config.sub. --$ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 --echo "$as_me: error: cannot run $ac_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_cv_build_alias=$build_alias --test -z "$ac_cv_build_alias" && -- ac_cv_build_alias=`$ac_config_guess` --test -z "$ac_cv_build_alias" && -- { { 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=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_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 --build=$ac_cv_build --build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - --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 "$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 -- ac_cv_host_alias=$host_alias --test -z "$ac_cv_host_alias" && -- ac_cv_host_alias=$ac_cv_build_alias --ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} -- { (exit 1); exit 1; }; } -+ # 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=:;; -+*) -+ 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 - --fi --echo "$as_me:$LINENO: result: $ac_cv_host" >&5 --echo "${ECHO_T}$ac_cv_host" >&6 --host=$ac_cv_host --host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -+ $ac_path_GREP_found && break 3 -+ done -+done - --case $host_os in -- *cygwin* ) CYGWIN=yes;; -- * ) CYGWIN=no;; --esac -+done -+IFS=$as_save_IFS - - --#-------------------------------------------------------------------- --# Determines the correct binary file extension (.o, .obj, .exe etc.) --#-------------------------------------------------------------------- -+fi - -+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 - -+else -+ ac_cv_path_GREP=$GREP -+fi - - --#-------------------------------------------------------------------- --# "cygpath" is used on windows to generate native path names for include --# files. --# These variables should only be used with the compiler and linker since --# they generate native path names. --# --# Unix tclConfig.sh points SRC_DIR at the top-level directory of --# the Tcl sources, while the Windows tclConfig.sh points SRC_DIR at --# the win subdirectory. Hence the different usages of SRC_DIR below. --# --# This must be done before calling SC_PUBLIC_TCL_HEADERS --# --# RELPATH is used to locate binary extensions relative to the lib directory. --# It is only needed if mkIndex.tcl can't generate an installed pkgIndex.tcl --# file for you. --#-------------------------------------------------------------------- -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 -+echo "${ECHO_T}$ac_cv_path_GREP" >&6; } -+ GREP="$ac_cv_path_GREP" - --case "${host}" in -- *mingw32* | *windows32*) -- # Extract the first word of "cygpath", so it can be a program name with args. --set dummy cygpath; 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_CYGPATH+set}" = set; then -+ -+{ 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 test -n "$CYGPATH"; then -- ac_cv_prog_CYGPATH="$CYGPATH" # Let the user override the test. -+ 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 -+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 -- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_CYGPATH="cygpath -w" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi -+ 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 -+ -+ -+ $ac_path_EGREP_found && break 3 -+ done - done -+ - done -+IFS=$as_save_IFS -+ - -- test -z "$ac_cv_prog_CYGPATH" && ac_cv_prog_CYGPATH="echo" - 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; }; } - fi --CYGPATH=$ac_cv_prog_CYGPATH --if test -n "$CYGPATH"; then -- echo "$as_me:$LINENO: result: $CYGPATH" >&5 --echo "${ECHO_T}$CYGPATH" >&6 -+ - else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ ac_cv_path_EGREP=$EGREP - fi - -- RELPATH=".. .. bin" -- ;; -- *) -- CYGPATH=echo -- RELPATH=.. -- ;; --esac - -+ fi -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 -+echo "${ECHO_T}$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; } -+if test "${ac_cv_header_stdc+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. */ -+#include -+#include -+#include -+#include - --#-------------------------------------------------------------------- --# Includes for this package --#-------------------------------------------------------------------- -+int -+main () -+{ - --# CYGNUS LOCAL --srcdir=`cd ${srcdir} ; pwd` --ITCL_SRC_DIR_NATIVE=`${CYGPATH} ${srcdir}` --# END CYGNUS LOCAL --ITCL_GENERIC_DIR_NATIVE=`${CYGPATH} ${srcdir}/generic` --ITCL_WIN_DIR_NATIVE=`${CYGPATH} ${srcdir}/win` --ITCL_UNIX_DIR_NATIVE=`${CYGPATH} ${srcdir}/unix` -- --case "${host}" in -- *cygwin* | *mingw32* | *windows32*) -- ITCL_PLATFORM_DIR_NATIVE=${ITCL_WIN_DIR_NATIVE} -- ;; -- *) -- ITCL_PLATFORM_DIR_NATIVE=${ITCL_UNIX_DIR_NATIVE} -- ;; -+ ; -+ 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_header_stdc=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - --ITCL_INCLUDES="-I\"${ITCL_GENERIC_DIR_NATIVE}\" -I\"${ITCL_PLATFORM_DIR_NATIVE}\"" -- -- -- -- -+ ac_cv_header_stdc=no -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - --#-------------------------------------------------------------------- --# Load the tclConfig.sh file --#-------------------------------------------------------------------- -+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 - -+_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* - -- # -- # Ok, lets find the tcl configuration -- # First, look for one uninstalled. -- # the alternative search directory is invoked by --with-tcl -- # -+fi - -- if test x"${no_tcl}" = x ; then -- # we reset no_tcl in case something fails here -- no_tcl=true -+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 - --# Check whether --with-tcl or --without-tcl was given. --if test "${with_tcl+set}" = set; then -- withval="$with_tcl" -- with_tclconfig=${withval} --fi; -- echo "$as_me:$LINENO: checking for Tcl configuration" >&5 --echo $ECHO_N "checking for Tcl configuration... $ECHO_C" >&6 -- if test "${ac_cv_c_tclconfig+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 -+_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 - -- # First check to see if --with-tcl was specified. -- if test x"${with_tclconfig}" != x ; then -- if test -f "${with_tclconfig}/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` -- else -- { { echo "$as_me:$LINENO: error: ${with_tclconfig} directory doesn't contain tclConfig.sh" >&5 --echo "$as_me: error: ${with_tclconfig} directory doesn't contain tclConfig.sh" >&2;} -- { (exit 1); exit 1; }; } -- fi -- fi -- -- # then check for a private Tcl installation -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in \ -- ../tcl \ -- `ls -dr ../tcl[8-9].[0-9]* 2>/dev/null` \ -- ../../tcl \ -- `ls -dr ../../tcl[8-9].[0-9]* 2>/dev/null` \ -- ../../../tcl \ -- `ls -dr ../../../tcl[8-9].[0-9]* 2>/dev/null` ; do -- if test -f "$i/unix/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/unix; pwd)` -- break -- fi -- if test -f "$i/win/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/win; pwd)` -- break -- fi -- done -- fi -- -- # check in a few common install locations -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in `ls -d ${prefix}/lib 2>/dev/null` \ -- `ls -d /usr/local/lib 2>/dev/null` ; do -- if test -f "$i/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i; pwd)` -- break -- fi -- done -- 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 -+#include -+#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 - -- # check in a few other private locations -- if test x"${ac_cv_c_tclconfig}" = x ; then -- for i in \ -- ${srcdir}/../tcl \ -- `ls -dr ${srcdir}/../tcl[8-9].[0-9]* 2>/dev/null` ; do -- if test -f "$i/unix/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/unix; pwd)` -- break -- fi -- if test -f "$i/win/tclConfig.sh" ; then -- ac_cv_c_tclconfig=`(cd $i/win; pwd)` -- break -- fi -- done -- fi -+#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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 -+ (eval "$ac_link") 2>&5 -+ ac_status=$? -+ 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") 2>&5 -+ ac_status=$? -+ 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 -+sed 's/^/| /' conftest.$ac_ext >&5 - -+( exit $ac_status ) -+ac_cv_header_stdc=no -+fi -+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - - -- if test x"${ac_cv_c_tclconfig}" = x ; then -- TCL_BIN_DIR="# no Tcl configs found" -- { { echo "$as_me:$LINENO: error: Can't find Tcl configuration definitions" >&5 --echo "$as_me: error: Can't find Tcl configuration definitions" >&2;} -- { (exit 1); exit 1; }; } -- exit 0 -- else -- no_tcl= -- TCL_BIN_DIR=${ac_cv_c_tclconfig} -- echo "$as_me:$LINENO: result: found $TCL_BIN_DIR/tclConfig.sh" >&5 --echo "${ECHO_T}found $TCL_BIN_DIR/tclConfig.sh" >&6 -- fi -- fi -+fi -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -+echo "${ECHO_T}$ac_cv_header_stdc" >&6; } -+if test $ac_cv_header_stdc = yes; then - -+cat >>confdefs.h <<\_ACEOF -+#define STDC_HEADERS 1 -+_ACEOF - -- echo "$as_me:$LINENO: checking for existence of $TCL_BIN_DIR/tclConfig.sh" >&5 --echo $ECHO_N "checking for existence of $TCL_BIN_DIR/tclConfig.sh... $ECHO_C" >&6 -+fi - -- if test -f "$TCL_BIN_DIR/tclConfig.sh" ; then -- echo "$as_me:$LINENO: result: loading" >&5 --echo "${ECHO_T}loading" >&6 -- . $TCL_BIN_DIR/tclConfig.sh -- else -- echo "$as_me:$LINENO: result: file not found" >&5 --echo "${ECHO_T}file not found" >&6 -- fi -+# On IRIX 5.3, sys/types and inttypes.h are conflicting. - -- # -- # The eval is required to do the TCL_DBGX substitution in the -- # TCL_LIB_FILE variable -- # - -- eval TCL_LIB_FILE=${TCL_LIB_FILE} -- eval TCL_LIB_FLAG=${TCL_LIB_FLAG} - - - -@@ -2761,979 +3889,5882 @@ - - - -+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; } -+if { as_var=$as_ac_Header; eval "test \"\${$as_var+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 - -+#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 "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 -+ eval "$as_ac_Header=yes" -+else -+ 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 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 -+ cat >>confdefs.h <<_ACEOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+_ACEOF - -+fi - -+done - - - -+ # Any macros that use the compiler (e.g. AC_TRY_COMPILE) have to go here. - - -+ #------------------------------------------------------------------------ -+ # If we're using GCC, see if the compiler understands -pipe. If so, use it. -+ # It makes compiling go faster. (This is only a performance feature.) -+ #------------------------------------------------------------------------ - --#-------------------------------------------------------------------- --# __CHANGE__ --# Choose which headers you need. Extension authors should try very --# hard to only rely on the Tcl public header files. Internal headers --# contain private data structures and are subject to change without --# notice. --# This must be done AFTER calling SC_PATH_TCLCONFIG/SC_LOAD_TCLCONFIG --# so that we can extract TCL_SRC_DIR from the config file (in the case --# of private headers --#-------------------------------------------------------------------- -- --#SC_PUBLIC_TCL_HEADERS -- -- echo "$as_me:$LINENO: checking for Tcl private include files" >&5 --echo $ECHO_N "checking for Tcl private include files... $ECHO_C" >&6 -- -- case "${host}" in -- *mingw32* | *windows32*) -- TCL_TOP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}`\" -- TCL_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/generic`\" -- TCL_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/unix`\" -- TCL_WIN_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/win`\" -- TCL_BMAP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/bitmaps`\" -- TCL_TOOL_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/tools`\" -- TCL_COMPAT_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/compat`\" -- TCL_PLATFORM_DIR_NATIVE=${TCL_WIN_DIR_NATIVE} -- ;; -- *) -- TCL_TOP_DIR_NATIVE='$(TCL_SRC_DIR)' -- TCL_GENERIC_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/generic' -- TCL_UNIX_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/unix' -- TCL_WIN_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/win' -- TCL_BMAP_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/bitmaps' -- TCL_TOOL_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/tools' -- TCL_COMPAT_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/compat' -- TCL_PLATFORM_DIR_NATIVE=${TCL_UNIX_DIR_NATIVE} -- ;; -- esac -- -+ if test -z "$no_pipe" -a -n "$GCC"; then -+ { echo "$as_me:$LINENO: checking if the compiler understands -pipe" >&5 -+echo $ECHO_N "checking if the compiler understands -pipe... $ECHO_C" >&6; } -+ OLDCC="$CC" -+ CC="$CC -pipe" -+ 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 "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 -+ { echo "$as_me:$LINENO: result: yes" >&5 -+echo "${ECHO_T}yes" >&6; } -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -+ CC="$OLDCC" -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+ fi - -+ #-------------------------------------------------------------------- -+ # Common compiler flag setup -+ #-------------------------------------------------------------------- -+ -+ { echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5 -+echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6; } -+if test "${ac_cv_c_bigendian+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # See if sys/param.h defines the BYTE_ORDER macro. -+cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#include - -+int -+main () -+{ -+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN && defined LITTLE_ENDIAN \ -+ && BYTE_ORDER && BIG_ENDIAN && LITTLE_ENDIAN) -+ bogus endian macros -+#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 "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 -+ # It does; now see whether it defined to BIG_ENDIAN or not. -+cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#include - -- TCL_INCLUDES="-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}" -+int -+main () -+{ -+#if BYTE_ORDER != BIG_ENDIAN -+ not big endian -+#endif - -- echo "$as_me:$LINENO: result: Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&5 --echo "${ECHO_T}Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&6 -+ ; -+ 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_c_bigendian=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -+ ac_cv_c_bigendian=no -+fi - --#-------------------------------------------------------------------- --# __CHANGE__ --# A few miscellaneous platform-specific items: --# --# Define a special symbol for Windows (BUILD_itcl in this case) so --# that we create the export library with the dll. See sha1.h on how --# to use this. --# --# Windows creates a few extra files that need to be cleaned up. --# You can add more files to clean if your extension creates any extra --# files. --# --# Define any extra compiler flags in the PACKAGE_CFLAGS variable. --# These will be appended to the current set of compiler flags for --# your system. --#-------------------------------------------------------------------- -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - --case "${host}" in -- *cygwin*| *mingw32* | *windows32*) -- cat >>confdefs.h <<\_ACEOF --#define BUILD_itcl 1 -+ # It does not; compile a test program. -+if test "$cross_compiling" = yes; then -+ # try to guess the endianness by grepping values into an object file -+ ac_cv_c_bigendian=unknown -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ - _ACEOF -- -- CLEANFILES="*.lib *.dll *.exp *.ilk *.pdb vc50.pch" -- PLATFORM_SOURCES='$(WIN_SOURCES)' -- PLATFORM_OBJECTS='$(WIN_OBJECTS)' -- PLATFORM_DIR='$(WIN_DIR)' -- ;; -- *) -- CLEANFILES= -- PLATFORM_SOURCES='$(UNIX_SOURCES)' -- PLATFORM_OBJECTS='$(UNIX_OBJECTS)' -- PLATFORM_DIR='$(UNIX_DIR)' -- ;; -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; -+short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; -+void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; } -+short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; -+short int ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; -+void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; } -+int -+main () -+{ -+ _ascii (); _ebcdic (); -+ ; -+ 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 -+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then -+ ac_cv_c_bigendian=yes -+fi -+if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then -+ if test "$ac_cv_c_bigendian" = unknown; then -+ ac_cv_c_bigendian=no -+ else -+ # finding both strings is unlikely to happen, but who knows? -+ ac_cv_c_bigendian=unknown -+ fi -+fi -+else -+ 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 -+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 -+int -+main () -+{ - -+ /* Are we little or big endian? From Harbison&Steele. */ -+ union -+ { -+ long int l; -+ char c[sizeof (long int)]; -+ } u; -+ u.l = 1; -+ return u.c[sizeof (long int) - 1] == 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 "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 -+ (eval "$ac_link") 2>&5 -+ ac_status=$? -+ 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") 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_c_bigendian=no -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - --#-------------------------------------------------------------------- --# Check whether --enable-threads or --disable-threads was given. --# So far only Tcl responds to this one. --#-------------------------------------------------------------------- -- -+( exit $ac_status ) -+ac_cv_c_bigendian=yes -+fi -+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi - - -- echo "$as_me:$LINENO: checking for building with threads" >&5 --echo $ECHO_N "checking for building with threads... $ECHO_C" >&6 -- # Check whether --enable-threads or --disable-threads was given. --if test "${enable_threads+set}" = set; then -- enableval="$enable_threads" -- tcl_ok=$enableval --else -- tcl_ok=no --fi; -+fi - -- if test "$tcl_ok" = "yes"; then -- TCL_THREADS=1 -- cat >>confdefs.h <<\_ACEOF --#define TCL_THREADS 1 --_ACEOF -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5 -+echo "${ECHO_T}$ac_cv_c_bigendian" >&6; } -+case $ac_cv_c_bigendian in -+ yes) - -- cat >>confdefs.h <<\_ACEOF --#define _REENTRANT 1 -+cat >>confdefs.h <<\_ACEOF -+#define WORDS_BIGENDIAN 1 - _ACEOF -+ ;; -+ no) -+ ;; -+ *) -+ { { echo "$as_me:$LINENO: error: unknown endianness -+presetting ac_cv_c_bigendian=no (or yes) will help" >&5 -+echo "$as_me: error: unknown endianness -+presetting ac_cv_c_bigendian=no (or yes) will help" >&2;} -+ { (exit 1); exit 1; }; } ;; -+esac - -+ if test "${TEA_PLATFORM}" = "unix" ; then - -- case "${host}" in -- *mingw32* | *windows32*) -- echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- ;; -- *) -- echo "$as_me:$LINENO: checking for pthread_mutex_init in -lpthread" >&5 --echo $ECHO_N "checking for pthread_mutex_init in -lpthread... $ECHO_C" >&6 --if test "${ac_cv_lib_pthread_pthread_mutex_init+set}" = set; then -+ #-------------------------------------------------------------------- -+ # On a few very rare systems, all of the libm.a stuff is -+ # already in libc.a. Set compiler flags accordingly. -+ # Also, Linux requires the "ieee" library for math to work -+ # right (and it must appear before "-lm"). -+ #-------------------------------------------------------------------- -+ -+ { echo "$as_me:$LINENO: checking for sin" >&5 -+echo $ECHO_N "checking for sin... $ECHO_C" >&6; } -+if test "${ac_cv_func_sin+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lpthread $LIBS" --cat >conftest.$ac_ext <<_ACEOF -+ cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ - _ACEOF - cat confdefs.h >>conftest.$ac_ext - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ -+/* Define sin to an innocuous variant, in case declares sin. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define sin innocuous_sin -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char sin (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef sin - --/* Override any gcc2 internal prototype to avoid an error. */ -+/* 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 --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char pthread_mutex_init (); -+char sin (); -+/* 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_sin || defined __stub___sin -+choke me -+#endif -+ - int - main () - { --pthread_mutex_init (); -+return sin (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>conftest.er1 -+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_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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_pthread_pthread_mutex_init=yes -+ (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 -+ ac_cv_func_sin=yes - else - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - --ac_cv_lib_pthread_pthread_mutex_init=no -+ ac_cv_func_sin=no - fi --rm -f conftest.err conftest.$ac_objext \ -+ -+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_pthread_pthread_mutex_init" >&5 --echo "${ECHO_T}$ac_cv_lib_pthread_pthread_mutex_init" >&6 --if test $ac_cv_lib_pthread_pthread_mutex_init = yes; then -- tcl_ok=yes -+{ echo "$as_me:$LINENO: result: $ac_cv_func_sin" >&5 -+echo "${ECHO_T}$ac_cv_func_sin" >&6; } -+if test $ac_cv_func_sin = yes; then -+ MATH_LIBS="" - else -- tcl_ok=no -+ MATH_LIBS="-lm" - fi - -- if test "$tcl_ok" = "yes"; then -- # The space is needed -- THREADS_LIBS=" -lpthread" -- echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- else -- TCL_THREADS=0 -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -- { echo "$as_me:$LINENO: WARNING: \"Don t know how to find pthread lib on your system - you must disable thread support or edit the LIBS in the Makefile...\"" >&5 --echo "$as_me: WARNING: \"Don t know how to find pthread lib on your system - you must disable thread support or edit the LIBS in the Makefile...\"" >&2;} -- fi -- ;; -- esac -- else -- TCL_THREADS=0 -- echo "$as_me:$LINENO: result: no (default)" >&5 --echo "${ECHO_T}no (default)" >&6 -- fi -- -- -- --#-------------------------------------------------------------------- --# The statement below defines a collection of symbols related to --# building as a shared library instead of a static library. --#-------------------------------------------------------------------- -- -- -- echo "$as_me:$LINENO: checking how to build libraries" >&5 --echo $ECHO_N "checking how to build libraries... $ECHO_C" >&6 -- # Check whether --enable-shared or --disable-shared was given. --if test "${enable_shared+set}" = set; then -- enableval="$enable_shared" -- tcl_ok=$enableval -+ { echo "$as_me:$LINENO: checking for main in -lieee" >&5 -+echo $ECHO_N "checking for main in -lieee... $ECHO_C" >&6; } -+if test "${ac_cv_lib_ieee_main+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- tcl_ok=no --fi; -- --# CYGNUS LOCAL -- case "${host}" in -- *mingw32* | *windows32*) -- # Default to shared build for Windows -- if test "${enable_shared+set}" != set; then -- tcl_ok=yes -- fi -- ;; -- esac --# END CYGNUS LOCAL -- -- if test "$tcl_ok" = "yes" ; then -- echo "$as_me:$LINENO: result: shared" >&5 --echo "${ECHO_T}shared" >&6 -- SHARED_BUILD=1 -- else -- echo "$as_me:$LINENO: result: static" >&5 --echo "${ECHO_T}static" >&6 -- SHARED_BUILD=0 -- cat >>confdefs.h <<\_ACEOF --#define STATIC_BUILD 1 -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lieee $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ - _ACEOF -- -- fi -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ - - --#-------------------------------------------------------------------- --# This macro figures out what flags to use with the compiler/linker --# when building shared/static debug/optimized objects. This information --# is all taken from the tclConfig.sh file. --#-------------------------------------------------------------------- -+int -+main () -+{ -+return 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_ieee_main=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - --CFLAGS_DEBUG=${TCL_CFLAGS_DEBUG} --CFLAGS_OPTIMIZE=${TCL_CFLAGS_OPTIMIZE} --LDFLAGS_DEBUG=${TCL_LDFLAGS_DEBUG} --LDFLAGS_OPTIMIZE=${TCL_LDFLAGS_OPTIMIZE} --SHLIB_LD=${TCL_SHLIB_LD} --STLIB_LD=${TCL_STLIB_LD} --SHLIB_CFLAGS=${TCL_SHLIB_CFLAGS} -+ ac_cv_lib_ieee_main=no -+fi - -+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_ieee_main" >&5 -+echo "${ECHO_T}$ac_cv_lib_ieee_main" >&6; } -+if test $ac_cv_lib_ieee_main = yes; then -+ MATH_LIBS="-lieee $MATH_LIBS" -+fi - - -+ #-------------------------------------------------------------------- -+ # Interactive UNIX requires -linet instead of -lsocket, plus it -+ # needs net/errno.h to define the socket-related error codes. -+ #-------------------------------------------------------------------- - -+ { echo "$as_me:$LINENO: checking for main in -linet" >&5 -+echo $ECHO_N "checking for main in -linet... $ECHO_C" >&6; } -+if test "${ac_cv_lib_inet_main+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-linet $LIBS" -+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 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_inet_main=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_inet_main=no -+fi -+ -+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_inet_main" >&5 -+echo "${ECHO_T}$ac_cv_lib_inet_main" >&6; } -+if test $ac_cv_lib_inet_main = yes; then -+ LIBS="$LIBS -linet" -+fi -+ -+ if test "${ac_cv_header_net_errno_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for net/errno.h" >&5 -+echo $ECHO_N "checking for net/errno.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_net_errno_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_net_errno_h" >&5 -+echo "${ECHO_T}$ac_cv_header_net_errno_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking net/errno.h usability" >&5 -+echo $ECHO_N "checking net/errno.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking net/errno.h presence" >&5 -+echo $ECHO_N "checking net/errno.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: net/errno.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: net/errno.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: net/errno.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: net/errno.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: net/errno.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: net/errno.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: net/errno.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: net/errno.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: net/errno.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: net/errno.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for net/errno.h" >&5 -+echo $ECHO_N "checking for net/errno.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_net_errno_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_net_errno_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_net_errno_h" >&5 -+echo "${ECHO_T}$ac_cv_header_net_errno_h" >&6; } -+ -+fi -+if test $ac_cv_header_net_errno_h = yes; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_NET_ERRNO_H 1 -+_ACEOF -+ -+fi -+ -+ -+ -+ #-------------------------------------------------------------------- -+ # Check for the existence of the -lsocket and -lnsl libraries. -+ # The order here is important, so that they end up in the right -+ # order in the command line generated by make. Here are some -+ # special considerations: -+ # 1. Use "connect" and "accept" to check for -lsocket, and -+ # "gethostbyname" to check for -lnsl. -+ # 2. Use each function name only once: can't redo a check because -+ # autoconf caches the results of the last check and won't redo it. -+ # 3. Use -lnsl and -lsocket only if they supply procedures that -+ # aren't already present in the normal libraries. This is because -+ # IRIX 5.2 has libraries, but they aren't needed and they're -+ # bogus: they goof up name resolution if used. -+ # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. -+ # To get around this problem, check for both libraries together -+ # if -lsocket doesn't work by itself. -+ #-------------------------------------------------------------------- -+ -+ tcl_checkBoth=0 -+ { echo "$as_me:$LINENO: checking for connect" >&5 -+echo $ECHO_N "checking for connect... $ECHO_C" >&6; } -+if test "${ac_cv_func_connect+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. */ -+/* Define connect to an innocuous variant, in case declares connect. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define connect innocuous_connect -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char connect (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef connect -+ -+/* 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 connect (); -+/* 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_connect || defined __stub___connect -+choke me -+#endif -+ -+int -+main () -+{ -+return connect (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_func_connect=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_func_connect=no -+fi -+ -+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; } -+if test $ac_cv_func_connect = yes; then -+ tcl_checkSocket=0 -+else -+ tcl_checkSocket=1 -+fi -+ -+ if test "$tcl_checkSocket" = 1; then -+ { echo "$as_me:$LINENO: checking for setsockopt" >&5 -+echo $ECHO_N "checking for setsockopt... $ECHO_C" >&6; } -+if test "${ac_cv_func_setsockopt+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. */ -+/* Define setsockopt to an innocuous variant, in case declares setsockopt. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define setsockopt innocuous_setsockopt -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char setsockopt (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef setsockopt -+ -+/* 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 setsockopt (); -+/* 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_setsockopt || defined __stub___setsockopt -+choke me -+#endif -+ -+int -+main () -+{ -+return setsockopt (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_func_setsockopt=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_func_setsockopt=no -+fi -+ -+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_setsockopt" >&5 -+echo "${ECHO_T}$ac_cv_func_setsockopt" >&6; } -+if test $ac_cv_func_setsockopt = yes; then -+ : -+else -+ { echo "$as_me:$LINENO: checking for setsockopt in -lsocket" >&5 -+echo $ECHO_N "checking for setsockopt in -lsocket... $ECHO_C" >&6; } -+if test "${ac_cv_lib_socket_setsockopt+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lsocket $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 setsockopt (); -+int -+main () -+{ -+return setsockopt (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_socket_setsockopt=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_socket_setsockopt=no -+fi -+ -+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_setsockopt" >&5 -+echo "${ECHO_T}$ac_cv_lib_socket_setsockopt" >&6; } -+if test $ac_cv_lib_socket_setsockopt = yes; then -+ LIBS="$LIBS -lsocket" -+else -+ tcl_checkBoth=1 -+fi -+ -+fi -+ -+ fi -+ if test "$tcl_checkBoth" = 1; then -+ tk_oldLibs=$LIBS -+ LIBS="$LIBS -lsocket -lnsl" -+ { echo "$as_me:$LINENO: checking for accept" >&5 -+echo $ECHO_N "checking for accept... $ECHO_C" >&6; } -+if test "${ac_cv_func_accept+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. */ -+/* Define accept to an innocuous variant, in case declares accept. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define accept innocuous_accept -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char accept (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef accept -+ -+/* 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 accept (); -+/* 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_accept || defined __stub___accept -+choke me -+#endif -+ -+int -+main () -+{ -+return accept (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_func_accept=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_func_accept=no -+fi -+ -+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_accept" >&5 -+echo "${ECHO_T}$ac_cv_func_accept" >&6; } -+if test $ac_cv_func_accept = yes; then -+ tcl_checkNsl=0 -+else -+ LIBS=$tk_oldLibs -+fi -+ -+ fi -+ { echo "$as_me:$LINENO: checking for gethostbyname" >&5 -+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6; } -+if test "${ac_cv_func_gethostbyname+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. */ -+/* Define gethostbyname to an innocuous variant, in case declares gethostbyname. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define gethostbyname innocuous_gethostbyname -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char gethostbyname (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef gethostbyname -+ -+/* 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 gethostbyname (); -+/* 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_gethostbyname || defined __stub___gethostbyname -+choke me -+#endif -+ -+int -+main () -+{ -+return gethostbyname (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_func_gethostbyname=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_func_gethostbyname=no -+fi -+ -+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; } -+if test $ac_cv_func_gethostbyname = yes; then -+ : -+else -+ { echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 -+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6; } -+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lnsl $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 gethostbyname (); -+int -+main () -+{ -+return gethostbyname (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_nsl_gethostbyname=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_nsl_gethostbyname=no -+fi -+ -+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 -+ LIBS="$LIBS -lnsl" -+fi -+ -+fi -+ -+ -+ # Don't perform the eval of the libraries here because DL_LIBS -+ # won't be set until we call TEA_CONFIG_CFLAGS -+ -+ TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' -+ -+ -+ -+ -+ { echo "$as_me:$LINENO: checking dirent.h" >&5 -+echo $ECHO_N "checking dirent.h... $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. */ -+#include -+#include -+int -+main () -+{ -+ -+#ifndef _POSIX_SOURCE -+# ifdef __Lynx__ -+ /* -+ * Generate compilation error to make the test fail: Lynx headers -+ * are only valid if really in the POSIX environment. -+ */ -+ -+ missing_procedure(); -+# endif -+#endif -+DIR *d; -+struct dirent *entryPtr; -+char *p; -+d = opendir("foobar"); -+entryPtr = readdir(d); -+p = entryPtr->d_name; -+closedir(d); -+ -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ tcl_ok=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ tcl_ok=no -+fi -+ -+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ -+ conftest$ac_exeext conftest.$ac_ext -+ -+ if test $tcl_ok = no; then -+ cat >>confdefs.h <<\_ACEOF -+#define NO_DIRENT_H 1 -+_ACEOF -+ -+ fi -+ -+ { echo "$as_me:$LINENO: result: $tcl_ok" >&5 -+echo "${ECHO_T}$tcl_ok" >&6; } -+ if test "${ac_cv_header_errno_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for errno.h" >&5 -+echo $ECHO_N "checking for errno.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_errno_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_errno_h" >&5 -+echo "${ECHO_T}$ac_cv_header_errno_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking errno.h usability" >&5 -+echo $ECHO_N "checking errno.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking errno.h presence" >&5 -+echo $ECHO_N "checking errno.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: errno.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: errno.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: errno.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: errno.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: errno.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: errno.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: errno.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: errno.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: errno.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: errno.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: errno.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for errno.h" >&5 -+echo $ECHO_N "checking for errno.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_errno_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_errno_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_errno_h" >&5 -+echo "${ECHO_T}$ac_cv_header_errno_h" >&6; } -+ -+fi -+if test $ac_cv_header_errno_h = yes; then -+ : -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_ERRNO_H 1 -+_ACEOF -+ -+fi -+ -+ -+ if test "${ac_cv_header_float_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for float.h" >&5 -+echo $ECHO_N "checking for float.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_float_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_float_h" >&5 -+echo "${ECHO_T}$ac_cv_header_float_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking float.h usability" >&5 -+echo $ECHO_N "checking float.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking float.h presence" >&5 -+echo $ECHO_N "checking float.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: float.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: float.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: float.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: float.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: float.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: float.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: float.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: float.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: float.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: float.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: float.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for float.h" >&5 -+echo $ECHO_N "checking for float.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_float_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_float_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_float_h" >&5 -+echo "${ECHO_T}$ac_cv_header_float_h" >&6; } -+ -+fi -+if test $ac_cv_header_float_h = yes; then -+ : -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_FLOAT_H 1 -+_ACEOF -+ -+fi -+ -+ -+ if test "${ac_cv_header_values_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for values.h" >&5 -+echo $ECHO_N "checking for values.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_values_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_values_h" >&5 -+echo "${ECHO_T}$ac_cv_header_values_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking values.h usability" >&5 -+echo $ECHO_N "checking values.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking values.h presence" >&5 -+echo $ECHO_N "checking values.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: values.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: values.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: values.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: values.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: values.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: values.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: values.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: values.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: values.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: values.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: values.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for values.h" >&5 -+echo $ECHO_N "checking for values.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_values_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_values_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_values_h" >&5 -+echo "${ECHO_T}$ac_cv_header_values_h" >&6; } -+ -+fi -+if test $ac_cv_header_values_h = yes; then -+ : -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_VALUES_H 1 -+_ACEOF -+ -+fi -+ -+ -+ if test "${ac_cv_header_limits_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for limits.h" >&5 -+echo $ECHO_N "checking for limits.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_limits_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_limits_h" >&5 -+echo "${ECHO_T}$ac_cv_header_limits_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking limits.h usability" >&5 -+echo $ECHO_N "checking limits.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking limits.h presence" >&5 -+echo $ECHO_N "checking limits.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: limits.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: limits.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: limits.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: limits.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: limits.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: limits.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: limits.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: limits.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: limits.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: limits.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: limits.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for limits.h" >&5 -+echo $ECHO_N "checking for limits.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_limits_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_limits_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_limits_h" >&5 -+echo "${ECHO_T}$ac_cv_header_limits_h" >&6; } -+ -+fi -+if test $ac_cv_header_limits_h = yes; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_LIMITS_H 1 -+_ACEOF -+ -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_LIMITS_H 1 -+_ACEOF -+ -+fi -+ -+ -+ if test "${ac_cv_header_stdlib_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for stdlib.h" >&5 -+echo $ECHO_N "checking for stdlib.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_stdlib_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdlib_h" >&5 -+echo "${ECHO_T}$ac_cv_header_stdlib_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking stdlib.h usability" >&5 -+echo $ECHO_N "checking stdlib.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking stdlib.h presence" >&5 -+echo $ECHO_N "checking stdlib.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: stdlib.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: stdlib.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: stdlib.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: stdlib.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: stdlib.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: stdlib.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: stdlib.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: stdlib.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: stdlib.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: stdlib.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for stdlib.h" >&5 -+echo $ECHO_N "checking for stdlib.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_stdlib_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_stdlib_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdlib_h" >&5 -+echo "${ECHO_T}$ac_cv_header_stdlib_h" >&6; } -+ -+fi -+if test $ac_cv_header_stdlib_h = yes; then -+ tcl_ok=1 -+else -+ tcl_ok=0 -+fi -+ -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "strtol" >/dev/null 2>&1; then -+ : -+else -+ tcl_ok=0 -+fi -+rm -f conftest* -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "strtoul" >/dev/null 2>&1; then -+ : -+else -+ tcl_ok=0 -+fi -+rm -f conftest* -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "strtod" >/dev/null 2>&1; then -+ : -+else -+ tcl_ok=0 -+fi -+rm -f conftest* -+ -+ if test $tcl_ok = 0; then -+ cat >>confdefs.h <<\_ACEOF -+#define NO_STDLIB_H 1 -+_ACEOF -+ -+ fi -+ if test "${ac_cv_header_string_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for string.h" >&5 -+echo $ECHO_N "checking for string.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_string_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_string_h" >&5 -+echo "${ECHO_T}$ac_cv_header_string_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking string.h usability" >&5 -+echo $ECHO_N "checking string.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking string.h presence" >&5 -+echo $ECHO_N "checking string.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: string.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: string.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: string.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: string.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: string.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: string.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: string.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: string.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: string.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: string.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: string.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for string.h" >&5 -+echo $ECHO_N "checking for string.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_string_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_string_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_string_h" >&5 -+echo "${ECHO_T}$ac_cv_header_string_h" >&6; } -+ -+fi -+if test $ac_cv_header_string_h = yes; then -+ tcl_ok=1 -+else -+ tcl_ok=0 -+fi -+ -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "strstr" >/dev/null 2>&1; then -+ : -+else -+ tcl_ok=0 -+fi -+rm -f conftest* -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+ -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ $EGREP "strerror" >/dev/null 2>&1; then -+ : -+else -+ tcl_ok=0 -+fi -+rm -f conftest* -+ -+ -+ # See also memmove check below for a place where NO_STRING_H can be -+ # set and why. -+ -+ if test $tcl_ok = 0; then -+ cat >>confdefs.h <<\_ACEOF -+#define NO_STRING_H 1 -+_ACEOF -+ -+ fi -+ -+ if test "${ac_cv_header_sys_wait_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for sys/wait.h" >&5 -+echo $ECHO_N "checking for sys/wait.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_sys_wait_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 -+echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking sys/wait.h usability" >&5 -+echo $ECHO_N "checking sys/wait.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking sys/wait.h presence" >&5 -+echo $ECHO_N "checking sys/wait.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: sys/wait.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: sys/wait.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: sys/wait.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: sys/wait.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: sys/wait.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: sys/wait.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: sys/wait.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: sys/wait.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: sys/wait.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: sys/wait.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for sys/wait.h" >&5 -+echo $ECHO_N "checking for sys/wait.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_sys_wait_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_sys_wait_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 -+echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; } -+ -+fi -+if test $ac_cv_header_sys_wait_h = yes; then -+ : -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_SYS_WAIT_H 1 -+_ACEOF -+ -+fi -+ -+ -+ 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; } -+if test "${ac_cv_header_dlfcn_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5 -+echo "${ECHO_T}$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; } -+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 -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking dlfcn.h presence" >&5 -+echo $ECHO_N "checking dlfcn.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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;} -+ 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;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for dlfcn.h" >&5 -+echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dlfcn_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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; } -+ -+fi -+if test $ac_cv_header_dlfcn_h = yes; then -+ : -+else -+ cat >>confdefs.h <<\_ACEOF -+#define NO_DLFCN_H 1 -+_ACEOF -+ -+fi -+ -+ -+ -+ # OS/390 lacks sys/param.h (and doesn't need it, by chance). -+ -+for ac_header in sys/param.h -+do -+as_ac_Header=`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; } -+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+ac_res=`eval echo '${'$as_ac_Header'}'` -+ { echo "$as_me:$LINENO: result: $ac_res" >&5 -+echo "${ECHO_T}$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; } -+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 "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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -+echo $ECHO_N "checking $ac_header presence... $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. */ -+#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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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;} -+ 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;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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; } -+ -+fi -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<_ACEOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+_ACEOF -+ -+fi -+ -+done -+ -+ -+ -+ # Let the user call this, because if it triggers, they will -+ # need a compat/strtod.c that is correct. Users can also -+ # use Tcl_GetDouble(FromObj) instead. -+ #TEA_BUGGY_STRTOD -+ fi -+ -+ -+#----------------------------------------------------------------------- -+# __CHANGE__ -+# Specify the C source files to compile in TEA_ADD_SOURCES, -+# public headers that need to be installed in TEA_ADD_HEADERS, -+# stub library C source files to compile in TEA_ADD_STUB_SOURCES, -+# and runtime Tcl library files in TEA_ADD_TCL_SOURCES. -+# This defines PKG(_STUB)_SOURCES, PKG(_STUB)_OBJECTS, PKG_HEADERS -+# and PKG_TCL_SOURCES. -+#----------------------------------------------------------------------- -+ -+ -+ vars="itclStubInit.c -+ itcl_bicmds.c -+ itcl_class.c -+ itcl_cmds.c -+ itcl_ensemble.c -+ itcl_linkage.c -+ itcl_methods.c -+ itcl_migrate.c -+ itcl_objects.c -+ itcl_parse.c -+ itcl_util.c" -+ for i in $vars; do -+ case $i in -+ \$*) -+ # allow $-var names -+ PKG_SOURCES="$PKG_SOURCES $i" -+ PKG_OBJECTS="$PKG_OBJECTS $i" -+ ;; -+ *) -+ # check for existence - allows for generic/win/unix VPATH -+ if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \ -+ -a ! -f "${srcdir}/win/$i" -a ! -f "${srcdir}/unix/$i" \ -+ ; then -+ { { echo "$as_me:$LINENO: error: could not find source file '$i'" >&5 -+echo "$as_me: error: could not find source file '$i'" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ PKG_SOURCES="$PKG_SOURCES $i" -+ # this assumes it is in a VPATH dir -+ i=`basename $i` -+ # handle user calling this before or after TEA_SETUP_COMPILER -+ if test x"${OBJEXT}" != x ; then -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.${OBJEXT}" -+ else -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.\${OBJEXT}" -+ fi -+ PKG_OBJECTS="$PKG_OBJECTS $j" -+ ;; -+ esac -+ done -+ -+ -+ -+ -+ vars="generic/itcl.h -+ generic/itclDecls.h -+ generic/itclInt.h -+ generic/itclIntDecls.h" -+ for i in $vars; do -+ # check for existence, be strict because it is installed -+ if test ! -f "${srcdir}/$i" ; then -+ { { echo "$as_me:$LINENO: error: could not find header file '${srcdir}/$i'" >&5 -+echo "$as_me: error: could not find header file '${srcdir}/$i'" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ PKG_HEADERS="$PKG_HEADERS $i" -+ done -+ -+ -+ -+ vars="-I\"`${CYGPATH} ${srcdir}/generic`\"" -+ for i in $vars; do -+ PKG_INCLUDES="$PKG_INCLUDES $i" -+ done -+ -+ -+ -+ vars="" -+ for i in $vars; do -+ if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then -+ # Convert foo.lib to -lfoo for GCC. No-op if not *.lib -+ i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` -+ fi -+ PKG_LIBS="$PKG_LIBS $i" -+ done -+ -+ -+ -+ PKG_CFLAGS="$PKG_CFLAGS " -+ -+ -+ -+ vars="itclStubLib.c" -+ for i in $vars; do -+ # check for existence - allows for generic/win/unix VPATH -+ if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \ -+ -a ! -f "${srcdir}/win/$i" -a ! -f "${srcdir}/unix/$i" \ -+ ; then -+ { { echo "$as_me:$LINENO: error: could not find stub source file '$i'" >&5 -+echo "$as_me: error: could not find stub source file '$i'" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ PKG_STUB_SOURCES="$PKG_STUB_SOURCES $i" -+ # this assumes it is in a VPATH dir -+ i=`basename $i` -+ # handle user calling this before or after TEA_SETUP_COMPILER -+ if test x"${OBJEXT}" != x ; then -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.${OBJEXT}" -+ else -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.\${OBJEXT}" -+ fi -+ PKG_STUB_OBJECTS="$PKG_STUB_OBJECTS $j" -+ done -+ -+ -+ -+ -+ vars="library/itcl.tcl" -+ for i in $vars; do -+ # check for existence, be strict because it is installed -+ if test ! -f "${srcdir}/$i" ; then -+ { { echo "$as_me:$LINENO: error: could not find tcl source file '${srcdir}/$i'" >&5 -+echo "$as_me: error: could not find tcl source file '${srcdir}/$i'" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ PKG_TCL_SOURCES="$PKG_TCL_SOURCES $i" -+ done -+ - - - #-------------------------------------------------------------------- --# Set the default compiler switches based on the --enable-symbols --# option. -+# __CHANGE__ -+# A few miscellaneous platform-specific items: -+# -+# Define a special symbol for Windows (BUILD_itcl in this case) so -+# that we create the export library with the dll. See sha1.h on how -+# to use this. -+# -+# Windows creates a few extra files that need to be cleaned up. -+# You can add more files to clean if your extension creates any extra -+# files. -+# -+# Define any extra compiler flags in the PACKAGE_CFLAGS variable. -+# These will be appended to the current set of compiler flags for -+# your system. - #-------------------------------------------------------------------- - -+if test "${TEA_PLATFORM}" = "windows" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define BUILD_itcl 1 -+_ACEOF -+ -+ CLEANFILES="*.lib *.dll *.exp *.ilk *.pdb vc*.pch" -+ -+ vars="dllEntryPoint.c" -+ for i in $vars; do -+ case $i in -+ \$*) -+ # allow $-var names -+ PKG_SOURCES="$PKG_SOURCES $i" -+ PKG_OBJECTS="$PKG_OBJECTS $i" -+ ;; -+ *) -+ # check for existence - allows for generic/win/unix VPATH -+ if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \ -+ -a ! -f "${srcdir}/win/$i" -a ! -f "${srcdir}/unix/$i" \ -+ ; then -+ { { echo "$as_me:$LINENO: error: could not find source file '$i'" >&5 -+echo "$as_me: error: could not find source file '$i'" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ PKG_SOURCES="$PKG_SOURCES $i" -+ # this assumes it is in a VPATH dir -+ i=`basename $i` -+ # handle user calling this before or after TEA_SETUP_COMPILER -+ if test x"${OBJEXT}" != x ; then -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.${OBJEXT}" -+ else -+ j="`echo $i | sed -e 's/\.[^.]*$//'`.\${OBJEXT}" -+ fi -+ PKG_OBJECTS="$PKG_OBJECTS $j" -+ ;; -+ esac -+ done -+ -+ -+ -+else -+ CLEANFILES= -+ #TEA_ADD_SOURCES([]) -+fi -+ -+ -+ -+#-------------------------------------------------------------------- -+# __CHANGE__ -+# Choose which headers you need. Extension authors should try very -+# hard to only rely on the Tcl public header files. Internal headers -+# contain private data structures and are subject to change without -+# notice. -+# This must be done AFTER calling TEA_PATH_TCLCONFIG/TEA_LOAD_TCLCONFIG -+# so that we can extract TCL_SRC_DIR from the config file (in the case -+# of private headers -+#-------------------------------------------------------------------- -+ -+#TEA_PUBLIC_TCL_HEADERS -+ -+ { echo "$as_me:$LINENO: checking for Tcl private include files" >&5 -+echo $ECHO_N "checking for Tcl private include files... $ECHO_C" >&6; } -+ -+ if test "${TEA_PLATFORM}" = "windows"; then -+ TCL_TOP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}`\" -+ TCL_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/generic`\" -+ TCL_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/unix`\" -+ TCL_WIN_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/win`\" -+ TCL_BMAP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/bitmaps`\" -+ TCL_TOOL_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/tools`\" -+ TCL_COMPAT_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/compat`\" -+ TCL_PLATFORM_DIR_NATIVE=${TCL_WIN_DIR_NATIVE} -+ -+ TCL_INCLUDES="-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}" -+ else -+ TCL_TOP_DIR_NATIVE='$(TCL_SRC_DIR)' -+ TCL_GENERIC_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/generic' -+ TCL_UNIX_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/unix' -+ TCL_WIN_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/win' -+ TCL_BMAP_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/bitmaps' -+ TCL_TOOL_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/tools' -+ TCL_COMPAT_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/compat' -+ TCL_PLATFORM_DIR_NATIVE=${TCL_UNIX_DIR_NATIVE} -+ -+ # substitute these in "relaxed" so that TCL_INCLUDES still works -+ # without requiring the other vars to be defined in the Makefile -+ eval "TCL_INCLUDES=\"-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}\"" -+ fi -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ { echo "$as_me:$LINENO: result: Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&5 -+echo "${ECHO_T}Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&6; } -+ -+ -+#-------------------------------------------------------------------- -+# We need to enable the threading macros found in tcl.h and tclInt.h. -+# The use of the threading features is determined by the core the -+# extension is loaded into, but we need to compile with these macros -+# turned on. -+#-------------------------------------------------------------------- -+ -+cat >>confdefs.h <<\_ACEOF -+#define TCL_THREADS 1 -+_ACEOF -+ -+ -+#-------------------------------------------------------------------- -+# Check whether --enable-threads or --disable-threads was given. -+# This auto-enables if Tcl was compiled threaded. -+#-------------------------------------------------------------------- -+ -+#TEA_ENABLE_THREADS -+ -+#-------------------------------------------------------------------- -+# The statement below defines a collection of symbols related to -+# building as a shared library instead of a static library. -+#-------------------------------------------------------------------- -+ -+ -+ { echo "$as_me:$LINENO: checking how to build libraries" >&5 -+echo $ECHO_N "checking how to build libraries... $ECHO_C" >&6; } -+ # Check whether --enable-shared was given. -+if test "${enable_shared+set}" = set; then -+ enableval=$enable_shared; tcl_ok=$enableval -+else -+ tcl_ok=yes -+fi -+ -+ -+ if test "${enable_shared+set}" = set; then -+ enableval="$enable_shared" -+ tcl_ok=$enableval -+ else -+ tcl_ok=yes -+ fi -+ -+ if test "$tcl_ok" = "yes" ; then -+ { echo "$as_me:$LINENO: result: shared" >&5 -+echo "${ECHO_T}shared" >&6; } -+ SHARED_BUILD=1 -+ else -+ { echo "$as_me:$LINENO: result: static" >&5 -+echo "${ECHO_T}static" >&6; } -+ SHARED_BUILD=0 -+ cat >>confdefs.h <<\_ACEOF -+#define STATIC_BUILD 1 -+_ACEOF -+ -+ fi -+ -+ -+ -+#-------------------------------------------------------------------- -+# This macro figures out what flags to use with the compiler/linker -+# when building shared/static debug/optimized objects. This information -+# can be taken from the tclConfig.sh file, but this figures it all out. -+#-------------------------------------------------------------------- -+ -+ -+ # Allow the user to provide this setting in the env -+ if test "x${TCLSH_PROG}" = "x" ; then -+ { echo "$as_me:$LINENO: checking for tclsh" >&5 -+echo $ECHO_N "checking for tclsh... $ECHO_C" >&6; } -+ -+ if test "${ac_cv_path_tclsh+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ search_path=`echo ${PATH} | sed -e 's/:/ /g'` -+ if test "${TEA_PLATFORM}" != "windows" -o \ -+ \( "$do64bit_ok" = "no" -a "$doWince" = "no" \) ; then -+ # Do not allow target tclsh in known cross-compile builds, -+ # as we need one we can run on this system -+ search_path="${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin ${exec_prefix}/bin ${prefix}/bin ${search_path}" -+ fi -+ for dir in $search_path ; do -+ for j in `ls -r $dir/tclsh[8-9]*${EXEEXT} 2> /dev/null` \ -+ `ls -r $dir/tclsh*${EXEEXT} 2> /dev/null` ; do -+ if test x"$ac_cv_path_tclsh" = x ; then -+ if test -f "$j" ; then -+ ac_cv_path_tclsh=$j -+ break -+ fi -+ fi -+ done -+ done -+ -+fi -+ -+ -+ if test -f "$ac_cv_path_tclsh" ; then -+ TCLSH_PROG=$ac_cv_path_tclsh -+ { echo "$as_me:$LINENO: result: $TCLSH_PROG" >&5 -+echo "${ECHO_T}$TCLSH_PROG" >&6; } -+ else -+ { { echo "$as_me:$LINENO: error: No tclsh found in PATH: $search_path" >&5 -+echo "$as_me: error: No tclsh found in PATH: $search_path" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ fi -+ -+ -+ -+ -+ -+ # Step 0: Enable 64 bit support? -+ -+ { echo "$as_me:$LINENO: checking if 64bit support is enabled" >&5 -+echo $ECHO_N "checking if 64bit support is enabled... $ECHO_C" >&6; } -+ # Check whether --enable-64bit was given. -+if test "${enable_64bit+set}" = set; then -+ enableval=$enable_64bit; do64bit=$enableval -+else -+ do64bit=no -+fi -+ -+ { echo "$as_me:$LINENO: result: $do64bit" >&5 -+echo "${ECHO_T}$do64bit" >&6; } -+ -+ # Step 0.b: Enable Solaris 64 bit VIS support? -+ -+ { echo "$as_me:$LINENO: checking if 64bit Sparc VIS support is requested" >&5 -+echo $ECHO_N "checking if 64bit Sparc VIS support is requested... $ECHO_C" >&6; } -+ # Check whether --enable-64bit-vis was given. -+if test "${enable_64bit_vis+set}" = set; then -+ enableval=$enable_64bit_vis; do64bitVIS=$enableval -+else -+ do64bitVIS=no -+fi -+ -+ { echo "$as_me:$LINENO: result: $do64bitVIS" >&5 -+echo "${ECHO_T}$do64bitVIS" >&6; } -+ -+ if test "$do64bitVIS" = "yes"; then -+ # Force 64bit on with VIS -+ do64bit=yes -+ fi -+ -+ # Step 0.c: Cross-compiling options for Windows/CE builds? -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ { echo "$as_me:$LINENO: checking if Windows/CE build is requested" >&5 -+echo $ECHO_N "checking if Windows/CE build is requested... $ECHO_C" >&6; } -+ # Check whether --enable-wince was given. -+if test "${enable_wince+set}" = set; then -+ enableval=$enable_wince; doWince=$enableval -+else -+ doWince=no -+fi -+ -+ { echo "$as_me:$LINENO: result: $doWince" >&5 -+echo "${ECHO_T}$doWince" >&6; } -+ fi -+ -+ # Step 1: set the variable "system" to hold the name and version number -+ # for the system. This can usually be done via the "uname" command, but -+ # there are a few systems, like Next, where this doesn't work. -+ -+ { echo "$as_me:$LINENO: checking system version (for dynamic loading)" >&5 -+echo $ECHO_N "checking system version (for dynamic loading)... $ECHO_C" >&6; } -+ if test -f /usr/lib/NextStep/software_version; then -+ system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version` -+ else -+ system=`uname -s`-`uname -r` -+ if test "$?" -ne 0 ; then -+ { echo "$as_me:$LINENO: result: unknown (can't find uname command)" >&5 -+echo "${ECHO_T}unknown (can't find uname command)" >&6; } -+ system=unknown -+ else -+ # Special check for weird MP-RAS system (uname returns weird -+ # results, and the version is kept in special file). -+ -+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then -+ system=MP-RAS-`awk '{print }' /etc/.relid'` -+ fi -+ if test "`uname -s`" = "AIX" ; then -+ system=AIX-`uname -v`.`uname -r` -+ fi -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ system=windows -+ fi -+ { echo "$as_me:$LINENO: result: $system" >&5 -+echo "${ECHO_T}$system" >&6; } -+ fi -+ fi -+ -+ # Step 2: check for existence of -ldl library. This is needed because -+ # Linux can use either -ldl or -ldld for dynamic loading. -+ -+ { echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -+echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; } -+if test "${ac_cv_lib_dl_dlopen+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_dl_dlopen=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_dl_dlopen=no -+fi -+ -+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_dl_dlopen" >&5 -+echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; } -+if test $ac_cv_lib_dl_dlopen = yes; then -+ have_dl=yes -+else -+ have_dl=no -+fi -+ -+ -+ # Step 3: set configuration options based on system name and version. -+ # This is similar to Tcl's unix/tcl.m4 except that we've added a -+ # "windows" case and CC_SEARCH_FLAGS becomes LD_SEARCH_FLAGS for us -+ # (and we have no CC_SEARCH_FLAGS). -+ -+ do64bit_ok=no -+ LDFLAGS_ORIG="$LDFLAGS" -+ TCL_EXPORT_FILE_SUFFIX="" -+ UNSHARED_LIB_SUFFIX="" -+ TCL_TRIM_DOTS='`echo ${PACKAGE_VERSION} | tr -d .`' -+ ECHO_VERSION='`echo ${PACKAGE_VERSION}`' -+ TCL_LIB_VERSIONS_OK=ok -+ CFLAGS_DEBUG=-g -+ if test "$GCC" = "yes" ; then -+ CFLAGS_OPTIMIZE=-O2 -+ CFLAGS_WARNING="-Wall -Wno-implicit-int" -+ else -+ CFLAGS_OPTIMIZE=-O -+ CFLAGS_WARNING="" -+ fi -+ TCL_NEEDS_EXP_FILE=0 -+ TCL_BUILD_EXP_FILE="" -+ TCL_EXP_FILE="" -+ # Extract the first word of "ar", so it can be a program name with args. -+set dummy ar; 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_AR+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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="ar" -+ 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 -+ { echo "$as_me:$LINENO: result: $AR" >&5 -+echo "${ECHO_T}$AR" >&6; } -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+fi -+ -+ -+ STLIB_LD='${AR} cr' -+ LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH" -+ case $system in -+ windows) -+ # This is a 2-stage check to make sure we have the 64-bit SDK -+ # We have to know where the SDK is installed. -+ if test "$do64bit" = "yes" ; then -+ if test "x${MSSDK}x" = "xx" ; then -+ MSSDK="C:/Progra~1/Microsoft SDK" -+ fi -+ # Ensure that this path has no spaces to work in autoconf -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # we need TCLSH_PROG defined to get Windows short pathnames -+ -+ -+ { echo "$as_me:$LINENO: checking short pathname for MSSDK (${MSSDK})" >&5 -+echo $ECHO_N "checking short pathname for MSSDK (${MSSDK})... $ECHO_C" >&6; } -+ -+ shortpath= -+ case "${MSSDK}" in -+ *\ *) -+ # Only do this if we need to. -+ shortpath=`echo "puts [file attributes {${MSSDK}} -shortname] ; exit" | ${TCLSH_PROG} 2>/dev/null` -+ ;; -+ esac -+ if test "x${shortpath}" = "x" ; then -+ { echo "$as_me:$LINENO: result: not changed" >&5 -+echo "${ECHO_T}not changed" >&6; } -+ else -+ MSSDK=$shortpath -+ { echo "$as_me:$LINENO: result: ${MSSDK}" >&5 -+echo "${ECHO_T}${MSSDK}" >&6; } -+ fi -+ fi -+ -+ if test ! -d "${MSSDK}/bin/win64" ; then -+ { echo "$as_me:$LINENO: WARNING: could not find 64-bit SDK to enable 64bit mode" >&5 -+echo "$as_me: WARNING: could not find 64-bit SDK to enable 64bit mode" >&2;} -+ do64bit="no" -+ else -+ do64bit_ok="yes" -+ fi -+ fi -+ -+ if test "$doWince" != "no" ; then -+ if test "$do64bit" = "yes" ; then -+ { { echo "$as_me:$LINENO: error: Windows/CE and 64-bit builds incompatible" >&5 -+echo "$as_me: error: Windows/CE and 64-bit builds incompatible" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ if test "$GCC" = "yes" ; then -+ { { echo "$as_me:$LINENO: error: Windows/CE and GCC builds incompatible" >&5 -+echo "$as_me: error: Windows/CE and GCC builds incompatible" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-celib -+ -+ if test x"${no_celib}" = x ; then -+ # we reset no_celib in case something fails here -+ no_celib=true -+ -+# Check whether --with-celib was given. -+if test "${with_celib+set}" = set; then -+ withval=$with_celib; with_celibconfig=${withval} -+fi -+ -+ { echo "$as_me:$LINENO: checking for Windows/CE celib directory" >&5 -+echo $ECHO_N "checking for Windows/CE celib directory... $ECHO_C" >&6; } -+ if test "${ac_cv_c_celibconfig+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ # First check to see if --with-celibconfig was specified. -+ if test x"${with_celibconfig}" != x ; then -+ if test -d "${with_celibconfig}/inc" ; then -+ ac_cv_c_celibconfig=`(cd ${with_celibconfig}; pwd)` -+ else -+ { { echo "$as_me:$LINENO: error: ${with_celibconfig} directory doesn't contain inc directory" >&5 -+echo "$as_me: error: ${with_celibconfig} directory doesn't contain inc directory" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ fi -+ -+ # then check for a celib library -+ if test x"${ac_cv_c_celibconfig}" = x ; then -+ for i in \ -+ ../celib-palm-3.0 \ -+ ../celib \ -+ ../../celib-palm-3.0 \ -+ ../../celib \ -+ `ls -dr ../celib-*3.[0-9]* 2>/dev/null` \ -+ ${srcdir}/../celib-palm-3.0 \ -+ ${srcdir}/../celib \ -+ `ls -dr ${srcdir}/../celib-*3.[0-9]* 2>/dev/null` \ -+ ; do -+ if test -d "$i/inc" ; then -+ ac_cv_c_celibconfig=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ -+fi -+ -+ if test x"${ac_cv_c_celibconfig}" = x ; then -+ { { echo "$as_me:$LINENO: error: Cannot find celib support library directory" >&5 -+echo "$as_me: error: Cannot find celib support library directory" >&2;} -+ { (exit 1); exit 1; }; } -+ else -+ no_celib= -+ CELIB_DIR=${ac_cv_c_celibconfig} -+ { echo "$as_me:$LINENO: result: found $CELIB_DIR" >&5 -+echo "${ECHO_T}found $CELIB_DIR" >&6; } -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # we need TCLSH_PROG defined to get Windows short pathnames -+ -+ -+ { echo "$as_me:$LINENO: checking short pathname for CELIB_DIR (${ac_cv_c_celibconfig})" >&5 -+echo $ECHO_N "checking short pathname for CELIB_DIR (${ac_cv_c_celibconfig})... $ECHO_C" >&6; } -+ -+ shortpath= -+ case "${ac_cv_c_celibconfig}" in -+ *\ *) -+ # Only do this if we need to. -+ shortpath=`echo "puts [file attributes {${ac_cv_c_celibconfig}} -shortname] ; exit" | ${TCLSH_PROG} 2>/dev/null` -+ ;; -+ esac -+ if test "x${shortpath}" = "x" ; then -+ { echo "$as_me:$LINENO: result: not changed" >&5 -+echo "${ECHO_T}not changed" >&6; } -+ else -+ CELIB_DIR=$shortpath -+ { echo "$as_me:$LINENO: result: ${CELIB_DIR}" >&5 -+echo "${ECHO_T}${CELIB_DIR}" >&6; } -+ fi -+ fi -+ -+ fi -+ fi -+ -+ # Set defaults for common evc4/PPC2003 setup -+ # Currently Tcl requires 300+, possibly 420+ for sockets -+ CEVERSION=420; # could be 211 300 301 400 420 ... -+ TARGETCPU=ARMV4; # could be ARMV4 ARM MIPS SH3 X86 ... -+ ARCH=ARM; # could be ARM MIPS X86EM ... -+ PLATFORM="Pocket PC 2003"; # or "Pocket PC 2002" -+ if test "$doWince" != "yes"; then -+ # If !yes then the user specified something -+ # Reset ARCH to allow user to skip specifying it -+ ARCH= -+ eval `echo $doWince | awk -F, '{ \ -+ if (length($1)) { printf "CEVERSION=\"%s\"\n", $1; \ -+ if ($1 < 400) { printf "PLATFORM=\"Pocket PC 2002\"\n" } }; \ -+ if (length($2)) { printf "TARGETCPU=\"%s\"\n", toupper($2) }; \ -+ if (length($3)) { printf "ARCH=\"%s\"\n", toupper($3) }; \ -+ if (length($4)) { printf "PLATFORM=\"%s\"\n", $4 }; \ -+ }'` -+ if test "x${ARCH}" = "x" ; then -+ ARCH=$TARGETCPU; -+ fi -+ fi -+ OSVERSION=WCE$CEVERSION; -+ if test "x${WCEROOT}" = "x" ; then -+ WCEROOT="C:/Program Files/Microsoft eMbedded C++ 4.0" -+ if test ! -d "${WCEROOT}" ; then -+ WCEROOT="C:/Program Files/Microsoft eMbedded Tools" -+ fi -+ fi -+ if test "x${SDKROOT}" = "x" ; then -+ SDKROOT="C:/Program Files/Windows CE Tools" -+ if test ! -d "${SDKROOT}" ; then -+ SDKROOT="C:/Windows CE Tools" -+ fi -+ fi -+ # Ensure that this path has no spaces to work in autoconf -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # we need TCLSH_PROG defined to get Windows short pathnames -+ -+ -+ { echo "$as_me:$LINENO: checking short pathname for WCEROOT (${WCEROOT})" >&5 -+echo $ECHO_N "checking short pathname for WCEROOT (${WCEROOT})... $ECHO_C" >&6; } -+ -+ shortpath= -+ case "${WCEROOT}" in -+ *\ *) -+ # Only do this if we need to. -+ shortpath=`echo "puts [file attributes {${WCEROOT}} -shortname] ; exit" | ${TCLSH_PROG} 2>/dev/null` -+ ;; -+ esac -+ if test "x${shortpath}" = "x" ; then -+ { echo "$as_me:$LINENO: result: not changed" >&5 -+echo "${ECHO_T}not changed" >&6; } -+ else -+ WCEROOT=$shortpath -+ { echo "$as_me:$LINENO: result: ${WCEROOT}" >&5 -+echo "${ECHO_T}${WCEROOT}" >&6; } -+ fi -+ fi -+ -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # we need TCLSH_PROG defined to get Windows short pathnames -+ -+ -+ { echo "$as_me:$LINENO: checking short pathname for SDKROOT (${SDKROOT})" >&5 -+echo $ECHO_N "checking short pathname for SDKROOT (${SDKROOT})... $ECHO_C" >&6; } -+ -+ shortpath= -+ case "${SDKROOT}" in -+ *\ *) -+ # Only do this if we need to. -+ shortpath=`echo "puts [file attributes {${SDKROOT}} -shortname] ; exit" | ${TCLSH_PROG} 2>/dev/null` -+ ;; -+ esac -+ if test "x${shortpath}" = "x" ; then -+ { echo "$as_me:$LINENO: result: not changed" >&5 -+echo "${ECHO_T}not changed" >&6; } -+ else -+ SDKROOT=$shortpath -+ { echo "$as_me:$LINENO: result: ${SDKROOT}" >&5 -+echo "${ECHO_T}${SDKROOT}" >&6; } -+ fi -+ fi -+ -+ if test ! -d "${SDKROOT}/${OSVERSION}/${PLATFORM}/Lib/${TARGETCPU}" \ -+ -o ! -d "${WCEROOT}/EVC/${OSVERSION}/bin"; then -+ { { echo "$as_me:$LINENO: error: could not find PocketPC SDK or target compiler to enable WinCE mode $CEVERSION,$TARGETCPU,$ARCH,$PLATFORM" >&5 -+echo "$as_me: error: could not find PocketPC SDK or target compiler to enable WinCE mode $CEVERSION,$TARGETCPU,$ARCH,$PLATFORM" >&2;} -+ { (exit 1); exit 1; }; } -+ doWince="no" -+ else -+ # We could PATH_NOSPACE these, but that's not important, -+ # as long as we quote them when used. -+ CEINCLUDE="${SDKROOT}/${OSVERSION}/${PLATFORM}/include" -+ if test -d "${CEINCLUDE}/${TARGETCPU}" ; then -+ CEINCLUDE="${CEINCLUDE}/${TARGETCPU}" -+ fi -+ CELIBPATH="${SDKROOT}/${OSVERSION}/${PLATFORM}/Lib/${TARGETCPU}" -+ fi -+ fi -+ -+ if test "$GCC" != "yes" ; then -+ if test "${SHARED_BUILD}" = "0" ; then -+ runtime=-MT -+ else -+ runtime=-MD -+ fi -+ -+ if test "$do64bit" = "yes" ; then -+ # All this magic is necessary for the Win64 SDK RC1 - hobbs -+ CC="${MSSDK}/Bin/Win64/cl.exe" -+ CFLAGS="${CFLAGS} -I${MSSDK}/Include/prerelease \ -+ -I${MSSDK}/Include/Win64/crt \ -+ -I${MSSDK}/Include" -+ RC="${MSSDK}/bin/rc.exe" -+ lflags="-MACHINE:IA64 -LIBPATH:${MSSDK}/Lib/IA64 \ -+ -LIBPATH:${MSSDK}/Lib/Prerelease/IA64 -nologo" -+ LINKBIN="${MSSDK}/bin/win64/link.exe" -+ CFLAGS_DEBUG="-nologo -Zi -Od -W3 ${runtime}d" -+ CFLAGS_OPTIMIZE="-nologo -O2 -W2 ${runtime}" -+ elif test "$doWince" != "no" ; then -+ CEBINROOT="${WCEROOT}/EVC/${OSVERSION}/bin" -+ if test "${TARGETCPU}" = "X86"; then -+ CC="${CEBINROOT}/cl.exe" -+ else -+ CC="${CEBINROOT}/cl${ARCH}.exe" -+ fi -+ CFLAGS="$CFLAGS -I\"${CELIB_DIR}/inc\" -I\"${CEINCLUDE}\"" -+ RC="${WCEROOT}/Common/EVC/bin/rc.exe" -+ arch=`echo ${ARCH} | awk '{print tolower($0)}'` -+ defs="${ARCH} _${ARCH}_ ${arch} PALM_SIZE _MT _WINDOWS" -+ if test "${SHARED_BUILD}" = "1" ; then -+ # Static CE builds require static celib as well -+ defs="${defs} _DLL" -+ fi -+ for i in $defs ; do -+ cat >>confdefs.h <<_ACEOF -+#define $i 1 -+_ACEOF -+ -+ done -+ cat >>confdefs.h <<_ACEOF -+#define _WIN32_WCE $CEVERSION -+_ACEOF -+ -+ cat >>confdefs.h <<_ACEOF -+#define UNDER_CE $CEVERSION -+_ACEOF -+ -+ CFLAGS_DEBUG="-nologo -Zi -Od" -+ CFLAGS_OPTIMIZE="-nologo -Ox" -+ lversion=`echo ${CEVERSION} | sed -e 's/\(.\)\(..\)/\1\.\2/'` -+ lflags="-MACHINE:${ARCH} -LIBPATH:\"${CELIBPATH}\" -subsystem:windowsce,${lversion} -nologo" -+ LINKBIN="${CEBINROOT}/link.exe" -+ -+ else -+ RC="rc" -+ lflags="-nologo" -+ LINKBIN="link" -+ CFLAGS_DEBUG="-nologo -Z7 -Od -W3 -WX ${runtime}d" -+ CFLAGS_OPTIMIZE="-nologo -O2 -W2 ${runtime}" -+ fi -+ fi -+ -+ if test "$GCC" = "yes"; then -+ # mingw gcc mode -+ RC="windres" -+ CFLAGS_DEBUG="-g" -+ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" -+ SHLIB_LD="$CC -shared" -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" -+ LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" -+ else -+ SHLIB_LD="${LINKBIN} -dll ${lflags}" -+ # link -lib only works when -lib is the first arg -+ STLIB_LD="${LINKBIN} -lib ${lflags}" -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.lib' -+ PATHTYPE=-w -+ # For information on what debugtype is most useful, see: -+ # http://msdn.microsoft.com/library/en-us/dnvc60/html/gendepdebug.asp -+ # This essentially turns it all on. -+ LDFLAGS_DEBUG="-debug:full -debugtype:both -warn:2" -+ LDFLAGS_OPTIMIZE="-release" -+ if test "$doWince" != "no" ; then -+ LDFLAGS_CONSOLE="-link ${lflags}" -+ LDFLAGS_WINDOW=${LDFLAGS_CONSOLE} -+ else -+ LDFLAGS_CONSOLE="-link -subsystem:console ${lflags}" -+ LDFLAGS_WINDOW="-link -subsystem:windows ${lflags}" -+ fi -+ fi -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".dll" -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.dll' -+ -+ TCL_LIB_VERSIONS_OK=nodots -+ # Bogus to avoid getting this turned off -+ DL_OBJS="tclLoadNone.obj" -+ ;; -+ AIX-*) -+ if test "${TCL_THREADS}" = "1" -a "$GCC" != "yes" ; then -+ # AIX requires the _r compiler when gcc isn't being used -+ if test "${CC}" != "cc_r" ; then -+ CC=${CC}_r -+ fi -+ { echo "$as_me:$LINENO: result: Using $CC for compiling with threads" >&5 -+echo "${ECHO_T}Using $CC for compiling with threads" >&6; } -+ fi -+ LIBS="$LIBS -lc" -+ SHLIB_CFLAGS="" -+ SHLIB_SUFFIX=".so" -+ SHLIB_LD_LIBS='${LIBS}' -+ -+ DL_OBJS="tclLoadDl.o" -+ LD_LIBRARY_PATH_VAR="LIBPATH" -+ -+ # AIX v<=4.1 has some different flags than 4.2+ -+ if test "$system" = "AIX-4.1" -o "`uname -v`" -lt "4" ; then -+ #LIBOBJS="$LIBOBJS tclLoadAix.o" -+ case " $LIBOBJS " in -+ *" tclLoadAix.$ac_objext "* ) ;; -+ *) LIBOBJS="$LIBOBJS tclLoadAix.$ac_objext" -+ ;; -+esac -+ -+ DL_LIBS="-lld" -+ fi -+ -+ # Check to enable 64-bit flags for compiler/linker on AIX 4+ -+ if test "$do64bit" = "yes" -a "`uname -v`" -gt "3" ; then -+ if test "$GCC" = "yes" ; then -+ { echo "$as_me:$LINENO: WARNING: \"64bit mode not supported with GCC on $system\"" >&5 -+echo "$as_me: WARNING: \"64bit mode not supported with GCC on $system\"" >&2;} -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS -q64" -+ LDFLAGS="$LDFLAGS -q64" -+ RANLIB="${RANLIB} -X64" -+ AR="${AR} -X64" -+ SHLIB_LD_FLAGS="-b64" -+ fi -+ fi -+ -+ if test "`uname -m`" = "ia64" ; then -+ # AIX-5 uses ELF style dynamic libraries on IA-64, but not PPC -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ # AIX-5 has dl* in libc.so -+ DL_LIBS="" -+ if test "$GCC" = "yes" ; then -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' -+ else -+ LD_SEARCH_FLAGS='-R${LIB_RUNTIME_DIR}' -+ fi -+ else -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="gcc -shared" -+ else -+ SHLIB_LD="/bin/ld -bhalt:4 -bM:SRE -bE:lib.exp -H512 -T512 -bnoentry" -+ fi -+ SHLIB_LD="${TCL_SRC_DIR}/unix/ldAix ${SHLIB_LD} ${SHLIB_LD_FLAGS}" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ TCL_NEEDS_EXP_FILE=1 -+ TCL_EXPORT_FILE_SUFFIX='${PACKAGE_VERSION}.exp' -+ fi -+ -+ # On AIX <=v4 systems, libbsd.a has to be linked in to support -+ # non-blocking file IO. This library has to be linked in after -+ # the MATH_LIBS or it breaks the pow() function. The way to -+ # insure proper sequencing, is to add it to the tail of MATH_LIBS. -+ # This library also supplies gettimeofday. -+ # -+ # AIX does not have a timezone field in struct tm. When the AIX -+ # bsd library is used, the timezone global and the gettimeofday -+ # methods are to be avoided for timezone deduction instead, we -+ # deduce the timezone by comparing the localtime result on a -+ # known GMT value. -+ -+ { echo "$as_me:$LINENO: checking for gettimeofday in -lbsd" >&5 -+echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6; } -+if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lbsd $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 gettimeofday (); -+int -+main () -+{ -+return gettimeofday (); -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_bsd_gettimeofday=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_bsd_gettimeofday=no -+fi -+ -+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_bsd_gettimeofday" >&5 -+echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6; } -+if test $ac_cv_lib_bsd_gettimeofday = yes; then -+ libbsd=yes -+else -+ libbsd=no -+fi -+ -+ if test $libbsd = yes; then -+ MATH_LIBS="$MATH_LIBS -lbsd" -+ cat >>confdefs.h <<\_ACEOF -+#define USE_DELTA_FOR_TZ 1 -+_ACEOF -+ -+ fi -+ ;; -+ BeOS*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="${CC} -nostart" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ ;; -+ BSD/OS-2.1*|BSD/OS-3*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="shlicc -r" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ BSD/OS-4.*) -+ SHLIB_CFLAGS="-export-dynamic -fPIC" -+ SHLIB_LD="cc -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -export-dynamic" -+ LD_SEARCH_FLAGS="" -+ ;; -+ dgux*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ HP-UX-*.11.*) -+ # Use updated header definitions where possible -+ cat >>confdefs.h <<\_ACEOF -+#define _XOPEN_SOURCE_EXTENDED 1 -+_ACEOF -+ -+ -+ SHLIB_SUFFIX=".sl" -+ { echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -+echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6; } -+if test "${ac_cv_lib_dld_shl_load+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_dld_shl_load=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_dld_shl_load=no -+fi -+ -+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_dld_shl_load" >&5 -+echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6; } -+if test $ac_cv_lib_dld_shl_load = yes; then -+ tcl_ok=yes -+else -+ tcl_ok=no -+fi -+ -+ if test "$tcl_ok" = yes; then -+ SHLIB_CFLAGS="+z" -+ SHLIB_LD="ld -b" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadShl.o" -+ DL_LIBS="-ldld" -+ LDFLAGS="$LDFLAGS -Wl,-E" -+ LD_SEARCH_FLAGS='+s +b ${LIB_RUNTIME_DIR}:.' -+ LD_LIBRARY_PATH_VAR="SHLIB_PATH" -+ fi -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="gcc -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ LD_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.' -+ fi -+ -+ # Users may want PA-RISC 1.1/2.0 portable code - needs HP cc -+ #CFLAGS="$CFLAGS +DAportable" -+ -+ # Check to enable 64-bit flags for compiler/linker -+ if test "$do64bit" = "yes" ; then -+ if test "$GCC" = "yes" ; then -+ hpux_arch=`${CC} -dumpmachine` -+ case $hpux_arch in -+ hppa64*) -+ # 64-bit gcc in use. Fix flags for GNU ld. -+ do64bit_ok=yes -+ SHLIB_LD="${CC} -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ ;; -+ *) -+ { echo "$as_me:$LINENO: WARNING: \"64bit mode not supported with GCC on $system\"" >&5 -+echo "$as_me: WARNING: \"64bit mode not supported with GCC on $system\"" >&2;} -+ ;; -+ esac -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS +DD64" -+ LDFLAGS="$LDFLAGS +DD64" -+ fi -+ fi -+ ;; -+ HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*) -+ SHLIB_SUFFIX=".sl" -+ { echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -+echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6; } -+if test "${ac_cv_lib_dld_shl_load+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ ac_cv_lib_dld_shl_load=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_dld_shl_load=no -+fi -+ -+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_dld_shl_load" >&5 -+echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6; } -+if test $ac_cv_lib_dld_shl_load = yes; then -+ tcl_ok=yes -+else -+ tcl_ok=no -+fi -+ -+ if test "$tcl_ok" = yes; then -+ SHLIB_CFLAGS="+z" -+ SHLIB_LD="ld -b" -+ SHLIB_LD_LIBS="" -+ DL_OBJS="tclLoadShl.o" -+ DL_LIBS="-ldld" -+ LDFLAGS="$LDFLAGS -Wl,-E" -+ LD_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.' -+ fi -+ LD_LIBRARY_PATH_VAR="SHLIB_PATH" -+ ;; -+ IRIX-4.*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_SUFFIX=".a" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ SHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' -+ ;; -+ IRIX-5.*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ ;; -+ IRIX-6.*|IRIX64-6.5*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -n32 -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ if test "$GCC" = "yes" ; then -+ CFLAGS="$CFLAGS -mabi=n32" -+ LDFLAGS="$LDFLAGS -mabi=n32" -+ else -+ case $system in -+ IRIX-6.3) -+ # Use to build 6.2 compatible binaries on 6.3. -+ CFLAGS="$CFLAGS -n32 -D_OLD_TERMIOS" -+ ;; -+ *) -+ CFLAGS="$CFLAGS -n32" -+ ;; -+ esac -+ LDFLAGS="$LDFLAGS -n32" -+ fi -+ ;; -+ IRIX64-6.*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -n32 -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ -+ # Check to enable 64-bit flags for compiler/linker -+ -+ if test "$do64bit" = "yes" ; then -+ if test "$GCC" = "yes" ; then -+ { echo "$as_me:$LINENO: WARNING: 64bit mode not supported by gcc" >&5 -+echo "$as_me: WARNING: 64bit mode not supported by gcc" >&2;} -+ else -+ do64bit_ok=yes -+ SHLIB_LD="ld -64 -shared -rdata_shared" -+ CFLAGS="$CFLAGS -64" -+ LDFLAGS="$LDFLAGS -64" -+ fi -+ fi -+ ;; -+ Linux*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ -+ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" -+ # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings -+ # when you inline the string and math operations. Turn this off to -+ # get rid of the warnings. -+ -+ #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" -+ -+ if test "$have_dl" = yes; then -+ SHLIB_LD="${CC} -shared" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ else -+ if test "${ac_cv_header_dld_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for dld.h" >&5 -+echo $ECHO_N "checking for dld.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dld_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dld_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dld_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking dld.h usability" >&5 -+echo $ECHO_N "checking dld.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking dld.h presence" >&5 -+echo $ECHO_N "checking dld.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: dld.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: dld.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: dld.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: dld.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: dld.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: dld.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: dld.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: dld.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: dld.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: dld.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for dld.h" >&5 -+echo $ECHO_N "checking for dld.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dld_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_dld_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dld_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dld_h" >&6; } -+ -+fi -+if test $ac_cv_header_dld_h = yes; then -+ -+ SHLIB_LD="ld -shared" -+ DL_OBJS="tclLoadDld.o" -+ DL_LIBS="-ldld" -+ LD_SEARCH_FLAGS="" -+fi -+ -+ -+ fi -+ if test "`uname -m`" = "alpha" ; then -+ CFLAGS="$CFLAGS -mieee" -+ fi -+ -+ # The combo of gcc + glibc has a bug related -+ # to inlining of functions like strtod(). The -+ # -fno-builtin flag should address this problem -+ # but it does not work. The -fno-inline flag -+ # is kind of overkill but it works. -+ # Disable inlining only when one of the -+ # files in compat/*.c is being linked in. -+ if test x"${USE_COMPAT}" != x ; then -+ CFLAGS="$CFLAGS -fno-inline" -+ fi -+ -+ ;; -+ GNU*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ -+ if test "$have_dl" = yes; then -+ SHLIB_LD="${CC} -shared" -+ DL_OBJS="" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" -+ LD_SEARCH_FLAGS="" -+ else -+ if test "${ac_cv_header_dld_h+set}" = set; then -+ { echo "$as_me:$LINENO: checking for dld.h" >&5 -+echo $ECHO_N "checking for dld.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dld_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dld_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dld_h" >&6; } -+else -+ # Is the header compilable? -+{ echo "$as_me:$LINENO: checking dld.h usability" >&5 -+echo $ECHO_N "checking dld.h usability... $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. */ -+$ac_includes_default -+#include -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking dld.h presence" >&5 -+echo $ECHO_N "checking dld.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+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; } -+ -+# 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: dld.h: accepted by the compiler, rejected by the preprocessor!" >&5 -+echo "$as_me: WARNING: dld.h: accepted by the compiler, rejected by the preprocessor!" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: proceeding with the compiler's result" >&5 -+echo "$as_me: WARNING: dld.h: proceeding with the compiler's result" >&2;} -+ ac_header_preproc=yes -+ ;; -+ no:yes:* ) -+ { echo "$as_me:$LINENO: WARNING: dld.h: present but cannot be compiled" >&5 -+echo "$as_me: WARNING: dld.h: present but cannot be compiled" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: check for missing prerequisite headers?" >&5 -+echo "$as_me: WARNING: dld.h: check for missing prerequisite headers?" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: see the Autoconf documentation" >&5 -+echo "$as_me: WARNING: dld.h: see the Autoconf documentation" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: section \"Present But Cannot Be Compiled\"" >&5 -+echo "$as_me: WARNING: dld.h: section \"Present But Cannot Be Compiled\"" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: proceeding with the preprocessor's result" >&5 -+echo "$as_me: WARNING: dld.h: proceeding with the preprocessor's result" >&2;} -+ { echo "$as_me:$LINENO: WARNING: dld.h: in the future, the compiler will take precedence" >&5 -+echo "$as_me: WARNING: dld.h: in the future, the compiler will take precedence" >&2;} -+ -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for dld.h" >&5 -+echo $ECHO_N "checking for dld.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dld_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_header_dld_h=$ac_header_preproc -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dld_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dld_h" >&6; } -+ -+fi -+if test $ac_cv_header_dld_h = yes; then -+ -+ SHLIB_LD="ld -shared" -+ DL_OBJS="" -+ DL_LIBS="-ldld" -+ LD_SEARCH_FLAGS="" -+fi -+ -+ -+ fi -+ if test "`uname -m`" = "alpha" ; then -+ CFLAGS="$CFLAGS -mieee" -+ fi -+ ;; -+ MP-RAS-02*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ MP-RAS-*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,-Bexport" -+ LD_SEARCH_FLAGS="" -+ ;; -+ NetBSD-*|FreeBSD-[1-2].*) -+ # Not available on all versions: check for include file. -+ 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; } -+if test "${ac_cv_header_dlfcn_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5 -+echo "${ECHO_T}$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; } -+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 -+_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_header_compiler=yes -+else -+ 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; } -+ -+# Is the header present? -+{ echo "$as_me:$LINENO: checking dlfcn.h presence" >&5 -+echo $ECHO_N "checking dlfcn.h presence... $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. */ -+#include -+_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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_header_preproc=no -+fi - -- case "${host}" in -- *mingw32* | *windows32*) -- tcl_dbgx=d -- ;; -- *) -- tcl_dbgx=g -- ;; -- esac -+rm -f conftest.err conftest.$ac_ext -+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -+echo "${ECHO_T}$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;} -+ 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;} - -- echo "$as_me:$LINENO: checking for build with symbols" >&5 --echo $ECHO_N "checking for build with symbols... $ECHO_C" >&6 -- # Check whether --enable-symbols or --disable-symbols was given. --if test "${enable_symbols+set}" = set; then -- enableval="$enable_symbols" -- tcl_ok=$enableval -+ ;; -+esac -+{ echo "$as_me:$LINENO: checking for dlfcn.h" >&5 -+echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6; } -+if test "${ac_cv_header_dlfcn_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- tcl_ok=no --fi; -- if test "$tcl_ok" = "yes"; then -- CFLAGS_DEFAULT="${CFLAGS_DEBUG}" -- LDFLAGS_DEFAULT="${LDFLAGS_DEBUG}" -- DBGX=${tcl_dbgx} -- TCL_DBGX=${tcl_dbgx} -- echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- else -- CFLAGS_DEFAULT="${CFLAGS_OPTIMIZE}" -- LDFLAGS_DEFAULT="${LDFLAGS_OPTIMIZE}" -- DBGX="" -- TCL_DBGX="" -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 -- fi -+ 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; } - -+fi -+if test $ac_cv_header_dlfcn_h = yes; then -+ -+ # NetBSD/SPARC needs -fPIC, -fpic will not do. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ { echo "$as_me:$LINENO: checking for ELF" >&5 -+echo $ECHO_N "checking for ELF... $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 __ELF__ -+ 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; } -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so' -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' - -+fi -+rm -f conftest* - - --if test "${SHARED_BUILD}" = "1" ; then -- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING} ${SHLIB_CFLAGS}' - else -- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING}' -+ -+ SHLIB_CFLAGS="" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".a" -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ - fi - --#-------------------------------------------------------------------- --# Everyone should be linking against the Tcl stub library. If you --# can't for some reason, remove this definition. If you aren't using --# stubs, you also need to modify the SHLIB_LD_LIBS setting below to --# link against the non-stubbed Tcl library. --#-------------------------------------------------------------------- - --if test "${SHARED_BUILD}" = "1" ; then -- cat >>confdefs.h <<\_ACEOF --#define USE_TCL_STUBS 1 -+ -+ # FreeBSD doesn't handle version numbers with dots. -+ -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ OpenBSD-*) -+ SHLIB_LD="${CC} -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ { echo "$as_me:$LINENO: checking for ELF" >&5 -+echo $ECHO_N "checking for ELF... $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 __ELF__ -+ 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; } -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' -+else -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' - - fi -+rm -f conftest* -+ -+ -+ # OpenBSD doesn't do version numbers with dots. -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ FreeBSD-*) -+ # FreeBSD 3.* and greater have ELF. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -export-dynamic" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ if test "${TCL_THREADS}" = "1" ; then -+ # The -pthread needs to go in the CFLAGS, not LIBS -+ LIBS=`echo $LIBS | sed s/-pthread//` -+ CFLAGS="$CFLAGS -pthread" -+ LDFLAGS="$LDFLAGS -pthread" -+ fi -+ case $system in -+ FreeBSD-3.*) -+ # FreeBSD-3 doesn't handle version numbers with dots. -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ esac -+ ;; -+ Darwin-*) -+ SHLIB_CFLAGS="-fno-common" -+ SHLIB_LD="cc -dynamiclib \${LDFLAGS}" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".dylib" -+ DL_OBJS="tclLoadDyld.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -prebind -Wl,-search_paths_first" -+ LD_SEARCH_FLAGS="" -+ LD_LIBRARY_PATH_VAR="DYLD_LIBRARY_PATH" -+ CFLAGS_OPTIMIZE="-Os" -+ ;; -+ NEXTSTEP-*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="cc -nostdlib -r" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadNext.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OS/390-*) -+ CFLAGS_OPTIMIZE="" # Optimizer is buggy -+ cat >>confdefs.h <<\_ACEOF -+#define _OE_SOCKETS 1 -+_ACEOF -+ # needed in sys/socket.h -+ ;; -+ OSF1-1.0|OSF1-1.1|OSF1-1.2) -+ # OSF/1 1.[012] from OSF, and derivatives, including Paragon OSF/1 -+ SHLIB_CFLAGS="" -+ # Hack: make package name same as library name -+ SHLIB_LD='ld -R -export :' -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadOSF.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OSF1-1.*) -+ # OSF/1 1.3 from OSF using ELF, and derivatives, including AD2 -+ SHLIB_CFLAGS="-fPIC" -+ if test "$SHARED_BUILD" = "1" ; then -+ SHLIB_LD="ld -shared" -+ else -+ SHLIB_LD="ld -non_shared" -+ fi -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OSF1-V*) -+ # Digital OSF/1 -+ SHLIB_CFLAGS="" -+ if test "$SHARED_BUILD" = "1" ; then -+ SHLIB_LD='ld -shared -expect_unresolved "*"' -+ else -+ SHLIB_LD='ld -non_shared -expect_unresolved "*"' -+ fi -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}' -+ if test "$GCC" = "yes" ; then -+ CFLAGS="$CFLAGS -mieee" -+ else -+ CFLAGS="$CFLAGS -DHAVE_TZSET -std1 -ieee" -+ fi -+ # see pthread_intro(3) for pthread support on osf1, k.furukawa -+ if test "${TCL_THREADS}" = "1" ; then -+ CFLAGS="$CFLAGS -DHAVE_PTHREAD_ATTR_SETSTACKSIZE" -+ CFLAGS="$CFLAGS -DTCL_THREAD_STACK_MIN=PTHREAD_STACK_MIN*64" -+ LIBS=`echo $LIBS | sed s/-lpthreads//` -+ if test "$GCC" = "yes" ; then -+ LIBS="$LIBS -lpthread -lmach -lexc" -+ else -+ CFLAGS="$CFLAGS -pthread" -+ LDFLAGS="$LDFLAGS -pthread" -+ fi -+ fi -+ -+ ;; -+ QNX-6*) -+ # QNX RTP -+ # This may work for all QNX, but it was only reported for v6. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ # dlopen is in -lc on QNX -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ RISCos-*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".a" -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ ;; -+ SCO_SV-3.2*) -+ # Note, dlopen is available only on SCO 3.2.5 and greater. However, -+ # this test works, since "uname -s" was non-standard in 3.2.4 and -+ # below. -+ if test "$GCC" = "yes" ; then -+ SHLIB_CFLAGS="-fPIC -melf" -+ LDFLAGS="$LDFLAGS -melf -Wl,-Bexport" -+ else -+ SHLIB_CFLAGS="-Kpic -belf" -+ LDFLAGS="$LDFLAGS -belf -Wl,-Bexport" -+ fi -+ SHLIB_LD="ld -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ SINIX*5.4*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ SunOS-4*) -+ SHLIB_CFLAGS="-PIC" -+ SHLIB_LD="ld" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ -+ # SunOS can't handle version numbers with dots in them in library -+ # specs, like -ltcl7.5, so use -ltcl75 instead. Also, it -+ # requires an extra version number at the end of .so file names. -+ # So, the library has to have a name like libtcl75.so.1.0 -+ -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ SunOS-5.[0-6]*) -+ -+ # Note: If _REENTRANT isn't defined, then Solaris -+ # won't define thread-safe library routines. -+ -+ cat >>confdefs.h <<\_ACEOF -+#define _REENTRANT 1 -+_ACEOF -+ -+ cat >>confdefs.h <<\_ACEOF -+#define _POSIX_PTHREAD_SEMANTICS 1 -+_ACEOF - --#-------------------------------------------------------------------- --# This macro generates a line to use when building a library. It --# depends on values set by the SC_ENABLE_SHARED, SC_ENABLE_SYMBOLS, --# and SC_LOAD_TCLCONFIG macros above. --#-------------------------------------------------------------------- - -+ SHLIB_CFLAGS="-KPIC" - -- case "${host}" in -- *mingw32* | *windows32*) -- if test "${CC}" = "cl"; then -- MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(\$@_OBJECTS) " -- MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LDFLAGS} \${SHLIB_LD_LIBS} \$(LDFLAGS) -out:\$@ \$(\$@_OBJECTS) " -+ # Note: need the LIBS below, otherwise Tk won't find Tcl's -+ # symbols when dynamically loaded into tclsh. -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="$CC -shared" -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' - else -- MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(\$@_OBJECTS) " -- POST_MAKE_STATIC_LIB="\${RANLIB} \$@" -- MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(\$@_OBJECTS) \${SHLIB_LDFLAGS} \$(LDFLAGS) \${SHLIB_LD_LIBS} -Wl,--out-implib,\$(patsubst %.dll,lib%.a,\$@)" -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}' - fi - ;; -- *) -- MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(\$@_OBJECTS)" -- POST_MAKE_STATIC_LIB="\${RANLIB} \$@" -- MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(\$@_OBJECTS) \${SHLIB_LDFLAGS} \${SHLIB_LD_LIBS}" -+ SunOS-5*) -+ -+ # Note: If _REENTRANT isn't defined, then Solaris -+ # won't define thread-safe library routines. -+ -+ cat >>confdefs.h <<\_ACEOF -+#define _REENTRANT 1 -+_ACEOF -+ -+ cat >>confdefs.h <<\_ACEOF -+#define _POSIX_PTHREAD_SEMANTICS 1 -+_ACEOF -+ -+ -+ SHLIB_CFLAGS="-KPIC" -+ -+ # Check to enable 64-bit flags for compiler/linker -+ if test "$do64bit" = "yes" ; then -+ arch=`isainfo` -+ if test "$arch" = "sparcv9 sparc" ; then -+ if test "$GCC" = "yes" ; then -+ if test "`gcc -dumpversion` | awk -F. '{print }'" -lt "3" ; then -+ { echo "$as_me:$LINENO: WARNING: 64bit mode not supported with GCC < 3.2 on $system" >&5 -+echo "$as_me: WARNING: 64bit mode not supported with GCC < 3.2 on $system" >&2;} -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS -m64 -mcpu=v9" -+ LDFLAGS="$LDFLAGS -m64 -mcpu=v9" -+ SHLIB_CFLAGS="-fPIC" -+ fi -+ else -+ do64bit_ok=yes -+ if test "$do64bitVIS" = "yes" ; then -+ CFLAGS="$CFLAGS -xarch=v9a" -+ LDFLAGS="$LDFLAGS -xarch=v9a" -+ else -+ CFLAGS="$CFLAGS -xarch=v9" -+ LDFLAGS="$LDFLAGS -xarch=v9" -+ fi -+ fi -+ else -+ { echo "$as_me:$LINENO: WARNING: \"64bit mode only supported sparcv9 system\"" >&5 -+echo "$as_me: WARNING: \"64bit mode only supported sparcv9 system\"" >&2;} -+ fi -+ fi -+ -+ # Note: need the LIBS below, otherwise Tk won't find Tcl's -+ # symbols when dynamically loaded into tclsh. -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="$CC -shared" -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' -+ if test "$do64bit" = "yes" ; then -+ # We need to specify -static-libgcc or we need to -+ # add the path to the sparv9 libgcc. -+ # JH: static-libgcc is necessary for core Tcl, but may -+ # not be necessary for extensions. -+ SHLIB_LD="$SHLIB_LD -m64 -mcpu=v9 -static-libgcc" -+ # for finding sparcv9 libgcc, get the regular libgcc -+ # path, remove so name and append 'sparcv9' -+ #v9gcclibdir="`gcc -print-file-name=libgcc_s.so` | ..." -+ #LD_SEARCH_FLAGS="${LD_SEARCH_FLAGS},-R,$v9gcclibdir" -+ fi -+ else -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}' -+ fi -+ ;; -+ ULTRIX-4.*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_SUFFIX=".a" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ if test "$GCC" != "yes" ; then -+ CFLAGS="$CFLAGS -DHAVE_TZSET -std1" -+ fi -+ ;; -+ UNIX_SV* | UnixWare-5*) -+ SHLIB_CFLAGS="-KPIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ # Some UNIX_SV* systems (unixware 1.1.2 for example) have linkers -+ # that don't grok the -Bexport option. Test that it does. -+ hold_ldflags=$LDFLAGS -+ { echo "$as_me:$LINENO: checking for ld accepts -Bexport flag" >&5 -+echo $ECHO_N "checking for ld accepts -Bexport flag... $ECHO_C" >&6; } -+ LDFLAGS="$LDFLAGS -Wl,-Bexport" -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+int i; -+ ; -+ 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 "echo \"\$as_me:$LINENO: $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 -+ (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 -+ found=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ LDFLAGS=$hold_ldflags found=no -+fi -+ -+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ -+ conftest$ac_exeext conftest.$ac_ext -+ { echo "$as_me:$LINENO: result: $found" >&5 -+echo "${ECHO_T}$found" >&6; } -+ LD_SEARCH_FLAGS="" - ;; - esac - -- if test "${SHARED_BUILD}" = "1" ; then -- MAKE_LIB=${MAKE_SHARED_LIB} -- else -- MAKE_LIB=${MAKE_STATIC_LIB} -- POST_MAKE_LIB=${POST_MAKE_STATIC_LIB} -+ if test "$do64bit" = "yes" -a "$do64bit_ok" = "no" ; then -+ { echo "$as_me:$LINENO: WARNING: \"64bit support being disabled -- don\'t know magic for this platform\"" >&5 -+echo "$as_me: WARNING: \"64bit support being disabled -- don\'t know magic for this platform\"" >&2;} - fi - -+ # Step 4: If pseudo-static linking is in use (see K. B. Kenny, "Dynamic -+ # Loading for Tcl -- What Became of It?". Proc. 2nd Tcl/Tk Workshop, -+ # New Orleans, LA, Computerized Processes Unlimited, 1994), then we need -+ # to determine which of several header files defines the a.out file -+ # format (a.out.h, sys/exec.h, or sys/exec_aout.h). At present, we -+ # support only a file format that is more or less version-7-compatible. -+ # In particular, -+ # - a.out files must begin with `struct exec'. -+ # - the N_TXTOFF on the `struct exec' must compute the seek address -+ # of the text segment -+ # - The `struct exec' must contain a_magic, a_text, a_data, a_bss -+ # and a_entry fields. -+ # The following compilation should succeed if and only if either sys/exec.h -+ # or a.out.h is usable for the purpose. -+ # -+ # Note that the modified COFF format used on MIPS Ultrix 4.x is usable; the -+ # `struct exec' includes a second header that contains information that -+ # duplicates the v7 fields that are needed. -+ -+ if test "x$DL_OBJS" = "xtclLoadAout.o" ; then -+ { echo "$as_me:$LINENO: checking sys/exec.h" >&5 -+echo $ECHO_N "checking sys/exec.h... $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. */ -+#include -+int -+main () -+{ - -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_magic == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; - -+ ; -+ 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 -+ tcl_ok=usable -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -+ tcl_ok=unusable -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+ { echo "$as_me:$LINENO: result: $tcl_ok" >&5 -+echo "${ECHO_T}$tcl_ok" >&6; } -+ if test $tcl_ok = usable; then -+ cat >>confdefs.h <<\_ACEOF -+#define USE_SYS_EXEC_H 1 -+_ACEOF - -+ else -+ { echo "$as_me:$LINENO: checking a.out.h" >&5 -+echo $ECHO_N "checking a.out.h... $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. */ -+#include -+int -+main () -+{ - -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_magic == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; - --#-------------------------------------------------------------------- --# eval these two values to dereference the ${DBGX} variable. --#-------------------------------------------------------------------- -+ ; -+ 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 -+ tcl_ok=usable -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - --eval "SHARED_LIB_SUFFIX=${TCL_SHARED_LIB_SUFFIX}" --eval "UNSHARED_LIB_SUFFIX=${TCL_UNSHARED_LIB_SUFFIX}" -+ tcl_ok=unusable -+fi - --#-------------------------------------------------------------------- --# Shared libraries and static libraries have different names. --#-------------------------------------------------------------------- -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+ { echo "$as_me:$LINENO: result: $tcl_ok" >&5 -+echo "${ECHO_T}$tcl_ok" >&6; } -+ if test $tcl_ok = usable; then -+ cat >>confdefs.h <<\_ACEOF -+#define USE_A_OUT_H 1 -+_ACEOF - --# CYGNUS LOCAL -+ else -+ { echo "$as_me:$LINENO: checking sys/exec_aout.h" >&5 -+echo $ECHO_N "checking sys/exec_aout.h... $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. */ -+#include -+int -+main () -+{ - --if test "${SHARED_BUILD}" = "1" ; then -- # FIXME: Need to devise a TCL_TOOL macro to deal with this! -- case "${host}" in -- *cygwin* | *mingw32* | *windows32*) -- SHLIB_LD_LIBS="${TCL_BUILD_STUB_LIB_SPEC} ${TCL_SHLIB_LD_LIBS}" -- # Need to link to the .a or .lib not the .dll! -- -- libname=${PACKAGE} -- suffix=${SHARED_LIB_SUFFIX} -- -- case "${host}" in -- *windows32* | *mingw32* | *cygwin*) -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_midmag == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; -+ -+ ; -+ 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 -+ tcl_ok=usable -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- eval "long_libname=${long_libname}" -+ tcl_ok=unusable -+fi - -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+ { echo "$as_me:$LINENO: result: $tcl_ok" >&5 -+echo "${ECHO_T}$tcl_ok" >&6; } -+ if test $tcl_ok = usable; then -+ cat >>confdefs.h <<\_ACEOF -+#define USE_SYS_EXEC_AOUT_H 1 -+_ACEOF - -- ITCL_SHLIB_FILE=$long_libname -+ else -+ DL_OBJS="" -+ fi -+ fi -+ fi -+ fi - -+ # Step 5: disable dynamic loading if requested via a command-line switch. -+ -+ # Check whether --enable-load was given. -+if test "${enable_load+set}" = set; then -+ enableval=$enable_load; tcl_ok=$enableval -+else -+ tcl_ok=yes -+fi -+ -+ if test "$tcl_ok" = "no"; then -+ DL_OBJS="" -+ fi -+ -+ if test "x$DL_OBJS" != "x" ; then -+ BUILD_DLTEST="\$(DLTEST_TARGETS)" -+ else -+ echo "Can't figure out how to do dynamic loading or shared libraries" -+ echo "on this system." -+ SHLIB_CFLAGS="" -+ SHLIB_LD="" -+ SHLIB_SUFFIX="" -+ DL_OBJS="tclLoadNone.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS_ORIG" -+ LD_SEARCH_FLAGS="" -+ BUILD_DLTEST="" -+ fi -+ -+ # If we're running gcc, then change the C flags for compiling shared -+ # libraries to the right flags for gcc, instead of those for the -+ # standard manufacturer compiler. -+ -+ if test "$DL_OBJS" != "tclLoadNone.o" ; then -+ if test "$GCC" = "yes" ; then -+ case $system in -+ AIX-*) -+ ;; -+ BSD/OS*) -+ ;; -+ IRIX*) -+ ;; -+ NetBSD-*|FreeBSD-*) -+ ;; -+ Darwin-*) -+ ;; -+ RISCos-*) -+ ;; -+ SCO_SV-3.2*) -+ ;; -+ ULTRIX-4.*) -+ ;; -+ windows) -+ ;; -+ *) -+ SHLIB_CFLAGS="-fPIC" -+ ;; -+ esac -+ fi -+ fi -+ -+ if test "$SHARED_LIB_SUFFIX" = "" ; then -+ SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' -+ fi -+ if test "$UNSHARED_LIB_SUFFIX" = "" ; then -+ UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' -+ fi - -- libname=${PACKAGE} -- suffix=${UNSHARED_LIB_SUFFIX} - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- else -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- fi -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac - -- eval "long_libname=${long_libname}" - -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" - -- ITCL_LIB_FILE=$long_libname - -- ITCL_TARGET_FILE=${ITCL_SHLIB_FILE} -- ;; -- *) -- SHLIB_LD_LIBS="${TCL_BUILD_LIB_SPEC}" - -- libname=${PACKAGE} -- suffix=${SHARED_LIB_SUFFIX} - -- case "${host}" in -- *windows32* | *mingw32* | *cygwin*) -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac - -- eval "long_libname=${long_libname}" - -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" - -- ITCL_LIB_FILE=$long_libname - -- ITCL_TARGET_FILE=${ITCL_LIB_FILE} -- ;; -- esac --else - -- libname=${PACKAGE} -- suffix=${UNSHARED_LIB_SUFFIX} - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- else -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- fi -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac -+ # These must be called after we do the basic CFLAGS checks and -+ # verify any possible 64-bit or similar switches are necessary -+ -+ { echo "$as_me:$LINENO: checking for required early compiler flags" >&5 -+echo $ECHO_N "checking for required early compiler flags... $ECHO_C" >&6; } -+ tcl_flags="" -+ -+ if test "${tcl_cv_flag__isoc99_source+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. */ -+#include -+int -+main () -+{ -+char *p = (char *)strtoll; char *q = (char *)strtoull; -+ ; -+ 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 -+ tcl_cv_flag__isoc99_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- eval "long_libname=${long_libname}" -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#define _ISOC99_SOURCE 1 -+#include -+int -+main () -+{ -+char *p = (char *)strtoll; char *q = (char *)strtoull; -+ ; -+ 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 -+ tcl_cv_flag__isoc99_source=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" -+ tcl_cv_flag__isoc99_source=no -+fi - -- ITCL_LIB_FILE=$long_libname -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -- ITCL_TARGET_FILE=${ITCL_LIB_FILE} -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - -+ if test "x${tcl_cv_flag__isoc99_source}" = "xyes" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define _ISOC99_SOURCE 1 -+_ACEOF - -- libname=${PACKAGE}stub -- suffix=${UNSHARED_LIB_SUFFIX} -+ tcl_flags="$tcl_flags _ISOC99_SOURCE" -+ fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- eval "long_libname=\"${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- else -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- fi -- ;; -- *) -- eval "long_libname=\"lib${TCL_VENDOR_PREFIX}${libname}${suffix}\"" -- ;; -- esac - -- eval "long_libname=${long_libname}" -+ if test "${tcl_cv_flag__largefile64_source+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. */ -+#include -+int -+main () -+{ -+struct stat64 buf; int i = stat64("/", &buf); -+ ; -+ 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 -+ tcl_cv_flag__largefile64_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#define _LARGEFILE64_SOURCE 1 -+#include -+int -+main () -+{ -+struct stat64 buf; int i = stat64("/", &buf); -+ ; -+ 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 -+ tcl_cv_flag__largefile64_source=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ tcl_cv_flag__largefile64_source=no -+fi - -- # Trick to replace DBGX with TCL_DBGX -- DBGX='${TCL_DBGX}' -- eval "long_libname=${long_libname}" -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -- ITCL_STUB_LIB_FILE=$long_libname -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -+ if test "x${tcl_cv_flag__largefile64_source}" = "xyes" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define _LARGEFILE64_SOURCE 1 -+_ACEOF - -+ tcl_flags="$tcl_flags _LARGEFILE64_SOURCE" -+ fi - -+ if test "x${tcl_flags}" = "x" ; then -+ { echo "$as_me:$LINENO: result: none" >&5 -+echo "${ECHO_T}none" >&6; } -+ else -+ { echo "$as_me:$LINENO: result: ${tcl_flags}" >&5 -+echo "${ECHO_T}${tcl_flags}" >&6; } -+ fi - - -+ { echo "$as_me:$LINENO: checking for 64-bit integer type" >&5 -+echo $ECHO_N "checking for 64-bit integer type... $ECHO_C" >&6; } -+ if test "${tcl_cv_type_64bit+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- libname=${PACKAGE} -- version=${VERSION} -+ tcl_cv_type_64bit=none -+ # See if the compiler knows natively about __int64 -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ - -- # If the . character is not allowed in lib name, remove it from version -- if test "${TCL_LIB_VERSIONS_OK}" != "ok"; then -- version=`echo $version | tr -d .` -- fi -+int -+main () -+{ -+__int64 value = (__int64) 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 -+ tcl_type_64bit=__int64 -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- short_libname="-l${TCL_VENDOR_PREFIX}${libname}${version}\${TCL_DBGX}" -- ITCL_LIB_FLAG=$short_libname -+ tcl_type_64bit="long long" -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+ # See if we should use long anyway Note that we substitute in the -+ # type that is our current guess for a 64-bit type inside this check -+ # program, so it should be modified only carefully... -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ - -- libname=${PACKAGE}stub -- version=${VERSION} -+int -+main () -+{ -+switch (0) { -+ case 1: case (sizeof(${tcl_type_64bit})==sizeof(long)): ; -+ } -+ ; -+ 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 -+ tcl_cv_type_64bit=${tcl_type_64bit} -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- # If the . character is not allowed in lib name, remove it from version -- if test "${TCL_LIB_VERSIONS_OK}" != "ok"; then -- version=`echo $version | tr -d .` -- fi - -- short_libname="-l${TCL_VENDOR_PREFIX}${libname}${version}\${TCL_DBGX}" -- ITCL_STUB_LIB_FLAG=$short_libname -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -+ if test "${tcl_cv_type_64bit}" = none ; then -+ cat >>confdefs.h <<\_ACEOF -+#define TCL_WIDE_INT_IS_LONG 1 -+_ACEOF - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -+ { echo "$as_me:$LINENO: result: using long" >&5 -+echo "${ECHO_T}using long" >&6; } -+ elif test "${tcl_cv_type_64bit}" = "__int64" \ -+ -a "${TEA_PLATFORM}" = "windows" ; then -+ # We actually want to use the default tcl.h checks in this -+ # case to handle both TCL_WIDE_INT_TYPE and TCL_LL_MODIFIER* -+ { echo "$as_me:$LINENO: result: using Tcl header defaults" >&5 -+echo "${ECHO_T}using Tcl header defaults" >&6; } -+ else -+ cat >>confdefs.h <<_ACEOF -+#define TCL_WIDE_INT_TYPE ${tcl_cv_type_64bit} -+_ACEOF - -- val="`pwd`/${ITCL_LIB_FLAG}" -+ { echo "$as_me:$LINENO: result: ${tcl_cv_type_64bit}" >&5 -+echo "${ECHO_T}${tcl_cv_type_64bit}" >&6; } - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_BUILD_LIB_SPEC" >&5 --echo "$as_me: error: Empty value for variable ITCL_BUILD_LIB_SPEC" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ # Now check for auxiliary declarations -+ { echo "$as_me:$LINENO: checking for struct dirent64" >&5 -+echo $ECHO_N "checking for struct dirent64... $ECHO_C" >&6; } -+ if test "${tcl_cv_struct_dirent64+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_BUILD_LIB_SPEC=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_BUILD_LIB_SPEC="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_BUILD_LIB_SPEC=$val -- ;; -- esac -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+#include -+int -+main () -+{ -+struct dirent64 p; -+ ; -+ 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 -+ tcl_cv_struct_dirent64=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- else -+ tcl_cv_struct_dirent64=no -+fi - -- val=`pwd` -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable dirname" >&5 --echo "$as_me: error: Empty value for variable dirname" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ if test "x${tcl_cv_struct_dirent64}" = "xyes" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_STRUCT_DIRENT64 1 -+_ACEOF - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- dirname=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- dirname="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- dirname=$val -- ;; -- esac -+ fi -+ { echo "$as_me:$LINENO: result: ${tcl_cv_struct_dirent64}" >&5 -+echo "${ECHO_T}${tcl_cv_struct_dirent64}" >&6; } - -- ITCL_BUILD_LIB_SPEC="-L${dirname} ${ITCL_LIB_FLAG}" -- fi -- ;; -- *) -- ITCL_BUILD_LIB_SPEC="-L`pwd` ${ITCL_LIB_FLAG}" -- ;; -- esac -+ { echo "$as_me:$LINENO: checking for struct stat64" >&5 -+echo $ECHO_N "checking for struct stat64... $ECHO_C" >&6; } -+ if test "${tcl_cv_struct_stat64+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. */ -+#include -+int -+main () -+{ -+struct stat64 p; - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- -- val="`pwd`/${ITCL_STUB_LIB_FLAG}" -- -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_BUILD_STUB_LIB_SPEC" >&5 --echo "$as_me: error: Empty value for variable ITCL_BUILD_STUB_LIB_SPEC" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ ; -+ 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 -+ tcl_cv_struct_stat64=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_BUILD_STUB_LIB_SPEC=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_BUILD_STUB_LIB_SPEC="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_BUILD_STUB_LIB_SPEC=$val -- ;; -- esac -+ tcl_cv_struct_stat64=no -+fi - -- else -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -- val=`pwd` -+ if test "x${tcl_cv_struct_stat64}" = "xyes" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_STRUCT_STAT64 1 -+_ACEOF - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable dirname" >&5 --echo "$as_me: error: Empty value for variable dirname" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ fi -+ { echo "$as_me:$LINENO: result: ${tcl_cv_struct_stat64}" >&5 -+echo "${ECHO_T}${tcl_cv_struct_stat64}" >&6; } - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- dirname=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- dirname="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- dirname=$val -- ;; -- esac -+ { echo "$as_me:$LINENO: checking for off64_t" >&5 -+echo $ECHO_N "checking for off64_t... $ECHO_C" >&6; } -+ if test "${tcl_cv_type_off64_t+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- ITCL_BUILD_STUB_LIB_SPEC="-L${dirname} ${ITCL_STUB_LIB_FLAG}" -- fi -- ;; -- *) -- ITCL_BUILD_STUB_LIB_SPEC="-L`pwd` ${ITCL_STUB_LIB_FLAG}" -- ;; -- esac -+ cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+#include -+int -+main () -+{ -+off64_t offset; - -+ ; -+ 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 -+ tcl_cv_type_off64_t=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 - -+ tcl_cv_type_off64_t=no -+fi - -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+fi - -+ if test "x${tcl_cv_type_off64_t}" = "xyes" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define HAVE_TYPE_OFF64_T 1 -+_ACEOF - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- -- val="${exec_prefix}/lib/${ITCL_LIB_FLAG}" -- -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_LIB_SPEC" >&5 --echo "$as_me: error: Empty value for variable ITCL_LIB_SPEC" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ fi -+ { echo "$as_me:$LINENO: result: ${tcl_cv_type_off64_t}" >&5 -+echo "${ECHO_T}${tcl_cv_type_off64_t}" >&6; } -+ fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_LIB_SPEC=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_LIB_SPEC="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_LIB_SPEC=$val -- ;; -- esac - -- else - -- val=${exec_prefix}/lib -+#-------------------------------------------------------------------- -+# Set the default compiler switches based on the --enable-symbols -+# option. -+#-------------------------------------------------------------------- - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable dirname" >&5 --echo "$as_me: error: Empty value for variable dirname" >&2;} -- { (exit 1); exit 1; }; } -- fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- dirname=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- dirname="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- dirname=$val -- ;; -- esac - -- ITCL_LIB_SPEC="-L${dirname} ${ITCL_LIB_FLAG}" -- fi -- ;; -- *) -- ITCL_LIB_SPEC="-L${exec_prefix}/lib ${ITCL_LIB_FLAG}" -- ;; -- esac - -+ DBGX="" - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "$GCC" != yes; then -- -- val="${exec_prefix}/lib/${ITCL_STUB_LIB_FLAG}" -- -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_STUB_LIB_SPEC" >&5 --echo "$as_me: error: Empty value for variable ITCL_STUB_LIB_SPEC" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ { echo "$as_me:$LINENO: checking for build with symbols" >&5 -+echo $ECHO_N "checking for build with symbols... $ECHO_C" >&6; } -+ # Check whether --enable-symbols was given. -+if test "${enable_symbols+set}" = set; then -+ enableval=$enable_symbols; tcl_ok=$enableval -+else -+ tcl_ok=no -+fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_STUB_LIB_SPEC=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_STUB_LIB_SPEC="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_STUB_LIB_SPEC=$val -- ;; -- esac -+ if test "$tcl_ok" = "no"; then -+ CFLAGS_DEFAULT="${CFLAGS_OPTIMIZE}" -+ LDFLAGS_DEFAULT="${LDFLAGS_OPTIMIZE}" -+ { echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6; } -+ else -+ CFLAGS_DEFAULT="${CFLAGS_DEBUG}" -+ LDFLAGS_DEFAULT="${LDFLAGS_DEBUG}" -+ if test "$tcl_ok" = "yes"; then -+ { echo "$as_me:$LINENO: result: yes (standard debugging)" >&5 -+echo "${ECHO_T}yes (standard debugging)" >&6; } -+ fi -+ fi -+ if test "${TEA_PLATFORM}" != "windows" ; then -+ LDFLAGS_DEFAULT="${LDFLAGS}" -+ fi - -- else - -- val=${exec_prefix}/lib - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable dirname" >&5 --echo "$as_me: error: Empty value for variable dirname" >&2;} -- { (exit 1); exit 1; }; } -- fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- dirname=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- dirname="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- dirname=$val -- ;; -- esac - -- ITCL_STUB_LIB_SPEC="-L${dirname} ${ITCL_STUB_LIB_FLAG}" -- fi -- ;; -- *) -- ITCL_STUB_LIB_SPEC="-L${exec_prefix}/lib ${ITCL_STUB_LIB_FLAG}" -- ;; -- esac -+ if test "$tcl_ok" = "mem" -o "$tcl_ok" = "all"; then -+ cat >>confdefs.h <<\_ACEOF -+#define TCL_MEM_DEBUG 1 -+_ACEOF - -+ fi - -+ if test "$tcl_ok" != "yes" -a "$tcl_ok" != "no"; then -+ if test "$tcl_ok" = "all"; then -+ { echo "$as_me:$LINENO: result: enabled symbols mem debugging" >&5 -+echo "${ECHO_T}enabled symbols mem debugging" >&6; } -+ else -+ { echo "$as_me:$LINENO: result: enabled $tcl_ok debugging" >&5 -+echo "${ECHO_T}enabled $tcl_ok debugging" >&6; } -+ fi -+ fi - - -+#-------------------------------------------------------------------- -+# Everyone should be linking against the Tcl stub library. If you -+# can't for some reason, remove this definition. If you aren't using -+# stubs, you also need to modify the SHLIB_LD_LIBS setting below to -+# link against the non-stubbed Tcl library. -+#-------------------------------------------------------------------- - -+if test "${SHARED_BUILD}" = "1" ; then -+ cat >>confdefs.h <<\_ACEOF -+#define USE_TCL_STUBS 1 -+_ACEOF - -- val="`pwd`/${ITCL_LIB_FILE}" -+fi - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_LIB_FULL_PATH" >&5 --echo "$as_me: error: Empty value for variable ITCL_LIB_FULL_PATH" >&2;} -- { (exit 1); exit 1; }; } -- fi -+#-------------------------------------------------------------------- -+# This macro generates a line to use when building a library. It -+# depends on values set by the TEA_ENABLE_SHARED, TEA_ENABLE_SYMBOLS, -+# and TEA_LOAD_TCLCONFIG macros above. -+#-------------------------------------------------------------------- - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_LIB_FULL_PATH=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_LIB_FULL_PATH="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_LIB_FULL_PATH=$val -- ;; -- esac - -+ if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then -+ MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" -+ MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" -+ MAKE_STUB_LIB="\${STLIB_LD} -out:\$@ \$(PKG_STUB_OBJECTS)" -+ else -+ MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" -+ MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" -+ MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" -+ fi - -+ if test "${SHARED_BUILD}" = "1" ; then -+ MAKE_LIB="${MAKE_SHARED_LIB} " -+ else -+ MAKE_LIB="${MAKE_STATIC_LIB} " -+ fi - -+ #-------------------------------------------------------------------- -+ # Shared libraries and static libraries have different names. -+ # Use the double eval to make sure any variables in the suffix is -+ # substituted. (@@@ Might not be necessary anymore) -+ #-------------------------------------------------------------------- -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ if test "${SHARED_BUILD}" = "1" ; then -+ # We force the unresolved linking of symbols that are really in -+ # the private libraries of Tcl and Tk. -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" -+ if test x"${TK_BIN_DIR}" != x ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" -+ fi -+ eval eval "PKG_LIB_FILE=${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" -+ else -+ eval eval "PKG_LIB_FILE=${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" -+ fi -+ # Some packages build there own stubs libraries -+ if test "$GCC" = "yes"; then -+ eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ else -+ eval eval "PKG_STUB_LIB_FILE=${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ fi - -- val="`pwd`/${ITCL_STUB_LIB_FILE}" -+ # These aren't needed on Windows (either MSVC or gcc) -+ RANLIB=: -+ RANLIB_STUB=: -+ else -+ RANLIB_STUB="${RANLIB}" -+ if test "${SHARED_BUILD}" = "1" ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" -+ if test x"${TK_BIN_DIR}" != x ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" -+ fi -+ eval eval "PKG_LIB_FILE=lib${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" -+ RANLIB=: -+ else -+ eval eval "PKG_LIB_FILE=lib${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" -+ fi -+ # Some packages build there own stubs libraries -+ eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ fi - -- if test "$val" = "" ; then -- { { echo "$as_me:$LINENO: error: Empty value for variable ITCL_STUB_LIB_FULL_PATH" >&5 --echo "$as_me: error: Empty value for variable ITCL_STUB_LIB_FULL_PATH" >&2;} -- { (exit 1); exit 1; }; } -- fi -+ # These are escaped so that only CFLAGS is picked up at configure time. -+ # The other values will be substituted at make time. -+ CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" -+ if test "${SHARED_BUILD}" = "1" ; then -+ CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" -+ fi - -- case "${host}" in -- *windows32* | *mingw32*) -- if test "${CYGPATH}" = ""; then -- { { echo "$as_me:$LINENO: error: CYGPATH variable is not defined." >&5 --echo "$as_me: error: CYGPATH variable is not defined." >&2;} -- { (exit 1); exit 1; }; } -- elif test "${CYGPATH}" = "echo"; then -- # No cygpath when cross compiling -- ITCL_STUB_LIB_FULL_PATH=$val -- else -- # store literal argument text in a variable -- val=$val -- # Convert Cygwin to Windows path (/tmp/foo -> C:\Tmp\foo) -- val="`${CYGPATH} $val`" -- # Convert path like C:\Tmp\foo to C:/Tmp/foo -- ITCL_STUB_LIB_FULL_PATH="`echo $val | sed -e s#\\\\\\\\#/#g`" -- fi -- ;; -- *) -- # Default to a no-op under Unix or Cygwin gcc -- ITCL_STUB_LIB_FULL_PATH=$val -- ;; -- esac - - - - - --itclstub_LIB_FILE=${ITCL_STUB_LIB_FILE} --itcl_LIB_FILE=${ITCL_TARGET_FILE} - --# END CYGNUS LOCAL - - #-------------------------------------------------------------------- - # __CHANGE__ -@@ -3742,64 +9773,103 @@ - # library. - #-------------------------------------------------------------------- - -- -+itcl_STUB_LIB_FILE=${PKG_STUB_LIB_FILE} -+itcl_LIB_FILE=${PKG_LIB_FILE} - - - - #-------------------------------------------------------------------- --# Cache the stub library name so that the itk configure script can pick --# it up. -+# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl -+# file during the install process. Don't run the TCLSH_PROG through -+# ${CYGPATH} because it's being used directly by make. -+# Require that we use a tclsh shell version 8.2 or later since earlier -+# versions have bugs in the pkg_mkIndex routine. - #-------------------------------------------------------------------- - --if test "${ac_cv_itclstub_LIB_FILE+set}" = set; then -+ -+ # Allow the user to provide this setting in the env -+ if test "x${TCLSH_PROG}" = "x" ; then -+ { echo "$as_me:$LINENO: checking for tclsh" >&5 -+echo $ECHO_N "checking for tclsh... $ECHO_C" >&6; } -+ -+ if test "${ac_cv_path_tclsh+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_cv_itclstub_LIB_FILE=${itclstub_LIB_FILE} -+ -+ search_path=`echo ${PATH} | sed -e 's/:/ /g'` -+ if test "${TEA_PLATFORM}" != "windows" -o \ -+ \( "$do64bit_ok" = "no" -a "$doWince" = "no" \) ; then -+ # Do not allow target tclsh in known cross-compile builds, -+ # as we need one we can run on this system -+ search_path="${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin ${exec_prefix}/bin ${prefix}/bin ${search_path}" -+ fi -+ for dir in $search_path ; do -+ for j in `ls -r $dir/tclsh[8-9]*${EXEEXT} 2> /dev/null` \ -+ `ls -r $dir/tclsh*${EXEEXT} 2> /dev/null` ; do -+ if test x"$ac_cv_path_tclsh" = x ; then -+ if test -f "$j" ; then -+ ac_cv_path_tclsh=$j -+ break -+ fi -+ fi -+ done -+ done -+ - fi - - --#-------------------------------------------------------------------- --# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl --# file during the install process. Don't run the TCLSH_PROG through --# ${CYGPATH} because it's being used directly by make. --# Require that we use a tclsh shell version 8.2 or later since earlier --# versions have bugs in the pkg_mkIndex routine. --#-------------------------------------------------------------------- -+ if test -f "$ac_cv_path_tclsh" ; then -+ TCLSH_PROG=$ac_cv_path_tclsh -+ { echo "$as_me:$LINENO: result: $TCLSH_PROG" >&5 -+echo "${ECHO_T}$TCLSH_PROG" >&6; } -+ else -+ { { echo "$as_me:$LINENO: error: No tclsh found in PATH: $search_path" >&5 -+echo "$as_me: error: No tclsh found in PATH: $search_path" >&2;} -+ { (exit 1); exit 1; }; } -+ fi -+ fi -+ - --# CYGNUS LOCAL --# A Tcl shell is not available when bootstrapping! --# END CYGNUS LOCAL - - #-------------------------------------------------------------------- --# Finally, substitute all of the various values into the Makefile. -+# These are for itclConfig.sh - #-------------------------------------------------------------------- - --# CYGNUS LOCAL -- --# Note: The itclConfig.sh file below is not included in the net release. --# We subst these variables to retain compatibility with the previous --# version of itclConfig.sh. -- --ITCL_VERSION=${VERSION} -+# pkglibdir must be a fully qualified path and (not ${exec_prefix}/lib) -+eval pkglibdir="${libdir}/${PACKAGE_NAME}${PACKAGE_VERSION}" -+if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then -+ eval itcl_LIB_FLAG="-litcl${PACKAGE_VERSION}${DBGX}" -+ eval itcl_STUB_LIB_FLAG="-litclstub${PACKAGE_VERSION}${DBGX}" -+else -+ eval itcl_LIB_FLAG="-litcl`echo ${PACKAGE_VERSION} | tr -d .`${DBGX}" -+ eval itcl_STUB_LIB_FLAG="-litclstub`echo ${PACKAGE_VERSION} | tr -d .`${DBGX}" -+fi -+itcl_BUILD_LIB_SPEC="-L`pwd` ${itcl_LIB_FLAG}" -+itcl_LIB_SPEC="-L${pkglibdir} ${itcl_LIB_FLAG}" - -+itcl_BUILD_STUB_LIB_SPEC="-L`pwd` ${itcl_STUB_LIB_FLAG}" -+itcl_STUB_LIB_SPEC="-L${pkglibdir} ${itcl_STUB_LIB_FLAG}" -+itcl_BUILD_STUB_LIB_PATH="`pwd`/${itcl_STUB_LIB_FILE}" -+itcl_STUB_LIB_PATH="${pkglibdir}/${itcl_STUB_LIB_FILE}" - --ITCL_MAJOR_VERSION=${MAJOR_VERSION} - - --ITCL_MINOR_VERSION=${MINOR_VERSION} - - --ITCL_RELEASE_LEVEL=${PATCHLEVEL} - - --ITCL_SRC_DIR=${ITCL_SRC_DIR_NATIVE} - -+# itcl_SRC_DIR must be a fully qualified path -+eval itcl_SRC_DIR="$srcdir" -+itcl_SRC_DIR=`cd "${itcl_SRC_DIR}"; pwd` - --ITCL_SH=NONE - -+#-------------------------------------------------------------------- -+# Finally, substitute all of the various values into the Makefile. -+#-------------------------------------------------------------------- - -+ac_config_files="$ac_config_files Makefile pkgIndex.tcl itclConfig.sh" - -- ac_config_files="$ac_config_files Makefile itclConfig.sh pkgIndex.tcl" - 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 -@@ -3818,39 +9888,58 @@ - - # The following way of writing the cache mishandles newlines in values, - # but we know of no workaround that is simple, portable, and efficient. --# So, don't put newlines in cache variables' values. -+# 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_*) { 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;} ;; -+ esac -+ case $ac_var in #( -+ _ | IFS | as_nl) ;; #( -+ *) $as_unset $ac_var ;; -+ esac ;; -+ esac -+ done -+ - (set) 2>&1 | -- case `(ac_space=' '; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -+ 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 \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; -- esac; --} | -+ esac | -+ sort -+) | - sed ' -+ /^ac_cv_env_/b end - t clear -- : clear -+ :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end -- /^ac_cv_env/!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" && echo "updating cache $cache_file" -+ 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" && -+ { echo "$as_me:$LINENO: updating cache $cache_file" >&5 -+echo "$as_me: updating cache $cache_file" >&6;} - cat confcache >$cache_file - else -- echo "not updating unwritable cache $cache_file" -+ { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 -+echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi - fi - rm -f confcache -@@ -3859,63 +9948,48 @@ - # Let make expand exec_prefix. - test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - --# 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 -- - # Transform confdefs.h into DEFS. - # Protect against shell expansion while executing Makefile rules. - # Protect against Makefile macro expansion. - # - # If the first sed substitution is executed (which looks for macros that --# take arguments), then we branch to the quote section. Otherwise, -+# take arguments), then branch to the quote section. Otherwise, - # look for a macro that doesn't take arguments. --cat >confdef2opt.sed <<\_ACEOF -+ac_script=' - t clear --: clear --s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g -+:clear -+s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g - t quote --s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g -+s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g - t quote --d --: quote --s,[ `~#$^&*(){}\\|;'"<>?],\\&,g --s,\[,\\&,g --s,\],\\&,g --s,\$,$$,g --p --_ACEOF --# We use echo to avoid assuming a particular line-breaking character. --# The extra dot is to prevent the shell from consuming trailing --# line-breaks from the sub-command output. A line-break within --# single-quotes doesn't work because, if this script is created in a --# platform that uses two characters for line-breaks (e.g., DOS), tr --# would break. --ac_LF_and_DOT=`echo; echo .` --DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` --rm -f confdef2opt.sed -+b any -+:quote -+s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g -+s/\[/\\&/g -+s/\]/\\&/g -+s/\$/$$/g -+H -+:any -+${ -+ g -+ s/^\n// -+ s/\n/ /g -+ p -+} -+' -+DEFS=`sed -n "$ac_script" confdefs.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_i=`echo "$ac_i" | -- sed 's/\$U\././;s/\.o$//;s/\.obj$//'` -- # 2. Add them. -- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" -- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' -+ ac_i=`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 - -@@ -3946,17 +10020,45 @@ - ## M4sh Initialization. ## - ## --------------------- ## - --# Be Bourne compatible -+# 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=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix -+ 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 -+ -+# 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=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh - fi --DUALCASE=1; export DUALCASE # for MKS sh - - # Support unset when possible. - if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -@@ -3966,8 +10068,43 @@ - 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.) -+as_nl=' -+' -+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 -+ 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. --$as_unset ENV MAIL MAILPATH -+for as_var in ENV MAIL MAILPATH -+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -+done - PS1='$ ' - PS2='> ' - PS4='+ ' -@@ -3981,18 +10118,19 @@ - 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 -+ ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi - done - - # Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; then -+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 -+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename - else - as_basename=false -@@ -4000,159 +10138,120 @@ - - - # Name of the executable. --as_me=`$as_basename "$0" || -+as_me=`$as_basename -- "$0" || - $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)$' \| \ -- . : '\(.\)' 2>/dev/null || -+ X"$0" : 'X\(/\)' \| . 2>/dev/null || - echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- -- --# PATH needs CR, and LINENO needs CR and PATH. --# 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 -+ sed '/^.*\/\([^/][^/]*\)\/*$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\/\)$/{ -+ s//\1/ -+ q -+ } -+ /^X\/\(\/\).*/{ -+ s//\1/ -+ q -+ } -+ s/.*/./; q'` - --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh --fi -+# CDPATH. -+$as_unset CDPATH - - -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 - -- ;; -- 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 -- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 --echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -- 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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -- /*) -- if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -+ 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, and appends trailing '-' during -- # substitution so that $LINENO is not a special case at line end. -+ # 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -+ # 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 -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -+ :loop -+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -+ s/-\n.*// - ' >$as_me.lineno && -- chmod +x $as_me.lineno || -- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 --echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} -+ chmod +x "$as_me.lineno" || -+ { 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 sensible to this). -- . ./$as_me.lineno -+ # original and so on. Autoconf is especially sensitive to this). -+ . "./$as_me.lineno" - # Exit status is that of the last command. - exit - } - - --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -+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; then -+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 -+fi - echo >conf$$.file - if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -+ 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' -- else -- as_ln_s='ln -s' -- fi - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi --rm -f conf$$ conf$$.exe conf$$.file -+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=: -@@ -4161,7 +10260,28 @@ - as_mkdir_p=false - fi - --as_executable_p="test -f" -+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'" -@@ -4170,31 +10290,14 @@ - as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH -- - exec 6>&1 - --# Open the log real soon, to keep \$[0] and so on meaningful, and to -+# 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. Logging --version etc. is OK. --exec 5>>config.log --{ -- echo -- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX --## Running $as_me. ## --_ASBOX --} >&5 --cat >&5 <<_CSEOF -- --This file was extended by $as_me, which was --generated by GNU Autoconf 2.59. Invocation command line was -+# values after options handling. -+ac_log=" -+This file was extended by itcl $as_me 3.3, which was -+generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS -@@ -4202,30 +10305,18 @@ - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - --_CSEOF --echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 --echo >&5 -+on `(hostname || uname -n) 2>/dev/null | sed 1q` -+" -+ - _ACEOF - -+cat >>$CONFIG_STATUS <<_ACEOF - # Files that config.status was made for. --if test -n "$ac_config_files"; then -- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS --fi -+config_files="$ac_config_files" - --if test -n "$ac_config_headers"; then -- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_links"; then -- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_commands"; then -- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS --fi -+_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -- - ac_cs_usage="\ - \`$as_me' instantiates files from templates according to the - current configuration. -@@ -4233,7 +10324,7 @@ - Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit -- -V, --version print version number, then exit -+ -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions -@@ -4244,19 +10335,21 @@ - $config_files - - Report bugs to ." --_ACEOF - -+_ACEOF - cat >>$CONFIG_STATUS <<_ACEOF - ac_cs_version="\\ --config.status --configured by $0, generated by GNU Autoconf 2.59, -- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" -+itcl config.status 3.3 -+configured by $0, generated by GNU Autoconf 2.61, -+ with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - --Copyright (C) 2003 Free Software Foundation, Inc. -+Copyright (C) 2006 Free Software Foundation, Inc. - This config.status script is free software; the Free Software Foundation - gives unlimited permission to copy, distribute and modify it." --srcdir=$srcdir --INSTALL="$INSTALL" -+ -+ac_pwd='$ac_pwd' -+srcdir='$srcdir' -+INSTALL='$INSTALL' - _ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -@@ -4267,60 +10360,42 @@ - do - case $1 in - --*=*) -- ac_option=`expr "x$1" : 'x\([^=]*\)='` -- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` -+ ac_option=`expr "X$1" : 'X\([^=]*\)='` -+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; -- -*) -+ *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; -- *) # This is not an option, so the user has probably given explicit -- # arguments. -- ac_option=$1 -- ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; -- --version | --vers* | -V ) -- echo "$ac_cs_version"; exit 0 ;; -- --he | --h) -- # Conflict between --help and --header -- { { echo "$as_me:$LINENO: error: ambiguous option: $1 --Try \`$0 --help' for more information." >&5 --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 0 ;; -- --debug | --d* | -d ) -+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) -+ echo "$ac_cs_version"; exit ;; -+ --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; -- --header | --heade | --head | --hea ) -- $ac_shift -- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" -- ac_need_defaults=false;; -+ --he | --h | --help | --hel | -h ) -+ 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:$LINENO: error: unrecognized option: $1 --Try \`$0 --help' for more information." >&5 --echo "$as_me: error: unrecognized option: $1 --Try \`$0 --help' for more information." >&2;} -+ -*) { 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_config_targets="$ac_config_targets $1" -+ ac_need_defaults=false ;; - - esac - shift -@@ -4336,30 +10411,44 @@ - _ACEOF - cat >>$CONFIG_STATUS <<_ACEOF - if \$ac_cs_recheck; then -- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -+ echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -+ CONFIG_SHELL=$SHELL -+ export CONFIG_SHELL -+ exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - fi - - _ACEOF -+cat >>$CONFIG_STATUS <<\_ACEOF -+exec 5>>config.log -+{ -+ echo -+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -+## Running $as_me. ## -+_ASBOX -+ echo "$ac_log" -+} >&5 - -- -- -- -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF -+ -+# Handling of arguments. - for ac_config_target in $ac_config_targets - do -- case "$ac_config_target" in -- # Handling of arguments. -- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; -- "itclConfig.sh" ) CONFIG_FILES="$CONFIG_FILES itclConfig.sh" ;; -- "pkgIndex.tcl" ) CONFIG_FILES="$CONFIG_FILES pkgIndex.tcl" ;; -+ case $ac_config_target in -+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; -+ "pkgIndex.tcl") CONFIG_FILES="$CONFIG_FILES pkgIndex.tcl" ;; -+ "itclConfig.sh") CONFIG_FILES="$CONFIG_FILES itclConfig.sh" ;; -+ - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 - 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 -@@ -4369,371 +10458,479 @@ - fi - - # Have a temporary directory for convenience. Make it in the build tree --# simply because there is no reason to put it here, and in addition, -+# simply because there is no reason against having it here, and in addition, - # creating and moving files from /tmp can sometimes cause problems. --# Create a temporary directory, and hook for its removal unless debugging. -+# 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 || - { -- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ 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 -q "./confstatXXXXXX") 2>/dev/null` && -+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" - } || - { -- tmp=./confstat$$-$RANDOM -- (umask 077 && mkdir $tmp) -+ tmp=./conf$$-$RANDOM -+ (umask 077 && mkdir "$tmp") - } || - { - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } - } - --_ACEOF -- --cat >>$CONFIG_STATUS <<_ACEOF -- - # --# CONFIG_FILES section. -+# 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 --if test -n "\$CONFIG_FILES"; then -- # Protect against being on the right side of a sed subst in config.status. -- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; -- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF --s,@SHELL@,$SHELL,;t t --s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t --s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t --s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t --s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t --s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t --s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t --s,@exec_prefix@,$exec_prefix,;t t --s,@prefix@,$prefix,;t t --s,@program_transform_name@,$program_transform_name,;t t --s,@bindir@,$bindir,;t t --s,@sbindir@,$sbindir,;t t --s,@libexecdir@,$libexecdir,;t t --s,@datadir@,$datadir,;t t --s,@sysconfdir@,$sysconfdir,;t t --s,@sharedstatedir@,$sharedstatedir,;t t --s,@localstatedir@,$localstatedir,;t t --s,@libdir@,$libdir,;t t --s,@includedir@,$includedir,;t t --s,@oldincludedir@,$oldincludedir,;t t --s,@infodir@,$infodir,;t t --s,@mandir@,$mandir,;t t --s,@build_alias@,$build_alias,;t t --s,@host_alias@,$host_alias,;t t --s,@target_alias@,$target_alias,;t t --s,@DEFS@,$DEFS,;t t --s,@ECHO_C@,$ECHO_C,;t t --s,@ECHO_N@,$ECHO_N,;t t --s,@ECHO_T@,$ECHO_T,;t t --s,@LIBS@,$LIBS,;t t --s,@PACKAGE@,$PACKAGE,;t t --s,@VERSION@,$VERSION,;t t --s,@CC@,$CC,;t t --s,@CFLAGS@,$CFLAGS,;t t --s,@LDFLAGS@,$LDFLAGS,;t t --s,@CPPFLAGS@,$CPPFLAGS,;t t --s,@ac_ct_CC@,$ac_ct_CC,;t t --s,@EXEEXT@,$EXEEXT,;t t --s,@OBJEXT@,$OBJEXT,;t t --s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t --s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t --s,@INSTALL_DATA@,$INSTALL_DATA,;t t --s,@SET_MAKE@,$SET_MAKE,;t t --s,@RANLIB@,$RANLIB,;t t --s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t --s,@build@,$build,;t t --s,@build_cpu@,$build_cpu,;t t --s,@build_vendor@,$build_vendor,;t t --s,@build_os@,$build_os,;t t --s,@host@,$host,;t t --s,@host_cpu@,$host_cpu,;t t --s,@host_vendor@,$host_vendor,;t t --s,@host_os@,$host_os,;t t --s,@CYGPATH@,$CYGPATH,;t t --s,@RELPATH@,$RELPATH,;t t --s,@ITCL_GENERIC_DIR_NATIVE@,$ITCL_GENERIC_DIR_NATIVE,;t t --s,@ITCL_WIN_DIR_NATIVE@,$ITCL_WIN_DIR_NATIVE,;t t --s,@ITCL_UNIX_DIR_NATIVE@,$ITCL_UNIX_DIR_NATIVE,;t t --s,@ITCL_INCLUDES@,$ITCL_INCLUDES,;t t --s,@TCL_DBGX@,$TCL_DBGX,;t t --s,@TCL_BIN_DIR@,$TCL_BIN_DIR,;t t --s,@TCL_SRC_DIR@,$TCL_SRC_DIR,;t t --s,@TCL_LIB_FILE@,$TCL_LIB_FILE,;t t --s,@TCL_LIBS@,$TCL_LIBS,;t t --s,@TCL_DEFS@,$TCL_DEFS,;t t --s,@TCL_SHLIB_LD_LIBS@,$TCL_SHLIB_LD_LIBS,;t t --s,@TCL_EXTRA_CFLAGS@,$TCL_EXTRA_CFLAGS,;t t --s,@TCL_LD_FLAGS@,$TCL_LD_FLAGS,;t t --s,@TCL_STUB_LIB_FILE@,$TCL_STUB_LIB_FILE,;t t --s,@TCL_LIB_SPEC@,$TCL_LIB_SPEC,;t t --s,@TCL_BUILD_LIB_SPEC@,$TCL_BUILD_LIB_SPEC,;t t --s,@TCL_STUB_LIB_SPEC@,$TCL_STUB_LIB_SPEC,;t t --s,@TCL_BUILD_STUB_LIB_SPEC@,$TCL_BUILD_STUB_LIB_SPEC,;t t --s,@TCL_TOP_DIR_NATIVE@,$TCL_TOP_DIR_NATIVE,;t t --s,@TCL_GENERIC_DIR_NATIVE@,$TCL_GENERIC_DIR_NATIVE,;t t --s,@TCL_UNIX_DIR_NATIVE@,$TCL_UNIX_DIR_NATIVE,;t t --s,@TCL_WIN_DIR_NATIVE@,$TCL_WIN_DIR_NATIVE,;t t --s,@TCL_BMAP_DIR_NATIVE@,$TCL_BMAP_DIR_NATIVE,;t t --s,@TCL_TOOL_DIR_NATIVE@,$TCL_TOOL_DIR_NATIVE,;t t --s,@TCL_PLATFORM_DIR_NATIVE@,$TCL_PLATFORM_DIR_NATIVE,;t t --s,@TCL_INCLUDES@,$TCL_INCLUDES,;t t --s,@CLEANFILES@,$CLEANFILES,;t t --s,@PLATFORM_SOURCES@,$PLATFORM_SOURCES,;t t --s,@PLATFORM_OBJECTS@,$PLATFORM_OBJECTS,;t t --s,@PLATFORM_DIR@,$PLATFORM_DIR,;t t --s,@CFLAGS_DEBUG@,$CFLAGS_DEBUG,;t t --s,@CFLAGS_OPTIMIZE@,$CFLAGS_OPTIMIZE,;t t --s,@STLIB_LD@,$STLIB_LD,;t t --s,@SHLIB_LD@,$SHLIB_LD,;t t --s,@SHLIB_CFLAGS@,$SHLIB_CFLAGS,;t t --s,@SHLIB_LDFLAGS@,$SHLIB_LDFLAGS,;t t --s,@CFLAGS_DEFAULT@,$CFLAGS_DEFAULT,;t t --s,@LDFLAGS_DEFAULT@,$LDFLAGS_DEFAULT,;t t --s,@MAKE_LIB@,$MAKE_LIB,;t t --s,@MAKE_SHARED_LIB@,$MAKE_SHARED_LIB,;t t --s,@MAKE_STATIC_LIB@,$MAKE_STATIC_LIB,;t t --s,@POST_MAKE_LIB@,$POST_MAKE_LIB,;t t --s,@POST_MAKE_STATIC_LIB@,$POST_MAKE_STATIC_LIB,;t t --s,@ITCL_LIB_FILE@,$ITCL_LIB_FILE,;t t --s,@ITCL_STUB_LIB_FILE@,$ITCL_STUB_LIB_FILE,;t t --s,@ITCL_BUILD_LIB_SPEC@,$ITCL_BUILD_LIB_SPEC,;t t --s,@ITCL_BUILD_STUB_LIB_SPEC@,$ITCL_BUILD_STUB_LIB_SPEC,;t t --s,@ITCL_LIB_SPEC@,$ITCL_LIB_SPEC,;t t --s,@ITCL_STUB_LIB_SPEC@,$ITCL_STUB_LIB_SPEC,;t t --s,@ITCL_LIB_FULL_PATH@,$ITCL_LIB_FULL_PATH,;t t --s,@ITCL_STUB_LIB_FULL_PATH@,$ITCL_STUB_LIB_FULL_PATH,;t t --s,@itclstub_LIB_FILE@,$itclstub_LIB_FILE,;t t --s,@itcl_LIB_FILE@,$itcl_LIB_FILE,;t t --s,@SHLIB_LD_LIBS@,$SHLIB_LD_LIBS,;t t --s,@ITCL_VERSION@,$ITCL_VERSION,;t t --s,@ITCL_MAJOR_VERSION@,$ITCL_MAJOR_VERSION,;t t --s,@ITCL_MINOR_VERSION@,$ITCL_MINOR_VERSION,;t t --s,@ITCL_RELEASE_LEVEL@,$ITCL_RELEASE_LEVEL,;t t --s,@ITCL_SRC_DIR@,$ITCL_SRC_DIR,;t t --s,@ITCL_SH@,$ITCL_SH,;t t --s,@LIBOBJS@,$LIBOBJS,;t t --s,@LTLIBOBJS@,$LTLIBOBJS,;t t --CEOF -- --_ACEOF -- -- cat >>$CONFIG_STATUS <<\_ACEOF -- # Split the substitutions into bite-sized pieces for seds with -- # small command number limits, like on Digital OSF/1 and HP-UX. -- ac_max_sed_lines=48 -- ac_sed_frag=1 # Number of current file. -- ac_beg=1 # First line for current file. -- ac_end=$ac_max_sed_lines # Line after last line for current file. -- ac_more_lines=: -- ac_sed_cmds= -- while $ac_more_lines; do -- if test $ac_beg -gt 1; then -- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- else -- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- fi -- if test ! -s $tmp/subs.frag; then -- ac_more_lines=false -- else -- # The purpose of the label and of the branching condition is to -- # speed up the sed processing (if there are no `@' at all, there -- # is no need to browse any of the substitutions). -- # These are the two extra sed commands mentioned above. -- (echo ':t -- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" -- else -- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" -- fi -- ac_sed_frag=`expr $ac_sed_frag + 1` -- ac_beg=$ac_end -- ac_end=`expr $ac_end + $ac_max_sed_lines` -- fi -- done -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds=cat -+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 -+CYGPATH!$CYGPATH$ac_delim -+EXEEXT!$EXEEXT$ac_delim -+PKG_LIB_FILE!$PKG_LIB_FILE$ac_delim -+PKG_STUB_LIB_FILE!$PKG_STUB_LIB_FILE$ac_delim -+PKG_STUB_SOURCES!$PKG_STUB_SOURCES$ac_delim -+PKG_STUB_OBJECTS!$PKG_STUB_OBJECTS$ac_delim -+PKG_TCL_SOURCES!$PKG_TCL_SOURCES$ac_delim -+PKG_HEADERS!$PKG_HEADERS$ac_delim -+PKG_INCLUDES!$PKG_INCLUDES$ac_delim -+PKG_LIBS!$PKG_LIBS$ac_delim -+PKG_CFLAGS!$PKG_CFLAGS$ac_delim -+LN_S!$LN_S$ac_delim -+CONFIG_CLEAN_FILES!$CONFIG_CLEAN_FILES$ac_delim -+TCL_VERSION!$TCL_VERSION$ac_delim -+TCL_BIN_DIR!$TCL_BIN_DIR$ac_delim -+TCL_SRC_DIR!$TCL_SRC_DIR$ac_delim -+TCL_LIB_FILE!$TCL_LIB_FILE$ac_delim -+TCL_LIB_FLAG!$TCL_LIB_FLAG$ac_delim -+TCL_LIB_SPEC!$TCL_LIB_SPEC$ac_delim -+TCL_STUB_LIB_FILE!$TCL_STUB_LIB_FILE$ac_delim -+TCL_STUB_LIB_FLAG!$TCL_STUB_LIB_FLAG$ac_delim -+TCL_STUB_LIB_SPEC!$TCL_STUB_LIB_SPEC$ac_delim -+TCL_LIBS!$TCL_LIBS$ac_delim -+TCL_DEFS!$TCL_DEFS$ac_delim -+TCL_EXTRA_CFLAGS!$TCL_EXTRA_CFLAGS$ac_delim -+TCL_LD_FLAGS!$TCL_LD_FLAGS$ac_delim -+TCL_SHLIB_LD_LIBS!$TCL_SHLIB_LD_LIBS$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 -+OBJEXT!$OBJEXT$ac_delim -+CPP!$CPP$ac_delim -+INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim -+INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim -+INSTALL_DATA!$INSTALL_DATA$ac_delim -+SET_MAKE!$SET_MAKE$ac_delim -+RANLIB!$RANLIB$ac_delim -+GREP!$GREP$ac_delim -+EGREP!$EGREP$ac_delim -+MATH_LIBS!$MATH_LIBS$ac_delim -+PKG_SOURCES!$PKG_SOURCES$ac_delim -+PKG_OBJECTS!$PKG_OBJECTS$ac_delim -+CLEANFILES!$CLEANFILES$ac_delim -+TCL_TOP_DIR_NATIVE!$TCL_TOP_DIR_NATIVE$ac_delim -+TCL_GENERIC_DIR_NATIVE!$TCL_GENERIC_DIR_NATIVE$ac_delim -+TCL_UNIX_DIR_NATIVE!$TCL_UNIX_DIR_NATIVE$ac_delim -+TCL_WIN_DIR_NATIVE!$TCL_WIN_DIR_NATIVE$ac_delim -+TCL_BMAP_DIR_NATIVE!$TCL_BMAP_DIR_NATIVE$ac_delim -+TCL_TOOL_DIR_NATIVE!$TCL_TOOL_DIR_NATIVE$ac_delim -+TCL_PLATFORM_DIR_NATIVE!$TCL_PLATFORM_DIR_NATIVE$ac_delim -+TCL_INCLUDES!$TCL_INCLUDES$ac_delim -+SHARED_BUILD!$SHARED_BUILD$ac_delim -+AR!$AR$ac_delim -+TCLSH_PROG!$TCLSH_PROG$ac_delim -+CELIB_DIR!$CELIB_DIR$ac_delim -+LIBOBJS!$LIBOBJS$ac_delim -+DL_LIBS!$DL_LIBS$ac_delim -+CFLAGS_DEBUG!$CFLAGS_DEBUG$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 --fi # test -n "$CONFIG_FILES" -+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` -+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 >$CONFIG_STATUS <<_ACEOF -+CEOF$ac_eof -+_ACEOF -+ -+ -+ac_delim='%!_!# ' -+for ac_last_try in false false false false false :; do -+ cat >conf$$subs.sed <<_ACEOF -+CFLAGS_OPTIMIZE!$CFLAGS_OPTIMIZE$ac_delim -+CFLAGS_WARNING!$CFLAGS_WARNING$ac_delim -+STLIB_LD!$STLIB_LD$ac_delim -+SHLIB_LD!$SHLIB_LD$ac_delim -+SHLIB_CFLAGS!$SHLIB_CFLAGS$ac_delim -+SHLIB_LD_LIBS!$SHLIB_LD_LIBS$ac_delim -+LDFLAGS_DEBUG!$LDFLAGS_DEBUG$ac_delim -+LDFLAGS_OPTIMIZE!$LDFLAGS_OPTIMIZE$ac_delim -+LD_LIBRARY_PATH_VAR!$LD_LIBRARY_PATH_VAR$ac_delim -+TCL_DBGX!$TCL_DBGX$ac_delim -+CFLAGS_DEFAULT!$CFLAGS_DEFAULT$ac_delim -+LDFLAGS_DEFAULT!$LDFLAGS_DEFAULT$ac_delim -+MAKE_LIB!$MAKE_LIB$ac_delim -+MAKE_SHARED_LIB!$MAKE_SHARED_LIB$ac_delim -+MAKE_STATIC_LIB!$MAKE_STATIC_LIB$ac_delim -+MAKE_STUB_LIB!$MAKE_STUB_LIB$ac_delim -+RANLIB_STUB!$RANLIB_STUB$ac_delim -+itcl_STUB_LIB_FILE!$itcl_STUB_LIB_FILE$ac_delim -+itcl_LIB_FILE!$itcl_LIB_FILE$ac_delim -+itcl_BUILD_LIB_SPEC!$itcl_BUILD_LIB_SPEC$ac_delim -+itcl_LIB_SPEC!$itcl_LIB_SPEC$ac_delim -+itcl_BUILD_STUB_LIB_SPEC!$itcl_BUILD_STUB_LIB_SPEC$ac_delim -+itcl_STUB_LIB_SPEC!$itcl_STUB_LIB_SPEC$ac_delim -+itcl_BUILD_STUB_LIB_PATH!$itcl_BUILD_STUB_LIB_PATH$ac_delim -+itcl_STUB_LIB_PATH!$itcl_STUB_LIB_PATH$ac_delim -+itcl_SRC_DIR!$itcl_SRC_DIR$ac_delim -+LTLIBOBJS!$LTLIBOBJS$ac_delim -+_ACEOF -+ -+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 27; 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` -+fi - -+cat >>$CONFIG_STATUS <<_ACEOF -+cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof -+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -+_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 >$CONFIG_STATUS <<_ACEOF -+:end -+s/|#_!!_#|//g -+CEOF$ac_eof - _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 --for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue -- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". -- case $ac_file in -- - | *:- | *:-:* ) # input from stdin -- cat >$tmp/stdin -- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- * ) ac_file_in=$ac_file.in ;; -+fi # test -n "$CONFIG_FILES" -+ -+ -+for ac_tag in :F $CONFIG_FILES -+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;} -+ { (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 || -+ { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -+echo "$as_me: error: cannot find input file: $ac_f" >&2;} -+ { (exit 1); exit 1; }; };; -+ 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." -+ 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;} -+ fi -+ -+ case $ac_tag in -+ *:-:* | *:-) cat >"$tmp/stdin";; -+ esac -+ ;; - esac - -- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. -- ac_dir=`(dirname "$ac_file") 2>/dev/null || -+ 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 || -+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || - echo X"$ac_file" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- { if $as_mkdir_p; then -- mkdir -p "$ac_dir" -- else -- as_dir="$ac_dir" -+ 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 test ! -d "$as_dir"; do -- as_dirs="$as_dir $as_dirs" -- as_dir=`(dirname "$as_dir") 2>/dev/null || -+ while :; do -+ case $as_dir in #( -+ *\'*) as_qdir=`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 || -+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || - echo X"$as_dir" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -+ 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 ! -n "$as_dirs" || mkdir $as_dirs -- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 --echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -+ 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;} - { (exit 1); exit 1; }; }; } -- - ac_builddir=. - --if test "$ac_dir" != .; then -+case "$ac_dir" in -+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -+*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -+ # A ".." for each directory in $ac_dir_suffix. -+ ac_top_builddir_sub=`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 -- .) # No --srcdir option. We are building in place. -+ .) # We are building in place. - ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -+ 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 ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; -+ 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 - --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; --esac - -+ case $ac_mode in -+ :F) -+ # -+ # CONFIG_FILE -+ # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; -- *) ac_INSTALL=$ac_top_builddir$INSTALL ;; -+ *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac -+_ACEOF - -- if test x"$ac_file" != x-; then -- { echo "$as_me:$LINENO: creating $ac_file" >&5 --echo "$as_me: creating $ac_file" >&6;} -- rm -f "$ac_file" -- fi -- # 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. */ -- if test x"$ac_file" = x-; then -- configure_input= -- else -- configure_input="$ac_file. " -- fi -- configure_input=$configure_input"Generated from `echo $ac_file_in | -- sed 's,.*/,,'` by configure." -- -- # First look for the input files in the build tree, otherwise in the -- # src tree. -- ac_file_inputs=`IFS=: -- for f in $ac_file_in; do -- case $f in -- -) echo $tmp/stdin ;; -- [\\/$]*) -- # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- echo "$f";; -- *) # Relative -- if test -f "$f"; then -- # Build tree -- echo "$f" -- elif test -f "$srcdir/$f"; then -- # Source tree -- echo "$srcdir/$f" -- else -- # /dev/null tree -- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- fi;; -- esac -- done` || { (exit 1); exit 1; } -+cat >>$CONFIG_STATUS <<\_ACEOF -+# 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/ { -+ p -+ q -+} -+/@datadir@/p -+/@docdir@/p -+/@infodir@/p -+/@localedir@/p -+/@mandir@/p -+' $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;} -+_ACEOF -+cat >>$CONFIG_STATUS <<_ACEOF -+ 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 - sed "$ac_vpsub - $extrasub -@@ -4741,29 +10938,40 @@ - cat >>$CONFIG_STATUS <<\_ACEOF - :t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b --s,@configure_input@,$configure_input,;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,@top_builddir@,$ac_top_builddir,;t t --s,@abs_top_builddir@,$ac_abs_top_builddir,;t t --s,@INSTALL@,$ac_INSTALL,;t t --" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out -- rm -f $tmp/stdin -- if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -- else -- cat $tmp/out -- rm -f $tmp/out -- fi -+s&@configure_input@&$configure_input&;t t -+s&@top_builddir@&$ac_top_builddir_sub&;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 -+$ac_datarootdir_hack -+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out -+ -+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' -+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' -+which seems to be undefined. Please make sure it is defined." >&2;} - --done --_ACEOF -+ 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 -+ ;; -+ -+ -+ -+ esac -+ -+done # for ac_tag - --cat >>$CONFIG_STATUS <<\_ACEOF - - { (exit 0); exit 0; } - _ACEOF -@@ -4792,5 +11000,3 @@ - $ac_cs_success || { (exit 1); exit 1; } - fi - -- --# END CYGNUS LOCAL -diff -Naur insight-6.8.orig/itcl/itcl/configure.ac insight-6.8.new/itcl/itcl/configure.ac ---- insight-6.8.orig/itcl/itcl/configure.ac 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/configure.ac 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,247 @@ -+#!/bin/bash -norc -+#-------------------------------------------------------------------- -+# Sample configure.in for Tcl Extensions. The only places you should -+# need to modify this file are marked by the string __CHANGE__ -+#-------------------------------------------------------------------- -+ -+#----------------------------------------------------------------------- -+# This initializes the environment with PACKAGE_NAME and PACKAGE_VERSION -+# set as provided. These will also be added as -D defs in your Makefile -+# so you can encode the package version directly into the source files. -+#----------------------------------------------------------------------- -+ -+AC_INIT([itcl], [3.3]) -+ -+#-------------------------------------------------------------------- -+# Call TEA_INIT as the first TEA_ macro to set up initial vars. -+# This will define a ${TEA_PLATFORM} variable == "unix" or "windows" -+# as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. -+#-------------------------------------------------------------------- -+ -+TEA_INIT([3.2]) -+ -+AC_PROG_LN_S -+CONFIG_CLEAN_FILES= -+if test ! -d $srcdir/tclconfig ; then -+ if test -d $srcdir/../tclconfig ; then -+ $LN_S $srcdir/../tclconfig tclconfig -+ CONFIG_CLEAN_FILES=tclconfig -+ fi -+fi -+AC_SUBST(CONFIG_CLEAN_FILES) -+ -+AC_CONFIG_AUX_DIR(tclconfig) -+ -+#-------------------------------------------------------------------- -+# Load the tclConfig.sh file -+#-------------------------------------------------------------------- -+ -+TEA_PATH_TCLCONFIG -+TEA_LOAD_TCLCONFIG -+ -+#----------------------------------------------------------------------- -+# Handle the --prefix=... option by defaulting to what Tcl gave. -+# Must be called after TEA_LOAD_TCLCONFIG and before TEA_SETUP_COMPILER. -+#----------------------------------------------------------------------- -+ -+TEA_PREFIX -+ -+#----------------------------------------------------------------------- -+# Standard compiler checks. -+# This sets up CC by using the CC env var, or looks for gcc otherwise. -+# This also calls AC_PROG_CC, AC_PROG_INSTALL and a few others to create -+# the basic setup necessary to compile executables. -+#----------------------------------------------------------------------- -+ -+TEA_SETUP_COMPILER -+ -+#----------------------------------------------------------------------- -+# __CHANGE__ -+# Specify the C source files to compile in TEA_ADD_SOURCES, -+# public headers that need to be installed in TEA_ADD_HEADERS, -+# stub library C source files to compile in TEA_ADD_STUB_SOURCES, -+# and runtime Tcl library files in TEA_ADD_TCL_SOURCES. -+# This defines PKG(_STUB)_SOURCES, PKG(_STUB)_OBJECTS, PKG_HEADERS -+# and PKG_TCL_SOURCES. -+#----------------------------------------------------------------------- -+ -+TEA_ADD_SOURCES([itclStubInit.c -+ itcl_bicmds.c -+ itcl_class.c -+ itcl_cmds.c -+ itcl_ensemble.c -+ itcl_linkage.c -+ itcl_methods.c -+ itcl_migrate.c -+ itcl_objects.c -+ itcl_parse.c -+ itcl_util.c]) -+TEA_ADD_HEADERS([generic/itcl.h -+ generic/itclDecls.h -+ generic/itclInt.h -+ generic/itclIntDecls.h]) -+TEA_ADD_INCLUDES([-I\"`${CYGPATH} ${srcdir}/generic`\"]) -+TEA_ADD_LIBS([]) -+TEA_ADD_CFLAGS([]) -+TEA_ADD_STUB_SOURCES([itclStubLib.c]) -+TEA_ADD_TCL_SOURCES([library/itcl.tcl]) -+ -+#-------------------------------------------------------------------- -+# __CHANGE__ -+# A few miscellaneous platform-specific items: -+# -+# Define a special symbol for Windows (BUILD_itcl in this case) so -+# that we create the export library with the dll. See sha1.h on how -+# to use this. -+# -+# Windows creates a few extra files that need to be cleaned up. -+# You can add more files to clean if your extension creates any extra -+# files. -+# -+# Define any extra compiler flags in the PACKAGE_CFLAGS variable. -+# These will be appended to the current set of compiler flags for -+# your system. -+#-------------------------------------------------------------------- -+ -+if test "${TEA_PLATFORM}" = "windows" ; then -+ AC_DEFINE(BUILD_itcl) -+ CLEANFILES="*.lib *.dll *.exp *.ilk *.pdb vc*.pch" -+ TEA_ADD_SOURCES([dllEntryPoint.c]) -+else -+ CLEANFILES= -+ #TEA_ADD_SOURCES([]) -+fi -+ -+AC_SUBST(CLEANFILES) -+ -+#-------------------------------------------------------------------- -+# __CHANGE__ -+# Choose which headers you need. Extension authors should try very -+# hard to only rely on the Tcl public header files. Internal headers -+# contain private data structures and are subject to change without -+# notice. -+# This must be done AFTER calling TEA_PATH_TCLCONFIG/TEA_LOAD_TCLCONFIG -+# so that we can extract TCL_SRC_DIR from the config file (in the case -+# of private headers -+#-------------------------------------------------------------------- -+ -+#TEA_PUBLIC_TCL_HEADERS -+TEA_PRIVATE_TCL_HEADERS -+ -+#-------------------------------------------------------------------- -+# We need to enable the threading macros found in tcl.h and tclInt.h. -+# The use of the threading features is determined by the core the -+# extension is loaded into, but we need to compile with these macros -+# turned on. -+#-------------------------------------------------------------------- -+ -+AC_DEFINE(TCL_THREADS) -+ -+#-------------------------------------------------------------------- -+# Check whether --enable-threads or --disable-threads was given. -+# This auto-enables if Tcl was compiled threaded. -+#-------------------------------------------------------------------- -+ -+#TEA_ENABLE_THREADS -+ -+#-------------------------------------------------------------------- -+# The statement below defines a collection of symbols related to -+# building as a shared library instead of a static library. -+#-------------------------------------------------------------------- -+ -+TEA_ENABLE_SHARED -+ -+#-------------------------------------------------------------------- -+# This macro figures out what flags to use with the compiler/linker -+# when building shared/static debug/optimized objects. This information -+# can be taken from the tclConfig.sh file, but this figures it all out. -+#-------------------------------------------------------------------- -+ -+TEA_CONFIG_CFLAGS -+ -+#-------------------------------------------------------------------- -+# Set the default compiler switches based on the --enable-symbols -+# option. -+#-------------------------------------------------------------------- -+ -+TEA_ENABLE_SYMBOLS -+ -+#-------------------------------------------------------------------- -+# Everyone should be linking against the Tcl stub library. If you -+# can't for some reason, remove this definition. If you aren't using -+# stubs, you also need to modify the SHLIB_LD_LIBS setting below to -+# link against the non-stubbed Tcl library. -+#-------------------------------------------------------------------- -+ -+if test "${SHARED_BUILD}" = "1" ; then -+ AC_DEFINE(USE_TCL_STUBS) -+fi -+ -+#-------------------------------------------------------------------- -+# This macro generates a line to use when building a library. It -+# depends on values set by the TEA_ENABLE_SHARED, TEA_ENABLE_SYMBOLS, -+# and TEA_LOAD_TCLCONFIG macros above. -+#-------------------------------------------------------------------- -+ -+TEA_MAKE_LIB -+ -+#-------------------------------------------------------------------- -+# __CHANGE__ -+# Change the name from exampeA_LIB_FILE to match your package name. -+# Use the stub_LIB_FILE substitution if your package creates a stub -+# library. -+#-------------------------------------------------------------------- -+ -+itcl_STUB_LIB_FILE=${PKG_STUB_LIB_FILE} -+itcl_LIB_FILE=${PKG_LIB_FILE} -+AC_SUBST(itcl_STUB_LIB_FILE) -+AC_SUBST(itcl_LIB_FILE) -+ -+#-------------------------------------------------------------------- -+# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl -+# file during the install process. Don't run the TCLSH_PROG through -+# ${CYGPATH} because it's being used directly by make. -+# Require that we use a tclsh shell version 8.2 or later since earlier -+# versions have bugs in the pkg_mkIndex routine. -+#-------------------------------------------------------------------- -+ -+TEA_PROG_TCLSH -+ -+#-------------------------------------------------------------------- -+# These are for itclConfig.sh -+#-------------------------------------------------------------------- -+ -+# pkglibdir must be a fully qualified path and (not ${exec_prefix}/lib) -+eval pkglibdir="${libdir}/${PACKAGE_NAME}${PACKAGE_VERSION}" -+if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then -+ eval itcl_LIB_FLAG="-litcl${PACKAGE_VERSION}${DBGX}" -+ eval itcl_STUB_LIB_FLAG="-litclstub${PACKAGE_VERSION}${DBGX}" -+else -+ eval itcl_LIB_FLAG="-litcl`echo ${PACKAGE_VERSION} | tr -d .`${DBGX}" -+ eval itcl_STUB_LIB_FLAG="-litclstub`echo ${PACKAGE_VERSION} | tr -d .`${DBGX}" -+fi -+itcl_BUILD_LIB_SPEC="-L`pwd` ${itcl_LIB_FLAG}" -+itcl_LIB_SPEC="-L${pkglibdir} ${itcl_LIB_FLAG}" -+ -+itcl_BUILD_STUB_LIB_SPEC="-L`pwd` ${itcl_STUB_LIB_FLAG}" -+itcl_STUB_LIB_SPEC="-L${pkglibdir} ${itcl_STUB_LIB_FLAG}" -+itcl_BUILD_STUB_LIB_PATH="`pwd`/${itcl_STUB_LIB_FILE}" -+itcl_STUB_LIB_PATH="${pkglibdir}/${itcl_STUB_LIB_FILE}" -+ -+AC_SUBST(itcl_BUILD_LIB_SPEC) -+AC_SUBST(itcl_LIB_SPEC) -+AC_SUBST(itcl_BUILD_STUB_LIB_SPEC) -+AC_SUBST(itcl_STUB_LIB_SPEC) -+AC_SUBST(itcl_BUILD_STUB_LIB_PATH) -+AC_SUBST(itcl_STUB_LIB_PATH) -+ -+# itcl_SRC_DIR must be a fully qualified path -+eval itcl_SRC_DIR="$srcdir" -+itcl_SRC_DIR=`cd "${itcl_SRC_DIR}"; pwd` -+AC_SUBST(itcl_SRC_DIR) -+ -+#-------------------------------------------------------------------- -+# Finally, substitute all of the various values into the Makefile. -+#-------------------------------------------------------------------- -+ -+AC_OUTPUT([Makefile pkgIndex.tcl itclConfig.sh]) -diff -Naur insight-6.8.orig/itcl/itcl/configure.in insight-6.8.new/itcl/itcl/configure.in ---- insight-6.8.orig/itcl/itcl/configure.in 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/configure.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,409 +0,0 @@ --#-------------------------------------------------------------------- --# Sample configure.in for Tcl Extensions. The only places you should --# need to modify this file are marked by the string __CHANGE__ --#-------------------------------------------------------------------- -- --#-------------------------------------------------------------------- --# __CHANGE__ --# This very first macro is used to verify that the configure script can --# find the sources. The argument to AC_INIT should be a unique filename --# for this package, and can be a relative path, such as: --# --# AC_INIT(../generic/tcl.h) --#-------------------------------------------------------------------- -- --AC_INIT(generic/itcl.h) --# CYGNUS LOCAL --AC_CONFIG_AUX_DIR(../..) --# END CYGNUS LOCAL -- --#-------------------------------------------------------------------- --# __CHANGE__ --# Set your package name and version numbers here. The NODOT_VERSION is --# required for constructing the library name on systems that don't like --# dots in library names (Windows). The VERSION variable is used on the --# other systems. --#-------------------------------------------------------------------- -- --PACKAGE=itcl -- --MAJOR_VERSION=3 --MINOR_VERSION=2 --PATCHLEVEL=.1 -- --VERSION=${MAJOR_VERSION}.${MINOR_VERSION} --NODOT_VERSION=${MAJOR_VERSION}${MINOR_VERSION} -- -- --AC_SUBST(PACKAGE) --AC_SUBST(VERSION) -- --#-------------------------------------------------------------------- --# We put this here so that you can compile with -DVERSION="1.2" to --# encode the package version directly into the source files. --#-------------------------------------------------------------------- -- --eval AC_DEFINE_UNQUOTED(VERSION, "${VERSION}") -- --#------------------------------------------------------------------------ --# Handle the --prefix=... option --#------------------------------------------------------------------------ -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --#-------------------------------------------------------------------- --# Check whether --enable-gcc or --disable-gcc was given. Do this --# before AC_CYGWIN is called so the compiler can --# be fully tested by built-in autoconf tools. --# This macro also calls AC_PROG_CC to set the compiler if --enable-gcc --# was not used. --#-------------------------------------------------------------------- -- --# CYGNUS LOCAL --dnl SC_ENABLE_GCC --AC_PROG_CC --# END CYGNUS LOCAL --AC_PROG_INSTALL -- --#-------------------------------------------------------------------- --# Checks to see if the make program sets the $MAKE variable. --#-------------------------------------------------------------------- -- --AC_PROG_MAKE_SET -- --#-------------------------------------------------------------------- --# Find ranlib --#-------------------------------------------------------------------- -- --AC_PROG_RANLIB -- --#-------------------------------------------------------------------- --# This macro performs additional compiler tests. --#-------------------------------------------------------------------- -- --AC_CYGWIN -- --#-------------------------------------------------------------------- --# Determines the correct binary file extension (.o, .obj, .exe etc.) --#-------------------------------------------------------------------- -- --AC_OBJEXT --AC_EXEEXT -- --#-------------------------------------------------------------------- --# "cygpath" is used on windows to generate native path names for include --# files. --# These variables should only be used with the compiler and linker since --# they generate native path names. --# --# Unix tclConfig.sh points SRC_DIR at the top-level directory of --# the Tcl sources, while the Windows tclConfig.sh points SRC_DIR at --# the win subdirectory. Hence the different usages of SRC_DIR below. --# --# This must be done before calling SC_PUBLIC_TCL_HEADERS --# --# RELPATH is used to locate binary extensions relative to the lib directory. --# It is only needed if mkIndex.tcl can't generate an installed pkgIndex.tcl --# file for you. --#-------------------------------------------------------------------- -- --case "${host}" in -- *mingw32* | *windows32*) -- AC_CHECK_PROG(CYGPATH, cygpath, cygpath -w, echo) -- RELPATH=".. .. bin" -- ;; -- *) -- CYGPATH=echo -- RELPATH=.. -- ;; --esac -- --AC_SUBST(CYGPATH) --AC_SUBST(RELPATH) -- --#-------------------------------------------------------------------- --# Includes for this package --#-------------------------------------------------------------------- -- --# CYGNUS LOCAL --srcdir=`cd ${srcdir} ; pwd` --ITCL_SRC_DIR_NATIVE=`${CYGPATH} ${srcdir}` --# END CYGNUS LOCAL --ITCL_GENERIC_DIR_NATIVE=`${CYGPATH} ${srcdir}/generic` --ITCL_WIN_DIR_NATIVE=`${CYGPATH} ${srcdir}/win` --ITCL_UNIX_DIR_NATIVE=`${CYGPATH} ${srcdir}/unix` -- --case "${host}" in -- *cygwin* | *mingw32* | *windows32*) -- ITCL_PLATFORM_DIR_NATIVE=${ITCL_WIN_DIR_NATIVE} -- ;; -- *) -- ITCL_PLATFORM_DIR_NATIVE=${ITCL_UNIX_DIR_NATIVE} -- ;; --esac -- --ITCL_INCLUDES="-I\"${ITCL_GENERIC_DIR_NATIVE}\" -I\"${ITCL_PLATFORM_DIR_NATIVE}\"" -- --AC_SUBST(ITCL_GENERIC_DIR_NATIVE) --AC_SUBST(ITCL_WIN_DIR_NATIVE) --AC_SUBST(ITCL_UNIX_DIR_NATIVE) --AC_SUBST(ITCL_INCLUDES) -- --#-------------------------------------------------------------------- --# Load the tclConfig.sh file --#-------------------------------------------------------------------- -- --SC_PATH_TCLCONFIG --SC_LOAD_TCLCONFIG -- --#-------------------------------------------------------------------- --# __CHANGE__ --# Choose which headers you need. Extension authors should try very --# hard to only rely on the Tcl public header files. Internal headers --# contain private data structures and are subject to change without --# notice. --# This must be done AFTER calling SC_PATH_TCLCONFIG/SC_LOAD_TCLCONFIG --# so that we can extract TCL_SRC_DIR from the config file (in the case --# of private headers --#-------------------------------------------------------------------- -- --#SC_PUBLIC_TCL_HEADERS --SC_PRIVATE_TCL_HEADERS -- --#-------------------------------------------------------------------- --# __CHANGE__ --# A few miscellaneous platform-specific items: --# --# Define a special symbol for Windows (BUILD_itcl in this case) so --# that we create the export library with the dll. See sha1.h on how --# to use this. --# --# Windows creates a few extra files that need to be cleaned up. --# You can add more files to clean if your extension creates any extra --# files. --# --# Define any extra compiler flags in the PACKAGE_CFLAGS variable. --# These will be appended to the current set of compiler flags for --# your system. --#-------------------------------------------------------------------- -- --case "${host}" in -- *cygwin*| *mingw32* | *windows32*) -- AC_DEFINE(BUILD_itcl) -- CLEANFILES="*.lib *.dll *.exp *.ilk *.pdb vc50.pch" -- PLATFORM_SOURCES='$(WIN_SOURCES)' -- PLATFORM_OBJECTS='$(WIN_OBJECTS)' -- PLATFORM_DIR='$(WIN_DIR)' -- ;; -- *) -- CLEANFILES= -- PLATFORM_SOURCES='$(UNIX_SOURCES)' -- PLATFORM_OBJECTS='$(UNIX_OBJECTS)' -- PLATFORM_DIR='$(UNIX_DIR)' -- ;; --esac -- --AC_SUBST(CLEANFILES) --AC_SUBST(PLATFORM_SOURCES) --AC_SUBST(PLATFORM_OBJECTS) --AC_SUBST(PLATFORM_DIR) -- --#-------------------------------------------------------------------- --# Check whether --enable-threads or --disable-threads was given. --# So far only Tcl responds to this one. --#-------------------------------------------------------------------- -- --SC_ENABLE_THREADS -- --#-------------------------------------------------------------------- --# The statement below defines a collection of symbols related to --# building as a shared library instead of a static library. --#-------------------------------------------------------------------- -- --SC_ENABLE_SHARED -- --#-------------------------------------------------------------------- --# This macro figures out what flags to use with the compiler/linker --# when building shared/static debug/optimized objects. This information --# is all taken from the tclConfig.sh file. --#-------------------------------------------------------------------- -- --CFLAGS_DEBUG=${TCL_CFLAGS_DEBUG} --CFLAGS_OPTIMIZE=${TCL_CFLAGS_OPTIMIZE} --LDFLAGS_DEBUG=${TCL_LDFLAGS_DEBUG} --LDFLAGS_OPTIMIZE=${TCL_LDFLAGS_OPTIMIZE} --SHLIB_LD=${TCL_SHLIB_LD} --STLIB_LD=${TCL_STLIB_LD} --SHLIB_CFLAGS=${TCL_SHLIB_CFLAGS} -- --AC_SUBST(CFLAGS_DEBUG) --AC_SUBST(CFLAGS_OPTIMIZE) --AC_SUBST(STLIB_LD) --AC_SUBST(SHLIB_LD) --AC_SUBST(SHLIB_CFLAGS) --AC_SUBST(SHLIB_LDFLAGS) -- --#-------------------------------------------------------------------- --# Set the default compiler switches based on the --enable-symbols --# option. --#-------------------------------------------------------------------- -- --SC_ENABLE_SYMBOLS -- --if test "${SHARED_BUILD}" = "1" ; then -- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING} ${SHLIB_CFLAGS}' --else -- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING}' --fi -- --#-------------------------------------------------------------------- --# Everyone should be linking against the Tcl stub library. If you --# can't for some reason, remove this definition. If you aren't using --# stubs, you also need to modify the SHLIB_LD_LIBS setting below to --# link against the non-stubbed Tcl library. --#-------------------------------------------------------------------- -- --if test "${SHARED_BUILD}" = "1" ; then -- AC_DEFINE(USE_TCL_STUBS) --fi -- --#-------------------------------------------------------------------- --# This macro generates a line to use when building a library. It --# depends on values set by the SC_ENABLE_SHARED, SC_ENABLE_SYMBOLS, --# and SC_LOAD_TCLCONFIG macros above. --#-------------------------------------------------------------------- -- --SC_MAKE_LIB -- --#-------------------------------------------------------------------- --# eval these two values to dereference the ${DBGX} variable. --#-------------------------------------------------------------------- -- --eval "SHARED_LIB_SUFFIX=${TCL_SHARED_LIB_SUFFIX}" --eval "UNSHARED_LIB_SUFFIX=${TCL_UNSHARED_LIB_SUFFIX}" -- --#-------------------------------------------------------------------- --# Shared libraries and static libraries have different names. --#-------------------------------------------------------------------- -- --# CYGNUS LOCAL -- --if test "${SHARED_BUILD}" = "1" ; then -- # FIXME: Need to devise a TCL_TOOL macro to deal with this! -- case "${host}" in -- *cygwin* | *mingw32* | *windows32*) -- SHLIB_LD_LIBS="${TCL_BUILD_STUB_LIB_SPEC} ${TCL_SHLIB_LD_LIBS}" -- # Need to link to the .a or .lib not the .dll! -- TCL_TOOL_SHARED_LIB_LONGNAME(ITCL_SHLIB_FILE, ${PACKAGE}, ${SHARED_LIB_SUFFIX}) -- TCL_TOOL_STATIC_LIB_LONGNAME(ITCL_LIB_FILE, ${PACKAGE}, ${UNSHARED_LIB_SUFFIX}) -- ITCL_TARGET_FILE=${ITCL_SHLIB_FILE} -- ;; -- *) -- SHLIB_LD_LIBS="${TCL_BUILD_LIB_SPEC}" -- TCL_TOOL_SHARED_LIB_LONGNAME(ITCL_LIB_FILE, ${PACKAGE}, ${SHARED_LIB_SUFFIX}) -- ITCL_TARGET_FILE=${ITCL_LIB_FILE} -- ;; -- esac --else -- TCL_TOOL_STATIC_LIB_LONGNAME(ITCL_LIB_FILE, ${PACKAGE}, ${UNSHARED_LIB_SUFFIX}) -- ITCL_TARGET_FILE=${ITCL_LIB_FILE} --fi -- --TCL_TOOL_STATIC_LIB_LONGNAME(ITCL_STUB_LIB_FILE, ${PACKAGE}stub, ${UNSHARED_LIB_SUFFIX}) -- --AC_SUBST(ITCL_LIB_FILE) --AC_SUBST(ITCL_STUB_LIB_FILE) -- --TCL_TOOL_LIB_SHORTNAME(ITCL_LIB_FLAG, ${PACKAGE}, ${VERSION}) --TCL_TOOL_LIB_SHORTNAME(ITCL_STUB_LIB_FLAG, ${PACKAGE}stub, ${VERSION}) -- --TCL_TOOL_LIB_SPEC(ITCL_BUILD_LIB_SPEC, `pwd`, ${ITCL_LIB_FLAG}) --TCL_TOOL_LIB_SPEC(ITCL_BUILD_STUB_LIB_SPEC, `pwd`, ${ITCL_STUB_LIB_FLAG}) --AC_SUBST(ITCL_BUILD_LIB_SPEC) --AC_SUBST(ITCL_BUILD_STUB_LIB_SPEC) -- --TCL_TOOL_LIB_SPEC(ITCL_LIB_SPEC, ${exec_prefix}/lib, ${ITCL_LIB_FLAG}) --TCL_TOOL_LIB_SPEC(ITCL_STUB_LIB_SPEC, ${exec_prefix}/lib, ${ITCL_STUB_LIB_FLAG}) --AC_SUBST(ITCL_LIB_SPEC) --AC_SUBST(ITCL_STUB_LIB_SPEC) -- --TCL_TOOL_LIB_PATH(ITCL_LIB_FULL_PATH, `pwd`, ${ITCL_LIB_FILE}) --TCL_TOOL_LIB_PATH(ITCL_STUB_LIB_FULL_PATH, `pwd`, ${ITCL_STUB_LIB_FILE}) --AC_SUBST(ITCL_LIB_FULL_PATH) --AC_SUBST(ITCL_STUB_LIB_FULL_PATH) -- --itclstub_LIB_FILE=${ITCL_STUB_LIB_FILE} --itcl_LIB_FILE=${ITCL_TARGET_FILE} -- --# END CYGNUS LOCAL -- --#-------------------------------------------------------------------- --# __CHANGE__ --# Change the name from exampeA_LIB_FILE to match your package name. --# Use the stub_LIB_FILE substitution if your package creates a stub --# library. --#-------------------------------------------------------------------- -- --AC_SUBST(itclstub_LIB_FILE) --AC_SUBST(itcl_LIB_FILE) --AC_SUBST(SHLIB_LD_LIBS) -- --#-------------------------------------------------------------------- --# Cache the stub library name so that the itk configure script can pick --# it up. --#-------------------------------------------------------------------- -- --AC_CACHE_VAL(ac_cv_itclstub_LIB_FILE, ac_cv_itclstub_LIB_FILE=${itclstub_LIB_FILE}) -- --#-------------------------------------------------------------------- --# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl --# file during the install process. Don't run the TCLSH_PROG through --# ${CYGPATH} because it's being used directly by make. --# Require that we use a tclsh shell version 8.2 or later since earlier --# versions have bugs in the pkg_mkIndex routine. --#-------------------------------------------------------------------- -- --# CYGNUS LOCAL --# A Tcl shell is not available when bootstrapping! --dnl SC_PROG_TCLSH --# END CYGNUS LOCAL -- --#-------------------------------------------------------------------- --# Finally, substitute all of the various values into the Makefile. --#-------------------------------------------------------------------- -- --# CYGNUS LOCAL -- --# Note: The itclConfig.sh file below is not included in the net release. --# We subst these variables to retain compatibility with the previous --# version of itclConfig.sh. -- --ITCL_VERSION=${VERSION} --AC_SUBST(ITCL_VERSION) -- --ITCL_MAJOR_VERSION=${MAJOR_VERSION} --AC_SUBST(ITCL_MAJOR_VERSION) -- --ITCL_MINOR_VERSION=${MINOR_VERSION} --AC_SUBST(ITCL_MINOR_VERSION) -- --ITCL_RELEASE_LEVEL=${PATCHLEVEL} --AC_SUBST(ITCL_RELEASE_LEVEL) -- --ITCL_SRC_DIR=${ITCL_SRC_DIR_NATIVE} --AC_SUBST(ITCL_SRC_DIR) -- --ITCL_SH=NONE --AC_SUBST(ITCL_SH) -- -- --AC_OUTPUT([Makefile \ -- itclConfig.sh \ -- pkgIndex.tcl]) -- --# END CYGNUS LOCAL -diff -Naur insight-6.8.orig/itcl/itcl/doc/body.n insight-6.8.new/itcl/itcl/doc/body.n ---- insight-6.8.orig/itcl/itcl/doc/body.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/body.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: body.n,v 1.1 1998/07/27 18:41:58 stanton Exp $ -+'\" RCS: $Id: body.n,v 1.4 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH body n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - body \- change the body for a class method/proc - .SH SYNOPSIS --\fBbody \fIclassName\fB::\fIfunction args body\fR -+\fBitcl::body \fIclassName\fB::\fIfunction args body\fR - .BE - - .SH DESCRIPTION -@@ -86,7 +86,7 @@ - definition, but they can be redefined via the \fBbody\fR command - as well. - .CS --class File { -+itcl::class File { - private variable fid "" - constructor {name access} { - set fid [open $name $access] -@@ -100,13 +100,13 @@ - method eof {} - } - --body File::get {} { -+itcl::body File::get {} { - return [gets $fid] - } --body File::put {line} { -+itcl::body File::put {line} { - puts $fid $line - } --body File::eof {} { -+itcl::body File::eof {} { - return [::eof $fid] - } - -@@ -117,7 +117,7 @@ - while {![x eof]} { - puts "=> [x get]" - } --delete object x -+itcl::delete object x - .CE - - .SH KEYWORDS -diff -Naur insight-6.8.orig/itcl/itcl/doc/class.n insight-6.8.new/itcl/itcl/doc/class.n ---- insight-6.8.orig/itcl/itcl/doc/class.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/class.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: class.n,v 1.2 1998/08/11 14:40:35 welch Exp $ -+'\" RCS: $Id: class.n,v 1.5 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH class n "" itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - class \- create a class of objects - .SH SYNOPSIS --\fBclass \fIclassName\fR \fB{ -+\fBitcl::class \fIclassName\fR \fB{ - .br - \fBinherit \fIbaseClass\fR ?\fIbaseClass\fR...? - .br -@@ -227,7 +227,7 @@ - This allows common data members to be initialized as arrays. - For example: - .CS --class Foo { -+itcl::class Foo { - common boolean - set boolean(true) 1 - set boolean(false) 0 -@@ -366,7 +366,7 @@ - with its own specialized behavior. For example, suppose we have - a Toaster class that looks like this: - .CS --class Toaster { -+itcl::class Toaster { - variable crumbs 0 - method toast {nslices} { - if {$crumbs > 50} { -@@ -383,7 +383,7 @@ - the "toast" method. If we want to access the base class method, - we can qualify it with the base class name, to avoid ambiguity: - .CS --class SmartToaster { -+itcl::class SmartToaster { - inherit Toaster - method toast {nslices} { - if {$crumbs > 40} { -@@ -396,7 +396,7 @@ - Instead of hard-coding the base class name, we can use the - "chain" command like this: - .CS --class SmartToaster { -+itcl::class SmartToaster { - inherit Toaster - method toast {nslices} { - if {$crumbs > 40} { -diff -Naur insight-6.8.orig/itcl/itcl/doc/code.n insight-6.8.new/itcl/itcl/doc/code.n ---- insight-6.8.orig/itcl/itcl/doc/code.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/code.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: code.n,v 1.1 1998/07/27 18:41:59 stanton Exp $ -+'\" RCS: $Id: code.n,v 1.3 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH code n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - code \- capture the namespace context for a code fragment - .SH SYNOPSIS --\fBcode \fR?\fB-namespace \fIname\fR? \fIcommand \fR?\fIarg arg ...\fR? -+\fBitcl::code \fR?\fB-namespace \fIname\fR? \fIcommand \fR?\fIarg arg ...\fR? - .BE - - .SH DESCRIPTION -diff -Naur insight-6.8.orig/itcl/itcl/doc/configbody.n insight-6.8.new/itcl/itcl/doc/configbody.n ---- insight-6.8.orig/itcl/itcl/doc/configbody.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/configbody.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: configbody.n,v 1.1 1998/07/27 18:41:59 stanton Exp $ -+'\" RCS: $Id: configbody.n,v 1.4 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH configbody n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - configbody \- change the "config" code for a public variable - .SH SYNOPSIS --\fBconfigbody \fIclassName\fB::\fIvarName body\fR -+\fBitcl::configbody \fIclassName\fB::\fIvarName body\fR - .BE - - .SH DESCRIPTION -@@ -76,7 +76,7 @@ - the "config" code for a public variable is optional. The "-access" - option, for example, does not have it. - .CS --class File { -+itcl::class File { - private variable fid "" - - public variable name "" -@@ -96,17 +96,17 @@ - method eof {} - } - --body File::get {} { -+itcl::body File::get {} { - return [gets $fid] - } --body File::put {line} { -+itcl::body File::put {line} { - puts $fid $line - } --body File::eof {} { -+itcl::body File::eof {} { - return [::eof $fid] - } - --configbody File::name { -+itcl::configbody File::name { - if {$fid != ""} { - close $fid - } -@@ -122,7 +122,7 @@ - while {![x eof]} { - puts "=> [x get]" - } --delete object x -+itcl::delete object x - .CE - - .SH KEYWORDS -diff -Naur insight-6.8.orig/itcl/itcl/doc/delete.n insight-6.8.new/itcl/itcl/doc/delete.n ---- insight-6.8.orig/itcl/itcl/doc/delete.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/delete.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: delete.n,v 1.1 1998/07/27 18:42:00 stanton Exp $ -+'\" RCS: $Id: delete.n,v 1.4 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH delete n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - delete \- delete things in the interpreter - .SH SYNOPSIS --\fBdelete \fIoption\fR ?\fIarg arg ...\fR? -+\fBitcl::delete \fIoption\fR ?\fIarg arg ...\fR? - .BE - - .SH DESCRIPTION -@@ -47,7 +47,7 @@ - If the access command for an object resides in another namespace, - then its qualified name can be used: - .CS --delete object foo::bar::x -+itcl::delete object foo::bar::x - .CE - If an error is encountered while destructing an object, the - \fBdelete\fR command is aborted and the object remains alive. -diff -Naur insight-6.8.orig/itcl/itcl/doc/ensemble.n insight-6.8.new/itcl/itcl/doc/ensemble.n ---- insight-6.8.orig/itcl/itcl/doc/ensemble.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/ensemble.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: ensemble.n,v 1.1 1998/07/27 18:42:00 stanton Exp $ -+'\" RCS: $Id: ensemble.n,v 1.4 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH ensemble n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - ensemble \- create or modify a composite command - .SH SYNOPSIS --\fBensemble \fIensName\fR ?\fIcommand arg arg...\fR? -+\fBitcl::ensemble \fIensName\fR ?\fIcommand arg arg...\fR? - .br - or - .br -@@ -150,14 +150,14 @@ - .CE - The Tcl package could define the following ensemble: - .CS --ensemble wait part variable {name} { -+itcl::ensemble wait part variable {name} { - uplevel vwait $name - } - .CE - The Tk package could add some options to this ensemble, with a - command like this: - .CS --ensemble wait { -+itcl::ensemble wait { - part visibility {name} { - tkwait visibility $name - } -diff -Naur insight-6.8.orig/itcl/itcl/doc/find.n insight-6.8.new/itcl/itcl/doc/find.n ---- insight-6.8.orig/itcl/itcl/doc/find.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/find.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: find.n,v 1.2 2000/04/19 06:51:04 mmc Exp $ -+'\" RCS: $Id: find.n,v 1.5 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH find n 3.0 itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - find \- search for classes and objects - .SH SYNOPSIS --\fBfind \fIoption\fR ?\fIarg arg ...\fR? -+\fBitcl::find \fIoption\fR ?\fIarg arg ...\fR? - .BE - - .SH DESCRIPTION -@@ -42,7 +42,7 @@ - Therefore, you can use the following command to obtain a list where - all names are fully-qualified: - .CS --find classes ::* -+itcl::find classes ::* - .CE - .TP - \fBfind objects ?\fIpattern\fR? ?\fB-class \fIclassName\fR? ?\fB-isa \fIclassName\fR? -@@ -65,7 +65,7 @@ - Therefore, you can use the following command to obtain a list where - all names are fully-qualified: - .CS --find objects ::* -+itcl::find objects ::* - .CE - - .SH KEYWORDS -diff -Naur insight-6.8.orig/itcl/itcl/doc/is.n insight-6.8.new/itcl/itcl/doc/is.n ---- insight-6.8.orig/itcl/itcl/doc/is.n 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/is.n 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,66 @@ -+'\" -+'\" Copyright (c) 1993-1998 Lucent Technologies, Inc. -+'\" -+'\" See the file "license.terms" for information on usage and redistribution -+'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. -+'\" -+'\" RCS: $Id: is.n,v 1.6 2004/09/25 22:50:43 davygrvy Exp $ -+'\" -+.so man.macros -+.TH is n 3.3 itcl "[incr\ Tcl]" -+.BS -+'\" Note: do not modify the .SH NAME line immediately below! -+.SH NAME -+is \- test argument to see if it is a class or an object -+.SH SYNOPSIS -+\fBitcl::is \fIoption\fR ?\fIarg arg ...\fR? -+.BE -+ -+.SH DESCRIPTION -+.PP -+The \fBis\fR command is used to check if the argument given is -+a class or an object; depending on the option given. If the argument -+if a class or object, then 1 is returned. Otherwise, 0 is returned. -+The \fBis\fR command also recognizes the commands wrapped in the -+itcl \fBcode command. -+.PP -+The \fIoption\fR argument determines what action is carried out -+by the command. The legal \fIoptions\fR (which may be abbreviated) -+are: -+.TP -+\fBis class \fIcommand\fR -+Returns 1 if command is a class, and returns 0 otherwise. -+.sp -+The fully qualified name of the class needs to be given as the \fIcommand\fR -+argument. So, if a class resides in a namespace, then the namespace needs to -+be specified as well. So, if a class \fBC resides in a namespace \fBN, then -+the command should be called like: -+.CS -+\fBis N::C\fR -+ or -+\fBis ::N::C\fR -+.CE -+.TP -+\fBis\fR object ?\fB-class \fIclassName\fR? \fIcommand\fR -+Returns 1 if \fIcommand\fR is an object, and returns 0 otherwise. -+.sp -+If the optional "\fB-class\fR" parameter is specified, then the -+\fIcommand\fR will be checked within the context of the class -+given. Note that \fIclassName\fR has to exist. If not, then an -+error will be given. So, if \fIclassName\fR is uncertain to be -+a class, then the programmer will need to check it's existance -+beforehand, or wrap it in a catch statement. -+.sp -+So, if \fBc\fR is an object in the class \fBC\fR, in namespace N then -+these are the possibilities (all return 1): -+.CS -+set obj [N::C c] -+itcl::is object N::c -+itcl::is object c -+itcl::is object $obj -+itcl::is object [itcl::code c] -+.CE -+ -+.SH KEYWORDS -+class, object -+ -diff -Naur insight-6.8.orig/itcl/itcl/doc/itcl_class.n insight-6.8.new/itcl/itcl/doc/itcl_class.n ---- insight-6.8.orig/itcl/itcl/doc/itcl_class.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/itcl_class.n 1970-01-01 01:00:00.000000000 +0100 -@@ -1,419 +0,0 @@ --'\" --'\" Copyright (c) 1993-1998 Lucent Technologies, Inc. --'\" --'\" See the file "license.terms" for information on usage and redistribution --'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. --'\" --'\" RCS: $Id: itcl_class.n,v 1.1 1998/07/27 18:42:01 stanton Exp $ --'\" --.so man.macros --.TH itcl_class n 3.0 itcl "[incr\ Tcl]" --.BS --'\" Note: do not modify the .SH NAME line immediately below! --.SH NAME --itcl_class \- create a class of objects (obsolete) --.SH SYNOPSIS --\fBitcl_class \fIclassName\fR \fB{ --.br -- \fBinherit \fIbaseClass\fR ?\fIbaseClass\fR...? --.br -- \fBconstructor \fIargs\fR ?\fIinit\fR? \fIbody\fR --.br -- \fBdestructor \fIbody\fR --.br -- \fBmethod \fIname args body\fR --.br -- \fBproc \fIname args body\fR --.br -- \fBpublic \fIvarName\fR ?\fIinit\fR? ?\fIconfig\fR? --.br -- \fBprotected \fIvarName\fR ?\fIinit\fR? --.br -- \fBcommon \fIvarName\fR ?\fIinit\fR? --.br --\fB}\fR --.sp --\fIclassName objName\fR ?\fIargs...\fR? --.br --\fIclassName\fR \fB#auto\fR ?\fIargs...\fR? --.br --\fIclassName\fR \fB::\fR \fIproc\fR ?\fIargs...\fR? --.sp --\fIobjName method\fR ?\fIargs...\fR? --.sp --\fICommands available within class methods/procs:\fR --.br --\fBglobal \fIvarName\fR ?\fIvarName...\fR? --.br --\fBprevious \fIcommand\fR ?\fIargs...\fR? --.br --\fBvirtual \fIcommand\fR ?\fIargs...\fR? --.BE -- --.SH DESCRIPTION --.PP --This command is considered obsolete, but is retained for --backward-compatibility with earlier versions of \fB[incr\ Tcl]\fR. --It has been replaced by the \fBclass\fR command, which should --be used for any new development. -- --.TP --\fBitcl_class \fIclassName definition\fR --Provides the definition for a class named \fIclassName\fR. If --\fIclassName\fR is already defined, then this command returns --an error. If the class definition is successfully parsed, --\fIclassName\fR becomes a command in the current namespace --context, handling the --creation of objects and providing access to class scope. --The class \fIdefinition\fR --is evaluated as a series of Tcl statements that define --elements within the class. In addition to the usual --commands, the following class definition commands are recognized: --.RS --.TP --\fBinherit \fIbaseClass\fR ?\fIbaseClass\fR...? --Declares one or more base classes, causing the current class to --inherit their characteristics. Classes must have been defined by --a previous \fBitcl_class\fR command, or must be available to the --auto-loading facility (see "AUTO-LOADING" below). A single class --definition can contain no more than one \fBinherit\fR command. --.RS --.LP --When the same member name appears in two or more base classes, --the base class that appears first in the \fBinherit\fR list takes --precedence. For example, if classes "Foo" and "Bar" both contain --the member "x", then the "\fBinherit\fR" statement: --.CS --inherit Foo Bar --.CE --allows "Foo::x" to be accessed simply as "x" but forces "Bar::x" (and --all other inherited members named "x") to be referenced with their --explicit "\fIclass\fR::\fImember\fR" name. --.RE --.TP --\fBconstructor \fIargs\fR ?\fIinit\fR? \fIbody\fR --Declares the argument list and body used for the constructor, which --is automatically invoked whenever an object is created. Before --.VS --the \fIbody\fR is executed, the optional \fIinit\fR statement is --used to invoke any base class constructors that require arguments. --Variables in the \fIargs\fR specification can be accessed in the --\fIinit\fR code fragment, and passed to base class constructors. --After evaluating the \fIinit\fR statement, any base class --constructors that have not been executed are invoked without --arguments. This ensures that all base classes are fully --constructed before the constructor \fIbody\fR is executed. --.VE --If construction is successful, the constructor always returns --the object name\-regardless of how the \fIbody\fR is defined\-and --the object name becomes a command in the current namespace context. --If construction fails, an error message is returned. --.TP --\fBdestructor \fIbody\fR --Declares the body used for the destructor, which is automatically invoked --whenever an object is deleted. If the destructor is successful, the object --data is destroyed and the object name is removed as a command from the --interpreter. If destruction fails, an error message is returned --and the object remains. --.RS --.LP --.VS --When an object is destroyed, all destructors in a class hierarchy --are invoked in order from most- to least-specific. This is the --order that the classes are reported by the "\fBinfo heritage\fR" --command, and it is exactly the opposite of the default constructor --order. --.VE --.RE --.TP --\fBmethod \fIname args body\fR --Declares a method called \fIname\fR with an argument list \fIargs\fR --and a \fIbody\fR of Tcl statements. A method is just like the usual --Tcl "proc" except that it has transparent access to --.VS --object-specific variables, as well as --.VE --common variables. Within the class scope, a method can be invoked --like any other command\-simply by using its name. Outside of the --class scope, the method name must be prefaced by an object --name. Methods in a base class that are redefined in the current class --or hidden by another base class can be explicitly scoped using the --"\fIclass\fR::\fImethod\fR" syntax. --.TP --\fBproc \fIname args body\fR --Declares a proc called \fIname\fR with an argument list \fIargs\fR --and a \fIbody\fR of Tcl statements. A proc is similar to a method, --except that it can be invoked without referring to a specific object, --and therefore has access only to common variables\-not --.VS --to object-specific variables declared with the \fBpublic\fR --and \fBprotected\fR commands. --.VE --Within the class scope, a proc can be invoked --like any other command\-simply by using its name. In any other --namespace context, the proc is invoked using a qualified name --like "\fIclassName\fB::\fIproc\fR". --Procs in a base class that are redefined in the current --class, or hidden by another base class, can also be accessed --via their qualified name. --.TP --\fBpublic \fIvarName\fR ?\fIinit\fR? ?\fIconfig\fR? --Declares a public variable named \fIvarName\fR. Public variables are --visible in methods within the scope of their class and any derived class. --In addition, they can be modified outside of the class scope using the special --"config" formal argument (see "ARGUMENT LISTS" above). If the optional --\fIinit\fR is specified, it is used as the initial value of the variable --when a new object is created. If the optional \fIconfig\fR command --is specified, --it is invoked whenever a public variable is modified via the "config" --formal argument; if the \fIconfig\fR command returns an error, the --public variable is reset to its value before configuration, and the --method handling the configuration returns an error. --.TP --\fBprotected \fIvarName\fR ?\fIinit\fR? --Declares a protected variable named \fIvarName\fR. Protected variables --are visible in methods within the scope of their class and any derived class, --but cannot --be modified outside of the class scope. If the optional \fIinit\fR --is specified, it is used as the initial value of the variable when a new --object is created. Initialization forces the variable to be a simple --scalar value; uninitialized variables, on the other hand, can be used --as arrays. All objects have a built-in protected variable named --"this" which is initialized to the instance name for the object. --.TP --\fBcommon \fIvarName\fR ?\fIinit\fR? --Declares a common variable named \fIvarName\fR. Common variables are --shared among all objects in a class. They are visible in methods and --procs in the scope of their class and any derived class, but cannot be --modified outside of the class scope. --If the optional \fIinit\fR is specified, it is used as the --initial value of the variable. Initialization forces the variable to be --a simple scalar value; uninitialized variables, on the other hand, can --be used as arrays. --.RS --.LP --Once a common variable has been declared, it can be configured using --ordinary Tcl code within the class definition. This facility is --particularly useful when the initialization of the variable is --non-trivial\-when the variable contains an array of values, for example: --.CS --itcl_class Foo { -- . -- . -- common boolean -- set boolean(true) 1 -- set boolean(false) 0 --} --.CE --.RE --.RE -- --.SH CLASS USAGE --.PP --When a class definition has been loaded (or made available to the --auto-loader), the class name can be used as a command. --.TP --\fIclassName objName\fR ?\fIargs...\fR? --Creates a new object in class \fIclassName\fR with the name \fIobjName\fR. --Remaining arguments are passed to the constructor. If construction is --successful, the object name is returned and this name becomes a command --in the current namespace context. Otherwise, an error is returned. --.TP --\fIclassName\fR #auto ?\fIargs...\fR? --Creates a new object in class \fIclassName\fR with an automatically --generated name. Names are of the form \fIclassName\fR, --.VS --where the \fIclassName\fR part is modified to start with a lowercase --letter. In class "Toaster", for example, the "\fB#auto\fR" specification --would produce names toaster0, toaster1, etc. Remaining arguments are --.VE --passed to the constructor. If construction is successful, the object --name is returned and this name becomes a command in the current --namespace context. Otherwise, an error is returned. --.TP --\fIclassName\fR :: \fIproc\fR ?\fIargs...\fR? --Used outside of the class scope to invoke a class proc named \fIproc\fR. --Class procs are like ordinary Tcl procs, except that they are executed --in the scope of the class and therefore have transparent --access to common data members. --.RS --.LP --.VS --Notice that, unlike any other scope qualifier in \fB[incr\ Tcl]\fR, the "::" --shown above is surrounded by spaces. This is unnecessary with the --new namespace facility, and is considered obsolete. The capability --is still supported, however, to provide backward-compatibility with --earlier versions. --.VE --.RE -- --.SH OBJECT USAGE --.TP --\fIobjName method\fR ?\fIargs...\fR? --Invokes a method named \fImethod\fR to operate on the specified object. --Remaining arguments are passed to the method. The method name can --be "constructor", "destructor", any method name appearing in the --class definition, or any of the following built-in methods. --.SH BUILT-IN METHODS --.TP --\fIobjName\fR \fBisa \fIclassName\fR --Returns non-zero if the given \fIclassName\fR can be found in the --object's heritage, and zero otherwise. --.TP --\fIobjName\fR \fBdelete\fR --Invokes the destructor associated with an object. --If the destructor is successful, data associated with the object is --deleted and \fIobjName\fR is removed as a command from the --interpreter. Returns the empty string, regardless of the destructor --body. --.RS --.LP --.VS --The built-in \fBdelete\fR method has been replaced by the --"\fBdelete object\fR" command in the global namespace, and --is considered obsolete. The capability is still supported, --however, to provide backward-compatibility with earlier versions. --.VE --.RE --.TP --\fIobjName\fR \fBinfo \fIoption\fR ?\fIargs...\fR? --Returns information related to the class definition or to --a particular object named \fIobjName\fR. --The \fIoption\fR parameter includes the following things, as well as --the options recognized by the usual Tcl "info" command: --.RS --.TP --\fIobjName\fR \fBinfo class\fR --.VS --Returns the name of the most-specific class for object \fIobjName\fR. --.VE --.TP --\fIobjName\fR \fBinfo inherit\fR --Returns the list of base classes as they were defined in the --"\fBinherit\fR" command, or an empty string if this class --has no base classes. --.TP --\fIobjName\fR \fBinfo heritage\fR --Returns the current class name and the entire list of base classes in --the order that they are traversed for member lookup and object --destruction. --.TP --\fIobjName\fR \fBinfo method\fR ?\fImethodName\fR? ?\fB-args\fR? ?\fB-body\fR? --With no arguments, this command returns a list of all class methods. --If \fImethodName\fR is specified, it returns information for a specific method. --If neither of the optional \fB-args\fR or \fB-body\fR flags is specified, --a complete method definition is returned as a list of three elements --including the method name, argument list and body. Otherwise, the --requested information is returned without the method name. --If the \fImethodName\fR is not recognized, an empty string is returned. --.TP --\fIobjName\fR \fBinfo proc\fR ?\fIprocName\fR? ?\fB-args\fR? ?\fB-body\fR? --With no arguments, this command returns a list of all class procs. --If \fIprocName\fR is specified, it returns information for a specific proc. --If neither of the optional \fB-args\fR or \fB-body\fR flags is specified, --a complete proc definition is returned as a list of three elements --including the proc name, argument list and body. Otherwise, the --requested information is returned without the proc name. --If the \fIprocName\fR is not recognized, an empty string is returned. --.TP --\fIobjName\fR \fBinfo public\fR ?\fIvarName\fR? ?\fB-init\fR? ?\fB-value\fR? ?\fB-config\fR? --With no arguments, this command returns a list of all public variables. --If \fIvarName\fR is specified, it returns information for a specific public --variable. --If none of the optional \fB-init\fR, \fB-value\fR or \fB-config\fR flags --are specified, all available information is returned as a list of four --elements including the variable name, initial value, current value, --and configuration commands. Otherwise, the requested information is --returned without the variable name. --If the \fIvarName\fR is not recognized, an empty string is returned. --.TP --\fIobjName\fR \fBinfo protected\fR ?\fIvarName\fR? ?\fB-init\fR? ?\fB-value\fR? --With no arguments, this command returns a list of all protected variables. --If \fIvarName\fR is specified, it returns information for a specific protected --variable. --If neither of the optional \fB-init\fR or \fB-value\fR flags is specified, --all available information is returned as a list of three elements --including the variable name, initial value and current value. --Otherwise, the requested information is returned without the variable name. --If the \fIvarName\fR is not recognized, an empty string is returned. --.TP --\fIobjName\fR \fBinfo common\fR ?\fIvarName\fR? ?\fB-init\fR? ?\fB-value\fR? --With no arguments, this command returns a list of all common variables. --If \fIvarName\fR is specified, it returns information for a specific common --variable. --If neither of the optional \fB-init\fR or \fB-value\fR flags is specified, --all available information is returned as a list of three elements --including the variable name, initial value and current value. --Otherwise, the requested information is returned without the variable name. --If the \fIvarName\fR is not recognized, an empty string is returned. --.RE --.SH OTHER BUILT-IN COMMANDS --The following commands are also available within the scope of each class. --They cannot be accessed from outside of the class as proper methods or --procs; rather, they are useful inside the class when implementing its --functionality. --.TP --\fBglobal \fIvarName\fR ?\fIvarName...\fR? --Creates a link to one or more global variables in the current --namespace context. Global variables can also be accessed in --other namespaces by including namespace qualifiers in \fIvarName\fR. --This is useful when communicating with Tk widgets that rely on global --variables. --.TP --\fBprevious \fIcommand\fR ?\fIargs...\fR? --Invokes \fIcommand\fR in the scope of the most immediate base class --.VS --(i.e., the "previous" class) for the object. For classes using single --.VE --inheritance, this facility can be used to avoid hard-wired base class --references of the form "\fIclass\fR::\fIcommand\fR", making code easier --to maintain. For classes using multiple inheritance, the utility of --this function is dubious. --If the class at the relevant scope has no base class, an error is returned. --.TP --\fBvirtual \fIcommand\fR ?\fIargs...\fR? --.VS --Invokes \fIcommand\fR in the scope of the most-specific class for the --object. The methods within a class are automatically virtual; whenever --an unqualified method name is used, it always refers to the most-specific --implementation for that method. This function provides a way of --evaluating code fragments in a base class that have access to the --most-specific object information. It is useful, for example, for --creating base classes that can capture and save an object's state. --It inverts the usual notions of object-oriented programming, however, --and should therefore be used sparingly. --.VE -- --.SH AUTO-LOADING --.PP --Class definitions need not be loaded explicitly; they can be loaded as --needed by the usual Tcl auto-loading facility. Each directory containing --class definition files should have an accompanying "tclIndex" file. --Each line in this file identifies a Tcl procedure or \fB[incr\ Tcl]\fR --class definition and the file where the definition can be found. --.PP --For example, suppose a directory contains the definitions for classes --"Toaster" and "SmartToaster". Then the "tclIndex" file for this --directory would look like: --.CS --# Tcl autoload index file, version 2.0 for [incr Tcl] --# This file is generated by the "auto_mkindex" command --# and sourced to set up indexing information for one or --# more commands. Typically each line is a command that --# sets an element in the auto_index array, where the --# element name is the name of a command and the value is --# a script that loads the command. -- --set auto_index(::Toaster) "source $dir/Toaster.itcl" --set auto_index(::SmartToaster) "source $dir/SmartToaster.itcl" --.PP --The \fBauto_mkindex\fR command is used to automatically --generate "tclIndex" files. --.CE --The auto-loader must be made aware of this directory by appending --the directory name to the "auto_path" variable. When this is in --place, classes will be auto-loaded as needed when used in an --application. -- --.SH KEYWORDS --class, object, object-oriented -diff -Naur insight-6.8.orig/itcl/itcl/doc/itcl_info.n insight-6.8.new/itcl/itcl/doc/itcl_info.n ---- insight-6.8.orig/itcl/itcl/doc/itcl_info.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/itcl_info.n 1970-01-01 01:00:00.000000000 +0100 -@@ -1,62 +0,0 @@ --'\" --'\" Copyright (c) 1993-1998 Lucent Technologies, Inc. --'\" --'\" See the file "license.terms" for information on usage and redistribution --'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. --'\" --'\" RCS: $Id: itcl_info.n,v 1.2 1998/10/29 21:24:20 stanton Exp $ --'\" --.so man.macros --.TH itcl_info n 3.0 itcl "[incr\ Tcl]" --.BS --'\" Note: do not modify the .SH NAME line immediately below! --.SH NAME --itcl_info \- query info regarding classes and objects (obsolete) --.SH SYNOPSIS --\fBitcl_info classes ?\fIpattern\fR? --.br --\fBitcl_info objects ?\fIpattern\fR? ?\fB-class \fIclassName\fR? ?\fB-isa \fIclassName\fR? --.BE -- --.SH DESCRIPTION --.PP --This command is considered obsolete, but is retained for --backward-compatibility with earlier versions of \fB[incr\ Tcl]\fR. --It has been replaced by the "\fBfind classes\fR" and "\fBfind objects\fR" --commands, which should be used for any new development. -- --.PP --The following commands are available in the global namespace to --query information about classes and objects that have been created. --.TP --\fBitcl_info classes ?\fIpattern\fR? --Returns a list of classes available in the current namespace context. --.VS --If a class belongs to the current namespace context, its simple name --is reported; otherwise, if a class is imported from another namespace, --its fully-qualified name is reported. --.VE --.sp --If the optional \fIpattern\fR is specified, then the reported names --are compared using the rules of the "\fBstring match\fR" command, --and only matching names are reported. --.TP --\fBitcl_info objects ?\fIpattern\fR? ?\fB-class \fIclassName\fR? ?\fB-isa \fIclassName\fR? --Returns a list of objects available in the current namespace context. --.VS --If an object belongs to the current namespace context, its simple name --is reported; otherwise, if an object is imported from another namespace, --its fully-qualified access command is reported. --.VE --.sp --If the optional \fIpattern\fR is specified, then the reported names --are compared using the rules of the "\fBstring match\fR" command, --and only matching names are reported. --If the optional "\fB-class\fR" parameter is specified, this list is --restricted to objects whose most-specific class is \fIclassName\fR. --If the optional "\fB-isa\fR" parameter is specified, this list is --further restricted to objects having the given \fIclassName\fR --anywhere in their heritage. -- --.SH KEYWORDS --class, object, object-oriented -diff -Naur insight-6.8.orig/itcl/itcl/doc/itcl.n insight-6.8.new/itcl/itcl/doc/itcl.n ---- insight-6.8.orig/itcl/itcl/doc/itcl.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/itcl.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: itcl.n,v 1.1 1998/07/27 18:42:01 stanton Exp $ -+'\" RCS: $Id: itcl.n,v 1.3 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH itcl n 3.0 itcl "[incr\ Tcl]" -diff -Naur insight-6.8.orig/itcl/itcl/doc/itclsh.1 insight-6.8.new/itcl/itcl/doc/itclsh.1 ---- insight-6.8.orig/itcl/itcl/doc/itclsh.1 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/itclsh.1 1970-01-01 01:00:00.000000000 +0100 -@@ -1,30 +0,0 @@ --'\" --'\" Copyright (c) 1996 Lucent Technologies --'\" --'\" See the file "license.terms" for information on usage and redistribution --'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. --'\" --'\" $Id: itclsh.1,v 1.1 1998/07/27 18:42:02 stanton Exp $ --'\" --.so man.macros --.TH itclsh 1 "" itcl "[incr\ Tcl]" --.BS --'\" Note: do not modify the .SH NAME line immediately below! --.SH NAME --itclsh \- Simple shell for [incr Tcl] --.SH SYNOPSIS --\fBitclsh\fR ?\fIfileName arg arg ...\fR? --.BE -- --.SH DESCRIPTION --.PP --\fBitclsh\fR is a shell-like application that reads Tcl commands --from its standard input, or from a file, and evaluates them. --It is just like \fBtclsh\fR, but includes the \fB[incr\ Tcl]\fR --extensions for object-oriented programming. --.PP --See the \fBtclsh\fR man page for details concerning usage. See --the \fBitcl\fR man page for an overview of \fB[incr\ Tcl]\fR. -- --.SH KEYWORDS --Tcl, itcl, interpreter, script file, shell -diff -Naur insight-6.8.orig/itcl/itcl/doc/itclvars.n insight-6.8.new/itcl/itcl/doc/itclvars.n ---- insight-6.8.orig/itcl/itcl/doc/itclvars.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/itclvars.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: itclvars.n,v 1.1 1998/07/27 18:42:02 stanton Exp $ -+'\" RCS: $Id: itclvars.n,v 1.3 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH itclvars n 3.0 itcl "[incr\ Tcl]" -diff -Naur insight-6.8.orig/itcl/itcl/doc/local.n insight-6.8.new/itcl/itcl/doc/local.n ---- insight-6.8.orig/itcl/itcl/doc/local.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/local.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: local.n,v 1.1 1998/07/27 18:42:03 stanton Exp $ -+'\" RCS: $Id: local.n,v 1.4 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH local n "" itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - local \- create an object local to a procedure - .SH SYNOPSIS --\fBlocal \fIclassName objName\fR ?\fIarg arg ...\fR? -+\fBitcl::local \fIclassName objName\fR ?\fIarg arg ...\fR? - .BE - - .SH DESCRIPTION -@@ -37,7 +37,7 @@ - constructor/destructor show the object coming and going - as the procedure is called. - .CS --class counter { -+itcl::class counter { - private variable count 0 - constructor {} { - puts "created: $this" -@@ -68,7 +68,7 @@ - set result [test 10] - puts "test: $result" - --puts "objects: [info objects]" -+puts "objects: [itcl::find objects *]" - .CE - - .SH KEYWORDS -diff -Naur insight-6.8.orig/itcl/itcl/doc/RegisterC.3 insight-6.8.new/itcl/itcl/doc/RegisterC.3 ---- insight-6.8.orig/itcl/itcl/doc/RegisterC.3 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/RegisterC.3 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,124 @@ -+'\" -+'\" Copyright (c) 1993-1998 Lucent Technologies, Inc. -+'\" -+'\" See the file "license.terms" for information on usage and redistribution -+'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. -+'\" -+'\" RCS: $Id: RegisterC.3,v 1.5 2004/09/27 05:17:11 davygrvy Exp $ -+'\" -+.so man.macros -+.TH Itcl_RegisterC 3 3.0 itcl "[incr\ Tcl] Library Procedures" -+.BS -+'\" Note: do not modify the .SH NAME line immediately below! -+.SH NAME -+Itcl_RegisterC, Itcl_RegisterObjC, Itcl_FindC \- Associate a symbolic name with a C procedure. -+.SH SYNOPSIS -+.nf -+\fB#include \fR -+.sp -+int -+\fBItcl_RegisterC\fR(\fIinterp, cmdName, argProc, clientData, deleteProc\fR) -+.sp -+int -+\fBItcl_RegisterObjC\fR(\fIinterp, cmdName, objProc, clientData, deleteProc\fR) -+.sp -+int -+\fBItcl_FindC\fR(\fIinterp, cmdName, argProcPtr, objProcPtr, cDataPtr\fR) -+.SH ARGUMENTS -+.AP Tcl_Interp *interp in -+Interpreter in which to create new command. -+.VS 8.4 -+.AP "CONST char" *cmdName in -+.VE -+Name of command. -+.AP Tcl_CmdProc *argProc in -+Implementation of new command: \fIargProc\fR will be called whenever -+.AP Tcl_CmdProc **argProcPtr in/out -+The Tcl_CmdProc * to receive the pointer. -+.AP Tcl_ObjCmdProc *objProc in -+Implementation of the new command: \fIobjProc\fR will be called whenever -+.AP Tcl_ObjCmdProc **objProcPtr in/out -+The Tcl_ObjCmdProc * to receive the pointer. -+.AP ClientData clientData in -+Arbitrary one-word value to pass to \fIproc\fR and \fIdeleteProc\fR. -+.AP ClientData *cDataPtr in/out -+The ClientData to receive the pointer. -+.AP Tcl_CmdDeleteProc *deleteProc in -+Procedure to call before \fIcmdName\fR is deleted from the interpreter; -+allows for command-specific cleanup. If NULL, then no procedure is -+called before the command is deleted. -+.BE -+ -+.SH DESCRIPTION -+.PP -+Used to associate a symbolic name with an (argc,argv) C procedure -+that handles a Tcl command. Procedures that are registered in this -+manner can be referenced in the body of an [incr Tcl] class -+definition to specify C procedures to acting as methods/procs. -+Usually invoked in an initialization routine for an extension, -+called out in Tcl_AppInit() at the start of an application. -+.PP -+Each symbolic procedure can have an arbitrary client data value -+associated with it. This value is passed into the command -+handler whenever it is invoked. -+.PP -+A symbolic procedure name can be used only once for a given style -+(arg/obj) handler. If the name is defined with an arg-style -+handler, it can be redefined with an obj-style handler; or if -+the name is defined with an obj-style handler, it can be redefined -+with an arg-style handler. In either case, any previous client -+data is discarded and the new client data is remembered. However, -+if a name is redefined to a different handler of the same style, -+this procedure returns an error. -+.PP -+Returns TCL_OK on success, or TCL_ERROR (along with an error message -+in interp->result) if anything goes wrong. -+.PP -+C procedures can be integrated into an \fB[incr\ Tcl]\fR class -+definition to implement methods, procs, and the "config" code -+for public variables. Any body that starts with "\fB@\fR" -+is treated as the symbolic name for a C procedure. -+.PP -+Symbolic names are established by registering procedures via -+\fBItcl_RegisterC()\fR. This is usually done in the \fBTcl_AppInit()\fR -+procedure, which is automatically called when the interpreter starts up. -+In the following example, the procedure \fCMy_FooCmd()\fR is registered -+with the symbolic name "foo". This procedure can be referenced in -+the \fBbody\fR command as "\fC@foo\fR". -+.CS -+int -+Tcl_AppInit(interp) -+ Tcl_Interp *interp; /* Interpreter for application. */ -+{ -+ if (Itcl_Init(interp) == TCL_ERROR) { -+ return TCL_ERROR; -+ } -+ -+ if (Itcl_RegisterC(interp, "foo", My_FooCmd) != TCL_OK) { -+ return TCL_ERROR; -+ } -+} -+.CE -+C procedures are implemented just like ordinary Tcl commands. -+See the \fBCrtCommand\fR man page for details. Within the procedure, -+class data members can be accessed like ordinary variables -+using \fBTcl_SetVar()\fR, \fBTcl_GetVar()\fR, \fBTcl_TraceVar()\fR, -+etc. Class methods and procs can be executed like ordinary commands -+using \fBTcl_Eval()\fR. \fB[incr\ Tcl]\fR makes this possible by -+automatically setting up the context before executing the C procedure. -+.PP -+This scheme provides a natural migration path for code development. -+Classes can be developed quickly using Tcl code to implement the -+bodies. An entire application can be built and tested. When -+necessary, individual bodies can be implemented with C code to -+improve performance. -+.PP -+See the Archetype class in \fB[incr\ Tk]\fR for an example of how this -+C linking method is used. -+ -+.SH "SEE ALSO" -+Tcl_CreateCommand, Tcl_CreateObjCommand -+ -+.SH KEYWORDS -+class, object -+ -diff -Naur insight-6.8.orig/itcl/itcl/doc/scope.n insight-6.8.new/itcl/itcl/doc/scope.n ---- insight-6.8.orig/itcl/itcl/doc/scope.n 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/scope.n 2008-08-18 18:56:39.000000000 +0200 -@@ -4,7 +4,7 @@ - '\" See the file "license.terms" for information on usage and redistribution - '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. - '\" --'\" RCS: $Id: scope.n,v 1.5 1998/08/23 16:32:23 stanton Exp $ -+'\" RCS: $Id: scope.n,v 1.7 2004/09/25 22:50:43 davygrvy Exp $ - '\" - .so man.macros - .TH scope n "" itcl "[incr\ Tcl]" -@@ -13,7 +13,7 @@ - .SH NAME - scope \- capture the namespace context for a variable - .SH SYNOPSIS --\fBscope \fIname\fR -+\fBitcl::scope \fIname\fR - .BE - - .SH DESCRIPTION -diff -Naur insight-6.8.orig/itcl/itcl/doc/Stack.3 insight-6.8.new/itcl/itcl/doc/Stack.3 ---- insight-6.8.orig/itcl/itcl/doc/Stack.3 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/doc/Stack.3 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,60 @@ -+'\" -+'\" Copyright (c) 1993-1998 Lucent Technologies, Inc. -+'\" -+'\" See the file "license.terms" for information on usage and redistribution -+'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. -+'\" -+'\" RCS: $Id: Stack.3,v 1.2 2004/09/26 00:51:55 davygrvy Exp $ -+'\" -+.so man.macros -+.TH Itcl_InitStack 3 3.0 itcl "[incr\ Tcl] Library Procedures" -+.BS -+'\" Note: do not modify the .SH NAME line immediately below! -+.SH NAME -+Itcl_InitStack, Itcl_DeleteStack, Itcl_PushStack, Itcl_PopStack, Itcl_PeekStack, Itcl_GetStackValue, Itcl_GetStackSize \- Manipulate an Itcl stack object. -+.SH SYNOPSIS -+.nf -+\fB#include \fR -+.sp -+int -+\fBItcl_InitStack\fR(\fIstack\fR) -+.sp -+int -+\fBItcl_DeleteStack\fR(\fIstack\fR) -+.sp -+int -+\fBItcl_PushStack\fR(\fIcdata, stack\fR) -+.sp -+ClientData -+\fBItcl_PopStack\fR(\fIstack\fR) -+.sp -+ClientData -+\fBItcl_PeekStack\fR(\fIstack\fR) -+.sp -+ClientData -+\fBItcl_GetStackValue\fR(\fIstack, pos\fR) -+.sp -+int -+\fBItcl_GetStackSize\fR(\fIstack\fR) -+.SH ARGUMENTS -+.AP Itcl_Stack *stack in -+Stack info structure. -+.AP int pos in -+position in stack order from the top. -+.AP ClientData clientData in -+Arbitrary one-word value to save in the stack. -+.BE -+ -+.SH DESCRIPTION -+.PP -+\fBItcl_InitStack\fR initializes a stack structure and \fBItcl_DeleteStack\fR -+deletes it. \fBItcl_PushStack\fR pushes the \fIcdata\fR value onto the stack. -+\fBItcl_PopStack\fR removes and returns the top most \fIcdata\fR value. -+\fBItcl_PeekStack\fR returns the top most value, but does not remove it. -+\fBItcl_GetStackValue\fR gets a value at some index within the stack. Index -+"0" is the first value pushed onto the stack. \fBItcl_GetStackSize\fR -+returns the count of entries on the stack. -+ -+.SH KEYWORDS -+stack -+ -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_bicmds.c insight-6.8.new/itcl/itcl/generic/itcl_bicmds.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_bicmds.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_bicmds.c 2008-08-18 18:56:39.000000000 +0200 -@@ -22,7 +22,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_bicmds.c,v 1.5 2001/05/22 15:36:52 davygrvy Exp $ -+ * RCS: $Id: itcl_bicmds.c,v 1.9 2005/02/10 23:20:28 hobbs Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -323,7 +323,8 @@ - ItclObject *contextObj; - - int i, result; -- char *token, *lastval; -+ CONST char *lastval; -+ char *token; - ItclClass *cdPtr; - Tcl_HashSearch place; - Tcl_HashEntry *entry; -@@ -487,7 +488,7 @@ - * set up for public variable access. - */ - mcode = member->code; -- if (mcode && mcode->procPtr->bodyPtr) { -+ if (mcode && Itcl_IsMemberCodeImplemented(mcode)) { - - uplevelFramePtr = _Tcl_GetCallFrame(interp, 1); - oldFramePtr = _Tcl_ActivateCallFrame(interp, uplevelFramePtr); -@@ -546,7 +547,7 @@ - ItclClass *contextClass; - ItclObject *contextObj; - -- char *name, *val; -+ CONST char *name, *val; - ItclVarLookup *vlookup; - Tcl_HashEntry *entry; - -@@ -588,9 +589,9 @@ - contextObj, contextObj->classDefn); - - if (val) { -- Tcl_SetResult(interp, val, TCL_VOLATILE); -+ Tcl_SetObjResult(interp, Tcl_NewStringObj(val, -1)); - } else { -- Tcl_SetResult(interp, "", TCL_STATIC); -+ Tcl_SetObjResult(interp, Tcl_NewStringObj("", -1)); - } - return TCL_OK; - } -@@ -615,7 +616,7 @@ - ItclVarDefn *vdefn; /* public variable to be reported */ - ItclObject *contextObj; /* object containing this variable */ - { -- char *val; -+ CONST char *val; - ItclClass *cdefnPtr; - Tcl_HashEntry *entry; - ItclVarLookup *vlookup; -@@ -655,7 +656,7 @@ - contextObj->classDefn); - - if (val) { -- objPtr = Tcl_NewStringObj(val, -1); -+ objPtr = Tcl_NewStringObj((CONST84 char *)val, -1); - } else { - objPtr = Tcl_NewStringObj("", -1); - } -@@ -825,12 +826,10 @@ - * signal an error. - */ - if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- name = Tcl_GetStringFromObj(objv[0], (int*)NULL); -- Tcl_ResetResult(interp); -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "\nget info like this instead: ", -- "\n namespace eval className { info ", name, "... }", -- (char*)NULL); -+ Tcl_Obj *msg = Tcl_NewStringObj("\nget info like this instead: " \ -+ "\n namespace eval className { info ", -1); -+ Tcl_AppendStringsToObj(msg, Tcl_GetString(objv[0]), "... }", NULL); -+ Tcl_SetObjResult(interp, msg); - return TCL_ERROR; - } - -@@ -855,7 +854,7 @@ - name = contextNs->fullName; - } - -- Tcl_SetResult(interp, name, TCL_VOLATILE); -+ Tcl_SetObjResult(interp, Tcl_NewStringObj(name, -1)); - return TCL_OK; - } - -@@ -1133,7 +1132,7 @@ - break; - - case BIfBodyIdx: -- if (mcode && mcode->procPtr->bodyPtr) { -+ if (mcode && Itcl_IsMemberCodeImplemented(mcode)) { - objPtr = mcode->procPtr->bodyPtr; - } else { - objPtr = Tcl_NewStringObj("", -1); -@@ -1247,7 +1246,7 @@ - ItclObject *contextObj; - - int i, result; -- char *val, *name; -+ CONST char *val, *name; - ItclClass *cdefn; - Tcl_HashSearch place; - Tcl_HashEntry *entry; -@@ -1334,7 +1333,7 @@ - for (i=0 ; i < objc; i++) { - switch (ivlist[i]) { - case BIvConfigIdx: -- if (member->code && member->code->procPtr->bodyPtr) { -+ if (member->code && Itcl_IsMemberCodeImplemented(member->code)) { - objPtr = member->code->procPtr->bodyPtr; - } else { - objPtr = Tcl_NewStringObj("", -1); -@@ -1370,13 +1369,13 @@ - - case BIvProtectIdx: - val = Itcl_ProtectionStr(member->protection); -- objPtr = Tcl_NewStringObj(val, -1); -+ objPtr = Tcl_NewStringObj((CONST84 char *)val, -1); - break; - - case BIvTypeIdx: - val = ((member->flags & ITCL_COMMON) != 0) - ? "common" : "variable"; -- objPtr = Tcl_NewStringObj(val, -1); -+ objPtr = Tcl_NewStringObj((CONST84 char *)val, -1); - break; - - case BIvValueIdx: -@@ -1400,7 +1399,7 @@ - if (val == NULL) { - val = ""; - } -- objPtr = Tcl_NewStringObj(val, -1); -+ objPtr = Tcl_NewStringObj((CONST84 char *)val, -1); - break; - } - -@@ -1526,7 +1525,7 @@ - /* - * Return a string describing the implementation. - */ -- if (mcode && mcode->procPtr->bodyPtr) { -+ if (mcode && Itcl_IsMemberCodeImplemented(mcode)) { - objPtr = mcode->procPtr->bodyPtr; - } else { - objPtr = Tcl_NewStringObj("", -1); -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_class.c insight-6.8.new/itcl/itcl/generic/itcl_class.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_class.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_class.c 2008-08-18 18:56:39.000000000 +0200 -@@ -23,7 +23,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_class.c,v 1.9 2001/05/22 01:35:38 davygrvy Exp $ -+ * RCS: $Id: itcl_class.c,v 1.18 2004/12/14 08:16:23 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -67,10 +67,10 @@ - */ - int - Itcl_CreateClass(interp, path, info, rPtr) -- Tcl_Interp* interp; /* interpreter that will contain new class */ -- char* path; /* name of new class */ -- ItclObjectInfo *info; /* info for all known objects */ -- ItclClass **rPtr; /* returns: pointer to class definition */ -+ Tcl_Interp* interp; /* interpreter that will contain new class */ -+ CONST char* path; /* name of new class */ -+ ItclObjectInfo *info; /* info for all known objects */ -+ ItclClass **rPtr; /* returns: pointer to class definition */ - { - char *head, *tail; - Tcl_DString buffer; -@@ -89,8 +89,8 @@ - * We'll just replace the namespace data below with the - * proper class data. - */ -- classNs = Tcl_FindNamespace(interp, path, (Tcl_Namespace*)NULL, -- /* flags */ 0); -+ classNs = Tcl_FindNamespace(interp, (CONST84 char *)path, -+ (Tcl_Namespace*)NULL, /* flags */ 0); - - if (classNs != NULL && Itcl_IsClassNamespace(classNs)) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -@@ -105,8 +105,8 @@ - * usual Tcl commands from being clobbered when a programmer - * makes a bogus call like "class info". - */ -- cmd = Tcl_FindCommand(interp, path, (Tcl_Namespace*)NULL, -- /* flags */ TCL_NAMESPACE_ONLY); -+ cmd = Tcl_FindCommand(interp, (CONST84 char *)path, -+ (Tcl_Namespace*)NULL, /* flags */ TCL_NAMESPACE_ONLY); - - if (cmd != NULL && !Itcl_IsStub(cmd)) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -@@ -181,7 +181,7 @@ - Itcl_PreserveData((ClientData)cdPtr); - - if (classNs == NULL) { -- classNs = Tcl_CreateNamespace(interp, path, -+ classNs = Tcl_CreateNamespace(interp, (CONST84 char *)path, - (ClientData)cdPtr, ItclDestroyClassNamesp); - } - else { -@@ -398,9 +398,15 @@ - elem = Itcl_FirstListElem(&cdefnPtr->derived); - while (elem) { - cdPtr = (ItclClass*)Itcl_GetListValue(elem); -- elem = Itcl_NextListElem(elem); /* advance here--elem will go away */ -- - Tcl_DeleteNamespace(cdPtr->namesp); -+ -+ /* As the first namespace is now destroyed we have to get the -+ * new first element of the hash table. We cannot go to the -+ * next element from the current one, because the current one -+ * is deleted. itcl Patch #593112, for Bug #577719. -+ */ -+ -+ elem = Itcl_FirstListElem(&cdefnPtr->derived); - } - - /* -@@ -652,7 +658,7 @@ - ItclClass* - Itcl_FindClass(interp, path, autoload) - Tcl_Interp* interp; /* interpreter containing class */ -- char* path; /* path name for class */ -+ CONST char* path; /* path name for class */ - { - Tcl_Namespace* classNs; - -@@ -717,7 +723,7 @@ - Tcl_Namespace* - Itcl_FindClassNamespace(interp, path) - Tcl_Interp* interp; /* interpreter containing class */ -- char* path; /* path name for class */ -+ CONST char* path; /* path name for class */ - { - Tcl_Namespace* contextNs = Tcl_GetCurrentNamespace(interp); - Tcl_Namespace* classNs; -@@ -728,8 +734,8 @@ - * see if it's the current namespace, and try the global - * namespace as well. - */ -- classNs = Tcl_FindNamespace(interp, path, (Tcl_Namespace*)NULL, -- /* flags */ 0); -+ classNs = Tcl_FindNamespace(interp, (CONST84 char *)path, -+ (Tcl_Namespace*)NULL, /* flags */ 0); - - if ( !classNs && contextNs->parentPtr != NULL && - (*path != ':' || *(path+1) != ':') ) { -@@ -909,7 +915,7 @@ - objc-2, objv+2, &newObj); - - if (result == TCL_OK) { -- Tcl_SetResult(interp, objName, TCL_VOLATILE); -+ Tcl_SetObjResult(interp, Tcl_NewStringObj(objName, -1)); - } - - Tcl_DStringFree(&buffer); -@@ -933,12 +939,12 @@ - */ - int - Itcl_ClassCmdResolver(interp, name, context, flags, rPtr) -- Tcl_Interp *interp; /* current interpreter */ -- CONST char* name; /* name of the command being accessed */ -- Tcl_Namespace *context; /* namespace performing the resolution */ -- int flags; /* TCL_LEAVE_ERR_MSG => leave error messages -- * in interp if anything goes wrong */ -- Tcl_Command *rPtr; /* returns: resolved command */ -+ Tcl_Interp *interp; /* current interpreter */ -+ CONST char* name; /* name of the command being accessed */ -+ Tcl_Namespace *context; /* namespace performing the resolution */ -+ int flags; /* TCL_LEAVE_ERR_MSG => leave error messages -+ * in interp if anything goes wrong */ -+ Tcl_Command *rPtr; /* returns: resolved command */ - { - ItclClass *cdefn = (ItclClass*)context->clientData; - -@@ -1053,7 +1059,7 @@ - int - Itcl_ClassVarResolver(interp, name, context, flags, rPtr) - Tcl_Interp *interp; /* current interpreter */ -- char* name; /* name of the variable being accessed */ -+ CONST char* name; /* name of the variable being accessed */ - Tcl_Namespace *context; /* namespace performing the resolution */ - int flags; /* TCL_LEAVE_ERR_MSG => leave error messages - * in interp if anything goes wrong */ -@@ -1206,7 +1212,7 @@ - int - Itcl_ClassCompiledVarResolver(interp, name, length, context, rPtr) - Tcl_Interp *interp; /* current interpreter */ -- char* name; /* name of the variable being accessed */ -+ CONST char* name; /* name of the variable being accessed */ - int length; /* number of characters in name */ - Tcl_Namespace *context; /* namespace performing the resolution */ - Tcl_ResolvedVarInfo **rPtr; /* returns: info that makes it possible to -@@ -1675,13 +1681,13 @@ - * anything goes wrong, this returns NULL. - * ------------------------------------------------------------------------ - */ --char* -+CONST char* - Itcl_GetCommonVar(interp, name, contextClass) - Tcl_Interp *interp; /* current interpreter */ -- char *name; /* name of desired instance variable */ -+ CONST char *name; /* name of desired instance variable */ - ItclClass *contextClass; /* name is interpreted in this scope */ - { -- char *val = NULL; -+ CONST char *val = NULL; - int result; - Tcl_CallFrame frame; - -@@ -1694,7 +1700,7 @@ - contextClass->namesp, /*isProcCallFrame*/ 0); - - if (result == TCL_OK) { -- val = Tcl_GetVar2(interp, name, (char*)NULL, 0); -+ val = Tcl_GetVar2(interp, (CONST84 char *)name, (char*)NULL, 0); - Tcl_PopCallFrame(interp); - } - return val; -@@ -1714,7 +1720,7 @@ - Itcl_CreateMember(interp, cdefn, name) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclClass *cdefn; /* class definition */ -- char* name; /* name of new member */ -+ CONST char* name; /* name of new member */ - { - ItclMember *memPtr; - int fullsize; -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_cmds.c insight-6.8.new/itcl/itcl/generic/itcl_cmds.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_cmds.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_cmds.c 2008-08-18 18:56:39.000000000 +0200 -@@ -21,7 +21,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_cmds.c,v 1.13 2001/05/22 01:50:21 davygrvy Exp $ -+ * RCS: $Id: itcl_cmds.c,v 1.25 2005/03/25 21:08:03 hobbs Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -69,6 +69,13 @@ - lappend dirs [file join $bindir .. .. library]\n\ - lappend dirs [file join $bindir .. .. itcl library]\n\ - lappend dirs [file join $bindir .. .. .. itcl library]\n\ -+ # On MacOSX, check the directories in the tcl_pkgPath\n\ -+ if {[string equal $::tcl_platform(platform) \"unix\"] && \ -+ [string equal $::tcl_platform(os) \"Darwin\"]} {\n\ -+ foreach d $::tcl_pkgPath {\n\ -+ lappend dirs [file join $d itcl$version]\n\ -+ }\n\ -+ }\n\ - }\n\ - foreach i $dirs {\n\ - set library $i\n\ -@@ -101,9 +108,6 @@ - return $ptr\n\ - }"; - --extern ItclStubs itclStubs; -- -- - int itclCompatFlags = -1; - - -@@ -130,9 +134,15 @@ - Tcl_Namespace *itclNs; - ItclObjectInfo *info; - -- if (Tcl_InitStubs(interp, "8.1", 0) == NULL) { -- return TCL_ERROR; -- }; -+#ifndef USE_TCL_STUBS -+ if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, 1) == NULL) { -+ return TCL_ERROR; -+ } -+#else -+ if (Tcl_InitStubs(interp, TCL_VERSION, 1) == NULL) { -+ return TCL_ERROR; -+ } -+#endif - - /* - * See if [incr Tcl] is already installed. -@@ -145,21 +155,26 @@ - /* - * Set the compatability options. Stubs allows us to load into many - * version of the Tcl core. Some problems have crept-in, and we need -- * to adapt dynamically regarding use of some internal structures that -- * have changed since 8.1.0 -- * -- * TODO: make a TIP for exporting a Tcl_CommandIsDeleted function in the core. -+ * to adapt dynamically regarding use of some internal structures and -+ * functions that have changed (or have been added) since 8.1.0 - */ -+#if TCL_DOES_STUBS - if (itclCompatFlags == -1) { - int maj, min, ptch, type; - - itclCompatFlags = 0; - Tcl_GetVersion(&maj, &min, &ptch, &type); - -+ /* ver >= 8.4a1 */ - if ((maj == 8) && (min >= 4)) { -- itclCompatFlags = ITCL_COMPAT_USECMDFLAGS; -+ /* TODO: make a TIP for exporting a Tcl_CommandIsDeleted -+ * function in the core. */ -+ itclCompatFlags |= ITCL_COMPAT_USECMDFLAGS; - } - } -+#else -+ itclCompatFlags = 0; -+#endif - - - /* -@@ -248,6 +263,28 @@ - Itcl_PreserveData((ClientData)info); - - /* -+ * Create the "itcl::is" command to test object -+ * and classes existence. -+ */ -+ if (Itcl_CreateEnsemble(interp, "::itcl::is") != TCL_OK) { -+ return TCL_ERROR; -+ } -+ if (Itcl_AddEnsemblePart(interp, "::itcl::is", -+ "class", "name", Itcl_IsClassCmd, -+ (ClientData)info, Itcl_ReleaseData) != TCL_OK) { -+ return TCL_ERROR; -+ } -+ Itcl_PreserveData((ClientData)info); -+ -+ if (Itcl_AddEnsemblePart(interp, "::itcl::is", -+ "object", "?-class classname? name", Itcl_IsObjectCmd, -+ (ClientData)info, Itcl_ReleaseData) != TCL_OK) { -+ return TCL_ERROR; -+ } -+ Itcl_PreserveData((ClientData)info); -+ -+ -+ /* - * Add "code" and "scope" commands for handling scoped values. - */ - Tcl_CreateObjCommand(interp, "::itcl::code", Itcl_CodeCmd, -@@ -297,22 +334,29 @@ - } - - /* -- * Install stuff needed for backward compatibility with previous -- * version of [incr Tcl]. -- */ -- if (Itcl_OldInit(interp, info) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* - * Export all commands in the "itcl" namespace so that they - * can be imported with something like "namespace import itcl::*" - */ - itclNs = Tcl_FindNamespace(interp, "::itcl", (Tcl_Namespace*)NULL, - TCL_LEAVE_ERR_MSG); - -+ /* -+ * This was changed from a glob export (itcl::*) to explicit -+ * command exports, so that the itcl::is command can *not* be -+ * exported. This is done for concern that the itcl::is command -+ * imported might be confusing ("is"). -+ */ - if (!itclNs || -- Tcl_Export(interp, itclNs, "*", /* resetListFirst */ 1) != TCL_OK) { -+ (Tcl_Export(interp, itclNs, "body", /* reset */ 1) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "class", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "code", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "configbody", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "delete", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "delete_helper", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "ensemble", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "find", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "local", 0) != TCL_OK) || -+ (Tcl_Export(interp, itclNs, "scope", 0) != TCL_OK)) { - return TCL_ERROR; - } - -@@ -329,10 +373,20 @@ - /* - * Package is now loaded. - */ -- if (Tcl_PkgProvideEx(interp, "Itcl", ITCL_VERSION, -- (ClientData) &itclStubs) != TCL_OK) { -+#if TCL_DOES_STUBS -+ { -+ extern ItclStubs itclStubs; -+ if (Tcl_PkgProvideEx(interp, "Itcl", ITCL_VERSION, -+ (ClientData)&itclStubs) != TCL_OK) { -+ return TCL_ERROR; -+ } -+ } -+#else -+ if (Tcl_PkgProvide(interp, "Itcl", ITCL_VERSION) != TCL_OK) { - return TCL_ERROR; - } -+#endif -+ - return TCL_OK; - } - -@@ -469,7 +523,7 @@ - int forceFullNames = 0; - - char *pattern; -- CONST char *name; -+ CONST char *cmdName; - int newEntry, handledActiveNs; - Tcl_HashTable unique; - Tcl_HashEntry *entry; -@@ -477,7 +531,7 @@ - Itcl_Stack search; - Tcl_Command cmd, originalCmd; - Namespace *nsPtr; -- Tcl_Obj *listPtr, *objPtr; -+ Tcl_Obj *objPtr; - - if (objc > 2) { - Tcl_WrongNumArgs(interp, 1, objv, "?pattern?"); -@@ -485,7 +539,7 @@ - } - - if (objc == 2) { -- pattern = Tcl_GetStringFromObj(objv[1], (int*)NULL); -+ pattern = Tcl_GetString(objv[1]); - forceFullNames = (strstr(pattern, "::") != NULL); - } else { - pattern = NULL; -@@ -497,7 +551,6 @@ - * in this interpreter. If we find any commands that - * represent classes, report them. - */ -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); - - Itcl_InitStack(&search); - Itcl_PushStack((ClientData)globalNs, &search); -@@ -532,10 +585,10 @@ - - objPtr = Tcl_NewStringObj((char*)NULL, 0); - Tcl_GetCommandFullName(interp, cmd, objPtr); -- name = Tcl_GetStringFromObj(objPtr, (int*)NULL); -+ cmdName = Tcl_GetString(objPtr); - } else { -- name = Tcl_GetCommandName(interp, cmd); -- objPtr = Tcl_NewStringObj(name, -1); -+ cmdName = Tcl_GetCommandName(interp, cmd); -+ objPtr = Tcl_NewStringObj((CONST84 char *)cmdName, -1); - } - - if (originalCmd) { -@@ -543,10 +596,16 @@ - } - Tcl_CreateHashEntry(&unique, (char*)cmd, &newEntry); - -- if (newEntry && (!pattern || Tcl_StringMatch(name, pattern))) { -+ if (newEntry && -+ (!pattern || Tcl_StringMatch((CONST84 char *)cmdName, -+ pattern))) { - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, -- listPtr, objPtr); -- } -+ Tcl_GetObjResult(interp), objPtr); -+ } else { -+ /* if not appended to the result, free objPtr. */ -+ Tcl_DecrRefCount(objPtr); -+ } -+ - } - entry = Tcl_NextHashEntry(&place); - } -@@ -565,7 +624,6 @@ - Tcl_DeleteHashTable(&unique); - Itcl_DeleteStack(&search); - -- Tcl_SetObjResult(interp, listPtr); - return TCL_OK; - } - -@@ -598,8 +656,8 @@ - ItclClass *classDefn = NULL; - ItclClass *isaDefn = NULL; - -- char *name, *token; -- CONST char *cmdName; -+ char *name = NULL, *token = NULL; -+ CONST char *cmdName = NULL; - int pos, newEntry, match, handledActiveNs; - ItclObject *contextObj; - Tcl_HashTable unique; -@@ -609,7 +667,7 @@ - Tcl_Command cmd, originalCmd; - Namespace *nsPtr; - Command *cmdPtr; -- Tcl_Obj *listPtr, *objPtr; -+ Tcl_Obj *objPtr; - - /* - * Parse arguments: -@@ -617,7 +675,7 @@ - */ - pos = 0; - while (++pos < objc) { -- token = Tcl_GetStringFromObj(objv[pos], (int*)NULL); -+ token = Tcl_GetString(objv[pos]); - if (*token != '-') { - if (!pattern) { - pattern = token; -@@ -627,7 +685,7 @@ - } - } - else if ((pos+1 < objc) && (strcmp(token,"-class") == 0)) { -- name = Tcl_GetStringFromObj(objv[pos+1], (int*)NULL); -+ name = Tcl_GetString(objv[pos+1]); - classDefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (classDefn == NULL) { - return TCL_ERROR; -@@ -635,7 +693,7 @@ - pos++; - } - else if ((pos+1 < objc) && (strcmp(token,"-isa") == 0)) { -- name = Tcl_GetStringFromObj(objv[pos+1], (int*)NULL); -+ name = Tcl_GetString(objv[pos+1]); - isaDefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (isaDefn == NULL) { - return TCL_ERROR; -@@ -669,7 +727,6 @@ - * in this interpreter. If we find any commands that - * represent objects, report them. - */ -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); - - Itcl_InitStack(&search); - Itcl_PushStack((ClientData)globalNs, &search); -@@ -709,16 +766,18 @@ - - objPtr = Tcl_NewStringObj((char*)NULL, 0); - Tcl_GetCommandFullName(interp, cmd, objPtr); -- name = Tcl_GetStringFromObj(objPtr, (int*)NULL); -+ cmdName = Tcl_GetString(objPtr); - } else { - cmdName = Tcl_GetCommandName(interp, cmd); -- objPtr = Tcl_NewStringObj(cmdName, -1); -+ objPtr = Tcl_NewStringObj((CONST84 char *)cmdName, -1); - } - - Tcl_CreateHashEntry(&unique, (char*)cmd, &newEntry); - - match = 0; -- if (newEntry && (!pattern || Tcl_StringMatch(name, pattern))) { -+ if (newEntry && -+ (!pattern || Tcl_StringMatch((CONST84 char *)cmdName, -+ pattern))) { - if (!classDefn || (contextObj->classDefn == classDefn)) { - if (!isaDefn) { - match = 1; -@@ -736,10 +795,9 @@ - - if (match) { - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, -- listPtr, objPtr); -+ Tcl_GetObjResult(interp), objPtr); - } else { -- Tcl_IncrRefCount(objPtr); /* throw away the name */ -- Tcl_DecrRefCount(objPtr); -+ Tcl_DecrRefCount(objPtr); /* throw away the name */ - } - } - entry = Tcl_NextHashEntry(&place); -@@ -759,7 +817,6 @@ - Tcl_DeleteHashTable(&unique); - Itcl_DeleteStack(&search); - -- Tcl_SetObjResult(interp, listPtr); - return TCL_OK; - } - -@@ -821,9 +878,8 @@ - } - else if (result != TCL_OK) { - char mesg[256], *name; -- name = Tcl_GetStringFromObj(objv[0], (int*)NULL); -- sprintf(mesg, "\n (%.100s body line %d)", -- name, interp->errorLine); -+ name = Tcl_GetString(objv[0]); -+ sprintf(mesg, "\n (%.100s body line %d)", name, interp->errorLine); - Tcl_AddErrorInfo(interp, mesg); - } - -@@ -865,7 +921,7 @@ - * then delete them. - */ - for (i=1; i < objc; i++) { -- name = Tcl_GetStringFromObj(objv[i], (int*)NULL); -+ name = Tcl_GetString(objv[i]); - cdefn = Itcl_FindClass(interp, name, /* autoload */ 1); - if (cdefn == NULL) { - return TCL_ERROR; -@@ -873,7 +929,7 @@ - } - - for (i=1; i < objc; i++) { -- name = Tcl_GetStringFromObj(objv[i], (int*)NULL); -+ name = Tcl_GetString(objv[i]); - cdefn = Itcl_FindClass(interp, name, /* autoload */ 0); - - if (cdefn) { -@@ -1454,3 +1510,181 @@ - { - /* do nothing */ - } -+ -+ -+/* -+ * ------------------------------------------------------------------------ -+ * Itcl_IsObjectCmd() -+ * -+ * Invoked by Tcl whenever the user issues an "itcl::is object" -+ * command to test whether the argument is an object or not. -+ * syntax: -+ * -+ * itcl::is object ?-class classname? commandname -+ * -+ * Returns 1 if it is an object, 0 otherwise -+ * ------------------------------------------------------------------------ -+ */ -+int -+Itcl_IsObjectCmd(clientData, interp, objc, objv) -+ ClientData clientData; /* class/object info */ -+ Tcl_Interp *interp; /* current interpreter */ -+ int objc; /* number of arguments */ -+ Tcl_Obj *CONST objv[]; /* argument objects */ -+{ -+ -+ int classFlag = 0; -+ int idx = 0; -+ char *name; -+ char *cname; -+ char *cmdName; -+ char *token; -+ Tcl_Command cmd; -+ Command *cmdPtr; -+ Tcl_Namespace *contextNs = NULL; -+ ItclClass *classDefn = NULL; -+ ItclObject *contextObj; -+ -+ /* -+ * Handle the arguments. -+ * objc needs to be either: -+ * 2 itcl::is object commandname -+ * 4 itcl::is object -class classname commandname -+ */ -+ if (objc != 2 && objc != 4) { -+ Tcl_WrongNumArgs(interp, 1, objv, "?-class classname? commandname"); -+ return TCL_ERROR; -+ } -+ -+ /* -+ * Parse the command args. Look for the -class -+ * keyword. -+ */ -+ for (idx=1; idx < objc; idx++) { -+ token = Tcl_GetString(objv[idx]); -+ -+ if (strcmp(token,"-class") == 0) { -+ cname = Tcl_GetString(objv[idx+1]); -+ classDefn = Itcl_FindClass(interp, cname, /* no autoload */ 0); -+ -+ if (classDefn == NULL) { -+ return TCL_ERROR; -+ } -+ -+ idx++; -+ classFlag = 1; -+ } else { -+ name = Tcl_GetString(objv[idx]); -+ } -+ -+ } /* end for objc loop */ -+ -+ -+ /* -+ * The object name may be a scoped value of the form -+ * "namespace inscope ". If it is, -+ * decode it. -+ */ -+ if (Itcl_DecodeScopedCommand(interp, name, &contextNs, &cmdName) -+ != TCL_OK) { -+ return TCL_ERROR; -+ } -+ -+ cmd = Tcl_FindCommand(interp, cmdName, contextNs, /* flags */ 0); -+ -+ /* -+ * Need the NULL test, or the test will fail if cmd is NULL -+ */ -+ if (cmd == NULL || ! Itcl_IsObject(cmd)) { -+ Tcl_SetObjResult(interp, Tcl_NewBooleanObj(0)); -+ return TCL_OK; -+ } -+ -+ /* -+ * Handle the case when the -class flag is given -+ */ -+ if (classFlag) { -+ cmdPtr = (Command*)cmd; -+ contextObj = (ItclObject*)cmdPtr->objClientData; -+ -+ if (! Itcl_ObjectIsa(contextObj, classDefn)) { -+ -+ Tcl_SetObjResult(interp, Tcl_NewBooleanObj(0)); -+ return TCL_OK; -+ } -+ -+ } -+ -+ /* -+ * Got this far, so assume that it is a valid object -+ */ -+ Tcl_SetObjResult(interp, Tcl_NewBooleanObj(1)); -+ ckfree(cmdName); -+ -+ return TCL_OK; -+} -+ -+ -+ -+/* -+ * ------------------------------------------------------------------------ -+ * Itcl_IsClassCmd() -+ * -+ * Invoked by Tcl whenever the user issues an "itcl::is class" -+ * command to test whether the argument is an itcl class or not -+ * syntax: -+ * -+ * itcl::is class commandname -+ * -+ * Returns 1 if it is a class, 0 otherwise -+ * ------------------------------------------------------------------------ -+ */ -+int -+Itcl_IsClassCmd(clientData, interp, objc, objv) -+ ClientData clientData; /* class/object info */ -+ Tcl_Interp *interp; /* current interpreter */ -+ int objc; /* number of arguments */ -+ Tcl_Obj *CONST objv[]; /* argument objects */ -+{ -+ -+ char *cname; -+ char *name; -+ ItclClass *classDefn = NULL; -+ Tcl_Namespace *contextNs = NULL; -+ -+ /* -+ * Need itcl::is class classname -+ */ -+ if (objc != 2) { -+ Tcl_WrongNumArgs(interp, 1, objv, "commandname"); -+ return TCL_ERROR; -+ } -+ -+ name = Tcl_GetString(objv[1]); -+ -+ /* -+ * The object name may be a scoped value of the form -+ * "namespace inscope ". If it is, -+ * decode it. -+ */ -+ if (Itcl_DecodeScopedCommand(interp, name, &contextNs, &cname) != TCL_OK) { -+ return TCL_ERROR; -+ } -+ -+ classDefn = Itcl_FindClass(interp, cname, /* no autoload */ 0); -+ -+ /* -+ * If classDefn is NULL, then it wasn't found, hence it -+ * isn't a class -+ */ -+ if (classDefn != NULL) { -+ Tcl_SetObjResult(interp, Tcl_NewBooleanObj(1)); -+ } else { -+ Tcl_SetObjResult(interp, Tcl_NewBooleanObj(0)); -+ } -+ -+ ckfree(cname); -+ -+ return TCL_OK; -+ -+} /* end Itcl_IsClassCmd function */ -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl.decls insight-6.8.new/itcl/itcl/generic/itcl.decls ---- insight-6.8.orig/itcl/itcl/generic/itcl.decls 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl.decls 2008-08-18 18:56:39.000000000 +0200 -@@ -10,7 +10,7 @@ - # See the file "license.terms" for information on usage and redistribution - # of this file, and for a DISCLAIMER OF ALL WARRANTIES. - # --# RCS: $Id: itcl.decls,v 1.2 2000/08/04 22:11:50 davidg Exp $ -+# RCS: $Id: itcl.decls,v 1.3 2003/12/17 02:25:37 davygrvy Exp $ - - library itcl - -@@ -33,18 +33,19 @@ - int Itcl_SafeInit(Tcl_Interp *interp) - } - declare 2 generic { -- int Itcl_RegisterC(Tcl_Interp *interp, char *name, \ -+ int Itcl_RegisterC(Tcl_Interp *interp, CONST char *name, \ - Tcl_CmdProc *proc, ClientData clientData, \ - Tcl_CmdDeleteProc *deleteProc) - } - declare 3 generic { -- int Itcl_RegisterObjC (Tcl_Interp *interp, char *name, \ -+ int Itcl_RegisterObjC (Tcl_Interp *interp, CONST char *name, \ - Tcl_ObjCmdProc *proc, ClientData clientData, \ - Tcl_CmdDeleteProc *deleteProc) - } - declare 4 generic { -- int Itcl_FindC(Tcl_Interp *interp, char *name, Tcl_CmdProc **argProcPtr, \ -- Tcl_ObjCmdProc **objProcPtr, ClientData *cDataPtr) -+ int Itcl_FindC(Tcl_Interp *interp, CONST char *name, \ -+ Tcl_CmdProc **argProcPtr, Tcl_ObjCmdProc **objProcPtr, \ -+ ClientData *cDataPtr) - } - declare 5 generic { - void Itcl_InitStack(Itcl_Stack *stack) -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclDecls.h insight-6.8.new/itcl/itcl/generic/itclDecls.h ---- insight-6.8.orig/itcl/itcl/generic/itclDecls.h 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclDecls.h 2008-08-18 18:56:39.000000000 +0200 -@@ -3,12 +3,10 @@ - * - * Declarations of functions in the platform independent public Itcl API. - * -- * Copyright (c) 1998-1999 by XXXX -- * - * See the file "license.terms" for information on usage and redistribution - * of this file, and for a DISCLAIMER OF ALL WARRANTIES. - * -- * RCS: $Id: itclDecls.h,v 1.2 2000/08/04 22:11:50 davidg Exp $ -+ * RCS: $Id: itclDecls.h,v 1.9 2003/12/23 05:22:45 davygrvy Exp $ - */ - - #ifndef _ITCLDECLS -@@ -26,79 +24,158 @@ - * Exported function declarations: - */ - -+#ifndef Itcl_Init_TCL_DECLARED -+#define Itcl_Init_TCL_DECLARED - /* 0 */ --EXTERN int Itcl_Init _ANSI_ARGS_((Tcl_Interp * interp)); -+TCL_EXTERN(int) Itcl_Init _ANSI_ARGS_((Tcl_Interp * interp)); -+#endif -+#ifndef Itcl_SafeInit_TCL_DECLARED -+#define Itcl_SafeInit_TCL_DECLARED - /* 1 */ --EXTERN int Itcl_SafeInit _ANSI_ARGS_((Tcl_Interp * interp)); -+TCL_EXTERN(int) Itcl_SafeInit _ANSI_ARGS_((Tcl_Interp * interp)); -+#endif -+#ifndef Itcl_RegisterC_TCL_DECLARED -+#define Itcl_RegisterC_TCL_DECLARED - /* 2 */ --EXTERN int Itcl_RegisterC _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, Tcl_CmdProc * proc, -+TCL_EXTERN(int) Itcl_RegisterC _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * name, Tcl_CmdProc * proc, - ClientData clientData, - Tcl_CmdDeleteProc * deleteProc)); -+#endif -+#ifndef Itcl_RegisterObjC_TCL_DECLARED -+#define Itcl_RegisterObjC_TCL_DECLARED - /* 3 */ --EXTERN int Itcl_RegisterObjC _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, Tcl_ObjCmdProc * proc, -+TCL_EXTERN(int) Itcl_RegisterObjC _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * name, Tcl_ObjCmdProc * proc, - ClientData clientData, - Tcl_CmdDeleteProc * deleteProc)); -+#endif -+#ifndef Itcl_FindC_TCL_DECLARED -+#define Itcl_FindC_TCL_DECLARED - /* 4 */ --EXTERN int Itcl_FindC _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, Tcl_CmdProc ** argProcPtr, -+TCL_EXTERN(int) Itcl_FindC _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * name, Tcl_CmdProc ** argProcPtr, - Tcl_ObjCmdProc ** objProcPtr, - ClientData * cDataPtr)); -+#endif -+#ifndef Itcl_InitStack_TCL_DECLARED -+#define Itcl_InitStack_TCL_DECLARED - /* 5 */ --EXTERN void Itcl_InitStack _ANSI_ARGS_((Itcl_Stack * stack)); -+TCL_EXTERN(void) Itcl_InitStack _ANSI_ARGS_((Itcl_Stack * stack)); -+#endif -+#ifndef Itcl_DeleteStack_TCL_DECLARED -+#define Itcl_DeleteStack_TCL_DECLARED - /* 6 */ --EXTERN void Itcl_DeleteStack _ANSI_ARGS_((Itcl_Stack * stack)); -+TCL_EXTERN(void) Itcl_DeleteStack _ANSI_ARGS_((Itcl_Stack * stack)); -+#endif -+#ifndef Itcl_PushStack_TCL_DECLARED -+#define Itcl_PushStack_TCL_DECLARED - /* 7 */ --EXTERN void Itcl_PushStack _ANSI_ARGS_((ClientData cdata, -+TCL_EXTERN(void) Itcl_PushStack _ANSI_ARGS_((ClientData cdata, - Itcl_Stack * stack)); -+#endif -+#ifndef Itcl_PopStack_TCL_DECLARED -+#define Itcl_PopStack_TCL_DECLARED - /* 8 */ --EXTERN ClientData Itcl_PopStack _ANSI_ARGS_((Itcl_Stack * stack)); -+TCL_EXTERN(ClientData) Itcl_PopStack _ANSI_ARGS_((Itcl_Stack * stack)); -+#endif -+#ifndef Itcl_PeekStack_TCL_DECLARED -+#define Itcl_PeekStack_TCL_DECLARED - /* 9 */ --EXTERN ClientData Itcl_PeekStack _ANSI_ARGS_((Itcl_Stack * stack)); -+TCL_EXTERN(ClientData) Itcl_PeekStack _ANSI_ARGS_((Itcl_Stack * stack)); -+#endif -+#ifndef Itcl_GetStackValue_TCL_DECLARED -+#define Itcl_GetStackValue_TCL_DECLARED - /* 10 */ --EXTERN ClientData Itcl_GetStackValue _ANSI_ARGS_((Itcl_Stack * stack, -+TCL_EXTERN(ClientData) Itcl_GetStackValue _ANSI_ARGS_((Itcl_Stack * stack, - int pos)); -+#endif -+#ifndef Itcl_InitList_TCL_DECLARED -+#define Itcl_InitList_TCL_DECLARED - /* 11 */ --EXTERN void Itcl_InitList _ANSI_ARGS_((Itcl_List * listPtr)); -+TCL_EXTERN(void) Itcl_InitList _ANSI_ARGS_((Itcl_List * listPtr)); -+#endif -+#ifndef Itcl_DeleteList_TCL_DECLARED -+#define Itcl_DeleteList_TCL_DECLARED - /* 12 */ --EXTERN void Itcl_DeleteList _ANSI_ARGS_((Itcl_List * listPtr)); -+TCL_EXTERN(void) Itcl_DeleteList _ANSI_ARGS_((Itcl_List * listPtr)); -+#endif -+#ifndef Itcl_CreateListElem_TCL_DECLARED -+#define Itcl_CreateListElem_TCL_DECLARED - /* 13 */ --EXTERN Itcl_ListElem* Itcl_CreateListElem _ANSI_ARGS_((Itcl_List * listPtr)); -+TCL_EXTERN(Itcl_ListElem*) Itcl_CreateListElem _ANSI_ARGS_(( -+ Itcl_List * listPtr)); -+#endif -+#ifndef Itcl_DeleteListElem_TCL_DECLARED -+#define Itcl_DeleteListElem_TCL_DECLARED - /* 14 */ --EXTERN Itcl_ListElem* Itcl_DeleteListElem _ANSI_ARGS_(( -+TCL_EXTERN(Itcl_ListElem*) Itcl_DeleteListElem _ANSI_ARGS_(( - Itcl_ListElem * elemPtr)); -+#endif -+#ifndef Itcl_InsertList_TCL_DECLARED -+#define Itcl_InsertList_TCL_DECLARED - /* 15 */ --EXTERN Itcl_ListElem* Itcl_InsertList _ANSI_ARGS_((Itcl_List * listPtr, -+TCL_EXTERN(Itcl_ListElem*) Itcl_InsertList _ANSI_ARGS_((Itcl_List * listPtr, - ClientData val)); -+#endif -+#ifndef Itcl_InsertListElem_TCL_DECLARED -+#define Itcl_InsertListElem_TCL_DECLARED - /* 16 */ --EXTERN Itcl_ListElem* Itcl_InsertListElem _ANSI_ARGS_((Itcl_ListElem * pos, -- ClientData val)); -+TCL_EXTERN(Itcl_ListElem*) Itcl_InsertListElem _ANSI_ARGS_(( -+ Itcl_ListElem * pos, ClientData val)); -+#endif -+#ifndef Itcl_AppendList_TCL_DECLARED -+#define Itcl_AppendList_TCL_DECLARED - /* 17 */ --EXTERN Itcl_ListElem* Itcl_AppendList _ANSI_ARGS_((Itcl_List * listPtr, -+TCL_EXTERN(Itcl_ListElem*) Itcl_AppendList _ANSI_ARGS_((Itcl_List * listPtr, - ClientData val)); -+#endif -+#ifndef Itcl_AppendListElem_TCL_DECLARED -+#define Itcl_AppendListElem_TCL_DECLARED - /* 18 */ --EXTERN Itcl_ListElem* Itcl_AppendListElem _ANSI_ARGS_((Itcl_ListElem * pos, -- ClientData val)); -+TCL_EXTERN(Itcl_ListElem*) Itcl_AppendListElem _ANSI_ARGS_(( -+ Itcl_ListElem * pos, ClientData val)); -+#endif -+#ifndef Itcl_SetListValue_TCL_DECLARED -+#define Itcl_SetListValue_TCL_DECLARED - /* 19 */ --EXTERN void Itcl_SetListValue _ANSI_ARGS_(( -+TCL_EXTERN(void) Itcl_SetListValue _ANSI_ARGS_(( - Itcl_ListElem * elemPtr, ClientData val)); -+#endif -+#ifndef Itcl_EventuallyFree_TCL_DECLARED -+#define Itcl_EventuallyFree_TCL_DECLARED - /* 20 */ --EXTERN void Itcl_EventuallyFree _ANSI_ARGS_((ClientData cdata, -+TCL_EXTERN(void) Itcl_EventuallyFree _ANSI_ARGS_((ClientData cdata, - Tcl_FreeProc * fproc)); -+#endif -+#ifndef Itcl_PreserveData_TCL_DECLARED -+#define Itcl_PreserveData_TCL_DECLARED - /* 21 */ --EXTERN void Itcl_PreserveData _ANSI_ARGS_((ClientData cdata)); -+TCL_EXTERN(void) Itcl_PreserveData _ANSI_ARGS_((ClientData cdata)); -+#endif -+#ifndef Itcl_ReleaseData_TCL_DECLARED -+#define Itcl_ReleaseData_TCL_DECLARED - /* 22 */ --EXTERN void Itcl_ReleaseData _ANSI_ARGS_((ClientData cdata)); -+TCL_EXTERN(void) Itcl_ReleaseData _ANSI_ARGS_((ClientData cdata)); -+#endif -+#ifndef Itcl_SaveInterpState_TCL_DECLARED -+#define Itcl_SaveInterpState_TCL_DECLARED - /* 23 */ --EXTERN Itcl_InterpState Itcl_SaveInterpState _ANSI_ARGS_(( -+TCL_EXTERN(Itcl_InterpState) Itcl_SaveInterpState _ANSI_ARGS_(( - Tcl_Interp* interp, int status)); -+#endif -+#ifndef Itcl_RestoreInterpState_TCL_DECLARED -+#define Itcl_RestoreInterpState_TCL_DECLARED - /* 24 */ --EXTERN int Itcl_RestoreInterpState _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_RestoreInterpState _ANSI_ARGS_(( - Tcl_Interp* interp, Itcl_InterpState state)); -+#endif -+#ifndef Itcl_DiscardInterpState_TCL_DECLARED -+#define Itcl_DiscardInterpState_TCL_DECLARED - /* 25 */ --EXTERN void Itcl_DiscardInterpState _ANSI_ARGS_(( -+TCL_EXTERN(void) Itcl_DiscardInterpState _ANSI_ARGS_(( - Itcl_InterpState state)); -+#endif - - typedef struct ItclStubHooks { - struct ItclIntStubs *itclIntStubs; -@@ -110,9 +187,9 @@ - - int (*itcl_Init) _ANSI_ARGS_((Tcl_Interp * interp)); /* 0 */ - int (*itcl_SafeInit) _ANSI_ARGS_((Tcl_Interp * interp)); /* 1 */ -- int (*itcl_RegisterC) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_CmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 2 */ -- int (*itcl_RegisterObjC) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_ObjCmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 3 */ -- int (*itcl_FindC) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_CmdProc ** argProcPtr, Tcl_ObjCmdProc ** objProcPtr, ClientData * cDataPtr)); /* 4 */ -+ int (*itcl_RegisterC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_CmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 2 */ -+ int (*itcl_RegisterObjC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_ObjCmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 3 */ -+ int (*itcl_FindC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_CmdProc ** argProcPtr, Tcl_ObjCmdProc ** objProcPtr, ClientData * cDataPtr)); /* 4 */ - void (*itcl_InitStack) _ANSI_ARGS_((Itcl_Stack * stack)); /* 5 */ - void (*itcl_DeleteStack) _ANSI_ARGS_((Itcl_Stack * stack)); /* 6 */ - void (*itcl_PushStack) _ANSI_ARGS_((ClientData cdata, Itcl_Stack * stack)); /* 7 */ -@@ -136,13 +213,7 @@ - void (*itcl_DiscardInterpState) _ANSI_ARGS_((Itcl_InterpState state)); /* 25 */ - } ItclStubs; - --#ifdef __cplusplus --extern "C" { --#endif --extern ItclStubs *itclStubsPtr; --#ifdef __cplusplus --} --#endif -+TCL_EXTERNC ItclStubs *itclStubsPtr; - - #if defined(USE_ITCL_STUBS) && !defined(USE_ITCL_STUB_PROCS) - -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_ensemble.c insight-6.8.new/itcl/itcl/generic/itcl_ensemble.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_ensemble.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_ensemble.c 2008-08-18 18:56:39.000000000 +0200 -@@ -23,7 +23,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_ensemble.c,v 1.6 2001/04/08 06:17:33 davygrvy Exp $ -+ * RCS: $Id: itcl_ensemble.c,v 1.11 2003/12/24 01:09:56 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -105,7 +105,7 @@ - Ensemble *parentEnsData, char *ensName)); - - static int AddEnsemblePart _ANSI_ARGS_((Tcl_Interp *interp, -- Ensemble* ensData, char* partName, char* usageInfo, -+ Ensemble* ensData, CONST char* partName, CONST char* usageInfo, - Tcl_ObjCmdProc *objProc, ClientData clientData, - Tcl_CmdDeleteProc *deleteProc, EnsemblePart **rVal)); - -@@ -115,15 +115,15 @@ - int nameArgc, Ensemble** ensDataPtr)); - - static int CreateEnsemblePart _ANSI_ARGS_((Tcl_Interp *interp, -- Ensemble *ensData, char* partName, EnsemblePart **ensPartPtr)); -+ Ensemble *ensData, CONST char* partName, EnsemblePart **ensPartPtr)); - - static void DeleteEnsemblePart _ANSI_ARGS_((EnsemblePart *ensPart)); - - static int FindEnsemblePart _ANSI_ARGS_((Tcl_Interp *interp, -- Ensemble *ensData, char* partName, EnsemblePart **rensPart)); -+ Ensemble *ensData, CONST char* partName, EnsemblePart **rensPart)); - - static int FindEnsemblePartIndex _ANSI_ARGS_((Ensemble *ensData, -- char *partName, int *posPtr)); -+ CONST char *partName, int *posPtr)); - - static void ComputeMinChars _ANSI_ARGS_((Ensemble *ensData, int pos)); - -@@ -209,7 +209,7 @@ - int - Itcl_CreateEnsemble(interp, ensName) - Tcl_Interp *interp; /* interpreter to be updated */ -- char* ensName; /* name of the new ensemble */ -+ CONST char* ensName; /* name of the new ensemble */ - { - char **nameArgv = NULL; - int nameArgc; -@@ -219,7 +219,8 @@ - /* - * Split the ensemble name into its path components. - */ -- if (Tcl_SplitList(interp, ensName, &nameArgc, &nameArgv) != TCL_OK) { -+ if (Tcl_SplitList(interp, (CONST84 char *)ensName, &nameArgc, -+ &nameArgv) != TCL_OK) { - goto ensCreateFail; - } - if (nameArgc < 1) { -@@ -310,9 +311,9 @@ - objProc, clientData, deleteProc) - - Tcl_Interp *interp; /* interpreter to be updated */ -- char* ensName; /* ensemble containing this part */ -- char* partName; /* name of the new part */ -- char* usageInfo; /* usage info for argument list */ -+ CONST char* ensName; /* ensemble containing this part */ -+ CONST char* partName; /* name of the new part */ -+ CONST char* usageInfo; /* usage info for argument list */ - Tcl_ObjCmdProc *objProc; /* handling procedure for part */ - ClientData clientData; /* client data associated with part */ - Tcl_CmdDeleteProc *deleteProc; /* procedure used to destroy client data */ -@@ -326,7 +327,8 @@ - /* - * Parse the ensemble name and look for a containing ensemble. - */ -- if (Tcl_SplitList(interp, ensName, &nameArgc, &nameArgv) != TCL_OK) { -+ if (Tcl_SplitList(interp, (CONST84 char *)ensName, &nameArgc, -+ &nameArgv) != TCL_OK) { - goto ensPartFail; - } - if (FindEnsemble(interp, nameArgv, nameArgc, &ensData) != TCL_OK) { -@@ -389,8 +391,8 @@ - int - Itcl_GetEnsemblePart(interp, ensName, partName, infoPtr) - Tcl_Interp *interp; /* interpreter to be updated */ -- char *ensName; /* ensemble containing the part */ -- char *partName; /* name of the desired part */ -+ CONST char *ensName; /* ensemble containing the part */ -+ CONST char *partName; /* name of the desired part */ - Tcl_CmdInfo *infoPtr; /* returns: info associated with part */ - { - char **nameArgv = NULL; -@@ -407,7 +409,8 @@ - */ - state = Itcl_SaveInterpState(interp, TCL_OK); - -- if (Tcl_SplitList(interp, ensName, &nameArgc, &nameArgv) != TCL_OK) { -+ if (Tcl_SplitList(interp, (CONST84 char *)ensName, &nameArgc, -+ &nameArgv) != TCL_OK) { - goto ensGetFail; - } - if (FindEnsemble(interp, nameArgv, nameArgc, &ensData) != TCL_OK) { -@@ -501,7 +504,7 @@ - int - Itcl_GetEnsembleUsage(interp, ensName, objPtr) - Tcl_Interp *interp; /* interpreter containing the ensemble */ -- char *ensName; /* name of the ensemble */ -+ CONST char *ensName; /* name of the ensemble */ - Tcl_Obj *objPtr; /* returns: summary of usage info */ - { - char **nameArgv = NULL; -@@ -516,7 +519,8 @@ - */ - state = Itcl_SaveInterpState(interp, TCL_OK); - -- if (Tcl_SplitList(interp, ensName, &nameArgc, &nameArgv) != TCL_OK) { -+ if (Tcl_SplitList(interp, (CONST84 char *)ensName, &nameArgc, -+ &nameArgv) != TCL_OK) { - goto ensUsageFail; - } - if (FindEnsemble(interp, nameArgv, nameArgc, &ensData) != TCL_OK) { -@@ -798,29 +802,22 @@ - return TCL_ERROR; - } - -- ensData->cmd = parentEnsData->cmd; -- ensData->parent = ensPart; -+ ensData->cmd = parentEnsData->cmd; -+ ensData->parent = ensPart; - -- cmdPtr = (Command*)ckalloc(sizeof(Command)); -- cmdPtr->hPtr = NULL; -- cmdPtr->nsPtr = ((Command*)ensData->cmd)->nsPtr; -- cmdPtr->refCount = 0; -- cmdPtr->cmdEpoch = 0; -- cmdPtr->compileProc = NULL; -- cmdPtr->objProc = HandleEnsemble; -- cmdPtr->objClientData = (ClientData)ensData; -- cmdPtr->proc = NULL; -- cmdPtr->clientData = NULL; -- cmdPtr->deleteProc = DeleteEnsemble; -- cmdPtr->deleteData = cmdPtr->objClientData; -- #if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION < 4) -- cmdPtr->deleted = 0; -- #else -- cmdPtr->flags = 0; -- #endif -- cmdPtr->importRefPtr = NULL; -+ /* -+ * Initialize non-NULL data only. This allows us to handle the -+ * structure differences between versions better. -+ */ -+ cmdPtr = (Command *) ckalloc(sizeof(Command)); -+ memset((VOID *) cmdPtr, 0, sizeof(Command)); -+ cmdPtr->nsPtr = ((Command *) ensData->cmd)->nsPtr; -+ cmdPtr->objProc = HandleEnsemble; -+ cmdPtr->objClientData = (ClientData)ensData; -+ cmdPtr->deleteProc = DeleteEnsemble; -+ cmdPtr->deleteData = cmdPtr->objClientData; - -- ensPart->cmdPtr = cmdPtr; -+ ensPart->cmdPtr = cmdPtr; - - return TCL_OK; - } -@@ -860,8 +857,8 @@ - - Tcl_Interp *interp; /* interpreter to be updated */ - Ensemble* ensData; /* ensemble that will contain this part */ -- char* partName; /* name of the new part */ -- char* usageInfo; /* usage info for argument list */ -+ CONST char* partName; /* name of the new part */ -+ CONST char* usageInfo; /* usage info for argument list */ - Tcl_ObjCmdProc *objProc; /* handling procedure for part */ - ClientData clientData; /* client data associated with part */ - Tcl_CmdDeleteProc *deleteProc; /* procedure used to destroy client data */ -@@ -882,27 +879,20 @@ - strcpy(ensPart->usage, usageInfo); - } - -- cmdPtr = (Command*)ckalloc(sizeof(Command)); -- cmdPtr->hPtr = NULL; -- cmdPtr->nsPtr = ((Command*)ensData->cmd)->nsPtr; -- cmdPtr->refCount = 0; -- cmdPtr->cmdEpoch = 0; -- cmdPtr->compileProc = NULL; -- cmdPtr->objProc = objProc; -- cmdPtr->objClientData = (ClientData)clientData; -- cmdPtr->proc = NULL; -- cmdPtr->clientData = NULL; -- cmdPtr->deleteProc = deleteProc; -- cmdPtr->deleteData = (ClientData)clientData; --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION < 4) -- cmdPtr->deleted = 0; --#else -- cmdPtr->flags = 0; --#endif -- cmdPtr->importRefPtr = NULL; -+ /* -+ * Initialize non-NULL data only. This allows us to handle the -+ * structure differences between versions better. -+ */ -+ cmdPtr = (Command *) ckalloc(sizeof(Command)); -+ memset((VOID *) cmdPtr, 0, sizeof(Command)); -+ cmdPtr->nsPtr = ((Command *) ensData->cmd)->nsPtr; -+ cmdPtr->objProc = objProc; -+ cmdPtr->objClientData = (ClientData)clientData; -+ cmdPtr->deleteProc = deleteProc; -+ cmdPtr->deleteData = (ClientData)clientData; - -- ensPart->cmdPtr = cmdPtr; -- *rVal = ensPart; -+ ensPart->cmdPtr = cmdPtr; -+ *rVal = ensPart; - - return TCL_OK; - } -@@ -1055,7 +1045,7 @@ - CreateEnsemblePart(interp, ensData, partName, ensPartPtr) - Tcl_Interp *interp; /* interpreter containing the ensemble */ - Ensemble *ensData; /* ensemble being modified */ -- char* partName; /* name of the new part */ -+ CONST char* partName; /* name of the new part */ - EnsemblePart **ensPartPtr; /* returns: new ensemble part */ - { - int i, pos, size; -@@ -1201,7 +1191,7 @@ - FindEnsemblePart(interp, ensData, partName, rensPart) - Tcl_Interp *interp; /* interpreter containing the ensemble */ - Ensemble *ensData; /* ensemble being searched */ -- char* partName; /* name of the desired part */ -+ CONST char* partName; /* name of the desired part */ - EnsemblePart **rensPart; /* returns: pointer to the desired part */ - { - int pos = 0; -@@ -1316,7 +1306,7 @@ - static int - FindEnsemblePartIndex(ensData, partName, posPtr) - Ensemble *ensData; /* ensemble being searched */ -- char *partName; /* name of desired part */ -+ CONST char *partName; /* name of desired part */ - int *posPtr; /* returns: index for part */ - { - int pos = 0; -@@ -1640,7 +1630,7 @@ - } - if (FindEnsemblePart(interp, ensData, ensName, &ensPart) - != TCL_OK) { -- panic("Itcl_EnsembleCmd: can't create ensemble"); -+ Tcl_Panic("Itcl_EnsembleCmd: can't create ensemble"); - } - } - -@@ -1707,11 +1697,11 @@ - * Otherwise, the offending command is reported twice. - */ - if (status == TCL_ERROR) { -- char *errInfo = Tcl_GetVar2(ensInfo->parser, "::errorInfo", -+ CONST char *errInfo = Tcl_GetVar2(ensInfo->parser, "::errorInfo", - (char*)NULL, TCL_GLOBAL_ONLY); - - if (errInfo) { -- Tcl_AddObjErrorInfo(interp, errInfo, -1); -+ Tcl_AddObjErrorInfo(interp, (CONST84 char *)errInfo, -1); - } - - if (objc == 3) { -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl.h insight-6.8.new/itcl/itcl/generic/itcl.h ---- insight-6.8.orig/itcl/itcl/generic/itcl.h 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl.h 2008-08-18 18:56:39.000000000 +0200 -@@ -39,10 +39,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * modified for Stubs 5/20/1999 by -- * David Gravereaux -- * -- * RCS: $Id: itcl.h,v 1.15 2001/05/25 00:12:29 davygrvy Exp $ -+ * RCS: $Id: itcl.h,v 1.29 2004/08/10 20:58:44 hobbs Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -54,23 +51,24 @@ - - #include "tcl.h" - --#undef TCL_STORAGE_CLASS --#ifdef BUILD_itcl --# define TCL_STORAGE_CLASS DLLEXPORT --#else --# ifdef USE_ITCL_STUBS --# define TCL_STORAGE_CLASS --# else --/* FIXME. We only build static itcl, otherwise this would be DLLIMPORT */ --# define TCL_STORAGE_CLASS --# endif -+#ifndef TCL_ALPHA_RELEASE -+# define TCL_ALPHA_RELEASE 0 - #endif -+#ifndef TCL_BETA_RELEASE -+# define TCL_BETA_RELEASE 1 -+#endif -+#ifndef TCL_FINAL_RELEASE -+# define TCL_FINAL_RELEASE 2 -+#endif -+ - --#define ITCL_VERSION "3.2" --#define ITCL_PATCH_LEVEL "3.2.1" --#define ITCL_MAJOR_VERSION 3 --#define ITCL_MINOR_VERSION 2 --#define ITCL_RELEASE_LEVEL 1 -+#define ITCL_MAJOR_VERSION 3 -+#define ITCL_MINOR_VERSION 3 -+#define ITCL_RELEASE_LEVEL TCL_FINAL_RELEASE -+#define ITCL_RELEASE_SERIAL 0 -+ -+#define ITCL_VERSION "3.3" -+#define ITCL_PATCH_LEVEL "3.3.0" - - /* - * A special definition used to allow this header file to be included -@@ -81,6 +79,67 @@ - - #ifndef RC_INVOKED - -+#undef TCL_STORAGE_CLASS -+#ifdef BUILD_itcl -+# define TCL_STORAGE_CLASS DLLEXPORT -+#else -+# ifdef USE_ITCL_STUBS -+# define TCL_STORAGE_CLASS -+# else -+# define TCL_STORAGE_CLASS DLLIMPORT -+# endif -+#endif -+ -+/* -+ * Fix the Borland bug that's in the EXTERN macro from tcl.h. -+ */ -+#ifndef TCL_EXTERN -+# undef DLLIMPORT -+# undef DLLEXPORT -+# ifdef __cplusplus -+# define TCL_EXTERNC extern "C" -+# else -+# define TCL_EXTERNC extern -+# endif -+# if defined(STATIC_BUILD) -+# define DLLIMPORT -+# define DLLEXPORT -+# define TCL_EXTERN(RTYPE) TCL_EXTERNC RTYPE -+# elif (defined(__WIN32__) && ( \ -+ defined(_MSC_VER) || (__BORLANDC__ >= 0x0550) || \ -+ defined(__LCC__) || defined(__WATCOMC__) || \ -+ (defined(__GNUC__) && defined(__declspec)) \ -+ )) || (defined(MAC_TCL) && FUNCTION_DECLSPEC) -+# define DLLIMPORT __declspec(dllimport) -+# define DLLEXPORT __declspec(dllexport) -+# define TCL_EXTERN(RTYPE) TCL_EXTERNC TCL_STORAGE_CLASS RTYPE -+# elif defined(__BORLANDC__) -+# define DLLIMPORT __import -+# define DLLEXPORT __export -+ /* Pre-5.5 Borland requires the attributes be placed after the */ -+ /* return type instead. */ -+# define TCL_EXTERN(RTYPE) TCL_EXTERNC RTYPE TCL_STORAGE_CLASS -+# else -+# define DLLIMPORT -+# define DLLEXPORT -+# define TCL_EXTERN(RTYPE) TCL_EXTERNC TCL_STORAGE_CLASS RTYPE -+# endif -+#endif -+ -+ -+/* -+ * Starting from the 8.4 core, Tcl API is CONST'ified. Our API is always -+ * CONST, but we need to build with Tcl when it isn't CONST and fake it -+ * when needed with <= 8.3 -+ * -+ * http://wiki.tcl.tk/3669 -+ */ -+ -+#ifndef CONST84 -+# define CONST84 -+#endif -+ -+ - /* - * Protection levels: - * -@@ -153,11 +212,9 @@ - - #ifdef USE_ITCL_STUBS - --#ifdef __cplusplus --extern "C" --#endif --CONST char * Itcl_InitStubs _ANSI_ARGS_((Tcl_Interp *interp, -- char *version, int exact)); -+TCL_EXTERNC CONST char * -+ Itcl_InitStubs _ANSI_ARGS_((Tcl_Interp *interp, -+ CONST char *version, int exact)); - #else - #define Itcl_InitStubs(interp, version, exact) \ - Tcl_PkgRequire(interp, "Itcl", version, exact) -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclInt.decls insight-6.8.new/itcl/itcl/generic/itclInt.decls ---- insight-6.8.orig/itcl/itcl/generic/itclInt.decls 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclInt.decls 2008-08-18 18:56:39.000000000 +0200 -@@ -1,15 +1,17 @@ - # itclInt.decls -- - # - # This file contains the declarations for all unsupported --# functions that are exported by the Tcl library. This file --# is used to generate the itclIntDecls.h and itclIntStub.c --# files -+# functions that are exported by the Itcl library. -+# -+# By "unsupported", it should be noted that due to Tcl's hiding -+# of the data types used, we inherit this hidden-ness ourselves, -+# too, unfortunately. - # - # Copyright (c) 1998-1999 by Scriptics Corporation. - # See the file "license.terms" for information on usage and redistribution - # of this file, and for a DISCLAIMER OF ALL WARRANTIES. - # --# RCS: @(#) $Id: itclInt.decls,v 1.2 2001/05/22 01:35:38 davygrvy Exp $ -+# RCS: @(#) $Id: itclInt.decls,v 1.8 2003/12/17 02:54:39 davygrvy Exp $ - - library itcl - -@@ -29,10 +31,10 @@ - int Itcl_IsClass (Tcl_Command cmd) - } - declare 2 generic { -- ItclClass* Itcl_FindClass (Tcl_Interp* interp, char* path, int autoload) -+ ItclClass* Itcl_FindClass (Tcl_Interp* interp, CONST char* path, int autoload) - } - declare 3 generic { -- int Itcl_FindObject (Tcl_Interp *interp, char *name, ItclObject **roPtr) -+ int Itcl_FindObject (Tcl_Interp *interp, CONST char *name, ItclObject **roPtr) - } - declare 4 generic { - int Itcl_IsObject (Tcl_Command cmd) -@@ -57,18 +59,18 @@ - ItclObjectInfo *info) - } - declare 11 generic { -- void Itcl_ParseNamespPath (char *name, Tcl_DString *buffer, \ -+ void Itcl_ParseNamespPath (CONST char *name, Tcl_DString *buffer, \ - char **head, char **tail) - } - declare 12 generic { -- int Itcl_DecodeScopedCommand (Tcl_Interp *interp, char *name, \ -+ int Itcl_DecodeScopedCommand (Tcl_Interp *interp, CONST char *name, \ - Tcl_Namespace **rNsPtr, char **rCmdPtr) - } - declare 13 generic { - int Itcl_EvalArgs (Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) - } - declare 14 generic { -- Tcl_Obj* Itcl_CreateArgs (Tcl_Interp *interp, char *string, \ -+ Tcl_Obj* Itcl_CreateArgs (Tcl_Interp *interp, CONST char *string, \ - int objc, Tcl_Obj *CONST objv[]) - } - declare 15 generic { -@@ -138,14 +140,14 @@ - # - - declare 31 generic { -- int Itcl_CreateClass (Tcl_Interp* interp, char* path, \ -+ int Itcl_CreateClass (Tcl_Interp* interp, CONST char* path, \ - ItclObjectInfo *info, ItclClass **rPtr) - } - declare 32 generic { - int Itcl_DeleteClass (Tcl_Interp *interp, ItclClass *cdefnPtr) - } - declare 33 generic { -- Tcl_Namespace* Itcl_FindClassNamespace (Tcl_Interp* interp, char* path) -+ Tcl_Namespace* Itcl_FindClassNamespace (Tcl_Interp* interp, CONST char* path) - } - declare 34 generic { - int Itcl_HandleClass (ClientData clientData, Tcl_Interp *interp, \ -@@ -156,11 +158,11 @@ - Tcl_Namespace *context, int flags, Tcl_Command *rPtr) - } - declare 36 generic { -- int Itcl_ClassVarResolver (Tcl_Interp *interp, char* name, \ -+ int Itcl_ClassVarResolver (Tcl_Interp *interp, CONST char* name, \ - Tcl_Namespace *context, int flags, Tcl_Var *rPtr) - } - declare 37 generic { -- int Itcl_ClassCompiledVarResolver (Tcl_Interp *interp, char* name, \ -+ int Itcl_ClassCompiledVarResolver (Tcl_Interp *interp, CONST char* name, \ - int length, Tcl_Namespace *context, Tcl_ResolvedVarInfo **rPtr) - } - declare 38 generic { -@@ -174,12 +176,12 @@ - void Itcl_DeleteVarDefn (ItclVarDefn *vdefn) - } - declare 41 generic { -- char* Itcl_GetCommonVar (Tcl_Interp *interp, char *name, \ -+ CONST char* Itcl_GetCommonVar (Tcl_Interp *interp, CONST char *name, \ - ItclClass *contextClass) - } - declare 42 generic { - ItclMember* Itcl_CreateMember (Tcl_Interp* interp, ItclClass *cdefn, \ -- char* name) -+ CONST char* name) - } - declare 43 generic { - void Itcl_DeleteMember (ItclMember *memPtr) -@@ -191,7 +193,7 @@ - # - - declare 44 generic { -- int Itcl_CreateObject (Tcl_Interp *interp, char* name, ItclClass *cdefn, \ -+ int Itcl_CreateObject (Tcl_Interp *interp, CONST char* name, ItclClass *cdefn, \ - int objc, Tcl_Obj *CONST objv[], ItclObject **roPtr) - } - declare 45 generic { -@@ -206,11 +208,11 @@ - int objc, Tcl_Obj *CONST objv[]) - } - declare 48 generic { -- char* Itcl_GetInstanceVar (Tcl_Interp *interp, char *name, \ -+ CONST char* Itcl_GetInstanceVar (Tcl_Interp *interp, CONST char *name, \ - ItclObject *contextObj, ItclClass *contextClass) - } - declare 49 generic { -- int Itcl_ScopedVarResolver (Tcl_Interp *interp, char *name, \ -+ int Itcl_ScopedVarResolver (Tcl_Interp *interp, CONST char *name, \ - Tcl_Namespace *contextNs, int flags, Tcl_Var *rPtr) - } - -@@ -228,30 +230,31 @@ - Tcl_Obj *CONST objv[]) - } - declare 52 generic { -- int Itcl_CreateMethod (Tcl_Interp* interp, ItclClass *cdefn, char* name, \ -- char* arglist, char* body) -+ int Itcl_CreateMethod (Tcl_Interp* interp, ItclClass *cdefn, -+ CONST char* name, CONST char* arglist, CONST char* body) - } - declare 53 generic { -- int Itcl_CreateProc (Tcl_Interp* interp, ItclClass *cdefn, char* name, \ -- char* arglist, char* body) -+ int Itcl_CreateProc (Tcl_Interp* interp, ItclClass *cdefn, -+ CONST char* name, CONST char* arglist, CONST char* body) - } - declare 54 generic { - int Itcl_CreateMemberFunc (Tcl_Interp* interp, ItclClass *cdefn, \ -- char* name, char* arglist, char* body, ItclMemberFunc** mfuncPtr) -+ CONST char* name, CONST char* arglist, CONST char* body, \ -+ ItclMemberFunc** mfuncPtr) - } - declare 55 generic { - int Itcl_ChangeMemberFunc (Tcl_Interp* interp, ItclMemberFunc* mfunc, \ -- char* arglist, char* body) -+ CONST char* arglist, CONST char* body) - } - declare 56 generic { -- void Itcl_DeleteMemberFunc (char* cdata) -+ void Itcl_DeleteMemberFunc (CONST char* cdata) - } - declare 57 generic { - int Itcl_CreateMemberCode (Tcl_Interp* interp, ItclClass *cdefn, \ -- char* arglist, char* body, ItclMemberCode** mcodePtr) -+ CONST char* arglist, CONST char* body, ItclMemberCode** mcodePtr) - } - declare 58 generic { -- void Itcl_DeleteMemberCode (char* cdata) -+ void Itcl_DeleteMemberCode (CONST char* cdata) - } - declare 59 generic { - int Itcl_GetMemberCode (Tcl_Interp* interp, ItclMember* member) -@@ -266,11 +269,11 @@ - Tcl_Obj *CONST objv[]) - } - declare 62 generic { -- int Itcl_CreateArgList (Tcl_Interp* interp, char* decl, int* argcPtr, \ -+ int Itcl_CreateArgList (Tcl_Interp* interp, CONST char* decl, int* argcPtr, \ - CompiledLocal** argPtr) - } - declare 63 generic { -- CompiledLocal* Itcl_CreateArg (char* name, char* init) -+ CompiledLocal* Itcl_CreateArg (CONST char* name, CONST char* init) - } - declare 64 generic { - void Itcl_DeleteArgList (CompiledLocal *arglist) -@@ -303,7 +306,7 @@ - ItclClass *contextClass) - } - declare 72 generic { -- int Itcl_InvokeMethodIfExists (Tcl_Interp *interp, char *name, \ -+ int Itcl_InvokeMethodIfExists (Tcl_Interp *interp, CONST char *name, \ - ItclClass *contextClass, ItclObject *contextObj, int objc, \ - Tcl_Obj *CONST objv[]) - } -@@ -360,7 +363,7 @@ - int objc, Tcl_Obj *CONST objv[]) - } - declare 85 generic { -- int Itcl_ParseVarResolver (Tcl_Interp *interp, char* name, \ -+ int Itcl_ParseVarResolver (Tcl_Interp *interp, CONST char* name, \ - Tcl_Namespace *contextNs, int flags, Tcl_Var* rPtr) - } - -@@ -433,22 +436,22 @@ - int Itcl_EnsembleInit (Tcl_Interp *interp) - } - declare 101 generic { -- int Itcl_CreateEnsemble (Tcl_Interp *interp, char* ensName) -+ int Itcl_CreateEnsemble (Tcl_Interp *interp, CONST char* ensName) - } - declare 102 generic { -- int Itcl_AddEnsemblePart (Tcl_Interp *interp, char* ensName, \ -- char* partName, char* usageInfo, Tcl_ObjCmdProc *objProc, \ -+ int Itcl_AddEnsemblePart (Tcl_Interp *interp, CONST char* ensName, \ -+ CONST char* partName, CONST char* usageInfo, Tcl_ObjCmdProc *objProc, \ - ClientData clientData, Tcl_CmdDeleteProc *deleteProc) - } - declare 103 generic { -- int Itcl_GetEnsemblePart (Tcl_Interp *interp, char *ensName, \ -- char *partName, Tcl_CmdInfo *infoPtr) -+ int Itcl_GetEnsemblePart (Tcl_Interp *interp, CONST char *ensName, \ -+ CONST char *partName, Tcl_CmdInfo *infoPtr) - } - declare 104 generic { - int Itcl_IsEnsemble (Tcl_CmdInfo* infoPtr) - } - declare 105 generic { -- int Itcl_GetEnsembleUsage (Tcl_Interp *interp, char *ensName, \ -+ int Itcl_GetEnsembleUsage (Tcl_Interp *interp, CONST char *ensName, \ - Tcl_Obj *objPtr) - } - declare 106 generic { -@@ -473,12 +476,13 @@ - # Commands provided for backward compatibility - # - --declare 110 generic { -- int Itcl_OldInit (Tcl_Interp* interp, ItclObjectInfo* info) --} --declare 111 generic { -- int Itcl_InstallOldBiMethods (Tcl_Interp *interp, ItclClass *cdefn) --} -+# not used anymore (3.3) -+#declare 110 generic { -+# int Itcl_OldInit (Tcl_Interp* interp, ItclObjectInfo* info) -+#} -+#declare 111 generic { -+# int Itcl_InstallOldBiMethods (Tcl_Interp *interp, ItclClass *cdefn) -+#} - - - # -@@ -496,5 +500,14 @@ - Var* _TclNewVar (void) - } - declare 115 generic { -- void Itcl_Assert (char *testExpr, char *fileName, int lineNum) -+ void Itcl_Assert (CONST char *testExpr, CONST char *fileName, int lineNum) -+} -+ -+declare 116 generic { -+ int Itcl_IsObjectCmd (ClientData clientData, Tcl_Interp *interp, \ -+ int objc, Tcl_Obj *CONST objv[]) -+} -+declare 117 generic { -+ int Itcl_IsClassCmd (ClientData clientData, Tcl_Interp *interp, \ -+ int objc, Tcl_Obj *CONST objv[]) - } -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclIntDecls.h insight-6.8.new/itcl/itcl/generic/itclIntDecls.h ---- insight-6.8.orig/itcl/itcl/generic/itclIntDecls.h 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclIntDecls.h 2008-08-18 18:56:39.000000000 +0200 -@@ -6,12 +6,10 @@ - * interfaces are not guaranteed to remain the same between - * versions. Use at your own risk. - * -- * Copyright (c) 1998-1999 by XXXX -- * - * See the file "license.terms" for information on usage and redistribution - * of this file, and for a DISCLAIMER OF ALL WARRANTIES. - * -- * RCS: $Id: itclIntDecls.h,v 1.3 2001/05/22 01:35:38 davygrvy Exp $ -+ * RCS: $Id: itclIntDecls.h,v 1.12 2003/12/23 05:22:45 davygrvy Exp $ - */ - - #ifndef _ITCLINTDECLS -@@ -29,422 +27,771 @@ - * Exported function declarations: - */ - -+#ifndef Itcl_IsClassNamespace_TCL_DECLARED -+#define Itcl_IsClassNamespace_TCL_DECLARED - /* 0 */ --EXTERN int Itcl_IsClassNamespace _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_IsClassNamespace _ANSI_ARGS_(( - Tcl_Namespace * namesp)); -+#endif -+#ifndef Itcl_IsClass_TCL_DECLARED -+#define Itcl_IsClass_TCL_DECLARED - /* 1 */ --EXTERN int Itcl_IsClass _ANSI_ARGS_((Tcl_Command cmd)); -+TCL_EXTERN(int) Itcl_IsClass _ANSI_ARGS_((Tcl_Command cmd)); -+#endif -+#ifndef Itcl_FindClass_TCL_DECLARED -+#define Itcl_FindClass_TCL_DECLARED - /* 2 */ --EXTERN ItclClass* Itcl_FindClass _ANSI_ARGS_((Tcl_Interp* interp, -- char* path, int autoload)); -+TCL_EXTERN(ItclClass*) Itcl_FindClass _ANSI_ARGS_((Tcl_Interp* interp, -+ CONST char* path, int autoload)); -+#endif -+#ifndef Itcl_FindObject_TCL_DECLARED -+#define Itcl_FindObject_TCL_DECLARED - /* 3 */ --EXTERN int Itcl_FindObject _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, ItclObject ** roPtr)); -+TCL_EXTERN(int) Itcl_FindObject _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * name, ItclObject ** roPtr)); -+#endif -+#ifndef Itcl_IsObject_TCL_DECLARED -+#define Itcl_IsObject_TCL_DECLARED - /* 4 */ --EXTERN int Itcl_IsObject _ANSI_ARGS_((Tcl_Command cmd)); -+TCL_EXTERN(int) Itcl_IsObject _ANSI_ARGS_((Tcl_Command cmd)); -+#endif -+#ifndef Itcl_ObjectIsa_TCL_DECLARED -+#define Itcl_ObjectIsa_TCL_DECLARED - /* 5 */ --EXTERN int Itcl_ObjectIsa _ANSI_ARGS_((ItclObject * contextObj, -+TCL_EXTERN(int) Itcl_ObjectIsa _ANSI_ARGS_((ItclObject * contextObj, - ItclClass * cdefn)); -+#endif -+#ifndef Itcl_Protection_TCL_DECLARED -+#define Itcl_Protection_TCL_DECLARED - /* 6 */ --EXTERN int Itcl_Protection _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_Protection _ANSI_ARGS_((Tcl_Interp * interp, - int newLevel)); -+#endif -+#ifndef Itcl_ProtectionStr_TCL_DECLARED -+#define Itcl_ProtectionStr_TCL_DECLARED - /* 7 */ --EXTERN char* Itcl_ProtectionStr _ANSI_ARGS_((int pLevel)); -+TCL_EXTERN(char*) Itcl_ProtectionStr _ANSI_ARGS_((int pLevel)); -+#endif -+#ifndef Itcl_CanAccess_TCL_DECLARED -+#define Itcl_CanAccess_TCL_DECLARED - /* 8 */ --EXTERN int Itcl_CanAccess _ANSI_ARGS_((ItclMember* memberPtr, -+TCL_EXTERN(int) Itcl_CanAccess _ANSI_ARGS_((ItclMember* memberPtr, - Tcl_Namespace* fromNsPtr)); -+#endif -+#ifndef Itcl_CanAccessFunc_TCL_DECLARED -+#define Itcl_CanAccessFunc_TCL_DECLARED - /* 9 */ --EXTERN int Itcl_CanAccessFunc _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_CanAccessFunc _ANSI_ARGS_(( - ItclMemberFunc* mfunc, - Tcl_Namespace* fromNsPtr)); -+#endif -+#ifndef Itcl_GetTrueNamespace_TCL_DECLARED -+#define Itcl_GetTrueNamespace_TCL_DECLARED - /* 10 */ --EXTERN Tcl_Namespace* Itcl_GetTrueNamespace _ANSI_ARGS_(( -+TCL_EXTERN(Tcl_Namespace*) Itcl_GetTrueNamespace _ANSI_ARGS_(( - Tcl_Interp * interp, ItclObjectInfo * info)); -+#endif -+#ifndef Itcl_ParseNamespPath_TCL_DECLARED -+#define Itcl_ParseNamespPath_TCL_DECLARED - /* 11 */ --EXTERN void Itcl_ParseNamespPath _ANSI_ARGS_((char * name, -+TCL_EXTERN(void) Itcl_ParseNamespPath _ANSI_ARGS_((CONST char * name, - Tcl_DString * buffer, char ** head, - char ** tail)); -+#endif -+#ifndef Itcl_DecodeScopedCommand_TCL_DECLARED -+#define Itcl_DecodeScopedCommand_TCL_DECLARED - /* 12 */ --EXTERN int Itcl_DecodeScopedCommand _ANSI_ARGS_(( -- Tcl_Interp * interp, char * name, -+TCL_EXTERN(int) Itcl_DecodeScopedCommand _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * name, - Tcl_Namespace ** rNsPtr, char ** rCmdPtr)); -+#endif -+#ifndef Itcl_EvalArgs_TCL_DECLARED -+#define Itcl_EvalArgs_TCL_DECLARED - /* 13 */ --EXTERN int Itcl_EvalArgs _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_EvalArgs _ANSI_ARGS_((Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_CreateArgs_TCL_DECLARED -+#define Itcl_CreateArgs_TCL_DECLARED - /* 14 */ --EXTERN Tcl_Obj* Itcl_CreateArgs _ANSI_ARGS_((Tcl_Interp * interp, -- char * string, int objc, -+TCL_EXTERN(Tcl_Obj*) Itcl_CreateArgs _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * string, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_PushContext_TCL_DECLARED -+#define Itcl_PushContext_TCL_DECLARED - /* 15 */ --EXTERN int Itcl_PushContext _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_PushContext _ANSI_ARGS_((Tcl_Interp * interp, - ItclMember * member, - ItclClass * contextClass, - ItclObject * contextObj, - ItclContext * contextPtr)); -+#endif -+#ifndef Itcl_PopContext_TCL_DECLARED -+#define Itcl_PopContext_TCL_DECLARED - /* 16 */ --EXTERN void Itcl_PopContext _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(void) Itcl_PopContext _ANSI_ARGS_((Tcl_Interp * interp, - ItclContext * contextPtr)); -+#endif -+#ifndef Itcl_GetContext_TCL_DECLARED -+#define Itcl_GetContext_TCL_DECLARED - /* 17 */ --EXTERN int Itcl_GetContext _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_GetContext _ANSI_ARGS_((Tcl_Interp * interp, - ItclClass ** cdefnPtr, - ItclObject ** odefnPtr)); -+#endif -+#ifndef Itcl_InitHierIter_TCL_DECLARED -+#define Itcl_InitHierIter_TCL_DECLARED - /* 18 */ --EXTERN void Itcl_InitHierIter _ANSI_ARGS_((ItclHierIter * iter, -+TCL_EXTERN(void) Itcl_InitHierIter _ANSI_ARGS_((ItclHierIter * iter, - ItclClass * cdefn)); -+#endif -+#ifndef Itcl_DeleteHierIter_TCL_DECLARED -+#define Itcl_DeleteHierIter_TCL_DECLARED - /* 19 */ --EXTERN void Itcl_DeleteHierIter _ANSI_ARGS_((ItclHierIter * iter)); -+TCL_EXTERN(void) Itcl_DeleteHierIter _ANSI_ARGS_((ItclHierIter * iter)); -+#endif -+#ifndef Itcl_AdvanceHierIter_TCL_DECLARED -+#define Itcl_AdvanceHierIter_TCL_DECLARED - /* 20 */ --EXTERN ItclClass* Itcl_AdvanceHierIter _ANSI_ARGS_(( -+TCL_EXTERN(ItclClass*) Itcl_AdvanceHierIter _ANSI_ARGS_(( - ItclHierIter * iter)); -+#endif -+#ifndef Itcl_FindClassesCmd_TCL_DECLARED -+#define Itcl_FindClassesCmd_TCL_DECLARED - /* 21 */ --EXTERN int Itcl_FindClassesCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_FindClassesCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_FindObjectsCmd_TCL_DECLARED -+#define Itcl_FindObjectsCmd_TCL_DECLARED - /* 22 */ --EXTERN int Itcl_FindObjectsCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_FindObjectsCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ProtectionCmd_TCL_DECLARED -+#define Itcl_ProtectionCmd_TCL_DECLARED - /* 23 */ --EXTERN int Itcl_ProtectionCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ProtectionCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_DelClassCmd_TCL_DECLARED -+#define Itcl_DelClassCmd_TCL_DECLARED - /* 24 */ --EXTERN int Itcl_DelClassCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_DelClassCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_DelObjectCmd_TCL_DECLARED -+#define Itcl_DelObjectCmd_TCL_DECLARED - /* 25 */ --EXTERN int Itcl_DelObjectCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_DelObjectCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ScopeCmd_TCL_DECLARED -+#define Itcl_ScopeCmd_TCL_DECLARED - /* 26 */ --EXTERN int Itcl_ScopeCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_ScopeCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_CodeCmd_TCL_DECLARED -+#define Itcl_CodeCmd_TCL_DECLARED - /* 27 */ --EXTERN int Itcl_CodeCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_CodeCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_StubCreateCmd_TCL_DECLARED -+#define Itcl_StubCreateCmd_TCL_DECLARED - /* 28 */ --EXTERN int Itcl_StubCreateCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_StubCreateCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_StubExistsCmd_TCL_DECLARED -+#define Itcl_StubExistsCmd_TCL_DECLARED - /* 29 */ --EXTERN int Itcl_StubExistsCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_StubExistsCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_IsStub_TCL_DECLARED -+#define Itcl_IsStub_TCL_DECLARED - /* 30 */ --EXTERN int Itcl_IsStub _ANSI_ARGS_((Tcl_Command cmd)); -+TCL_EXTERN(int) Itcl_IsStub _ANSI_ARGS_((Tcl_Command cmd)); -+#endif -+#ifndef Itcl_CreateClass_TCL_DECLARED -+#define Itcl_CreateClass_TCL_DECLARED - /* 31 */ --EXTERN int Itcl_CreateClass _ANSI_ARGS_((Tcl_Interp* interp, -- char* path, ItclObjectInfo * info, -+TCL_EXTERN(int) Itcl_CreateClass _ANSI_ARGS_((Tcl_Interp* interp, -+ CONST char* path, ItclObjectInfo * info, - ItclClass ** rPtr)); -+#endif -+#ifndef Itcl_DeleteClass_TCL_DECLARED -+#define Itcl_DeleteClass_TCL_DECLARED - /* 32 */ --EXTERN int Itcl_DeleteClass _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_DeleteClass _ANSI_ARGS_((Tcl_Interp * interp, - ItclClass * cdefnPtr)); -+#endif -+#ifndef Itcl_FindClassNamespace_TCL_DECLARED -+#define Itcl_FindClassNamespace_TCL_DECLARED - /* 33 */ --EXTERN Tcl_Namespace* Itcl_FindClassNamespace _ANSI_ARGS_(( -- Tcl_Interp* interp, char* path)); -+TCL_EXTERN(Tcl_Namespace*) Itcl_FindClassNamespace _ANSI_ARGS_(( -+ Tcl_Interp* interp, CONST char* path)); -+#endif -+#ifndef Itcl_HandleClass_TCL_DECLARED -+#define Itcl_HandleClass_TCL_DECLARED - /* 34 */ --EXTERN int Itcl_HandleClass _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_HandleClass _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassCmdResolver_TCL_DECLARED -+#define Itcl_ClassCmdResolver_TCL_DECLARED - /* 35 */ --EXTERN int Itcl_ClassCmdResolver _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassCmdResolver _ANSI_ARGS_(( - Tcl_Interp * interp, CONST char* name, - Tcl_Namespace * context, int flags, - Tcl_Command * rPtr)); -+#endif -+#ifndef Itcl_ClassVarResolver_TCL_DECLARED -+#define Itcl_ClassVarResolver_TCL_DECLARED - /* 36 */ --EXTERN int Itcl_ClassVarResolver _ANSI_ARGS_(( -- Tcl_Interp * interp, char* name, -+TCL_EXTERN(int) Itcl_ClassVarResolver _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char* name, - Tcl_Namespace * context, int flags, - Tcl_Var * rPtr)); -+#endif -+#ifndef Itcl_ClassCompiledVarResolver_TCL_DECLARED -+#define Itcl_ClassCompiledVarResolver_TCL_DECLARED - /* 37 */ --EXTERN int Itcl_ClassCompiledVarResolver _ANSI_ARGS_(( -- Tcl_Interp * interp, char* name, int length, -- Tcl_Namespace * context, -+TCL_EXTERN(int) Itcl_ClassCompiledVarResolver _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char* name, -+ int length, Tcl_Namespace * context, - Tcl_ResolvedVarInfo ** rPtr)); -+#endif -+#ifndef Itcl_BuildVirtualTables_TCL_DECLARED -+#define Itcl_BuildVirtualTables_TCL_DECLARED - /* 38 */ --EXTERN void Itcl_BuildVirtualTables _ANSI_ARGS_(( -+TCL_EXTERN(void) Itcl_BuildVirtualTables _ANSI_ARGS_(( - ItclClass* cdefnPtr)); -+#endif -+#ifndef Itcl_CreateVarDefn_TCL_DECLARED -+#define Itcl_CreateVarDefn_TCL_DECLARED - /* 39 */ --EXTERN int Itcl_CreateVarDefn _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_CreateVarDefn _ANSI_ARGS_((Tcl_Interp * interp, - ItclClass* cdefn, char* name, char* init, - char* config, ItclVarDefn** vdefnPtr)); -+#endif -+#ifndef Itcl_DeleteVarDefn_TCL_DECLARED -+#define Itcl_DeleteVarDefn_TCL_DECLARED - /* 40 */ --EXTERN void Itcl_DeleteVarDefn _ANSI_ARGS_((ItclVarDefn * vdefn)); -+TCL_EXTERN(void) Itcl_DeleteVarDefn _ANSI_ARGS_((ItclVarDefn * vdefn)); -+#endif -+#ifndef Itcl_GetCommonVar_TCL_DECLARED -+#define Itcl_GetCommonVar_TCL_DECLARED - /* 41 */ --EXTERN char* Itcl_GetCommonVar _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, ItclClass * contextClass)); -+TCL_EXTERN(CONST char*) Itcl_GetCommonVar _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char * name, ItclClass * contextClass)); -+#endif -+#ifndef Itcl_CreateMember_TCL_DECLARED -+#define Itcl_CreateMember_TCL_DECLARED - /* 42 */ --EXTERN ItclMember* Itcl_CreateMember _ANSI_ARGS_((Tcl_Interp* interp, -- ItclClass * cdefn, char* name)); -+TCL_EXTERN(ItclMember*) Itcl_CreateMember _ANSI_ARGS_((Tcl_Interp* interp, -+ ItclClass * cdefn, CONST char* name)); -+#endif -+#ifndef Itcl_DeleteMember_TCL_DECLARED -+#define Itcl_DeleteMember_TCL_DECLARED - /* 43 */ --EXTERN void Itcl_DeleteMember _ANSI_ARGS_((ItclMember * memPtr)); -+TCL_EXTERN(void) Itcl_DeleteMember _ANSI_ARGS_((ItclMember * memPtr)); -+#endif -+#ifndef Itcl_CreateObject_TCL_DECLARED -+#define Itcl_CreateObject_TCL_DECLARED - /* 44 */ --EXTERN int Itcl_CreateObject _ANSI_ARGS_((Tcl_Interp * interp, -- char* name, ItclClass * cdefn, int objc, -- Tcl_Obj *CONST objv[], ItclObject ** roPtr)); -+TCL_EXTERN(int) Itcl_CreateObject _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char* name, ItclClass * cdefn, -+ int objc, Tcl_Obj *CONST objv[], -+ ItclObject ** roPtr)); -+#endif -+#ifndef Itcl_DeleteObject_TCL_DECLARED -+#define Itcl_DeleteObject_TCL_DECLARED - /* 45 */ --EXTERN int Itcl_DeleteObject _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_DeleteObject _ANSI_ARGS_((Tcl_Interp * interp, - ItclObject * contextObj)); -+#endif -+#ifndef Itcl_DestructObject_TCL_DECLARED -+#define Itcl_DestructObject_TCL_DECLARED - /* 46 */ --EXTERN int Itcl_DestructObject _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_DestructObject _ANSI_ARGS_((Tcl_Interp * interp, - ItclObject * contextObj, int flags)); -+#endif -+#ifndef Itcl_HandleInstance_TCL_DECLARED -+#define Itcl_HandleInstance_TCL_DECLARED - /* 47 */ --EXTERN int Itcl_HandleInstance _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_HandleInstance _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_GetInstanceVar_TCL_DECLARED -+#define Itcl_GetInstanceVar_TCL_DECLARED - /* 48 */ --EXTERN char* Itcl_GetInstanceVar _ANSI_ARGS_((Tcl_Interp * interp, -- char * name, ItclObject * contextObj, -+TCL_EXTERN(CONST char*) Itcl_GetInstanceVar _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * name, -+ ItclObject * contextObj, - ItclClass * contextClass)); -+#endif -+#ifndef Itcl_ScopedVarResolver_TCL_DECLARED -+#define Itcl_ScopedVarResolver_TCL_DECLARED - /* 49 */ --EXTERN int Itcl_ScopedVarResolver _ANSI_ARGS_(( -- Tcl_Interp * interp, char * name, -+TCL_EXTERN(int) Itcl_ScopedVarResolver _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * name, - Tcl_Namespace * contextNs, int flags, - Tcl_Var * rPtr)); -+#endif -+#ifndef Itcl_BodyCmd_TCL_DECLARED -+#define Itcl_BodyCmd_TCL_DECLARED - /* 50 */ --EXTERN int Itcl_BodyCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BodyCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ConfigBodyCmd_TCL_DECLARED -+#define Itcl_ConfigBodyCmd_TCL_DECLARED - /* 51 */ --EXTERN int Itcl_ConfigBodyCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_ConfigBodyCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_CreateMethod_TCL_DECLARED -+#define Itcl_CreateMethod_TCL_DECLARED - /* 52 */ --EXTERN int Itcl_CreateMethod _ANSI_ARGS_((Tcl_Interp* interp, -- ItclClass * cdefn, char* name, char* arglist, -- char* body)); -+TCL_EXTERN(int) Itcl_CreateMethod _ANSI_ARGS_((Tcl_Interp* interp, -+ ItclClass * cdefn, CONST char* name, -+ CONST char* arglist, CONST char* body)); -+#endif -+#ifndef Itcl_CreateProc_TCL_DECLARED -+#define Itcl_CreateProc_TCL_DECLARED - /* 53 */ --EXTERN int Itcl_CreateProc _ANSI_ARGS_((Tcl_Interp* interp, -- ItclClass * cdefn, char* name, char* arglist, -- char* body)); -+TCL_EXTERN(int) Itcl_CreateProc _ANSI_ARGS_((Tcl_Interp* interp, -+ ItclClass * cdefn, CONST char* name, -+ CONST char* arglist, CONST char* body)); -+#endif -+#ifndef Itcl_CreateMemberFunc_TCL_DECLARED -+#define Itcl_CreateMemberFunc_TCL_DECLARED - /* 54 */ --EXTERN int Itcl_CreateMemberFunc _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_CreateMemberFunc _ANSI_ARGS_(( - Tcl_Interp* interp, ItclClass * cdefn, -- char* name, char* arglist, char* body, -- ItclMemberFunc** mfuncPtr)); -+ CONST char* name, CONST char* arglist, -+ CONST char* body, ItclMemberFunc** mfuncPtr)); -+#endif -+#ifndef Itcl_ChangeMemberFunc_TCL_DECLARED -+#define Itcl_ChangeMemberFunc_TCL_DECLARED - /* 55 */ --EXTERN int Itcl_ChangeMemberFunc _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ChangeMemberFunc _ANSI_ARGS_(( - Tcl_Interp* interp, ItclMemberFunc* mfunc, -- char* arglist, char* body)); -+ CONST char* arglist, CONST char* body)); -+#endif -+#ifndef Itcl_DeleteMemberFunc_TCL_DECLARED -+#define Itcl_DeleteMemberFunc_TCL_DECLARED - /* 56 */ --EXTERN void Itcl_DeleteMemberFunc _ANSI_ARGS_((char* cdata)); -+TCL_EXTERN(void) Itcl_DeleteMemberFunc _ANSI_ARGS_((CONST char* cdata)); -+#endif -+#ifndef Itcl_CreateMemberCode_TCL_DECLARED -+#define Itcl_CreateMemberCode_TCL_DECLARED - /* 57 */ --EXTERN int Itcl_CreateMemberCode _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_CreateMemberCode _ANSI_ARGS_(( - Tcl_Interp* interp, ItclClass * cdefn, -- char* arglist, char* body, -+ CONST char* arglist, CONST char* body, - ItclMemberCode** mcodePtr)); -+#endif -+#ifndef Itcl_DeleteMemberCode_TCL_DECLARED -+#define Itcl_DeleteMemberCode_TCL_DECLARED - /* 58 */ --EXTERN void Itcl_DeleteMemberCode _ANSI_ARGS_((char* cdata)); -+TCL_EXTERN(void) Itcl_DeleteMemberCode _ANSI_ARGS_((CONST char* cdata)); -+#endif -+#ifndef Itcl_GetMemberCode_TCL_DECLARED -+#define Itcl_GetMemberCode_TCL_DECLARED - /* 59 */ --EXTERN int Itcl_GetMemberCode _ANSI_ARGS_((Tcl_Interp* interp, -+TCL_EXTERN(int) Itcl_GetMemberCode _ANSI_ARGS_((Tcl_Interp* interp, - ItclMember* member)); -+#endif - /* Slot 60 is reserved */ -+#ifndef Itcl_EvalMemberCode_TCL_DECLARED -+#define Itcl_EvalMemberCode_TCL_DECLARED - /* 61 */ --EXTERN int Itcl_EvalMemberCode _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_EvalMemberCode _ANSI_ARGS_((Tcl_Interp * interp, - ItclMemberFunc * mfunc, ItclMember * member, - ItclObject * contextObj, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_CreateArgList_TCL_DECLARED -+#define Itcl_CreateArgList_TCL_DECLARED - /* 62 */ --EXTERN int Itcl_CreateArgList _ANSI_ARGS_((Tcl_Interp* interp, -- char* decl, int* argcPtr, -+TCL_EXTERN(int) Itcl_CreateArgList _ANSI_ARGS_((Tcl_Interp* interp, -+ CONST char* decl, int* argcPtr, - CompiledLocal** argPtr)); -+#endif -+#ifndef Itcl_CreateArg_TCL_DECLARED -+#define Itcl_CreateArg_TCL_DECLARED - /* 63 */ --EXTERN CompiledLocal* Itcl_CreateArg _ANSI_ARGS_((char* name, char* init)); -+TCL_EXTERN(CompiledLocal*) Itcl_CreateArg _ANSI_ARGS_((CONST char* name, -+ CONST char* init)); -+#endif -+#ifndef Itcl_DeleteArgList_TCL_DECLARED -+#define Itcl_DeleteArgList_TCL_DECLARED - /* 64 */ --EXTERN void Itcl_DeleteArgList _ANSI_ARGS_(( -+TCL_EXTERN(void) Itcl_DeleteArgList _ANSI_ARGS_(( - CompiledLocal * arglist)); -+#endif -+#ifndef Itcl_ArgList_TCL_DECLARED -+#define Itcl_ArgList_TCL_DECLARED - /* 65 */ --EXTERN Tcl_Obj* Itcl_ArgList _ANSI_ARGS_((int argc, -+TCL_EXTERN(Tcl_Obj*) Itcl_ArgList _ANSI_ARGS_((int argc, - CompiledLocal* arglist)); -+#endif -+#ifndef Itcl_EquivArgLists_TCL_DECLARED -+#define Itcl_EquivArgLists_TCL_DECLARED - /* 66 */ --EXTERN int Itcl_EquivArgLists _ANSI_ARGS_((CompiledLocal* arg1, -+TCL_EXTERN(int) Itcl_EquivArgLists _ANSI_ARGS_((CompiledLocal* arg1, - int arg1c, CompiledLocal* arg2, int arg2c)); -+#endif -+#ifndef Itcl_GetMemberFuncUsage_TCL_DECLARED -+#define Itcl_GetMemberFuncUsage_TCL_DECLARED - /* 67 */ --EXTERN void Itcl_GetMemberFuncUsage _ANSI_ARGS_(( -+TCL_EXTERN(void) Itcl_GetMemberFuncUsage _ANSI_ARGS_(( - ItclMemberFunc * mfunc, - ItclObject * contextObj, Tcl_Obj * objPtr)); -+#endif -+#ifndef Itcl_ExecMethod_TCL_DECLARED -+#define Itcl_ExecMethod_TCL_DECLARED - /* 68 */ --EXTERN int Itcl_ExecMethod _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_ExecMethod _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ExecProc_TCL_DECLARED -+#define Itcl_ExecProc_TCL_DECLARED - /* 69 */ --EXTERN int Itcl_ExecProc _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_ExecProc _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_AssignArgs_TCL_DECLARED -+#define Itcl_AssignArgs_TCL_DECLARED - /* 70 */ --EXTERN int Itcl_AssignArgs _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_AssignArgs _ANSI_ARGS_((Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[], - ItclMemberFunc * mfunc)); -+#endif -+#ifndef Itcl_ConstructBase_TCL_DECLARED -+#define Itcl_ConstructBase_TCL_DECLARED - /* 71 */ --EXTERN int Itcl_ConstructBase _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_ConstructBase _ANSI_ARGS_((Tcl_Interp * interp, - ItclObject * contextObj, - ItclClass * contextClass)); -+#endif -+#ifndef Itcl_InvokeMethodIfExists_TCL_DECLARED -+#define Itcl_InvokeMethodIfExists_TCL_DECLARED - /* 72 */ --EXTERN int Itcl_InvokeMethodIfExists _ANSI_ARGS_(( -- Tcl_Interp * interp, char * name, -+TCL_EXTERN(int) Itcl_InvokeMethodIfExists _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * name, - ItclClass * contextClass, - ItclObject * contextObj, int objc, - Tcl_Obj *CONST objv[])); -+#endif - /* Slot 73 is reserved */ -+#ifndef Itcl_ReportFuncErrors_TCL_DECLARED -+#define Itcl_ReportFuncErrors_TCL_DECLARED - /* 74 */ --EXTERN int Itcl_ReportFuncErrors _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ReportFuncErrors _ANSI_ARGS_(( - Tcl_Interp* interp, ItclMemberFunc * mfunc, - ItclObject * contextObj, int result)); -+#endif -+#ifndef Itcl_ParseInit_TCL_DECLARED -+#define Itcl_ParseInit_TCL_DECLARED - /* 75 */ --EXTERN int Itcl_ParseInit _ANSI_ARGS_((Tcl_Interp * interp, -+TCL_EXTERN(int) Itcl_ParseInit _ANSI_ARGS_((Tcl_Interp * interp, - ItclObjectInfo * info)); -+#endif -+#ifndef Itcl_ClassCmd_TCL_DECLARED -+#define Itcl_ClassCmd_TCL_DECLARED - /* 76 */ --EXTERN int Itcl_ClassCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_ClassCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassInheritCmd_TCL_DECLARED -+#define Itcl_ClassInheritCmd_TCL_DECLARED - /* 77 */ --EXTERN int Itcl_ClassInheritCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassInheritCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassProtectionCmd_TCL_DECLARED -+#define Itcl_ClassProtectionCmd_TCL_DECLARED - /* 78 */ --EXTERN int Itcl_ClassProtectionCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassProtectionCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassConstructorCmd_TCL_DECLARED -+#define Itcl_ClassConstructorCmd_TCL_DECLARED - /* 79 */ --EXTERN int Itcl_ClassConstructorCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassConstructorCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassDestructorCmd_TCL_DECLARED -+#define Itcl_ClassDestructorCmd_TCL_DECLARED - /* 80 */ --EXTERN int Itcl_ClassDestructorCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassDestructorCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassMethodCmd_TCL_DECLARED -+#define Itcl_ClassMethodCmd_TCL_DECLARED - /* 81 */ --EXTERN int Itcl_ClassMethodCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassMethodCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassProcCmd_TCL_DECLARED -+#define Itcl_ClassProcCmd_TCL_DECLARED - /* 82 */ --EXTERN int Itcl_ClassProcCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_ClassProcCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassVariableCmd_TCL_DECLARED -+#define Itcl_ClassVariableCmd_TCL_DECLARED - /* 83 */ --EXTERN int Itcl_ClassVariableCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassVariableCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ClassCommonCmd_TCL_DECLARED -+#define Itcl_ClassCommonCmd_TCL_DECLARED - /* 84 */ --EXTERN int Itcl_ClassCommonCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_ClassCommonCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_ParseVarResolver_TCL_DECLARED -+#define Itcl_ParseVarResolver_TCL_DECLARED - /* 85 */ --EXTERN int Itcl_ParseVarResolver _ANSI_ARGS_(( -- Tcl_Interp * interp, char* name, -+TCL_EXTERN(int) Itcl_ParseVarResolver _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char* name, - Tcl_Namespace * contextNs, int flags, - Tcl_Var* rPtr)); -+#endif -+#ifndef Itcl_BiInit_TCL_DECLARED -+#define Itcl_BiInit_TCL_DECLARED - /* 86 */ --EXTERN int Itcl_BiInit _ANSI_ARGS_((Tcl_Interp * interp)); -+TCL_EXTERN(int) Itcl_BiInit _ANSI_ARGS_((Tcl_Interp * interp)); -+#endif -+#ifndef Itcl_InstallBiMethods_TCL_DECLARED -+#define Itcl_InstallBiMethods_TCL_DECLARED - /* 87 */ --EXTERN int Itcl_InstallBiMethods _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_InstallBiMethods _ANSI_ARGS_(( - Tcl_Interp * interp, ItclClass * cdefn)); -+#endif -+#ifndef Itcl_BiIsaCmd_TCL_DECLARED -+#define Itcl_BiIsaCmd_TCL_DECLARED - /* 88 */ --EXTERN int Itcl_BiIsaCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_BiIsaCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiConfigureCmd_TCL_DECLARED -+#define Itcl_BiConfigureCmd_TCL_DECLARED - /* 89 */ --EXTERN int Itcl_BiConfigureCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_BiConfigureCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiCgetCmd_TCL_DECLARED -+#define Itcl_BiCgetCmd_TCL_DECLARED - /* 90 */ --EXTERN int Itcl_BiCgetCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_BiCgetCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiChainCmd_TCL_DECLARED -+#define Itcl_BiChainCmd_TCL_DECLARED - /* 91 */ --EXTERN int Itcl_BiChainCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiChainCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoClassCmd_TCL_DECLARED -+#define Itcl_BiInfoClassCmd_TCL_DECLARED - /* 92 */ --EXTERN int Itcl_BiInfoClassCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoClassCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoInheritCmd_TCL_DECLARED -+#define Itcl_BiInfoInheritCmd_TCL_DECLARED - /* 93 */ --EXTERN int Itcl_BiInfoInheritCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoInheritCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoHeritageCmd_TCL_DECLARED -+#define Itcl_BiInfoHeritageCmd_TCL_DECLARED - /* 94 */ --EXTERN int Itcl_BiInfoHeritageCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoHeritageCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoFunctionCmd_TCL_DECLARED -+#define Itcl_BiInfoFunctionCmd_TCL_DECLARED - /* 95 */ --EXTERN int Itcl_BiInfoFunctionCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoFunctionCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoVariableCmd_TCL_DECLARED -+#define Itcl_BiInfoVariableCmd_TCL_DECLARED - /* 96 */ --EXTERN int Itcl_BiInfoVariableCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoVariableCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoBodyCmd_TCL_DECLARED -+#define Itcl_BiInfoBodyCmd_TCL_DECLARED - /* 97 */ --EXTERN int Itcl_BiInfoBodyCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoBodyCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_BiInfoArgsCmd_TCL_DECLARED -+#define Itcl_BiInfoArgsCmd_TCL_DECLARED - /* 98 */ --EXTERN int Itcl_BiInfoArgsCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_BiInfoArgsCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_DefaultInfoCmd_TCL_DECLARED -+#define Itcl_DefaultInfoCmd_TCL_DECLARED - /* 99 */ --EXTERN int Itcl_DefaultInfoCmd _ANSI_ARGS_((ClientData dummy, -+TCL_EXTERN(int) Itcl_DefaultInfoCmd _ANSI_ARGS_((ClientData dummy, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_EnsembleInit_TCL_DECLARED -+#define Itcl_EnsembleInit_TCL_DECLARED - /* 100 */ --EXTERN int Itcl_EnsembleInit _ANSI_ARGS_((Tcl_Interp * interp)); -+TCL_EXTERN(int) Itcl_EnsembleInit _ANSI_ARGS_((Tcl_Interp * interp)); -+#endif -+#ifndef Itcl_CreateEnsemble_TCL_DECLARED -+#define Itcl_CreateEnsemble_TCL_DECLARED - /* 101 */ --EXTERN int Itcl_CreateEnsemble _ANSI_ARGS_((Tcl_Interp * interp, -- char* ensName)); -+TCL_EXTERN(int) Itcl_CreateEnsemble _ANSI_ARGS_((Tcl_Interp * interp, -+ CONST char* ensName)); -+#endif -+#ifndef Itcl_AddEnsemblePart_TCL_DECLARED -+#define Itcl_AddEnsemblePart_TCL_DECLARED - /* 102 */ --EXTERN int Itcl_AddEnsemblePart _ANSI_ARGS_(( -- Tcl_Interp * interp, char* ensName, -- char* partName, char* usageInfo, -+TCL_EXTERN(int) Itcl_AddEnsemblePart _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char* ensName, -+ CONST char* partName, CONST char* usageInfo, - Tcl_ObjCmdProc * objProc, - ClientData clientData, - Tcl_CmdDeleteProc * deleteProc)); -+#endif -+#ifndef Itcl_GetEnsemblePart_TCL_DECLARED -+#define Itcl_GetEnsemblePart_TCL_DECLARED - /* 103 */ --EXTERN int Itcl_GetEnsemblePart _ANSI_ARGS_(( -- Tcl_Interp * interp, char * ensName, -- char * partName, Tcl_CmdInfo * infoPtr)); -+TCL_EXTERN(int) Itcl_GetEnsemblePart _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * ensName, -+ CONST char * partName, Tcl_CmdInfo * infoPtr)); -+#endif -+#ifndef Itcl_IsEnsemble_TCL_DECLARED -+#define Itcl_IsEnsemble_TCL_DECLARED - /* 104 */ --EXTERN int Itcl_IsEnsemble _ANSI_ARGS_((Tcl_CmdInfo* infoPtr)); -+TCL_EXTERN(int) Itcl_IsEnsemble _ANSI_ARGS_((Tcl_CmdInfo* infoPtr)); -+#endif -+#ifndef Itcl_GetEnsembleUsage_TCL_DECLARED -+#define Itcl_GetEnsembleUsage_TCL_DECLARED - /* 105 */ --EXTERN int Itcl_GetEnsembleUsage _ANSI_ARGS_(( -- Tcl_Interp * interp, char * ensName, -+TCL_EXTERN(int) Itcl_GetEnsembleUsage _ANSI_ARGS_(( -+ Tcl_Interp * interp, CONST char * ensName, - Tcl_Obj * objPtr)); -+#endif -+#ifndef Itcl_GetEnsembleUsageForObj_TCL_DECLARED -+#define Itcl_GetEnsembleUsageForObj_TCL_DECLARED - /* 106 */ --EXTERN int Itcl_GetEnsembleUsageForObj _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_GetEnsembleUsageForObj _ANSI_ARGS_(( - Tcl_Interp * interp, Tcl_Obj * ensObjPtr, - Tcl_Obj * objPtr)); -+#endif -+#ifndef Itcl_EnsembleCmd_TCL_DECLARED -+#define Itcl_EnsembleCmd_TCL_DECLARED - /* 107 */ --EXTERN int Itcl_EnsembleCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_EnsembleCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_EnsPartCmd_TCL_DECLARED -+#define Itcl_EnsPartCmd_TCL_DECLARED - /* 108 */ --EXTERN int Itcl_EnsPartCmd _ANSI_ARGS_((ClientData clientData, -+TCL_EXTERN(int) Itcl_EnsPartCmd _ANSI_ARGS_((ClientData clientData, - Tcl_Interp * interp, int objc, - Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_EnsembleErrorCmd_TCL_DECLARED -+#define Itcl_EnsembleErrorCmd_TCL_DECLARED - /* 109 */ --EXTERN int Itcl_EnsembleErrorCmd _ANSI_ARGS_(( -+TCL_EXTERN(int) Itcl_EnsembleErrorCmd _ANSI_ARGS_(( - ClientData clientData, Tcl_Interp * interp, - int objc, Tcl_Obj *CONST objv[])); --/* 110 */ --EXTERN int Itcl_OldInit _ANSI_ARGS_((Tcl_Interp* interp, -- ItclObjectInfo* info)); --/* 111 */ --EXTERN int Itcl_InstallOldBiMethods _ANSI_ARGS_(( -- Tcl_Interp * interp, ItclClass * cdefn)); -+#endif -+/* Slot 110 is reserved */ -+/* Slot 111 is reserved */ -+#ifndef _Tcl_GetCallFrame_TCL_DECLARED -+#define _Tcl_GetCallFrame_TCL_DECLARED - /* 112 */ --EXTERN Tcl_CallFrame* _Tcl_GetCallFrame _ANSI_ARGS_((Tcl_Interp * interp, -- int level)); -+TCL_EXTERN(Tcl_CallFrame*) _Tcl_GetCallFrame _ANSI_ARGS_(( -+ Tcl_Interp * interp, int level)); -+#endif -+#ifndef _Tcl_ActivateCallFrame_TCL_DECLARED -+#define _Tcl_ActivateCallFrame_TCL_DECLARED - /* 113 */ --EXTERN Tcl_CallFrame* _Tcl_ActivateCallFrame _ANSI_ARGS_(( -+TCL_EXTERN(Tcl_CallFrame*) _Tcl_ActivateCallFrame _ANSI_ARGS_(( - Tcl_Interp * interp, - Tcl_CallFrame * framePtr)); -+#endif -+#ifndef _TclNewVar_TCL_DECLARED -+#define _TclNewVar_TCL_DECLARED - /* 114 */ --EXTERN Var* _TclNewVar _ANSI_ARGS_((void)); -+TCL_EXTERN(Var*) _TclNewVar _ANSI_ARGS_((void)); -+#endif -+#ifndef Itcl_Assert_TCL_DECLARED -+#define Itcl_Assert_TCL_DECLARED - /* 115 */ --EXTERN void Itcl_Assert _ANSI_ARGS_((char * testExpr, -- char * fileName, int lineNum)); -+TCL_EXTERN(void) Itcl_Assert _ANSI_ARGS_((CONST char * testExpr, -+ CONST char * fileName, int lineNum)); -+#endif -+#ifndef Itcl_IsObjectCmd_TCL_DECLARED -+#define Itcl_IsObjectCmd_TCL_DECLARED -+/* 116 */ -+TCL_EXTERN(int) Itcl_IsObjectCmd _ANSI_ARGS_((ClientData clientData, -+ Tcl_Interp * interp, int objc, -+ Tcl_Obj *CONST objv[])); -+#endif -+#ifndef Itcl_IsClassCmd_TCL_DECLARED -+#define Itcl_IsClassCmd_TCL_DECLARED -+/* 117 */ -+TCL_EXTERN(int) Itcl_IsClassCmd _ANSI_ARGS_((ClientData clientData, -+ Tcl_Interp * interp, int objc, -+ Tcl_Obj *CONST objv[])); -+#endif - - typedef struct ItclIntStubs { - int magic; -@@ -452,8 +799,8 @@ - - int (*itcl_IsClassNamespace) _ANSI_ARGS_((Tcl_Namespace * namesp)); /* 0 */ - int (*itcl_IsClass) _ANSI_ARGS_((Tcl_Command cmd)); /* 1 */ -- ItclClass* (*itcl_FindClass) _ANSI_ARGS_((Tcl_Interp* interp, char* path, int autoload)); /* 2 */ -- int (*itcl_FindObject) _ANSI_ARGS_((Tcl_Interp * interp, char * name, ItclObject ** roPtr)); /* 3 */ -+ ItclClass* (*itcl_FindClass) _ANSI_ARGS_((Tcl_Interp* interp, CONST char* path, int autoload)); /* 2 */ -+ int (*itcl_FindObject) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, ItclObject ** roPtr)); /* 3 */ - int (*itcl_IsObject) _ANSI_ARGS_((Tcl_Command cmd)); /* 4 */ - int (*itcl_ObjectIsa) _ANSI_ARGS_((ItclObject * contextObj, ItclClass * cdefn)); /* 5 */ - int (*itcl_Protection) _ANSI_ARGS_((Tcl_Interp * interp, int newLevel)); /* 6 */ -@@ -461,10 +808,10 @@ - int (*itcl_CanAccess) _ANSI_ARGS_((ItclMember* memberPtr, Tcl_Namespace* fromNsPtr)); /* 8 */ - int (*itcl_CanAccessFunc) _ANSI_ARGS_((ItclMemberFunc* mfunc, Tcl_Namespace* fromNsPtr)); /* 9 */ - Tcl_Namespace* (*itcl_GetTrueNamespace) _ANSI_ARGS_((Tcl_Interp * interp, ItclObjectInfo * info)); /* 10 */ -- void (*itcl_ParseNamespPath) _ANSI_ARGS_((char * name, Tcl_DString * buffer, char ** head, char ** tail)); /* 11 */ -- int (*itcl_DecodeScopedCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_Namespace ** rNsPtr, char ** rCmdPtr)); /* 12 */ -+ void (*itcl_ParseNamespPath) _ANSI_ARGS_((CONST char * name, Tcl_DString * buffer, char ** head, char ** tail)); /* 11 */ -+ int (*itcl_DecodeScopedCommand) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_Namespace ** rNsPtr, char ** rCmdPtr)); /* 12 */ - int (*itcl_EvalArgs) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 13 */ -- Tcl_Obj* (*itcl_CreateArgs) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int objc, Tcl_Obj *CONST objv[])); /* 14 */ -+ Tcl_Obj* (*itcl_CreateArgs) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * string, int objc, Tcl_Obj *CONST objv[])); /* 14 */ - int (*itcl_PushContext) _ANSI_ARGS_((Tcl_Interp * interp, ItclMember * member, ItclClass * contextClass, ItclObject * contextObj, ItclContext * contextPtr)); /* 15 */ - void (*itcl_PopContext) _ANSI_ARGS_((Tcl_Interp * interp, ItclContext * contextPtr)); /* 16 */ - int (*itcl_GetContext) _ANSI_ARGS_((Tcl_Interp * interp, ItclClass ** cdefnPtr, ItclObject ** odefnPtr)); /* 17 */ -@@ -481,39 +828,39 @@ - int (*itcl_StubCreateCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 28 */ - int (*itcl_StubExistsCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 29 */ - int (*itcl_IsStub) _ANSI_ARGS_((Tcl_Command cmd)); /* 30 */ -- int (*itcl_CreateClass) _ANSI_ARGS_((Tcl_Interp* interp, char* path, ItclObjectInfo * info, ItclClass ** rPtr)); /* 31 */ -+ int (*itcl_CreateClass) _ANSI_ARGS_((Tcl_Interp* interp, CONST char* path, ItclObjectInfo * info, ItclClass ** rPtr)); /* 31 */ - int (*itcl_DeleteClass) _ANSI_ARGS_((Tcl_Interp * interp, ItclClass * cdefnPtr)); /* 32 */ -- Tcl_Namespace* (*itcl_FindClassNamespace) _ANSI_ARGS_((Tcl_Interp* interp, char* path)); /* 33 */ -+ Tcl_Namespace* (*itcl_FindClassNamespace) _ANSI_ARGS_((Tcl_Interp* interp, CONST char* path)); /* 33 */ - int (*itcl_HandleClass) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 34 */ - int (*itcl_ClassCmdResolver) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* name, Tcl_Namespace * context, int flags, Tcl_Command * rPtr)); /* 35 */ -- int (*itcl_ClassVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, char* name, Tcl_Namespace * context, int flags, Tcl_Var * rPtr)); /* 36 */ -- int (*itcl_ClassCompiledVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, char* name, int length, Tcl_Namespace * context, Tcl_ResolvedVarInfo ** rPtr)); /* 37 */ -+ int (*itcl_ClassVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* name, Tcl_Namespace * context, int flags, Tcl_Var * rPtr)); /* 36 */ -+ int (*itcl_ClassCompiledVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* name, int length, Tcl_Namespace * context, Tcl_ResolvedVarInfo ** rPtr)); /* 37 */ - void (*itcl_BuildVirtualTables) _ANSI_ARGS_((ItclClass* cdefnPtr)); /* 38 */ - int (*itcl_CreateVarDefn) _ANSI_ARGS_((Tcl_Interp * interp, ItclClass* cdefn, char* name, char* init, char* config, ItclVarDefn** vdefnPtr)); /* 39 */ - void (*itcl_DeleteVarDefn) _ANSI_ARGS_((ItclVarDefn * vdefn)); /* 40 */ -- char* (*itcl_GetCommonVar) _ANSI_ARGS_((Tcl_Interp * interp, char * name, ItclClass * contextClass)); /* 41 */ -- ItclMember* (*itcl_CreateMember) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, char* name)); /* 42 */ -+ CONST char* (*itcl_GetCommonVar) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, ItclClass * contextClass)); /* 41 */ -+ ItclMember* (*itcl_CreateMember) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, CONST char* name)); /* 42 */ - void (*itcl_DeleteMember) _ANSI_ARGS_((ItclMember * memPtr)); /* 43 */ -- int (*itcl_CreateObject) _ANSI_ARGS_((Tcl_Interp * interp, char* name, ItclClass * cdefn, int objc, Tcl_Obj *CONST objv[], ItclObject ** roPtr)); /* 44 */ -+ int (*itcl_CreateObject) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* name, ItclClass * cdefn, int objc, Tcl_Obj *CONST objv[], ItclObject ** roPtr)); /* 44 */ - int (*itcl_DeleteObject) _ANSI_ARGS_((Tcl_Interp * interp, ItclObject * contextObj)); /* 45 */ - int (*itcl_DestructObject) _ANSI_ARGS_((Tcl_Interp * interp, ItclObject * contextObj, int flags)); /* 46 */ - int (*itcl_HandleInstance) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 47 */ -- char* (*itcl_GetInstanceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * name, ItclObject * contextObj, ItclClass * contextClass)); /* 48 */ -- int (*itcl_ScopedVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_Namespace * contextNs, int flags, Tcl_Var * rPtr)); /* 49 */ -+ CONST char* (*itcl_GetInstanceVar) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, ItclObject * contextObj, ItclClass * contextClass)); /* 48 */ -+ int (*itcl_ScopedVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_Namespace * contextNs, int flags, Tcl_Var * rPtr)); /* 49 */ - int (*itcl_BodyCmd) _ANSI_ARGS_((ClientData dummy, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 50 */ - int (*itcl_ConfigBodyCmd) _ANSI_ARGS_((ClientData dummy, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 51 */ -- int (*itcl_CreateMethod) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, char* name, char* arglist, char* body)); /* 52 */ -- int (*itcl_CreateProc) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, char* name, char* arglist, char* body)); /* 53 */ -- int (*itcl_CreateMemberFunc) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, char* name, char* arglist, char* body, ItclMemberFunc** mfuncPtr)); /* 54 */ -- int (*itcl_ChangeMemberFunc) _ANSI_ARGS_((Tcl_Interp* interp, ItclMemberFunc* mfunc, char* arglist, char* body)); /* 55 */ -- void (*itcl_DeleteMemberFunc) _ANSI_ARGS_((char* cdata)); /* 56 */ -- int (*itcl_CreateMemberCode) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, char* arglist, char* body, ItclMemberCode** mcodePtr)); /* 57 */ -- void (*itcl_DeleteMemberCode) _ANSI_ARGS_((char* cdata)); /* 58 */ -+ int (*itcl_CreateMethod) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, CONST char* name, CONST char* arglist, CONST char* body)); /* 52 */ -+ int (*itcl_CreateProc) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, CONST char* name, CONST char* arglist, CONST char* body)); /* 53 */ -+ int (*itcl_CreateMemberFunc) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, CONST char* name, CONST char* arglist, CONST char* body, ItclMemberFunc** mfuncPtr)); /* 54 */ -+ int (*itcl_ChangeMemberFunc) _ANSI_ARGS_((Tcl_Interp* interp, ItclMemberFunc* mfunc, CONST char* arglist, CONST char* body)); /* 55 */ -+ void (*itcl_DeleteMemberFunc) _ANSI_ARGS_((CONST char* cdata)); /* 56 */ -+ int (*itcl_CreateMemberCode) _ANSI_ARGS_((Tcl_Interp* interp, ItclClass * cdefn, CONST char* arglist, CONST char* body, ItclMemberCode** mcodePtr)); /* 57 */ -+ void (*itcl_DeleteMemberCode) _ANSI_ARGS_((CONST char* cdata)); /* 58 */ - int (*itcl_GetMemberCode) _ANSI_ARGS_((Tcl_Interp* interp, ItclMember* member)); /* 59 */ - void *reserved60; - int (*itcl_EvalMemberCode) _ANSI_ARGS_((Tcl_Interp * interp, ItclMemberFunc * mfunc, ItclMember * member, ItclObject * contextObj, int objc, Tcl_Obj *CONST objv[])); /* 61 */ -- int (*itcl_CreateArgList) _ANSI_ARGS_((Tcl_Interp* interp, char* decl, int* argcPtr, CompiledLocal** argPtr)); /* 62 */ -- CompiledLocal* (*itcl_CreateArg) _ANSI_ARGS_((char* name, char* init)); /* 63 */ -+ int (*itcl_CreateArgList) _ANSI_ARGS_((Tcl_Interp* interp, CONST char* decl, int* argcPtr, CompiledLocal** argPtr)); /* 62 */ -+ CompiledLocal* (*itcl_CreateArg) _ANSI_ARGS_((CONST char* name, CONST char* init)); /* 63 */ - void (*itcl_DeleteArgList) _ANSI_ARGS_((CompiledLocal * arglist)); /* 64 */ - Tcl_Obj* (*itcl_ArgList) _ANSI_ARGS_((int argc, CompiledLocal* arglist)); /* 65 */ - int (*itcl_EquivArgLists) _ANSI_ARGS_((CompiledLocal* arg1, int arg1c, CompiledLocal* arg2, int arg2c)); /* 66 */ -@@ -522,7 +869,7 @@ - int (*itcl_ExecProc) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 69 */ - int (*itcl_AssignArgs) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[], ItclMemberFunc * mfunc)); /* 70 */ - int (*itcl_ConstructBase) _ANSI_ARGS_((Tcl_Interp * interp, ItclObject * contextObj, ItclClass * contextClass)); /* 71 */ -- int (*itcl_InvokeMethodIfExists) _ANSI_ARGS_((Tcl_Interp * interp, char * name, ItclClass * contextClass, ItclObject * contextObj, int objc, Tcl_Obj *CONST objv[])); /* 72 */ -+ int (*itcl_InvokeMethodIfExists) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, ItclClass * contextClass, ItclObject * contextObj, int objc, Tcl_Obj *CONST objv[])); /* 72 */ - void *reserved73; - int (*itcl_ReportFuncErrors) _ANSI_ARGS_((Tcl_Interp* interp, ItclMemberFunc * mfunc, ItclObject * contextObj, int result)); /* 74 */ - int (*itcl_ParseInit) _ANSI_ARGS_((Tcl_Interp * interp, ItclObjectInfo * info)); /* 75 */ -@@ -535,7 +882,7 @@ - int (*itcl_ClassProcCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 82 */ - int (*itcl_ClassVariableCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 83 */ - int (*itcl_ClassCommonCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 84 */ -- int (*itcl_ParseVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, char* name, Tcl_Namespace * contextNs, int flags, Tcl_Var* rPtr)); /* 85 */ -+ int (*itcl_ParseVarResolver) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* name, Tcl_Namespace * contextNs, int flags, Tcl_Var* rPtr)); /* 85 */ - int (*itcl_BiInit) _ANSI_ARGS_((Tcl_Interp * interp)); /* 86 */ - int (*itcl_InstallBiMethods) _ANSI_ARGS_((Tcl_Interp * interp, ItclClass * cdefn)); /* 87 */ - int (*itcl_BiIsaCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 88 */ -@@ -551,30 +898,26 @@ - int (*itcl_BiInfoArgsCmd) _ANSI_ARGS_((ClientData dummy, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 98 */ - int (*itcl_DefaultInfoCmd) _ANSI_ARGS_((ClientData dummy, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 99 */ - int (*itcl_EnsembleInit) _ANSI_ARGS_((Tcl_Interp * interp)); /* 100 */ -- int (*itcl_CreateEnsemble) _ANSI_ARGS_((Tcl_Interp * interp, char* ensName)); /* 101 */ -- int (*itcl_AddEnsemblePart) _ANSI_ARGS_((Tcl_Interp * interp, char* ensName, char* partName, char* usageInfo, Tcl_ObjCmdProc * objProc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 102 */ -- int (*itcl_GetEnsemblePart) _ANSI_ARGS_((Tcl_Interp * interp, char * ensName, char * partName, Tcl_CmdInfo * infoPtr)); /* 103 */ -+ int (*itcl_CreateEnsemble) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* ensName)); /* 101 */ -+ int (*itcl_AddEnsemblePart) _ANSI_ARGS_((Tcl_Interp * interp, CONST char* ensName, CONST char* partName, CONST char* usageInfo, Tcl_ObjCmdProc * objProc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 102 */ -+ int (*itcl_GetEnsemblePart) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * ensName, CONST char * partName, Tcl_CmdInfo * infoPtr)); /* 103 */ - int (*itcl_IsEnsemble) _ANSI_ARGS_((Tcl_CmdInfo* infoPtr)); /* 104 */ -- int (*itcl_GetEnsembleUsage) _ANSI_ARGS_((Tcl_Interp * interp, char * ensName, Tcl_Obj * objPtr)); /* 105 */ -+ int (*itcl_GetEnsembleUsage) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * ensName, Tcl_Obj * objPtr)); /* 105 */ - int (*itcl_GetEnsembleUsageForObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * ensObjPtr, Tcl_Obj * objPtr)); /* 106 */ - int (*itcl_EnsembleCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 107 */ - int (*itcl_EnsPartCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 108 */ - int (*itcl_EnsembleErrorCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 109 */ -- int (*itcl_OldInit) _ANSI_ARGS_((Tcl_Interp* interp, ItclObjectInfo* info)); /* 110 */ -- int (*itcl_InstallOldBiMethods) _ANSI_ARGS_((Tcl_Interp * interp, ItclClass * cdefn)); /* 111 */ -+ void *reserved110; -+ void *reserved111; - Tcl_CallFrame* (*_Tcl_GetCallFrame) _ANSI_ARGS_((Tcl_Interp * interp, int level)); /* 112 */ - Tcl_CallFrame* (*_Tcl_ActivateCallFrame) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_CallFrame * framePtr)); /* 113 */ - Var* (*_TclNewVar) _ANSI_ARGS_((void)); /* 114 */ -- void (*itcl_Assert) _ANSI_ARGS_((char * testExpr, char * fileName, int lineNum)); /* 115 */ -+ void (*itcl_Assert) _ANSI_ARGS_((CONST char * testExpr, CONST char * fileName, int lineNum)); /* 115 */ -+ int (*itcl_IsObjectCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 116 */ -+ int (*itcl_IsClassCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 117 */ - } ItclIntStubs; - --#ifdef __cplusplus --extern "C" { --#endif --extern ItclIntStubs *itclIntStubsPtr; --#ifdef __cplusplus --} --#endif -+TCL_EXTERNC ItclIntStubs *itclIntStubsPtr; - - #if defined(USE_ITCL_STUBS) && !defined(USE_ITCL_STUB_PROCS) - -@@ -1016,14 +1359,8 @@ - #define Itcl_EnsembleErrorCmd \ - (itclIntStubsPtr->itcl_EnsembleErrorCmd) /* 109 */ - #endif --#ifndef Itcl_OldInit --#define Itcl_OldInit \ -- (itclIntStubsPtr->itcl_OldInit) /* 110 */ --#endif --#ifndef Itcl_InstallOldBiMethods --#define Itcl_InstallOldBiMethods \ -- (itclIntStubsPtr->itcl_InstallOldBiMethods) /* 111 */ --#endif -+/* Slot 110 is reserved */ -+/* Slot 111 is reserved */ - #ifndef _Tcl_GetCallFrame - #define _Tcl_GetCallFrame \ - (itclIntStubsPtr->_Tcl_GetCallFrame) /* 112 */ -@@ -1040,6 +1377,14 @@ - #define Itcl_Assert \ - (itclIntStubsPtr->itcl_Assert) /* 115 */ - #endif -+#ifndef Itcl_IsObjectCmd -+#define Itcl_IsObjectCmd \ -+ (itclIntStubsPtr->itcl_IsObjectCmd) /* 116 */ -+#endif -+#ifndef Itcl_IsClassCmd -+#define Itcl_IsClassCmd \ -+ (itclIntStubsPtr->itcl_IsClassCmd) /* 117 */ -+#endif - - #endif /* defined(USE_ITCL_STUBS) && !defined(USE_ITCL_STUB_PROCS) */ - -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclInt.h insight-6.8.new/itcl/itcl/generic/itclInt.h ---- insight-6.8.orig/itcl/itcl/generic/itclInt.h 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclInt.h 2008-08-18 18:56:39.000000000 +0200 -@@ -39,7 +39,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itclInt.h,v 1.7 2001/04/07 07:20:53 davygrvy Exp $ -+ * RCS: $Id: itclInt.h,v 1.14 2005/02/10 23:20:27 hobbs Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -49,14 +49,77 @@ - #ifndef ITCLINT_H - #define ITCLINT_H - --#include "itcl.h" - #include "tclInt.h" -+#include "itcl.h" - - #ifdef BUILD_itcl - # undef TCL_STORAGE_CLASS - # define TCL_STORAGE_CLASS DLLEXPORT - #endif - -+/* -+ * Fix Tcl bug #803489 the right way. We need to always use the old Stub -+ * slot positions, not the new broken ones part of TIP 127. I do like -+ * that these functions have moved to the public space (about time), but -+ * the slot change is the killer and is the painful side affect. -+ */ -+ -+#if defined(USE_TCL_STUBS) && \ -+ (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION >= 5) -+# undef Tcl_CreateNamespace -+# define Tcl_CreateNamespace \ -+ (tclIntStubsPtr->tcl_CreateNamespace) -+# undef Tcl_DeleteNamespace -+# define Tcl_DeleteNamespace \ -+ (tclIntStubsPtr->tcl_DeleteNamespace) -+# undef Tcl_AppendExportList -+# define Tcl_AppendExportList \ -+ (tclIntStubsPtr->tcl_AppendExportList) -+# undef Tcl_Export -+# define Tcl_Export \ -+ (tclIntStubsPtr->tcl_Export) -+# undef Tcl_Import -+# define Tcl_Import \ -+ (tclIntStubsPtr->tcl_Import) -+# undef Tcl_ForgetImport -+# define Tcl_ForgetImport \ -+ (tclIntStubsPtr->tcl_ForgetImport) -+# undef Tcl_GetCurrentNamespace -+# define Tcl_GetCurrentNamespace \ -+ (tclIntStubsPtr->tcl_GetCurrentNamespace) -+# undef Tcl_GetGlobalNamespace -+# define Tcl_GetGlobalNamespace \ -+ (tclIntStubsPtr->tcl_GetGlobalNamespace) -+# undef Tcl_FindNamespace -+# define Tcl_FindNamespace \ -+ (tclIntStubsPtr->tcl_FindNamespace) -+# undef Tcl_FindCommand -+# define Tcl_FindCommand \ -+ (tclIntStubsPtr->tcl_FindCommand) -+# undef Tcl_GetCommandFromObj -+# define Tcl_GetCommandFromObj \ -+ (tclIntStubsPtr->tcl_GetCommandFromObj) -+# undef Tcl_GetCommandFullName -+# define Tcl_GetCommandFullName \ -+ (tclIntStubsPtr->tcl_GetCommandFullName) -+#endif -+ -+/* -+ * Some backward compatability adjustments. -+ */ -+ -+#if TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION == 0 -+# define Tcl_GetString(obj) Tcl_GetStringFromObj((obj), NULL) -+# define TCL_DECLARE_MUTEX(mutexVar) -+# define Tcl_MutexLock(mutexVar) -+# define Tcl_MutexUnlock(mutexVar) -+# define Tcl_Panic panic -+#endif -+ -+#define TCL_DOES_STUBS \ -+ (TCL_MAJOR_VERSION > 8 || TCL_MAJOR_VERSION == 8 && (TCL_MINOR_VERSION > 1 || \ -+ (TCL_MINOR_VERSION == 1 && TCL_RELEASE_LEVEL == TCL_FINAL_RELEASE))) -+ - - /* - * Common info for managing all known objects. -@@ -157,6 +220,9 @@ - - } ItclMemberCode; - -+#define Itcl_IsMemberCodeImplemented(mcode) \ -+ (((mcode)->flags & ITCL_IMPLEMENT_NONE) == 0) -+ - /* - * Basic representation for class members (commands/variables) - */ -@@ -255,15 +321,11 @@ - */ - - #undef assert --#ifdef NDEBUG -+#ifndef DEBUG - #define assert(EX) ((void)0) - #else --#if defined(__STDC__) --#define assert(EX) (void)((EX) || (Itcl_Assert(#EX, __FILE__, __LINE__), 0)) --#else --#define assert(EX) (void)((EX) || (Itcl_Assert("EX", __FILE__, __LINE__), 0)) --#endif /* __STDC__ */ --#endif /* NDEBUG */ -+#define assert(EX) (void)((EX) || (Itcl_Assert(STRINGIFY(EX), __FILE__, __LINE__), 0)) -+#endif /* DEBUG */ - - #undef TCL_STORAGE_CLASS - #define TCL_STORAGE_CLASS DLLIMPORT -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_linkage.c insight-6.8.new/itcl/itcl/generic/itcl_linkage.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_linkage.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_linkage.c 2008-08-18 18:56:39.000000000 +0200 -@@ -22,7 +22,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_linkage.c,v 1.1 1998/07/27 18:41:46 stanton Exp $ -+ * RCS: $Id: itcl_linkage.c,v 1.2 2003/12/17 02:25:37 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -76,7 +76,7 @@ - int - Itcl_RegisterC(interp, name, proc, clientData, deleteProc) - Tcl_Interp *interp; /* interpreter handling this registration */ -- char *name; /* symbolic name for procedure */ -+ CONST char *name; /* symbolic name for procedure */ - Tcl_CmdProc *proc; /* procedure handling Tcl command */ - ClientData clientData; /* client data associated with proc */ - Tcl_CmdDeleteProc *deleteProc; /* proc called to free up client data */ -@@ -161,7 +161,7 @@ - int - Itcl_RegisterObjC(interp, name, proc, clientData, deleteProc) - Tcl_Interp *interp; /* interpreter handling this registration */ -- char *name; /* symbolic name for procedure */ -+ CONST char *name; /* symbolic name for procedure */ - Tcl_ObjCmdProc *proc; /* procedure handling Tcl command */ - ClientData clientData; /* client data associated with proc */ - Tcl_CmdDeleteProc *deleteProc; /* proc called to free up client data */ -@@ -230,7 +230,7 @@ - int - Itcl_FindC(interp, name, argProcPtr, objProcPtr, cDataPtr) - Tcl_Interp *interp; /* interpreter handling this registration */ -- char *name; /* symbolic name for procedure */ -+ CONST char *name; /* symbolic name for procedure */ - Tcl_CmdProc **argProcPtr; /* returns (argc,argv) command handler */ - Tcl_ObjCmdProc **objProcPtr; /* returns (objc,objv) command handler */ - ClientData *cDataPtr; /* returns client data */ -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_methods.c insight-6.8.new/itcl/itcl/generic/itcl_methods.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_methods.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_methods.c 2008-08-18 18:56:39.000000000 +0200 -@@ -23,7 +23,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_methods.c,v 1.6 2001/05/22 23:48:58 davygrvy Exp $ -+ * RCS: $Id: itcl_methods.c,v 1.14 2005/02/11 17:15:14 hobbs Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -294,9 +294,9 @@ - Itcl_CreateMethod(interp, cdefn, name, arglist, body) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclClass *cdefn; /* class definition */ -- char* name; /* name of new method */ -- char* arglist; /* space-separated list of arg names */ -- char* body; /* body of commands for the method */ -+ CONST char* name; /* name of new method */ -+ CONST char* arglist; /* space-separated list of arg names */ -+ CONST char* body; /* body of commands for the method */ - { - ItclMemberFunc *mfunc; - Tcl_DString buffer; -@@ -331,8 +331,8 @@ - name = Tcl_DStringValue(&buffer); - - Itcl_PreserveData((ClientData)mfunc); -- mfunc->accessCmd = Tcl_CreateObjCommand(interp, name, Itcl_ExecMethod, -- (ClientData)mfunc, Itcl_ReleaseData); -+ mfunc->accessCmd = Tcl_CreateObjCommand(interp, (CONST84 char *)name, -+ Itcl_ExecMethod, (ClientData)mfunc, Itcl_ReleaseData); - - Tcl_DStringFree(&buffer); - return TCL_OK; -@@ -345,7 +345,7 @@ - * - * Installs a class proc into the namespace associated with a class. - * If another command with the same name is already installed, then -- * it is overwritten. Returns TCL_OK on success, or TCL_ERROR (along -+ * it is overwritten. Returns TCL_OK on success, or TCL_ERROR (along - * with an error message in the specified interp) if anything goes - * wrong. - * ------------------------------------------------------------------------ -@@ -354,9 +354,9 @@ - Itcl_CreateProc(interp, cdefn, name, arglist, body) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclClass *cdefn; /* class definition */ -- char* name; /* name of new proc */ -- char* arglist; /* space-separated list of arg names */ -- char* body; /* body of commands for the proc */ -+ CONST char* name; /* name of new proc */ -+ CONST char* arglist; /* space-separated list of arg names */ -+ CONST char* body; /* body of commands for the proc */ - { - ItclMemberFunc *mfunc; - Tcl_DString buffer; -@@ -396,8 +396,8 @@ - name = Tcl_DStringValue(&buffer); - - Itcl_PreserveData((ClientData)mfunc); -- mfunc->accessCmd = Tcl_CreateObjCommand(interp, name, Itcl_ExecProc, -- (ClientData)mfunc, Itcl_ReleaseData); -+ mfunc->accessCmd = Tcl_CreateObjCommand(interp, (CONST84 char *)name, -+ Itcl_ExecProc, (ClientData)mfunc, Itcl_ReleaseData); - - Tcl_DStringFree(&buffer); - return TCL_OK; -@@ -423,9 +423,9 @@ - Itcl_CreateMemberFunc(interp, cdefn, name, arglist, body, mfuncPtr) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclClass *cdefn; /* class definition */ -- char* name; /* name of new member */ -- char* arglist; /* space-separated list of arg names */ -- char* body; /* body of commands for the method */ -+ CONST char* name; /* name of new member */ -+ CONST char* arglist; /* space-separated list of arg names */ -+ CONST char* body; /* body of commands for the method */ - ItclMemberFunc** mfuncPtr; /* returns: pointer to new method defn */ - { - int newEntry; -@@ -518,8 +518,8 @@ - Itcl_ChangeMemberFunc(interp, mfunc, arglist, body) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclMemberFunc* mfunc; /* command member being changed */ -- char* arglist; /* space-separated list of arg names */ -- char* body; /* body of commands for the method */ -+ CONST char* arglist; /* space-separated list of arg names */ -+ CONST char* body; /* body of commands for the method */ - { - ItclMemberCode *mcode = NULL; - Tcl_Obj *objPtr; -@@ -579,7 +579,7 @@ - */ - void - Itcl_DeleteMemberFunc(cdata) -- char* cdata; /* pointer to member function definition */ -+ CONST char* cdata; /* pointer to member function definition */ - { - ItclMemberFunc* mfunc = (ItclMemberFunc*)cdata; - -@@ -618,8 +618,8 @@ - Itcl_CreateMemberCode(interp, cdefn, arglist, body, mcodePtr) - Tcl_Interp* interp; /* interpreter managing this action */ - ItclClass *cdefn; /* class containing this member */ -- char* arglist; /* space-separated list of arg names */ -- char* body; /* body of commands for the method */ -+ CONST char* arglist; /* space-separated list of arg names */ -+ CONST char* body; /* body of commands for the method */ - ItclMemberCode** mcodePtr; /* returns: pointer to new implementation */ - { - int argc; -@@ -668,11 +668,12 @@ - procPtr->cmdPtr->nsPtr = (Namespace*)cdefn->namesp; - - if (body) { -- procPtr->bodyPtr = Tcl_NewStringObj(body, -1); -- Tcl_IncrRefCount(procPtr->bodyPtr); -+ procPtr->bodyPtr = Tcl_NewStringObj((CONST84 char *)body, -1); - } else { -- procPtr->bodyPtr = NULL; -+ procPtr->bodyPtr = Tcl_NewStringObj((CONST84 char *)"", -1); -+ mcode->flags |= ITCL_IMPLEMENT_NONE; - } -+ Tcl_IncrRefCount(procPtr->bodyPtr); - - /* - * Plug the argument list into the "compiled locals" list. -@@ -695,7 +696,7 @@ - * as a symbolic name for a C procedure. - */ - if (body == NULL) { -- mcode->flags |= ITCL_IMPLEMENT_NONE; -+ /* No-op */ - } - else if (*body == '@') { - Tcl_CmdProc *argCmdProc; -@@ -745,7 +746,7 @@ - */ - void - Itcl_DeleteMemberCode(cdata) -- char* cdata; /* pointer to member function definition */ -+ CONST char* cdata; /* pointer to member function definition */ - { - ItclMemberCode* mcode = (ItclMemberCode*)cdata; - -@@ -789,15 +790,16 @@ - Tcl_Interp* interp; /* interpreter managing this action */ - ItclMember* member; /* member containing code body */ - { -- ItclMemberCode *mcode = member->code; -- - int result; -+ ItclMemberCode *mcode = member->code; -+ assert(mcode != NULL); - - /* - * If the implementation has not yet been defined, try to - * autoload it now. - */ -- if ((mcode->flags & ITCL_IMPLEMENT_NONE) != 0) { -+ -+ if (!Itcl_IsMemberCodeImplemented(mcode)) { - result = Tcl_VarEval(interp, "::auto_load ", member->fullname, - (char*)NULL); - -@@ -820,8 +822,9 @@ - * the member and look at the current code pointer again. - */ - mcode = member->code; -+ assert(mcode != NULL); - -- if ((mcode->flags & ITCL_IMPLEMENT_NONE) != 0) { -+ if (!Itcl_IsMemberCodeImplemented(mcode)) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), - "member function \"", member->fullname, - "\" is not defined and cannot be autoloaded", -@@ -1003,7 +1006,7 @@ - result = Tcl_EvalObj(interp, mcode->procPtr->bodyPtr); - } - else { -- panic("itcl: bad implementation flag for %s", member->fullname); -+ Tcl_Panic("itcl: bad implementation flag for %s", member->fullname); - } - - /* -@@ -1050,7 +1053,7 @@ - int - Itcl_CreateArgList(interp, decl, argcPtr, argPtr) - Tcl_Interp* interp; /* interpreter managing this function */ -- char* decl; /* string representing argument list */ -+ CONST char* decl; /* string representing argument list */ - int* argcPtr; /* returns number of args in argument list */ - CompiledLocal** argPtr; /* returns pointer to parsed argument list */ - { -@@ -1064,7 +1067,8 @@ - *argcPtr = 0; - - if (decl) { -- if (Tcl_SplitList(interp, decl, &argc, &argv) != TCL_OK) { -+ if (Tcl_SplitList(interp, (CONST84 char *)decl, &argc, &argv) -+ != TCL_OK) { - return TCL_ERROR; - } - -@@ -1142,8 +1146,8 @@ - */ - CompiledLocal* - Itcl_CreateArg(name, init) -- char* name; /* name of new argument */ -- char* init; /* initial value */ -+ CONST char* name; /* name of new argument */ -+ CONST char* init; /* initial value */ - { - CompiledLocal *localPtr = NULL; - int nameLen; -@@ -1164,7 +1168,7 @@ - localPtr->resolveInfo = NULL; - - if (init != NULL) { -- localPtr->defValuePtr = Tcl_NewStringObj(init, -1); -+ localPtr->defValuePtr = Tcl_NewStringObj((CONST84 char *)init, -1); - Tcl_IncrRefCount(localPtr->defValuePtr); - } else { - localPtr->defValuePtr = NULL; -@@ -1338,7 +1342,7 @@ - Tcl_Obj *objPtr; /* returns: string showing usage */ - { - int argcount; -- CONST char *name; -+ char *name; - CompiledLocal *arglist, *argPtr; - Tcl_HashEntry *entry; - ItclMemberFunc *mf; -@@ -1365,25 +1369,22 @@ - Tcl_GetCommandFullName(contextObj->classDefn->interp, - contextObj->classDefn->accessCmd, objPtr); - Tcl_AppendToObj(objPtr, " ", -1); -- name = Tcl_GetCommandName(contextObj->classDefn->interp, -- contextObj->accessCmd); -+ name = (char *) Tcl_GetCommandName( -+ contextObj->classDefn->interp, contextObj->accessCmd); - Tcl_AppendToObj(objPtr, name, -1); - } else { - Tcl_AppendToObj(objPtr, mfunc->member->fullname, -1); - } -- } -- else if (contextObj && contextObj->accessCmd) { -- name = Tcl_GetCommandName(contextObj->classDefn->interp, -+ } else if (contextObj && contextObj->accessCmd) { -+ name = (char *) Tcl_GetCommandName(contextObj->classDefn->interp, - contextObj->accessCmd); - Tcl_AppendStringsToObj(objPtr, name, " ", mfunc->member->name, - (char*)NULL); -- } -- else { -+ } else { - Tcl_AppendStringsToObj(objPtr, " ", mfunc->member->name, - (char*)NULL); - } -- } -- else { -+ } else { - Tcl_AppendToObj(objPtr, mfunc->member->fullname, -1); - } - -@@ -1672,6 +1673,24 @@ - framePtr->numCompiledLocals = localCt; - framePtr->compiledLocals = contextPtr->compiledLocals; - -+ /* -+ * Invoking TclInitCompiledLocals with a framePtr->procPtr->bodyPtr -+ * that is not a compiled byte code type leads to a crash. So -+ * make sure that the body is compiled here. This needs to -+ * be done even if the body of the Itcl method is not implemented -+ * as a Tcl proc or has no implementation. The empty string should -+ * have been defined as the body if no implementation was defined. -+ */ -+ assert(mcode->procPtr->bodyPtr != NULL); -+ -+ result = TclProcCompileProc(interp, mcode->procPtr, -+ mcode->procPtr->bodyPtr, (Namespace*)member->classDefn->namesp, -+ "body for", member->fullname); -+ -+ if (result != TCL_OK) { -+ return result; -+ } -+ - TclInitCompiledLocals(interp, framePtr, - (Namespace*)contextClass->namesp); - } -@@ -1852,12 +1871,12 @@ - argPtr=argPtr->nextPtr, argsLeft--, varPtr++, objv++, objc--) - { - if (!TclIsVarArgument(argPtr)) { -- panic("local variable %s is not argument but should be", -+ Tcl_Panic("local variable %s is not argument but should be", - argPtr->name); - return TCL_ERROR; - } - if (TclIsVarTemporary(argPtr)) { -- panic("local variable is temporary but should be an argument"); -+ Tcl_Panic("local variable is temporary but should be an argument"); - return TCL_ERROR; - } - -@@ -2171,7 +2190,7 @@ - int result = TCL_OK; - - int i; -- char *val; -+ CONST char *val; - Tcl_DString lastval; - ItclContext context; - Tcl_CallFrame *oldFramePtr, *uplevelFramePtr; -@@ -2360,7 +2379,7 @@ - int - Itcl_InvokeMethodIfExists(interp, name, contextClass, contextObj, objc, objv) - Tcl_Interp *interp; /* interpreter */ -- char *name; /* name of desired method */ -+ CONST char *name; /* name of desired method */ - ItclClass *contextClass; /* current class being constructed */ - ItclObject *contextObj; /* object being constructed */ - int objc; /* number of arguments */ -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_migrate.c insight-6.8.new/itcl/itcl/generic/itcl_migrate.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_migrate.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_migrate.c 2008-08-18 18:56:39.000000000 +0200 -@@ -12,7 +12,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_migrate.c,v 1.1 1998/07/27 18:41:47 stanton Exp $ -+ * RCS: $Id: itcl_migrate.c,v 1.2 2003/12/24 01:09:56 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -49,7 +49,7 @@ - CallFrame *framePtr; - - if (level < 0) { -- panic("itcl: _Tcl_GetCallFrame called with bad number of levels"); -+ Tcl_Panic("itcl: _Tcl_GetCallFrame called with bad number of levels"); - } - - framePtr = iPtr->varFramePtr; -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_objects.c insight-6.8.new/itcl/itcl/generic/itcl_objects.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_objects.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_objects.c 2008-08-18 18:56:39.000000000 +0200 -@@ -22,7 +22,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_objects.c,v 1.5 2001/05/22 15:32:47 davygrvy Exp $ -+ * RCS: $Id: itcl_objects.c,v 1.13 2003/12/23 03:11:04 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -38,7 +38,7 @@ - ItclObject* obj)); - - static char* ItclTraceThisVar _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, char *name1, char *name2, int flags)); -+ Tcl_Interp *interp, CONST char *name1, CONST char *name2, int flags)); - - static void ItclDestroyObject _ANSI_ARGS_((ClientData cdata)); - static void ItclFreeObject _ANSI_ARGS_((char* cdata)); -@@ -73,7 +73,7 @@ - int - Itcl_CreateObject(interp, name, cdefn, objc, objv, roPtr) - Tcl_Interp *interp; /* interpreter mananging new object */ -- char* name; /* name of new object */ -+ CONST char* name; /* name of new object */ - ItclClass *cdefn; /* class for new object */ - int objc; /* number of arguments */ - Tcl_Obj *CONST objv[]; /* argument objects */ -@@ -102,8 +102,8 @@ - * only in the current namespace context. Otherwise, we might - * find a global command, but that wouldn't be clobbered! - */ -- cmd = Tcl_FindCommand(interp, name, (Tcl_Namespace*)NULL, -- TCL_NAMESPACE_ONLY); -+ cmd = Tcl_FindCommand(interp, (CONST84 char *)name, -+ (Tcl_Namespace*)NULL, TCL_NAMESPACE_ONLY); - - if (cmd != NULL && !Itcl_IsStub(cmd)) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -@@ -192,7 +192,7 @@ - if (cdPtr == cdefnPtr) { - ItclCreateObjVar(interp, vdefn, newObj); - Tcl_SetVar2(interp, "this", (char*)NULL, "", 0); -- Tcl_TraceVar2(interp, "this", (char*)NULL, -+ Tcl_TraceVar2(interp, "this", NULL, - TCL_TRACE_READS|TCL_TRACE_WRITES, ItclTraceThisVar, - (ClientData)newObj); - } -@@ -490,7 +490,7 @@ - int - Itcl_FindObject(interp, name, roPtr) - Tcl_Interp *interp; /* interpreter containing this object */ -- char *name; /* name of the object */ -+ CONST char *name; /* name of the object */ - ItclObject **roPtr; /* returns: object data or NULL */ - { - Tcl_Namespace *contextNs = NULL; -@@ -522,9 +522,8 @@ - *roPtr = NULL; - } - -- if (cmdName != name) { -- ckfree(cmdName); -- } -+ ckfree(cmdName); -+ - return TCL_OK; - } - -@@ -704,15 +703,15 @@ - * anything goes wrong, this returns NULL. - * ------------------------------------------------------------------------ - */ --char* -+CONST char* - Itcl_GetInstanceVar(interp, name, contextObj, contextClass) - Tcl_Interp *interp; /* current interpreter */ -- char *name; /* name of desired instance variable */ -+ CONST char *name; /* name of desired instance variable */ - ItclObject *contextObj; /* current object */ - ItclClass *contextClass; /* name is interpreted in this scope */ - { - ItclContext context; -- char *val; -+ CONST char *val; - - /* - * Make sure that the current namespace context includes an -@@ -736,7 +735,8 @@ - return NULL; - } - -- val = Tcl_GetVar2(interp, name, (char*)NULL, TCL_LEAVE_ERR_MSG); -+ val = Tcl_GetVar2(interp, (CONST84 char *)name, (char*)NULL, -+ TCL_LEAVE_ERR_MSG); - Itcl_PopContext(interp, &context); - - return val; -@@ -849,11 +849,11 @@ - /* ARGSUSED */ - static char* - ItclTraceThisVar(cdata, interp, name1, name2, flags) -- ClientData cdata; /* object instance data */ -- Tcl_Interp *interp; /* interpreter managing this variable */ -- char *name1; /* variable name */ -- char *name2; /* unused */ -- int flags; /* flags indicating read/write */ -+ ClientData cdata; /* object instance data */ -+ Tcl_Interp *interp; /* interpreter managing this variable */ -+ CONST char *name1; /* variable name */ -+ CONST char *name2; /* unused */ -+ int flags; /* flags indicating read/write */ - { - ItclObject *contextObj = (ItclObject*)cdata; - char *objName; -@@ -871,8 +871,8 @@ - contextObj->accessCmd, objPtr); - } - -- objName = Tcl_GetStringFromObj(objPtr, (int*)NULL); -- Tcl_SetVar(interp, name1, objName, 0); -+ objName = Tcl_GetString(objPtr); -+ Tcl_SetVar(interp, (CONST84 char *)name1, objName, 0); - - Tcl_DecrRefCount(objPtr); - return NULL; -@@ -1144,7 +1144,7 @@ - int - Itcl_ScopedVarResolver(interp, name, contextNs, flags, rPtr) - Tcl_Interp *interp; /* current interpreter */ -- char *name; /* variable name being resolved */ -+ CONST char *name; /* variable name being resolved */ - Tcl_Namespace *contextNs; /* current namespace context */ - int flags; /* TCL_LEAVE_ERR_MSG => leave error message */ - Tcl_Var *rPtr; /* returns: resolved variable */ -@@ -1175,7 +1175,8 @@ - errs = NULL; - } - -- if (Tcl_SplitList(errs, name, &namec, &namev) != TCL_OK) { -+ if (Tcl_SplitList(errs, (CONST84 char *)name, &namec, &namev) -+ != TCL_OK) { - return TCL_ERROR; - } - if (namec != 3) { -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_obsolete.c insight-6.8.new/itcl/itcl/generic/itcl_obsolete.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_obsolete.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_obsolete.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,1953 +0,0 @@ --/* -- * ------------------------------------------------------------------------ -- * PACKAGE: [incr Tcl] -- * DESCRIPTION: Object-Oriented Extensions to Tcl -- * -- * [incr Tcl] provides object-oriented extensions to Tcl, much as -- * C++ provides object-oriented extensions to C. It provides a means -- * of encapsulating related procedures together with their shared data -- * in a local namespace that is hidden from the outside world. It -- * promotes code re-use through inheritance. More than anything else, -- * it encourages better organization of Tcl applications through the -- * object-oriented paradigm, leading to code that is easier to -- * understand and maintain. -- * -- * Procedures in this file support the old-style syntax for [incr Tcl] -- * class definitions: -- * -- * itcl_class { -- * inherit ... -- * -- * constructor {} { } -- * destructor { } -- * -- * method {} { } -- * proc {} { } -- * -- * public ?? ?? -- * protected ?? -- * common ?? -- * } -- * -- * This capability will be removed in a future release, after users -- * have had a chance to switch over to the new syntax. -- * -- * ======================================================================== -- * AUTHOR: Michael J. McLennan -- * Bell Labs Innovations for Lucent Technologies -- * mmclennan@lucent.com -- * http://www.tcltk.com/itcl -- * -- * RCS: $Id: itcl_obsolete.c,v 1.1 1998/07/27 18:41:48 stanton Exp $ -- * ======================================================================== -- * Copyright (c) 1993-1998 Lucent Technologies, Inc. -- * ------------------------------------------------------------------------ -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- */ --#include "itclInt.h" -- --/* -- * FORWARD DECLARATIONS -- */ --static int ItclOldClassCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); -- --static int ItclOldMethodCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldPublicCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldProtectedCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldCommonCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); -- --static int ItclOldBiDeleteCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiVirtualCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiPreviousCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); -- --static int ItclOldBiInfoMethodsCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiInfoProcsCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiInfoPublicsCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiInfoProtectedsCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); --static int ItclOldBiInfoCommonsCmd _ANSI_ARGS_((ClientData cdata, -- Tcl_Interp *interp, int objc, Tcl_Obj* CONST objv[])); -- -- --/* -- * Standard list of built-in methods for old-style objects. -- */ --typedef struct BiMethod { -- char* name; /* method name */ -- char* usage; /* string describing usage */ -- char* registration; /* registration name for C proc */ -- Tcl_ObjCmdProc *proc; /* implementation C proc */ --} BiMethod; -- --static BiMethod BiMethodList[] = { -- { "cget", "-option", -- "@itcl-oldstyle-cget", Itcl_BiCgetCmd }, -- { "configure", "?-option? ?value -option value...?", -- "@itcl-oldstyle-configure", Itcl_BiConfigureCmd }, -- { "delete", "", -- "@itcl-oldstyle-delete", ItclOldBiDeleteCmd }, -- { "isa", "className", -- "@itcl-oldstyle-isa", Itcl_BiIsaCmd }, --}; --static int BiMethodListLen = sizeof(BiMethodList)/sizeof(BiMethod); -- -- --/* -- * ------------------------------------------------------------------------ -- * Itcl_OldInit() -- * -- * Invoked by Itcl_Init() whenever a new interpeter is created to add -- * [incr Tcl] facilities. Adds the commands needed for backward -- * compatibility with previous releases of [incr Tcl]. -- * ------------------------------------------------------------------------ -- */ --int --Itcl_OldInit(interp,info) -- Tcl_Interp *interp; /* interpreter to be updated */ -- ItclObjectInfo *info; /* info regarding all known objects */ --{ -- int i; -- Tcl_Namespace *parserNs, *oldBiNs; -- -- /* -- * Declare all of the old-style built-in methods as C procedures. -- */ -- for (i=0; i < BiMethodListLen; i++) { -- if (Itcl_RegisterObjC(interp, -- BiMethodList[i].registration+1, BiMethodList[i].proc, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) != TCL_OK) { -- -- return TCL_ERROR; -- } -- } -- -- /* -- * Create the "itcl::old-parser" namespace for backward -- * compatibility, to handle the old-style class definitions. -- */ -- parserNs = Tcl_CreateNamespace(interp, "::itcl::old-parser", -- (ClientData)info, Itcl_ReleaseData); -- -- if (!parserNs) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- " (cannot initialize itcl old-style parser)", -- (char*)NULL); -- return TCL_ERROR; -- } -- Itcl_PreserveData((ClientData)info); -- -- /* -- * Add commands for parsing old-style class definitions. -- */ -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::inherit", -- Itcl_ClassInheritCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::constructor", -- Itcl_ClassConstructorCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::destructor", -- Itcl_ClassDestructorCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::method", -- ItclOldMethodCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::proc", -- Itcl_ClassProcCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::public", -- ItclOldPublicCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::protected", -- ItclOldProtectedCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-parser::common", -- ItclOldCommonCmd, (ClientData)info, (Tcl_CmdDeleteProc*)NULL); -- -- /* -- * Set the runtime variable resolver for the parser namespace, -- * to control access to "common" data members while parsing -- * the class definition. -- */ -- Tcl_SetNamespaceResolvers(parserNs, (Tcl_ResolveCmdProc*)NULL, -- Itcl_ParseVarResolver, (Tcl_ResolveCompiledVarProc*)NULL); -- -- /* -- * Create the "itcl::old-builtin" namespace for backward -- * compatibility with the old-style built-in commands. -- */ -- Tcl_CreateObjCommand(interp, "::itcl::old-builtin::virtual", -- ItclOldBiVirtualCmd, (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL); -- -- Tcl_CreateObjCommand(interp, "::itcl::old-builtin::previous", -- ItclOldBiPreviousCmd, (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL); -- -- if (Itcl_CreateEnsemble(interp, "::itcl::old-builtin::info") != TCL_OK) { -- return TCL_ERROR; -- } -- -- if (Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "class", "", Itcl_BiInfoClassCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "inherit", "", Itcl_BiInfoInheritCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "heritage", "", Itcl_BiInfoHeritageCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "method", "?methodName? ?-args? ?-body?", -- ItclOldBiInfoMethodsCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "proc", "?procName? ?-args? ?-body?", -- ItclOldBiInfoProcsCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "public", "?varName? ?-init? ?-value? ?-config?", -- ItclOldBiInfoPublicsCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "protected", "?varName? ?-init? ?-value?", -- ItclOldBiInfoProtectedsCmd, -- (ClientData)NULL,(Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "common", "?varName? ?-init? ?-value?", -- ItclOldBiInfoCommonsCmd, -- (ClientData)NULL,(Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "args", "procname", Itcl_BiInfoArgsCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK || -- -- Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "body", "procname", Itcl_BiInfoBodyCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK -- ) { -- return TCL_ERROR; -- } -- -- /* -- * Plug in an "@error" handler to handle other options from -- * the usual info command. -- */ -- if (Itcl_AddEnsemblePart(interp, "::itcl::old-builtin::info", -- "@error", (char*)NULL, Itcl_DefaultInfoCmd, -- (ClientData)NULL, (Tcl_CmdDeleteProc*)NULL) -- != TCL_OK -- ) { -- return TCL_ERROR; -- } -- -- oldBiNs = Tcl_FindNamespace(interp, "::itcl::old-builtin", -- (Tcl_Namespace*)NULL, TCL_LEAVE_ERR_MSG); -- -- if (!oldBiNs || -- Tcl_Export(interp, oldBiNs, "*", /* resetListFirst */ 1) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Install the "itcl_class" and "itcl_info" commands into -- * the global scope. This supports the old syntax for -- * backward compatibility. -- */ -- Tcl_CreateObjCommand(interp, "::itcl_class", ItclOldClassCmd, -- (ClientData)info, Itcl_ReleaseData); -- Itcl_PreserveData((ClientData)info); -- -- -- if (Itcl_CreateEnsemble(interp, "::itcl_info") != TCL_OK) { -- return TCL_ERROR; -- } -- -- if (Itcl_AddEnsemblePart(interp, "::itcl_info", -- "classes", "?pattern?", -- Itcl_FindClassesCmd, (ClientData)info, Itcl_ReleaseData) -- != TCL_OK) { -- return TCL_ERROR; -- } -- Itcl_PreserveData((ClientData)info); -- -- if (Itcl_AddEnsemblePart(interp, "::itcl_info", -- "objects", "?-class className? ?-isa className? ?pattern?", -- Itcl_FindObjectsCmd, (ClientData)info, Itcl_ReleaseData) -- != TCL_OK) { -- return TCL_ERROR; -- } -- Itcl_PreserveData((ClientData)info); -- -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * Itcl_InstallOldBiMethods() -- * -- * Invoked when a class is first created, just after the class -- * definition has been parsed, to add definitions for built-in -- * methods to the class. If a method already exists in the class -- * with the same name as the built-in, then the built-in is skipped. -- * Otherwise, a method definition for the built-in method is added. -- * -- * Returns TCL_OK if successful, or TCL_ERROR (along with an error -- * message in the interpreter) if anything goes wrong. -- * ------------------------------------------------------------------------ -- */ --int --Itcl_InstallOldBiMethods(interp, cdefn) -- Tcl_Interp *interp; /* current interpreter */ -- ItclClass *cdefn; /* class definition to be updated */ --{ -- int result = TCL_OK; -- -- int i; -- ItclHierIter hier; -- ItclClass *cdPtr; -- Tcl_HashEntry *entry; -- -- /* -- * Scan through all of the built-in methods and see if -- * that method already exists in the class. If not, add -- * it in. -- * -- * TRICKY NOTE: The virtual tables haven't been built yet, -- * so look for existing methods the hard way--by scanning -- * through all classes. -- */ -- for (i=0; i < BiMethodListLen; i++) { -- Itcl_InitHierIter(&hier, cdefn); -- cdPtr = Itcl_AdvanceHierIter(&hier); -- -- entry = NULL; -- while (cdPtr) { -- entry = Tcl_FindHashEntry(&cdPtr->functions, BiMethodList[i].name); -- if (entry) { -- break; -- } -- cdPtr = Itcl_AdvanceHierIter(&hier); -- } -- Itcl_DeleteHierIter(&hier); -- -- if (!entry) { -- result = Itcl_CreateMethod(interp, cdefn, BiMethodList[i].name, -- BiMethodList[i].usage, BiMethodList[i].registration); -- -- if (result != TCL_OK) { -- break; -- } -- } -- } -- return result; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldClassCmd() -- * -- * Invoked by Tcl whenever the user issues a "itcl_class" command to -- * specify a class definition. Handles the following syntax: -- * -- * itcl_class { -- * inherit ... -- * -- * constructor {} { } -- * destructor { } -- * -- * method {} { } -- * proc {} { } -- * -- * public ?? ?? -- * protected ?? -- * common ?? -- * } -- * -- * NOTE: This command is will only be provided for a limited time, -- * to support backward compatibility with the old-style -- * [incr Tcl] syntax. Users should convert their scripts -- * to use the newer syntax (Itcl_ClassCmd()) as soon as possible. -- * -- * ------------------------------------------------------------------------ -- */ --static int --ItclOldClassCmd(clientData, interp, objc, objv) -- ClientData clientData; /* info for all known objects */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclObjectInfo* info = (ItclObjectInfo*)clientData; -- -- int result; -- char *className; -- Tcl_Namespace *parserNs; -- ItclClass *cdefnPtr; -- Tcl_HashEntry* entry; -- ItclMemberFunc *mfunc; -- Tcl_CallFrame frame; -- -- if (objc != 3) { -- Tcl_WrongNumArgs(interp, 1, objv, "name { definition }"); -- return TCL_ERROR; -- } -- className = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- -- /* -- * Find the namespace to use as a parser for the class definition. -- * If for some reason it is destroyed, bail out here. -- */ -- parserNs = Tcl_FindNamespace(interp, "::itcl::old-parser", -- (Tcl_Namespace*)NULL, TCL_LEAVE_ERR_MSG); -- -- if (parserNs == NULL) { -- char msg[256]; -- sprintf(msg, "\n (while parsing class definition for \"%.100s\")", -- className); -- Tcl_AddErrorInfo(interp, msg); -- return TCL_ERROR; -- } -- -- /* -- * Try to create the specified class and its namespace. -- */ -- if (Itcl_CreateClass(interp, className, info, &cdefnPtr) != TCL_OK) { -- return TCL_ERROR; -- } -- cdefnPtr->flags |= ITCL_OLD_STYLE; -- -- /* -- * Import the built-in commands from the itcl::old-builtin -- * and itcl::builtin namespaces. Do this before parsing the -- * class definition, so methods/procs can override the built-in -- * commands. -- */ -- result = Tcl_Import(interp, cdefnPtr->namesp, "::itcl::builtin::*", -- /* allowOverwrite */ 1); -- -- if (result == TCL_OK) { -- result = Tcl_Import(interp, cdefnPtr->namesp, "::itcl::old-builtin::*", -- /* allowOverwrite */ 1); -- } -- -- if (result != TCL_OK) { -- char msg[256]; -- sprintf(msg, "\n (while installing built-in commands for class \"%.100s\")", className); -- Tcl_AddErrorInfo(interp, msg); -- -- Tcl_DeleteNamespace(cdefnPtr->namesp); -- return TCL_ERROR; -- } -- -- /* -- * Push this class onto the class definition stack so that it -- * becomes the current context for all commands in the parser. -- * Activate the parser and evaluate the class definition. -- */ -- Itcl_PushStack((ClientData)cdefnPtr, &info->cdefnStack); -- -- result = Tcl_PushCallFrame(interp, &frame, parserNs, -- /* isProcCallFrame */ 0); -- -- if (result == TCL_OK) { -- result = Tcl_EvalObj(interp, objv[2]); -- Tcl_PopCallFrame(interp); -- } -- Itcl_PopStack(&info->cdefnStack); -- -- if (result != TCL_OK) { -- char msg[256]; -- sprintf(msg, "\n (class \"%.200s\" body line %d)", -- className, interp->errorLine); -- Tcl_AddErrorInfo(interp, msg); -- -- Tcl_DeleteNamespace(cdefnPtr->namesp); -- return TCL_ERROR; -- } -- -- /* -- * At this point, parsing of the class definition has succeeded. -- * Add built-in methods such as "configure" and "cget"--as long -- * as they don't conflict with those defined in the class. -- */ -- if (Itcl_InstallOldBiMethods(interp, cdefnPtr) != TCL_OK) { -- Tcl_DeleteNamespace(cdefnPtr->namesp); -- return TCL_ERROR; -- } -- -- /* -- * See if this class has a "constructor", and if it does, mark -- * it as "old-style". This will allow the "config" argument -- * to work. -- */ -- entry = Tcl_FindHashEntry(&cdefnPtr->functions, "constructor"); -- if (entry) { -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- mfunc->member->flags |= ITCL_OLD_STYLE; -- } -- -- /* -- * Build the virtual tables for this class. -- */ -- Itcl_BuildVirtualTables(cdefnPtr); -- -- Tcl_ResetResult(interp); -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldMethodCmd() -- * -- * Invoked by Tcl during the parsing of a class definition whenever -- * the "method" command is invoked to define an object method. -- * Handles the following syntax: -- * -- * method {} {} -- * -- * ------------------------------------------------------------------------ -- */ --static int --ItclOldMethodCmd(clientData, interp, objc, objv) -- ClientData clientData; /* info for all known objects */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclObjectInfo *info = (ItclObjectInfo*)clientData; -- ItclClass *cdefn = (ItclClass*)Itcl_PeekStack(&info->cdefnStack); -- -- char *name, *arglist, *body; -- Tcl_HashEntry *entry; -- ItclMemberFunc *mfunc; -- -- if (objc != 4) { -- Tcl_WrongNumArgs(interp, 1, objv, "name args body"); -- return TCL_ERROR; -- } -- -- name = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- if (Tcl_FindHashEntry(&cdefn->functions, name)) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "\"", name, "\" already defined in class \"", cdefn->name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- arglist = Tcl_GetStringFromObj(objv[2], (int*)NULL); -- body = Tcl_GetStringFromObj(objv[3], (int*)NULL); -- -- if (Itcl_CreateMethod(interp, cdefn, name, arglist, body) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Find the method that was just created and mark it as an -- * "old-style" method, so that the magic "config" argument -- * will be allowed to work. This is done for backward- -- * compatibility with earlier releases. In the latest version, -- * use of the "config" argument is discouraged. -- */ -- entry = Tcl_FindHashEntry(&cdefn->functions, name); -- if (entry) { -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- mfunc->member->flags |= ITCL_OLD_STYLE; -- } -- -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldPublicCmd() -- * -- * Invoked by Tcl during the parsing of a class definition whenever -- * the "public" command is invoked to define a public variable. -- * Handles the following syntax: -- * -- * public ?? ?? -- * -- * ------------------------------------------------------------------------ -- */ --static int --ItclOldPublicCmd(clientData, interp, objc, objv) -- ClientData clientData; /* info for all known objects */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclObjectInfo *info = (ItclObjectInfo*)clientData; -- ItclClass *cdefnPtr = (ItclClass*)Itcl_PeekStack(&info->cdefnStack); -- -- char *name, *init, *config; -- ItclVarDefn *vdefn; -- -- if ((objc < 2) || (objc > 4)) { -- Tcl_WrongNumArgs(interp, 1, objv, "varname ?init? ?config?"); -- return TCL_ERROR; -- } -- -- /* -- * Make sure that the variable name does not contain anything -- * goofy like a "::" scope qualifier. -- */ -- name = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- if (strstr(name, "::")) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad variable name \"", name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- init = NULL; -- config = NULL; -- if (objc >= 3) { -- init = Tcl_GetStringFromObj(objv[2], (int*)NULL); -- } -- if (objc >= 4) { -- config = Tcl_GetStringFromObj(objv[3], (int*)NULL); -- } -- -- if (Itcl_CreateVarDefn(interp, cdefnPtr, name, init, config, -- &vdefn) != TCL_OK) { -- -- return TCL_ERROR; -- } -- -- vdefn->member->protection = ITCL_PUBLIC; -- -- return TCL_OK; --} -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldProtectedCmd() -- * -- * Invoked by Tcl during the parsing of a class definition whenever -- * the "protected" command is invoked to define a protected variable. -- * Handles the following syntax: -- * -- * protected ?? -- * -- * ------------------------------------------------------------------------ -- */ --static int --ItclOldProtectedCmd(clientData, interp, objc, objv) -- ClientData clientData; /* info for all known objects */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclObjectInfo *info = (ItclObjectInfo*)clientData; -- ItclClass *cdefnPtr = (ItclClass*)Itcl_PeekStack(&info->cdefnStack); -- -- char *name, *init; -- ItclVarDefn *vdefn; -- -- if ((objc < 2) || (objc > 3)) { -- Tcl_WrongNumArgs(interp, 1, objv, "varname ?init?"); -- return TCL_ERROR; -- } -- -- /* -- * Make sure that the variable name does not contain anything -- * goofy like a "::" scope qualifier. -- */ -- name = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- if (strstr(name, "::")) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad variable name \"", name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- if (objc == 3) { -- init = Tcl_GetStringFromObj(objv[2], (int*)NULL); -- } else { -- init = NULL; -- } -- -- if (Itcl_CreateVarDefn(interp, cdefnPtr, name, init, (char*)NULL, -- &vdefn) != TCL_OK) { -- -- return TCL_ERROR; -- } -- -- vdefn->member->protection = ITCL_PROTECTED; -- -- return TCL_OK; --} -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldCommonCmd() -- * -- * Invoked by Tcl during the parsing of a class definition whenever -- * the "common" command is invoked to define a variable that is -- * common to all objects in the class. Handles the following syntax: -- * -- * common ?? -- * -- * ------------------------------------------------------------------------ -- */ --static int --ItclOldCommonCmd(clientData, interp, objc, objv) -- ClientData clientData; /* info for all known objects */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclObjectInfo *info = (ItclObjectInfo*)clientData; -- ItclClass *cdefnPtr = (ItclClass*)Itcl_PeekStack(&info->cdefnStack); -- -- int newEntry; -- char *name, *init; -- ItclVarDefn *vdefn; -- Tcl_HashEntry *entry; -- Namespace *nsPtr; -- Var *varPtr; -- -- if ((objc < 2) || (objc > 3)) { -- Tcl_WrongNumArgs(interp, 1, objv, "varname ?init?"); -- return TCL_ERROR; -- } -- -- /* -- * Make sure that the variable name does not contain anything -- * goofy like a "::" scope qualifier. -- */ -- name = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- if (strstr(name, "::")) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad variable name \"", name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- if (objc == 3) { -- init = Tcl_GetStringFromObj(objv[2], (int*)NULL); -- } else { -- init = NULL; -- } -- -- if (Itcl_CreateVarDefn(interp, cdefnPtr, name, init, (char*)NULL, -- &vdefn) != TCL_OK) { -- -- return TCL_ERROR; -- } -- -- vdefn->member->protection = ITCL_PROTECTED; -- vdefn->member->flags |= ITCL_COMMON; -- -- /* -- * Create the variable in the namespace associated with the -- * class. Do this the hard way, to avoid the variable resolver -- * procedures. These procedures won't work until we rebuild -- * the virtual tables below. -- */ -- nsPtr = (Namespace*)cdefnPtr->namesp; -- entry = Tcl_CreateHashEntry(&nsPtr->varTable, -- vdefn->member->name, &newEntry); -- -- varPtr = _TclNewVar(); -- varPtr->hPtr = entry; -- varPtr->nsPtr = nsPtr; -- varPtr->refCount++; /* protect from being deleted */ -- -- Tcl_SetHashValue(entry, varPtr); -- -- /* -- * TRICKY NOTE: Make sure to rebuild the virtual tables for this -- * class so that this variable is ready to access. The variable -- * resolver for the parser namespace needs this info to find the -- * variable if the developer tries to set it within the class -- * definition. -- * -- * If an initialization value was specified, then initialize -- * the variable now. -- */ -- Itcl_BuildVirtualTables(cdefnPtr); -- -- if (init) { -- init = Tcl_SetVar(interp, vdefn->member->name, init, -- TCL_NAMESPACE_ONLY); -- -- if (!init) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "cannot initialize common variable \"", -- vdefn->member->name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldDeleteCmd() -- * -- * Invokes the destructors, and deletes the object that invoked this -- * operation. If an error is encountered during destruction, the -- * delete operation is aborted. Handles the following syntax: -- * -- * delete -- * -- * When an object is successfully deleted, it is removed from the -- * list of known objects, and its access command is deleted. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiDeleteCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- ItclClass *contextClass; -- ItclObject *contextObj; -- -- if (objc != 1) { -- Tcl_WrongNumArgs(interp, 1, objv, ""); -- return TCL_ERROR; -- } -- -- /* -- * If there is an object context, then destruct the object -- * and delete it. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- if (!contextObj) { -- Tcl_SetResult(interp, "improper usage: should be \"object delete\"", -- TCL_STATIC); -- return TCL_ERROR; -- } -- -- if (Itcl_DeleteObject(interp, contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- Tcl_ResetResult(interp); -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldVirtualCmd() -- * -- * Executes the remainder of its command line arguments in the -- * most-specific class scope for the current object. If there is -- * no object context, this fails. -- * -- * NOTE: All methods are now implicitly virtual, and there are -- * much better ways to manipulate scope. This command is only -- * provided for backward-compatibility, and should be avoided. -- * -- * Returns a status TCL_OK/TCL_ERROR to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiVirtualCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- int result; -- ItclClass *contextClass; -- ItclObject *contextObj; -- ItclContext context; -- -- if (objc == 1) { -- Tcl_WrongNumArgs(interp, 1, objv, "command ?args...?"); -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "\n This command will be removed soon.", -- "\n Commands are now virtual by default.", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- /* -- * If there is no object context, then return an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- if (!contextObj) { -- Tcl_ResetResult(interp); -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "cannot use \"virtual\" without an object context\n", -- " This command will be removed soon.\n", -- " Commands are now virtual by default.", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- /* -- * Install the most-specific namespace for this object, with -- * the object context as clientData. Invoke the rest of the -- * args as a command in that namespace. -- */ -- if (Itcl_PushContext(interp, (ItclMember*)NULL, contextObj->classDefn, -- contextObj, &context) != TCL_OK) { -- -- return TCL_ERROR; -- } -- -- result = Itcl_EvalArgs(interp, objc-1, objv+1); -- Itcl_PopContext(interp, &context); -- -- return result; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldPreviousCmd() -- * -- * Executes the remainder of its command line arguments in the -- * previous class scope (i.e., the next scope up in the heritage -- * list). -- * -- * NOTE: There are much better ways to manipulate scope. This -- * command is only provided for backward-compatibility, and should -- * be avoided. -- * -- * Returns a status TCL_OK/TCL_ERROR to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiPreviousCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- int result; -- char *name; -- ItclClass *contextClass, *base; -- ItclObject *contextObj; -- ItclMember *member; -- ItclMemberFunc *mfunc; -- Itcl_ListElem *elem; -- Tcl_HashEntry *entry; -- -- if (objc < 2) { -- Tcl_WrongNumArgs(interp, 1, objv, "command ?args...?"); -- return TCL_ERROR; -- } -- -- /* -- * If the current context is not a class namespace, -- * return an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Get the heritage information for this class and move one -- * level up in the hierarchy. If there is no base class, -- * return an error. -- */ -- elem = Itcl_FirstListElem(&contextClass->bases); -- if (!elem) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "no previous class in inheritance hierarchy for \"", -- contextClass->name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- base = (ItclClass*)Itcl_GetListValue(elem); -- -- /* -- * Look in the command resolution table for the base class -- * to find the desired method. -- */ -- name = Tcl_GetStringFromObj(objv[1], (int*)NULL); -- entry = Tcl_FindHashEntry(&base->resolveCmds, name); -- if (!entry) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "invalid command name \"", base->name, "::", name, "\"", -- (char*)NULL); -- return TCL_ERROR; -- } -- -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- member = mfunc->member; -- -- /* -- * Make sure that this method is accessible. -- */ -- if (mfunc->member->protection != ITCL_PUBLIC) { -- Tcl_Namespace *contextNs = Itcl_GetTrueNamespace(interp, -- member->classDefn->info); -- -- if (!Itcl_CanAccessFunc(mfunc, contextNs)) { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "can't access \"", member->fullname, "\": ", -- Itcl_ProtectionStr(member->protection), " function", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Invoke the desired method by calling Itcl_EvalMemberCode. -- * directly. This bypasses the virtual behavior built into -- * the usual Itcl_ExecMethod handler. -- */ -- result = Itcl_EvalMemberCode(interp, mfunc, member, contextObj, -- objc-1, objv+1); -- -- result = Itcl_ReportFuncErrors(interp, mfunc, contextObj, result); -- -- return result; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldBiInfoMethodsCmd() -- * -- * Returns information regarding methods for an object. This command -- * can be invoked with or without an object context: -- * -- * info... <= returns info for most-specific class -- * info... <= returns info for active namespace -- * -- * Handles the following syntax: -- * -- * info method ?methodName? ?-args? ?-body? -- * -- * If the ?methodName? is not specified, then a list of all known -- * methods is returned. Otherwise, the information (args/body) for -- * a specific method is returned. Returns a status TCL_OK/TCL_ERROR -- * to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiInfoMethodsCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- char *methodName = NULL; -- int methodArgs = 0; -- int methodBody = 0; -- -- char *token; -- ItclClass *contextClass, *cdefn; -- ItclObject *contextObj; -- ItclHierIter hier; -- Tcl_HashSearch place; -- Tcl_HashEntry *entry; -- ItclMemberFunc *mfunc; -- ItclMemberCode *mcode; -- Tcl_Obj *objPtr, *listPtr; -- -- /* -- * If this command is not invoked within a class namespace, -- * signal an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * If there is an object context, then use the most-specific -- * class for the object. Otherwise, use the current class -- * namespace. -- */ -- if (contextObj) { -- contextClass = contextObj->classDefn; -- } -- -- /* -- * Process args: ?methodName? ?-args? ?-body? -- */ -- objv++; /* skip over command name */ -- objc--; -- -- if (objc > 0) { -- methodName = Tcl_GetStringFromObj(*objv, (int*)NULL); -- objc--; objv++; -- } -- for ( ; objc > 0; objc--, objv++) { -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -- if (strcmp(token, "-args") == 0) -- methodArgs = ~0; -- else if (strcmp(token, "-body") == 0) -- methodBody = ~0; -- else { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad option \"", token, "\": should be -args or -body", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Return info for a specific method. -- */ -- if (methodName) { -- entry = Tcl_FindHashEntry(&contextClass->resolveCmds, methodName); -- if (entry) { -- int i, valc = 0; -- Tcl_Obj *valv[5]; -- -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- if ((mfunc->member->flags & ITCL_COMMON) != 0) { -- return TCL_OK; -- } -- -- /* -- * If the implementation has not yet been defined, -- * autoload it now. -- */ -- if (Itcl_GetMemberCode(interp, mfunc->member) != TCL_OK) { -- return TCL_ERROR; -- } -- mcode = mfunc->member->code; -- -- if (!methodArgs && !methodBody) { -- objPtr = Tcl_NewStringObj(mfunc->member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, mfunc->member->name, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- methodArgs = methodBody = ~0; -- } -- if (methodArgs) { -- if (mcode->arglist) { -- objPtr = Itcl_ArgList(mcode->argcount, mcode->arglist); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- else { -- objPtr = Tcl_NewStringObj("", -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- } -- if (methodBody) { -- objPtr = mcode->procPtr->bodyPtr; -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- /* -- * If the result list has a single element, then -- * return it using Tcl_SetResult() so that it will -- * look like a string and not a list with one element. -- */ -- if (valc == 1) { -- objPtr = valv[0]; -- } else { -- objPtr = Tcl_NewListObj(valc, valv); -- } -- Tcl_SetObjResult(interp, objPtr); -- -- for (i=0; i < valc; i++) { -- Tcl_DecrRefCount(valv[i]); -- } -- } -- } -- -- /* -- * Return the list of available methods. -- */ -- else { -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); -- -- Itcl_InitHierIter(&hier, contextClass); -- while ((cdefn=Itcl_AdvanceHierIter(&hier)) != NULL) { -- entry = Tcl_FirstHashEntry(&cdefn->functions, &place); -- while (entry) { -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- -- if ((mfunc->member->flags & ITCL_COMMON) == 0) { -- objPtr = Tcl_NewStringObj(mfunc->member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, mfunc->member->name, -1); -- -- Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- objPtr); -- } -- entry = Tcl_NextHashEntry(&place); -- } -- } -- Itcl_DeleteHierIter(&hier); -- -- Tcl_SetObjResult(interp, listPtr); -- } -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldBiInfoProcsCmd() -- * -- * Returns information regarding procs for a class. This command -- * can be invoked with or without an object context: -- * -- * info... <= returns info for most-specific class -- * info... <= returns info for active namespace -- * -- * Handles the following syntax: -- * -- * info proc ?procName? ?-args? ?-body? -- * -- * If the ?procName? is not specified, then a list of all known -- * procs is returned. Otherwise, the information (args/body) for -- * a specific proc is returned. Returns a status TCL_OK/TCL_ERROR -- * to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiInfoProcsCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- char *procName = NULL; -- int procArgs = 0; -- int procBody = 0; -- -- char *token; -- ItclClass *contextClass, *cdefn; -- ItclObject *contextObj; -- ItclHierIter hier; -- Tcl_HashSearch place; -- Tcl_HashEntry *entry; -- ItclMemberFunc *mfunc; -- ItclMemberCode *mcode; -- Tcl_Obj *objPtr, *listPtr; -- -- /* -- * If this command is not invoked within a class namespace, -- * signal an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * If there is an object context, then use the most-specific -- * class for the object. Otherwise, use the current class -- * namespace. -- */ -- if (contextObj) { -- contextClass = contextObj->classDefn; -- } -- -- /* -- * Process args: ?procName? ?-args? ?-body? -- */ -- objv++; /* skip over command name */ -- objc--; -- -- if (objc > 0) { -- procName = Tcl_GetStringFromObj(*objv, (int*)NULL); -- objc--; objv++; -- } -- for ( ; objc > 0; objc--, objv++) { -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -- if (strcmp(token, "-args") == 0) -- procArgs = ~0; -- else if (strcmp(token, "-body") == 0) -- procBody = ~0; -- else { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad option \"", token, "\": should be -args or -body", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Return info for a specific proc. -- */ -- if (procName) { -- entry = Tcl_FindHashEntry(&contextClass->resolveCmds, procName); -- if (entry) { -- int i, valc = 0; -- Tcl_Obj *valv[5]; -- -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- if ((mfunc->member->flags & ITCL_COMMON) == 0) { -- return TCL_OK; -- } -- -- /* -- * If the implementation has not yet been defined, -- * autoload it now. -- */ -- if (Itcl_GetMemberCode(interp, mfunc->member) != TCL_OK) { -- return TCL_ERROR; -- } -- mcode = mfunc->member->code; -- -- if (!procArgs && !procBody) { -- objPtr = Tcl_NewStringObj(mfunc->member->fullname, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- procArgs = procBody = ~0; -- } -- if (procArgs) { -- if (mcode->arglist) { -- objPtr = Itcl_ArgList(mcode->argcount, mcode->arglist); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- else { -- objPtr = Tcl_NewStringObj("", -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- } -- if (procBody) { -- objPtr = mcode->procPtr->bodyPtr; -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- /* -- * If the result list has a single element, then -- * return it using Tcl_SetResult() so that it will -- * look like a string and not a list with one element. -- */ -- if (valc == 1) { -- objPtr = valv[0]; -- } else { -- objPtr = Tcl_NewListObj(valc, valv); -- } -- Tcl_SetObjResult(interp, objPtr); -- -- for (i=0; i < valc; i++) { -- Tcl_DecrRefCount(valv[i]); -- } -- } -- } -- -- /* -- * Return the list of available procs. -- */ -- else { -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); -- -- Itcl_InitHierIter(&hier, contextClass); -- while ((cdefn=Itcl_AdvanceHierIter(&hier)) != NULL) { -- entry = Tcl_FirstHashEntry(&cdefn->functions, &place); -- while (entry) { -- mfunc = (ItclMemberFunc*)Tcl_GetHashValue(entry); -- -- if ((mfunc->member->flags & ITCL_COMMON) != 0) { -- objPtr = Tcl_NewStringObj(mfunc->member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, mfunc->member->name, -1); -- -- Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- objPtr); -- } -- entry = Tcl_NextHashEntry(&place); -- } -- } -- Itcl_DeleteHierIter(&hier); -- -- Tcl_SetObjResult(interp, listPtr); -- } -- return TCL_OK; --} -- -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldBiInfoPublicsCmd() -- * -- * Sets the interpreter result to contain information for public -- * variables in the class. Handles the following syntax: -- * -- * info public ?varName? ?-init? ?-value? ?-config? -- * -- * If the ?varName? is not specified, then a list of all known public -- * variables is returned. Otherwise, the information (init/value/config) -- * for a specific variable is returned. Returns a status -- * TCL_OK/TCL_ERROR to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiInfoPublicsCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- char *varName = NULL; -- int varInit = 0; -- int varCheck = 0; -- int varValue = 0; -- -- char *token, *val; -- ItclClass *contextClass; -- ItclObject *contextObj; -- -- ItclClass *cdPtr; -- ItclVarLookup *vlookup; -- ItclVarDefn *vdefn; -- ItclMember *member; -- ItclHierIter hier; -- Tcl_HashEntry *entry; -- Tcl_HashSearch place; -- Tcl_Obj *objPtr, *listPtr; -- -- /* -- * If this command is not invoked within a class namespace, -- * signal an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Process args: ?varName? ?-init? ?-value? ?-config? -- */ -- objv++; /* skip over command name */ -- objc--; -- -- if (objc > 0) { -- varName = Tcl_GetStringFromObj(*objv, (int*)NULL); -- objc--; objv++; -- } -- for ( ; objc > 0; objc--, objv++) { -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -- if (strcmp(token, "-init") == 0) -- varInit = ~0; -- else if (strcmp(token, "-value") == 0) -- varValue = ~0; -- else if (strcmp(token, "-config") == 0) -- varCheck = ~0; -- else { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad option \"", token, -- "\": should be -init, -value or -config", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Return info for a specific variable. -- */ -- if (varName) { -- vlookup = NULL; -- entry = Tcl_FindHashEntry(&contextClass->resolveVars, varName); -- if (entry) { -- vlookup = (ItclVarLookup*)Tcl_GetHashValue(entry); -- if (vlookup->vdefn->member->protection != ITCL_PUBLIC) { -- vlookup = NULL; -- } -- } -- -- if (vlookup) { -- int i, valc = 0; -- Tcl_Obj *valv[5]; -- -- member = vlookup->vdefn->member; -- -- if (!varInit && !varCheck && !varValue) { -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- varInit = varCheck = varValue = ~0; -- } -- if (varInit) { -- val = (vlookup->vdefn->init) ? vlookup->vdefn->init : ""; -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- if (varValue) { -- val = Itcl_GetInstanceVar(interp, member->fullname, -- contextObj, contextObj->classDefn); -- -- if (!val) { -- val = ""; -- } -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- if (varCheck) { -- if (member->code && member->code->procPtr->bodyPtr) { -- objPtr = member->code->procPtr->bodyPtr; -- } else { -- objPtr = Tcl_NewStringObj("", -1); -- } -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- /* -- * If the result list has a single element, then -- * return it using Tcl_SetResult() so that it will -- * look like a string and not a list with one element. -- */ -- if (valc == 1) { -- objPtr = valv[0]; -- } else { -- objPtr = Tcl_NewListObj(valc, valv); -- } -- Tcl_SetObjResult(interp, objPtr); -- -- for (i=0; i < valc; i++) { -- Tcl_DecrRefCount(valv[i]); -- } -- } -- } -- -- /* -- * Return the list of public variables. -- */ -- else { -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); -- -- Itcl_InitHierIter(&hier, contextClass); -- cdPtr = Itcl_AdvanceHierIter(&hier); -- while (cdPtr != NULL) { -- entry = Tcl_FirstHashEntry(&cdPtr->variables, &place); -- while (entry) { -- vdefn = (ItclVarDefn*)Tcl_GetHashValue(entry); -- member = vdefn->member; -- -- if ((member->flags & ITCL_COMMON) == 0 && -- member->protection == ITCL_PUBLIC) { -- -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- -- Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- objPtr); -- } -- entry = Tcl_NextHashEntry(&place); -- } -- cdPtr = Itcl_AdvanceHierIter(&hier); -- } -- Itcl_DeleteHierIter(&hier); -- -- Tcl_SetObjResult(interp, listPtr); -- } -- return TCL_OK; --} -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldBiInfoProtectedsCmd() -- * -- * Sets the interpreter result to contain information for protected -- * variables in the class. Handles the following syntax: -- * -- * info protected ?varName? ?-init? ?-value? -- * -- * If the ?varName? is not specified, then a list of all known public -- * variables is returned. Otherwise, the information (init/value) -- * for a specific variable is returned. Returns a status -- * TCL_OK/TCL_ERROR to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiInfoProtectedsCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- char *varName = NULL; -- int varInit = 0; -- int varValue = 0; -- -- char *token, *val; -- ItclClass *contextClass; -- ItclObject *contextObj; -- -- ItclClass *cdPtr; -- ItclVarLookup *vlookup; -- ItclVarDefn *vdefn; -- ItclMember *member; -- ItclHierIter hier; -- Tcl_HashEntry *entry; -- Tcl_HashSearch place; -- Tcl_Obj *objPtr, *listPtr; -- -- /* -- * If this command is not invoked within a class namespace, -- * signal an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Process args: ?varName? ?-init? ?-value? -- */ -- objv++; /* skip over command name */ -- objc--; -- -- if (objc > 0) { -- varName = Tcl_GetStringFromObj(*objv, (int*)NULL); -- objc--; objv++; -- } -- for ( ; objc > 0; objc--, objv++) { -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -- if (strcmp(token, "-init") == 0) -- varInit = ~0; -- else if (strcmp(token, "-value") == 0) -- varValue = ~0; -- else { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad option \"", token, "\": should be -init or -value", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Return info for a specific variable. -- */ -- if (varName) { -- vlookup = NULL; -- entry = Tcl_FindHashEntry(&contextClass->resolveVars, varName); -- if (entry) { -- vlookup = (ItclVarLookup*)Tcl_GetHashValue(entry); -- if (vlookup->vdefn->member->protection != ITCL_PROTECTED) { -- vlookup = NULL; -- } -- } -- -- if (vlookup) { -- int i, valc = 0; -- Tcl_Obj *valv[5]; -- -- member = vlookup->vdefn->member; -- -- if (!varInit && !varValue) { -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- varInit = varValue = ~0; -- } -- -- /* -- * If this is the built-in "this" variable, then -- * report the object name as its initialization string. -- */ -- if (varInit) { -- if ((member->flags & ITCL_THIS_VAR) != 0) { -- if (contextObj && contextObj->accessCmd) { -- objPtr = Tcl_NewStringObj("", -1); -- Tcl_IncrRefCount(objPtr); -- Tcl_GetCommandFullName(contextObj->classDefn->interp, -- contextObj->accessCmd, objPtr); -- valv[valc++] = objPtr; -- } -- else { -- objPtr = Tcl_NewStringObj("", -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- } -- else { -- val = (vlookup->vdefn->init) ? vlookup->vdefn->init : ""; -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- } -- -- if (varValue) { -- val = Itcl_GetInstanceVar(interp, member->fullname, -- contextObj, contextObj->classDefn); -- -- if (!val) { -- val = ""; -- } -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- /* -- * If the result list has a single element, then -- * return it using Tcl_SetResult() so that it will -- * look like a string and not a list with one element. -- */ -- if (valc == 1) { -- objPtr = valv[0]; -- } else { -- objPtr = Tcl_NewListObj(valc, valv); -- } -- Tcl_SetObjResult(interp, objPtr); -- -- for (i=0; i < valc; i++) { -- Tcl_DecrRefCount(valv[i]); -- } -- } -- } -- -- /* -- * Return the list of public variables. -- */ -- else { -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); -- -- Itcl_InitHierIter(&hier, contextClass); -- cdPtr = Itcl_AdvanceHierIter(&hier); -- while (cdPtr != NULL) { -- entry = Tcl_FirstHashEntry(&cdPtr->variables, &place); -- while (entry) { -- vdefn = (ItclVarDefn*)Tcl_GetHashValue(entry); -- member = vdefn->member; -- -- if ((member->flags & ITCL_COMMON) == 0 && -- member->protection == ITCL_PROTECTED) { -- -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- -- Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- objPtr); -- } -- entry = Tcl_NextHashEntry(&place); -- } -- cdPtr = Itcl_AdvanceHierIter(&hier); -- } -- Itcl_DeleteHierIter(&hier); -- -- Tcl_SetObjResult(interp, listPtr); -- } -- return TCL_OK; --} -- --/* -- * ------------------------------------------------------------------------ -- * ItclOldBiInfoCommonsCmd() -- * -- * Sets the interpreter result to contain information for common -- * variables in the class. Handles the following syntax: -- * -- * info common ?varName? ?-init? ?-value? -- * -- * If the ?varName? is not specified, then a list of all known common -- * variables is returned. Otherwise, the information (init/value) -- * for a specific variable is returned. Returns a status -- * TCL_OK/TCL_ERROR to indicate success/failure. -- * ------------------------------------------------------------------------ -- */ --/* ARGSUSED */ --static int --ItclOldBiInfoCommonsCmd(dummy, interp, objc, objv) -- ClientData dummy; /* not used */ -- Tcl_Interp *interp; /* current interpreter */ -- int objc; /* number of arguments */ -- Tcl_Obj *CONST objv[]; /* argument objects */ --{ -- char *varName = NULL; -- int varInit = 0; -- int varValue = 0; -- -- char *token, *val; -- ItclClass *contextClass; -- ItclObject *contextObj; -- -- ItclClass *cdPtr; -- ItclVarDefn *vdefn; -- ItclVarLookup *vlookup; -- ItclMember *member; -- ItclHierIter hier; -- Tcl_HashEntry *entry; -- Tcl_HashSearch place; -- Tcl_Obj *objPtr, *listPtr; -- -- /* -- * If this command is not invoked within a class namespace, -- * signal an error. -- */ -- if (Itcl_GetContext(interp, &contextClass, &contextObj) != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Process args: ?varName? ?-init? ?-value? -- */ -- objv++; /* skip over command name */ -- objc--; -- -- if (objc > 0) { -- varName = Tcl_GetStringFromObj(*objv, (int*)NULL); -- objc--; objv++; -- } -- for ( ; objc > 0; objc--, objv++) { -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -- if (strcmp(token, "-init") == 0) -- varInit = ~0; -- else if (strcmp(token, "-value") == 0) -- varValue = ~0; -- else { -- Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -- "bad option \"", token, "\": should be -init or -value", -- (char*)NULL); -- return TCL_ERROR; -- } -- } -- -- /* -- * Return info for a specific variable. -- */ -- if (varName) { -- vlookup = NULL; -- entry = Tcl_FindHashEntry(&contextClass->resolveVars, varName); -- if (entry) { -- vlookup = (ItclVarLookup*)Tcl_GetHashValue(entry); -- if (vlookup->vdefn->member->protection != ITCL_PROTECTED) { -- vlookup = NULL; -- } -- } -- -- if (vlookup) { -- int i, valc = 0; -- Tcl_Obj *valv[5]; -- -- member = vlookup->vdefn->member; -- -- if (!varInit && !varValue) { -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- varInit = varValue = ~0; -- } -- if (varInit) { -- val = (vlookup->vdefn->init) ? vlookup->vdefn->init : ""; -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- if (varValue) { -- val = Itcl_GetCommonVar(interp, member->fullname, -- contextObj->classDefn); -- -- if (!val) { -- val = ""; -- } -- objPtr = Tcl_NewStringObj(val, -1); -- Tcl_IncrRefCount(objPtr); -- valv[valc++] = objPtr; -- } -- -- /* -- * If the result list has a single element, then -- * return it using Tcl_SetResult() so that it will -- * look like a string and not a list with one element. -- */ -- if (valc == 1) { -- objPtr = valv[0]; -- } else { -- objPtr = Tcl_NewListObj(valc, valv); -- } -- Tcl_SetObjResult(interp, objPtr); -- -- for (i=0; i < valc; i++) { -- Tcl_DecrRefCount(valv[i]); -- } -- } -- } -- -- /* -- * Return the list of public variables. -- */ -- else { -- listPtr = Tcl_NewListObj(0, (Tcl_Obj* CONST*)NULL); -- -- Itcl_InitHierIter(&hier, contextClass); -- cdPtr = Itcl_AdvanceHierIter(&hier); -- while (cdPtr != NULL) { -- entry = Tcl_FirstHashEntry(&cdPtr->variables, &place); -- while (entry) { -- vdefn = (ItclVarDefn*)Tcl_GetHashValue(entry); -- member = vdefn->member; -- -- if ((member->flags & ITCL_COMMON) && -- member->protection == ITCL_PROTECTED) { -- -- objPtr = Tcl_NewStringObj(member->classDefn->name, -1); -- Tcl_AppendToObj(objPtr, "::", -1); -- Tcl_AppendToObj(objPtr, member->name, -1); -- -- Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- objPtr); -- } -- entry = Tcl_NextHashEntry(&place); -- } -- cdPtr = Itcl_AdvanceHierIter(&hier); -- } -- Itcl_DeleteHierIter(&hier); -- -- Tcl_SetObjResult(interp, listPtr); -- } -- return TCL_OK; --} -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_parse.c insight-6.8.new/itcl/itcl/generic/itcl_parse.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_parse.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_parse.c 2008-08-18 18:56:39.000000000 +0200 -@@ -37,7 +37,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_parse.c,v 1.4 2000/01/03 15:56:48 csmith Exp $ -+ * RCS: $Id: itcl_parse.c,v 1.7 2004/11/15 20:14:07 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -364,7 +364,7 @@ - * parent namespace (currently active). If not, try - * to autoload its definition. - */ -- token = Tcl_GetStringFromObj(*objv, (int*)NULL); -+ token = Tcl_GetString(*objv); - baseCdefnPtr = Itcl_FindClass(interp, token, /* autoload */ 1); - if (!baseCdefnPtr) { - Tcl_Obj *resultPtr = Tcl_GetObjResult(interp); -@@ -643,13 +643,13 @@ - * If there is an object initialization statement, pick this - * out and take the last argument as the constructor body. - */ -- arglist = Tcl_GetStringFromObj(objv[1], (int*)NULL); -+ arglist = Tcl_GetString(objv[1]); - if (objc == 3) { -- body = Tcl_GetStringFromObj(objv[2], (int*)NULL); -+ body = Tcl_GetString(objv[2]); - } else { - cdefnPtr->initCode = objv[2]; - Tcl_IncrRefCount(cdefnPtr->initCode); -- body = Tcl_GetStringFromObj(objv[3], (int*)NULL); -+ body = Tcl_GetString(objv[3]); - } - - if (Itcl_CreateMethod(interp, cdefnPtr, name, arglist, body) != TCL_OK) { -@@ -960,10 +960,10 @@ - Itcl_BuildVirtualTables(cdefnPtr); - - if (init) { -- init = Tcl_SetVar(interp, vdefn->member->name, init, -+ CONST char *val = Tcl_SetVar(interp, vdefn->member->name, init, - TCL_NAMESPACE_ONLY); - -- if (!init) { -+ if (!val) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), - "cannot initialize common variable \"", - vdefn->member->name, "\"", -@@ -1013,7 +1013,7 @@ - int - Itcl_ParseVarResolver(interp, name, contextNs, flags, rPtr) - Tcl_Interp *interp; /* current interpreter */ -- char* name; /* name of the variable being accessed */ -+ CONST char* name; /* name of the variable being accessed */ - Tcl_Namespace *contextNs; /* namespace context */ - int flags; /* TCL_GLOBAL_ONLY => global variable - * TCL_NAMESPACE_ONLY => namespace variable */ -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclStubInit.c insight-6.8.new/itcl/itcl/generic/itclStubInit.c ---- insight-6.8.orig/itcl/itcl/generic/itclStubInit.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclStubInit.c 2008-08-18 18:56:39.000000000 +0200 -@@ -8,7 +8,7 @@ - * See the file "license.terms" for information on usage and redistribution - * of this file, and for a DISCLAIMER OF ALL WARRANTIES. - * -- * RCS: $Id: itclStubInit.c,v 1.2 2000/08/04 22:11:50 davidg Exp $ -+ * RCS: $Id: itclStubInit.c,v 1.4 2002/08/11 03:43:46 davygrvy Exp $ - */ - - #include "itclInt.h" -@@ -139,12 +139,14 @@ - Itcl_EnsembleCmd, /* 107 */ - Itcl_EnsPartCmd, /* 108 */ - Itcl_EnsembleErrorCmd, /* 109 */ -- Itcl_OldInit, /* 110 */ -- Itcl_InstallOldBiMethods, /* 111 */ -+ NULL, /* 110 */ -+ NULL, /* 111 */ - _Tcl_GetCallFrame, /* 112 */ - _Tcl_ActivateCallFrame, /* 113 */ - _TclNewVar, /* 114 */ - Itcl_Assert, /* 115 */ -+ Itcl_IsObjectCmd, /* 116 */ -+ Itcl_IsClassCmd, /* 117 */ - }; - - static ItclStubHooks itclStubHooks = { -diff -Naur insight-6.8.orig/itcl/itcl/generic/itclStubLib.c insight-6.8.new/itcl/itcl/generic/itclStubLib.c ---- insight-6.8.orig/itcl/itcl/generic/itclStubLib.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itclStubLib.c 2008-08-18 18:56:39.000000000 +0200 -@@ -4,13 +4,12 @@ - * Stub object that will be statically linked into extensions that wish - * to access Itcl. - * -- * Copyright (c) 1998-1999 by XXXX - * Copyright (c) 1998 Paul Duffin. - * - * See the file "license.terms" for information on usage and redistribution - * of this file, and for a DISCLAIMER OF ALL WARRANTIES. - * -- * RCS: $Id: itclStubLib.c,v 1.6 2001/05/25 00:12:29 davygrvy Exp $ -+ * RCS: $Id: itclStubLib.c,v 1.9 2003/12/24 03:38:02 davygrvy Exp $ - */ - - /* -@@ -44,7 +43,7 @@ - * - * Itcl_InitStubs -- - * -- * Tries to initialise the stub table pointers and ensures that -+ * Tries to initialize the stub table pointers and ensures that - * the correct version of Itcl is loaded. - * - * Results: -@@ -57,15 +56,19 @@ - *---------------------------------------------------------------------- - */ - -+#ifdef Itcl_InitStubs -+#undef Itcl_InitStubs -+#endif -+ - CONST char * - Itcl_InitStubs (interp, version, exact) - Tcl_Interp *interp; -- char *version; -+ CONST char *version; - int exact; - { - CONST char *actualVersion; - -- actualVersion = Tcl_PkgRequireEx(interp, "Itcl", version, exact, -+ actualVersion = Tcl_PkgRequireEx(interp, "Itcl", (CONST84 char *)version, exact, - (ClientData *) &itclStubsPtr); - - if (actualVersion == NULL) { -diff -Naur insight-6.8.orig/itcl/itcl/generic/itcl_util.c insight-6.8.new/itcl/itcl/generic/itcl_util.c ---- insight-6.8.orig/itcl/itcl/generic/itcl_util.c 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/generic/itcl_util.c 2008-08-18 18:56:39.000000000 +0200 -@@ -21,7 +21,7 @@ - * mmclennan@lucent.com - * http://www.tcltk.com/itcl - * -- * RCS: $Id: itcl_util.c,v 1.6 2001/09/06 21:42:12 davygrvy Exp $ -+ * RCS: $Id: itcl_util.c,v 1.14 2004/11/23 21:48:45 davygrvy Exp $ - * ======================================================================== - * Copyright (c) 1993-1998 Lucent Technologies, Inc. - * ------------------------------------------------------------------------ -@@ -82,15 +82,12 @@ - - void - Itcl_Assert(testExpr, fileName, lineNumber) -- char *testExpr; /* string representing test expression */ -- char *fileName; /* file name containing this call */ -- int lineNumber; /* line number containing this call */ --{ --#ifndef NDEBUG -- fprintf(stderr, "Assertion failed: \"%s\" (line %d of %s)", -- testExpr, lineNumber, fileName); -- abort(); --#endif -+ CONST char *testExpr; /* string representing test expression */ -+ CONST char *fileName; /* file name containing this call */ -+ int lineNumber; /* line number containing this call */ -+{ -+ Tcl_Panic("Itcl Assertion failed: \"%s\" (line %d of %s)", -+ testExpr, lineNumber, fileName); - } - - -@@ -699,7 +696,7 @@ - } - if (!entry) { - Tcl_MutexUnlock(&ItclPreservedListLock); -- panic("Itcl_ReleaseData can't find reference for 0x%x", cdata); -+ Tcl_Panic("Itcl_ReleaseData can't find reference for 0x%x", cdata); - } - - /* -@@ -751,7 +748,11 @@ - Interp *iPtr = (Interp*)interp; - - InterpState *info; -- char *val; -+ CONST char *val; -+ -+#ifndef ERR_IN_PROGRESS /* this disappeared in 8.5a2 */ -+ return (Itcl_InterpState) Tcl_SaveInterpState(interp, status); -+#endif - - info = (InterpState*)ckalloc(sizeof(InterpState)); - info->validate = TCL_STATE_VALID; -@@ -770,7 +771,11 @@ - /* - * If an error is in progress, preserve its state. - */ -+#ifdef ERR_IN_PROGRESS /* this disappeared in 8.5a2 */ - if ((iPtr->flags & ERR_IN_PROGRESS) != 0) { -+#else -+ if (iPtr->errorInfo != NULL) { -+#endif - val = Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY); - if (val) { - info->errorInfo = ckalloc((unsigned)(strlen(val)+1)); -@@ -811,12 +816,15 @@ - Tcl_Interp* interp; /* interpreter being modified */ - Itcl_InterpState state; /* token representing interpreter state */ - { -- Interp *iPtr = (Interp*)interp; - InterpState *info = (InterpState*)state; - int status; - -+#ifndef ERR_IN_PROGRESS /* this disappeared in 8.5a2 */ -+ return Tcl_RestoreInterpState(interp, (Tcl_InterpState)state); -+#endif -+ - if (info->validate != TCL_STATE_VALID) { -- panic("bad token in Itcl_RestoreInterpState"); -+ Tcl_Panic("bad token in Itcl_RestoreInterpState"); - } - Tcl_ResetResult(interp); - -@@ -832,10 +840,7 @@ - } - - if (info->errorCode) { -- (void) Tcl_SetVar2(interp, "errorCode", (char*)NULL, -- info->errorCode, TCL_GLOBAL_ONLY); -- iPtr->flags |= ERROR_CODE_SET; -- -+ Tcl_SetObjErrorCode(interp, Tcl_NewStringObj(info->errorCode, -1)); - ckfree(info->errorCode); - } - -@@ -871,8 +876,13 @@ - { - InterpState *info = (InterpState*)state; - -+#ifndef ERR_IN_PROGRESS /* this disappeared in 8.5a2 */ -+ Tcl_DiscardInterpState((Tcl_InterpState)state); -+ return; -+#endif -+ - if (info->validate != TCL_STATE_VALID) { -- panic("bad token in Itcl_DiscardInterpState"); -+ Tcl_Panic("bad token in Itcl_DiscardInterpState"); - } - - if (info->errorInfo) { -@@ -1149,12 +1159,12 @@ - */ - void - Itcl_ParseNamespPath(name, buffer, head, tail) -- char *name; /* path name to class member */ -+ CONST char *name; /* path name to class member */ - Tcl_DString *buffer; /* dynamic string buffer (uninitialized) */ - char **head; /* returns "namesp::namesp::namesp" part */ - char **tail; /* returns "element" part */ - { -- register char *sep; -+ register char *sep, *newname; - - Tcl_DStringInit(buffer); - -@@ -1164,12 +1174,12 @@ - * scope qualifier. - */ - Tcl_DStringAppend(buffer, name, -1); -- name = Tcl_DStringValue(buffer); -+ newname = Tcl_DStringValue(buffer); - -- for (sep=name; *sep != '\0'; sep++) -+ for (sep=newname; *sep != '\0'; sep++) - ; - -- while (--sep > name) { -+ while (--sep > newname) { - if (*sep == ':' && *(sep-1) == ':') { - break; - } -@@ -1180,20 +1190,20 @@ - * up until the head is found. This supports the Tcl namespace - * behavior, which allows names like "foo:::bar". - */ -- if (sep > name) { -+ if (sep > newname) { - *tail = sep+1; -- while (sep > name && *(sep-1) == ':') { -+ while (sep > newname && *(sep-1) == ':') { - sep--; - } - *sep = '\0'; -- *head = name; -+ *head = newname; - } - - /* - * No :: separators--the whole name is treated as a tail. - */ - else { -- *tail = name; -+ *tail = newname; - *head = NULL; - } - } -@@ -1218,19 +1228,21 @@ - */ - int - Itcl_DecodeScopedCommand(interp, name, rNsPtr, rCmdPtr) -- Tcl_Interp *interp; /* current interpreter */ -- char *name; /* string to be decoded */ -- Tcl_Namespace **rNsPtr; /* returns: namespace for scoped value */ -- char **rCmdPtr; /* returns: simple command word */ -+ Tcl_Interp *interp; /* current interpreter */ -+ CONST char *name; /* string to be decoded */ -+ Tcl_Namespace **rNsPtr; /* returns: namespace for scoped value */ -+ char **rCmdPtr; /* returns: simple command word */ - { - Tcl_Namespace *nsPtr = NULL; -- char *cmdName = name; -+ char *cmdName; - int len = strlen(name); -- -- char *pos; -+ CONST char *pos; - int listc, result; - char **listv; - -+ cmdName = ckalloc((unsigned)strlen(name)+1); -+ strcpy(cmdName, name); -+ - if ((*name == 'n') && (len > 17) && (strncmp(name, "namespace", 9) == 0)) { - for (pos = (name + 9); (*pos == ' '); pos++) { - /* empty body: skip over spaces */ -@@ -1238,7 +1250,8 @@ - if ((*pos == 'i') && ((pos + 7) <= (name + len)) - && (strncmp(pos, "inscope", 7) == 0)) { - -- result = Tcl_SplitList(interp, name, &listc, &listv); -+ result = Tcl_SplitList(interp, (CONST84 char *)name, &listc, -+ &listv); - if (result == TCL_OK) { - if (listc != 4) { - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), -@@ -1246,15 +1259,14 @@ - "namespace inscope namesp command\"", - (char*)NULL); - result = TCL_ERROR; -- } -- else { -+ } else { - nsPtr = Tcl_FindNamespace(interp, listv[2], - (Tcl_Namespace*)NULL, TCL_LEAVE_ERR_MSG); - - if (!nsPtr) { - result = TCL_ERROR; -- } -- else { -+ } else { -+ ckfree(cmdName); - cmdName = ckalloc((unsigned)(strlen(listv[3])+1)); - strcpy(cmdName, listv[3]); - } -@@ -1313,7 +1325,7 @@ - cmdPtr = (Command*)cmd; - - cmdlinec = objc; -- cmdlinev = (Tcl_Obj**)objv; -+ cmdlinev = (Tcl_Obj **) objv; - - /* - * If the command is still not found, handle it with the -@@ -1327,16 +1339,13 @@ - Tcl_ResetResult(interp); - Tcl_AppendStringsToObj(Tcl_GetObjResult(interp), - "invalid command name \"", -- Tcl_GetStringFromObj(objv[0], (int*)NULL), "\"", -- (char*)NULL); -+ Tcl_GetStringFromObj(objv[0], NULL), "\"", NULL); - return TCL_ERROR; - } - cmdPtr = (Command*)cmd; - - cmdlinePtr = Itcl_CreateArgs(interp, "unknown", objc, objv); -- -- (void) Tcl_ListObjGetElements((Tcl_Interp*)NULL, cmdlinePtr, -- &cmdlinec, &cmdlinev); -+ Tcl_ListObjGetElements(NULL, cmdlinePtr, &cmdlinec, &cmdlinev); - } - - /* -@@ -1373,7 +1382,7 @@ - Tcl_Obj* - Itcl_CreateArgs(interp, string, objc, objv) - Tcl_Interp *interp; /* current interpreter */ -- char *string; /* first command word */ -+ CONST char *string; /* first command word */ - int objc; /* number of arguments */ - Tcl_Obj *CONST objv[]; /* argument objects */ - { -@@ -1382,7 +1391,7 @@ - - listPtr = Tcl_NewListObj(0, (Tcl_Obj**)NULL); - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, -- Tcl_NewStringObj(string, -1)); -+ Tcl_NewStringObj((CONST84 char *)string, -1)); - - for (i=0; i < objc; i++) { - Tcl_ListObjAppendElement((Tcl_Interp*)NULL, listPtr, objv[i]); -diff -Naur insight-6.8.orig/itcl/itcl/INCOMPATIBLE insight-6.8.new/itcl/itcl/INCOMPATIBLE ---- insight-6.8.orig/itcl/itcl/INCOMPATIBLE 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/INCOMPATIBLE 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,102 @@ -+ -+As much as possible, I've tried to make itcl3.0 backward-compatible -+with earlier releases. The class definition syntax has not changed -+at all from itcl2.2, and the old itcl1.x syntax is still supported. -+But you'll notice changes related to namespaces. John Ousterhout -+adopted a slightly different namespace model for Tcl8. The syntax -+of the "namespace" command is different, as well as the semantics -+for command/variable lookups and imports. Also, John Ousterhout -+failed to adopt ensembles into the Tcl core, so itcl can't add -+functions like "info objects" and "info classes" into the usual "info" -+command. These functions have been moved to a new "itcl::find" command. -+ -+The [incr Widgets] package has changed quite a bit. There are many -+new widgets, and some of the existing widgets were streamlined--some -+of the widget options were removed to improve performance. For details, -+see the "CHANGES" file in the iwidgets3.0.0 directory. Because there -+are a lot of changes, this distribution contains the iwidgets2.2.0 -+package, which is backward-compatible with the existing [incr Widgets]. -+ -+Following is a quick summary of changes, to serve as a porting guide. -+ -+ -+----------------------------------|------------------------------------- -+ You have code like this... | change to this... -+----------------------------------|------------------------------------- -+ namespace foo {...} | namespace eval foo {...} -+ | -+ delete namespace foo | namespace delete foo -+ | -+ info which -namespace $name | if {![string match ::* $name]} { -+ | set name [namespace current]::$name -+ | } -+ | -+ info context | namespace current -+ | -+ info objects ... | itcl::find objects ... -+ | -+ info classes ... | itcl::find classes ... -+ | -+ In itcl2.2, commands/classes | In Tcl8.0, all commands/classes that -+ could be found in any namespace | are not in the global namespace must -+ in a hierarchy. So within a | be qualified. For example, the -+ namespace like "iwidgets" you | "iwidgets" namespace has a bunch of -+ could use simple names like: | classes within it. You must always -+ | refer to these classes with qualified -+ | names, like this: -+ | -+ Labeledwidget::alignlabels ... | iwidgets::Labeledwidget::alignlabels ... -+ Pane #auto | iwidgets::Pane #auto -+ | -+ | -+ In itcl2.2, the "global" | In Tcl8.0, the "variable" command is -+ command was used to access | used to access variables in a namespace: -+ variables in a namespace: | -+ | -+ namespace foo { | namespace eval foo { -+ variable x 0 | variable x 0 -+ proc example {} { | proc example {} { -+ global x | variable x -+ return $x | return $x -+ } | } -+ } | } -+ | -+ | -+ public itk_component add... | itk_component add ... -+ protected itk_component add... | itk_component add -protected ... -+ private itk_component add... | itk_component add -private ... -+ | -+ | -+ -+ OTHER DIFFERENCES -+------------------------------------------------------------------------ -+- You can now use instance variables (along with the usual common -+ variables) with the "scope" command. Thus, you're no longer forced -+ to use the trick with a common array like: [scope modes($this)] -+ -+- All widget/mega-widget access commands (e.g., ".foo.bar") are -+ installed in the global namespace. Therefore, they can be accessed -+ from any namespace context. -+ -+- The [incr Widgets] package used to be loaded by default. You must -+ now use the "package require" command to load it explicitly: -+ -+ package require Iwidgets <-- loads the lastest (iwidgets3.0.0) -+ package require -exact Iwidgets 2.2 <-- loads the older release -+ -+- Command/variable names are now reported with fully-qualified names -+ in "info" inquiries and in error messages. -+ -+- No public/protected/private declarations outside of class definitions -+ -+- The "scope" command used to be more or less the same as the "code" -+ command. In itcl3.x, "scope" is only for variables, and if a variable -+ is not recognized, you'll get an error. -+ -+- The "code" command used to return a value like "@scope ...". It now -+ returns "namespace inscope ...", to be compatible with Tcl8. -+ -+- The prototypes for Itcl_RegisterC and Itcl_FindC have changed. You -+ can now include ClientData when you register C functions. Also, there -+ is a new Itcl_RegisterObjC function for (objc,objv)-style command -+ handlers. -diff -Naur insight-6.8.orig/itcl/itcl/itclConfig.sh.in insight-6.8.new/itcl/itcl/itclConfig.sh.in ---- insight-6.8.orig/itcl/itcl/itclConfig.sh.in 2003-01-21 22:04:23.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/itclConfig.sh.in 2008-08-18 18:56:39.000000000 +0200 -@@ -12,36 +12,51 @@ - # The information in this file is specific to a single platform. - - # Itcl's version number. --ITCL_VERSION='@ITCL_VERSION@' --ITCL_MAJOR_VERSION='@ITCL_MAJOR_VERSION@' --ITCL_MINOR_VERSION='@ITCL_MINOR_VERSION@' --ITCL_RELEASE_LEVEL='@ITCL_RELEASE_LEVEL@' -+itcl_VERSION='@PACKAGE_VERSION@' -+ITCL_VERSION='@PACKAGE_VERSION@' - - # The name of the Itcl library (may be either a .a file or a shared library): --ITCL_LIB_FILE=@ITCL_LIB_FILE@ -+itcl_LIB_FILE=@itcl_LIB_FILE@ -+ITCL_LIB_FILE=@itcl_LIB_FILE@ - - # String to pass to linker to pick up the Itcl library from its - # build directory. --ITCL_BUILD_LIB_SPEC='@ITCL_BUILD_LIB_SPEC@' -+itcl_BUILD_LIB_SPEC='@itcl_BUILD_LIB_SPEC@' -+ITCL_BUILD_LIB_SPEC='@itcl_BUILD_LIB_SPEC@' - - # String to pass to linker to pick up the Itcl library from its - # installed directory. --ITCL_LIB_SPEC='@ITCL_LIB_SPEC@' -+itcl_LIB_SPEC='@itcl_LIB_SPEC@' -+ITCL_LIB_SPEC='@itcl_LIB_SPEC@' - - # The name of the Itcl stub library (a .a file): --ITCL_STUB_LIB_FILE=@ITCL_STUB_LIB_FILE@ -+itcl_STUB_LIB_FILE=@itcl_STUB_LIB_FILE@ -+ITCL_STUB_LIB_FILE=@itcl_STUB_LIB_FILE@ - - # String to pass to linker to pick up the Itcl stub library from its - # build directory. --ITCL_BUILD_STUB_LIB_SPEC='@ITCL_BUILD_STUB_LIB_SPEC@' -+itcl_BUILD_STUB_LIB_SPEC='@itcl_BUILD_STUB_LIB_SPEC@' -+ITCL_BUILD_STUB_LIB_SPEC='@itcl_BUILD_STUB_LIB_SPEC@' - - # String to pass to linker to pick up the Itcl stub library from its - # installed directory. --ITCL_STUB_LIB_SPEC='@ITCL_STUB_LIB_SPEC@' -+itcl_STUB_LIB_SPEC='@itcl_STUB_LIB_SPEC@' -+ITCL_STUB_LIB_SPEC='@itcl_STUB_LIB_SPEC@' -+ -+# String to pass to linker to pick up the Itcl stub library from its -+# build directory. -+itcl_BUILD_STUB_LIB_PATH='@itcl_BUILD_STUB_LIB_PATH@' -+ITCL_BUILD_STUB_LIB_PATH='@itcl_BUILD_STUB_LIB_PATH@' -+ -+# String to pass to linker to pick up the Itcl stub library from its -+# installed directory. -+itcl_STUB_LIB_PATH='@itcl_STUB_LIB_PATH@' -+ITCL_STUB_LIB_PATH='@itcl_STUB_LIB_PATH@' - - # Location of the top-level source directories from which [incr Tcl] - # was built. This is the directory that contains generic, unix, etc. - # If [incr Tcl] was compiled in a different place than the directory - # containing the source files, this points to the location of the sources, - # not the location where [incr Tcl] was compiled. --ITCL_SRC_DIR='@ITCL_SRC_DIR@' -+itcl_SRC_DIR='@itcl_SRC_DIR@' -+ITCL_SRC_DIR='@itcl_SRC_DIR@' -diff -Naur insight-6.8.orig/itcl/itcl/library/itcl.tcl insight-6.8.new/itcl/itcl/library/itcl.tcl ---- insight-6.8.orig/itcl/itcl/library/itcl.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/library/itcl.tcl 2008-08-18 18:56:39.000000000 +0200 -@@ -9,7 +9,7 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: itcl.tcl,v 1.4 2001/04/14 21:35:54 davygrvy Exp $ -+# RCS: $Id: itcl.tcl,v 1.5 2002/09/29 19:30:27 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== -@@ -50,19 +50,17 @@ - # USAGE: itcl::class name body - # Adds an entry for the given class declaration. - # --foreach cmd {itcl::class itcl_class} { -- auto_mkindex_parser::command $cmd {name body} { -- variable index -- variable scriptFile -- append index "set [list auto_index([fullname $name])]" -- append index " \[list source \[file join \$dir [list $scriptFile]\]\]\n" -+auto_mkindex_parser::command itcl::class {name body} { -+ variable index -+ variable scriptFile -+ append index "set [list auto_index([fullname $name])]" -+ append index " \[list source \[file join \$dir [list $scriptFile]\]\]\n" - -- variable parser -- variable contextStack -- set contextStack [linsert $contextStack 0 $name] -- $parser eval $body -- set contextStack [lrange $contextStack 1 end] -- } -+ variable parser -+ variable contextStack -+ set contextStack [linsert $contextStack 0 $name] -+ $parser eval $body -+ set contextStack [lrange $contextStack 1 end] - } - - # -diff -Naur insight-6.8.orig/itcl/itcl/mac/itclMacApplication.r insight-6.8.new/itcl/itcl/mac/itclMacApplication.r ---- insight-6.8.orig/itcl/itcl/mac/itclMacApplication.r 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/itclMacApplication.r 1970-01-01 01:00:00.000000000 +0100 -@@ -1,99 +0,0 @@ --/* -- * tclMacApplication.r -- -- * -- * This file creates resources for use Tcl Shell application. -- * It should be viewed as an example of how to create a new -- * Tcl application using the shared Tcl libraries. -- * -- * Copyright (c) 1996 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tclMacApplication.r 1.1 96/09/11 21:12:54 -- */ -- --#include --#include -- --/* -- * The folowing include and defines help construct -- * the version string for Tcl. -- */ -- --#define RESOURCE_INCLUDED --#include "tcl.h" --#include "itcl.h" --#include "itclPatch.h" -- --/* Should really have one of these in itcl too, but for now... */ -- --#if (TCL_RELEASE_LEVEL == 0) --# define RELEASE_LEVEL alpha --#elif (TCL_RELEASE_LEVEL == 1) --# define RELEASE_LEVEL beta --#elif (TCL_RELEASE_LEVEL == 2) --# define RELEASE_LEVEL final --#endif -- --#if (TCL_RELEASE_LEVEL == 2) --# define MINOR_VERSION (ITCL_MINOR_VERSION * 16) + TCL_RELEASE_SERIAL --#else --# define MINOR_VERSION ITCL_MINOR_VERSION * 16 --#endif -- --resource 'vers' (1) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- ITCL_PATCH_LEVEL ", by Michael McLennan � Lucent Technologies, Inc." --}; -- --resource 'vers' (2) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- "Itcl Shell " ITCL_PATCH_LEVEL " � 1993-1998" --}; -- --#define ITCL_APP_CREATOR 'ITcL' -- --type ITCL_APP_CREATOR as 'STR '; --resource ITCL_APP_CREATOR (0, purgeable) { -- "Itcl Shell " ITCL_PATCH_LEVEL " � 1993-1998" --}; -- --/* -- * The 'kind' resource works with a 'BNDL' in Macintosh Easy Open -- * to affect the text the Finder displays in the "kind" column and -- * file info dialog. This information will be applied to all files -- * with the listed creator and type. -- */ -- --resource 'kind' (128, "Itcl kind", purgeable) { -- ITCL_APP_CREATOR, -- 0, /* region = USA */ -- { -- 'APPL', "Itcl Shell", -- } --}; -- --/* -- * The following resource is used when creating the 'env' variable in -- * the Macintosh environment. The creation mechanisim looks for the -- * 'STR#' resource named "Tcl Environment Variables" rather than a -- * specific resource number. (In other words, feel free to change the -- * resource id if it conflicts with your application.) Each string in -- * the resource must be of the form "KEYWORD=SOME STRING". See Tcl -- * documentation for futher information about the env variable. -- * -- * A good example of something you may want to set is: "TCL_LIBRARY=My -- * disk:etc." -- */ -- --resource 'STR#' (128, "Tcl Environment Variables") { -- { "SCHEDULE_NAME=Agent Controller Schedule", -- "SCHEDULE_PATH=Lozoya:System Folder:Tcl Lib:Tcl-Scheduler" -- }; --}; -- -diff -Naur insight-6.8.orig/itcl/itcl/mac/itclMacLibrary.r insight-6.8.new/itcl/itcl/mac/itclMacLibrary.r ---- insight-6.8.orig/itcl/itcl/mac/itclMacLibrary.r 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/itclMacLibrary.r 1970-01-01 01:00:00.000000000 +0100 -@@ -1,154 +0,0 @@ --/* -- * tclMacLibrary.r -- -- * -- * This file creates resources used by the Tcl shared library. -- * Many thanks go to "Jay Lieske, Jr." who -- * wrote the initial version of this file. -- * -- * Copyright (c) 1996 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tclMacLibrary.r 1.3 96/09/12 17:40:07 -- */ -- --#include --#include -- --/* -- * The folowing include and defines help construct -- * the version string for Tcl. -- */ -- --#define RESOURCE_INCLUDED --#include "tcl.h" --#include "itcl.h" -- --#if (TCL_RELEASE_LEVEL == 0) --# define RELEASE_LEVEL alpha --#elif (TCL_RELEASE_LEVEL == 1) --# define RELEASE_LEVEL beta --#elif (TCL_RELEASE_LEVEL == 2) --# define RELEASE_LEVEL final --#endif -- --#if (TCL_RELEASE_LEVEL == 2) --# define MINOR_VERSION (ITCL_MINOR_VERSION * 16) + TCL_RELEASE_SERIAL --#else --# define MINOR_VERSION ITCL_MINOR_VERSION * 16 --#endif -- --resource 'vers' (1) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- ITCL_PATCH_LEVEL ", by Michael McLennan � Lucent Technologies, Inc." --}; -- --resource 'vers' (2) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- "Itcl Shell " ITCL_PATCH_LEVEL " � 1993-1998" --}; -- -- --/* -- * Currently the creator for all Tcl/Tk libraries and extensions -- * should be 'TclL'. This will allow those extension and libraries -- * to use the common icon for Tcl extensions. However, this signature -- * still needs to be approved by the signature police at Apple and may -- * change. -- */ --#define ITCL_CREATOR 'ITcL' --#define TCL_LIBRARY_RESOURCES 2000 --#define ITCL_LIBRARY_RESOURCES 2000 -- --/* -- * The 'BNDL' resource is the primary link between a file's -- * creator/type and its icon. This resource acts for all Tcl shared -- * libraries; other libraries will not need one and ought to use -- * custom icons rather than new file types for a different appearance. -- */ -- --resource 'BNDL' (TCL_LIBRARY_RESOURCES, "Tcl bundle", purgeable) --{ -- ITCL_CREATOR, -- 0, -- { /* array TypeArray: 2 elements */ -- /* [1] */ -- 'FREF', -- { /* array IDArray: 1 elements */ -- /* [1] */ -- 0, TCL_LIBRARY_RESOURCES -- }, -- /* [2] */ -- 'ICN#', -- { /* array IDArray: 1 elements */ -- /* [1] */ -- 0, TCL_LIBRARY_RESOURCES -- } -- } --}; -- --resource 'FREF' (TCL_LIBRARY_RESOURCES, purgeable) --{ -- 'shlb', 0, "" --}; -- --type ITCL_CREATOR as 'STR '; --resource ITCL_CREATOR (0, purgeable) { -- "Itcl Library " ITCL_PATCH_LEVEL " � 1993-1998" --}; -- --/* -- * The 'kind' resource works with a 'BNDL' in Macintosh Easy Open -- * to affect the text the Finder displays in the "kind" column and -- * file info dialog. This information will be applied to all files -- * with the listed creator and type. -- */ -- --resource 'kind' (TCL_LIBRARY_RESOURCES, "Itcl kind", purgeable) { -- ITCL_CREATOR, -- 0, /* region = USA */ -- { -- 'shlb', "Itcl Library" -- } --}; -- -- --/* -- * The -16397 string will be displayed by Finder when a user -- * tries to open the shared library. The string should -- * give the user a little detail about the library's capabilities -- * and enough information to install the library in the correct location. -- * A similar string should be placed in all shared libraries. -- */ --resource 'STR ' (-16397, purgeable) { -- "Itcl Library\n\n" -- "This is one of the libraries needed to run the Itcl flavor of the Tool Command Language programs. " -- "To work properly, it should be placed in the �Tool Command Language� folder " -- "within the Extensions folder." --}; -- --/* -- * The mechanisim below loads Tcl source into the resource fork of the -- * application. The example below creates a TEXT resource named -- * "Init" from the file "init.tcl". This allows applications to use -- * Tcl to define the behavior of the application without having to -- * require some predetermined file structure - all needed Tcl "files" -- * are located within the application. To source a file for the -- * resource fork the source command has been modified to support -- * sourcing from resources. In the below case "source -rsrc {Init}" -- * will load the TEXT resource named "Init". -- */ -- --#include "itclMacTclCode.r" -- --data 'TEXT' (ITCL_LIBRARY_RESOURCES+1,"pkgIndex",purgeable, preload) { -- "# Tcl package index file, version 1.0\n" -- "package ifneeded Itcl 3.1 [list load [file join $dir itcl31[info sharedlibextension]] Itcl]\n" --}; -- -- -diff -Naur insight-6.8.orig/itcl/itcl/mac/itclMacResource.r insight-6.8.new/itcl/itcl/mac/itclMacResource.r ---- insight-6.8.orig/itcl/itcl/mac/itclMacResource.r 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/itclMacResource.r 1970-01-01 01:00:00.000000000 +0100 -@@ -1,94 +0,0 @@ --/* -- * tclMacResource.r -- -- * -- * This file creates resources for use in a simple shell. -- * This is designed to be an example of using the Tcl libraries -- * statically in a Macintosh Application. For an example of -- * of using the dynamic libraries look at tclMacApplication.r. -- * -- * Copyright (c) 1993-94 Lockheed Missle & Space Company -- * Copyright (c) 1994-96 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tclMacResource.r 1.14 96/09/11 21:14:36 -- */ -- --#include --#include -- --/* -- * The folowing include and defines help construct -- * the version string for Tcl. -- */ -- --#define RESOURCE_INCLUDED --#include "tcl.h" --#include "itcl.h" --#include "itclPatch.h" -- --#if (TCL_RELEASE_LEVEL == 0) --# define RELEASE_LEVEL alpha --#elif (TCL_RELEASE_LEVEL == 1) --# define RELEASE_LEVEL beta --#elif (TCL_RELEASE_LEVEL == 2) --# define RELEASE_LEVEL final --#endif -- --#if (TCL_RELEASE_LEVEL == 2) --# define MINOR_VERSION (ITCL_MINOR_VERSION * 16) + TCL_RELEASE_SERIAL --#else --# define MINOR_VERSION ITCL_MINOR_VERSION * 16 --#endif -- --resource 'vers' (1) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- ITCL_PATCH_LEVEL ", by Michael McLennan � Lucent Technologies, Inc." --}; -- --resource 'vers' (2) { -- ITCL_MAJOR_VERSION, MINOR_VERSION, -- RELEASE_LEVEL, 0x00, verUS, -- ITCL_PATCH_LEVEL, -- "Simple Itcl Shell " ITCL_PATCH_LEVEL " � 1993-1998" --}; -- --#define TCL_LIBRARY_RESOURCES 1000 --#define ITCL_LIBRARY_RESOURCES 2000 -- --/* -- * The mechanisim below loads Tcl source into the resource fork of the -- * application. The example below creates a TEXT resource named -- * "Init" from the file "init.tcl". This allows applications to use -- * Tcl to define the behavior of the application without having to -- * require some predetermined file structure - all needed Tcl "files" -- * are located within the application. To source a file for the -- * resource fork the source command has been modified to support -- * sourcing from resources. In the below case "source -rsrc {Init}" -- * will load the TEXT resource named "Init". -- */ --read 'TEXT' (TCL_LIBRARY_RESOURCES, "Init", purgeable, preload) ":::tcl" TCL_VERSION ":library:init.tcl"; --read 'TEXT' (ITCL_LIBRARY_RESOURCES, "itcl", purgeable,preload) "::library:itcl.tcl"; -- --/* -- * The following resource is used when creating the 'env' variable in -- * the Macintosh environment. The creation mechanisim looks for the -- * 'STR#' resource named "Tcl Environment Variables" rather than a -- * specific resource number. (In other words, feel free to change the -- * resource id if it conflicts with your application.) Each string in -- * the resource must be of the form "KEYWORD=SOME STRING". See Tcl -- * documentation for futher information about the env variable. -- * -- * A good example of something you may want to set is: "TCL_LIBRARY=My -- * disk:etc." -- */ -- --resource 'STR#' (128, "Tcl Environment Variables") { -- { "SCHEDULE_NAME=Agent Controller Schedule", -- "SCHEDULE_PATH=Lozoya:System Folder:Tcl Lib:Tcl-Scheduler" -- }; --}; -- -diff -Naur insight-6.8.orig/itcl/itcl/mac/itclMacTclCode.r insight-6.8.new/itcl/itcl/mac/itclMacTclCode.r ---- insight-6.8.orig/itcl/itcl/mac/itclMacTclCode.r 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/itclMacTclCode.r 1970-01-01 01:00:00.000000000 +0100 -@@ -1,32 +0,0 @@ --/* -- * itclMacTclCode.r -- * -- * This file includes the Itcl code that is needed to startup Tcl. -- * It is to be included either in the resource fork of the shared library, or in the -- * resource fork of the application for a statically bound application. -- * -- * Jim Ingham -- * Lucent Technologies 1996 -- * -- */ -- --#include --#include -- -- -- --#define ITCL_LIBRARY_RESOURCES 2500 -- --/* -- * The mechanisim below loads Tcl source into the resource fork of the -- * application. The example below creates a TEXT resource named -- * "Init" from the file "init.tcl". This allows applications to use -- * Tcl to define the behavior of the application without having to -- * require some predetermined file structure - all needed Tcl "files" -- * are located within the application. To source a file for the -- * resource fork the source command has been modified to support -- * sourcing from resources. In the below case "source -rsrc {Init}" -- * will load the TEXT resource named "Init". -- */ -- --read 'TEXT' (ITCL_LIBRARY_RESOURCES, "itcl", purgeable,preload) "::library:itcl.tcl"; -diff -Naur insight-6.8.orig/itcl/itcl/mac/itclStaticApplication.r insight-6.8.new/itcl/itcl/mac/itclStaticApplication.r ---- insight-6.8.orig/itcl/itcl/mac/itclStaticApplication.r 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/itclStaticApplication.r 1970-01-01 01:00:00.000000000 +0100 -@@ -1,26 +0,0 @@ --/* -- * itkStaticPkgIndex.r -- -- * -- * This file creates resources which bind in the static version of the -- * pkgIndex files. -- * -- * Copyright (c) 1996 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tkMacLibrary.r 1.5 96/10/03 17:54:21 -- */ -- --#include --#include --#include -- --#define ITCL_LIBRARY_RESOURCES 2500 -- --#include "itclMacTclCode.r" -- --data 'TEXT' (ITCL_LIBRARY_RESOURCES+20,"itcl:pkgIndex",purgeable, preload) { -- "# Tcl package index file, version 1.0\n" -- "package ifneeded Itcl 2.2 {load {} Itcl}\n" --}; -diff -Naur insight-6.8.orig/itcl/itcl/mac/MW_ItclHeader.pch insight-6.8.new/itcl/itcl/mac/MW_ItclHeader.pch ---- insight-6.8.orig/itcl/itcl/mac/MW_ItclHeader.pch 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/MW_ItclHeader.pch 1970-01-01 01:00:00.000000000 +0100 -@@ -1,74 +0,0 @@ --/* -- * MW_TclHeader.pch -- -- * -- * This file is the source for a pre-compilied header that gets used -- * for all files in the Tcl projects. This make compilies go a bit -- * faster. This file is only intended to be used in the MetroWerks -- * CodeWarrior environment. It essentially acts as a place to set -- * compiler flags. See MetroWerks documention for more details. -- * -- * Copyright (c) 1995-1997 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) MW_TclHeader.pch 1.27 97/11/20 18:45:25 -- */ -- --/* -- * To use the compilied header you need to set the "Prefix file" in -- * the "C/C++ Language" preference panel to point to the created -- * compilied header. The name of the header depends on the -- * architecture we are compiling for (see the code below). For -- * example, for a 68k app the prefix file should be: MW_TclHeader68K. -- */ --#if __POWERPC__ --#pragma precompile_target "MW_ItclHeaderPPC" --#include "MW_TclHeaderPPC" --#elif __CFM68K__ --#pragma precompile_target "MW_ItclHeaderCFM68K" --#include "MW_TclHeaderCFM68K" --#else --#pragma precompile_target "MW_ItclHeader68K" --#include "MW_TclHeader68K" --#endif -- --/* -- * Macintosh Tcl must be compiled with certain compiler options to -- * ensure that it will work correctly. The following pragmas are -- * used to ensure that those options are set correctly. An error -- * will occur at compile time if they are not set correctly. -- */ -- --#if !__option(enumsalwaysint) --#error Tcl requires the Metrowerks setting "Enums always ints". --#endif -- --#if !defined(__POWERPC__) --#if !__option(far_data) --#error Tcl requires the Metrowerks setting "Far data". --#endif --#endif -- --#if !defined(__POWERPC__) --#if !__option(fourbyteints) --#error Tcl requires the Metrowerks setting "4 byte ints". --#endif --#endif -- --#if !defined(__POWERPC__) --#if !__option(IEEEdoubles) --#error Tcl requires the Metrowerks setting "8 byte doubles". --#endif --#endif -- --/* -- * Place any includes below that will are needed by the majority of the -- * and is OK to be in any file in the system. The pragma's are used -- * to control what functions are exported in the Tcl shared library. -- */ -- --#pragma export on --#include "itcl.h" --#pragma export reset -- -diff -Naur insight-6.8.orig/itcl/itcl/mac/pkgIndex.tcl insight-6.8.new/itcl/itcl/mac/pkgIndex.tcl ---- insight-6.8.orig/itcl/itcl/mac/pkgIndex.tcl 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/pkgIndex.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,3 +0,0 @@ --# Tcl package index file, version 1.0 -- --package ifneeded Itcl 3.1 [list load [file join $dir itcl31[info sharedlibextension]] Itcl] -diff -Naur insight-6.8.orig/itcl/itcl/mac/tclMacAppInit.c insight-6.8.new/itcl/itcl/mac/tclMacAppInit.c ---- insight-6.8.orig/itcl/itcl/mac/tclMacAppInit.c 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/mac/tclMacAppInit.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,227 +0,0 @@ --/* -- * tclMacAppInit.c -- -- * -- * Provides a version of the Tcl_AppInit procedure for the example shell. -- * -- * Copyright (c) 1993-1994 Lockheed Missle & Space Company, AI Center -- * Copyright (c) 1995-1997 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tclMacAppInit.c 1.20 97/07/28 11:03:58 -- */ -- --/* include tclInt.h for access to namespace API */ --#include "tclInt.h" -- --#include "tclInt.h" --#include "tclPort.h" --#include "tclMac.h" --#include "tclMacInt.h" -- --#include "itcl.h" -- --#if defined(THINK_C) --# include --#elif defined(__MWERKS__) --# include --short InstallConsole _ANSI_ARGS_((short fd)); --#endif -- --#ifdef TCL_TEST --EXTERN int TclObjTest_Init _ANSI_ARGS_((Tcl_Interp *interp)); --EXTERN int Tcltest_Init _ANSI_ARGS_((Tcl_Interp *interp)); --#endif /* TCL_TEST */ -- --/* -- * Forward declarations for procedures defined later in this file: -- */ -- --static int MacintoshInit _ANSI_ARGS_((void)); -- --/* -- *---------------------------------------------------------------------- -- * -- * main -- -- * -- * Main program for tclsh. This file can be used as a prototype -- * for other applications using the Tcl library. -- * -- * Results: -- * None. This procedure never returns (it exits the process when -- * it's done. -- * -- * Side effects: -- * This procedure initializes the Macintosh world and then -- * calls Tcl_Main. Tcl_Main will never return except to exit. -- * -- *---------------------------------------------------------------------- -- */ -- --void --main( -- int argc, /* Number of arguments. */ -- char **argv) /* Array of argument strings. */ --{ -- char *newArgv[2]; -- -- if (MacintoshInit() != TCL_OK) { -- Tcl_Exit(1); -- } -- -- argc = 1; -- newArgv[0] = "itclsh"; -- newArgv[1] = NULL; -- Tcl_Main(argc, newArgv, Tcl_AppInit); --} -- --/* -- *---------------------------------------------------------------------- -- * -- * Tcl_AppInit -- -- * -- * This procedure performs application-specific initialization. -- * Most applications, especially those that incorporate additional -- * packages, will have their own version of this procedure. -- * -- * Results: -- * Returns a standard Tcl completion code, and leaves an error -- * message in interp->result if an error occurs. -- * -- * Side effects: -- * Depends on the startup script. -- * -- *---------------------------------------------------------------------- -- */ -- --int --Tcl_AppInit( -- Tcl_Interp *interp) /* Interpreter for application. */ --{ -- if (Tcl_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- --#ifdef TCL_TEST -- if (Tcltest_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- Tcl_StaticPackage(interp, "Tcltest", Tcltest_Init, -- (Tcl_PackageInitProc *) NULL); -- if (TclObjTest_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } --#endif /* TCL_TEST */ -- -- /* -- * Call the init procedures for included packages. Each call should -- * look like this: -- * -- * if (Mod_Init(interp) == TCL_ERROR) { -- * return TCL_ERROR; -- * } -- * -- * where "Mod" is the name of the module. -- */ -- if (Itcl_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- Tcl_StaticPackage(interp, "Itcl", Itcl_Init, Itcl_SafeInit); -- -- /* -- * This is itclsh, so import all [incr Tcl] commands by -- * default into the global namespace. Fix up the autoloader -- * to do the same. -- */ -- if (Tcl_Import(interp, Tcl_GetGlobalNamespace(interp), -- "::itcl::*", /* allowOverwrite */ 1) != TCL_OK) { -- return TCL_ERROR; -- } -- -- if (Tcl_Eval(interp, "auto_mkindex_parser::slavehook { _%@namespace import -force ::itcl::* }") != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Call Tcl_CreateCommand for application-specific commands, if -- * they weren't already created by the init procedures called above. -- * Each call would loo like this: -- * -- * Tcl_CreateCommand(interp, "tclName", CFuncCmd, NULL, NULL); -- */ -- -- /* -- * Specify a user-specific startup script to invoke if the application -- * is run interactively. On the Mac we can specifiy either a TEXT resource -- * which contains the script or the more UNIX like file location -- * may also used. (I highly recommend using the resource method.) -- */ -- -- Tcl_SetVar(interp, "tcl_rcRsrcName", "itclshrc", TCL_GLOBAL_ONLY); -- /* Tcl_SetVar(interp, "tcl_rcFileName", "~/.itclshrc", TCL_GLOBAL_ONLY); */ -- -- return TCL_OK; --} -- --/* -- *---------------------------------------------------------------------- -- * -- * MacintoshInit -- -- * -- * This procedure calls initalization routines to set up a simple -- * console on a Macintosh. This is necessary as the Mac doesn't -- * have a stdout & stderr by default. -- * -- * Results: -- * Returns TCL_OK if everything went fine. If it didn't the -- * application should probably fail. -- * -- * Side effects: -- * Inits the appropiate console package. -- * -- *---------------------------------------------------------------------- -- */ -- --static int --MacintoshInit() --{ --#if GENERATING68K && !GENERATINGCFM -- SetApplLimit(GetApplLimit() - (TCL_MAC_68K_STACK_GROWTH)); --#endif -- MaxApplZone(); -- --#if defined(THINK_C) -- -- /* Set options for Think C console package */ -- /* The console package calls the Mac init calls */ -- console_options.pause_atexit = 0; -- console_options.title = "\pTcl Interpreter"; -- --#elif defined(__MWERKS__) -- -- /* Set options for CodeWarrior SIOUX package */ -- SIOUXSettings.autocloseonquit = true; -- SIOUXSettings.showstatusline = true; -- SIOUXSettings.asktosaveonclose = false; -- InstallConsole(0); -- SIOUXSetTitle("\pTcl Interpreter"); -- --#elif defined(applec) -- -- /* Init packages used by MPW SIOW package */ -- InitGraf((Ptr)&qd.thePort); -- InitFonts(); -- InitWindows(); -- InitMenus(); -- TEInit(); -- InitDialogs(nil); -- InitCursor(); -- --#endif -- -- Tcl_MacSetEventProc((Tcl_MacConvertEventPtr) SIOUXHandleOneEvent); -- -- /* No problems with initialization */ -- return TCL_OK; --} -diff -Naur insight-6.8.orig/itcl/itcl/Makefile.in insight-6.8.new/itcl/itcl/Makefile.in ---- insight-6.8.orig/itcl/itcl/Makefile.in 2008-08-18 18:53:54.000000000 +0200 -+++ insight-6.8.new/itcl/itcl/Makefile.in 2008-08-18 19:12:19.000000000 +0200 -@@ -7,232 +7,146 @@ - # replaced in the actual Makefile. - # - # Copyright (c) 1999 Scriptics Corporation. -+# Copyright (c) 2002-2004 ActiveState Corporation. - # - # See the file "license.terms" for information on usage and redistribution - # of this file, and for a DISCLAIMER OF ALL WARRANTIES. - # --# RCS: @(#) $Id: Makefile.in,v 1.2.4.4 2001/07/13 00:57:11 mdejong Exp $ -+# RCS: @(#) $Id: Makefile.in,v 1.27 2005/03/25 22:58:48 dgp Exp $ - - #======================================================================== --# Edit the following few lines when writing a new extension -+# The names of the source files is defined in the configure script. -+# The object files are used for linking into the final library. -+# This will be used when a dist target is added to the Makefile. -+# It is not important to specify the directory, as long as it is the -+# $(srcdir) or in the generic, win or unix subdirectory. - #======================================================================== - -+PKG_SOURCES = @PKG_SOURCES@ -+PKG_OBJECTS = @PKG_OBJECTS@ -+ -+PKG_STUB_SOURCES = @PKG_STUB_SOURCES@ -+PKG_STUB_OBJECTS = @PKG_STUB_OBJECTS@ -+ - #======================================================================== --# Change the name of the variable "exampleA_LIB_FILE" to match the one --# used in the configure script. This is the parameterized name of the --# library that we are building. -+# PKG_TCL_SOURCES identifies Tcl runtime files that are associated with -+# this package that need to be installed, if any. - #======================================================================== - --lib_BINARIES=$(itcl_LIB_FILE) $(itclstub_LIB_FILE) --BINARIES=$(lib_BINARIES) -+PKG_TCL_SOURCES = @PKG_TCL_SOURCES@ - - #======================================================================== --# Enumerate the names of the source files included in this package. --# This will be used when a dist target is added to the Makefile. -+# This is a list of header files to be installed -+# itk.h includes itclInt.h, which needs itclIntDecls.h, -+# so we must install them. - #======================================================================== - --WIN_DIR=$(srcdir)/win --UNIX_DIR=$(srcdir)/unix --GENERIC_DIR=$(srcdir)/generic --PLATFORM_DIR=@PLATFORM_DIR@ -- --WIN_SOURCES=$(PLATFORM_DIR)/tclAppInit.c \ -- $(PLATFORM_DIR)/dllEntryPoint.c --UNIX_SOURCES=$(PLATFORM_DIR)/tclAppInit.c --GENERIC_SOURCES = $(GENERIC_DIR)/itclStubInit.c \ -- $(GENERIC_DIR)/itclStubLib.c \ -- $(GENERIC_DIR)/itcl_bicmds.c \ -- $(GENERIC_DIR)/itcl_class.c \ -- $(GENERIC_DIR)/itcl_cmds.c \ -- $(GENERIC_DIR)/itcl_ensemble.c \ -- $(GENERIC_DIR)/itcl_linkage.c \ -- $(GENERIC_DIR)/itcl_methods.c \ -- $(GENERIC_DIR)/itcl_migrate.c \ -- $(GENERIC_DIR)/itcl_objects.c \ -- $(GENERIC_DIR)/itcl_obsolete.c \ -- $(GENERIC_DIR)/itcl_parse.c \ -- $(GENERIC_DIR)/itcl_util.c --PLATFORM_SOURCES = @PLATFORM_SOURCES@ --itcl_SOURCES = $(PLATFORM_SOURCES) $(GENERIC_SOURCES) --SOURCES = $(itcl_SOURCES) -- --#======================================================================== --# Enumerate the names of the object files included in this package. --# These objects are created and linked into the final library. In --# most cases these object files will correspond to the source files --# above. --# -+PKG_HEADERS = @PKG_HEADERS@ -+ -+#======================================================================== -+# Nothing of the variables below this line need to be changed. Please -+# check the TARGETS section below to make sure the make targets are -+# correct. - #======================================================================== - --WIN_OBJECTS = dllEntryPoint.$(OBJEXT) --UNIX_OBJECTS = --GENERIC_OBJECTS = itclStubInit.$(OBJEXT) \ -- itcl_bicmds.$(OBJEXT) \ -- itcl_class.$(OBJEXT) \ -- itcl_cmds.$(OBJEXT) \ -- itcl_ensemble.$(OBJEXT) \ -- itcl_linkage.$(OBJEXT) \ -- itcl_methods.$(OBJEXT) \ -- itcl_migrate.$(OBJEXT) \ -- itcl_objects.$(OBJEXT) \ -- itcl_obsolete.$(OBJEXT) \ -- itcl_parse.$(OBJEXT) \ -- itcl_util.$(OBJEXT) --PLATFORM_OBJECTS = @PLATFORM_OBJECTS@ --itclstub_OBJECTS = itclStubLib.$(OBJEXT) --itcl_OBJECTS = $(PLATFORM_OBJECTS) $(GENERIC_OBJECTS) --OBJECTS = $(itcl_OBJECTS) $(itclstub_OBJECTS) -- --#======================================================================== --# The substitution of "exampleA_LIB_FILE" into the variable name below --# let's us refer to the objects for the library without knowing the name --# of the library in advance. It also lets us use the "$@" variable in --# the rule for building the library, so we can refer to both the list of --# objects and the library itself in a platform-independent manner. -+#======================================================================== -+# Change the name of the variable "exampleA_LIB_FILE" to match the one -+# used in the configure script. This is the parameterized name of the -+# library that we are building. - #======================================================================== - --itcl_LIB_FILE = @itcl_LIB_FILE@ --@itcl_LIB_FILE@_OBJECTS = $(itcl_OBJECTS) -+PKG_LIB_FILE = @PKG_LIB_FILE@ -+PKG_STUB_LIB_FILE = @PKG_STUB_LIB_FILE@ - --itclstub_LIB_FILE = @itclstub_LIB_FILE@ --@itclstub_LIB_FILE@_OBJECTS = $(itclstub_OBJECTS) -+lib_BINARIES = $(PKG_LIB_FILE) $(PKG_STUB_LIB_FILE) -+BINARIES = $(lib_BINARIES) - --#======================================================================== --# This is a list of header files to be installed --# itk.h includes itclInt.h, which needs itclIntDecls.h, so we must install them. --#======================================================================== -+SHELL = @SHELL@ -+ -+srcdir = @srcdir@ -+prefix = @prefix@ -+exec_prefix = @exec_prefix@ -+ -+bindir = @bindir@ -+libdir = @libdir@ -+datadir = @datadir@ -+mandir = @mandir@ -+includedir = @includedir@ -+ -+DESTDIR = -+ -+PKG_DIR = $(PACKAGE_NAME)$(PACKAGE_VERSION) -+pkgdatadir = $(datadir)/$(PKG_DIR) -+pkglibdir = $(libdir)/$(PKG_DIR) -+pkgincludedir = $(includedir)/$(PKG_DIR) -+ -+top_builddir = . -+ -+INSTALL = @INSTALL@ -+INSTALL_PROGRAM = @INSTALL_PROGRAM@ -+INSTALL_DATA = @INSTALL_DATA@ -+INSTALL_SCRIPT = @INSTALL_SCRIPT@ -+ -+PACKAGE_NAME = @PACKAGE_NAME@ -+PACKAGE_VERSION = @PACKAGE_VERSION@ -+CC = @CC@ -+CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ -+CFLAGS_WARNING = @CFLAGS_WARNING@ -+CLEANFILES = @CLEANFILES@ -+EXEEXT = @EXEEXT@ -+LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -+MAKE_LIB = @MAKE_LIB@ -+MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ -+MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ -+MAKE_STUB_LIB = @MAKE_STUB_LIB@ -+OBJEXT = @OBJEXT@ -+RANLIB_LIB = @RANLIB@ -+RANLIB_STUB = @RANLIB_STUB@ -+SHLIB_CFLAGS = @SHLIB_CFLAGS@ -+SHLIB_LD = @SHLIB_LD@ -+SHLIB_LD_FLAGS = @SHLIB_LD_FLAGS@ -+SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ -+STLIB_LD = @STLIB_LD@ -+TCL_DEFS = @TCL_DEFS@ -+TCL_BIN_DIR = @TCL_BIN_DIR@ -+TCL_SRC_DIR = @TCL_SRC_DIR@ -+# This is necessary for packages that use private Tcl headers -+TCL_TOP_DIR_NATIVE = @TCL_TOP_DIR_NATIVE@ - --GENERIC_HDRS= \ -- $(srcdir)/generic/itcl.h \ -- $(srcdir)/generic/itclDecls.h \ -- $(srcdir)/generic/itclInt.h \ -- $(srcdir)/generic/itclIntDecls.h -+# Not used, but retained for reference of what libs Tcl required -+TCL_LIBS = @TCL_LIBS@ - - #======================================================================== --# Add additional lines to handle any additional AC_SUBST cases that --# have been added to the configure script. -+# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our -+# package without installing. The other environment variables allow us -+# to test against an uninstalled Tcl. Add special env vars that you -+# require for testing here (like TCLX_LIBRARY). - #======================================================================== - --SAMPLE_NEW_VAR=@SAMPLE_NEW_VAR@ -+EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR) -+TCLSH_ENV = TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \ -+ ITCL_LIBRARY=`@CYGPATH@ $(srcdir)/library` \ -+ @LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \ -+ PATH="$(EXTRA_PATH):$(PATH)" \ -+ TCLLIBPATH="$(top_builddir)" -+TCLSH_PROG = @TCLSH_PROG@ -+TCLSH = $(TCLSH_ENV) $(TCLSH_PROG) -+SHARED_BUILD = @SHARED_BUILD@ - --# CYGNUS LOCAL --ITCL_LIBRARY = @datadir@/itcl$(VERSION) --# END CYGNUS LOCAL -+INCLUDES = @PKG_INCLUDES@ @TCL_INCLUDES@ - --ITCL_GENERIC_DIR_NATIVE = @ITCL_GENERIC_DIR_NATIVE@ --ITCL_UNIX_DIR_NATIVE = @ITCL_UNIX_DIR_NATIVE@ --ITCL_WIN_DIR_NATIVE = @ITCL_WIN_DIR_NATIVE@ -+PKG_CFLAGS = @PKG_CFLAGS@ - --#======================================================================== --# Nothing of the variables below this line need to be changed. Please --# check the TARGETS section below to make sure the make targets are --# correct. --#======================================================================== -+DEFS = @DEFS@ $(PKG_CFLAGS) \ -+ -DITCL_LIBRARY=\"$(pkglibdir)\" -DUSE_NON_CONST - --SHELL = @SHELL@ -+CONFIG_CLEAN_FILES = @CONFIG_CLEAN_FILES@ Makefile itclConfig.sh pkgIndex.tcl - --srcdir = @srcdir@ --top_srcdir = @top_srcdir@ --prefix = @prefix@ --exec_prefix = @exec_prefix@ -- --bindir = @bindir@ --sbindir = @sbindir@ --libexecdir = @libexecdir@ --datadir = @datadir@ --sysconfdir = @sysconfdir@ --sharedstatedir = @sharedstatedir@ --localstatedir = @localstatedir@ --libdir = @libdir@ --infodir = @infodir@ --mandir = @mandir@ --includedir = @includedir@ --oldincludedir = /usr/include -- --pkgdatadir = $(datadir)/@PACKAGE@@VERSION@ --pkglibdir = $(libdir)/@PACKAGE@@VERSION@ --pkgincludedir = $(includedir)/@PACKAGE@@VERSION@ -- --top_builddir = . -- --# CYGNUS LOCAL --INSTALL = @INSTALL@ --# END CYGNUS LOCAL --INSTALL_PROGRAM = @INSTALL_PROGRAM@ --INSTALL_DATA = @INSTALL_DATA@ --INSTALL_SCRIPT = @INSTALL_SCRIPT@ --INSTALL_STRIP_FLAG = --transform = @program_transform_name@ -- --NORMAL_INSTALL = : --PRE_INSTALL = : --POST_INSTALL = : --NORMAL_UNINSTALL = : --PRE_UNINSTALL = : --POST_UNINSTALL = : -- --PACKAGE = @PACKAGE@ --VERSION = @VERSION@ --CC = @CC@ --CFLAGS_DEBUG = @CFLAGS_DEBUG@ --CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ --CFLAGS_OPTIMIZE = @CFLAGS_OPTIMIZE@ --CLEANFILES = @CLEANFILES@ --EXEEXT = @EXEEXT@ --LDFLAGS_DEBUG = @LDFLAGS_DEBUG@ --LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ --LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@ --MAKE_LIB = @MAKE_LIB@ --MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ --MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ --OBJEXT = @OBJEXT@ --RANLIB = @RANLIB@ --SHLIB_CFLAGS = @SHLIB_CFLAGS@ --SHLIB_LD = @SHLIB_LD@ --SHLIB_LDFLAGS = @SHLIB_LDFLAGS@ --SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ --STLIB_LD = @STLIB_LD@ --TCL_BIN_DIR = @TCL_BIN_DIR@ --TCL_DEFS = @TCL_DEFS@ --TCL_EXTRA_CFLAGS = @TCL_EXTRA_CFLAGS@ --TCL_LD_FLAGS = @TCL_LD_FLAGS@ --TCL_LIBS = @TCL_LIBS@ --TCL_SHLIB_LD_LIBS = @TCL_SHLIB_LD_LIBS@ --TCL_SRC_DIR = @TCL_SRC_DIR@ --TCL_DBGX = @TCL_DBGX@ --TCL_STUB_LIB_FILE = @TCL_STUB_LIB_FILE@ --TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@ --TCL_TOOL_DIR_NATIVE = @TCL_TOOL_DIR_NATIVE@ --TCL_TOP_DIR_NATIVE = @TCL_TOP_DIR_NATIVE@ --TCL_UNIX_DIR_NATIVE = @TCL_UNIX_DIR_NATIVE@ --TCL_WIN_DIR_NATIVE = @TCL_WIN_DIR_NATIVE@ --INCLUDE_DIR_NATIVE = @INCLUDE_DIR_NATIVE@ --TCL_BMAP_DIR_NATIVE = @TCL_BMAP_DIR_NATIVE@ --TCL_PLATFORM_DIR_NATIVE = @TCL_PLATFORM_DIR_NATIVE@ --TCL_GENERIC_DIR_NATIVE = @TCL_GENERIC_DIR_NATIVE@ --TCLSH_PROG = @TCLSH_PROG@ --ITCL_INCLUDES = @ITCL_INCLUDES@ -- --AUTOCONF = autoconf -- --LDFLAGS = $(LDFLAGS_DEFAULT) -- --INCLUDES = @TCL_INCLUDES@ @ITCL_INCLUDES@ -- --EXTRA_CFLAGS = $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) $(NO_DEPRECATED_FLAGS) $(TCL_EXTRA_CFLAGS) -- --DEFS = @DEFS@ $(EXTRA_CFLAGS) -DITCL_LIBRARY=\"$(ITCL_LIBRARY)\" -- --ACLOCAL_M4 = $(srcdir)/aclocal.m4 --mkinstalldirs = $(SHELL) $(top_srcdir)/../config/mkinstalldirs -- --CPPFLAGS = @CPPFLAGS@ --LIBS = @LIBS@ --AR = ar --CFLAGS = @CFLAGS@ --COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) --CCLD = $(CC) --LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -+CPPFLAGS = @CPPFLAGS@ -+LIBS = @PKG_LIBS@ @LIBS@ -+AR = @AR@ -+CFLAGS = @CFLAGS@ -+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) - - #======================================================================== - # Start of user-definable TARGETS section -@@ -270,16 +184,11 @@ - #======================================================================== - - install-libraries: libraries -- $(mkinstalldirs) $(includedir) -- @echo "Installing header files in $(includedir)" -- @for i in $(GENERIC_HDRS) ; do \ -- echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(DESTDIR)$(includedir) ; \ -- done; -- @echo "Installing library files in $(ITCL_LIBRARY)" -- @for i in $(srcdir)/library/*.tcl ; do \ -- echo "Installing $$i" ; \ -- $(INSTALL_DATA) $$i $(DESTDIR)$(ITCL_LIBRARY) ; \ -+ @mkdir -p $(DESTDIR)$(includedir) -+ @echo "Installing header files in $(DESTDIR)$(includedir)" -+ @list='$(PKG_HEADERS)'; for i in $$list; do \ -+ echo "Installing $(srcdir)/$$i" ; \ -+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir) ; \ - done; - - #======================================================================== -@@ -288,105 +197,113 @@ - #======================================================================== - - install-doc: doc -- $(mkinstalldirs) $(DESTDIR)$(mandir)/mann -- @echo "Installing man pages in $(mandir)" -- @cd $(srcdir)/doc; for i in *.n; \ -- do \ -+ @mkdir -p $(DESTDIR)$(mandir)/mann -+ @echo "Installing man pages in $(DESTDIR)$(mandir)" -+ @cd $(srcdir)/doc; for i in *.n; do \ - echo "Installing $$i"; \ -+ rm -f $(DESTDIR)$(mandir)/mann/`basename $$i`; \ - sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ - $$i > $(DESTDIR)$(mandir)/mann/$$i; \ - chmod 444 $(DESTDIR)$(mandir)/mann/$$i; \ -- done -+ done -+ -+test: binaries libraries -+ $(TCLSH) `@CYGPATH@ $(srcdir)/tests/all.tcl` -load "package require Itcl" $(TESTFLAGS) - --test: $(TCLSH_PROG) -- $(TCLSH_PROG) `@CYGPATH@ $(srcdir)/tests/all.tcl` \ -- -exedir `@CYGPATH@ $(bindir)` $(TESTFLAGS) -+shell: binaries libraries -+ @$(TCLSH) $(SCRIPT) -+ -+gdb: -+ $(TCLSH_ENV) gdb $(TCLSH_PROG) $(SCRIPT) - - depend: - - #======================================================================== --# Enumerate the names of the object files included in this package. --# These objects are created and linked into the final library. In --# most cases these object files will correspond to the source files --# above. --# --# $(exampleA_LIB_FILE) should be listed as part of the BINARIES variable --# at the top of the Makefile. That will ensure that this target is built --# when you run "make binaries". -+# $(PKG_LIB_FILE) should be listed as part of the BINARIES variable -+# mentioned above. That will ensure that this target is built when you -+# run "make binaries". - # --# You shouldn't need to modify this target, except to change the package --# name from "exampleA" to your package's name. -+# The $(PKG_OBJECTS) objects are created and linked into the final -+# library. In most cases these object files will correspond to the -+# source files above. - #======================================================================== - --$(itcl_LIB_FILE): $(itcl_OBJECTS) -- -rm -f $(itcl_LIB_FILE) -- @MAKE_LIB@ -- @POST_MAKE_LIB@ -- --$(itclstub_LIB_FILE): $(itclstub_OBJECTS) -- -rm -f $(itclstub_LIB_FILE) -- @MAKE_STATIC_LIB@ -- @POST_MAKE_STATIC_LIB@ -+$(PKG_LIB_FILE): $(PKG_OBJECTS) -+ -rm -f $(PKG_LIB_FILE) -+ ${MAKE_LIB} -+ $(RANLIB_LIB) $(PKG_LIB_FILE) -+ -+$(PKG_STUB_LIB_FILE): $(PKG_STUB_OBJECTS) -+ -rm -f $(PKG_STUB_LIB_FILE) -+ ${MAKE_STUB_LIB} -+ $(RANLIB_STUB) $(PKG_STUB_LIB_FILE) - - #======================================================================== - # We need to enumerate the list of .c to .o lines here. --# Unfortunately, there does not seem to be any other way to do this --# in a Makefile-independent way. We can't use VPATH because it picks up --# object files that may be located in the source directory. - # - # In the following lines, $(srcdir) refers to the toplevel directory - # containing your extension. If your sources are in a subdirectory, - # you will have to modify the paths to reflect this: - # --# exampleA.$(OBJEXT): $(srcdir)/src/win/exampleA.c --# $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/win/exampleA.c` -o $@ --#======================================================================== -- --dllEntryPoint.$(OBJEXT): $(WIN_DIR)/dllEntryPoint.c -- $(COMPILE) -c `@CYGPATH@ $(WIN_DIR)/dllEntryPoint.c` -o $@ -- --tclAppInit.$(OBJEXT): $(PLATFORM_DIR)/tclAppInit.c -- $(COMPILE) -c `@CYGPATH@ $(PLATFORM_DIR)/tclAppInit.c` -o $@ -- --itclStubInit.$(OBJEXT): $(GENERIC_DIR)/itclStubInit.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itclStubInit.c` -o $@ -- --itclStubLib.$(OBJEXT): $(GENERIC_DIR)/itclStubLib.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itclStubLib.c` -o $@ -- --itcl_bicmds.$(OBJEXT): $(GENERIC_DIR)/itcl_bicmds.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_bicmds.c` -o $@ -- --itcl_class.$(OBJEXT): $(GENERIC_DIR)/itcl_class.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_class.c` -o $@ -- --itcl_cmds.$(OBJEXT): $(GENERIC_DIR)/itcl_cmds.c Makefile -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_cmds.c` -o $@ -- --itcl_ensemble.$(OBJEXT): $(GENERIC_DIR)/itcl_ensemble.c Makefile -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_ensemble.c` -o $@ -- --itcl_linkage.$(OBJEXT): $(GENERIC_DIR)/itcl_linkage.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_linkage.c` -o $@ -- --itcl_methods.$(OBJEXT): $(GENERIC_DIR)/itcl_methods.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_methods.c` -o $@ -- --itcl_migrate.$(OBJEXT): $(GENERIC_DIR)/itcl_migrate.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_migrate.c` -o $@ -- --itcl_objects.$(OBJEXT): $(GENERIC_DIR)/itcl_objects.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_objects.c` -o $@ -- --itcl_obsolete.$(OBJEXT): $(GENERIC_DIR)/itcl_obsolete.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_obsolete.c` -o $@ -- --itcl_parse.$(OBJEXT): $(GENERIC_DIR)/itcl_parse.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_parse.c` -o $@ -+# exampleA.$(OBJEXT): $(srcdir)/generic/exampleA.c -+# $(COMPILE) -c `@CYGPATH@ $(srcdir)/generic/exampleA.c` -o $@ -+# -+# Setting the VPATH variable to a list of paths will cause the makefile -+# to look into these paths when resolving .c to .obj dependencies. -+# As necessary, add $(srcdir):$(srcdir)/compat:.... -+#======================================================================== -+ -+VPATH = $(srcdir)/unix:$(srcdir)/generic:$(srcdir)/win -+ -+.c.$(OBJEXT): -+ $(COMPILE) -c `@CYGPATH@ $<` -o $@ -+ -+#======================================================================== -+# Distribution creation -+# You may need to tweak this target to make it work correctly. -+#======================================================================== -+ -+#COMPRESS = tar cvf $(PKG_DIR).tar $(PKG_DIR); compress $(PKG_DIR).tar -+COMPRESS = gtar zcvf $(PKG_DIR).tar.gz $(PKG_DIR) -+DIST_ROOT = /tmp/dist -+DIST_DIR = $(DIST_ROOT)/$(PKG_DIR) -+ -+dist-clean: -+ rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.* -+ -+dist: dist-clean doc -+ mkdir -p $(DIST_DIR) -+ cp -p $(srcdir)/license* $(srcdir)/aclocal.m4 $(srcdir)/configure \ -+ $(srcdir)/*.in $(DIST_DIR)/ -+ chmod 664 $(DIST_DIR)/Makefile.in $(DIST_DIR)/aclocal.m4 -+ chmod 775 $(DIST_DIR)/configure $(DIST_DIR)/configure.in -+ -+ mkdir $(DIST_DIR)/tclconfig -+ cp $(srcdir)/tclconfig/install-sh $(srcdir)/tclconfig/tcl.m4 \ -+ $(DIST_DIR)/tclconfig/ -+ chmod 664 $(DIST_DIR)/tclconfig/tcl.m4 -+ chmod +x $(DIST_DIR)/tclconfig/install-sh -+ -+ list='doc generic library tests tests/old win win/rc'; \ -+ for p in $$list; do \ -+ if test -d $(srcdir)/$$p ; then \ -+ mkdir $(DIST_DIR)/$$p; \ -+ for q in $(srcdir)/$$p/*; do \ -+ if test -f $$q ; then \ -+ cp -p $$q $(DIST_DIR)/$$p/; \ -+ fi; \ -+ done; \ -+ fi; \ -+ done - --itcl_util.$(OBJEXT): $(GENERIC_DIR)/itcl_util.c -- $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_util.c` -o $@ -+ list='CHANGES ChangeLog INCOMPATIBLE README TODO'; \ -+ for p in $$list; do \ -+ if test -f $(srcdir)/../$$p ; then \ -+ cp -p $(srcdir)/../$$p $(DIST_DIR)/; \ -+ fi; \ -+ done - -+ (cd $(DIST_ROOT); $(COMPRESS);) - - #======================================================================== - # End of user-definable section -@@ -405,9 +322,8 @@ - - distclean: clean - -rm -f *.tab.c -- -rm -f Makefile $(CONFIG_CLEAN_FILES) -- -rm -f config.cache config.log stamp-h stamp-h[0-9]* -- -rm -f config.status itclConfig.sh pkgIndex.tcl -+ -rm -f $(CONFIG_CLEAN_FILES) -+ -rm -f config.cache config.log config.status - - #======================================================================== - # Install binary object libraries. On Windows this includes both .dll and -@@ -421,31 +337,39 @@ - # You should not have to modify this target. - #======================================================================== - --install-lib-binaries: installdirs -+install-lib-binaries: -+ @mkdir -p $(DESTDIR)$(pkglibdir) - @list='$(lib_BINARIES)'; for p in $$list; do \ - if test -f $$p; then \ -+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \ -+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \ -+ stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \ -+ if test "x$$stub" = "xstub"; then \ -+ echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \ -+ $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \ -+ else \ -+ echo " $(RANLIB_LIB) $(DESTDIR)$(pkglibdir)/$$p"; \ -+ $(RANLIB_LIB) $(DESTDIR)$(pkglibdir)/$$p; \ -+ fi; \ - ext=`echo $$p|sed -e "s/.*\.//"`; \ - if test "x$$ext" = "xdll"; then \ -- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \ -- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \ - lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ - if test -f $$lib; then \ -- echo " $(INSTALL_PROGRAM) $$lib $(DESTDIR)$(libdir)/$$lib"; \ -- $(INSTALL_PROGRAM) $$lib $(DESTDIR)$(libdir)/$$lib; \ -+ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \ -+ $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \ - fi; \ -- else \ -- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \ -- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \ - fi; \ -- else :; fi; \ -+ fi; \ - done -- @list='$(lib_BINARIES)'; for p in $$list; do \ -- if test -f $$p; then \ -- echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \ -- $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ -- else :; fi; \ -+ @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ -+ if test -f $(srcdir)/$$p; then \ -+ destp=`basename $$p`; \ -+ echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \ -+ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \ -+ fi; \ - done - $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir) -+ $(INSTALL_DATA) itclConfig.sh $(DESTDIR)$(libdir) - - #======================================================================== - # Install binary executables (e.g. .exe files) -@@ -453,40 +377,34 @@ - # You should not have to modify this target. - #======================================================================== - --install-bin-binaries: installdirs -+install-bin-binaries: -+ @mkdir -p $(DESTDIR)$(bindir) - @list='$(bin_BINARIES)'; for p in $$list; do \ - if test -f $$p; then \ -- echo " $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p"; \ -- $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p; \ -- else :; fi; \ -+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \ -+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \ -+ fi; \ - done - --.SUFFIXES: .c .o .obj -+.SUFFIXES: .c .$(OBJEXT) - - Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status - --#config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) --# $(SHELL) ./config.status --recheck --#$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) --# cd $(srcdir) && $(AUTOCONF) -- -- - uninstall-binaries: -- @$(NORMAL_UNINSTALL) -- list='$(BINARIES)'; for p in $$list; do \ -- rm -f $(DESTDIR)$(libdir)/$$p; \ -+ list='$(lib_BINARIES)'; for p in $$list; do \ -+ rm -f $(DESTDIR)$(pkglibdir)/$$p; \ -+ done -+ list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ -+ p=`basename $$p`; \ -+ rm -f $(DESTDIR)$(pkglibdir)/$$p; \ -+ done -+ list='$(bin_BINARIES)'; for p in $$list; do \ -+ rm -f $(DESTDIR)$(bindir)/$$p; \ - done - --installdirs: -- $(mkinstalldirs) $(DESTDIR)$(libdir) -- $(mkinstalldirs) $(DESTDIR)$(bindir) -- $(mkinstalldirs) $(DESTDIR)$(pkglibdir) -- $(mkinstalldirs) $(DESTDIR)$(ITCL_LIBRARY) -- --.PHONY: all binaries clean depend distclean doc install installdirs \ --libraries test -+.PHONY: all binaries clean depend distclean doc install libraries test - - # 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. -diff -Naur insight-6.8.orig/itcl/itcl/pkgIndex.tcl.in insight-6.8.new/itcl/itcl/pkgIndex.tcl.in ---- insight-6.8.orig/itcl/itcl/pkgIndex.tcl.in 2003-01-21 21:40:26.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/pkgIndex.tcl.in 2008-08-18 18:56:44.000000000 +0200 -@@ -1,3 +1,3 @@ - # Tcl package index file, version 1.0 - --package ifneeded Itcl @VERSION@ [list load [file join $dir @RELPATH@ "@itcl_LIB_FILE@"] Itcl] -+package ifneeded Itcl @PACKAGE_VERSION@ [list load [file join $dir "@PKG_LIB_FILE@"] Itcl] -diff -Naur insight-6.8.orig/itcl/itcl/README insight-6.8.new/itcl/itcl/README ---- insight-6.8.orig/itcl/itcl/README 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/README 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,311 @@ -+------------------------------------------------------------------------ -+ [incr Tcl] - version 3.3 for Tcl/Tk 8.0.3 and beyond -+------------------------------------------------------------------------ -+ This is a bug-fix release in the itcl3.x series. -+ -+ As much as possible, I've tried to make itcl3.x backward-compatible -+ with earlier releases. The class definition syntax has not changed -+ at all from itcl2.2, and the old itcl1.x syntax is still supported. -+ But you'll notice changes related to the new namespace mechanism in -+ Tcl 8.0. For information on incompatibilities and porting to itcl3.x, -+ read the INCOMPATIBLE file in this directory, or check out the itcl -+ web site: -+ -+ http://incrtcl.sourceforge.net/ -+ http://www.tcltk.com/itcl/ -+ -+ Many people through the years have helped me with [incr Tcl] -+ development, and I thank them for their contributions. Please -+ read the acknowledgements section below. -+ -+ Send comments or suggestions to the [incr Tcl] mailing list -+ (itcl@scriptics.com) or directly to me (mmc@cadence.com). -+ If you want to subscribe to the mailing list, send a message -+ with the subject "subscribe" to "itcl-request@tcltk.com". -+ -+======================================================================== -+ Copyright (c) 1993-1998 Lucent Technologies, Inc. -+ Copyright (c) 1998-2000 Cadence Design Systems, Inc. -+======================================================================== -+ -+ OVERVIEW -+------------------------------------------------------------------------ -+ - What is [incr Tcl]? -+ - Getting started -+ - Installation -+ - Integrating [incr Tcl] with other extensions -+ - Acknowledgements -+------------------------------------------------------------------------ -+ -+ -+ What is [incr Tcl]? -+------------------------------------------------------------------------ -+ [incr Tcl] is an object-oriented extension of the Tcl language. It -+ was created to support more structured programming in Tcl. Tcl scripts -+ that grow beyond a few thousand lines become extremely difficult to -+ maintain. This is because the building blocks of vanilla Tcl are -+ procedures and global variables, and all of these building blocks -+ must reside in a single global namespace. There is no support for -+ protection or encapsulation. -+ -+ [incr Tcl] introduces the notion of objects. Each object is a bag -+ of data with a set of procedures or "methods" that are used to -+ manipulate it. Objects are organized into "classes" with identical -+ characteristics, and classes can inherit functionality from one -+ another. This object-oriented paradigm adds another level of -+ organization on top of the basic variable/procedure elements, and -+ the resulting code is easier to understand and maintain. -+ -+ Among other things, [incr Tcl] can be used to create new widgets that -+ look and work like the usual Tk widgets, but are written entirely at -+ the Tcl language level (C code is optional). These "mega-widgets" -+ can be created using [incr Tk], a set of base classes which provide -+ the core mega-widget functionality. [incr Widgets] is a set of -+ high-level mega-widgets built using [incr Tk]. It has more than -+ 50 widget classes, and can be used right out of the box to create: -+ -+ - fileselectiondialog -+ - tabnotebook -+ - panedwindow -+ - scrolledhtml -+ - combobox -+ - optionmenu -+ - scrolledlistbox -+ - scrolledframe -+ - messagedialog -+ - and many others... -+ -+ Classes and/or related procedures can also be encapsulated in their -+ own "namespace". A namespace is a collection of commands, variables, -+ classes and other namespaces that is set apart from the usual global -+ scope. Elements within a namespace can be "private" or "protected", -+ so that access to them is restricted. An "import" command allows all -+ of the elements from one namespace to be integrated into another. -+ -+ Extension writers will immediately see the benefit of namespaces. -+ With vanilla Tcl, each extension must add its commands and variables -+ at the global scope. Extension writers are encouraged to add a unique -+ prefix to all of the names in their package, to avoid naming collisions. -+ Extensions can now sit in their own namespace of commands and variables, -+ and sensitive elements can be protected from accidental access. For -+ example, the current release of [incr Tcl] has a namespace "itcl" -+ for object-oriented support, a namespace "itk" for mega-widget -+ support, and a namespace "iwidgets" for the [incr Widgets] package. -+ Each of these namespaces has its own collection of commands and -+ variables. Developers can then pick and choose among the extensions, -+ and integrate the parts that they need for their application by -+ importing various namespaces at the global scope. -+ -+ -+ Getting started -+------------------------------------------------------------------------ -+ If you're just getting started with [incr Tcl], check out these -+ useful resources: -+ -+ - FREE TUTORIAL on our web site: http://www.tcltk.com/itcl/ -+ -+ - BOOK: "[incr Tcl/Tk] from the Ground Up," by Chad Smith -+ (ISBN 0-07-212106-8) -+ -+ - BOOK: "Tcl/Tk Tools," edited by Mark Harrison -+ (ISBN 1-56592-218-2) -+ -+ Also, run the "catalog" demo to get an overview of the [incr Widgets] -+ package. On Windows and Macintosh systems, this is installed as one -+ of the executables. On Unix systems, this is installed in the -+ "lib/itcl/iwidgets3.0.0/demos" library directory. -+ -+ The file "iwidgets3.0.0/doc/iwidgets.ps" contains a tutorial -+ introduction to the [incr Widgets] package. The mega-widget classes -+ in [incr Widgets] show off most of the functionality in this release. -+ You can use them as a pattern to create your own widget classes. -+ -+ If you're a seasoned itcl professional, check the CHANGES file for a -+ summary of recent enhancements. Consult the man pages for detailed -+ information on particular commands. -+ -+ Check out our web site for the latest news: -+ -+ http://incrtcl.sourceforge.net/ -+ -+ Installation on Unix Systems -+------------------------------------------------------------------------ -+ 1) Obtain this distribution from an archive site like this: -+ -+ http://incrtcl.sourceforge.net/ -+ http://sourceforge.net/project/showfiles.php?group_id=13244 -+ -+ 2) Uncompress and untar the distribution: -+ -+ gunzip itcl.tar.gz -+ tar xvf itcl.tar -+ -+ 3) Run the configuration script: -+ -+ cd itcl -+ ./configure -+ -+ or, for systems that don't recognize "#!" in shell scripts: -+ -+ cd itcl -+ /bin/sh ./configure -+ -+ The "configure" script finds the appropriate compiler flags and -+ generates new Makefiles from template files (Makefile.in). -+ -+ By default, the configuration script will set things up so -+ that everything is installed in "/usr/local". You can change -+ this by specifying a different "prefix" in the "configure" command: -+ -+ ./configure --prefix=/your/install/path -+ -+ If your Tcl installation is sitting somewhere other than right -+ next to this package, you may have to tell configure where to -+ find it: -+ -+ ./configure --with-tcl=/usr/local/tcl/lib -+ -+ If you want to debug, you can add this option as well: -+ -+ ./configure --enable-symbols -+ -+ 4) Build the libraries and the executables. From the toplevel -+ directory type: -+ -+ make all -+ -+ 5) Install the libraries, executables, man pages and script files. -+ From the toplevel directory type: -+ -+ make install -+ -+ 6) Use the final product: -+ -+ $ tclsh -+ % package require Itcl -+ % itcl::class Foo { method testing {} { return "testing!" } } -+ -+ If you don't like the itcl:: prefix, you can import the itcl -+ commands into the global namespace: -+ -+ % namespace import -force itcl::* -+ % class Foo { ... } -+ -+ Note that you'll find the same behavior with [incr Widgets]: -+ -+ $ wish -+ % package require Iwidgets -+ % iwidgets::optionmenu .om -+ % namespace import -force iwidgets::* -+ % optionmenu .om -+ -+ -+ Installation on Windows -+------------------------------------------------------------------------ -+ Follow the usual TEA instructions for building under Windows. -+ Requires Cygwin and Visual C++ 6.0. -+ -+ -+ Installation on Macintosh Systems -+------------------------------------------------------------------------ -+ Many thanks to Jim Ingham for putting up Macintosh binaries for -+ various releases. Check out http://www.tcltk.com/itcl for downloads. -+ -+ -+ Integrating [incr Tcl] with other extensions -+------------------------------------------------------------------------ -+ [incr Tcl] is now a pure extension to Tcl/Tk. Therefore, if you -+ build the Tcl/Tk core and this package with the "--enable-shared" -+ option, you can load [incr Tcl] into a vanilla tclsh, as follows: -+ -+ package require Itcl -+ -+ Similarly, you can load [incr Tcl] along with the [incr Tk] mega-widget -+ facility into a vanilla wish, as follows: -+ -+ package require Itk -+ -+ You can load [incr Tcl], [incr Tk], and the [incr Widgets] package -+ like this: -+ -+ package require Iwidgets -+ -+ If you require the earlier release of [incr Widgets] for some reason, -+ you can specify the version number: -+ -+ package require Iwidgets 2.2 -+ -+ Other packages should plug-and-play in the same fashion. -+ -+ >> NOTE: If you have any trouble with dynamic loading on UNIX -+ >> systems, you may need to set your LD_LIBRARY_PATH environment -+ >> variable to include the "lib" directory for your Tcl/Tk -+ >> installation. For example: -+ >> -+ >> LD_LIBRARY_PATH="/usr/local/tcl/lib:$LD_LIBRARY_PATH" -+ >> export LD_LIBRARY_PATH -+ -+ -+ Acknowledgements -+------------------------------------------------------------------------ -+ Thanks to Chad Smith for writing an excellent, comprehensive -+ book "[incr Tcl/Tk] from the Ground Up," for many helpful bug -+ reports, and for nudging me along to fix things. -+ -+ Thanks to Matt Newman for providing the Tcl-only "tcl++" package -+ that helped so many people move forward while waiting for the -+ itcl3.0 release. -+ -+ Thanks to John Ousterhout and the Scriptics team for bundling this -+ package with their TclPro product. It's gratifying to see [incr Tcl] -+ accepted as a mainstream product. -+ -+ Thanks to Mark Ulferts, Sue Yockey, John Sigler, Bill Scott, Alfredo -+ Jahn, Bret Schuhmacher, Tako Schotanus and Kris Raney for building -+ the [incr Widgets] package. With a sketchy overview and a crappy -+ prototype of [incr Tk], they managed to build a nice set of mega-widgets. -+ Their initial designs helped me smooth out the rough spots in [incr Tk]. -+ Thanks especially to Mark Ulferts for keeping things up over the past -+ few years, and for streamlining the package for itcl3.0. -+ -+ Thanks to Jan Nijtmans, Karel Zuiderveld, and Vince Darley for helping -+ to keep up with Tcl/Tk releases, and for supporting the "plus" and -+ "dash" patches under [incr Tcl]. -+ -+ Thanks to Forest Rouse and ICEM CFD Engineering for integrating -+ [incr Tcl] into their Tcl/Tk compiler. This is a large undertaking, -+ and they have done an excellent job. -+ -+ Thanks to Alfredo Jahn and Bret Schuhmacher at WebNet for helping -+ to create the [incr Tcl] web site, and for maintaining the -+ [incr Tcl] mailing list for many years. -+ -+ Thanks to extension writers like Mark Diekhans (tclX) and Ioi Lam (Tix) -+ for making their packages compatible with [incr Tcl]. -+ -+ Thanks to George Howlett for teaching me how namespaces should really -+ work. He has been a constant source of inspiration, and has kept -+ a careful watch against many bad ideas. Jim Ingham fleshed out the -+ notion of explicit scoping, added many nice features to [incr Tk], -+ and has helped tremendously with porting. Lee Bernhard worked on -+ distributed systems with Iclient/Iserver, and also helped with porting. -+ Bill Scott, with a steady stream of bug reports, helped me understand -+ the questions that a typical user might have. He forced me to reinvent -+ the paradigm on more than one occasion. -+ -+ Thanks to all of the alpha-testers that helped me polish this release. -+ -+ Thanks to Mark Harrison for his enthusiasm and support. Due in -+ large part to his evangelism, I have been able to make [incr Tcl] -+ development a mainstream activity. -+ -+ And many thanks to my wife Maria and my children Maxwell and Katie -+ for putting up with all of this. -+ -+--Michael -+. . . . . . . . . . . . . . . . . ---_----------- -+ . . . . . . . . . | c a d e n c e | -+ Michael McLennan . --------------- -+ mmc@cadence.com . Cadence Design Systems, Inc. -+ phone: 610-398-6348 . 7535 Windsor Dr. Suite A-200 -+ fax: 610-530-7985 . Allentown, PA 18195 -diff -Naur insight-6.8.orig/itcl/itcl/tclconfig/install-sh insight-6.8.new/itcl/itcl/tclconfig/install-sh ---- insight-6.8.orig/itcl/itcl/tclconfig/install-sh 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tclconfig/install-sh 2008-08-18 18:56:44.000000000 +0200 -@@ -0,0 +1,119 @@ -+#!/bin/sh -+ -+# -+# install - install a program, script, or datafile -+# This comes from X11R5; it is not part of GNU. -+# -+# $XConsortium: install.sh,v 1.2 89/12/18 14:47:22 jim Exp $ -+# -+# This script is compatible with the BSD install script, but was written -+# from scratch. -+# -+ -+ -+# 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}" -+ -+instcmd="$mvprog" -+chmodcmd="" -+chowncmd="" -+chgrpcmd="" -+stripcmd="" -+rmcmd="$rmprog -f" -+mvcmd="$mvprog" -+src="" -+dst="" -+ -+while [ x"$1" != x ]; do -+ case $1 in -+ -c) instcmd="$cpprog" -+ shift -+ continue;; -+ -+ -m) chmodcmd="$chmodprog $2" -+ shift -+ shift -+ continue;; -+ -+ -o) chowncmd="$chownprog $2" -+ shift -+ shift -+ continue;; -+ -+ -g) chgrpcmd="$chgrpprog $2" -+ shift -+ shift -+ continue;; -+ -+ -s) stripcmd="$stripprog" -+ shift -+ continue;; -+ -+ *) if [ x"$src" = x ] -+ then -+ src=$1 -+ else -+ dst=$1 -+ fi -+ shift -+ continue;; -+ esac -+done -+ -+if [ x"$src" = x ] -+then -+ echo "install: no input file specified" -+ exit 1 -+fi -+ -+if [ x"$dst" = x ] -+then -+ echo "install: no destination specified" -+ exit 1 -+fi -+ -+ -+# If destination is a directory, append the input filename; if your system -+# does not like double slashes in filenames, you may need to add some logic -+ -+if [ -d $dst ] -+then -+ dst="$dst"/`basename $src` -+fi -+ -+# Make a temp file name in the proper directory. -+ -+dstdir=`dirname $dst` -+dsttmp=$dstdir/#inst.$$# -+ -+# Move or copy the file name to the temp name -+ -+$doit $instcmd $src $dsttmp -+ -+# and set any options; do chmod last to preserve setuid bits -+ -+if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; fi -+if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; fi -+if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; fi -+if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; fi -+ -+# Now rename the file to the real destination. -+ -+$doit $rmcmd $dst -+$doit $mvcmd $dsttmp $dst -+ -+ -+exit 0 -diff -Naur insight-6.8.orig/itcl/itcl/tclconfig/tcl.m4 insight-6.8.new/itcl/itcl/tclconfig/tcl.m4 ---- insight-6.8.orig/itcl/itcl/tclconfig/tcl.m4 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tclconfig/tcl.m4 2008-08-18 18:56:44.000000000 +0200 -@@ -0,0 +1,3847 @@ -+# tcl.m4 -- -+# -+# This file provides a set of autoconf macros to help TEA-enable -+# a Tcl extension. -+# -+# Copyright (c) 1999-2000 Ajuba Solutions. -+# Copyright (c) 2002-2005 ActiveState Corporation. -+# -+# See the file "license.terms" for information on usage and redistribution -+# of this file, and for a DISCLAIMER OF ALL WARRANTIES. -+# -+# RCS: @(#) $Id: tcl.m4,v 1.6 2005/03/25 19:40:47 dgp Exp $ -+ -+AC_PREREQ(2.50) -+ -+#------------------------------------------------------------------------ -+# TEA_PATH_TCLCONFIG -- -+# -+# Locate the tclConfig.sh file and perform a sanity check on -+# the Tcl compile flags -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --with-tcl=... -+# -+# Defines the following vars: -+# TCL_BIN_DIR Full path to the directory containing -+# the tclConfig.sh file -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PATH_TCLCONFIG, [ -+ dnl Make sure we are initialized -+ AC_REQUIRE([TEA_INIT]) -+ # -+ # Ok, lets find the tcl configuration -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-tcl -+ # -+ -+ if test x"${no_tcl}" = x ; then -+ # we reset no_tcl in case something fails here -+ no_tcl=true -+ AC_ARG_WITH(tcl, [ --with-tcl directory containing tcl configuration (tclConfig.sh)], with_tclconfig=${withval}) -+ AC_MSG_CHECKING([for Tcl configuration]) -+ AC_CACHE_VAL(ac_cv_c_tclconfig,[ -+ -+ # For platform-specific directories -+ case $TEA_PLATFORM in -+ windows) platform="win" ;; -+ unix) platform="unix" ;; -+ *) AC_MSG_ERROR([unknown TEA_PLATFORM: \"$TEA_PLATFORM\"]) -+ esac -+ -+ # First check to see if --with-tcl was specified. -+ if test x"${with_tclconfig}" != x ; then -+ case ${with_tclconfig} in -+ */tclConfig.sh ) -+ if test -f ${with_tclconfig}; then -+ AC_MSG_WARN([--with-tcl argument should refer to directory containing tclConfig.sh, not to tclConfig.sh itself]) -+ with_tclconfig=`echo ${with_tclconfig} | sed 's!/tclConfig\.sh$!!'` -+ fi ;; -+ esac -+ if test -f "${with_tclconfig}/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` -+ else -+ AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh]) -+ fi -+ fi -+ -+ # then check for a private Tcl installation -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in \ -+ ../tcl \ -+ `ls -dr ../tcl[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../tcl[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../tcl[[8-9]].[[0-9]]* 2>/dev/null` \ -+ ../../tcl \ -+ `ls -dr ../../tcl[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../tcl[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../tcl[[8-9]].[[0-9]]* 2>/dev/null` \ -+ ../../../tcl \ -+ `ls -dr ../../../tcl[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../../tcl[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../../tcl[[8-9]].[[0-9]]* 2>/dev/null` ; do -+ if test -f "$i/$platform/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ -+ # check in a few common install locations -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in `ls -d ${exec_prefix}/lib 2>/dev/null` \ -+ `ls -d ${prefix}/lib 2>/dev/null` \ -+ `ls -d /usr/local/lib 2>/dev/null` \ -+ `ls -d /usr/contrib/lib 2>/dev/null` \ -+ `ls -d /usr/lib 2>/dev/null` \ -+ ; do -+ if test -f "$i/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ -+ # check in a few other private locations -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ for i in \ -+ ${srcdir}/../tcl \ -+ `ls -dr ${srcdir}/../tcl[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tcl[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tcl[[8-9]].[[0-9]]* 2>/dev/null` ; do -+ -+ if test -f "$i/$platform/tclConfig.sh" ; then -+ ac_cv_c_tclconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ ]) -+ -+ if test x"${ac_cv_c_tclconfig}" = x ; then -+ TCL_BIN_DIR="# no Tcl configs found" -+ AC_MSG_WARN("Cannot find Tcl configuration definitions") -+ exit 0 -+ else -+ no_tcl= -+ TCL_BIN_DIR=${ac_cv_c_tclconfig} -+ AC_MSG_RESULT([found $TCL_BIN_DIR/tclConfig.sh]) -+ fi -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PATH_TKCONFIG -- -+# -+# Locate the tkConfig.sh file -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --with-tk=... -+# -+# Defines the following vars: -+# TK_BIN_DIR Full path to the directory containing -+# the tkConfig.sh file -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PATH_TKCONFIG, [ -+ # -+ # Ok, lets find the tk configuration -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-tk -+ # -+ -+ if test x"${no_tk}" = x ; then -+ # we reset no_tk in case something fails here -+ no_tk=true -+ AC_ARG_WITH(tk, [ --with-tk directory containing tk configuration (tkConfig.sh)], with_tkconfig=${withval}) -+ AC_MSG_CHECKING([for Tk configuration]) -+ AC_CACHE_VAL(ac_cv_c_tkconfig,[ -+ -+ # For platform-specific directories -+ case $TEA_PLATFORM in -+ windows) platform="win" ;; -+ unix) platform="unix" ;; -+ *) AC_MSG_ERROR([unknown TEA_PLATFORM: \"$TEA_PLATFORM\"]) -+ esac -+ -+ # First check to see if --with-tkconfig was specified. -+ if test x"${with_tkconfig}" != x ; then -+ case ${with_tkconfig} in -+ */tkConfig.sh ) -+ if test -f ${with_tkconfig}; then -+ AC_MSG_WARN([--with-tk argument should refer to directory containing tkConfig.sh, not to tkConfig.sh itself]) -+ with_tkconfig=`echo ${with_tkconfig} | sed 's!/tkConfig\.sh$!!'` -+ fi ;; -+ esac -+ if test -f "${with_tkconfig}/tkConfig.sh" ; then -+ ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)` -+ else -+ AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh]) -+ fi -+ fi -+ -+ # then check for a private Tk library -+ if test x"${ac_cv_c_tkconfig}" = x ; then -+ for i in \ -+ ../tk \ -+ `ls -dr ../tk[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../tk[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../tk[[8-9]].[[0-9]]* 2>/dev/null` \ -+ ../../tk \ -+ `ls -dr ../../tk[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../tk[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../tk[[8-9]].[[0-9]]* 2>/dev/null` \ -+ ../../../tk \ -+ `ls -dr ../../../tk[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../../tk[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../../tk[[8-9]].[[0-9]]* 2>/dev/null` ; do -+ if test -f "$i/$platform/tkConfig.sh" ; then -+ ac_cv_c_tkconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ # check in a few common install locations -+ if test x"${ac_cv_c_tkconfig}" = x ; then -+ for i in `ls -d ${exec_prefix}/lib 2>/dev/null` \ -+ `ls -d ${prefix}/lib 2>/dev/null` \ -+ `ls -d /usr/local/lib 2>/dev/null` \ -+ `ls -d /usr/contrib/lib 2>/dev/null` \ -+ `ls -d /usr/lib 2>/dev/null` \ -+ ; do -+ if test -f "$i/tkConfig.sh" ; then -+ ac_cv_c_tkconfig=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ # check in a few other private locations -+ if test x"${ac_cv_c_tkconfig}" = x ; then -+ for i in \ -+ ${srcdir}/../tk \ -+ `ls -dr ${srcdir}/../tk[[8-9]].[[0-9]].[[0-9]]* 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tk[[8-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ${srcdir}/../tk[[8-9]].[[0-9]]* 2>/dev/null` ; do -+ if test -f "$i/$platform/tkConfig.sh" ; then -+ ac_cv_c_tkconfig=`(cd $i/$platform; pwd)` -+ break -+ fi -+ done -+ fi -+ ]) -+ if test x"${ac_cv_c_tkconfig}" = x ; then -+ TK_BIN_DIR="# no Tk configs found" -+ AC_MSG_WARN("Cannot find Tk configuration definitions") -+ exit 0 -+ else -+ no_tk= -+ TK_BIN_DIR=${ac_cv_c_tkconfig} -+ AC_MSG_RESULT([found $TK_BIN_DIR/tkConfig.sh]) -+ fi -+ fi -+ -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_LOAD_TCLCONFIG -- -+# -+# Load the tclConfig.sh file -+# -+# Arguments: -+# -+# Requires the following vars to be set: -+# TCL_BIN_DIR -+# -+# Results: -+# -+# Subst the following vars: -+# TCL_BIN_DIR -+# TCL_SRC_DIR -+# TCL_LIB_FILE -+# -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_LOAD_TCLCONFIG, [ -+ AC_MSG_CHECKING([for existence of $TCL_BIN_DIR/tclConfig.sh]) -+ -+ if test -f "$TCL_BIN_DIR/tclConfig.sh" ; then -+ AC_MSG_RESULT([loading]) -+ . $TCL_BIN_DIR/tclConfig.sh -+ else -+ AC_MSG_RESULT([file not found]) -+ fi -+ -+ # -+ # If the TCL_BIN_DIR is the build directory (not the install directory), -+ # then set the common variable name to the value of the build variables. -+ # For example, the variable TCL_LIB_SPEC will be set to the value -+ # of TCL_BUILD_LIB_SPEC. An extension should make use of TCL_LIB_SPEC -+ # instead of TCL_BUILD_LIB_SPEC since it will work with both an -+ # installed and uninstalled version of Tcl. -+ # -+ -+ if test -f $TCL_BIN_DIR/Makefile ; then -+ TCL_LIB_SPEC=${TCL_BUILD_LIB_SPEC} -+ TCL_STUB_LIB_SPEC=${TCL_BUILD_STUB_LIB_SPEC} -+ TCL_STUB_LIB_PATH=${TCL_BUILD_STUB_LIB_PATH} -+ fi -+ -+ # -+ # eval is required to do the TCL_DBGX substitution -+ # -+ -+ eval "TCL_LIB_FILE=\"${TCL_LIB_FILE}\"" -+ eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" -+ eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" -+ -+ eval "TCL_STUB_LIB_FILE=\"${TCL_STUB_LIB_FILE}\"" -+ eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" -+ eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" -+ -+ AC_SUBST(TCL_VERSION) -+ AC_SUBST(TCL_BIN_DIR) -+ AC_SUBST(TCL_SRC_DIR) -+ -+ AC_SUBST(TCL_LIB_FILE) -+ AC_SUBST(TCL_LIB_FLAG) -+ AC_SUBST(TCL_LIB_SPEC) -+ -+ AC_SUBST(TCL_STUB_LIB_FILE) -+ AC_SUBST(TCL_STUB_LIB_FLAG) -+ AC_SUBST(TCL_STUB_LIB_SPEC) -+ -+ AC_SUBST(TCL_LIBS) -+ AC_SUBST(TCL_DEFS) -+ AC_SUBST(TCL_EXTRA_CFLAGS) -+ AC_SUBST(TCL_LD_FLAGS) -+ AC_SUBST(TCL_SHLIB_LD_LIBS) -+ #AC_SUBST(TCL_BUILD_LIB_SPEC) -+ #AC_SUBST(TCL_BUILD_STUB_LIB_SPEC) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_LOAD_TKCONFIG -- -+# -+# Load the tkConfig.sh file -+# -+# Arguments: -+# -+# Requires the following vars to be set: -+# TK_BIN_DIR -+# -+# Results: -+# -+# Sets the following vars that should be in tkConfig.sh: -+# TK_BIN_DIR -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_LOAD_TKCONFIG, [ -+ AC_MSG_CHECKING([for existence of ${TK_BIN_DIR}/tkConfig.sh]) -+ -+ if test -f "${TK_BIN_DIR}/tkConfig.sh" ; then -+ AC_MSG_RESULT([loading]) -+ . $TK_BIN_DIR/tkConfig.sh -+ else -+ AC_MSG_RESULT([could not find ${TK_BIN_DIR}/tkConfig.sh]) -+ fi -+ -+ # -+ # If the TK_BIN_DIR is the build directory (not the install directory), -+ # then set the common variable name to the value of the build variables. -+ # For example, the variable TK_LIB_SPEC will be set to the value -+ # of TK_BUILD_LIB_SPEC. An extension should make use of TK_LIB_SPEC -+ # instead of TK_BUILD_LIB_SPEC since it will work with both an -+ # installed and uninstalled version of Tcl. -+ # -+ -+ if test -f $TK_BIN_DIR/Makefile ; then -+ TK_LIB_SPEC=${TK_BUILD_LIB_SPEC} -+ TK_STUB_LIB_SPEC=${TK_BUILD_STUB_LIB_SPEC} -+ TK_STUB_LIB_PATH=${TK_BUILD_STUB_LIB_PATH} -+ fi -+ -+ # -+ # eval is required to do the TK_DBGX substitution -+ # -+ -+ eval "TK_LIB_FILE=\"${TK_LIB_FILE}\"" -+ eval "TK_LIB_FLAG=\"${TK_LIB_FLAG}\"" -+ eval "TK_LIB_SPEC=\"${TK_LIB_SPEC}\"" -+ -+ eval "TK_STUB_LIB_FILE=\"${TK_STUB_LIB_FILE}\"" -+ eval "TK_STUB_LIB_FLAG=\"${TK_STUB_LIB_FLAG}\"" -+ eval "TK_STUB_LIB_SPEC=\"${TK_STUB_LIB_SPEC}\"" -+ -+ AC_SUBST(TK_VERSION) -+ AC_SUBST(TK_BIN_DIR) -+ AC_SUBST(TK_SRC_DIR) -+ -+ AC_SUBST(TK_LIB_FILE) -+ AC_SUBST(TK_LIB_FLAG) -+ AC_SUBST(TK_LIB_SPEC) -+ -+ AC_SUBST(TK_STUB_LIB_FILE) -+ AC_SUBST(TK_STUB_LIB_FLAG) -+ AC_SUBST(TK_STUB_LIB_SPEC) -+ -+ AC_SUBST(TK_LIBS) -+ AC_SUBST(TK_XINCLUDES) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ENABLE_SHARED -- -+# -+# Allows the building of shared libraries -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --enable-shared=yes|no -+# -+# Defines the following vars: -+# STATIC_BUILD Used for building import/export libraries -+# on Windows. -+# -+# Sets the following vars: -+# SHARED_BUILD Value of 1 or 0 -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_ENABLE_SHARED, [ -+ AC_MSG_CHECKING([how to build libraries]) -+ AC_ARG_ENABLE(shared, -+ [ --enable-shared build and link with shared libraries [--enable-shared]], -+ [tcl_ok=$enableval], [tcl_ok=yes]) -+ -+ if test "${enable_shared+set}" = set; then -+ enableval="$enable_shared" -+ tcl_ok=$enableval -+ else -+ tcl_ok=yes -+ fi -+ -+ if test "$tcl_ok" = "yes" ; then -+ AC_MSG_RESULT([shared]) -+ SHARED_BUILD=1 -+ else -+ AC_MSG_RESULT([static]) -+ SHARED_BUILD=0 -+ AC_DEFINE(STATIC_BUILD) -+ fi -+ AC_SUBST(SHARED_BUILD) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ENABLE_THREADS -- -+# -+# Specify if thread support should be enabled. If "yes" is -+# specified as an arg (optional), threads are enabled by default. -+# TCL_THREADS is checked so that if you are compiling an extension -+# against a threaded core, your extension must be compiled threaded -+# as well. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --enable-threads -+# -+# Sets the following vars: -+# THREADS_LIBS Thread library(s) -+# -+# Defines the following vars: -+# TCL_THREADS -+# _REENTRANT -+# -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_ENABLE_THREADS, [ -+ AC_ARG_ENABLE(threads, [ --enable-threads build with threads], -+ [tcl_ok=$enableval], [tcl_ok=$1]) -+ -+ if test "$tcl_ok" = "yes" -o "${TCL_THREADS}" = 1; then -+ TCL_THREADS=1 -+ -+ if test "${TEA_PLATFORM}" != "windows" ; then -+ # We are always OK on Windows, so check what this platform wants. -+ AC_DEFINE(USE_THREAD_ALLOC) -+ AC_DEFINE(_REENTRANT) -+ AC_DEFINE(_THREAD_SAFE) -+ AC_CHECK_LIB(pthread,pthread_mutex_init,tcl_ok=yes,tcl_ok=no) -+ if test "$tcl_ok" = "no"; then -+ # Check a little harder for __pthread_mutex_init in the -+ # same library, as some systems hide it there until -+ # pthread.h is defined. We could alternatively do an -+ # AC_TRY_COMPILE with pthread.h, but that will work with -+ # libpthread really doesn't exist, like AIX 4.2. -+ # [Bug: 4359] -+ AC_CHECK_LIB(pthread, __pthread_mutex_init, -+ tcl_ok=yes, tcl_ok=no) -+ fi -+ -+ if test "$tcl_ok" = "yes"; then -+ # The space is needed -+ THREADS_LIBS=" -lpthread" -+ else -+ AC_CHECK_LIB(pthreads, pthread_mutex_init, -+ tcl_ok=yes, tcl_ok=no) -+ if test "$tcl_ok" = "yes"; then -+ # The space is needed -+ THREADS_LIBS=" -lpthreads" -+ else -+ AC_CHECK_LIB(c, pthread_mutex_init, -+ tcl_ok=yes, tcl_ok=no) -+ if test "$tcl_ok" = "no"; then -+ AC_CHECK_LIB(c_r, pthread_mutex_init, -+ tcl_ok=yes, tcl_ok=no) -+ if test "$tcl_ok" = "yes"; then -+ # The space is needed -+ THREADS_LIBS=" -pthread" -+ else -+ TCL_THREADS=0 -+ AC_MSG_WARN("Don t know how to find pthread lib on your system - thread support disabled") -+ fi -+ fi -+ fi -+ fi -+ -+ # Does the pthread-implementation provide -+ # 'pthread_attr_setstacksize' ? -+ -+ ac_saved_libs=$LIBS -+ LIBS="$LIBS $THREADS_LIBS" -+ AC_CHECK_FUNCS(pthread_attr_setstacksize) -+ LIBS=$ac_saved_libs -+ AC_CHECK_FUNCS(readdir_r) -+ fi -+ else -+ TCL_THREADS=0 -+ fi -+ # Do checking message here to not mess up interleaved configure output -+ AC_MSG_CHECKING([for building with threads]) -+ if test "${TCL_THREADS}" = "1"; then -+ AC_DEFINE(TCL_THREADS) -+ #LIBS="$LIBS $THREADS_LIBS" -+ AC_MSG_RESULT([yes]) -+ else -+ AC_MSG_RESULT([no (default)]) -+ fi -+ # TCL_THREADS sanity checking. See if our request for building with -+ # threads is the same as the way Tcl was built. If not, warn the user. -+ case ${TCL_DEFS} in -+ *THREADS=1*) -+ if test "${TCL_THREADS}" = "0"; then -+ AC_MSG_WARN([ -+ Building ${PACKAGE_NAME} without threads enabled, but building against a Tcl -+ that IS thread-enabled.]) -+ fi -+ ;; -+ *) -+ if test "${TCL_THREADS}" = "1"; then -+ AC_MSG_WARN([ -+ --enable-threads requested, but attempting building against a Tcl -+ that is NOT thread-enabled.]) -+ fi -+ ;; -+ esac -+ AC_SUBST(TCL_THREADS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ENABLE_SYMBOLS -- -+# -+# Specify if debugging symbols should be used -+# Memory (TCL_MEM_DEBUG) debugging can also be enabled. -+# -+# Arguments: -+# none -+# -+# Requires the following vars to be set: -+# CFLAGS_DEBUG -+# CFLAGS_OPTIMIZE -+# LDFLAGS_DEBUG -+# LDFLAGS_OPTIMIZE -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --enable-symbols -+# -+# Defines the following vars: -+# CFLAGS_DEFAULT Sets to CFLAGS_DEBUG if true -+# Sets to CFLAGS_OPTIMIZE if false -+# LDFLAGS_DEFAULT Sets to LDFLAGS_DEBUG if true -+# Sets to LDFLAGS_OPTIMIZE if false -+# DBGX Formerly used as debug library extension; -+# always blank now. -+# -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_ENABLE_SYMBOLS, [ -+ dnl Make sure we are initialized -+ AC_REQUIRE([TEA_CONFIG_CFLAGS]) -+ -+ DBGX="" -+ -+ AC_MSG_CHECKING([for build with symbols]) -+ AC_ARG_ENABLE(symbols, [ --enable-symbols build with debugging symbols [--disable-symbols]], [tcl_ok=$enableval], [tcl_ok=no]) -+ if test "$tcl_ok" = "no"; then -+ CFLAGS_DEFAULT="${CFLAGS_OPTIMIZE}" -+ LDFLAGS_DEFAULT="${LDFLAGS_OPTIMIZE}" -+ AC_MSG_RESULT([no]) -+ else -+ CFLAGS_DEFAULT="${CFLAGS_DEBUG}" -+ LDFLAGS_DEFAULT="${LDFLAGS_DEBUG}" -+ if test "$tcl_ok" = "yes"; then -+ AC_MSG_RESULT([yes (standard debugging)]) -+ fi -+ fi -+ if test "${TEA_PLATFORM}" != "windows" ; then -+ LDFLAGS_DEFAULT="${LDFLAGS}" -+ fi -+ -+ AC_SUBST(TCL_DBGX) -+ AC_SUBST(CFLAGS_DEFAULT) -+ AC_SUBST(LDFLAGS_DEFAULT) -+ -+ if test "$tcl_ok" = "mem" -o "$tcl_ok" = "all"; then -+ AC_DEFINE(TCL_MEM_DEBUG) -+ fi -+ -+ if test "$tcl_ok" != "yes" -a "$tcl_ok" != "no"; then -+ if test "$tcl_ok" = "all"; then -+ AC_MSG_RESULT([enabled symbols mem debugging]) -+ else -+ AC_MSG_RESULT([enabled $tcl_ok debugging]) -+ fi -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ENABLE_LANGINFO -- -+# -+# Allows use of modern nl_langinfo check for better l10n. -+# This is only relevant for Unix. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --enable-langinfo=yes|no (default is yes) -+# -+# Defines the following vars: -+# HAVE_LANGINFO Triggers use of nl_langinfo if defined. -+# -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_ENABLE_LANGINFO, [ -+ AC_ARG_ENABLE(langinfo, -+ [ --enable-langinfo use nl_langinfo if possible to determine -+ encoding at startup, otherwise use old heuristic], -+ [langinfo_ok=$enableval], [langinfo_ok=yes]) -+ -+ HAVE_LANGINFO=0 -+ if test "$langinfo_ok" = "yes"; then -+ if test "$langinfo_ok" = "yes"; then -+ AC_CHECK_HEADER(langinfo.h,[langinfo_ok=yes],[langinfo_ok=no]) -+ fi -+ fi -+ AC_MSG_CHECKING([whether to use nl_langinfo]) -+ if test "$langinfo_ok" = "yes"; then -+ AC_TRY_COMPILE([#include ], -+ [nl_langinfo(CODESET);],[langinfo_ok=yes],[langinfo_ok=no]) -+ if test "$langinfo_ok" = "no"; then -+ langinfo_ok="no (could not compile with nl_langinfo)"; -+ fi -+ if test "$langinfo_ok" = "yes"; then -+ AC_DEFINE(HAVE_LANGINFO) -+ fi -+ fi -+ AC_MSG_RESULT([$langinfo_ok]) -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_CONFIG_CFLAGS -+# -+# Try to determine the proper flags to pass to the compiler -+# for building shared libraries and other such nonsense. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines the following vars: -+# -+# DL_OBJS - Name of the object file that implements dynamic -+# loading for Tcl on this system. -+# DL_LIBS - Library file(s) to include in tclsh and other base -+# applications in order for the "load" command to work. -+# LDFLAGS - Flags to pass to the compiler when linking object -+# files into an executable application binary such -+# as tclsh. -+# LD_SEARCH_FLAGS-Flags to pass to ld, such as "-R /usr/local/tcl/lib", -+# that tell the run-time dynamic linker where to look -+# for shared libraries such as libtcl.so. Depends on -+# the variable LIB_RUNTIME_DIR in the Makefile. -+# SHLIB_CFLAGS - Flags to pass to cc when compiling the components -+# of a shared library (may request position-independent -+# code, among other things). -+# SHLIB_LD - Base command to use for combining object files -+# into a shared library. -+# SHLIB_LD_LIBS - Dependent libraries for the linker to scan when -+# creating shared libraries. This symbol typically -+# goes at the end of the "ld" commands that build -+# shared libraries. The value of the symbol is -+# "${LIBS}" if all of the dependent libraries should -+# be specified when creating a shared library. If -+# dependent libraries should not be specified (as on -+# SunOS 4.x, where they cause the link to fail, or in -+# general if Tcl and Tk aren't themselves shared -+# libraries), then this symbol has an empty string -+# as its value. -+# SHLIB_SUFFIX - Suffix to use for the names of dynamically loadable -+# extensions. An empty string means we don't know how -+# to use shared libraries on this platform. -+# TCL_LIB_FILE - Name of the file that contains the Tcl library, such -+# as libtcl7.8.so or libtcl7.8.a. -+# TCL_LIB_SUFFIX -Specifies everything that comes after the "libtcl" -+# in the shared library name, using the -+# ${PACKAGE_VERSION} variable to put the version in -+# the right place. This is used by platforms that -+# need non-standard library names. -+# Examples: ${PACKAGE_VERSION}.so.1.1 on NetBSD, -+# since it needs to have a version after the .so, and -+# ${PACKAGE_VERSION}.a on AIX, since the Tcl shared -+# library needs to have a .a extension whereas shared -+# objects for loadable extensions have a .so -+# extension. Defaults to -+# ${PACKAGE_VERSION}${SHLIB_SUFFIX}. -+# TCL_NEEDS_EXP_FILE - -+# 1 means that an export file is needed to link to a -+# shared library. -+# TCL_EXP_FILE - The name of the installed export / import file which -+# should be used to link to the Tcl shared library. -+# Empty if Tcl is unshared. -+# TCL_BUILD_EXP_FILE - -+# The name of the built export / import file which -+# should be used to link to the Tcl shared library. -+# Empty if Tcl is unshared. -+# CFLAGS_DEBUG - -+# Flags used when running the compiler in debug mode -+# CFLAGS_OPTIMIZE - -+# Flags used when running the compiler in optimize mode -+# CFLAGS - We add CFLAGS to pass to the compiler -+# -+# Subst's the following vars: -+# DL_LIBS -+# CFLAGS_DEBUG -+# CFLAGS_OPTIMIZE -+# CFLAGS_WARNING -+# -+# STLIB_LD -+# SHLIB_LD -+# SHLIB_CFLAGS -+# LDFLAGS_DEBUG -+# LDFLAGS_OPTIMIZE -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_CONFIG_CFLAGS, [ -+ dnl Make sure we are initialized -+ AC_REQUIRE([TEA_INIT]) -+ -+ # Step 0: Enable 64 bit support? -+ -+ AC_MSG_CHECKING([if 64bit support is enabled]) -+ AC_ARG_ENABLE(64bit,[ --enable-64bit enable 64bit support (where applicable)], [do64bit=$enableval], [do64bit=no]) -+ AC_MSG_RESULT([$do64bit]) -+ -+ # Step 0.b: Enable Solaris 64 bit VIS support? -+ -+ AC_MSG_CHECKING([if 64bit Sparc VIS support is requested]) -+ AC_ARG_ENABLE(64bit-vis,[ --enable-64bit-vis enable 64bit Sparc VIS support], [do64bitVIS=$enableval], [do64bitVIS=no]) -+ AC_MSG_RESULT([$do64bitVIS]) -+ -+ if test "$do64bitVIS" = "yes"; then -+ # Force 64bit on with VIS -+ do64bit=yes -+ fi -+ -+ # Step 0.c: Cross-compiling options for Windows/CE builds? -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ AC_MSG_CHECKING([if Windows/CE build is requested]) -+ AC_ARG_ENABLE(wince,[ --enable-wince enable Win/CE support (where applicable)], [doWince=$enableval], [doWince=no]) -+ AC_MSG_RESULT($doWince) -+ fi -+ -+ # Step 1: set the variable "system" to hold the name and version number -+ # for the system. This can usually be done via the "uname" command, but -+ # there are a few systems, like Next, where this doesn't work. -+ -+ AC_MSG_CHECKING([system version (for dynamic loading)]) -+ if test -f /usr/lib/NextStep/software_version; then -+ system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version` -+ else -+ system=`uname -s`-`uname -r` -+ if test "$?" -ne 0 ; then -+ AC_MSG_RESULT([unknown (can't find uname command)]) -+ system=unknown -+ else -+ # Special check for weird MP-RAS system (uname returns weird -+ # results, and the version is kept in special file). -+ -+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then -+ system=MP-RAS-`awk '{print $3}' /etc/.relid'` -+ fi -+ if test "`uname -s`" = "AIX" ; then -+ system=AIX-`uname -v`.`uname -r` -+ fi -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ system=windows -+ fi -+ AC_MSG_RESULT([$system]) -+ fi -+ fi -+ -+ # Step 2: check for existence of -ldl library. This is needed because -+ # Linux can use either -ldl or -ldld for dynamic loading. -+ -+ AC_CHECK_LIB(dl, dlopen, have_dl=yes, have_dl=no) -+ -+ # Step 3: set configuration options based on system name and version. -+ # This is similar to Tcl's unix/tcl.m4 except that we've added a -+ # "windows" case and CC_SEARCH_FLAGS becomes LD_SEARCH_FLAGS for us -+ # (and we have no CC_SEARCH_FLAGS). -+ -+ do64bit_ok=no -+ LDFLAGS_ORIG="$LDFLAGS" -+ TCL_EXPORT_FILE_SUFFIX="" -+ UNSHARED_LIB_SUFFIX="" -+ TCL_TRIM_DOTS='`echo ${PACKAGE_VERSION} | tr -d .`' -+ ECHO_VERSION='`echo ${PACKAGE_VERSION}`' -+ TCL_LIB_VERSIONS_OK=ok -+ CFLAGS_DEBUG=-g -+ if test "$GCC" = "yes" ; then -+ CFLAGS_OPTIMIZE=-O2 -+ CFLAGS_WARNING="-Wall -Wno-implicit-int" -+ else -+ CFLAGS_OPTIMIZE=-O -+ CFLAGS_WARNING="" -+ fi -+ TCL_NEEDS_EXP_FILE=0 -+ TCL_BUILD_EXP_FILE="" -+ TCL_EXP_FILE="" -+dnl FIXME: Replace AC_CHECK_PROG with AC_CHECK_TOOL once cross compiling is fixed. -+dnl AC_CHECK_TOOL(AR, ar, :) -+ AC_CHECK_PROG(AR, ar, ar) -+ STLIB_LD='${AR} cr' -+ LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH" -+ case $system in -+ windows) -+ # This is a 2-stage check to make sure we have the 64-bit SDK -+ # We have to know where the SDK is installed. -+ if test "$do64bit" = "yes" ; then -+ if test "x${MSSDK}x" = "xx" ; then -+ MSSDK="C:/Progra~1/Microsoft SDK" -+ fi -+ # Ensure that this path has no spaces to work in autoconf -+ TEA_PATH_NOSPACE(MSSDK, ${MSSDK}) -+ if test ! -d "${MSSDK}/bin/win64" ; then -+ AC_MSG_WARN([could not find 64-bit SDK to enable 64bit mode]) -+ do64bit="no" -+ else -+ do64bit_ok="yes" -+ fi -+ fi -+ -+ if test "$doWince" != "no" ; then -+ if test "$do64bit" = "yes" ; then -+ AC_MSG_ERROR([Windows/CE and 64-bit builds incompatible]) -+ fi -+ if test "$GCC" = "yes" ; then -+ AC_MSG_ERROR([Windows/CE and GCC builds incompatible]) -+ fi -+ TEA_PATH_CELIB -+ # Set defaults for common evc4/PPC2003 setup -+ # Currently Tcl requires 300+, possibly 420+ for sockets -+ CEVERSION=420; # could be 211 300 301 400 420 ... -+ TARGETCPU=ARMV4; # could be ARMV4 ARM MIPS SH3 X86 ... -+ ARCH=ARM; # could be ARM MIPS X86EM ... -+ PLATFORM="Pocket PC 2003"; # or "Pocket PC 2002" -+ if test "$doWince" != "yes"; then -+ # If !yes then the user specified something -+ # Reset ARCH to allow user to skip specifying it -+ ARCH= -+ eval `echo $doWince | awk -F, '{ \ -+ if (length([$]1)) { printf "CEVERSION=\"%s\"\n", [$]1; \ -+ if ([$]1 < 400) { printf "PLATFORM=\"Pocket PC 2002\"\n" } }; \ -+ if (length([$]2)) { printf "TARGETCPU=\"%s\"\n", toupper([$]2) }; \ -+ if (length([$]3)) { printf "ARCH=\"%s\"\n", toupper([$]3) }; \ -+ if (length([$]4)) { printf "PLATFORM=\"%s\"\n", [$]4 }; \ -+ }'` -+ if test "x${ARCH}" = "x" ; then -+ ARCH=$TARGETCPU; -+ fi -+ fi -+ OSVERSION=WCE$CEVERSION; -+ if test "x${WCEROOT}" = "x" ; then -+ WCEROOT="C:/Program Files/Microsoft eMbedded C++ 4.0" -+ if test ! -d "${WCEROOT}" ; then -+ WCEROOT="C:/Program Files/Microsoft eMbedded Tools" -+ fi -+ fi -+ if test "x${SDKROOT}" = "x" ; then -+ SDKROOT="C:/Program Files/Windows CE Tools" -+ if test ! -d "${SDKROOT}" ; then -+ SDKROOT="C:/Windows CE Tools" -+ fi -+ fi -+ # Ensure that this path has no spaces to work in autoconf -+ TEA_PATH_NOSPACE(WCEROOT, ${WCEROOT}) -+ TEA_PATH_NOSPACE(SDKROOT, ${SDKROOT}) -+ if test ! -d "${SDKROOT}/${OSVERSION}/${PLATFORM}/Lib/${TARGETCPU}" \ -+ -o ! -d "${WCEROOT}/EVC/${OSVERSION}/bin"; then -+ AC_MSG_ERROR([could not find PocketPC SDK or target compiler to enable WinCE mode [$CEVERSION,$TARGETCPU,$ARCH,$PLATFORM]]) -+ doWince="no" -+ else -+ # We could PATH_NOSPACE these, but that's not important, -+ # as long as we quote them when used. -+ CEINCLUDE="${SDKROOT}/${OSVERSION}/${PLATFORM}/include" -+ if test -d "${CEINCLUDE}/${TARGETCPU}" ; then -+ CEINCLUDE="${CEINCLUDE}/${TARGETCPU}" -+ fi -+ CELIBPATH="${SDKROOT}/${OSVERSION}/${PLATFORM}/Lib/${TARGETCPU}" -+ fi -+ fi -+ -+ if test "$GCC" != "yes" ; then -+ if test "${SHARED_BUILD}" = "0" ; then -+ runtime=-MT -+ else -+ runtime=-MD -+ fi -+ -+ if test "$do64bit" = "yes" ; then -+ # All this magic is necessary for the Win64 SDK RC1 - hobbs -+ CC="${MSSDK}/Bin/Win64/cl.exe" -+ CFLAGS="${CFLAGS} -I${MSSDK}/Include/prerelease \ -+ -I${MSSDK}/Include/Win64/crt \ -+ -I${MSSDK}/Include" -+ RC="${MSSDK}/bin/rc.exe" -+ lflags="-MACHINE:IA64 -LIBPATH:${MSSDK}/Lib/IA64 \ -+ -LIBPATH:${MSSDK}/Lib/Prerelease/IA64 -nologo" -+ LINKBIN="${MSSDK}/bin/win64/link.exe" -+ CFLAGS_DEBUG="-nologo -Zi -Od -W3 ${runtime}d" -+ CFLAGS_OPTIMIZE="-nologo -O2 -W2 ${runtime}" -+ elif test "$doWince" != "no" ; then -+ CEBINROOT="${WCEROOT}/EVC/${OSVERSION}/bin" -+ if test "${TARGETCPU}" = "X86"; then -+ CC="${CEBINROOT}/cl.exe" -+ else -+ CC="${CEBINROOT}/cl${ARCH}.exe" -+ fi -+ CFLAGS="$CFLAGS -I\"${CELIB_DIR}/inc\" -I\"${CEINCLUDE}\"" -+ RC="${WCEROOT}/Common/EVC/bin/rc.exe" -+ arch=`echo ${ARCH} | awk '{print tolower([$]0)}'` -+ defs="${ARCH} _${ARCH}_ ${arch} PALM_SIZE _MT _WINDOWS" -+ if test "${SHARED_BUILD}" = "1" ; then -+ # Static CE builds require static celib as well -+ defs="${defs} _DLL" -+ fi -+ for i in $defs ; do -+ AC_DEFINE_UNQUOTED($i) -+ done -+ AC_DEFINE_UNQUOTED(_WIN32_WCE, $CEVERSION) -+ AC_DEFINE_UNQUOTED(UNDER_CE, $CEVERSION) -+ CFLAGS_DEBUG="-nologo -Zi -Od" -+ CFLAGS_OPTIMIZE="-nologo -Ox" -+ lversion=`echo ${CEVERSION} | sed -e 's/\(.\)\(..\)/\1\.\2/'` -+ lflags="-MACHINE:${ARCH} -LIBPATH:\"${CELIBPATH}\" -subsystem:windowsce,${lversion} -nologo" -+ LINKBIN="${CEBINROOT}/link.exe" -+ AC_SUBST(CELIB_DIR) -+ else -+ RC="rc" -+ lflags="-nologo" -+ LINKBIN="link" -+ CFLAGS_DEBUG="-nologo -Z7 -Od -W3 -WX ${runtime}d" -+ CFLAGS_OPTIMIZE="-nologo -O2 -W2 ${runtime}" -+ fi -+ fi -+ -+ if test "$GCC" = "yes"; then -+ # mingw gcc mode -+ RC="windres" -+ CFLAGS_DEBUG="-g" -+ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" -+ SHLIB_LD="$CC -shared" -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" -+ LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" -+ else -+ SHLIB_LD="${LINKBIN} -dll ${lflags}" -+ # link -lib only works when -lib is the first arg -+ STLIB_LD="${LINKBIN} -lib ${lflags}" -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.lib' -+ PATHTYPE=-w -+ # For information on what debugtype is most useful, see: -+ # http://msdn.microsoft.com/library/en-us/dnvc60/html/gendepdebug.asp -+ # This essentially turns it all on. -+ LDFLAGS_DEBUG="-debug:full -debugtype:both -warn:2" -+ LDFLAGS_OPTIMIZE="-release" -+ if test "$doWince" != "no" ; then -+ LDFLAGS_CONSOLE="-link ${lflags}" -+ LDFLAGS_WINDOW=${LDFLAGS_CONSOLE} -+ else -+ LDFLAGS_CONSOLE="-link -subsystem:console ${lflags}" -+ LDFLAGS_WINDOW="-link -subsystem:windows ${lflags}" -+ fi -+ fi -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".dll" -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.dll' -+ -+ TCL_LIB_VERSIONS_OK=nodots -+ # Bogus to avoid getting this turned off -+ DL_OBJS="tclLoadNone.obj" -+ ;; -+ AIX-*) -+ if test "${TCL_THREADS}" = "1" -a "$GCC" != "yes" ; then -+ # AIX requires the _r compiler when gcc isn't being used -+ if test "${CC}" != "cc_r" ; then -+ CC=${CC}_r -+ fi -+ AC_MSG_RESULT([Using $CC for compiling with threads]) -+ fi -+ LIBS="$LIBS -lc" -+ SHLIB_CFLAGS="" -+ SHLIB_SUFFIX=".so" -+ SHLIB_LD_LIBS='${LIBS}' -+ -+ DL_OBJS="tclLoadDl.o" -+ LD_LIBRARY_PATH_VAR="LIBPATH" -+ -+ # AIX v<=4.1 has some different flags than 4.2+ -+ if test "$system" = "AIX-4.1" -o "`uname -v`" -lt "4" ; then -+ #LIBOBJS="$LIBOBJS tclLoadAix.o" -+ AC_LIBOBJ([tclLoadAix]) -+ DL_LIBS="-lld" -+ fi -+ -+ # Check to enable 64-bit flags for compiler/linker on AIX 4+ -+ if test "$do64bit" = "yes" -a "`uname -v`" -gt "3" ; then -+ if test "$GCC" = "yes" ; then -+ AC_MSG_WARN("64bit mode not supported with GCC on $system") -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS -q64" -+ LDFLAGS="$LDFLAGS -q64" -+ RANLIB="${RANLIB} -X64" -+ AR="${AR} -X64" -+ SHLIB_LD_FLAGS="-b64" -+ fi -+ fi -+ -+ if test "`uname -m`" = "ia64" ; then -+ # AIX-5 uses ELF style dynamic libraries on IA-64, but not PPC -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ # AIX-5 has dl* in libc.so -+ DL_LIBS="" -+ if test "$GCC" = "yes" ; then -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' -+ else -+ LD_SEARCH_FLAGS='-R${LIB_RUNTIME_DIR}' -+ fi -+ else -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="gcc -shared" -+ else -+ SHLIB_LD="/bin/ld -bhalt:4 -bM:SRE -bE:lib.exp -H512 -T512 -bnoentry" -+ fi -+ SHLIB_LD="${TCL_SRC_DIR}/unix/ldAix ${SHLIB_LD} ${SHLIB_LD_FLAGS}" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ TCL_NEEDS_EXP_FILE=1 -+ TCL_EXPORT_FILE_SUFFIX='${PACKAGE_VERSION}.exp' -+ fi -+ -+ # On AIX <=v4 systems, libbsd.a has to be linked in to support -+ # non-blocking file IO. This library has to be linked in after -+ # the MATH_LIBS or it breaks the pow() function. The way to -+ # insure proper sequencing, is to add it to the tail of MATH_LIBS. -+ # This library also supplies gettimeofday. -+ # -+ # AIX does not have a timezone field in struct tm. When the AIX -+ # bsd library is used, the timezone global and the gettimeofday -+ # methods are to be avoided for timezone deduction instead, we -+ # deduce the timezone by comparing the localtime result on a -+ # known GMT value. -+ -+ AC_CHECK_LIB(bsd, gettimeofday, libbsd=yes, libbsd=no) -+ if test $libbsd = yes; then -+ MATH_LIBS="$MATH_LIBS -lbsd" -+ AC_DEFINE(USE_DELTA_FOR_TZ) -+ fi -+ ;; -+ BeOS*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="${CC} -nostart" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ ;; -+ BSD/OS-2.1*|BSD/OS-3*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="shlicc -r" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ BSD/OS-4.*) -+ SHLIB_CFLAGS="-export-dynamic -fPIC" -+ SHLIB_LD="cc -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -export-dynamic" -+ LD_SEARCH_FLAGS="" -+ ;; -+ dgux*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ HP-UX-*.11.*) -+ # Use updated header definitions where possible -+ AC_DEFINE(_XOPEN_SOURCE_EXTENDED) -+ -+ SHLIB_SUFFIX=".sl" -+ AC_CHECK_LIB(dld, shl_load, tcl_ok=yes, tcl_ok=no) -+ if test "$tcl_ok" = yes; then -+ SHLIB_CFLAGS="+z" -+ SHLIB_LD="ld -b" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadShl.o" -+ DL_LIBS="-ldld" -+ LDFLAGS="$LDFLAGS -Wl,-E" -+ LD_SEARCH_FLAGS='+s +b ${LIB_RUNTIME_DIR}:.' -+ LD_LIBRARY_PATH_VAR="SHLIB_PATH" -+ fi -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="gcc -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ LD_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.' -+ fi -+ -+ # Users may want PA-RISC 1.1/2.0 portable code - needs HP cc -+ #CFLAGS="$CFLAGS +DAportable" -+ -+ # Check to enable 64-bit flags for compiler/linker -+ if test "$do64bit" = "yes" ; then -+ if test "$GCC" = "yes" ; then -+ hpux_arch=`${CC} -dumpmachine` -+ case $hpux_arch in -+ hppa64*) -+ # 64-bit gcc in use. Fix flags for GNU ld. -+ do64bit_ok=yes -+ SHLIB_LD="${CC} -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ ;; -+ *) -+ AC_MSG_WARN("64bit mode not supported with GCC on $system") -+ ;; -+ esac -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS +DD64" -+ LDFLAGS="$LDFLAGS +DD64" -+ fi -+ fi -+ ;; -+ HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*) -+ SHLIB_SUFFIX=".sl" -+ AC_CHECK_LIB(dld, shl_load, tcl_ok=yes, tcl_ok=no) -+ if test "$tcl_ok" = yes; then -+ SHLIB_CFLAGS="+z" -+ SHLIB_LD="ld -b" -+ SHLIB_LD_LIBS="" -+ DL_OBJS="tclLoadShl.o" -+ DL_LIBS="-ldld" -+ LDFLAGS="$LDFLAGS -Wl,-E" -+ LD_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.' -+ fi -+ LD_LIBRARY_PATH_VAR="SHLIB_PATH" -+ ;; -+ IRIX-4.*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_SUFFIX=".a" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ SHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' -+ ;; -+ IRIX-5.*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ ;; -+ IRIX-6.*|IRIX64-6.5*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -n32 -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ if test "$GCC" = "yes" ; then -+ CFLAGS="$CFLAGS -mabi=n32" -+ LDFLAGS="$LDFLAGS -mabi=n32" -+ else -+ case $system in -+ IRIX-6.3) -+ # Use to build 6.2 compatible binaries on 6.3. -+ CFLAGS="$CFLAGS -n32 -D_OLD_TERMIOS" -+ ;; -+ *) -+ CFLAGS="$CFLAGS -n32" -+ ;; -+ esac -+ LDFLAGS="$LDFLAGS -n32" -+ fi -+ ;; -+ IRIX64-6.*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="ld -n32 -shared -rdata_shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ -+ # Check to enable 64-bit flags for compiler/linker -+ -+ if test "$do64bit" = "yes" ; then -+ if test "$GCC" = "yes" ; then -+ AC_MSG_WARN([64bit mode not supported by gcc]) -+ else -+ do64bit_ok=yes -+ SHLIB_LD="ld -64 -shared -rdata_shared" -+ CFLAGS="$CFLAGS -64" -+ LDFLAGS="$LDFLAGS -64" -+ fi -+ fi -+ ;; -+ Linux*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ -+ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" -+ # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings -+ # when you inline the string and math operations. Turn this off to -+ # get rid of the warnings. -+ -+ #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" -+ -+ if test "$have_dl" = yes; then -+ SHLIB_LD="${CC} -shared" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ else -+ AC_CHECK_HEADER(dld.h, [ -+ SHLIB_LD="ld -shared" -+ DL_OBJS="tclLoadDld.o" -+ DL_LIBS="-ldld" -+ LD_SEARCH_FLAGS=""]) -+ fi -+ if test "`uname -m`" = "alpha" ; then -+ CFLAGS="$CFLAGS -mieee" -+ fi -+ -+ # The combo of gcc + glibc has a bug related -+ # to inlining of functions like strtod(). The -+ # -fno-builtin flag should address this problem -+ # but it does not work. The -fno-inline flag -+ # is kind of overkill but it works. -+ # Disable inlining only when one of the -+ # files in compat/*.c is being linked in. -+ if test x"${USE_COMPAT}" != x ; then -+ CFLAGS="$CFLAGS -fno-inline" -+ fi -+ -+ ;; -+ GNU*) -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ -+ if test "$have_dl" = yes; then -+ SHLIB_LD="${CC} -shared" -+ DL_OBJS="" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" -+ LD_SEARCH_FLAGS="" -+ else -+ AC_CHECK_HEADER(dld.h, [ -+ SHLIB_LD="ld -shared" -+ DL_OBJS="" -+ DL_LIBS="-ldld" -+ LD_SEARCH_FLAGS=""]) -+ fi -+ if test "`uname -m`" = "alpha" ; then -+ CFLAGS="$CFLAGS -mieee" -+ fi -+ ;; -+ MP-RAS-02*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ MP-RAS-*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LDFLAGS="$LDFLAGS -Wl,-Bexport" -+ LD_SEARCH_FLAGS="" -+ ;; -+ NetBSD-*|FreeBSD-[[1-2]].*) -+ # Not available on all versions: check for include file. -+ AC_CHECK_HEADER(dlfcn.h, [ -+ # NetBSD/SPARC needs -fPIC, -fpic will not do. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ AC_MSG_CHECKING([for ELF]) -+ AC_EGREP_CPP(yes, [ -+#ifdef __ELF__ -+ yes -+#endif -+ ], -+ AC_MSG_RESULT([yes]) -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so', -+ AC_MSG_RESULT([no]) -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' -+ ) -+ ], [ -+ SHLIB_CFLAGS="" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".a" -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ ]) -+ -+ # FreeBSD doesn't handle version numbers with dots. -+ -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ OpenBSD-*) -+ SHLIB_LD="${CC} -shared" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ AC_MSG_CHECKING(for ELF) -+ AC_EGREP_CPP(yes, [ -+#ifdef __ELF__ -+ yes -+#endif -+ ], -+ [AC_MSG_RESULT(yes) -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0'], -+ [AC_MSG_RESULT(no) -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0'] -+ ) -+ -+ # OpenBSD doesn't do version numbers with dots. -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ FreeBSD-*) -+ # FreeBSD 3.* and greater have ELF. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -export-dynamic" -+ LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -+ if test "${TCL_THREADS}" = "1" ; then -+ # The -pthread needs to go in the CFLAGS, not LIBS -+ LIBS=`echo $LIBS | sed s/-pthread//` -+ CFLAGS="$CFLAGS -pthread" -+ LDFLAGS="$LDFLAGS -pthread" -+ fi -+ case $system in -+ FreeBSD-3.*) -+ # FreeBSD-3 doesn't handle version numbers with dots. -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ esac -+ ;; -+ Darwin-*) -+ SHLIB_CFLAGS="-fno-common" -+ SHLIB_LD="cc -dynamiclib \${LDFLAGS}" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".dylib" -+ DL_OBJS="tclLoadDyld.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -prebind -Wl,-search_paths_first" -+ LD_SEARCH_FLAGS="" -+ LD_LIBRARY_PATH_VAR="DYLD_LIBRARY_PATH" -+ CFLAGS_OPTIMIZE="-Os" -+ ;; -+ NEXTSTEP-*) -+ SHLIB_CFLAGS="" -+ SHLIB_LD="cc -nostdlib -r" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadNext.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OS/390-*) -+ CFLAGS_OPTIMIZE="" # Optimizer is buggy -+ AC_DEFINE(_OE_SOCKETS) # needed in sys/socket.h -+ ;; -+ OSF1-1.0|OSF1-1.1|OSF1-1.2) -+ # OSF/1 1.[012] from OSF, and derivatives, including Paragon OSF/1 -+ SHLIB_CFLAGS="" -+ # Hack: make package name same as library name -+ SHLIB_LD='ld -R -export $@:' -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadOSF.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OSF1-1.*) -+ # OSF/1 1.3 from OSF using ELF, and derivatives, including AD2 -+ SHLIB_CFLAGS="-fPIC" -+ if test "$SHARED_BUILD" = "1" ; then -+ SHLIB_LD="ld -shared" -+ else -+ SHLIB_LD="ld -non_shared" -+ fi -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ OSF1-V*) -+ # Digital OSF/1 -+ SHLIB_CFLAGS="" -+ if test "$SHARED_BUILD" = "1" ; then -+ SHLIB_LD='ld -shared -expect_unresolved "*"' -+ else -+ SHLIB_LD='ld -non_shared -expect_unresolved "*"' -+ fi -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}' -+ if test "$GCC" = "yes" ; then -+ CFLAGS="$CFLAGS -mieee" -+ else -+ CFLAGS="$CFLAGS -DHAVE_TZSET -std1 -ieee" -+ fi -+ # see pthread_intro(3) for pthread support on osf1, k.furukawa -+ if test "${TCL_THREADS}" = "1" ; then -+ CFLAGS="$CFLAGS -DHAVE_PTHREAD_ATTR_SETSTACKSIZE" -+ CFLAGS="$CFLAGS -DTCL_THREAD_STACK_MIN=PTHREAD_STACK_MIN*64" -+ LIBS=`echo $LIBS | sed s/-lpthreads//` -+ if test "$GCC" = "yes" ; then -+ LIBS="$LIBS -lpthread -lmach -lexc" -+ else -+ CFLAGS="$CFLAGS -pthread" -+ LDFLAGS="$LDFLAGS -pthread" -+ fi -+ fi -+ -+ ;; -+ QNX-6*) -+ # QNX RTP -+ # This may work for all QNX, but it was only reported for v6. -+ SHLIB_CFLAGS="-fPIC" -+ SHLIB_LD="ld -Bshareable -x" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ # dlopen is in -lc on QNX -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ RISCos-*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".a" -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ ;; -+ SCO_SV-3.2*) -+ # Note, dlopen is available only on SCO 3.2.5 and greater. However, -+ # this test works, since "uname -s" was non-standard in 3.2.4 and -+ # below. -+ if test "$GCC" = "yes" ; then -+ SHLIB_CFLAGS="-fPIC -melf" -+ LDFLAGS="$LDFLAGS -melf -Wl,-Bexport" -+ else -+ SHLIB_CFLAGS="-Kpic -belf" -+ LDFLAGS="$LDFLAGS -belf -Wl,-Bexport" -+ fi -+ SHLIB_LD="ld -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="" -+ LD_SEARCH_FLAGS="" -+ ;; -+ SINIX*5.4*) -+ SHLIB_CFLAGS="-K PIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS="" -+ ;; -+ SunOS-4*) -+ SHLIB_CFLAGS="-PIC" -+ SHLIB_LD="ld" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ -+ # SunOS can't handle version numbers with dots in them in library -+ # specs, like -ltcl7.5, so use -ltcl75 instead. Also, it -+ # requires an extra version number at the end of .so file names. -+ # So, the library has to have a name like libtcl75.so.1.0 -+ -+ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so.1.0' -+ UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' -+ TCL_LIB_VERSIONS_OK=nodots -+ ;; -+ SunOS-5.[[0-6]]*) -+ -+ # Note: If _REENTRANT isn't defined, then Solaris -+ # won't define thread-safe library routines. -+ -+ AC_DEFINE(_REENTRANT) -+ AC_DEFINE(_POSIX_PTHREAD_SEMANTICS) -+ -+ SHLIB_CFLAGS="-KPIC" -+ -+ # Note: need the LIBS below, otherwise Tk won't find Tcl's -+ # symbols when dynamically loaded into tclsh. -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="$CC -shared" -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' -+ else -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}' -+ fi -+ ;; -+ SunOS-5*) -+ -+ # Note: If _REENTRANT isn't defined, then Solaris -+ # won't define thread-safe library routines. -+ -+ AC_DEFINE(_REENTRANT) -+ AC_DEFINE(_POSIX_PTHREAD_SEMANTICS) -+ -+ SHLIB_CFLAGS="-KPIC" -+ -+ # Check to enable 64-bit flags for compiler/linker -+ if test "$do64bit" = "yes" ; then -+ arch=`isainfo` -+ if test "$arch" = "sparcv9 sparc" ; then -+ if test "$GCC" = "yes" ; then -+ if test "`gcc -dumpversion` | awk -F. '{print $1}'" -lt "3" ; then -+ AC_MSG_WARN([64bit mode not supported with GCC < 3.2 on $system]) -+ else -+ do64bit_ok=yes -+ CFLAGS="$CFLAGS -m64 -mcpu=v9" -+ LDFLAGS="$LDFLAGS -m64 -mcpu=v9" -+ SHLIB_CFLAGS="-fPIC" -+ fi -+ else -+ do64bit_ok=yes -+ if test "$do64bitVIS" = "yes" ; then -+ CFLAGS="$CFLAGS -xarch=v9a" -+ LDFLAGS="$LDFLAGS -xarch=v9a" -+ else -+ CFLAGS="$CFLAGS -xarch=v9" -+ LDFLAGS="$LDFLAGS -xarch=v9" -+ fi -+ fi -+ else -+ AC_MSG_WARN("64bit mode only supported sparcv9 system") -+ fi -+ fi -+ -+ # Note: need the LIBS below, otherwise Tk won't find Tcl's -+ # symbols when dynamically loaded into tclsh. -+ -+ SHLIB_LD_LIBS='${LIBS}' -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ if test "$GCC" = "yes" ; then -+ SHLIB_LD="$CC -shared" -+ LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}' -+ if test "$do64bit" = "yes" ; then -+ # We need to specify -static-libgcc or we need to -+ # add the path to the sparv9 libgcc. -+ # JH: static-libgcc is necessary for core Tcl, but may -+ # not be necessary for extensions. -+ SHLIB_LD="$SHLIB_LD -m64 -mcpu=v9 -static-libgcc" -+ # for finding sparcv9 libgcc, get the regular libgcc -+ # path, remove so name and append 'sparcv9' -+ #v9gcclibdir="`gcc -print-file-name=libgcc_s.so` | ..." -+ #LD_SEARCH_FLAGS="${LD_SEARCH_FLAGS},-R,$v9gcclibdir" -+ fi -+ else -+ SHLIB_LD="/usr/ccs/bin/ld -G -z text" -+ LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}' -+ fi -+ ;; -+ ULTRIX-4.*) -+ SHLIB_CFLAGS="-G 0" -+ SHLIB_SUFFIX=".a" -+ SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0" -+ SHLIB_LD_LIBS='${LIBS}' -+ DL_OBJS="tclLoadAout.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS -Wl,-D,08000000" -+ LD_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' -+ if test "$GCC" != "yes" ; then -+ CFLAGS="$CFLAGS -DHAVE_TZSET -std1" -+ fi -+ ;; -+ UNIX_SV* | UnixWare-5*) -+ SHLIB_CFLAGS="-KPIC" -+ SHLIB_LD="cc -G" -+ SHLIB_LD_LIBS="" -+ SHLIB_SUFFIX=".so" -+ DL_OBJS="tclLoadDl.o" -+ DL_LIBS="-ldl" -+ # Some UNIX_SV* systems (unixware 1.1.2 for example) have linkers -+ # that don't grok the -Bexport option. Test that it does. -+ hold_ldflags=$LDFLAGS -+ AC_MSG_CHECKING(for ld accepts -Bexport flag) -+ LDFLAGS="$LDFLAGS -Wl,-Bexport" -+ AC_TRY_LINK(, [int i;], [found=yes], -+ [LDFLAGS=$hold_ldflags found=no]) -+ AC_MSG_RESULT([$found]) -+ LD_SEARCH_FLAGS="" -+ ;; -+ esac -+ -+ if test "$do64bit" = "yes" -a "$do64bit_ok" = "no" ; then -+ AC_MSG_WARN("64bit support being disabled -- don\'t know magic for this platform") -+ fi -+ -+ # Step 4: If pseudo-static linking is in use (see K. B. Kenny, "Dynamic -+ # Loading for Tcl -- What Became of It?". Proc. 2nd Tcl/Tk Workshop, -+ # New Orleans, LA, Computerized Processes Unlimited, 1994), then we need -+ # to determine which of several header files defines the a.out file -+ # format (a.out.h, sys/exec.h, or sys/exec_aout.h). At present, we -+ # support only a file format that is more or less version-7-compatible. -+ # In particular, -+ # - a.out files must begin with `struct exec'. -+ # - the N_TXTOFF on the `struct exec' must compute the seek address -+ # of the text segment -+ # - The `struct exec' must contain a_magic, a_text, a_data, a_bss -+ # and a_entry fields. -+ # The following compilation should succeed if and only if either sys/exec.h -+ # or a.out.h is usable for the purpose. -+ # -+ # Note that the modified COFF format used on MIPS Ultrix 4.x is usable; the -+ # `struct exec' includes a second header that contains information that -+ # duplicates the v7 fields that are needed. -+ -+ if test "x$DL_OBJS" = "xtclLoadAout.o" ; then -+ AC_MSG_CHECKING([sys/exec.h]) -+ AC_TRY_COMPILE([#include ],[ -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_magic == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; -+ ], tcl_ok=usable, tcl_ok=unusable) -+ AC_MSG_RESULT([$tcl_ok]) -+ if test $tcl_ok = usable; then -+ AC_DEFINE(USE_SYS_EXEC_H) -+ else -+ AC_MSG_CHECKING([a.out.h]) -+ AC_TRY_COMPILE([#include ],[ -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_magic == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; -+ ], tcl_ok=usable, tcl_ok=unusable) -+ AC_MSG_RESULT([$tcl_ok]) -+ if test $tcl_ok = usable; then -+ AC_DEFINE(USE_A_OUT_H) -+ else -+ AC_MSG_CHECKING([sys/exec_aout.h]) -+ AC_TRY_COMPILE([#include ],[ -+ struct exec foo; -+ unsigned long seek; -+ int flag; -+#if defined(__mips) || defined(mips) -+ seek = N_TXTOFF (foo.ex_f, foo.ex_o); -+#else -+ seek = N_TXTOFF (foo); -+#endif -+ flag = (foo.a_midmag == OMAGIC); -+ return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry; -+ ], tcl_ok=usable, tcl_ok=unusable) -+ AC_MSG_RESULT([$tcl_ok]) -+ if test $tcl_ok = usable; then -+ AC_DEFINE(USE_SYS_EXEC_AOUT_H) -+ else -+ DL_OBJS="" -+ fi -+ fi -+ fi -+ fi -+ -+ # Step 5: disable dynamic loading if requested via a command-line switch. -+ -+ AC_ARG_ENABLE(load, [ --disable-load disallow dynamic loading and "load" command], -+ [tcl_ok=$enableval], [tcl_ok=yes]) -+ if test "$tcl_ok" = "no"; then -+ DL_OBJS="" -+ fi -+ -+ if test "x$DL_OBJS" != "x" ; then -+ BUILD_DLTEST="\$(DLTEST_TARGETS)" -+ else -+ echo "Can't figure out how to do dynamic loading or shared libraries" -+ echo "on this system." -+ SHLIB_CFLAGS="" -+ SHLIB_LD="" -+ SHLIB_SUFFIX="" -+ DL_OBJS="tclLoadNone.o" -+ DL_LIBS="" -+ LDFLAGS="$LDFLAGS_ORIG" -+ LD_SEARCH_FLAGS="" -+ BUILD_DLTEST="" -+ fi -+ -+ # If we're running gcc, then change the C flags for compiling shared -+ # libraries to the right flags for gcc, instead of those for the -+ # standard manufacturer compiler. -+ -+ if test "$DL_OBJS" != "tclLoadNone.o" ; then -+ if test "$GCC" = "yes" ; then -+ case $system in -+ AIX-*) -+ ;; -+ BSD/OS*) -+ ;; -+ IRIX*) -+ ;; -+ NetBSD-*|FreeBSD-*) -+ ;; -+ Darwin-*) -+ ;; -+ RISCos-*) -+ ;; -+ SCO_SV-3.2*) -+ ;; -+ ULTRIX-4.*) -+ ;; -+ windows) -+ ;; -+ *) -+ SHLIB_CFLAGS="-fPIC" -+ ;; -+ esac -+ fi -+ fi -+ -+ if test "$SHARED_LIB_SUFFIX" = "" ; then -+ SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' -+ fi -+ if test "$UNSHARED_LIB_SUFFIX" = "" ; then -+ UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' -+ fi -+ -+ AC_SUBST(DL_LIBS) -+ AC_SUBST(CFLAGS_DEBUG) -+ AC_SUBST(CFLAGS_OPTIMIZE) -+ AC_SUBST(CFLAGS_WARNING) -+ -+ AC_SUBST(STLIB_LD) -+ AC_SUBST(SHLIB_LD) -+ AC_SUBST(SHLIB_CFLAGS) -+ AC_SUBST(SHLIB_LD_LIBS) -+ AC_SUBST(LDFLAGS_DEBUG) -+ AC_SUBST(LDFLAGS_OPTIMIZE) -+ AC_SUBST(LD_LIBRARY_PATH_VAR) -+ -+ # These must be called after we do the basic CFLAGS checks and -+ # verify any possible 64-bit or similar switches are necessary -+ TEA_TCL_EARLY_FLAGS -+ TEA_TCL_64BIT_FLAGS -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_SERIAL_PORT -+# -+# Determine which interface to use to talk to the serial port. -+# Note that #include lines must begin in leftmost column for -+# some compilers to recognize them as preprocessor directives, -+# and some build environments have stdin not pointing at a -+# pseudo-terminal (usually /dev/null instead.) -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines only one of the following vars: -+# HAVE_SYS_MODEM_H -+# USE_TERMIOS -+# USE_TERMIO -+# USE_SGTTY -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_SERIAL_PORT, [ -+ AC_CHECK_HEADERS(sys/modem.h) -+ AC_MSG_CHECKING([termios vs. termio vs. sgtty]) -+ AC_CACHE_VAL(tcl_cv_api_serial, [ -+ AC_TRY_RUN([ -+#include -+ -+int main() { -+ struct termios t; -+ if (tcgetattr(0, &t) == 0) { -+ cfsetospeed(&t, 0); -+ t.c_cflag |= PARENB | PARODD | CSIZE | CSTOPB; -+ return 0; -+ } -+ return 1; -+}], tcl_cv_api_serial=termios, tcl_cv_api_serial=no, tcl_cv_api_serial=no) -+ if test $tcl_cv_api_serial = no ; then -+ AC_TRY_RUN([ -+#include -+ -+int main() { -+ struct termio t; -+ if (ioctl(0, TCGETA, &t) == 0) { -+ t.c_cflag |= CBAUD | PARENB | PARODD | CSIZE | CSTOPB; -+ return 0; -+ } -+ return 1; -+}], tcl_cv_api_serial=termio, tcl_cv_api_serial=no, tcl_cv_api_serial=no) -+ fi -+ if test $tcl_cv_api_serial = no ; then -+ AC_TRY_RUN([ -+#include -+ -+int main() { -+ struct sgttyb t; -+ if (ioctl(0, TIOCGETP, &t) == 0) { -+ t.sg_ospeed = 0; -+ t.sg_flags |= ODDP | EVENP | RAW; -+ return 0; -+ } -+ return 1; -+}], tcl_cv_api_serial=sgtty, tcl_cv_api_serial=none, tcl_cv_api_serial=none) -+ fi -+ if test $tcl_cv_api_serial = no ; then -+ AC_TRY_RUN([ -+#include -+#include -+ -+int main() { -+ struct termios t; -+ if (tcgetattr(0, &t) == 0 -+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) { -+ cfsetospeed(&t, 0); -+ t.c_cflag |= PARENB | PARODD | CSIZE | CSTOPB; -+ return 0; -+ } -+ return 1; -+}], tcl_cv_api_serial=termios, tcl_cv_api_serial=no, tcl_cv_api_serial=no) -+ fi -+ if test $tcl_cv_api_serial = no; then -+ AC_TRY_RUN([ -+#include -+#include -+ -+int main() { -+ struct termio t; -+ if (ioctl(0, TCGETA, &t) == 0 -+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) { -+ t.c_cflag |= CBAUD | PARENB | PARODD | CSIZE | CSTOPB; -+ return 0; -+ } -+ return 1; -+ }], tcl_cv_api_serial=termio, tcl_cv_api_serial=no, tcl_cv_api_serial=no) -+ fi -+ if test $tcl_cv_api_serial = no; then -+ AC_TRY_RUN([ -+#include -+#include -+ -+int main() { -+ struct sgttyb t; -+ if (ioctl(0, TIOCGETP, &t) == 0 -+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) { -+ t.sg_ospeed = 0; -+ t.sg_flags |= ODDP | EVENP | RAW; -+ return 0; -+ } -+ return 1; -+}], tcl_cv_api_serial=sgtty, tcl_cv_api_serial=none, tcl_cv_api_serial=none) -+ fi]) -+ case $tcl_cv_api_serial in -+ termios) AC_DEFINE(USE_TERMIOS);; -+ termio) AC_DEFINE(USE_TERMIO);; -+ sgtty) AC_DEFINE(USE_SGTTY);; -+ esac -+ AC_MSG_RESULT([$tcl_cv_api_serial]) -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_MISSING_POSIX_HEADERS -+# -+# Supply substitutes for missing POSIX header files. Special -+# notes: -+# - stdlib.h doesn't define strtol, strtoul, or -+# strtod insome versions of SunOS -+# - some versions of string.h don't declare procedures such -+# as strstr -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines some of the following vars: -+# NO_DIRENT_H -+# NO_ERRNO_H -+# NO_VALUES_H -+# HAVE_LIMITS_H or NO_LIMITS_H -+# NO_STDLIB_H -+# NO_STRING_H -+# NO_SYS_WAIT_H -+# NO_DLFCN_H -+# HAVE_SYS_PARAM_H -+# -+# HAVE_STRING_H ? -+# -+# tkUnixPort.h checks for HAVE_LIMITS_H, so do both HAVE and -+# CHECK on limits.h -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_MISSING_POSIX_HEADERS, [ -+ AC_MSG_CHECKING([dirent.h]) -+ AC_TRY_LINK([#include -+#include ], [ -+#ifndef _POSIX_SOURCE -+# ifdef __Lynx__ -+ /* -+ * Generate compilation error to make the test fail: Lynx headers -+ * are only valid if really in the POSIX environment. -+ */ -+ -+ missing_procedure(); -+# endif -+#endif -+DIR *d; -+struct dirent *entryPtr; -+char *p; -+d = opendir("foobar"); -+entryPtr = readdir(d); -+p = entryPtr->d_name; -+closedir(d); -+], tcl_ok=yes, tcl_ok=no) -+ -+ if test $tcl_ok = no; then -+ AC_DEFINE(NO_DIRENT_H) -+ fi -+ -+ AC_MSG_RESULT([$tcl_ok]) -+ AC_CHECK_HEADER(errno.h, , [AC_DEFINE(NO_ERRNO_H)]) -+ AC_CHECK_HEADER(float.h, , [AC_DEFINE(NO_FLOAT_H)]) -+ AC_CHECK_HEADER(values.h, , [AC_DEFINE(NO_VALUES_H)]) -+ AC_CHECK_HEADER(limits.h, -+ [AC_DEFINE(HAVE_LIMITS_H)], [AC_DEFINE(NO_LIMITS_H)]) -+ AC_CHECK_HEADER(stdlib.h, tcl_ok=1, tcl_ok=0) -+ AC_EGREP_HEADER(strtol, stdlib.h, , tcl_ok=0) -+ AC_EGREP_HEADER(strtoul, stdlib.h, , tcl_ok=0) -+ AC_EGREP_HEADER(strtod, stdlib.h, , tcl_ok=0) -+ if test $tcl_ok = 0; then -+ AC_DEFINE(NO_STDLIB_H) -+ fi -+ AC_CHECK_HEADER(string.h, tcl_ok=1, tcl_ok=0) -+ AC_EGREP_HEADER(strstr, string.h, , tcl_ok=0) -+ AC_EGREP_HEADER(strerror, string.h, , tcl_ok=0) -+ -+ # See also memmove check below for a place where NO_STRING_H can be -+ # set and why. -+ -+ if test $tcl_ok = 0; then -+ AC_DEFINE(NO_STRING_H) -+ fi -+ -+ AC_CHECK_HEADER(sys/wait.h, , [AC_DEFINE(NO_SYS_WAIT_H)]) -+ AC_CHECK_HEADER(dlfcn.h, , [AC_DEFINE(NO_DLFCN_H)]) -+ -+ # OS/390 lacks sys/param.h (and doesn't need it, by chance). -+ AC_HAVE_HEADERS(sys/param.h) -+ -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_PATH_X -+# -+# Locate the X11 header files and the X11 library archive. Try -+# the ac_path_x macro first, but if it doesn't find the X stuff -+# (e.g. because there's no xmkmf program) then check through -+# a list of possible directories. Under some conditions the -+# autoconf macro will return an include directory that contains -+# no include files, so double-check its result just to be safe. -+# -+# This should be called after TEA_CONFIG_CFLAGS as setting the -+# LIBS line can confuse some configure macro magic. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Sets the following vars: -+# XINCLUDES -+# XLIBSW -+# LIBS (appends to) -+# TEA_WINDOWINGSYSTEM -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_PATH_X, [ -+ if test "${TEA_PLATFORM}" = "unix" ; then -+ case ${TK_DEFS} in -+ *MAC_OSX_TK*) -+ AC_DEFINE(MAC_OSX_TK) -+ TEA_WINDOWINGSYSTEM="aqua" -+ ;; -+ *) -+ TEA_PATH_UNIX_X -+ TEA_WINDOWINGSYSTEM="x11" -+ ;; -+ esac -+ elif test "${TEA_PLATFORM}" = "windows" ; then -+ TEA_WINDOWINGSYSTEM="windows" -+ fi -+]) -+ -+AC_DEFUN(TEA_PATH_UNIX_X, [ -+ AC_PATH_X -+ not_really_there="" -+ if test "$no_x" = ""; then -+ if test "$x_includes" = ""; then -+ AC_TRY_CPP([#include ], , not_really_there="yes") -+ else -+ if test ! -r $x_includes/X11/Intrinsic.h; then -+ not_really_there="yes" -+ fi -+ fi -+ fi -+ if test "$no_x" = "yes" -o "$not_really_there" = "yes"; then -+ AC_MSG_CHECKING([for X11 header files]) -+ XINCLUDES="# no special path needed" -+ AC_TRY_CPP([#include ], , XINCLUDES="nope") -+ if test "$XINCLUDES" = nope; then -+ dirs="/usr/unsupported/include /usr/local/include /usr/X386/include /usr/X11R6/include /usr/X11R5/include /usr/include/X11R5 /usr/include/X11R4 /usr/openwin/include /usr/X11/include /usr/sww/include" -+ for i in $dirs ; do -+ if test -r $i/X11/Intrinsic.h; then -+ AC_MSG_RESULT([$i]) -+ XINCLUDES=" -I$i" -+ break -+ fi -+ done -+ fi -+ else -+ if test "$x_includes" != ""; then -+ XINCLUDES=-I$x_includes -+ else -+ XINCLUDES="# no special path needed" -+ fi -+ fi -+ if test "$XINCLUDES" = nope; then -+ AC_MSG_RESULT([could not find any!]) -+ XINCLUDES="# no include files found" -+ fi -+ -+ if test "$no_x" = yes; then -+ AC_MSG_CHECKING([for X11 libraries]) -+ XLIBSW=nope -+ dirs="/usr/unsupported/lib /usr/local/lib /usr/X386/lib /usr/X11R6/lib /usr/X11R5/lib /usr/lib/X11R5 /usr/lib/X11R4 /usr/openwin/lib /usr/X11/lib /usr/sww/X11/lib" -+ for i in $dirs ; do -+ if test -r $i/libX11.a -o -r $i/libX11.so -o -r $i/libX11.sl; then -+ AC_MSG_RESULT([$i]) -+ XLIBSW="-L$i -lX11" -+ x_libraries="$i" -+ break -+ fi -+ done -+ else -+ if test "$x_libraries" = ""; then -+ XLIBSW=-lX11 -+ else -+ XLIBSW="-L$x_libraries -lX11" -+ fi -+ fi -+ if test "$XLIBSW" = nope ; then -+ AC_CHECK_LIB(Xwindow, XCreateWindow, XLIBSW=-lXwindow) -+ fi -+ if test "$XLIBSW" = nope ; then -+ AC_MSG_RESULT([could not find any! Using -lX11.]) -+ XLIBSW=-lX11 -+ fi -+ if test x"${XLIBSW}" != x ; then -+ PKG_LIBS="${PKG_LIBS} ${XLIBSW}" -+ fi -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_BLOCKING_STYLE -+# -+# The statements below check for systems where POSIX-style -+# non-blocking I/O (O_NONBLOCK) doesn't work or is unimplemented. -+# On these systems (mostly older ones), use the old BSD-style -+# FIONBIO approach instead. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines some of the following vars: -+# HAVE_SYS_IOCTL_H -+# HAVE_SYS_FILIO_H -+# USE_FIONBIO -+# O_NONBLOCK -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_BLOCKING_STYLE, [ -+ AC_CHECK_HEADERS(sys/ioctl.h) -+ AC_CHECK_HEADERS(sys/filio.h) -+ AC_MSG_CHECKING([FIONBIO vs. O_NONBLOCK for nonblocking I/O]) -+ if test -f /usr/lib/NextStep/software_version; then -+ system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version` -+ else -+ system=`uname -s`-`uname -r` -+ if test "$?" -ne 0 ; then -+ system=unknown -+ else -+ # Special check for weird MP-RAS system (uname returns weird -+ # results, and the version is kept in special file). -+ -+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then -+ system=MP-RAS-`awk '{print $3}' /etc/.relid'` -+ fi -+ if test "`uname -s`" = "AIX" ; then -+ system=AIX-`uname -v`.`uname -r` -+ fi -+ fi -+ fi -+ case $system in -+ # There used to be code here to use FIONBIO under AIX. However, it -+ # was reported that FIONBIO doesn't work under AIX 3.2.5. Since -+ # using O_NONBLOCK seems fine under AIX 4.*, I removed the FIONBIO -+ # code (JO, 5/31/97). -+ -+ OSF*) -+ AC_DEFINE(USE_FIONBIO) -+ AC_MSG_RESULT([FIONBIO]) -+ ;; -+ SunOS-4*) -+ AC_DEFINE(USE_FIONBIO) -+ AC_MSG_RESULT([FIONBIO]) -+ ;; -+ ULTRIX-4.*) -+ AC_DEFINE(USE_FIONBIO) -+ AC_MSG_RESULT([FIONBIO]) -+ ;; -+ *) -+ AC_MSG_RESULT([O_NONBLOCK]) -+ ;; -+ esac -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_TIME_HANLDER -+# -+# Checks how the system deals with time.h, what time structures -+# are used on the system, and what fields the structures have. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines some of the following vars: -+# USE_DELTA_FOR_TZ -+# HAVE_TM_GMTOFF -+# HAVE_TM_TZADJ -+# HAVE_TIMEZONE_VAR -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_TIME_HANDLER, [ -+ AC_CHECK_HEADERS(sys/time.h) -+ AC_HEADER_TIME -+ AC_STRUCT_TIMEZONE -+ -+ AC_CHECK_FUNCS(gmtime_r localtime_r) -+ -+ AC_MSG_CHECKING([tm_tzadj in struct tm]) -+ AC_CACHE_VAL(tcl_cv_member_tm_tzadj, -+ AC_TRY_COMPILE([#include ], [struct tm tm; tm.tm_tzadj;], -+ tcl_cv_member_tm_tzadj=yes, tcl_cv_member_tm_tzadj=no)) -+ AC_MSG_RESULT([$tcl_cv_member_tm_tzadj]) -+ if test $tcl_cv_member_tm_tzadj = yes ; then -+ AC_DEFINE(HAVE_TM_TZADJ) -+ fi -+ -+ AC_MSG_CHECKING([tm_gmtoff in struct tm]) -+ AC_CACHE_VAL(tcl_cv_member_tm_gmtoff, -+ AC_TRY_COMPILE([#include ], [struct tm tm; tm.tm_gmtoff;], -+ tcl_cv_member_tm_gmtoff=yes, tcl_cv_member_tm_gmtoff=no)) -+ AC_MSG_RESULT([$tcl_cv_member_tm_gmtoff]) -+ if test $tcl_cv_member_tm_gmtoff = yes ; then -+ AC_DEFINE(HAVE_TM_GMTOFF) -+ fi -+ -+ # -+ # Its important to include time.h in this check, as some systems -+ # (like convex) have timezone functions, etc. -+ # -+ AC_MSG_CHECKING([long timezone variable]) -+ AC_CACHE_VAL(tcl_cv_var_timezone, -+ AC_TRY_COMPILE([#include ], -+ [extern long timezone; -+ timezone += 1; -+ exit (0);], -+ tcl_cv_timezone_long=yes, tcl_cv_timezone_long=no)) -+ AC_MSG_RESULT([$tcl_cv_timezone_long]) -+ if test $tcl_cv_timezone_long = yes ; then -+ AC_DEFINE(HAVE_TIMEZONE_VAR) -+ else -+ # -+ # On some systems (eg IRIX 6.2), timezone is a time_t and not a long. -+ # -+ AC_MSG_CHECKING([time_t timezone variable]) -+ AC_CACHE_VAL(tcl_cv_timezone_time, -+ AC_TRY_COMPILE([#include ], -+ [extern time_t timezone; -+ timezone += 1; -+ exit (0);], -+ tcl_cv_timezone_time=yes, tcl_cv_timezone_time=no)) -+ AC_MSG_RESULT([$tcl_cv_timezone_time]) -+ if test $tcl_cv_timezone_time = yes ; then -+ AC_DEFINE(HAVE_TIMEZONE_VAR) -+ fi -+ fi -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_BUGGY_STRTOD -+# -+# Under Solaris 2.4, strtod returns the wrong value for the -+# terminating character under some conditions. Check for this -+# and if the problem exists use a substitute procedure -+# "fixstrtod" (provided by Tcl) that corrects the error. -+# Also, on Compaq's Tru64 Unix 5.0, -+# strtod(" ") returns 0.0 instead of a failure to convert. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Might defines some of the following vars: -+# strtod (=fixstrtod) -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_BUGGY_STRTOD, [ -+ AC_CHECK_FUNC(strtod, tcl_strtod=1, tcl_strtod=0) -+ if test "$tcl_strtod" = 1; then -+ AC_MSG_CHECKING([for Solaris2.4/Tru64 strtod bugs]) -+ AC_TRY_RUN([ -+ extern double strtod(); -+ int main() -+ { -+ char *string = "NaN", *spaceString = " "; -+ char *term; -+ double value; -+ value = strtod(string, &term); -+ if ((term != string) && (term[-1] == 0)) { -+ exit(1); -+ } -+ value = strtod(spaceString, &term); -+ if (term == (spaceString+1)) { -+ exit(1); -+ } -+ exit(0); -+ }], tcl_ok=1, tcl_ok=0, tcl_ok=0) -+ if test "$tcl_ok" = 1; then -+ AC_MSG_RESULT([ok]) -+ else -+ AC_MSG_RESULT([buggy]) -+ #LIBOBJS="$LIBOBJS fixstrtod.o" -+ AC_LIBOBJ([fixstrtod]) -+ USE_COMPAT=1 -+ AC_DEFINE(strtod, fixstrtod) -+ fi -+ fi -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_TCL_LINK_LIBS -+# -+# Search for the libraries needed to link the Tcl shell. -+# Things like the math library (-lm) and socket stuff (-lsocket vs. -+# -lnsl) are dealt with here. -+# -+# Arguments: -+# Requires the following vars to be set in the Makefile: -+# DL_LIBS -+# LIBS -+# MATH_LIBS -+# -+# Results: -+# -+# Subst's the following var: -+# TCL_LIBS -+# MATH_LIBS -+# -+# Might append to the following vars: -+# LIBS -+# -+# Might define the following vars: -+# HAVE_NET_ERRNO_H -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_TCL_LINK_LIBS, [ -+ #-------------------------------------------------------------------- -+ # On a few very rare systems, all of the libm.a stuff is -+ # already in libc.a. Set compiler flags accordingly. -+ # Also, Linux requires the "ieee" library for math to work -+ # right (and it must appear before "-lm"). -+ #-------------------------------------------------------------------- -+ -+ AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm") -+ AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"]) -+ -+ #-------------------------------------------------------------------- -+ # Interactive UNIX requires -linet instead of -lsocket, plus it -+ # needs net/errno.h to define the socket-related error codes. -+ #-------------------------------------------------------------------- -+ -+ AC_CHECK_LIB(inet, main, [LIBS="$LIBS -linet"]) -+ AC_CHECK_HEADER(net/errno.h, AC_DEFINE(HAVE_NET_ERRNO_H)) -+ -+ #-------------------------------------------------------------------- -+ # Check for the existence of the -lsocket and -lnsl libraries. -+ # The order here is important, so that they end up in the right -+ # order in the command line generated by make. Here are some -+ # special considerations: -+ # 1. Use "connect" and "accept" to check for -lsocket, and -+ # "gethostbyname" to check for -lnsl. -+ # 2. Use each function name only once: can't redo a check because -+ # autoconf caches the results of the last check and won't redo it. -+ # 3. Use -lnsl and -lsocket only if they supply procedures that -+ # aren't already present in the normal libraries. This is because -+ # IRIX 5.2 has libraries, but they aren't needed and they're -+ # bogus: they goof up name resolution if used. -+ # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. -+ # To get around this problem, check for both libraries together -+ # if -lsocket doesn't work by itself. -+ #-------------------------------------------------------------------- -+ -+ tcl_checkBoth=0 -+ AC_CHECK_FUNC(connect, tcl_checkSocket=0, tcl_checkSocket=1) -+ if test "$tcl_checkSocket" = 1; then -+ AC_CHECK_FUNC(setsockopt, , [AC_CHECK_LIB(socket, setsockopt, -+ LIBS="$LIBS -lsocket", tcl_checkBoth=1)]) -+ fi -+ if test "$tcl_checkBoth" = 1; then -+ tk_oldLibs=$LIBS -+ LIBS="$LIBS -lsocket -lnsl" -+ AC_CHECK_FUNC(accept, tcl_checkNsl=0, [LIBS=$tk_oldLibs]) -+ fi -+ AC_CHECK_FUNC(gethostbyname, , [AC_CHECK_LIB(nsl, gethostbyname, -+ [LIBS="$LIBS -lnsl"])]) -+ -+ # Don't perform the eval of the libraries here because DL_LIBS -+ # won't be set until we call TEA_CONFIG_CFLAGS -+ -+ TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' -+ AC_SUBST(TCL_LIBS) -+ AC_SUBST(MATH_LIBS) -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_TCL_EARLY_FLAGS -+# -+# Check for what flags are needed to be passed so the correct OS -+# features are available. -+# -+# Arguments: -+# None -+# -+# Results: -+# -+# Might define the following vars: -+# _ISOC99_SOURCE -+# _LARGEFILE64_SOURCE -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_TCL_EARLY_FLAG,[ -+ AC_CACHE_VAL([tcl_cv_flag_]translit($1,[A-Z],[a-z]), -+ AC_TRY_COMPILE([$2], $3, [tcl_cv_flag_]translit($1,[A-Z],[a-z])=no, -+ AC_TRY_COMPILE([[#define ]$1[ 1 -+]$2], $3, -+ [tcl_cv_flag_]translit($1,[A-Z],[a-z])=yes, -+ [tcl_cv_flag_]translit($1,[A-Z],[a-z])=no))) -+ if test ["x${tcl_cv_flag_]translit($1,[A-Z],[a-z])[}" = "xyes"] ; then -+ AC_DEFINE($1) -+ tcl_flags="$tcl_flags $1" -+ fi -+]) -+ -+AC_DEFUN(TEA_TCL_EARLY_FLAGS,[ -+ AC_MSG_CHECKING([for required early compiler flags]) -+ tcl_flags="" -+ TEA_TCL_EARLY_FLAG(_ISOC99_SOURCE,[#include ], -+ [char *p = (char *)strtoll; char *q = (char *)strtoull;]) -+ TEA_TCL_EARLY_FLAG(_LARGEFILE64_SOURCE,[#include ], -+ [struct stat64 buf; int i = stat64("/", &buf);]) -+ if test "x${tcl_flags}" = "x" ; then -+ AC_MSG_RESULT([none]) -+ else -+ AC_MSG_RESULT([${tcl_flags}]) -+ fi -+]) -+ -+#-------------------------------------------------------------------- -+# TEA_TCL_64BIT_FLAGS -+# -+# Check for what is defined in the way of 64-bit features. -+# -+# Arguments: -+# None -+# -+# Results: -+# -+# Might define the following vars: -+# TCL_WIDE_INT_IS_LONG -+# TCL_WIDE_INT_TYPE -+# HAVE_STRUCT_DIRENT64 -+# HAVE_STRUCT_STAT64 -+# HAVE_TYPE_OFF64_T -+# -+#-------------------------------------------------------------------- -+ -+AC_DEFUN(TEA_TCL_64BIT_FLAGS, [ -+ AC_MSG_CHECKING([for 64-bit integer type]) -+ AC_CACHE_VAL(tcl_cv_type_64bit,[ -+ tcl_cv_type_64bit=none -+ # See if the compiler knows natively about __int64 -+ AC_TRY_COMPILE(,[__int64 value = (__int64) 0;], -+ tcl_type_64bit=__int64, tcl_type_64bit="long long") -+ # See if we should use long anyway Note that we substitute in the -+ # type that is our current guess for a 64-bit type inside this check -+ # program, so it should be modified only carefully... -+ AC_TRY_COMPILE(,[switch (0) { -+ case 1: case (sizeof(]${tcl_type_64bit}[)==sizeof(long)): ; -+ }],tcl_cv_type_64bit=${tcl_type_64bit})]) -+ if test "${tcl_cv_type_64bit}" = none ; then -+ AC_DEFINE(TCL_WIDE_INT_IS_LONG) -+ AC_MSG_RESULT([using long]) -+ elif test "${tcl_cv_type_64bit}" = "__int64" \ -+ -a "${TEA_PLATFORM}" = "windows" ; then -+ # We actually want to use the default tcl.h checks in this -+ # case to handle both TCL_WIDE_INT_TYPE and TCL_LL_MODIFIER* -+ AC_MSG_RESULT([using Tcl header defaults]) -+ else -+ AC_DEFINE_UNQUOTED(TCL_WIDE_INT_TYPE,${tcl_cv_type_64bit}) -+ AC_MSG_RESULT([${tcl_cv_type_64bit}]) -+ -+ # Now check for auxiliary declarations -+ AC_MSG_CHECKING([for struct dirent64]) -+ AC_CACHE_VAL(tcl_cv_struct_dirent64,[ -+ AC_TRY_COMPILE([#include -+#include ],[struct dirent64 p;], -+ tcl_cv_struct_dirent64=yes,tcl_cv_struct_dirent64=no)]) -+ if test "x${tcl_cv_struct_dirent64}" = "xyes" ; then -+ AC_DEFINE(HAVE_STRUCT_DIRENT64) -+ fi -+ AC_MSG_RESULT([${tcl_cv_struct_dirent64}]) -+ -+ AC_MSG_CHECKING([for struct stat64]) -+ AC_CACHE_VAL(tcl_cv_struct_stat64,[ -+ AC_TRY_COMPILE([#include ],[struct stat64 p; -+], -+ tcl_cv_struct_stat64=yes,tcl_cv_struct_stat64=no)]) -+ if test "x${tcl_cv_struct_stat64}" = "xyes" ; then -+ AC_DEFINE(HAVE_STRUCT_STAT64) -+ fi -+ AC_MSG_RESULT([${tcl_cv_struct_stat64}]) -+ -+ AC_MSG_CHECKING([for off64_t]) -+ AC_CACHE_VAL(tcl_cv_type_off64_t,[ -+ AC_TRY_COMPILE([#include ],[off64_t offset; -+], -+ tcl_cv_type_off64_t=yes,tcl_cv_type_off64_t=no)]) -+ if test "x${tcl_cv_type_off64_t}" = "xyes" ; then -+ AC_DEFINE(HAVE_TYPE_OFF64_T) -+ fi -+ AC_MSG_RESULT([${tcl_cv_type_off64_t}]) -+ fi -+]) -+ -+## -+## Here ends the standard Tcl configuration bits and starts the -+## TEA specific functions -+## -+ -+#------------------------------------------------------------------------ -+# TEA_INIT -- -+# -+# Init various Tcl Extension Architecture (TEA) variables. -+# This should be the first called TEA_* macro. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Defines and substs the following vars: -+# CYGPATH -+# EXEEXT -+# Defines only: -+# TEA_INITED -+# TEA_PLATFORM (windows or unix) -+# -+# "cygpath" is used on windows to generate native path names for include -+# files. These variables should only be used with the compiler and linker -+# since they generate native path names. -+# -+# EXEEXT -+# Select the executable extension based on the host type. This -+# is a lightweight replacement for AC_EXEEXT that doesn't require -+# a compiler. -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_INIT, [ -+ # TEA extensions pass this us the version of TEA they think they -+ # are compatible with. -+ TEA_VERSION="3.2" -+ -+ AC_MSG_CHECKING([for correct TEA configuration]) -+ if test x"${PACKAGE_NAME}" = x ; then -+ AC_MSG_ERROR([ -+The PACKAGE_NAME variable must be defined by your TEA configure.in]) -+ fi -+ if test x"$1" = x ; then -+ AC_MSG_ERROR([ -+TEA version not specified.]) -+ elif test "$1" != "${TEA_VERSION}" ; then -+ AC_MSG_RESULT([warning: requested TEA version "$1", have "${TEA_VERSION}"]) -+ else -+ AC_MSG_RESULT([ok (TEA ${TEA_VERSION})]) -+ fi -+ case "`uname -s`" in -+ *win32*|*WIN32*|*CYGWIN_NT*|*CYGWIN_9*|*CYGWIN_ME*|*MINGW32_*) -+ AC_CHECK_PROG(CYGPATH, cygpath, cygpath -w, echo) -+ EXEEXT=".exe" -+ TEA_PLATFORM="windows" -+ ;; -+ *) -+ CYGPATH=echo -+ EXEEXT="" -+ TEA_PLATFORM="unix" -+ ;; -+ esac -+ -+ # Check if exec_prefix is set. If not use fall back to prefix. -+ # Note when adjusted, so that TEA_PREFIX can correct for this. -+ # This is needed for recursive configures, since autoconf propagates -+ # $prefix, but not $exec_prefix (doh!). -+ if test x$exec_prefix = xNONE ; then -+ exec_prefix_default=yes -+ exec_prefix=$prefix -+ fi -+ -+ AC_SUBST(EXEEXT) -+ AC_SUBST(CYGPATH) -+ -+ # This package name must be replaced statically for AC_SUBST to work -+ AC_SUBST(PKG_LIB_FILE) -+ # Substitute STUB_LIB_FILE in case package creates a stub library too. -+ AC_SUBST(PKG_STUB_LIB_FILE) -+ -+ # We AC_SUBST these here to ensure they are subst'ed, -+ # in case the user doesn't call TEA_ADD_... -+ AC_SUBST(PKG_STUB_SOURCES) -+ AC_SUBST(PKG_STUB_OBJECTS) -+ AC_SUBST(PKG_TCL_SOURCES) -+ AC_SUBST(PKG_HEADERS) -+ AC_SUBST(PKG_INCLUDES) -+ AC_SUBST(PKG_LIBS) -+ AC_SUBST(PKG_CFLAGS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_SOURCES -- -+# -+# Specify one or more source files. Users should check for -+# the right platform before adding to their list. -+# It is not important to specify the directory, as long as it is -+# in the generic, win or unix subdirectory of $(srcdir). -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_SOURCES -+# PKG_OBJECTS -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_SOURCES, [ -+ vars="$@" -+ for i in $vars; do -+ case $i in -+ [\$]*) -+ # allow $-var names -+ PKG_SOURCES="$PKG_SOURCES $i" -+ PKG_OBJECTS="$PKG_OBJECTS $i" -+ ;; -+ *) -+ # check for existence - allows for generic/win/unix VPATH -+ if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \ -+ -a ! -f "${srcdir}/win/$i" -a ! -f "${srcdir}/unix/$i" \ -+ ; then -+ AC_MSG_ERROR([could not find source file '$i']) -+ fi -+ PKG_SOURCES="$PKG_SOURCES $i" -+ # this assumes it is in a VPATH dir -+ i=`basename $i` -+ # handle user calling this before or after TEA_SETUP_COMPILER -+ if test x"${OBJEXT}" != x ; then -+ j="`echo $i | sed -e 's/\.[[^.]]*$//'`.${OBJEXT}" -+ else -+ j="`echo $i | sed -e 's/\.[[^.]]*$//'`.\${OBJEXT}" -+ fi -+ PKG_OBJECTS="$PKG_OBJECTS $j" -+ ;; -+ esac -+ done -+ AC_SUBST(PKG_SOURCES) -+ AC_SUBST(PKG_OBJECTS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_STUB_SOURCES -- -+# -+# Specify one or more source files. Users should check for -+# the right platform before adding to their list. -+# It is not important to specify the directory, as long as it is -+# in the generic, win or unix subdirectory of $(srcdir). -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_STUB_SOURCES -+# PKG_STUB_OBJECTS -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_STUB_SOURCES, [ -+ vars="$@" -+ for i in $vars; do -+ # check for existence - allows for generic/win/unix VPATH -+ if test ! -f "${srcdir}/$i" -a ! -f "${srcdir}/generic/$i" \ -+ -a ! -f "${srcdir}/win/$i" -a ! -f "${srcdir}/unix/$i" \ -+ ; then -+ AC_MSG_ERROR([could not find stub source file '$i']) -+ fi -+ PKG_STUB_SOURCES="$PKG_STUB_SOURCES $i" -+ # this assumes it is in a VPATH dir -+ i=`basename $i` -+ # handle user calling this before or after TEA_SETUP_COMPILER -+ if test x"${OBJEXT}" != x ; then -+ j="`echo $i | sed -e 's/\.[[^.]]*$//'`.${OBJEXT}" -+ else -+ j="`echo $i | sed -e 's/\.[[^.]]*$//'`.\${OBJEXT}" -+ fi -+ PKG_STUB_OBJECTS="$PKG_STUB_OBJECTS $j" -+ done -+ AC_SUBST(PKG_STUB_SOURCES) -+ AC_SUBST(PKG_STUB_OBJECTS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_TCL_SOURCES -- -+# -+# Specify one or more Tcl source files. These should be platform -+# independent runtime files. -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_TCL_SOURCES -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_TCL_SOURCES, [ -+ vars="$@" -+ for i in $vars; do -+ # check for existence, be strict because it is installed -+ if test ! -f "${srcdir}/$i" ; then -+ AC_MSG_ERROR([could not find tcl source file '${srcdir}/$i']) -+ fi -+ PKG_TCL_SOURCES="$PKG_TCL_SOURCES $i" -+ done -+ AC_SUBST(PKG_TCL_SOURCES) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_HEADERS -- -+# -+# Specify one or more source headers. Users should check for -+# the right platform before adding to their list. -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_HEADERS -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_HEADERS, [ -+ vars="$@" -+ for i in $vars; do -+ # check for existence, be strict because it is installed -+ if test ! -f "${srcdir}/$i" ; then -+ AC_MSG_ERROR([could not find header file '${srcdir}/$i']) -+ fi -+ PKG_HEADERS="$PKG_HEADERS $i" -+ done -+ AC_SUBST(PKG_HEADERS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_INCLUDES -- -+# -+# Specify one or more include dirs. Users should check for -+# the right platform before adding to their list. -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_INCLUDES -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_INCLUDES, [ -+ vars="$@" -+ for i in $vars; do -+ PKG_INCLUDES="$PKG_INCLUDES $i" -+ done -+ AC_SUBST(PKG_INCLUDES) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_LIBS -- -+# -+# Specify one or more libraries. Users should check for -+# the right platform before adding to their list. For Windows, -+# libraries provided in "foo.lib" format will be converted to -+# "-lfoo" when using GCC (mingw). -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_LIBS -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_LIBS, [ -+ vars="$@" -+ for i in $vars; do -+ if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then -+ # Convert foo.lib to -lfoo for GCC. No-op if not *.lib -+ i=`echo "$i" | sed -e 's/^\([[^-]].*\)\.lib[$]/-l\1/i'` -+ fi -+ PKG_LIBS="$PKG_LIBS $i" -+ done -+ AC_SUBST(PKG_LIBS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_ADD_CFLAGS -- -+# -+# Specify one or more CFLAGS. Users should check for -+# the right platform before adding to their list. -+# -+# Arguments: -+# one or more file names -+# -+# Results: -+# -+# Defines and substs the following vars: -+# PKG_CFLAGS -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_ADD_CFLAGS, [ -+ PKG_CFLAGS="$PKG_CFLAGS $@" -+ AC_SUBST(PKG_CFLAGS) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PREFIX -- -+# -+# Handle the --prefix=... option by defaulting to what Tcl gave -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# If --prefix or --exec-prefix was not specified, $prefix and -+# $exec_prefix will be set to the values given to Tcl when it was -+# configured. -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_PREFIX, [ -+ if test "${prefix}" = "NONE"; then -+ prefix_default=yes -+ if test x"${TCL_PREFIX}" != x; then -+ AC_MSG_NOTICE([--prefix defaulting to TCL_PREFIX ${TCL_PREFIX}]) -+ prefix=${TCL_PREFIX} -+ else -+ AC_MSG_NOTICE([--prefix defaulting to /usr/local]) -+ prefix=/usr/local -+ fi -+ fi -+ if test "${exec_prefix}" = "NONE" -a x"${prefix_default}" = x"yes" \ -+ -o x"${exec_prefix_default}" = x"yes" ; then -+ if test x"${TCL_EXEC_PREFIX}" != x; then -+ AC_MSG_NOTICE([--exec-prefix defaulting to TCL_EXEC_PREFIX ${TCL_EXEC_PREFIX}]) -+ exec_prefix=${TCL_EXEC_PREFIX} -+ else -+ AC_MSG_NOTICE([--exec-prefix defaulting to ${prefix}]) -+ exec_prefix=$prefix -+ fi -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_SETUP_COMPILER_CC -- -+# -+# Do compiler checks the way we want. This is just a replacement -+# for AC_PROG_CC in TEA configure.in files to make them cleaner. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Sets up CC var and other standard bits we need to make executables. -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_SETUP_COMPILER_CC, [ -+ # Don't put any macros that use the compiler (e.g. AC_TRY_COMPILE) -+ # in this macro, they need to go into TEA_SETUP_COMPILER instead. -+ -+ # If the user did not set CFLAGS, set it now to keep -+ # the AC_PROG_CC macro from adding "-g -O2". -+ if test "${CFLAGS+set}" != "set" ; then -+ CFLAGS="" -+ fi -+ -+ AC_PROG_CC -+ AC_PROG_CPP -+ -+ AC_PROG_INSTALL -+ -+ #-------------------------------------------------------------------- -+ # Checks to see if the make program sets the $MAKE variable. -+ #-------------------------------------------------------------------- -+ -+ AC_PROG_MAKE_SET -+ -+ #-------------------------------------------------------------------- -+ # Find ranlib -+ #-------------------------------------------------------------------- -+ -+ AC_PROG_RANLIB -+ -+ #-------------------------------------------------------------------- -+ # Determines the correct binary file extension (.o, .obj, .exe etc.) -+ #-------------------------------------------------------------------- -+ -+ AC_OBJEXT -+ AC_EXEEXT -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_SETUP_COMPILER -- -+# -+# Do compiler checks that use the compiler. This must go after -+# TEA_SETUP_COMPILER_CC, which does the actual compiler check. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Sets up CC var and other standard bits we need to make executables. -+#------------------------------------------------------------------------ -+AC_DEFUN(TEA_SETUP_COMPILER, [ -+ # Any macros that use the compiler (e.g. AC_TRY_COMPILE) have to go here. -+ AC_REQUIRE([TEA_SETUP_COMPILER_CC]) -+ -+ #------------------------------------------------------------------------ -+ # If we're using GCC, see if the compiler understands -pipe. If so, use it. -+ # It makes compiling go faster. (This is only a performance feature.) -+ #------------------------------------------------------------------------ -+ -+ if test -z "$no_pipe" -a -n "$GCC"; then -+ AC_MSG_CHECKING([if the compiler understands -pipe]) -+ OLDCC="$CC" -+ CC="$CC -pipe" -+ AC_TRY_COMPILE(,, AC_MSG_RESULT([yes]), CC="$OLDCC" -+ AC_MSG_RESULT([no])) -+ fi -+ -+ #-------------------------------------------------------------------- -+ # Common compiler flag setup -+ #-------------------------------------------------------------------- -+ -+ AC_C_BIGENDIAN -+ if test "${TEA_PLATFORM}" = "unix" ; then -+ TEA_TCL_LINK_LIBS -+ TEA_MISSING_POSIX_HEADERS -+ # Let the user call this, because if it triggers, they will -+ # need a compat/strtod.c that is correct. Users can also -+ # use Tcl_GetDouble(FromObj) instead. -+ #TEA_BUGGY_STRTOD -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_MAKE_LIB -- -+# -+# Generate a line that can be used to build a shared/unshared library -+# in a platform independent manner. -+# -+# Arguments: -+# none -+# -+# Requires: -+# -+# Results: -+# -+# Defines the following vars: -+# CFLAGS - Done late here to note disturb other AC macros -+# MAKE_LIB - Command to execute to build the Tcl library; -+# differs depending on whether or not Tcl is being -+# compiled as a shared library. -+# MAKE_SHARED_LIB Makefile rule for building a shared library -+# MAKE_STATIC_LIB Makefile rule for building a static library -+# MAKE_STUB_LIB Makefile rule for building a stub library -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_MAKE_LIB, [ -+ if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then -+ MAKE_STATIC_LIB="\${STLIB_LD} -out:\[$]@ \$(PKG_OBJECTS)" -+ MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\[$]@ \$(PKG_OBJECTS)" -+ MAKE_STUB_LIB="\${STLIB_LD} -out:\[$]@ \$(PKG_STUB_OBJECTS)" -+ else -+ MAKE_STATIC_LIB="\${STLIB_LD} \[$]@ \$(PKG_OBJECTS)" -+ MAKE_SHARED_LIB="\${SHLIB_LD} -o \[$]@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" -+ MAKE_STUB_LIB="\${STLIB_LD} \[$]@ \$(PKG_STUB_OBJECTS)" -+ fi -+ -+ if test "${SHARED_BUILD}" = "1" ; then -+ MAKE_LIB="${MAKE_SHARED_LIB} " -+ else -+ MAKE_LIB="${MAKE_STATIC_LIB} " -+ fi -+ -+ #-------------------------------------------------------------------- -+ # Shared libraries and static libraries have different names. -+ # Use the double eval to make sure any variables in the suffix is -+ # substituted. (@@@ Might not be necessary anymore) -+ #-------------------------------------------------------------------- -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ if test "${SHARED_BUILD}" = "1" ; then -+ # We force the unresolved linking of symbols that are really in -+ # the private libraries of Tcl and Tk. -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" -+ if test x"${TK_BIN_DIR}" != x ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" -+ fi -+ eval eval "PKG_LIB_FILE=${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" -+ else -+ eval eval "PKG_LIB_FILE=${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" -+ fi -+ # Some packages build there own stubs libraries -+ if test "$GCC" = "yes"; then -+ eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ else -+ eval eval "PKG_STUB_LIB_FILE=${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ fi -+ -+ # These aren't needed on Windows (either MSVC or gcc) -+ RANLIB=: -+ RANLIB_STUB=: -+ else -+ RANLIB_STUB="${RANLIB}" -+ if test "${SHARED_BUILD}" = "1" ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" -+ if test x"${TK_BIN_DIR}" != x ; then -+ SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" -+ fi -+ eval eval "PKG_LIB_FILE=lib${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" -+ RANLIB=: -+ else -+ eval eval "PKG_LIB_FILE=lib${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" -+ fi -+ # Some packages build there own stubs libraries -+ eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" -+ fi -+ -+ # These are escaped so that only CFLAGS is picked up at configure time. -+ # The other values will be substituted at make time. -+ CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" -+ if test "${SHARED_BUILD}" = "1" ; then -+ CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" -+ fi -+ -+ AC_SUBST(MAKE_LIB) -+ AC_SUBST(MAKE_SHARED_LIB) -+ AC_SUBST(MAKE_STATIC_LIB) -+ AC_SUBST(MAKE_STUB_LIB) -+ AC_SUBST(RANLIB_STUB) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_LIB_SPEC -- -+# -+# Compute the name of an existing object library located in libdir -+# from the given base name and produce the appropriate linker flags. -+# -+# Arguments: -+# basename The base name of the library without version -+# numbers, extensions, or "lib" prefixes. -+# extra_dir Extra directory in which to search for the -+# library. This location is used first, then -+# $prefix/$exec-prefix, then some defaults. -+# -+# Requires: -+# TEA_INIT and TEA_PREFIX must be called first. -+# -+# Results: -+# -+# Defines the following vars: -+# ${basename}_LIB_NAME The computed library name. -+# ${basename}_LIB_SPEC The computed linker flags. -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_LIB_SPEC, [ -+ AC_MSG_CHECKING([for $1 library]) -+ -+ # Look in exec-prefix for the library (defined by TEA_PREFIX). -+ -+ tea_lib_name_dir="${exec_prefix}/lib" -+ -+ # Or in a user-specified location. -+ -+ if test x"$2" != x ; then -+ tea_extra_lib_dir=$2 -+ else -+ tea_extra_lib_dir=NONE -+ fi -+ -+ for i in \ -+ `ls -dr ${tea_extra_lib_dir}/$1[[0-9]]*.lib 2>/dev/null ` \ -+ `ls -dr ${tea_extra_lib_dir}/lib$1[[0-9]]* 2>/dev/null ` \ -+ `ls -dr ${tea_lib_name_dir}/$1[[0-9]]*.lib 2>/dev/null ` \ -+ `ls -dr ${tea_lib_name_dir}/lib$1[[0-9]]* 2>/dev/null ` \ -+ `ls -dr /usr/lib/$1[[0-9]]*.lib 2>/dev/null ` \ -+ `ls -dr /usr/lib/lib$1[[0-9]]* 2>/dev/null ` \ -+ `ls -dr /usr/local/lib/$1[[0-9]]*.lib 2>/dev/null ` \ -+ `ls -dr /usr/local/lib/lib$1[[0-9]]* 2>/dev/null ` ; do -+ if test -f "$i" ; then -+ tea_lib_name_dir=`dirname $i` -+ $1_LIB_NAME=`basename $i` -+ $1_LIB_PATH_NAME=$i -+ break -+ fi -+ done -+ -+ if test "${TEA_PLATFORM}" = "windows"; then -+ $1_LIB_SPEC=\"`${CYGPATH} ${$1_LIB_PATH_NAME} 2>/dev/null`\" -+ else -+ # Strip off the leading "lib" and trailing ".a" or ".so" -+ -+ tea_lib_name_lib=`echo ${$1_LIB_NAME}|sed -e 's/^lib//' -e 's/\.[[^.]]*$//' -e 's/\.so.*//'` -+ $1_LIB_SPEC="-L${tea_lib_name_dir} -l${tea_lib_name_lib}" -+ fi -+ -+ if test "x${$1_LIB_NAME}" = x ; then -+ AC_MSG_ERROR([not found]) -+ else -+ AC_MSG_RESULT([${$1_LIB_SPEC}]) -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PRIVATE_TCL_HEADERS -- -+# -+# Locate the private Tcl include files -+# -+# Arguments: -+# -+# Requires: -+# TCL_SRC_DIR Assumes that TEA_LOAD_TCLCONFIG has -+# already been called. -+# -+# Results: -+# -+# Substs the following vars: -+# TCL_TOP_DIR_NATIVE -+# TCL_GENERIC_DIR_NATIVE -+# TCL_UNIX_DIR_NATIVE -+# TCL_WIN_DIR_NATIVE -+# TCL_BMAP_DIR_NATIVE -+# TCL_TOOL_DIR_NATIVE -+# TCL_PLATFORM_DIR_NATIVE -+# TCL_BIN_DIR_NATIVE -+# TCL_INCLUDES -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PRIVATE_TCL_HEADERS, [ -+ AC_MSG_CHECKING([for Tcl private include files]) -+ -+ if test "${TEA_PLATFORM}" = "windows"; then -+ TCL_TOP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}`\" -+ TCL_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/generic`\" -+ TCL_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/unix`\" -+ TCL_WIN_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/win`\" -+ TCL_BMAP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/bitmaps`\" -+ TCL_TOOL_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/tools`\" -+ TCL_COMPAT_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/compat`\" -+ TCL_PLATFORM_DIR_NATIVE=${TCL_WIN_DIR_NATIVE} -+ -+ TCL_INCLUDES="-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}" -+ else -+ TCL_TOP_DIR_NATIVE='$(TCL_SRC_DIR)' -+ TCL_GENERIC_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/generic' -+ TCL_UNIX_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/unix' -+ TCL_WIN_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/win' -+ TCL_BMAP_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/bitmaps' -+ TCL_TOOL_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/tools' -+ TCL_COMPAT_DIR_NATIVE='${TCL_TOP_DIR_NATIVE}/compat' -+ TCL_PLATFORM_DIR_NATIVE=${TCL_UNIX_DIR_NATIVE} -+ -+ # substitute these in "relaxed" so that TCL_INCLUDES still works -+ # without requiring the other vars to be defined in the Makefile -+ eval "TCL_INCLUDES=\"-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}\"" -+ fi -+ -+ AC_SUBST(TCL_TOP_DIR_NATIVE) -+ AC_SUBST(TCL_GENERIC_DIR_NATIVE) -+ AC_SUBST(TCL_UNIX_DIR_NATIVE) -+ AC_SUBST(TCL_WIN_DIR_NATIVE) -+ AC_SUBST(TCL_BMAP_DIR_NATIVE) -+ AC_SUBST(TCL_TOOL_DIR_NATIVE) -+ AC_SUBST(TCL_PLATFORM_DIR_NATIVE) -+ -+ AC_SUBST(TCL_INCLUDES) -+ AC_MSG_RESULT([Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}]) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PUBLIC_TCL_HEADERS -- -+# -+# Locate the installed public Tcl header files -+# -+# Arguments: -+# None. -+# -+# Requires: -+# CYGPATH must be set -+# -+# Results: -+# -+# Adds a --with-tclinclude switch to configure. -+# Result is cached. -+# -+# Substs the following vars: -+# TCL_INCLUDES -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PUBLIC_TCL_HEADERS, [ -+ AC_MSG_CHECKING([for Tcl public headers]) -+ -+ AC_ARG_WITH(tclinclude, [ --with-tclinclude directory containing the public Tcl header files], with_tclinclude=${withval}) -+ -+ AC_CACHE_VAL(ac_cv_c_tclh, [ -+ # Use the value from --with-tclinclude, if it was given -+ -+ if test x"${with_tclinclude}" != x ; then -+ if test -f "${with_tclinclude}/tcl.h" ; then -+ ac_cv_c_tclh=${with_tclinclude} -+ else -+ AC_MSG_ERROR([${with_tclinclude} directory does not contain tcl.h]) -+ fi -+ else -+ # Check order: pkg --prefix location, Tcl's --prefix location, -+ # directory of tclConfig.sh, and Tcl source directory. -+ # Looking in the source dir is not ideal, but OK. -+ -+ eval "temp_includedir=${includedir}" -+ list="`ls -d ${temp_includedir} 2>/dev/null` \ -+ `ls -d ${TCL_PREFIX}/include 2>/dev/null` \ -+ `ls -d ${TCL_BIN_DIR}/../include 2>/dev/null` \ -+ `ls -d ${TCL_SRC_DIR}/generic 2>/dev/null`" -+ if test "${TEA_PLATFORM}" != "windows" -o "$GCC" = "yes"; then -+ list="$list /usr/local/include /usr/include" -+ fi -+ for i in $list ; do -+ if test -f "$i/tcl.h" ; then -+ ac_cv_c_tclh=$i -+ break -+ fi -+ done -+ fi -+ ]) -+ -+ # Print a message based on how we determined the include path -+ -+ if test x"${ac_cv_c_tclh}" = x ; then -+ AC_MSG_ERROR([tcl.h not found. Please specify its location with --with-tclinclude]) -+ else -+ AC_MSG_RESULT([${ac_cv_c_tclh}]) -+ fi -+ -+ # Convert to a native path and substitute into the output files. -+ -+ INCLUDE_DIR_NATIVE=`${CYGPATH} ${ac_cv_c_tclh}` -+ -+ TCL_INCLUDES=-I\"${INCLUDE_DIR_NATIVE}\" -+ -+ AC_SUBST(TCL_INCLUDES) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PRIVATE_TK_HEADERS -- -+# -+# Locate the private Tk include files -+# -+# Arguments: -+# -+# Requires: -+# TK_SRC_DIR Assumes that TEA_LOAD_TKCONFIG has -+# already been called. -+# -+# Results: -+# -+# Substs the following vars: -+# TK_INCLUDES -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PRIVATE_TK_HEADERS, [ -+ AC_MSG_CHECKING([for Tk private include files]) -+ -+ if test "${TEA_PLATFORM}" = "windows"; then -+ TK_TOP_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}`\" -+ TK_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/unix`\" -+ TK_WIN_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/win`\" -+ TK_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/generic`\" -+ TK_XLIB_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/xlib`\" -+ TK_PLATFORM_DIR_NATIVE=${TK_WIN_DIR_NATIVE} -+ -+ TK_INCLUDES="-I${TK_GENERIC_DIR_NATIVE} -I${TK_PLATFORM_DIR_NATIVE} -I${TK_XLIB_DIR_NATIVE}" -+ else -+ TK_TOP_DIR_NATIVE='${TK_SRC_DIR}' -+ TK_GENERIC_DIR_NATIVE='${TK_TOP_DIR_NATIVE}/generic' -+ TK_UNIX_DIR_NATIVE='${TK_TOP_DIR_NATIVE}/unix' -+ TK_WIN_DIR_NATIVE='${TK_TOP_DIR_NATIVE}/win' -+ TK_PLATFORM_DIR_NATIVE=${TK_UNIX_DIR_NATIVE} -+ -+ # substitute these in "relaxed" so that TK_INCLUDES still works -+ # without requiring the other vars to be defined in the Makefile -+ eval "TK_INCLUDES=\"-I${TK_GENERIC_DIR_NATIVE} -I${TK_PLATFORM_DIR_NATIVE}\"" -+ fi -+ -+ AC_SUBST(TK_TOP_DIR_NATIVE) -+ AC_SUBST(TK_UNIX_DIR_NATIVE) -+ AC_SUBST(TK_WIN_DIR_NATIVE) -+ AC_SUBST(TK_GENERIC_DIR_NATIVE) -+ AC_SUBST(TK_XLIB_DIR_NATIVE) -+ AC_SUBST(TK_PLATFORM_DIR_NATIVE) -+ -+ AC_SUBST(TK_INCLUDES) -+ AC_MSG_RESULT([Using srcdir found in tkConfig.sh: ${TK_SRC_DIR}]) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PUBLIC_TK_HEADERS -- -+# -+# Locate the installed public Tk header files -+# -+# Arguments: -+# None. -+# -+# Requires: -+# CYGPATH must be set -+# -+# Results: -+# -+# Adds a --with-tkinclude switch to configure. -+# Result is cached. -+# -+# Substs the following vars: -+# TK_INCLUDES -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PUBLIC_TK_HEADERS, [ -+ AC_MSG_CHECKING([for Tk public headers]) -+ -+ AC_ARG_WITH(tkinclude, [ --with-tkinclude directory containing the public Tk header files.], with_tkinclude=${withval}) -+ -+ AC_CACHE_VAL(ac_cv_c_tkh, [ -+ # Use the value from --with-tkinclude, if it was given -+ -+ if test x"${with_tkinclude}" != x ; then -+ if test -f "${with_tkinclude}/tk.h" ; then -+ ac_cv_c_tkh=${with_tkinclude} -+ else -+ AC_MSG_ERROR([${with_tkinclude} directory does not contain tk.h]) -+ fi -+ else -+ # Check order: pkg --prefix location, Tcl's --prefix location, -+ # directory of tclConfig.sh, and Tcl source directory. -+ # Looking in the source dir is not ideal, but OK. -+ -+ eval "temp_includedir=${includedir}" -+ list="`ls -d ${temp_includedir} 2>/dev/null` \ -+ `ls -d ${TK_PREFIX}/include 2>/dev/null` \ -+ `ls -d ${TCL_PREFIX}/include 2>/dev/null` \ -+ `ls -d ${TCL_BIN_DIR}/../include 2>/dev/null` \ -+ `ls -d ${TK_SRC_DIR}/generic 2>/dev/null`" -+ if test "${TEA_PLATFORM}" != "windows" -o "$GCC" = "yes"; then -+ list="$list /usr/local/include /usr/include" -+ fi -+ for i in $list ; do -+ if test -f "$i/tk.h" ; then -+ ac_cv_c_tkh=$i -+ break -+ fi -+ done -+ fi -+ ]) -+ -+ # Print a message based on how we determined the include path -+ -+ if test x"${ac_cv_c_tkh}" = x ; then -+ AC_MSG_ERROR([tk.h not found. Please specify its location with --with-tkinclude]) -+ else -+ AC_MSG_RESULT([${ac_cv_c_tkh}]) -+ fi -+ -+ # Convert to a native path and substitute into the output files. -+ -+ INCLUDE_DIR_NATIVE=`${CYGPATH} ${ac_cv_c_tkh}` -+ -+ TK_INCLUDES=-I\"${INCLUDE_DIR_NATIVE}\" -+ -+ AC_SUBST(TK_INCLUDES) -+ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # On Windows, we need the X compat headers -+ AC_MSG_CHECKING([for X11 header files]) -+ if test ! -r "${INCLUDE_DIR_NATIVE}/X11/Xlib.h"; then -+ INCLUDE_DIR_NATIVE="`${CYGPATH} ${TK_SRC_DIR}/xlib`" -+ TK_XINCLUDES=-I\"${INCLUDE_DIR_NATIVE}\" -+ AC_SUBST(TK_XINCLUDES) -+ fi -+ AC_MSG_RESULT([${INCLUDE_DIR_NATIVE}]) -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PROG_TCLSH -+# Locate a tclsh shell in the following directories: -+# ${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin -+# ${exec_prefix}/bin ${prefix}/bin -+# ${PATH} -+# -+# Arguments -+# none -+# -+# Results -+# Subst's the following values: -+# TCLSH_PROG -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PROG_TCLSH, [ -+ # Allow the user to provide this setting in the env -+ if test "x${TCLSH_PROG}" = "x" ; then -+ AC_MSG_CHECKING([for tclsh]) -+ -+ AC_CACHE_VAL(ac_cv_path_tclsh, [ -+ search_path=`echo ${PATH} | sed -e 's/:/ /g'` -+ if test "${TEA_PLATFORM}" != "windows" -o \ -+ \( "$do64bit_ok" = "no" -a "$doWince" = "no" \) ; then -+ # Do not allow target tclsh in known cross-compile builds, -+ # as we need one we can run on this system -+ search_path="${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin ${exec_prefix}/bin ${prefix}/bin ${search_path}" -+ fi -+ for dir in $search_path ; do -+ for j in `ls -r $dir/tclsh[[8-9]]*${EXEEXT} 2> /dev/null` \ -+ `ls -r $dir/tclsh*${EXEEXT} 2> /dev/null` ; do -+ if test x"$ac_cv_path_tclsh" = x ; then -+ if test -f "$j" ; then -+ ac_cv_path_tclsh=$j -+ break -+ fi -+ fi -+ done -+ done -+ ]) -+ -+ if test -f "$ac_cv_path_tclsh" ; then -+ TCLSH_PROG=$ac_cv_path_tclsh -+ AC_MSG_RESULT([$TCLSH_PROG]) -+ else -+ AC_MSG_ERROR([No tclsh found in PATH: $search_path]) -+ fi -+ fi -+ AC_SUBST(TCLSH_PROG) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PROG_WISH -+# Locate a wish shell in the following directories: -+# ${TK_BIN_DIR} ${TK_BIN_DIR}/../bin -+# ${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin -+# ${exec_prefix}/bin ${prefix}/bin -+# ${PATH} -+# -+# Arguments -+# none -+# -+# Results -+# Subst's the following values: -+# WISH_PROG -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PROG_WISH, [ -+ # Allow the user to provide this setting in the env -+ if test "x${WISH_PROG}" = "x" ; then -+ AC_MSG_CHECKING([for wish]) -+ -+ AC_CACHE_VAL(ac_cv_path_wish, [ -+ search_path=`echo ${PATH} | sed -e 's/:/ /g'` -+ if test "${TEA_PLATFORM}" != "windows" -o \ -+ \( "$do64bit_ok" = "no" -a "$doWince" = "no" \) ; then -+ # Do not allow target wish in known cross-compile builds, -+ # as we need one we can run on this system -+ search_path="${TK_BIN_DIR} ${TK_BIN_DIR}/../bin ${TCL_BIN_DIR} ${TCL_BIN_DIR}/../bin ${exec_prefix}/bin ${prefix}/bin ${search_path}" -+ fi -+ for dir in $search_path ; do -+ for j in `ls -r $dir/wish[[8-9]]*${EXEEXT} 2> /dev/null` \ -+ `ls -r $dir/wish*${EXEEXT} 2> /dev/null` ; do -+ if test x"$ac_cv_path_wish" = x ; then -+ if test -f "$j" ; then -+ ac_cv_path_wish=$j -+ break -+ fi -+ fi -+ done -+ done -+ ]) -+ -+ if test -f "$ac_cv_path_wish" ; then -+ WISH_PROG=$ac_cv_path_wish -+ AC_MSG_RESULT([$WISH_PROG]) -+ else -+ AC_MSG_ERROR([No wish found in PATH: $search_path]) -+ fi -+ fi -+ AC_SUBST(WISH_PROG) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PATH_CONFIG -- -+# -+# Locate the ${1}Config.sh file and perform a sanity check on -+# the ${1} compile flags. These are used by packages like -+# [incr Tk] that load *Config.sh files from more than Tcl and Tk. -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --with-$1=... -+# -+# Defines the following vars: -+# $1_BIN_DIR Full path to the directory containing -+# the $1Config.sh file -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PATH_CONFIG, [ -+ # -+ # Ok, lets find the $1 configuration -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-$1 -+ # -+ -+ if test x"${no_$1}" = x ; then -+ # we reset no_$1 in case something fails here -+ no_$1=true -+ AC_ARG_WITH($1, [ --with-$1 directory containing $1 configuration ($1Config.sh)], with_$1config=${withval}) -+ AC_MSG_CHECKING([for $1 configuration]) -+ AC_CACHE_VAL(ac_cv_c_$1config,[ -+ -+ # First check to see if --with-$1 was specified. -+ if test x"${with_$1config}" != x ; then -+ case ${with_$1config} in -+ */$1Config.sh ) -+ if test -f ${with_$1config}; then -+ AC_MSG_WARN([--with-$1 argument should refer to directory containing $1Config.sh, not to $1Config.sh itself]) -+ with_$1config=`echo ${with_$1config} | sed 's!/$1Config\.sh$!!'` -+ fi;; -+ esac -+ if test -f "${with_$1config}/$1Config.sh" ; then -+ ac_cv_c_$1config=`(cd ${with_$1config}; pwd)` -+ else -+ AC_MSG_ERROR([${with_$1config} directory doesn't contain $1Config.sh]) -+ fi -+ fi -+ -+ # then check for a private $1 installation -+ if test x"${ac_cv_c_$1config}" = x ; then -+ for i in \ -+ ../$1 \ -+ `ls -dr ../$1*[[0-9]].[[0-9]]*.[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../$1*[[0-9]].[[0-9]][[0-9]] 2>/dev/null` \ -+ `ls -dr ../$1*[[0-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../$1*[[0-9]].[[0-9]]* 2>/dev/null` \ -+ ../../$1 \ -+ `ls -dr ../../$1*[[0-9]].[[0-9]]*.[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../$1*[[0-9]].[[0-9]][[0-9]] 2>/dev/null` \ -+ `ls -dr ../../$1*[[0-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../$1*[[0-9]].[[0-9]]* 2>/dev/null` \ -+ ../../../$1 \ -+ `ls -dr ../../../$1*[[0-9]].[[0-9]]*.[[0-9]]* 2>/dev/null` \ -+ `ls -dr ../../../$1*[[0-9]].[[0-9]][[0-9]] 2>/dev/null` \ -+ `ls -dr ../../../$1*[[0-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ../../../$1*[[0-9]].[[0-9]]* 2>/dev/null` \ -+ ${srcdir}/../$1 \ -+ `ls -dr ${srcdir}/../$1*[[0-9]].[[0-9]]*.[[0-9]]* 2>/dev/null` \ -+ `ls -dr ${srcdir}/../$1*[[0-9]].[[0-9]][[0-9]] 2>/dev/null` \ -+ `ls -dr ${srcdir}/../$1*[[0-9]].[[0-9]] 2>/dev/null` \ -+ `ls -dr ${srcdir}/../$1*[[0-9]].[[0-9]]* 2>/dev/null` \ -+ ; do -+ if test -f "$i/$1Config.sh" ; then -+ ac_cv_c_$1config=`(cd $i; pwd)` -+ break -+ fi -+ if test -f "$i/unix/$1Config.sh" ; then -+ ac_cv_c_$1config=`(cd $i/unix; pwd)` -+ break -+ fi -+ done -+ fi -+ -+ # check in a few common install locations -+ if test x"${ac_cv_c_$1config}" = x ; then -+ for i in `ls -d ${exec_prefix}/lib 2>/dev/null` \ -+ `ls -d ${prefix}/lib 2>/dev/null` \ -+ `ls -d /usr/local/lib 2>/dev/null` \ -+ `ls -d /usr/contrib/lib 2>/dev/null` \ -+ `ls -d /usr/lib 2>/dev/null` \ -+ ; do -+ if test -f "$i/$1Config.sh" ; then -+ ac_cv_c_$1config=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ ]) -+ -+ if test x"${ac_cv_c_$1config}" = x ; then -+ $1_BIN_DIR="# no $1 configs found" -+ AC_MSG_WARN("Cannot find $1 configuration definitions") -+ exit 0 -+ else -+ no_$1= -+ $1_BIN_DIR=${ac_cv_c_$1config} -+ AC_MSG_RESULT([found $$1_BIN_DIR/$1Config.sh]) -+ fi -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_LOAD_CONFIG -- -+# -+# Load the $1Config.sh file -+# -+# Arguments: -+# -+# Requires the following vars to be set: -+# $1_BIN_DIR -+# -+# Results: -+# -+# Subst the following vars: -+# $1_SRC_DIR -+# $1_LIB_FILE -+# $1_LIB_SPEC -+# -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_LOAD_CONFIG, [ -+ AC_MSG_CHECKING([for existence of ${$1_BIN_DIR}/$1Config.sh]) -+ -+ if test -f "${$1_BIN_DIR}/$1Config.sh" ; then -+ AC_MSG_RESULT([loading]) -+ . ${$1_BIN_DIR}/$1Config.sh -+ else -+ AC_MSG_RESULT([file not found]) -+ fi -+ -+ # -+ # If the $1_BIN_DIR is the build directory (not the install directory), -+ # then set the common variable name to the value of the build variables. -+ # For example, the variable $1_LIB_SPEC will be set to the value -+ # of $1_BUILD_LIB_SPEC. An extension should make use of $1_LIB_SPEC -+ # instead of $1_BUILD_LIB_SPEC since it will work with both an -+ # installed and uninstalled version of Tcl. -+ # -+ -+ if test -f ${$1_BIN_DIR}/Makefile ; then -+ AC_MSG_WARN([Found Makefile - using build library specs for $1]) -+ $1_LIB_SPEC=${$1_BUILD_LIB_SPEC} -+ $1_STUB_LIB_SPEC=${$1_BUILD_STUB_LIB_SPEC} -+ $1_STUB_LIB_PATH=${$1_BUILD_STUB_LIB_PATH} -+ fi -+ -+ AC_SUBST($1_VERSION) -+ AC_SUBST($1_BIN_DIR) -+ AC_SUBST($1_SRC_DIR) -+ -+ AC_SUBST($1_LIB_FILE) -+ AC_SUBST($1_LIB_SPEC) -+ -+ AC_SUBST($1_STUB_LIB_FILE) -+ AC_SUBST($1_STUB_LIB_SPEC) -+ AC_SUBST($1_STUB_LIB_PATH) -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PATH_CELIB -- -+# -+# Locate Keuchel's celib emulation layer for targeting Win/CE -+# -+# Arguments: -+# none -+# -+# Results: -+# -+# Adds the following arguments to configure: -+# --with-celib=... -+# -+# Defines the following vars: -+# CELIB_DIR Full path to the directory containing -+# the include and platform lib files -+#------------------------------------------------------------------------ -+ -+AC_DEFUN(TEA_PATH_CELIB, [ -+ # First, look for one uninstalled. -+ # the alternative search directory is invoked by --with-celib -+ -+ if test x"${no_celib}" = x ; then -+ # we reset no_celib in case something fails here -+ no_celib=true -+ AC_ARG_WITH(celib,[ --with-celib=DIR use Windows/CE support library from DIR], with_celibconfig=${withval}) -+ AC_MSG_CHECKING([for Windows/CE celib directory]) -+ AC_CACHE_VAL(ac_cv_c_celibconfig,[ -+ # First check to see if --with-celibconfig was specified. -+ if test x"${with_celibconfig}" != x ; then -+ if test -d "${with_celibconfig}/inc" ; then -+ ac_cv_c_celibconfig=`(cd ${with_celibconfig}; pwd)` -+ else -+ AC_MSG_ERROR([${with_celibconfig} directory doesn't contain inc directory]) -+ fi -+ fi -+ -+ # then check for a celib library -+ if test x"${ac_cv_c_celibconfig}" = x ; then -+ for i in \ -+ ../celib-palm-3.0 \ -+ ../celib \ -+ ../../celib-palm-3.0 \ -+ ../../celib \ -+ `ls -dr ../celib-*3.[[0-9]]* 2>/dev/null` \ -+ ${srcdir}/../celib-palm-3.0 \ -+ ${srcdir}/../celib \ -+ `ls -dr ${srcdir}/../celib-*3.[[0-9]]* 2>/dev/null` \ -+ ; do -+ if test -d "$i/inc" ; then -+ ac_cv_c_celibconfig=`(cd $i; pwd)` -+ break -+ fi -+ done -+ fi -+ ]) -+ if test x"${ac_cv_c_celibconfig}" = x ; then -+ AC_MSG_ERROR([Cannot find celib support library directory]) -+ else -+ no_celib= -+ CELIB_DIR=${ac_cv_c_celibconfig} -+ AC_MSG_RESULT([found $CELIB_DIR]) -+ TEA_PATH_NOSPACE(CELIB_DIR, ${ac_cv_c_celibconfig}) -+ fi -+ fi -+]) -+ -+#------------------------------------------------------------------------ -+# TEA_PATH_NOSPACE -+# Ensure that the given path has no spaces. This is necessary for -+# CC (and consitutuent vars that build it up) to work in the -+# tortured autoconf environment. Currently only for Windows use. -+# -+# Arguments -+# VAR - name of the variable to set -+# PATH - path to ensure no spaces in -+# -+# Results -+# Sets $VAR to short path of $PATH if it can be found. -+#------------------------------------------------------------------------ -+ -+AC_DEFUN([TEA_PATH_NOSPACE], [ -+ if test "${TEA_PLATFORM}" = "windows" ; then -+ # we need TCLSH_PROG defined to get Windows short pathnames -+ AC_REQUIRE([TEA_PROG_TCLSH]) -+ -+ AC_MSG_CHECKING([short pathname for $1 ($2)]) -+ -+ shortpath= -+ case "$2" in -+ *\ *) -+ # Only do this if we need to. -+ shortpath=`echo "puts [[file attributes {$2} -shortname]] ; exit" | ${TCLSH_PROG} 2>/dev/null` -+ ;; -+ esac -+ if test "x${shortpath}" = "x" ; then -+ AC_MSG_RESULT([not changed]) -+ else -+ $1=$shortpath -+ AC_MSG_RESULT([${$1}]) -+ fi -+ fi -+]) -diff -Naur insight-6.8.orig/itcl/itcl/tests/all insight-6.8.new/itcl/itcl/tests/all ---- insight-6.8.orig/itcl/itcl/tests/all 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/all 1970-01-01 01:00:00.000000000 +0100 -@@ -1,21 +0,0 @@ --# This file contains a top-level script to run all of the Tcl --# tests. Execute it by invoking "source all" when running tclTest --# in this directory. --# --# SCCS: @(#) all 1.7 96/02/16 08:55:38 --# ------------------------------------------------------------------ --# THIS SCRIPT IS NOW DEPRECATED! It is kept for older Tcl --# installations that don't have the "tcltest" package. --# Instead, use the "all.tcl" script to run the test suite. --# ------------------------------------------------------------------ -- --foreach i [lsort [glob *.test]] { -- if [string match l.*.test $i] { -- # This is an SCCS lock file; ignore it. -- continue -- } -- puts stdout $i -- if [catch {source $i} msg] { -- puts $msg -- } --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/all.tcl insight-6.8.new/itcl/itcl/tests/all.tcl ---- insight-6.8.orig/itcl/itcl/tests/all.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/all.tcl 2008-08-18 18:56:44.000000000 +0200 -@@ -7,116 +7,11 @@ - # Copyright (c) 1998-2000 by Ajuba Solutions - # All rights reserved. - # --# RCS: @(#) $Id: all.tcl,v 1.2 2000/07/06 06:43:30 mmc Exp $ -+# RCS: @(#) $Id: all.tcl,v 1.5 2004/02/12 18:26:18 davygrvy Exp $ - --package require tcltest --namespace import -force ::tcltest::* -+package require tcltest 2.1 - --# Look for the -exedir flag and find a suitable tclsh executable. -+tcltest::testsDirectory [file dir [info script]] -+tcltest::runAllTests - --if {(![info exists argv]) || ([llength $argv] < 1)} { -- set flagArray {} --} else { -- set flagArray $argv --} -- --array set flag $flagArray --if {[info exists flag(-exedir)]} { -- set shell [lindex \ -- [glob -nocomplain \ -- [file join $flag(-exedir) tclsh*.bin] \ -- [file join $flag(-exedir) tclsh*]] 0] --} else { -- set shell $::tcltest::tcltest --} -- --set ::tcltest::testSingleFile false -- --# use [pwd] trick to expand relative file paths to absolute paths - MMc --set cwd [pwd] --cd [file dirname [info script]] --set ::tcltest::testsDirectory [pwd] --cd $cwd -- --set logfile [file join $::tcltest::temporaryDirectory Log.txt] -- --puts stdout "Using interp: $shell" --puts stdout "Running tests in working dir: $::tcltest::testsDirectory" --if {[llength $::tcltest::skip] > 0} { -- puts stdout "Skipping tests that match: $::tcltest::skip" --} --if {[llength $::tcltest::match] > 0} { -- puts stdout "Only running tests that match: $::tcltest::match" --} -- --if {[llength $::tcltest::skipFiles] > 0} { -- puts stdout "Skipping test files that match: $::tcltest::skipFiles" --} --if {[llength $::tcltest::matchFiles] > 0} { -- puts stdout "Only sourcing test files that match: $::tcltest::matchFiles" --} -- --set timeCmd {clock format [clock seconds]} --puts stdout "Tests began at [eval $timeCmd]" -- --# source each of the specified tests --foreach file [lsort [::tcltest::getMatchingFiles]] { -- set tail [file tail $file] -- puts stdout $tail -- -- # Change to the tests directory so the value of the following -- # variable is set correctly when we spawn the child test processes -- -- cd $::tcltest::testsDirectory -- set cmd [concat [list | $shell $file] [split $argv] \ -- [list -outfile $logfile]] -- if {[catch { -- set pipeFd [open $cmd "r"] -- while {[gets $pipeFd line] >= 0} { -- puts $::tcltest::outputChannel $line -- } -- close $pipeFd -- } msg]} { -- # Print results to ::tcltest::outputChannel. -- puts $::tcltest::outputChannel $msg -- } -- -- # Now concatenate the temporary log file to -- # ::tcltest::outputChannel -- if {[catch { -- set fd [open $logfile "r"] -- while {![eof $fd]} { -- gets $fd line -- if {![eof $fd]} { -- if {[regexp {^([^:]+):\tTotal\t([0-9]+)\tPassed\t([0-9]+)\tSkipped\t([0-9]+)\tFailed\t([0-9]+)} $line null testFile Total Passed Skipped Failed]} { -- foreach index [list "Total" "Passed" "Skipped" \ -- "Failed"] { -- incr ::tcltest::numTests($index) [set $index] -- } -- incr ::tcltest::numTestFiles -- if {$Failed > 0} { -- lappend ::tcltest::failFiles $testFile -- } -- } -- puts $::tcltest::outputChannel $line -- } -- } -- close $fd -- } msg]} { -- puts $::tcltest::outputChannel $msg -- } --} -- --set numFailures [llength $::tcltest::failFiles] -- --# cleanup --puts stdout "\nTests ended at [eval $timeCmd]" --::tcltest::cleanupTests 1 -- --if {$numFailures > 0} { -- return -code error -errorcode $numFailures \ -- -errorinfo "Found $numFailures test file failures" --} else { -- return --} --exit -+return -diff -Naur insight-6.8.orig/itcl/itcl/tests/basic.test insight-6.8.new/itcl/itcl/tests/basic.test ---- insight-6.8.orig/itcl/itcl/tests/basic.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/basic.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: basic.test,v 1.4 2000/07/06 06:43:30 mmc Exp $ -+# RCS: $Id: basic.test,v 1.8 2004/12/14 08:13:58 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Simple class definition -@@ -94,6 +94,33 @@ - Counter -foo - itcl::find objects -class Counter -foo - } {-foo} -+test basic-1.12 {is command with class argument} { -+ itcl::is class Counter -+} {1} -+ -+test basic-1.13 {is command with class argument (global namespace)} { -+ itcl::is class ::Counter -+} {1} -+ -+test basic-1.14 {is command with class argument (wrapped in code command)} { -+ itcl::is class [itcl::code Counter] -+} {1} -+ -+test basic-1.14 {is command with class argument (class does not exist)} { -+ itcl::is class Count -+} {0} -+ -+test basic-1.15 {is command with object argument} { -+ itcl::is object -foo -+} {1} -+ -+test basic-1.16 {is command with object argument (object does not exist)} { -+ itcl::is object xxx -+} {0} -+ -+test basic-1.15 {is command with object argument (with code command)} { -+ itcl::is object [itcl::code -- -foo] -+} {1} - - # ---------------------------------------------------------------------- - # #auto names -@@ -186,7 +213,13 @@ - list [Counter #auto] [Counter #auto] - } {counter0 counter1} - --test basic-4.5 {when a class is destroyed, its objects are deleted} { -+test basic-4.5 {namespaces for #auto are prepended to the command name} { -+ namespace eval someNS1 {} -+ namespace eval someNS2 {} -+ list [Counter someNS1::#auto] [Counter someNS2::#auto] -+} [list someNS1::counter2 someNS2::counter3] -+ -+test basic-4.6 {when a class is destroyed, its objects are deleted} { - list [lsort [itcl::find objects counter*]] \ - [itcl::delete class Counter] \ - [lsort [itcl::find objects counter*]] -@@ -297,7 +330,7 @@ - - test basic-6.3 {test array access for commons} { - lsort [test_arrays0 do array get colors] --} {#0000ff #00ff00 #ff0000 blue green red} -+} [list #0000ff #00ff00 #ff0000 blue green red] - - test basic-6.4 {test array access for instance variables via "upvar"} { - test_arrays0 do test_arrays_get nums -diff -Naur insight-6.8.orig/itcl/itcl/tests/body.test insight-6.8.new/itcl/itcl/tests/body.test ---- insight-6.8.orig/itcl/itcl/tests/body.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/body.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: body.test,v 1.3 2000/06/01 20:34:34 wart Exp $ -+# RCS: $Id: body.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Test "body" command -diff -Naur insight-6.8.orig/itcl/itcl/tests/chain.test insight-6.8.new/itcl/itcl/tests/chain.test ---- insight-6.8.orig/itcl/itcl/tests/chain.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/chain.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: chain.test,v 1.3 2000/06/01 20:34:34 wart Exp $ -+# RCS: $Id: chain.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Chaining methods and procs -diff -Naur insight-6.8.orig/itcl/itcl/tests/defs insight-6.8.new/itcl/itcl/tests/defs ---- insight-6.8.orig/itcl/itcl/tests/defs 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/defs 1970-01-01 01:00:00.000000000 +0100 -@@ -1,351 +0,0 @@ --# This file contains support code for the Tcl test suite. It is --# normally sourced by the individual files in the test suite before --# they run their tests. This improved approach to testing was designed --# and initially implemented by Mary Ann May-Pumphrey of Sun Microsystems. --# --# Copyright (c) 1990-1994 The Regents of the University of California. --# Copyright (c) 1994-1996 Sun Microsystems, Inc. --# --# See the file "license.terms" for information on usage and redistribution --# of this file, and for a DISCLAIMER OF ALL WARRANTIES. --# --# SCCS: @(#) defs 1.44 96/10/08 17:26:58 --# ------------------------------------------------------------------ --# THIS SCRIPT IS NOW DEPRECATED! It is kept for older Tcl --# installations that don't have the "tcltest" package. --# Instead, use "package require tcltest" in the test suite. --# ------------------------------------------------------------------ -- --if ![info exists VERBOSE] { -- set VERBOSE 0 --} --if ![info exists TESTS] { -- set TESTS {} --} -- --# If tests are being run as root, issue a warning message and set a --# variable to prevent some tests from running at all. -- --set user {} --if {$tcl_platform(platform) == "unix"} { -- catch {set user [exec whoami]} -- if {$user == ""} { -- catch {regexp {^[^(]*\(([^)]*)\)} [exec id] dummy user} -- } -- if {$user == ""} {set user root} -- if {$user == "root"} { -- puts stdout "Warning: you're executing as root. I'll have to" -- puts stdout "skip some of the tests, since they'll fail as root." -- } --} -- --# Some of the tests don't work on some system configurations due to --# differences in word length, file system configuration, etc. In order --# to prevent false alarms, these tests are generally only run in the --# master development directory for Tcl. The presence of a file --# "doAllTests" in this directory is used to indicate that the non-portable --# tests should be run. -- --set doNonPortableTests [file exists doAllTests] -- --# If there is no "memory" command (because memory debugging isn't --# enabled), generate a dummy command that does nothing. -- --if {[info commands memory] == ""} { -- proc memory args {} --} -- --# Check configuration information that will determine which tests --# to run. To do this, create an array testConfig. Each element --# has a 0 or 1 value, and the following elements are defined: --# unixOnly - 1 means this is a UNIX platform, so it's OK --# to run tests that only work under UNIX. --# macOnly - 1 means this is a Mac platform, so it's OK --# to run tests that only work on Macs. --# pcOnly - 1 means this is a PC platform, so it's OK to --# run tests that only work on PCs. --# unixOrPc - 1 means this is a UNIX or PC platform. --# macOrPc - 1 means this is a Mac or PC platform. --# macOrUnix - 1 means this is a Mac or UNIX platform. --# nonPortable - 1 means this the tests are being running in --# the master Tcl/Tk development environment; --# Some tests are inherently non-portable because --# they depend on things like word length, file system --# configuration, window manager, etc. These tests --# are only run in the main Tcl development directory --# where the configuration is well known. The presence --# of the file "doAllTests" in this directory indicates --# that it is safe to run non-portable tests. --# tempNotPc - The inverse of pcOnly. This flag is used to --# temporarily disable a test. --# nonBlockFiles - 1 means this platform supports setting files into --# nonblocking mode. --# asyncPipeClose- 1 means this platform supports async flush and --# async close on a pipe. --# unixExecs - 1 means this machine has commands such as 'cat', --# 'echo' etc available. -- --catch {unset testConfig} -- --package require Itcl -- --if {$tcl_platform(platform) == "unix"} { -- set testConfig(unixOnly) 1 -- set testConfig(tempNotPc) 1 --} else { -- set testConfig(unixOnly) 0 --} --if {$tcl_platform(platform) == "macintosh"} { -- set testConfig(tempNotPc) 1 -- set testConfig(macOnly) 1 --} else { -- set testConfig(macOnly) 0 --} --if {$tcl_platform(platform) == "windows"} { -- set testConfig(pcOnly) 1 --} else { -- set testConfig(pcOnly) 0 --} --set testConfig(unixOrPc) [expr $testConfig(unixOnly) || $testConfig(pcOnly)] --set testConfig(macOrPc) [expr $testConfig(macOnly) || $testConfig(pcOnly)] --set testConfig(macOrUnix) [expr $testConfig(macOnly) || $testConfig(unixOnly)] --set testConfig(nonPortable) [file exists doAllTests] -- --set f [open defs r] --if {[expr [catch {fconfigure $f -blocking off}]] == 0} { -- set testConfig(nonBlockFiles) 1 --} else { -- set testConfig(nonBlockFiles) 0 --} --close $f -- --# Test for SCO Unix - cannot run async flushing tests because a potential --# problem with select is apparently interfering. (Mark Diekhans). -- --if {$tcl_platform(platform) == "unix"} { -- if {[catch {exec uname -X | fgrep {Release = 3.2v}}] == 0} { -- set testConfig(asyncPipeClose) 0 -- } else { -- set testConfig(asyncPipeClose) 1 -- } --} else { -- set testConfig(asyncPipeClose) 1 --} -- --# Test to see if execed commands such as cat, echo, rm and so forth are --# present on this machine. -- --set testConfig(unixExecs) 1 --if {$tcl_platform(platform) == "macintosh"} { -- set testConfig(unixExecs) 0 --} --if {($testConfig(unixExecs) == 1) && ($tcl_platform(platform) == "windows")} { -- if {[catch {exec cat defs}] == 1} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && ([catch {exec echo hello}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && \ -- ([catch {exec sh -c echo hello}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && ([catch {exec wc defs}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {$testConfig(unixExecs) == 1} { -- exec echo hello > removeMe -- if {[catch {exec rm removeMe}] == 1} { -- set testConfig(unixExecs) 0 -- } -- } -- if {($testConfig(unixExecs) == 1) && ([catch {exec sleep 1}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && \ -- ([catch {exec fgrep unixExecs defs}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && ([catch {exec ps}] == 1)} { -- set testConfig(unixExecs) 0 -- } -- if {($testConfig(unixExecs) == 1) && \ -- ([catch {exec echo abc > removeMe}] == 0) && \ -- ([catch {exec chmod 644 removeMe}] == 1) && \ -- ([catch {exec rm removeMe}] == 0)} { -- set testConfig(unixExecs) 0 -- } else { -- catch {exec rm -f removeMe} -- } -- if {($testConfig(unixExecs) == 1) && \ -- ([catch {exec mkdir removeMe}] == 1)} { -- set testConfig(unixExecs) 0 -- } else { -- catch {exec rm -r removeMe} -- } -- if {$testConfig(unixExecs) == 0} { -- puts stdout "Warning: Unix-style executables are not available, so" -- puts stdout "some tests will be skipped." -- } --} -- --proc print_verbose {name description script code answer} { -- puts stdout "\n" -- puts stdout "==== $name $description" -- puts stdout "==== Contents of test case:" -- puts stdout "$script" -- if {$code != 0} { -- if {$code == 1} { -- puts stdout "==== Test generated error:" -- puts stdout $answer -- } elseif {$code == 2} { -- puts stdout "==== Test generated return exception; result was:" -- puts stdout $answer -- } elseif {$code == 3} { -- puts stdout "==== Test generated break exception" -- } elseif {$code == 4} { -- puts stdout "==== Test generated continue exception" -- } else { -- puts stdout "==== Test generated exception $code; message was:" -- puts stdout $answer -- } -- } else { -- puts stdout "==== Result was:" -- puts stdout "$answer" -- } --} -- --# test -- --# This procedure runs a test and prints an error message if the --# test fails. If VERBOSE has been set, it also prints a message --# even if the test succeeds. The test will be skipped if it --# doesn't match the TESTS variable, or if one of the elements --# of "constraints" turns out not to be true. --# --# Arguments: --# name - Name of test, in the form foo-1.2. --# description - Short textual description of the test, to --# help humans understand what it does. --# constraints - A list of one or more keywords, each of --# which must be the name of an element in --# the array "testConfig". If any of these --# elements is zero, the test is skipped. --# This argument may be omitted. --# script - Script to run to carry out the test. It must --# return a result that can be checked for --# correctness. --# answer - Expected result from script. -- --proc test {name description script answer args} { -- global VERBOSE TESTS testConfig -- if {[string compare $TESTS ""] != 0} then { -- set ok 0 -- foreach test $TESTS { -- if [string match $test $name] then { -- set ok 1 -- break -- } -- } -- if !$ok then return -- } -- set i [llength $args] -- if {$i == 0} { -- # Empty body -- } elseif {$i == 1} { -- # "constraints" argument exists; shuffle arguments down, then -- # make sure that the constraints are satisfied. -- -- set constraints $script -- set script $answer -- set answer [lindex $args 0] -- foreach constraint $constraints { -- if {![info exists testConfig($constraint)] -- || !$testConfig($constraint)} { -- return -- } -- } -- } else { -- error "wrong # args: must be \"test name description ?constraints? script answer\"" -- } -- memory tag $name -- set code [catch {uplevel $script} result] -- if {$code != 0} { -- print_verbose $name $description $script \ -- $code $result -- } elseif {[string compare $result $answer] == 0} then { -- if $VERBOSE then { -- if {$VERBOSE > 0} { -- print_verbose $name $description $script \ -- $code $result -- } -- puts stdout "++++ $name PASSED" -- } -- } else { -- print_verbose $name $description $script \ -- $code $result -- puts stdout "---- Result should have been:" -- puts stdout "$answer" -- puts stdout "---- $name FAILED" -- } --} -- --proc dotests {file args} { -- global TESTS -- set savedTests $TESTS -- set TESTS $args -- source $file -- set TESTS $savedTests --} -- --proc normalizeMsg {msg} { -- regsub "\n$" [string tolower $msg] "" msg -- regsub -all "\n\n" $msg "\n" msg -- regsub -all "\n\}" $msg "\}" msg -- return $msg --} -- --proc makeFile {contents name} { -- set fd [open $name w] -- fconfigure $fd -translation lf -- if {[string index $contents [expr [string length $contents] - 1]] == "\n"} { -- puts -nonewline $fd $contents -- } else { -- puts $fd $contents -- } -- close $fd --} -- --proc removeFile {name} { -- file delete $name --} -- --proc makeDirectory {name} { -- file mkdir $name --} -- --proc removeDirectory {name} { -- file delete -force $name --} -- --proc viewFile {name} { -- global tcl_platform testConfig -- if {($tcl_platform(platform) == "macintosh") || \ -- ($testConfig(unixExecs) == 0)} { -- set f [open $name] -- set data [read -nonewline $f] -- close $f -- return $data -- } else { -- exec cat $name -- } --} -- --# Locate tcltest executable -- --set tcltest [list [info nameofexecutable]] --if {$tcltest == "{}"} { -- set tcltest {} -- puts "Unable to find tcltest executable, multiple process tests will fail." --} -- -- -diff -Naur insight-6.8.orig/itcl/itcl/tests/delete.test insight-6.8.new/itcl/itcl/tests/delete.test ---- insight-6.8.orig/itcl/itcl/tests/delete.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/delete.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: delete.test,v 1.3 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: delete.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Deleting classes and objects -diff -Naur insight-6.8.orig/itcl/itcl/tests/ensemble.test insight-6.8.new/itcl/itcl/tests/ensemble.test ---- insight-6.8.orig/itcl/itcl/tests/ensemble.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/ensemble.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: ensemble.test,v 1.3 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: ensemble.test,v 1.5 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - test ensemble-1.1 {ensemble name must be specified} { - list [catch {itcl::ensemble} msg] $msg -@@ -45,8 +45,13 @@ - } {{one: 1} {two: 2 3} {three: 3 4 5}} - - test ensemble-1.5 {invoking parts with improper arguments} { -- list [catch "test_numbers three x" msg] $msg --} {1 {no value given for parameter "y" to "test_numbers three"}} -+ set res [catch "test_numbers three x" msg] -+ if {[package vsatisfies [package provide Tcl] 8.4]} { -+ lappend res [string match "wrong # args*" $msg] -+ } else { -+ lappend res [string match "no value given*" $msg] -+ } -+} {1 1} - - test ensemble-1.6 {errors trigger a usage summary} { - list [catch "test_numbers foo x y" msg] $msg -diff -Naur insight-6.8.orig/itcl/itcl/tests/import.test insight-6.8.new/itcl/itcl/tests/import.test ---- insight-6.8.orig/itcl/itcl/tests/import.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/import.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: import.test,v 1.2 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: import.test,v 1.6 2004/04/29 05:57:42 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -- --if {[string compare test [info procs test]] == 1} then {source defs} -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Test "itcl::import::stub" command -@@ -40,15 +40,15 @@ - } {1 {wrong # args: should be "itcl::import::stub exists name"} 1 {wrong # args: should be "itcl::import::stub exists name"}} - - set interp [interp create] --$interp eval { -- package require Itcl -+$interp eval [subst -novariables { -+ [::tcltest::configure -load] - proc auto_load {cmd {namespace {}}} { - global debug -- proc $cmd {args} [format {return "%s: $args"} $cmd] -+ proc $cmd {args} \[format {return "%s: $args"} $cmd\] - append debug "(auto_load: $cmd)" - return 1 - } --} -+}] - - test import-1.4 {"stub create" creates a stub that triggers autoloading} { - $interp eval { -@@ -64,7 +64,7 @@ - $interp eval { - set debug "" - itcl::import::stub create foo::bar::stub1 -- proc foo::bar::proc1 {args} {return "proc1: $args"} -+ proc foo::bar::proc1 {{args {}}} {return "proc1: $args"} - list [itcl::import::stub exists foo::bar::stub1] \ - [itcl::import::stub exists foo::bar::proc1] - } -@@ -88,13 +88,13 @@ - # Test "itcl::import::stub" command - # ---------------------------------------------------------------------- - set interp [interp create] --$interp eval { -- package require Itcl -+$interp eval [subst -novariables { -+ [::tcltest::configure -load] - proc auto_load {cmd {namespace {}}} { -- proc $cmd {args} [format {return "%s: $args"} $cmd] -+ proc $cmd {args} \[format {return "%s: $args"} $cmd\] - return 1 - } --} -+}] - - test import-2.1 {initialize some commands for autoloading} { - $interp eval { -diff -Naur insight-6.8.orig/itcl/itcl/tests/info.test insight-6.8.new/itcl/itcl/tests/info.test ---- insight-6.8.orig/itcl/itcl/tests/info.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/info.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: info.test,v 1.5 2000/07/07 12:27:37 csmith Exp $ -+# RCS: $Id: info.test,v 1.6 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Class definition with one of everything -diff -Naur insight-6.8.orig/itcl/itcl/tests/inherit.test insight-6.8.new/itcl/itcl/tests/inherit.test ---- insight-6.8.orig/itcl/itcl/tests/inherit.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/inherit.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: inherit.test,v 1.4 2000/07/06 06:43:30 mmc Exp $ -+# RCS: $Id: inherit.test,v 1.5 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Test construction/destruction with inheritance -diff -Naur insight-6.8.orig/itcl/itcl/tests/interp.test insight-6.8.new/itcl/itcl/tests/interp.test ---- insight-6.8.orig/itcl/itcl/tests/interp.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/interp.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: interp.test,v 1.3 2001/05/22 15:32:37 davygrvy Exp $ -+# RCS: $Id: interp.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Make sure that slave interpreters can be created and loaded -diff -Naur insight-6.8.orig/itcl/itcl/tests/local.test insight-6.8.new/itcl/itcl/tests/local.test ---- insight-6.8.orig/itcl/itcl/tests/local.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/local.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: local.test,v 1.3 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: local.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Test "local" to create objects that only exist within a proc -diff -Naur insight-6.8.orig/itcl/itcl/tests/methods.test insight-6.8.new/itcl/itcl/tests/methods.test ---- insight-6.8.orig/itcl/itcl/tests/methods.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/methods.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: methods.test,v 1.4 2000/07/06 06:43:30 mmc Exp $ -+# RCS: $Id: methods.test,v 1.5 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Methods with various argument lists -diff -Naur insight-6.8.orig/itcl/itcl/tests/mkindex.itcl insight-6.8.new/itcl/itcl/tests/mkindex.itcl ---- insight-6.8.orig/itcl/itcl/tests/mkindex.itcl 2003-01-21 21:40:27.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/mkindex.itcl 2008-08-18 18:56:44.000000000 +0200 -@@ -23,7 +23,6 @@ - # they are prefaced with white space. - # - namespace import itcl::* --namespace import blt::* - - class Simple1 { - variable x 0 -@@ -35,11 +34,6 @@ - public method bump {} - } - --itcl_class OldStyle { -- public x 0 -- method foo {args} {return $args} --} -- - itcl::ensemble ens { - part one {x} {} - part two {x y} {} -diff -Naur insight-6.8.orig/itcl/itcl/tests/mkindex.test insight-6.8.new/itcl/itcl/tests/mkindex.test ---- insight-6.8.orig/itcl/itcl/tests/mkindex.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/mkindex.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: mkindex.test,v 1.2 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: mkindex.test,v 1.6 2004/02/13 06:37:24 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Test "auto_mkindex" in the presence of class definitions -@@ -29,7 +29,14 @@ - } {0} - - test mkindex-1.2 {build tclIndex based on a test file} { -+ if {[pwd] != $::tcltest::testsDirectory} { -+ file copy -force [file join $::tcltest::testsDirectory mkindex.itcl] \ -+ ./mkindex.itcl -+ } - auto_mkindex . mkindex.itcl -+ if {[pwd] != $::tcltest::testsDirectory} { -+ file delete -force ./mkindex.itcl -+ } - file exists tclIndex - } {1} - -@@ -46,7 +53,8 @@ - } - set result - } --} "{::Simple2::bump $element} {::Simple2::by $element} {::buried::deep::within $element} {::buried::ens $element} {::buried::inside $element} {::buried::inside::bump $element} {::buried::inside::by $element} {::buried::inside::find $element} {::buried::under::neath $element} {::top::find $element} {::top::notice $element} {OldStyle $element} {Simple1 $element} {Simple2 $element} {ens $element} {top $element}" -+} "{::Simple2::bump $element} {::Simple2::by $element} {::buried::deep::within $element} {::buried::ens $element} {::buried::inside $element} {::buried::inside::bump $element} {::buried::inside::by $element} {::buried::inside::find $element} {::buried::under::neath $element} {::top::find $element} {::top::notice $element} {Simple1 $element} {Simple2 $element} {ens $element} {top $element}" - -+::tcltest::removeFile tclIndex - ::tcltest::cleanupTests - return -diff -Naur insight-6.8.orig/itcl/itcl/tests/namespace.test insight-6.8.new/itcl/itcl/tests/namespace.test ---- insight-6.8.orig/itcl/itcl/tests/namespace.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/namespace.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: namespace.test,v 1.4 2000/07/06 06:43:30 mmc Exp $ -+# RCS: $Id: namespace.test,v 1.5 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Classes within namespaces -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/Appliance.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/Appliance.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/Appliance.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/Appliance.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,43 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Base class for all electrical appliances that interact --# with Outlets. --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: Appliance.tcl,v 1.1 1998/07/27 18:41:29 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --itcl_class Appliance { -- -- method power {power} { -- if {[itcl_info objects [info which $outlet]] == ""} { -- set outlet {} -- } -- if {$outlet == ""} { -- error "cannot use $this: not plugged in" -- } -- $outlet use $power -- } -- -- public outlet {} --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/Hazard.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/Hazard.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/Hazard.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/Hazard.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,78 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Tracking for hazardous products manufactured by the --# "toaster" company. --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: Hazard.tcl,v 1.1 1998/07/27 18:41:30 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --itcl_class HazardRec { -- constructor {cname} { -- set class $cname -- } -- method change {var inc} { -- if {![info exists $var]} { -- error "bad field \"$var\"" -- } -- incr $var $inc -- } -- method report {} { -- return "$class: $total produced, $actives active, $accidents accidents" -- } -- protected class {} -- protected total 0 -- protected actives 0 -- protected accidents 0 --} -- --itcl_class Hazard { -- -- constructor {} { -- set class [virtual info class] -- if {![info exists recs($class)]} { -- set recs($class) [HazardRec #auto $class] -- } -- $recs($class) change total +1 -- $recs($class) change actives +1 -- } -- destructor { -- set class [virtual info class] -- $recs($class) change actives -1 -- } -- -- method accident {mesg} { -- set class [virtual info class] -- $recs($class) change accidents +1 -- puts stderr $mesg -- } -- -- proc report {class} { -- if {[info exists recs($class)]} { -- return [$recs($class) report] -- } else { -- error "no information for class \"$class\"" -- } -- } -- common recs --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/Outlet.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/Outlet.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/Outlet.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/Outlet.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,81 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Electrical outlet supplying power for Appliances. --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: Outlet.tcl,v 1.1 1998/07/27 18:41:30 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --itcl_class Outlet { -- constructor {config} {} -- method config {config} {} -- -- destructor { -- if {$usage > 0} bill -- } -- -- method use {power} { -- set usage [expr $usage+$power] -- } -- -- method sendBill {} { -- if {[catch "open /tmp/bill w" fout] != 0} { -- error "cannot create bill in /tmp" -- } else { -- set amount [format "$%.2f" [expr $usage*$rate]] -- puts $fout "----------------------------------------" -- puts $fout "/////////// MEGA-POWER, INC. ///////////" -- puts $fout "----------------------------------------" -- puts $fout " Customer: $owner" -- puts $fout " Outlet: $this" -- puts $fout " Usage: $usage kilowatt-hours" -- puts $fout " " -- puts $fout " Amount Due: $amount" -- puts $fout "----------------------------------------" -- close $fout -- exec mail $owner < /tmp/bill -- set usage 0 -- } -- } -- -- proc bill {{customer *}} { -- foreach outlet [itcl_info objects -class Outlet] { -- set owner [$outlet info public owner -value] -- if {[string match $customer $owner]} { -- $outlet sendBill -- } -- } -- } -- -- proc rate {{newval ""}} { -- if {$newval == ""} { -- return $rate -- } -- set rate $newval -- } -- -- public owner {} -- protected usage 0 -- -- common rate 0.05 --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/SmartToaster.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/SmartToaster.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/SmartToaster.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/SmartToaster.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,40 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Class definition for handling "smart" toasters via --# [incr Tcl]. A "smart" toaster is a toaster that --# automatically cleans itself when the crumb tray is full. --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: SmartToaster.tcl,v 1.1 1998/07/27 18:41:31 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --itcl_class SmartToaster { -- inherit Toaster -- -- method toast {nslices} { -- if {$crumbs >= [expr $maxcrumbs-10]} { -- clean -- } -- return [Toaster::toast $nslices] -- } --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/tclIndex insight-6.8.new/itcl/itcl/tests/old/toasters/tclIndex ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/tclIndex 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/tclIndex 1970-01-01 01:00:00.000000000 +0100 -@@ -1,18 +0,0 @@ --# Tcl autoload index file, version 2.0 --# This file is generated by the "auto_mkindex" command --# and sourced to set up indexing information for one or --# more commands. Typically each line is a command that --# sets an element in the auto_index array, where the --# element name is the name of a command and the value is --# a script that loads the command. -- --set auto_index(Appliance) "source $dir/Appliance.tcl" --set auto_index(HazardRec) "source $dir/Hazard.tcl" --set auto_index(Hazard) "source $dir/Hazard.tcl" --set auto_index(Outlet) "source $dir/Outlet.tcl" --set auto_index(SmartToaster) "source $dir/SmartToaster.tcl" --set auto_index(Toaster) "source $dir/Toaster.tcl" --set auto_index(make_toaster) "source $dir/usualway.tcl" --set auto_index(toast_bread) "source $dir/usualway.tcl" --set auto_index(clean_toaster) "source $dir/usualway.tcl" --set auto_index(destroy_toaster) "source $dir/usualway.tcl" -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/Toaster.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/Toaster.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/Toaster.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/Toaster.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,75 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Class definition for handling toasters via [incr Tcl]. --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: Toaster.tcl,v 1.1 1998/07/27 18:41:31 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --itcl_class Toaster { -- inherit Appliance Hazard -- -- constructor {config} {} -- destructor { -- if {$crumbs > 0} { -- puts stdout "$crumbs crumbs ... what a mess!" -- } -- } -- method config {config} {} -- -- method toast {nslices} { -- power [expr 0.03*$heat] -- if {$nslices < 1 || $nslices > 2} { -- error "bad number of slices: should be 1 or 2" -- } -- set crumbs [expr $crumbs+$heat*$nslices] -- if {$crumbs >= $maxcrumbs} { -- accident "== FIRE! FIRE! ==" -- set crumbs $maxcrumbs -- } -- return [check] -- } -- -- method clean {} { -- power 0.5 -- set crumbs 0 -- return [check] -- } -- -- method check {} { -- set level [expr $crumbs*100.0/$maxcrumbs] -- return [format "crumb tray: %.0f%% full" $level] -- } -- -- proc resize {newsize} { -- set maxcrumbs $newsize -- } -- -- public heat 3 { -- if {$heat < 1 || $heat > 5} { -- error "invalid setting $heat: should be 1-5" -- } -- } -- protected crumbs 0 -- common maxcrumbs 40 --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/old/toasters/usualway.tcl insight-6.8.new/itcl/itcl/tests/old/toasters/usualway.tcl ---- insight-6.8.orig/itcl/itcl/tests/old/toasters/usualway.tcl 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/old/toasters/usualway.tcl 1970-01-01 01:00:00.000000000 +0100 -@@ -1,122 +0,0 @@ --# ---------------------------------------------------------------------- --# PURPOSE: Procedures for managing toasters in the usual --# procedure-oriented Tcl programming style. These --# routines illustrate data sharing through global --# variables and naming conventions to logically group --# related procedures. The same programming task can --# be accomplished much more cleanly with [incr Tcl]. --# Inheritance also allows new behavior to be "mixed-in" --# more cleanly (see Appliance and Product base classes). --# --# AUTHOR: Michael J. McLennan Phone: (610)712-2842 --# AT&T Bell Laboratories E-mail: michael.mclennan@att.com --# --# RCS: $Id: usualway.tcl,v 1.1 1998/07/27 18:41:32 stanton Exp $ --# ---------------------------------------------------------------------- --# Copyright (c) 1993 AT&T Bell Laboratories --# ====================================================================== --# Permission to use, copy, modify, and distribute this software and its --# documentation for any purpose and without fee is hereby granted, --# provided that the above copyright notice appear in all copies and that --# both that the copyright notice and warranty disclaimer appear in --# supporting documentation, and that the names of AT&T Bell Laboratories --# any of their entities not be used in advertising or publicity --# pertaining to distribution of the software without specific, written --# prior permission. --# --# AT&T disclaims all warranties with regard to this software, including --# all implied warranties of merchantability and fitness. In no event --# shall AT&T be liable for any special, indirect or consequential --# damages or any damages whatsoever resulting from loss of use, data or --# profits, whether in an action of contract, negligence or other --# tortuous action, arising out of or in connection with the use or --# performance of this software. --# ====================================================================== -- --# ---------------------------------------------------------------------- --# COMMAND: make_toaster --# --# INPUTS --# = name of new toaster --# = heat setting (1-5) --# --# RETURNS --# name of new toaster --# --# SIDE-EFFECTS --# Creates a record of a new toaster with the given heat setting --# and an empty crumb tray. --# ---------------------------------------------------------------------- --proc make_toaster {name heat} { -- global allToasters -- -- if {$heat < 1 || $heat > 5} { -- error "invalid heat setting: should be 1-5" -- } -- set allToasters($name-heat) $heat -- set allToasters($name-crumbs) 0 --} -- --# ---------------------------------------------------------------------- --# COMMAND: toast_bread --# --# INPUTS --# = name of toaster used to toast bread --# = number of bread slices (1 or 2) --# --# RETURNS --# current crumb count --# --# SIDE-EFFECTS --# Toasts bread and adds crumbs to crumb tray. --# ---------------------------------------------------------------------- --proc toast_bread {name slices} { -- global allToasters -- -- if {[info exists allToasters($name-crumbs)]} { -- set c $allToasters($name-crumbs) -- set c [expr $c+$allToasters($name-heat)*$slices] -- set allToasters($name-crumbs) $c -- } else { -- error "not a toaster: $name" -- } --} -- --# ---------------------------------------------------------------------- --# COMMAND: clean_toaster --# --# INPUTS --# = name of toaster to be cleaned --# --# RETURNS --# current crumb count --# --# SIDE-EFFECTS --# Cleans toaster by emptying crumb tray. --# ---------------------------------------------------------------------- --proc clean_toaster {name} { -- global allToasters -- set allToasters($name-crumbs) 0 --} -- --# ---------------------------------------------------------------------- --# COMMAND: destroy_toaster --# --# INPUTS --# = name of toaster to be destroyed --# --# RETURNS --# nothing --# --# SIDE-EFFECTS --# Spills all crumbs in the toaster and then destroys it. --# ---------------------------------------------------------------------- --proc destroy_toaster {name} { -- global allToasters -- -- if {[info exists allToasters($name-crumbs)]} { -- puts stdout "$allToasters($name-crumbs) crumbs ... what a mess!" -- unset allToasters($name-heat) -- unset allToasters($name-crumbs) -- } --} -diff -Naur insight-6.8.orig/itcl/itcl/tests/protection.test insight-6.8.new/itcl/itcl/tests/protection.test ---- insight-6.8.orig/itcl/itcl/tests/protection.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/protection.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: protection.test,v 1.3 2000/06/01 20:34:35 wart Exp $ -+# RCS: $Id: protection.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Class members are protected by access restrictions -diff -Naur insight-6.8.orig/itcl/itcl/tests/scope.test insight-6.8.new/itcl/itcl/tests/scope.test ---- insight-6.8.orig/itcl/itcl/tests/scope.test 2003-01-21 22:04:24.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/scope.test 2008-08-18 18:56:44.000000000 +0200 -@@ -6,19 +6,19 @@ - # mmclennan@lucent.com - # http://www.tcltk.com/itcl - # --# RCS: $Id: scope.test,v 1.3 2000/06/01 20:34:36 wart Exp $ -+# RCS: $Id: scope.test,v 1.4 2004/02/12 18:09:50 davygrvy Exp $ - # ---------------------------------------------------------------------- - # Copyright (c) 1993-1998 Lucent Technologies, Inc. - # ====================================================================== - # See the file "license.terms" for information on usage and - # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - --package require tcltest --namespace import -force ::tcltest::* -+if {[lsearch [namespace children] ::tcltest] == -1} { -+ package require tcltest 2.1 -+ namespace import -force ::tcltest::test -+} - --if {[string compare test [info procs test]] == 1} then {source defs} -- --package require Itcl -+::tcltest::loadTestedCommands - - # ---------------------------------------------------------------------- - # Syntax of the "scope" command -diff -Naur insight-6.8.orig/itcl/itcl/tests/tclIndex insight-6.8.new/itcl/itcl/tests/tclIndex ---- insight-6.8.orig/itcl/itcl/tests/tclIndex 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/tests/tclIndex 2008-08-18 18:56:44.000000000 +0200 -@@ -8,7 +8,6 @@ - - set auto_index(Simple1) [list source [file join $dir mkindex.itcl]] - set auto_index(Simple2) [list source [file join $dir mkindex.itcl]] --set auto_index(OldStyle) [list source [file join $dir mkindex.itcl]] - set auto_index(ens) [list source [file join $dir mkindex.itcl]] - set auto_index(::Simple2::bump) [list source [file join $dir mkindex.itcl]] - set auto_index(::Simple2::by) [list source [file join $dir mkindex.itcl]] -diff -Naur insight-6.8.orig/itcl/itcl/TODO insight-6.8.new/itcl/itcl/TODO ---- insight-6.8.orig/itcl/itcl/TODO 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/TODO 2008-08-18 18:56:39.000000000 +0200 -@@ -0,0 +1,89 @@ -+======================================================================= -+ Following is a list of notes describing things which might be -+ fixed or changed in a future release of [incr Tcl] -+======================================================================= -+ -+Handle this case more elegantly: -+ -+class Foo { -+ constructor {args} { -+ _init -+ } -+ proc _init {} { -+ puts "once!" -+ proc _init {} {} -+ } -+} -+Foo #auto -+Foo #auto -+ -+ -+itcl "wish" list -+------------------------------------------------------------------ -+- add virtual inheritance -+- add "border" type to canvas widget -+- add "validate" and "valid" commands for type validation -+- add "unknownvar" and provide access to object data members: "obj.var" -+- check namespace [info class] {...} as a replacement for "virtual" -+- fix "auto_load_all" problem in Tcl-DP -+ (Their implementation uses "info commands" to verify that a command -+ has been successfully autoloaded, but absolute command names like -+ "::iwidgets::fileselectiondialog" don't show up.) -+- fix "auto_load" mechanism to be extensible like "unknown" -+- fix Itcl_RegisterC() to support ClientData -+- core dump with "cmdtrace" (tclX thing?) -+ -+- ideas from Nelson Macy: -+ - add "delegate" keyword for inheritance via composition? -+ - add "forward" keyword for implementing error handlers -+ - add "get" code to public variables for "cget" access -+ -+- equivalent of constructor/destructor for classes -+- protected/private recognized for constructor/destructor -+- add something like Tk_CreateWidgetCommand() for widget developers -+ -+ -+itcl documentation cleanup -+------------------------------------------------------------------ -+- add "Finance: Trading Systems" to commercial uses of Itcl (Deshaw) -+- update doc: "config" code also gets invoked on startup for itk widgets -+- update doc: add to FAQ: class with common array interacts with Tk widget -+ -+itcl "to do" list -+------------------------------------------------------------------ -+ -+- write "auto_load_all" proc for Tcl-DP -+ -+- bad errorInfo: -+ > More specifically, the constructor for the class did the following: -+ > -+ > set hull [info namespace tail $this] -+ > ::frame $hull -+ > -+ > One of the class variables had a configuration script: -+ > -+ > public variable textvariable "" { -+ > if { $textvariable != "" } { -+ > regsub "\\(.*\\)" $textvariable "" global -+ > global ::$global -+ > trace variable $textvariable w "$hull adjust" -+ > } -+ > } -+ -+- add "@body" in as many places as possible to support Tcl compiler -+ -+- check out itcl with Tix: -+ lappend auto_path $env(TIX_LIBRARY) -+ source "$env(IWIDGETS_LIBRARY)/init.iwidgets" -+ -+ iwidgets::Dialog ._Arcattributes -title "Code: Arc Annotations" -+ -modality application -+ -+ set attrframe [._Arcattributes childsite] -+ -+ tixScrolledHList $attrframe.ports -+ [$attrframe.ports subwidget hlist] configure -selectmode browse -+ -+ pack $attrframe.ports -expand yes -fill both -padx 10 -pady 10 -+ -+ ._Arcattributes activate -diff -Naur insight-6.8.orig/itcl/itcl/unix/tclAppInit.c insight-6.8.new/itcl/itcl/unix/tclAppInit.c ---- insight-6.8.orig/itcl/itcl/unix/tclAppInit.c 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/unix/tclAppInit.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,157 +0,0 @@ --/* -- * tclAppInit.c -- -- * -- * Provides a default version of the main program and Tcl_AppInit -- * procedure for Tcl applications (without Tk). -- * -- * Copyright (c) 1993 The Regents of the University of California. -- * Copyright (c) 1994-1997 Sun Microsystems, Inc. -- * -- * See the file "license.terms" for information on usage and redistribution -- * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- * -- * SCCS: @(#) tclAppInit.c 1.20 97/03/24 14:29:43 -- */ -- --#ifdef TCL_XT_TEST --#include --#endif -- --/* include tclInt.h for access to namespace API */ --#include "tclInt.h" -- --#include "itcl.h" -- --/* -- * The following variable is a special hack that is needed in order for -- * Sun shared libraries to be used for Tcl. -- */ -- --extern int matherr(); --int *tclDummyMathPtr = (int *) matherr; -- -- --#ifdef TCL_TEST --EXTERN int TclObjTest_Init _ANSI_ARGS_((Tcl_Interp *interp)); --EXTERN int Tcltest_Init _ANSI_ARGS_((Tcl_Interp *interp)); --#endif /* TCL_TEST */ --#ifdef TCL_XT_TEST --EXTERN int Tclxttest_Init _ANSI_ARGS_((Tcl_Interp *interp)); --#endif -- --/* -- *---------------------------------------------------------------------- -- * -- * main -- -- * -- * This is the main program for the application. -- * -- * Results: -- * None: Tcl_Main never returns here, so this procedure never -- * returns either. -- * -- * Side effects: -- * Whatever the application does. -- * -- *---------------------------------------------------------------------- -- */ -- --int --main(argc, argv) -- int argc; /* Number of command-line arguments. */ -- char **argv; /* Values of command-line arguments. */ --{ --#ifdef TCL_XT_TEST -- XtToolkitInitialize(); --#endif -- Tcl_Main(argc, argv, Tcl_AppInit); -- return 0; /* Needed only to prevent compiler warning. */ --} -- --/* -- *---------------------------------------------------------------------- -- * -- * Tcl_AppInit -- -- * -- * This procedure performs application-specific initialization. -- * Most applications, especially those that incorporate additional -- * packages, will have their own version of this procedure. -- * -- * Results: -- * Returns a standard Tcl completion code, and leaves an error -- * message in interp->result if an error occurs. -- * -- * Side effects: -- * Depends on the startup script. -- * -- *---------------------------------------------------------------------- -- */ -- --int --Tcl_AppInit(interp) -- Tcl_Interp *interp; /* Interpreter for application. */ --{ -- if (Tcl_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- --#ifdef TCL_TEST --#ifdef TCL_XT_TEST -- if (Tclxttest_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } --#endif -- if (Tcltest_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- Tcl_StaticPackage(interp, "Tcltest", Tcltest_Init, -- (Tcl_PackageInitProc *) NULL); -- if (TclObjTest_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } --#endif /* TCL_TEST */ -- -- /* -- * Call the init procedures for included packages. Each call should -- * look like this: -- * -- * if (Mod_Init(interp) == TCL_ERROR) { -- * return TCL_ERROR; -- * } -- * -- * where "Mod" is the name of the module. -- */ -- if (Itcl_Init(interp) == TCL_ERROR) { -- return TCL_ERROR; -- } -- Tcl_StaticPackage(interp, "Itcl", Itcl_Init, Itcl_SafeInit); -- -- /* -- * This is itclsh, so import all [incr Tcl] commands by -- * default into the global namespace. Fix up the autoloader -- * to do the same. -- */ -- if (Tcl_Import(interp, Tcl_GetGlobalNamespace(interp), -- "::itcl::*", /* allowOverwrite */ 1) != TCL_OK) { -- return TCL_ERROR; -- } -- -- if (Tcl_Eval(interp, "auto_mkindex_parser::slavehook { _%@namespace import -force ::itcl::* }") != TCL_OK) { -- return TCL_ERROR; -- } -- -- /* -- * Call Tcl_CreateCommand for application-specific commands, if -- * they weren't already created by the init procedures called above. -- */ -- -- /* -- * Specify a user-specific startup file to invoke if the application -- * is run interactively. Typically the startup file is "~/.apprc" -- * where "app" is the name of the application. If this line is deleted -- * then no user-specific startup file will be run under any conditions. -- */ -- -- Tcl_SetVar(interp, "tcl_rcFileName", "~/.itclshrc", TCL_GLOBAL_ONLY); -- return TCL_OK; --} -diff -Naur insight-6.8.orig/itcl/itcl/win/configure insight-6.8.new/itcl/itcl/win/configure ---- insight-6.8.orig/itcl/itcl/win/configure 2006-07-13 17:41:58.000000000 +0200 -+++ insight-6.8.new/itcl/itcl/win/configure 1970-01-01 01:00:00.000000000 +0100 -@@ -1,6437 +0,0 @@ --#! /bin/sh --# Guess values for system-dependent variables and create Makefiles. --# Generated by GNU Autoconf 2.59. --# --# Copyright (C) 2003 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 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+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix --fi --DUALCASE=1; export DUALCASE # for MKS sh -- --# Support unset when possible. --if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -- as_unset=unset --else -- as_unset=false --fi -- -- --# Work around bugs in pre-3.0 UWIN ksh. --$as_unset ENV MAIL MAILPATH --PS1='$ ' --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 -- fi --done -- --# Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; 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 || --echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- -- --# PATH needs CR, and LINENO needs CR and PATH. --# 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 -- --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh --fi -- -- -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 -- -- ;; -- 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 -- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -- 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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -- /*) -- if ("$as_dir/$as_base" -c ' -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -- -- # 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -- sed ' -- N -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -- t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -- ' >$as_me.lineno && -- chmod +x $as_me.lineno || -- { 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 sensible to this). -- . ./$as_me.lineno -- # Exit status is that of the last command. -- exit --} -- -- --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; --esac -- --if expr a : '\(a\)' >/dev/null 2>&1; then -- as_expr=expr --else -- as_expr=false --fi -- --rm -f conf$$ conf$$.exe conf$$.file --echo >conf$$.file --if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -- as_ln_s='cp -p' -- else -- as_ln_s='ln -s' -- fi --elif ln conf$$.file conf$$ 2>/dev/null; then -- as_ln_s=ln --else -- as_ln_s='cp -p' --fi --rm -f conf$$ conf$$.exe conf$$.file -- --if mkdir -p . 2>/dev/null; then -- as_mkdir_p=: --else -- test -d ./-p && rmdir ./-p -- as_mkdir_p=false --fi -- --as_executable_p="test -f" -- --# 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'" -- -- --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH -- -- --# 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` -- --exec 6>&1 -- --# --# Initializations. --# --ac_default_prefix=/usr/local --ac_config_libobj_dir=. --cross_compiling=no --subdirs= --MFLAGS= --MAKEFLAGS= --SHELL=${CONFIG_SHELL-/bin/sh} -- --# Maximum number of lines to put in a shell here document. --# This variable seems obsolete. It should probably be removed, and --# only ac_max_sed_lines should be used. --: ${ac_max_here_lines=38} -- --# Identity of this package. --PACKAGE_NAME= --PACKAGE_TARNAME= --PACKAGE_VERSION= --PACKAGE_STRING= --PACKAGE_BUGREPORT= -- --ac_unique_file="../generic/itcl.h" --ac_default_prefix=/usr/local --# Factoring default headers for most tests. --ac_includes_default="\ --#include --#if HAVE_SYS_TYPES_H --# include --#endif --#if HAVE_SYS_STAT_H --# include --#endif --#if STDC_HEADERS --# include --# include --#else --# if HAVE_STDLIB_H --# include --# endif --#endif --#if HAVE_STRING_H --# if !STDC_HEADERS && HAVE_MEMORY_H --# include --# endif --# include --#endif --#if HAVE_STRINGS_H --# include --#endif --#if HAVE_INTTYPES_H --# include --#else --# if HAVE_STDINT_H --# include --# endif --#endif --#if HAVE_UNISTD_H --# include --#endif" -- --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 datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os RANLIB ac_ct_RANLIB CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NM AS LD DLLTOOL WINDRES INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA DLL_LDFLAGS DLL_LDLIBS ac_prefix_program CPP EGREP DL_LIBS LD_FLAGS MATH_LIBS MAKE_LIB SHLIB_CFLAGS SHLIB_LD SHLIB_LD_LIBS SHLIB_SUFFIX SHLIB_VERSION TCL_BIN_DIR TCL_BUILD_LIB_SPEC TCL_SRC_DIR TCL_VERSION TCL_LIB_FILE TCL_LIB_FULL_PATH ITCL_BUILD_LIB_SPEC ITCL_LD_SEARCH_FLAGS ITCL_LIB_FILE ITCL_LIB_FULL_PATH ITCL_LIB_SPEC ITCL_MAJOR_VERSION ITCL_MINOR_VERSION ITCL_PKG_FILE ITCL_SHLIB_CFLAGS ITCL_SRC_DIR ITCL_VERSION CYGITCLLIB CYGITCLDLL CYGITCLSH CYGITCLDEF CYGITCLTEST CYGIMPORTLIB CYGITCLRES CYGITCLSHRES SNITCLLIB SNITCLDLL SNITCLSH SNITCLDEF SNITCLTEST SNIMPORTLIB SNITCLRES SNITCLSHRES ITCLLIB ITCLDLL ITCLSH ITCLDEF ITCLTEST ITCLIMPORTLIB ITCLRES ITCL_SH BASELIBS WINLIBS LIBCDLL LIBOBJS LTLIBOBJS' --ac_subst_files='' -- --# Initialize some variables set by options. --ac_init_help= --ac_init_version=false --# 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. --bindir='${exec_prefix}/bin' --sbindir='${exec_prefix}/sbin' --libexecdir='${exec_prefix}/libexec' --datadir='${prefix}/share' --sysconfdir='${prefix}/etc' --sharedstatedir='${prefix}/com' --localstatedir='${prefix}/var' --libdir='${exec_prefix}/lib' --includedir='${prefix}/include' --oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -- --ac_prev= --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 -- -- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` -- -- # Accept the important Cygnus configure options, so we can diagnose typos. -- -- case $ac_option in -- -- -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 | --data | --dat | --da) -- ac_prev=datadir ;; -- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ -- | --da=*) -- datadir=$ac_optarg ;; -- -- -disable-* | --disable-*) -- ac_feature=`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 -- { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- eval "enable_$ac_feature=no" ;; -- -- -enable-* | --enable-*) -- ac_feature=`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 -- { (exit 1); exit 1; }; } -- ac_feature=`echo $ac_feature | sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "enable_$ac_feature='$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 ;; -- -- -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 ;; -- -- -localstatedir | --localstatedir | --localstatedi | --localstated \ -- | --localstate | --localstat | --localsta | --localst \ -- | --locals | --local | --loca | --loc | --lo) -- ac_prev=localstatedir ;; -- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ -- | --localstate=* | --localstat=* | --localsta=* | --localst=* \ -- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) -- 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 ;; -- -- -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_package=`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 -- { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package| sed 's/-/_/g'` -- case $ac_option in -- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; -- *) ac_optarg=yes ;; -- esac -- eval "with_$ac_package='$ac_optarg'" ;; -- -- -without-* | --without-*) -- ac_package=`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 -- { (exit 1); exit 1; }; } -- ac_package=`echo $ac_package | sed 's/-/_/g'` -- eval "with_$ac_package=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 ;; -- -- -*) { 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 && -- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 -- { (exit 1); exit 1; }; } -- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` -- 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 -- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && -- 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'` -- { echo "$as_me: error: missing argument to $ac_option" >&2 -- { (exit 1); exit 1; }; } --fi -- --# Be sure to have absolute paths. --for ac_var in exec_prefix prefix --do -- eval ac_val=$`echo $ac_var` -- case $ac_val in -- [\\/$]* | ?:[\\/]* | NONE | '' ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -- esac --done -- --# Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -- localstatedir libdir includedir oldincludedir infodir mandir --do -- eval ac_val=$`echo $ac_var` -- case $ac_val in -- [\\/$]* | ?:[\\/]* ) ;; -- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 -- { (exit 1); exit 1; }; };; -- esac --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 -- 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 -- -- --# 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 its parent. -- ac_confdir=`(dirname "$0") 2>/dev/null || --$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$0" : 'X\(//\)[^/]' \| \ -- X"$0" : 'X\(//\)$' \| \ -- X"$0" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$0" | -- 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 -- if test "$ac_srcdir_defaulted" = yes; then -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 -- { (exit 1); exit 1; }; } -- else -- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 -- { (exit 1); exit 1; }; } -- fi --fi --(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || -- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 -- { (exit 1); exit 1; }; } --srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` --ac_env_build_alias_set=${build_alias+set} --ac_env_build_alias_value=$build_alias --ac_cv_env_build_alias_set=${build_alias+set} --ac_cv_env_build_alias_value=$build_alias --ac_env_host_alias_set=${host_alias+set} --ac_env_host_alias_value=$host_alias --ac_cv_env_host_alias_set=${host_alias+set} --ac_cv_env_host_alias_value=$host_alias --ac_env_target_alias_set=${target_alias+set} --ac_env_target_alias_value=$target_alias --ac_cv_env_target_alias_set=${target_alias+set} --ac_cv_env_target_alias_value=$target_alias --ac_env_CC_set=${CC+set} --ac_env_CC_value=$CC --ac_cv_env_CC_set=${CC+set} --ac_cv_env_CC_value=$CC --ac_env_CFLAGS_set=${CFLAGS+set} --ac_env_CFLAGS_value=$CFLAGS --ac_cv_env_CFLAGS_set=${CFLAGS+set} --ac_cv_env_CFLAGS_value=$CFLAGS --ac_env_LDFLAGS_set=${LDFLAGS+set} --ac_env_LDFLAGS_value=$LDFLAGS --ac_cv_env_LDFLAGS_set=${LDFLAGS+set} --ac_cv_env_LDFLAGS_value=$LDFLAGS --ac_env_CPPFLAGS_set=${CPPFLAGS+set} --ac_env_CPPFLAGS_value=$CPPFLAGS --ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} --ac_cv_env_CPPFLAGS_value=$CPPFLAGS --ac_env_CPP_set=${CPP+set} --ac_env_CPP_value=$CPP --ac_cv_env_CPP_set=${CPP+set} --ac_cv_env_CPP_value=$CPP -- --# --# 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 \`..'] -- --_ACEOF -- -- cat <<_ACEOF --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] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] -- --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] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] --_ACEOF -- -- cat <<\_ACEOF -- --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-FEATURE do not include FEATURE (same as --enable-FEATURE=no) -- --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -- --enable-gcc allow use of gcc if available -- --enable-shared build libitcl as a shared library -- --Optional Packages: -- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) -- --with-tcl=DIR use Tcl 8.0 binaries from DIR -- --with-cflags=FLAGS set compiler flags to FLAGS -- --Some influential environment variables: -- CC C compiler command -- CFLAGS C compiler flags -- LDFLAGS linker flags, e.g. -L if you have libraries in a -- nonstandard directory -- CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have -- headers in a nonstandard directory -- 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 --fi -- --if test "$ac_init_help" = "recursive"; then -- # If there are subdirs, report their specific --help. -- ac_popdir=`pwd` -- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue -- test -d $ac_dir || continue -- ac_builddir=. -- --if test "$ac_dir" != .; then -- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -- --case $srcdir in -- .) # No --srcdir option. We are building in place. -- ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -- ac_srcdir=$srcdir$ac_dir_suffix; -- ac_top_srcdir=$srcdir ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -- --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; --esac -- -- cd $ac_dir -- # Check for guested configure; otherwise get Cygnus style 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 -- elif test -f $ac_srcdir/configure.ac || -- test -f $ac_srcdir/configure.in; then -- echo -- $ac_configure --help -- else -- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 -- fi -- cd $ac_popdir -- done --fi -- --test -n "$ac_init_help" && exit 0 --if $ac_init_version; then -- cat <<\_ACEOF -- --Copyright (C) 2003 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 0 --fi --exec 5>config.log --cat >&5 <<_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.59. Invocation command line was -- -- $ $0 $@ -- --_ACEOF --{ --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` --hostinfo = `(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=. -- echo "PATH: $as_dir" --done -- --} >&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_sep= --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=`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_sep'$ac_arg'" -- # Get rid of the leading space. -- ac_sep=" " -- ;; -- 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: Be sure not to use single quotes in there, as some shells, --# such as our DU 5.0 friend, will then `close' the trap. --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, --{ -- (set) 2>&1 | -- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -- sed -n \ -- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; -- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" -- ;; -- *) -- sed -n \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -- ;; -- esac; --} -- echo -- -- cat <<\_ASBOX --## ----------------- ## --## Output variables. ## --## ----------------- ## --_ASBOX -- echo -- for ac_var in $ac_subst_vars -- do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -- done | sort -- echo -- -- if test -n "$ac_subst_files"; then -- cat <<\_ASBOX --## ------------- ## --## Output files. ## --## ------------- ## --_ASBOX -- echo -- for ac_var in $ac_subst_files -- do -- eval ac_val=$`echo $ac_var` -- echo "$ac_var='"'"'$ac_val'"'"'" -- done | sort -- echo -- fi -- -- if test -s confdefs.h; then -- cat <<\_ASBOX --## ----------- ## --## confdefs.h. ## --## ----------- ## --_ASBOX -- echo -- sed "/^$/d" confdefs.h | sort -- echo -- fi -- test "$ac_signal" != 0 && -- echo "$as_me: caught signal $ac_signal" -- echo "$as_me: exit $exit_status" -- } >&5 -- rm -f core *.core && -- rm -rf 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 -rf conftest* confdefs.h --# AIX cpp loses on an empty file, so make sure it contains at least a newline. --echo >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 explicitly selected file to automatically selected ones. --if test -z "$CONFIG_SITE"; then -- if test "x$prefix" != xNONE; then -- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" -- else -- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -- fi --fi --for ac_site_file in $CONFIG_SITE; do -- 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;} -- 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 -- { echo "$as_me:$LINENO: loading cache $cache_file" >&5 --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;} -- >$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 `(set) 2>&1 | -- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; 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,) -- { 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;} -- 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;} -- 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=: -- 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=$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 -- { 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;} -- { (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 ../../../ $srcdir/../../../; 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 -- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in ../../../ $srcdir/../../../" >&5 --echo "$as_me: error: cannot find install-sh or install.sh in ../../../ $srcdir/../../../" >&2;} -- { (exit 1); exit 1; }; } --fi --ac_config_guess="$SHELL $ac_aux_dir/config.guess" --ac_config_sub="$SHELL $ac_aux_dir/config.sub" --ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. -- --# Make sure we can run config.sub. --$ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 --echo "$as_me: error: cannot run $ac_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_cv_build_alias=$build_alias --test -z "$ac_cv_build_alias" && -- ac_cv_build_alias=`$ac_config_guess` --test -z "$ac_cv_build_alias" && -- { { 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=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_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 --build=$ac_cv_build --build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -- -- --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 -- ac_cv_host_alias=$host_alias --test -z "$ac_cv_host_alias" && -- ac_cv_host_alias=$ac_cv_build_alias --ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 --echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} -- { (exit 1); exit 1; }; } -- --fi --echo "$as_me:$LINENO: result: $ac_cv_host" >&5 --echo "${ECHO_T}$ac_cv_host" >&6 --host=$ac_cv_host --host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` --host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` --host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -- -- -- --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 $as_executable_p "$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 -- --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. --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 $as_executable_p "$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 --done -- -- test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" --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 -- -- RANLIB=$ac_ct_RANLIB --else -- RANLIB="$ac_cv_prog_RANLIB" --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}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 --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_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # 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 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="cc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --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 -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -- 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 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$CC" && break -- done --fi --if test -z "$CC"; then -- ac_ct_CC=$CC -- for ac_prog in cl --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_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$ac_ct_CC" && break --done -- -- CC=$ac_ct_CC --fi -- --fi -- -- --test -z "$CC" && { { 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 --See \`config.log' for more details." >&2;} -- { (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` --{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -- (eval $ac_compiler --version &5) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -- (eval $ac_compiler -v &5) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -- (eval $ac_compiler -V &5) 2>&5 -- ac_status=$? -- 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.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[^ ]*//'` --if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 -- (eval $ac_link_default) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- # Find the output, starting from the most likely. This scheme is --# not robust to junk in `.', hence go to wildcards (a.*) only as a last --# resort. -- --# Be careful to initialize this variable, since it used to be cached. --# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. --ac_cv_exeext= --# b.out is created by i960 compilers. --for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out --do -- test -f "$ac_file" || continue -- case $ac_file in -- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) -- ;; -- conftest.$ac_ext ) -- # This is the source file. -- ;; -- [ab].out ) -- # We found the default executable, but exeext='' is most -- # certainly right. -- break;; -- *.* ) -- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` -- # FIXME: I believe we export ac_cv_exeext for Libtool, -- # but it would be cool to find out if it's true. Does anybody -- # maintain Libtool? --akim. -- export ac_cv_exeext -- break;; -- * ) -- break;; -- esac --done --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --{ { 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 --See \`config.log' for more details." >&2;} -- { (exit 77); exit 77; }; } --fi -- --ac_exeext=$ac_cv_exeext --echo "$as_me:$LINENO: result: $ac_file" >&5 --echo "${ECHO_T}$ac_file" >&6 -- --# Check 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 --# 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' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- 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. --If you meant to cross compile, use \`--host'. --See \`config.log' for more details." >&5 --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 --echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- --rm -f a.out a.exe conftest$ac_cv_exeext b.out --ac_clean_files=$ac_clean_files_save --# Check 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 -- --echo "$as_me:$LINENO: checking for suffix of executables" >&5 --echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- 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 | *.o | *.obj ) ;; -- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` -- export ac_cv_exeext -- break;; -- * ) break;; -- esac --done --else -- { { 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 --See \`config.log' for more details." >&2;} -- { (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 -- --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 --if test "${ac_cv_objext+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. */ -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.o conftest.obj --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do -- case $ac_file in -- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; -- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` -- break;; -- esac --done --else -- 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 --See \`config.log' for more details." >&5 --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 --echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 --echo "${ECHO_T}$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 --if test "${ac_cv_c_compiler_gnu+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. */ -- --int --main () --{ --#ifndef __GNUC__ -- choke me --#endif -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_compiler_gnu=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_compiler_gnu=no --fi --rm -f 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` --ac_test_CFLAGS=${CFLAGS+set} --ac_save_CFLAGS=$CFLAGS --CFLAGS="-g" --echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 --echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_g+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. */ -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_g=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_prog_cc_g=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 --echo "${ECHO_T}$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 --echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_cv_prog_cc_stdc=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 --#include --#include --#include --/* 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 -std1 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 -std1. */ --int osf4_cc_array ['\x00' == 0 ? 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 --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext --done --rm -f conftest.$ac_ext conftest.$ac_objext --CC=$ac_save_CC -- --fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:$LINENO: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -- *) -- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; --esac -- --# Some people use a C++ compiler to compile C. Since we use `exit', --# in C++ we need to declare it. In case someone uses the same compiler --# for both compiling C and C++ we need to have the C++ compiler decide --# the declaration of exit, since it's the most demanding environment. --cat >conftest.$ac_ext <<_ACEOF --#ifndef __cplusplus -- choke me --#endif --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- for ac_declaration in \ -- '' \ -- 'extern "C" void std::exit (int) throw (); using std::exit;' \ -- 'extern "C" void std::exit (int); using std::exit;' \ -- 'extern "C" void exit (int) throw ();' \ -- 'extern "C" void exit (int);' \ -- 'void exit (int);' --do -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --$ac_declaration --#include --int --main () --{ --exit (42); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- : --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --continue --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --$ac_declaration --int --main () --{ --exit (42); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- break --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --done --rm -f conftest* --if test -n "$ac_declaration"; then -- echo '#ifdef __cplusplus' >>confdefs.h -- echo $ac_declaration >>confdefs.h -- echo '#endif' >>confdefs.h --fi -- --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext 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 -- -- --NM=${NM-nm} -- --AS=${AS-as} -- --LD=${LD-ld} -- --DLLTOOL=${DLLTOOL-dlltool} -- --WINDRES=${WINDRES-windres} -- -- --# 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 --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 $as_executable_p "$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 -- ;; --esac --done -- -- --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. We don't cache a -- # path for INSTALL within a source directory, because that will -- # break other packages using the cache if that directory is -- # removed, or if the path is relative. -- INSTALL=$ac_install_sh -- 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' -- -- --# needed for the subtle differences between cygwin and mingw32 --case "${host}" in --*-*-cygwin*) -- TCL_ALLOC_OBJ= -- DLL_LDLIBS=-lcygwin -- DLL_LDFLAGS='-nostartfiles -Wl,--dll' -- ;; --*-*-mingw32*) -- TCL_ALLOC_OBJ='$(TMPDIR)/tclAlloc.o' -- DLL_LDLIBS= -- DLL_LDFLAGS='-mdll' -- ;; --esac -- -- -- --ITCL_VERSION=3.0 --ITCL_MAJOR_VERSION=3 --ITCL_MINOR_VERSION=0 --VERSION=${ITCL_MAJOR_VERSION}${ITCL_MINOR_VERSION} -- -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --# ----------------------------------------------------------------------- --# Set up a new default --prefix. If a previous installation of --# [incr Tcl] can be found searching $PATH use that directory. --# ----------------------------------------------------------------------- -- -- --if test "x$prefix" = xNONE; then -- echo $ECHO_N "checking for prefix by $ECHO_C" >&6 -- # Extract the first word of "itkwish", so it can be a program name with args. --set dummy itkwish; 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_path_ac_prefix_program+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- case $ac_prefix_program in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_ac_prefix_program="$ac_prefix_program" # Let the user override the test with a path. -- ;; -- *) -- 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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_path_ac_prefix_program="$as_dir/$ac_word$ac_exec_ext" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- -- ;; --esac --fi --ac_prefix_program=$ac_cv_path_ac_prefix_program -- --if test -n "$ac_prefix_program"; then -- echo "$as_me:$LINENO: result: $ac_prefix_program" >&5 --echo "${ECHO_T}$ac_prefix_program" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- if test -n "$ac_prefix_program"; then -- prefix=`(dirname "$ac_prefix_program") 2>/dev/null || --$as_expr X"$ac_prefix_program" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$ac_prefix_program" : 'X\(//\)[^/]' \| \ -- X"$ac_prefix_program" : 'X\(//\)$' \| \ -- X"$ac_prefix_program" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$ac_prefix_program" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- prefix=`(dirname "$prefix") 2>/dev/null || --$as_expr X"$prefix" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -- X"$prefix" : 'X\(//\)[^/]' \| \ -- X"$prefix" : 'X\(//\)$' \| \ -- X"$prefix" : 'X\(/\)' \| \ -- . : '\(.\)' 2>/dev/null || --echo X"$prefix" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- fi --fi -- -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --# ----------------------------------------------------------------------- --BUILD_DIR=`pwd` --ITCL_SRC_DIR=`cd $srcdir/..; pwd` -- --if ! test "$GCC" = yes; then -- tmp="`cygpath --windows $ITCL_SRC_DIR`" -- ITCL_SRC_DIR="`echo $tmp | sed -e s#\\\\\\\\#/#g`" --fi -- --cd ${BUILD_DIR} -- --# Check whether --enable-gcc or --disable-gcc was given. --if test "${enable_gcc+set}" = set; then -- enableval="$enable_gcc" -- itcl_ok=$enableval --else -- itcl_ok=no --fi; --if test "$itcl_ok" = "yes"; then -- 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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}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 --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_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # 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 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -- ac_cv_prog_ac_ct_CC="cc" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --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 --echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done -- --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 -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -- 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 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:$LINENO: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$CC" && break -- done --fi --if test -z "$CC"; then -- ac_ct_CC=$CC -- for ac_prog in cl --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_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&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 $as_executable_p "$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 -- break 2 -- fi --done --done -- --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 --else -- echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$ac_ct_CC" && break --done -- -- CC=$ac_ct_CC --fi -- --fi -- -- --test -z "$CC" && { { 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 --See \`config.log' for more details." >&2;} -- { (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` --{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 -- (eval $ac_compiler --version &5) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 -- (eval $ac_compiler -v &5) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 -- (eval $ac_compiler -V &5) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } -- --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 --if test "${ac_cv_c_compiler_gnu+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. */ -- --int --main () --{ --#ifndef __GNUC__ -- choke me --#endif -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_compiler_gnu=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_compiler_gnu=no --fi --rm -f 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` --ac_test_CFLAGS=${CFLAGS+set} --ac_save_CFLAGS=$CFLAGS --CFLAGS="-g" --echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 --echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_g+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. */ -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_g=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_prog_cc_g=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 --echo "${ECHO_T}$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 --echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_cv_prog_cc_stdc=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 --#include --#include --#include --/* 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 -std1 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 -std1. */ --int osf4_cc_array ['\x00' == 0 ? 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 --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext --done --rm -f conftest.$ac_ext conftest.$ac_objext --CC=$ac_save_CC -- --fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:$LINENO: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -- *) -- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; --esac -- --# Some people use a C++ compiler to compile C. Since we use `exit', --# in C++ we need to declare it. In case someone uses the same compiler --# for both compiling C and C++ we need to have the C++ compiler decide --# the declaration of exit, since it's the most demanding environment. --cat >conftest.$ac_ext <<_ACEOF --#ifndef __cplusplus -- choke me --#endif --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- for ac_declaration in \ -- '' \ -- 'extern "C" void std::exit (int) throw (); using std::exit;' \ -- 'extern "C" void std::exit (int); using std::exit;' \ -- 'extern "C" void exit (int) throw ();' \ -- 'extern "C" void exit (int);' \ -- 'void exit (int);' --do -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --$ac_declaration --#include --int --main () --{ --exit (42); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- : --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --continue --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --$ac_declaration --int --main () --{ --exit (42); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- break --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --done --rm -f conftest* --if test -n "$ac_declaration"; then -- echo '#ifdef __cplusplus' >>confdefs.h -- echo $ac_declaration >>confdefs.h -- echo '#endif' >>confdefs.h --fi -- --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --fi --rm -f conftest.err conftest.$ac_objext 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 -- --else -- CC=${CC-cc} -- --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 --# 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 --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 to if __STDC__ is defined, since -- # 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 --#else --# include --#endif -- Syntax error --_ACEOF --if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&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 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- : --else -- 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 non-existent 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 --_ACEOF --if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&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 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- # Broken: success on invalid input. --continue --else -- 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 --echo "$as_me:$LINENO: result: $CPP" >&5 --echo "${ECHO_T}$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 to if __STDC__ is defined, since -- # 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 --#else --# include --#endif -- Syntax error --_ACEOF --if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&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 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- : --else -- 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 non-existent 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 --_ACEOF --if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&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 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- # Broken: success on invalid input. --continue --else -- 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 -- { { 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 --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 -- -- --echo "$as_me:$LINENO: checking for egrep" >&5 --echo $ECHO_N "checking for egrep... $ECHO_C" >&6 --if test "${ac_cv_prog_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_prog_egrep='grep -E' -- else ac_cv_prog_egrep='egrep' -- fi --fi --echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 --echo "${ECHO_T}$ac_cv_prog_egrep" >&6 -- EGREP=$ac_cv_prog_egrep -- -- --echo "$as_me:$LINENO: checking for ANSI C header files" >&5 --echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 --if test "${ac_cv_header_stdc+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. */ --#include --#include --#include --#include -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_header_stdc=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_header_stdc=no --fi --rm -f 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 -- --_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 -- --_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 --#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)) -- exit(2); -- exit (0); --} --_ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- 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 --sed 's/^/| /' conftest.$ac_ext >&5 -- --( exit $ac_status ) --ac_cv_header_stdc=no --fi --rm -f core *.core 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 --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=`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 --if eval "test \"\${$as_ac_Header+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 -- --#include <$ac_header> --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<_ACEOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --_ACEOF -- --fi -- --done -- -- -- -- --for ac_header in unistd.h limits.h --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo "$as_me:$LINENO: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --fi --echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&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 --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 { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_header_compiler=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_header_compiler=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 --echo "${ECHO_T}$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 --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 { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&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 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- ac_header_preproc=yes --else -- 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 -- --# 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;} -- 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;} -- ( -- cat <<\_ASBOX --## ------------------------------------------ ## --## Report this to the AC_PACKAGE_NAME lists. ## --## ------------------------------------------ ## --_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 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- eval "$as_ac_Header=\$ac_header_preproc" --fi --echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -- --fi --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<_ACEOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --_ACEOF -- --fi -- --done -- -- --#-------------------------------------------------------------------- --# See if there was a command-line option for where Tcl is; if --# not, assume that its top-level directory is a sibling of ours. --# CYGNUS LOCAL - Actually, tcl is one level higher - a sibling of the --# itcl directory that contains itcl proper, itk & iwidgets. --#-------------------------------------------------------------------- -- -- --# Check whether --with-tcl or --without-tcl was given. --if test "${with_tcl+set}" = set; then -- withval="$with_tcl" -- TCL_BIN_DIR=$withval --else -- TCL_BIN_DIR=`cd ../../../tcl/win; pwd` --fi; -- --if test ! -f $TCL_BIN_DIR/../unix/tclConfig.sh; then -- TCL_BIN_DIR=`cd ../../../tcl8.1/win;pwd` --fi -- --if test ! -f $TCL_BIN_DIR/../unix/tclConfig.sh; then -- { { echo "$as_me:$LINENO: error: There's no tclConfig.sh in $TCL_BIN_DIR; perhaps you didn't specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?" >&5 --echo "$as_me: error: There's no tclConfig.sh in $TCL_BIN_DIR; perhaps you didn't specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?" >&2;} -- { (exit 1); exit 1; }; } --fi -- --#-------------------------------------------------------------------- --# Read in configuration information generated by Tcl for shared --# libraries, and arrange for it to be substituted into our --# Makefile. --#-------------------------------------------------------------------- -- --file=$TCL_BIN_DIR/../unix/tclConfig.sh --. $file -- --SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS --SHLIB_LD=$TCL_SHLIB_LD --SHLIB_LD_LIBS=$TCL_SHLIB_LD_LIBS --SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX --SHLIB_VERSION=$TCL_SHLIB_VERSION --DL_LIBS=$TCL_DL_LIBS --LD_FLAGS=$TCL_LD_FLAGS --ITCL_LD_SEARCH_FLAGS=$TCL_LD_SEARCH_FLAGS -- --echo "$as_me:$LINENO: checking whether C compiler is gcc" >&5 --echo $ECHO_N "checking whether C compiler is gcc... $ECHO_C" >&6 --if test "${itcl_cv_prog_gcc+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. */ -- --#ifdef __GNUC__ --_cc_is_gcc_ --#endif -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "_cc_is_gcc_" >/dev/null 2>&1; then -- itcl_cv_prog_gcc=yes --else -- itcl_cv_prog_gcc=no --fi --rm -f conftest* -- --fi -- --echo "$as_me:$LINENO: result: $itcl_cv_prog_gcc" >&5 --echo "${ECHO_T}$itcl_cv_prog_gcc" >&6 -- --if test -z "$CFLAGS" ; then -- CFLAGS="-O" --fi --if test "$itcl_cv_prog_gcc" = "yes" ; then -- CFLAGS="$CFLAGS -Wshadow -Wtraditional -Wall" --fi -- --echo "$as_me:$LINENO: checking default compiler flags" >&5 --echo $ECHO_N "checking default compiler flags... $ECHO_C" >&6 -- --# Check whether --with-cflags or --without-cflags was given. --if test "${with_cflags+set}" = set; then -- withval="$with_cflags" -- CFLAGS="$with_cflags" --fi; -- --echo "$as_me:$LINENO: result: $CFLAGS" >&5 --echo "${ECHO_T}$CFLAGS" >&6 -- --#-------------------------------------------------------------------- --# Supply a substitute for stdlib.h if it doesn't define strtol, --# strtoul, or strtod (which it doesn't in some versions of SunOS). --#-------------------------------------------------------------------- -- --echo "$as_me:$LINENO: checking stdlib.h" >&5 --echo $ECHO_N "checking stdlib.h... $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. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "strtol" >/dev/null 2>&1; then -- itcl_ok=yes --else -- itcl_ok=no --fi --rm -f conftest* -- --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "strtoul" >/dev/null 2>&1; then -- : --else -- itcl_ok=no --fi --rm -f conftest* -- --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "strtod" >/dev/null 2>&1; then -- : --else -- itcl_ok=no --fi --rm -f conftest* -- --if test $itcl_ok = no; then -- cat >>confdefs.h <<\_ACEOF --#define NO_STDLIB_H 1 --_ACEOF -- --fi --echo "$as_me:$LINENO: result: $itcl_ok" >&5 --echo "${ECHO_T}$itcl_ok" >&6 -- --#-------------------------------------------------------------------- --# Check for various typedefs and provide substitutes if --# they don't exist. --#-------------------------------------------------------------------- -- --echo "$as_me:$LINENO: checking for mode_t" >&5 --echo $ECHO_N "checking for mode_t... $ECHO_C" >&6 --if test "${ac_cv_type_mode_t+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 --int --main () --{ --if ((mode_t *) 0) -- return 0; --if (sizeof (mode_t)) -- return 0; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_type_mode_t=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_type_mode_t=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_type_mode_t" >&5 --echo "${ECHO_T}$ac_cv_type_mode_t" >&6 --if test $ac_cv_type_mode_t = yes; then -- : --else -- --cat >>confdefs.h <<_ACEOF --#define mode_t int --_ACEOF -- --fi -- --echo "$as_me:$LINENO: checking for pid_t" >&5 --echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 --if test "${ac_cv_type_pid_t+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 --int --main () --{ --if ((pid_t *) 0) -- return 0; --if (sizeof (pid_t)) -- return 0; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_type_pid_t=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_type_pid_t=no --fi --rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --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 -- : --else -- --cat >>confdefs.h <<_ACEOF --#define pid_t int --_ACEOF -- --fi -- --echo "$as_me:$LINENO: checking for size_t" >&5 --echo $ECHO_N "checking for size_t... $ECHO_C" >&6 --if test "${ac_cv_type_size_t+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 --int --main () --{ --if ((size_t *) 0) -- return 0; --if (sizeof (size_t)) -- return 0; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&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); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_type_size_t=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_type_size_t=no --fi --rm -f 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 -- : --else -- --cat >>confdefs.h <<_ACEOF --#define size_t unsigned --_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 --if test "${ac_cv_type_uid_t+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. */ --#include -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- $EGREP "uid_t" >/dev/null 2>&1; then -- ac_cv_type_uid_t=yes --else -- ac_cv_type_uid_t=no --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 --if test $ac_cv_type_uid_t = no; then -- --cat >>confdefs.h <<\_ACEOF --#define uid_t int --_ACEOF -- -- --cat >>confdefs.h <<\_ACEOF --#define gid_t int --_ACEOF -- --fi -- -- --#-------------------------------------------------------------------- --# Check for the existence of various libraries. The order here --# is important, so that then end up in the right order in the --# command line generated by make. The -lsocket and -lnsl libraries --# require a couple of special tricks: --# 1. Use "connect" and "accept" to check for -lsocket, and --# "gethostbyname" to check for -lnsl. --# 2. Use each function name only once: can't redo a check because --# autoconf caches the results of the last check and won't redo it. --# 3. Use -lnsl and -lsocket only if they supply procedures that --# aren't already present in the normal libraries. This is because --# IRIX 5.2 has libraries, but they aren't needed and they're --# bogus: they goof up name resolution if used. --# 4. On some SVR4 systems, can't use -lsocket without -lnsl too. --# To get around this problem, check for both libraries together --# if -lsocket doesn't work by itself. --#-------------------------------------------------------------------- -- --itcl_checkBoth=0 --echo "$as_me:$LINENO: checking for connect" >&5 --echo $ECHO_N "checking for connect... $ECHO_C" >&6 --if test "${ac_cv_func_connect+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. */ --/* Define connect to an innocuous variant, in case declares connect. -- For example, HP-UX 11i declares gettimeofday. */ --#define connect innocuous_connect -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char connect (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef connect -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char connect (); --/* 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_connect) || defined (__stub___connect) --choke me --#else --char (*f) () = connect; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != connect; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_connect=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_connect=no --fi --rm -f conftest.err conftest.$ac_objext \ -- 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 --if test $ac_cv_func_connect = yes; then -- itcl_checkSocket=0 --else -- itcl_checkSocket=1 --fi -- --if test "$itcl_checkSocket" = 1; then -- echo "$as_me:$LINENO: checking for main in -lsocket" >&5 --echo $ECHO_N "checking for main in -lsocket... $ECHO_C" >&6 --if test "${ac_cv_lib_socket_main+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lsocket $LIBS" --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -- -- --int --main () --{ --main (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_socket_main=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_lib_socket_main=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:$LINENO: result: $ac_cv_lib_socket_main" >&5 --echo "${ECHO_T}$ac_cv_lib_socket_main" >&6 --if test $ac_cv_lib_socket_main = yes; then -- LIBS="$LIBS -lsocket" --else -- itcl_checkBoth=1 --fi -- --fi --if test "$itcl_checkBoth" = 1; then -- itcl_oldLibs=$LIBS -- LIBS="$LIBS -lsocket -lnsl" -- echo "$as_me:$LINENO: checking for accept" >&5 --echo $ECHO_N "checking for accept... $ECHO_C" >&6 --if test "${ac_cv_func_accept+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. */ --/* Define accept to an innocuous variant, in case declares accept. -- For example, HP-UX 11i declares gettimeofday. */ --#define accept innocuous_accept -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char accept (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef accept -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char accept (); --/* 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_accept) || defined (__stub___accept) --choke me --#else --char (*f) () = accept; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != accept; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_accept=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_accept=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_func_accept" >&5 --echo "${ECHO_T}$ac_cv_func_accept" >&6 --if test $ac_cv_func_accept = yes; then -- itcl_checkNsl=0 --else -- LIBS=$itcl_oldLibs --fi -- --fi --echo "$as_me:$LINENO: checking for gethostbyname" >&5 --echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6 --if test "${ac_cv_func_gethostbyname+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. */ --/* Define gethostbyname to an innocuous variant, in case declares gethostbyname. -- For example, HP-UX 11i declares gettimeofday. */ --#define gethostbyname innocuous_gethostbyname -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char gethostbyname (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef gethostbyname -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char gethostbyname (); --/* 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_gethostbyname) || defined (__stub___gethostbyname) --choke me --#else --char (*f) () = gethostbyname; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != gethostbyname; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_gethostbyname=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_gethostbyname=no --fi --rm -f conftest.err conftest.$ac_objext \ -- 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 --if test $ac_cv_func_gethostbyname = yes; then -- : --else -- echo "$as_me:$LINENO: checking for main in -lnsl" >&5 --echo $ECHO_N "checking for main in -lnsl... $ECHO_C" >&6 --if test "${ac_cv_lib_nsl_main+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lnsl $LIBS" --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -- -- --int --main () --{ --main (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_nsl_main=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_lib_nsl_main=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_main" >&5 --echo "${ECHO_T}$ac_cv_lib_nsl_main" >&6 --if test $ac_cv_lib_nsl_main = yes; then -- LIBS="$LIBS -lnsl" --fi -- --fi -- -- --#-------------------------------------------------------------------- --# On a few very rare systems, all of the libm.a stuff is --# already in libc.a. Set compiler flags accordingly. --# Also, Linux requires the "ieee" library for math to --# work right (and it must appear before "-lm"). --#-------------------------------------------------------------------- -- --MATH_LIBS="" --echo "$as_me:$LINENO: checking for sin" >&5 --echo $ECHO_N "checking for sin... $ECHO_C" >&6 --if test "${ac_cv_func_sin+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. */ --/* Define sin to an innocuous variant, in case declares sin. -- For example, HP-UX 11i declares gettimeofday. */ --#define sin innocuous_sin -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char sin (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef sin -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char sin (); --/* 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_sin) || defined (__stub___sin) --choke me --#else --char (*f) () = sin; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != sin; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_sin=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_sin=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_func_sin" >&5 --echo "${ECHO_T}$ac_cv_func_sin" >&6 --if test $ac_cv_func_sin = yes; then -- : --else -- MATH_LIBS="-lm" --fi -- --echo "$as_me:$LINENO: checking for main in -lieee" >&5 --echo $ECHO_N "checking for main in -lieee... $ECHO_C" >&6 --if test "${ac_cv_lib_ieee_main+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lieee $LIBS" --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -- -- --int --main () --{ --main (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_ieee_main=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_lib_ieee_main=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:$LINENO: result: $ac_cv_lib_ieee_main" >&5 --echo "${ECHO_T}$ac_cv_lib_ieee_main" >&6 --if test $ac_cv_lib_ieee_main = yes; then -- MATH_LIBS="-lieee $MATH_LIBS" --fi -- -- --#-------------------------------------------------------------------- --# If this system doesn't have a memmove procedure, use memcpy --# instead. --#-------------------------------------------------------------------- -- --echo "$as_me:$LINENO: checking for memmove" >&5 --echo $ECHO_N "checking for memmove... $ECHO_C" >&6 --if test "${ac_cv_func_memmove+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. */ --/* Define memmove to an innocuous variant, in case declares memmove. -- For example, HP-UX 11i declares gettimeofday. */ --#define memmove innocuous_memmove -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char memmove (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef memmove -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char memmove (); --/* 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_memmove) || defined (__stub___memmove) --choke me --#else --char (*f) () = memmove; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != memmove; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_memmove=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_memmove=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_func_memmove" >&5 --echo "${ECHO_T}$ac_cv_func_memmove" >&6 --if test $ac_cv_func_memmove = yes; then -- : --else -- cat >>confdefs.h <<\_ACEOF --#define memmove memcpy --_ACEOF -- --fi -- -- --#-------------------------------------------------------------------- --# Figure out whether "char" is unsigned. If so, set a --# #define for __CHAR_UNSIGNED__. --#-------------------------------------------------------------------- -- --#AC_C_CHAR_UNSIGNED -- --#-------------------------------------------------------------------- --# Under Solaris 2.4, strtod returns the wrong value for the --# terminating character under some conditions. Check for this --# and if the problem exists use a substitute procedure --# "fixstrtod" (provided by Tcl) that corrects the error. --#-------------------------------------------------------------------- -- --echo "$as_me:$LINENO: checking for strtod" >&5 --echo $ECHO_N "checking for strtod... $ECHO_C" >&6 --if test "${ac_cv_func_strtod+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. */ --/* Define strtod to an innocuous variant, in case declares strtod. -- For example, HP-UX 11i declares gettimeofday. */ --#define strtod innocuous_strtod -- --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char strtod (); below. -- Prefer to if __STDC__ is defined, since -- exists even on freestanding compilers. */ -- --#ifdef __STDC__ --# include --#else --# include --#endif -- --#undef strtod -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --{ --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char strtod (); --/* 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_strtod) || defined (__stub___strtod) --choke me --#else --char (*f) () = strtod; --#endif --#ifdef __cplusplus --} --#endif -- --int --main () --{ --return f != strtod; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&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 -- (exit $ac_status); } && -- { ac_try='test -z "$ac_c_werror_flag" -- || test ! -s conftest.err' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_strtod=yes --else -- echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --ac_cv_func_strtod=no --fi --rm -f conftest.err conftest.$ac_objext \ -- conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:$LINENO: result: $ac_cv_func_strtod" >&5 --echo "${ECHO_T}$ac_cv_func_strtod" >&6 --if test $ac_cv_func_strtod = yes; then -- itcl_strtod=1 --else -- itcl_strtod=0 --fi -- --if test "$itcl_strtod" = 1; then -- echo "$as_me:$LINENO: checking for Solaris 2.4 strtod bug" >&5 --echo $ECHO_N "checking for Solaris 2.4 strtod bug... $ECHO_C" >&6 -- if test "$cross_compiling" = yes; then -- itcl_ok=0 --else -- cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ -- -- extern double strtod(); -- int main() -- { -- char *string = "NaN"; -- char *term; -- strtod(string, &term); -- if ((term != string) && (term[-1] == 0)) { -- exit(1); -- } -- exit(0); -- } --_ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- itcl_ok=1 --else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- --( exit $ac_status ) --itcl_ok=0 --fi --rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext --fi -- if test "$itcl_ok" = 1; then -- echo "$as_me:$LINENO: result: ok" >&5 --echo "${ECHO_T}ok" >&6 -- else -- echo "$as_me:$LINENO: result: buggy" >&5 --echo "${ECHO_T}buggy" >&6 -- cat >>confdefs.h <<\_ACEOF --#define strtod fixstrtod --_ACEOF -- -- fi --fi -- --#-------------------------------------------------------------------- --# If we are building with cygwin, we need one set of library names, --# otherwise, we need the Source-Navigator set. --#-------------------------------------------------------------------- -- --if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then -- CYGITCLLIBSPEC=itcl${VERSION} --else -- CYGITCLLIBSPEC="itcl`echo ${VERSION} | tr -d .`" --fi --CYGITCLLIB=lib${CYGITCLLIBSPEC}.a --CYGITCLDLL=cygitcl${VERSION}.dll --CYGITCLSH=cygitclsh${VERSION}.exe --CYGITCLDEF=itclcyg.def --CYGITCLTEST=cygitcltest.exe --CYGIMPORTLIB=cygitcl${VERSION}.lib --CYGITCLRES=cygitcl.o --CYGITCLSHRES=cygitclsh.o -- --SNITCLLIBSPEC=itcl30.lib --SNITCLLIB=${SNITCLLIBSPEC} --SNITCLDLL=snitcl30.dll --SNITCLSH=snitclsh30.exe --SNITCLDEF=itclsn.def --SNITCLTEST=snitcltest.exe --SNIMPORTLIB=snitcl30.lib --SNITCLRES=snitcl.obj --SNITCLSHRES=snitclsh.obj -- --if test "$GCC" = yes; then --ITCLLIBSPEC=${CYGITCLLIBSPEC} --ITCLLIB=${CYGITCLLIB} --ITCLDLL=${CYGITCLDLL} --ITCLSH=${CYGITCLSH} --ITCLDEF=${CYGITCLDEF} --ITCLTEST=${CYGITCLTEST} --ITCLIMPORTLIB=${CYGIMPORTLIB} --ITCLRES=${CYGITCLRES} --ITCLSHRES=${CYGITCLSHRES} --else --ITCLLIBSPEC=${SNITCLLIBSPEC} --ITCLLIB=${SNITCLLIB} --ITCLDLL=${SNITCLDLL} --ITCLSH=${SNITCLSH} --ITCLDEF=${SNITCLDEF} --ITCLTEST=${SNITCLTEST} --ITCLIMPORTLIB=${SNIMPORTLIB} --ITCLRES=${SNITCLRES} --ITCLSHRES=${SNITCLSHRES} --fi -- --ITCL_SH="`pwd`/${ITCLSH}" --if ! test "$GCC" = yes; then -- tmp="`cygpath --windows $ITCL_SH`" -- ITCL_SH="`echo $tmp | sed -e s#\\\\\\\\#/#g`" --fi -- -- --#-------------------------------------------------------------------- --# The statements below define a collection of symbols related to --# building libitcl as a shared library instead of a static library. --#-------------------------------------------------------------------- -- --# Check whether --enable-shared or --disable-shared was given. --if test "${enable_shared+set}" = set; then -- enableval="$enable_shared" -- ok=$enableval --else -- ok=no --fi; --if test "$ok" = "yes" -a "${SHLIB_SUFFIX}" != ""; then -- ITCL_SHLIB_CFLAGS="${SHLIB_CFLAGS}" -- eval "ITCL_LIB_FILE=libitcl${VERSION}${SHLIB_SUFFIX}" -- ITCL_PKG_FILE="[file join [file dirname \$dir] ${ITCL_LIB_FILE}]" -- MAKE_LIB="\${SHLIB_LD} -o ${ITCL_LIB_FILE} \${OBJS} ${SHLIB_LD_LIBS}" -- RANLIB=":" --else -- ITCL_SHLIB_CFLAGS="" -- eval "ITCL_LIB_FILE=libitcl${VERSION}.a" -- ITCL_PKG_FILE="" -- MAKE_LIB="ar cr ${ITCL_LIB_FILE} \${OBJS}" --fi -- --# Note: in the following variable, it's important to use the absolute --# path name of the Tcl directory rather than "..": this is because --# AIX remembers this path and will attempt to use it at run-time to look --# up the Tcl library. -- --if test "$GCC" = yes; then -- ITCL_BUILD_LIB_SPEC="-L`pwd` -l${ITCLLIBSPEC}" -- ITCL_LIB_SPEC="-L${exec_prefix}/lib/itcl -l{ITCLLIBSPEC}" -- ITCL_LIB_FULL_PATH="`pwd`/${ITCLLIB}" --else -- tmp="`pwd`/${ITCLLIB}" -- tmp2="`cygpath --windows $tmp`" -- ITCL_BUILD_LIB_SPEC="`echo $tmp2 | sed -e s#\\\\\\\\#/#g`" -- ITCL_LIB_FULL_PATH=${ITCL_BUILD_LIB_SPEC} -- tmp="${exec_prefix}/lib/itcl/${ITCLLIB}" -- tmp2="`cygpath --windows $tmp`" -- ITCL_LIB_SPEC="`echo $tmp2 | sed -e s#\\\\\\\\#/#g`" --fi -- --#------------------------------------------------------------------- --# Set up the libraries to link with. --#------------------------------------------------------------------- --if test "$GCC" = yes; then -- BASELIBS="-lkernel32 $(optlibs) -ladvapi32 -luser32" -- WINLIBS="-lgdi32 -lcomdlg32 -lwinspool" -- LIBCDLL= --else -- BASELIBS="kernel32.lib advapi32.lib user32.lib" -- WINLIBS="gdi32.lib comdlg32.lib winspool.lib" -- LIBCDLL="msvcrt.lib oldnames.lib" --fi -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ac_config_files="$ac_config_files Makefile ../unix/pkgIndex.tcl ../itclConfig.sh" --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, don't put newlines in cache variables' values. --# 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. --{ -- (set) 2>&1 | -- case `(ac_space=' '; set | grep ac_space) 2>&1` in -- *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 \ -- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" -- ;; -- esac; --} | -- sed ' -- t clear -- : clear -- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ -- t end -- /^ac_cv_env/!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" && echo "updating cache $cache_file" -- cat confcache >$cache_file -- else -- echo "not updating unwritable cache $cache_file" -- 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}' -- --# 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 -- --# Transform confdefs.h into DEFS. --# Protect against shell expansion while executing Makefile rules. --# Protect against Makefile macro expansion. --# --# If the first sed substitution is executed (which looks for macros that --# take arguments), then we branch to the quote section. Otherwise, --# look for a macro that doesn't take arguments. --cat >confdef2opt.sed <<\_ACEOF --t clear --: clear --s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g --t quote --s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g --t quote --d --: quote --s,[ `~#$^&*(){}\\|;'"<>?],\\&,g --s,\[,\\&,g --s,\],\\&,g --s,\$,$$,g --p --_ACEOF --# We use echo to avoid assuming a particular line-breaking character. --# The extra dot is to prevent the shell from consuming trailing --# line-breaks from the sub-command output. A line-break within --# single-quotes doesn't work because, if this script is created in a --# platform that uses two characters for line-breaks (e.g., DOS), tr --# would break. --ac_LF_and_DOT=`echo; echo .` --DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` --rm -f confdef2opt.sed -- -- --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_i=`echo "$ac_i" | -- sed 's/\$U\././;s/\.o$//;s/\.obj$//'` -- # 2. Add them. -- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" -- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' --done --LIBOBJS=$ac_libobjs -- --LTLIBOBJS=$ac_ltlibobjs -- -- -- --: ${CONFIG_STATUS=./config.status} --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 --#! $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 --## --------------------- ## --## M4sh Initialization. ## --## --------------------- ## -- --# 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+"$@"}'='"$@"' --elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then -- set -o posix --fi --DUALCASE=1; export DUALCASE # for MKS sh -- --# Support unset when possible. --if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then -- as_unset=unset --else -- as_unset=false --fi -- -- --# Work around bugs in pre-3.0 UWIN ksh. --$as_unset ENV MAIL MAILPATH --PS1='$ ' --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 -- fi --done -- --# Required to use basename. --if expr a : '\(a\)' >/dev/null 2>&1; 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 || --echo X/"$0" | -- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } -- /^X\/\(\/\/\)$/{ s//\1/; q; } -- /^X\/\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- -- --# PATH needs CR, and LINENO needs CR and PATH. --# 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 -- --# 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=';' -- else -- PATH_SEPARATOR=: -- fi -- rm -f conf$$.sh --fi -- -- -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" || { -- # Find who we are. Look in the path if we contain no path at all -- # relative or not. -- 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 -- -- ;; -- 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 -- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 --echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} -- { (exit 1); exit 1; }; } -- fi -- case $CONFIG_SHELL in -- '') -- 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=. -- for as_base in sh bash ksh sh5; do -- case $as_dir in -- /*) -- if ("$as_dir/$as_base" -c ' -- as_lineno_1=$LINENO -- as_lineno_2=$LINENO -- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` -- test "x$as_lineno_1" != "x$as_lineno_2" && -- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then -- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } -- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } -- CONFIG_SHELL=$as_dir/$as_base -- export CONFIG_SHELL -- exec "$CONFIG_SHELL" "$0" ${1+"$@"} -- fi;; -- esac -- done --done --;; -- esac -- -- # 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 before each line; the second 'sed' does the real -- # work. The second script uses 'N' to pair each line-number line -- # with the numbered line, 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 -- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) -- sed '=' <$as_myself | -- sed ' -- N -- s,$,-, -- : loop -- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, -- t loop -- s,-$,, -- s,^['$as_cr_digits']*\n,, -- ' >$as_me.lineno && -- chmod +x $as_me.lineno || -- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 --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 sensible to this). -- . ./$as_me.lineno -- # Exit status is that of the last command. -- exit --} -- -- --case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in -- *c*,-n*) ECHO_N= ECHO_C=' --' ECHO_T=' ' ;; -- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; -- *) ECHO_N= ECHO_C='\c' ECHO_T= ;; --esac -- --if expr a : '\(a\)' >/dev/null 2>&1; then -- as_expr=expr --else -- as_expr=false --fi -- --rm -f conf$$ conf$$.exe conf$$.file --echo >conf$$.file --if ln -s conf$$.file conf$$ 2>/dev/null; then -- # We could just check for DJGPP; but this test a) works b) is more generic -- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). -- if test -f conf$$.exe; then -- # Don't use ln at all; we don't have any links -- as_ln_s='cp -p' -- else -- as_ln_s='ln -s' -- fi --elif ln conf$$.file conf$$ 2>/dev/null; then -- as_ln_s=ln --else -- as_ln_s='cp -p' --fi --rm -f conf$$ conf$$.exe conf$$.file -- --if mkdir -p . 2>/dev/null; then -- as_mkdir_p=: --else -- test -d ./-p && rmdir ./-p -- as_mkdir_p=false --fi -- --as_executable_p="test -f" -- --# 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'" -- -- --# IFS --# We need space, tab and new line, in precisely that order. --as_nl=' --' --IFS=" $as_nl" -- --# CDPATH. --$as_unset CDPATH -- --exec 6>&1 -- --# Open the log real soon, to keep \$[0] and so on meaningful, and to --# report actual input values of CONFIG_FILES etc. instead of their --# values after options handling. Logging --version etc. is OK. --exec 5>>config.log --{ -- echo -- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX --## Running $as_me. ## --_ASBOX --} >&5 --cat >&5 <<_CSEOF -- --This file was extended by $as_me, which was --generated by GNU Autoconf 2.59. Invocation command line was -- -- CONFIG_FILES = $CONFIG_FILES -- CONFIG_HEADERS = $CONFIG_HEADERS -- CONFIG_LINKS = $CONFIG_LINKS -- CONFIG_COMMANDS = $CONFIG_COMMANDS -- $ $0 $@ -- --_CSEOF --echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 --echo >&5 --_ACEOF -- --# Files that config.status was made for. --if test -n "$ac_config_files"; then -- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_headers"; then -- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_links"; then -- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS --fi -- --if test -n "$ac_config_commands"; then -- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS --fi -- --cat >>$CONFIG_STATUS <<\_ACEOF -- --ac_cs_usage="\ --\`$as_me' instantiates files from templates according to the --current configuration. -- --Usage: $0 [OPTIONS] [FILE]... -- -- -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 -- --recheck update $as_me by reconfiguring in the same conditions -- --file=FILE[:TEMPLATE] -- instantiate the configuration file FILE -- --Configuration files: --$config_files -- --Report bugs to ." --_ACEOF -- --cat >>$CONFIG_STATUS <<_ACEOF --ac_cs_version="\\ --config.status --configured by $0, generated by GNU Autoconf 2.59, -- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" -- --Copyright (C) 2003 Free Software Foundation, Inc. --This config.status script is free software; the Free Software Foundation --gives unlimited permission to copy, distribute and modify it." --srcdir=$srcdir --INSTALL="$INSTALL" --_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. --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 -- ;; -- *) # This is not an option, so the user has probably given explicit -- # arguments. -- ac_option=$1 -- ac_need_defaults=false;; -- esac -- -- case $ac_option in -- # Handling of the options. --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF -- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) -- ac_cs_recheck=: ;; -- --version | --vers* | -V ) -- echo "$ac_cs_version"; exit 0 ;; -- --he | --h) -- # Conflict between --help and --header -- { { echo "$as_me:$LINENO: error: ambiguous option: $1 --Try \`$0 --help' for more information." >&5 --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 0 ;; -- --debug | --d* | -d ) -- debug=: ;; -- --file | --fil | --fi | --f ) -- $ac_shift -- CONFIG_FILES="$CONFIG_FILES $ac_optarg" -- ac_need_defaults=false;; -- --header | --heade | --head | --hea ) -- $ac_shift -- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" -- ac_need_defaults=false;; -- -q | -quiet | --quiet | --quie | --qui | --qu | --q \ -- | -silent | --silent | --silen | --sile | --sil | --si | --s) -- ac_cs_silent=: ;; -- -- # This is an error. -- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 --Try \`$0 --help' for more information." >&5 --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" ;; -- -- 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 --if \$ac_cs_recheck; then -- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 -- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion --fi -- --_ACEOF -- -- -- -- -- --cat >>$CONFIG_STATUS <<\_ACEOF --for ac_config_target in $ac_config_targets --do -- case "$ac_config_target" in -- # Handling of arguments. -- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; -- "../unix/pkgIndex.tcl" ) CONFIG_FILES="$CONFIG_FILES ../unix/pkgIndex.tcl" ;; -- "../itclConfig.sh" ) CONFIG_FILES="$CONFIG_FILES ../itclConfig.sh" ;; -- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 --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 --fi -- --# Have a temporary directory for convenience. Make it in the build tree --# simply because there is no reason to put it here, and in addition, --# creating and moving files from /tmp can sometimes cause problems. --# Create a temporary directory, and hook for its removal unless debugging. --$debug || --{ -- trap 'exit_status=$?; rm -rf $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 -q "./confstatXXXXXX") 2>/dev/null` && -- test -n "$tmp" && test -d "$tmp" --} || --{ -- tmp=./confstat$$-$RANDOM -- (umask 077 && mkdir $tmp) --} || --{ -- echo "$me: cannot create a temporary directory in ." >&2 -- { (exit 1); exit 1; } --} -- --_ACEOF -- --cat >>$CONFIG_STATUS <<_ACEOF -- --# --# CONFIG_FILES section. --# -- --# No need to generate the scripts if there are no CONFIG_FILES. --# This happens for instance when ./config.status config.h --if test -n "\$CONFIG_FILES"; then -- # Protect against being on the right side of a sed subst in config.status. -- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; -- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF --s,@SHELL@,$SHELL,;t t --s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t --s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t --s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t --s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t --s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t --s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t --s,@exec_prefix@,$exec_prefix,;t t --s,@prefix@,$prefix,;t t --s,@program_transform_name@,$program_transform_name,;t t --s,@bindir@,$bindir,;t t --s,@sbindir@,$sbindir,;t t --s,@libexecdir@,$libexecdir,;t t --s,@datadir@,$datadir,;t t --s,@sysconfdir@,$sysconfdir,;t t --s,@sharedstatedir@,$sharedstatedir,;t t --s,@localstatedir@,$localstatedir,;t t --s,@libdir@,$libdir,;t t --s,@includedir@,$includedir,;t t --s,@oldincludedir@,$oldincludedir,;t t --s,@infodir@,$infodir,;t t --s,@mandir@,$mandir,;t t --s,@build_alias@,$build_alias,;t t --s,@host_alias@,$host_alias,;t t --s,@target_alias@,$target_alias,;t t --s,@DEFS@,$DEFS,;t t --s,@ECHO_C@,$ECHO_C,;t t --s,@ECHO_N@,$ECHO_N,;t t --s,@ECHO_T@,$ECHO_T,;t t --s,@LIBS@,$LIBS,;t t --s,@build@,$build,;t t --s,@build_cpu@,$build_cpu,;t t --s,@build_vendor@,$build_vendor,;t t --s,@build_os@,$build_os,;t t --s,@host@,$host,;t t --s,@host_cpu@,$host_cpu,;t t --s,@host_vendor@,$host_vendor,;t t --s,@host_os@,$host_os,;t t --s,@RANLIB@,$RANLIB,;t t --s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t --s,@CC@,$CC,;t t --s,@CFLAGS@,$CFLAGS,;t t --s,@LDFLAGS@,$LDFLAGS,;t t --s,@CPPFLAGS@,$CPPFLAGS,;t t --s,@ac_ct_CC@,$ac_ct_CC,;t t --s,@EXEEXT@,$EXEEXT,;t t --s,@OBJEXT@,$OBJEXT,;t t --s,@NM@,$NM,;t t --s,@AS@,$AS,;t t --s,@LD@,$LD,;t t --s,@DLLTOOL@,$DLLTOOL,;t t --s,@WINDRES@,$WINDRES,;t t --s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t --s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t --s,@INSTALL_DATA@,$INSTALL_DATA,;t t --s,@DLL_LDFLAGS@,$DLL_LDFLAGS,;t t --s,@DLL_LDLIBS@,$DLL_LDLIBS,;t t --s,@ac_prefix_program@,$ac_prefix_program,;t t --s,@CPP@,$CPP,;t t --s,@EGREP@,$EGREP,;t t --s,@DL_LIBS@,$DL_LIBS,;t t --s,@LD_FLAGS@,$LD_FLAGS,;t t --s,@MATH_LIBS@,$MATH_LIBS,;t t --s,@MAKE_LIB@,$MAKE_LIB,;t t --s,@SHLIB_CFLAGS@,$SHLIB_CFLAGS,;t t --s,@SHLIB_LD@,$SHLIB_LD,;t t --s,@SHLIB_LD_LIBS@,$SHLIB_LD_LIBS,;t t --s,@SHLIB_SUFFIX@,$SHLIB_SUFFIX,;t t --s,@SHLIB_VERSION@,$SHLIB_VERSION,;t t --s,@TCL_BIN_DIR@,$TCL_BIN_DIR,;t t --s,@TCL_BUILD_LIB_SPEC@,$TCL_BUILD_LIB_SPEC,;t t --s,@TCL_SRC_DIR@,$TCL_SRC_DIR,;t t --s,@TCL_VERSION@,$TCL_VERSION,;t t --s,@TCL_LIB_FILE@,$TCL_LIB_FILE,;t t --s,@TCL_LIB_FULL_PATH@,$TCL_LIB_FULL_PATH,;t t --s,@ITCL_BUILD_LIB_SPEC@,$ITCL_BUILD_LIB_SPEC,;t t --s,@ITCL_LD_SEARCH_FLAGS@,$ITCL_LD_SEARCH_FLAGS,;t t --s,@ITCL_LIB_FILE@,$ITCL_LIB_FILE,;t t --s,@ITCL_LIB_FULL_PATH@,$ITCL_LIB_FULL_PATH,;t t --s,@ITCL_LIB_SPEC@,$ITCL_LIB_SPEC,;t t --s,@ITCL_MAJOR_VERSION@,$ITCL_MAJOR_VERSION,;t t --s,@ITCL_MINOR_VERSION@,$ITCL_MINOR_VERSION,;t t --s,@ITCL_PKG_FILE@,$ITCL_PKG_FILE,;t t --s,@ITCL_SHLIB_CFLAGS@,$ITCL_SHLIB_CFLAGS,;t t --s,@ITCL_SRC_DIR@,$ITCL_SRC_DIR,;t t --s,@ITCL_VERSION@,$ITCL_VERSION,;t t --s,@CYGITCLLIB@,$CYGITCLLIB,;t t --s,@CYGITCLDLL@,$CYGITCLDLL,;t t --s,@CYGITCLSH@,$CYGITCLSH,;t t --s,@CYGITCLDEF@,$CYGITCLDEF,;t t --s,@CYGITCLTEST@,$CYGITCLTEST,;t t --s,@CYGIMPORTLIB@,$CYGIMPORTLIB,;t t --s,@CYGITCLRES@,$CYGITCLRES,;t t --s,@CYGITCLSHRES@,$CYGITCLSHRES,;t t --s,@SNITCLLIB@,$SNITCLLIB,;t t --s,@SNITCLDLL@,$SNITCLDLL,;t t --s,@SNITCLSH@,$SNITCLSH,;t t --s,@SNITCLDEF@,$SNITCLDEF,;t t --s,@SNITCLTEST@,$SNITCLTEST,;t t --s,@SNIMPORTLIB@,$SNIMPORTLIB,;t t --s,@SNITCLRES@,$SNITCLRES,;t t --s,@SNITCLSHRES@,$SNITCLSHRES,;t t --s,@ITCLLIB@,$ITCLLIB,;t t --s,@ITCLDLL@,$ITCLDLL,;t t --s,@ITCLSH@,$ITCLSH,;t t --s,@ITCLDEF@,$ITCLDEF,;t t --s,@ITCLTEST@,$ITCLTEST,;t t --s,@ITCLIMPORTLIB@,$ITCLIMPORTLIB,;t t --s,@ITCLRES@,$ITCLRES,;t t --s,@ITCL_SH@,$ITCL_SH,;t t --s,@BASELIBS@,$BASELIBS,;t t --s,@WINLIBS@,$WINLIBS,;t t --s,@LIBCDLL@,$LIBCDLL,;t t --s,@LIBOBJS@,$LIBOBJS,;t t --s,@LTLIBOBJS@,$LTLIBOBJS,;t t --CEOF -- --_ACEOF -- -- cat >>$CONFIG_STATUS <<\_ACEOF -- # Split the substitutions into bite-sized pieces for seds with -- # small command number limits, like on Digital OSF/1 and HP-UX. -- ac_max_sed_lines=48 -- ac_sed_frag=1 # Number of current file. -- ac_beg=1 # First line for current file. -- ac_end=$ac_max_sed_lines # Line after last line for current file. -- ac_more_lines=: -- ac_sed_cmds= -- while $ac_more_lines; do -- if test $ac_beg -gt 1; then -- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- else -- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag -- fi -- if test ! -s $tmp/subs.frag; then -- ac_more_lines=false -- else -- # The purpose of the label and of the branching condition is to -- # speed up the sed processing (if there are no `@' at all, there -- # is no need to browse any of the substitutions). -- # These are the two extra sed commands mentioned above. -- (echo ':t -- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" -- else -- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" -- fi -- ac_sed_frag=`expr $ac_sed_frag + 1` -- ac_beg=$ac_end -- ac_end=`expr $ac_end + $ac_max_sed_lines` -- fi -- done -- if test -z "$ac_sed_cmds"; then -- ac_sed_cmds=cat -- fi --fi # test -n "$CONFIG_FILES" -- --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF --for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue -- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". -- case $ac_file in -- - | *:- | *:-:* ) # input from stdin -- cat >$tmp/stdin -- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` -- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; -- * ) ac_file_in=$ac_file.in ;; -- esac -- -- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. -- ac_dir=`(dirname "$ac_file") 2>/dev/null || --$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" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- { if $as_mkdir_p; then -- mkdir -p "$ac_dir" -- else -- as_dir="$ac_dir" -- as_dirs= -- while test ! -d "$as_dir"; do -- as_dirs="$as_dir $as_dirs" -- as_dir=`(dirname "$as_dir") 2>/dev/null || --$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" | -- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } -- /^X\(\/\/\)[^/].*/{ s//\1/; q; } -- /^X\(\/\/\)$/{ s//\1/; q; } -- /^X\(\/\).*/{ s//\1/; q; } -- s/.*/./; q'` -- done -- test ! -n "$as_dirs" || mkdir $as_dirs -- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 --echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} -- { (exit 1); exit 1; }; }; } -- -- ac_builddir=. -- --if test "$ac_dir" != .; then -- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` -- # A "../" for each directory in $ac_dir_suffix. -- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` --else -- ac_dir_suffix= ac_top_builddir= --fi -- --case $srcdir in -- .) # No --srcdir option. We are building in place. -- ac_srcdir=. -- if test -z "$ac_top_builddir"; then -- ac_top_srcdir=. -- else -- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` -- fi ;; -- [\\/]* | ?:[\\/]* ) # Absolute path. -- ac_srcdir=$srcdir$ac_dir_suffix; -- ac_top_srcdir=$srcdir ;; -- *) # Relative path. -- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix -- ac_top_srcdir=$ac_top_builddir$srcdir ;; --esac -- --# Do not use `cd foo && pwd` to compute absolute paths, because --# the directories may not exist. --case `pwd` in --.) ac_abs_builddir="$ac_dir";; --*) -- case "$ac_dir" in -- .) ac_abs_builddir=`pwd`;; -- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; -- *) ac_abs_builddir=`pwd`/"$ac_dir";; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_builddir=${ac_top_builddir}.;; --*) -- case ${ac_top_builddir}. in -- .) ac_abs_top_builddir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; -- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_srcdir=$ac_srcdir;; --*) -- case $ac_srcdir in -- .) ac_abs_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; -- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; -- esac;; --esac --case $ac_abs_builddir in --.) ac_abs_top_srcdir=$ac_top_srcdir;; --*) -- case $ac_top_srcdir in -- .) ac_abs_top_srcdir=$ac_abs_builddir;; -- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; -- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; -- esac;; --esac -- -- -- case $INSTALL in -- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; -- *) ac_INSTALL=$ac_top_builddir$INSTALL ;; -- esac -- -- if test x"$ac_file" != x-; then -- { echo "$as_me:$LINENO: creating $ac_file" >&5 --echo "$as_me: creating $ac_file" >&6;} -- rm -f "$ac_file" -- fi -- # 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. */ -- if test x"$ac_file" = x-; then -- configure_input= -- else -- configure_input="$ac_file. " -- fi -- configure_input=$configure_input"Generated from `echo $ac_file_in | -- sed 's,.*/,,'` by configure." -- -- # First look for the input files in the build tree, otherwise in the -- # src tree. -- ac_file_inputs=`IFS=: -- for f in $ac_file_in; do -- case $f in -- -) echo $tmp/stdin ;; -- [\\/$]*) -- # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- echo "$f";; -- *) # Relative -- if test -f "$f"; then -- # Build tree -- echo "$f" -- elif test -f "$srcdir/$f"; then -- # Source tree -- echo "$srcdir/$f" -- else -- # /dev/null tree -- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 --echo "$as_me: error: cannot find input file: $f" >&2;} -- { (exit 1); exit 1; }; } -- fi;; -- esac -- done` || { (exit 1); exit 1; } --_ACEOF --cat >>$CONFIG_STATUS <<_ACEOF -- sed "$ac_vpsub --$extrasub --_ACEOF --cat >>$CONFIG_STATUS <<\_ACEOF --:t --/@[a-zA-Z_][a-zA-Z_0-9]*@/!b --s,@configure_input@,$configure_input,;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,@top_builddir@,$ac_top_builddir,;t t --s,@abs_top_builddir@,$ac_abs_top_builddir,;t t --s,@INSTALL@,$ac_INSTALL,;t t --" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out -- rm -f $tmp/stdin -- if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -- else -- cat $tmp/out -- rm -f $tmp/out -- fi -- --done --_ACEOF -- --cat >>$CONFIG_STATUS <<\_ACEOF -- --{ (exit 0); exit 0; } --_ACEOF --chmod +x $CONFIG_STATUS --ac_clean_files=$ac_clean_files_save -- -- --# 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 -- -diff -Naur insight-6.8.orig/itcl/itcl/win/configure.in insight-6.8.new/itcl/itcl/win/configure.in ---- insight-6.8.orig/itcl/itcl/win/configure.in 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/configure.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,429 +0,0 @@ --dnl This whole file is CYGNUS LOCAL --dnl This file is an input file used by the GNU "autoconf" program to --dnl generate the file "configure", which is run during [incr Tcl] --dnl installation to configure the system for the local environment. -- --AC_PREREQ(2.5) -- --AC_INIT(../generic/itcl.h) -- --AC_CONFIG_AUX_DIR(../../../) --AC_CANONICAL_HOST -- --AC_PROG_RANLIB -- --AC_PROG_CC --AC_OBJEXT --NM=${NM-nm} --AC_SUBST(NM) --AS=${AS-as} --AC_SUBST(AS) --LD=${LD-ld} --AC_SUBST(LD) --DLLTOOL=${DLLTOOL-dlltool} --AC_SUBST(DLLTOOL) --WINDRES=${WINDRES-windres} --AC_SUBST(WINDRES) -- --AC_PROG_INSTALL -- --# needed for the subtle differences between cygwin and mingw32 --case "${host}" in --*-*-cygwin*) -- TCL_ALLOC_OBJ= -- DLL_LDLIBS=-lcygwin -- DLL_LDFLAGS='-nostartfiles -Wl,--dll' -- ;; --*-*-mingw32*) -- TCL_ALLOC_OBJ='$(TMPDIR)/tclAlloc.o' -- DLL_LDLIBS= -- DLL_LDFLAGS='-mdll' -- ;; --esac --AC_SUBST(DLL_LDFLAGS) --AC_SUBST(DLL_LDLIBS) -- --ITCL_VERSION=3.0 --ITCL_MAJOR_VERSION=3 --ITCL_MINOR_VERSION=0 --VERSION=${ITCL_MAJOR_VERSION}${ITCL_MINOR_VERSION} -- -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --# ----------------------------------------------------------------------- --# Set up a new default --prefix. If a previous installation of --# [incr Tcl] can be found searching $PATH use that directory. --# ----------------------------------------------------------------------- -- --AC_PREFIX_DEFAULT(/usr/local) --AC_PREFIX_PROGRAM(itkwish) -- --if test "${prefix}" = "NONE"; then -- prefix=/usr/local --fi --if test "${exec_prefix}" = "NONE"; then -- exec_prefix=$prefix --fi -- --# ----------------------------------------------------------------------- --BUILD_DIR=`pwd` --ITCL_SRC_DIR=`cd $srcdir/..; pwd` -- --if ! test "$GCC" = yes; then -- tmp="`cygpath --windows $ITCL_SRC_DIR`" -- ITCL_SRC_DIR="`echo $tmp | sed -e s#\\\\\\\\#/#g`" --fi -- --cd ${BUILD_DIR} -- --AC_ARG_ENABLE(gcc, [ --enable-gcc allow use of gcc if available], -- [itcl_ok=$enableval], [itcl_ok=no]) --if test "$itcl_ok" = "yes"; then -- AC_PROG_CC --else -- CC=${CC-cc} --AC_SUBST(CC) --fi --AC_HAVE_HEADERS(unistd.h limits.h) -- --#-------------------------------------------------------------------- --# See if there was a command-line option for where Tcl is; if --# not, assume that its top-level directory is a sibling of ours. --# CYGNUS LOCAL - Actually, tcl is one level higher - a sibling of the --# itcl directory that contains itcl proper, itk & iwidgets. --#-------------------------------------------------------------------- -- --AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8.0 binaries from DIR], -- TCL_BIN_DIR=$withval, TCL_BIN_DIR=`cd ../../../tcl/win; pwd`) -- --if test ! -f $TCL_BIN_DIR/../unix/tclConfig.sh; then -- TCL_BIN_DIR=`cd ../../../tcl8.1/win;pwd` --fi -- --if test ! -f $TCL_BIN_DIR/../unix/tclConfig.sh; then -- AC_MSG_ERROR(There's no tclConfig.sh in $TCL_BIN_DIR; perhaps you didn't specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?) --fi -- --#-------------------------------------------------------------------- --# Read in configuration information generated by Tcl for shared --# libraries, and arrange for it to be substituted into our --# Makefile. --#-------------------------------------------------------------------- -- --file=$TCL_BIN_DIR/../unix/tclConfig.sh --. $file -- --dnl CFLAGS=$TCL_CFLAGS --SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS --SHLIB_LD=$TCL_SHLIB_LD --SHLIB_LD_LIBS=$TCL_SHLIB_LD_LIBS --SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX --SHLIB_VERSION=$TCL_SHLIB_VERSION --DL_LIBS=$TCL_DL_LIBS --LD_FLAGS=$TCL_LD_FLAGS --ITCL_LD_SEARCH_FLAGS=$TCL_LD_SEARCH_FLAGS -- --AC_MSG_CHECKING([whether C compiler is gcc]) --AC_CACHE_VAL(itcl_cv_prog_gcc, [ -- AC_EGREP_CPP(_cc_is_gcc_, [ --#ifdef __GNUC__ --_cc_is_gcc_ --#endif --], [itcl_cv_prog_gcc=yes], [itcl_cv_prog_gcc=no])]) --AC_MSG_RESULT([$itcl_cv_prog_gcc]) -- --if test -z "$CFLAGS" ; then -- CFLAGS="-O" --fi --if test "$itcl_cv_prog_gcc" = "yes" ; then -- CFLAGS="$CFLAGS -Wshadow -Wtraditional -Wall" --fi -- --AC_MSG_CHECKING([default compiler flags]) --AC_ARG_WITH(cflags, [ --with-cflags=FLAGS set compiler flags to FLAGS], -- [CFLAGS="$with_cflags"]) -- --AC_MSG_RESULT([$CFLAGS]) -- --#-------------------------------------------------------------------- --# Supply a substitute for stdlib.h if it doesn't define strtol, --# strtoul, or strtod (which it doesn't in some versions of SunOS). --#-------------------------------------------------------------------- -- --AC_MSG_CHECKING(stdlib.h) --AC_HEADER_EGREP(strtol, stdlib.h, itcl_ok=yes, itcl_ok=no) --AC_HEADER_EGREP(strtoul, stdlib.h, , itcl_ok=no) --AC_HEADER_EGREP(strtod, stdlib.h, , itcl_ok=no) --if test $itcl_ok = no; then -- AC_DEFINE(NO_STDLIB_H) --fi --AC_MSG_RESULT($itcl_ok) -- --#-------------------------------------------------------------------- --# Check for various typedefs and provide substitutes if --# they don't exist. --#-------------------------------------------------------------------- -- --AC_MODE_T --AC_PID_T --AC_SIZE_T --AC_UID_T -- --#-------------------------------------------------------------------- --# Check for the existence of various libraries. The order here --# is important, so that then end up in the right order in the --# command line generated by make. The -lsocket and -lnsl libraries --# require a couple of special tricks: --# 1. Use "connect" and "accept" to check for -lsocket, and --# "gethostbyname" to check for -lnsl. --# 2. Use each function name only once: can't redo a check because --# autoconf caches the results of the last check and won't redo it. --# 3. Use -lnsl and -lsocket only if they supply procedures that --# aren't already present in the normal libraries. This is because --# IRIX 5.2 has libraries, but they aren't needed and they're --# bogus: they goof up name resolution if used. --# 4. On some SVR4 systems, can't use -lsocket without -lnsl too. --# To get around this problem, check for both libraries together --# if -lsocket doesn't work by itself. --#-------------------------------------------------------------------- -- --itcl_checkBoth=0 --AC_CHECK_FUNC(connect, itcl_checkSocket=0, itcl_checkSocket=1) --if test "$itcl_checkSocket" = 1; then -- AC_CHECK_LIB(socket, main, LIBS="$LIBS -lsocket", itcl_checkBoth=1) --fi --if test "$itcl_checkBoth" = 1; then -- itcl_oldLibs=$LIBS -- LIBS="$LIBS -lsocket -lnsl" -- AC_CHECK_FUNC(accept, itcl_checkNsl=0, [LIBS=$itcl_oldLibs]) --fi --AC_CHECK_FUNC(gethostbyname, , AC_CHECK_LIB(nsl, main, [LIBS="$LIBS -lnsl"])) -- --#-------------------------------------------------------------------- --# On a few very rare systems, all of the libm.a stuff is --# already in libc.a. Set compiler flags accordingly. --# Also, Linux requires the "ieee" library for math to --# work right (and it must appear before "-lm"). --#-------------------------------------------------------------------- -- --MATH_LIBS="" --AC_CHECK_FUNC(sin, , MATH_LIBS="-lm") --AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"]) -- --#-------------------------------------------------------------------- --# If this system doesn't have a memmove procedure, use memcpy --# instead. --#-------------------------------------------------------------------- -- --AC_CHECK_FUNC(memmove, , [AC_DEFINE(memmove, memcpy)]) -- --#-------------------------------------------------------------------- --# Figure out whether "char" is unsigned. If so, set a --# #define for __CHAR_UNSIGNED__. --#-------------------------------------------------------------------- -- --#AC_C_CHAR_UNSIGNED -- --#-------------------------------------------------------------------- --# Under Solaris 2.4, strtod returns the wrong value for the --# terminating character under some conditions. Check for this --# and if the problem exists use a substitute procedure --# "fixstrtod" (provided by Tcl) that corrects the error. --#-------------------------------------------------------------------- -- --AC_CHECK_FUNC(strtod, itcl_strtod=1, itcl_strtod=0) --if test "$itcl_strtod" = 1; then -- AC_MSG_CHECKING([for Solaris 2.4 strtod bug]) -- AC_TRY_RUN([ -- extern double strtod(); -- int main() -- { -- char *string = "NaN"; -- char *term; -- strtod(string, &term); -- if ((term != string) && (term[-1] == 0)) { -- exit(1); -- } -- exit(0); -- }], itcl_ok=1, itcl_ok=0, itcl_ok=0) -- if test "$itcl_ok" = 1; then -- AC_MSG_RESULT(ok) -- else -- AC_MSG_RESULT(buggy) -- AC_DEFINE(strtod, fixstrtod) -- fi --fi -- --#-------------------------------------------------------------------- --# If we are building with cygwin, we need one set of library names, --# otherwise, we need the Source-Navigator set. --#-------------------------------------------------------------------- -- --if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then -- CYGITCLLIBSPEC=itcl${VERSION} --else -- CYGITCLLIBSPEC="itcl`echo ${VERSION} | tr -d .`" --fi --CYGITCLLIB=lib${CYGITCLLIBSPEC}.a --CYGITCLDLL=cygitcl${VERSION}.dll --CYGITCLSH=cygitclsh${VERSION}.exe --CYGITCLDEF=itclcyg.def --CYGITCLTEST=cygitcltest.exe --CYGIMPORTLIB=cygitcl${VERSION}.lib --CYGITCLRES=cygitcl.o --CYGITCLSHRES=cygitclsh.o -- --SNITCLLIBSPEC=itcl30.lib --SNITCLLIB=${SNITCLLIBSPEC} --SNITCLDLL=snitcl30.dll --SNITCLSH=snitclsh30.exe --SNITCLDEF=itclsn.def --SNITCLTEST=snitcltest.exe --SNIMPORTLIB=snitcl30.lib --SNITCLRES=snitcl.obj --SNITCLSHRES=snitclsh.obj -- --if test "$GCC" = yes; then --ITCLLIBSPEC=${CYGITCLLIBSPEC} --ITCLLIB=${CYGITCLLIB} --ITCLDLL=${CYGITCLDLL} --ITCLSH=${CYGITCLSH} --ITCLDEF=${CYGITCLDEF} --ITCLTEST=${CYGITCLTEST} --ITCLIMPORTLIB=${CYGIMPORTLIB} --ITCLRES=${CYGITCLRES} --ITCLSHRES=${CYGITCLSHRES} --else --ITCLLIBSPEC=${SNITCLLIBSPEC} --ITCLLIB=${SNITCLLIB} --ITCLDLL=${SNITCLDLL} --ITCLSH=${SNITCLSH} --ITCLDEF=${SNITCLDEF} --ITCLTEST=${SNITCLTEST} --ITCLIMPORTLIB=${SNIMPORTLIB} --ITCLRES=${SNITCLRES} --ITCLSHRES=${SNITCLSHRES} --fi -- --ITCL_SH="`pwd`/${ITCLSH}" --if ! test "$GCC" = yes; then -- tmp="`cygpath --windows $ITCL_SH`" -- ITCL_SH="`echo $tmp | sed -e s#\\\\\\\\#/#g`" --fi -- -- --#-------------------------------------------------------------------- --# The statements below define a collection of symbols related to --# building libitcl as a shared library instead of a static library. --#-------------------------------------------------------------------- -- --AC_ARG_ENABLE(shared, -- [ --enable-shared build libitcl as a shared library], -- [ok=$enableval], [ok=no]) --if test "$ok" = "yes" -a "${SHLIB_SUFFIX}" != ""; then -- ITCL_SHLIB_CFLAGS="${SHLIB_CFLAGS}" -- eval "ITCL_LIB_FILE=libitcl${VERSION}${SHLIB_SUFFIX}" -- ITCL_PKG_FILE="[[file join [file dirname \$dir] ${ITCL_LIB_FILE}]]" -- MAKE_LIB="\${SHLIB_LD} -o ${ITCL_LIB_FILE} \${OBJS} ${SHLIB_LD_LIBS}" -- RANLIB=":" --else -- ITCL_SHLIB_CFLAGS="" -- eval "ITCL_LIB_FILE=libitcl${VERSION}.a" -- ITCL_PKG_FILE="" -- MAKE_LIB="ar cr ${ITCL_LIB_FILE} \${OBJS}" --fi -- --# Note: in the following variable, it's important to use the absolute --# path name of the Tcl directory rather than "..": this is because --# AIX remembers this path and will attempt to use it at run-time to look --# up the Tcl library. -- --if test "$GCC" = yes; then -- ITCL_BUILD_LIB_SPEC="-L`pwd` -l${ITCLLIBSPEC}" -- ITCL_LIB_SPEC="-L${exec_prefix}/lib/itcl -l{ITCLLIBSPEC}" -- ITCL_LIB_FULL_PATH="`pwd`/${ITCLLIB}" --else -- tmp="`pwd`/${ITCLLIB}" -- tmp2="`cygpath --windows $tmp`" -- ITCL_BUILD_LIB_SPEC="`echo $tmp2 | sed -e s#\\\\\\\\#/#g`" -- ITCL_LIB_FULL_PATH=${ITCL_BUILD_LIB_SPEC} -- tmp="${exec_prefix}/lib/itcl/${ITCLLIB}" -- tmp2="`cygpath --windows $tmp`" -- ITCL_LIB_SPEC="`echo $tmp2 | sed -e s#\\\\\\\\#/#g`" --fi -- --#------------------------------------------------------------------- --# Set up the libraries to link with. --#------------------------------------------------------------------- --if test "$GCC" = yes; then -- BASELIBS="-lkernel32 $(optlibs) -ladvapi32 -luser32" -- WINLIBS="-lgdi32 -lcomdlg32 -lwinspool" -- LIBCDLL= --else -- BASELIBS="kernel32.lib advapi32.lib user32.lib" -- WINLIBS="gdi32.lib comdlg32.lib winspool.lib" -- LIBCDLL="msvcrt.lib oldnames.lib" --fi -- --AC_SUBST(CFLAGS) --AC_SUBST(DL_LIBS) --AC_SUBST(LD_FLAGS) --AC_SUBST(MATH_LIBS) --AC_SUBST(MAKE_LIB) --AC_SUBST(SHLIB_CFLAGS) --AC_SUBST(SHLIB_LD) --AC_SUBST(SHLIB_LD_LIBS) --AC_SUBST(SHLIB_SUFFIX) --AC_SUBST(SHLIB_VERSION) --AC_SUBST(TCL_BIN_DIR) --AC_SUBST(TCL_BUILD_LIB_SPEC) --AC_SUBST(TCL_SRC_DIR) --AC_SUBST(TCL_VERSION) --AC_SUBST(TCL_LIB_FILE) --AC_SUBST(TCL_LIB_FULL_PATH) --AC_SUBST(ITCL_BUILD_LIB_SPEC) --AC_SUBST(ITCL_LD_SEARCH_FLAGS) --AC_SUBST(ITCL_LIB_FILE) --AC_SUBST(ITCL_LIB_FULL_PATH) --AC_SUBST(ITCL_LIB_SPEC) --AC_SUBST(ITCL_MAJOR_VERSION) --AC_SUBST(ITCL_MINOR_VERSION) --AC_SUBST(ITCL_PKG_FILE) --AC_SUBST(ITCL_SHLIB_CFLAGS) --AC_SUBST(ITCL_SRC_DIR) --AC_SUBST(ITCL_VERSION) --AC_SUBST(CYGITCLLIB) --AC_SUBST(CYGITCLDLL) --AC_SUBST(CYGITCLSH) --AC_SUBST(CYGITCLDEF) --AC_SUBST(CYGITCLTEST) --AC_SUBST(CYGIMPORTLIB) --AC_SUBST(CYGITCLRES) --AC_SUBST(CYGITCLSHRES) --AC_SUBST(SNITCLLIB) --AC_SUBST(SNITCLDLL) --AC_SUBST(SNITCLSH) --AC_SUBST(SNITCLDEF) --AC_SUBST(SNITCLTEST) --AC_SUBST(SNIMPORTLIB) --AC_SUBST(SNITCLRES) --AC_SUBST(SNITCLSHRES) --AC_SUBST(ITCLLIB) --AC_SUBST(ITCLDLL) --AC_SUBST(ITCLSH) --AC_SUBST(ITCLDEF) --AC_SUBST(ITCLTEST) --AC_SUBST(ITCLIMPORTLIB) --AC_SUBST(ITCLRES) --AC_SUBST(ITCL_SH) --AC_SUBST(BASELIBS) --AC_SUBST(WINLIBS) --AC_SUBST(LIBCDLL) -- --AC_OUTPUT(Makefile ../unix/pkgIndex.tcl ../itclConfig.sh) -diff -Naur insight-6.8.orig/itcl/itcl/win/dllEntryPoint.c insight-6.8.new/itcl/itcl/win/dllEntryPoint.c ---- insight-6.8.orig/itcl/itcl/win/dllEntryPoint.c 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/dllEntryPoint.c 2008-08-18 18:56:44.000000000 +0200 -@@ -7,58 +7,17 @@ - #define WIN32_LEAN_AND_MEAN - #include - --/* CYGNUS LOCAL */ --#include -- --#ifdef __CYGWIN32__ --/* -- * The following declaration is for the VC++ DLL entry point. -- */ -- --BOOL APIENTRY DllMain _ANSI_ARGS_((HINSTANCE hInst, -- DWORD reason, LPVOID reserved)); -- --/* cygwin32 requires an impure pointer variable, which must be -- explicitly initialized when the DLL starts up. */ --struct _reent *_impure_ptr; --extern struct _reent *_imp__reent_data; -- --/* -- *---------------------------------------------------------------------- -- * -- * DllMain -- -- * -- * DLL entry point. -- * -- * Results: -- * TRUE on sucess, FALSE on failure. -- * -- * Side effects: -- * None. -- * -- *---------------------------------------------------------------------- -- */ -- --BOOL APIENTRY --DllMain(hInstance, reason, reserved) -- HINSTANCE hInstance; -- DWORD reason; -- LPVOID reserved; --{ -- /* CYGNUS LOCAL */ -- /* cygwin32 requires the impure data pointer to be initialized -- when the DLL starts up. */ -- _impure_ptr = _imp__reent_data; -- /* END CYGNUS LOCAL */ -- -- return(TRUE); --} -- --/* END CYGNUS LOCAL */ --#else /* __CYGWIN32__ */ -- --#if defined(_MSC_VER) -+#ifdef _MSC_VER -+ /* Only do this when MSVC++ is compiling us. */ - # define DllEntryPoint DllMain -+# if defined(USE_TCL_STUBS) && (!defined(_MT) || !defined(_DLL) || defined(_DEBUG)) -+ /* -+ * This fixes a bug with how the Stubs library was compiled. -+ * The requirement for msvcrt.lib from tclstubXX.lib should -+ * be removed. -+ */ -+# pragma comment(linker, "-nodefaultlib:msvcrt.lib") -+# endif - #endif - - /* -@@ -79,6 +38,8 @@ - *---------------------------------------------------------------------- - */ - -+#ifndef STATIC_BUILD -+ - BOOL APIENTRY - DllEntryPoint(hInst, reason, reserved) - HINSTANCE hInst; /* Library instance handle. */ -@@ -88,4 +49,4 @@ - return TRUE; - } - --#endif -+#endif -\ No newline at end of file -diff -Naur insight-6.8.orig/itcl/itcl/win/makefile.bc insight-6.8.new/itcl/itcl/win/makefile.bc ---- insight-6.8.orig/itcl/itcl/win/makefile.bc 2003-01-21 22:04:25.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/makefile.bc 2008-08-18 19:15:31.000000000 +0200 -@@ -210,4 +210,3 @@ - -@$(RM) itcl.def - -@$(RM) $(TMPDIR)\*.obj - -@$(RM) *.cfg -- -diff -Naur insight-6.8.orig/itcl/itcl/win/Makefile.in insight-6.8.new/itcl/itcl/win/Makefile.in ---- insight-6.8.orig/itcl/itcl/win/Makefile.in 2003-01-21 21:40:28.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/Makefile.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,410 +0,0 @@ --# This file is CYGNUS LOCAL. It is a copy of makefile.vc modified for --# GNU make. --# --# Visual C++ 4.0 makefile --# --# Copyright (c) 1993-1996 Lucent Technologies --# --# See the file "license.terms" for information on usage and redistribution --# of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- --prefix = @prefix@ --exec_prefix = @exec_prefix@ --VPATH = @srcdir@:@srcdir@/../generic:@srcdir@/../unix --srcdir = @srcdir@ --libdir=@libdir@ --bindir=@bindir@ --includedir=@includedir@ --mandir=@mandir@ --datadir=@datadir@ -- --CC = @CC@ --CFLAGS = @CFLAGS@ --NM = @NM@ --AS = @AS@ --LD = @LD@ --DLLTOOL = @DLLTOOL@ --WINDRES = @WINDRES@ --OBJEXT = @OBJEXT@ -- --DLL_LDFLAGS = @DLL_LDFLAGS@ --DLL_LDLIBS = @DLL_LDLIBS@ -- --INSTALL = @INSTALL@ --INSTALL_PROGRAM = @INSTALL_PROGRAM@ --INSTALL_DATA = @INSTALL_DATA@ -- --# --# Project directories --# --# ROOT = top of source tree --# --# TMPDIR = location where .obj files should be stored during build --# -- --ROOT = @ITCL_SRC_DIR@ --TMPDIR = . --TCLDIR = @TCL_SRC_DIR@ -- --TCLLIBDIR = @TCL_BIN_DIR@ -- --SRC_INC_DIR = $(ROOT)/generic --SRC_WIN_DIR = $(ROOT)/win --SRC_UNIX_DIR = $(ROOT)/unix --SRC_MAN_DIR = $(ROOT)/doc -- --ITCL_VERSION = @ITCL_VERSION@ --VERSION = 30 -- --CYGITCLLIB = @CYGITCLLIB@ --CYGITCLDLL = @CYGITCLDLL@ --CYGITCLSH = @CYGITCLSH@ --CYGITCLDEF = @CYGITCLDEF@ --CYGITCLTEST = @CYGITCLTEST@ --CYGIMPORTLIB = @CYGIMPORTLIB@ --CYGITCLRES = @CYGITCLRES@ --CYGITCLSHRES = @CYGITCLSHRES@ -- --SNITCLLIB = @SNITCLLIB@ --SNITCLDLL = @SNITCLDLL@ --SNITCLSH = @SNITCLSH@ --SNITCLDEF = @SNITCLDEF@ --SNITCLTEST = @SNITCLTEST@ --SNIMPORTLIB = @SNIMPORTLIB@ --SNITCLRES = @SNITCLRES@ --SNITCLSHRES = @SNITCLSHRES@ -- --ITCLLIB = @ITCLLIB@ --ITCLDLL = @ITCLDLL@ --ITCLSH = @ITCLSH@ --ITCLDEF = @ITCLDEF@ --ITCLTEST = @ITCLTEST@ --ITCLIMPORTLIB = @ITCLIMPORTLIB@ --ITCLRES = @ITCLRES@ --ITCLSHRES = @ITCLSHRES@ -- -- --# Directory in which to install the library of Itcl scripts and demos --# (note: you can set the ITCL_LIBRARY environment variable at run-time to --# override the compiled-in location): --ITCL_LIBRARY = $(datadir)/itcl$(ITCL_VERSION) -- --# CYGNUS LOCAL: cgf - use autoconf variables -- --# Directory in which to install the archive libitcl.a: --INSTALL_LIB_DIR = $(libdir) -- --# Directory in which to install the program itclsh: --INSTALL_BIN_DIR = $(bindir) -- --# Directory in which to install the include file itcl.h: --INSTALL_INCLUDE_DIR = $(includedir) -- --# Top-level directory for manual entries: --INSTALL_MAN_DIR = $(mandir) -- --# Directory in which to install manual entry for itclsh: --INSTALL_MAN1_DIR = $(INSTALL_MAN_DIR)/man1 -- --# Directory in which to install manual entries for Itcl's C library --# procedures: --INSTALL_MAN3_DIR = $(INSTALL_MAN_DIR)/man3 -- --# Directory in which to install manual entries for the built-in --# Tcl commands implemented by Itcl: --INSTALL_MANN_DIR = $(INSTALL_MAN_DIR)/mann -- -- --# Comment the following line to compile with symbols --NODEBUG=1 -- --# uncomment the following two lines to compile with TCL_MEM_DEBUG --#DEBUGDEFINES = -DTCL_MEM_DEBUG -- -- --ITCLSHOBJS = \ -- $(TMPDIR)/tclAppInit.$(OBJEXT) -- --ITCLOBJS = \ -- $(TMPDIR)/itcl_bicmds.$(OBJEXT) \ -- $(TMPDIR)/itcl_class.$(OBJEXT) \ -- $(TMPDIR)/itcl_cmds.$(OBJEXT) \ -- $(TMPDIR)/itcl_ensemble.$(OBJEXT) \ -- $(TMPDIR)/itcl_linkage.$(OBJEXT) \ -- $(TMPDIR)/itcl_methods.$(OBJEXT) \ -- $(TMPDIR)/itcl_migrate.$(OBJEXT) \ -- $(TMPDIR)/itcl_objects.$(OBJEXT) \ -- $(TMPDIR)/itcl_obsolete.$(OBJEXT) \ -- $(TMPDIR)/itcl_parse.$(OBJEXT) \ -- $(TMPDIR)/itcl_util.$(OBJEXT) \ -- $(TMPDIR)/dllEntryPoint.$(OBJEXT) -- --DUMPEXTS = $(TCLLIBDIR)/dumpexts.exe -- --TCLLIB = @TCL_LIB_FILE@ --TCL_BUILD_LIB_SPEC = @TCL_BUILD_LIB_SPEC@ --TCL_LIB_FULL_PATH = @TCL_LIB_FULL_PATH@ -- --ITCL_INCLUDES = -I$(SRC_WIN_DIR) -I$(SRC_INC_DIR) -I$(TCLDIR)/generic -I$(TCLDIR)/win -- --ITCL_DEFINES = -D__WIN32__ $(DEBUGDEFINES) -DDLL_BUILD -DBUILD_itcl -D_DLL --ITCL_CFLAGS = $(ITCL_INCLUDES) $(ITCL_DEFINES) $(CFLAGS) -- --CPU = i386 -- --###################################################################### --# Link flags --###################################################################### -- --conlflags = -Wl,--subsystem,console -mwindows --guilflags = -mwindows --dlllflags = -- --baselibs = @BASELIBS@ --winlibs = @WINLIBS@ --libcdll = @LIBCDLL@ -- --guilibs = $(baselibs) $(winlibs) --conlibs = $(baselibs) --guilibsdll = $(libcdll) $(baselibs) $(winlibs) --conlibsdll = $(libcdll) $(baselibs) -- --# --# Targets --# -- --release: $(ITCLDLL) $(ITCLSH) --all: $(ITCLDLL) $(ITCLSH) --test: $(ITCLSH) -- $(CP) $(TCLLIBDIR)\*.dll -- $(ITCLSH) << -- cd ../tests -- source all -- --# Cygwin-specific targets. -- --$(TMPDIR)/$(CYGITCLDEF): $(ITCLOBJS) -- echo 'EXPORTS' > tmp.def -- -for o in $(ITCLOBJS); do \ -- $(NM) --extern-only --defined-only $$o | sed -e 's/[^ ]* [^ ]* //' -e 's/^_//' | fgrep -v DllEntryPoint | fgrep -v DllMain | fgrep -v impure_ptr >> tmp.def; \ -- done -- mv tmp.def $(TMPDIR)/$(CYGITCLDEF) -- --$(CYGITCLDLL): $(ITCLOBJS) $(TMPDIR)/$(CYGITCLDEF) $(TMPDIR)/$(CYGITCLRES) -- $(CC) -s $(DLL_LDFLAGS) -Wl,--base-file,itcl.base \ -- -o $(CYGITCLDLL) $(ITCLOBJS) $(TMPDIR)/$(CYGITCLRES) \ -- $(TCLLIBDIR)/$(TCLLIB) \ -- $(DLL_LDLIBS) -mwindows -Wl,-e,_DllMain@12 \ -- -Wl,--image-base,0x66700000 -- $(DLLTOOL) --as=$(AS) --dllname $(CYGITCLDLL) --def $(TMPDIR)/$(CYGITCLDEF) \ -- --base-file itcl.base --output-exp itcl.exp -- $(CC) -s $(DLL_LDFLAGS) -Wl,--base-file,itcl.base -Wl,itcl.exp \ -- -o $(CYGITCLDLL) $(ITCLOBJS) \ -- $(TCLLIBDIR)/$(TCLLIB) $(DLL_LDLIBS) -mwindows -Wl,-e,_DllMain@12 \ -- -Wl,--image-base,0x66700000 -- $(DLLTOOL) --as=$(AS) --dllname $(CYGITCLDLL) --def $(TMPDIR)/$(CYGITCLDEF) \ -- --base-file itcl.base --output-exp itcl.exp -- $(CC) $(DLL_LDFLAGS) -Wl,itcl.exp -o $(CYGITCLDLL) $(ITCLOBJS) \ -- $(TCLLIBDIR)/$(TCLLIB) \ -- $(DLL_LDLIBS) -mwindows -Wl,-e,_DllMain@12 \ -- -Wl,--image-base,0x66700000 -- --$(CYGITCLLIB): $(TMPDIR)/$(CYGITCLDEF) -- $(DLLTOOL) --as=$(AS) --dllname $(CYGITCLDLL) --def $(TMPDIR)/$(CYGITCLDEF) \ -- --output-lib $(CYGITCLLIB) -- --$(CYGITCLSH): $(ITCLSHOBJS) $(CYGITCLLIB) $(TMPDIR)/$(CYGITCLSHRES) -- $(CC) $(linkdebug) $(conlflags) -Wl,--stack=0x2300000 \ -- $(ITCL_CFLAGS) \ -- $(ITCLSHOBJS) $(TMPDIR)/$(CYGITCLSHRES) \ -- $(CYGITCLLIB) $(TCLLIBDIR)/$(TCLLIB) $(conlibsdll) \ -- -o $(CYGITCLSH) -- --$(CYGITCLTEST): $(ITCLTESTOBJS) $(CYGITCLLIB) $(TMPDIR)/$(CYGITCLSHRES) -- $(CC) $(linkdebug) $(conlflags) -Wl,--stack=0x2300000 \ -- $(ITCL_CFLAGS) \ -- $(ITCLTESTOBJS) $(TMPDIR)/$(CYGITCLSHRES) \ -- $(CYGITCLLIB) $(TCLLIBDIR)/$(TCLLIB) $(conlibsdll) \ -- -o $(CYGITCLTEST) -- --$(TMPDIR)/$(CYGITCLSHRES):: $(ROOT)/win/itclsh.rc -- $(WINDRES) --include $(TCLDIR)/generic --include $(srcdir)/../generic \ -- --define VS_VERSION_INFO=1 $(srcdir)/itclsh.rc $(TMPDIR)/$(CYGITCLSHRES) -- --$(TMPDIR)/$(CYGITCLRES):: $(ROOT)/win/itcl.rc -- $(WINDRES) --include $(TCLDIR)/generic --include $(srcdir)/../generic \ -- --define VS_VERSION_INFO=1 $(srcdir)/itcl.rc $(TMPDIR)/$(CYGITCLRES) -- --# Visual C++ specific targets --$(TMPDIR)/$(SNITCLDEF): $(DUMPEXTS) $(ITCLOBJS) -- $(DUMPEXTS) -o $@ $(SNITCLDLL) $(ITCLOBJS) -- --$(SNITCLDLL): $(ITCLOBJS) $(TMPDIR)/$(SNITCLDEF) $(TMPDIR)/$(SNITCLRES) $(TCL_LIB_FULL_PATH) -- link.exe -DEBUG -dll -def:$(TMPDIR)/$(SNITCLDEF) -NODEFAULTLIB \ -- -out:$(SNITCLDLL) $(guilibsdll) $(ITCLOBJS) $(TMPDIR)/$(SNITCLRES) \ -- $(TCL_BUILD_LIB_SPEC) -- --$(SNITCLLIB) $(SNIMPORTLIB): -- cp $(SNIMPORTLIB) $(SNITCLLIB) -- --$(SNITCLSH): $(ITCLSHOBJS) $(SNITCLLIB) $(TMPDIR)/$(SNITCLSHRES) $(TCL_LIB_FULL_PATH) -- link.exe -DEBUG -NODEFAULTLIB -entry:mainCRTStartup \ -- -out:$@ $(conlibsdll) $(ITCLSHOBJS) $(TMPDIR)/$(SNITCLSHRES) \ -- $(SNITCLLIB) $(TCL_BUILD_LIB_SPEC) -- --$(SNITCLTEST): $(ITCLTESTOBJS) $(SNITCLLIB) $(TMPDIR)/$(SNITCLSHRES) $(TCL_LIB_FULL_PATH) -- link.exe -DEBUG -NODEFAULTLIB -entry:mainCRTStartup \ -- -out $@ $(conlibsdll) $(ITCLSHOBJS) $(TMPDIR)/$(SNITCLSHRES) \ -- $(SNITCLLIB) $(TCL_BUILD_LIB_SPEC) -- --$(TMPDIR)/$(SNITCLSHRES):: $(SRC_WIN_DIR)/itclsh.rc -- rc $(ITCL_INCLUDES) -d__WIN32__ -dVS_VERSION_INFO=1 -fo$@ $? -- --$(TMPDIR)/$(SNITCLRES):: $(SRC_WIN_DIR)/itcl.rc -- rc $(ITCL_INCLUDES) -d__WIN32__ -dVS_VERSION_INFO=1 -fo$@ $? -- --# --# Special case object file targets --# -- --$(TMPDIR)/testMain.$(OBJEXT):: $(SRC_WIN_DIR)/tclAppInit.c -- $(CC) -c $(ITCL_CFLAGS) -DTCL_TEST -DSTATIC_BUILD $(CFLAGS) -o $@ $? -- --$(TMPDIR)/tclAppInit.$(OBJEXT): $(SRC_WIN_DIR)/tclAppInit.c -- $(CC) -c $(ITCL_CFLAGS) $(CFLAGS) -DSTATIC_BUILD -o $@ $? -- --#$(DUMPEXTS): $(TCLDIR)\win\winDumpExts.c --# $(cc32) $(CON_CFLAGS) -Fo$(TMPDIR)\ $? --# set LIB=$(TOOLS32)\lib --# $(link32) $(ldebug) $(conlflags) $(guilibs) -out:$@ \ --# $(TMPDIR)\winDumpExts.obj -- --# --# Implicit rules --# -- --$(TMPDIR)/%.$(OBJEXT):: $(SRC_INC_DIR)/%.c -- $(CC) -c $(ITCL_CFLAGS) -o $@ $< -- --$(TMPDIR)/%.$(OBJEXT):: $(SRC_WIN_DIR)/%.c -- $(CC) -c $(ITCL_CFLAGS) -o $@ $< -- --clean: -- -- rm -f $(TMPDIR)/*.$(OBJEXT) $(TMPDIR)/*.exp $(TMPDIR)/*.def -- rm -f $(ITCLLIB) $(ITCLDLL) $(ITCLDLL) $(ITCLSH) -- -- --Makefile: $(srcdir)/Makefile.in config.status -- $(SHELL) config.status -- --config.status: $(srcdir)/configure -- ./config.status --recheck -- --#---------------------------------------------------------------------- --# --# Installation --# --#---------------------------------------------------------------------- -- -- --install:: install-basic install-binaries -- @echo done -- --install-binaries:: install-shared-libraries -- @for i in $(INSTALL_LIB_DIR) $(INSTALL_BIN_DIR) ; \ -- do \ -- if [ ! -d $$i ] ; then \ -- echo "Making directory $$i"; \ -- mkdir $$i; \ -- chmod 755 $$i; \ -- else true; \ -- fi; \ -- done; -- @echo "Installing $(ITCLLIB) as $(INSTALL_LIB_DIR)/$(ITCLLIB)" -- @$(INSTALL_DATA) $(ITCLLIB) $(INSTALL_LIB_DIR)/$(ITCLLIB) -- @echo "Installing $(ITCLSH) as $(INSTALL_BIN_DIR)/$(ITCLSH)" -- @$(INSTALL_PROGRAM) $(ITCLSH) $(INSTALL_BIN_DIR)/$(ITCLSH) -- --# --# Basic installtion --# --install-basic:: install-libraries install-headers \ -- install-man -- -- --install-headers: -- @for i in $(INSTALL_INCLUDE_DIR); \ -- do \ -- if [ ! -d $$i ] ; then \ -- echo "Making directory $$i"; \ -- mkdir $$i; \ -- chmod 755 $$i; \ -- else true; \ -- fi; \ -- done; -- @for i in $(SRC_INC_DIR)/itcl.h; \ -- do \ -- echo "Installing $$i"; \ -- $(INSTALL_DATA) $$i $(INSTALL_INCLUDE_DIR); \ -- done; -- --install-libraries: install-shared-libraries -- @for i in $(prefix)/lib $(ITCL_LIBRARY); \ -- do \ -- if [ ! -d $$i ] ; then \ -- echo "Making directory $$i"; \ -- mkdir $$i; \ -- chmod 755 $$i; \ -- else true; \ -- fi; \ -- done; -- @echo "Installing pkgIndex.tcl" -- @$(INSTALL_DATA) $(srcdir)/pkgIndex.tcl $(ITCL_LIBRARY) -- @$(INSTALL_DATA) $(srcdir)/../library/itcl.tcl $(ITCL_LIBRARY) -- --install-shared-libraries: -- @echo "Installing $(ITCLDLL) as $(INSTALL_BIN_DIR)/$(ITCLDLL)" -- @$(INSTALL_PROGRAM) $(ITCLDLL) $(INSTALL_BIN_DIR)/$(ITCLDLL) -- --install-man: -- @for i in $(INSTALL_MAN_DIR) $(INSTALL_MAN1_DIR) \ -- $(INSTALL_MAN3_DIR) $(INSTALL_MANN_DIR) ; \ -- do \ -- if [ ! -d $$i ] ; then \ -- echo "Making directory $$i"; \ -- mkdir $$i; \ -- chmod 755 $$i; \ -- else true; \ -- fi; \ -- done; -- @cd $(SRC_MAN_DIR); for i in *.n ; \ -- do \ -- echo "Installing doc/$$i"; \ -- rm -f $(INSTALL_MANN_DIR)/$$i; \ -- sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(INSTALL_MANN_DIR)/$$i; \ -- chmod 444 $(INSTALL_MANN_DIR)/$$i; \ -- done; \ -- for i in *.1 ; \ -- do \ -- echo "Installing doc/$$i"; \ -- rm -f $(INSTALL_MAN1_DIR)/$$i; \ -- sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(INSTALL_MAN1_DIR)/$$i; \ -- chmod 444 $(INSTALL_MAN1_DIR)/$$i; \ -- done; \ -- for i in *.3 ; \ -- do \ -- echo "Installing doc/$$i"; \ -- rm -f $(INSTALL_MAN3_DIR)/$$i; \ -- sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ -- $$i > $(INSTALL_MAN3_DIR)/$$i; \ -- chmod 444 $(INSTALL_MAN3_DIR)/$$i; \ -- done; -- --install-info info installcheck: -- --install-minimal: install-libraries -- @echo "Installing $(ITCLDLL) as $(INSTALL_BIN_DIR)/$(ITCLDLL)" -- @$(INSTALL_PROGRAM) $(ITCLDLL) $(INSTALL_BIN_DIR)/$(ITCLDLL) -diff -Naur insight-6.8.orig/itcl/itcl/win/makefile.vc insight-6.8.new/itcl/itcl/win/makefile.vc ---- insight-6.8.orig/itcl/itcl/win/makefile.vc 2003-01-21 22:04:25.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/makefile.vc 2008-08-18 19:17:15.000000000 +0200 -@@ -1,74 +1,74 @@ --###################################################################### -+#------------------------------------------------------------------------------ - # Visual C++ 5.0+ makefile for [Incr Tcl] - # - # See the file "license.terms" for information on usage and redistribution - # of this file, and for a DISCLAIMER OF ALL WARRANTIES. - # - # Copyright (c) 1993-1998 Lucent Technologies, Inc. --# RCS: $Id: makefile.vc,v 1.13 2001/05/23 00:37:47 davygrvy Exp $ --###################################################################### --# All needed information is derived from running vcvars32.bat --# --# NOTE: Be sure to modify the "config.vc" file in the toplevel directory --# before running this makefile. --###################################################################### --# Do not modify this file! modify config.vc to effect the build. --###################################################################### -+# RCS: $Id: makefile.vc,v 1.32 2004/09/24 22:45:02 davygrvy Exp $ -+#------------------------------------------------------------------------------ -+# Do not modify this file! -+#------------------------------------------------------------------------------ -+ -+!if !exist("makefile.vc") -+MSG = ^ -+You must run this makefile only from the directory it is in.^ -+Please `cd` to its location first. -+!error $(MSG) -+!endif - -+PROJECT = itcl - !include "..\..\rules.vc" --!include "..\..\config.vc" --!include "..\..\pkg.vc" -- --BINROOT = . --ROOT = .. --NAMEPREFIX = itcl --STUBPREFIX = $(NAMEPREFIX)stub - --!if $(DEBUG) --TMPNAME = Debug --DBGX = d --!else --TMPNAME = Release --DBGX = -+!if $(TCLINSTALL) -+!message *** Warning: [Incr Tcl] requires the source distribution of Tcl to build from, -+!message *** at this time, sorry. Please set the TCLDIR macro to point to the -+!message *** sources. -+!endif -+ -+!if [nmakehlp -g ..\generic\itcl.h ITCL_VERSION] == 33 -+ITCL_DOTVERSION = 3.3 -+!elseif [nmakehlp -g ..\generic\itcl.h ITCL_VERSION] == 34 -+ITCL_DOTVERSION = 3.4 -+!elseif [nmakehlp -g ..\generic\itcl.h ITCL_VERSION] == 35 -+ITCL_DOTVERSION = 3.5 -+!elseif [nmakehlp -g ..\generic\itcl.h ITCL_VERSION] == 0 -+MSG =^ -+Can't get version string from ..\generic\itcl.h -+!error $(MSG) - !endif -+ITCL_VERSION = $(ITCL_DOTVERSION:.=) - --TMP_DIR = $(BINROOT)\$(TMPNAME) - --!ifndef OUT_DIR --OUT_DIR = $(TMP_DIR) --!endif -+BINROOT = . -+ROOT = .. -+STUBPREFIX = $(PROJECT)stub - - PKGINDEX = "$(TMP_DIR)\pkgIndex.tcl" - --!if $(STATIC_BUILD) --ITCLOUTNAME = $(NAMEPREFIX)$(ITCL_VERSION)s$(DBGX) --ITCLTARGET = "$(OUT_DIR)\$(ITCLOUTNAME).lib" -+!if $(TCL_DOES_STUBS) -+ITCLLIBNAME = $(PROJECT)$(ITCL_VERSION)$(SUFX).$(EXT) - !else --ITCLOUTNAME = $(NAMEPREFIX)$(ITCL_VERSION)$(DBGX) --ITCLIMPLIB = "$(OUT_DIR)\$(ITCLOUTNAME).lib" --ITCLTARGET = "$(OUT_DIR)\$(ITCLOUTNAME).dll" -+ITCLLIBNAME = $(PROJECT)$(ITCL_VERSION)80$(SUFX).$(EXT) - !endif - --!if $(ISTCLINSTALL) --TCLSTUBLIB = "$(TCLROOT)\lib\tclstub$(TCL_VERSION).lib" --TCLIMPLIB = "$(TCLROOT)\lib\tcl$(TCL_VERSION)$(DBGX).lib" --TCLSH = "$(TCLROOT)\bin\tclsh$(TCL_VERSION)$(DBGX).exe" --!else --TCLSTUBLIB = "$(TCLROOT)\win\Release\tclstub$(TCL_VERSION).lib" --TCLIMPLIB = "$(TCLROOT)\win\$(OUT_DIR)\tcl$(TCL_VERSION)$(DBGX).lib" --TCLSH = "$(TCLROOT)\win\$(OUT_DIR)\tclsh$(TCL_VERSION)$(DBGX).exe" --!endif -+ITCLLIB = "$(OUT_DIR)\$(ITCLLIBNAME)" -+ITCLIMPLIB = "$(OUT_DIR)\$(PROJECT)$(ITCL_VERSION)$(SUFX).lib" - --ITCLSTUBLIBNAME = $(STUBPREFIX)$(ITCL_VERSION)$(DBGX).lib -+!if $(TCL_DOES_STUBS) -+ITCLSTUBLIBNAME = $(STUBPREFIX)$(ITCL_VERSION).lib - ITCLSTUBLIB = "$(OUT_DIR)\$(ITCLSTUBLIBNAME)" -+!else -+ITCLSTUBLIBNAME = -+ITCLSTUBLIB = -+TCLSTUBLIB = $(TCLIMPLIB) -+!endif - --LIB_INSTALL_DIR = $(INSTALLDIR)\lib --BIN_INSTALL_DIR = $(INSTALLDIR)\bin --SCRIPT_INSTALL_DIR = $(INSTALLDIR)\lib\itcl$(ITCL_DOTVERSION) --INCLUDE_INSTALL_DIR = $(INSTALLDIR)\include -- --ITCLSHOBJS = \ -- $(TMP_DIR)\tclAppInit.obj -+BIN_INSTALL_DIR = $(_INSTALLDIR)\bin -+DOC_INSTALL_DIR = $(_INSTALLDIR)\doc -+LIB_INSTALL_DIR = $(_INSTALLDIR)\lib -+SCRIPT_INSTALL_DIR = $(_INSTALLDIR)\lib\itcl$(ITCL_DOTVERSION) -+INCLUDE_INSTALL_DIR = $(_INSTALLDIR)\include - - ITCLOBJS = \ - $(TMP_DIR)\itcl_bicmds.obj \ -@@ -79,169 +79,213 @@ - $(TMP_DIR)\itcl_migrate.obj \ - $(TMP_DIR)\itcl_methods.obj \ - $(TMP_DIR)\itcl_objects.obj \ -- $(TMP_DIR)\itcl_obsolete.obj \ - $(TMP_DIR)\itcl_parse.obj \ - $(TMP_DIR)\itcl_util.obj \ --!if $(STATIC_BUILD) == 0 -+!if $(TCL_DOES_STUBS) -+ $(TMP_DIR)\itclStubInit.obj \ -+!endif -+!if !$(STATIC_BUILD) - $(TMP_DIR)\dllEntryPoint.obj \ -- $(TMP_DIR)\dllResource.obj \ -+ $(TMP_DIR)\itcl.res - !endif -- $(TMP_DIR)\itclStubInit.obj - - ITCLSTUBOBJS = \ -+!if $(TCL_DOES_STUBS) - $(TMP_DIR)\itclStubLib.obj -+!endif - --WINDIR = $(ROOT)\win - GENERICDIR = $(ROOT)\generic -+DOCDIR = $(ROOT)\doc - RCDIR = $(ROOT)\win\rc -+WINDIR = $(ROOT)\win -+TOOLSDIR = ..\..\tools - --###################################################################### -+#--------------------------------------------------------------------- - # Link flags --###################################################################### -+#--------------------------------------------------------------------- - - !if $(DEBUG) --ldebug = -debug:full -debugtype:cv -pdb:none -+ldebug = -debug:full -debugtype:cv - !else --ldebug = -release -opt:ref -+ldebug = -release -opt:ref -opt:icf,3 - !endif - - # declarations common to all linker options --lcommon = -nologo -link50compat -machine:$(MACHINE) -+lflags = -nologo -machine:$(MACHINE) $(ldebug) -+ -+!if $(PROFILE) -+lflags = $(lflags) -profile -+!endif -+ -+!if $(ALIGN98_HACK) && !$(STATIC_BUILD) -+# align sections for PE size savings. -+lflags = $(lflags) -opt:nowin98 -+!else if !$(ALIGN98_HACK) && $(STATIC_BUILD) -+# align sections for speed in loading by choosing the virtual page size. -+lflags = $(lflags) -align:4096 -+!endif -+ -+!if $(LOIMPACT) -+lflags = $(lflags) -ws:aggressive -+!endif - --ITCL_LFLAGS = $(lcommon) -subsystem:windows -dll -+ITCL_LFLAGS = $(lflags) -subsystem:windows -dll - --!if $(USE_TCL_STUBS) == 0 --ITCL_LLIBS = $(TCLIMPLIB) -+!if exist("$(TCLDIR)\win\coffbase.txt") -+ITCL_DLLBASE = -base:@$(TCLDIR)\win\coffbase.txt,itcl - !else --ITCL_LLIBS = $(TCLSTUBLIB) -+ITCL_DLLBASE = - !endif - --###################################################################### -+#--------------------------------------------------------------------- - # Compile flags --###################################################################### -+#--------------------------------------------------------------------- - --!IF $(DEBUG) == 0 --!IF "$(MACHINE)" == "ALPHA" --# MSVC on Alpha doesn't understand -Ot --cdebug = -O2i --!ELSE --cdebug = -Ox --!ENDIF --!ELSE --!if $(MSDEV_VER) < 6 --cdebug = -Zi -Od -WX -+!if $(DEBUG) -+!if "$(MACHINE)" == "IA64" -+cdebug = -Od -Zi - !else --cdebug = -ZI -Od -WX -+cdebug = -Z7 -Od -WX - !endif --!ENDIF -- --!if $(STATIC_BUILD) --cdll = - !else --cdll = -GD -+# This cranks the optimization level up to max. -+cdebug = -O2 - !endif - - # declarations common to all compiler options --ccommon = -nologo -c -W3 -YX -Fp$(TMP_DIR)\ -+cflags = -nologo -c -W3 -YX -Fp$(TMP_DIR)^\ -+ -+!if $(PENT_0F_ERRATA) -+cflags = $(cflags) -QI0f -+!endif -+ -+!if $(ITAN_B_ERRATA) -+cflags = $(cflags) -QIA64_Bx -+!endif - --!if $(STATIC_BUILD) && $(NOMSVCRT) --crt = -MT$(DBGX) -+!if $(MSVCRT) -+crt = -MD$(DBGX) - !else --crt = -MD$(DBGX) -+crt = -MT$(DBGX) - !endif - --!if $(ISTCLINSTALL) --TCL_INCLUDES = -I"$(TCLROOT)\include" -+!if $(TCLINSTALL) -+TCL_INCLUDES = -I"$(TCLDIR)\include" - !else --TCL_INCLUDES = -I"$(TCLROOT)\generic" -+TCL_INCLUDES = -I"$(TCLDIR)\generic" -I"$(TCLDIR)\win" - !endif - - ITCL_INCLUDES = -I$(WINDIR) -I$(GENERICDIR) - ITCL_DEFINES = -DBUILD_itcl -DTCL_THREADS=1 --ITCL_EXE_CFLAGS = $(ccommon) $(cdebug) $(crt) $(cdll) $(ITCL_INCLUDES) \ -- $(ITCL_DEFINES) $(TCL_INCLUDES) -+ITCL_EXE_CFLAGS = $(cdebug) $(cflags) $(crt) $(ITCL_INCLUDES) $(ITCL_DEFINES) $(TCL_INCLUDES) - --!if $(USE_TCL_STUBS) -+### By convention, static builds do not use Stubs. This is just a practice, -+### not a technical limitation. -+!if $(STATIC_BUILD) -+ITCL_CFLAGS = $(ITCL_EXE_CFLAGS) -DSTATIC_BUILD -+!elseif $(TCL_DOES_STUBS) - ITCL_CFLAGS = $(ITCL_EXE_CFLAGS) -DUSE_TCL_STUBS - !else - ITCL_CFLAGS = $(ITCL_EXE_CFLAGS) - !endif - --###################################################################### --# Project specific targets --###################################################################### -- --all : setup $(ITCLTARGET) $(ITCLSTUBLIB) --release : setup $(ITCLTARGET) $(ITCLSTUBLIB) -+#--------------------------------------------------------------------- -+# TclTest flags -+#--------------------------------------------------------------------- - --!if $(STATIC_BUILD) --test : -- @echo test target not supported for a static library. --!else --#test : setup $(ITCLTARGET) $(ITCLSTUBLIB) $(PKGINDEX) --# -@copy $(TCLDLL) $(TMP_DIR) --# $(TCLSH) << --#cd ../tests --#lappend auto_path ../win/$(TMP_DIR) --#set env(ITCL_LIBRARY) ../library --#source all --#<< -+!if "$(TESTPAT)" != "" -+TESTFLAGS = -file $(TESTPAT) - !endif - --$(PKGINDEX) : -- -@copy pkgIndex.tcl $@ -+#--------------------------------------------------------------------- -+# Project specific targets -+#--------------------------------------------------------------------- -+ -+all : setup $(ITCLLIB) $(ITCLSTUBLIB) -+release : setup $(ITCLLIB) $(ITCLSTUBLIB) -+install : install-binaries install-docs - - setup : -- @$(vcvars) > nul -- @if not exist $(TMP_DIR)\nul mkdir $(TMP_DIR) &\ -- echo Created directory '$(TMP_DIR)' -- @if not exist $(OUT_DIR)\nul mkdir $(OUT_DIR) &\ -- echo Created directory '$(OUT_DIR)' -+ @if not exist $(TMP_DIR)\nul mkdir $(TMP_DIR) -+ @if not exist $(OUT_DIR)\nul mkdir $(OUT_DIR) - --$(ITCLTARGET): $(ITCLOBJS) -+$(ITCLLIB): $(ITCLOBJS) - !if $(STATIC_BUILD) - $(lib32) -nologo -machine:$(MACHINE) -out:$@ @<< -+$(ITCLOBJS) -+<< - !else -- $(link32) $(ITCL_LFLAGS) -out:$@ $(ITCL_LLIBS) @<< --!endif -- $(ITCLOBJS) -+ $(link32) $(ITCL_LFLAGS) $(ITCL_DLLBASE) -out:$@ $(TCLSTUBLIB) @<< -+$(ITCLOBJS) - << -+ -@del $*.exp -+!endif - --!if $(DEBUG) == 0 -+!if $(TCL_DOES_STUBS) - $(ITCLSTUBLIB) : $(ITCLSTUBOBJS) - $(lib32) -nologo -out:$@ $(ITCLSTUBOBJS) --!else --$(ITCLSTUBLIB) : - !endif - --install : all -- if not exist "$(INSTALLDIR)" mkdir "$(INSTALLDIR)" -+install-binaries : -+ if not exist "$(_INSTALLDIR)" mkdir "$(_INSTALLDIR)" - if not exist "$(BIN_INSTALL_DIR)" mkdir "$(BIN_INSTALL_DIR)" - if not exist "$(LIB_INSTALL_DIR)" mkdir "$(LIB_INSTALL_DIR)" - if not exist "$(SCRIPT_INSTALL_DIR)" mkdir "$(SCRIPT_INSTALL_DIR)" - if not exist "$(INCLUDE_INSTALL_DIR)" mkdir "$(INCLUDE_INSTALL_DIR)" -- copy $(ITCLTARGET) "$(SCRIPT_INSTALL_DIR)" -- -copy $(ITCLSTUBLIB) "$(LIB_INSTALL_DIR)" -+ copy $(ITCLLIB) "$(SCRIPT_INSTALL_DIR)" -+!if ""$(ITCLSTUBLIB)"" != """" -+ copy $(ITCLSTUBLIB) "$(LIB_INSTALL_DIR)" -+!endif - copy $(ROOT)\generic\itcl.h "$(INCLUDE_INSTALL_DIR)" - copy $(ROOT)\generic\itclDecls.h "$(INCLUDE_INSTALL_DIR)" - copy $(ROOT)\library\*.* "$(SCRIPT_INSTALL_DIR)" -- echo package ifneeded Itcl $(ITCL_DOTVERSION) [list load [file join $$dir $(ITCLOUTNAME).dll] Itcl] > \ -- "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo if {[package vsatisfies 8.0 [package provide Tcl]]} {\ -+ > "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo ^ ^ ^ ^ set add 80>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo } else {>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo ^ ^ ^ ^ set add {}>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo }>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo if {[info exists ::tcl_platform(debug)] ^&^&\ -+ $$::tcl_platform(debug) ^&^& \>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo ^ ^ ^ ^ ^ ^ ^ ^ [file exists [file join $$dir\ -+ $(PROJECT)$(ITCL_VERSION)$${add}g.dll]]}\ -+ {>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo ^ ^ ^ ^ package ifneeded Itcl $(ITCL_DOTVERSION) [list load\ -+ [file join $$dir $(PROJECT)$(ITCL_VERSION)$${add}g.dll]\ -+ Itcl]>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo } else {>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo ^ ^ ^ ^ package ifneeded Itcl $(ITCL_DOTVERSION) [list load\ -+ [file join $$dir $(PROJECT)$(ITCL_VERSION)$${add}.dll]\ -+ Itcl]>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo }>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" -+ echo unset add>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" - --###################################################################### -+!if $(STATIC_BUILD) -+test : -+ @echo test target not supported for a static library. -+!else -+test : setup $(ITCLLIB) $(ITCLSTUBLIB) -+ $(TCLSH) ..\tests\all.tcl $(TESTFLAGS) -loadfile << -+ set env(ITCL_LIBRARY) [file normalize [file join $(MAKEDIR:\=/) .. library]] -+ load [file normalize [file join $(MAKEDIR:\=/) $(ITCLLIB:\=/)]] -+<< -+!endif -+ -+#--------------------------------------------------------------------- - # Regenerate the stubs files. --###################################################################### -+#--------------------------------------------------------------------- - --!if $(ISTCLINSTALL) == 0 --# Only from the sources of Tcl does genStubs.tcl exist. - genstubs: -- $(TCLSH) $(TCLROOT)\tools\genStubs.tcl $(GENERICDIR) \ -- $(GENERICDIR)\itcl.decls $(GENERICDIR)\itclInt.decls -+!if $(TCLINSTALL) -+ @echo Need the source distribution to regenerate the Stubs table. -+!else -+ $(TCLSH) $(TOOLSDIR)\genStubs.tcl $(GENERICDIR) \ -+ $(GENERICDIR)\$(PROJECT).decls $(GENERICDIR)\$(PROJECT)Int.decls - !endif - --###################################################################### -+#--------------------------------------------------------------------- - # Special case object file targets --###################################################################### -+#--------------------------------------------------------------------- - - # The following object is part of the stub library and should not - # be built as DLL objects but none of the symbols should be exported -@@ -249,37 +293,116 @@ - $(TMP_DIR)\itclStubLib.obj : $(GENERICDIR)\itclStubLib.c - $(cc32) -DSTATIC_BUILD $(ITCL_EXE_CFLAGS) -Zl -Fo$@ $? - --$(TMP_DIR)\dllResource.obj : $(TMP_DIR)\itcl.res -- $(cvtres32) -nologo -machine:$(MACHINE) -out:$@ $? -- --###################################################################### -+#--------------------------------------------------------------------- - # Inference rules. Use batch-mode when supported. --###################################################################### -+#--------------------------------------------------------------------- - --!if $(_NMAKE_VER) < 162 --{$(WINDIR)}.c{$(TMP_DIR)}.obj : --!else - {$(WINDIR)}.c{$(TMP_DIR)}.obj :: --!endif -- $(cc32) -DDLL_BUILD $(ITCL_CFLAGS) -Fo$(TMP_DIR)\ @<< -+ $(cc32) $(ITCL_CFLAGS) -Fo$(TMP_DIR)\ @<< - $< - << - --!if $(_NMAKE_VER) < 162 --{$(GENERICDIR)}.c{$(TMP_DIR)}.obj : --!else - {$(GENERICDIR)}.c{$(TMP_DIR)}.obj :: --!endif -- $(cc32) -DDLL_BUILD $(ITCL_CFLAGS) -Fo$(TMP_DIR)\ @<< -+ $(cc32) $(ITCL_CFLAGS) -Fo$(TMP_DIR)\ @<< - $< - << - - {$(RCDIR)}.rc{$(TMP_DIR)}.res : -- $(rc32) -fo $@ -DDEBUG=$(DEBUG) $(ITCL_INCLUDES) $(TCL_INCLUDES) $(ITCL_DEFINES) $< -+ $(rc32) -fo $@ -d DEBUG=$(DEBUG) -d UNCHECKED=$(UNCHECKED) \ -+ $(ITCL_INCLUDES) $(TCL_INCLUDES) $(ITCL_DEFINES) $< -+ -+#--------------------------------------------------------------------- -+# Generate the windows help files. -+#--------------------------------------------------------------------- -+ -+HLPBASE = $(PROJECT)$(ITCL_VERSION) -+HELPFILE = $(OUT_DIR)\$(HLPBASE).hlp -+HELPCNT = $(OUT_DIR)\$(HLPBASE).cnt -+DOCTMP_DIR = $(OUT_DIR)\$(PROJECT)_docs -+HELPRTF = $(DOCTMP_DIR)\$(PROJECT).rtf -+MAN2HELP = $(DOCTMP_DIR)\man2help.tcl -+MAN2HELP2 = $(DOCTMP_DIR)\man2help2.tcl -+INDEX = $(DOCTMP_DIR)\index.tcl -+BMP = $(DOCTMP_DIR)\toaster.bmp -+BMP_NOPATH = toaster.bmp -+MAN2TCL = $(DOCTMP_DIR)\man2tcl.exe -+ -+winhelp: docsetup $(HELPFILE) -+ -+docsetup: -+ @if not exist $(DOCTMP_DIR)\nul mkdir $(DOCTMP_DIR) -+ -+$(MAN2HELP) $(MAN2HELP2) $(INDEX): $(TCLTOOLSDIR)\$$(@F) -+ copy $(TCLTOOLSDIR)\$(@F) $(@D) -+ -+$(BMP): -+ copy $(WINDIR)\$(@F) $(@D) -+ -+$(HELPFILE): $(HELPRTF) $(BMP) -+ cd $(DOCTMP_DIR) -+ start /wait hcrtf.exe -x <<$(PROJECT).hpj -+[OPTIONS] -+COMPRESS=12 Hall Zeck -+LCID=0x409 0x0 0x0 ; English (United States) -+TITLE=[Incr Tcl] Reference Manual -+BMROOT=. -+CNT=$(@B).cnt -+HLP=$(@B).hlp -+ -+[FILES] -+$(PROJECT).rtf -+ -+[WINDOWS] -+main="[Incr Tcl] Reference Manual",,27648,(r15263976),(r65280) -+ -+[CONFIG] -+BrowseButtons() -+CreateButton(1, "Web", ExecFile("http://www.tcl.tk")) -+CreateButton(2, "SF", ExecFile("http://sf.net/projects/incrtcl")) -+CreateButton(3, "Wiki", ExecFile("http://wiki.tcl.tk")) -+CreateButton(4, "FAQ", ExecFile("http://www.purl.org/NET/Tcl-FAQ/")) -+<< -+ cd $(MAKEDIR) -+ copy "$(DOCTMP_DIR)\$(@B).hlp" "$(OUT_DIR)" -+ copy "$(DOCTMP_DIR)\$(@B).cnt" "$(OUT_DIR)" -+ -+$(MAN2TCL): $(TCLTOOLSDIR)\$$(@B).c -+ $(cc32) -nologo -G4 -ML -O2 -Fo$(@D)\ $(TCLTOOLSDIR)\$(@B).c -link -out:$@ -+ -+$(HELPRTF): $(MAN2TCL) $(MAN2HELP) $(MAN2HELP2) $(INDEX) -+ $(TCLSH) $(MAN2HELP) -bitmap $(BMP_NOPATH) $(PROJECT) $(ITCL_VERSION) $(DOCDIR:\=/) -+ -+install-docs: -+!if exist($(HELPFILE)) -+ @xcopy /i /y "$(HELPFILE)" "$(DOC_INSTALL_DIR)\" -+ @xcopy /i /y "$(HELPCNT)" "$(DOC_INSTALL_DIR)\" -+ $(TCLSH) << -+puts "Installing $(PROJECT)'s helpfile contents into Tcl's ..." -+set f [open {$(DOC_INSTALL_DIR:\=/)/tcl$(TCL_VERSION).cnt} r] -+while {![eof $$f]} { -+ if {[regexp {:Include $(PROJECT)([0-9]{2}).cnt} [gets $$f] dummy ver]} { -+ if {$$ver == $(ITCL_VERSION)} { -+ puts "Already installed." -+ exit -+ } else { -+ # do something here logical to remove (or replace) it. -+ puts "$$ver != $(ITCL_VERSION), unfinished code path, die, die!" -+ exit 1 -+ } -+ } -+} -+close $$f -+set f [open {$(DOC_INSTALL_DIR:\=/)/tcl$(TCL_VERSION).cnt} a] -+puts $$f {:Include $(HLPBASE).cnt} -+close $$f -+<< -+ start /wait winhlp32 -g $(DOC_INSTALL_DIR)\tcl$(TCL_VERSION).hlp -+!endif - --###################################################################### -+ -+#--------------------------------------------------------------------- - # Clean up --###################################################################### -+#--------------------------------------------------------------------- - - tidy : - -del $(TMP_DIR)\*.pch -@@ -294,4 +417,3 @@ - hose : clean - -rmdir $(OUT_DIR) - -rmdir $(TMP_DIR) -- -diff -Naur insight-6.8.orig/itcl/itcl/win/nmakehlp.c insight-6.8.new/itcl/itcl/win/nmakehlp.c ---- insight-6.8.orig/itcl/itcl/win/nmakehlp.c 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/nmakehlp.c 2008-08-18 18:56:44.000000000 +0200 -@@ -0,0 +1,359 @@ -+/* ---------------------------------------------------------------------------- -+ * nmakehlp.c -- -+ * -+ * This is used to fix limitations within nmake and the environment. -+ * -+ * Copyright (c) 2002 by David Gravereaux. -+ * -+ * See the file "license.terms" for information on usage and redistribution -+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES. -+ * -+ * ---------------------------------------------------------------------------- -+ * RCS: @(#) $Id: nmakehlp.c,v 1.4 2004/04/29 17:40:44 davygrvy Exp $ -+ * ---------------------------------------------------------------------------- -+ */ -+#include -+#pragma comment (lib, "user32.lib") -+#pragma comment (lib, "kernel32.lib") -+#include -+#include -+ -+/* protos */ -+int CheckForCompilerFeature (const char *option); -+int CheckForLinkerFeature (const char *option); -+int IsIn (const char *string, const char *substring); -+int GrepForDefine (const char *file, const char *string); -+DWORD WINAPI ReadFromPipe (LPVOID args); -+ -+/* globals */ -+#define CHUNK 25 -+#define STATICBUFFERSIZE 1000 -+typedef struct { -+ HANDLE pipe; -+ char buffer[STATICBUFFERSIZE]; -+} pipeinfo; -+ -+pipeinfo Out = {INVALID_HANDLE_VALUE, '\0'}; -+pipeinfo Err = {INVALID_HANDLE_VALUE, '\0'}; -+ -+ -+ -+/* exitcodes: 0 == no, 1 == yes, 2 == error */ -+int -+main (int argc, char *argv[]) -+{ -+ char msg[300]; -+ DWORD dwWritten; -+ int chars; -+ -+ /* make sure children (cl.exe and link.exe) are kept quiet. */ -+ SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOOPENFILEERRORBOX); -+ -+ /* Make sure the compiler and linker aren't effected by the outside world. */ -+ SetEnvironmentVariable("CL", ""); -+ SetEnvironmentVariable("LINK", ""); -+ -+ if (argc > 1 && *argv[1] == '-') { -+ switch (*(argv[1]+1)) { -+ case 'c': -+ if (argc != 3) { -+ chars = wsprintf(msg, "usage: %s -c \n" -+ "Tests for whether cl.exe supports an option\n" -+ "exitcodes: 0 == no, 1 == yes, 2 == error\n", argv[0]); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, chars, &dwWritten, NULL); -+ return 2; -+ } -+ return CheckForCompilerFeature(argv[2]); -+ case 'l': -+ if (argc != 3) { -+ chars = wsprintf(msg, "usage: %s -l \n" -+ "Tests for whether link.exe supports an option\n" -+ "exitcodes: 0 == no, 1 == yes, 2 == error\n", argv[0]); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, chars, &dwWritten, NULL); -+ return 2; -+ } -+ return CheckForLinkerFeature(argv[2]); -+ case 'f': -+ if (argc == 2) { -+ chars = wsprintf(msg, "usage: %s -f \n" -+ "Find a substring within another\n" -+ "exitcodes: 0 == no, 1 == yes, 2 == error\n", argv[0]); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, chars, &dwWritten, NULL); -+ return 2; -+ } else if (argc == 3) { -+ /* if the string is blank, there is no match */ -+ return 0; -+ } else { -+ return IsIn(argv[2], argv[3]); -+ } -+ case 'g': -+ if (argc == 2) { -+ chars = wsprintf(msg, "usage: %s -g \n" -+ "grep for a #define\n" -+ "exitcodes: integer of the found string (no decimals)\n", argv[0]); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, chars, &dwWritten, NULL); -+ return 2; -+ } -+ return GrepForDefine(argv[2], argv[3]); -+ } -+ } -+ chars = wsprintf(msg, "usage: %s -c|-l|-f ...\n" -+ "This is a little helper app to equalize shell differences between WinNT and\n" -+ "Win9x and get nmake.exe to accomplish its job.\n", -+ argv[0]); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, chars, &dwWritten, NULL); -+ return 2; -+} -+ -+int -+CheckForCompilerFeature (const char *option) -+{ -+ STARTUPINFO si; -+ PROCESS_INFORMATION pi; -+ SECURITY_ATTRIBUTES sa; -+ DWORD threadID; -+ char msg[300]; -+ BOOL ok; -+ HANDLE hProcess, h, pipeThreads[2]; -+ char cmdline[100]; -+ -+ hProcess = GetCurrentProcess(); -+ -+ ZeroMemory(&pi, sizeof(PROCESS_INFORMATION)); -+ ZeroMemory(&si, sizeof(STARTUPINFO)); -+ si.cb = sizeof(STARTUPINFO); -+ si.dwFlags = STARTF_USESTDHANDLES; -+ si.hStdInput = INVALID_HANDLE_VALUE; -+ -+ ZeroMemory(&sa, sizeof(SECURITY_ATTRIBUTES)); -+ sa.nLength = sizeof(SECURITY_ATTRIBUTES); -+ sa.lpSecurityDescriptor = NULL; -+ sa.bInheritHandle = FALSE; -+ -+ /* create a non-inheritible pipe. */ -+ CreatePipe(&Out.pipe, &h, &sa, 0); -+ -+ /* dupe the write side, make it inheritible, and close the original. */ -+ DuplicateHandle(hProcess, h, hProcess, &si.hStdOutput, -+ 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); -+ -+ /* Same as above, but for the error side. */ -+ CreatePipe(&Err.pipe, &h, &sa, 0); -+ DuplicateHandle(hProcess, h, hProcess, &si.hStdError, -+ 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); -+ -+ /* base command line */ -+ strcpy(cmdline, "cl.exe -nologo -c -TC -Zs -X "); -+ /* append our option for testing */ -+ strcat(cmdline, option); -+ /* filename to compile, which exists, but is nothing and empty. */ -+ strcat(cmdline, " .\\nul"); -+ -+ ok = CreateProcess( -+ NULL, /* Module name. */ -+ cmdline, /* Command line. */ -+ NULL, /* Process handle not inheritable. */ -+ NULL, /* Thread handle not inheritable. */ -+ TRUE, /* yes, inherit handles. */ -+ DETACHED_PROCESS, /* No console for you. */ -+ NULL, /* Use parent's environment block. */ -+ NULL, /* Use parent's starting directory. */ -+ &si, /* Pointer to STARTUPINFO structure. */ -+ &pi); /* Pointer to PROCESS_INFORMATION structure. */ -+ -+ if (!ok) { -+ DWORD err = GetLastError(); -+ int chars = wsprintf(msg, "Tried to launch: \"%s\", but got error [%u]: ", cmdline, err); -+ -+ FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS | -+ FORMAT_MESSAGE_MAX_WIDTH_MASK, 0L, err, 0, (LPVOID) &msg[chars], -+ (300-chars), 0); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, strlen(msg), &err, NULL); -+ return 2; -+ } -+ -+ /* close our references to the write handles that have now been inherited. */ -+ CloseHandle(si.hStdOutput); -+ CloseHandle(si.hStdError); -+ -+ WaitForInputIdle(pi.hProcess, 5000); -+ CloseHandle(pi.hThread); -+ -+ /* start the pipe reader threads. */ -+ pipeThreads[0] = CreateThread(NULL, 0, ReadFromPipe, &Out, 0, &threadID); -+ pipeThreads[1] = CreateThread(NULL, 0, ReadFromPipe, &Err, 0, &threadID); -+ -+ /* block waiting for the process to end. */ -+ WaitForSingleObject(pi.hProcess, INFINITE); -+ CloseHandle(pi.hProcess); -+ -+ /* wait for our pipe to get done reading, should it be a little slow. */ -+ WaitForMultipleObjects(2, pipeThreads, TRUE, 500); -+ CloseHandle(pipeThreads[0]); -+ CloseHandle(pipeThreads[1]); -+ -+ /* look for the commandline warning code in both streams. */ -+ return !(strstr(Out.buffer, "D4002") != NULL || strstr(Err.buffer, "D4002") != NULL); -+} -+ -+int -+CheckForLinkerFeature (const char *option) -+{ -+ STARTUPINFO si; -+ PROCESS_INFORMATION pi; -+ SECURITY_ATTRIBUTES sa; -+ DWORD threadID; -+ char msg[300]; -+ BOOL ok; -+ HANDLE hProcess, h, pipeThreads[2]; -+ char cmdline[100]; -+ -+ hProcess = GetCurrentProcess(); -+ -+ ZeroMemory(&pi, sizeof(PROCESS_INFORMATION)); -+ ZeroMemory(&si, sizeof(STARTUPINFO)); -+ si.cb = sizeof(STARTUPINFO); -+ si.dwFlags = STARTF_USESTDHANDLES; -+ si.hStdInput = INVALID_HANDLE_VALUE; -+ -+ ZeroMemory(&sa, sizeof(SECURITY_ATTRIBUTES)); -+ sa.nLength = sizeof(SECURITY_ATTRIBUTES); -+ sa.lpSecurityDescriptor = NULL; -+ sa.bInheritHandle = TRUE; -+ -+ /* create a non-inheritible pipe. */ -+ CreatePipe(&Out.pipe, &h, &sa, 0); -+ -+ /* dupe the write side, make it inheritible, and close the original. */ -+ DuplicateHandle(hProcess, h, hProcess, &si.hStdOutput, -+ 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); -+ -+ /* Same as above, but for the error side. */ -+ CreatePipe(&Err.pipe, &h, &sa, 0); -+ DuplicateHandle(hProcess, h, hProcess, &si.hStdError, -+ 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); -+ -+ /* base command line */ -+ strcpy(cmdline, "link.exe -nologo "); -+ /* append our option for testing */ -+ strcat(cmdline, option); -+ -+ ok = CreateProcess( -+ NULL, /* Module name. */ -+ cmdline, /* Command line. */ -+ NULL, /* Process handle not inheritable. */ -+ NULL, /* Thread handle not inheritable. */ -+ TRUE, /* yes, inherit handles. */ -+ DETACHED_PROCESS, /* No console for you. */ -+ NULL, /* Use parent's environment block. */ -+ NULL, /* Use parent's starting directory. */ -+ &si, /* Pointer to STARTUPINFO structure. */ -+ &pi); /* Pointer to PROCESS_INFORMATION structure. */ -+ -+ if (!ok) { -+ DWORD err = GetLastError(); -+ int chars = wsprintf(msg, "Tried to launch: \"%s\", but got error [%u]: ", cmdline, err); -+ -+ FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS | -+ FORMAT_MESSAGE_MAX_WIDTH_MASK, 0L, err, 0, (LPVOID) &msg[chars], -+ (300-chars), 0); -+ WriteFile(GetStdHandle(STD_ERROR_HANDLE), msg, strlen(msg), &err, NULL); -+ return 2; -+ } -+ -+ /* close our references to the write handles that have now been inherited. */ -+ CloseHandle(si.hStdOutput); -+ CloseHandle(si.hStdError); -+ -+ WaitForInputIdle(pi.hProcess, 5000); -+ CloseHandle(pi.hThread); -+ -+ /* start the pipe reader threads. */ -+ pipeThreads[0] = CreateThread(NULL, 0, ReadFromPipe, &Out, 0, &threadID); -+ pipeThreads[1] = CreateThread(NULL, 0, ReadFromPipe, &Err, 0, &threadID); -+ -+ /* block waiting for the process to end. */ -+ WaitForSingleObject(pi.hProcess, INFINITE); -+ CloseHandle(pi.hProcess); -+ -+ /* wait for our pipe to get done reading, should it be a little slow. */ -+ WaitForMultipleObjects(2, pipeThreads, TRUE, 500); -+ CloseHandle(pipeThreads[0]); -+ CloseHandle(pipeThreads[1]); -+ -+ /* look for the commandline warning code in the stderr stream. */ -+ return !(strstr(Out.buffer, "LNK1117") != NULL || strstr(Err.buffer, "LNK1117") != NULL); -+} -+ -+DWORD WINAPI -+ReadFromPipe (LPVOID args) -+{ -+ pipeinfo *pi = (pipeinfo *) args; -+ char *lastBuf = pi->buffer; -+ DWORD dwRead; -+ BOOL ok; -+ -+again: -+ if (lastBuf - pi->buffer + CHUNK > STATICBUFFERSIZE) { -+ CloseHandle(pi->pipe); -+ return -1; -+ } -+ ok = ReadFile(pi->pipe, lastBuf, CHUNK, &dwRead, 0L); -+ if (!ok || dwRead == 0) { -+ CloseHandle(pi->pipe); -+ return 0; -+ } -+ lastBuf += dwRead; -+ goto again; -+ -+ return 0; /* makes the compiler happy */ -+} -+ -+int -+IsIn (const char *string, const char *substring) -+{ -+ return (strstr(string, substring) != NULL); -+} -+ -+/* -+ * Find a specified #define by name. -+ * -+ * If the line is '#define TCL_VERSION "8.5"', it returns -+ * 85 as the result. -+ */ -+ -+int -+GrepForDefine (const char *file, const char *string) -+{ -+ FILE *f; -+ char s1[51], s2[51], s3[51]; -+ int r = 0; -+ double d1; -+ -+ f = fopen(file, "rt"); -+ if (f == NULL) { -+ return 0; -+ } -+ -+ do { -+ r = fscanf(f, "%50s", s1); -+ if (r == 1 && !strcmp(s1, "#define")) { -+ /* get next two words */ -+ r = fscanf(f, "%50s %50s", s2, s3); -+ if (r != 2) continue; -+ /* is the first word what we're looking for? */ -+ if (!strcmp(s2, string)) { -+ fclose(f); -+ /* add 1 past first double quote char. "8.5" */ -+ d1 = atof(s3 + 1); /* 8.5 */ -+ while (floor(d1) != d1) { -+ d1 *= 10.0; -+ } -+ return ((int) d1); /* 85 */ -+ } -+ } -+ } while (!feof(f)); -+ -+ fclose(f); -+ return 0; -+} -diff -Naur insight-6.8.orig/itcl/itcl/win/rc/itcl.rc insight-6.8.new/itcl/itcl/win/rc/itcl.rc ---- insight-6.8.orig/itcl/itcl/win/rc/itcl.rc 2003-01-21 22:04:26.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/rc/itcl.rc 2008-08-18 19:18:48.000000000 +0200 -@@ -1,19 +1,16 @@ --// RCS: @(#) $Id: itcl.rc,v 1.3 2003/01/21 21:04:26 hunt Exp $ -+// RCS: @(#) $Id: itcl.rc,v 1.5 2008/07/23 22:44:51 kseitz Exp $ - // - // Version resource script. - // - - #include -- --#define RESOURCE_INCLUDED - #include - -- - // - // build-up the name suffix that defines the type of build this is. - // --#if DEBUG == 1 --#define SUFFIX_DEBUG "d" -+#if DEBUG && !UNCHECKED -+#define SUFFIX_DEBUG "g" - #else - #define SUFFIX_DEBUG "" - #endif -@@ -22,10 +19,10 @@ - - - VS_VERSION_INFO VERSIONINFO -- FILEVERSION ITCL_MAJOR_VERSION ,ITCL_MINOR_VERSION ,ITCL_RELEASE_LEVEL, 0 -- PRODUCTVERSION ITCL_MAJOR_VERSION ,ITCL_MINOR_VERSION ,ITCL_RELEASE_LEVEL, 0 -+ FILEVERSION ITCL_MAJOR_VERSION,ITCL_MINOR_VERSION,ITCL_RELEASE_LEVEL,ITCL_RELEASE_SERIAL -+ PRODUCTVERSION ITCL_MAJOR_VERSION,ITCL_MINOR_VERSION,ITCL_RELEASE_LEVEL,ITCL_RELEASE_SERIAL - FILEFLAGSMASK 0x3fL --#if DEBUG == 1 -+#ifdef DEBUG - FILEFLAGS VS_FF_DEBUG - #else - FILEFLAGS 0x0L -@@ -34,27 +31,22 @@ - FILETYPE VFT_DLL - FILESUBTYPE 0x0L - BEGIN -- BLOCK "StringFileInfo" -+ BLOCK "StringFileInfo" -+ BEGIN -+ BLOCK "040904b0" - BEGIN -- BLOCK "040904b0" -- BEGIN -- VALUE "FileDescription", "Itcl language extension for Tcl\0" -- VALUE "Authors", "Michael McLennan\0" -- VALUE "OriginalFilename", "itcl" STRINGIFY(JOIN(ITCL_MAJOR_VERSION,ITCL_MINOR_VERSION)) SUFFIX ".dll\0" -- VALUE "CompanyName", "Bell Labs Innovations for Lucent Technologies\0" -- VALUE "FileVersion", ITCL_PATCH_LEVEL -- VALUE "LegalCopyright", "Copyright \251 1993-2001\0" -- VALUE "ProductName", "[incr Tcl] " ITCL_VERSION " for Windows\0" -- VALUE "ProductVersion", ITCL_PATCH_LEVEL -- END -- END -- BLOCK "VarFileInfo" -- BEGIN -- VALUE "Translation", 0x409, 1200 -+ VALUE "FileDescription", "Itcl language extension for Tcl\0" -+ VALUE "Authors", "Michael McLennan\0" -+ VALUE "OriginalFilename", "itcl" STRINGIFY(ITCL_MAJOR_VERSION) STRINGIFY(ITCL_MINOR_VERSION) SUFFIX ".dll\0" -+ VALUE "CompanyName", "Bell Labs Innovations for Lucent Technologies\0" -+ VALUE "FileVersion", ITCL_PATCH_LEVEL -+ VALUE "LegalCopyright", "Copyright \251 1993-2004\0" -+ VALUE "ProductName", "[Incr Tcl] " ITCL_VERSION " for Windows\0" -+ VALUE "ProductVersion", ITCL_PATCH_LEVEL - END -+ END -+ BLOCK "VarFileInfo" -+ BEGIN -+ VALUE "Translation", 0x409, 1200 -+ END - END -- -- -- -- -- -diff -Naur insight-6.8.orig/itcl/itcl/win/toaster.bmp insight-6.8.new/itcl/itcl/win/toaster.bmp ---- insight-6.8.orig/itcl/itcl/win/toaster.bmp 1970-01-01 01:00:00.000000000 +0100 -+++ insight-6.8.new/itcl/itcl/win/toaster.bmp 2008-08-18 18:56:44.000000000 +0200 -@@ -0,0 +1 @@ -+BM6