This takes care of the two issues and brings another bit into alignment with 
the Tcl source.
I think I got the p0's right and I don't think there's a need to bump the lib.
I didn't put --disable-load in. It takes an insane amount of time for me to
even get a vax emu setup with -current and such and I'm not much of a vaxochist.
I doubt I coined that word. Looks ok to me on i386.
Stu


Index: lang/tcl/8.5/Makefile
===================================================================
RCS file: /cvs/ports/lang/tcl/8.5/Makefile,v
retrieving revision 1.9
diff -N -u -p lang/tcl/8.5/Makefile
--- lang/tcl/8.5/Makefile       6 Feb 2010 10:27:21 -0000       1.9
+++ lang/tcl/8.5/Makefile       3 Jun 2010 10:24:02 -0000
@@ -3,7 +3,7 @@
 COMMENT =              Tool Command Language

 DISTNAME =             tcl8.5.8
-PKGNAME =              tcl-8.5.8
+PKGNAME =              tcl-8.5.8p0
 SHARED_LIBS =          tcl85 0.5
 CATEGORIES =           lang lang/tcl
 HOMEPAGE =             http://www.tcl.tk/
Index: lang/tcl/8.5/patches/patch-generic_tclStrToD_c
===================================================================
RCS file: /cvs/ports/lang/tcl/8.5/patches/patch-generic_tclStrToD_c,v
retrieving revision 1.1
diff -N -u -p lang/tcl/8.5/patches/patch-generic_tclStrToD_c
--- lang/tcl/8.5/patches/patch-generic_tclStrToD_c      22 Nov 2009 22:58:30 
-0000      1.1
+++ lang/tcl/8.5/patches/patch-generic_tclStrToD_c      3 Jun 2010 10:24:02 
-0000
@@ -1,21 +1,54 @@
 $OpenBSD: patch-generic_tclStrToD_c,v 1.1 2009/11/22 22:58:30 jasper Exp $
---- generic/tclStrToD.c.orig   Sun Nov 22 13:37:00 2009
-+++ generic/tclStrToD.c        Sun Nov 22 13:39:08 2009
-@@ -73,7 +73,7 @@ typedef unsigned int fpu_control_t __attribute__ ((__m
+--- generic/tclStrToD.c.orig   Thu Jul 16 16:50:54 2009
++++ generic/tclStrToD.c        Thu May 27 23:52:09 2010
+@@ -71,9 +71,10 @@ typedef unsigned int fpu_control_t __attribute__ ((__m
+
+ /*
   * MIPS floating-point units need special settings in control registers
-  * to use gradual underflow as we expect.
+- * to use gradual underflow as we expect.
++ * to use gradual underflow as we expect.  This fix is for the MIPSpro
++ * compiler.
   */
 -#if defined(__mips)
-+#if defined(__mips) && !defined(__OpenBSD__)
++#if defined(__sgi) && defined(_COMPILER_VERSION)
  #include <sys/fpu.h>
  #endif
  /*
-@@ -2166,7 +2166,7 @@ TclInitDoubleConversion(void)
+@@ -947,12 +948,14 @@ TclParseNumber(
+       case sINFIN:
+       case sINFINI:
+       case sINFINIT:
++#ifdef IEEE_FLOATING_POINT
+       case sN:
+       case sNA:
+       case sNANPAREN:
+       case sNANHEX:
+           Tcl_Panic("TclParseNumber: bad acceptState %d parsing '%s'",
+                   acceptState, bytes);
++#endif
+
+       case BINARY:
+           shift = numTrailZeros;
+@@ -1134,11 +1137,13 @@ TclParseNumber(
+           objPtr->typePtr = &tclDoubleType;
+           break;
+
++#ifdef IEEE_FLOATING_POINT
+       case sNAN:
+       case sNANFINISH:
+           objPtr->internalRep.doubleValue = MakeNaN(signum, significandWide);
+           objPtr->typePtr = &tclDoubleType;
+           break;
++#endif
+
+       case INITIAL:
+           /* This case only to silence compiler warning */
+@@ -2166,7 +2171,7 @@ TclInitDoubleConversion(void)
      } bitwhack;
  #endif

 -#if defined(__mips)
-+#if defined(__mips) && !defined(__OpenBSD__)
++#if defined(__sgi) && defined(_COMPILER_VERSION)
      union fpc_csr mipsCR;

      mipsCR.fc_word = get_fpc_csr();
Index: x11/tk/8.5/Makefile
===================================================================
RCS file: /cvs/ports/x11/tk/8.5/Makefile,v
retrieving revision 1.12
diff -N -u -p x11/tk/8.5/Makefile
--- x11/tk/8.5/Makefile 21 Nov 2009 02:50:23 -0000      1.12
+++ x11/tk/8.5/Makefile 3 Jun 2010 10:24:02 -0000
@@ -3,7 +3,7 @@
 COMMENT =              graphical toolkit for Tcl

 DISTNAME =             tk8.5.8
-PKGNAME =              tk-8.5.8
+PKGNAME =              tk-8.5.8p0
 SHARED_LIBS =          tk85 0.5
 CATEGORIES =           x11 x11/tk
 HOMEPAGE =             http://www.tcl.tk/
@@ -15,13 +15,13 @@ PERMIT_PACKAGE_FTP =        Yes
 PERMIT_DISTFILES_CDROM =Yes
 PERMIT_DISTFILES_FTP = Yes

-WANTLIB =              X11 Xau Xdmcp Xext Xft Xrender Xss c expat fontconfig 
freetype m z \
-                       pthread-stubs xcb
+WANTLIB =              X11 Xau Xdmcp Xext Xft Xrender Xss c expat fontconfig 
freetype m z

 MASTER_SITES =         ${MASTER_SITE_SOURCEFORGE:=tcl/}
 DISTFILES =            ${DISTNAME}-src.tar.gz

 .if ${MACHINE_ARCH} != "m88k" && ${MACHINE_ARCH} != "vax"
+WANTLIB +=             pthread-stubs xcb
 MAKE_FLAGS +=          TK_BUILD_EXP_FILE="libtk85.a" \
                        TK_EXP_FILE="libtk85.a"
 .endif
@@ -56,9 +56,9 @@ FLAVOR ?=
 .if ${FLAVOR:L:Mthreaded}
 CONFIGURE_ARGS +=      --enable-threads
 WANTLIB +=             pthread
-LIB_DEPENDS =          tcl85:tcl->=8.5.8,<8.5.9-${FLAVOR}:lang/tcl/8.5
+LIB_DEPENDS =          tcl85:tcl->=8.5.8p0,<8.5.9-${FLAVOR}:lang/tcl/8.5
 .else
-LIB_DEPENDS =          tcl85:tcl->=8.5.8,<8.5.9:lang/tcl/8.5
+LIB_DEPENDS =          tcl85:tcl->=8.5.8p0,<8.5.9:lang/tcl/8.5
 .endif

 WRKSRC =               ${WRKDIST}/unix
Index: x11/tk/8.5/patches/patch-unix_tkUnixWm_c
===================================================================
RCS file: x11/tk/8.5/patches/patch-unix_tkUnixWm_c
diff -N -u -p x11/tk/8.5/patches/patch-unix_tkUnixWm_c
--- /dev/null   3 Jun 2010 10:24:02 -0000
+++ x11/tk/8.5/patches/patch-unix_tkUnixWm_c    3 Jun 2010 10:24:02 -0000
@@ -0,0 +1,43 @@
+$OpenBSD$
+--- unix/tkUnixWm.c.orig       Thu Jun  3 05:19:50 2010
++++ unix/tkUnixWm.c    Thu Jun  3 05:28:26 2010
+@@ -2335,7 +2335,7 @@ WmIconphotoCmd(
+     Tk_PhotoHandle photo;
+     Tk_PhotoImageBlock block;
+     int i, size = 0, width, height, index = 0, x, y, isDefault = 0;
+-    unsigned int *iconPropertyData;
++    unsigned long *iconPropertyData;
+
+     if (objc < 4) {
+       Tcl_WrongNumArgs(interp, 2, objv,
+@@ -2375,15 +2375,17 @@ WmIconphotoCmd(
+
+     /*
+      * We have calculated the size of the data. Try to allocate the needed
+-     * memory space.
++     * memory space. This is an unsigned long array (despite this being twice
++     * as much as is really needed on LP64 platforms) because that's what X
++     * defines CARD32 arrays to use. [Bug 2902814]
+      */
+
+-    iconPropertyData = (unsigned int *)
+-          Tcl_AttemptAlloc(sizeof(unsigned int) * size);
++    iconPropertyData = (unsigned long *)
++          Tcl_AttemptAlloc(sizeof(unsigned long) * size);
+     if (iconPropertyData == NULL) {
+       return TCL_ERROR;
+     }
+-    memset(iconPropertyData, 0, sizeof(unsigned int) * size);
++    memset(iconPropertyData, 0, sizeof(unsigned long) * size);
+
+     for (i = 3 + isDefault; i < objc; i++) {
+       photo = Tk_FindPhoto(interp, Tcl_GetString(objv[i]));
+@@ -2421,7 +2423,7 @@ WmIconphotoCmd(
+           for (x = 0; x < width; x++) {
+               register unsigned char *pixelPtr =
+                       block.pixelPtr + x*block.pixelSize + y*block.pitch;
+-              register unsigned int R, G, B, A;
++              register unsigned long R, G, B, A;
+
+               R = pixelPtr[block.offset[0]];
+               G = pixelPtr[block.offset[1]];

Reply via email to