From 49268d5b8bca96d72c0c07b1294a7b010dec821a Mon Sep 17 00:00:00 2001 From: ericm Date: Tue, 13 Jun 2000 21:07:34 +0000 Subject: * win/tcl.m4: * win/configure.in: * win/Makefile.in: Applied patch from [RFE: 5844], to extend support for mingw compile environment on Windows. --- ChangeLog | 7 + win/Makefile.in | 74 +++++---- win/aclocal.m4 | 489 +------------------------------------------------------ win/configure.in | 43 ++++- 4 files changed, 86 insertions(+), 527 deletions(-) diff --git a/ChangeLog b/ChangeLog index 46c7510..9f6e959 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2000-06-13 Eric Melski + + * win/aclocal.m4: + * win/configure.in: + * win/Makefile.in: Applied patch from [RFE: 5844], to provide + support for the mingw compile environment for Windows. + 2000-06-06 Jeff Hobbs 8.4a1 RELEASE diff --git a/win/Makefile.in b/win/Makefile.in index cf686f0..5a350fb 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -4,7 +4,7 @@ # "autoconf" program (constructs like "@foo@" will get replaced in the # actual Makefile. # -# RCS: @(#) $Id: Makefile.in,v 1.25 2000/05/23 02:44:18 hobbs Exp $ +# RCS: @(#) $Id: Makefile.in,v 1.26 2000/06/13 21:07:34 ericm Exp $ TCLVERSION = @TCL_VERSION@ VERSION = @TK_VERSION@ @@ -87,11 +87,14 @@ TCL_GENERIC_DIR = @TCL_SRC_DIR@/../generic # This is a switch passed to a Cygwin script that generates file # names based on the platform. -PATHTYPE = @PATHTYPE@ +PATHTYPE = @PATHTYPE@ + +# This program converts between Windows native and Cygwin POSIX pathnames. +CYGPATH = @CYGPATH@ # The name of the Tcl library. -TCL_LIB_FILE = "$(shell cygpath $(PATHTYPE) '@TCL_BIN_DIR@/@TCL_LIB_FILE@')" -TCL_STUB_LIB_FILE = "$(shell cygpath $(PATHTYPE) '@TCL_BIN_DIR@/@TCL_STUB_LIB_FILE@')" +TCL_LIB_FILE = "$(shell $(CYGPATH) $(PATHTYPE) '@TCL_BIN_DIR@/@TCL_LIB_FILE@')" +TCL_STUB_LIB_FILE = "$(shell $(CYGPATH) $(PATHTYPE) '@TCL_BIN_DIR@/@TCL_STUB_LIB_FILE@')" SRC_DIR = @srcdir@ ROOT_DIR = $(SRC_DIR)/.. @@ -102,14 +105,15 @@ BITMAP_DIR = $(ROOT_DIR)/bitmaps XLIB_DIR = $(ROOT_DIR)/xlib RC_DIR = $(WIN_DIR)/rc -ROOT_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(ROOT_DIR)') -WIN_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(WIN_DIR)') -GENERIC_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(GENERIC_DIR)') -BITMAP_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(ROOT_DIR)/bitmaps') -XLIB_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(ROOT_DIR)/xlib') -TCL_GENERIC_NATIVE = $(shell cygpath $(PATHTYPE) '$(TCL_GENERIC_DIR)') -TCL_SRC_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(TCL_SRC_DIR)') -TCL_BIN_DIR_NATIVE = $(shell cygpath $(PATHTYPE) '$(TCL_BIN_DIR)') +ROOT_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(ROOT_DIR)') +WIN_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(WIN_DIR)') +GENERIC_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(GENERIC_DIR)') +BITMAP_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(ROOT_DIR)/bitmaps') +XLIB_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(ROOT_DIR)/xlib') +TCL_GENERIC_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(TCL_GENERIC_DIR)') +TCL_SRC_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(TCL_SRC_DIR)') +TCL_BIN_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(TCL_BIN_DIR)') +RC_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(RC_DIR)') DLLSUFFIX = @DLLSUFFIX@ LIBSUFFIX = @LIBSUFFIX@ @@ -132,14 +136,14 @@ MAN2TCL = man2tcl$(EXEEXT) # Macro that expands to the first dependency argument with the appropriate # path type already resolved. -DEPARG = "$(shell cygpath $(PATHTYPE) $<)" +DEPARG = "$(shell $(CYGPATH) $(PATHTYPE) $<)" # Setting the VPATH variable to a list of paths will cause the # makefile to look into these paths when resolving .c to .obj # dependencies. Note the ':' to avoid autoconf's habit of deleting # all VPATH lines without an explicit ':' in it. -VPATH = $(GENERIC_DIR);$(WIN_DIR);$(UNIX_DIR);$(XLIB_DIR);$(RC_DIR) # : +VPATH = $(GENERIC_DIR)@VPSEP@$(WIN_DIR)@VPSEP@$(UNIX_DIR)@VPSEP@$(XLIB_DIR)@VPSEP@$(RC_DIR) # : # warning flags CFLAGS_WARNING = @CFLAGS_WARNING@ @@ -163,8 +167,10 @@ CFLAGS = @CFLAGS@ MAN2TCLFLAGS = @MAN2TCLFLAGS@ AR = @AR@ +RANLIB = @RANLIB@ CC = @CC@ RC = @RC@ +RES = @RES@ AC_FLAGS = @EXTRA_CFLAGS@ @DEFS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ @@ -172,20 +178,19 @@ LDFLAGS_CONSOLE = @LDFLAGS_CONSOLE@ LDFLAGS_WINDOW = @LDFLAGS_WINDOW@ EXEEXT = @EXEEXT@ OBJEXT = @OBJEXT@ +STLIB_LD = @STLIB_LD@ SHLIB_LD = @SHLIB_LD@ -SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ $(TCL_STUB_LIB_FILE) gdi32.lib comdlg32.lib +SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ $(TCL_STUB_LIB_FILE) $(LIBS) SHLIB_CFLAGS = @SHLIB_CFLAGS@ SHLIB_SUFFIX = @SHLIB_SUFFIX@ VER = @TK_MAJOR_VERSION@@TK_MINOR_VERSION@ DOTVER = @TK_MAJOR_VERSION@.@TK_MINOR_VERSION@ -LIBS = @LIBS@ gdi32.lib comdlg32.lib +LIBS = @LIBS_GUI@ RMDIR = rm -rf MKDIR = mkdir -p SHELL = @SHELL@ RM = rm -f COPY = cp -CC_OBJNAME = @CC_OBJNAME@ -CC_EXENAME = @CC_EXENAME@ TCLSH_PROG = @TCLSH_PROG@ @@ -194,6 +199,9 @@ CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \ -I"${XLIB_DIR_NATIVE}" -I"${BITMAP_DIR_NATIVE}" \ -I"${TCL_GENERIC_NATIVE}" ${AC_FLAGS} +CC_OBJNAME = @CC_OBJNAME@ +CC_EXENAME = @CC_EXENAME@ + STUB_CC_SWITCHES = ${CC_SWITCHES} -DUSE_TCL_STUBS CON_CC_SWITCHES = ${CC_SWITCHES} -DCONSOLE @@ -487,22 +495,22 @@ install-demos: install-doc: -$(WISH): $(TK_LIB_FILE) $(WISH_OBJS) wish.res +$(WISH): $(TK_LIB_FILE) $(WISH_OBJS) wish.$(RES) $(CC) $(CFLAGS) $(WISH_OBJS) $(TCL_LIB_FILE) $(TK_LIB_FILE) $(LIBS) \ - wish.res $(CC_EXENAME) -link $(LDFLAGS_WINDOW) + wish.$(RES) $(CC_EXENAME) $(LDFLAGS_WINDOW) tktest : $(TKTEST) -$(TKTEST): $(TK_LIB_FILE) $(TKTEST_OBJS) wish.res $(CAT32) +$(TKTEST): $(TK_LIB_FILE) $(TKTEST_OBJS) wish.$(RES) $(CAT32) $(CC) $(CFLAGS) $(TKTEST_OBJS_NATIVE) $(TCL_LIB_FILE) \ $(TK_LIB_FILE) $(LIBS) \ - wish.res $(CC_EXENAME) -link $(LDFLAGS_WINDOW) + wish.$(RES) $(CC_EXENAME) $(LDFLAGS_WINDOW) cat32.${OBJEXT}: $(TCL_SRC_DIR)/cat.c $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME) $(CAT32): cat32.${OBJEXT} - $(CC) $(CFLAGS) cat32.$(OBJEXT) $(CC_EXENAME) -link $(LDFLAGS_CONSOLE) + $(CC) $(CFLAGS) cat32.$(OBJEXT) $(CC_EXENAME) $(LDFLAGS_CONSOLE) # The following targets are configured by autoconf to generate either # a shared library or static library @@ -510,14 +518,16 @@ $(CAT32): cat32.${OBJEXT} ${TK_STUB_LIB_FILE}: ${STUB_OBJS} @$(RM) ${TK_STUB_LIB_FILE} @MAKE_LIB@ ${STUB_OBJS} + @POST_MAKE_LIB@ -${TK_DLL_FILE}: ${TK_OBJS} tk.res +${TK_DLL_FILE}: ${TK_OBJS} tk.$(RES) @$(RM) ${TK_DLL_FILE} - @MAKE_DLL@ ${TK_OBJS} tk.res + @MAKE_DLL@ ${TK_OBJS} tk.$(RES) $(SHLIB_LD_LIBS) ${TK_LIB_FILE}: ${TK_OBJS} @$(RM) ${TK_LIB_FILE} @MAKE_LIB@ ${TK_OBJS} + @POST_MAKE_LIB@ # Special case object file targets @@ -542,29 +552,29 @@ tclThreadTest.$(OBJEXT): $(TCL_BIN_DIR)/tclThreadTest.$(OBJEXT) # automatically added. .SUFFIXES: .${OBJEXT} -.SUFFIXES: .res +.SUFFIXES: .$(RES) .SUFFIXES: .rc # Implicit rule for all object files that will end up in the Tcl library -.c.${OBJEXT}: +.c.$(OBJEXT): $(CC) -c $(STUB_CC_SWITCHES) -DBUILD_tk ${DEPARG} $(CC_OBJNAME) -.rc.res: - $(RC) -fo $@ -r -i "$(GENERIC_DIR_NATIVE)" -i "$(TCL_GENERIC_NATIVE)" $(DEPARG) +.rc.$(RES): + $(RC) @RC_OUT@ $@ @RC_TYPE@ @RC_INCLUDE@ "$(GENERIC_DIR_NATIVE)" @RC_INCLUDE@ "$(TCL_GENERIC_NATIVE)" @RC_INCLUDE@ "$(RC_DIR_NATIVE)" $(DEPARG) depend: cleanhelp: - $(RM) *.hlp *.cnt *.hpj *.GID *.rtf man2tcl.exe + $(RM) *.hlp *.cnt *.hpj *.GID *.rtf man2tcl${EXEEXT} clean: cleanhelp - $(RM) *.lib *.exp *.dll *.res *.${OBJEXT} *~ \#* TAGS a.out + $(RM) *.lib *.a *.exp *.dll *.res *.${OBJEXT} *~ \#* TAGS a.out $(RM) $(WISH) $(TKTEST) $(CAT32) $(RM) *.pch *.ilk *.pdb distclean: clean $(RM) Makefile config.status config.cache config.log tkConfig.sh -Makefile: Makefile.in +Makefile: $(SRC_DIR)/Makefile.in ./config.status diff --git a/win/aclocal.m4 b/win/aclocal.m4 index d76248d..bc7540d 100644 --- a/win/aclocal.m4 +++ b/win/aclocal.m4 @@ -1,488 +1 @@ -#------------------------------------------------------------------------ -# SC_PATH_TCLCONFIG -- -# -# Locate the tclConfig.sh file and perform a sanity check on -# the Tcl compile flags -# Currently a no-op for Windows -# -# Arguments: -# PATCH_LEVEL The patch level for Tcl if any. -# -# Results: -# -# Adds the following arguments to configure: -# --with-tcl=... -# -# Sets the following vars: -# TCL_BIN_DIR Full path to the tclConfig.sh file -#------------------------------------------------------------------------ - -AC_DEFUN(SC_PATH_TCLCONFIG, [ - AC_MSG_CHECKING([the location of tclConfig.sh]) - - if test -d ../../tcl8.4$1/win; then - TCL_BIN_DIR_DEFAULT=../../tcl8.4$1/win - else - TCL_BIN_DIR_DEFAULT=../../tcl8.4/win - fi - - AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8.4 binaries from DIR], - TCL_BIN_DIR=$withval, TCL_BIN_DIR=`cd $TCL_BIN_DIR_DEFAULT; pwd`) - if test ! -d $TCL_BIN_DIR; then - AC_MSG_ERROR(Tcl directory $TCL_BIN_DIR does not exist) - fi - if test ! -f $TCL_BIN_DIR/tclConfig.sh; then - AC_MSG_ERROR(There is no tclConfig.sh in $TCL_BIN_DIR: perhaps you did not specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?) - fi - AC_MSG_RESULT($TCL_BIN_DIR/tclConfig.sh) -]) - -#------------------------------------------------------------------------ -# SC_PATH_TKCONFIG -- -# -# Locate the tkConfig.sh file -# Currently a no-op for Windows -# -# Arguments: -# none -# -# Results: -# -# Adds the following arguments to configure: -# --with-tk=... -# -# Sets the following vars: -# TK_BIN_DIR Full path to the tkConfig.sh file -#------------------------------------------------------------------------ - -AC_DEFUN(SC_PATH_TKCONFIG, [ - AC_MSG_CHECKING([the location of tkConfig.sh]) - - if test -d ../../tk8.4$1/win; then - TK_BIN_DIR_DEFAULT=../../tk8.4$1/win - else - TK_BIN_DIR_DEFAULT=../../tk8.4/win - fi - - AC_ARG_WITH(tk, [ --with-tk=DIR use Tk 8.4 binaries from DIR], - TK_BIN_DIR=$withval, TK_BIN_DIR=`cd $TK_BIN_DIR_DEFAULT; pwd`) - if test ! -d $TK_BIN_DIR; then - AC_MSG_ERROR(Tk directory $TK_BIN_DIR does not exist) - fi - if test ! -f $TK_BIN_DIR/tkConfig.sh; then - AC_MSG_ERROR(There is no tkConfig.sh in $TK_BIN_DIR: perhaps you did not specify the Tk *build* directory (not the toplevel Tk directory) or you forgot to configure Tk?) - fi - - AC_MSG_RESULT($TK_BIN_DIR/tkConfig.sh) -]) - -#------------------------------------------------------------------------ -# SC_LOAD_TCLCONFIG -- -# -# Load the tclConfig.sh file -# Currently a no-op for Windows -# -# 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(SC_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 - - # 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} - - AC_SUBST(TCL_BIN_DIR) - AC_SUBST(TCL_SRC_DIR) - AC_SUBST(TCL_LIB_FILE) -]) - -#------------------------------------------------------------------------ -# SC_LOAD_TKCONFIG -- -# -# Load the tkConfig.sh file -# Currently a no-op for Windows -# -# 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(SC_LOAD_TKCONFIG, [ - AC_MSG_CHECKING([for existence of $TCLCONFIG]) - - if test -f "$TK_BIN_DIR/tkConfig.sh" ; then - AC_MSG_CHECKING([loading $TK_BIN_DIR/tkConfig.sh]) - . $TK_BIN_DIR/tkConfig.sh - else - AC_MSG_RESULT([could not find $TK_BIN_DIR/tkConfig.sh]) - fi - - - AC_SUBST(TK_BIN_DIR) - AC_SUBST(TK_SRC_DIR) - AC_SUBST(TK_LIB_FILE) -]) - -#------------------------------------------------------------------------ -# SC_ENABLE_GCC -- -# -# Allows the use of GCC if available -# -# Arguments: -# none -# -# Results: -# -# Adds the following arguments to configure: -# --enable-gcc -# -# Sets the following vars: -# CC Command to use for the compiler -#------------------------------------------------------------------------ - -AC_DEFUN(SC_ENABLE_GCC, [ - AC_ARG_ENABLE(gcc, [ --enable-gcc allow use of gcc if available [--disable-gcc]], - [ok=$enableval], [ok=no]) - if test "$ok" = "yes"; then - CC=gcc - AC_PROG_CC - else - CC=cl - fi -]) - -#------------------------------------------------------------------------ -# SC_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(SC_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 -]) - -#------------------------------------------------------------------------ -# SC_ENABLE_THREADS -- -# -# Specify if thread support should be enabled -# -# Arguments: -# none -# -# Results: -# -# Adds the following arguments to configure: -# --enable-threads=yes|no -# -# Defines the following vars: -# TCL_THREADS -#------------------------------------------------------------------------ - -AC_DEFUN(SC_ENABLE_THREADS, [ - AC_MSG_CHECKING(for building with threads) - AC_ARG_ENABLE(threads, [ --enable-threads build with threads], - [tcl_ok=$enableval], [tcl_ok=no]) - - if test "$tcl_ok" = "yes"; then - AC_MSG_RESULT(yes) - TCL_THREADS=1 - AC_DEFINE(TCL_THREADS) - else - TCL_THREADS=0 - AC_MSG_RESULT(no (default)) - fi -]) - -#------------------------------------------------------------------------ -# SC_ENABLE_SYMBOLS -- -# -# Specify if debugging symbols should be used -# -# Arguments: -# none -# -# Requires the following vars to be set: -# CFLAGS_DEBUG -# CFLAGS_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 Debug library extension -# -#------------------------------------------------------------------------ - -AC_DEFUN(SC_ENABLE_SYMBOLS, [ - 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" = "yes"; then - CFLAGS_DEFAULT="${CFLAGS_DEBUG}" - LDFLAGS_DEFAULT="${LDFLAGS_DEBUG}" - DBGX=d - AC_MSG_RESULT([yes]) - else - CFLAGS_DEFAULT="${CFLAGS_OPTIMIZE}" - LDFLAGS_DEFAULT="${LDFLAGS_OPTIMIZE}" - DBGX="" - AC_MSG_RESULT([no]) - fi -]) - - -#-------------------------------------------------------------------- -# SC_CONFIG_CFLAGS -# -# Try to determine the proper flags to pass to the compiler -# for building shared libraries and other such nonsense. -# -# NOTE: The backslashes in quotes below are substituted twice -# due to the fact that they are in a macro and then inlined -# in the final configure script. -# -# Arguments: -# none -# -# Results: -# -# Defines the following vars for all compilers: -# EXTRA_CFLAGS -# CFLAGS_DEBUG -# CFLAGS_OPTIMIZE -# CFLAGS_WARNING -# LDFLAGS_DEBUG -# LDFLAGS_OPTIMIZE -# PATHTYPE -# CC_OBJNAME -# CC_EXENAME -# -# Defines the following vars for non-gcc compilers -# SHLIB_LD -# SHLIB_LD_LIBS -# LIBS -# AR -# MAKE_LIB -# MAKE_EXE -# MAKE_DLL -# -# LIBSUFFIX -# LIBRARIES -# EXESUFFIX -# DLLSUFFIX -# -#-------------------------------------------------------------------- - -AC_DEFUN(SC_CONFIG_CFLAGS, [ - AC_MSG_CHECKING([compiler flags]) - EXTRA_CFLAGS="" - # set various compiler flags depending on whether we are using gcc or cl - - if test "${GCC}" = "yes" ; then - CFLAGS_DEBUG=-g - CFLAGS_OPTIMIZE=-O - CFLAGS_WARNING="-Wall -Wconversion" - LDFLAGS_DEBUG=-g - LDFLAGS_OPTIMIZE=-O - PATHTYPE=-u - - # Specify the CC output file names based on the target name - CC_OBJNAME="-o \[$]@" - CC_EXENAME="-o \[$]@" - else - SHLIB_LD="link -dll -nologo" - SHLIB_LD_LIBS="user32.lib advapi32.lib" - LIBS="user32.lib advapi32.lib" - AR="lib -nologo" - RC="rc" - MAKE_LIB="\${AR} -out:\[$]@" - MAKE_EXE="\${CC} -Fe\[$]@" - - if test "${SHARED_BUILD}" = "0" ; then - # static - AC_MSG_RESULT([using static flags]) - runtime=-MT - MAKE_DLL="echo " - LIBSUFFIX="s\${DBGX}.lib" - LIBRARIES="\${STATIC_LIBRARIES}" - EXESUFFIX="s\${DBGX}.exe" - DLLSUFFIX="" - else - # dynamic - AC_MSG_RESULT([using shared flags]) - runtime=-MD - MAKE_DLL="\${SHLIB_LD} \${SHLIB_LD_LIBS} \$(LDFLAGS) -out:\[$]@" - LIBSUFFIX="\${DBGX}.lib" - DLLSUFFIX="\${DBGX}.dll" - EXESUFFIX="\${DBGX}.exe" - LIBRARIES="\${SHARED_LIBRARIES}" - fi - - EXTRA_CFLAGS="-YX" - CFLAGS_DEBUG="-nologo -Z7 -Od -WX ${runtime}d" -# CFLAGS_OPTIMIZE="-nologo -O2 -Gs -GD ${runtime}" - CFLAGS_OPTIMIZE="-nologo -Oti -Gs -GD ${runtime}" - CFLAGS_WARNING="-W3" - LDFLAGS_DEBUG="-debug:full -debugtype:cv" - LDFLAGS_OPTIMIZE="-release" - PATHTYPE=-w - - # Specify the CC output file names based on the target name - CC_OBJNAME="-Fo\[$]@" - CC_EXENAME="-Fe\"\$(shell cygpath \$(PATHTYPE) '\[$]@')\"" - - # Specify linker flags depending on the type of app being - # built -- Console vs. Window. - LDFLAGS_CONSOLE="-subsystem:console" - LDFLAGS_WINDOW="-subsystem:windows" - fi -]) - -#------------------------------------------------------------------------ -# SC_WITH_TCL -- -# -# Location of the Tcl build directory. -# -# Arguments: -# none -# -# Results: -# -# Adds the following arguments to configure: -# --with-tcl=... -# -# Defines the following vars: -# TCL_BIN_DIR Full path to the tcl build dir. -#------------------------------------------------------------------------ - -AC_DEFUN(SC_WITH_TCL, [ - if test -d ../../tcl8.4$1/win; then - TCL_BIN_DEFAULT=../../tcl8.4$1/win - else - TCL_BIN_DEFAULT=../../tcl8.4/win - fi - - AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8.4 binaries from DIR], - TCL_BIN_DIR=$withval, TCL_BIN_DIR=`cd $TCL_BIN_DEFAULT; pwd`) - if test ! -d $TCL_BIN_DIR; then - AC_MSG_ERROR(Tcl directory $TCL_BIN_DIR does not exist) - fi - if test ! -f $TCL_BIN_DIR/Makefile; then - AC_MSG_ERROR(There is no Makefile in $TCL_BIN_DIR: perhaps you did not specify the Tcl *build* directory (not the toplevel Tcl directory) or you forgot to configure Tcl?) - else - echo "building against Tcl binaries in: $TCL_BIN_DIR" - fi - AC_SUBST(TCL_BIN_DIR) -]) - -#------------------------------------------------------------------------ -# SC_PROG_TCLSH -# Locate a tclsh shell in the following directories: -# ${exec_prefix}/bin -# ${prefix}/bin -# ${TCL_BIN_DIR} -# ${TCL_BIN_DIR}/../bin -# ${PATH} -# -# Arguments -# none -# -# Results -# Subst's the following values: -# TCLSH_PROG -#------------------------------------------------------------------------ - -AC_DEFUN(SC_PROG_TCLSH, [ - AC_MSG_CHECKING([for tclsh]) - - AC_CACHE_VAL(ac_cv_path_tclsh, [ - search_path=`echo ${exec_prefix}/bin:${prefix}/bin:${TCL_BIN_DIR}:${TCL_BIN_DIR}/../bin:${PATH} | sed -e 's/:/ /g'` - for dir in $search_path ; do - for j in `ls -r $dir/tclsh[[8-9]]*.exe 2> /dev/null` \ - `ls -r $dir/tclsh* 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 - AC_SUBST(TCLSH_PROG) -]) - +builtin(include,tcl.m4) diff --git a/win/configure.in b/win/configure.in index f7bb113..435caf3 100644 --- a/win/configure.in +++ b/win/configure.in @@ -2,7 +2,7 @@ # generate the file "configure", which is run during Tk installation # to configure the system for the local environment. # -# RCS: @(#) $Id: configure.in,v 1.17 2000/05/03 00:18:37 hobbs Exp $ +# RCS: @(#) $Id: configure.in,v 1.18 2000/06/13 21:07:35 ericm Exp $ AC_INIT(../generic/tk.h) @@ -75,9 +75,9 @@ AC_SUBST(MAN2TCLFLAGS) SC_ENABLE_SYMBOLS -TK_DBGX=${DBGX} CFLAGS=${CFLAGS_DEFAULT} LDFLAGS=${LDFLAGS_DEFAULT} +TK_DBGX=${DBGX} #-------------------------------------------------------------------- # Locate and source the tclConfig.sh file. @@ -92,15 +92,28 @@ SC_PROG_TCLSH # Perform final evaluations of variables with possible substitutions. #-------------------------------------------------------------------- +TK_SHARED_LIB_SUFFIX="\${NODOT_VERSION}${DLLSUFFIX}" +TK_UNSHARED_LIB_SUFFIX="\${NODOT_VERSION}${LIBSUFFIX}" +TK_EXPORT_FILE_SUFFIX="\${NODOT_VERSION}${LIBSUFFIX}" + eval "TK_SRC_DIR=`cd $srcdir; pwd`" +eval "TK_STUB_LIB_FILE=${LIBPREFIX}tkstub$VER${LIBSUFFIX}" eval "TK_DLL_FILE=tk$VER${DLLSUFFIX}" -eval "TK_LIB_FILE=tk$VER${LIBSUFFIX}" -eval "TK_STUB_LIB_FILE=tkstub$VER${LIBSUFFIX}" +eval "TK_LIB_FILE=${LIBPREFIX}tk$VER${LIBSUFFIX}" + +eval "TCL_STUB_LIB_FILE=${LIBPREFIX}tclstub$VER${LIBSUFFIX}" eval "TCL_DLL_FILE=tcl$VER${DLLSUFFIX}" -eval "TCL_LIB_FILE=tcl$VER${LIBSUFFIX}" -eval "TCL_STUB_LIB_FILE=tclstub$VER${LIBSUFFIX}" +eval "TCL_LIB_FILE=${LIBPREFIX}tcl$VER${LIBSUFFIX}" + +eval "DLLSUFFIX=${DLLSUFFIX}" +eval "LIBPREFIX=${LIBPREFIX}" +eval "LIBSUFFIX=${LIBSUFFIX}" eval "EXESUFFIX=${EXESUFFIX}" +CFG_TK_SHARED_LIB_SUFFIX=${TK_SHARED_LIB_SUFFIX} +CFG_TK_UNSHARED_LIB_SUFFIX=${TK_UNSHARED_LIB_SUFFIX} +CFG_TK_EXPORT_FILE_SUFFIX=${TK_EXPORT_FILE_SUFFIX} + AC_SUBST(TK_VERSION) AC_SUBST(TK_MAJOR_VERSION) AC_SUBST(TK_MINOR_VERSION) @@ -122,13 +135,19 @@ AC_SUBST(TCL_STUB_LIB_FILE) AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_BIN_DIR) AC_SUBST(TCL_DBGX) - +AC_SUBST(CFG_TK_SHARED_LIB_SUFFIX) +AC_SUBST(CFG_TK_UNSHARED_LIB_SUFFIX) +AC_SUBST(CFG_TK_EXPORT_FILE_SUFFIX) +dnl AC_SUBST(TCL_SHARED_BUILD) AC_SUBST(PATHTYPE) +AC_SUBST(CYGPATH) +AC_SUBST(VPSEP) AC_SUBST(CFLAGS_DEBUG) AC_SUBST(CFLAGS_OPTIMIZE) AC_SUBST(CFLAGS_WARNING) AC_SUBST(EXTRA_CFLAGS) +AC_SUBST(STLIB_LD) AC_SUBST(SHLIB_LD) AC_SUBST(SHLIB_LD_LIBS) AC_SUBST(SHLIB_CFLAGS) @@ -141,13 +160,23 @@ AC_SUBST(LDFLAGS_OPTIMIZE) AC_SUBST(LDFLAGS_CONSOLE) AC_SUBST(LDFLAGS_WINDOW) AC_SUBST(AR) +AC_SUBST(RANLIB) AC_SUBST(RC) +AC_SUBST(RC_OUT) +AC_SUBST(RC_TYPE) +AC_SUBST(RC_INCLUDE) +AC_SUBST(RES) +AC_SUBST(LIBS) +AC_SUBST(LIBS_GUI) AC_SUBST(DLLSUFFIX) +AC_SUBST(LIBPREFIX) AC_SUBST(LIBSUFFIX) AC_SUBST(EXESUFFIX) AC_SUBST(LIBRARIES) AC_SUBST(MAKE_LIB) +AC_SUBST(POST_MAKE_LIB) AC_SUBST(MAKE_DLL) +AC_SUBST(MAKE_EXE) AC_SUBST(TK_XINCLUDES) AC_SUBST(XINCLUDES) -- cgit v0.12