9c8b866
diff -ur blt2.4z/library/Makefile.vc blt2.4z-8.5.2/library/Makefile.vc
9c8b866
--- blt2.4z/library/Makefile.vc	2002-08-21 08:20:51.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/library/Makefile.vc	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -6,7 +6,6 @@
9c8b866
 include ../win/makedefs
9c8b866
 
9c8b866
 version =	$(BLT_MAJOR_VERSION).$(BLT_MINOR_VERSION)
9c8b866
-pkgdir =	$(libdir)/tcl$(v1)/blt$(version)
9c8b866
 srcdir =	.
9c8b866
 
9c8b866
 cursors = 	treeview.cur
9c8b866
@@ -30,8 +29,7 @@
9c8b866
 		tclIndex
9c8b866
 
9c8b866
 instdirs =	$(prefix) $(exec_prefix) $(libdir) \
9c8b866
-		$(scriptdir) $(scriptdir)/dd_protocols $(libdir)/tcl$(v1) \
9c8b866
-		$(pkgdir)
9c8b866
+		$(scriptdir) $(scriptdir)/dd_protocols $(libdir)/tcl$(v1)
9c8b866
 
9c8b866
 all: build-pkgindex
9c8b866
 
9c8b866
@@ -62,7 +60,6 @@
9c8b866
 
9c8b866
 install-pkgindex: pkgIndex.tcl
9c8b866
 	$(INSTALL_DATA) pkgIndex.tcl $(scriptdir)
9c8b866
-	$(INSTALL_DATA) pkgIndex.tcl $(pkgdir)
9c8b866
 
9c8b866
 clean:
9c8b866
 	$(RM) pkgIndex.tcl
9c8b866
diff -ur blt2.4z/Makefile.in blt2.4z-8.5.2/Makefile.in
9c8b866
--- blt2.4z/Makefile.in	2002-02-19 01:11:43.000000000 +0100
9c8b866
+++ blt2.4z-8.5.2/Makefile.in	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -72,4 +72,8 @@
9c8b866
 	config.status config.cache config.log Makefile 
9c8b866
 
9c8b866
 distclean: clean
9c8b866
+	(cd src; $(MAKE) distclean)
9c8b866
+	(cd library; $(MAKE) distclean)
9c8b866
+	(cd man; $(MAKE) distclean)
9c8b866
+	(cd demos; $(MAKE) distclean)
9c8b866
 	$(RM) $(GENERATED_FILES)
9c8b866
diff -ur blt2.4z/src/bltBgexec.c blt2.4z-8.5.2/src/bltBgexec.c
9c8b866
--- blt2.4z/src/bltBgexec.c	2002-09-19 00:30:50.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltBgexec.c	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -58,7 +58,7 @@
9c8b866
 typedef int Process;
7a11b9e
 #endif
7a11b9e
 
9c8b866
-#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0))
9c8b866
 typedef void *Tcl_Encoding;	/* Make up dummy type for encoding.  */
9c8b866
 #endif
9c8b866
 
9c8b866
@@ -276,7 +276,7 @@
9c8b866
     int objc;			/*  */
9c8b866
 #endif
9c8b866
 
9c8b866
-    int flags;			
9c8b866
+    int flags;
9c8b866
 
9c8b866
     Tcl_File file;		/* Used for backward compatability
9c8b866
 				 * with Tcl 7.5 */
9c8b866
@@ -370,35 +370,35 @@
9c8b866
     StringToSignal, (Blt_SwitchFreeProc *)NULL, (ClientData)0,
9c8b866
 };
9c8b866
 
9c8b866
-static Blt_SwitchSpec switchSpecs[] = 
9c8b866
+static Blt_SwitchSpec switchSpecs[] =
9c8b866
 {
9c8b866
-    {BLT_SWITCH_STRING, "-decodeoutput", 
9c8b866
+    {BLT_SWITCH_STRING, "-decodeoutput",
9c8b866
          Blt_Offset(BackgroundInfo, outputEncodingName), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-decodeerror", 
9c8b866
+    {BLT_SWITCH_STRING, "-decodeerror",
9c8b866
          Blt_Offset(BackgroundInfo, errorEncodingName), 0},
9c8b866
-    {BLT_SWITCH_BOOLEAN, "-echo", 
9c8b866
+    {BLT_SWITCH_BOOLEAN, "-echo",
9c8b866
          Blt_Offset(BackgroundInfo, sink2.echo), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-error", 
9c8b866
+    {BLT_SWITCH_STRING, "-error",
9c8b866
          Blt_Offset(BackgroundInfo, sink2.doneVar), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-update", 
9c8b866
+    {BLT_SWITCH_STRING, "-update",
9c8b866
 	Blt_Offset(BackgroundInfo, sink1.updateVar), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-output", 
9c8b866
+    {BLT_SWITCH_STRING, "-output",
9c8b866
         Blt_Offset(BackgroundInfo, sink1.doneVar), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-lasterror", 
9c8b866
+    {BLT_SWITCH_STRING, "-lasterror",
9c8b866
 	Blt_Offset(BackgroundInfo, sink2.updateVar), 0},
9c8b866
-    {BLT_SWITCH_STRING, "-lastoutput", 
9c8b866
+    {BLT_SWITCH_STRING, "-lastoutput",
9c8b866
 	Blt_Offset(BackgroundInfo, sink1.updateVar), 0},
9c8b866
-    {BLT_SWITCH_LIST, "-onerror", 
9c8b866
+    {BLT_SWITCH_LIST, "-onerror",
9c8b866
 	Blt_Offset(BackgroundInfo, sink2.updateCmd), 0},
9c8b866
-    {BLT_SWITCH_LIST, "-onoutput", 
9c8b866
+    {BLT_SWITCH_LIST, "-onoutput",
9c8b866
 	Blt_Offset(BackgroundInfo, sink1.updateCmd), 0},
9c8b866
-    {BLT_SWITCH_BOOLEAN, "-keepnewline", 
9c8b866
+    {BLT_SWITCH_BOOLEAN, "-keepnewline",
9c8b866
 	Blt_Offset(BackgroundInfo, keepNewline), 0},
9c8b866
-    {BLT_SWITCH_BOOLEAN, "-check", 
9c8b866
+    {BLT_SWITCH_INT, "-check",
9c8b866
 	Blt_Offset(BackgroundInfo, interval), 0},
9c8b866
-    {BLT_SWITCH_CUSTOM, "-killsignal", 
9c8b866
+    {BLT_SWITCH_CUSTOM, "-killsignal",
9c8b866
 	Blt_Offset(BackgroundInfo, signalNum), 0, &killSignalSwitch},
9c8b866
-    {BLT_SWITCH_BOOLEAN, "-linebuffered", 
9c8b866
+    {BLT_SWITCH_BOOLEAN, "-linebuffered",
9c8b866
 	Blt_Offset(BackgroundInfo, lineBuffered), 0},
9c8b866
     {BLT_SWITCH_END, NULL, 0, 0}
9c8b866
 };
9c8b866
@@ -517,7 +517,7 @@
9c8b866
  *	Returns the next block of data since the last time this
9c8b866
  *	routine was called.
9c8b866
  *
9c8b866
- *---------------------------------------------------------------------- 
9c8b866
+ *----------------------------------------------------------------------
9c8b866
  */
9c8b866
 static unsigned char *
9c8b866
 NextBlock(sinkPtr, lengthPtr)
9c8b866
@@ -531,7 +531,7 @@
9c8b866
     length = sinkPtr->mark - sinkPtr->lastMark;
9c8b866
     sinkPtr->lastMark = sinkPtr->mark;
9c8b866
     if (length > 0) {
9c8b866
-	if ((!(sinkPtr->flags & SINK_KEEP_NL)) && 
9c8b866
+	if ((!(sinkPtr->flags & SINK_KEEP_NL)) &&
9c8b866
 	    (string[length - 1] == '\n')) {
9c8b866
 	    length--;
9c8b866
 	}
9c8b866
@@ -565,7 +565,7 @@
9c8b866
 	for (i = 0; i < newBytes; i++) {
9c8b866
 	    if (string[i] == '\n') {
9c8b866
 		int length;
9c8b866
-		
9c8b866
+
9c8b866
 		length = i + 1;
9c8b866
 		sinkPtr->lastMark += length;
9c8b866
 		if (!(sinkPtr->flags & SINK_KEEP_NL)) {
9c8b866
@@ -594,13 +594,13 @@
9c8b866
  *	keeping all the data collected from the channel (no -output
9c8b866
  *	flag and the process is detached).
9c8b866
  *
9c8b866
- *---------------------------------------------------------------------- 
9c8b866
+ *----------------------------------------------------------------------
9c8b866
  */
9c8b866
 static void
9c8b866
 ResetSink(sinkPtr)
9c8b866
     Sink *sinkPtr;
9c8b866
-{ 
9c8b866
-    if ((sinkPtr->flags & SINK_BUFFERED) && 
9c8b866
+{
9c8b866
+    if ((sinkPtr->flags & SINK_BUFFERED) &&
9c8b866
 	(sinkPtr->fill > sinkPtr->lastMark)) {
9c8b866
 	register size_t i, j;
9c8b866
 
9c8b866
@@ -654,8 +654,8 @@
9c8b866
     }
9c8b866
     if (bgPtr->lineBuffered) {
9c8b866
 	sinkPtr->flags |= SINK_BUFFERED;
9c8b866
-    }	
9c8b866
-    if ((sinkPtr->updateCmd != NULL) || 
9c8b866
+    }
9c8b866
+    if ((sinkPtr->updateCmd != NULL) ||
9c8b866
 	(sinkPtr->updateVar != NULL) ||
9c8b866
 	(sinkPtr->echo)) {
9c8b866
 	sinkPtr->flags |= SINK_NOTIFY;
9c8b866
@@ -843,7 +843,7 @@
9c8b866
 #define IsOpenSink(sinkPtr)  ((sinkPtr)->fd != -1)
9c8b866
 
9c8b866
 static void
9c8b866
-CloseSink(interp, sinkPtr) 
9c8b866
+CloseSink(interp, sinkPtr)
9c8b866
     Tcl_Interp *interp;
9c8b866
     Sink *sinkPtr;
9c8b866
 {
9c8b866
@@ -864,19 +864,19 @@
9c8b866
 	if (sinkPtr->doneVar != NULL) {
9c8b866
 	    unsigned char *data;
9c8b866
 	    size_t length;
9c8b866
-	    /* 
9c8b866
+	    /*
9c8b866
 	     * If data is to be collected, set the "done" variable
9c8b866
-	     * with the contents of the buffer.  
9c8b866
+	     * with the contents of the buffer.
9c8b866
 	     */
9c8b866
 	    GetSinkData(sinkPtr, &data, &length);
9c8b866
-#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0))
9c8b866
 	    data[length] = '\0';
9c8b866
-	    if (Tcl_SetVar(interp, sinkPtr->doneVar, data, 
9c8b866
+	    if (Tcl_SetVar(interp, sinkPtr->doneVar, data,
9c8b866
 			   TCL_GLOBAL_ONLY) == NULL) {
9c8b866
 		Tcl_BackgroundError(interp);
9c8b866
 	    }
9c8b866
 #else
9c8b866
-	    if (Tcl_SetVar2Ex(interp, sinkPtr->doneVar, NULL, 
9c8b866
+	    if (Tcl_SetVar2Ex(interp, sinkPtr->doneVar, NULL,
9c8b866
 			      Tcl_NewByteArrayObj(data, length),
9c8b866
 			      (TCL_GLOBAL_ONLY | TCL_LEAVE_ERR_MSG)) == NULL) {
9c8b866
 		Tcl_BackgroundError(interp);
9c8b866
@@ -917,9 +917,9 @@
9c8b866
 #endif
9c8b866
     if (sinkPtr->encoding == ENCODING_BINARY) { /* binary */
9c8b866
 	/* No translation needed. */
9c8b866
-	sinkPtr->mark = sinkPtr->fill; 
9c8b866
+	sinkPtr->mark = sinkPtr->fill;
9c8b866
     } else if (sinkPtr->encoding == ENCODING_ASCII) { /* ascii */
9c8b866
-#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0))
9c8b866
 	/* Convert NUL bytes to question marks. */
9c8b866
 	srcPtr = sinkPtr->byteArr + sinkPtr->mark;
9c8b866
 	endPtr = sinkPtr->byteArr + sinkPtr->fill;
9c8b866
@@ -932,7 +932,7 @@
9c8b866
 #endif /* < 8.1.0 */
9c8b866
 	/* One-to-one translation. mark == fill. */
9c8b866
 	sinkPtr->mark = sinkPtr->fill;
9c8b866
-#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0))
9c8b866
     } else { /* unicode. */
9c8b866
 	int nSrcCooked, nCooked;
9c8b866
 	int result;
9c8b866
@@ -941,41 +941,41 @@
9c8b866
 	unsigned char *destPtr;
9c8b866
 	unsigned char *raw, *cooked;
9c8b866
 	unsigned char leftover[100];
9c8b866
-	
9c8b866
+
9c8b866
 	raw = sinkPtr->byteArr + sinkPtr->mark;
9c8b866
 	nRaw = sinkPtr->fill - sinkPtr->mark;
9c8b866
 	/* Ideally, the cooked buffer size should be smaller */
9c8b866
 	cookedSize = nRaw * TCL_UTF_MAX + 1;
9c8b866
 	cooked = Blt_Malloc(cookedSize);
9c8b866
-	result = Tcl_ExternalToUtf(interp, sinkPtr->encoding, 
9c8b866
-			(char *)raw, nRaw, 0, NULL, (char *)cooked, 
9c8b866
+	result = Tcl_ExternalToUtf(interp, sinkPtr->encoding,
9c8b866
+			(char *)raw, nRaw, 0, NULL, (char *)cooked,
9c8b866
 			cookedSize, &nSrcCooked, &nCooked, NULL);
9c8b866
 	nLeftOver = 0;
9c8b866
 	if (result == TCL_CONVERT_MULTIBYTE) {
9c8b866
-	    /* 
9c8b866
+	    /*
9c8b866
 	     * Last multibyte sequence wasn't completed.  Save the
9c8b866
-	     * extra characters in a temporary buffer.  
9c8b866
+	     * extra characters in a temporary buffer.
9c8b866
 	     */
9c8b866
 	    nLeftOver = (nRaw - nSrcCooked);
9c8b866
-	    srcPtr = sinkPtr->byteArr + (sinkPtr->mark + nSrcCooked); 
9c8b866
+	    srcPtr = sinkPtr->byteArr + (sinkPtr->mark + nSrcCooked);
9c8b866
 	    endPtr = srcPtr + nLeftOver;
9c8b866
 	    destPtr = leftover;
9c8b866
 	    while (srcPtr < endPtr) {
9c8b866
 		*destPtr++ = *srcPtr++;
9c8b866
 	    }
9c8b866
-	} 
9c8b866
+	}
9c8b866
 	/*
9c8b866
-	 * Create a bigger 
9c8b866
+	 * Create a bigger
9c8b866
 	 */
9c8b866
-						 
9c8b866
+
9c8b866
 	needed = nLeftOver + nCooked;
9c8b866
 	spaceLeft = sinkPtr->size - sinkPtr->mark;
9c8b866
 	if (spaceLeft >= needed) {
9c8b866
 	    spaceLeft = ExtendSinkBuffer(sinkPtr);
9c8b866
 	}
9c8b866
 	assert(spaceLeft > needed);
9c8b866
-	/* 
9c8b866
-	 * Replace the characters from the mark with the translated 
9c8b866
+	/*
9c8b866
+	 * Replace the characters from the mark with the translated
9c8b866
 	 * characters.
9c8b866
 	 */
9c8b866
 	srcPtr = cooked;
9c8b866
@@ -986,7 +986,7 @@
9c8b866
 	}
9c8b866
 	/* Add the number of newly translated characters to the mark */
9c8b866
 	sinkPtr->mark += nCooked;
9c8b866
-	
9c8b866
+
9c8b866
 	srcPtr = leftover;
9c8b866
 	endPtr = leftover + nLeftOver;
9c8b866
 	while (srcPtr < endPtr) {
9c8b866
@@ -996,7 +996,7 @@
9c8b866
 #endif /* >= 8.1.0  */
9c8b866
     }
9c8b866
 #ifdef WIN32
9c8b866
-    /* 
9c8b866
+    /*
9c8b866
      * Translate CRLF character sequences to LF characters.  We have to
9c8b866
      * do this after converting the string to UTF from UNICODE.
9c8b866
      */
9c8b866
@@ -1072,7 +1072,7 @@
9c8b866
 #endif
9c8b866
     timeout = (flags & WNOHANG) ? 0 : INFINITE;
9c8b866
     status = WaitForSingleObject(child.hProcess, timeout);
9c8b866
-				 
9c8b866
+
9c8b866
 #if WINDEBUG
9c8b866
     PurifyPrintf("WAITPID: wait status is %d\n", status);
9c8b866
 #endif
9c8b866
@@ -1147,9 +1147,9 @@
9c8b866
 
9c8b866
     EnumWindows(EnumWindowsProc, (LPARAM)&proc;;
9c8b866
 
9c8b866
-    /* 
9c8b866
+    /*
9c8b866
      * Wait on the handle. If it signals, great. If it times out,
9c8b866
-     * then call TerminateProcess on it.  
9c8b866
+     * then call TerminateProcess on it.
9c8b866
      *
9c8b866
      * On Windows 95/98 this also has the added benefit of stopping
9c8b866
      * KERNEL32.dll from dumping.  The 2 second number is arbitrary.
9c8b866
@@ -1171,7 +1171,7 @@
9c8b866
 
9c8b866
 #endif /* WIN32 */
9c8b866
 
9c8b866
-#if (TCL_VERSION_NUMBER < _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER < _VERSION(8,1,0))
9c8b866
 
9c8b866
 static void
9c8b866
 NotifyOnUpdate(interp, sinkPtr, data, nBytes)
9c8b866
@@ -1192,7 +1192,7 @@
9c8b866
     data[nBytes] = '\0';
9c8b866
     if (sinkPtr->echo) {
9c8b866
 	Tcl_Channel channel;
9c8b866
-	
9c8b866
+
9c8b866
 	channel = Tcl_GetStdChannel(TCL_STDERR);
9c8b866
 	if (channel == NULL) {
9c8b866
 	    Tcl_AppendResult(interp, "can't get stderr channel", (char *)NULL);
9c8b866
@@ -1235,7 +1235,7 @@
9c8b866
     data[nBytes] = save;
9c8b866
 }
9c8b866
 
9c8b866
-#else 
9c8b866
+#else
9c8b866
 
9c8b866
 static void
9c8b866
 NotifyOnUpdate(interp, sinkPtr, data, nBytes)
9c8b866
@@ -1254,7 +1254,7 @@
9c8b866
     }
9c8b866
     if (sinkPtr->echo) {
9c8b866
 	Tcl_Channel channel;
9c8b866
-	
9c8b866
+
9c8b866
 	channel = Tcl_GetStdChannel(TCL_STDERR);
9c8b866
 	if (channel == NULL) {
9c8b866
 	    Tcl_AppendResult(interp, "can't get stderr channel", (char *)NULL);
9c8b866
@@ -1285,7 +1285,7 @@
9c8b866
     if (sinkPtr->updateVar != NULL) {
9c8b866
 	Tcl_Obj *result;
9c8b866
 
9c8b866
-	result = Tcl_SetVar2Ex(interp, sinkPtr->updateVar, NULL, objPtr, 
9c8b866
+	result = Tcl_SetVar2Ex(interp, sinkPtr->updateVar, NULL, objPtr,
9c8b866
 	       (TCL_GLOBAL_ONLY | TCL_LEAVE_ERR_MSG));
9c8b866
 	if (result == NULL) {
9c8b866
 	    Tcl_BackgroundError(interp);
9c8b866
@@ -1306,7 +1306,7 @@
9c8b866
     }
9c8b866
     ReadBytes(sinkPtr);
9c8b866
     CookSink(bgPtr->interp, sinkPtr);
9c8b866
-    if ((sinkPtr->mark > sinkPtr->lastMark) && 
9c8b866
+    if ((sinkPtr->mark > sinkPtr->lastMark) &&
9c8b866
 	(sinkPtr->flags & SINK_NOTIFY)) {
9c8b866
 	unsigned char *data;
9c8b866
 	int length;
9c8b866
@@ -1390,7 +1390,7 @@
9c8b866
 {
9c8b866
 
9c8b866
     if (bgPtr->traced) {
9c8b866
-	Tcl_UntraceVar(bgPtr->interp, bgPtr->statVar, TRACE_FLAGS, 
9c8b866
+	Tcl_UntraceVar(bgPtr->interp, bgPtr->statVar, TRACE_FLAGS,
9c8b866
 		VariableProc, bgPtr);
9c8b866
 	bgPtr->traced = FALSE;
9c8b866
     }
9c8b866
@@ -1558,7 +1558,7 @@
9c8b866
     register int i;
9c8b866
     unsigned int lastPid;
9c8b866
     int pid;
9c8b866
-    enum PROCESS_STATUS { 
9c8b866
+    enum PROCESS_STATUS {
9c8b866
 	PROCESS_EXITED, PROCESS_STOPPED, PROCESS_KILLED, PROCESS_UNKNOWN
9c8b866
     } pcode;
9c8b866
     WAIT_STATUS_TYPE waitStatus, lastStatus;
9c8b866
@@ -1595,7 +1595,7 @@
9c8b866
     }
9c8b866
     bgPtr->nProcs = nLeft;
9c8b866
 
9c8b866
-    if ((nLeft > 0) || (IsOpenSink(&bgPtr->sink1)) || 
9c8b866
+    if ((nLeft > 0) || (IsOpenSink(&bgPtr->sink1)) ||
9c8b866
 	(IsOpenSink(&bgPtr->sink2))) {
9c8b866
 	/* Keep polling for the status of the children that are left */
9c8b866
 	bgPtr->timerToken = Tcl_CreateTimerHandler(bgPtr->interval, TimerProc,
9c8b866
@@ -1641,11 +1641,11 @@
9c8b866
 	Tcl_DStringAppendElement(&dString, "child completed normally");
9c8b866
 	break;
9c8b866
     case PROCESS_KILLED:
9c8b866
-	Tcl_DStringAppendElement(&dString, 
9c8b866
+	Tcl_DStringAppendElement(&dString,
9c8b866
 				Tcl_SignalMsg((int)(WTERMSIG(lastStatus))));
9c8b866
 	break;
9c8b866
     case PROCESS_STOPPED:
9c8b866
-	Tcl_DStringAppendElement(&dString, 
9c8b866
+	Tcl_DStringAppendElement(&dString,
9c8b866
 		 Tcl_SignalMsg((int)(WSTOPSIG(lastStatus))));
9c8b866
 	break;
9c8b866
     case PROCESS_UNKNOWN:
9c8b866
@@ -1658,8 +1658,8 @@
9c8b866
 	*bgPtr->exitCodePtr = code;
9c8b866
     }
9c8b866
     DisableTriggers(bgPtr);
9c8b866
-    result = Tcl_SetVar(bgPtr->interp, bgPtr->statVar, 
9c8b866
-	Tcl_DStringValue(&dString), TCL_GLOBAL_ONLY);
9c8b866
+    result = Tcl_SetVar(bgPtr->interp, bgPtr->statVar,
9c8b866
+	Tcl_DStringValue(&dString), TCL_GLOBAL_ONLY | TCL_LEAVE_ERR_MSG);
9c8b866
     Tcl_DStringFree(&dString);
9c8b866
     if (result == NULL) {
9c8b866
 	Tcl_BackgroundError(bgPtr->interp);
9c8b866
@@ -1712,7 +1712,7 @@
9c8b866
      * timer handler to periodically poll for the exit status of each
9c8b866
      * process.  Initially check at the next idle interval.
9c8b866
      */
9c8b866
-    if (!IsOpenSink(&bgPtr->sink2)) {
9c8b866
+    if (!IsOpenSink(&bgPtr->sink2) && bgPtr->timerToken == 0) {
9c8b866
 	bgPtr->timerToken = Tcl_CreateTimerHandler(0, TimerProc, clientData);
9c8b866
     }
9c8b866
 }
9c8b866
@@ -1760,7 +1760,7 @@
9c8b866
      * timer handler to periodically poll for the exit status of each
9c8b866
      * process.  Initially check at the next idle interval.
9c8b866
      */
9c8b866
-    if (!IsOpenSink(&bgPtr->sink1)) {
9c8b866
+    if (!IsOpenSink(&bgPtr->sink1) && bgPtr->timerToken == 0) {
9c8b866
 	bgPtr->timerToken = Tcl_CreateTimerHandler(0, TimerProc, clientData);
9c8b866
     }
9c8b866
 }
9c8b866
@@ -1827,7 +1827,7 @@
9c8b866
     /* Try to clean up any detached processes */
9c8b866
     Tcl_ReapDetachedProcs();
9c8b866
 
9c8b866
-    i = Blt_ProcessSwitches(interp, switchSpecs, argc - 2, argv + 2, 
9c8b866
+    i = Blt_ProcessSwitches(interp, switchSpecs, argc - 2, argv + 2,
9c8b866
 	(char *)bgPtr, BLT_SWITCH_ARGV_PARTIAL);
9c8b866
     if (i < 0) {
9c8b866
 	FreeBackgroundInfo(bgPtr);
9c8b866
@@ -1853,7 +1853,7 @@
9c8b866
 	if (strcmp(bgPtr->outputEncodingName, "binary") == 0) {
9c8b866
 	    encoding = ENCODING_BINARY;
9c8b866
 	} else {
9c8b866
-#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0))
9c8b866
 	    encoding = Tcl_GetEncoding(interp, bgPtr->outputEncodingName);
9c8b866
 	    if (encoding == NULL) {
9c8b866
 		goto error;
9c8b866
@@ -1866,7 +1866,7 @@
9c8b866
 	if (strcmp(bgPtr->errorEncodingName, "binary") == 0) {
9c8b866
 	    encoding = ENCODING_BINARY;
9c8b866
 	} else {
9c8b866
-#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER >= _VERSION(8,1,0))
9c8b866
 	    encoding = Tcl_GetEncoding(interp, bgPtr->errorEncodingName);
9c8b866
 	    if (encoding == NULL) {
9c8b866
 		goto error;
9c8b866
@@ -1878,18 +1878,18 @@
9c8b866
 
9c8b866
     outFdPtr = errFdPtr = (int *)NULL;
9c8b866
 #ifdef WIN32
9c8b866
-    if ((!bgPtr->detached) || 
9c8b866
-	(bgPtr->sink1.doneVar != NULL) || 
9c8b866
-	(bgPtr->sink1.updateVar != NULL) || 
9c8b866
+    if ((!bgPtr->detached) ||
9c8b866
+	(bgPtr->sink1.doneVar != NULL) ||
9c8b866
+	(bgPtr->sink1.updateVar != NULL) ||
9c8b866
 	(bgPtr->sink1.updateCmd != NULL)) {
9c8b866
 	outFdPtr = &bgPtr->sink1.fd;
9c8b866
     }
9c8b866
 #else
9c8b866
     outFdPtr = &bgPtr->sink1.fd;
9c8b866
 #endif
9c8b866
-    if ((bgPtr->sink2.doneVar != NULL) || 
9c8b866
+    if ((bgPtr->sink2.doneVar != NULL) ||
9c8b866
 	(bgPtr->sink2.updateVar != NULL) ||
9c8b866
-	(bgPtr->sink2.updateCmd != NULL) || 
9c8b866
+	(bgPtr->sink2.updateCmd != NULL) ||
9c8b866
 	(bgPtr->sink2.echo)) {
9c8b866
 	errFdPtr = &bgPtr->sink2.fd;
9c8b866
     }
9c8b866
@@ -1900,6 +1900,7 @@
9c8b866
     }
9c8b866
     bgPtr->procArr = pidPtr;
9c8b866
     bgPtr->nProcs = nProcs;
9c8b866
+    bgPtr->timerToken = 0;
9c8b866
 
9c8b866
     if (bgPtr->sink1.fd == -1) {
9c8b866
 
9c8b866
@@ -1919,7 +1920,7 @@
9c8b866
 	(CreateSinkHandler(bgPtr, &bgPtr->sink2, StderrProc) != TCL_OK)) {
9c8b866
  	goto error;
9c8b866
     }
9c8b866
-    if (bgPtr->detached) {	
9c8b866
+    if (bgPtr->detached) {
9c8b866
 	char string[200];
9c8b866
 
9c8b866
 	/* If detached, return a list of the child process ids instead
9c8b866
@@ -1927,7 +1928,7 @@
9c8b866
 	for (i = 0; i < nProcs; i++) {
9c8b866
 #ifdef WIN32
9c8b866
 	    sprintf(string, "%u", (unsigned int)bgPtr->procArr[i].pid);
9c8b866
-#else 
9c8b866
+#else
9c8b866
 	    sprintf(string, "%d", bgPtr->procArr[i]);
9c8b866
 #endif
9c8b866
 	    Tcl_AppendElement(interp, string);
9c8b866
@@ -1950,7 +1951,7 @@
9c8b866
 
9c8b866
 	    /* Return the output of the pipeline. */
9c8b866
 	    GetSinkData(&bgPtr->sink1, &data, &length);
9c8b866
-#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0)) 
9c8b866
+#if (TCL_VERSION_NUMBER <  _VERSION(8,1,0))
9c8b866
 	    data[length] = '\0';
9c8b866
 	    Tcl_SetResult(interp, data, TCL_VOLATILE);
9c8b866
 #else
9c8b866
diff -ur blt2.4z/src/bltGrMarker.c blt2.4z-8.5.2/src/bltGrMarker.c
9c8b866
--- blt2.4z/src/bltGrMarker.c	2002-09-19 00:30:51.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltGrMarker.c	2008-04-16 16:47:48.000000000 +0200
9c8b866
@@ -1061,10 +1061,12 @@
9c8b866
     Graph *graphPtr;
9c8b866
     Extents2D *extsPtr;
9c8b866
 {
9c8b866
+/*
9c8b866
     assert(extsPtr->right >= extsPtr->left);
9c8b866
     assert(extsPtr->bottom >= extsPtr->top);
9c8b866
     assert(graphPtr->right >= graphPtr->left);
9c8b866
     assert(graphPtr->bottom >= graphPtr->top);
9c8b866
+*/
9c8b866
 
9c8b866
     return (((double)graphPtr->right < extsPtr->left) ||
9c8b866
 	    ((double)graphPtr->bottom < extsPtr->top) ||
9c8b866
diff -ur blt2.4z/src/bltInit.c blt2.4z-8.5.2/src/bltInit.c
9c8b866
--- blt2.4z/src/bltInit.c	2002-09-10 07:12:33.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltInit.c	2008-04-15 17:31:25.000000000 +0200
9c8b866
@@ -28,7 +28,7 @@
9c8b866
 
9c8b866
 #include <bltInt.h>
9c8b866
 
9c8b866
-#define EXACT 1
9c8b866
+#define EXACT 0
9c8b866
 
9c8b866
 #ifndef BLT_LIBRARY
9c8b866
 #ifdef WIN32
9c8b866
diff -ur blt2.4z/src/bltNsUtil.h blt2.4z-8.5.2/src/bltNsUtil.h
9c8b866
--- blt2.4z/src/bltNsUtil.h	2002-07-18 08:35:32.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltNsUtil.h	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -48,7 +48,7 @@
9c8b866
 
9c8b866
 
9c8b866
 EXTERN Tcl_Command Tcl_FindCommand _ANSI_ARGS_((Tcl_Interp *interp,
7a11b9e
-	char *name, Tcl_Namespace *nsPtr, int flags));
9c8b866
+	CONST char *name, Tcl_Namespace *nsPtr, int flags));
7a11b9e
 
7a11b9e
 #define NS_SEARCH_NONE		(0)
7a11b9e
 #define NS_SEARCH_CURRENT	(1<<0)
9c8b866
@@ -65,15 +65,15 @@
7a11b9e
 
7a11b9e
 #if (TCL_MAJOR_VERSION >= 8)
9c8b866
 EXTERN Tcl_Namespace *Tcl_CreateNamespace _ANSI_ARGS_((Tcl_Interp *interp,
9c8b866
-	char *name, ClientData clientData, Tcl_NamespaceDeleteProc *nsDelProc));
9c8b866
+	CONST char *name, ClientData clientData, Tcl_NamespaceDeleteProc *nsDelProc));
7a11b9e
 
7a11b9e
 EXTERN void Tcl_DeleteNamespace _ANSI_ARGS_((Tcl_Namespace *nsPtr));
7a11b9e
 
9c8b866
 EXTERN Tcl_Namespace *Tcl_FindNamespace _ANSI_ARGS_((Tcl_Interp *interp,
9c8b866
-	char *name, Tcl_Namespace *context, int flags));
9c8b866
+	CONST char *name, Tcl_Namespace *context, int flags));
9c8b866
 
9c8b866
 EXTERN int Tcl_Export _ANSI_ARGS_((Tcl_Interp *interp, Tcl_Namespace *nsPtr,
9c8b866
-	char *name, int resetFlag));
9c8b866
+	CONST char *name, int resetFlag));
9c8b866
 
9c8b866
 EXTERN Tcl_Var Tcl_FindNamespaceVar _ANSI_ARGS_((Tcl_Interp *interp, char *name,
9c8b866
 	Tcl_Namespace *contextNsPtr, int flags));
9c8b866
diff -ur blt2.4z/src/bltText.c blt2.4z-8.5.2/src/bltText.c
9c8b866
--- blt2.4z/src/bltText.c	2002-08-13 21:45:20.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltText.c	2008-04-16 16:37:41.000000000 +0200
9c8b866
@@ -671,6 +671,9 @@
9c8b866
     Pixmap bitmap;
9c8b866
     int active;
9c8b866
 
9c8b866
+    if (!textPtr)
9c8b866
+	return;
9c8b866
+    
9c8b866
     display = Tk_Display(tkwin);
9c8b866
     theta = FMOD(tsPtr->theta, (double)360.0);
9c8b866
     if (theta < 0.0) {
9c8b866
diff -ur blt2.4z/src/bltWindow.c blt2.4z-8.5.2/src/bltWindow.c
9c8b866
--- blt2.4z/src/bltWindow.c	2002-09-19 05:02:09.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/bltWindow.c	2008-04-16 16:38:15.000000000 +0200
9c8b866
@@ -89,9 +89,9 @@
9c8b866
 
9c8b866
 typedef struct TkDisplayStruct {
9c8b866
     Display *display;		/* Xlib's info about display. */
9c8b866
-    struct TkDisplayStruct *nextPtr; /* Next in list of all displays. */
9c8b866
-    char *name;			/* Name of display (with any screen
9c8b866
-				 * identifier removed).  Malloc-ed. */
9c8b866
+    struct TkDisplay *nextPtr;	/* Next in list of all displays. */
9c8b866
+    char *name;			/* Name of display (with any screen identifier
9c8b866
+				 * removed). Malloc-ed. */
9c8b866
     Time lastEventTime;		/* Time of last event received for this
9c8b866
 				 * display. */
9c8b866
 
9c8b866
@@ -107,8 +107,8 @@
9c8b866
      * Information used by tkAtom.c only:
9c8b866
      */
9c8b866
 
9c8b866
-    int atomInit;		/* 0 means stuff below hasn't been
9c8b866
-				 * initialized yet. */
9c8b866
+    int atomInit;		/* 0 means stuff below hasn't been initialized
9c8b866
+				 * yet. */
9c8b866
     Tcl_HashTable nameTable;	/* Maps from names to Atom's. */
9c8b866
     Tcl_HashTable atomTable;	/* Maps from Atom's back to names. */
9c8b866
 
9c8b866
@@ -116,27 +116,26 @@
9c8b866
      * Information used primarily by tkBind.c:
9c8b866
      */
9c8b866
 
9c8b866
-    int bindInfoStale;		/* Non-zero means the variables in this
9c8b866
-				 * part of the structure are potentially
9c8b866
-				 * incorrect and should be recomputed. */
9c8b866
+    int bindInfoStale;		/* Non-zero means the variables in this part
9c8b866
+				 * of the structure are potentially incorrect
9c8b866
+				 * and should be recomputed. */
9c8b866
     unsigned int modeModMask;	/* Has one bit set to indicate the modifier
9c8b866
-				 * corresponding to "mode shift".  If no
9c8b866
-				 * such modifier, than this is zero. */
9c8b866
+				 * corresponding to "mode shift". If no such
9c8b866
+				 * modifier, than this is zero. */
9c8b866
     unsigned int metaModMask;	/* Has one bit set to indicate the modifier
9c8b866
-				 * corresponding to the "Meta" key.  If no
9c8b866
-				 * such modifier, then this is zero. */
9c8b866
+				 * corresponding to the "Meta" key. If no such
9c8b866
+				 * modifier, then this is zero. */
9c8b866
     unsigned int altModMask;	/* Has one bit set to indicate the modifier
9c8b866
-				 * corresponding to the "Meta" key.  If no
9c8b866
-				 * such modifier, then this is zero. */
9c8b866
-    enum {
9c8b866
-	LU_IGNORE, LU_CAPS, LU_SHIFT
9c8b866
-    } lockUsage;		/* Indicates how to interpret lock modifier. */
9c8b866
+				 * corresponding to the "Meta" key. If no such
9c8b866
+				 * modifier, then this is zero. */
9c8b866
+    enum {LU_IGNORE, LU_CAPS, LU_SHIFT} lockUsage;
9c8b866
+				/* Indicates how to interpret lock
9c8b866
+				 * modifier. */
9c8b866
     int numModKeyCodes;		/* Number of entries in modKeyCodes array
9c8b866
 				 * below. */
9c8b866
-    KeyCode *modKeyCodes;	/* Pointer to an array giving keycodes for
9c8b866
-				 * all of the keys that have modifiers
9c8b866
-				 * associated with them.  Malloc'ed, but
9c8b866
-				 * may be NULL. */
9c8b866
+    KeyCode *modKeyCodes;	/* Pointer to an array giving keycodes for all
9c8b866
+				 * of the keys that have modifiers associated
9c8b866
+				 * with them. Malloc'ed, but may be NULL. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkBitmap.c only:
9c8b866
@@ -150,10 +149,10 @@
9c8b866
     Tcl_HashTable bitmapIdTable;/* Maps from bitmap id to the TkBitmap
9c8b866
 				 * structure for the bitmap. */
9c8b866
     Tcl_HashTable bitmapDataTable;
9c8b866
-				/* Used by Tk_GetBitmapFromData to map from
9c8b866
-				 * a collection of in-core data about a
9c8b866
-				 * bitmap to a reference giving an auto-
9c8b866
-				 * matically-generated name for the bitmap. */
9c8b866
+				/* Used by Tk_GetBitmapFromData to map from a
9c8b866
+				 * collection of in-core data about a bitmap
9c8b866
+				 * to a reference giving an automatically-
9c8b866
+				 * generated name for the bitmap. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkCanvas.c only:
9c8b866
@@ -167,9 +166,9 @@
9c8b866
      */
9c8b866
 
9c8b866
     int colorInit;		/* 0 means color module needs initializing. */
9c8b866
-    TkStressedCmap *stressPtr;	/* First in list of colormaps that have
9c8b866
-				 * filled up, so we have to pick an
9c8b866
-				 * approximate color. */
9c8b866
+    TkStressedCmap *stressPtr;	/* First in list of colormaps that have filled
9c8b866
+				 * up, so we have to pick an approximate
9c8b866
+				 * color. */
9c8b866
     Tcl_HashTable colorNameTable;
9c8b866
 				/* Maps from color name to TkColor structure
9c8b866
 				 * for that color. */
9c8b866
@@ -192,34 +191,33 @@
9c8b866
 				/* Maps from a cursor id to the TkCursor
9c8b866
 				 * structure for the cursor. */
9c8b866
     char cursorString[20];	/* Used to store a cursor id string. */
9c8b866
-    Font cursorFont;		/* Font to use for standard cursors.
9c8b866
-				 * None means font not loaded yet. */
9c8b866
+    Font cursorFont;		/* Font to use for standard cursors. None
9c8b866
+				 * means font not loaded yet. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkError.c only:
9c8b866
      */
9c8b866
 
9c8b866
     struct TkErrorHandler *errorPtr;
9c8b866
-				/* First in list of error handlers
9c8b866
-				 * for this display.  NULL means
9c8b866
-				 * no handlers exist at present. */
9c8b866
-    int deleteCount;		/* Counts # of handlers deleted since
9c8b866
-				 * last time inactive handlers were
9c8b866
-				 * garbage-collected.  When this number
9c8b866
-				 * gets big, handlers get cleaned up. */
9c8b866
+				/* First in list of error handlers for this
9c8b866
+				 * display. NULL means no handlers exist at
9c8b866
+				 * present. */
9c8b866
+    int deleteCount;		/* Counts # of handlers deleted since last
9c8b866
+				 * time inactive handlers were garbage-
9c8b866
+				 * collected. When this number gets big,
9c8b866
+				 * handlers get cleaned up. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Used by tkEvent.c only:
9c8b866
      */
9c8b866
 
9c8b866
     struct TkWindowEvent *delayedMotionPtr;
9c8b866
-				/* Points to a malloc-ed motion event
9c8b866
-				 * whose processing has been delayed in
9c8b866
-				 * the hopes that another motion event
9c8b866
-				 * will come along right away and we can
9c8b866
-				 * merge the two of them together.  NULL
9c8b866
-				 * means that there is no delayed motion
9c8b866
-				 * event. */
9c8b866
+				/* Points to a malloc-ed motion event whose
9c8b866
+				 * processing has been delayed in the hopes
9c8b866
+				 * that another motion event will come along
9c8b866
+				 * right away and we can merge the two of them
9c8b866
+				 * together. NULL means that there is no
9c8b866
+				 * delayed motion event. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkFocus.c only:
9c8b866
@@ -229,26 +227,24 @@
9c8b866
 				 * statistics. */
9c8b866
     struct TkWindow *implicitWinPtr;
9c8b866
 				/* If the focus arrived at a toplevel window
9c8b866
-				 * implicitly via an Enter event (rather
9c8b866
-				 * than via a FocusIn event), this points
9c8b866
-				 * to the toplevel window.  Otherwise it is
9c8b866
-				 * NULL. */
9c8b866
+				 * implicitly via an Enter event (rather than
9c8b866
+				 * via a FocusIn event), this points to the
9c8b866
+				 * toplevel window. Otherwise it is NULL. */
9c8b866
     struct TkWindow *focusPtr;	/* Points to the window on this display that
9c8b866
-				 * should be receiving keyboard events.  When
9c8b866
+				 * should be receiving keyboard events. When
9c8b866
 				 * multiple applications on the display have
9c8b866
-				 * the focus, this will refer to the
9c8b866
-				 * innermost window in the innermost
9c8b866
-				 * application.  This information isn't used
9c8b866
-				 * under Unix or Windows, but it's needed on
9c8b866
-				 * the Macintosh. */
9c8b866
+				 * the focus, this will refer to the innermost
9c8b866
+				 * window in the innermost application. This
9c8b866
+				 * information isn't used under Unix or
9c8b866
+				 * Windows, but it's needed on the Mac. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkGC.c only:
9c8b866
      */
9c8b866
 
9c8b866
-    Tcl_HashTable gcValueTable;	/* Maps from a GC's values to a TkGC structure
9c8b866
+    Tcl_HashTable gcValueTable; /* Maps from a GC's values to a TkGC structure
9c8b866
 				 * describing a GC with those values. */
9c8b866
-    Tcl_HashTable gcIdTable;	/* Maps from a GC to a TkGC. */
9c8b866
+    Tcl_HashTable gcIdTable;    /* Maps from a GC to a TkGC. */
9c8b866
     int gcInit;			/* 0 means the tables below need
9c8b866
 				 * initializing. */
9c8b866
 
9c8b866
@@ -258,23 +254,22 @@
9c8b866
 
9c8b866
     Tcl_HashTable maintainHashTable;
9c8b866
 				/* Hash table that maps from a master's
9c8b866
-				 * Tk_Window token to a list of slaves
9c8b866
-				 * managed by that master. */
9c8b866
+				 * Tk_Window token to a list of slaves managed
9c8b866
+				 * by that master. */
9c8b866
     int geomInit;
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkGet.c only:
9c8b866
      */
9c8b866
 
9c8b866
-    Tcl_HashTable uidTable;	/* Stores all Tk_Uids used in a thread. */
9c8b866
+    Tcl_HashTable uidTable;	/* Stores all Tk_Uid used in a thread. */
9c8b866
     int uidInit;		/* 0 means uidTable needs initializing. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkGrab.c only:
9c8b866
      */
9c8b866
 
9c8b866
-    struct TkWindow *grabWinPtr;
9c8b866
-				/* Window in which the pointer is currently
9c8b866
+    struct TkWindow *grabWinPtr;/* Window in which the pointer is currently
9c8b866
 				 * grabbed, or NULL if none. */
9c8b866
     struct TkWindow *eventualGrabWinPtr;
9c8b866
 				/* Value that grabWinPtr will have once the
9c8b866
@@ -286,22 +281,22 @@
9c8b866
 				 * if no such press in effect. */
9c8b866
     struct TkWindow *serverWinPtr;
9c8b866
 				/* If no application contains the pointer then
9c8b866
-				 * this is NULL.  Otherwise it contains the
9c8b866
-				 * last window for which we've gotten an
9c8b866
-				 * Enter or Leave event from the server (i.e.
9c8b866
-				 * the last window known to have contained
9c8b866
-				 * the pointer).  Doesn't reflect events
9c8b866
-				 * that were synthesized in tkGrab.c. */
9c8b866
+				 * this is NULL. Otherwise it contains the
9c8b866
+				 * last window for which we've gotten an Enter
9c8b866
+				 * or Leave event from the server (i.e. the
9c8b866
+				 * last window known to have contained the
9c8b866
+				 * pointer). Doesn't reflect events that were
9c8b866
+				 * synthesized in tkGrab.c. */
9c8b866
     TkGrabEvent *firstGrabEventPtr;
9c8b866
 				/* First in list of enter/leave events
9c8b866
-				 * synthesized by grab code.  These events
9c8b866
-				 * must be processed in order before any other
9c8b866
-				 * events are processed.  NULL means no such
9c8b866
+				 * synthesized by grab code. These events must
9c8b866
+				 * be processed in order before any other
9c8b866
+				 * events are processed. NULL means no such
9c8b866
 				 * events. */
9c8b866
     TkGrabEvent *lastGrabEventPtr;
9c8b866
 				/* Last in list of synthesized events, or NULL
9c8b866
 				 * if list is empty. */
9c8b866
-    int grabFlags;		/* Miscellaneous flag values.  See definitions
9c8b866
+    int grabFlags;		/* Miscellaneous flag values. See definitions
9c8b866
 				 * in tkGrab.c. */
9c8b866
 
9c8b866
     /*
9c8b866
@@ -309,8 +304,8 @@
9c8b866
      */
9c8b866
 
9c8b866
     int gridInit;		/* 0 means table below needs initializing. */
9c8b866
-    Tcl_HashTable gridHashTable;/* Maps from Tk_Window tokens to
9c8b866
-				 * corresponding Grid structures. */
9c8b866
+    Tcl_HashTable gridHashTable;/* Maps from Tk_Window tokens to corresponding
9c8b866
+				 * Grid structures. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkImage.c only:
9c8b866
@@ -328,17 +323,14 @@
9c8b866
      * Information used by tkOption.c only.
9c8b866
      */
9c8b866
 
9c8b866
-
9c8b866
-
9c8b866
     /*
9c8b866
      * Information used by tkPack.c only.
9c8b866
      */
9c8b866
 
9c8b866
     int packInit;		/* 0 means table below needs initializing. */
9c8b866
     Tcl_HashTable packerHashTable;
9c8b866
-				/* Maps from Tk_Window tokens to
9c8b866
-				 * corresponding Packer structures. */
9c8b866
-
9c8b866
+				/* Maps from Tk_Window tokens to corresponding
9c8b866
+				 * Packer structures. */
9c8b866
 
9c8b866
     /*
9c8b866
      * Information used by tkPlace.c only.
9c8b866
@@ -354,14 +346,13 @@
9c8b866
      * Information used by tkSelect.c and tkClipboard.c only:
9c8b866
      */
9c8b866
 
9c8b866
-
9c8b866
     struct TkSelectionInfo *selectionInfoPtr;
9c8b866
-    /* First in list of selection information
9c8b866
-				 * records.  Each entry contains information
9c8b866
+				/* First in list of selection information
9c8b866
+				 * records. Each entry contains information
9c8b866
 				 * about the current owner of a particular
9c8b866
 				 * selection on this display. */
9c8b866
-    Atom multipleAtom;		/* Atom for MULTIPLE.  None means
9c8b866
-				 * selection stuff isn't initialized. */
9c8b866
+    Atom multipleAtom;		/* Atom for MULTIPLE. None means selection
9c8b866
+				 * stuff isn't initialized. */
9c8b866
     Atom incrAtom;		/* Atom for INCR. */
9c8b866
     Atom targetsAtom;		/* Atom for TARGETS. */
9c8b866
     Atom timestampAtom;		/* Atom for TIMESTAMP. */
9c8b866
@@ -370,9 +361,8 @@
9c8b866
     Atom applicationAtom;	/* Atom for TK_APPLICATION. */
9c8b866
     Atom windowAtom;		/* Atom for TK_WINDOW. */
9c8b866
     Atom clipboardAtom;		/* Atom for CLIPBOARD. */
9c8b866
-#if (TK_VERSION_NUMBER >= _VERSION(8,4,0))
9c8b866
-    Atom utf8Atom;
9c8b866
-#endif
9c8b866
+    Atom utf8Atom;		/* Atom for UTF8_STRING. */
9c8b866
+
9c8b866
     Tk_Window clipWindow;	/* Window used for clipboard ownership and to
9c8b866
 				 * retrieve selections between processes. NULL
9c8b866
 				 * means clipboard info hasn't been
9c8b866
@@ -383,7 +373,7 @@
9c8b866
 				/* Last application that owned clipboard. */
9c8b866
     struct TkClipboardTarget *clipTargetPtr;
9c8b866
 				/* First in list of clipboard type information
9c8b866
-				 * records.  Each entry contains information
9c8b866
+				 * records. Each entry contains information
9c8b866
 				 * about the buffers for a given selection
9c8b866
 				 * target. */
9c8b866
 
9c8b866
@@ -391,13 +381,13 @@
9c8b866
      * Information used by tkSend.c only:
9c8b866
      */
9c8b866
 
9c8b866
-    Tk_Window commTkwin;	/* Window used for communication
9c8b866
-				 * between interpreters during "send"
9c8b866
-				 * commands.  NULL means send info hasn't
9c8b866
-				 * been initialized yet. */
9c8b866
+    Tk_Window commTkwin;	/* Window used for communication between
9c8b866
+				 * interpreters during "send" commands. NULL
9c8b866
+				 * means send info hasn't been initialized
9c8b866
+				 * yet. */
9c8b866
     Atom commProperty;		/* X's name for comm property. */
9c8b866
-    Atom registryProperty;	/* X's name for property containing
9c8b866
-				 * registry of interpreter names. */
9c8b866
+    Atom registryProperty;	/* X's name for property containing registry
9c8b866
+				 * of interpreter names. */
9c8b866
     Atom appNameProperty;	/* X's name for property used to hold the
9c8b866
 				 * application name on each comm window. */
9c8b866
 
9c8b866
@@ -409,34 +399,21 @@
9c8b866
 				/* First in list of chunks of free resource
9c8b866
 				 * identifiers, or NULL if there are no free
9c8b866
 				 * resources. */
9c8b866
-    XID(*defaultAllocProc) _ANSI_ARGS_((Display *display));
9c8b866
+    XID (*defaultAllocProc) (Display *display);
9c8b866
 				/* Default resource allocator for display. */
9c8b866
     struct TkIdStack *windowStackPtr;
9c8b866
-				/* First in list of chunks of window
9c8b866
-				 * identifers that can't be reused right
9c8b866
-				 * now. */
9c8b866
-#if (TK_VERSION_NUMBER < _VERSION(8,4,0))
9c8b866
-    int idCleanupScheduled;	/* 1 means a call to WindowIdCleanup has
9c8b866
-				 * already been scheduled, 0 means it
9c8b866
-				 * hasn't. */
9c8b866
-#else
9c8b866
+				/* First in list of chunks of window ids that
9c8b866
+				 * can't be reused right now. */
9c8b866
     Tcl_TimerToken idCleanupScheduled;
9c8b866
 				/* If set, it means a call to WindowIdCleanup
9c8b866
 				 * has already been scheduled, 0 means it
9c8b866
 				 * hasn't. */
9c8b866
-#endif
9c8b866
+
9c8b866
     /*
9c8b866
      * Information used by tkUnixWm.c and tkWinWm.c only:
9c8b866
      */
9c8b866
 
9c8b866
-#if (TK_VERSION_NUMBER < _VERSION(8,4,0))
9c8b866
-    int wmTracing;		/* Used to enable or disable tracing in
9c8b866
-				 * this module.  If tracing is enabled,
9c8b866
-				 * then information is printed on
9c8b866
-				 * standard output about interesting
9c8b866
-				 * interactions with the window manager. */
9c8b866
-#endif
9c8b866
-    struct TkWmInfo *firstWmPtr; /* Points to first top-level window. */
9c8b866
+    struct TkWmInfo *firstWmPtr;/* Points to first top-level window. */
9c8b866
     struct TkWmInfo *foregroundWmPtr;
9c8b866
 				/* Points to the foreground window. */
9c8b866
 
9c8b866
@@ -444,9 +421,8 @@
9c8b866
      * Information maintained by tkWindow.c for use later on by tkXId.c:
9c8b866
      */
9c8b866
 
9c8b866
-
9c8b866
-    int destroyCount;		/* Number of Tk_DestroyWindow operations
9c8b866
-				 * in progress. */
9c8b866
+    int destroyCount;		/* Number of Tk_DestroyWindow operations in
9c8b866
+				 * progress. */
9c8b866
     unsigned long lastDestroyRequest;
9c8b866
 				/* Id of most recent XDestroyWindow request;
9c8b866
 				 * can re-use ids in windowStackPtr when
9c8b866
@@ -465,42 +441,41 @@
9c8b866
      */
9c8b866
 
9c8b866
 #ifdef TK_USE_INPUT_METHODS
9c8b866
-    XIM inputMethod;		/* Input method for this display */
9c8b866
-#if (TK_VERSION_NUMBER >= _VERSION(8,4,0))
9c8b866
-#if TK_XIM_SPOT
9c8b866
+    XIM inputMethod;		/* Input method for this display. */
9c8b866
+    XIMStyle inputStyle;	/* Input style selected for this display. */
9c8b866
     XFontSet inputXfs;		/* XFontSet cached for over-the-spot XIM. */
9c8b866
-#endif /* TK_XIM_SPOT */
9c8b866
-#endif /* TK_VERSION_NUMBER >= 8.4 */
9c8b866
 #endif /* TK_USE_INPUT_METHODS */
9c8b866
     Tcl_HashTable winTable;	/* Maps from X window ids to TkWindow ptrs. */
9c8b866
+
9c8b866
     int refCount;		/* Reference count of how many Tk applications
9c8b866
-                                 * are using this display. Used to clean up
9c8b866
-                                 * the display when we no longer have any
9c8b866
-                                 * Tk applications using it.
9c8b866
-                                 */
9c8b866
+				 * are using this display. Used to clean up
9c8b866
+				 * the display when we no longer have any Tk
9c8b866
+				 * applications using it. */
9c8b866
+
9c8b866
     /*
9c8b866
      * The following field were all added for Tk8.3
9c8b866
      */
9c8b866
-    int mouseButtonState;       /* current mouse button state for this
9c8b866
-                                 * display */
9c8b866
-#if (TK_VERSION_NUMBER < _VERSION(8,4,0))
9c8b866
-    int warpInProgress;
9c8b866
-#endif
9c8b866
+
9c8b866
+    int mouseButtonState;	/* Current mouse button state for this
9c8b866
+				 * display. */
9c8b866
+    Window mouseButtonWindow;	/* Window the button state was set in, added
9c8b866
+				 * in Tk 8.4. */
9c8b866
     Window warpWindow;
9c8b866
     int warpX;
9c8b866
     int warpY;
9c8b866
-#if (TK_VERSION_NUMBER < _VERSION(8,4,0))
9c8b866
-    int useInputMethods;        /* Whether to use input methods */
9c8b866
-#else
9c8b866
+
9c8b866
     /*
9c8b866
      * The following field(s) were all added for Tk8.4
9c8b866
      */
9c8b866
-    long deletionEpoch;		/* Incremented by window deletions */
9c8b866
-    unsigned int flags;		/* Various flag values:  these are all
9c8b866
-				 * defined in below. */
9c8b866
-    TkCaret caret;		/* information about the caret for this
9c8b866
-				 * display.  This is not a pointer. */
9c8b866
-#endif
9c8b866
+
9c8b866
+    unsigned int flags;		/* Various flag values: these are all defined
9c8b866
+				 * in below. */
9c8b866
+    TkCaret caret;		/* Information about the caret for this
9c8b866
+				 * display. This is not a pointer. */
9c8b866
+
9c8b866
+    int iconDataSize;		/* Size of default iconphoto image data. */
9c8b866
+    unsigned char *iconDataPtr;	/* Default iconphoto image data, if set. */
9c8b866
+
9c8b866
 } TkDisplay;
9c8b866
 
9c8b866
 #else
9c8b866
diff -ur blt2.4z/src/Makefile.in blt2.4z-8.5.2/src/Makefile.in
9c8b866
--- blt2.4z/src/Makefile.in	2002-07-15 11:31:29.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/Makefile.in	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -230,7 +230,8 @@
9c8b866
 
9c8b866
 distclean: clean
9c8b866
 	$(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"*  Makefile
9c8b866
-	$(RM) bltConfig.h Makefile TAGS
9c8b866
+	$(RM) bltConfig.h bltHash.h Makefile TAGS
9c8b866
+	(cd shared; $(MAKE) distclean)
9c8b866
 
9c8b866
 .c.o:
9c8b866
 	$(CC) -c $(CC_SWITCHES) $<
9c8b866
diff -ur blt2.4z/src/Makefile.vc blt2.4z-8.5.2/src/Makefile.vc
9c8b866
--- blt2.4z/src/Makefile.vc	2002-09-07 22:12:10.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/Makefile.vc	2008-04-15 17:31:25.000000000 +0200
9c8b866
@@ -3,16 +3,15 @@
9c8b866
 # 	Makefile for BLT library using VC++.
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 
9c8b866
-include	      e:/src/blt/win/makedefs
9c8b866
+include	      ../win/makedefs
9c8b866
 
9c8b866
-TOOLS32       =	c:/Program\ Files/Microsoft\ Visual\ Studio/Vc98
9c8b866
 AR            =	lib.exe -link50compat
9c8b866
 LD            =	link.exe
9c8b866
 CC            =	cl.exe
9c8b866
 rc32          =	rc.exe
9c8b866
 
9c8b866
 ifeq ($(WITH_JPEG),0)
9c8b866
-EXTRA_DEFINES = 
9c8b866
+EXTRA_DEFINES =
9c8b866
 endif
9c8b866
 ifeq ($(WITH_JPEG),1)
9c8b866
 EXTRA_DEFINES = -DHAVE_JPEGLIB_H=1
9c8b866
@@ -21,23 +20,23 @@
9c8b866
 JPEGINC	      = $(JPEGDIR)
9c8b866
 endif
9c8b866
 ifeq ($(WITH_JPEG),2)
9c8b866
-EXTRA_DEFINES = -DHAVE_IJL_H=1 
9c8b866
+EXTRA_DEFINES = -DHAVE_IJL_H=1
9c8b866
 JPEGDIR       =	c:/Program\ Files/Intel/IJL
9c8b866
 JPEGLIB	      =	$(JPEGDIR)/lib/ijl15l.lib
9c8b866
 JPEGINC	      = $(JPEGDIR)/Include
9c8b866
 endif
9c8b866
 
9c8b866
 # ------------------------------------------------------------------------
9c8b866
-# 	C Compiler options 
9c8b866
+# 	C Compiler options
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 
9c8b866
 DEFINES       =	-D_X86_=1 -D__STDC__ -DWIN32 -DCONSOLE -D_MT \
9c8b866
-		$(DEBUG_DEFINES) $(SHLIB_DEFINES) $(EXTRA_DEFINES) 
9c8b866
+		$(DEBUG_DEFINES) $(SHLIB_DEFINES) $(EXTRA_DEFINES)
9c8b866
 
9c8b866
 ifeq ($(SHARED),1)
9c8b866
 SHLIB_DEFINES =	-D_DLL
9c8b866
 SHLIB_TARGET  =	build-dll
9c8b866
-LIBS          =	$(COMMON_LIBS) 
9c8b866
+LIBS          =	$(COMMON_LIBS)
9c8b866
 else
9c8b866
 SHLIB_DEFINES =	-D_CTYPE_DISABLE_MACROS
9c8b866
 LIBS          =	$(COMMON_LIBS) $(EXTRA_LIBS)
9c8b866
@@ -45,23 +44,23 @@
9c8b866
 
9c8b866
 ifeq ($(DEBUG),1)
9c8b866
 CFLAGS        =	-Z7 -Od
9c8b866
-DEBUG_LDFLAGS =	-debug:full -debugtype:cv  
9c8b866
+DEBUG_LDFLAGS =	-debug:full -debugtype:cv
9c8b866
 DEBUG_DEFINES = -DUSE_TCLALLOC=0
9c8b866
-TK_LIB        =	$(TKDIR)/win/Debug/tk$(v2)d.lib  
9c8b866
-TCL_LIB       =	$(TCLDIR)/win/Debug/tcl$(v2)d.lib 
9c8b866
+TK_LIB        =	$(TKDIR)/win/Debug/tk$(v2)d.lib
9c8b866
+TCL_LIB       =	$(TCLDIR)/win/Debug/tcl$(v2)d.lib
9c8b866
 MSVCRT        =	msvcrtd.lib
9c8b866
 else
9c8b866
-CFLAGS        =	-Ox -GB -GD 
9c8b866
-DEBUG_LDFLAGS =	-debug:full -debugtype:cv  
9c8b866
-TK_LIB        =	$(TKDIR)/win/Release/tk$(v2).lib  
9c8b866
-TCL_LIB       =	$(TCLDIR)/win/Release/tcl$(v2).lib 
9c8b866
+CFLAGS        =	-Ox -GB
9c8b866
+DEBUG_LDFLAGS =	-debug:full -debugtype:cv
9c8b866
+TK_LIB        =	$(TKDIR)/win/Release/tk$(v2).lib
9c8b866
+TCL_LIB       =	$(TCLDIR)/win/Release/tcl$(v2).lib
9c8b866
 MSVCRT        =	msvcrt.lib
9c8b866
 endif
9c8b866
 
9c8b866
-EXTRA_CFLAGS  =	-nologo -W3 
9c8b866
+EXTRA_CFLAGS  =	-nologo -W3
9c8b866
 
9c8b866
 # ------------------------------------------------------------------------
9c8b866
-# 	Linker flags and options 
9c8b866
+# 	Linker flags and options
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 
9c8b866
 COMMON_LDFLAGS = -nodefaultlib -release -nologo -warn:3 \
9c8b866
@@ -72,14 +71,14 @@
9c8b866
 SHLIB_LDFLAGS = $(COMMON_LDFLAGS) \
9c8b866
 		-subsystem:console -entry:mainCRTStartup \
9c8b866
 		-subsystem:windows -entry:WinMainCRTStartup \
9c8b866
-		-entry:_DllMainCRTStartup$(DLLENTRY) -dll  
9c8b866
+		-entry:_DllMainCRTStartup$(DLLENTRY) -dll
9c8b866
 
9c8b866
 LDFLAGS       =	$(COMMON_LDFLAGS) \
9c8b866
-		-fixed:NO -stack:2300000 
9c8b866
+		-fixed:NO -stack:2300000
9c8b866
 
9c8b866
 COMMON_LIBS   =	$(TK_LIB) $(TCL_LIB) \
9c8b866
 		$(MSVCRT) \
9c8b866
-		kernel32.lib user32.lib 
9c8b866
+		kernel32.lib user32.lib
9c8b866
 
9c8b866
 EXTRA_LIBS    =	$(OLELIB) \
9c8b866
 		$(JPEGLIB) \
9c8b866
@@ -89,11 +88,11 @@
9c8b866
 		winspool.lib \
9c8b866
 		comdlg32.lib
9c8b866
 
9c8b866
-TCL_ONLY_LIBS = $(TCL_LIB) $(MSVCRT)  kernel32.lib user32.lib advapi32.lib 
9c8b866
+TCL_ONLY_LIBS = $(TCL_LIB) $(MSVCRT)  kernel32.lib user32.lib advapi32.lib
9c8b866
 
9c8b866
 
9c8b866
 # ------------------------------------------------------------------------
9c8b866
-# 	Source and target installation directories 
9c8b866
+# 	Source and target installation directories
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 
9c8b866
 srcdir        =	.
9c8b866
@@ -108,7 +107,6 @@
9c8b866
 TCLDIR        =	$(srcdir)/../../tcl$(v3)
9c8b866
 TKDIR         =	$(srcdir)/../../tk$(v3)
9c8b866
 INCLUDES      =	-I. -I$(srcdir) \
9c8b866
-		-I$(TOOLS32)/include \
9c8b866
 		-I$(JPEGINC) \
9c8b866
 		-I$(TCLDIR)/win -I$(TCLDIR)/generic \
9c8b866
 		-I$(TKDIR)/win -I$(TKDIR)/generic -I$(TKDIR)/xlib \
9c8b866
@@ -122,9 +120,9 @@
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 
9c8b866
 N_OBJS       =	bltTed.o
9c8b866
-V3_OBJS       =	bltTri.o bltGrMt.o 
9c8b866
+V3_OBJS       =	bltTri.o bltGrMt.o
9c8b866
 
9c8b866
-TK_OBJS       =	tkButton.o tkFrame.o tkScrollbar.o 
9c8b866
+TK_OBJS       =	tkButton.o tkFrame.o tkScrollbar.o
9c8b866
 
9c8b866
 GRAPH_OBJS =	bltGrAxis.o \
9c8b866
 		bltGrBar.o \
9c8b866
@@ -137,7 +135,7 @@
9c8b866
 		bltGrMisc.o \
9c8b866
 		bltGrPen.o \
9c8b866
 		bltGrPs.o \
9c8b866
-		bltGraph.o 
9c8b866
+		bltGraph.o
9c8b866
 
9c8b866
 TCL_ONLY_OBJS =	bltAlloc.o \
9c8b866
 		bltArrayObj.o \
9c8b866
@@ -161,8 +159,7 @@
9c8b866
 		bltWatch.o  \
9c8b866
 		bltWinPipe.o \
9c8b866
 		bltWinUtil.o \
9c8b866
-		bltWinDde.o \
9c8b866
-		pure_api.o
9c8b866
+		bltWinDde.o
9c8b866
 
9c8b866
 DEMO_OBJS     =	tkConsole.o bltWinMain.o
9c8b866
 
9c8b866
@@ -196,14 +193,14 @@
9c8b866
 		bltWindow.o \
9c8b866
 		bltObjConfig.o \
9c8b866
 		bltWinop.o \
9c8b866
-		$(TK_OBJS) $(N_OBJS) 
9c8b866
+		$(TK_OBJS) $(N_OBJS)
9c8b866
 
9c8b866
 NOT_YET       =	bltContainer.o bltCutBuffer.o bltColor.o
9c8b866
 
9c8b866
 HEADERS       =	blt.h bltChain.h bltVector.h bltTree.h bltPool.h bltHash.h
9c8b866
 
9c8b866
 # GNU Make-specific macro
9c8b866
-SRCS          =	$(patsubst %.o,$(srcdir)/%.c,$(OBJS)) 
9c8b866
+SRCS          =	$(patsubst %.o,$(srcdir)/%.c,$(OBJS))
9c8b866
 
9c8b866
 shell_name    = bltwish
9c8b866
 version       =	$(BLT_MAJOR_VERSION)$(BLT_MINOR_VERSION)
9c8b866
@@ -214,9 +211,9 @@
9c8b866
 
9c8b866
 lib_name =	BLT$(version)
9c8b866
 lib_a =		BLT$(version).lib
9c8b866
-lib_so =	BLT$(version).dll		
9c8b866
+lib_so =	BLT$(version).dll
9c8b866
 tcl_only_lib_a = BLTlite$(version).lib
9c8b866
-tcl_only_lib_so = BLTlite$(version).dll		
9c8b866
+tcl_only_lib_so = BLTlite$(version).dll
9c8b866
 
9c8b866
 CC_SWITCHES   =	$(CFLAGS) $(EXTRA_CFLAGS) $(DEFINES) $(INCLUDES)
9c8b866
 VPATH         =	$(srcdir)
9c8b866
@@ -232,21 +229,19 @@
9c8b866
 build-dll: build-library $(lib_so) $(tcl_only_lib_so)
9c8b866
 
9c8b866
 $(bltwish): $(lib_a) tkConsole.o  bltWinMain.c
9c8b866
-	$(RM) $(bltwish) 
9c8b866
+	$(RM) $(bltwish)
9c8b866
 	$(CC) -c $(CC_SWITCHES) -DTCLLIBPATH=\"$(TCLLIBPATH)\" \
9c8b866
 		-FobltWinMain.o $(srcdir)/bltWinMain.c
9c8b866
-	LIB=$(TOOLS32)/lib \
9c8b866
 	$(LD) $(LDFLAGS) tkConsole.o bltWinMain.o -out:$(bltwish) \
9c8b866
-		$(lib_a) $(LIBS) 
9c8b866
+		$(lib_a) $(LIBS)
9c8b866
 
9c8b866
 $(bltsh): $(tcl_only_lib_a) bltWinMain.c
9c8b866
-	$(RM) $(bltsh) 
9c8b866
+	$(RM) $(bltsh)
9c8b866
 	$(CC) -c $(CC_SWITCHES) -DTCL_ONLY \
9c8b866
 		-DTCLLIBPATH=\"$(TCLLIBPATH)\" \
9c8b866
 		-FobltWinMain.o $(srcdir)/bltWinMain.c
9c8b866
-	LIB=$(TOOLS32)/lib \
9c8b866
 	$(LD) $(LDFLAGS) bltWinMain.o -out:$(bltsh) \
9c8b866
-		$(tcl_only_lib_a) $(TCL_ONLY_LIBS) 
9c8b866
+		$(tcl_only_lib_a) $(TCL_ONLY_LIBS)
9c8b866
 
9c8b866
 $(lib_a):  bltHash.h $(OBJS) bltInit.c
9c8b866
 	$(RM) bltInit.o
9c8b866
@@ -260,7 +255,6 @@
9c8b866
 	$(CC) -c $(CC_SWITCHES) -DBLT_LIBRARY=\"$(BLT_LIBRARY)\" \
9c8b866
 		-FobltInit.o $(srcdir)/bltInit.c
9c8b866
 	$(RM) $@
9c8b866
-	LIB=$(TOOLS32)/lib \
9c8b866
 	$(LD) $(SHLIB_LDFLAGS) -out:$@ bltInit.o $(OBJS) $(SHLIB_LD_LIBS)
9c8b866
 
9c8b866
 $(tcl_only_lib_a):  bltHash.h $(TCL_ONLY_OBJS) bltInit.c
9c8b866
@@ -268,16 +262,15 @@
9c8b866
 	$(CC) -c $(CC_SWITCHES) -DTCL_ONLY -DBLT_LIBRARY=\"$(BLT_LIBRARY)\" \
9c8b866
 		-FobltInit.o $(srcdir)/bltInit.c
9c8b866
 	$(RM) $@
9c8b866
-	$(AR) -out:$@ bltInit.o $(TCL_ONLY_OBJS) 
9c8b866
+	$(AR) -out:$@ bltInit.o $(TCL_ONLY_OBJS)
9c8b866
 
9c8b866
 $(tcl_only_lib_so): $(tcl_only_lib_a) $(TCL_ONLY_OBJS) bltInit.c
9c8b866
 	$(RM) bltInit.o
9c8b866
 	$(CC) -c $(CC_SWITCHES) -DTCL_ONLY -DBLT_LIBRARY=\"$(BLT_LIBRARY)\" \
9c8b866
 		-FobltInit.o $(srcdir)/bltInit.c
9c8b866
 	$(RM) $@
9c8b866
-	LIB=$(TOOLS32)/lib \
9c8b866
 	$(LD) $(SHLIB_LDFLAGS) -out:$@ bltInit.o $(TCL_ONLY_OBJS) \
9c8b866
-		$(TCL_ONLY_LIBS) 
9c8b866
+		$(TCL_ONLY_LIBS)
9c8b866
 
9c8b866
 bltHash.h: bltHash.h.in
9c8b866
 	sed -e 's/@SIZEOF_VOID_P@/4/' \
9c8b866
@@ -295,7 +288,7 @@
9c8b866
 	    fi ; \
9c8b866
         done
9c8b866
 
9c8b866
-install-binaries: install-lib install-demos 
9c8b866
+install-binaries: install-lib install-demos
9c8b866
 
9c8b866
 install-demos: build-demos
9c8b866
 	$(INSTALL) $(bltwish) $(bindir)/$(bltwish)
9c8b866
@@ -303,8 +296,8 @@
9c8b866
 	$(INSTALL) $(bltsh) $(bindir)/$(bltsh)
9c8b866
 	$(INSTALL) $(bltsh) $(bindir)/$(bltsh2)
9c8b866
 
9c8b866
-install-lib: $(lib_so) $(lib_a) 
9c8b866
-	$(INSTALL_DATA) $(lib_so) $(bindir)
9c8b866
+install-lib: $(lib_so) $(lib_a)
9c8b866
+	$(INSTALL_DATA) $(lib_so) $(libdir)
9c8b866
 	$(INSTALL_DATA) $(lib_a) $(libdir)
9c8b866
 	$(INSTALL_DATA) $(tcl_only_lib_so) $(bindir)
9c8b866
 	$(INSTALL_DATA) $(tcl_only_lib_a) $(libdir)
9c8b866
@@ -321,11 +314,11 @@
9c8b866
 	$(RM) *.o *.pdb *.exp \
9c8b866
 		$(lib_a) $(lib_so) $(tcl_only_lib_a) $(tcl_only_lib_so) \
9c8b866
 		$(bltwish) $(bltsh) $(bltwish2) $(bltsh2)
9c8b866
-	$(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"*  
9c8b866
+	$(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"*
9c8b866
+	$(RM) bltHash.h
9c8b866
 
9c8b866
 distclean: clean
9c8b866
 	$(RM) Makefile
9c8b866
 
9c8b866
-.c.o:
9c8b866
+%.o : %.c
9c8b866
 	$(CC) -c $(CC_SWITCHES) -Fo$*.o $<
9c8b866
-
9c8b866
Sólo en blt2.4z/src: pure_api.c
9c8b866
diff -ur blt2.4z/src/shared/Makefile.in blt2.4z-8.5.2/src/shared/Makefile.in
9c8b866
--- blt2.4z/src/shared/Makefile.in	2002-05-14 23:37:19.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/src/shared/Makefile.in	2008-04-15 17:31:25.000000000 +0200
9c8b866
@@ -175,10 +175,10 @@
9c8b866
         done
9c8b866
 clean:
9c8b866
 	$(RM) $(OBJS) $(lib_so) $(tcl_only_lib_so) $(bltwish) $(bltsh) \
9c8b866
-		*pure* .pure* 
9c8b866
+		*pure* .pure* bltInit.o
9c8b866
 
9c8b866
 distclean: clean
9c8b866
-	$(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"* 
9c8b866
+	$(RM) Makefile $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"* 
9c8b866
 
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 # 	in lieu of viewpath-ing...
9c8b866
Sólo en blt2.4z-8.5.2/src: t.t
9c8b866
diff -ur blt2.4z/win/makedefs blt2.4z-8.5.2/win/makedefs
9c8b866
--- blt2.4z/win/makedefs	2002-10-16 07:33:53.000000000 +0200
9c8b866
+++ blt2.4z-8.5.2/win/makedefs	2008-04-15 17:31:26.000000000 +0200
9c8b866
@@ -3,33 +3,13 @@
9c8b866
 
9c8b866
 v1 = 8.4
9c8b866
 v2 = 84
9c8b866
-v3 = 8.4.0
9c8b866
-
9c8b866
-#v1 = 8.3
9c8b866
-#v2 = 83
9c8b866
-#v3 = 8.3.4
9c8b866
-
9c8b866
-#v1 = 8.3
9c8b866
-#v2 = 83
9c8b866
-#v3 = 8.3.2
9c8b866
-
9c8b866
-#v1 = 8.2
9c8b866
-#v2 = 82
9c8b866
-#v3 = 8.2.3
9c8b866
-
9c8b866
-#v1 = 8.1
9c8b866
-#v2 = 81
9c8b866
-#v3 = 8.1.1
9c8b866
-
9c8b866
-#v1 = 8.0
9c8b866
-#v2 = 80
9c8b866
-#v3 = 8.0.5
9c8b866
+v3 = 8.4.12
9c8b866
 
9c8b866
 #Use Independent JPEG Group (IJG) library or Intel JPEG Library (IJL)
9c8b866
 # 0 = None.
9c8b866
 # 1 = IJG
9c8b866
 # 2 = IJL
9c8b866
-WITH_JPEG=2
9c8b866
+WITH_JPEG=0
9c8b866
 
9c8b866
 # ------------------------------------------------------------------------
9c8b866
 #       You shouldn't need to edit anything beyond this point
9c8b866
@@ -39,7 +19,7 @@
9c8b866
 BLT_MINOR_VERSION = 	4
9c8b866
 BLT_VERSION =		2.4
9c8b866
 
9c8b866
-prefix =		C:/Program\ Files/Tcl
9c8b866
+prefix =		x:/target/staff/koen/install/tcltk8.4.12/WIN
9c8b866
 exec_prefix =		$(prefix)
9c8b866
 includedir =		$(prefix)/include
9c8b866
 bindir =		$(prefix)/bin
9c8b866
@@ -48,7 +28,7 @@
9c8b866
 BLT_LIBRARY =		$(libdir)/blt$(BLT_VERSION)
9c8b866
 TCLLIBPATH =		$(libdir)/tcl$(v1)
7a11b9e
 
9c8b866
-AUX_LIBS = 
9c8b866
+AUX_LIBS =
9c8b866
 SHLIB_SUFFIX =		.dll
7a11b9e
 
9c8b866
 INSTALL =		install -m 0755