pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: x11/blt: please package tkblt



Adding $MAINTAINER explicitly...

Thomas Klausner <wiz%NetBSD.org@localhost> writes:

> x11/blt is broken; it depends on tk 8.6 but the code is much older
> than that release and not fully compatible.
>
> It is used by cad/magic and net/ttt.
>
> There is a port of blt for tk 8.6 here:
>
> https://github.com/wjoye/tkblt

I basically packaged tkblt by url2pkg, and nuking the patches which seem
not to apply after a major rototill.  It has a very different PLIST, and
there is RPATH missing for x11, but it almost packages.   It probably
needs more help.

> Can someone who is interested in either of the three packages please
> package tkblt and switch the other packages to use it?
>
> Otherwise I think it's probably best to remove the three packages,
> since they won't work as-is currently.

This feels overly aggressive, given that the beyond-pkgsrc world has
done the work to get blt to work with 8.6 and magic has a functioning
upstream.  But it may be that nobody here cares enough.   To me that
calls for marking BROKEN, not immediate rm.


I've attached my patch for tkblt, really updating blt to tkblt.   It
seems to be a continuation fork, and the old one can't build, but maybe
you think there should be a new package?



Brook: your thoughts?

? DIFF.blt.txt
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/x11/blt/Makefile,v
retrieving revision 1.38
diff -u -p -r1.38 Makefile
--- Makefile	6 Jun 2022 04:27:14 -0000	1.38
+++ Makefile	9 Jun 2022 22:31:58 -0000
@@ -1,22 +1,22 @@
 # $NetBSD: Makefile,v 1.38 2022/06/06 04:27:14 dholland Exp $
 
-DISTNAME=	BLT2.4z
-PKGNAME=	blt-2.4z
-PKGREVISION=	13
-CATEGORIES=	x11
-MASTER_SITES=	${MASTER_SITE_SOURCEFORGE:=blt/}
-
-PATCH_SITES=		${MASTER_SITES}
-PATCHFILES=		blt2.4z-patch-2
-PATCH_DIST_STRIP=	-p1
+VERSION=	3.2.23
+GITHUB_PROJECT= tkblt
+GITHUB_TAG=     V${VERSION}
+DISTNAME=       ${VERSION}
+PKGNAME=        ${GITHUB_PROJECT}-${VERSION}
+CATEGORIES=     x11
+MASTER_SITES=   ${MASTER_SITE_GITHUB:=wjoye/}
+DIST_SUBDIR=    ${GITHUB_PROJECT}
 
 MAINTAINER=	brook%nmsu.edu@localhost
 HOMEPAGE=	http://blt.sourceforge.net/
 COMMENT=	Extension to Tcl/Tk
 
-MAKE_JOBS_SAFE=	no
+WRKSRC=		${WRKDIR}/${GITHUB_PROJECT}-${VERSION}
+
+USE_LANGUAGES=	c99 c++
 
-WRKSRC=			${WRKDIR}/blt2.4z
 GNU_CONFIGURE=		yes
 CONFIGURE_ARGS+=	--exec-prefix=${PREFIX}
 CONFIGURE_ARGS+=	--with-tcl=${BUILDLINK_PREFIX.tcl}/lib
@@ -26,6 +26,8 @@ CONFIGURE_ENV+=		LDF=${LDFLAGS:Q}
 CFLAGS+=		-DUSE_INTERP_RESULT
 MAKE_ENV+=		CP=${CP:Q}
 
+MAKE_JOBS_SAFE=	no
+
 CHECK_INTERPRETER_SKIP+=	lib/*/demos/*.tcl
 
 INSTALL_MAKE_FLAGS+=	INSTALL_ROOT=${DESTDIR}
Index: PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/x11/blt/PLIST,v
retrieving revision 1.4
diff -u -p -r1.4 PLIST
--- PLIST	1 Feb 2014 18:12:13 -0000	1.4
+++ PLIST	9 Jun 2022 22:31:58 -0000
@@ -1,206 +1,13 @@
-@comment $NetBSD: PLIST,v 1.4 2014/02/01 18:12:13 adam Exp $
-bin/bltsh
-bin/bltsh24
-bin/bltwish
-bin/bltwish24
-include/blt.h
-include/bltBind.h
-include/bltChain.h
-include/bltHash.h
-include/bltList.h
-include/bltPool.h
-include/bltTree.h
-include/bltVector.h
-lib/blt2.4/NEWS
-lib/blt2.4/PROBLEMS
-lib/blt2.4/README
-lib/blt2.4/bltCanvEps.pro
-lib/blt2.4/bltGraph.pro
-lib/blt2.4/dd_protocols/dd-color.tcl
-lib/blt2.4/dd_protocols/dd-file.tcl
-lib/blt2.4/dd_protocols/dd-number.tcl
-lib/blt2.4/dd_protocols/dd-text.tcl
-lib/blt2.4/dd_protocols/tclIndex
-lib/blt2.4/demos/barchart1.tcl
-lib/blt2.4/demos/barchart2.tcl
-lib/blt2.4/demos/barchart3.tcl
-lib/blt2.4/demos/barchart4.tcl
-lib/blt2.4/demos/barchart5.tcl
-lib/blt2.4/demos/bgexec1.tcl
-lib/blt2.4/demos/bgexec2.tcl
-lib/blt2.4/demos/bgexec3.tcl
-lib/blt2.4/demos/bgexec4.tcl
-lib/blt2.4/demos/bitmap.tcl
-lib/blt2.4/demos/bitmaps/face.xbm
-lib/blt2.4/demos/bitmaps/fish/left.xbm
-lib/blt2.4/demos/bitmaps/fish/left1.xbm
-lib/blt2.4/demos/bitmaps/fish/left1m.xbm
-lib/blt2.4/demos/bitmaps/fish/leftm.xbm
-lib/blt2.4/demos/bitmaps/fish/mid.xbm
-lib/blt2.4/demos/bitmaps/fish/midm.xbm
-lib/blt2.4/demos/bitmaps/fish/right.xbm
-lib/blt2.4/demos/bitmaps/fish/right1.xbm
-lib/blt2.4/demos/bitmaps/fish/right1m.xbm
-lib/blt2.4/demos/bitmaps/fish/rightm.xbm
-lib/blt2.4/demos/bitmaps/greenback.xbm
-lib/blt2.4/demos/bitmaps/hand/hand01.xbm
-lib/blt2.4/demos/bitmaps/hand/hand01m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand02.xbm
-lib/blt2.4/demos/bitmaps/hand/hand02m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand03.xbm
-lib/blt2.4/demos/bitmaps/hand/hand03m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand04.xbm
-lib/blt2.4/demos/bitmaps/hand/hand04m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand05.xbm
-lib/blt2.4/demos/bitmaps/hand/hand05m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand06.xbm
-lib/blt2.4/demos/bitmaps/hand/hand06m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand07.xbm
-lib/blt2.4/demos/bitmaps/hand/hand07m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand08.xbm
-lib/blt2.4/demos/bitmaps/hand/hand08m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand09.xbm
-lib/blt2.4/demos/bitmaps/hand/hand09m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand10.xbm
-lib/blt2.4/demos/bitmaps/hand/hand10m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand11.xbm
-lib/blt2.4/demos/bitmaps/hand/hand11m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand12.xbm
-lib/blt2.4/demos/bitmaps/hand/hand12m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand13.xbm
-lib/blt2.4/demos/bitmaps/hand/hand13m.xbm
-lib/blt2.4/demos/bitmaps/hand/hand14.xbm
-lib/blt2.4/demos/bitmaps/hand/hand14m.xbm
-lib/blt2.4/demos/bitmaps/hobbes.xbm
-lib/blt2.4/demos/bitmaps/hobbes_mask.xbm
-lib/blt2.4/demos/bitmaps/sharky.xbm
-lib/blt2.4/demos/bitmaps/xbob.xbm
-lib/blt2.4/demos/busy1.tcl
-lib/blt2.4/demos/busy2.tcl
-lib/blt2.4/demos/dnd1.tcl
-lib/blt2.4/demos/dnd2.tcl
-lib/blt2.4/demos/dragdrop1.tcl
-lib/blt2.4/demos/dragdrop2.tcl
-lib/blt2.4/demos/eps.tcl
-lib/blt2.4/demos/graph1.tcl
-lib/blt2.4/demos/graph2.tcl
-lib/blt2.4/demos/graph3.tcl
-lib/blt2.4/demos/graph4.tcl
-lib/blt2.4/demos/graph5.tcl
-lib/blt2.4/demos/graph6.tcl
-lib/blt2.4/demos/graph7.tcl
-lib/blt2.4/demos/hierbox1.tcl
-lib/blt2.4/demos/hierbox2.tcl
-lib/blt2.4/demos/hierbox3.tcl
-lib/blt2.4/demos/hierbox4.tcl
-lib/blt2.4/demos/hiertable1.tcl
-lib/blt2.4/demos/hiertable2.tcl
-lib/blt2.4/demos/htext.txt
-lib/blt2.4/demos/htext1.tcl
-lib/blt2.4/demos/images/blt98.gif
-lib/blt2.4/demos/images/buckskin.gif
-lib/blt2.4/demos/images/chalk.gif
-lib/blt2.4/demos/images/close.gif
-lib/blt2.4/demos/images/close2.gif
-lib/blt2.4/demos/images/clouds.gif
-lib/blt2.4/demos/images/corrugated_metal.gif
-lib/blt2.4/demos/images/folder.gif
-lib/blt2.4/demos/images/mini-book1.gif
-lib/blt2.4/demos/images/mini-book2.gif
-lib/blt2.4/demos/images/mini-display.gif
-lib/blt2.4/demos/images/mini-doc.gif
-lib/blt2.4/demos/images/mini-filemgr.gif
-lib/blt2.4/demos/images/mini-ofolder.gif
-lib/blt2.4/demos/images/mini-windows.gif
-lib/blt2.4/demos/images/ofolder.gif
-lib/blt2.4/demos/images/open.gif
-lib/blt2.4/demos/images/open2.gif
-lib/blt2.4/demos/images/out.ps
-lib/blt2.4/demos/images/qv100.t.gif
-lib/blt2.4/demos/images/rain.gif
-lib/blt2.4/demos/images/sample.gif
-lib/blt2.4/demos/images/smblue_rock.gif
-lib/blt2.4/demos/images/stopsign.gif
-lib/blt2.4/demos/images/tan_paper.gif
-lib/blt2.4/demos/images/tan_paper2.gif
-lib/blt2.4/demos/images/txtrflag.gif
-lib/blt2.4/demos/scripts/barchart2.tcl
-lib/blt2.4/demos/scripts/bgtest.tcl
-lib/blt2.4/demos/scripts/clone.tcl
-lib/blt2.4/demos/scripts/demo.tcl
-lib/blt2.4/demos/scripts/globe.tcl
-lib/blt2.4/demos/scripts/graph1.tcl
-lib/blt2.4/demos/scripts/graph2.tcl
-lib/blt2.4/demos/scripts/graph3.tcl
-lib/blt2.4/demos/scripts/graph5.tcl
-lib/blt2.4/demos/scripts/graph8.tcl
-lib/blt2.4/demos/scripts/page.tcl
-lib/blt2.4/demos/scripts/patterns.tcl
-lib/blt2.4/demos/scripts/ps.tcl
-lib/blt2.4/demos/scripts/send.tcl
-lib/blt2.4/demos/scripts/stipples.tcl
-lib/blt2.4/demos/scripts/xcolors.tcl
-lib/blt2.4/demos/spline.tcl
-lib/blt2.4/demos/stripchart1.tcl
-lib/blt2.4/demos/tabnotebook1.tcl
-lib/blt2.4/demos/tabnotebook2.tcl
-lib/blt2.4/demos/tabnotebook3.tcl
-lib/blt2.4/demos/tabset1.tcl
-lib/blt2.4/demos/tabset2.tcl
-lib/blt2.4/demos/tabset3.tcl
-lib/blt2.4/demos/tabset4.tcl
-lib/blt2.4/demos/treeview1.tcl
-lib/blt2.4/demos/winop1.tcl
-lib/blt2.4/demos/winop2.tcl
-lib/blt2.4/dnd.tcl
-lib/blt2.4/dragdrop.tcl
-lib/blt2.4/graph.tcl
-lib/blt2.4/hierbox.tcl
-lib/blt2.4/pkgIndex.tcl
-lib/blt2.4/tabnotebook.tcl
-lib/blt2.4/tabset.tcl
-lib/blt2.4/tclIndex
-lib/blt2.4/treeview.tcl
-lib/blt2.4/treeview.xbm
-lib/blt2.4/treeview_m.xbm
-lib/libBLT.a
-lib/libBLT24.a
-lib/libBLT24.so
-lib/libBLTlite.a
-lib/libBLTlite24.a
-lib/libBLTlite24.so
-man/man3/Blt_Tree.3
-man/man3/Blt_TreeCreate.3
-man/man3/Blt_TreeCreateNode.3
-man/man3/Blt_TreeDeleteNode.3
-man/man3/Blt_TreeExists.3
-man/man3/Blt_TreeGetNode.3
-man/man3/Blt_TreeGetToken.3
-man/man3/Blt_TreeName.3
-man/man3/Blt_TreeNodeId.3
-man/man3/Blt_TreeReleaseToken.3
+@comment $NetBSD$
+include/tkbltDecls.h
+include/tkbltVector.h
+lib/tkblt3.2/graph.tcl
+lib/tkblt3.2/libtkblt3.2.so
+lib/tkblt3.2/libtkbltstub3.2.a
+lib/tkblt3.2/pkgIndex.tcl
+lib/tkbltConfig.sh
 man/mann/BLT.n
 man/mann/barchart.n
-man/mann/beep.n
-man/mann/bgexec.n
-man/mann/bltbitmap.n
-man/mann/bltbusy.n
-man/mann/bltdebug.n
-man/mann/container.n
-man/mann/cutbuffer.n
-man/mann/dragdrop.n
-man/mann/eps.n
 man/mann/graph.n
-man/mann/hierbox.n
-man/mann/hiertable.n
-man/mann/htext.n
-man/mann/spline.n
-man/mann/stripchart.n
-man/mann/table.n
-man/mann/tabset.n
-man/mann/tile.n
-man/mann/tree.n
-man/mann/treeview.n
 man/mann/vector.n
-man/mann/watch.n
-man/mann/winop.n
+@pkgdir bin
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/x11/blt/distinfo,v
retrieving revision 1.19
diff -u -p -r1.19 distinfo
--- distinfo	6 Jun 2022 04:27:14 -0000	1.19
+++ distinfo	9 Jun 2022 22:31:58 -0000
@@ -1,30 +1,5 @@
 $NetBSD: distinfo,v 1.19 2022/06/06 04:27:14 dholland Exp $
 
-BLAKE2s (BLT2.4z.tar.gz) = 21ffc805b1d2d90331a5a6ca37ae63bb09b7a79104fb579196e8f000646756c4
-SHA512 (BLT2.4z.tar.gz) = 6e59cc03c92b452ec3114675124c2095ed4206e7b9750452764f2b21b8c82dfc376a376f0fbc721c5d0e4b56734866cdc653f3d9888a5b36b0a7500da5f8942a
-Size (BLT2.4z.tar.gz) = 2200973 bytes
-BLAKE2s (blt2.4z-patch-2) = 3e1ca8ac2fb0b27e525c231a2e3b8c12535b4bf8ff47bb790654c14b50de7d11
-SHA512 (blt2.4z-patch-2) = 2fc4e6833be7a6820c4c545d683a5949eccb34582044178be9115f37af4f281101854949e16c1671030f6957bb7a5a7d48a50b5b013b80ac522dfa7034804813
-Size (blt2.4z-patch-2) = 28594 bytes
-SHA1 (patch-aa) = 6a28cc2405adcc6037865f174bb48d81909c83d6
-SHA1 (patch-ab) = da9479d5de1053c45753eef611eae2764909f0ec
-SHA1 (patch-ac) = 696f90010831522f46d67052abc0c6068197cfd9
-SHA1 (patch-ad) = cc2579223a5a8a764d797fa16a146999cd4a796d
-SHA1 (patch-ae) = c1c2dc9f319f9e0da7af42f2b5d24639b1b5afdf
-SHA1 (patch-af) = b82641d4aad426fbe9a6781fa828d8aa81f71253
-SHA1 (patch-src_bltArrayObj.c) = 1f6d86f7be49f72b06bf053d5321608c9efa3410
-SHA1 (patch-src_bltBgexec.c) = ba01243277c4272d6a86ca2b85e167f40beb93e8
-SHA1 (patch-src_bltConfig.c) = 573942b97bbb8b607651c80e46c04314ba57c9f7
-SHA1 (patch-src_bltInit.c) = a85c7bcdb6a6eb7b5844f1770eefd10aea2d60ca
-SHA1 (patch-src_bltList.c) = e5280bdcc7b90d55923467c828d1ff3bd8669460
-SHA1 (patch-src_bltList.h) = fe0f21675b9504b16958526bb3f78d2d930501d9
-SHA1 (patch-src_bltNsUtil.h) = 31b62c5e12486195cfb2eea74bd1304acedaa342
-SHA1 (patch-src_bltObjConfig.c) = b4fabf9e9439a9f2ee24623f07e2ac72f0d0d4b2
-SHA1 (patch-src_bltScrollbar.c) = 66e2736a5dd7fc4bd7be4176f35a6a2208ace53e
-SHA1 (patch-src_bltSwitch.c) = 18962bb1dc3aa14d7c5fa773eb05908ec1638332
-SHA1 (patch-src_bltTable.c) = 7a2561eaf23378ea3aee6c6b81a1d5786f0b8659
-SHA1 (patch-src_bltTree.c) = 1402687b1496d82a6b9b6602926cb023285b9a96
-SHA1 (patch-src_bltTreeCmd.c) = 6ae6ad1f239c632d42607e7a23fb31d15281ff9a
-SHA1 (patch-src_bltUnixPipe.c) = 6311e9c17e6327b96fd3dd507f47aebe9b26dcef
-SHA1 (patch-src_bltVecObjCmd.c) = d7c63f88cba0d7dbd5691d9df5a6e2e84692f300
-SHA1 (patch-src_tkButton.c) = 39132933914ee8d52389f5be72cbc02b21e7216e
+BLAKE2s (tkblt/3.2.23.tar.gz) = 4e8e958a27e2c3e1c071bb672759331b218b6d881b400cc62da466fb99441ce7
+SHA512 (tkblt/3.2.23.tar.gz) = 1f3772321cef3dd73fed385eaea471916afc503771ead8da033868363005c21876bcbd7079595ec289ce0f72671c3bc10f95b01f13bfb94cf09b477c99b135c2
+Size (tkblt/3.2.23.tar.gz) = 431857 bytes
Index: patches/patch-aa
===================================================================
RCS file: patches/patch-aa
diff -N patches/patch-aa
--- patches/patch-aa	7 Oct 2005 17:39:26 -0000	1.9
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,30 +0,0 @@
-$NetBSD: patch-aa,v 1.9 2005/10/07 17:39:26 perry Exp $
-
---- configure.in.orig	2002-10-04 01:33:23.000000000 -0400
-+++ configure.in	2005-10-07 13:12:02.000000000 -0400
-@@ -716,8 +716,8 @@
-     TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
-     ;;
-   *)
--    TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION}"
--    TK_LIB_NAME="tk${TK_MAJOR_VERSION}.${TK_MINOR_VERSION}"
-+    TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
-+    TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
-     ;;
- esac
- 
-@@ -1236,11 +1236,13 @@
- 
-   *-netbsd*|*-freebsd*|*-openbsd*)
-     # Not available on all versions:  check for include file.
-+    EXTRA_LIB_SPECS="$PTHREAD_LDFLAGS"
-     AC_CHECK_HEADER(dlfcn.h, test_ok=yes, test_ok=no)
-     if test "$test_ok" = yes; then
-+      LDFLAGS="-L${prefix}/lib -L${X11BASE}/lib -Wl,-R${prefix}/lib -Wl,-R${X11BASE}/lib"
-       SHLIB_CFLAGS="-fpic"
-       SHLIB_LD="ld"
--      SHLIB_LD_FLAGS="-Bshareable -x"
-+      SHLIB_LD_FLAGS="-Bshareable -x -R${prefix}/lib -R${X11BASE}/lib"
-     fi
-     ;;
- 
Index: patches/patch-ab
===================================================================
RCS file: patches/patch-ab
diff -N patches/patch-ab
--- patches/patch-ab	16 Feb 2009 20:22:18 -0000	1.9
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,22 +0,0 @@
-$NetBSD: patch-ab,v 1.9 2009/02/16 20:22:18 joerg Exp $
-
---- library/Makefile.in.orig	2002-07-15 01:33:24.000000000 +0200
-+++ library/Makefile.in
-@@ -58,7 +58,7 @@ install: mkdirs pkgIndex
- 	for i in $(miscFiles) ; do \
- 	    $(INSTALL_DATA) $(srcdir)/$$i $(INSTALL_ROOT)$(scriptdir) ; \
- 	done 
--	$(INSTALL_DATA) pkgIndex.tcl $(scriptdir)
-+	$(INSTALL_DATA) pkgIndex.tcl $(INSTALL_ROOT)$(scriptdir)
- 
- mkdirs:
- 	@for i in $(instdirs) ; do \
-@@ -66,7 +66,7 @@ mkdirs:
-             : ; \
-           else \
-             echo " mkdir $(INSTALL_ROOT)$$i" ; \
--            mkdir $(INSTALL_ROOT)$$i ; \
-+            mkdir -p $(INSTALL_ROOT)$$i ; \
-           fi ; \
-         done
- 
Index: patches/patch-ac
===================================================================
RCS file: patches/patch-ac
diff -N patches/patch-ac
--- patches/patch-ac	8 Mar 2004 16:52:14 -0000	1.4
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,13 +0,0 @@
-$NetBSD: patch-ac,v 1.4 2004/03/08 16:52:14 minskim Exp $
-
---- src/bltTree.c.orig	2002-09-29 00:44:12.000000000 -0500
-+++ src/bltTree.c
-@@ -99,6 +99,8 @@ static Value *TreeNextValue _ANSI_ARGS_(
- #if (SIZEOF_VOID_P == 8)
- #define RANDOM_INDEX(i)		HashOneWord(mask, downshift, i)
- #define BITSPERWORD		64
-+#define START_LOGSIZE		10
-+#define MAX_LIST_VALUES		40
- #else 
- 
- #define START_LOGSIZE		5 /* Initial hash table size is 32. */
Index: patches/patch-ad
===================================================================
RCS file: patches/patch-ad
diff -N patches/patch-ad
--- patches/patch-ad	1 Feb 2014 18:12:13 -0000	1.5
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,24 +0,0 @@
-$NetBSD: patch-ad,v 1.5 2014/02/01 18:12:13 adam Exp $
-
---- man/Makefile.in.orig	2002-02-19 00:11:46.000000000 +0000
-+++ man/Makefile.in
-@@ -10,8 +10,8 @@ version		= @BLT_VERSION@
- 
- instdirs	= $(mandir) $(mandir)/mann $(mandir)/man3
- 
--MAN_N		= BLT.n barchart.n beep.n bgexec.n bitmap.n \
--		  bltdebug.n busy.n container.n cutbuffer.n \
-+MAN_N		= BLT.n barchart.n beep.n bgexec.n bltbitmap.n \
-+		  bltdebug.n bltbusy.n container.n cutbuffer.n \
- 		  dragdrop.n eps.n graph.n hierbox.n  \
- 		  hiertable.n htext.n spline.n stripchart.n \
- 	 	  table.n tabset.n tile.n tree.n treeview.n vector.n \
-@@ -72,3 +72,8 @@ clean:
- distclean: clean
- 	$(RM) $(srcdir)/*.bak $(srcdir)/*\~ $(srcdir)/"#"* Makefile
- 
-+bltbitmap.mann: bitmap.mann
-+	${CP} bitmap.mann bltbitmap.mann
-+
-+bltbusy.mann: busy.mann
-+	${CP} busy.mann bltbusy.mann
Index: patches/patch-ae
===================================================================
RCS file: patches/patch-ae
diff -N patches/patch-ae
--- patches/patch-ae	6 Jun 2022 04:27:14 -0000	1.9
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,49 +0,0 @@
-$NetBSD: patch-ae,v 1.9 2022/06/06 04:27:14 dholland Exp $
-
---- configure.orig	2002-10-04 05:33:59.000000000 +0000
-+++ configure
-@@ -3384,8 +3384,8 @@ case $target in
-     TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
-     ;;
-   *)
--    TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION}"
--    TK_LIB_NAME="tk${TK_MAJOR_VERSION}.${TK_MINOR_VERSION}"
-+    TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
-+    TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
-     ;;
- esac
- 
-@@ -4072,7 +4072,8 @@ fi
-     EXTRA_LIB_SPECS="-ldl"
-     ;;
- 
--  *-netbsd*|*-freebsd*|*-openbsd*)
-+  *-netbsd*|*-freebsd*|*-openbsd*|*-dragonfly*)
-+    EXTRA_LIB_SPECS="$PTHREAD_LDFLAGS"
-     # Not available on all versions:  check for include file.
-     ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6
-@@ -4109,9 +4110,10 @@ test_ok=no
- fi
- 
-     if test "$test_ok" = yes; then
-+      LDFLAGS="-L${prefix}/lib -L${X11BASE}/lib -Wl,-R${prefix}/lib -Wl,-R${X11BASE}/lib ${LDF}"
-       SHLIB_CFLAGS="-fpic"
-       SHLIB_LD="ld"
--      SHLIB_LD_FLAGS="-Bshareable -x"
-+      SHLIB_LD_FLAGS="-Bshareable -x -R${prefix}/lib -R${X11BASE}/lib ${LDF}"
-     fi
-     ;;
- 
-@@ -4181,9 +4183,9 @@ fi
-   *-solaris2*)
- 
-     SHLIB_CFLAGS="-KPIC"
--    if test "${blt_with_gnu_ld}" = "yes" -a "$blt_have_gcc" = "yes" ; then
-+    if test "$blt_have_gcc" = "yes" ; then
-       SHLIB_LD="gcc"
--      SHLIB_LD_FLAGS='-rdynamic -shared -Wl,-E -Wl,-soname,$@'
-+      SHLIB_LD_FLAGS='-shared -Wl,-soname,$@'
-       LD_RUN_PATH="-Wl,-rpath,${loader_run_path}"
-     else
-       SHLIB_LD="/usr/ccs/bin/ld"
Index: patches/patch-af
===================================================================
RCS file: patches/patch-af
diff -N patches/patch-af
--- patches/patch-af	16 Feb 2009 20:22:18 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,17 +0,0 @@
-$NetBSD: patch-af,v 1.1 2009/02/16 20:22:18 joerg Exp $
-
---- Makefile.in.orig	2009-02-16 21:12:29.000000000 +0100
-+++ Makefile.in
-@@ -47,9 +47,9 @@ install-all:
- 	(cd library; $(MAKE) install)
- 	(cd man; $(MAKE) install)
- 	(cd demos; $(MAKE) install)
--	$(INSTALL_DATA) $(srcdir)/README $(INSTALL_DIR)$(scriptdir)
--	$(INSTALL_DATA) $(srcdir)/PROBLEMS $(INSTALL_DIR)$(scriptdir)
--	$(INSTALL_DATA) $(srcdir)/NEWS $(INSTALL_DIR)$(scriptdir)
-+	$(INSTALL_DATA) $(srcdir)/README ${DESTDIR}$(INSTALL_DIR)$(scriptdir)
-+	$(INSTALL_DATA) $(srcdir)/PROBLEMS ${DESTDIR}$(INSTALL_DIR)$(scriptdir)
-+	$(INSTALL_DATA) $(srcdir)/NEWS ${DESTDIR}$(INSTALL_DIR)$(scriptdir)
- 
- mkdirs:
- 	@for i in $(instdirs) ; do \
Index: patches/patch-src_bltArrayObj.c
===================================================================
RCS file: patches/patch-src_bltArrayObj.c
diff -N patches/patch-src_bltArrayObj.c
--- patches/patch-src_bltArrayObj.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_bltArrayObj.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Silence const warning.
-
---- src/bltArrayObj.c~	2002-07-12 18:38:47.000000000 +0000
-+++ src/bltArrayObj.c
-@@ -54,7 +54,7 @@ SetArrayFromAny(interp, objPtr)
-     Blt_HashEntry *hPtr;
-     Blt_HashTable *tablePtr;
-     Tcl_Obj *elemObjPtr;
--    Tcl_ObjType *oldTypePtr = objPtr->typePtr;
-+    const Tcl_ObjType *oldTypePtr = objPtr->typePtr;
-     char **elemArr;
-     char *string;
-     int isNew;
Index: patches/patch-src_bltBgexec.c
===================================================================
RCS file: patches/patch-src_bltBgexec.c
diff -N patches/patch-src_bltBgexec.c
--- patches/patch-src_bltBgexec.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,94 +0,0 @@
-$NetBSD: patch-src_bltBgexec.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-- For Tcl_File, which is unused in tcl 8.x, use a dummy type that
-doesn't cause warnings.
-
-- For Process on non-Windows, use the type that tcl itself expects,
-which is a pointer to an incomplete type. It is actually an int value
-in that pointer inside tcl, not a pointer, and casting pointers to int
-to pointers to pointers causes real problems on LP64 targets.
-
-- Relatedly, when calling Tcl_DetachPids, pass the right thing (a
-pointer to the Tcl_Pid) and not the Tcl_Pid's value itself.
-
-- Fix a null dereference calling NotifyOnUpdate, found by gcc10
--Wuninitialized.
-
-- Don't use sprintf.
-
---- src/bltBgexec.c.orig	2002-09-18 22:30:50.000000000 +0000
-+++ src/bltBgexec.c
-@@ -44,7 +44,7 @@
- #if (TCL_MAJOR_VERSION == 7)
- #define FILEHANDLER_USES_TCLFILES 1
- #else
--typedef int Tcl_File;
-+typedef void *Tcl_File;
- #endif
- 
- static Tcl_CmdProc BgexecCmd;
-@@ -55,7 +55,7 @@ typedef struct {
-     HANDLE hProcess;
- } Process;
- #else
--typedef int Process;
-+typedef Tcl_Pid Process;
- #endif
- 
- #if (TCL_VERSION_NUMBER <  _VERSION(8,1,0)) 
-@@ -1319,7 +1319,9 @@ CollectData(bgPtr, sinkPtr)
-  	    }
- 	} else {
- 	    data = NextBlock(sinkPtr, &length);
--	    NotifyOnUpdate(bgPtr->interp, sinkPtr, data, length);
-+	    if (data != NULL) {
-+	        NotifyOnUpdate(bgPtr->interp, sinkPtr, data, length);
-+	    }
- 	}
-     }
-     if (sinkPtr->status >= 0) {
-@@ -1463,7 +1465,7 @@ DestroyBackgroundInfo(bgPtr)
- 
- 	for (i = 0; i < bgPtr->nProcs; i++) {
- 	    if (bgPtr->signalNum > 0) {
--		kill(bgPtr->procArr[i], bgPtr->signalNum);
-+		kill((pid_t)(intptr_t)bgPtr->procArr[i], bgPtr->signalNum);
- 	    }
- #ifdef WIN32
- 	    Tcl_DetachPids(1, (Tcl_Pid *)&bgPtr->procArr[i].pid);
-@@ -1471,7 +1473,7 @@ DestroyBackgroundInfo(bgPtr)
- #if (TCL_MAJOR_VERSION == 7)
- 	    Tcl_DetachPids(1, &bgPtr->procArr[i]);
- #else
--	    Tcl_DetachPids(1, (Tcl_Pid *)bgPtr->procArr[i]);
-+	    Tcl_DetachPids(1, &bgPtr->procArr[i]);
- #endif /* TCL_MAJOR_VERSION == 7 */
- #endif /* WIN32 */
- 	}
-@@ -1516,7 +1518,7 @@ VariableProc(
- 	    register int i;
- 
- 	    for (i = 0; i < bgPtr->nProcs; i++) {
--		kill(bgPtr->procArr[i], bgPtr->signalNum);
-+		kill((pid_t)(intptr_t)bgPtr->procArr[i], bgPtr->signalNum);
- 	    }
- 	}
-     }
-@@ -1577,7 +1579,7 @@ TimerProc(clientData)
- #ifdef WIN32
- 	pid = WaitProcess(bgPtr->procArr[i], (int *)&waitStatus, WNOHANG);
- #else
--	pid = waitpid(bgPtr->procArr[i], (int *)&waitStatus, WNOHANG);
-+	pid = waitpid((pid_t)(intptr_t)bgPtr->procArr[i], (int *)&waitStatus, WNOHANG);
- #endif
- 	if (pid == 0) {		/*  Process has not terminated yet */
- 	    if (nLeft < i) {
-@@ -1928,7 +1930,7 @@ BgexecCmd(clientData, interp, argc, argv
- #ifdef WIN32
- 	    sprintf(string, "%u", (unsigned int)bgPtr->procArr[i].pid);
- #else 
--	    sprintf(string, "%d", bgPtr->procArr[i]);
-+	    snprintf(string, sizeof(string), "%d", (int)(intptr_t)bgPtr->procArr[i]);
- #endif
- 	    Tcl_AppendElement(interp, string);
- 	}
Index: patches/patch-src_bltConfig.c
===================================================================
RCS file: patches/patch-src_bltConfig.c
diff -N patches/patch-src_bltConfig.c
--- patches/patch-src_bltConfig.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_bltConfig.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Fix ctype abuse.
-
---- src/bltConfig.c~	2002-09-18 22:30:51.000000000 +0000
-+++ src/bltConfig.c
-@@ -1255,7 +1255,7 @@ Blt_ConfigureWidgetComponent(interp, par
-     tempName = Blt_Strdup(resName);
- 
-     /* Window name can't start with an upper case letter */
--    tempName[0] = tolower(resName[0]);
-+    tempName[0] = tolower((unsigned char)resName[0]);
- 
-     /*
-      * Create component if a child window by the component's name
Index: patches/patch-src_bltInit.c
===================================================================
RCS file: patches/patch-src_bltInit.c
diff -N patches/patch-src_bltInit.c
--- patches/patch-src_bltInit.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,53 +0,0 @@
-$NetBSD: patch-src_bltInit.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Pass the right version string to the TCL package calls.
-Otherwise, the library fails to initialize.
-
---- src/bltInit.c~	2022-06-06 01:11:32.563344735 +0000
-+++ src/bltInit.c
-@@ -415,7 +415,7 @@ Blt_Init(interp)
- 	 * Check that the versions of Tcl that have been loaded are
- 	 * the same ones that BLT was compiled against.
- 	 */
--	if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgRequire(interp, "Tcl", TCL_PATCH_LEVEL, EXACT) == NULL) {
- 	    return TCL_ERROR;
- 	}
- 	/* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
-@@ -462,11 +462,11 @@ Blt_Init(interp)
- 	Tcl_Namespace *nsPtr;
- 
- #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
--	if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgPresent(interp, "Tk", TK_PATCH_LEVEL, EXACT) == NULL) {
- 	    return TCL_OK;
- 	} 
- #else
--	if (Tcl_PkgRequire(interp, "Tk", TK_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgRequire(interp, "Tk", TK_PATCH_LEVEL, EXACT) == NULL) {
- 	    Tcl_ResetResult(interp);
- 	    return TCL_OK;
- 	} 
-@@ -514,7 +514,7 @@ Blt_Init(interp)
- 	 * Check that the versions of Tcl that have been loaded are
- 	 * the same ones that BLT was compiled against.
- 	 */
--	if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgRequire(interp, "Tcl", TCL_PATCH_LEVEL, EXACT) == NULL) {
- 	    return TCL_ERROR;
- 	}
- 	/* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
-@@ -552,11 +552,11 @@ Blt_Init(interp)
- 	register Tcl_AppInitProc **p;
- 
- #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
--	if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgPresent(interp, "Tk", TK_PATCH_LEVEL, EXACT) == NULL) {
- 	    return TCL_OK;
- 	} 
- #else
--	if (Tcl_PkgRequire(interp, "Tk", TK_VERSION, EXACT) == NULL) {
-+	if (Tcl_PkgRequire(interp, "Tk", TK_PATCH_LEVEL, EXACT) == NULL) {
- 	    Tcl_ResetResult(interp);
- 	    return TCL_OK;
- 	} 
Index: patches/patch-src_bltList.c
===================================================================
RCS file: patches/patch-src_bltList.c
diff -N patches/patch-src_bltList.c
--- patches/patch-src_bltList.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,24 +0,0 @@
-$NetBSD: patch-src_bltList.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Make the node type stuff consistent with bltHash to silence compiler warnings.
-
---- src/bltList.c~	2002-09-18 22:30:51.000000000 +0000
-+++ src/bltList.c
-@@ -114,7 +114,7 @@ FreeNode(nodePtr)
- /*LINTLIBRARY*/
- Blt_List 
- Blt_ListCreate(type)
--    int type;
-+    size_t type;
- {
-     struct Blt_ListStruct *listPtr;
- 
-@@ -250,7 +250,7 @@ Blt_ListDestroy(listPtr)
- void
- Blt_ListInit(listPtr, type)
-     struct Blt_ListStruct *listPtr;
--    int type;
-+    size_t type;
- {
-     listPtr->nNodes = 0;
-     listPtr->headPtr = listPtr->tailPtr = NULL;
Index: patches/patch-src_bltList.h
===================================================================
RCS file: patches/patch-src_bltList.h
diff -N patches/patch-src_bltList.h
--- patches/patch-src_bltList.h	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,22 +0,0 @@
-$NetBSD: patch-src_bltList.h,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Make the node type stuff consistent with bltHash to silence compiler warnings.
-
---- src/bltList.h~	2002-09-18 22:30:51.000000000 +0000
-+++ src/bltList.h
-@@ -57,12 +57,12 @@ struct Blt_ListStruct {
-     struct Blt_ListNodeStruct *headPtr;	/* Pointer to first element in list */
-     struct Blt_ListNodeStruct *tailPtr;	/* Pointer to last element in list */
-     int nNodes;			/* Number of node currently in the list. */
--    int type;			/* Type of keys in list. */
-+    size_t type;		/* Type of keys in list. */
- };
- 
--EXTERN void Blt_ListInit _ANSI_ARGS_((Blt_List list, int type));
-+EXTERN void Blt_ListInit _ANSI_ARGS_((Blt_List list, size_t type));
- EXTERN void Blt_ListReset _ANSI_ARGS_((Blt_List list));
--EXTERN Blt_List Blt_ListCreate _ANSI_ARGS_((int type));
-+EXTERN Blt_List Blt_ListCreate _ANSI_ARGS_((size_t type));
- EXTERN void Blt_ListDestroy _ANSI_ARGS_((Blt_List list));
- EXTERN Blt_ListNode Blt_ListCreateNode _ANSI_ARGS_((Blt_List list, 
- 	CONST char *key));
Index: patches/patch-src_bltNsUtil.h
===================================================================
RCS file: patches/patch-src_bltNsUtil.h
diff -N patches/patch-src_bltNsUtil.h
--- patches/patch-src_bltNsUtil.h	6 Jun 2022 04:27:14 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,48 +0,0 @@
-$NetBSD: patch-src_bltNsUtil.h,v 1.2 2022/06/06 04:27:14 dholland Exp $
-
-- update version constraints on private decls of tcl functions
-  (probably none of these should be here at all as at least some
-  of them are unexposed tcl internals)
-
---- src/bltNsUtil.h.orig	2002-07-18 06:35:32.000000000 +0000
-+++ src/bltNsUtil.h
-@@ -47,8 +47,10 @@ typedef struct Tcl_CallFrameStruct *Tcl_
- #endif
- 
- 
-+#if (TCL_MAJOR_VERSION <= 8) && (TCL_MINOR_VERSION < 5)
- EXTERN Tcl_Command Tcl_FindCommand _ANSI_ARGS_((Tcl_Interp *interp,
- 	char *name, Tcl_Namespace *nsPtr, int flags));
-+#endif
- 
- #define NS_SEARCH_NONE		(0)
- #define NS_SEARCH_CURRENT	(1<<0)
-@@ -63,7 +65,7 @@ EXTERN Tcl_Namespace *Tcl_GetCurrentName
- 
- EXTERN Tcl_Namespace *Tcl_GetGlobalNamespace _ANSI_ARGS_((Tcl_Interp *interp));
- 
--#if (TCL_MAJOR_VERSION >= 8)
-+#if (TCL_MAJOR_VERSION >= 8) && (TCL_MINOR_VERSION <= 4)
- EXTERN Tcl_Namespace *Tcl_CreateNamespace _ANSI_ARGS_((Tcl_Interp *interp,
- 	char *name, ClientData clientData, Tcl_NamespaceDeleteProc *nsDelProc));
- 
-@@ -75,7 +77,9 @@ EXTERN Tcl_Namespace *Tcl_FindNamespace 
- EXTERN int Tcl_Export _ANSI_ARGS_((Tcl_Interp *interp, Tcl_Namespace *nsPtr,
- 	char *name, int resetFlag));
- 
--EXTERN Tcl_Var Tcl_FindNamespaceVar _ANSI_ARGS_((Tcl_Interp *interp, char *name,
-+#endif /* TCL_MAJOR_VERSION >= 8 */
-+
-+EXTERN Tcl_Var Tcl_FindNamespaceVar _ANSI_ARGS_((Tcl_Interp *interp, const char *name,
- 	Tcl_Namespace *contextNsPtr, int flags));
- 
- EXTERN void Tcl_PopCallFrame _ANSI_ARGS_((Tcl_Interp *interp));
-@@ -83,6 +87,8 @@ EXTERN void Tcl_PopCallFrame _ANSI_ARGS_
- EXTERN int Tcl_PushCallFrame _ANSI_ARGS_((Tcl_Interp *interp,
- 	Tcl_CallFrame * framePtr, Tcl_Namespace *nsPtr, int isProcCallFrame));
- 
-+#if (TCL_MAJOR_VERSION >= 8) && (TCL_MINOR_VERSION <= 4)
-+
- extern Tcl_HashTable *Blt_GetArrayVariableTable _ANSI_ARGS_((
- 	Tcl_Interp *interp, CONST char *varName, int flags));
- 
Index: patches/patch-src_bltObjConfig.c
===================================================================
RCS file: patches/patch-src_bltObjConfig.c
diff -N patches/patch-src_bltObjConfig.c
--- patches/patch-src_bltObjConfig.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_bltObjConfig.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Fix ctype abuse.
-
---- src/bltObjConfig.c~	2002-09-18 22:30:51.000000000 +0000
-+++ src/bltObjConfig.c
-@@ -2275,7 +2275,7 @@ Blt_ConfigureComponentFromObj(interp, pa
-     tmpName = Blt_Strdup(name);
- 
-     /* Window name can't start with an upper case letter */
--    tmpName[0] = tolower(name[0]);
-+    tmpName[0] = tolower((unsigned char)name[0]);
- 
-     /*
-      * Create component if a child window by the component's name
Index: patches/patch-src_bltScrollbar.c
===================================================================
RCS file: patches/patch-src_bltScrollbar.c
diff -N patches/patch-src_bltScrollbar.c
--- patches/patch-src_bltScrollbar.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,35 +0,0 @@
-$NetBSD: patch-src_bltScrollbar.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Update for tcl 8.6 (?) and don't use sprintf.
-
---- src/bltScrollbar.c~	2002-07-17 22:38:54.000000000 +0000
-+++ src/bltScrollbar.c
-@@ -534,7 +534,8 @@ ScrollbarWidgetCmd(clientData, interp, a
- 	} else {
- 	    fraction = ((double)pixels / (double)barWidth);
- 	}
--	sprintf(interp->result, "%g", fraction);
-+	snprintf(string, sizeof(string), "%g", fraction);
-+	Tcl_SetResult(interp, string, TCL_VOLATILE);
-     } else if ((c == 'f') && (strncmp(argv[1], "fraction", length) == 0)) {
- 	int x, y, pos, barWidth;
- 	double fraction;
-@@ -567,7 +568,7 @@ ScrollbarWidgetCmd(clientData, interp, a
- 	} else if (fraction > 1.0) {
- 	    fraction = 1.0;
- 	}
--	sprintf(string, "%g", fraction);
-+	snprintf(string, sizeof(string), "%g", fraction);
- 	Tcl_SetResult(interp, string, TCL_VOLATILE);
-     } else if ((c == 'g') && (strncmp(argv[1], "get", length) == 0)) {
- 	if (argc != 2) {
-@@ -582,7 +583,8 @@ ScrollbarWidgetCmd(clientData, interp, a
- 	    Tcl_PrintDouble(interp, scrollPtr->lastFraction, last);
- 	    Tcl_AppendResult(interp, first, " ", last, (char *)NULL);
- 	} else {
--	    sprintf(string, "%d %d %d %d", scrollPtr->totalUnits,
-+	    snprintf(string, sizeof(string),
-+	        "%d %d %d %d", scrollPtr->totalUnits,
- 		scrollPtr->windowUnits, scrollPtr->firstUnit,
- 		scrollPtr->lastUnit);
- 	    Tcl_SetResult(interp, string, TCL_VOLATILE);
Index: patches/patch-src_bltSwitch.c
===================================================================
RCS file: patches/patch-src_bltSwitch.c
diff -N patches/patch-src_bltSwitch.c
--- patches/patch-src_bltSwitch.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_bltSwitch.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Fix bug spotted by gcc10.
-
---- src/bltSwitch.c~	2002-06-22 19:21:05.000000000 +0000
-+++ src/bltSwitch.c
-@@ -285,7 +285,7 @@ Blt_ProcessSwitches(interp, specs, argc,
-     for (count = 0; count < argc; count++) {
- 	arg = argv[count];
- 	if (flags & BLT_SWITCH_OBJV_PARTIAL) {
--	    if ((arg[0] != '-') || ((arg[1] == '-') && (argv[2] == '\0'))) {
-+	    if ((arg[0] != '-') || ((arg[1] == '-') && (arg[2] == '\0'))) {
- 		/* 
- 		 * If the argument doesn't start with a '-' (not a switch)
- 		 * or is '--', stop processing and return the number of
Index: patches/patch-src_bltTable.c
===================================================================
RCS file: patches/patch-src_bltTable.c
diff -N patches/patch-src_bltTable.c
--- patches/patch-src_bltTable.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,51 +0,0 @@
-$NetBSD: patch-src_bltTable.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Fix ctype abuse.
-
---- src/bltTable.c~	2002-10-14 23:31:24.000000000 +0000
-+++ src/bltTable.c
-@@ -1382,7 +1382,7 @@ ParseRowColumn2(tablePtr, string, number
-     int n;
-     PartitionInfo *infoPtr;
- 
--    c = tolower(string[0]);
-+    c = tolower((unsigned char)string[0]);
-     if (c == 'c') {
- 	infoPtr = &(tablePtr->columnInfo);
-     } else if (c == 'r') {
-@@ -2363,7 +2363,7 @@ ParseItem(tablePtr, string, rowPtr, colu
-     char c;
-     long partNum;
- 
--    c = tolower(string[0]);
-+    c = tolower((unsigned char)string[0]);
-     *rowPtr = *columnPtr = -1;
-     if (c == 'r') {
- 	if (Tcl_ExprLong(tablePtr->interp, string + 1, &partNum) != TCL_OK) {
-@@ -3827,7 +3827,7 @@ DeleteOp(dataPtr, interp, argc, argv)
- 	return TCL_ERROR;
-     }
-     for (i = 3; i < argc; i++) {
--	c = tolower(argv[i][0]);
-+	c = tolower((unsigned char)argv[i][0]);
- 	if ((c != 'r') && (c != 'c')) {
- 	    Tcl_AppendResult(interp, "bad index \"", argv[i],
- 		"\": must start with \"r\" or \"c\"", (char *)NULL);
-@@ -3836,7 +3836,7 @@ DeleteOp(dataPtr, interp, argc, argv)
-     }
-     matches = 0;
-     for (i = 3; i < argc; i++) {
--	c = tolower(argv[i][0]);
-+	c = tolower((unsigned char)argv[i][0]);
- 	infoPtr = (c == 'r') ? &(tablePtr->rowInfo) : &(tablePtr->columnInfo);
- 	for (linkPtr = Blt_ChainFirstLink(infoPtr->chainPtr); linkPtr != NULL;
- 	    linkPtr = nextPtr) {
-@@ -4022,7 +4022,7 @@ ExtentsOp(dataPtr, interp, argc, argv)
-     if (Blt_GetTable(dataPtr, interp, argv[2], &tablePtr) != TCL_OK) {
- 	return TCL_ERROR;
-     }
--    c = tolower(argv[3][0]);
-+    c = tolower((unsigned char)argv[3][0]);
-     if (c == 'r') {
- 	infoPtr = &(tablePtr->rowInfo);
-     } else if (c == 'c') {
Index: patches/patch-src_bltTree.c
===================================================================
RCS file: patches/patch-src_bltTree.c
diff -N patches/patch-src_bltTree.c
--- patches/patch-src_bltTree.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,70 +0,0 @@
-$NetBSD: patch-src_bltTree.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Silence gcc warnings in the interests of being able to see the
-real build problems.
-
---- src/bltTree.c~	2022-06-06 02:53:11.389200304 +0000
-+++ src/bltTree.c
-@@ -405,7 +405,7 @@ FreeNode(TreeObject *treeObjPtr, Node *n
-     TreeDestroyValues(nodePtr);
-     UnlinkNode(nodePtr);
-     treeObjPtr->nNodes--;
--    hPtr = Blt_FindHashEntry(&treeObjPtr->nodeTable, (char *)nodePtr->inode);
-+    hPtr = Blt_FindHashEntry(&treeObjPtr->nodeTable, (char *)(intptr_t)nodePtr->inode);
-     assert(hPtr);
-     Blt_DeleteHashEntry(&treeObjPtr->nodeTable, hPtr);
-     Blt_PoolFreeItem(treeObjPtr->nodePool, (char *)nodePtr);
-@@ -838,7 +838,7 @@ Blt_TreeCreateNode(
-     /* Generate an unique serial number for this node.  */
-     do {
- 	inode = treeObjPtr->nextInode++;
--	hPtr = Blt_CreateHashEntry(&treeObjPtr->nodeTable,(char *)inode, 
-+	hPtr = Blt_CreateHashEntry(&treeObjPtr->nodeTable,(char *)(intptr_t)inode, 
- 		   &isNew);
-     } while (!isNew);
-     nodePtr = NewNode(treeObjPtr, name, inode);
-@@ -893,7 +893,7 @@ Blt_TreeCreateNodeWithId(
-     int isNew;
- 
-     treeObjPtr = parentPtr->treeObject;
--    hPtr = Blt_CreateHashEntry(&treeObjPtr->nodeTable,(char *)inode, &isNew);
-+    hPtr = Blt_CreateHashEntry(&treeObjPtr->nodeTable,(char *)(intptr_t)inode, &isNew);
-     if (!isNew) {
- 	return NULL;
-     }
-@@ -999,7 +999,7 @@ Blt_TreeGetNode(TreeClient *clientPtr, u
-     TreeObject *treeObjPtr = clientPtr->treeObject;
-     Blt_HashEntry *hPtr;
- 
--    hPtr = Blt_FindHashEntry(&treeObjPtr->nodeTable, (char *)inode);
-+    hPtr = Blt_FindHashEntry(&treeObjPtr->nodeTable, (char *)(uintptr_t)inode);
-     if (hPtr != NULL) {
- 	return (Blt_TreeNode)Blt_GetHashValue(hPtr);
-     }
-@@ -2433,7 +2433,7 @@ Blt_TreeClearTags(TreeClient *clientPtr,
- 	Blt_TreeTagEntry *tPtr;
- 
- 	tPtr = Blt_GetHashValue(hPtr);
--	h2Ptr = Blt_FindHashEntry(&tPtr->nodeTable, (char *)node);
-+	h2Ptr = Blt_FindHashEntry(&tPtr->nodeTable, node);
- 	if (h2Ptr != NULL) {
- 	    Blt_DeleteHashEntry(&tPtr->nodeTable, h2Ptr);
- 	}
-@@ -2461,7 +2461,7 @@ Blt_TreeHasTag(
- 	return FALSE;
-     }
-     tPtr = Blt_GetHashValue(hPtr);
--    hPtr = Blt_FindHashEntry(&tPtr->nodeTable, (char *)node);
-+    hPtr = Blt_FindHashEntry(&tPtr->nodeTable, node);
-     if (hPtr == NULL) {
- 	return FALSE;
-     }
-@@ -2495,7 +2495,7 @@ Blt_TreeAddTag(
-     } else {
- 	tPtr = Blt_GetHashValue(hPtr);
-     }
--    hPtr = Blt_CreateHashEntry(&tPtr->nodeTable, (char *)node, &isNew);
-+    hPtr = Blt_CreateHashEntry(&tPtr->nodeTable, node, &isNew);
-     assert(hPtr);
-     if (isNew) {
- 	Blt_SetHashValue(hPtr, node);
Index: patches/patch-src_bltTreeCmd.c
===================================================================
RCS file: patches/patch-src_bltTreeCmd.c
diff -N patches/patch-src_bltTreeCmd.c
--- patches/patch-src_bltTreeCmd.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,54 +0,0 @@
-$NetBSD: patch-src_bltTreeCmd.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Silence gcc warnings in the interests of being able to see the
-real build problems.
-
-Fix ctype misuse.
-
---- src/bltTreeCmd.c~	2002-09-27 22:23:01.000000000 +0000
-+++ src/bltTreeCmd.c
-@@ -1283,7 +1283,7 @@ ParseNode5(TreeCmd *cmdPtr, char **argv,
-     if (parentId == -1) {	/* Dump marks root's parent as -1. */
- 	node = dataPtr->root;
- 	/* Create a mapping between the old id and the new node */
--	hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)nodeId, 
-+	hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)(intptr_t)nodeId,
- 		   &isNew);
- 	Blt_SetHashValue(hPtr, node);
- 	Blt_TreeRelabelNode(cmdPtr->tree, node, names[0]);
-@@ -1293,7 +1293,7 @@ ParseNode5(TreeCmd *cmdPtr, char **argv,
- 	 * This can happen when there's a id collision with an
- 	 * existing node. 
- 	 */
--	hPtr = Blt_FindHashEntry(&dataPtr->idTable, (char *)parentId);
-+	hPtr = Blt_FindHashEntry(&dataPtr->idTable, (char *)(intptr_t)parentId);
- 	if (hPtr != NULL) {
- 	    parent = Blt_GetHashValue(hPtr);
- 	} else {
-@@ -1330,7 +1330,7 @@ ParseNode5(TreeCmd *cmdPtr, char **argv,
- 	if (dataPtr->flags & RESTORE_OVERWRITE) {
- 	    node = Blt_TreeFindChild(parent, names[nNames - 1]);
- 	    /* Create a mapping between the old id and the new node */
--	    hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)nodeId, 
-+	    hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)(intptr_t)nodeId, 
- 				       &isNew);
- 	    Blt_SetHashValue(hPtr, node);
- 	}
-@@ -1340,7 +1340,7 @@ ParseNode5(TreeCmd *cmdPtr, char **argv,
- 		node = Blt_TreeCreateNode(cmdPtr->tree, parent, 
- 					  names[nNames - 1], -1);
- 		/* Create a mapping between the old id and the new node */
--		hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)nodeId,
-+		hPtr = Blt_CreateHashEntry(&dataPtr->idTable, (char *)(intptr_t)nodeId,
- 					   &isNew);
- 		Blt_SetHashValue(hPtr, node);
- 	    } else {
-@@ -1570,7 +1570,7 @@ GetTraceFlags(char *string)
- 
-     flags = 0;
-     for (p = string; *p != '\0'; p++) {
--	switch (toupper(*p)) {
-+	switch (toupper((unsigned char)*p)) {
- 	case 'R':
- 	    flags |= TREE_TRACE_READ;
- 	    break;
Index: patches/patch-src_bltUnixPipe.c
===================================================================
RCS file: patches/patch-src_bltUnixPipe.c
diff -N patches/patch-src_bltUnixPipe.c
--- patches/patch-src_bltUnixPipe.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,16 +0,0 @@
-$NetBSD: patch-src_bltUnixPipe.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Silence gcc warning in the interests of being able to see the
-real build problems.
-
---- src/bltUnixPipe.c~	2002-06-22 19:21:05.000000000 +0000
-+++ src/bltUnixPipe.c
-@@ -477,7 +477,7 @@ CreateProcess(interp, argc, argv, inputF
- 	 * Reap the child process now if an error occurred during its
- 	 * startup.
- 	 */
--	Tcl_WaitPid((Tcl_Pid)pid, &status, WNOHANG);
-+	Tcl_WaitPid((Tcl_Pid)(intptr_t)pid, &status, WNOHANG);
-     }
-     if (errPipeIn >= 0) {
- 	CloseFile(errPipeIn);
Index: patches/patch-src_bltVecObjCmd.c
===================================================================
RCS file: patches/patch-src_bltVecObjCmd.c
diff -N patches/patch-src_bltVecObjCmd.c
--- patches/patch-src_bltVecObjCmd.c	6 Jun 2022 04:27:14 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_bltVecObjCmd.c,v 1.1 2022/06/06 04:27:14 dholland Exp $
-
-Fix ctype misuse.
-
---- src/bltVecObjCmd.c~	2002-09-14 20:07:43.000000000 +0000
-+++ src/bltVecObjCmd.c
-@@ -934,7 +934,7 @@ GetBinaryFormat(interp, string, sizePtr)
- {
-     char c;
- 
--    c = tolower(string[0]);
-+    c = tolower((unsigned char)string[0]);
-     if (Tcl_GetInt(interp, string + 1, sizePtr) != TCL_OK) {
- 	Tcl_AppendResult(interp, "unknown binary format \"", string,
- 	    "\": incorrect byte size", (char *)NULL);
Index: patches/patch-src_tkButton.c
===================================================================
RCS file: patches/patch-src_tkButton.c
diff -N patches/patch-src_tkButton.c
--- patches/patch-src_tkButton.c	1 Feb 2014 18:12:13 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,24 +0,0 @@
-$NetBSD: patch-src_tkButton.c,v 1.1 2014/02/01 18:12:13 adam Exp $
-
-Fix building with Tcl 8.6.
-
---- src/tkButton.c.orig	2014-02-01 17:46:04.000000000 +0000
-+++ src/tkButton.c
-@@ -526,7 +526,7 @@ static int InvokeButton _ANSI_ARGS_((But
- static Blt_TileChangedProc TileChangedProc;
- static Tcl_CmdProc ButtonCmd, LabelCmd, CheckbuttonCmd, RadiobuttonCmd;
- 
--EXTERN int TkCopyAndGlobalEval _ANSI_ARGS_((Tcl_Interp *interp, char *script));
-+EXTERN int Tcl_EvalEx _ANSI_ARGS_((Tcl_Interp *interp, const char *script, int numBytes, int flags));
- 
- #if (TK_MAJOR_VERSION > 4)
- EXTERN void TkComputeAnchor _ANSI_ARGS_((Tk_Anchor anchor, Tk_Window tkwin, 
-@@ -1890,7 +1890,7 @@ InvokeButton(butPtr)
- 	}
-     }
-     if ((butPtr->type != TYPE_LABEL) && (butPtr->command != NULL)) {
--	return TkCopyAndGlobalEval(butPtr->interp, butPtr->command);
-+	return Tcl_EvalEx(butPtr->interp, butPtr->command, -1, TCL_EVAL_GLOBAL);
-     }
-     return TCL_OK;
- }

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index