* [PATCH] libgui/tcl/tix fixes for recent Cygwin
@ 2001-04-06 19:15 Christopher Faylor
2001-04-10 11:38 ` Syd Polk
0 siblings, 1 reply; 3+ messages in thread
From: Christopher Faylor @ 2001-04-06 19:15 UTC (permalink / raw)
To: insight
The changes below are meant to accomodate recent Cygwin compiler
changes. Cygwin now does not default to defining WIN32 defines unless
used with the -mwin32 option. This patch adds that where appropriate.
It also removes obsolete Cygwin usages and renames CYGWIN32 to CYGWIN.
Basically, this patch attempts to bring these modules into the "modern
age" of Cygwin.
Ok to check in?
cgf
libgui/ChangeLog:
2001-04-06 Christopher Faylor <cgf@redhat.com>
* configure.in: Add test for -mwin32 requirement switch when building
on cygwin.
* configure: Regenerate.
tcl/ChangeLog:
2001-04-06 Christopher Faylor <cgf@redhat.com>
Throughout change __CYGWIN32__ to __CYGWIN__.
* cygwin/configure.in: When targeting cygwin, detect if C compiler
supports -mno-win32 flag and use it if so.
* cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
-mno-win32 test.
(COMPILE): Add EXTRA_CFLAGS variable to options.
* generic/tclEnv.c: Throughout, only compile special Cygwin code if
building under Cygwin and want native windows understanding.
* win/tclWin32Dll.c (DllMain): #ifdef out CYGWIN impure_ptr stuff.
* win/tclWinPipe.c (Tcl_WaitPid): Eliminate old Cygwin consideration
about exit values.
tix/ChangeLog:
2001-04-06 Christopher Faylor <cgf@redhat.com>
* configure.in: Add test for -mwin32 requirement switch when building
on cygwin.
* configure: Regenerate.
* win/Makefile.in (EXTRA_CFLAGS): Add a place to potentially put
-mwin32 flag.
Index: libgui/configure.in
===================================================================
RCS file: /cvs/uberbaum/libgui/configure.in,v
retrieving revision 1.2
diff -u -p -r1.2 configure.in
--- configure.in 2000/06/27 21:53:32 1.2
+++ configure.in 2001/04/07 00:22:26
@@ -46,7 +46,6 @@ if test "$GCC" = "yes"; then
else
LIBGUI_CFLAGS=
fi
-AC_SUBST(LIBGUI_CFLAGS)
AC_CACHE_CHECK([for cygwin32], ide_cv_os_cygwin32,
[AC_EGREP_CPP(lose, [
@@ -102,10 +101,21 @@ CYG_AC_LOAD_ITCLCONFIG
dnl what is the path to itclsh?
AC_CANONICAL_HOST
case ${host} in
-*cygwin*) ITCL_DIR=itcl/itcl/win ;;
+*cygwin*)
+ ITCL_DIR=itcl/itcl/win
+ touch ac$$.c
+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
+ case "$LIBGUI_CFLAGS" in
+ *-mwin32*) ;;
+ *) LIBGUI_CFLAGS="-mwin32 $LIBGUI_CFLAGS" ;;
+ esac
+ fi
+ rm -f ac$$.o ac$$.c
+ ;;
*) ITCL_DIR=itcl/itcl/unix ;;
esac
+AC_SUBST(LIBGUI_CFLAGS)
AC_SUBST(TCL_DEFS)
AC_SUBST(TK_DEFS)
AC_SUBST(TCLHDIR)
Index: tcl/ChangeLog
===================================================================
RCS file: /cvs/uberbaum/tcl/ChangeLog,v
retrieving revision 1.11
diff -u -p -r1.11 ChangeLog
--- ChangeLog 2000/12/14 00:45:22 1.11
+++ ChangeLog 2001/04/07 00:22:40
@@ -1,3 +1,13 @@
+Wed Apr 4 22:06:13 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * cygwin/configure.in: When targeting cygwin, detect if C compiler
+ supports -mno-win32 flag and use it if so.
+ * cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
+ -mno-win32 test.
+ (COMPILE): Add EXTRA_CFLAGS variable to options.
+ * generic/tclEnv.c: Only compile special Cygwin code if building under
+ Cygwin and want native windows understanding.
+
Sat Jun 10 22:43:00 2000 Christopher Faylor <cgf@cygnus.com>
* win/tclWinFile.c (TclMatchFiles): Revert Mon Jun 5 18:48:32 2000
Index: tcl/cygwin/Makefile.in
===================================================================
RCS file: /cvs/uberbaum/tcl/cygwin/Makefile.in,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 Makefile.in
--- Makefile.in 1999/11/17 02:20:44 1.1.1.2
+++ Makefile.in 2001/04/07 00:22:40
@@ -112,7 +112,8 @@ tclTestObj.o tclTimer.o tclUtil.o tclVar
tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o tclUnixFile.o tclUnixNotfy.o \
tclUnixPipe.o tclUnixSock.o tclUnixTest.o tclUnixTime.o tclUnixInit.o
CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+EXTRA_CFLAGS = @EXTRA_CFLAGS@
+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
Index: tcl/cygwin/configure.in
===================================================================
RCS file: /cvs/uberbaum/tcl/cygwin/configure.in,v
retrieving revision 1.1.1.3
diff -u -p -r1.1.1.3 configure.in
--- configure.in 2000/01/18 00:05:13 1.1.1.3
+++ configure.in 2001/04/07 00:22:40
@@ -47,8 +47,23 @@ fi
])
LIB_AC_PROG_CC
+
+case "${target}" in
+*-*-cygwin*)
+ touch ac$$.c
+ if ${CC} -c -mno-win32 ac$$.c >/dev/null 2>&1; then
+ case "$EXTRA_CFLAGS" in
+ *-mno-win32*) ;;
+ *) EXTRA_CFLAGS="-mno-win32 $EXTRA_CFLAGS" ;;
+ esac
+ fi
+ rm -f ac$$.o ac$$.c
+ ;;
+esac
+
AC_CHECK_TOOL(AR, ar, ar)
AC_SUBST(AR)
+AC_SUBST(EXTRA_CFLAGS)
AC_PROG_RANLIB
AC_PROG_INSTALL
Index: tcl/generic/tclAlloc.c
===================================================================
RCS file: /cvs/uberbaum/tcl/generic/tclAlloc.c,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 tclAlloc.c
--- tclAlloc.c 1999/11/09 01:28:43 1.1.1.1
+++ tclAlloc.c 2001/04/07 00:22:40
@@ -26,7 +26,7 @@
# define RCHECK
#endif
-#ifndef __CYGWIN32__
+#ifndef __CYGWIN__
typedef unsigned long caddr_t;
#endif
Index: tcl/generic/tclEnv.c
===================================================================
RCS file: /cvs/uberbaum/tcl/generic/tclEnv.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 tclEnv.c
--- tclEnv.c 2000/02/01 03:15:26 1.1.1.2
+++ tclEnv.c 2001/04/07 00:22:40
@@ -19,9 +19,9 @@
#include "tclPort.h"
/* CYGNUS LOCAL */
-#ifdef __CYGWIN32__
+#if defined(__CYGWIN__) && defined(__WIN32__)
-/* On cygwin32, the environment is imported from the cygwin32 DLL. */
+/* Under cygwin, the environment is imported from the cygwin DLL. */
extern char ***_imp____cygwin_environ;
@@ -83,7 +83,7 @@ void TclSetEnv _ANSI_ARGS_((CONST char
void TclUnsetEnv _ANSI_ARGS_((CONST char *name));
/* CYGNUS LOCAL */
-#ifdef __CYGWIN32__
+#if defined (__CYGWIN__) && defined(__WIN32__)
static void TclCygwin32Putenv _ANSI_ARGS_((CONST char *string));
#endif
\f
@@ -745,12 +745,12 @@ TclFinalizeEnvironment()
}
\f
/* CYGNUS LOCAL */
-#ifdef __CYGWIN32__
+#if defined(__CYGWIN__) && defined(__WIN32__)
#include "windows.h"
-/* When using cygwin32, when an environment variable changes, we need
- to synch with both the cygwin32 environment (in case the
+/* When using cygwin, when an environment variable changes, we need
+ to synch with both the cygwin environment (in case the
application C code calls fork) and the Windows environment (in case
the application TCL code calls exec, which calls the Windows
CreateProcess function). */
@@ -777,7 +777,7 @@ TclCygwin32Putenv(str)
if (*value == '\0')
value = NULL;
- /* Set the cygwin32 environment variable. */
+ /* Set the cygwin environment variable. */
#undef putenv
if (value == NULL)
unsetenv (name);
@@ -816,14 +816,14 @@ TclCygwin32Putenv(str)
{
int size;
- size = cygwin32_posix_to_win32_path_list_buf_size (value);
+ size = cygwin_posix_to_win32_path_list_buf_size (value);
buf = (char *) alloca (size + 1);
- cygwin32_posix_to_win32_path_list (value, buf);
+ cygwin_posix_to_win32_path_list (value, buf);
}
SetEnvironmentVariable (name, buf);
}
}
-#endif /* __CYGWIN32__ */
+#endif /* __CYGWIN__ */
/* END CYGNUS LOCAL */
Index: tcl/win/tclWin32Dll.c
===================================================================
RCS file: /cvs/uberbaum/tcl/win/tclWin32Dll.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 tclWin32Dll.c
--- tclWin32Dll.c 2000/02/01 03:15:29 1.1.1.2
+++ tclWin32Dll.c 2001/04/07 00:22:40
@@ -58,8 +58,8 @@ BOOL APIENTRY DllMain _ANSI_ARGS_((HINS
#ifndef STATIC_BUILD
/* CYGNUS LOCAL */
-#ifdef __CYGWIN32__
-/* cygwin32 requires an impure pointer variable, which must be
+#ifdef __CYGWIN__0
+/* CYGWIN 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;
@@ -119,8 +119,8 @@ DllMain(hInst, reason, reserved)
OSVERSIONINFO os;
/* CYGNUS LOCAL */
-#ifdef __CYGWIN32__
- /* cygwin32 requires the impure data pointer to be initialized
+#ifdef __CYGWIN__0
+ /* Cygwin requires the impure data pointer to be initialized
when the DLL starts up. */
_impure_ptr = _imp__reent_data;
#endif
Index: tcl/win/tclWinFile.c
===================================================================
RCS file: /cvs/uberbaum/tcl/win/tclWinFile.c,v
retrieving revision 1.3
diff -u -p -r1.3 tclWinFile.c
--- tclWinFile.c 2000/06/11 02:45:14 1.3
+++ tclWinFile.c 2001/04/07 00:22:41
@@ -16,7 +16,7 @@
#include "tclWinInt.h"
#include <sys/stat.h>
-#ifndef __CYGWIN32__
+#ifndef __WIN32__
#include <shlobj.h>
#endif
@@ -363,9 +363,9 @@ TclChdir(interp, dirName)
ckfree(currentDir);
currentDir = NULL;
}
- /* CYGNUS LOCAL: On cygwin32, we must use chdir. Otherwise, the
- cygwin32 notion of the current directory will get messed up. */
-#ifdef __CYGWIN32__
+ /* CYGNUS LOCAL: On cygwin, we must use chdir. Otherwise, the
+ cygwin notion of the current directory will get messed up. */
+#ifdef __CYGWIN__
if (chdir(dirName) < 0) {
#else
if (!SetCurrentDirectory(dirName)) {
@@ -567,7 +567,7 @@ TclpStat(path, buf)
result = stat(path, buf);
-#if ! defined (_MSC_VER) && ! defined (__CYGWIN32__)
+#if ! defined (_MSC_VER) && ! defined (__CYGWIN__)
/*
* Borland's stat doesn't take into account localtime.
Index: tcl/win/tclWinPipe.c
===================================================================
RCS file: /cvs/uberbaum/tcl/win/tclWinPipe.c,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 tclWinPipe.c
--- tclWinPipe.c 1999/11/09 01:28:44 1.1.1.1
+++ tclWinPipe.c 2001/04/07 00:22:41
@@ -15,7 +15,7 @@
#include "tclWinInt.h"
/* CYGNUS LOCAL */
-#ifndef __CYGWIN32__
+#ifndef __CYGWIN__
#include <dos.h>
#endif
/* END CYGNUS LOCAL */
@@ -2639,8 +2639,8 @@ Tcl_WaitPid(pid, statPtr, options)
}
} else if (ret != WAIT_FAILED) {
GetExitCodeProcess(infoPtr->hProcess, (DWORD*)statPtr);
-#ifdef __CYGWIN32__
- /* A cygwin32 program that exits because of a signal will set
+#ifdef __OLD_CYGWIN__
+ /* A cygwin program that exits because of a signal will set
the exit status to 0x10000 | (sig << 8). Fix that back
into a standard Unix wait status. */
if ((*statPtr & 0x10000) != 0
Index: tcl/win/tclWinPort.h
===================================================================
RCS file: /cvs/uberbaum/tcl/win/tclWinPort.h,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 tclWinPort.h
--- tclWinPort.h 1999/11/09 01:28:44 1.1.1.1
+++ tclWinPort.h 2001/04/07 00:22:41
@@ -66,10 +66,10 @@
* use by tclAlloc.c.
*/
-/* On cygwin32, we just use the supplied malloc and free, rather than
+/* On cygwin, we just use the supplied malloc and free, rather than
using tclAlloc.c. The cygwin32 malloc is derived from the same
sources as tclAlloc.c, anyhow. */
-#ifdef __CYGWIN32__
+#ifdef __CYGWIN__
#define TclpAlloc(size) malloc(size)
#define TclpFree(ptr) free(ptr)
#define TclpRealloc(ptr, size) realloc(ptr, size)
Index: tix/win/Makefile.in
===================================================================
RCS file: /cvs/uberbaum/tix/win/Makefile.in,v
retrieving revision 1.2
diff -u -p -r1.2 Makefile.in
--- Makefile.in 2000/06/08 03:26:03 1.2
+++ Makefile.in 2001/04/07 00:22:41
@@ -14,6 +14,8 @@ host_alias=@host_alias@
CC = @CC@
CFLAGS = @CFLAGS@
+EXTRA_CFLAGS = @EXTRA_CFLAGS@
+TIX_CFLAGS = $(CFLAGS) $(EXTRA_CFLAGS)
NM = @NM@
AS = @AS@
LD = @LD@
@@ -387,10 +389,10 @@ endif
#
$(TMPDIR)/testMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(CFLAGS) -o $@ $?
+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(TIX_CFLAGS) -o $@ $?
$(TMPDIR)/tixWinMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(CFLAGS) -o $@ $?
+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(TIX_CFLAGS) -o $@ $?
ifeq ($(OBJEXT),o)
@@ -408,10 +410,10 @@ endif
#
.c.$(OBJEXT):
- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
$(TMPDIR)/%.$(OBJEXT): %.c
- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
clean:
rm -f $(TMPDIR)/*.$(OBJEXT) $(TMPDIR)/*.exp $(TMPDIR)/*.def
Index: tix/win/configure.in
===================================================================
RCS file: /cvs/uberbaum/tix/win/configure.in,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 configure.in
--- configure.in 2000/02/07 00:19:29 1.1.1.1
+++ configure.in 2001/04/07 00:22:42
@@ -56,6 +56,19 @@ else
TIX_BUILD_LOCATION="`pwd`\\tcl${TCL_VERSION}"
fi
+case "${host}" in
+*-*-cygwin*)
+ touch ac$$.c
+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
+ case "$EXTRA_CFLAGS" in
+ *-mwin32*) ;;
+ *) EXTRA_CFLAGS="-mwin32 $EXTRA_CFLAGS" ;;
+ esac
+ fi
+ rm -f ac$$.o ac$$.c
+ ;;
+esac
+AC_SUBST(EXTRA_CFLAGS)
AC_SUBST(TIX_BUILD_LIB_SPEC)
AC_SUBST(TIX_LIB_FILE)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] libgui/tcl/tix fixes for recent Cygwin
2001-04-06 19:15 [PATCH] libgui/tcl/tix fixes for recent Cygwin Christopher Faylor
@ 2001-04-10 11:38 ` Syd Polk
2001-04-10 12:41 ` Christopher Faylor
0 siblings, 1 reply; 3+ messages in thread
From: Syd Polk @ 2001-04-10 11:38 UTC (permalink / raw)
To: Christopher Faylor, insight
Approved. These look good, and will enable the eventual upgrade to a newer
version of tcl to go smoother.
At 10:15 PM 4/6/01 -0400, Christopher Faylor wrote:
>The changes below are meant to accomodate recent Cygwin compiler
>changes. Cygwin now does not default to defining WIN32 defines unless
>used with the -mwin32 option. This patch adds that where appropriate.
>It also removes obsolete Cygwin usages and renames CYGWIN32 to CYGWIN.
>
>Basically, this patch attempts to bring these modules into the "modern
>age" of Cygwin.
>
>Ok to check in?
>
>cgf
>
>
>libgui/ChangeLog:
>2001-04-06 Christopher Faylor <cgf@redhat.com>
>
> * configure.in: Add test for -mwin32 requirement switch when
> building
> on cygwin.
> * configure: Regenerate.
>
>tcl/ChangeLog:
>2001-04-06 Christopher Faylor <cgf@redhat.com>
>
> Throughout change __CYGWIN32__ to __CYGWIN__.
> * cygwin/configure.in: When targeting cygwin, detect if C compiler
> supports -mno-win32 flag and use it if so.
> * cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
> -mno-win32 test.
> (COMPILE): Add EXTRA_CFLAGS variable to options.
> * generic/tclEnv.c: Throughout, only compile special Cygwin code if
> building under Cygwin and want native windows understanding.
> * win/tclWin32Dll.c (DllMain): #ifdef out CYGWIN impure_ptr stuff.
> * win/tclWinPipe.c (Tcl_WaitPid): Eliminate old Cygwin consideration
> about exit values.
>
>tix/ChangeLog:
>2001-04-06 Christopher Faylor <cgf@redhat.com>
>
> * configure.in: Add test for -mwin32 requirement switch when building
> on cygwin.
> * configure: Regenerate.
> * win/Makefile.in (EXTRA_CFLAGS): Add a place to potentially put
> -mwin32 flag.
>
>Index: libgui/configure.in
>===================================================================
>RCS file: /cvs/uberbaum/libgui/configure.in,v
>retrieving revision 1.2
>diff -u -p -r1.2 configure.in
>--- configure.in 2000/06/27 21:53:32 1.2
>+++ configure.in 2001/04/07 00:22:26
>@@ -46,7 +46,6 @@ if test "$GCC" = "yes"; then
> else
> LIBGUI_CFLAGS=
> fi
>-AC_SUBST(LIBGUI_CFLAGS)
>
> AC_CACHE_CHECK([for cygwin32], ide_cv_os_cygwin32,
> [AC_EGREP_CPP(lose, [
>@@ -102,10 +101,21 @@ CYG_AC_LOAD_ITCLCONFIG
> dnl what is the path to itclsh?
> AC_CANONICAL_HOST
> case ${host} in
>-*cygwin*) ITCL_DIR=itcl/itcl/win ;;
>+*cygwin*)
>+ ITCL_DIR=itcl/itcl/win
>+ touch ac$$.c
>+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
>+ case "$LIBGUI_CFLAGS" in
>+ *-mwin32*) ;;
>+ *) LIBGUI_CFLAGS="-mwin32 $LIBGUI_CFLAGS" ;;
>+ esac
>+ fi
>+ rm -f ac$$.o ac$$.c
>+ ;;
> *) ITCL_DIR=itcl/itcl/unix ;;
> esac
>
>+AC_SUBST(LIBGUI_CFLAGS)
> AC_SUBST(TCL_DEFS)
> AC_SUBST(TK_DEFS)
> AC_SUBST(TCLHDIR)
>Index: tcl/ChangeLog
>===================================================================
>RCS file: /cvs/uberbaum/tcl/ChangeLog,v
>retrieving revision 1.11
>diff -u -p -r1.11 ChangeLog
>--- ChangeLog 2000/12/14 00:45:22 1.11
>+++ ChangeLog 2001/04/07 00:22:40
>@@ -1,3 +1,13 @@
>+Wed Apr 4 22:06:13 2001 Christopher Faylor <cgf@cygnus.com>
>+
>+ * cygwin/configure.in: When targeting cygwin, detect if C compiler
>+ supports -mno-win32 flag and use it if so.
>+ * cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
>+ -mno-win32 test.
>+ (COMPILE): Add EXTRA_CFLAGS variable to options.
>+ * generic/tclEnv.c: Only compile special Cygwin code if building under
>+ Cygwin and want native windows understanding.
>+
> Sat Jun 10 22:43:00 2000 Christopher Faylor <cgf@cygnus.com>
>
> * win/tclWinFile.c (TclMatchFiles): Revert Mon Jun 5 18:48:32 2000
>Index: tcl/cygwin/Makefile.in
>===================================================================
>RCS file: /cvs/uberbaum/tcl/cygwin/Makefile.in,v
>retrieving revision 1.1.1.2
>diff -u -p -r1.1.1.2 Makefile.in
>--- Makefile.in 1999/11/17 02:20:44 1.1.1.2
>+++ Makefile.in 2001/04/07 00:22:40
>@@ -112,7 +112,8 @@ tclTestObj.o tclTimer.o tclUtil.o tclVar
> tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o tclUnixFile.o tclUnixNotfy.o \
> tclUnixPipe.o tclUnixSock.o tclUnixTest.o tclUnixTime.o tclUnixInit.o
> CFLAGS = @CFLAGS@
>-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
>$(AM_CFLAGS) $(CFLAGS)
>+EXTRA_CFLAGS = @EXTRA_CFLAGS@
>+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
>$(AM_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)
> CCLD = $(CC)
> LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
> DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
>Index: tcl/cygwin/configure.in
>===================================================================
>RCS file: /cvs/uberbaum/tcl/cygwin/configure.in,v
>retrieving revision 1.1.1.3
>diff -u -p -r1.1.1.3 configure.in
>--- configure.in 2000/01/18 00:05:13 1.1.1.3
>+++ configure.in 2001/04/07 00:22:40
>@@ -47,8 +47,23 @@ fi
> ])
>
> LIB_AC_PROG_CC
>+
>+case "${target}" in
>+*-*-cygwin*)
>+ touch ac$$.c
>+ if ${CC} -c -mno-win32 ac$$.c >/dev/null 2>&1; then
>+ case "$EXTRA_CFLAGS" in
>+ *-mno-win32*) ;;
>+ *) EXTRA_CFLAGS="-mno-win32 $EXTRA_CFLAGS" ;;
>+ esac
>+ fi
>+ rm -f ac$$.o ac$$.c
>+ ;;
>+esac
>+
> AC_CHECK_TOOL(AR, ar, ar)
> AC_SUBST(AR)
>+AC_SUBST(EXTRA_CFLAGS)
> AC_PROG_RANLIB
> AC_PROG_INSTALL
>
>Index: tcl/generic/tclAlloc.c
>===================================================================
>RCS file: /cvs/uberbaum/tcl/generic/tclAlloc.c,v
>retrieving revision 1.1.1.1
>diff -u -p -r1.1.1.1 tclAlloc.c
>--- tclAlloc.c 1999/11/09 01:28:43 1.1.1.1
>+++ tclAlloc.c 2001/04/07 00:22:40
>@@ -26,7 +26,7 @@
> # define RCHECK
> #endif
>
>-#ifndef __CYGWIN32__
>+#ifndef __CYGWIN__
> typedef unsigned long caddr_t;
> #endif
>
>Index: tcl/generic/tclEnv.c
>===================================================================
>RCS file: /cvs/uberbaum/tcl/generic/tclEnv.c,v
>retrieving revision 1.1.1.2
>diff -u -p -r1.1.1.2 tclEnv.c
>--- tclEnv.c 2000/02/01 03:15:26 1.1.1.2
>+++ tclEnv.c 2001/04/07 00:22:40
>@@ -19,9 +19,9 @@
> #include "tclPort.h"
>
> /* CYGNUS LOCAL */
>-#ifdef __CYGWIN32__
>+#if defined(__CYGWIN__) && defined(__WIN32__)
>
>-/* On cygwin32, the environment is imported from the cygwin32 DLL. */
>+/* Under cygwin, the environment is imported from the cygwin DLL. */
>
> extern char ***_imp____cygwin_environ;
>
>@@ -83,7 +83,7 @@ void TclSetEnv _ANSI_ARGS_((CONST char
> void TclUnsetEnv _ANSI_ARGS_((CONST char *name));
>
> /* CYGNUS LOCAL */
>-#ifdef __CYGWIN32__
>+#if defined (__CYGWIN__) && defined(__WIN32__)
> static void TclCygwin32Putenv _ANSI_ARGS_((CONST char *string));
> #endif
>
>@@ -745,12 +745,12 @@ TclFinalizeEnvironment()
> }
>
> /* CYGNUS LOCAL */
>-#ifdef __CYGWIN32__
>+#if defined(__CYGWIN__) && defined(__WIN32__)
>
> #include "windows.h"
>
>-/* When using cygwin32, when an environment variable changes, we need
>- to synch with both the cygwin32 environment (in case the
>+/* When using cygwin, when an environment variable changes, we need
>+ to synch with both the cygwin environment (in case the
> application C code calls fork) and the Windows environment (in case
> the application TCL code calls exec, which calls the Windows
> CreateProcess function). */
>@@ -777,7 +777,7 @@ TclCygwin32Putenv(str)
> if (*value == '\0')
> value = NULL;
>
>- /* Set the cygwin32 environment variable. */
>+ /* Set the cygwin environment variable. */
> #undef putenv
> if (value == NULL)
> unsetenv (name);
>@@ -816,14 +816,14 @@ TclCygwin32Putenv(str)
> {
> int size;
>
>- size = cygwin32_posix_to_win32_path_list_buf_size (value);
>+ size = cygwin_posix_to_win32_path_list_buf_size (value);
> buf = (char *) alloca (size + 1);
>- cygwin32_posix_to_win32_path_list (value, buf);
>+ cygwin_posix_to_win32_path_list (value, buf);
> }
>
> SetEnvironmentVariable (name, buf);
> }
> }
>
>-#endif /* __CYGWIN32__ */
>+#endif /* __CYGWIN__ */
> /* END CYGNUS LOCAL */
>Index: tcl/win/tclWin32Dll.c
>===================================================================
>RCS file: /cvs/uberbaum/tcl/win/tclWin32Dll.c,v
>retrieving revision 1.1.1.2
>diff -u -p -r1.1.1.2 tclWin32Dll.c
>--- tclWin32Dll.c 2000/02/01 03:15:29 1.1.1.2
>+++ tclWin32Dll.c 2001/04/07 00:22:40
>@@ -58,8 +58,8 @@ BOOL APIENTRY DllMain _ANSI_ARGS_((HINS
> #ifndef STATIC_BUILD
>
> /* CYGNUS LOCAL */
>-#ifdef __CYGWIN32__
>-/* cygwin32 requires an impure pointer variable, which must be
>+#ifdef __CYGWIN__0
>+/* CYGWIN 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;
>@@ -119,8 +119,8 @@ DllMain(hInst, reason, reserved)
> OSVERSIONINFO os;
>
> /* CYGNUS LOCAL */
>-#ifdef __CYGWIN32__
>- /* cygwin32 requires the impure data pointer to be initialized
>+#ifdef __CYGWIN__0
>+ /* Cygwin requires the impure data pointer to be initialized
> when the DLL starts up. */
> _impure_ptr = _imp__reent_data;
> #endif
>Index: tcl/win/tclWinFile.c
>===================================================================
>RCS file: /cvs/uberbaum/tcl/win/tclWinFile.c,v
>retrieving revision 1.3
>diff -u -p -r1.3 tclWinFile.c
>--- tclWinFile.c 2000/06/11 02:45:14 1.3
>+++ tclWinFile.c 2001/04/07 00:22:41
>@@ -16,7 +16,7 @@
>
> #include "tclWinInt.h"
> #include <sys/stat.h>
>-#ifndef __CYGWIN32__
>+#ifndef __WIN32__
> #include <shlobj.h>
> #endif
>
>@@ -363,9 +363,9 @@ TclChdir(interp, dirName)
> ckfree(currentDir);
> currentDir = NULL;
> }
>- /* CYGNUS LOCAL: On cygwin32, we must use chdir. Otherwise, the
>- cygwin32 notion of the current directory will get messed up. */
>-#ifdef __CYGWIN32__
>+ /* CYGNUS LOCAL: On cygwin, we must use chdir. Otherwise, the
>+ cygwin notion of the current directory will get messed up. */
>+#ifdef __CYGWIN__
> if (chdir(dirName) < 0) {
> #else
> if (!SetCurrentDirectory(dirName)) {
>@@ -567,7 +567,7 @@ TclpStat(path, buf)
>
> result = stat(path, buf);
>
>-#if ! defined (_MSC_VER) && ! defined (__CYGWIN32__)
>+#if ! defined (_MSC_VER) && ! defined (__CYGWIN__)
>
> /*
> * Borland's stat doesn't take into account localtime.
>Index: tcl/win/tclWinPipe.c
>===================================================================
>RCS file: /cvs/uberbaum/tcl/win/tclWinPipe.c,v
>retrieving revision 1.1.1.1
>diff -u -p -r1.1.1.1 tclWinPipe.c
>--- tclWinPipe.c 1999/11/09 01:28:44 1.1.1.1
>+++ tclWinPipe.c 2001/04/07 00:22:41
>@@ -15,7 +15,7 @@
> #include "tclWinInt.h"
>
> /* CYGNUS LOCAL */
>-#ifndef __CYGWIN32__
>+#ifndef __CYGWIN__
> #include <dos.h>
> #endif
> /* END CYGNUS LOCAL */
>@@ -2639,8 +2639,8 @@ Tcl_WaitPid(pid, statPtr, options)
> }
> } else if (ret != WAIT_FAILED) {
> GetExitCodeProcess(infoPtr->hProcess, (DWORD*)statPtr);
>-#ifdef __CYGWIN32__
>- /* A cygwin32 program that exits because of a signal will set
>+#ifdef __OLD_CYGWIN__
>+ /* A cygwin program that exits because of a signal will set
> the exit status to 0x10000 | (sig << 8). Fix that back
> into a standard Unix wait status. */
> if ((*statPtr & 0x10000) != 0
>Index: tcl/win/tclWinPort.h
>===================================================================
>RCS file: /cvs/uberbaum/tcl/win/tclWinPort.h,v
>retrieving revision 1.1.1.1
>diff -u -p -r1.1.1.1 tclWinPort.h
>--- tclWinPort.h 1999/11/09 01:28:44 1.1.1.1
>+++ tclWinPort.h 2001/04/07 00:22:41
>@@ -66,10 +66,10 @@
> * use by tclAlloc.c.
> */
>
>-/* On cygwin32, we just use the supplied malloc and free, rather than
>+/* On cygwin, we just use the supplied malloc and free, rather than
> using tclAlloc.c. The cygwin32 malloc is derived from the same
> sources as tclAlloc.c, anyhow. */
>-#ifdef __CYGWIN32__
>+#ifdef __CYGWIN__
> #define TclpAlloc(size) malloc(size)
> #define TclpFree(ptr) free(ptr)
> #define TclpRealloc(ptr, size) realloc(ptr, size)
>Index: tix/win/Makefile.in
>===================================================================
>RCS file: /cvs/uberbaum/tix/win/Makefile.in,v
>retrieving revision 1.2
>diff -u -p -r1.2 Makefile.in
>--- Makefile.in 2000/06/08 03:26:03 1.2
>+++ Makefile.in 2001/04/07 00:22:41
>@@ -14,6 +14,8 @@ host_alias=@host_alias@
>
> CC = @CC@
> CFLAGS = @CFLAGS@
>+EXTRA_CFLAGS = @EXTRA_CFLAGS@
>+TIX_CFLAGS = $(CFLAGS) $(EXTRA_CFLAGS)
> NM = @NM@
> AS = @AS@
> LD = @LD@
>@@ -387,10 +389,10 @@ endif
> #
>
> $(TMPDIR)/testMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
>- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(CFLAGS) -o $@ $?
>+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(TIX_CFLAGS) -o
>$@ $?
>
> $(TMPDIR)/tixWinMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
>- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(CFLAGS) -o $@ $?
>+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(TIX_CFLAGS) -o $@ $?
>
> ifeq ($(OBJEXT),o)
>
>@@ -408,10 +410,10 @@ endif
> #
>
> .c.$(OBJEXT):
>- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
>+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c
>-o $@ $<
>
> $(TMPDIR)/%.$(OBJEXT): %.c
>- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
>+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c
>-o $@ $<
>
> clean:
> rm -f $(TMPDIR)/*.$(OBJEXT) $(TMPDIR)/*.exp $(TMPDIR)/*.def
>Index: tix/win/configure.in
>===================================================================
>RCS file: /cvs/uberbaum/tix/win/configure.in,v
>retrieving revision 1.1.1.1
>diff -u -p -r1.1.1.1 configure.in
>--- configure.in 2000/02/07 00:19:29 1.1.1.1
>+++ configure.in 2001/04/07 00:22:42
>@@ -56,6 +56,19 @@ else
> TIX_BUILD_LOCATION="`pwd`\\tcl${TCL_VERSION}"
> fi
>
>+case "${host}" in
>+*-*-cygwin*)
>+ touch ac$$.c
>+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
>+ case "$EXTRA_CFLAGS" in
>+ *-mwin32*) ;;
>+ *) EXTRA_CFLAGS="-mwin32 $EXTRA_CFLAGS" ;;
>+ esac
>+ fi
>+ rm -f ac$$.o ac$$.c
>+ ;;
>+esac
>+AC_SUBST(EXTRA_CFLAGS)
>
> AC_SUBST(TIX_BUILD_LIB_SPEC)
> AC_SUBST(TIX_LIB_FILE)
Syd Polk spolk@redhat.com
Engineering Manager +1 408 543 9430
Red Hat, Inc.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] libgui/tcl/tix fixes for recent Cygwin
2001-04-10 11:38 ` Syd Polk
@ 2001-04-10 12:41 ` Christopher Faylor
0 siblings, 0 replies; 3+ messages in thread
From: Christopher Faylor @ 2001-04-10 12:41 UTC (permalink / raw)
To: Syd Polk; +Cc: insight
Gracias!
cgf
On Tue, Apr 10, 2001 at 11:38:06AM -0700, Syd Polk wrote:
>Approved. These look good, and will enable the eventual upgrade to a newer
>version of tcl to go smoother.
>
>At 10:15 PM 4/6/01 -0400, Christopher Faylor wrote:
>>The changes below are meant to accomodate recent Cygwin compiler
>>changes. Cygwin now does not default to defining WIN32 defines unless
>>used with the -mwin32 option. This patch adds that where appropriate.
>>It also removes obsolete Cygwin usages and renames CYGWIN32 to CYGWIN.
>>
>>Basically, this patch attempts to bring these modules into the "modern
>>age" of Cygwin.
>>
>>Ok to check in?
>>
>>cgf
>>
>>
>>libgui/ChangeLog:
>>2001-04-06 Christopher Faylor <cgf@redhat.com>
>>
>> * configure.in: Add test for -mwin32 requirement switch when
>> building
>> on cygwin.
>> * configure: Regenerate.
>>
>>tcl/ChangeLog:
>>2001-04-06 Christopher Faylor <cgf@redhat.com>
>>
>> Throughout change __CYGWIN32__ to __CYGWIN__.
>> * cygwin/configure.in: When targeting cygwin, detect if C compiler
>> supports -mno-win32 flag and use it if so.
>> * cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
>> -mno-win32 test.
>> (COMPILE): Add EXTRA_CFLAGS variable to options.
>> * generic/tclEnv.c: Throughout, only compile special Cygwin code if
>> building under Cygwin and want native windows understanding.
>> * win/tclWin32Dll.c (DllMain): #ifdef out CYGWIN impure_ptr stuff.
>> * win/tclWinPipe.c (Tcl_WaitPid): Eliminate old Cygwin consideration
>> about exit values.
>>
>>tix/ChangeLog:
>>2001-04-06 Christopher Faylor <cgf@redhat.com>
>>
>> * configure.in: Add test for -mwin32 requirement switch when building
>> on cygwin.
>> * configure: Regenerate.
>> * win/Makefile.in (EXTRA_CFLAGS): Add a place to potentially put
>> -mwin32 flag.
>>
>>Index: libgui/configure.in
>>===================================================================
>>RCS file: /cvs/uberbaum/libgui/configure.in,v
>>retrieving revision 1.2
>>diff -u -p -r1.2 configure.in
>>--- configure.in 2000/06/27 21:53:32 1.2
>>+++ configure.in 2001/04/07 00:22:26
>>@@ -46,7 +46,6 @@ if test "$GCC" = "yes"; then
>> else
>> LIBGUI_CFLAGS=
>> fi
>>-AC_SUBST(LIBGUI_CFLAGS)
>>
>> AC_CACHE_CHECK([for cygwin32], ide_cv_os_cygwin32,
>> [AC_EGREP_CPP(lose, [
>>@@ -102,10 +101,21 @@ CYG_AC_LOAD_ITCLCONFIG
>> dnl what is the path to itclsh?
>> AC_CANONICAL_HOST
>> case ${host} in
>>-*cygwin*) ITCL_DIR=itcl/itcl/win ;;
>>+*cygwin*)
>>+ ITCL_DIR=itcl/itcl/win
>>+ touch ac$$.c
>>+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
>>+ case "$LIBGUI_CFLAGS" in
>>+ *-mwin32*) ;;
>>+ *) LIBGUI_CFLAGS="-mwin32 $LIBGUI_CFLAGS" ;;
>>+ esac
>>+ fi
>>+ rm -f ac$$.o ac$$.c
>>+ ;;
>> *) ITCL_DIR=itcl/itcl/unix ;;
>> esac
>>
>>+AC_SUBST(LIBGUI_CFLAGS)
>> AC_SUBST(TCL_DEFS)
>> AC_SUBST(TK_DEFS)
>> AC_SUBST(TCLHDIR)
>>Index: tcl/ChangeLog
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/ChangeLog,v
>>retrieving revision 1.11
>>diff -u -p -r1.11 ChangeLog
>>--- ChangeLog 2000/12/14 00:45:22 1.11
>>+++ ChangeLog 2001/04/07 00:22:40
>>@@ -1,3 +1,13 @@
>>+Wed Apr 4 22:06:13 2001 Christopher Faylor <cgf@cygnus.com>
>>+
>>+ * cygwin/configure.in: When targeting cygwin, detect if C compiler
>>+ supports -mno-win32 flag and use it if so.
>>+ * cygwin/Makefile.in (EXTRA_CFLAGS): New variable. Holds results of
>>+ -mno-win32 test.
>>+ (COMPILE): Add EXTRA_CFLAGS variable to options.
>>+ * generic/tclEnv.c: Only compile special Cygwin code if building under
>>+ Cygwin and want native windows understanding.
>>+
>> Sat Jun 10 22:43:00 2000 Christopher Faylor <cgf@cygnus.com>
>>
>> * win/tclWinFile.c (TclMatchFiles): Revert Mon Jun 5 18:48:32 2000
>>Index: tcl/cygwin/Makefile.in
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/cygwin/Makefile.in,v
>>retrieving revision 1.1.1.2
>>diff -u -p -r1.1.1.2 Makefile.in
>>--- Makefile.in 1999/11/17 02:20:44 1.1.1.2
>>+++ Makefile.in 2001/04/07 00:22:40
>>@@ -112,7 +112,8 @@ tclTestObj.o tclTimer.o tclUtil.o tclVar
>> tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o tclUnixFile.o tclUnixNotfy.o \
>> tclUnixPipe.o tclUnixSock.o tclUnixTest.o tclUnixTime.o tclUnixInit.o
>> CFLAGS = @CFLAGS@
>>-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
>>$(AM_CFLAGS) $(CFLAGS)
>>+EXTRA_CFLAGS = @EXTRA_CFLAGS@
>>+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
>>$(AM_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)
>> CCLD = $(CC)
>> LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
>> DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
>>Index: tcl/cygwin/configure.in
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/cygwin/configure.in,v
>>retrieving revision 1.1.1.3
>>diff -u -p -r1.1.1.3 configure.in
>>--- configure.in 2000/01/18 00:05:13 1.1.1.3
>>+++ configure.in 2001/04/07 00:22:40
>>@@ -47,8 +47,23 @@ fi
>> ])
>>
>> LIB_AC_PROG_CC
>>+
>>+case "${target}" in
>>+*-*-cygwin*)
>>+ touch ac$$.c
>>+ if ${CC} -c -mno-win32 ac$$.c >/dev/null 2>&1; then
>>+ case "$EXTRA_CFLAGS" in
>>+ *-mno-win32*) ;;
>>+ *) EXTRA_CFLAGS="-mno-win32 $EXTRA_CFLAGS" ;;
>>+ esac
>>+ fi
>>+ rm -f ac$$.o ac$$.c
>>+ ;;
>>+esac
>>+
>> AC_CHECK_TOOL(AR, ar, ar)
>> AC_SUBST(AR)
>>+AC_SUBST(EXTRA_CFLAGS)
>> AC_PROG_RANLIB
>> AC_PROG_INSTALL
>>
>>Index: tcl/generic/tclAlloc.c
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/generic/tclAlloc.c,v
>>retrieving revision 1.1.1.1
>>diff -u -p -r1.1.1.1 tclAlloc.c
>>--- tclAlloc.c 1999/11/09 01:28:43 1.1.1.1
>>+++ tclAlloc.c 2001/04/07 00:22:40
>>@@ -26,7 +26,7 @@
>> # define RCHECK
>> #endif
>>
>>-#ifndef __CYGWIN32__
>>+#ifndef __CYGWIN__
>> typedef unsigned long caddr_t;
>> #endif
>>
>>Index: tcl/generic/tclEnv.c
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/generic/tclEnv.c,v
>>retrieving revision 1.1.1.2
>>diff -u -p -r1.1.1.2 tclEnv.c
>>--- tclEnv.c 2000/02/01 03:15:26 1.1.1.2
>>+++ tclEnv.c 2001/04/07 00:22:40
>>@@ -19,9 +19,9 @@
>> #include "tclPort.h"
>>
>> /* CYGNUS LOCAL */
>>-#ifdef __CYGWIN32__
>>+#if defined(__CYGWIN__) && defined(__WIN32__)
>>
>>-/* On cygwin32, the environment is imported from the cygwin32 DLL. */
>>+/* Under cygwin, the environment is imported from the cygwin DLL. */
>>
>> extern char ***_imp____cygwin_environ;
>>
>>@@ -83,7 +83,7 @@ void TclSetEnv _ANSI_ARGS_((CONST char
>> void TclUnsetEnv _ANSI_ARGS_((CONST char *name));
>>
>> /* CYGNUS LOCAL */
>>-#ifdef __CYGWIN32__
>>+#if defined (__CYGWIN__) && defined(__WIN32__)
>> static void TclCygwin32Putenv _ANSI_ARGS_((CONST char *string));
>> #endif
>>
>>@@ -745,12 +745,12 @@ TclFinalizeEnvironment()
>> }
>>
>> /* CYGNUS LOCAL */
>>-#ifdef __CYGWIN32__
>>+#if defined(__CYGWIN__) && defined(__WIN32__)
>>
>> #include "windows.h"
>>
>>-/* When using cygwin32, when an environment variable changes, we need
>>- to synch with both the cygwin32 environment (in case the
>>+/* When using cygwin, when an environment variable changes, we need
>>+ to synch with both the cygwin environment (in case the
>> application C code calls fork) and the Windows environment (in case
>> the application TCL code calls exec, which calls the Windows
>> CreateProcess function). */
>>@@ -777,7 +777,7 @@ TclCygwin32Putenv(str)
>> if (*value == '\0')
>> value = NULL;
>>
>>- /* Set the cygwin32 environment variable. */
>>+ /* Set the cygwin environment variable. */
>> #undef putenv
>> if (value == NULL)
>> unsetenv (name);
>>@@ -816,14 +816,14 @@ TclCygwin32Putenv(str)
>> {
>> int size;
>>
>>- size = cygwin32_posix_to_win32_path_list_buf_size (value);
>>+ size = cygwin_posix_to_win32_path_list_buf_size (value);
>> buf = (char *) alloca (size + 1);
>>- cygwin32_posix_to_win32_path_list (value, buf);
>>+ cygwin_posix_to_win32_path_list (value, buf);
>> }
>>
>> SetEnvironmentVariable (name, buf);
>> }
>> }
>>
>>-#endif /* __CYGWIN32__ */
>>+#endif /* __CYGWIN__ */
>> /* END CYGNUS LOCAL */
>>Index: tcl/win/tclWin32Dll.c
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/win/tclWin32Dll.c,v
>>retrieving revision 1.1.1.2
>>diff -u -p -r1.1.1.2 tclWin32Dll.c
>>--- tclWin32Dll.c 2000/02/01 03:15:29 1.1.1.2
>>+++ tclWin32Dll.c 2001/04/07 00:22:40
>>@@ -58,8 +58,8 @@ BOOL APIENTRY DllMain _ANSI_ARGS_((HINS
>> #ifndef STATIC_BUILD
>>
>> /* CYGNUS LOCAL */
>>-#ifdef __CYGWIN32__
>>-/* cygwin32 requires an impure pointer variable, which must be
>>+#ifdef __CYGWIN__0
>>+/* CYGWIN 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;
>>@@ -119,8 +119,8 @@ DllMain(hInst, reason, reserved)
>> OSVERSIONINFO os;
>>
>> /* CYGNUS LOCAL */
>>-#ifdef __CYGWIN32__
>>- /* cygwin32 requires the impure data pointer to be initialized
>>+#ifdef __CYGWIN__0
>>+ /* Cygwin requires the impure data pointer to be initialized
>> when the DLL starts up. */
>> _impure_ptr = _imp__reent_data;
>> #endif
>>Index: tcl/win/tclWinFile.c
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/win/tclWinFile.c,v
>>retrieving revision 1.3
>>diff -u -p -r1.3 tclWinFile.c
>>--- tclWinFile.c 2000/06/11 02:45:14 1.3
>>+++ tclWinFile.c 2001/04/07 00:22:41
>>@@ -16,7 +16,7 @@
>>
>> #include "tclWinInt.h"
>> #include <sys/stat.h>
>>-#ifndef __CYGWIN32__
>>+#ifndef __WIN32__
>> #include <shlobj.h>
>> #endif
>>
>>@@ -363,9 +363,9 @@ TclChdir(interp, dirName)
>> ckfree(currentDir);
>> currentDir = NULL;
>> }
>>- /* CYGNUS LOCAL: On cygwin32, we must use chdir. Otherwise, the
>>- cygwin32 notion of the current directory will get messed up. */
>>-#ifdef __CYGWIN32__
>>+ /* CYGNUS LOCAL: On cygwin, we must use chdir. Otherwise, the
>>+ cygwin notion of the current directory will get messed up. */
>>+#ifdef __CYGWIN__
>> if (chdir(dirName) < 0) {
>> #else
>> if (!SetCurrentDirectory(dirName)) {
>>@@ -567,7 +567,7 @@ TclpStat(path, buf)
>>
>> result = stat(path, buf);
>>
>>-#if ! defined (_MSC_VER) && ! defined (__CYGWIN32__)
>>+#if ! defined (_MSC_VER) && ! defined (__CYGWIN__)
>>
>> /*
>> * Borland's stat doesn't take into account localtime.
>>Index: tcl/win/tclWinPipe.c
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/win/tclWinPipe.c,v
>>retrieving revision 1.1.1.1
>>diff -u -p -r1.1.1.1 tclWinPipe.c
>>--- tclWinPipe.c 1999/11/09 01:28:44 1.1.1.1
>>+++ tclWinPipe.c 2001/04/07 00:22:41
>>@@ -15,7 +15,7 @@
>> #include "tclWinInt.h"
>>
>> /* CYGNUS LOCAL */
>>-#ifndef __CYGWIN32__
>>+#ifndef __CYGWIN__
>> #include <dos.h>
>> #endif
>> /* END CYGNUS LOCAL */
>>@@ -2639,8 +2639,8 @@ Tcl_WaitPid(pid, statPtr, options)
>> }
>> } else if (ret != WAIT_FAILED) {
>> GetExitCodeProcess(infoPtr->hProcess, (DWORD*)statPtr);
>>-#ifdef __CYGWIN32__
>>- /* A cygwin32 program that exits because of a signal will set
>>+#ifdef __OLD_CYGWIN__
>>+ /* A cygwin program that exits because of a signal will set
>> the exit status to 0x10000 | (sig << 8). Fix that back
>> into a standard Unix wait status. */
>> if ((*statPtr & 0x10000) != 0
>>Index: tcl/win/tclWinPort.h
>>===================================================================
>>RCS file: /cvs/uberbaum/tcl/win/tclWinPort.h,v
>>retrieving revision 1.1.1.1
>>diff -u -p -r1.1.1.1 tclWinPort.h
>>--- tclWinPort.h 1999/11/09 01:28:44 1.1.1.1
>>+++ tclWinPort.h 2001/04/07 00:22:41
>>@@ -66,10 +66,10 @@
>> * use by tclAlloc.c.
>> */
>>
>>-/* On cygwin32, we just use the supplied malloc and free, rather than
>>+/* On cygwin, we just use the supplied malloc and free, rather than
>> using tclAlloc.c. The cygwin32 malloc is derived from the same
>> sources as tclAlloc.c, anyhow. */
>>-#ifdef __CYGWIN32__
>>+#ifdef __CYGWIN__
>> #define TclpAlloc(size) malloc(size)
>> #define TclpFree(ptr) free(ptr)
>> #define TclpRealloc(ptr, size) realloc(ptr, size)
>>Index: tix/win/Makefile.in
>>===================================================================
>>RCS file: /cvs/uberbaum/tix/win/Makefile.in,v
>>retrieving revision 1.2
>>diff -u -p -r1.2 Makefile.in
>>--- Makefile.in 2000/06/08 03:26:03 1.2
>>+++ Makefile.in 2001/04/07 00:22:41
>>@@ -14,6 +14,8 @@ host_alias=@host_alias@
>>
>> CC = @CC@
>> CFLAGS = @CFLAGS@
>>+EXTRA_CFLAGS = @EXTRA_CFLAGS@
>>+TIX_CFLAGS = $(CFLAGS) $(EXTRA_CFLAGS)
>> NM = @NM@
>> AS = @AS@
>> LD = @LD@
>>@@ -387,10 +389,10 @@ endif
>> #
>>
>> $(TMPDIR)/testMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
>>- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(CFLAGS) -o $@ $?
>>+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD -DTK_TEST $(TIX_CFLAGS) -o
>>$@ $?
>>
>> $(TMPDIR)/tixWinMain.$(OBJEXT): $(ROOT)/win/tixWinMain.c
>>- $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(CFLAGS) -o $@ $?
>>+ $(CC) -c $(TK_INCLUDES) -DSTATIC_BUILD $(TIX_CFLAGS) -o $@ $?
>>
>> ifeq ($(OBJEXT),o)
>>
>>@@ -408,10 +410,10 @@ endif
>> #
>>
>> .c.$(OBJEXT):
>>- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
>>+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c
>>-o $@ $<
>>
>> $(TMPDIR)/%.$(OBJEXT): %.c
>>- $(CC) -c $(CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c -o $@ $<
>>+ $(CC) -c $(TIX_CFLAGS) -DDLL_BUILD -DBUILD_tix $(TK_INCLUDES) -c
>>-o $@ $<
>>
>> clean:
>> rm -f $(TMPDIR)/*.$(OBJEXT) $(TMPDIR)/*.exp $(TMPDIR)/*.def
>>Index: tix/win/configure.in
>>===================================================================
>>RCS file: /cvs/uberbaum/tix/win/configure.in,v
>>retrieving revision 1.1.1.1
>>diff -u -p -r1.1.1.1 configure.in
>>--- configure.in 2000/02/07 00:19:29 1.1.1.1
>>+++ configure.in 2001/04/07 00:22:42
>>@@ -56,6 +56,19 @@ else
>> TIX_BUILD_LOCATION="`pwd`\\tcl${TCL_VERSION}"
>> fi
>>
>>+case "${host}" in
>>+*-*-cygwin*)
>>+ touch ac$$.c
>>+ if ${CC} -c -mwin32 ac$$.c >/dev/null 2>&1; then
>>+ case "$EXTRA_CFLAGS" in
>>+ *-mwin32*) ;;
>>+ *) EXTRA_CFLAGS="-mwin32 $EXTRA_CFLAGS" ;;
>>+ esac
>>+ fi
>>+ rm -f ac$$.o ac$$.c
>>+ ;;
>>+esac
>>+AC_SUBST(EXTRA_CFLAGS)
>>
>> AC_SUBST(TIX_BUILD_LIB_SPEC)
>> AC_SUBST(TIX_LIB_FILE)
>
>Syd Polk spolk@redhat.com
>Engineering Manager +1 408 543 9430
>Red Hat, Inc.
>
>
--
cgf@cygnus.com Red Hat, Inc.
http://sources.redhat.com/ http://www.redhat.com/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2001-04-10 12:41 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-04-06 19:15 [PATCH] libgui/tcl/tix fixes for recent Cygwin Christopher Faylor
2001-04-10 11:38 ` Syd Polk
2001-04-10 12:41 ` Christopher Faylor
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).