@@ -222,35 +222,15 @@ AC_ARG_WITH(
222222 [ --with-tcl use tcl ],
223223 [
224224case "$withval" in
225- y | ye | yes)USE_TCL=true; AC_MSG_RESULT(enabled) ;;
226- *)USE_TCL=false ; AC_MSG_RESULT(disabled) ;;
225+ y | ye | yes)USE_TCL=true;USE_TK=true; AC_MSG_RESULT(enabled) ;;
226+ *)USE_TCL=; USE_TK= ; AC_MSG_RESULT(disabled) ;;
227227esac
228228 ],
229- [ USE_TCL=false ; AC_MSG_RESULT(disabled) ]
229+ [ USE_TCL=; USE_TK= ; AC_MSG_RESULT(disabled) ]
230230)
231231
232- dnl Add tcl/tk candidate directories to CPPFLAGS
233- if test "$USE_TCL"; then
234- header_dirs="/usr/include $INCLUDE_DIRS"
235- tcl_dirs="tcl8.0 tcl80 tcl7.6 tcl76"
236- tk_dirs="tk8.0 tk4.2"
237- for dir in $header_dirs; do
238- for tcl_dir in $tcl_dirs; do
239- if test -d "$dir/$tcl_dir"; then
240- PGSQL_CPPFLAGS="$PGSQL_CPPFLAGS -I$dir/$tcl_dir"
241- fi
242- done
243- done
244- for dir in $header_dirs; do
245- for tk_dir in $tk_dirs; do
246- if test -d "$dir/$tk_dir"; then
247- PGSQL_CPPFLAGS="$PGSQL_CPPFLAGS -I$dir/$tk_dir"
248- fi
249- done
250- done
251- fi
252232export USE_TCL
253- USE_X=$USE_TCL
233+ export USE_TK
254234
255235dnl We exclude perl support unless we override it with --with-perl
256236AC_MSG_CHECKING(setting USE_PERL)
@@ -266,9 +246,9 @@ AC_ARG_WITH(
266246 [ USE_PERL=false; AC_MSG_RESULT(disabled) ]
267247)
268248
269- # dnl Verify that postgres is already installed
270- # dnl per instructions for perl interface installation
271- if test "$USE_PERL" =" true"
249+ dnl Verify that postgres is already installed
250+ dnl per instructions for perl interface installation
251+ if test "$USE_PERL" = true
272252then
273253if test "$WHOAMI" != "root"
274254thenAC_MSG_WARN(perl support disabled; must be root to install)
@@ -411,6 +391,7 @@ AC_SUBST(CFLAGS)
411391AC_SUBST(DLSUFFIX)
412392AC_SUBST(DL_LIB)
413393AC_SUBST(USE_TCL)
394+ AC_SUBST(USE_TK)
414395AC_SUBST(USE_PERL)
415396AC_SUBST(USE_ODBC)
416397AC_SUBST(MULTIBYTE)
782763 AC_CHECK_LIB(m, rint, AC_DEFINE(HAVE_RINT), , $SPECIALMATHLIB)
783764])
784765
766+ dnl Check for Tcl configuration script tclConfig.sh
767+
768+ AC_PATH_PROG(TCLSH, tclsh)
769+
770+ if test -z "$TCLSH"
771+ then
772+ AC_MSG_WARN(TCL/TK support disabled; tclsh is not in your path)
773+ USE_TCL=
774+ fi
775+
776+ if test "$USE_TCL" = true
777+ then
778+ AC_MSG_CHECKING(for tclConfig.sh)
779+ TCL_CONFIG_SH=
780+ library_dirs=`echo 'puts $auto_path' | $TCLSH`
781+ library_dirs="$LIBRARY_DIRS $library_dirs"
782+ for dir in $library_dirs; do
783+ if test -d "$dir" -a -r "$dir/tclConfig.sh"; then
784+ TCL_CONFIG_SH=$dir/tclConfig.sh
785+ break
786+ fi
787+ done
788+ if test -z "$TCL_CONFIG_SH"; then
789+ AC_MSG_RESULT(no)
790+ AC_MSG_WARN(TCL/TK support disabled; Tcl configuration script missing)
791+ USE_TCL=
792+ else
793+ AC_MSG_RESULT($TCL_CONFIG_SH)
794+ AC_SUBST(TCL_CONFIG_SH)
795+ fi
796+ fi
797+
798+ USE_TK=$USE_TCL# If TCL is disabled, disable TK
799+
800+ dnl Check for Tk configuration script tkConfig.sh
801+ if test "$USE_TK" = true
802+ then
803+ AC_MSG_CHECKING(for tkConfig.sh)
804+ TK_CONFIG_SH=
805+ # library_dirs are set in the check for TCL
806+ for dir in $library_dirs
807+ do
808+ if test -d "$dir" -a -r "$dir/tkConfig.sh"
809+ then
810+ TK_CONFIG_SH=$dir/tkConfig.sh
811+ break
812+ fi
813+ done
814+ if test -z "$TK_CONFIG_SH"
815+ then
816+ AC_MSG_RESULT(no)
817+ AC_MSG_WARN(TK support disabled; Tk configuration script missing)
818+ USE_TK=
819+ else
820+ AC_MSG_RESULT($TK_CONFIG_SH)
821+ AC_SUBST(TK_CONFIG_SH)
822+ fi
823+ fi
824+
825+ USE_X=$USE_TK
826+
785827dnl Check for X libraries
786828
787829if test "$USE_X" = true; then
@@ -819,64 +861,6 @@ if test "$USE_X" = true; then
819861LDFLAGS="$ice_save_LDFLAGS"
820862fi
821863
822- dnl Check for Tcl configuration script tclConfig.sh
823- if test "$USE_TCL"; then
824- AC_MSG_CHECKING(for tclConfig.sh)
825- library_dirs="$LIBRARY_DIRS /usr/lib"
826- TCL_CONFIG_SH=
827- for dir in $library_dirs; do
828- for tcl_dir in $tcl_dirs; do
829- if test -z "$TCL_CONFIG_SH"; then
830- if test -d "$dir/$tcl_dir" -a -r "$dir/$tcl_dir/tclConfig.sh"; then
831- TCL_CONFIG_SH=$dir/$tcl_dir/tclConfig.sh
832- fi
833- fi
834- done
835- if test -z "$TCL_CONFIG_SH"; then
836- if test -d "$dir" -a -r "$dir/tclConfig.sh"; then
837- TCL_CONFIG_SH=$dir/tclConfig.sh
838- fi
839- fi
840- done
841- if test -z "$TCL_CONFIG_SH"; then
842- AC_MSG_RESULT(no)
843- AC_MSG_WARN(tcl support disabled; Tcl configuration script missing)
844- USE_TCL=
845- else
846- AC_MSG_RESULT($TCL_CONFIG_SH)
847- AC_SUBST(TCL_CONFIG_SH)
848- fi
849- fi
850-
851- dnl Check for Tk configuration script tkConfig.sh
852- if test "$USE_TCL"; then
853- AC_MSG_CHECKING(for tkConfig.sh)
854- library_dirs="$LIBRARY_DIRS /usr/lib"
855- TK_CONFIG_SH=
856- for dir in $library_dirs; do
857- for tk_dir in $tk_dirs; do
858- if test -z "$TK_CONFIG_SH"; then
859- if test -d "$dir/$tk_dir" -a -r "$dir/$tk_dir/tkConfig.sh"; then
860- TK_CONFIG_SH=$dir/$tk_dir/tkConfig.sh
861- fi
862- fi
863- done
864- if test -z "$TK_CONFIG_SH"; then
865- if test -d "$dir" -a -r "$dir/tkConfig.sh"; then
866- TK_CONFIG_SH=$dir/tkConfig.sh
867- fi
868- fi
869- done
870- if test -z "$TK_CONFIG_SH"; then
871- AC_MSG_RESULT(no)
872- AC_MSG_WARN(tcl support disabled; Tk configuration script missing)
873- USE_TCL=
874- else
875- AC_MSG_RESULT($TK_CONFIG_SH)
876- AC_SUBST(TK_CONFIG_SH)
877- fi
878- fi
879-
880864dnl cause configure to recurse into subdirectories with their own configure
881865dnl Darn, setting AC_CONFIG_SUBDIRS sets a list $subdirs$ in the configure output
882866dnl file, but then configure doesn't bother using that list. Probably a bug in
@@ -909,7 +893,8 @@ AC_OUTPUT(
909893bin/pg_dump/Makefile
910894bin/pg_version/Makefile
911895bin/psql/Makefile
912- bin/pgtclsh/mkMakefile.tcltkdefs.sh
896+ bin/pgtclsh/mkMakefile.tcldefs.sh
897+ bin/pgtclsh/mkMakefile.tkdefs.sh
913898include/version.h
914899interfaces/libpq/Makefile
915900interfaces/ecpg/lib/Makefile