Attachment "win.patch" to
ticket [436314ffff]
added by
mdejong
2001-06-26 15:19:02.
Index: Makefile.in
===================================================================
RCS file: /cvsroot/tcl/tcl/win/Makefile.in,v
retrieving revision 1.45
diff -u -r1.45 Makefile.in
--- Makefile.in 2001/06/22 23:02:53 1.45
+++ Makefile.in 2001/06/26 08:10:23
@@ -102,16 +102,12 @@
WIN_DIR = @srcdir@
COMPAT_DIR = @srcdir@/../compat
-# This is a switch passed to a Cygwin script that generates file
-# names based on the platform.
-PATHTYPE = @PATHTYPE@
-
-# This program converts between Windows native and Cygwin POSIX pathnames.
+# Converts POSIX path to Windows native path.
CYGPATH = @CYGPATH@
-GENERIC_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(GENERIC_DIR)')
-WIN_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(WIN_DIR)')
-ROOT_DIR_NATIVE = $(shell $(CYGPATH) $(PATHTYPE) '$(ROOT_DIR)')
+GENERIC_DIR_NATIVE = $(shell $(CYGPATH) '$(GENERIC_DIR)')
+WIN_DIR_NATIVE = $(shell $(CYGPATH) '$(WIN_DIR)')
+ROOT_DIR_NATIVE = $(shell $(CYGPATH) '$(ROOT_DIR)')
LIBRARY_DIR = $(shell echo '$(ROOT_DIR_NATIVE)/library' | sed 's/\\/\//g' )
@@ -139,17 +135,11 @@
@SET_MAKE@
-# Macro that expands to the first dependency argument with the appropriate
-# path type already resolved.
-
-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.
+# dependencies.
-VPATH = $(GENERIC_DIR)@VPSEP@$(WIN_DIR)@VPSEP@$(COMPAT_DIR) # :
+VPATH = $(GENERIC_DIR):$(WIN_DIR):$(COMPAT_DIR)
AR = @AR@
RANLIB = @RANLIB@
@@ -324,7 +314,7 @@
tclsh.$(RES) $(CC_EXENAME)
cat32.$(OBJEXT): cat.c
- $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
$(CAT32): cat32.$(OBJEXT)
$(CC) $(CFLAGS) cat32.$(OBJEXT) $(CC_EXENAME) $(LDFLAGS_CONSOLE)
@@ -379,45 +369,45 @@
# Special case object targets
tclWinInit.${OBJEXT}: tclWinInit.c
- $(CC) -c $(CC_SWITCHES) -DBUILD_tcl $(EXTFLAGS) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DBUILD_tcl $(EXTFLAGS) @DEPARG@ $(CC_OBJNAME)
testMain.${OBJEXT}: tclAppInit.c
- $(CC) -c $(CC_SWITCHES) -DTCL_TEST $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DTCL_TEST @DEPARG@ $(CC_OBJNAME)
tclTest.${OBJEXT}: tclTest.c
- $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
tclTestObj.${OBJEXT}: tclTestObj.c
- $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
tclWinTest.${OBJEXT}: tclWinTest.c
- $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
tclAppInit.${OBJEXT} : tclAppInit.c
- $(CC) -c $(CC_SWITCHES) $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
# The following objects should be built using the stub interfaces
tclWinReg.${OBJEXT} : tclWinReg.c
- $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS @DEPARG@ $(CC_OBJNAME)
tclWinDde.${OBJEXT} : tclWinDde.c
- $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS @DEPARG@ $(CC_OBJNAME)
# The following objects are part of the stub library and should not
# be built as DLL objects but none of the symbols should be exported
tclStubLib.${OBJEXT}: tclStubLib.c
- $(CC) -c $(CC_SWITCHES) -DSTATIC_BUILD $(DEPARG) $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DSTATIC_BUILD @DEPARG@ $(CC_OBJNAME)
# Implicit rule for all object files that will end up in the Tcl library
.c.${OBJEXT}:
- $(CC) -c $(CC_SWITCHES) -DBUILD_tcl ${DEPARG} $(CC_OBJNAME)
+ $(CC) -c $(CC_SWITCHES) -DBUILD_tcl @DEPARG@ $(CC_OBJNAME)
.rc.$(RES):
- $(RC) @RC_OUT@ $@ @RC_TYPE@ @RC_DEFINES@ @RC_INCLUDE@ "$(GENERIC_DIR_NATIVE)" @RC_INCLUDE@ "$(WIN_DIR_NATIVE)" $(DEPARG)
+ $(RC) @RC_OUT@ $@ @RC_TYPE@ @RC_DEFINES@ @RC_INCLUDE@ "$(GENERIC_DIR_NATIVE)" @RC_INCLUDE@ "$(WIN_DIR_NATIVE)" @DEPARG@
install: all install-binaries install-libraries install-doc
Index: configure.in
===================================================================
RCS file: /cvsroot/tcl/tcl/win/configure.in,v
retrieving revision 1.34
diff -u -r1.34 configure.in
--- configure.in 2001/06/26 00:53:01 1.34
+++ configure.in 2001/06/26 08:10:23
@@ -180,9 +180,8 @@
AC_SUBST(CFG_TCL_EXPORT_FILE_SUFFIX)
AC_SUBST(TCL_SHARED_BUILD)
-AC_SUBST(PATHTYPE)
AC_SUBST(CYGPATH)
-AC_SUBST(VPSEP)
+AC_SUBST(DEPARG)
AC_SUBST(CFLAGS_DEFAULT)
AC_SUBST(CFLAGS_DEBUG)
AC_SUBST(CFLAGS_OPTIMIZE)
Index: tcl.m4
===================================================================
RCS file: /cvsroot/tcl/tcl/win/tcl.m4,v
retrieving revision 1.27
diff -u -r1.27 tcl.m4
--- tcl.m4 2001/06/26 00:53:01 1.27
+++ tcl.m4 2001/06/26 08:10:23
@@ -297,8 +297,6 @@
# LDFLAGS_WINDOW
# CC_OBJNAME
# CC_EXENAME
-# PATHTYPE
-# VPSEP
# CYGPATH
# SHLIB_LD
# SHLIB_LD_LIBS
@@ -331,10 +329,14 @@
# Set some defaults (may get changed below)
EXTRA_CFLAGS=""
- PATHTYPE='-w'
- CYGPATH='cygpath'
- VPSEP=';'
+ AC_CHECK_PROG(CYGPATH, cygpath, cygpath -w, echo)
+ if test "$CYGPATH" = "echo" || test "$ac_cv_cygwin" = "yes"; then
+ DEPARG='"$<"'
+ else
+ DEPARG='"$(shell $(CYGPATH) $<)"'
+ fi
+
# set various compiler flags depending on whether we are using gcc or cl
if test "${GCC}" = "yes" ; then
@@ -351,25 +353,14 @@
RC_INCLUDE=--include
RC_DEFINE=--define
RES=res.o
- MAKE_LIB="\${AR} crv \[$]@"
+ MAKE_LIB="\${AR} cr \[$]@"
POST_MAKE_LIB="\${RANLIB} \[$]@"
MAKE_EXE="\${CC} -o \[$]@"
LIBPREFIX="lib"
- if "$CC" -v 2>&1 | egrep '\/gcc-lib\/i[[3-6]]86[[^\/]]*-cygwin' >/dev/null; then
- mno_cygwin="yes"
+ if test "$ac_cv_cygwin" = "yes"; then
extra_cflags="-mno-cygwin"
extra_ldflags="-mno-cygwin"
- else
- mno_cygwin="no"
- extra_cflags=""
- extra_ldflags=""
- fi
-
- if test "$cross_compiling" = "yes" -o "$mno_cygwin" = "yes"; then
- PATHTYPE=''
- CYGPATH='echo '
- VPSEP=':'
fi
if test "${SHARED_BUILD}" = "0" ; then
@@ -471,7 +462,7 @@
# Specify the CC output file names based on the target name
CC_OBJNAME="-Fo\[$]@"
- CC_EXENAME="-Fe\"\$(shell \$(CYGPATH) \$(PATHTYPE) '\[$]@')\""
+ CC_EXENAME="-Fe\"\$(shell \$(CYGPATH) '\[$]@')\""
# Specify linker flags depending on the type of app being
# built -- Console vs. Window.