#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/pgtclsh/Attic/Makefile,v 1.21 1998/10/13 16:30:48 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/pgtclsh/Attic/Makefile,v 1.22 1998/10/15 15:58:15 momjian Exp $
#
#-------------------------------------------------------------------------
#
# Include definitions from the tclConfig.sh file
#
-include Makefile.tcltkdefs
+include Makefile.tcldefs
+ifeq ($(USE_TK), true)
+ include Makefile.tkdefs
+endif
CFLAGS+= $(X_CFLAGS) -I$(SRCDIR)/interfaces/libpgtcl
LIBPGTCL= -L$(SRCDIR)/interfaces/libpgtcl -lpgtcl
LIBPQ= -L$(LIBPQDIR) -lpq
-all: pgtclsh pgtksh
+# If we are here then TCL is available
+PGMS = pgtclsh
+INSTPGMS = install_tcl
+
+# Add TK targets if TK is available
+ifeq ($(USE_TK), true)
+ PGMS += pgtksh
+ INSTPGMS += install_tk
+endif
+
+all: $(PGMS)
-Makefile.tcltkdefs:
- /bin/sh mkMakefile.tcltkdefs.sh
+Makefile.tcldefs:
+ /bin/sh mkMakefile.tcldefs.sh
+
+Makefile.tkdefs:
+ /bin/sh mkMakefile.tkdefs.sh
pgtclsh: pgtclAppInit.o
$(CC) $(CFLAGS) $(TCL_DEFS) -o $@ pgtclAppInit.o \
$(LIBPGTCL) $(LIBPQ) $(X_LIBS) $(TK_LIB_SPEC) $(TK_LIBS) \
$(TCL_LIB_SPEC) $(X11_LIBS) $(LDFLAGS)
-install: pgtclsh pgtksh
+install: $(INSTPGMS)
+
+install_tcl: pgtclsh
$(INSTALL) $(INSTL_EXE_OPTS) pgtclsh $(BINDIR)/pgtclsh
+
+install_tk: pgtksh
$(INSTALL) $(INSTL_EXE_OPTS) pgtksh $(BINDIR)/pgtksh
clean:
[ --with-tcl use tcl ],
[
case "$withval" in
- y | ye | yes) USE_TCL=true; AC_MSG_RESULT(enabled) ;;
- *) USE_TCL=false; AC_MSG_RESULT(disabled) ;;
+ y | ye | yes) USE_TCL=true; USE_TK=true; AC_MSG_RESULT(enabled) ;;
+ *) USE_TCL=; USE_TK=; AC_MSG_RESULT(disabled) ;;
esac
],
- [ USE_TCL=false; AC_MSG_RESULT(disabled) ]
+ [ USE_TCL=; USE_TK=; AC_MSG_RESULT(disabled) ]
)
-dnl Add tcl/tk candidate directories to CPPFLAGS
-if test "$USE_TCL"; then
- header_dirs="/usr/include $INCLUDE_DIRS"
- tcl_dirs="tcl8.0 tcl80 tcl7.6 tcl76"
- tk_dirs="tk8.0 tk4.2"
- for dir in $header_dirs; do
- for tcl_dir in $tcl_dirs; do
- if test -d "$dir/$tcl_dir"; then
- PGSQL_CPPFLAGS="$PGSQL_CPPFLAGS -I$dir/$tcl_dir"
- fi
- done
- done
- for dir in $header_dirs; do
- for tk_dir in $tk_dirs; do
- if test -d "$dir/$tk_dir"; then
- PGSQL_CPPFLAGS="$PGSQL_CPPFLAGS -I$dir/$tk_dir"
- fi
- done
- done
-fi
export USE_TCL
-USE_X=$USE_TCL
+export USE_TK
dnl We exclude perl support unless we override it with --with-perl
AC_MSG_CHECKING(setting USE_PERL)
[ USE_PERL=false; AC_MSG_RESULT(disabled) ]
)
-#dnl Verify that postgres is already installed
-#dnl per instructions for perl interface installation
-if test "$USE_PERL" = "true"
+dnl Verify that postgres is already installed
+dnl per instructions for perl interface installation
+if test "$USE_PERL" = true
then
if test "$WHOAMI" != "root"
then AC_MSG_WARN(perl support disabled; must be root to install)
AC_SUBST(DLSUFFIX)
AC_SUBST(DL_LIB)
AC_SUBST(USE_TCL)
+AC_SUBST(USE_TK)
AC_SUBST(USE_PERL)
AC_SUBST(USE_ODBC)
AC_SUBST(MULTIBYTE)
AC_CHECK_LIB(m, rint, AC_DEFINE(HAVE_RINT), , $SPECIALMATHLIB)
])
+dnl Check for Tcl configuration script tclConfig.sh
+
+AC_PATH_PROG(TCLSH, tclsh)
+
+if test -z "$TCLSH"
+then
+ AC_MSG_WARN(TCL/TK support disabled; tclsh is not in your path)
+ USE_TCL=
+fi
+
+if test "$USE_TCL" = true
+then
+ AC_MSG_CHECKING(for tclConfig.sh)
+ TCL_CONFIG_SH=
+ library_dirs=`echo 'puts $auto_path' | $TCLSH`
+ library_dirs="$LIBRARY_DIRS $library_dirs"
+ for dir in $library_dirs; do
+ if test -d "$dir" -a -r "$dir/tclConfig.sh"; then
+ TCL_CONFIG_SH=$dir/tclConfig.sh
+ break
+ fi
+ done
+ if test -z "$TCL_CONFIG_SH"; then
+ AC_MSG_RESULT(no)
+ AC_MSG_WARN(TCL/TK support disabled; Tcl configuration script missing)
+ USE_TCL=
+ else
+ AC_MSG_RESULT($TCL_CONFIG_SH)
+ AC_SUBST(TCL_CONFIG_SH)
+ fi
+fi
+
+USE_TK=$USE_TCL # If TCL is disabled, disable TK
+
+dnl Check for Tk configuration script tkConfig.sh
+if test "$USE_TK" = true
+then
+ AC_MSG_CHECKING(for tkConfig.sh)
+ TK_CONFIG_SH=
+ # library_dirs are set in the check for TCL
+ for dir in $library_dirs
+ do
+ if test -d "$dir" -a -r "$dir/tkConfig.sh"
+ then
+ TK_CONFIG_SH=$dir/tkConfig.sh
+ break
+ fi
+ done
+ if test -z "$TK_CONFIG_SH"
+ then
+ AC_MSG_RESULT(no)
+ AC_MSG_WARN(TK support disabled; Tk configuration script missing)
+ USE_TK=
+ else
+ AC_MSG_RESULT($TK_CONFIG_SH)
+ AC_SUBST(TK_CONFIG_SH)
+ fi
+fi
+
+USE_X=$USE_TK
+
dnl Check for X libraries
if test "$USE_X" = true; then
LDFLAGS="$ice_save_LDFLAGS"
fi
-dnl Check for Tcl configuration script tclConfig.sh
-if test "$USE_TCL"; then
- AC_MSG_CHECKING(for tclConfig.sh)
- library_dirs="$LIBRARY_DIRS /usr/lib"
- TCL_CONFIG_SH=
- for dir in $library_dirs; do
- for tcl_dir in $tcl_dirs; do
- if test -z "$TCL_CONFIG_SH"; then
- if test -d "$dir/$tcl_dir" -a -r "$dir/$tcl_dir/tclConfig.sh"; then
- TCL_CONFIG_SH=$dir/$tcl_dir/tclConfig.sh
- fi
- fi
- done
- if test -z "$TCL_CONFIG_SH"; then
- if test -d "$dir" -a -r "$dir/tclConfig.sh"; then
- TCL_CONFIG_SH=$dir/tclConfig.sh
- fi
- fi
- done
- if test -z "$TCL_CONFIG_SH"; then
- AC_MSG_RESULT(no)
- AC_MSG_WARN(tcl support disabled; Tcl configuration script missing)
- USE_TCL=
- else
- AC_MSG_RESULT($TCL_CONFIG_SH)
- AC_SUBST(TCL_CONFIG_SH)
- fi
-fi
-
-dnl Check for Tk configuration script tkConfig.sh
-if test "$USE_TCL"; then
- AC_MSG_CHECKING(for tkConfig.sh)
- library_dirs="$LIBRARY_DIRS /usr/lib"
- TK_CONFIG_SH=
- for dir in $library_dirs; do
- for tk_dir in $tk_dirs; do
- if test -z "$TK_CONFIG_SH"; then
- if test -d "$dir/$tk_dir" -a -r "$dir/$tk_dir/tkConfig.sh"; then
- TK_CONFIG_SH=$dir/$tk_dir/tkConfig.sh
- fi
- fi
- done
- if test -z "$TK_CONFIG_SH"; then
- if test -d "$dir" -a -r "$dir/tkConfig.sh"; then
- TK_CONFIG_SH=$dir/tkConfig.sh
- fi
- fi
- done
- if test -z "$TK_CONFIG_SH"; then
- AC_MSG_RESULT(no)
- AC_MSG_WARN(tcl support disabled; Tk configuration script missing)
- USE_TCL=
- else
- AC_MSG_RESULT($TK_CONFIG_SH)
- AC_SUBST(TK_CONFIG_SH)
- fi
-fi
-
dnl cause configure to recurse into subdirectories with their own configure
dnl Darn, setting AC_CONFIG_SUBDIRS sets a list $subdirs$ in the configure output
dnl file, but then configure doesn't bother using that list. Probably a bug in
bin/pg_dump/Makefile
bin/pg_version/Makefile
bin/psql/Makefile
- bin/pgtclsh/mkMakefile.tcltkdefs.sh
+ bin/pgtclsh/mkMakefile.tcldefs.sh
+ bin/pgtclsh/mkMakefile.tkdefs.sh
include/version.h
interfaces/libpq/Makefile
interfaces/ecpg/lib/Makefile