summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-tcltk')
-rw-r--r--dev-tcltk/anigif/Manifest1
-rw-r--r--dev-tcltk/anigif/anigif-1.3-r1.ebuild25
-rw-r--r--dev-tcltk/anigif/metadata.xml8
-rw-r--r--dev-tcltk/blt/Manifest3
-rw-r--r--dev-tcltk/blt/blt-2.4z-r13.ebuild125
-rw-r--r--dev-tcltk/blt/blt-2.5.3-r3.ebuild152
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-aclocal.patch79
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-darwin.patch72
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-gbsd.patch54
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-ldflags.patch30
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-linking.patch21
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile2.patch18
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile3.patch14
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-tcl8.5-fixpkgruntime.patch66
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-tcl8.6.patch86
-rw-r--r--dev-tcltk/blt/files/blt-2.4z-tk8.6.patch20
-rw-r--r--dev-tcltk/blt/files/blt-2.5.3-darwin.patch36
-rw-r--r--dev-tcltk/blt/files/blt-2.5.3-gbsd.patch24
-rw-r--r--dev-tcltk/blt/files/blt-2.5.3-gentoo.patch45
-rw-r--r--dev-tcltk/blt/files/blt-2.5.3-lto.patch18
-rw-r--r--dev-tcltk/blt/files/blt-2.5.3-parallelMake.patch23
-rw-r--r--dev-tcltk/blt/files/blt2.4z-64bit.patch24
-rw-r--r--dev-tcltk/blt/metadata.xml2
-rw-r--r--dev-tcltk/bwidget/Manifest4
-rw-r--r--dev-tcltk/bwidget/bwidget-1.9.15.ebuild (renamed from dev-tcltk/bwidget/bwidget-1.9.12.ebuild)15
-rw-r--r--dev-tcltk/bwidget/bwidget-1.9.16.ebuild38
-rw-r--r--dev-tcltk/bwidget/bwidget-1.9.8.ebuild42
-rw-r--r--dev-tcltk/bwidget/metadata.xml2
-rw-r--r--dev-tcltk/combobox/Manifest1
-rw-r--r--dev-tcltk/combobox/combobox-2.3-r1.ebuild25
-rw-r--r--dev-tcltk/combobox/metadata.xml8
-rw-r--r--dev-tcltk/expect-lite/Manifest3
-rw-r--r--dev-tcltk/expect-lite/expect-lite-4.6.1.ebuild30
-rw-r--r--dev-tcltk/expect-lite/expect-lite-4.7.2.ebuild30
-rw-r--r--dev-tcltk/expect-lite/expect-lite-4.8.0.ebuild30
-rw-r--r--dev-tcltk/expect-lite/expect-lite-4.9.0-r1.ebuild (renamed from dev-tcltk/expect-lite/expect-lite-4.9.0.ebuild)13
-rw-r--r--dev-tcltk/expect-lite/metadata.xml2
-rw-r--r--dev-tcltk/expect/Manifest1
-rw-r--r--dev-tcltk/expect/expect-5.45.4-r4.ebuild80
-rw-r--r--dev-tcltk/expect/expect-5.45.4-r5.ebuild81
-rw-r--r--dev-tcltk/expect/expect-5.45.4.ebuild84
-rw-r--r--dev-tcltk/expect/expect-5.45.ebuild83
-rw-r--r--dev-tcltk/expect/files/expect-5.45-warnings.patch684
-rw-r--r--dev-tcltk/expect/files/expect-5.45.4-configure-clang16.patch223
-rw-r--r--dev-tcltk/expect/files/expect-5.45.4-configure-in.patch113
-rw-r--r--dev-tcltk/expect/metadata.xml2
-rw-r--r--dev-tcltk/itcl/Manifest5
-rw-r--r--dev-tcltk/itcl/files/itcl-4.2.4-gentoo.patch11
-rw-r--r--dev-tcltk/itcl/itcl-3.4.1.ebuild44
-rw-r--r--dev-tcltk/itcl/itcl-4.2.2.ebuild (renamed from dev-tcltk/itcl/itcl-4.1.1.ebuild)24
-rw-r--r--dev-tcltk/itcl/itcl-4.2.4-r1.ebuild (renamed from dev-tcltk/itcl/itcl-4.0.3.ebuild)36
-rw-r--r--dev-tcltk/itcl/metadata.xml3
-rw-r--r--dev-tcltk/itk/Manifest5
-rw-r--r--dev-tcltk/itk/itk-3.4.1.ebuild59
-rw-r--r--dev-tcltk/itk/itk-4.0.0.ebuild58
-rw-r--r--dev-tcltk/itk/itk-4.1.0-r1.ebuild (renamed from dev-tcltk/itk/itk-4.0.1.ebuild)32
-rw-r--r--dev-tcltk/itk/itk-4.1.0.ebuild19
-rw-r--r--dev-tcltk/itk/itk-4.2.3-r1.ebuild76
-rw-r--r--dev-tcltk/itk/metadata.xml3
-rw-r--r--dev-tcltk/iwidgets/Manifest2
-rw-r--r--dev-tcltk/iwidgets/files/4.0.1-path.patch63
-rw-r--r--dev-tcltk/iwidgets/files/iwidgets-4.1.1-dash.patch11
-rw-r--r--dev-tcltk/iwidgets/iwidgets-4.0.1-r3.ebuild66
-rw-r--r--dev-tcltk/iwidgets/iwidgets-4.0.1.ebuild41
-rw-r--r--dev-tcltk/iwidgets/iwidgets-4.1.1-r2.ebuild (renamed from dev-tcltk/iwidgets/iwidgets-4.1.1.ebuild)22
-rw-r--r--dev-tcltk/iwidgets/iwidgets-4.1.1-r3.ebuild71
-rw-r--r--dev-tcltk/iwidgets/metadata.xml2
-rw-r--r--dev-tcltk/metadata.xml3
-rw-r--r--dev-tcltk/mysqltcl/files/mysqltcl-3.05-API.patch11
-rw-r--r--dev-tcltk/mysqltcl/metadata.xml6
-rw-r--r--dev-tcltk/mysqltcl/mysqltcl-3.052-r2.ebuild (renamed from dev-tcltk/mysqltcl/mysqltcl-3.052-r1.ebuild)15
-rw-r--r--dev-tcltk/scwoop/metadata.xml2
-rw-r--r--dev-tcltk/scwoop/scwoop-4.1-r1.ebuild (renamed from dev-tcltk/scwoop/scwoop-4.1.ebuild)14
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-configure-clang16.patch12
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-implicit.patch92
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-lto.patch28
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-parallelMake.patch20
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-py3.8.patch11
-rw-r--r--dev-tcltk/snack/files/snack-2.2.10-test.patch143
-rw-r--r--dev-tcltk/snack/files/snack2.2.10-seektell-fix.patch12
-rw-r--r--dev-tcltk/snack/files/tcl-snack-2.2.10-python3.patch385
-rw-r--r--dev-tcltk/snack/metadata.xml2
-rw-r--r--dev-tcltk/snack/snack-2.2.10-r11.ebuild (renamed from dev-tcltk/snack/snack-2.2.10-r8.ebuild)47
-rw-r--r--dev-tcltk/snack/snack-2.2.10-r13.ebuild (renamed from dev-tcltk/snack/snack-2.2.10-r7.ebuild)55
-rw-r--r--dev-tcltk/snack/snack-2.2.10-r6.ebuild97
-rw-r--r--dev-tcltk/tablelist/Manifest3
-rw-r--r--dev-tcltk/tablelist/metadata.xml10
-rw-r--r--dev-tcltk/tablelist/tablelist-5.8.ebuild30
-rw-r--r--dev-tcltk/tablelist/tablelist-6.15.1.ebuild (renamed from dev-tcltk/tablelist/tablelist-6.3.ebuild)14
-rw-r--r--dev-tcltk/tcl-mccp/Manifest1
-rw-r--r--dev-tcltk/tcl-mccp/files/tcl-mccp-0.6-flags.patch18
-rw-r--r--dev-tcltk/tcl-mccp/metadata.xml11
-rw-r--r--dev-tcltk/tcl-mccp/tcl-mccp-0.6.ebuild20
-rw-r--r--dev-tcltk/tcl3d/Manifest1
-rw-r--r--dev-tcltk/tcl3d/files/tcl3d-0.5.0-implicit.patch10
-rw-r--r--dev-tcltk/tcl3d/metadata.xml2
-rw-r--r--dev-tcltk/tcl3d/tcl3d-0.4.0-r1.ebuild57
-rw-r--r--dev-tcltk/tcl3d/tcl3d-0.4.0.ebuild57
-rw-r--r--dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild (renamed from dev-tcltk/tcl3d/tcl3d-0.5.0.ebuild)29
-rw-r--r--dev-tcltk/tcllib/Manifest5
-rw-r--r--dev-tcltk/tcllib/files/tcllib-1.20-test.patch132
-rw-r--r--dev-tcltk/tcllib/files/tcllib-1.21-test.patch101
-rw-r--r--dev-tcltk/tcllib/metadata.xml2
-rw-r--r--dev-tcltk/tcllib/tcllib-1.15-r2.ebuild53
-rw-r--r--dev-tcltk/tcllib/tcllib-1.20.ebuild (renamed from dev-tcltk/tcllib/tcllib-1.19.ebuild)22
-rw-r--r--dev-tcltk/tcllib/tcllib-1.21.ebuild51
-rw-r--r--dev-tcltk/tclperl/Manifest1
-rw-r--r--dev-tcltk/tclperl/metadata.xml8
-rw-r--r--dev-tcltk/tclperl/tclperl-3.2-r1.ebuild42
-rw-r--r--dev-tcltk/tclpython/Manifest1
-rw-r--r--dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch229
-rw-r--r--dev-tcltk/tclpython/files/tclpython-5.0-gentoo.patch34
-rw-r--r--dev-tcltk/tclpython/metadata.xml13
-rw-r--r--dev-tcltk/tclpython/tclpython-4.1-r4.ebuild54
-rw-r--r--dev-tcltk/tclpython/tclpython-4.1-r6.ebuild55
-rw-r--r--dev-tcltk/tclpython/tclpython-5.0-r3.ebuild43
-rw-r--r--dev-tcltk/tclpython/tclpython-5.0.ebuild54
-rw-r--r--dev-tcltk/tclreadline/Manifest1
-rw-r--r--dev-tcltk/tclreadline/files/tclreadline-2.3.8-configure-clang16.patch67
-rw-r--r--dev-tcltk/tclreadline/metadata.xml3
-rw-r--r--dev-tcltk/tclreadline/tclreadline-2.1.0-r5.ebuild (renamed from dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild)38
-rw-r--r--dev-tcltk/tclreadline/tclreadline-2.3.8-r2.ebuild53
-rw-r--r--dev-tcltk/tclx/Manifest3
-rw-r--r--dev-tcltk/tclx/files/tclx-8.4.4-musl.patch26
-rw-r--r--dev-tcltk/tclx/metadata.xml6
-rw-r--r--dev-tcltk/tclx/tclx-8.6.1.ebuild60
-rw-r--r--dev-tcltk/tclx/tclx-8.6.3.ebuild (renamed from dev-tcltk/tclx/tclx-8.4.1.ebuild)35
-rw-r--r--dev-tcltk/tclxml/Manifest3
-rw-r--r--dev-tcltk/tclxml/files/tclxml-3.2-fix-implicit-declarations.patch7
-rw-r--r--dev-tcltk/tclxml/files/tclxml-3.2-format-security.patch16
-rw-r--r--dev-tcltk/tclxml/files/tclxml-3.2.7-bool.patch26
-rw-r--r--dev-tcltk/tclxml/files/tclxml-3.3.1-funcPointer.patch38
-rw-r--r--dev-tcltk/tclxml/metadata.xml3
-rw-r--r--dev-tcltk/tclxml/tclxml-3.2.7-r1.ebuild (renamed from dev-tcltk/tclxml/tclxml-3.2-r2.ebuild)32
-rw-r--r--dev-tcltk/tclxml/tclxml-3.3.1-r2.ebuild53
-rw-r--r--dev-tcltk/tdom/Manifest4
-rw-r--r--dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch73
-rw-r--r--dev-tcltk/tdom/files/tdom-0.8.2.patch52
-rw-r--r--dev-tcltk/tdom/files/tdom-0.8.3-expat.patch84
-rw-r--r--dev-tcltk/tdom/files/tdom-0.8.3-soname.patch26
-rw-r--r--dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch21
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.1-tnc.patch55
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.1.patch58
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.2-clang6.patch11
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.2-nothreads.patch22
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch28
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.3-expat.patch10
-rw-r--r--dev-tcltk/tdom/metadata.xml14
-rw-r--r--dev-tcltk/tdom/tdom-0.9.2-r1.ebuild (renamed from dev-tcltk/tdom/tdom-0.9.1.ebuild)27
-rw-r--r--dev-tcltk/tdom/tdom-0.9.3.ebuild (renamed from dev-tcltk/tdom/tdom-0.8.3-r4.ebuild)54
-rw-r--r--dev-tcltk/thread/Manifest7
-rw-r--r--dev-tcltk/thread/files/thread-2.8.5-musl.patch20
-rw-r--r--dev-tcltk/thread/metadata.xml3
-rw-r--r--dev-tcltk/thread/thread-2.7.1.ebuild49
-rw-r--r--dev-tcltk/thread/thread-2.8.5.ebuild (renamed from dev-tcltk/thread/thread-2.7.3.ebuild)19
-rw-r--r--dev-tcltk/thread/thread-2.8.8.ebuild (renamed from dev-tcltk/thread/thread-2.8.2.ebuild)19
-rw-r--r--dev-tcltk/thread/thread-2.8.9.ebuild48
-rw-r--r--dev-tcltk/tix/files/tix-8.4.3-clang6.patch114
-rw-r--r--dev-tcltk/tix/files/tix-8.4.3-noopt.patch38
-rw-r--r--dev-tcltk/tix/files/tix-8.4.3-wimplicit-int.patch49
-rw-r--r--dev-tcltk/tix/metadata.xml2
-rw-r--r--dev-tcltk/tix/tix-8.4.3-r1.ebuild60
-rw-r--r--dev-tcltk/tix/tix-8.4.3-r4.ebuild79
-rw-r--r--dev-tcltk/tkTheme/Manifest1
-rw-r--r--dev-tcltk/tkTheme/files/1.0-Makefile.in.diff29
-rw-r--r--dev-tcltk/tkTheme/files/1.0-cflags.patch18
-rw-r--r--dev-tcltk/tkTheme/files/1.0-configure.diff12
-rw-r--r--dev-tcltk/tkTheme/metadata.xml8
-rw-r--r--dev-tcltk/tkTheme/tkTheme-1.0-r2.ebuild49
-rw-r--r--dev-tcltk/tkXwin/Manifest1
-rw-r--r--dev-tcltk/tkXwin/files/1.0-Makefile.in.diff21
-rw-r--r--dev-tcltk/tkXwin/files/tkXwin-1.0-configure.patch93
-rw-r--r--dev-tcltk/tkXwin/metadata.xml11
-rw-r--r--dev-tcltk/tkXwin/tkXwin-1.0-r4.ebuild47
-rw-r--r--dev-tcltk/tkcon/Manifest3
-rw-r--r--dev-tcltk/tkcon/metadata.xml3
-rw-r--r--dev-tcltk/tkcon/tkcon-2.7.10.ebuild (renamed from dev-tcltk/tkcon/tkcon-2.5.ebuild)24
-rw-r--r--dev-tcltk/tkcon/tkcon-2.7.11.ebuild37
-rw-r--r--dev-tcltk/tkdnd/Manifest5
-rw-r--r--dev-tcltk/tkdnd/metadata.xml3
-rw-r--r--dev-tcltk/tkdnd/tkdnd-2.2.ebuild40
-rw-r--r--dev-tcltk/tkdnd/tkdnd-2.6.ebuild40
-rw-r--r--dev-tcltk/tkdnd/tkdnd-2.8.ebuild40
-rw-r--r--dev-tcltk/tkdnd/tkdnd-2.9.2-r1.ebuild42
-rw-r--r--dev-tcltk/tkdnd/tkdnd-2.9.4-r1.ebuild45
-rw-r--r--dev-tcltk/tkimg/Manifest7
-rw-r--r--dev-tcltk/tkimg/files/tkimg-1.4-jpeg-9.patch18
-rw-r--r--dev-tcltk/tkimg/files/tkimg-1.4-png2.patch36
-rw-r--r--dev-tcltk/tkimg/files/tkimg-1.4.15-gcc11.patch10
-rw-r--r--dev-tcltk/tkimg/metadata.xml5
-rw-r--r--dev-tcltk/tkimg/tkimg-1.4-r9.ebuild90
-rw-r--r--dev-tcltk/tkimg/tkimg-1.4.15.ebuild120
-rw-r--r--dev-tcltk/tkimg/tkimg-1.4.16.ebuild120
-rw-r--r--dev-tcltk/tkimg/tkimg-1.4.7.ebuild89
-rw-r--r--dev-tcltk/tklib/Manifest2
-rw-r--r--dev-tcltk/tklib/files/tklib-0.6-doc.patch14
-rw-r--r--dev-tcltk/tklib/metadata.xml2
-rw-r--r--dev-tcltk/tklib/tklib-0.6-r1.ebuild36
-rw-r--r--dev-tcltk/tklib/tklib-0.7.ebuild (renamed from dev-tcltk/tklib/tklib-0.6-r2.ebuild)13
-rw-r--r--dev-tcltk/tkpiechart/metadata.xml2
-rw-r--r--dev-tcltk/tkpiechart/tkpiechart-6.5-r2.ebuild (renamed from dev-tcltk/tkpiechart/tkpiechart-6.5-r1.ebuild)17
-rw-r--r--dev-tcltk/tkpng/metadata.xml2
-rw-r--r--dev-tcltk/tkpng/tkpng-0.9-r2.ebuild (renamed from dev-tcltk/tkpng/tkpng-0.9.ebuild)28
-rw-r--r--dev-tcltk/tktable/Manifest1
-rw-r--r--dev-tcltk/tktable/files/tktable-2.10-clang6.patch80
-rw-r--r--dev-tcltk/tktable/files/tktable-2.10-parallelMake.patch12
-rw-r--r--dev-tcltk/tktable/files/tktable-2.10.8-clang6.patch20
-rw-r--r--dev-tcltk/tktable/metadata.xml3
-rw-r--r--dev-tcltk/tktable/tktable-2.10-r2.ebuild (renamed from dev-tcltk/tktable/tktable-2.10.ebuild)12
-rw-r--r--dev-tcltk/tktable/tktable-2.10.8.ebuild35
-rw-r--r--dev-tcltk/tktray/metadata.xml2
-rw-r--r--dev-tcltk/tktray/tktray-1.3.9-r2.ebuild49
-rw-r--r--dev-tcltk/tktray/tktray-1.3.9.ebuild41
-rw-r--r--dev-tcltk/tktreectrl/metadata.xml2
-rw-r--r--dev-tcltk/tktreectrl/tktreectrl-2.4.1-r1.ebuild48
-rw-r--r--dev-tcltk/tktreectrl/tktreectrl-2.4.1.ebuild41
-rw-r--r--dev-tcltk/tkzinc/Manifest1
-rw-r--r--dev-tcltk/tkzinc/files/3.3.6-ldflags.patch14
-rw-r--r--dev-tcltk/tkzinc/files/tkzinc-3.3.4-latex.patch12
-rw-r--r--dev-tcltk/tkzinc/metadata.xml8
-rw-r--r--dev-tcltk/tkzinc/tkzinc-3.3.6.ebuild60
-rw-r--r--dev-tcltk/tls/Manifest5
-rw-r--r--dev-tcltk/tls/files/tls-1.7.22-gcc11.patch38
-rw-r--r--dev-tcltk/tls/files/tls-1.7.22-ldflags.patch13
-rw-r--r--dev-tcltk/tls/metadata.xml2
-rw-r--r--dev-tcltk/tls/tls-1.6-r3.ebuild44
-rw-r--r--dev-tcltk/tls/tls-1.6.7.ebuild44
-rw-r--r--dev-tcltk/tls/tls-1.7.11.ebuild44
-rw-r--r--dev-tcltk/tls/tls-1.7.22-r1.ebuild (renamed from dev-tcltk/tls/tls-1.7.16.ebuild)19
-rw-r--r--dev-tcltk/togl/files/togl-2.0-clang6.patch11
-rw-r--r--dev-tcltk/togl/metadata.xml4
-rw-r--r--dev-tcltk/togl/togl-2.0-r4.ebuild (renamed from dev-tcltk/togl/togl-2.0-r2.ebuild)24
-rw-r--r--dev-tcltk/vtcl/Manifest1
-rw-r--r--dev-tcltk/vtcl/files/vtcl-1.6.1_alpha1-tk86.patch10
-rw-r--r--dev-tcltk/vtcl/metadata.xml4
-rw-r--r--dev-tcltk/vtcl/vtcl-1.6.0-r2.ebuild (renamed from dev-tcltk/vtcl/vtcl-1.6.0-r1.ebuild)23
-rw-r--r--dev-tcltk/vtcl/vtcl-1.6.1_alpha1.ebuild45
237 files changed, 4806 insertions, 3976 deletions
diff --git a/dev-tcltk/anigif/Manifest b/dev-tcltk/anigif/Manifest
deleted file mode 100644
index c0a0da8e1b43..000000000000
--- a/dev-tcltk/anigif/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST anigif-1.3.zip 18270 BLAKE2B 02d154165d3d7b598e2ee6b0a537ca9a80b02c449a26aedb92aa4d7692e8443680fd55526fd4760757ca0686867475760ba2351baaf1be8592aff05215402c31 SHA512 d9611319461cd4a956eaacbbd63104594fc20752731a9dc314934409a1705d822738f266f4dd4419cd966ce4161148a74e9607be4ed734cb6b715ad00b4743ab
diff --git a/dev-tcltk/anigif/anigif-1.3-r1.ebuild b/dev-tcltk/anigif/anigif-1.3-r1.ebuild
deleted file mode 100644
index 21f658b0bee9..000000000000
--- a/dev-tcltk/anigif/anigif-1.3-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib
-
-DESCRIPTION="Image rotation package"
-HOMEPAGE="http://cardtable.sourceforge.net/tcltk/"
-SRC_URI="https://dev.gentoo.org/~jlec/distfiles/${P}.zip"
-
-LICENSE="tcltk"
-SLOT="0"
-KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND="dev-lang/tcl:0"
-DEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
-
-src_install() {
- insinto /usr/$(get_libdir)/${P}
- doins *
-}
diff --git a/dev-tcltk/anigif/metadata.xml b/dev-tcltk/anigif/metadata.xml
deleted file mode 100644
index a8cd1c3ffe87..000000000000
--- a/dev-tcltk/anigif/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="sourceforge">cardtable</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-tcltk/blt/Manifest b/dev-tcltk/blt/Manifest
index d11722e53bae..e2b8df26e322 100644
--- a/dev-tcltk/blt/Manifest
+++ b/dev-tcltk/blt/Manifest
@@ -1 +1,2 @@
-DIST blt2.4z-8.5.2.tar.gz 2326234 BLAKE2B 83ea57989ee1e7bbbc243058b1a734942c4b6d796d06aa3a702012ea8d01eb059e76b6b8ff0efc9b43b000f1cfe7545419e2d892f1794b2add3d8c2c602e22ba SHA512 afc465ba47ae43a0c6be17400d0a572dccd8c2a8adfd8fc3ed50f9ec28d02129f069d88096c1428c4b242550131092b4141035d7ce90c9e7181ccf712502f09a
+DIST blt-2.5.3-debian-patches.tar.gz 52252 BLAKE2B 700a2df32117ea84f9e211e18bda0d64163d24b633b0c5735808da6f3c5f32b73a69e9f1af548cca7eea4538c2aae57a87d82b2f61673e49709ac30dc036e38a SHA512 3da7831c3c8a7847e004cfb81e911883eb29f565e63f3b7ed47719ccba0a0cb593c0dbb77ff22262d5f8c4a3cb94cc074fd9c02f37729fe7763533be6677a852
+DIST blt-src-2.5.3.zip 2724036 BLAKE2B c669bc033e691d1717b6b6dccf42901fed26f58bb4d2e9fffdd4e7f83eae788e1cbdb8fd1bcdc860845a569232ec26d06773146a420984d8abf5d25ee7f73dd9 SHA512 f589564cc5f790ab11ac1356b2e27659ef0e6132ffde42d4325f0aa8d8aa4269fdb9e81dd1c196017518704e4c1c78c0d4116f32afd1e6a1c60878961b8cdb26
diff --git a/dev-tcltk/blt/blt-2.4z-r13.ebuild b/dev-tcltk/blt/blt-2.4z-r13.ebuild
deleted file mode 100644
index 2b9f4b0c0f04..000000000000
--- a/dev-tcltk/blt/blt-2.4z-r13.ebuild
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils flag-o-matic multilib toolchain-funcs
-
-MY_V_SUFFIX="-8.5.2"
-
-DESCRIPTION="Extension to Tk, adding new widgets, geometry managers, and misc commands"
-HOMEPAGE="
- http://blt.sourceforge.net/
- http://jos.decoster.googlepages.com/bltfortk8.5.2"
-SRC_URI="
- https://dev.gentoo.org/~jlec/distfiles/${PN}${PV}${MY_V_SUFFIX}.tar.gz
- http://jos.decoster.googlepages.com/${PN}${PV}${MY_V_SUFFIX}.tar.gz"
-
-IUSE="jpeg static-libs X"
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-DEPEND="
- dev-lang/tk:0=
- jpeg? ( virtual/jpeg:0= )
- X? ( x11-libs/libX11 )"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}${PV}${MY_V_SUFFIX}"
-
-MAKEOPTS+=" -j1"
-
-src_prepare() {
- epatch "${FILESDIR}/blt-2.4z-r4-fix-makefile2.patch"
- epatch "${FILESDIR}/blt-2.4z-r4-fix-makefile3.patch"
- # From blt-2.4z-6mdk.src.rpm
- epatch "${FILESDIR}"/blt2.4z-64bit.patch
-
- epatch "${FILESDIR}"/blt-2.4z-tcl8.5-fixpkgruntime.patch
-
- epatch "${FILESDIR}"/${P}-ldflags.patch
-
- # Set the correct libdir and drop RPATH
- sed \
- -e "s:\(^libdir=\${exec_prefix}/\)lib:\1$(get_libdir):" \
- -e 's:LD_RUN_PATH=.*$:LD_RUN_PATH="":g' \
- -e "/RANLIB/s:ranlib:$(tc-getRANLIB):g" \
- -i configure* || die "sed configure* failed"
- sed \
- -e "/^scriptdir =/s:lib:$(get_libdir):" \
- -i Makefile.in demos/Makefile.in || die "sed Makefile.in failed"
-
- sed \
- -e "/AR/s:ar:$(tc-getAR):g" \
- -e 's:0444:0644:g' \
- -i src/Makefile.in || die
-
- epatch \
- "${FILESDIR}"/${P}-linking.patch \
- "${FILESDIR}"/${P}-darwin.patch \
- "${FILESDIR}"/${P}-gbsd.patch \
- "${FILESDIR}"/${P}-tk8.6.patch \
- "${FILESDIR}"/${P}-tcl8.6.patch \
- "${FILESDIR}"/${P}-aclocal.patch
-
- append-cflags -fPIC
-
- mv configure.{in,ac} || die
-
- eautoreconf
-}
-
-src_configure() {
- LC_ALL=C \
- econf \
- --x-includes="${EPREFIX}/usr/include" \
- --x-libraries="${EPREFIX}/usr/$(get_libdir)" \
- --with-blt="${EPREFIX}/usr/$(get_libdir)" \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
- --with-tk="${EPREFIX}/usr/$(get_libdir)" \
- --with-tclincls="${EPREFIX}/usr/include" \
- --with-tkincls="${EPREFIX}/usr/include" \
- --with-tcllibs="${EPREFIX}/usr/$(get_libdir)" \
- --with-tklibs="${EPREFIX}/usr/$(get_libdir)" \
- --with-cc="$(tc-getCC)" \
- --with-cflags="${CFLAGS}" \
- --with-gnu-ld \
- $(use_enable jpeg) \
- $(use_with X x)
-}
-
-src_compile() {
- emake LDFLAGS="${LDFLAGS}"
-}
-
-src_install() {
- sed \
- -e "s:\.\./src/bltwish:${EPREFIX}/usr/bin/bltwish:g" \
- -e "s:\.\./bltwish:${EPREFIX}/usr/bin/bltwish:g" \
- -e "s:/usr/local/bin/bltwish:${EPREFIX}/usr/bin/bltwish:g" \
- -e "s:/usr/local/bin/tclsh:${EPREFIX}/usr/bin/tclsh:g" \
- -i demos/{,scripts/}*.tcl || die
-
- dodir \
- /usr/bin \
- /usr/$(get_libdir)/blt2.4/demos/bitmaps \
- /usr/share/man/mann \
- /usr/include
-
- emake INSTALL_ROOT="${D}" install
-
- dodoc NEWS PROBLEMS README
- dohtml html/*.html
- for f in `ls "${ED}"/usr/share/man/mann` ; do
- mv "${ED}"/usr/share/man/mann/${f} "${ED}"/usr/share/man/mann/${f/.n/.nblt} || die
- done
-
- # fix for linking against shared lib with -lBLT or -lBLTlite
- dosym libBLT24$(get_libname) /usr/$(get_libdir)/libBLT$(get_libname)
- dosym libBLTlite24$(get_libname) /usr/$(get_libdir)/libBLTlite$(get_libname)
-
- use static-libs || \
- find "${ED}"/usr/$(get_libdir) -name "*.a" -print0 | \
- xargs -r -0 rm -fv
-}
diff --git a/dev-tcltk/blt/blt-2.5.3-r3.ebuild b/dev-tcltk/blt/blt-2.5.3-r3.ebuild
new file mode 100644
index 000000000000..dc2510cc9ca9
--- /dev/null
+++ b/dev-tcltk/blt/blt-2.5.3-r3.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYP=${PN}$(ver_cut 1-2)
+SHVER=$(ver_rs 1 '' $(ver_cut 1-2))
+
+inherit autotools flag-o-matic multilib toolchain-funcs
+
+DESCRIPTION="Extension to Tk, adding new widgets, geometry managers, and misc commands"
+HOMEPAGE="https://sourceforge.net/projects/wize/"
+SRC_URI="https://downloads.sourceforge.net/wize/${PN}-src-${PV}.zip
+ https://dev.gentoo.org/~tupone/distfiles/${P}-debian-patches.tar.gz"
+
+IUSE="jpeg static-libs"
+SLOT="0/${SHVER}"
+LICENSE="BSD"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ dev-lang/tk:0=
+ jpeg? ( media-libs/libjpeg-turbo:0= )
+ x11-libs/libX11"
+RDEPEND="${DEPEND}"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"/${MYP}
+
+MAKEOPTS+=" -j1"
+
+PATCHES=(
+ "${WORKDIR}"/patches/02-debian-all.patch
+ "${WORKDIR}"/patches/03-fedora-patch-2.patch
+ "${WORKDIR}"/patches/04-fedora-tk8.5.6.patch
+ "${WORKDIR}"/patches/05-tk8.5-zoomstack.patch
+ "${WORKDIR}"/patches/doc-typos.patch
+ "${WORKDIR}"/patches/tcl8.6.patch
+ "${WORKDIR}"/patches/tk8.6.patch
+ "${WORKDIR}"/patches/install.patch
+ "${WORKDIR}"/patches/usetclint.patch
+ "${WORKDIR}"/patches/usetkint.patch
+ "${WORKDIR}"/patches/table.patch
+ "${WORKDIR}"/patches/ldflags.patch
+ "${WORKDIR}"/patches/pkgindex.patch
+ "${WORKDIR}"/patches/decls.patch
+ "${WORKDIR}"/patches/bltnsutil.patch
+ "${WORKDIR}"/patches/blthash.patch
+ "${WORKDIR}"/patches/const.patch
+ "${WORKDIR}"/patches/uninitialized.patch
+ "${WORKDIR}"/patches/unused.patch
+ "${WORKDIR}"/patches/pointertoint.patch
+ "${WORKDIR}"/patches/autoreconf.patch
+ "${WORKDIR}"/patches/switch.patch
+ "${FILESDIR}"/${P}-gentoo.patch
+ "${FILESDIR}"/${P}-darwin.patch
+ "${FILESDIR}"/${P}-gbsd.patch
+ "${FILESDIR}"/${P}-lto.patch
+ "${FILESDIR}"/${P}-parallelMake.patch
+)
+
+src_prepare() {
+ default
+ rm acconfig.h || die
+ # Set the correct libdir and drop RPATH
+ sed \
+ -e "s:\(^libdir=\${exec_prefix}/\)lib:\1$(get_libdir):" \
+ -e 's:LD_RUN_PATH=.*$:LD_RUN_PATH="":g' \
+ -i configure.in || die "sed configure* failed"
+ sed \
+ -e "/^scriptdir =/s:lib:$(get_libdir):" \
+ -i Makefile.in demos/Makefile.in || die "sed Makefile.in failed"
+
+ sed \
+ -e "/AR/s:ar:$(tc-getAR):g" \
+ -e 's:0444:0644:g' \
+ -i generic/Makefile.in || die
+
+ append-cflags -fPIC
+
+ mv configure.{in,ac} || die
+ eautoreconf
+}
+
+src_configure() {
+ LC_ALL=C \
+ econf \
+ --x-includes="${EPREFIX}/usr/include" \
+ --x-libraries="${EPREFIX}/usr/$(get_libdir)" \
+ --with-blt="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tk="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tclincls="${EPREFIX}/usr/include" \
+ --with-tkincls="${EPREFIX}/usr/include" \
+ --with-tcllibs="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tklibs="${EPREFIX}/usr/$(get_libdir)" \
+ --with-cflags="${CFLAGS}" \
+ --with-gnu-ld \
+ $(use_enable jpeg) \
+ --with-x \
+ CC="$(tc-getCC)"
+}
+
+src_compile() {
+ emake LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ sed \
+ -e "s:\.\./src/bltwish:${EPREFIX}/usr/bin/bltwish:g" \
+ -e "s:\.\./bltwish:${EPREFIX}/usr/bin/bltwish:g" \
+ -e "s:/usr/local/bin/bltwish:${EPREFIX}/usr/bin/bltwish:g" \
+ -e "s:/usr/local/bin/tclsh:${EPREFIX}/usr/bin/tclsh:g" \
+ -i demos/{,scripts/}*.tcl || die
+
+ dodir \
+ /usr/bin \
+ /usr/$(get_libdir)/${MYP}/demos/bitmaps \
+ /usr/share/man/mann \
+ /usr/include
+
+ emake INSTALL_ROOT="${D}" install
+
+ dodoc NEWS PROBLEMS README
+ docinto html
+ dodoc html/*.html
+ pushd "${ED}"/usr/share/man/mann
+ for f in * ; do
+ mv ${f} ${f/.n/.nblt} || die
+ done
+ popd
+
+ # fix for linking against shared lib with -lBLT or -lBLTlite
+ dosym libBLT${SHVER}$(get_libname) /usr/$(get_libdir)/libBLT$(get_libname)
+ dosym libBLTlite${SHVER}$(get_libname) /usr/$(get_libdir)/libBLTlite$(get_libname)
+
+ use static-libs || \
+ find "${ED}"/usr/$(get_libdir) -name "*.a" -print0 | \
+ xargs -r -0 rm -fv
+}
+
+pkg_preinst() {
+ # Fix 'symlink is blocked by a directory' Bug #907270
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/bitmaps/hand
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/bitmaps/hand.backup.*
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/bitmaps/fish
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/bitmaps/fish.backup.*
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/images
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/images.backup.*
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/scripts
+ rm -rf "${EROOT}"/usr/$(get_libdir)/${MYP}/demos/scripts.backup.*
+}
diff --git a/dev-tcltk/blt/files/blt-2.4z-aclocal.patch b/dev-tcltk/blt/files/blt-2.4z-aclocal.patch
deleted file mode 100644
index e7c62b5de7f3..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-aclocal.patch
+++ /dev/null
@@ -1,79 +0,0 @@
- aclocal.m4 | 6 +++---
- configure.in | 38 +++-----------------------------------
- 2 files changed, 6 insertions(+), 38 deletions(-)
-
-diff --git a/aclocal.m4 b/aclocal.m4
-index 7441d3d..b86a6b2 100644
---- a/aclocal.m4
-+++ b/aclocal.m4
-@@ -11,11 +11,11 @@ if test "$cross_compiling" = yes; then
- else
- cat > conftest.$ac_ext <<EOF
- [#]line __oline__ "configure"
--#include "confdefs.h"
--ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
-+[#include "confdefs.h"
-+#ifdef __cplusplus
- extern "C" void exit(int);
- #endif
--])dnl
-+]dnl
- [$2]
- EOF
- eval $ac_link
-diff --git a/configure.in b/configure.in
-index adde26d..b57eaa9 100644
---- a/configure.in
-+++ b/configure.in
-@@ -83,35 +83,9 @@ PWD=`pwd`
- #
- # -----------------------------------------------------------------------
-
--BLT_ENV_CC=$CC
--
--#
--# CC search order
--#
--# 1. command line (--with-cc)
--# 2. environment variable ($CC)
--# 3. cached variable ($blt_cv_prog_cc)
--# 4. check for program (AC_PROG_CC)
--# 4. default to cc
--#
--
--AC_MSG_CHECKING([which C compiler])
--if test "x${blt_with_cc}" != "x" ; then
-- CC=${blt_with_cc}
-- unset ac_cv_prog_CPP
-- unset ac_cv_prog_CC
--elif test "x${BLT_ENV_CC}" != "x" ; then
-- unset ac_cv_prog_CPP
-- unset ac_cv_prog_CC
--elif test "x${blt_cv_prog_cc}" != "x" ; then
-- CC=${blt_cv_prog_cc}
-- unset ac_cv_prog_CC
--else
-- AC_PROG_CC
--fi
--if test "x${CC}" = "x" ; then
-- CC=cc
--fi
-+AC_PROG_CC
-+AC_PROG_CPP
-+AC_PROG_EGREP
-
- case $target in
- *-*-cygwin*|*-*-mingw*)
-@@ -121,12 +95,6 @@ case $target in
- ;;
- esac
-
--AC_MSG_RESULT([$CC])
--
--unset blt_cv_prog_cc
--AC_CACHE_VAL(blt_cv_prog_cc, blt_cv_prog_cc=$CC)
--AC_SUBST(CC)
--AC_PROG_CPP
- if test "x${GCC}" != "x" ; then
- blt_have_gcc="yes"
- else
diff --git a/dev-tcltk/blt/files/blt-2.4z-darwin.patch b/dev-tcltk/blt/files/blt-2.4z-darwin.patch
deleted file mode 100644
index 0d766fe5e17f..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-darwin.patch
+++ /dev/null
@@ -1,72 +0,0 @@
---- configure.in
-+++ configure.in
-@@ -183,9 +183,6 @@
- blt_lib_prefix=""
- fi
- ;;
-- *-*-macosx)
-- blt_platform="macosx"
-- ;;
- *)
- blt_platform="unix"
- ;;
-@@ -728,6 +725,9 @@
- *-hpux*)
- SHLIB_SUFFIX="sl"
- ;;
-+ *-darwin*)
-+ SHLIB_SUFFIX="dylib"
-+ ;;
- *)
- SHLIB_SUFFIX="so"
- ;;
-@@ -1145,6 +1145,13 @@
- LDFLAGS=""
- ;;
-
-+ *-darwin*)
-+ SHLIB_CFLAGS=""
-+ SHLIB_LD="${CC}"
-+ SHLIB_LD_FLAGS='-dynamiclib -install_name $(libdir)/$@'
-+ SHLIB_SUFFIX=".dylib"
-+ ;;
-+
- *-dgux*)
- SHLIB_CFLAGS="-K PIC"
- SHLIB_LD="cc"
---- configure
-+++ configure
-@@ -1279,9 +1279,6 @@
- blt_lib_prefix=""
- fi
- ;;
-- *-*-macosx)
-- blt_platform="macosx"
-- ;;
- *)
- blt_platform="unix"
- ;;
-@@ -3396,6 +3393,9 @@
- *-hpux*)
- SHLIB_SUFFIX="sl"
- ;;
-+ *-darwin*)
-+ SHLIB_SUFFIX="dylib"
-+ ;;
- *)
- SHLIB_SUFFIX="so"
- ;;
-@@ -3943,6 +3943,13 @@
- LDFLAGS=""
- ;;
-
-+ *-darwin*)
-+ SHLIB_CFLAGS=""
-+ SHLIB_LD="${CC}"
-+ SHLIB_LD_FLAGS='-dynamiclib -install_name $(libdir)/$@'
-+ SHLIB_SUFFIX=".dylib"
-+ ;;
-+
- *-dgux*)
- SHLIB_CFLAGS="-K PIC"
- SHLIB_LD="cc"
diff --git a/dev-tcltk/blt/files/blt-2.4z-gbsd.patch b/dev-tcltk/blt/files/blt-2.4z-gbsd.patch
deleted file mode 100644
index ffdadf1746e5..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-gbsd.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-Detect correctly Gentoo/*BSD CHOSTS:
-- *-*-freebsd* means tcl/tk libs will be like libtcl85.so, instead of
- libtcl8.5.so
-- *-gentoo-*bsd means this is a Gentoo/*BSD system which uses the same toolchain
- as linux, so we link in the same way.
-
---- blt2.4z-8.5.2/configure.old 2012-05-06 18:11:45.000000000 -0400
-+++ blt2.4z-8.5.2/configure 2012-05-06 18:15:25.000000000 -0400
-@@ -3376,7 +3376,7 @@
- fi
-
- case $target in
-- *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
-+ *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|*-*-freebsd*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
- TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
- TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
- ;;
-@@ -4079,6 +4079,12 @@
- EXTRA_LIB_SPECS="-ldl"
- ;;
-
-+ *-gentoo-netbsd*|*-gentoo-freebsd*|*-gentoo-openbsd*)
-+ SHLIB_CFLAGS="-fPIC"
-+ SHLIB_LD="${CC}"
-+ SHLIB_LD_FLAGS='-rdynamic -shared -Wl,-E -Wl,-soname,$@'
-+ ;;
-+
- *-netbsd*|*-freebsd*|*-openbsd*)
- # Not available on all versions: check for include file.
- ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
---- blt2.4z-8.5.2/configure.in.old 2012-05-06 18:11:47.000000000 -0400
-+++ blt2.4z-8.5.2/configure.in 2012-05-06 18:15:08.000000000 -0400
-@@ -708,7 +708,7 @@
- fi
-
- case $target in
-- *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
-+ *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|*-*-freebsd*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
- TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
- TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
- ;;
-@@ -1241,6 +1241,12 @@
- EXTRA_LIB_SPECS="-ldl"
- ;;
-
-+ *-gentoo-netbsd*|*-gentoo-freebsd*|*-gentoo-openbsd*)
-+ SHLIB_CFLAGS="-fPIC"
-+ SHLIB_LD="${CC}"
-+ SHLIB_LD_FLAGS='-rdynamic -shared -Wl,-E -Wl,-soname,$@'
-+ ;;
-+
- *-netbsd*|*-freebsd*|*-openbsd*)
- # Not available on all versions: check for include file.
- AC_CHECK_HEADER(dlfcn.h, test_ok=yes, test_ok=no)
diff --git a/dev-tcltk/blt/files/blt-2.4z-ldflags.patch b/dev-tcltk/blt/files/blt-2.4z-ldflags.patch
deleted file mode 100644
index bc795d060de8..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-ldflags.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git a/src/shared/Makefile.in b/src/shared/Makefile.in
-index 5d93e82..db14156 100644
---- a/src/shared/Makefile.in
-+++ b/src/shared/Makefile.in
-@@ -18,7 +18,7 @@ SHLIB_LD_FLAGS = @SHLIB_LD_FLAGS@ @LD_RUN_PATH@
- SHLIB_TCL_ONLY_LIB_SPECS = @SHLIB_TCL_ONLY_LIB_SPECS@
- SHLIB_LIB_SPECS = @SHLIB_LIB_SPECS@
- SHLIB_LD = @SHLIB_LD@
--LDFLAGS = @LDFLAGS@ @LD_RUN_PATH@
-+LDFLAGS += @LDFLAGS@
-
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-@@ -144,14 +144,14 @@ $(lib_so): $(OBJS)
- $(CC) -c $(CC_SWITCHES) -DBLT_LIBRARY=\"$(scriptdir)\" \
- $(srcdir)/bltInit.c
- $(RM) $@
-- $(SHLIB_LD) $(SHLIB_LD_FLAGS) -o $@ bltInit.o $(OBJS) \
-+ $(SHLIB_LD) $(SHLIB_LD_FLAGS) $(LDFLAGS) -o $@ bltInit.o $(OBJS) \
- $(SHLIB_LIB_SPECS)
-
- $(tcl_only_lib_so): $(TCL_ONLY_OBJS)
- $(CC) -c $(CC_SWITCHES) -DTCL_ONLY -DBLT_LIBRARY=\"$(scriptdir)\" \
- $(srcdir)/bltInit.c
- $(RM) $@
-- $(SHLIB_LD) $(SHLIB_LD_FLAGS) -o $@ bltInit.o $(TCL_ONLY_OBJS) \
-+ $(SHLIB_LD) $(SHLIB_LD_FLAGS) $(LDFLAGS) -o $@ bltInit.o $(TCL_ONLY_OBJS) \
- $(SHLIB_TCL_ONLY_LIB_SPECS)
-
- install: mkdirs install-lib install-demo
diff --git a/dev-tcltk/blt/files/blt-2.4z-linking.patch b/dev-tcltk/blt/files/blt-2.4z-linking.patch
deleted file mode 100644
index b5a5359171d3..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-linking.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/src/shared/Makefile.in b/src/shared/Makefile.in
-index db14156..a06111f 100644
---- a/src/shared/Makefile.in
-+++ b/src/shared/Makefile.in
-@@ -145,14 +145,14 @@ $(lib_so): $(OBJS)
- $(srcdir)/bltInit.c
- $(RM) $@
- $(SHLIB_LD) $(SHLIB_LD_FLAGS) $(LDFLAGS) -o $@ bltInit.o $(OBJS) \
-- $(SHLIB_LIB_SPECS)
-+ $(SHLIB_LIB_SPECS) $(LIBS)
-
- $(tcl_only_lib_so): $(TCL_ONLY_OBJS)
- $(CC) -c $(CC_SWITCHES) -DTCL_ONLY -DBLT_LIBRARY=\"$(scriptdir)\" \
- $(srcdir)/bltInit.c
- $(RM) $@
- $(SHLIB_LD) $(SHLIB_LD_FLAGS) $(LDFLAGS) -o $@ bltInit.o $(TCL_ONLY_OBJS) \
-- $(SHLIB_TCL_ONLY_LIB_SPECS)
-+ $(SHLIB_TCL_ONLY_LIB_SPECS) $(LIBS)
-
- install: mkdirs install-lib install-demo
-
diff --git a/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile2.patch b/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile2.patch
deleted file mode 100644
index 1ff4fed5f51b..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile2.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Source: mescalinum
-Upstream: N/A
-Reason: fix broken $DESTDIR support in Makefile
---- Makefile.in.orig 2008-10-26 14:36:22.000000000 +0100
-+++ Makefile.in 2008-10-26 14:37:04.000000000 +0100
-@@ -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 $(INSTALL_ROOT)$(scriptdir)
-+ $(INSTALL_DATA) $(srcdir)/PROBLEMS $(INSTALL_ROOT)$(scriptdir)
-+ $(INSTALL_DATA) $(srcdir)/NEWS $(INSTALL_ROOT)$(scriptdir)
-
- mkdirs:
- @for i in $(instdirs) ; do \
diff --git a/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile3.patch b/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile3.patch
deleted file mode 100644
index c7065df39753..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-r4-fix-makefile3.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Source: mescalinum
-Upstream: N/A
-Reason: fix broken $DESTDIR support in library/Makefile
---- library/Makefile.in.orig 2008-10-26 14:30:28.000000000 +0100
-+++ library/Makefile.in 2008-10-26 14:31:40.000000000 +0100
-@@ -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 \
diff --git a/dev-tcltk/blt/files/blt-2.4z-tcl8.5-fixpkgruntime.patch b/dev-tcltk/blt/files/blt-2.4z-tcl8.5-fixpkgruntime.patch
deleted file mode 100644
index c8637b9c7c45..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-tcl8.5-fixpkgruntime.patch
+++ /dev/null
@@ -1,66 +0,0 @@
---- src/bltInit.c.orig 2008-05-29 00:05:10.000000000 +0200
-+++ src/bltInit.c 2008-05-29 00:26:40.000000000 +0200
-@@ -413,7 +413,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_InitStubs(interp, TCL_VERSION, 1) == NULL) {
- return TCL_ERROR;
- }
- /* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
-@@ -458,16 +458,23 @@ Blt_Init(interp)
- register Tcl_AppInitProc **p;
- Tcl_Namespace *nsPtr;
-
-+ if (Tk_InitStubs(interp, TK_VERSION, 1) == NULL) {
-+ return TCL_OK;
-+ }
-+
-+#if 0
- #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0))
- if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
- return TCL_OK;
-- }
-+ }
- #else
- if (Tcl_PkgRequire(interp, "Tk", TK_VERSION, EXACT) == NULL) {
- Tcl_ResetResult(interp);
- return TCL_OK;
- }
- #endif
-+#endif
-+
- nsPtr = Tcl_CreateNamespace(interp, "blt::tile", NULL,
- (Tcl_NamespaceDeleteProc *) NULL);
- if (nsPtr == NULL) {
-@@ -507,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_InitStubs(interp, TCL_VERSION, EXACT) == NULL) {
- return TCL_ERROR;
- }
- /* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
-@@ -543,6 +550,11 @@ Blt_Init(interp)
- if (!tkLoaded) {
- register Tcl_AppInitProc **p;
-
-+ if (Tk_InitStubs(interp, TK_VERSION, 1) == NULL) {
-+ return TCL_OK;
-+ }
-+
-+#if 0
- #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0))
- if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
- return TCL_OK;
-@@ -553,6 +565,8 @@ Blt_Init(interp)
- return TCL_OK;
- }
- #endif
-+#endif
-+
- /* Initialize the BLT commands that use Tk too. */
- for (p = tkCmds; *p != NULL; p++) {
- if ((**p) (interp) != TCL_OK) {
diff --git a/dev-tcltk/blt/files/blt-2.4z-tcl8.6.patch b/dev-tcltk/blt/files/blt-2.4z-tcl8.6.patch
deleted file mode 100644
index 8721940af2c3..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-tcl8.6.patch
+++ /dev/null
@@ -1,86 +0,0 @@
- src/bltScrollbar.c | 2 +-
- src/bltTed.c | 6 +++---
- src/bltVecMath.c | 8 ++++----
- 3 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/bltScrollbar.c b/src/bltScrollbar.c
-index 69662de..731e37b 100644
---- a/src/bltScrollbar.c
-+++ b/src/bltScrollbar.c
-@@ -534,7 +534,7 @@ ScrollbarWidgetCmd(clientData, interp, argc, argv)
- } else {
- fraction = ((double)pixels / (double)barWidth);
- }
-- sprintf(interp->result, "%g", fraction);
-+ sprintf(Tcl_GetStringResult(interp), "%g", fraction);
- } else if ((c == 'f') && (strncmp(argv[1], "fraction", length) == 0)) {
- int x, y, pos, barWidth;
- double fraction;
-diff --git a/src/bltTed.c b/src/bltTed.c
-index 64c43e8..832ef9c 100644
---- a/src/bltTed.c
-+++ b/src/bltTed.c
-@@ -1504,7 +1504,7 @@ EditOp(dataPtr, interp, argc, argv)
- tablePtr->flags |= ARRANGE_PENDING;
- Tcl_DoWhenIdle(tablePtr->arrangeProc, tablePtr);
- }
-- interp->result = Tk_PathName(tedPtr->tkwin);
-+ Tcl_SetResult(interp, (char*)Tk_PathName(tedPtr->tkwin), TCL_VOLATILE);
- tedPtr->flags |= LAYOUT_PENDING;
- EventuallyRedraw(tedPtr);
- return TCL_OK;
-@@ -1678,7 +1678,7 @@ SelectOp(dataPtr, interp, argc, argv)
- tedPtr->activeRectArr[4].width = grip - 1;
- tedPtr->activeRectArr[4].height = grip - 1;
-
-- interp->result = Tk_PathName(entryPtr->tkwin);
-+ Tcl_SetResult(interp, (char*)Tk_PathName(entryPtr->tkwin), TCL_VOLATILE);
- active = 1;
- break;
- }
-@@ -1751,7 +1751,7 @@ RepOp(dataPtr, interp, argc, argv)
- tablePtr->flags |= ARRANGE_PENDING;
- Tcl_DoWhenIdle(tablePtr->arrangeProc, tablePtr);
- }
-- interp->result = Tk_PathName(tedPtr->tkwin);
-+ Tcl_SetResult(interp, (char*)Tk_PathName(tedPtr->tkwin), TCL_VOLATILE);
- tedPtr->flags |= LAYOUT_PENDING;
- EventuallyRedraw(tedPtr);
- return TCL_OK;
-diff --git a/src/bltVecMath.c b/src/bltVecMath.c
-index dc37af8..5117f63 100644
---- a/src/bltVecMath.c
-+++ b/src/bltVecMath.c
-@@ -764,20 +764,20 @@ MathError(interp, value)
- if ((errno == EDOM) || (value != value)) {
- Tcl_AppendResult(interp, "domain error: argument not in valid range",
- (char *)NULL);
-- Tcl_SetErrorCode(interp, "ARITH", "DOMAIN", interp->result,
-+ Tcl_SetErrorCode(interp, "ARITH", "DOMAIN", Tcl_GetStringResult(interp),
- (char *)NULL);
- } else if ((errno == ERANGE) || IS_INF(value)) {
- if (value == 0.0) {
- Tcl_AppendResult(interp,
- "floating-point value too small to represent",
- (char *)NULL);
-- Tcl_SetErrorCode(interp, "ARITH", "UNDERFLOW", interp->result,
-+ Tcl_SetErrorCode(interp, "ARITH", "UNDERFLOW", Tcl_GetStringResult(interp),
- (char *)NULL);
- } else {
- Tcl_AppendResult(interp,
- "floating-point value too large to represent",
- (char *)NULL);
-- Tcl_SetErrorCode(interp, "ARITH", "OVERFLOW", interp->result,
-+ Tcl_SetErrorCode(interp, "ARITH", "OVERFLOW", Tcl_GetStringResult(interp),
- (char *)NULL);
- }
- } else {
-@@ -786,7 +786,7 @@ MathError(interp, value)
- sprintf(buf, "%d", errno);
- Tcl_AppendResult(interp, "unknown floating-point error, ",
- "errno = ", buf, (char *)NULL);
-- Tcl_SetErrorCode(interp, "ARITH", "UNKNOWN", interp->result,
-+ Tcl_SetErrorCode(interp, "ARITH", "UNKNOWN", Tcl_GetStringResult(interp),
- (char *)NULL);
- }
- }
diff --git a/dev-tcltk/blt/files/blt-2.4z-tk8.6.patch b/dev-tcltk/blt/files/blt-2.4z-tk8.6.patch
deleted file mode 100644
index f956c098138e..000000000000
--- a/dev-tcltk/blt/files/blt-2.4z-tk8.6.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/tkButton.c.orig 2013-01-04 23:24:45.000000000 -0500
-+++ src/tkButton.c 2013-01-04 23:28:29.000000000 -0500
-@@ -526,8 +526,6 @@
- static Blt_TileChangedProc TileChangedProc;
- static Tcl_CmdProc ButtonCmd, LabelCmd, CheckbuttonCmd, RadiobuttonCmd;
-
--EXTERN int TkCopyAndGlobalEval _ANSI_ARGS_((Tcl_Interp *interp, char *script));
--
- #if (TK_MAJOR_VERSION > 4)
- EXTERN void TkComputeAnchor _ANSI_ARGS_((Tk_Anchor anchor, Tk_Window tkwin,
- int padX, int padY, int innerWidth, int innerHeight, int *xPtr,
-@@ -1890,7 +1888,7 @@
- }
- }
- if ((butPtr->type != TYPE_LABEL) && (butPtr->command != NULL)) {
-- return TkCopyAndGlobalEval(butPtr->interp, butPtr->command);
-+ return Tcl_EvalObjEx(butPtr->interp, butPtr->command, TCL_EVAL_GLOBAL);
- }
- return TCL_OK;
- }
diff --git a/dev-tcltk/blt/files/blt-2.5.3-darwin.patch b/dev-tcltk/blt/files/blt-2.5.3-darwin.patch
new file mode 100644
index 000000000000..11524c2e74dd
--- /dev/null
+++ b/dev-tcltk/blt/files/blt-2.5.3-darwin.patch
@@ -0,0 +1,36 @@
+--- a/configure.in
++++ b/configure.in
+@@ -183,9 +183,6 @@
+ blt_lib_prefix=""
+ fi
+ ;;
+- *-*-macosx)
+- blt_platform="macosx"
+- ;;
+ *)
+ blt_platform="unix"
+ ;;
+@@ -728,6 +725,9 @@
+ *-hpux*)
+ SHLIB_SUFFIX="sl"
+ ;;
++ *-darwin*)
++ SHLIB_SUFFIX="dylib"
++ ;;
+ *)
+ SHLIB_SUFFIX="so"
+ ;;
+@@ -1145,6 +1145,13 @@
+ LDFLAGS=""
+ ;;
+
++ *-darwin*)
++ SHLIB_CFLAGS=""
++ SHLIB_LD="${CC}"
++ SHLIB_LD_FLAGS='-dynamiclib -install_name $(libdir)/$@'
++ SHLIB_SUFFIX=".dylib"
++ ;;
++
+ *-dgux*)
+ SHLIB_CFLAGS="-K PIC"
+ SHLIB_LD="cc"
diff --git a/dev-tcltk/blt/files/blt-2.5.3-gbsd.patch b/dev-tcltk/blt/files/blt-2.5.3-gbsd.patch
new file mode 100644
index 000000000000..4449ad374468
--- /dev/null
+++ b/dev-tcltk/blt/files/blt-2.5.3-gbsd.patch
@@ -0,0 +1,24 @@
+--- a/configure.in 2012-05-06 18:11:47.000000000 -0400
++++ b/configure.in 2012-05-06 18:15:08.000000000 -0400
+@@ -708,7 +708,7 @@
+ fi
+
+ case $target in
+- *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
++ *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|*-*-freebsd*|OpenBSD-*|*-*-cygwin*|*-*-mingw*)
+ TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
+ TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
+ ;;
+@@ -1241,6 +1241,12 @@
+ EXTRA_LIB_SPECS="-ldl"
+ ;;
+
++ *-gentoo-netbsd*|*-gentoo-freebsd*|*-gentoo-openbsd*)
++ SHLIB_CFLAGS="-fPIC"
++ SHLIB_LD="${CC}"
++ SHLIB_LD_FLAGS='-rdynamic -shared -Wl,-E -Wl,-soname,$@'
++ ;;
++
+ *-netbsd*|*-freebsd*|*-openbsd*)
+ # Not available on all versions: check for include file.
+ AC_CHECK_HEADER(dlfcn.h, test_ok=yes, test_ok=no)
diff --git a/dev-tcltk/blt/files/blt-2.5.3-gentoo.patch b/dev-tcltk/blt/files/blt-2.5.3-gentoo.patch
new file mode 100644
index 000000000000..3372b83a733b
--- /dev/null
+++ b/dev-tcltk/blt/files/blt-2.5.3-gentoo.patch
@@ -0,0 +1,45 @@
+--- a/configure.in 2021-01-03 20:59:43.337589407 +0100
++++ b/configure.in 2021-01-03 21:00:48.936539537 +0100
+@@ -56,10 +56,6 @@
+ blt_enable_jpeg=$enableval ])
+ AC_ARG_ENABLE(cygwin, [ --enable-cygwin Use cygwin Tcl/Tk libraries. Requires cygwin1.dll], [
+ blt_enable_cygwin=$enableval ])
+-AC_ARG_WITH(cc, [ --with-cc=CC Set C compiler to CC], [
+- blt_with_cc=$with_cc
+- unset ac_cv_prog_CC
+- unset ac_cv_prog_CPP ])
+ AC_ARG_WITH(cflags, [ --with-cflags=FLAGS Set compiler flags to FLAGS],
+ blt_with_cflags="$with_cflags")
+ AC_ARG_WITH(gnu_ld, [ --with-gnu-ld Use GNU linker],
+@@ -96,22 +92,7 @@
+ #
+
+ AC_MSG_CHECKING([which C compiler])
+-if test "x${blt_with_cc}" != "x" ; then
+- CC=${blt_with_cc}
+- unset ac_cv_prog_CPP
+- unset ac_cv_prog_CC
+-elif test "x${BLT_ENV_CC}" != "x" ; then
+- unset ac_cv_prog_CPP
+- unset ac_cv_prog_CC
+-elif test "x${blt_cv_prog_cc}" != "x" ; then
+- CC=${blt_cv_prog_cc}
+- unset ac_cv_prog_CC
+-else
+- AC_PROG_CC
+-fi
+-if test "x${CC}" = "x" ; then
+- CC=cc
+-fi
++AC_PROG_CC
+
+ case $target in
+ *-*-cygwin*|*-*-mingw*)
+@@ -125,7 +106,6 @@
+
+ unset blt_cv_prog_cc
+ AC_CACHE_VAL(blt_cv_prog_cc, blt_cv_prog_cc=$CC)
+-AC_SUBST(CC)
+ AC_PROG_CPP
+ AS_IF([test "x${GCC}" != "x"],[
+ blt_have_gcc="yes"
diff --git a/dev-tcltk/blt/files/blt-2.5.3-lto.patch b/dev-tcltk/blt/files/blt-2.5.3-lto.patch
new file mode 100644
index 000000000000..9d1543aae9e9
--- /dev/null
+++ b/dev-tcltk/blt/files/blt-2.5.3-lto.patch
@@ -0,0 +1,18 @@
+--- a/generic/bltObjConfig.c 2022-08-04 10:42:54.705864029 +0200
++++ b/generic/bltObjConfig.c 2022-08-04 10:44:02.681005365 +0200
+@@ -1803,11 +1803,11 @@
+ fprintf(stderr, "Blt_ConfigTypes changed\n");
+ }
+ if (stype == BLT_CONFIG_CUSTOM) {
+- extern Blt_CustomOption bltDistanceOption;
+- extern Blt_CustomOption bltPositiveDistanceOption;
++ extern Tk_CustomOption bltDistanceOption;
++ extern Tk_CustomOption bltPositiveDistanceOption;
+
+- if (specPtr->customPtr == &bltDistanceOption ||
+- specPtr->customPtr == &bltPositiveDistanceOption
++ if (specPtr->customPtr == (Blt_CustomOption *)&bltDistanceOption ||
++ specPtr->customPtr == (Blt_CustomOption *)&bltPositiveDistanceOption
+ ) {
+ stype = BLT_CONFIG_PIXELS;
+ }
diff --git a/dev-tcltk/blt/files/blt-2.5.3-parallelMake.patch b/dev-tcltk/blt/files/blt-2.5.3-parallelMake.patch
new file mode 100644
index 000000000000..81221ed6b7f4
--- /dev/null
+++ b/dev-tcltk/blt/files/blt-2.5.3-parallelMake.patch
@@ -0,0 +1,23 @@
+--- a/man/Makefile.in 2023-01-15 13:10:49.541445995 +0100
++++ b/man/Makefile.in 2023-01-15 13:11:44.483619553 +0100
+@@ -34,7 +34,8 @@
+
+ all: man.macros $(MANPAGES)
+
+-install: mkdirs install-mann install-man3
++install: mkdirs
++ $(MAKE) install-mann install-man3
+
+ install-mann: $(MAN_N)
+ for i in *.n ; do \
+--- a/demos/Makefile.in 2023-04-14 18:50:47.196822925 +0200
++++ b/demos/Makefile.in 2023-04-14 18:50:54.448710445 +0200
+@@ -47,7 +47,7 @@
+
+ all:
+
+-install: mkdirs install-bitmaps install-images install-scripts
++install: install-bitmaps install-images install-scripts
+
+ install-scripts:
+ for i in $(srcdir)/scripts/*.tcl ; do \
diff --git a/dev-tcltk/blt/files/blt2.4z-64bit.patch b/dev-tcltk/blt/files/blt2.4z-64bit.patch
deleted file mode 100644
index 9f1c3c975eef..000000000000
--- a/dev-tcltk/blt/files/blt2.4z-64bit.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- blt2.4z/src/bltTree.c.64bit-fixes 2002-09-29 07:44:12.000000000 +0200
-+++ blt2.4z/src/bltTree.c 2003-07-31 12:22:53.000000000 +0200
-@@ -95,17 +95,16 @@ static Value *TreeNextValue _ANSI_ARGS_(
- */
-
- #define REBUILD_MULTIPLIER 3
-+#define START_LOGSIZE 5 /* Initial hash table size is 32. */
-+#define MAX_LIST_VALUES 20 /* Convert to hash table when node
-+ * value list gets bigger than this
-+ * many values. */
-
- #if (SIZEOF_VOID_P == 8)
- #define RANDOM_INDEX(i) HashOneWord(mask, downshift, i)
- #define BITSPERWORD 64
- #else
-
--#define START_LOGSIZE 5 /* Initial hash table size is 32. */
--#define MAX_LIST_VALUES 20 /* Convert to hash table when node
-- * value list gets bigger than this
-- * many values. */
--
- /*
- * The following macro takes a preliminary integer hash value and
- * produces an index into a hash tables bucket list. The idea is
diff --git a/dev-tcltk/blt/metadata.xml b/dev-tcltk/blt/metadata.xml
index 549667e75d56..cafc5d50a26e 100644
--- a/dev-tcltk/blt/metadata.xml
+++ b/dev-tcltk/blt/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/bwidget/Manifest b/dev-tcltk/bwidget/Manifest
index f49f6dabbda2..9f43d5226710 100644
--- a/dev-tcltk/bwidget/Manifest
+++ b/dev-tcltk/bwidget/Manifest
@@ -1,2 +1,2 @@
-DIST bwidget-1.9.12.tar.gz 254905 BLAKE2B 02b206b9d19ec9580003a8549aa14d2bce230f8dc9834fcd2ba327bee2cf1f90c324f1804e175b89055d5f5f8727253132d186e9230efdc8b29e390e3cf2bf6b SHA512 0e01725ec65041a47a32625f2687e22bc42ccd581a26b3ca7be5a969b0b901c07fd5887a47ff846cc1111767a72cfc6e31f4aa99a1c9040a6f08705d97a5970f
-DIST bwidget-1.9.8.tar.gz 252668 BLAKE2B d7318b3ac932fd0ab9a5fb180e3ca739012e2e6583ba8e3366b6a63c85bfda26ea2f2534540442f9a2047cc27179877658bf492ccfac8106858d049f46f33034 SHA512 437958871809c8ce285cbf4521ff08720d106dca708183ff94234015da2b04ccb3a7b05df13d8e3f46466106c91418607c5983fc4ed8d9c4285ae0a0b1071262
+DIST BWidget-1.9.15.zip 329390 BLAKE2B 011bc3e303082af8ec4aaf1bfa3812cec0e0c91dac41db867d5ebd5883949795d5877a53050be31823a218fdbc5113df8c848378af133ecb26dc07f5e8360b1c SHA512 cc3c46a112e902158c3f010941efcd51b42adae5b989511b325c619bffe79c3a11d74b044619e1ed9ef4b77abf18f7a2e8dfbd3fe46e1d26a1b61a02c3a3096c
+DIST bwidget-1.9.16.tar.gz 252813 BLAKE2B 2e8aff10d73e5782603a62991551d83cce6b88513e2a1b9487105ed2778a144f10e1815be7a4a9e34e2e036efb9526a221e4a880d53e30bed85bbc67c852141f SHA512 1355e8d8fa784d4bb72a82eae267b6c958cd7d401d68ded05e296929b8d39d64aeab4620c7c9acb02d31bf8da6c3da15460429f95f8d07846f68a8e86257f43d
diff --git a/dev-tcltk/bwidget/bwidget-1.9.12.ebuild b/dev-tcltk/bwidget/bwidget-1.9.15.ebuild
index 1c6bbdf5fcbe..9b82b9979ed9 100644
--- a/dev-tcltk/bwidget/bwidget-1.9.12.ebuild
+++ b/dev-tcltk/bwidget/bwidget-1.9.15.ebuild
@@ -1,24 +1,26 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit eutils multilib virtualx
+inherit virtualx
MY_PN=${PN/bw/BW}
MY_P=${MY_PN}-${PV}
DESCRIPTION="High-level widget set for Tcl/Tk"
HOMEPAGE="http://tcllib.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tcllib/${MY_PN}/${PV}/${P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/tcllib/${MY_PN}/${PV}/${MY_P}.zip"
LICENSE="tcltk"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
IUSE="doc"
+RESTRICT="!test? ( test )"
DEPEND="dev-lang/tk:0"
RDEPEND="${DEPEND}"
+BDEPEND="app-arch/unzip"
PATCHES=( "${FILESDIR}"/${PN}-1.9.8-test.patch )
@@ -31,8 +33,7 @@ src_install() {
doins *.tcl
doins -r images lang
- insinto /usr/share/doc/${PF}/
- doins -r demo
+ dodoc -r demo
dodoc ChangeLog README.txt
docinto html
diff --git a/dev-tcltk/bwidget/bwidget-1.9.16.ebuild b/dev-tcltk/bwidget/bwidget-1.9.16.ebuild
new file mode 100644
index 000000000000..f0d211583c62
--- /dev/null
+++ b/dev-tcltk/bwidget/bwidget-1.9.16.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit virtualx
+
+DESCRIPTION="High-level widget set for Tcl/Tk"
+HOMEPAGE="http://tcllib.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/tcllib/BWidget/${PV}/${P}.tar.gz"
+
+LICENSE="tcltk"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="doc"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-lang/tk:0"
+RDEPEND="${DEPEND}"
+BDEPEND="app-arch/unzip"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.9.8-test.patch )
+
+src_test() {
+ TCLLIBPATH=${S} virtx tclsh tests/entry.test
+}
+
+src_install() {
+ insinto /usr/$(get_libdir)/${P}
+ doins *.tcl
+ doins -r images lang
+
+ dodoc -r demo
+ dodoc ChangeLog README.txt
+
+ docinto html
+ use doc && dodoc -r BWman/*
+}
diff --git a/dev-tcltk/bwidget/bwidget-1.9.8.ebuild b/dev-tcltk/bwidget/bwidget-1.9.8.ebuild
deleted file mode 100644
index f2838cb8f07f..000000000000
--- a/dev-tcltk/bwidget/bwidget-1.9.8.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib virtualx
-
-MY_PN=${PN/bw/BW}
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="High-level widget set for Tcl/Tk"
-HOMEPAGE="http://tcllib.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/tcllib/${MY_PN}/${PV}/${P}.tar.gz"
-
-LICENSE="tcltk"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86"
-IUSE="doc"
-
-DEPEND="dev-lang/tk:0"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${P}-test.patch
-}
-
-src_test() {
- VIRTUALX_COMMAND=tclsh
- virtualmake tests/entry.test
-}
-
-src_install() {
- insinto /usr/$(get_libdir)/${P}
- doins *.tcl
- doins -r images lang
-
- insinto /usr/share/doc/${PF}/
- doins -r demo
- dodoc ChangeLog README.txt
-
- use doc && dohtml BWman/*
-}
diff --git a/dev-tcltk/bwidget/metadata.xml b/dev-tcltk/bwidget/metadata.xml
index f5ca0ddf0adf..f41363d4015b 100644
--- a/dev-tcltk/bwidget/metadata.xml
+++ b/dev-tcltk/bwidget/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/combobox/Manifest b/dev-tcltk/combobox/Manifest
deleted file mode 100644
index a490a786b18f..000000000000
--- a/dev-tcltk/combobox/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST combobox-2.3.tar.gz 37327 BLAKE2B 2d89eb45099d3ab2b4c40d54c9da4ce484df09c3562abb0a50ef1850a43290b7221aa7c9eacdedbeea6b08b9022b0f512ab77aaec8349d34d7fb43d771f2d7db SHA512 6c85ed671ad64d671630bba09cbcbbcecee91d0ed77a63eee60b1b1ae12caf6312ab1da9a1cbb8ac949136ac37889c20f4dbd0097e41c8eeb3b018ebbafcf36e
diff --git a/dev-tcltk/combobox/combobox-2.3-r1.ebuild b/dev-tcltk/combobox/combobox-2.3-r1.ebuild
deleted file mode 100644
index 18deabbbf549..000000000000
--- a/dev-tcltk/combobox/combobox-2.3-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib
-
-DESCRIPTION="A combobox megawidget"
-HOMEPAGE="http://www1.clearlight.com/~oakley/tcl/combobox/index.html"
-SRC_URI="http://www1.clearlight.com/~oakley/tcl/combobox/${P}.tar.gz"
-
-LICENSE="freedist"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND="dev-lang/tcl:0="
-DEPEND=""
-
-src_install() {
- insinto /usr/$(get_libdir)/${P}
- doins *tcl *tmml *n
- dodoc *txt
- dohtml *html
-}
diff --git a/dev-tcltk/combobox/metadata.xml b/dev-tcltk/combobox/metadata.xml
deleted file mode 100644
index 8425c0d53cb0..000000000000
--- a/dev-tcltk/combobox/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>sci@gentoo.org</email>
- <name>Gentoo Science Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-tcltk/expect-lite/Manifest b/dev-tcltk/expect-lite/Manifest
index 2e37ea5c17fd..6a763a871193 100644
--- a/dev-tcltk/expect-lite/Manifest
+++ b/dev-tcltk/expect-lite/Manifest
@@ -1,4 +1 @@
-DIST expect-lite_4.6.1.tar.gz 142875 BLAKE2B 9e7143d78d68338c4d6ec2858f3a24c5b5330193bfc064c27b190bf6ac7b01e53340e48006f5313cb301b6f6f9f858e818ead8fbe6117ba9ee8c6035b9f9b059 SHA512 a250f34472dad6c44149edf85d35f7ea159e0673aa5619864a71eb78003d0c1a2ec3d25505618f616d12d82d50bda8039a239b443014b43b2387059e6b6eb7d6
-DIST expect-lite_4.7.2.tar.gz 145084 BLAKE2B 053f26ceaa98cde7bfe680f3076cdcd5391cfb6483c6ec0d0c9bcdf1f51e4b53c6429cef50a10915cbb01955fbee77bb6075bde612b6299bfd95357ab88f7408 SHA512 1f635f87fb53624f687477bae41edd37474c5358de368af8065d4222181ed4a5efdb55c8fda47e1f1b4c163fa2a423e7d84a7da8415b17cd250417432ee0fc5b
-DIST expect-lite_4.8.0.tar.gz 148917 BLAKE2B 0aeba8356c41f740807b914941c58a7ed26cc826ce2e297c5275b4f9a8c227437b2120d74f60229274aa56858ce03021245ef218e8d75a64cc6508f43b3afe2b SHA512 b4956dbcdde1e5648a51be99069069be6ff2ae6fb7a67116a35bbbb8786228920e9177bd1b14d0ac3dd0a8ebdd6fa523c62bb7f23c84407ebe73abe3523e43c0
DIST expect-lite_4.9.0.tar.gz 149560 BLAKE2B 6db5c7f37d996996bcd94ef5e0b7d2d2d592cfd88f56f751c35f53826d3cea473861d332327caf4e9c6950a983b2d907955a7b68e8ea46655e07a8197fbe1f6b SHA512 1a210f5937cf31768a77c9f8d7147be1d8bd3f4e3c68c8941fef7871d22c209c9946aa1f3b2705a0332523439a7e8c9ef7ae3a46d4b5174b5e759bf15dcad4e5
diff --git a/dev-tcltk/expect-lite/expect-lite-4.6.1.ebuild b/dev-tcltk/expect-lite/expect-lite-4.6.1.ebuild
deleted file mode 100644
index 4440e9994297..000000000000
--- a/dev-tcltk/expect-lite/expect-lite-4.6.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=0
-
-DESCRIPTION="quick and easy command line automation tool built on top of expect"
-HOMEPAGE="http://expect-lite.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug examples"
-
-RDEPEND="dev-tcltk/expect
- debug? ( dev-tcltk/tclx )"
-
-S=${WORKDIR}/${PN}.proj
-
-src_install() {
- dobin ${PN} || die
- doman man/* || die
- dodoc bashrc ChangeLog README
- dohtml Docs/*
-
- if use examples ; then
- docinto examples
- dodoc examples/* || die
- fi
-}
diff --git a/dev-tcltk/expect-lite/expect-lite-4.7.2.ebuild b/dev-tcltk/expect-lite/expect-lite-4.7.2.ebuild
deleted file mode 100644
index c460f1458eef..000000000000
--- a/dev-tcltk/expect-lite/expect-lite-4.7.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=0
-
-DESCRIPTION="quick and easy command line automation tool built on top of expect"
-HOMEPAGE="http://expect-lite.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="debug examples"
-
-RDEPEND="dev-tcltk/expect
- debug? ( dev-tcltk/tclx )"
-
-S=${WORKDIR}/${PN}.proj
-
-src_install() {
- dobin ${PN} || die
- doman man/* || die
- dodoc bashrc ChangeLog README
- dohtml Docs/*
-
- if use examples ; then
- docinto examples
- dodoc examples/* || die
- fi
-}
diff --git a/dev-tcltk/expect-lite/expect-lite-4.8.0.ebuild b/dev-tcltk/expect-lite/expect-lite-4.8.0.ebuild
deleted file mode 100644
index 37fb9d98e18b..000000000000
--- a/dev-tcltk/expect-lite/expect-lite-4.8.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="4"
-
-DESCRIPTION="quick and easy command line automation tool built on top of expect"
-HOMEPAGE="http://expect-lite.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="debug examples"
-
-RDEPEND="dev-tcltk/expect
- debug? ( dev-tcltk/tclx )"
-
-S=${WORKDIR}/${PN}.proj
-
-src_install() {
- dobin ${PN}
- doman man/*
- dodoc bashrc ChangeLog README
- dohtml Docs/*
-
- if use examples ; then
- docinto examples
- dodoc examples/*
- fi
-}
diff --git a/dev-tcltk/expect-lite/expect-lite-4.9.0.ebuild b/dev-tcltk/expect-lite/expect-lite-4.9.0-r1.ebuild
index 5f96fcf7d046..62632438c61c 100644
--- a/dev-tcltk/expect-lite/expect-lite-4.9.0.ebuild
+++ b/dev-tcltk/expect-lite/expect-lite-4.9.0-r1.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="6"
+EAPI="8"
-DESCRIPTION="quick and easy command line automation tool built on top of expect"
-HOMEPAGE="http://expect-lite.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.tar.gz"
+DESCRIPTION="Quick and easy command line automation tool built on top of expect"
+HOMEPAGE="https://expect-lite.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}_${PV}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="debug examples"
RDEPEND="dev-tcltk/expect
@@ -28,6 +28,7 @@ src_install() {
dodoc -r Docs/*
dobin ${PN}
+ gunzip man/*.gz
doman man/*
if use examples ; then
diff --git a/dev-tcltk/expect-lite/metadata.xml b/dev-tcltk/expect-lite/metadata.xml
index 2026e6cc1d87..1a845d7347ee 100644
--- a/dev-tcltk/expect-lite/metadata.xml
+++ b/dev-tcltk/expect-lite/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/expect/Manifest b/dev-tcltk/expect/Manifest
index 5334acf4f518..19761bb76881 100644
--- a/dev-tcltk/expect/Manifest
+++ b/dev-tcltk/expect/Manifest
@@ -1,2 +1 @@
DIST expect5.45.4.tar.gz 632363 BLAKE2B a3a936e7644c922fdd474fa08c45926396ccce9a63e5f65f4d5e157f5160cfe4de47688734b39d13281d9548aac492810f19236e06563903d3d8081e4661048d SHA512 a8dc25e8175f67e029e15cbcfca1705165c1c4cb2dd37eaaaebffb61e3ba132d9519cd73ca5add4c3358a2b0b7a91e878279e8d0b72143ff2c287fce07e4659a
-DIST expect5.45.tar.gz 628808 BLAKE2B d7260d3b2ce1bcd72deef121e1f994f45bfa5397291692d794c9b8ad627d7ac183689ba00ba22f728853ac03b6b083fb6f283dc5c453aa991e04263c217be552 SHA512 be991c68241e607b3a689eae7e7966056dbfb577e857331d54a4911bd178c1816425217603b43918ad1b6d2e966271a0f01e79d7028a22e223562d59d10c8c51
diff --git a/dev-tcltk/expect/expect-5.45.4-r4.ebuild b/dev-tcltk/expect/expect-5.45.4-r4.ebuild
new file mode 100644
index 000000000000..ba137b0db314
--- /dev/null
+++ b/dev-tcltk/expect/expect-5.45.4-r4.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools edo flag-o-matic
+
+MY_P="${PN}${PV}"
+DESCRIPTION="tool for automating interactive applications"
+HOMEPAGE="https://core.tcl-lang.org/expect/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+IUSE="debug doc test threads"
+RESTRICT="!test? ( test )"
+
+DEPEND=">=dev-lang/tcl-8.2:=[threads?]"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-util/dejagnu )"
+
+PATCHES=( "${FILESDIR}"/${P}-examples.patch )
+
+src_prepare() {
+ default
+ sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" expect.man || die
+
+ eapply "${FILESDIR}"/${PN}-5.45-gfbsd.patch
+ eapply "${FILESDIR}"/${PN}-5.44.1.15-ldflags.patch
+ eapply "${FILESDIR}"/${PN}-5.45-headers.patch #337943
+ eapply "${FILESDIR}"/${PN}-5.45-format-security.patch
+ eapply "${FILESDIR}"/${PN}-5.45.4-configure-in.patch
+ eapply "${FILESDIR}"/${PN}-5.45.4-configure-clang16.patch || die
+
+ sed -i 's:ifdef HAVE_SYS_WAIT_H:ifndef NO_SYS_WAIT_H:' *.c || die
+
+ # fix install_name on darwin
+ [[ ${CHOST} == *-darwin* ]] && \
+ eapply "${FILESDIR}"/${P}-darwin-install_name.patch
+
+ mv configure.{in,ac} || die
+
+ eautoconf
+}
+
+src_configure() {
+ # bug #881687
+ append-flags -std=gnu89
+
+ # the 64bit flag is useless ... it only adds 64bit compiler flags
+ # (like -m64) which the target toolchain should already handle
+ econf \
+ --cache-file="${S}"/config.cache \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
+ --disable-64bit \
+ --enable-shared \
+ $(use_enable threads) \
+ $(use_enable debug symbols mem)
+}
+
+expect_make_var() {
+ touch pkgIndex.tcl-hand || die
+ printf 'all:;echo $('$1')\ninclude Makefile' | emake --no-print-directory -s -f -
+ rm -f pkgIndex.tcl-hand || die
+}
+
+src_install() {
+ default
+
+ if use doc ; then
+ docinto examples
+
+ edo dodoc \
+ example/README \
+ $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \
+ $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES))
+ fi
+}
diff --git a/dev-tcltk/expect/expect-5.45.4-r5.ebuild b/dev-tcltk/expect/expect-5.45.4-r5.ebuild
new file mode 100644
index 000000000000..04eac71f3818
--- /dev/null
+++ b/dev-tcltk/expect/expect-5.45.4-r5.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools edo flag-o-matic
+
+MY_P="${PN}${PV}"
+DESCRIPTION="tool for automating interactive applications"
+HOMEPAGE="https://core.tcl-lang.org/expect/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+IUSE="debug doc test threads"
+RESTRICT="!test? ( test )"
+
+DEPEND=">=dev-lang/tcl-8.2:=[threads?]"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-util/dejagnu )"
+
+PATCHES=( "${FILESDIR}"/${P}-examples.patch )
+
+src_prepare() {
+ default
+ sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" expect.man || die
+
+ eapply "${FILESDIR}"/${PN}-5.45-gfbsd.patch
+ eapply "${FILESDIR}"/${PN}-5.44.1.15-ldflags.patch
+ eapply "${FILESDIR}"/${PN}-5.45-headers.patch #337943
+ eapply "${FILESDIR}"/${PN}-5.45-format-security.patch
+ eapply "${FILESDIR}"/${PN}-5.45.4-configure-in.patch
+ eapply "${FILESDIR}"/${PN}-5.45.4-configure-clang16.patch
+ eapply "${FILESDIR}"/${PN}-5.45-warnings.patch
+
+ sed -i 's:ifdef HAVE_SYS_WAIT_H:ifndef NO_SYS_WAIT_H:' *.c || die
+
+ # fix install_name on darwin
+ [[ ${CHOST} == *-darwin* ]] && \
+ eapply "${FILESDIR}"/${P}-darwin-install_name.patch
+
+ mv configure.{in,ac} || die
+
+ eautoconf
+}
+
+src_configure() {
+ # bug #881687
+ append-flags -std=gnu89
+
+ # the 64bit flag is useless ... it only adds 64bit compiler flags
+ # (like -m64) which the target toolchain should already handle
+ econf \
+ --cache-file="${S}"/config.cache \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
+ --disable-64bit \
+ --enable-shared \
+ $(use_enable threads) \
+ $(use_enable debug symbols mem)
+}
+
+expect_make_var() {
+ touch pkgIndex.tcl-hand || die
+ printf 'all:;echo $('$1')\ninclude Makefile' | emake --no-print-directory -s -f -
+ rm -f pkgIndex.tcl-hand || die
+}
+
+src_install() {
+ default
+
+ if use doc ; then
+ docinto examples
+
+ edo dodoc \
+ example/README \
+ $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \
+ $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES))
+ fi
+}
diff --git a/dev-tcltk/expect/expect-5.45.4.ebuild b/dev-tcltk/expect/expect-5.45.4.ebuild
deleted file mode 100644
index b6d1a0feefe2..000000000000
--- a/dev-tcltk/expect/expect-5.45.4.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools eutils
-
-MY_P="${PN}${PV}"
-DESCRIPTION="tool for automating interactive applications"
-HOMEPAGE="http://expect.nist.gov/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~m68k-mint ~x64-solaris ~x86-solaris"
-IUSE="debug doc threads"
-
-# We need dejagnu for src_test, but dejagnu needs expect
-# to compile/run, so we cant add dejagnu to DEPEND :/
-DEPEND=">=dev-lang/tcl-8.2:0[threads?]"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=( "${FILESDIR}"/${P}-examples.patch )
-
-src_prepare() {
- default
- sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" expect.man || die
-
- epatch "${FILESDIR}"/${PN}-5.45-gfbsd.patch
- epatch "${FILESDIR}"/${PN}-5.44.1.15-ldflags.patch
- epatch "${FILESDIR}"/${PN}-5.45-headers.patch #337943
- epatch "${FILESDIR}"/${PN}-5.45-format-security.patch
- sed -i 's:ifdef HAVE_SYS_WAIT_H:ifndef NO_SYS_WAIT_H:' *.c
-
- # fix install_name on darwin
- [[ ${CHOST} == *-darwin* ]] && \
- epatch "${FILESDIR}"/${P}-darwin-install_name.patch
-
- mv configure.{in,ac} || die
-
- eautoconf
-}
-
-src_configure() {
- # the 64bit flag is useless ... it only adds 64bit compiler flags
- # (like -m64) which the target toolchain should already handle
- econf \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
- --disable-64bit \
- --enable-shared \
- $(use_enable threads) \
- $(use_enable debug symbols mem)
-}
-
-src_test() {
- # we need dejagnu to do tests ... but dejagnu needs
- # expect ... so don't do tests unless we have dejagnu
- type -p runtest || return 0
- emake test
-}
-
-expect_make_var() {
- touch pkgIndex.tcl-hand
- printf 'all:;echo $('$1')\ninclude Makefile' | emake --no-print-directory -s -f -
- rm -f pkgIndex.tcl-hand || die
-}
-
-src_install() {
- default
-
- if use doc ; then
- docinto examples
- echo dodoc \
- example/README \
- $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \
- $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES))
- dodoc \
- example/README \
- $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \
- $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES))
- fi
-}
diff --git a/dev-tcltk/expect/expect-5.45.ebuild b/dev-tcltk/expect/expect-5.45.ebuild
deleted file mode 100644
index bfcd37e9d3e4..000000000000
--- a/dev-tcltk/expect/expect-5.45.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils
-
-MY_P="${PN}${PV}"
-DESCRIPTION="tool for automating interactive applications"
-HOMEPAGE="http://expect.nist.gov/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~m68k-mint ~x64-solaris ~x86-solaris"
-IUSE="debug doc threads"
-
-# We need dejagnu for src_test, but dejagnu needs expect
-# to compile/run, so we cant add dejagnu to DEPEND :/
-DEPEND=">=dev-lang/tcl-8.2:0[threads?]"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" expect.man || die
- # stops any example scripts being installed by default
- sed -i \
- -e 's/^SCRIPT_LIST[[:space:]]*=/_&/' \
- -e 's/^SCRIPTS[[:space:]]*=/_&/' \
- -e 's/^SCRIPTS_MANPAGES[[:space:]]*=/_&/' \
- Makefile.in || die
-
- epatch "${FILESDIR}"/${PN}-5.45-gfbsd.patch
- epatch "${FILESDIR}"/${PN}-5.44.1.15-ldflags.patch
- epatch "${FILESDIR}"/${PN}-5.45-headers.patch #337943
- epatch "${FILESDIR}"/${PN}-5.45-format-security.patch
- sed -i 's:ifdef HAVE_SYS_WAIT_H:ifndef NO_SYS_WAIT_H:' *.c
-
- # fix install_name on darwin
- [[ ${CHOST} == *-darwin* ]] && \
- epatch "${FILESDIR}"/${P}-darwin-install_name.patch
-
- mv configure.{in,ac} || die
-
- eautoconf
-}
-
-src_configure() {
- # the 64bit flag is useless ... it only adds 64bit compiler flags
- # (like -m64) which the target toolchain should already handle
- econf \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
- --disable-64bit \
- --enable-shared \
- $(use_enable threads) \
- $(use_enable debug symbols mem)
-}
-
-src_test() {
- # we need dejagnu to do tests ... but dejagnu needs
- # expect ... so don't do tests unless we have dejagnu
- type -p runtest || return 0
- emake test
-}
-
-expect_make_var() {
- touch pkgIndex.tcl-hand
- printf 'all:;echo $('$1')\ninclude Makefile' | emake --no-print-directory -s -f -
- rm -f pkgIndex.tcl-hand || die
-}
-
-src_install() {
- default
-
- if use doc ; then
- docinto examples
- dodoc \
- example/README \
- $(printf 'example/%s ' $(expect_make_var _SCRIPTS)) \
- $(printf 'example/%s.man ' $(expect_make_var _SCRIPTS_MANPAGES))
- fi
-}
diff --git a/dev-tcltk/expect/files/expect-5.45-warnings.patch b/dev-tcltk/expect/files/expect-5.45-warnings.patch
new file mode 100644
index 000000000000..31c3809be374
--- /dev/null
+++ b/dev-tcltk/expect/files/expect-5.45-warnings.patch
@@ -0,0 +1,684 @@
+https://bugs.gentoo.org/918972
+https://core.tcl-lang.org/expect/info/35d0b2bdfecd634d
+--- a/Dbg.c
++++ b/Dbg.c
+@@ -173,12 +173,12 @@ Tcl_Obj *objPtr;
+ }
+ }
+
+-/* return 1 to break, 0 to continue */
++/* return 1 to break, 0 to continue
++ * cmd: command about to be executed
++ * bp: breakpoint to test
++ */
+ static int
+-breakpoint_test(interp,cmd,bp)
+-Tcl_Interp *interp;
+-char *cmd; /* command about to be executed */
+-struct breakpoint *bp; /* breakpoint to test */
++breakpoint_test(Tcl_Interp *interp,const char *cmd,struct breakpoint *bp)
+ {
+ if (bp->re) {
+ int found = 0;
+@@ -239,7 +239,7 @@ TclGetFrame2(interp, origFramePtr, string, framePtrPtr, dir)
+ {
+ Interp *iPtr = (Interp *) interp;
+ int level, result;
+- CallFrame *framePtr; /* frame currently being searched */
++ CallFrame *framePtr = NULL; /* frame currently being searched */
+
+ CallFrame *curFramePtr = iPtr->varFramePtr;
+
+@@ -302,7 +302,6 @@ TclGetFrame2(interp, origFramePtr, string, framePtrPtr, dir)
+ return result;
+ }
+
+-
+ static char *printify(s)
+ char *s;
+ {
+@@ -658,6 +657,8 @@ debugger_trap(clientData,interp,level,command,commandInfo,objc,objv)
+ if (goalFramePtr != iPtr->varFramePtr) goto finish;
+ goto start_interact;
+ /* DANGER: unhandled cases! none, up, down, where */
++ default:
++ break; /* Silence compiler warning */
+ }
+
+ start_interact:
+@@ -716,6 +717,8 @@ end_interact:
+ case where:
+ PrintStack(interp,iPtr->varFramePtr,viewFramePtr,objc,objv,level_text);
+ break;
++ default:
++ break; /* Silence compiler warning */
+ }
+
+ /* restore view and restart interactor */
+--- a/exp_chan.c
++++ b/exp_chan.c
+@@ -58,17 +58,14 @@ static int ExpGetHandleProc _ANSI_ARGS_((ClientData instanceData,
+ */
+
+ Tcl_ChannelType expChannelType = {
+- "exp", /* Type name. */
+- ExpBlockModeProc, /* Set blocking/nonblocking mode.*/
+- ExpCloseProc, /* Close proc. */
+- ExpInputProc, /* Input proc. */
+- ExpOutputProc, /* Output proc. */
+- NULL, /* Seek proc. */
+- NULL, /* Set option proc. */
+- NULL, /* Get option proc. */
+- ExpWatchProc, /* Initialize notifier. */
+- ExpGetHandleProc, /* Get OS handles out of channel. */
+- NULL, /* Close2 proc */
++ .typeName = "exp", /* Type name. */
++ .version = TCL_CHANNEL_VERSION_2,
++ .blockModeProc = ExpBlockModeProc, /* Set blocking/nonblocking mode.*/
++ .closeProc = ExpCloseProc, /* Close proc. */
++ .inputProc = ExpInputProc, /* Input proc. */
++ .outputProc = ExpOutputProc, /* Output proc. */
++ .watchProc = ExpWatchProc, /* Initialize notifier. */
++ .getHandleProc = ExpGetHandleProc /* Get OS handles out of channel. */
+ };
+
+ typedef struct ThreadSpecificData {
+@@ -437,10 +434,10 @@ ExpGetHandleProc(instanceData, direction, handlePtr)
+ ExpState *esPtr = (ExpState *) instanceData;
+
+ if (direction & TCL_WRITABLE) {
+- *handlePtr = (ClientData) esPtr->fdin;
++ *handlePtr = (ClientData)(intptr_t)esPtr->fdin;
+ }
+ if (direction & TCL_READABLE) {
+- *handlePtr = (ClientData) esPtr->fdin;
++ *handlePtr = (ClientData)(intptr_t)esPtr->fdin;
+ } else {
+ return TCL_ERROR;
+ }
+--- a/exp_clib.c
++++ b/exp_clib.c
+@@ -56,6 +56,10 @@ would appreciate credit if this program or parts of it are used.
+ # endif
+ #endif
+
++#ifdef HAVE_UNISTD_H
++#include <unistd.h>
++#endif
++
+ #include <signal.h>
+ /*#include <memory.h> - deprecated - ANSI C moves them into string.h */
+ #include "string.h"
+@@ -122,6 +126,7 @@ extern unsigned long strtoul _ANSI_ARGS_((CONST char *string,
+
+ #include <tcl.h>
+ #include "expect.h"
++#include "exp_command.h"
+ #define TclRegError exp_TclRegError
+
+ /*
+@@ -1814,6 +1819,13 @@ int fd;
+
+ }
+
++/* ultrix (at least 4.1-2) fails to obtain controlling tty if setsid */
++/* is called. setpgrp works though. */
++#if defined(POSIX) && !defined(ultrix) || defined(__convex__)
++#define DO_SETSID
++#endif
++
++#if !defined(DO_SETSID) && (!defined(SYSV3) || defined(CRAY)) /* { */
+ static
+ void
+ exp_setpgrp()
+@@ -1830,6 +1842,7 @@ exp_setpgrp()
+ (void) setpgrp(0,0);
+ #endif
+ }
++#endif /* } */
+
+ /* returns fd of master side of pty */
+ int
+@@ -1840,7 +1853,9 @@ char *argv[]; /* some compiler complains about **argv? */
+ int cc;
+ int errorfd; /* place to stash fileno(stderr) in child */
+ /* while we're setting up new stderr */
++#if defined(TIOCNOTTY) && !defined(SYSV3) && !defined(DO_SETSID)
+ int ttyfd;
++#endif
+ int sync_fds[2];
+ int sync2_fds[2];
+ int status_pipe[2];
+@@ -2015,15 +2030,6 @@ when trapping, see below in child half of fork */
+ (void) close(exp_pty[0]);
+ #endif
+
+-/* ultrix (at least 4.1-2) fails to obtain controlling tty if setsid */
+-/* is called. setpgrp works though. */
+-#if defined(POSIX) && !defined(ultrix)
+-#define DO_SETSID
+-#endif
+-#ifdef __convex__
+-#define DO_SETSID
+-#endif
+-
+ #ifdef DO_SETSID
+ setsid();
+ #else
+@@ -2451,7 +2457,7 @@ struct exp_case *ecases;
+ int return_val;
+ int sys_error = 0;
+ #define return_normally(x) {return_val = x; goto cleanup;}
+-#define return_errno(x) {sys_error = x; goto cleanup;}
++#define return_errno(x) {sys_error = x; return_val = -1; goto cleanup;}
+
+ f = fdfp2f(fd,fp);
+ if (!f) return_errno(ENOMEM);
+@@ -2860,7 +2866,9 @@ char *program;
+ int
+ exp_disconnect()
+ {
++#if defined(TIOCNOTTY) && !defined(SYSV3) && !defined(POSIX)
+ int ttyfd;
++#endif
+
+ #ifndef EALREADY
+ #define EALREADY 37
+--- a/exp_command.c
++++ b/exp_command.c
+@@ -532,6 +532,13 @@ set_pgrp(int fd)
+ }
+ #endif
+
++/* ultrix (at least 4.1-2) fails to obtain controlling tty if setsid */
++/* is called. setpgrp works though. */
++#if defined(POSIX) && !defined(ultrix) || defined(__convex__)
++#define DO_SETSID
++#endif
++
++#if !defined(DO_SETSID) && (!defined(SYSV3) || defined(CRAY)) /* { */
+ static
+ void
+ expSetpgrp()
+@@ -548,7 +555,7 @@ expSetpgrp()
+ (void) setpgrp(0,0);
+ #endif
+ }
+-
++#endif /* } */
+
+ /*ARGSUSED*/
+ static void
+@@ -581,9 +588,7 @@ Exp_SpawnObjCmd(
+ ExpState *esPtr = 0;
+ int slave;
+ int pid;
+-#ifdef TIOCNOTTY
+- /* tell Saber to ignore non-use of ttyfd */
+- /*SUPPRESS 591*/
++#if defined(TIOCNOTTY) && !defined(SYSV3) && !defined(DO_SETSID)
+ int ttyfd;
+ #endif /* TIOCNOTTY */
+ int errorfd; /* place to stash fileno(stderr) in child */
+@@ -903,13 +908,17 @@ Exp_SpawnObjCmd(
+ if (TCL_ERROR == Tcl_GetChannelHandle(channel, TCL_READABLE, &rfdc)) {
+ return TCL_ERROR;
+ }
+- rfd = (int)(long) rfdc;
++ rfd = (int)(intptr_t) rfdc;
++ } else {
++ rfd = -1;
+ }
+ if (mode & TCL_WRITABLE) {
+ if (TCL_ERROR == Tcl_GetChannelHandle(channel, TCL_WRITABLE, &wfdc)) {
+ return TCL_ERROR;
+ }
+- wfd = (int)(long) wfdc;
++ wfd = (int)(intptr_t) wfdc;
++ } else {
++ wfd = -1;
+ }
+ master = ((mode & TCL_READABLE)?rfd:wfd);
+
+@@ -1126,15 +1135,6 @@ Exp_SpawnObjCmd(
+ (void) close(master);
+ #endif
+
+-/* ultrix (at least 4.1-2) fails to obtain controlling tty if setsid */
+-/* is called. setpgrp works though. */
+-#if defined(POSIX) && !defined(ultrix)
+-#define DO_SETSID
+-#endif
+-#ifdef __convex__
+-#define DO_SETSID
+-#endif
+-
+ #ifdef DO_SETSID
+ setsid();
+ #else
+@@ -1976,7 +1976,7 @@ Exp_SendObjCmd(
+ #define SEND_STYLE_BREAK 0x20
+ int send_style = SEND_STYLE_PLAIN;
+ int want_cooked = TRUE;
+- char *string; /* string to send */
++ char *string = NULL; /* string to send */
+ int len = -1; /* length of string to send */
+ int zeros; /* count of how many ascii zeros to send */
+
+@@ -3114,9 +3114,7 @@ Exp_DisconnectObjCmd(
+ {
+ ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
+
+-#ifdef TIOCNOTTY
+- /* tell CenterLine to ignore non-use of ttyfd */
+- /*SUPPRESS 591*/
++#if defined(TIOCNOTTY) && !defined(SYSV3) && !defined(DO_SETSID)
+ int ttyfd;
+ #endif /* TIOCNOTTY */
+
+--- a/exp_event.c
++++ b/exp_event.c
+@@ -24,6 +24,7 @@ NIST would appreciate credit if this program or parts of it are used.
+ #include "exp_prog.h"
+ #include "exp_command.h" /* for ExpState defs */
+ #include "exp_event.h"
++#include "exp_log.h"
+
+ typedef struct ThreadSpecificData {
+ int rr; /* round robin ptr */
+@@ -120,6 +121,9 @@ exp_unblock_background_channelhandler(esPtr)
+ case disarm_req_while_blocked:
+ exp_disarm_background_channelhandler_force(esPtr);
+ break;
++ default:
++ expDiagLog("Unexpected value %d of bg-handler in %s",
++ esPtr->bg_status, __func__);
+ }
+ }
+
+--- a/exp_inter.c
++++ b/exp_inter.c
+@@ -404,8 +404,8 @@ intEcho(
+ int matchBytes)
+ {
+ int seenBytes; /* either printed or echoed */
+- int echoBytes;
+- int offsetBytes;
++ int echoBytes = 0;
++ int offsetBytes = 0;
+
+ /* write is unlikely to fail, since we just read from same descriptor */
+ seenBytes = esPtr->printed + esPtr->echoed;
+@@ -706,9 +706,6 @@ inter_updateproc(
+
+ #define finish(x) { status = x; goto done; }
+
+-static char return_cmd[] = "return";
+-static char interpreter_cmd[] = "interpreter";
+-
+ /*ARGSUSED*/
+ int
+ Exp_InteractObjCmd(
+@@ -1344,15 +1341,15 @@ Exp_InteractObjCmd(
+ int rc; /* return code from ready. This is further refined by matcher. */
+ int cc; /* # of chars from read() */
+ struct action *action = 0;
+- time_t previous_time;
++ time_t previous_time = 0;
+ time_t current_time;
+- int matchLen; /* # of chars matched */
++ int matchLen = 0; /* # of chars matched */
+ int skip; /* # of chars not involved in match */
+ int print; /* # of chars to print */
+ int oldprinted; /* old version of u->printed */
+ int change; /* if action requires cooked mode */
+ int attempt_match = TRUE;
+- struct input *soonest_input;
++ struct input *soonest_input = NULL;
+ int timeout; /* current as opposed to default_timeout */
+ Tcl_Time temp_time;
+
+--- a/exp_log.c
++++ b/exp_log.c
+@@ -90,6 +90,8 @@ expWriteBytesAndLogIfTtyU(esPtr,buf,lenChars)
+
+ if (esPtr->valid)
+ wc = expWriteCharsUni(esPtr,buf,lenChars);
++ else
++ wc = -1;
+
+ if (tsdPtr->logChannel && ((esPtr->fdout == 1) || expDevttyIs(esPtr))) {
+ Tcl_DString ds;
+--- a/exp_pty.c
++++ b/exp_pty.c
+@@ -135,7 +135,9 @@ int timeout;
+ }
+
+ static RETSIGTYPE (*oldAlarmHandler)();
++#ifndef O_NOCTTY
+ static RETSIGTYPE (*oldHupHandler)();
++#endif
+ static time_t current_time; /* time when testing began */
+
+ /* if TRUE, begin testing, else end testing */
+--- a/exp_trap.c
++++ b/exp_trap.c
+@@ -298,11 +298,10 @@ char *s;
+
+ /*ARGSUSED*/
+ int
+-Exp_TrapObjCmd(clientData, interp, objc, objv)
+-ClientData clientData;
+-Tcl_Interp *interp;
+-int objc;
+-Tcl_Obj *CONST objv[];
++Exp_TrapObjCmd(ClientData clientData,
++ Tcl_Interp *interp,
++ int objc,
++ Tcl_Obj *CONST objv[])
+ {
+ char *action = 0;
+ int n; /* number of signals in list */
+@@ -320,7 +319,9 @@ Tcl_Obj *CONST objv[];
+
+ objc--; objv++;
+
+- while (objc) {
++ if (objc <= 0) goto usage_error;
++
++ do {
+ arg = Tcl_GetString(*objv);
+
+ if (streq(arg,"-code")) {
+@@ -339,7 +340,7 @@ Tcl_Obj *CONST objv[];
+ objc--; objv++;
+ show_max = TRUE;
+ } else break;
+- }
++ } while(objc);
+
+ if (show_name || show_number || show_max) {
+ if (objc > 0) goto usage_error;
+--- a/exp_tty.c
++++ b/exp_tty.c
+@@ -585,18 +585,20 @@ Exp_SystemCmd(
+ int total_len = 0, arg_len;
+
+ int stty_args_recognized = TRUE;
+- int cmd_is_stty = FALSE;
++ int cmd_is_stty;
+ int cooked = FALSE;
+- int was_raw, was_echo;
++ const char *was_raw = "-raw", *was_echo = "-echo";
+
+ if (argc == 1) return TCL_OK;
+
+- if (streq(argv[1],"stty")) {
++ cmd_is_stty = streq(argv[1],"stty");
++ if (cmd_is_stty) {
+ expDiagLogU("system stty is deprecated, use stty\r\n");
+
+- cmd_is_stty = TRUE;
+- was_raw = exp_israw();
+- was_echo = exp_isecho();
++ if (exp_israw())
++ was_raw++;
++ if (exp_isecho())
++ was_echo++;
+ }
+
+ if (argc > 2 && cmd_is_stty) {
+@@ -635,11 +637,7 @@ Exp_SystemCmd(
+ return(TCL_ERROR);
+ }
+ if (cmd_is_stty) {
+- char buf [11];
+- sprintf(buf,"%sraw %secho",
+- (was_raw?"":"-"),
+- (was_echo?"":"-"));
+- Tcl_SetResult (interp, buf, TCL_VOLATILE);
++ Tcl_AppendResult (interp, was_raw, " ", was_echo, NULL);
+ }
+ return(TCL_OK);
+ }
+@@ -699,11 +697,7 @@ Exp_SystemCmd(
+ }
+
+ if (cmd_is_stty) {
+- char buf [11];
+- sprintf(buf,"%sraw %secho",
+- (was_raw?"":"-"),
+- (was_echo?"":"-"));
+- Tcl_SetResult (interp, buf, TCL_VOLATILE);
++ Tcl_AppendResult (interp, was_raw, " ", was_echo, NULL);
+ }
+
+ /* following macros stolen from Tcl's tclUnix.h file */
+--- a/exp_win.c
++++ b/exp_win.c
+@@ -78,9 +78,9 @@ typedef struct {
+ static exp_winsize winsize = {0, 0};
+ static exp_winsize win2size = {0, 0};
+
+-int exp_window_size_set(fd)
+-int fd;
++int exp_window_size_set(int fd)
+ {
++ return
+ #ifdef TIOCSWINSZ
+ ioctl(fd,TIOCSWINSZ,&winsize);
+ #endif
+@@ -89,9 +89,9 @@ int fd;
+ #endif
+ }
+
+-int exp_window_size_get(fd)
+-int fd;
++int exp_window_size_get(int fd)
+ {
++ return
+ #ifdef TIOCGWINSZ
+ ioctl(fd,TIOCGWINSZ,&winsize);
+ #endif
+@@ -105,8 +105,7 @@ int fd;
+ }
+
+ void
+-exp_win_rows_set(rows)
+-char *rows;
++exp_win_rows_set(const char *rows)
+ {
+ winsize.rows = atoi(rows);
+ exp_window_size_set(exp_dev_tty);
+@@ -122,8 +121,7 @@ exp_win_rows_get()
+ }
+
+ void
+-exp_win_columns_set(columns)
+-char *columns;
++exp_win_columns_set(const char *columns)
+ {
+ winsize.columns = atoi(columns);
+ exp_window_size_set(exp_dev_tty);
+@@ -142,8 +140,8 @@ exp_win_columns_get()
+ * separate copy of everything above - used for handling user stty requests
+ */
+
+-int exp_win2_size_set(fd)
+-int fd;
++static void
++exp_win2_size_set(int fd)
+ {
+ #ifdef TIOCSWINSZ
+ ioctl(fd,TIOCSWINSZ,&win2size);
+@@ -153,8 +151,8 @@ int fd;
+ #endif
+ }
+
+-int exp_win2_size_get(fd)
+-int fd;
++static void
++exp_win2_size_get(int fd)
+ {
+ #ifdef TIOCGWINSZ
+ ioctl(fd,TIOCGWINSZ,&win2size);
+@@ -165,9 +163,7 @@ int fd;
+ }
+
+ void
+-exp_win2_rows_set(fd,rows)
+-int fd;
+-char *rows;
++exp_win2_rows_set(int fd,const char *rows)
+ {
+ exp_win2_size_get(fd);
+ win2size.rows = atoi(rows);
+@@ -175,8 +171,7 @@ char *rows;
+ }
+
+ char*
+-exp_win2_rows_get(fd)
+-int fd;
++exp_win2_rows_get(int fd)
+ {
+ static char rows [20];
+ exp_win2_size_get(fd);
+@@ -189,9 +184,7 @@ int fd;
+ }
+
+ void
+-exp_win2_columns_set(fd,columns)
+-int fd;
+-char *columns;
++exp_win2_columns_set(int fd,const char *columns)
+ {
+ exp_win2_size_get(fd);
+ win2size.columns = atoi(columns);
+@@ -199,8 +192,7 @@ char *columns;
+ }
+
+ char*
+-exp_win2_columns_get(fd)
+-int fd;
++exp_win2_columns_get(int fd)
+ {
+ static char columns [20];
+ exp_win2_size_get(fd);
+--- a/exp_win.h
++++ b/exp_win.h
+@@ -11,12 +11,12 @@ would appreciate credit if you use this file or parts of it.
+ int exp_window_size_set();
+ int exp_window_size_get();
+
+-void exp_win_rows_set _ANSI_ARGS_ ((char* rows));
++void exp_win_rows_set _ANSI_ARGS_ ((const char* rows));
+ char* exp_win_rows_get _ANSI_ARGS_ ((void));
+-void exp_win_columns_set _ANSI_ARGS_ ((char* columns));
++void exp_win_columns_set _ANSI_ARGS_ ((const char* columns));
+ char* exp_win_columns_get _ANSI_ARGS_ ((void));
+
+-void exp_win2_rows_set _ANSI_ARGS_ ((int fd, char* rows));
++void exp_win2_rows_set _ANSI_ARGS_ ((int fd, const char* rows));
+ char* exp_win2_rows_get _ANSI_ARGS_ ((int fd));
+-void exp_win2_columns_set _ANSI_ARGS_ ((int fd, char* columns));
++void exp_win2_columns_set _ANSI_ARGS_ ((int fd, const char* columns));
+ char* exp_win2_columns_get _ANSI_ARGS_ ((int fd));
+--- a/expect.c
++++ b/expect.c
+@@ -2537,7 +2537,7 @@ Exp_ExpectObjCmd(
+ struct exp_state_list *state_list; /* list of ExpStates to watch */
+ struct exp_state_list *slPtr; /* temp for interating over state_list */
+ ExpState **esPtrs;
+- int mcount; /* number of esPtrs to watch */
++ int mcount = 0; /* number of esPtrs to watch */
+
+ struct eval_out eo; /* final case of interest */
+
+@@ -2546,7 +2546,7 @@ Exp_ExpectObjCmd(
+ time_t start_time_total; /* time at beginning of this procedure */
+ time_t start_time = 0; /* time when restart label hit */
+ time_t current_time = 0; /* current time (when we last looked)*/
+- time_t end_time; /* future time at which to give up */
++ time_t end_time = 0; /* future time at which to give up */
+
+ ExpState *last_esPtr; /* for differentiating when multiple f's */
+ /* to print out better debugging messages */
+@@ -2554,7 +2554,7 @@ Exp_ExpectObjCmd(
+ int first_time = 1; /* if not "restarted" */
+
+ int key; /* identify this expect command instance */
+- int configure_count; /* monitor exp_configure_count */
++ int configure_count = 0; /* monitor exp_configure_count */
+
+ int timeout; /* seconds */
+ int remtime; /* remaining time in timeout */
+@@ -2947,12 +2947,14 @@ process_di (
+ } else {
+ esPtr = expStateFromChannelName(interp,chan,0,0,0,(char*)cmd);
+ }
+- if (!esPtr) return(TCL_ERROR);
++ if (!esPtr)
++ return(TCL_ERROR);
++
++ *esOut = esPtr;
+ }
+
+ *at = i;
+ *Default = def;
+- *esOut = esPtr;
+ return TCL_OK;
+ }
+
+--- a/pty_termios.c
++++ b/pty_termios.c
+@@ -71,6 +71,14 @@ with openpty which supports 4000 while ptmx supports 60. */
+ #endif
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#if defined(HAVE_OPENPTY)
++#include <termios.h>
++#if defined(HAVE_LIBUTIL_H)
++#include <libutil.h>
++#else
++#include <pty.h>
++#endif
++#endif
+
+ #ifdef NO_STDLIB_H
+ #include "../compat/stdlib.h"
+@@ -381,11 +389,14 @@ exp_init_pty()
+ int
+ exp_getptymaster()
+ {
++#if !defined(HAVE_CONVEX_GETPTY) && !defined(HAVE_PTYM) && !defined(HAVE_SCO_CLIST_PTYS) && defined(TEST_PTY)
+ char *hex, *bank;
+- struct stat stat_buf;
++#endif
+ int master = -1;
+ int slave = -1;
++#ifdef HAVE_SCO_CLIST_PTYS
+ int num;
++#endif
+
+ exp_pty_error = 0;
+
+@@ -438,6 +449,7 @@ exp_getptymaster()
+ master = open("/dev/ptc", O_RDWR);
+ if (master >= 0) {
+ int ptynum;
++ struct stat stat_buf;
+
+ if (fstat(master, &stat_buf) < 0) {
+ close(master);
+@@ -644,8 +656,10 @@ exp_getptyslave(
+ int ttyinit,
+ CONST char *stty_args)
+ {
+- int slave, slave2;
++ int slave;
++#if defined(HAVE_PTMX_BSD)
+ char buf[10240];
++#endif
+
+ if (0 > (slave = open(slave_name, O_RDWR))) {
+ static char buf[500];
diff --git a/dev-tcltk/expect/files/expect-5.45.4-configure-clang16.patch b/dev-tcltk/expect/files/expect-5.45.4-configure-clang16.patch
new file mode 100644
index 000000000000..5d40e5ddf684
--- /dev/null
+++ b/dev-tcltk/expect/files/expect-5.45.4-configure-clang16.patch
@@ -0,0 +1,223 @@
+From 4c3a5051aa9706eea42dab31f9e121d975c08521 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Thu, 17 Nov 2022 20:20:45 +0000
+Subject: [PATCH] Fix configure with clang 16
+
+Bug: https://bugs.gentoo.org/881687
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.in
++++ b/configure.in
+@@ -454,7 +454,7 @@ AC_CHECK_FUNC(siglongjmp, AC_DEFINE(HAVE_SIGLONGJMP))
+ # because Unixware 2.0 handles it specially and refuses to compile
+ # autoconf's automatic test that is a call with no arguments
+ AC_MSG_CHECKING([for memcpy])
+-AC_TRY_LINK(,[
++AC_TRY_LINK([#include <string.h>],[
+ char *s1, *s2;
+ memcpy(s1,s2,0);
+ ],
+@@ -471,7 +471,7 @@ memcpy(s1,s2,0);
+ AC_MSG_CHECKING([if WNOHANG requires _POSIX_SOURCE])
+ AC_TRY_RUN([
+ #include <sys/wait.h>
+-main() {
++int main(void) {
+ #ifndef WNOHANG
+ return 0;
+ #else
+@@ -491,7 +491,7 @@ rm -rf wnohang
+ AC_TRY_RUN([
+ #include <stdio.h>
+ #include <sys/wait.h>
+-main() {
++int main(void) {
+ #ifdef WNOHANG
+ FILE *fp = fopen("wnohang","w");
+ fprintf(fp,"%d",WNOHANG);
+@@ -540,24 +540,23 @@ dnl AC_HEADER_EGREP([(void|sighandler_t).*signal], signal.h, retsigtype=void,AC_
+ AC_MSG_CHECKING([if signals need to be re-armed])
+ AC_TRY_RUN([
+ #include <signal.h>
+-#define RETSIGTYPE $retsigtype
+-
++#include <stdlib.h>
++#include <sys/wait.h>
++#include <unistd.h>
+ int signal_rearms = 0;
+
+ RETSIGTYPE
+-child_sigint_handler(n)
+-int n;
++child_sigint_handler(int n)
+ {
+ }
+
+ RETSIGTYPE
+-parent_sigint_handler(n)
+-int n;
++parent_sigint_handler(int n)
+ {
+ signal_rearms++;
+ }
+
+-main()
++int main(void)
+ {
+ signal(SIGINT,parent_sigint_handler);
+
+@@ -719,7 +718,8 @@ fi
+ AC_MSG_CHECKING([for struct sgttyb])
+ AC_TRY_RUN([
+ #include <sgtty.h>
+-main()
++#include <stdlib.h>
++int main(void)
+ {
+ struct sgttyb tmp;
+ exit(0);
+@@ -745,7 +745,8 @@ if test $mach -eq 0 ; then
+ # pty_termios.c is set up to handle pty_termio.
+ AC_MSG_CHECKING([for struct termio])
+ AC_TRY_RUN([#include <termio.h>
+- main()
++ #include <stdlib.h>
++ int main(void)
+ {
+ struct termio tmp;
+ exit(0);
+@@ -769,7 +770,8 @@ if test $mach -eq 0 ; then
+ # include <inttypes.h>
+ # endif
+ # include <termios.h>
+- main()
++# include <stdlib.h>
++ int main(void)
+ {
+ struct termios tmp;
+ exit(0);
+@@ -793,7 +795,7 @@ AC_TRY_RUN([
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
++int main(void) {
+ #if defined(TCGETS) || defined(TCGETA)
+ return 0;
+ #else
+@@ -815,7 +817,7 @@ AC_TRY_RUN([
+ #include <inttypes.h>
+ #endif
+ #include <termios.h>
+-main() {
++int main(void) {
+ #ifdef TIOCGWINSZ
+ return 0;
+ #else
+@@ -834,7 +836,7 @@ main() {
+ AC_MSG_CHECKING([for Cray-style ptys])
+ SETUID=":"
+ AC_TRY_RUN([
+-main(){
++int main(void) {
+ #ifdef CRAY
+ return 0;
+ #else
+@@ -887,9 +889,10 @@ AC_FUNC_SETPGRP
+ #
+ AC_MSG_CHECKING([for SV-style timezone])
+ AC_TRY_RUN([
++#include <stdlib.h>
+ extern char *tzname[2];
+ extern int daylight;
+-main()
++int main(void)
+ {
+ int *x = &daylight;
+ char **y = tzname;
+--- a/tclconfig/tcl.m4
++++ b/tclconfig/tcl.m4
+@@ -2029,7 +2029,7 @@ AC_DEFUN([TEA_SERIAL_PORT], [
+ AC_TRY_RUN([
+ #include <termios.h>
+
+-int main() {
++int main(void) {
+ struct termios t;
+ if (tcgetattr(0, &t) == 0) {
+ cfsetospeed(&t, 0);
+@@ -2042,7 +2042,7 @@ int main() {
+ AC_TRY_RUN([
+ #include <termio.h>
+
+-int main() {
++int main(void) {
+ struct termio t;
+ if (ioctl(0, TCGETA, &t) == 0) {
+ t.c_cflag |= CBAUD | PARENB | PARODD | CSIZE | CSTOPB;
+@@ -2055,7 +2055,7 @@ int main() {
+ AC_TRY_RUN([
+ #include <sgtty.h>
+
+-int main() {
++int main(void) {
+ struct sgttyb t;
+ if (ioctl(0, TIOCGETP, &t) == 0) {
+ t.sg_ospeed = 0;
+@@ -2070,7 +2070,7 @@ int main() {
+ #include <termios.h>
+ #include <errno.h>
+
+-int main() {
++int main(void) {
+ struct termios t;
+ if (tcgetattr(0, &t) == 0
+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) {
+@@ -2086,7 +2086,7 @@ int main() {
+ #include <termio.h>
+ #include <errno.h>
+
+-int main() {
++int main(void) {
+ struct termio t;
+ if (ioctl(0, TCGETA, &t) == 0
+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) {
+@@ -2101,7 +2101,7 @@ int main() {
+ #include <sgtty.h>
+ #include <errno.h>
+
+-int main() {
++int main(void) {
+ struct sgttyb t;
+ if (ioctl(0, TIOCGETP, &t) == 0
+ || errno == ENOTTY || errno == ENXIO || errno == EINVAL) {
+@@ -2392,7 +2392,9 @@ AC_DEFUN([TEA_TIME_HANDLER], [
+ # (like convex) have timezone functions, etc.
+ #
+ AC_CACHE_CHECK([long timezone variable], tcl_cv_timezone_long, [
+- AC_TRY_COMPILE([#include <time.h>],
++ AC_TRY_COMPILE([#include <time.h>
++ #include <stdlib.h>
++ ],
+ [extern long timezone;
+ timezone += 1;
+ exit (0);],
+@@ -2404,7 +2406,9 @@ AC_DEFUN([TEA_TIME_HANDLER], [
+ # On some systems (eg IRIX 6.2), timezone is a time_t and not a long.
+ #
+ AC_CACHE_CHECK([time_t timezone variable], tcl_cv_timezone_time, [
+- AC_TRY_COMPILE([#include <time.h>],
++ AC_TRY_COMPILE([#include <time.h>
++ #include <stdlib.h>
++ ],
+ [extern time_t timezone;
+ timezone += 1;
+ exit (0);],
+@@ -2441,7 +2445,7 @@ AC_DEFUN([TEA_BUGGY_STRTOD], [
+ AC_CACHE_CHECK([for Solaris2.4/Tru64 strtod bugs], tcl_cv_strtod_buggy,[
+ AC_TRY_RUN([
+ extern double strtod();
+- int main() {
++ int main(void) {
+ char *infString="Inf", *nanString="NaN", *spaceString=" ";
+ char *term;
+ double value;
diff --git a/dev-tcltk/expect/files/expect-5.45.4-configure-in.patch b/dev-tcltk/expect/files/expect-5.45.4-configure-in.patch
new file mode 100644
index 000000000000..8c05205bf5ae
--- /dev/null
+++ b/dev-tcltk/expect/files/expect-5.45.4-configure-in.patch
@@ -0,0 +1,113 @@
+Allow cross compiling.
+
+Signed-off-by: Anders Roxell <anders.roxell@enea.com>
+Upstream-Status: Pending
+
+Patch source:
+https://github.com/openembedded/openembedded-core/blob/bb87788832ad64079609e4f554e4d55a14f0aa94/meta/recipes-devtools/expect/expect/0001-configure.in.patch
+
+Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
+---
+diff -uNr a/configure.in b/configure.in
+--- a/configure.in 2012-12-14 15:31:32.623180450 +0100
++++ b/configure.in 2012-12-14 15:53:34.518233519 +0100
+@@ -481,7 +481,7 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(no)
+ )
+
+ AC_MSG_CHECKING([if any value exists for WNOHANG])
+@@ -506,7 +506,9 @@
+ AC_MSG_RESULT(no)
+ AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(yes)
++ AC_DEFINE_UNQUOTED(WNOHANG_BACKUP_VALUE, `cat wnohang`)
++ rm -f wnohang
+ )
+
+ #
+@@ -574,7 +576,8 @@
+ AC_DEFINE(REARM_SIG)
+ ,
+ AC_MSG_RESULT(no)
+-, AC_MSG_WARN([Expect can't be cross compiled])
++,
++ AC_MSG_RESULT(no)
+ )
+
+ # HPUX7 has trouble with the big cat so split it
+@@ -725,7 +728,9 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(yes)
++ AC_DEFINE(HAVE_SGTTYB)
++ PTY_TYPE=sgttyb
+ )
+
+ # mach systems have include files for unimplemented features
+@@ -749,7 +754,9 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_DEFINE(HAVE_TERMIO)
++ PTY_TYPE=termios
++ AC_MSG_RESULT(yes)
+ )
+
+ # now check for the new style ttys (not yet posix)
+@@ -771,7 +778,9 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_DEFINE(HAVE_TERMIOS)
++ PTY_TYPE=termios
++ AC_MSG_RESULT(yes)
+ )
+ fi
+
+@@ -794,7 +803,7 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(no)
+ )
+
+ AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
+@@ -816,7 +825,7 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(no)
+ )
+
+ # finally check for Cray style ttys
+@@ -837,7 +846,7 @@
+ ,
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_MSG_RESULT(no)
+ )
+
+ #
+@@ -889,7 +898,8 @@
+ AC_MSG_RESULT(yes),
+ AC_MSG_RESULT(no)
+ ,
+- AC_MSG_ERROR([Expect can't be cross compiled])
++ AC_DEFINE(HAVE_SV_TIMEZONE)
++ AC_MSG_RESULT(yes),
+ )
+
+
diff --git a/dev-tcltk/expect/metadata.xml b/dev-tcltk/expect/metadata.xml
index 67378c136485..8b51c5171249 100644
--- a/dev-tcltk/expect/metadata.xml
+++ b/dev-tcltk/expect/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/itcl/Manifest b/dev-tcltk/itcl/Manifest
index 127deb36423a..ea11e0ae88c4 100644
--- a/dev-tcltk/itcl/Manifest
+++ b/dev-tcltk/itcl/Manifest
@@ -1,3 +1,2 @@
-DIST itcl3.4.1.tar.gz 263316 BLAKE2B ba4a94d2dfe80b095e754d01036b189130918d7f29701f003873d59fa8e75074b1601dd907d94e5a9f680e05b18493d5782d6a4ddbb56d7df9ff85c8d5b17ecf SHA512 288c9b636f1814371bedd33d570a8d46055e136953685a111b76f3b89a6c7aaa1ee9223ceaae1c5ce43198195cb1adc2b178d7c4101d7fd14cb7e756c98bf2b0
-DIST itcl4.0.3.tar.gz 430522 BLAKE2B e1ce0325a501b0227f6ec721927488dff0e2ea323bb8b03b046ce23964b55cdf44d7633f34546b9b0432785e609bb7dddeb3a300cbb2d82a9e4eb70acb1bfd66 SHA512 9736a08f0f33e0afa677a77eb643454908531786435b73314a80d9ee211c06f037eb0de3c2c2608b728253f9ec613a601d76f16f29964eb06b667ecbb3400df4
-DIST itcl4.1.1.tar.gz 436718 BLAKE2B 50f5518460dc6569edcd0229b71439cb10a724b50c31387ebd1ffa85f9fbf58d5bd5163847a1d7ffa791d5acd5d72b08188f01f0e5c4730ba9060fc531071cd4 SHA512 1e08dbefe33e5464320c62e32d153b3e473462cded2d715ba1c504deacf190062672fbece40a021f25798440e2fbed4ecda763db5789fc6afb5eb2052bdf66e2
+DIST itcl-4-2-2.tar.gz 522497 BLAKE2B 3bb79525e5796b37b9274fe514b2430f8cd3f17f9b63ad008e1cc011eb298d47efedc9b684ea23cc0811f2da5f14d5dbc2c6e4b3ebf8bd7787fcc71661a621db SHA512 60bb5fba6c1188cbec15236c2f33b2409ff7a77af89526552a865376703574d01075fa9422d89e6f10c188b3eb8b3553f6d449704f55444005d2050de1c255d6
+DIST itcl-4-2-4.tar.gz 536828 BLAKE2B 970d6e5cbe7322d88a0117737df553f155cdda3264aaae93b30db361f40296dde74f1652d26bb6afccc3ca4c825fbc012710d8292b6df991af3a86f8e31c2e8b SHA512 fbe3e4298721b97777947675b42a434c8c7ec566564b81b1479fb958519ac4176b707f9be7bc6860ee72ee10fe29c82b211c4ac816f9ba6d4269ab43007eefe6
diff --git a/dev-tcltk/itcl/files/itcl-4.2.4-gentoo.patch b/dev-tcltk/itcl/files/itcl-4.2.4-gentoo.patch
new file mode 100644
index 000000000000..14a67a13f6b4
--- /dev/null
+++ b/dev-tcltk/itcl/files/itcl-4.2.4-gentoo.patch
@@ -0,0 +1,11 @@
+--- a/configure.ac 2024-02-27 20:44:51.154115391 +0100
++++ b/configure.ac 2024-02-27 20:45:10.488884871 +0100
+@@ -263,7 +263,7 @@
+ itcl_SRC_DIR=`cd "${itcl_SRC_DIR}"; pwd`
+ AC_SUBST(itcl_SRC_DIR)
+
+-eval itcl_INCLUDE_SPEC="-I${itcl_SRC_DIR}/generic -I${itcl_SRC_DIR}"
++itcl_INCLUDE_SPEC="-I${itcl_SRC_DIR}/generic -I${itcl_SRC_DIR}"
+ AC_SUBST(itcl_INCLUDE_SPEC)
+
+ #--------------------------------------------------------------------
diff --git a/dev-tcltk/itcl/itcl-3.4.1.ebuild b/dev-tcltk/itcl/itcl-3.4.1.ebuild
deleted file mode 100644
index 7e388fa77158..000000000000
--- a/dev-tcltk/itcl/itcl-3.4.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib versionator
-
-MY_P="${PN}${PV/_beta/b}"
-
-DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
-HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/incrtcl/%5BIncr%20Tcl_Tk%5D-source/$(get_version_component_range 1-2)/${MY_P}.tar.gz"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="alpha amd64 ia64 ppc sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE=""
-
-RDEPEND="<dev-lang/tcl-8.6:0="
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${PN}${PV}"
-
-src_compile() {
- # adjust install_name on darwin
- if [[ ${CHOST} == *-darwin* ]]; then
- sed -i \
- -e 's:^\(SHLIB_LD\W.*\)$:\1 -install_name ${pkglibdir}/$@:' \
- "${S}"/Makefile || die 'sed failed'
- fi
-
- sed 's:-pipe::g' -i Makefile || die
-
- emake CFLAGS_DEFAULT="${CFLAGS}"
-}
-
-src_install() {
- default
-
- cat >> "${T}"/34${PN} <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}$(get_version_component_range 1-2)/"
- EOF
- doenvd "${T}"/34${PN}
-}
diff --git a/dev-tcltk/itcl/itcl-4.1.1.ebuild b/dev-tcltk/itcl/itcl-4.2.2.ebuild
index ee7ab36d3f3f..4df25396bfcf 100644
--- a/dev-tcltk/itcl/itcl-4.1.1.ebuild
+++ b/dev-tcltk/itcl/itcl-4.2.2.ebuild
@@ -1,29 +1,35 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils multilib
-
-MY_P="${PN}${PV}"
+MYP="${PN}-$(ver_rs 1- '-')"
DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itcl%20${PV}/${MY_P}.tar.gz"
+SRC_URI="https://github.com/tcltk/${PN}/archive/refs/tags/${MYP}.tar.gz"
SLOT="0"
LICENSE="BSD"
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE=""
+KEYWORDS="~alpha amd64 arm64 ~ia64 ppc ~riscv sparc x86 ~amd64-linux ~x86-linux"
RDEPEND=">=dev-lang/tcl-8.6:0="
DEPEND="${RDEPEND}"
-S="${WORKDIR}/${PN}${PV}"
+S="${WORKDIR}/${PN}-${MYP}"
# somehow broken
#RESTRICT=test
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support
+)
+
+src_prepare() {
+ default
+ cp -r itclWidget/tclconfig tclconfig || die
+}
+
src_configure() {
econf \
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
@@ -47,6 +53,8 @@ src_compile() {
src_install() {
default
+ local MY_P=${PN}${PV}
+
sed \
-e "/BUILD_LIB_SPEC/s:-L${S}::g" \
-e "/BUILD_STUB_LIB_SPEC/s:-L${S}::g" \
diff --git a/dev-tcltk/itcl/itcl-4.0.3.ebuild b/dev-tcltk/itcl/itcl-4.2.4-r1.ebuild
index 56791fe41ee6..23c618f45aec 100644
--- a/dev-tcltk/itcl/itcl-4.0.3.ebuild
+++ b/dev-tcltk/itcl/itcl-4.2.4-r1.ebuild
@@ -1,32 +1,41 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit eutils multilib versionator
+inherit autotools
-MY_P="${PN}${PV}"
-TCL_VER="8.6.2"
+MYP="${PN}-$(ver_rs 1- '-')"
DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itcl%20${PV}/${MY_P}.tar.gz"
-#SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itcl%204.0.2/itcl4.0.2.tar.gz"
-#SRC_URI="mirror://sourceforge/project/tcl/Tcl/${TCL_VER}/${MY_P}.tar.gz"
+SRC_URI="https://github.com/tcltk/${PN}/archive/refs/tags/${MYP}.tar.gz"
SLOT="0"
LICENSE="BSD"
-KEYWORDS="alpha amd64 ia64 ppc sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
-IUSE=""
+KEYWORDS="~alpha ~amd64 ~arm64 ~ia64 ~ppc ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
RDEPEND=">=dev-lang/tcl-8.6:0="
DEPEND="${RDEPEND}"
-S="${WORKDIR}/${PN}${PV}"
+S="${WORKDIR}/${PN}-${MYP}"
# somehow broken
#RESTRICT=test
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 opendir64 readdir64 rewinddir64 closedir64 # used on AIX
+)
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ cp -r itclWidget/tclconfig tclconfig || die
+ echo "git-a3e8b43c671afc7f0d82bd892325d42c813791ab" > manifest.uuid
+ eautoreconf
+}
+
src_configure() {
econf \
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
@@ -50,6 +59,8 @@ src_compile() {
src_install() {
default
+ local MY_P=${PN}${PV}
+
sed \
-e "/BUILD_LIB_SPEC/s:-L${S}::g" \
-e "/BUILD_STUB_LIB_SPEC/s:-L${S}::g" \
@@ -59,7 +70,8 @@ src_install() {
-i "${ED}"/usr/$(get_libdir)/${MY_P}/itclConfig.sh || die
cat >> "${T}"/34${PN} <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}$(get_version_component_range 1-3)/"
+ LDPATH="${EPREFIX}/usr/$(get_libdir)/${MY_P}/"
EOF
doenvd "${T}"/34${PN}
+ dosym . /usr/$(get_libdir)/${MY_P}/library
}
diff --git a/dev-tcltk/itcl/metadata.xml b/dev-tcltk/itcl/metadata.xml
index d3074de5e0e4..f4dfd385d77b 100644
--- a/dev-tcltk/itcl/metadata.xml
+++ b/dev-tcltk/itcl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">incrtcl</remote-id>
+ <remote-id type="github">tcltk/itcl</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/itk/Manifest b/dev-tcltk/itk/Manifest
index f40d2d58b202..b727a0c99a3b 100644
--- a/dev-tcltk/itk/Manifest
+++ b/dev-tcltk/itk/Manifest
@@ -1,4 +1,3 @@
-DIST itk3.4.1.tar.gz 182311 BLAKE2B e1db1b9f7e6e8c5b93eec5bb29fc24af7e6cc5cb3f209df346f03553d3fe7248614c9bb10e2ababd93ea56c63963c1db4ee65bedbae8c279fbe84b6d0eaad3f9 SHA512 4680db81a0212e695cfe2c40cabe6dceb94520cf3ee06e2e332f12316838726da14c0b925b117ea351aa14fd2d695f361bcb4062743c66099ef783ae31ab37ef
-DIST itk4.0.0.tar.gz 177838 BLAKE2B 6bb975c414d40c81bac4b8651ce89f0d84d712114e6f60e1555071d2079f778850f4de7df1a79254db1d1152e8d43f261e0bf9827737fb69abb2801e72d72d6d SHA512 4fd993e3683376bd2852a19e8ac63ec20a9319f3987737a32f7af78b645ff27416b18572b7e30fc1e41a5e4e06ac064280fd86d979738ca9906e2605069c51f3
-DIST itk4.0.1.tar.gz 182029 BLAKE2B fe3ed0adddf71af9bf795949b18baf7d983edc1e6e95939db18bdf896069083afbc8498935b0c59e2c5f4179fdc6f624e67198afa0755e8183d754c181d50642 SHA512 d64beeb42949e96b384ef2fd571971813697086df8b18af79399cedbb80eba19dc013677957959ea93dc0dcd7cdc4be012b3f9a5f0eedf0bd743550837bd78fc
+DIST itk-4-2-3.tar.gz 168217 BLAKE2B 450c9f3393228b93a716cf338ad322ecc8934aca08a1f7c4a81dab07a38ac6729ab2ae43b7197130e3cda1bc03ed61c81f9d63cac542d8dcbb199764d47ae4d7 SHA512 0c5c70119b0d0dd950a8e3a52f5a508935bad920f647c38193980a414f617589711a65f4eac3ec67c4bef72f787205cae12513d4d3d35c3b8a795b1bb763fac4
DIST itk4.1.0.tar.gz 253796 BLAKE2B 7d51689d41871f39fbdf940f1aede2c89ee0165cc6be989f7da65df85a0d15e5db037722a5e30a284e51129b7bfff20dfde0fbc78d2d72d8acb9031f328a5d16 SHA512 1deed09daf66ae1d0cc88550be13814edff650f3ef2ecb5ae8d28daf92e37550b0e46921eb161da8ccc3886aaf62a4a3087df0f13610839b7c2d6f4b39c9f07e
+DIST tclconfig-2023.12.11.tar.gz 49691 BLAKE2B 53bb91d125fd080b79ac83af1053d8bb981a8e917b7c8e4db71da89c43263d75a9604623a85d560bcbf3d686f61ccf21bffd794d333aa6cb35c959ab3042991d SHA512 c4eaa31ca1ec585536cd6d31a548b347dae3167197433674d2f3912ce85bad00dda55b0c60eebf26cb5f9d651c8437688e1829f7d3996a22bba2d93e4538946c
diff --git a/dev-tcltk/itk/itk-3.4.1.ebuild b/dev-tcltk/itk/itk-3.4.1.ebuild
deleted file mode 100644
index c3275997968b..000000000000
--- a/dev-tcltk/itk/itk-3.4.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils multilib versionator virtualx
-
-MY_PV=${PV/_beta/b}
-ITCL_VERSION="$(get_version_component_range 1-2)"
-
-DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
-HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5BIncr%20Tcl_Tk%5D-source/${PV}/${PN}${PV}.tar.gz"
-
-IUSE=""
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="alpha amd64 ia64 ppc sparc x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- <dev-lang/tk-8.6:=
- =dev-tcltk/itcl-3.4*"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}$(get_version_component_range 1-2)"
-
-src_prepare() {
- #epatch "${FILESDIR}"/${P}-install_data.patch
- mv configure.{in,ac} || die
- AT_M4DIR=.. eautoconf
- sed 's:-pipe::g' -i configure || die
-}
-
-src_configure() {
- source "${EPREFIX}"/usr/$(get_libdir)/itclConfig.sh || die
- econf \
- --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
- --with-tk="${EPREFIX}"/usr/$(get_libdir) \
- --with-tclinclude="${EPREFIX}"/usr/include \
- --with-tkinclude="${EPREFIX}"/usr/include \
- --with-x
-}
-
-src_compile() {
- emake CFLAGS_DEFAULT="${CFLAGS}"
-}
-
-src_test() {
- Xemake test
-}
-
-src_install() {
- default
-
- cat >> "${T}"/34${PN} <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}${MY_PV}/"
- EOF
- doenvd "${T}"/34${PN}
-}
diff --git a/dev-tcltk/itk/itk-4.0.0.ebuild b/dev-tcltk/itk/itk-4.0.0.ebuild
deleted file mode 100644
index 2c400ce80471..000000000000
--- a/dev-tcltk/itk/itk-4.0.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils multilib versionator
-
-MY_PV=${PV/_beta/b}
-ITCL_VERSION="$(get_version_component_range 1-2)"
-
-DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
-HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/Itcl%20${MY_PV}/${PN}${MY_PV}.tar.gz"
-#SRC_URI="mirror://sourceforge/%5Bincr%20Tcl_Tk%5D-4-source/Itcl%20${MY_PV}/${PN}${MY_PV}.tar.gz"
-
-IUSE=""
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-lang/tk-8.6:=
- =dev-tcltk/itcl-${ITCL_VERSION}*"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}${MY_PV}"
-
-src_prepare() {
-# epatch "${FILESDIR}"/${P}-install_data.patch
- AT_M4DIR=.. eautoconf
- sed 's:-pipe::g' -i configure || die
-}
-
-src_configure() {
- source "${EPREFIX}"/usr/$(get_libdir)/itcl${ITCL_VERSION}*/itclConfig.sh || die
- econf \
- --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
- --with-tk="${EPREFIX}"/usr/$(get_libdir) \
- --with-tclinclude="${EPREFIX}"/usr/include \
- --with-tkinclude="${EPREFIX}"/usr/include \
- --with-itcl="${ITCL_SRC_DIR}" \
- --with-x
-}
-
-src_compile() {
- emake CFLAGS_DEFAULT="${CFLAGS}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- dodoc license.terms
-
- cat >> "${T}"/34${PN} <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}${MY_PV}/"
- EOF
- doenvd "${T}"/34${PN}
-}
diff --git a/dev-tcltk/itk/itk-4.0.1.ebuild b/dev-tcltk/itk/itk-4.1.0-r1.ebuild
index 82252d1377cd..7183abd5a072 100644
--- a/dev-tcltk/itk/itk-4.0.1.ebuild
+++ b/dev-tcltk/itk/itk-4.1.0-r1.ebuild
@@ -1,43 +1,48 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit autotools eutils multilib versionator
+inherit autotools virtualx
MY_PV=${PV/_beta/b}
-ITCL_VERSION="$(get_version_component_range 1-2)"
DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itk%20${MY_PV}/${PN}${MY_PV}.tar.gz"
-#SRC_URI="mirror://sourceforge/%5Bincr%20Tcl_Tk%5D-4-source/Itcl%20${MY_PV}/${PN}${MY_PV}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itk%20${MY_PV}/${PN}${MY_PV}.tar.gz"
-IUSE=""
SLOT="0"
LICENSE="BSD"
-KEYWORDS="alpha amd64 ia64 ppc sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
DEPEND="
>=dev-lang/tk-8.6:=
- =dev-tcltk/itcl-${ITCL_VERSION}*"
+ >=dev-tcltk/itcl-4.1"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${PN}${MY_PV}"
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
src_prepare() {
-# epatch "${FILESDIR}"/${P}-install_data.patch
mv configure.{in,ac} || die
AT_M4DIR=.. eautoconf
sed 's:-pipe::g' -i configure || die
+ default
}
src_configure() {
+ local itcl_package=$(best_version dev-tcltk/itcl)
+ local itcl_version=${itcl_package#*/*-}
+ local ITCL_VERSION="${itcl_version%-*}"
source "${EPREFIX}"/usr/$(get_libdir)/itcl${ITCL_VERSION}*/itclConfig.sh || die
econf \
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
- --with-tk="${EPREFIX}"/usr/$(get_libdir) \
--with-tclinclude="${EPREFIX}"/usr/include \
+ --with-tk="${EPREFIX}"/usr/$(get_libdir) \
--with-tkinclude="${EPREFIX}"/usr/include \
--with-itcl="${ITCL_SRC_DIR}" \
--with-x
@@ -47,6 +52,10 @@ src_compile() {
emake CFLAGS_DEFAULT="${CFLAGS}"
}
+src_test() {
+ virtx default
+}
+
src_install() {
default
@@ -56,4 +65,5 @@ src_install() {
LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}${MY_PV}/"
EOF
doenvd "${T}"/34${PN}
+ dosym . /usr/$(get_libdir)/${PN}${MY_PV}/library
}
diff --git a/dev-tcltk/itk/itk-4.1.0.ebuild b/dev-tcltk/itk/itk-4.1.0.ebuild
index dacfecf0fd08..4843cf0018f8 100644
--- a/dev-tcltk/itk/itk-4.1.0.ebuild
+++ b/dev-tcltk/itk/itk-4.1.0.ebuild
@@ -1,29 +1,32 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit autotools multilib virtualx
+inherit autotools virtualx
MY_PV=${PV/_beta/b}
-ITCL_VERSION=$(ver_cut 1-2)
DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
HOMEPAGE="http://incrtcl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itk%20${MY_PV}/${PN}${MY_PV}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/project/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itk%20${MY_PV}/${PN}${MY_PV}.tar.gz"
-IUSE=""
SLOT="0"
LICENSE="BSD"
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm64 ~ia64 ppc ~riscv sparc x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
DEPEND="
>=dev-lang/tk-8.6:=
- =dev-tcltk/itcl-${ITCL_VERSION}*"
+ >=dev-tcltk/itcl-4.1"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${PN}${MY_PV}"
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
src_prepare() {
mv configure.{in,ac} || die
AT_M4DIR=.. eautoconf
@@ -32,6 +35,8 @@ src_prepare() {
}
src_configure() {
+ local ITCL_VERSION=$(best_version dev-tcltk/itcl)
+ ITCL_VERSION=${ITCL_VERSION:15} # remove category, package name and dash
source "${EPREFIX}"/usr/$(get_libdir)/itcl${ITCL_VERSION}*/itclConfig.sh || die
econf \
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
diff --git a/dev-tcltk/itk/itk-4.2.3-r1.ebuild b/dev-tcltk/itk/itk-4.2.3-r1.ebuild
new file mode 100644
index 000000000000..2b9a5bcac2fe
--- /dev/null
+++ b/dev-tcltk/itk/itk-4.2.3-r1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit virtualx
+
+MY_PV=${PN}-$(ver_rs 1- '-')
+TCLCONFIGId=4a924db4fb37fa0c7cc2ae987b294dbaa97bc713
+
+DESCRIPTION="Object Oriented Enhancements for Tcl/Tk"
+HOMEPAGE="http://incrtcl.sourceforge.net/"
+SRC_URI="
+ https://github.com/tcltk/${PN}/archive/refs/tags/${MY_PV}.tar.gz
+ https://github.com/tcltk/tclconfig/archive/${TCLCONFIGId}.tar.gz
+ -> tclconfig-2023.12.11.tar.gz
+"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=dev-lang/tk-8.6:=
+ >=dev-tcltk/itcl-4.1"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 readdir64 rewinddir64 closedir64 stat64 # used on AIX
+)
+
+UNINSTALL_IGNORE='/usr/lib.*/itk.*/library'
+
+src_prepare() {
+ ln -s ../tclconfig-${TCLCONFIGId} tclconfig || die
+ sed 's:-pipe::g' -i configure || die
+ default
+ echo "unknown" > manifest.uuid
+}
+
+src_configure() {
+ local itcl_package=$(best_version dev-tcltk/itcl)
+ local itcl_version=${itcl_package#*/*-}
+ local ITCL_VERSION="${itcl_version%-*}"
+ source "${EPREFIX}"/usr/$(get_libdir)/itcl${ITCL_VERSION}*/itclConfig.sh || die
+ econf \
+ --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
+ --with-tclinclude="${EPREFIX}"/usr/include \
+ --with-tk="${EPREFIX}"/usr/$(get_libdir) \
+ --with-tkinclude="${EPREFIX}"/usr/include \
+ --with-itcl="${ITCL_SRC_DIR}" \
+ --with-x
+}
+
+src_compile() {
+ emake CFLAGS_DEFAULT="${CFLAGS}"
+}
+
+src_test() {
+ virtx default
+}
+
+src_install() {
+ default
+
+ dodoc license.terms
+
+ cat >> "${T}"/34${PN} <<- EOF
+ LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}${MY_PV}/"
+ EOF
+ doenvd "${T}"/34${PN}
+ dosym . /usr/$(get_libdir)/${PN}${PV}/library
+}
diff --git a/dev-tcltk/itk/metadata.xml b/dev-tcltk/itk/metadata.xml
index d3074de5e0e4..60cd4f349c03 100644
--- a/dev-tcltk/itk/metadata.xml
+++ b/dev-tcltk/itk/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">incrtcl</remote-id>
+ <remote-id type="github">tcltk/itk</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/iwidgets/Manifest b/dev-tcltk/iwidgets/Manifest
index af0e621868b6..c40fff60b3b0 100644
--- a/dev-tcltk/iwidgets/Manifest
+++ b/dev-tcltk/iwidgets/Manifest
@@ -1,5 +1,3 @@
-DIST itcl3.2.1_src.tgz 427026 BLAKE2B f37612bc21916bfad082d60cd216e28f2e427307e0ea80aa0ca1506c1d247471bfcd20be744a16ef57f5e04db0c34fcc436f2fbe53715462417202377a6cf0e4 SHA512 f6b832f20e53bac66c8bcdbf64aa4aad932ee827fb8059ad2e0dca0c61db01affde6b67c1e0acb331a3837eebcb38282fa7bec90f5d6ed4b65799f4424679f3f
DIST itcl4.1.1.tar.gz 436718 BLAKE2B 50f5518460dc6569edcd0229b71439cb10a724b50c31387ebd1ffa85f9fbf58d5bd5163847a1d7ffa791d5acd5d72b08188f01f0e5c4730ba9060fc531071cd4 SHA512 1e08dbefe33e5464320c62e32d153b3e473462cded2d715ba1c504deacf190062672fbece40a021f25798440e2fbed4ecda763db5789fc6afb5eb2052bdf66e2
DIST itk4.1.0.tar.gz 253796 BLAKE2B 7d51689d41871f39fbdf940f1aede2c89ee0165cc6be989f7da65df85a0d15e5db037722a5e30a284e51129b7bfff20dfde0fbc78d2d72d8acb9031f328a5d16 SHA512 1deed09daf66ae1d0cc88550be13814edff650f3ef2ecb5ae8d28daf92e37550b0e46921eb161da8ccc3886aaf62a4a3087df0f13610839b7c2d6f4b39c9f07e
DIST iwidgets-4.1.1.tar.gz 720630 BLAKE2B f276159893b19d7af7cbbe3653f9e406184c76065ae7906c34388545bdfff1b9e427a6e9b1985f349e9229c69c935b5b85ae8a0fd15ef28b0a1312fc4fcec8f4 SHA512 56fd91d832c59426b030bde2ec7136e46751503dac1b650d195251cac7ef1d1a7024adb2d995fe835f1039a0f99eb616db97a9e9c591f827a911eea2c233c305
-DIST iwidgets4.0.1.tar.gz 647960 BLAKE2B 3dafbe73a40e4babff574a82b4bd68546f109a52197f15228877950560f8089f95a44da93c3ff2723e2a40f26bac0e00ca4f34099e716591b93e9aba846e4257 SHA512 61d1980eb8beb2821fbd8333f5d1f6faa8bf59d98392fee8d166eef213b27c6b66121d42b8eef64d151e5249009be56076a8cf8bb6635072ee6ee4075858182e
diff --git a/dev-tcltk/iwidgets/files/4.0.1-path.patch b/dev-tcltk/iwidgets/files/4.0.1-path.patch
deleted file mode 100644
index 5d71eeb64744..000000000000
--- a/dev-tcltk/iwidgets/files/4.0.1-path.patch
+++ /dev/null
@@ -1,63 +0,0 @@
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -30,6 +30,7 @@
-
- srcdir = @srcdir@
- bindir = @bindir@
-+mandir = @mandir@
-
- # The following definition can be set to non-null for special systems
- # like AFS with replication. It allows the pathnames used for installation
-@@ -48,7 +49,9 @@
- BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
-
- # Top-level directory in which to install manual entries:
--MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man/mann
-+MAN_INSTALL_DIR = $(INSTALL_ROOT)$(mandir)/mann
-+
-+DATA_DIR = $(INSTALL_ROOT)$(prefix)/share/iwidgets$(IWIDGETS_VERSION)
-
- # Directory containing Tcl source code (for library used during test):
- TCL_SRC_DIR = @TCL_SRC_DIR@
-@@ -135,26 +138,26 @@
- done;
-
- install-demos:
-- @$(MKINSTALLDIRS) $(SCRIPT_INSTALL_DIR)/demos/images $(SCRIPT_INSTALL_DIR)/demos/html
-- @echo "Installing demos from $(srcdir)/demos into $(SCRIPT_INSTALL_DIR)/demos"
-+ @$(MKINSTALLDIRS) $(DATA_DIR)/demos/images $(DATA_DIR)/demos/html
-+ @echo "Installing demos from $(srcdir)/demos into $(DATA_DIR)/demos"
- @for i in $(srcdir)/demos/*; \
- do \
- if [ -f $$i ] ; then \
-- $(INSTALL_SCRIPT) $$i $(SCRIPT_INSTALL_DIR)/demos; \
-+ $(INSTALL_SCRIPT) $$i $(DATA_DIR)/demos; \
- fi; \
- done;
-- @echo "Installing images from $(srcdir)/demos/images into $(SCRIPT_INSTALL_DIR)/demos/images"
-+ @echo "Installing images from $(srcdir)/demos/images into $(DATA_DIR)/demos/images"
- for i in $(srcdir)/demos/images/*; \
- do \
- if [ -f $$i ] ; then \
-- $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/demos/images; \
-+ $(INSTALL_DATA) $$i $(DATA_DIR)/demos/images; \
- fi; \
- done;
-- @echo "Installing html man pages from $(srcdir)/demos/html into $(SCRIPT_INSTALL_DIR)/demos/html"
-+ @echo "Installing html man pages from $(srcdir)/demos/html into $(DATA_DIR)/demos/html"
- for i in $(srcdir)/demos/html/*; \
- do \
- if [ -f $$i ] ; then \
-- $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR)/demos/html; \
-+ $(INSTALL_DATA) $$i $(DATA_DIR)/demos/html; \
- fi; \
- done;
-
-@@ -169,7 +172,6 @@
- $$i > $(MAN_INSTALL_DIR)/`basename iwidgets_$$i`; \
- chmod 444 $(MAN_INSTALL_DIR)/`basename iwidgets_$$i`; \
- done;
-- $(INSTALL_DATA) $(srcdir)/license.terms $(SCRIPT_INSTALL_DIR)
-
- Makefile: $(srcdir)/Makefile.in
- $(SHELL) config.status
diff --git a/dev-tcltk/iwidgets/files/iwidgets-4.1.1-dash.patch b/dev-tcltk/iwidgets/files/iwidgets-4.1.1-dash.patch
new file mode 100644
index 000000000000..0a928506ee6c
--- /dev/null
+++ b/dev-tcltk/iwidgets/files/iwidgets-4.1.1-dash.patch
@@ -0,0 +1,11 @@
+--- a/tclconfig/tcl.m4 2023-03-16 08:23:24.920934671 +0100
++++ b/tclconfig/tcl.m4 2023-03-16 08:24:06.288775313 +0100
+@@ -794,7 +794,7 @@
+ # results, and the version is kept in special file).
+
+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
++ system=MP-RAS-`awk '{print $3}' /etc/.relid`
+ fi
+ if test "`uname -s`" = "AIX" ; then
+ system=AIX-`uname -v`.`uname -r`
diff --git a/dev-tcltk/iwidgets/iwidgets-4.0.1-r3.ebuild b/dev-tcltk/iwidgets/iwidgets-4.0.1-r3.ebuild
deleted file mode 100644
index 50ecc6a9de46..000000000000
--- a/dev-tcltk/iwidgets/iwidgets-4.0.1-r3.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib
-
-MY_P="${PN}${PV}"
-ITCL_MY_P="itcl3.2.1"
-
-DESCRIPTION="Widget collection for incrTcl/incrTk"
-HOMEPAGE="http://incrtcl.sourceforge.net/itcl/"
-SRC_URI="
- mirror://sourceforge/incrtcl/${MY_P}.tar.gz
- mirror://sourceforge/incrtcl/${ITCL_MY_P}_src.tgz"
-
-LICENSE="HPND Old-MIT tcltk"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND="
- >=dev-tcltk/itcl-3.2.1
- >=dev-tcltk/itk-3.2.1"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=( "${FILESDIR}"/${PV}-path.patch )
-
-src_prepare() {
- default
- sed \
- -e "/^\(LIB\|SCRIPT\)_INSTALL_DIR =/s|lib|$(get_libdir)|" \
- -i Makefile.in || die
-
- # Bug 115470
- rm doc/panedwindow.n
-}
-
-src_configure() {
- econf \
- --with-itcl="${WORKDIR}/${ITCL_MY_P}" \
- --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
- --with-tk="${EPREFIX}"/usr/$(get_libdir)
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- # parallel borks #177088
- emake -j1 INSTALL_ROOT="${D}" install
-
- dodoc CHANGES ChangeLog README
-
- # bug 247184 - iwidget installs man pages in /usr/man
-# mkdir -p "${ED}"/usr/share/man/mann
-# mv "${ED}"/usr/man/mann/* "${ED}"/usr/share/man/mann/
-# rm -rf "${ED}"/usr/man
-
- # demos are in the wrong place:
-# mkdir -p "${ED}/usr/share/doc/${PF}"
-# mv "${ED}/usr/$(get_libdir)/${MY_P}/demos" "${ED}/usr/share/doc/${PF}/"
-}
diff --git a/dev-tcltk/iwidgets/iwidgets-4.0.1.ebuild b/dev-tcltk/iwidgets/iwidgets-4.0.1.ebuild
deleted file mode 100644
index a3b02f1740f0..000000000000
--- a/dev-tcltk/iwidgets/iwidgets-4.0.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=0
-
-MY_P=${PN}${PV}
-ITCL_MY_PN="itcl"
-ITCL_MY_PV="3.2.1"
-ITCL_MY_P="${ITCL_MY_PN}${ITCL_MY_PV}"
-
-DESCRIPTION="Widget collection for incrTcl/incrTk"
-HOMEPAGE="http://incrtcl.sourceforge.net/itcl/"
-SRC_URI="
- mirror://sourceforge/incrtcl/${MY_P}.tar.gz
- mirror://sourceforge/incrtcl/${ITCL_MY_P}_src.tgz"
-
-LICENSE="HPND Old-MIT tcltk"
-SLOT="0"
-KEYWORDS="~alpha amd64 ia64 ppc sparc x86"
-IUSE=""
-
-DEPEND="
- >=dev-tcltk/itcl-3.2.1
- >=dev-tcltk/itk-3.3-r1"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-src_compile() {
- local myconf
- myconf="${myconf} --with-itcl=${WORKDIR}/${ITCL_MY_P}"
- econf ${myconf}
-}
-
-src_install() {
- einstall || die "einstall failed"
- dodoc CHANGES ChangeLog README || die
- # Bug 115470
- rm doc/panedwindow.n
- doman doc/*.n || die
-}
diff --git a/dev-tcltk/iwidgets/iwidgets-4.1.1.ebuild b/dev-tcltk/iwidgets/iwidgets-4.1.1-r2.ebuild
index 728e7f8d1756..82676f51d728 100644
--- a/dev-tcltk/iwidgets/iwidgets-4.1.1.ebuild
+++ b/dev-tcltk/iwidgets/iwidgets-4.1.1-r2.ebuild
@@ -1,37 +1,45 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit virtualx multilib
+inherit virtualx autotools
-BASE_URI_ITCLTK="mirror://sourceforge/incrtcl/%5BIncr%20Tcl_Tk%5D-4-source"
+BASE_URI_ITCLTK="https://downloads.sourceforge.net/incrtcl/%5BIncr%20Tcl_Tk%5D-4-source"
ITCL_VER=4.1.1
ITK_VER=4.1.0
DESCRIPTION="Widget collection for incrTcl/incrTk"
HOMEPAGE="http://incrtcl.sourceforge.net/itcl/"
SRC_URI="
- mirror://sourceforge/incrtcl/%5BIncr%20Widgets%5D/${PV}/${P}.tar.gz
+ https://downloads.sourceforge.net/incrtcl/%5BIncr%20Widgets%5D/${PV}/${P}.tar.gz
${BASE_URI_ITCLTK}/itcl%20${ITCL_VER}/itcl${ITCL_VER}.tar.gz
${BASE_URI_ITCLTK}/itk%20${ITK_VER}/itk${ITK_VER}.tar.gz"
LICENSE="HPND Old-MIT tcltk"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
+KEYWORDS="amd64 ~ia64 ppc sparc x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
DEPEND="
>=dev-tcltk/itcl-${ITCL_VER}
>=dev-tcltk/itk-${ITK_VER}"
RDEPEND="${DEPEND}"
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+PATCHES=( "${FILESDIR}"/${P}-dash.patch )
+
src_prepare() {
default
sed \
-e "/^\(LIB\|SCRIPT\)_INSTALL_DIR =/s|lib|$(get_libdir)|" \
-i Makefile.in || die
+ eautoreconf
+
# Bug 115470
rm doc/panedwindow.n
diff --git a/dev-tcltk/iwidgets/iwidgets-4.1.1-r3.ebuild b/dev-tcltk/iwidgets/iwidgets-4.1.1-r3.ebuild
new file mode 100644
index 000000000000..84390ab44b91
--- /dev/null
+++ b/dev-tcltk/iwidgets/iwidgets-4.1.1-r3.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit virtualx autotools
+
+BASE_URI_ITCLTK="https://downloads.sourceforge.net/incrtcl/%5BIncr%20Tcl_Tk%5D-4-source"
+
+DESCRIPTION="Widget collection for incrTcl/incrTk"
+HOMEPAGE="http://incrtcl.sourceforge.net/itcl/"
+SRC_URI="https://downloads.sourceforge.net/incrtcl/%5BIncr%20Widgets%5D/${PV}/${P}.tar.gz"
+
+LICENSE="HPND Old-MIT tcltk"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=dev-tcltk/itcl-4.2.4-r1
+ >=dev-tcltk/itk-4.1.0-r1"
+RDEPEND="${DEPEND}"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+PATCHES=( "${FILESDIR}"/${P}-dash.patch )
+
+src_prepare() {
+ default
+ sed \
+ -e "/^\(LIB\|SCRIPT\)_INSTALL_DIR =/s|lib|$(get_libdir)|" \
+ -i Makefile.in || die
+
+ eautoreconf
+
+ # Bug 115470
+ rm doc/panedwindow.n
+
+ rm tests/hierarchy.test || die
+}
+
+src_configure() {
+ local itcl_package=$(best_version dev-tcltk/itcl)
+ local itcl_version=${itcl_package#*/*-}
+ local itcl="itcl${itcl_version%-*}"
+ local itk_package=$(best_version dev-tcltk/itk)
+ local itk_version=${itk_package#*/*-}
+ local itk="itk${itk_version%-*}"
+ econf \
+ --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
+ --with-tk="${EPREFIX}"/usr/$(get_libdir) \
+ --with-itcl="${EPREFIX}"/usr/$(get_libdir)/${itcl} \
+ --with-itk="${EPREFIX}"/usr/$(get_libdir)/${itk}
+}
+
+src_compile() {
+ :
+}
+
+src_test() {
+ virtx default
+}
+
+src_install() {
+ default
+
+ # demos are in the wrong place:
+ mv "${ED}/usr/$(get_libdir)/${PN}${PV}/demos" "${ED}/usr/share/doc/${PF}/"
+}
diff --git a/dev-tcltk/iwidgets/metadata.xml b/dev-tcltk/iwidgets/metadata.xml
index d3074de5e0e4..687db9f341b7 100644
--- a/dev-tcltk/iwidgets/metadata.xml
+++ b/dev-tcltk/iwidgets/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/metadata.xml b/dev-tcltk/metadata.xml
index 0fadf10b5e15..536f5e4c8095 100644
--- a/dev-tcltk/metadata.xml
+++ b/dev-tcltk/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The dev-tcltk category contains Tcl- and Tk-related libraries and tools.
@@ -33,4 +33,3 @@
Kategoria dev-tcltk zawiera biblioteki i narzędzia związane z Tcl i Tk.
</longdescription>
</catmetadata>
-
diff --git a/dev-tcltk/mysqltcl/files/mysqltcl-3.05-API.patch b/dev-tcltk/mysqltcl/files/mysqltcl-3.05-API.patch
new file mode 100644
index 000000000000..f28f044f850f
--- /dev/null
+++ b/dev-tcltk/mysqltcl/files/mysqltcl-3.05-API.patch
@@ -0,0 +1,11 @@
+--- a/generic/mysqltcl.c 2022-12-24 18:24:12.451620838 +0100
++++ b/generic/mysqltcl.c 2022-12-24 18:24:24.075438534 +0100
+@@ -911,7 +911,7 @@
+ #if (MYSQL_VERSION_ID>=32350)
+ if(mysql_options_reconnect)
+ {
+- my_bool reconnect = 1;
++ bool reconnect = 1;
+ mysql_options(handle->connection, MYSQL_OPT_RECONNECT, &reconnect);
+ }
+ mysql_options(handle->connection,MYSQL_READ_DEFAULT_GROUP,groupname);
diff --git a/dev-tcltk/mysqltcl/metadata.xml b/dev-tcltk/mysqltcl/metadata.xml
index 709689b06053..ec0eb938bf50 100644
--- a/dev-tcltk/mysqltcl/metadata.xml
+++ b/dev-tcltk/mysqltcl/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
- <email>mysql-bugs@gentoo.org</email>
- <name>MySQL</name>
+ <email>tcltk@gentoo.org</email>
+ <name>Gentoo Tcltk Project</name>
</maintainer>
</pkgmetadata>
diff --git a/dev-tcltk/mysqltcl/mysqltcl-3.052-r1.ebuild b/dev-tcltk/mysqltcl/mysqltcl-3.052-r2.ebuild
index 8023b497b90f..8edd7cfe8c16 100644
--- a/dev-tcltk/mysqltcl/mysqltcl-3.052-r1.ebuild
+++ b/dev-tcltk/mysqltcl/mysqltcl-3.052-r2.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="TCL MySQL Interface"
HOMEPAGE="http://www.xdobry.de/mysqltcl/"
@@ -10,13 +10,20 @@ SRC_URI="http://www.xdobry.de/mysqltcl/${P}.tar.gz"
LICENSE="HPND"
SLOT="0"
KEYWORDS="amd64 ~ppc ~sparc x86"
-IUSE=""
DEPEND="
dev-lang/tcl:0=
dev-db/mysql-connector-c:0="
RDEPEND="${DEPEND}"
-PATCHES=( "${FILESDIR}"/${PN}-3.05-ldflags.patch )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.05-ldflags.patch
+ "${FILESDIR}"/${PN}-3.05-API.patch
+)
HTML_DOCS=( doc/mysqltcl.html )
src_prepare() {
diff --git a/dev-tcltk/scwoop/metadata.xml b/dev-tcltk/scwoop/metadata.xml
index d836ed383e14..ec0eb938bf50 100644
--- a/dev-tcltk/scwoop/metadata.xml
+++ b/dev-tcltk/scwoop/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/scwoop/scwoop-4.1.ebuild b/dev-tcltk/scwoop/scwoop-4.1-r1.ebuild
index 2c5176dbb836..bf25372e0b22 100644
--- a/dev-tcltk/scwoop/scwoop-4.1.ebuild
+++ b/dev-tcltk/scwoop/scwoop-4.1-r1.ebuild
@@ -1,25 +1,27 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=0
+EAPI=7
DESCRIPTION="Simple Composite Widget Object Oriented Package"
HOMEPAGE="http://jfontain.free.fr/scwoop41.htm"
SRC_URI="http://jfontain.free.fr/${P}.tar.gz"
LICENSE="jfontain"
-KEYWORDS="x86 amd64 ~ppc"
+KEYWORDS="amd64 ~ppc x86"
SLOT="0"
-IUSE=""
DEPEND="dev-tcltk/tcllib"
+RDEPEND="${DEPEND}"
+
+HTML_DOCS=( scwoop.htm )
src_install() {
dodir /usr/lib/scwoop
./instapkg.tcl "${D}"/usr/lib/scwoop || die
- dodoc CHANGES CONTENTS COPYRIGHT INSTALL README TODO
- dohtml scwoop.htm
+ einstalldocs
+ docompress -x /usr/share/doc/${PF}/demo
docinto demo
dodoc demo*
}
diff --git a/dev-tcltk/snack/files/snack-2.2.10-configure-clang16.patch b/dev-tcltk/snack/files/snack-2.2.10-configure-clang16.patch
new file mode 100644
index 000000000000..e038bf570abf
--- /dev/null
+++ b/dev-tcltk/snack/files/snack-2.2.10-configure-clang16.patch
@@ -0,0 +1,12 @@
+Issue in autoconf which is already fixed upstream but we can't autoreconf,
+it seems.
+--- a/unix/configure
++++ b/unix/configure
+@@ -2928,6 +2928,7 @@ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ #include <ctype.h>
++#include <stdlib.h>
+ #if ((' ' & 0x0FF) == 0x020)
+ # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+ # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
diff --git a/dev-tcltk/snack/files/snack-2.2.10-implicit.patch b/dev-tcltk/snack/files/snack-2.2.10-implicit.patch
new file mode 100644
index 000000000000..965b1af0dbe2
--- /dev/null
+++ b/dev-tcltk/snack/files/snack-2.2.10-implicit.patch
@@ -0,0 +1,92 @@
+--- a/generic/sigproc2.c 2023-01-16 08:03:06.605091947 +0100
++++ b/generic/sigproc2.c 2023-01-16 08:11:03.641089339 +0100
+@@ -465,9 +465,7 @@
+ }
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+-int get_window(dout, n, type)
+- register double *dout;
+- register int n;
++int get_window(register double *dout, register int n, int type)
+ {
+ static short *din = NULL;
+ static int n0 = 0;
+@@ -506,9 +504,7 @@
+ }
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+-int get_float_window(fout, n, type)
+- register float *fout;
+- register int n;
++int get_float_window(register float *fout, register int n, int type)
+ {
+ static int n0 = 0;
+ static double *dout = NULL;
+@@ -533,10 +529,7 @@
+ }
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+-int fwindow(din, dout, n, preemp, type)
+- register short *din;
+- register float *dout, preemp;
+- register int n;
++int fwindow(register short *din, register float *dout, register int n, register float preemp, int type)
+ {
+ static float *fwind=NULL;
+ static int size=0, otype= (-100);
+@@ -572,10 +565,7 @@
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+ /* same as fwindow() but input is float */
+-int fwindow_f(din, dout, n, preemp, type)
+- register float *din;
+- register float *dout, preemp;
+- register int n;
++int fwindow_f(register float *din, register float *dout, register int n, register float preemp, int type)
+ {
+ static float *fwind=NULL;
+ static int size=0, otype= (-100);
+@@ -611,10 +601,7 @@
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+ /* same as fwindow() but I/O is double */
+-int fwindow_d(din, dout, n, preemp, type)
+- register double *din;
+- register double *dout, preemp;
+- register int n;
++int fwindow_d(register double *din, register double *dout, register int n, register double preemp, int type)
+ {
+ static float *fwind=NULL;
+ static int size=0, otype= (-100);
+@@ -651,10 +638,7 @@
+
+
+ /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+-void w_window(din, dout, n, preemp, type)
+- register short *din;
+- register double *dout, preemp;
+- register int n;
++void w_window(register short *din, register double *dout, register int n, register double preemp, int type)
+ {
+ switch(type) {
+ case 0:
+--- a/generic/jkCanvSpeg.c 2023-01-16 08:25:51.880415841 +0100
++++ b/generic/jkCanvSpeg.c 2023-01-16 08:26:43.667561725 +0100
+@@ -92,7 +92,7 @@
+ Tk_Window tkwin, CONST84 char *value, char *recordPtr,
+ int offset);
+
+-static char *PrintColorMap(ClientData clientData, Tk_Window tkwin,
++static const char *PrintColorMap(ClientData clientData, Tk_Window tkwin,
+ char *recordPtr, int offset,
+ Tcl_FreeProc **freeProcPtr);
+
+@@ -1797,7 +1797,7 @@
+ return TCL_OK;
+ }
+
+-static char*
++static const char*
+ PrintColorMap(ClientData clientData, Tk_Window tkwin, char *recordPtr,
+ int offset, Tcl_FreeProc **freeProcPtr)
+ {
diff --git a/dev-tcltk/snack/files/snack-2.2.10-lto.patch b/dev-tcltk/snack/files/snack-2.2.10-lto.patch
new file mode 100644
index 000000000000..27c6b6c9126f
--- /dev/null
+++ b/dev-tcltk/snack/files/snack-2.2.10-lto.patch
@@ -0,0 +1,28 @@
+--- a/generic/sound.c 2022-07-18 08:21:20.492977432 +0200
++++ b/generic/sound.c 2022-07-18 08:21:44.720698702 +0200
+@@ -120,9 +120,9 @@
+ int littleEndian = 0;
+
+ #ifdef __cplusplus
+-extern "C" SnackStubs *snackStubs;
++extern "C" SnackStubs snackStubs;
+ #else
+-extern SnackStubs *snackStubs;
++extern SnackStubs snackStubs;
+ #endif
+
+ extern Tcl_HashTable *filterHashTable;
+--- a/generic/snack.c 2022-07-18 08:21:29.953868734 +0200
++++ b/generic/snack.c 2022-07-18 08:22:05.978453035 +0200
+@@ -203,9 +203,9 @@
+ int littleEndian = 0;
+
+ #ifdef __cplusplus
+-extern "C" SnackStubs *snackStubs;
++extern "C" SnackStubs snackStubs;
+ #else
+-extern SnackStubs *snackStubs;
++extern SnackStubs snackStubs;
+ #endif
+
+ extern Tcl_HashTable *filterHashTable;
diff --git a/dev-tcltk/snack/files/snack-2.2.10-parallelMake.patch b/dev-tcltk/snack/files/snack-2.2.10-parallelMake.patch
new file mode 100644
index 000000000000..53e79c0f1eff
--- /dev/null
+++ b/dev-tcltk/snack/files/snack-2.2.10-parallelMake.patch
@@ -0,0 +1,20 @@
+--- a/unix/Makefile.in 2023-01-16 08:39:23.021056229 +0100
++++ b/unix/Makefile.in 2023-01-16 08:40:31.485926112 +0100
+@@ -290,7 +290,7 @@
+ SphereFile.o: $(GENERIC_DIR)/SphereFile.c
+ $(CC) -c $(CFLAGS) -DUSE_SNACK_STUBS $(GENERIC_DIR)/SphereFile.c
+
+-libsnacksphere${SHLIB_SUFFIX}: ${OBJNIST}
++libsnacksphere${SHLIB_SUFFIX}: ${OBJNIST} stublib
+ ${SHLIB_LD} ${OBJNIST} ${LIBNIST} -o libsnacksphere${SHLIB_SUFFIX}
+
+ LIBOGG = @OGGLIBS@ -lc @TCL_LIB_SPEC@ -L. @SNACK_STUB_LIB_FLAG@
+@@ -299,7 +299,7 @@
+ SnackOgg.o: $(GENERIC_DIR)/SnackOgg.c
+ $(CC) @OGGINC@ -c $(CFLAGS) -DUSE_SNACK_STUBS $(GENERIC_DIR)/SnackOgg.c
+
+-libsnackogg${SHLIB_SUFFIX}: ${OBJOGG}
++libsnackogg${SHLIB_SUFFIX}: ${OBJOGG} stublib
+ ${SHLIB_LD} ${OBJOGG} ${LIBOGG} -o libsnackogg${SHLIB_SUFFIX}
+
+ install:
diff --git a/dev-tcltk/snack/files/snack-2.2.10-py3.8.patch b/dev-tcltk/snack/files/snack-2.2.10-py3.8.patch
new file mode 100644
index 000000000000..ec42b50eac88
--- /dev/null
+++ b/dev-tcltk/snack/files/snack-2.2.10-py3.8.patch
@@ -0,0 +1,11 @@
+--- a/python/tkSnack.py 2024-04-20 16:01:28.403396211 +0200
++++ b/python/tkSnack.py 2024-04-20 16:01:55.094084757 +0200
+@@ -267,7 +267,7 @@
+
+ def pitch(self, method=None, **kw):
+ """Returns a list of pitch values."""
+- if method is None or method is "amdf" or method is "AMDF":
++ if method is None or method == "amdf" or method == "AMDF":
+ result = self.tk.call((self.name, 'pitch') + self._options(kw))
+ return self._getdoubles(result)
+ else:
diff --git a/dev-tcltk/snack/files/snack-2.2.10-test.patch b/dev-tcltk/snack/files/snack-2.2.10-test.patch
index 724ccd686fc7..ba8a91c8774d 100644
--- a/dev-tcltk/snack/files/snack-2.2.10-test.patch
+++ b/dev-tcltk/snack/files/snack-2.2.10-test.patch
@@ -9,14 +9,141 @@
test pitch-2.1 {pitch command, with missing argument for -start option} {
set s [snack::sound snd -load ex1.wav]
---- a/tests/power.test 2018-12-02 21:58:19.319057755 +0100
-+++ b/tests/power.test 2018-12-02 21:56:48.303543173 +0100
-@@ -14,7 +14,7 @@
- set res [$s power]
- $s destroy
- set res
--} {57.668 58.916 57.992 58.647 58.462 58.415 58.353 58.948 58.897 59.02 58.761 58.745 58.248 58.595 59.158 58.846 58.467 61.37 59.153 59.315 58.301 60.035 59.451 58.963 71.281 71.387 71.13 71.213 71.01 70.635 69.845 68.822 68.986 68.525 67.103 66.664 67.365 67.627 66.72 67.337 67.657 68.365 68.854 68.204 58.26 58.141 66.927 69.789 69.122 69.601 69.076 68.909 69.337 68.621 67.11 65.266 64.678 64.223 61.751 60.287 59.447 57.811 58.444 58.209 57.645 57.279 56.377 56.572 56.467 56.796 57.045 57.735 57.858 57.081 56.943 56.421 54.929 56.202 57.349 57.643 57.477 58.207 57.706 58.385 58.601 59.228 58.694 57.176 57.423 57.733 58.599 58.614 58.771 59.005 58.651 59.077 59.001 58.113 58.374}
-+} {57.668 58.916 57.992 58.647 58.463 58.415 58.353 58.948 58.897 59.02 58.761 58.745 58.248 58.595 59.158 58.846 58.467 61.37 59.153 59.315 58.301 60.035 59.451 58.963 71.281 71.387 71.13 71.213 71.01 70.635 69.845 68.822 68.986 68.525 67.103 66.664 67.365 67.627 66.72 67.337 67.657 68.365 68.854 68.204 58.26 58.141 66.927 69.789 69.122 69.601 69.076 68.909 69.337 68.621 67.11 65.266 64.678 64.223 61.751 60.287 59.447 57.811 58.444 58.209 57.645 57.279 56.377 56.572 56.467 56.796 57.045 57.735 57.858 57.081 56.943 56.421 54.929 56.202 57.349 57.643 57.477 58.207 57.706 58.385 58.601 59.228 58.694 57.176 57.423 57.733 58.599 58.614 58.771 59.005 58.651 59.077 59.001 58.113 58.374}
+--- a/tests/power.test 2020-10-12 21:45:55.843838864 +0200
++++ b/tests/power.test 2020-10-12 21:46:21.732387559 +0200
+@@ -8,14 +8,6 @@
+ namespace import ::tcltest::*
+ }
+-test power-1.1 {power command} {
+- set s [snack::sound snd -load ex1.wav]
+- set tcl_precision 5
+- set res [$s power]
+- $s destroy
+- set res
+-} {57.668 58.916 57.992 58.647 58.462 58.415 58.353 58.948 58.897 59.02 58.761 58.745 58.248 58.595 59.158 58.846 58.467 61.37 59.153 59.315 58.301 60.035 59.451 58.963 71.281 71.387 71.13 71.213 71.01 70.635 69.845 68.822 68.986 68.525 67.103 66.664 67.365 67.627 66.72 67.337 67.657 68.365 68.854 68.204 58.26 58.141 66.927 69.789 69.122 69.601 69.076 68.909 69.337 68.621 67.11 65.266 64.678 64.223 61.751 60.287 59.447 57.811 58.444 58.209 57.645 57.279 56.377 56.572 56.467 56.796 57.045 57.735 57.858 57.081 56.943 56.421 54.929 56.202 57.349 57.643 57.477 58.207 57.706 58.385 58.601 59.228 58.694 57.176 57.423 57.733 58.599 58.614 58.771 59.005 58.651 59.077 59.001 58.113 58.374}
+-
test power-1.2 {power command} {
set s [snack::sound snd -load ex1.wav]
+ set tcl_precision 5
+--- a/tests/mixer.test 2019-05-15 08:41:24.761148030 +0200
++++ b/tests/mixer.test 2019-05-15 08:41:37.902919720 +0200
+@@ -13,12 +13,6 @@
+ set msg
+ } {bad option "junk": must be devices, select, input, inputs, output, outputs, channels, volume, lines, or update}
+
+-test mixer-1.2 {snack::mixer devices command} {
+- set devs [snack::mixer devices]
+- set res [expr [string length $devs] > 0]
+- set res
+-} 1
+-
+ test mixer-1.3 {snack::mixer select command} {
+ catch {snack::mixer select junk} msg
+ set msg
+--- a/tests/audio.test 2019-06-22 19:02:01.803975186 +0200
++++ b/tests/audio.test 2019-06-22 19:04:12.368034556 +0200
+@@ -13,38 +13,16 @@
+ set msg
+ } {bad option "junk": must be outputDevices, inputDevices, selectOutput, selectInput, formats, frequencies, active, play_gain, record_gain, elapsedTime, currentSound, playLatency, scaling, encodings, rates, play, stop, or pause}
+
+-test audio-1.2 {snack::audio outputDevices command} {
+- set devs [snack::audio outputDevices]
+- set res [expr [string length $devs] > 0]
+- set res
+-} 1
+-
+-test audio-1.3 {snack::audio inputDevices command} {
+- set devs [snack::audio inputDevices]
+- set res [expr [string length $devs] > 0]
+- set res
+-} 1
+-
+ test audio-1.4 {snack::audio selectOutput command} {
+ catch {snack::audio selectOutput junk} msg
+ set msg
+ } {No such device: junk}
+
+-test audio-1.5 {snack::audio selectOutput command} {
+- set dev [lindex [snack::audio outputDevices] 0]
+- catch {snack::audio selectOutput $dev}
+-} 0
+-
+ test audio-1.6 {snack::audio selectInput command} {
+ catch {snack::audio selectInput junk} msg
+ set msg
+ } {No such device: junk}
+
+-test audio-1.7 {snack::audio selectInput command} {
+- set dev [lindex [snack::audio inputDevices] 0]
+- catch {snack::audio selectInput $dev}
+-} 0
+-
+ # cleanup
+ ::tcltest::cleanupTests
+ return
+--- a/tests/pitch.test 2020-10-12 21:45:27.248337664 +0200
++++ b/tests/pitch.test 2020-10-12 21:45:47.250988708 +0200
+@@ -22,14 +22,6 @@
+ set res
+ } {141.0 133.0 126.0}
+
+-test pitch-1.3 {pitch command} {
+- set tcl_precision 5
+- set s [snack::sound snd -load ex1.wav]
+- set res [$s pitch -method ESPS]
+- $s destroy
+- set res
+-} {{0.0 0.0 0.0 0.7046} {0.0 0.0 773.7 0.65552} {0.0 0.0 818.08 0.24061} {0.0 0.0 813.13 0.56787} {0.0 0.0 808.39 0.51307} {0.0 0.0 826.01 0.49327} {0.0 0.0 856.56 0.9469} {0.0 0.0 851.72 0.0} {0.0 0.0 869.15 0.48861} {0.0 0.0 842.57 0.39768} {0.0 0.0 839.14 0.4009} {0.0 0.0 820.39 0.81465} {0.0 0.0 833.47 0.95806} {0.0 0.0 855.33 0.89539} {0.0 0.0 852.97 0.28335} {0.0 0.0 889.07 0.59169} {0.0 0.0 1070.5 0.68884} {0.0 0.0 878.41 0.5143} {0.0 0.0 892.74 0.3997} {0.0 0.0 873.53 0.68623} {0.0 0.0 965.13 0.57252} {0.0 0.0 882.69 0.49351} {0.0 0.0 1193.0 0.70511} {209.81 1.0 3304.3 0.88756} {162.78 1.0 3660.9 0.99115} {161.92 1.0 3512.7 0.99646} {158.92 1.0 3547.9 0.99354} {155.91 1.0 3468.7 0.98505} {149.48 1.0 3285.3 0.99364} {143.31 1.0 3008.2 0.98736} {133.77 1.0 2823.7 0.94805} {126.48 1.0 2640.8 0.98759} {119.94 1.0 2333.7 0.9852} {112.98 1.0 2040.5 0.95218} {109.81 1.0 2121.6 0.9571} {107.68 1.0 2418.1 0.92161} {106.6 1.0 2507.3 0.95998} {105.57 1.0 2478.0 0.95695} {105.43 1.0 2671.9 0.96458} {106.74 1.0 2706.6 0.98918} {109.0 1.0 2755.4 0.99448} {111.84 1.0 2717.5 0.97564} {115.73 1.0 2277.5 0.87201} {99.183 1.0 924.36 0.60726} {120.34 1.0 859.79 0.84981} {150.88 1.0 2136.3 0.93803} {136.25 1.0 2838.1 0.98336} {141.73 1.0 2877.0 0.99704} {145.06 1.0 2894.6 0.98906} {146.54 1.0 2749.1 0.98797} {149.82 1.0 2699.5 0.94096} {149.23 1.0 2838.4 0.98879} {146.53 1.0 2630.6 0.95378} {141.86 1.0 2181.0 0.97326} {133.37 1.0 1888.3 0.85003} {124.99 1.0 1660.0 0.94212} {117.97 1.0 1443.6 0.96375} {109.74 1.0 1091.7 0.96917} {103.63 1.0 915.75 0.92499} {111.49 1.0 853.13 0.69573} {107.37 1.0 786.42 0.86455} {93.37 1.0 815.44 0.81332} {123.3 1.0 804.05 0.61468} {84.033 1.0 762.98 0.74945} {121.1 1.0 725.91 0.5574} {114.08 1.0 700.22 0.82347} {101.78 1.0 704.95 0.57994} {103.43 1.0 695.87 0.75774} {101.42 1.0 699.81 0.79472} {105.86 1.0 714.47 0.70127} {0.0 0.0 745.7 0.828} {0.0 0.0 736.31 0.64289} {0.0 0.0 696.35 0.40449} {0.0 0.0 684.65 0.44551} {0.0 0.0 639.58 0.38997} {0.0 0.0 561.77 0.0} {0.0 0.0 627.65 0.34976} {0.0 0.0 717.62 0.38937} {0.0 0.0 748.27 0.41932} {0.0 0.0 750.33 0.86962} {0.0 0.0 783.3 0.82826} {0.0 0.0 761.05 0.20038} {0.0 0.0 809.51 0.35076} {0.0 0.0 831.97 0.7714} {0.0 0.0 872.22 0.67117} {0.0 0.0 826.62 0.6413} {0.0 0.0 717.3 0.0} {0.0 0.0 723.3 0.54415} {0.0 0.0 751.75 0.33728} {0.0 0.0 818.03 0.31209} {0.0 0.0 837.29 0.4341} {0.0 0.0 849.53 0.3289} {0.0 0.0 862.33 0.28854} {0.0 0.0 845.65 0.68362} {0.0 0.0 868.25 0.74526}}
+-
+ test pitch-2.1 {pitch command, with missing argument for -start option} {
+ set s [snack::sound snd -load ex1.wav]
+ catch {$s pitch -start} msg
+--- a/tests/dbpower.test 2020-10-14 19:03:17.821543729 +0200
++++ b/tests/dbpower.test 2020-10-14 19:03:36.234218978 +0200
+@@ -17,15 +17,6 @@
+ set res
+ } {-76.131 -82.843 -107.69 -102.82 -101.37 -102.09 -95.375 -95.568 -95.339 -98.854 -101.56 -98.987 -126.39 -106.92 -107.49 -105.77}
+
+-test dbpower-1.2 {dBPowerSpectrum command, -end option} {
+- set s [snack::sound snd -load ex1.wav]
+- set tcl_precision 5
+- set res [$s dBPowerSpectrum -start 1000 -end 2000 -fftlength 32 \
+- -windowlength 32]
+- $s destroy
+- set res
+-} {-44.938 -51.981 -83.818 -91.582 -95.218 -97.588 -97.686 -99.849 -99.143 -100.16 -102.67 -102.81 -102.91 -104.24 -104.26 -107.86}
+-
+ test dbpower-1.3 {dBPowerSpectrum command, -end and -skip options} {
+ set s [snack::sound snd -load ex1.wav]
+ set tcl_precision 5
+--- a/tests/filter.test 2023-03-17 22:53:35.463977748 +0100
++++ b/tests/filter.test 2023-03-17 22:55:40.931996456 +0100
+@@ -362,27 +362,6 @@
+ set res
+ } {16000 16000 10026 -6287 Lin16 1 RAW 0}
+
+-test filter-7.1 {iir filter, applied to sound} {
+- set s [snack::sound snd -load ex1.wav]
+- set f [snack::filter iir -numerator "0.99 -0.99" -denominator "1 -0.99"]
+- $s filter $f -continuedrain 0
+- set res [$s info]
+- $f destroy
+- $s destroy
+- set res
+-} {15820 16000 13222 -9615 Lin16 1 WAV 44}
+-
+-test filter-7.2 {iir filter, applied to stereo sound} {
+- set s [snack::sound snd -load ex1.wav]
+- $s convert -channels 2
+- set f [snack::filter iir -numerator "0.99 -0.99" -denominator "1 -0.99"]
+- $s filter $f -continuedrain 0
+- set res [$s info]
+- $f destroy
+- $s destroy
+- set res
+-} {15820 16000 13222 -9616 Lin16 2 WAV 44}
+-
+ test filter-8.1 {fade filter, applied to sound} {
+ set s [snack::sound snd -rate 4000]
+ $s length 4
diff --git a/dev-tcltk/snack/files/snack2.2.10-seektell-fix.patch b/dev-tcltk/snack/files/snack2.2.10-seektell-fix.patch
new file mode 100644
index 000000000000..3519b12c85d0
--- /dev/null
+++ b/dev-tcltk/snack/files/snack2.2.10-seektell-fix.patch
@@ -0,0 +1,12 @@
+diff -up snack2.2.10/generic/jkSound.h.seektell snack2.2.10/generic/jkSound.h
+--- snack2.2.10/generic/jkSound.h.seektell 2019-07-30 16:01:37.310992628 -0400
++++ snack2.2.10/generic/jkSound.h 2019-07-30 16:02:29.859840865 -0400
+@@ -603,7 +603,7 @@ extern void Snack_RemoveOptions(int objc
+
+ extern void SnackPauseAudio();
+
+-#if TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 4
++#if 1 || TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 4
+ #define TCL_SEEK Tcl_Seek
+ #define TCL_TELL Tcl_Tell
+ #else
diff --git a/dev-tcltk/snack/files/tcl-snack-2.2.10-python3.patch b/dev-tcltk/snack/files/tcl-snack-2.2.10-python3.patch
new file mode 100644
index 000000000000..63c13885b637
--- /dev/null
+++ b/dev-tcltk/snack/files/tcl-snack-2.2.10-python3.patch
@@ -0,0 +1,385 @@
+diff -up snack2.2.10/demos/python/dataCmd.py.py3 snack2.2.10/demos/python/dataCmd.py
+--- snack2.2.10/demos/python/dataCmd.py.py3 2018-10-04 15:46:14.974999306 -0400
++++ snack2.2.10/demos/python/dataCmd.py 2018-10-04 15:46:50.295216897 -0400
+@@ -1,7 +1,12 @@
+ #! /usr/bin/env python
+ # -*- coding: iso-8859-1 -*-
+
+-import Tkinter
++import sys
++if sys.version_info[0] == 2:
++ import Tkinter
++else:
++ import tkinter as Tkinter
++
+ import tkSnack
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/echo.py.py3 snack2.2.10/demos/python/echo.py
+--- snack2.2.10/demos/python/echo.py.py3 2018-10-04 15:46:59.535012224 -0400
++++ snack2.2.10/demos/python/echo.py 2018-10-04 15:47:37.093180236 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/generator.py.py3 snack2.2.10/demos/python/generator.py
+--- snack2.2.10/demos/python/generator.py.py3 2018-10-04 15:47:47.332953411 -0400
++++ snack2.2.10/demos/python/generator.py 2018-10-04 15:48:06.435530261 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/MinSect.py.py3 snack2.2.10/demos/python/MinSect.py
+--- snack2.2.10/demos/python/MinSect.py.py3 2018-10-04 15:48:16.444308540 -0400
++++ snack2.2.10/demos/python/MinSect.py 2018-10-04 15:48:45.907655882 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/MinSpeg.py.py3 snack2.2.10/demos/python/MinSpeg.py
+--- snack2.2.10/demos/python/MinSpeg.py.py3 2018-10-04 15:48:57.586397173 -0400
++++ snack2.2.10/demos/python/MinSpeg.py 2018-10-04 15:49:16.562976809 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/MinWave.py.py3 snack2.2.10/demos/python/MinWave.py
+--- snack2.2.10/demos/python/MinWave.py.py3 2018-10-04 15:49:26.578754945 -0400
++++ snack2.2.10/demos/python/MinWave.py 2018-10-04 15:49:39.057478518 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/mixplay.py.py3 snack2.2.10/demos/python/mixplay.py
+--- snack2.2.10/demos/python/mixplay.py.py3 2018-10-04 15:49:49.602244931 -0400
++++ snack2.2.10/demos/python/mixplay.py 2018-10-04 15:50:04.440916236 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/notescale.py.py3 snack2.2.10/demos/python/notescale.py
+--- snack2.2.10/demos/python/notescale.py.py3 2018-10-04 15:50:13.624712803 -0400
++++ snack2.2.10/demos/python/notescale.py 2018-10-04 15:50:30.640335876 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/oggplay.py.py3 snack2.2.10/demos/python/oggplay.py
+--- snack2.2.10/demos/python/oggplay.py.py3 2018-10-04 15:50:40.330121229 -0400
++++ snack2.2.10/demos/python/oggplay.py 2018-10-04 15:51:35.127907369 -0400
+@@ -5,8 +5,13 @@
+ # Note: this script will also play audio files in any other format supported
+ # by tkSnack
+
++from __future__ import print_function
+ import sys
+-from Tkinter import *
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ initializeSnack(Tkinter.Tk())
+@@ -19,4 +24,4 @@ if sys.argv[1:]:
+ snd = Sound(file=sys.argv[1])
+ snd.play(blocking=1)
+ else:
+- print "Usage: oggplay.py file.ogg"
++ print("Usage: oggplay.py file.ogg")
+diff -up snack2.2.10/demos/python/playnotes.py.py3 snack2.2.10/demos/python/playnotes.py
+--- snack2.2.10/demos/python/playnotes.py.py3 2018-10-04 15:51:44.431701277 -0400
++++ snack2.2.10/demos/python/playnotes.py 2018-10-04 15:52:01.623320444 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/polarspec.py.py3 snack2.2.10/demos/python/polarspec.py
+--- snack2.2.10/demos/python/polarspec.py.py3 2018-10-04 15:52:11.479102123 -0400
++++ snack2.2.10/demos/python/polarspec.py 2018-10-04 15:52:24.654810263 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+ from math import *
+
+diff -up snack2.2.10/demos/python/spectrogram.py.py3 snack2.2.10/demos/python/spectrogram.py
+--- snack2.2.10/demos/python/spectrogram.py.py3 2018-10-04 15:52:35.462570856 -0400
++++ snack2.2.10/demos/python/spectrogram.py 2018-10-04 15:52:49.101268729 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/demos/python/sphere.py.py3 snack2.2.10/demos/python/sphere.py
+--- snack2.2.10/demos/python/sphere.py.py3 2018-10-04 15:52:57.679078718 -0400
++++ snack2.2.10/demos/python/sphere.py 2018-10-04 15:53:36.557217499 -0400
+@@ -1,6 +1,12 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++from __future__ import print_function
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+@@ -15,11 +21,11 @@ snd = Sound()
+
+ file = 'test.sph'
+
+-print 'reading sphere file \'%s\'' % file
++print('reading sphere file \'%s\'' % file)
+ snd.read(file)
+
+-print 'playing file \'%s\'' % file
++print('playing file \'%s\'' % file)
+ snd.play(blocking=1)
+
+-print 'writing wav file \'%s\'' % file
++print('writing wav file \'%s\'' % file)
+ snd.write('new.wav')
+diff -up snack2.2.10/demos/python/tkSnack.py.py3 snack2.2.10/demos/python/tkSnack.py
+--- snack2.2.10/demos/python/tkSnack.py.py3 2018-10-04 15:53:45.815012427 -0400
++++ snack2.2.10/demos/python/tkSnack.py 2018-10-04 15:56:03.873998084 -0400
+@@ -7,8 +7,14 @@ by Kevin Russell and Kare Sjolander
+ last modified: Mar 28, 2003
+ """
+
+-import Tkinter
+-import types
++from __future__ import print_function
++
++import sys
++if sys.version_info[0] == 2:
++ import Tkinter
++else:
++ import tkinter as Tkinter
++
+ import string
+
+ Tkroot = None
+@@ -20,7 +26,8 @@ def initializeSnack(newroot):
+ Tkroot = newroot
+ Tkroot.tk.call('eval', 'package require snack')
+ Tkroot.tk.call('snack::createIcons')
+- Tkroot.tk.call('snack::setUseOldObjAPI')
++ if sys.version_info[0] == 2:
++ Tkroot.tk.call('snack::setUseOldObjAPI')
+ audio = AudioControllerSingleton()
+ mixer = MixerControllerSingleton()
+
+@@ -92,7 +99,7 @@ class TkObject:
+ self.tk.call(self.name, 'configure')):
+ cnf[x[0][1:]] = (x[0][1:],) + x[1:]
+ return cnf
+- if type(cnf) is types.StringType:
++ if isinstance(cnf, str):
+ x = self.tk.split(self.tk.call(self.name, 'configure', '-'+cnf))
+ return (x[0][1:],) + x[1:]
+ self.tk.call((self.name, 'configure') + self._options(cnf))
+@@ -124,8 +131,7 @@ class Sound (TkObject):
+ if Tkroot:
+ master = Tkroot
+ else:
+- raise RuntimeError, \
+- 'Tk not intialized or not registered with Snack'
++ raise RuntimeError('Tk not intialized or not registered with Snack')
+ self.tk = master.tk
+ if not name:
+ self.name = self.tk.call(('sound',) + self._options(kw))
+@@ -409,8 +415,7 @@ class Filter(TkObject):
+ if Tkroot:
+ master = Tkroot
+ else:
+- raise RuntimeError, \
+- 'Tk not intialized or not registered with Snack'
++ raise RuntimeError('Tk not intialized or not registered with Snack'
+ self.tk = master.tk
+ self.name = self.tk.call(('snack::filter', name) + args +
+ self._options(kw))
+@@ -537,7 +542,7 @@ class SoundFrame(Tkinter.Frame):
+ self.sound.record()
+
+ def info(self):
+- print self.sound.info()
++ print(self.sound.info())
+
+ def createSpectrogram(canvas, *args, **kw):
+ """Draws a spectrogram of a sound on canvas."""
+diff -up snack2.2.10/demos/python/widget.py.py3 snack2.2.10/demos/python/widget.py
+--- snack2.2.10/demos/python/widget.py.py3 2018-10-04 15:56:11.263837964 -0400
++++ snack2.2.10/demos/python/widget.py 2018-10-04 15:56:28.360467507 -0400
+@@ -1,6 +1,11 @@
+ #! /usr/bin/env python
+
+-from Tkinter import *
++import sys
++if sys.version_info[0] == 2:
++ from Tkinter import *
++else:
++ from tkinter import *
++
+ from tkSnack import *
+
+ root = Tkinter.Tk()
+diff -up snack2.2.10/python/tkSnack.py.py3 snack2.2.10/python/tkSnack.py
+--- snack2.2.10/python/tkSnack.py.py3 2018-10-04 15:56:37.537268660 -0400
++++ snack2.2.10/python/tkSnack.py 2018-10-04 15:58:47.358455670 -0400
+@@ -7,8 +7,14 @@ by Kevin Russell and Kare Sjolander
+ last modified: Mar 28, 2003
+ """
+
+-import Tkinter
+-import types
++from __future__ import print_function
++
++import sys
++if sys.version_info[0] == 2:
++ import Tkinter
++else:
++ import tkinter as Tkinter
++
+ import string
+
+ Tkroot = None
+@@ -20,7 +26,8 @@ def initializeSnack(newroot):
+ Tkroot = newroot
+ Tkroot.tk.call('eval', 'package require snack')
+ Tkroot.tk.call('snack::createIcons')
+- Tkroot.tk.call('snack::setUseOldObjAPI')
++ if sys.version_info[0] == 2:
++ Tkroot.tk.call('snack::setUseOldObjAPI')
+ audio = AudioControllerSingleton()
+ mixer = MixerControllerSingleton()
+
+@@ -92,7 +99,7 @@ class TkObject:
+ self.tk.call(self.name, 'configure')):
+ cnf[x[0][1:]] = (x[0][1:],) + x[1:]
+ return cnf
+- if type(cnf) is types.StringType:
++ if isinstance(cnf, str):
+ x = self.tk.split(self.tk.call(self.name, 'configure', '-'+cnf))
+ return (x[0][1:],) + x[1:]
+ self.tk.call((self.name, 'configure') + self._options(cnf))
+@@ -124,8 +131,7 @@ class Sound (TkObject):
+ if Tkroot:
+ master = Tkroot
+ else:
+- raise RuntimeError, \
+- 'Tk not intialized or not registered with Snack'
++ raise RuntimeError('Tk not intialized or not registered with Snack')
+ self.tk = master.tk
+ if not name:
+ self.name = self.tk.call(('sound',) + self._options(kw))
+@@ -409,8 +415,7 @@ class Filter(TkObject):
+ if Tkroot:
+ master = Tkroot
+ else:
+- raise RuntimeError, \
+- 'Tk not intialized or not registered with Snack'
++ raise RuntimeError('Tk not intialized or not registered with Snack')
+ self.tk = master.tk
+ self.name = self.tk.call(('snack::filter', name) + args +
+ self._options(kw))
+@@ -537,7 +542,7 @@ class SoundFrame(Tkinter.Frame):
+ self.sound.record()
+
+ def info(self):
+- print self.sound.info()
++ print(self.sound.info())
+
+ def createSpectrogram(canvas, *args, **kw):
+ """Draws a spectrogram of a sound on canvas."""
diff --git a/dev-tcltk/snack/metadata.xml b/dev-tcltk/snack/metadata.xml
index 227dda5ba584..7c79d6b524d2 100644
--- a/dev-tcltk/snack/metadata.xml
+++ b/dev-tcltk/snack/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/snack/snack-2.2.10-r8.ebuild b/dev-tcltk/snack/snack-2.2.10-r11.ebuild
index 773eb22926a0..1c38016a77ef 100644
--- a/dev-tcltk/snack/snack-2.2.10-r8.ebuild
+++ b/dev-tcltk/snack/snack-2.2.10-r11.ebuild
@@ -1,20 +1,25 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-PYTHON_COMPAT=( python2_7 pypy )
+PYTHON_COMPAT=( python3_{9,10} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=yes
-inherit autotools distutils-r1 multilib virtualx
+inherit distutils-r1 flag-o-matic toolchain-funcs virtualx
DESCRIPTION="The Snack Sound Toolkit (Tcl)"
HOMEPAGE="http://www.speech.kth.se/snack/"
SRC_URI="http://www.speech.kth.se/snack/dist/${PN}${PV}.tar.gz"
+S="${WORKDIR}/${PN}${PV}/unix"
+
LICENSE="GPL-2"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
SLOT="0"
+KEYWORDS="amd64 ~hppa ppc sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="alsa examples python vorbis"
+RESTRICT="!test? ( test )"
DEPEND="
dev-lang/tcl:0=
@@ -23,14 +28,24 @@ DEPEND="
python? ( ${PYTHON_DEPS} )
vorbis? ( media-libs/libvorbis )"
RDEPEND="${DEPEND}"
+BDEPEND="python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+)"
-S="${WORKDIR}/${PN}${PV}/unix"
+REQUIRED_USE=${PYTHON_REQUIRED_USE}
PATCHES=(
"${FILESDIR}"/alsa-undef-sym.patch
"${FILESDIR}"/${P}-CVE-2012-6303-fix.patch
"${FILESDIR}"/${P}-debian-args.patch
"${FILESDIR}"/${P}-test.patch
+ "${FILESDIR}"/${PN}${PV}-seektell-fix.patch
+ "${FILESDIR}"/tcl-${P}-python3.patch
+ "${FILESDIR}"/${P}-lto.patch
+ "${FILESDIR}"/${P}-configure-clang16.patch
+ "${FILESDIR}"/${P}-implicit.patch
+ "${FILESDIR}"/${P}-parallelMake.patch
)
HTML_DOCS="${WORKDIR}/${PN}${PV}/doc/*"
@@ -41,7 +56,7 @@ src_prepare() {
sed \
-e "s:ar cr:$(tc-getAR) cr:g" \
- -e "s:-O:${CFLAGS}:g" \
+ -e "s|-O|${CFLAGS}|g" \
-i Makefile.in || die
cd ..
@@ -52,9 +67,16 @@ src_prepare() {
-e 's|^\(#define roundf(.*\)|//\1|' \
-i generic/jkFormatMP3.c || die
rm tests/{play,record}.test || die
+ if use python; then
+ cd python
+ distutils-r1_src_prepare
+ fi
}
src_configure() {
+ # For Clang 16, bunch of -Wimplicit-int, etc
+ append-flags -std=gnu89
+
local myconf=""
use alsa && myconf+=" --enable-alsa"
@@ -70,14 +92,23 @@ src_configure() {
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
--with-tk="${EPREFIX}"/usr/$(get_libdir) \
$myconf
+ if use python; then
+ cd ../python
+ distutils-r1_src_configure
+ fi
}
src_compile() {
default
+ if use python; then
+ cd ../python
+ distutils-r1_src_compile
+ fi
}
src_test() {
- TCLLIBPATH=${S} virtx default | grep FAILED && die
+ TCLLIBPATH=${S} virtx default | tee snack.testResult
+ grep -q FAILED snack.testResult && die
}
src_install() {
diff --git a/dev-tcltk/snack/snack-2.2.10-r7.ebuild b/dev-tcltk/snack/snack-2.2.10-r13.ebuild
index 8e0d447a69cd..2e42ff833080 100644
--- a/dev-tcltk/snack/snack-2.2.10-r7.ebuild
+++ b/dev-tcltk/snack/snack-2.2.10-r13.ebuild
@@ -1,22 +1,25 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-PYTHON_COMPAT=( python2_7 pypy )
+PYTHON_COMPAT=( python3_{9..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=yes
-inherit autotools distutils-r1 multilib
+inherit distutils-r1 flag-o-matic toolchain-funcs virtualx
DESCRIPTION="The Snack Sound Toolkit (Tcl)"
HOMEPAGE="http://www.speech.kth.se/snack/"
SRC_URI="http://www.speech.kth.se/snack/dist/${PN}${PV}.tar.gz"
+S="${WORKDIR}/${PN}${PV}/unix"
LICENSE="GPL-2"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
SLOT="0"
+KEYWORDS="amd64 ~arm64 ~hppa ppc sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="alsa examples python vorbis"
-RESTRICT="test" # Bug 78354
+RESTRICT="!test? ( test )"
DEPEND="
dev-lang/tcl:0=
@@ -25,13 +28,26 @@ DEPEND="
python? ( ${PYTHON_DEPS} )
vorbis? ( media-libs/libvorbis )"
RDEPEND="${DEPEND}"
+BDEPEND="python? (
+ ${PYTHON_DEPS}
+ ${DISTUTILS_DEPS}
+)"
-S="${WORKDIR}/${PN}${PV}/unix"
+REQUIRED_USE=${PYTHON_REQUIRED_USE}
PATCHES=(
"${FILESDIR}"/alsa-undef-sym.patch
"${FILESDIR}"/${P}-CVE-2012-6303-fix.patch
- )
+ "${FILESDIR}"/${P}-debian-args.patch
+ "${FILESDIR}"/${P}-test.patch
+ "${FILESDIR}"/${PN}${PV}-seektell-fix.patch
+ "${FILESDIR}"/tcl-${P}-python3.patch
+ "${FILESDIR}"/${P}-lto.patch
+ "${FILESDIR}"/${P}-configure-clang16.patch
+ "${FILESDIR}"/${P}-implicit.patch
+ "${FILESDIR}"/${P}-parallelMake.patch
+ "${FILESDIR}"/${P}-py3.8.patch
+)
HTML_DOCS="${WORKDIR}/${PN}${PV}/doc/*"
@@ -41,7 +57,7 @@ src_prepare() {
sed \
-e "s:ar cr:$(tc-getAR) cr:g" \
- -e "s:-O:${CFLAGS}:g" \
+ -e "s|-O|${CFLAGS}|g" \
-i Makefile.in || die
cd ..
@@ -51,9 +67,17 @@ src_prepare() {
sed \
-e 's|^\(#define roundf(.*\)|//\1|' \
-i generic/jkFormatMP3.c || die
+ rm tests/{play,record}.test || die
+ if use python; then
+ cd python
+ distutils-r1_src_prepare
+ fi
}
src_configure() {
+ # For Clang 16, bunch of -Wimplicit-int, etc
+ append-flags -std=gnu89
+
local myconf=""
use alsa && myconf+=" --enable-alsa"
@@ -69,13 +93,24 @@ src_configure() {
--with-tcl="${EPREFIX}"/usr/$(get_libdir) \
--with-tk="${EPREFIX}"/usr/$(get_libdir) \
$myconf
+ if use python; then
+ cd ../python
+ distutils-r1_src_configure
+ fi
}
src_compile() {
default
+ if use python; then
+ cd ../python
+ distutils-r1_src_compile
+ fi
}
-HTMML_DOCS=""
+src_test() {
+ TCLLIBPATH=${S} virtx default | tee snack.testResult
+ grep -q FAILED snack.testResult && die
+}
src_install() {
default
diff --git a/dev-tcltk/snack/snack-2.2.10-r6.ebuild b/dev-tcltk/snack/snack-2.2.10-r6.ebuild
deleted file mode 100644
index d7af7b86d79e..000000000000
--- a/dev-tcltk/snack/snack-2.2.10-r6.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 pypy )
-
-inherit autotools autotools-utils distutils-r1 multilib
-
-DESCRIPTION="The Snack Sound Toolkit (Tcl)"
-HOMEPAGE="http://www.speech.kth.se/snack/"
-SRC_URI="http://www.speech.kth.se/snack/dist/${PN}${PV}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-SLOT="0"
-IUSE="alsa examples python threads vorbis"
-
-RESTRICT="test" # Bug 78354
-
-DEPEND="
- dev-lang/tcl:0=
- dev-lang/tk:0=
- alsa? ( media-libs/alsa-lib )
- python? ( ${PYTHON_DEPS} )
- vorbis? ( media-libs/libvorbis )"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}${PV}/unix"
-
-#PYTHON_MODNAME="tkSnack.py"
-
-AUTOTOOLS_IN_SOURCE_BUILD=1
-
-PATCHES=(
- "${FILESDIR}"/alsa-undef-sym.patch
- "${FILESDIR}"/${P}-CVE-2012-6303-fix.patch
- )
-
-src_prepare() {
- # adds -install_name (soname on Darwin)
- [[ ${CHOST} == *-darwin* ]] && PATCHES+=( "${FILESDIR}"/${P}-darwin.patch )
-
- sed \
- -e "s:ar cr:$(tc-getAR) cr:g" \
- -e "s:-O:${CFLAGS}:g" \
- -i Makefile.in || die
-
- cd .. || die
-
- autotools-utils_src_prepare
-
- sed \
- -e 's|^\(#define roundf(.*\)|//\1|' \
- -i generic/jkFormatMP3.c || die
-}
-
-src_configure() {
- local myeconfargs=(
- --libdir="${EPREFIX}"/usr/$(get_libdir)
- --includedir="${EPREFIX}"/usr/include
- )
-
- use alsa && myconf+=( --enable-alsa )
- use threads && myconf+=( --enable-threads )
-
- use vorbis && \
- myconf+=( --with-ogg-include="${EPREFIX}"/usr/include ) && \
- myconf+=( --with-ogg-lib="${EPREFIX}"/usr/$(get_libdir) )
-
- autotools-utils_src_configure
-}
-
-src_compile() {
- autotools-utils_src_compile
-}
-
-src_install() {
- autotools-utils_src_install
-
- if use python ; then
- cd "${S}"/../python || die
- distutils-r1_src_install
- fi
-
- cd "${S}"/.. || die
-
- dohtml doc/*
-
- if use examples ; then
- docinto examples
- sed -i -e 's/wish[0-9.]+/wish/g' demos/tcl/* || die
- dodoc -r demos/tcl
-
- use python && dodoc -r demos/python
- fi
-}
diff --git a/dev-tcltk/tablelist/Manifest b/dev-tcltk/tablelist/Manifest
index 2463742f662a..a1791fc1b48b 100644
--- a/dev-tcltk/tablelist/Manifest
+++ b/dev-tcltk/tablelist/Manifest
@@ -1,2 +1 @@
-DIST tablelist5.8.tar.gz 416416 BLAKE2B 04372aab25af72d331da342aa85f49238ee39fe15da3f1f418e5345561b8feb6b6974b3a956f6d8d49063767030d60f01ce5207caa446b8f1936667aaca0155a SHA512 9c8e3577ae0e89291450c7ecccbbb042417d9a24255489e9257eae2b48454cbef4ec759949ddfc8d73123260da3fc506e01acf6c15e113e5112ed15c014d6833
-DIST tablelist6.3.tar.gz 551180 BLAKE2B cb9181e052d5c63bf2ada068e31b1ba637001bb4da6ce9303c8227cff20d1a8df3c2bc59689a86593d1de59e54f3b1de534c049930c4f01ab705d24263a9cdf5 SHA512 4a5331a9e84dcfb1ecb025dceb82a188f33d14dc91f960e7dbdf17a9ad14a3700f56f84a1af0edc3ea912f92b167524946e01c8c52fc053d106536658013bfb0
+DIST tablelist6.15.1.tar.gz 620701 BLAKE2B 09cf2e33f01db8fac1c5aaf11274eb61f945efe87a36787e4a52ea31cdf916893c6846b512dca26dc0153b975e89ec7d7d64307757aef7e9739885406f5aa77e SHA512 0464adf26feda2fac23f7b7a757031367545edc1e1a5c5d568e377f1f4bd05f41338954c5c9df5f75b5c3708024679e93190be3b8a469fc75ca3882666ef132e
diff --git a/dev-tcltk/tablelist/metadata.xml b/dev-tcltk/tablelist/metadata.xml
index 8425c0d53cb0..c0cd18916a93 100644
--- a/dev-tcltk/tablelist/metadata.xml
+++ b/dev-tcltk/tablelist/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>sci@gentoo.org</email>
- <name>Gentoo Science Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/dev-tcltk/tablelist/tablelist-5.8.ebuild b/dev-tcltk/tablelist/tablelist-5.8.ebuild
deleted file mode 100644
index 13227dd19379..000000000000
--- a/dev-tcltk/tablelist/tablelist-5.8.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib
-
-MY_P="${PN}${PV}"
-
-DESCRIPTION="Multi-Column Listbox Package"
-HOMEPAGE="http://www.nemethi.de/tablelist/index.html"
-SRC_URI="http://www.nemethi.de/tablelist/${MY_P}.tar.gz"
-
-LICENSE="tablelist"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
-IUSE="examples doc"
-
-RDEPEND="dev-lang/tcl:0"
-DEPEND=""
-
-S="${WORKDIR}/${MY_P}"
-
-src_install() {
- insinto /usr/$(get_libdir)/${MY_P}
- doins -r ${PN}* pkgIndex.tcl scripts
- use doc && dohtml doc/*
- use examples && insinto /usr/share/${PN} && doins -r demos
- dodoc README.txt
-}
diff --git a/dev-tcltk/tablelist/tablelist-6.3.ebuild b/dev-tcltk/tablelist/tablelist-6.15.1.ebuild
index dc1dcd291151..238621e5bb3b 100644
--- a/dev-tcltk/tablelist/tablelist-6.3.ebuild
+++ b/dev-tcltk/tablelist/tablelist-6.15.1.ebuild
@@ -1,30 +1,26 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-
-inherit multilib
+EAPI=8
MY_P="${PN}${PV}"
DESCRIPTION="Multi-Column Listbox Package"
HOMEPAGE="http://www.nemethi.de/tablelist/index.html"
SRC_URI="http://www.nemethi.de/tablelist/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="tablelist"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
IUSE="examples doc"
RDEPEND="dev-lang/tcl:0"
-DEPEND=""
-
-S="${WORKDIR}/${MY_P}"
src_install() {
insinto /usr/$(get_libdir)/${MY_P}
doins -r ${PN}* pkgIndex.tcl scripts
use examples && dodoc -r demos
- use doc && docinto html && dodoc -r doc/*
+ use doc && docinto html && dodoc -r doc/.
einstalldocs
}
diff --git a/dev-tcltk/tcl-mccp/Manifest b/dev-tcltk/tcl-mccp/Manifest
deleted file mode 100644
index 2deba05e7008..000000000000
--- a/dev-tcltk/tcl-mccp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tcl-mccp-0.6.tar.gz 167446 BLAKE2B 6ebd6fb6fbaa8cd8c6438dd21e38fd19fca47c1e0c7e96c33fc183e7be2d2c42fbfb2b3225e49243c941a1f018d6efbef3183ef736a52117e2e3cf01d1698aec SHA512 d3f77b49454dc4f838b91d95146c71d6f8d46d293743b46b551e9217a92a9f6b03b26400cc21faf9bb22a0a0f92123b25f9b284453f756654e87b82201c395e6
diff --git a/dev-tcltk/tcl-mccp/files/tcl-mccp-0.6-flags.patch b/dev-tcltk/tcl-mccp/files/tcl-mccp-0.6-flags.patch
deleted file mode 100644
index b3b563d3d7c1..000000000000
--- a/dev-tcltk/tcl-mccp/files/tcl-mccp-0.6-flags.patch
+++ /dev/null
@@ -1,18 +0,0 @@
- Makefile.in | 4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 956887d..4af7a06 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -91,8 +91,8 @@ lib_LTLIBRARIES = libtcl-mccp.la
- libtcl_mccp_la_SOURCES = MCCP.c mccpDecompress.c
- lib_DATA = pkgIndex.tcl
-
--CFLAGS := -Wall -I $(TCL_PREFIX)/include -lz
--LIBS := $(TCL_STUB_LIB_SPEC)
-+CFLAGS += -Wall -I $(TCL_PREFIX)/include
-+LIBS += $(TCL_STUB_LIB_SPEC) -lz
-
- # FIXME: is this the right way to mofify libdir?
- libdir = @libdir@/tcl-mccp
diff --git a/dev-tcltk/tcl-mccp/metadata.xml b/dev-tcltk/tcl-mccp/metadata.xml
deleted file mode 100644
index 368a0ae4c4a9..000000000000
--- a/dev-tcltk/tcl-mccp/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>Gentoo Tcltk Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">tcl-mccp</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-tcltk/tcl-mccp/tcl-mccp-0.6.ebuild b/dev-tcltk/tcl-mccp/tcl-mccp-0.6.ebuild
deleted file mode 100644
index 8af98e3f15c7..000000000000
--- a/dev-tcltk/tcl-mccp/tcl-mccp-0.6.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools-utils
-
-DESCRIPTION="mccp extension to TCL"
-HOMEPAGE="http://tcl-mccp.sf.net/"
-SRC_URI="mirror://sourceforge/tcl-mccp/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
-IUSE="static-libs"
-
-DEPEND="dev-lang/tcl:0="
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}"/${P}-flags.patch )
diff --git a/dev-tcltk/tcl3d/Manifest b/dev-tcltk/tcl3d/Manifest
index 651bffad7d85..7df440c2bda3 100644
--- a/dev-tcltk/tcl3d/Manifest
+++ b/dev-tcltk/tcl3d/Manifest
@@ -1,2 +1 @@
-DIST tcl3d-src-0.4.0.zip 1501305 BLAKE2B 61fe35df0bf5624ef5fbd7fa029b8ad7a23ed6304bd5da8b8bb035b94ad6311ad3868793b7ea5a464d990cfaee98af88ef6d398dddbdba4e89d894005e5ce9ed SHA512 a8a525693bc45e9fb9e2167e2121d300ff60534f2bced33bb068a1075cfd8e8281dd97bd7fb432b9d6a95cdb37fc3da03c82dd1ee20e368fb8ac249ea54c30a5
DIST tcl3d-src-0.5.0.zip 3936271 BLAKE2B 97bd3815c05254162d8af4b2029dd2ac4218ed4bfb94e19a6454f41c12953b48f616444e466dda5359433f84a9284a2e20316b6c97b0e3a20deada47f583510c SHA512 24f799d5cc0ad9daf060b6b723d1197be678c0716b2099287e004221889c56da03f7368d6cd4c47dbbbbfe936b0bf65366cd452d3d9c2335cdfbae6ff3860a29
diff --git a/dev-tcltk/tcl3d/files/tcl3d-0.5.0-implicit.patch b/dev-tcltk/tcl3d/files/tcl3d-0.5.0-implicit.patch
new file mode 100644
index 000000000000..bdd02a0fbf50
--- /dev/null
+++ b/dev-tcltk/tcl3d/files/tcl3d-0.5.0-implicit.patch
@@ -0,0 +1,10 @@
+--- a/tcl3dOgl/swigfiles/tcl3dOgl.i 2023-01-17 12:19:29.845765609 +0100
++++ b/tcl3dOgl/swigfiles/tcl3dOgl.i 2023-01-17 12:21:51.336490329 +0100
+@@ -31,6 +31,7 @@
+
+ %{
+ #include <tk.h>
++#include "Togl/togl.h"
+ %}
+
+ %init %{
diff --git a/dev-tcltk/tcl3d/metadata.xml b/dev-tcltk/tcl3d/metadata.xml
index 2b1fbebe51e1..969f63152bd5 100644
--- a/dev-tcltk/tcl3d/metadata.xml
+++ b/dev-tcltk/tcl3d/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tcl3d/tcl3d-0.4.0-r1.ebuild b/dev-tcltk/tcl3d/tcl3d-0.4.0-r1.ebuild
deleted file mode 100644
index c424262b15bb..000000000000
--- a/dev-tcltk/tcl3d/tcl3d-0.4.0-r1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit flag-o-matic multilib toolchain-funcs
-
-DESCRIPTION="Tcl bindings to OpenGL and other 3D libraries"
-HOMEPAGE="http://www.tcl3d.org"
-SRC_URI="http://www.tcl3d.org/download/${P}.distrib/${PN}-src-${PV}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug"
-
-RDEPEND="
- dev-games/ode
- dev-lang/tk:0=
- dev-lang/tcl:0=
- media-libs/libsdl
- media-libs/ftgl
- virtual/opengl
- x11-libs/libXmu
-"
-DEPEND="${RDEPEND}
- >=dev-lang/swig-1.3.19"
-
-S="${WORKDIR}/${PN}"
-
-src_prepare() {
- TCL_VERSION=( $(echo 'puts [info tclversion]' | tclsh | tr '.' ' ') )
- einfo "Configuring for Tcl ${TCL_VERSION[0]}.${TCL_VERSION[1]}"
- sed -i \
- -e 's:^\(TCLMAJOR\) *=\(.*\)$:\1 = '${TCL_VERSION[0]}':' \
- -e 's:^\(TCLMINOR\) *=\(.*\)$:\1 = '${TCL_VERSION[1]}':' \
- config_Linux* || die
-
- # fix libSDL link
- sed -i \
- -e 's:-lSDL-1\.2:-lSDL:g' \
- tcl3dSDL/Makefile || die
-}
-
-src_compile() {
- append-flags -mieee-fp -ffloat-store -fPIC
- use debug || append-flags -DNDEBUG
-
- emake \
- INSTDIR="/usr" OPT="${CFLAGS}" CC="$(tc-getCC) -c" \
- CXX="$(tc-getCXX) -c" LD="$(tc-getLD)" \
- WRAP_FTGL=1 WRAP_SDL=1 WRAP_GL2PS=0 WRAP_ODE=1
-}
-
-src_install() {
- emake INSTDIR="${D}/usr" DESTDIR="${D}" INSTLIB="${D}/usr/$(get_libdir)" install
-}
diff --git a/dev-tcltk/tcl3d/tcl3d-0.4.0.ebuild b/dev-tcltk/tcl3d/tcl3d-0.4.0.ebuild
deleted file mode 100644
index 349309c5a5ad..000000000000
--- a/dev-tcltk/tcl3d/tcl3d-0.4.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit flag-o-matic multilib toolchain-funcs
-
-DESCRIPTION="Tcl bindings to OpenGL and other 3D libraries"
-HOMEPAGE="http://www.tcl3d.org"
-SRC_URI="http://www.tcl3d.org/download/${P}.distrib/${PN}-src-${PV}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug"
-
-RDEPEND="
- dev-games/ode
- dev-lang/tk:0=
- dev-lang/tcl:0=
- media-libs/libsdl
- media-libs/ftgl
- virtual/opengl
- x11-libs/libXmu
-"
-DEPEND="${RDEPEND}
- >=dev-lang/swig-1.3.19"
-
-S="${WORKDIR}/${PN}"
-
-src_prepare() {
- TCL_VERSION=( $(echo 'puts [info tclversion]' | tclsh | tr '.' ' ') )
- einfo "Configuring for Tcl ${TCL_VERSION[0]}.${TCL_VERSION[1]}"
- sed -i \
- -e 's:^\(TCLMAJOR\) *=\(.*\)$:\1 = '${TCL_VERSION[0]}':' \
- -e 's:^\(TCLMINOR\) *=\(.*\)$:\1 = '${TCL_VERSION[1]}':' \
- config_Linux* || die
-
- # fix libSDL link
- sed -i \
- -e 's:-lSDL-1\.2:-lSDL:g' \
- tcl3dSDL/Makefile || die
-}
-
-src_compile() {
- append-flags -mieee-fp -ffloat-store -fPIC
- use debug || append-flags -DNDEBUG
-
- emake \
- INSTDIR="/usr" OPT="${CFLAGS}" CC="$(tc-getCC) -c" \
- CXX="$(tc-getCXX) -c" LD="$(tc-getLD)" \
- WRAP_FTGL=1 WRAP_SDL=1 WRAP_GL2PS=0 WRAP_ODE=1
-}
-
-src_install() {
- emake INSTDIR="${D}/usr" DESTDIR="${D}" INSTLIB="${D}/usr$(get_libdir)" install
-}
diff --git a/dev-tcltk/tcl3d/tcl3d-0.5.0.ebuild b/dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild
index 1b0775851245..b295909cdc56 100644
--- a/dev-tcltk/tcl3d/tcl3d-0.5.0.ebuild
+++ b/dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit flag-o-matic toolchain-funcs
@@ -11,7 +11,7 @@ SRC_URI="http://www.tcl3d.org/download/${P}.distrib/${PN}-src-${PV}.zip"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="debug ode osg sdl truetype"
RDEPEND="dev-lang/tcl:0=
@@ -25,10 +25,23 @@ RDEPEND="dev-lang/tcl:0=
truetype? ( media-libs/ftgl )
sdl? ( media-libs/libsdl )"
DEPEND="${RDEPEND}
- >=dev-lang/swig-1.3.38:0="
+ >=dev-lang/swig-1.3.38:0=
+ app-arch/unzip"
S="${WORKDIR}/${PN}"
-PATCHES=( "${FILESDIR}/${P}-include-tk-dir-and-permissive.patch" )
+PATCHES=(
+ "${FILESDIR}/${P}-include-tk-dir-and-permissive.patch"
+ "${FILESDIR}/${P}-implicit.patch"
+)
+
+src_prepare() {
+ sed -i \
+ -e '/\..$(DSEP)pkgIndex.tcl/d' \
+ tcl3d*/Makefile \
+ || die
+
+ default
+}
src_configure() {
local _TCL_V=( $(echo 'puts [info tclversion]' | tclsh | tr '.' ' ') )
@@ -38,6 +51,7 @@ src_configure() {
sed -i \
-e 's:^\(TCLMAJOR\) *=\(.*\)$:\1 = '${_TCL_V[0]}':' \
-e 's:^\(TCLMINOR\) *=\(.*\)$:\1 = '${_TCL_V[1]}':' \
+ -e "s:lib64:$(get_libdir):" \
config_Linux* || die
# Fix libSDL link
@@ -65,9 +79,14 @@ src_compile() {
CC="$(tc-getCC) -c" \
CXX="$(tc-getCXX) -c" \
LD="$(tc-getLD)" \
+ LDOUT="${LDFLAGS} -o" \
+ SHLIB_LD="$(tc-getCC) -shared" \
+ SHLIB_LDXX="$(tc-getCXX) -shared" \
${CONFIG_PLUGIN}
}
src_install() {
emake INSTDIR="${D}/usr" DESTDIR="${D}" INSTLIB="${D}/usr/$(get_libdir)" install
+ insinto /usr/$(get_libdir)/${PN}${PV}
+ doins pkgIndex.tcl
}
diff --git a/dev-tcltk/tcllib/Manifest b/dev-tcltk/tcllib/Manifest
index c5ba62cb75d6..e5acbb3e6385 100644
--- a/dev-tcltk/tcllib/Manifest
+++ b/dev-tcltk/tcllib/Manifest
@@ -1,3 +1,2 @@
-DIST tcllib-1.15-patchset.tar.xz 16164 BLAKE2B 590f6ea38aa2cf98e80011591d5bf06f27d4ca2af03b2e633a2752c184d2c1d78cc22f9b8472a2e5af7052cbb742a22fec0d487974a7599e4d4081bd5e80dcfe SHA512 85507cd00692138ea3c791f88bf4bbdadefa91168a55aebd1da7a89a9de37c3352be27db25bfdb7478dfc90865f906b290fdcbd858be0c01e3502f0446f03262
-DIST tcllib-1.15.tar.bz2 5030648 BLAKE2B 9731be4282bc3b3b0bb56021c3f0a7943ff4163d04ae397b1e0543cbce0642cbf5f64b66c57348a932d9e29c53273223998f2d8b0b087ff7ac679191e8a35ece SHA512 544b1193266e860eb59a4c313645376bba8488711b2afc629d99d0e719252db79caae73022ae1dc21dc123f949fa8930f81112c3f80328fc83952b64f93ca3c4
-DIST tcllib-1.19.tar.xz 6298564 BLAKE2B f137227004dd4acded7c8aae6b36fd50fedee67a725ecef0046f1af7abc7bb8e11207a141e15390a6ce3a1a3914b1cd2e5a798035eba631254792b2819383013 SHA512 08f549a3513316919c61f015a604aa671a73c0fd59a8a20b916d106e7d7d6f4bd59b485a92307778cfea1b00f78c2972a086b1bf960fe85a26fe273b7ada8d12
+DIST tcllib-1.20.tar.xz 6692664 BLAKE2B 3e70cf0d0f9e469a20e18f84238f56a53b5b8e36abcf418dc32f64c819728968d24e2999705d91d8341cb608a6bb674a063e86253cddfb51f2693a94d0e070e5 SHA512 d2c20642f91cdc7bf3b329025be80eb9288d0919fa439c2066349b52950cf3c343f39c7745b9b08ec28a884ff2f219fe0fb5f47023f1266b6a6de6ae54852412
+DIST tcllib-1.21.tar.xz 6467488 BLAKE2B 1faad78a263d9ef02d8d178bd329510a76db7b13d8ae636389877b25e1f1d125a6018ee9238cf3d8dbc04957d2e589669dc743c1f9e5823f28976ef73f8ce2e5 SHA512 0c8c333e1fd30237dbe40842082fd2da5141c50fc29c1a82960ce32b6780247b412ddfd1fe1e4414513dc77d6833611a46e07ca4137f13a51c7fea9fb81cef5b
diff --git a/dev-tcltk/tcllib/files/tcllib-1.20-test.patch b/dev-tcltk/tcllib/files/tcllib-1.20-test.patch
new file mode 100644
index 000000000000..326edcdbc39b
--- /dev/null
+++ b/dev-tcltk/tcllib/files/tcllib-1.20-test.patch
@@ -0,0 +1,132 @@
+--- a/modules/devtools/testutilities.tcl 2020-04-16 21:57:11.915653960 +0200
++++ b/modules/devtools/testutilities.tcl 2020-04-16 22:11:05.621829465 +0200
+@@ -229,6 +229,10 @@
+ ::tcltest::testConstraint tcl8.6plus \
+ [expr {[package vsatisfies [package provide Tcl] 8.6]}]
+
++ ::tcltest::testConstraint tcl8.6.8 \
++ [expr { [package vsatisfies [package provide Tcl] 8.6.8] &&
++ ![package vsatisfies [package provide Tcl] 8.6.9]}]
++
+ ::tcltest::testConstraint tcl8.6not10 \
+ [expr { [package vsatisfies [package provide Tcl] 8.6] &&
+ ![package vsatisfies [package provide Tcl] 8.6.10]}]
+--- a/modules/hook/hook.test 2020-04-16 21:59:22.708326030 +0200
++++ b/modules/hook/hook.test 2020-04-16 22:09:18.055740312 +0200
+@@ -436,6 +436,7 @@
+ } -cleanup {
+ cleanup
+ } -result [tcltest::byConstraint {
++ tcl8.6.8 {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}
+ tcl8.6.10plus {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}
+ tcl8.6not10 {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {call S1 <H1>}} -errorcode NONE}}}
+ tcl8.5minus {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorcode NONE}}}
+@@ -452,6 +453,7 @@
+ } -cleanup {
+ cleanup
+ } -result [tcltest::byConstraint {
++ tcl8.6.8 {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.6.10plus {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.6not10 {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.5minus {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorcode NONE}}}}
+--- a/modules/http/autoproxy.test 2020-04-16 22:48:04.645153193 +0200
++++ b/modules/http/autoproxy.test 2020-04-16 22:48:30.710701582 +0200
+@@ -179,20 +179,6 @@
+ autoproxy::configure -tls_package dummy
+ } -result "Invalid TLS package option 'dummy'. Must be 'tls' or 'twapi'" -returnCodes error
+
+-test autoproxy-2.0.0 "autoproxy::tls_socket (tls) with proxy" -constraints {
+- have_tls
+-} -setup {
+- packageReset
+- package require http
+- autoproxy::configure -proxy_host $proxy_host -proxy_port $proxy_port
+-} -body {
+- http::register https 443 autoproxy::tls_socket
+- set tok [http::geturl https://www.example.com]
+- http::status $tok
+-} -cleanup {
+- http::cleanup $tok
+-} -result ok
+-
+ test autoproxy-2.0.1 "autoproxy::tls_socket (twapi) with proxy" -constraints {
+ have_twapi
+ } -setup {
+@@ -202,20 +188,6 @@
+ } -body {
+ http::register https 443 autoproxy::tls_socket
+ set tok [http::geturl https://www.example.com]
+- http::status $tok
+-} -cleanup {
+- http::cleanup $tok
+-} -result ok
+-
+-test autoproxy-2.1.0 "autoproxy::tls_socket (tls) without proxy" -constraints {
+- have_tls
+-} -setup {
+- packageReset
+- package require http
+- autoproxy::configure -proxy_host "" -proxy_port $proxy_port
+-} -body {
+- http::register https 443 autoproxy::tls_socket
+- set tok [http::geturl https://www.example.com]
+ http::status $tok
+ } -cleanup {
+ http::cleanup $tok
+--- a/modules/string/token_shell.test 2020-04-17 08:40:44.813030086 +0200
++++ b/modules/string/token_shell.test 2020-04-17 08:44:03.066752545 +0200
+@@ -26,6 +26,7 @@
+ test string-token-shell-1.0 "string token shell, wrong#args, not enough" -body {
+ string token shell
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+@@ -34,6 +35,7 @@
+ test string-token-shell-1.1 "string token shell, wrong#args, too many" -body {
+ string token shell T X
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+@@ -46,6 +48,7 @@
+ test string-token-shell-1.3 "string token shell, wrong#args, too many" -body {
+ string token shell -- T X
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+--- a/modules/pki/pki.test 2020-08-25 10:17:32.102420666 +0200
++++ b/modules/pki/pki.test 2020-08-25 10:18:02.445984702 +0200
+@@ -123,28 +123,6 @@
+ unset privkey cakey cacert ca_arr ca password csr
+ } -result [asset-get result/cert-b]
+
+-test rsa-verify-certv1-1.0 {verify_cert} -setup {
+- set pubcert [asset-get test-v1.crt]
+- set cacert [asset-get CA.crt]
+- set pubcert [::pki::x509::parse_cert $pubcert]
+- set cacert [::pki::x509::parse_cert $cacert]
+-} -body {
+- ::pki::x509::verify_cert $pubcert [list $cacert]
+-} -cleanup {
+- unset pubcert cacert
+-} -result {true}
+-
+-test rsa-verify-certv3-1.0 {verify_cert} -setup {
+- set pubcert [asset-get test-v3.crt]
+- set cacert [asset-get CA.crt]
+- set pubcert [::pki::x509::parse_cert $pubcert]
+- set cacert [::pki::x509::parse_cert $cacert]
+-} -body {
+- ::pki::x509::verify_cert $pubcert [list $cacert]
+-} -cleanup {
+- unset pubcert cacert
+-} -result {true}
+-
+ test rsa-verify-badcertv1-1.0 {verify_cert} -setup {
+ set pubcert [asset-get test-v1.crt]
+ set cacert [asset-get test-v1.crt]
diff --git a/dev-tcltk/tcllib/files/tcllib-1.21-test.patch b/dev-tcltk/tcllib/files/tcllib-1.21-test.patch
new file mode 100644
index 000000000000..80371c98115c
--- /dev/null
+++ b/dev-tcltk/tcllib/files/tcllib-1.21-test.patch
@@ -0,0 +1,101 @@
+--- a/modules/devtools/testutilities.tcl 2020-04-16 21:57:11.915653960 +0200
++++ b/modules/devtools/testutilities.tcl 2020-04-16 22:11:05.621829465 +0200
+@@ -229,6 +229,10 @@
+ ::tcltest::testConstraint tcl8.6plus \
+ [expr {[package vsatisfies [package provide Tcl] 8.6]}]
+
++ ::tcltest::testConstraint tcl8.6.8 \
++ [expr { [package vsatisfies [package provide Tcl] 8.6.8] &&
++ ![package vsatisfies [package provide Tcl] 8.6.9]}]
++
+ ::tcltest::testConstraint tcl8.6not10 \
+ [expr { [package vsatisfies [package provide Tcl] 8.6] &&
+ ![package vsatisfies [package provide Tcl] 8.6.10]}]
+--- a/modules/hook/hook.test 2020-04-16 21:59:22.708326030 +0200
++++ b/modules/hook/hook.test 2020-04-16 22:09:18.055740312 +0200
+@@ -436,6 +436,7 @@
+ } -cleanup {
+ cleanup
+ } -result [tcltest::byConstraint {
++ tcl8.6.8 {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}
+ tcl8.6.10plus {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}
+ tcl8.6not10 {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {call S1 <H1>}} -errorcode NONE}}}
+ tcl8.5minus {{{S1 <H1> {} O1} {simulated error} {-code 1 -level 0 -errorcode NONE}}}
+@@ -452,6 +453,7 @@
+ } -cleanup {
+ cleanup
+ } -result [tcltest::byConstraint {
++ tcl8.6.8 {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.6.10plus {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {::hook::call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.6not10 {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorstack {INNER {error {simulated error}} UP 1 CALL {call S1 <H1>}} -errorcode NONE}}}}
+ tcl8.5minus {{{S1 <H1> O1 {}} {S1 <H1> O3 {}}} {{{S1 <H1> {} O2} {simulated error} {-code 1 -level 0 -errorcode NONE}}}}
+--- a/modules/http/autoproxy.test 2020-04-16 22:48:04.645153193 +0200
++++ b/modules/http/autoproxy.test 2020-04-16 22:48:30.710701582 +0200
+@@ -179,20 +179,6 @@
+ autoproxy::configure -tls_package dummy
+ } -result "Invalid TLS package option 'dummy'. Must be 'tls' or 'twapi'" -returnCodes error
+
+-test autoproxy-2.0.0 "autoproxy::tls_socket (tls) with proxy" -constraints {
+- have_tls
+-} -setup {
+- packageReset
+- package require http
+- autoproxy::configure -proxy_host $proxy_host -proxy_port $proxy_port
+-} -body {
+- http::register https 443 autoproxy::tls_socket
+- set tok [http::geturl https://www.example.com]
+- http::status $tok
+-} -cleanup {
+- http::cleanup $tok
+-} -result ok
+-
+ test autoproxy-2.0.1 "autoproxy::tls_socket (twapi) with proxy" -constraints {
+ have_twapi
+ } -setup {
+@@ -202,20 +188,6 @@
+ } -body {
+ http::register https 443 autoproxy::tls_socket
+ set tok [http::geturl https://www.example.com]
+- http::status $tok
+-} -cleanup {
+- http::cleanup $tok
+-} -result ok
+-
+-test autoproxy-2.1.0 "autoproxy::tls_socket (tls) without proxy" -constraints {
+- have_tls
+-} -setup {
+- packageReset
+- package require http
+- autoproxy::configure -proxy_host "" -proxy_port $proxy_port
+-} -body {
+- http::register https 443 autoproxy::tls_socket
+- set tok [http::geturl https://www.example.com]
+ http::status $tok
+ } -cleanup {
+ http::cleanup $tok
+--- a/modules/string/token_shell.test 2020-04-17 08:40:44.813030086 +0200
++++ b/modules/string/token_shell.test 2020-04-17 08:44:03.066752545 +0200
+@@ -26,6 +26,7 @@
+ test string-token-shell-1.0 "string token shell, wrong#args, not enough" -body {
+ string token shell
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+@@ -34,6 +35,7 @@
+ test string-token-shell-1.1 "string token shell, wrong#args, too many" -body {
+ string token shell T X
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+@@ -46,6 +48,7 @@
+ test string-token-shell-1.3 "string token shell, wrong#args, too many" -body {
+ string token shell -- T X
+ } -returnCodes error -result [tcltest::byConstraint {
++ tcl8.6.8 {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6.10plus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
+ tcl8.6not10 {wrong # args: should be "shell ?-indices? ?-partial? ?--? text"}
+ tcl8.5minus {wrong # args: should be "::string::token::shell ?-indices? ?-partial? ?--? text"}
diff --git a/dev-tcltk/tcllib/metadata.xml b/dev-tcltk/tcllib/metadata.xml
index f5ca0ddf0adf..f41363d4015b 100644
--- a/dev-tcltk/tcllib/metadata.xml
+++ b/dev-tcltk/tcllib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tcllib/tcllib-1.15-r2.ebuild b/dev-tcltk/tcllib/tcllib-1.15-r2.ebuild
deleted file mode 100644
index f5ba207bc472..000000000000
--- a/dev-tcltk/tcllib/tcllib-1.15-r2.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils virtualx
-
-DESCRIPTION="Tcl Standard Library"
-HOMEPAGE="http://www.tcl.tk/software/tcllib/"
-SRC_URI="
- https://dev.gentoo.org/~mgorny/dist/${P}-patchset.tar.xz
- mirror://sourceforge/tcllib/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="examples"
-KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-
-RDEPEND="dev-lang/tcl:0="
-DEPEND="${RDEPEND}"
-
-DOCS=( DESCRIPTION.txt STATUS )
-
-PATCHES=(
- "${WORKDIR}"/${P}-patchset/${P}-tcl8.6-test.patch
- "${WORKDIR}"/${P}-patchset/${P}-test.patch
- "${WORKDIR}"/${P}-patchset/${P}-manpage-rename.patch
- "${WORKDIR}"/${P}-patchset/${P}-XSS-vuln.patch
-)
-
-src_prepare() {
- has_version ">=dev-lang/tcl-8.6" && \
- PATCHES+=( "${WORKDIR}"/${P}-patchset/${P}-tcl8.6-test-2.patch )
- epatch "${PATCHES[@]}"
-}
-
-src_test() {
- Xemake test_batch
-}
-
-src_install() {
- default
-
- dodoc devdoc/*.txt
-
- dohtml devdoc/*.html
- if use examples ; then
- for f in $(find examples -type f); do
- docinto $(dirname $f)
- dodoc $f
- done
- fi
-}
diff --git a/dev-tcltk/tcllib/tcllib-1.19.ebuild b/dev-tcltk/tcllib/tcllib-1.20.ebuild
index c2701e93c485..3817d57ac4a3 100644
--- a/dev-tcltk/tcllib/tcllib-1.19.ebuild
+++ b/dev-tcltk/tcllib/tcllib-1.20.ebuild
@@ -1,18 +1,19 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit virtualx
DESCRIPTION="Tcl Standard Library"
HOMEPAGE="http://www.tcl.tk/software/tcllib/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.xz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}/${PV}/${P}.tar.xz"
LICENSE="BSD"
SLOT="0"
IUSE="examples"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~mips ~ppc s390 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
RDEPEND="
dev-lang/tcl:0=
@@ -21,11 +22,18 @@ RDEPEND="
DEPEND="${RDEPEND}"
DOCS=(
- ChangeLog DESCRIPTION.txt README-1.19.txt README.developer
+ ChangeLog DESCRIPTION.txt README.md devdoc/README.developer
devdoc/critcl-tcllib.txt devdoc/dirlayout_install.txt
- devdoc/indexing.txt devdoc/installation.txt
+ devdoc/indexing.txt
)
-HTML_DOCS=( devdoc/devguide.html devdoc/releaseguide.html )
+HTML_DOCS=( idoc/www )
+
+PATCHES=( "${FILESDIR}"/${P}-test.patch )
+
+src_prepare() {
+ default
+ rm modules/httpd/httpd.test || die
+}
src_test() {
USER= virtx emake test_batch
diff --git a/dev-tcltk/tcllib/tcllib-1.21.ebuild b/dev-tcltk/tcllib/tcllib-1.21.ebuild
new file mode 100644
index 000000000000..bca9b950aaae
--- /dev/null
+++ b/dev-tcltk/tcllib/tcllib-1.21.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit virtualx
+
+DESCRIPTION="Tcl Standard Library"
+HOMEPAGE="http://www.tcl.tk/software/tcllib/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}/${PV}/${P}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="examples"
+KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-lang/tcl:0=
+ dev-tcltk/tdom
+ "
+DEPEND="${RDEPEND}"
+
+DOCS=(
+ ChangeLog DESCRIPTION.txt README.md devdoc/README.developer
+ devdoc/critcl-tcllib.txt devdoc/dirlayout_install.txt
+ devdoc/indexing.txt
+)
+HTML_DOCS=( idoc/www )
+
+PATCHES=( "${FILESDIR}"/${P}-test.patch )
+
+src_prepare() {
+ default
+ rm modules/httpd/httpd.test || die
+}
+
+src_test() {
+ USER= virtx emake test_batch
+}
+
+src_install() {
+ default
+
+ if use examples ; then
+ for f in $(find examples -type f); do
+ docinto $(dirname $f)
+ dodoc $f
+ done
+ fi
+}
diff --git a/dev-tcltk/tclperl/Manifest b/dev-tcltk/tclperl/Manifest
deleted file mode 100644
index 6d7ed26e54fd..000000000000
--- a/dev-tcltk/tclperl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tclperl-3.2.tar.bz2 11765 BLAKE2B 408bfa98a706edfed45d57183f2152bfdc9e0a8fa7b53b3d612f1d15e3e3733fc1eb6ef8df501a28446429ec78912b937f143ce43d23ceebc2ced58c6668a6f5 SHA512 aed6fb4b0275cf75e6024336e81e3cd1502d82ae697e79b6142d2f9b3cfb0891541cc585fa83d6219632f11d6eda43b141d009caf5fe7433b2b2ca92aa875c00
diff --git a/dev-tcltk/tclperl/metadata.xml b/dev-tcltk/tclperl/metadata.xml
deleted file mode 100644
index 227dda5ba584..000000000000
--- a/dev-tcltk/tclperl/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>Gentoo Tcltk Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-tcltk/tclperl/tclperl-3.2-r1.ebuild b/dev-tcltk/tclperl/tclperl-3.2-r1.ebuild
deleted file mode 100644
index 64e82c79a3e1..000000000000
--- a/dev-tcltk/tclperl/tclperl-3.2-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit flag-o-matic multilib toolchain-funcs
-
-DESCRIPTION="Perl package for Tcl"
-HOMEPAGE="http://jfontain.free.fr/tclperl.htm"
-SRC_URI="http://jfontain.free.fr/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-IUSE=""
-
-DEPEND="
- >=dev-lang/tcl-8.3.3:0
- >=dev-lang/perl-5.6.0
- sys-libs/binutils-libs"
-RDEPEND="${DEPEND}"
-
-src_compile() {
- append-flags -fPIC
-
- # ./build.sh
- perl Makefile.PL || die
- emake OPTIMIZE="${CFLAGS}" Tcl.o
-
- $(tc-getCC) -shared ${LDFLAGS} ${CFLAGS} -o tclperl.so.${PV} -DUSE_TCL_STUBS \
- tclperl.c tclthread.c `perl -MExtUtils::Embed -e ccopts -e ldopts` \
- /usr/$(get_libdir)/libtclstub`echo 'puts $tcl_version' | tclsh`.a Tcl.o || die
-}
-
-src_install() {
- exeinto /usr/$(get_libdir)/${P}
- doexe tclperl.so.${PV}
- doexe pkgIndex.tcl
-
- dodoc CHANGES README
- dohtml tclperl.htm
-}
diff --git a/dev-tcltk/tclpython/Manifest b/dev-tcltk/tclpython/Manifest
index 9bd7a795d516..68cb6e9da97c 100644
--- a/dev-tcltk/tclpython/Manifest
+++ b/dev-tcltk/tclpython/Manifest
@@ -1,2 +1 @@
-DIST tclpython-4.1.tar.bz2 10580 BLAKE2B 98d4783cc52bc907c21d50ee393e25ee084b449db7c393c16b0b1f0420469bd0904d16dc2a6806b776dad7dabd521e5f2e8cc942c720d9e69750385302355608 SHA512 5f08e7129a7d9afeb1ac6bf1ab1c83ad3bb481593c9516c0653c7b4ba0dfb1b3129a336e64b998cec8ef2d2377a6a366b73c640d25839ab280d5079c0b220d54
DIST tclpython-5.0.tar.gz 19327 BLAKE2B bad25a6eb04dbcd9ca3e9bc81d44f098f31f2acf367ecc32307596d5da3ed95752b3c60d9ee74fc04e21669e0361f0790edad3ad5793c78ece4904beacd92900 SHA512 fe15218fe00e921384dbd9611685b86cb6dfacb515a95545079550aeadaaafc3964e6ef0594a268a3fd900f40d178659e8b7f6f2a6d9aa507b59a8be0bd116af
diff --git a/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch b/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch
deleted file mode 100644
index 2a26f647c10e..000000000000
--- a/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch
+++ /dev/null
@@ -1,229 +0,0 @@
---- a/tclpython.c 2006-03-07 16:28:03.000000000 +0300
-+++ b/tclpython.c 2014-05-06 23:33:41.713623943 +0400
-@@ -19,13 +19,83 @@
- $ cc -fpic -I/usr/local/include/tcltk/tcl8.3 -c tclthread.c
- $ ld -o tclpython.so -Bshareable -L/usr/X11R6/lib -L/usr/local/lib -L/usr/local/share/python/config tclpython.o tclthread.o -lpython -lutil -lreadline -ltermcap -lcrypt -lgmp -lgdbm -lpq -lz -ltcl83 -ltk83 -lX11
-
-+Patched for Python 3 with respect to https://github.com/facebook/fbthrift/blob/master/thrift/lib/py/protocol/fastbinary.c
-+
- */
-
- #include <Python.h>
- #include <tcl.h>
--#include <cStringIO.h>
-+
-+#if PY_MAJOR_VERSION >= 3
-+ #define PyInt_FromLong PyLong_FromLong
-+ #define PyInt_AsLong PyLong_AsLong
-+ #define PyString_FromStringAndSize PyBytes_FromStringAndSize
-+#else
-+ #include <cStringIO.h>
-+#endif
-+
- #include "tclpython.h"
-
-+// Mostly copied from cStringIO.c
-+#if PY_MAJOR_VERSION >= 3
-+
-+/** io module in python3. */
-+static PyObject* Python3IO;
-+
-+typedef struct {
-+ PyObject_HEAD
-+ char *buf;
-+ Py_ssize_t pos, string_size;
-+} IOobject;
-+
-+#define IOOOBJECT(O) ((IOobject*)(O))
-+
-+static int
-+IO__opencheck(IOobject *self) {
-+ if (!self->buf) {
-+ PyErr_SetString(PyExc_ValueError,
-+ "I/O operation on closed file");
-+ return 0;
-+ }
-+ return 1;
-+}
-+
-+static PyObject *
-+IO_cgetval(PyObject *self) {
-+ if (!IO__opencheck(IOOOBJECT(self))) return NULL;
-+ assert(IOOOBJECT(self)->pos >= 0);
-+ return PyBytes_FromStringAndSize(((IOobject*)self)->buf,
-+ ((IOobject*)self)->pos);
-+}
-+#endif
-+
-+/* -- PYTHON MODULE SETUP STUFF --- */
-+
-+static PyObject *pythonTclEvaluate(PyObject *self, PyObject *args);
-+
-+static PyMethodDef tclMethods[] = {
-+ {"eval", pythonTclEvaluate, METH_VARARGS, "Evaluate a Tcl script."},
-+ {0, 0, 0, 0} /* sentinel */
-+};
-+
-+#if PY_MAJOR_VERSION >= 3
-+struct module_state {
-+ PyObject *error;
-+};
-+
-+static struct PyModuleDef TclModuleDef = {
-+ PyModuleDef_HEAD_INIT,
-+ "tcl",
-+ NULL,
-+ sizeof(struct module_state),
-+ tclMethods,
-+ NULL,
-+ NULL,
-+ NULL,
-+ NULL
-+};
-+#endif
-+
- #ifndef WIN32
- /* George Petasis, 21 Feb 2006:
- * The following check cannot be handled correctly
-@@ -66,13 +136,13 @@
-
- static int pythonInterpreter(ClientData clientData, Tcl_Interp *interpreter, int numberOfArguments, Tcl_Obj * CONST arguments[])
- {
-- int identifier;
-+ intptr_t identifier;
- PyObject *output;
- PyObject *message;
- PyObject *result;
- PyObject *globals;
- char *string = 0;
-- int length;
-+ Py_ssize_t length;
- Tcl_Obj *object;
- struct Tcl_HashEntry *entry;
- unsigned evaluate;
-@@ -111,12 +181,22 @@
- /* choose start token depending on whether this is an evaluation or an execution: */
- result = PyRun_String(Tcl_GetString(arguments[2]), (evaluate? Py_eval_input: Py_file_input), globals, globals);
- if (result == 0) { /* an error occured */
-+#if PY_MAJOR_VERSION >= 3
-+ output = PyObject_CallMethod(Python3IO, "BytesIO", "()");
-+#else
- output = PycStringIO->NewOutput(1024); /* use a reasonable initial size but big enough to handle most cases */
-- PySys_SetObject("stderr", output); /* capture all interpreter error output */
-+#endif
-+ PySys_SetObject("sys.stderr", output); /* capture all interpreter error output */
- PyErr_Print(); /* so that error is printed on standard error, redirected above */
-+#if PY_MAJOR_VERSION >= 3
-+ message = IO_cgetval(output);
-+ string = PyBytes_AsString(message);
-+ length = (string == NULL) ? 0 : strlen(string);
-+#else
- message = PycStringIO->cgetvalue(output);
- string = PyString_AsString(message);
- length = PyString_Size(message);
-+#endif
- if ((length > 0) && (string[length - 1] == '\n')) length--; /* eventually remove trailing new line character */
- object = Tcl_NewObj();
- Tcl_AppendStringsToObj(object, Tcl_GetString(arguments[0]), ": ", 0); /* identify interpreter in error */
-@@ -124,7 +204,11 @@
- Py_DECREF(output);
- } else {
- if (evaluate) {
-+#if PY_MAJOR_VERSION >= 3
-+ string = PyUnicode_AsUTF8(PyObject_Str(result));
-+#else
- string = PyString_AsString(PyObject_Str(result));
-+#endif
- object = Tcl_NewStringObj(string, -1); /* return evaluation result */
- } else /* execute */
- object = Tcl_NewObj(); /* always return an empty result or an error */
-@@ -139,9 +223,9 @@
-
- Tcl_Interp *tclInterpreter(CONST char *name) /* public function for use in extensions to this extension */
- {
-- int identifier;
-+ intptr_t identifier;
-
-- if ((sscanf(name, "tcl%u", &identifier) == 0) || (identifier != 0)) {
-+ if ((sscanf(name, "tcl%lu", &identifier) == 0) || (identifier != 0)) {
- return 0; /* invalid name */
- } else {
- return mainInterpreter; /* sole available interpreter */
-@@ -188,14 +272,9 @@
- return Py_BuildValue("s", result);
- }
-
--static PyMethodDef tclMethods[] = {
-- {"eval", pythonTclEvaluate, METH_VARARGS, "Evaluate a Tcl script."},
-- {0, 0, 0, 0} /* sentinel */
--};
--
- static int newInterpreter(Tcl_Interp *interpreter)
- {
-- int identifier;
-+ intptr_t identifier;
- Tcl_Obj *object;
- int created;
- #ifdef WITH_THREAD
-@@ -214,19 +293,31 @@
- return TCL_ERROR;
- } else {
- Py_Initialize(); /* initialize main interpreter */
-+#if PY_MAJOR_VERSION >= 3
-+ Python3IO = PyImport_ImportModule("io");
-+#else
- PycString_IMPORT;
-+#endif
- }
- Tcl_SetHashValue(Tcl_CreateHashEntry(&threadStates, (ClientData)identifier, &created), 0);
- #else
- if (existingInterpreters == 0) {
- Py_Initialize(); /* initialize main interpreter */
- PyEval_InitThreads(); /* initialize and acquire the global interpreter lock */
-+#if PY_MAJOR_VERSION >= 3
-+ Python3IO = PyImport_ImportModule("io");
-+#else
- PycString_IMPORT;
-+#endif
- globalState = PyThreadState_Swap(0); /* save the global thread */
- } else {
- PyEval_AcquireLock(); /* needed in order to be able to create a new interpreter */
- }
-+#if PY_MAJOR_VERSION >= 3
-+ if (Python3IO == 0) { /* make sure string input/output is properly initialized */
-+#else
- if (PycStringIO == 0) { /* make sure string input/output is properly initialized */
-+#endif
- Tcl_SetResult(interpreter, "fatal error: could not initialize Python string input/output module", TCL_STATIC);
- return TCL_ERROR;
- }
-@@ -250,7 +341,11 @@
- newIdentifier++;
- #endif
- existingInterpreters++;
-+#if PY_MAJOR_VERSION >= 3
-+ tcl = PyModule_Create(&TclModuleDef);
-+#else
- tcl = Py_InitModule("tcl", tclMethods); /* add a new 'tcl' module to the python interpreter */
-+#endif
- Py_INCREF(tcl);
- PyModule_AddObject(PyImport_AddModule("__builtin__"), "tcl", tcl);
- return TCL_OK;
-@@ -260,7 +355,7 @@
- {
- int index;
- char *name;
-- int identifier;
-+ intptr_t identifier;
- struct Tcl_HashEntry *entry;
- Tcl_Obj *object;
- #ifdef WITH_THREAD
-@@ -270,7 +365,7 @@
- for (index = 0; index < numberOfArguments; index++) {
- name = Tcl_GetString(arguments[index]); /* interpreter name is "pythonN" */
- entry = 0;
-- if (sscanf(name, "python%u", &identifier) == 1) {
-+ if (sscanf(name, "python%lu", &identifier) == 1) {
- identifier = atoi(name + 6);
- entry = Tcl_FindHashEntry(&threadStates, (ClientData)identifier);
- }
diff --git a/dev-tcltk/tclpython/files/tclpython-5.0-gentoo.patch b/dev-tcltk/tclpython/files/tclpython-5.0-gentoo.patch
index 7f4aa0bf5a2e..39bdf20c095c 100644
--- a/dev-tcltk/tclpython/files/tclpython-5.0-gentoo.patch
+++ b/dev-tcltk/tclpython/files/tclpython-5.0-gentoo.patch
@@ -1,5 +1,19 @@
--- a/Makefile 2018-10-28 17:21:20.274137396 +0100
+++ b/Makefile 2018-10-28 17:21:47.696694473 +0100
+@@ -16,11 +16,11 @@
+ LIBRARY:= $(PKG_NAME).so.$(PKG_VERSION)
+
+ TCL_VERSION=$(shell echo 'puts $\$$tcl_version' | tclsh)
+-CFLAGS:= -O2 -Wall -fPIC -DUSE_TCL_STUBS
++CFLAGS:= $(MYCFLAGS) -fPIC -DUSE_TCL_STUBS
+ CFLAGS+= $(shell $(PYTHON_CONFIG) --includes)
+ CFLAGS+= -I/usr/include/tcl$(TCL_VERSION)
+ CFLAGS+= -DTCLPYTHON_VERSION=$(PKG_VERSION)
+-LDFLAGS:= -shared -s
++LDFLAGS:= $(MYLDFLAGS) -shared
+ LDFLAGS+= $(shell $(PYTHON_CONFIG) --libs)
+ LDFLAGS+= -ltclstub$(TCL_VERSION)
+
@@ -62,7 +62,8 @@
$(OUTPUT_DIR)/pkgIndex.tcl:pkg/pkgIndex.tcl
cp -t $(dir $@) $^
@@ -10,3 +24,23 @@
ifneq ($(MAKECMDGOALS), clean)
-include $(DEPEND)
+--- a/src/py.c 2022-02-06 10:20:03.352580186 +0100
++++ b/src/py.c 2022-02-06 11:16:49.504796684 +0100
+@@ -24,7 +24,6 @@
+ // First time initializing Python
+ Py_NoSiteFlag = 1;
+ Py_Initialize();
+- PyEval_InitThreads();
+ GlobalThread = PyEval_SaveThread();
+ }
+
+@@ -60,7 +59,8 @@
+ #ifdef WITH_THREAD
+ PyEval_RestoreThread(interp->thread_state);
+ Py_EndInterpreter(interp->thread_state);
+- PyEval_ReleaseLock();
++ PyThreadState_Swap(GlobalThread);
++ PyEval_SaveThread();
+ #endif
+
+ free(interp);
diff --git a/dev-tcltk/tclpython/metadata.xml b/dev-tcltk/tclpython/metadata.xml
index 227dda5ba584..f7cd4104c751 100644
--- a/dev-tcltk/tclpython/metadata.xml
+++ b/dev-tcltk/tclpython/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>Gentoo Tcltk Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>tcltk@gentoo.org</email>
+ <name>Gentoo Tcltk Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">amykyta3/tclpython</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tclpython/tclpython-4.1-r4.ebuild b/dev-tcltk/tclpython/tclpython-4.1-r4.ebuild
deleted file mode 100644
index d76649cf5f20..000000000000
--- a/dev-tcltk/tclpython/tclpython-4.1-r4.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python{2_7,3_4} )
-
-inherit eutils multilib python-single-r1 toolchain-funcs
-
-DESCRIPTION="Python package for Tcl"
-HOMEPAGE="http://jfontain.free.fr/tclpython.htm"
-SRC_URI="http://jfontain.free.fr/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE=""
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="${PYTHON_DEPS}
- dev-lang/tcl:0="
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-python-3.patch
-)
-
-src_prepare() {
- epatch "${PATCHES[@]}"
-}
-
-src_compile() {
- local cfile="tclpython tclthread"
- for src in ${cfile}; do
- compile="$(tc-getCC) -shared -fPIC ${CFLAGS} -I$(python_get_includedir) -c ${src}.c"
- einfo "${compile}"
- eval "${compile}" || die
- done
-
- link="$(tc-getCC) -fPIC -shared ${LDFLAGS} -o tclpython.so.${PV} tclpython.o tclthread.o -lpthread -lutil $(python_get_LIBS) -ltcl"
- einfo "${link}"
- eval "${link}" || die
-}
-
-src_install() {
- insinto /usr/$(get_libdir)/tclpython
- doins tclpython.so.${PV} pkgIndex.tcl
- fperms 775 /usr/$(get_libdir)/tclpython/tclpython.so.${PV}
- dosym tclpython.so.${PV} /usr/$(get_libdir)/tclpython/tclpython.so
-
- dodoc CHANGES INSTALL README
- dohtml tclpython.htm
-}
diff --git a/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild b/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild
deleted file mode 100644
index 6359b225c9ff..000000000000
--- a/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-
-inherit eutils multilib python-single-r1 toolchain-funcs
-
-DESCRIPTION="Python package for Tcl"
-HOMEPAGE="http://jfontain.free.fr/tclpython.htm"
-SRC_URI="http://jfontain.free.fr/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE=""
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="${PYTHON_DEPS}
- dev-lang/tcl:0=
- sys-libs/binutils-libs"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-python-3.patch
-)
-
-src_prepare() {
- epatch "${PATCHES[@]}"
-}
-
-src_compile() {
- local cfile="tclpython tclthread"
- for src in ${cfile}; do
- compile="$(tc-getCC) -shared -fPIC ${CFLAGS} -I$(python_get_includedir) -c ${src}.c"
- einfo "${compile}"
- eval "${compile}" || die
- done
-
- link="$(tc-getCC) -fPIC -shared ${LDFLAGS} -o tclpython.so.${PV} tclpython.o tclthread.o -lpthread -lutil $(python_get_LIBS) -ltcl"
- einfo "${link}"
- eval "${link}" || die
-}
-
-src_install() {
- insinto /usr/$(get_libdir)/tclpython
- doins tclpython.so.${PV} pkgIndex.tcl
- fperms 775 /usr/$(get_libdir)/tclpython/tclpython.so.${PV}
- dosym tclpython.so.${PV} /usr/$(get_libdir)/tclpython/tclpython.so
-
- dodoc CHANGES INSTALL README
- dohtml tclpython.htm
-}
diff --git a/dev-tcltk/tclpython/tclpython-5.0-r3.ebuild b/dev-tcltk/tclpython/tclpython-5.0-r3.ebuild
new file mode 100644
index 000000000000..c2d90e8755e1
--- /dev/null
+++ b/dev-tcltk/tclpython/tclpython-5.0-r3.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-single-r1 toolchain-funcs
+
+DESCRIPTION="Python package for Tcl"
+HOMEPAGE="http://jfontain.free.fr/tclpython.htm"
+SRC_URI="https://github.com/amykyta3/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="${PYTHON_DEPS}
+ dev-lang/tcl:0="
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_compile() {
+ emake PKG_NAME=tclpython3 CC="$(tc-getCC)" \
+ MYCFLAGS="${CFLAGS}" \
+ MYLDFLAGS="${LDFLAGS} $(python_get_library_path)"
+}
+
+src_test() {
+ emake PKG_NAME=tclpython3 CC="$(tc-getCC)" test
+}
+
+src_install() {
+ insinto /usr/$(get_libdir)
+ doins -r build/tclpython3/tclpython3
+ fperms 775 /usr/$(get_libdir)/tclpython3/tclpython3.so.${PV}
+ dosym tclpython3.so.${PV} /usr/$(get_libdir)/tclpython3/tclpython3.so
+
+ dodoc README.md VERSION.md
+}
diff --git a/dev-tcltk/tclpython/tclpython-5.0.ebuild b/dev-tcltk/tclpython/tclpython-5.0.ebuild
deleted file mode 100644
index f7c6efb3ea78..000000000000
--- a/dev-tcltk/tclpython/tclpython-5.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-
-inherit multilib python-single-r1 toolchain-funcs
-
-DESCRIPTION="Python package for Tcl"
-HOMEPAGE="http://jfontain.free.fr/tclpython.htm"
-SRC_URI="https://github.com/amykyta3/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="${PYTHON_DEPS}
- dev-lang/tcl:0="
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
-
-src_compile() {
- if python_is_python3; then
- PKG_NAME=tclpython3
- else
- PKG_NAME=tclpython
- fi
- emake PKG_NAME=${PKG_NAME} CC=$(tc-getCC)
-}
-
-src_test() {
- emake PKG_NAME=${PKG_NAME} CC=$(tc-getCC) test
-}
-
-src_install() {
- if python_is_python3; then
- insinto /usr/$(get_libdir)
- doins -r build/tclpython3/tclpython3
- fperms 775 /usr/$(get_libdir)/tclpython3/tclpython3.so.${PV}
- dosym tclpython3.so.${PV} /usr/$(get_libdir)/tclpython3/tclpython3.so
- else
- insinto /usr/$(get_libdir)
- doins -r build/tclpython/tclpython
- fperms 775 /usr/$(get_libdir)/tclpython/tclpython.so.${PV}
- dosym tclpython.so.${PV} /usr/$(get_libdir)/tclpython/tclpython3.so
- fi
-
- dodoc README.md VERSION.md
-}
diff --git a/dev-tcltk/tclreadline/Manifest b/dev-tcltk/tclreadline/Manifest
index 87f5646b5950..e1047715d42b 100644
--- a/dev-tcltk/tclreadline/Manifest
+++ b/dev-tcltk/tclreadline/Manifest
@@ -1,2 +1,3 @@
DIST tclreadline-2.1.0.tar.gz 160541 BLAKE2B 44dfd7626b969d03343cfa768d0ad72b9322a13175ca7c713c3981c0abc27967e31a62f3451b5d007569a30a7279be7c2a8f1c7c78e8d0c310964ddba18fa5cb SHA512 bd67a65fe2ec708834fb67fabf2e36e778a6aeeb7a7b69cda298f9e18acc9e03f3a379f81ff7d2d289bfbf1093bc86fecbf96fe5d04a2ca954899cc7df6fe4bf
+DIST tclreadline-2.3.8.tar.gz 393167 BLAKE2B e6a8d35904a0ed22fac01d7f6b6ecc9eef99acea149253ec9a0f7a3463a163ef17daa052bd4801fb9e365b056ab58d69fe2ec9884a9279881638c7b99c12f6a7 SHA512 0c5ce53a8f4cc222de013932698e442c63b36e3f07d10b962d127444f75c28b2caf7f06b5958150748f7a1d535c577c825b9a0dd525e077a348c3ff899a74e61
DIST tclreadline_2.1.0-12.debian.tar.gz 9636 BLAKE2B b84487e2e05649c899f705ee4c4ea80a7b05c99440e9b905587300342ce54d48a7d32b750ec2c2a3a12f1aa991f2a47167243ec962f539e02383aac62530a3d9 SHA512 293e9ad14a469891f68b25caa78a99874de87df4c44af4ada7528cf74e898be42b7846fbb6eeabb2dec34995a9ccd9707c61f406b90b90dbca2c24df05f451eb
diff --git a/dev-tcltk/tclreadline/files/tclreadline-2.3.8-configure-clang16.patch b/dev-tcltk/tclreadline/files/tclreadline-2.3.8-configure-clang16.patch
new file mode 100644
index 000000000000..1454cf54f698
--- /dev/null
+++ b/dev-tcltk/tclreadline/files/tclreadline-2.3.8-configure-clang16.patch
@@ -0,0 +1,67 @@
+https://github.com/flightaware/tclreadline/pull/46
+
+From 8c75e01b814ac852167611f5edae9659a1f709d2 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 23 Nov 2022 00:19:55 +0000
+Subject: [PATCH 1/2] Fix configure.ac compatibility with Clang 16
+
+Clang 16 makes -Wimplicit-function-declaration and -Wimplicit-int errors by default.
+
+Unfortunately, this can lead to misconfiguration or miscompilation of software as configure
+tests may then return the wrong result.
+
+We also fix -Wstrict-prototypes while here as it's easy to do and it prepares
+us for C23.
+
+For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2],
+or the (new) c-std-porting mailing list [3].
+
+[0] https://lwn.net/Articles/913505/
+[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
+[2] https://wiki.gentoo.org/wiki/Modern_C_porting
+[3] hosted at lists.linux.dev.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -245,7 +245,8 @@ AC_TRY_LINK(,[
+ AC_MSG_CHECKING([for the readline version number])
+ AC_TRY_RUN([
+ #include <stdio.h>
+-int main () {
++#include <unistd.h>
++int main (void) {
+ FILE *fp = fopen("conftestversion", "w");
+ extern char *rl_library_version;
+ fprintf(fp, "%s", rl_library_version);
+
+From b64772750c7543fe66165fd7862b355d289412b6 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 23 Nov 2022 00:21:34 +0000
+Subject: [PATCH 2/2] Fix -Wint-conversion in readline configure test
+
+Fixes the following warning with Clang 16:
+```
+configure:12873: clang-16 -o conftest -g -O2 conftest.c -lreadline >&5
+conftest.c:33:11: error: incompatible pointer to integer conversion passing 'FILE *' (aka 'struct _IO_FILE *') to parameter of type 'int' [-Wint-conversion]
+ close(fp);
+ ^~
+/usr/include/unistd.h:358:23: note: passing argument to parameter '__fd' here
+extern int close (int __fd);
+```
+
+fopen should be paired with fclose.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -250,7 +250,7 @@ int main (void) {
+ FILE *fp = fopen("conftestversion", "w");
+ extern char *rl_library_version;
+ fprintf(fp, "%s", rl_library_version);
+- close(fp);
++ fclose(fp);
+ return 0;
+ }],
+ READLINE_VERSION=`cat conftestversion`
+
diff --git a/dev-tcltk/tclreadline/metadata.xml b/dev-tcltk/tclreadline/metadata.xml
index 4d4cdbb530ea..c218d179a43c 100644
--- a/dev-tcltk/tclreadline/metadata.xml
+++ b/dev-tcltk/tclreadline/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">tclreadline</remote-id>
+ <remote-id type="github">flightaware/tclreadline</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild b/dev-tcltk/tclreadline/tclreadline-2.1.0-r5.ebuild
index e668266ef24e..f7c37a189fd5 100644
--- a/dev-tcltk/tclreadline/tclreadline-2.1.0-r4.ebuild
+++ b/dev-tcltk/tclreadline/tclreadline-2.1.0-r5.ebuild
@@ -1,23 +1,21 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-AUTOTOOLS_AUTORECONF=true
-
-inherit autotools-utils multilib toolchain-funcs
+inherit autotools libtool
DEBIAN_PATCH=12
DESCRIPTION="Readline extension to TCL"
HOMEPAGE="http://tclreadline.sf.net/"
SRC_URI="
- mirror://sourceforge/${PN}/${P}.tar.gz
+ https://downloads.sourceforge.net/${PN}/${P}.tar.gz
mirror://debian/pool/main/t/${PN}/${PN}_${PV}-${DEBIAN_PATCH}.debian.tar.gz"
SLOT="0"
LICENSE="BSD"
-KEYWORDS="alpha amd64 ppc ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 ppc ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="static-libs"
DEPEND="
@@ -38,12 +36,10 @@ PATCHES=(
"${WORKDIR}"/debian/patches/link.patch
"${WORKDIR}"/debian/patches/manpage.patch
"${WORKDIR}"/debian/patches/memuse.patch
-# "${WORKDIR}"/debian/patches/tclrldir.patch
"${WORKDIR}"/debian/patches/tclshpath.patch
"${WORKDIR}"/debian/patches/tinfo.patch
"${WORKDIR}"/debian/patches/varnames.patch
-
- )
+)
src_prepare() {
sed \
@@ -54,15 +50,23 @@ src_prepare() {
sed \
-e 's:configure.in:configure.ac:g' \
-i "${WORKDIR}"/debian/patches/* || die
- autotools-utils_src_prepare
+
+ default
+ eautoreconf
+ elibtoolize --patch-only
}
src_configure() {
- local myeconfargs=(
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
- --with-tcl-includes="${EPREFIX}/usr/include"
- --with-readline-includes="${EPREFIX}/usr/include"
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static) \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tcl-includes="${EPREFIX}/usr/include" \
+ --with-readline-includes="${EPREFIX}/usr/include" \
--with-readline-library="-lreadline"
- )
- autotools-utils_src_configure
+}
+
+src_install() {
+ default
+ find "${D}" -name \*.la | xargs rm
}
diff --git a/dev-tcltk/tclreadline/tclreadline-2.3.8-r2.ebuild b/dev-tcltk/tclreadline/tclreadline-2.3.8-r2.ebuild
new file mode 100644
index 000000000000..f19d330e2688
--- /dev/null
+++ b/dev-tcltk/tclreadline/tclreadline-2.3.8-r2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Readline extension to TCL"
+HOMEPAGE="https://github.com/flightaware/tclreadline"
+SRC_URI="https://github.com/flightaware/tclreadline/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ppc ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="tk"
+
+DEPEND="
+ dev-lang/tcl:=
+ sys-libs/readline:=
+ tk? ( dev-lang/tk:= )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.8-configure-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ # Needed for Clang 16 patch, can drop once in a release
+ eautoreconf
+
+ sed -i \
+ -e "s|^\(TCLRL_LIBDIR\)=.*|\1=\"${EPREFIX}/usr/$(get_libdir)\"|" \
+ configure || die
+}
+
+src_configure() {
+ local myConf=(
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)"
+ --with-readline-includes="${EPREFIX}/usr/include/readline"
+ )
+ if ! use tk; then
+ myConf+=(--without-tk)
+ fi
+ econf "${myConf[@]}"
+}
+src_install() {
+ default
+ find "${ED}" -name \*.la -delete
+}
diff --git a/dev-tcltk/tclx/Manifest b/dev-tcltk/tclx/Manifest
index d5ea78ab5a5e..eca9e2452738 100644
--- a/dev-tcltk/tclx/Manifest
+++ b/dev-tcltk/tclx/Manifest
@@ -1 +1,2 @@
-DIST tclx8.4.1.tar.bz2 330073 BLAKE2B bc9cd45945b1c9b945bcd139bfc52d42fc9bf1bf4251a8bb599ca6ee2b3804bc692aee6038a3cb84de82d24173473a57a8396fa598558f83237f1586cbe59b11 SHA512 faad58f5d8e0e1e759da639800f354b583fb01418c94f2274924aa07beb0ee9559beb87b3386ed5ae3694700a71dfe5b8ac54ead0ec75c6963507e9d3ead7060
+DIST tclx-8.6.1.tar.gz 457438 BLAKE2B 451b90a6f4403177604684a2a4475a057924faa4b625ac035d65b622b69e8dfea7146143056491ce8740374c18c4fbfb0184a0d074bf799897a01bb767e1695c SHA512 4a2293aad667b108f19f837686044fc168831781d04a9f8eaa2afe677c587f1e128a536ad9db609720e0046a20ff6f8dd7a0e5dd1232ef775c5a14e24ec0614d
+DIST tclx-8.6.3.tar.gz 457293 BLAKE2B 4d3578c0312bc2a0a0cfe079699893818ed6bce941dd84d4cb4786891e784930e0172c4c15892a2b81acf0f4a5062145e9f4397842185358b49658c692cd08cc SHA512 680b8916ccb5725ed173b45549c94e7b1e17c4e5cf700c3991d2791b9f299660e94c880401dccfbff7ca630036c0781c41a9692c2d8ead2e7ad880e2e05a69e7
diff --git a/dev-tcltk/tclx/files/tclx-8.4.4-musl.patch b/dev-tcltk/tclx/files/tclx-8.4.4-musl.patch
new file mode 100644
index 000000000000..301ad263b558
--- /dev/null
+++ b/dev-tcltk/tclx/files/tclx-8.4.4-musl.patch
@@ -0,0 +1,26 @@
+https://github.com/flightaware/tclx/pull/16#issuecomment-1565348180
+--- a/configure.in 2023-03-15 22:00:11.725506240 +0100
++++ b/configure.in 2023-03-15 22:00:29.230246904 +0100
+@@ -253,6 +253,7 @@
+
+ AC_CHECK_FUNC(inet_aton, , [AC_DEFINE(NO_INET_ATON)])
+ AC_CHECK_FUNC(gethostname, , [AC_DEFINE(NO_GETHOSTNAME)])
++ AC_CHECK_FUNCS([rresvport])
+
+ #-------------------------------------------------------------------------
+ # Check for additional libraries the Tcl/Tk does not check for.
+--- a/unix/tclXunixSock.c 2023-03-15 22:02:32.255424538 +0100
++++ b/unix/tclXunixSock.c 2023-03-15 22:03:35.094493443 +0100
+@@ -194,10 +194,12 @@
+ * Allocate a reserved port if requested.
+ */
+ if (getReserved) {
++#ifdef HAVE_RRESVPORT
+ int port;
+ if (rresvport (&port) < 0)
+ goto unixError;
+ local.sin_port = port;
++#endif
+ }
+
+ /*
diff --git a/dev-tcltk/tclx/metadata.xml b/dev-tcltk/tclx/metadata.xml
index 5d29747c91dc..2b324191ed28 100644
--- a/dev-tcltk/tclx/metadata.xml
+++ b/dev-tcltk/tclx/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
- <name>TCL / TK herd</name>
+ <name>TCL/TK project</name>
</maintainer>
- <longdescription>Extended TCL</longdescription>
<upstream>
<remote-id type="sourceforge">tclx</remote-id>
+ <remote-id type="github">flightaware/tclx</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tclx/tclx-8.6.1.ebuild b/dev-tcltk/tclx/tclx-8.6.1.ebuild
new file mode 100644
index 000000000000..673c27dadcb1
--- /dev/null
+++ b/dev-tcltk/tclx/tclx-8.6.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="A set of extensions to TCL"
+HOMEPAGE="http://tclx.sourceforge.net"
+SRC_URI="https://github.com/flightaware/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="threads"
+
+DEPEND="dev-lang/tcl:0="
+RDEPEND="${DEPEND}"
+
+# tests broken, bug #279283
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-8.4-varinit.patch
+ "${FILESDIR}"/${PN}-8.4-ldflags.patch
+ "${FILESDIR}"/${PN}-8.4.4-musl.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+src_prepare() {
+ default
+
+ sed \
+ -e '/CC=/s:-pipe::g' \
+ -i tclconfig/tcl.m4 configure || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable threads) \
+ --enable-shared \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)/"
+
+ # adjust install_name on darwin
+ if [[ ${CHOST} == *-darwin* ]]; then
+ sed -i \
+ -e 's:^\(SHLIB_LD\W.*\)$:\1 -install_name ${pkglibdir}/$@:' \
+ "${S}"/Makefile || die 'sed failed'
+ fi
+}
+
+src_install() {
+ default
+ doman doc/*.[n3]
+}
diff --git a/dev-tcltk/tclx/tclx-8.4.1.ebuild b/dev-tcltk/tclx/tclx-8.6.3.ebuild
index 6ce5cc26795d..0de700c1205e 100644
--- a/dev-tcltk/tclx/tclx-8.4.1.ebuild
+++ b/dev-tcltk/tclx/tclx-8.6.3.ebuild
@@ -1,41 +1,46 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit eutils multilib versionator
+inherit autotools
DESCRIPTION="A set of extensions to TCL"
HOMEPAGE="http://tclx.sourceforge.net"
-SRC_URI="mirror://sourceforge/tclx/${PN}${PV}.tar.bz2"
+SRC_URI="https://github.com/flightaware/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
-IUSE="tk threads"
SLOT="0"
-KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~x86-macos"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="threads"
-DEPEND="
- dev-lang/tcl:0=
- tk? ( dev-lang/tk:0= )"
+DEPEND="dev-lang/tcl:0="
RDEPEND="${DEPEND}"
-S="${WORKDIR}"/${PN}$(get_version_component_range 1-2)
-
# tests broken, bug #279283
RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/${PN}-8.4-varinit.patch
+ "${FILESDIR}"/${PN}-8.4-ldflags.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
src_prepare() {
+ default
+
sed \
-e '/CC=/s:-pipe::g' \
-i tclconfig/tcl.m4 configure || die
- epatch \
- "${FILESDIR}"/${PN}-8.4-varinit.patch \
- "${FILESDIR}"/${PN}-8.4-ldflags.patch
+
+ eautoreconf
}
src_configure() {
econf \
- $(use_enable tk) \
$(use_enable threads) \
--enable-shared \
--with-tcl="${EPREFIX}/usr/$(get_libdir)/"
diff --git a/dev-tcltk/tclxml/Manifest b/dev-tcltk/tclxml/Manifest
index 7e67c72b1b53..0e19de9f7d01 100644
--- a/dev-tcltk/tclxml/Manifest
+++ b/dev-tcltk/tclxml/Manifest
@@ -1 +1,2 @@
-DIST tclxml-3.2.tar.gz 757594 BLAKE2B 6ddadb6add6ccba0db55e704ddffafe1c0f22740d27a5c49bf9c8fd00e1592aed46fd1cef49155101ac1544de8559f0d808731c598cf2189ff84a681bbf870e6 SHA512 5e7d45063c1a311d49ecc42f664bf7d88862fc19a46b64f52d038e2adfcc5b6964ae74d61b40bcf8eb4e1440f849339095fd8712bd39f0cb57e279acea58a3da
+DIST TclXML-3.3.1.tar.gz 681802 BLAKE2B e29bcdb2ef79aa1d1f41ff1338981c0c2d0592fbd146daad102552b2609ab844b12d5de5807a9a26400860783b94df7b754d4ef96a5ab377732dcefaae3c0c21 SHA512 8ee9e36fc8cb9a68da5f810442b5b6fa8d020ef772b9ee98d7c3e429c41ec158451c8994ec5800636db8b33f39a2df7e37c6b64a20a24f7fe4e72e0bba3f2ff3
+DIST tclxml-3.2.7.tar.gz 313751 BLAKE2B 43983d2d6c2f339fa320c4748f889db49fbe9cfff15219e898fdfe5a9a7d6526a2b40b7697fdca6f5272bdfb52cbe68af53ced711ad5d476dc2c5e31898c00ba SHA512 23cb17466f777538088998fa4cce55531708bba517d45cb8b4281401779c418f8532376e4aefcf4bb5f3674ee5bab2e0db25ab2a69c153d3e5820c509edf12ae
diff --git a/dev-tcltk/tclxml/files/tclxml-3.2-fix-implicit-declarations.patch b/dev-tcltk/tclxml/files/tclxml-3.2-fix-implicit-declarations.patch
index b463306abf1e..dba4973c1fd9 100644
--- a/dev-tcltk/tclxml/files/tclxml-3.2-fix-implicit-declarations.patch
+++ b/dev-tcltk/tclxml/files/tclxml-3.2-fix-implicit-declarations.patch
@@ -1,6 +1,7 @@
-diff -urpN tclxml-3.2.orig/tclxml.c tclxml-3.2/tclxml.c
---- tclxml-3.2.orig/tclxml.c 2009-06-08 12:56:10.000000000 +0200
-+++ tclxml-3.2/tclxml.c 2009-06-08 12:57:24.000000000 +0200
+https://github.com/flightaware/TclXML/pull/4
+
+--- a/tclxml.c
++++ b/tclxml.c
@@ -20,6 +20,8 @@
#include <tclxslt/tclxslt.h>
#include <string.h>
diff --git a/dev-tcltk/tclxml/files/tclxml-3.2-format-security.patch b/dev-tcltk/tclxml/files/tclxml-3.2-format-security.patch
deleted file mode 100644
index 2d13c6575ea6..000000000000
--- a/dev-tcltk/tclxml/files/tclxml-3.2-format-security.patch
+++ /dev/null
@@ -1,16 +0,0 @@
- tclxslt-libxslt.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tclxslt-libxslt.c b/tclxslt-libxslt.c
-index d943bf7..d18f645 100644
---- a/tclxslt-libxslt.c
-+++ b/tclxslt-libxslt.c
-@@ -1506,7 +1506,7 @@ TclXSLTExtFunction(xpathCtxt, nargs)
- obj = TclXSLT_ConvertTclObjToXPathObj(extinfo->interp, resultPtr);
- valuePush(xpathCtxt, obj);
- } else {
-- xmlGenericError(xmlGenericErrorContext,
-+ xmlGenericError(xmlGenericErrorContext, "%s",
- Tcl_GetStringFromObj(resultPtr, NULL));
- /* Need to define a new error code - this is the closest in meaning */
- xpathCtxt->error = XPATH_UNKNOWN_FUNC_ERROR;
diff --git a/dev-tcltk/tclxml/files/tclxml-3.2.7-bool.patch b/dev-tcltk/tclxml/files/tclxml-3.2.7-bool.patch
new file mode 100644
index 000000000000..8d29180f0826
--- /dev/null
+++ b/dev-tcltk/tclxml/files/tclxml-3.2.7-bool.patch
@@ -0,0 +1,26 @@
+--- a/tclxml.c 2020-12-24 16:58:20.051675497 +0100
++++ b/tclxml.c 2020-12-24 16:58:49.586185021 +0100
+@@ -20,6 +20,10 @@
+ #include <tclxslt/tclxslt.h>
+ #include <string.h>
+
++#ifdef bool
++#undef bool
++#endif
++
+ int Tcldom_libxml2_Init ( Tcl_Interp *interp );
+
+ #define TCL_DOES_STUBS \
+--- a/tclxslt-libxslt.c 2020-12-24 16:59:07.004895777 +0100
++++ b/tclxslt-libxslt.c 2020-12-24 16:59:46.280243657 +0100
+@@ -20,6 +20,10 @@
+ #include <libxslt/imports.h>
+ #include <libxslt/security.h>
+
++#ifdef bool
++#undef bool
++#endif
++
+ #undef TCL_STORAGE_CLASS
+ #define TCL_STORAGE_CLASS DLLEXPORT
+
diff --git a/dev-tcltk/tclxml/files/tclxml-3.3.1-funcPointer.patch b/dev-tcltk/tclxml/files/tclxml-3.3.1-funcPointer.patch
new file mode 100644
index 000000000000..3f641b490883
--- /dev/null
+++ b/dev-tcltk/tclxml/files/tclxml-3.3.1-funcPointer.patch
@@ -0,0 +1,38 @@
+From c1bc95aadd5334adf9c6d17ce918abf98af14c6f Mon Sep 17 00:00:00 2001
+From: Alfredo Tupone <tupone@gentoo.org>
+Date: Sat, 24 Feb 2024 20:38:49 +0100
+Subject: [PATCH] fix -Wincompatible-pointer-types
+
+---
+ docObj.c | 4 +---
+ include/tclxml-libxml2/tclxml-libxml2Decls.h | 2 +-
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/docObj.c b/docObj.c
+index 20a1bd4..c4d5bf9 100644
+--- a/docObj.c
++++ b/docObj.c
+@@ -1852,9 +1852,7 @@ ErrorCodeToString(code)
+ }
+
+ void
+-TclXML_libxml2_ErrorHandler (ctx, error)
+- void *ctx; /* ignore - depends on context */
+- xmlErrorPtr error;
++TclXML_libxml2_ErrorHandler (void *ctx, const xmlError *error)
+ {
+ ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
+ Tcl_Obj *objPtr;
+diff --git a/include/tclxml-libxml2/tclxml-libxml2Decls.h b/include/tclxml-libxml2/tclxml-libxml2Decls.h
+index 3faa5f7..9ad6555 100644
+--- a/include/tclxml-libxml2/tclxml-libxml2Decls.h
++++ b/include/tclxml-libxml2/tclxml-libxml2Decls.h
+@@ -55,7 +55,7 @@ EXTERN void TclXML_libxml2_DocKeep _ANSI_ARGS_((Tcl_Obj * objPtr,
+ TclXML_libxml2_DocumentHandling keep));
+ /* 10 */
+ EXTERN void TclXML_libxml2_ErrorHandler _ANSI_ARGS_((void * ctx,
+- xmlErrorPtr error));
++ const xmlError *error));
+ /* 11 */
+ EXTERN void TclXML_libxml2_ResetError _ANSI_ARGS_((
+ Tcl_Interp * interp));
diff --git a/dev-tcltk/tclxml/metadata.xml b/dev-tcltk/tclxml/metadata.xml
index 47411252c4c4..1099a7702722 100644
--- a/dev-tcltk/tclxml/metadata.xml
+++ b/dev-tcltk/tclxml/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">tclxml</remote-id>
+ <remote-id type="github">flightaware/TclXML</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tclxml/tclxml-3.2-r2.ebuild b/dev-tcltk/tclxml/tclxml-3.2.7-r1.ebuild
index b0a217d741f6..5c4a298b68e7 100644
--- a/dev-tcltk/tclxml/tclxml-3.2-r2.ebuild
+++ b/dev-tcltk/tclxml/tclxml-3.2.7-r1.ebuild
@@ -1,36 +1,33 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-
-inherit eutils multilib
+EAPI=7
DESCRIPTION="Pure Tcl implementation of an XML parser"
HOMEPAGE="http://tclxml.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tclxml/${P}.tar.gz"
+SRC_URI="https://github.com/wjoye/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
-IUSE="debug threads"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="alpha amd64 ppc sparc x86"
+KEYWORDS="~alpha amd64 ppc sparc x86"
+IUSE="debug threads"
DEPEND="
- >=dev-lang/tcl-8.2:0
+ >=dev-lang/tcl-8.2:=
>=dev-libs/libxml2-2.6.9
dev-libs/libxslt
>=dev-tcltk/tcllib-1.2
- dev-libs/expat
- !dev-tcltk/tcldom"
+ dev-libs/expat"
# test? ( dev-tcltk/tclparser )
RDEPEND="${DEPEND}"
RESTRICT="test"
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-fix-implicit-declarations.patch \
- "${FILESDIR}"/${P}-format-security.patch
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2-fix-implicit-declarations.patch
+ "${FILESDIR}"/${P}-bool.patch
+)
src_configure() {
local myconf=""
@@ -45,8 +42,3 @@ src_configure() {
$(use_enable amd64 64bit) \
$(use_enable debug symbols)
}
-
-src_install() {
- default
- dohtml doc/*.html
-}
diff --git a/dev-tcltk/tclxml/tclxml-3.3.1-r2.ebuild b/dev-tcltk/tclxml/tclxml-3.3.1-r2.ebuild
new file mode 100644
index 000000000000..0ef7c12a88f0
--- /dev/null
+++ b/dev-tcltk/tclxml/tclxml-3.3.1-r2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN=TclXML
+MYP=${MYPN}-${PV}
+
+DESCRIPTION="Pure Tcl implementation of an XML parser"
+HOMEPAGE="https://github.com/flightaware/TclXML"
+SRC_URI="https://github.com/flightaware/TclXML/archive/refs/tags/v${PV}.tar.gz
+ -> ${MYP}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ppc sparc x86"
+IUSE="debug threads"
+
+DEPEND="
+ >=dev-lang/tcl-8.2:=
+ >=dev-libs/libxml2-2.6.9
+ dev-libs/libxslt
+ >=dev-tcltk/tcllib-1.2
+ dev-libs/expat"
+# test? ( dev-tcltk/tclparser )
+RDEPEND="${DEPEND}"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2-fix-implicit-declarations.patch
+ "${FILESDIR}"/${P}-funcPointer.patch
+)
+
+S="${WORKDIR}"/${MYP}
+
+src_configure() {
+ local myconf=""
+
+ use threads && myconf="${myconf} --enable-threads"
+
+ econf ${myconf} \
+ --with-xml2-config="${EPREFIX}"/usr/bin/xml2-config \
+ --with-xslt-config="${EPREFIX}"/usr/bin/xslt-config \
+ --with-tclinclude="${EPREFIX}"/usr/include \
+ --with-tcl="${EPREFIX}"/usr/$(get_libdir) \
+ $(use_enable amd64 64bit) \
+ $(use_enable debug symbols)
+}
diff --git a/dev-tcltk/tdom/Manifest b/dev-tcltk/tdom/Manifest
index da4d8a71d02e..c5acd1147881 100644
--- a/dev-tcltk/tdom/Manifest
+++ b/dev-tcltk/tdom/Manifest
@@ -1,2 +1,2 @@
-DIST tDOM-0.8.3.tgz 990367 BLAKE2B 172c20fba9a5d66564f94b76b2a732d0ec1d281386b957b151e300c824d96dea746f355446896eda1953aab9708da8916e05083d991c9ef317f11928ec04a541 SHA512 aa5352bc9b67c45d115e52dbf2cf153a3db89f851b51c1cd574af69b02c466f643df0b5448f7d105245246d20a92f80605f16bd927cd7925c1f2007827f2dc20
-DIST tdom-0.9.1-src.tgz 1100163 BLAKE2B 25fca8ae7b2dbcfaca711df90e42479dfba57e9aaf0e616c519b6e74bafb1b5fa371c48abe0875126aa8e1979196a10f6030a0ffe8786b21f7685e8c2ddcb16c SHA512 40dd5ec942ac4cce2fd78f53caf3a2b5e2fae9fbc5617923d94f07c9f530fa936696d79abe080ade2edbc4f4a86c35898b000180f20d9320edd8bfa3fa19d863
+DIST tdom-0.9.2-src.tgz 1215099 BLAKE2B 1d720043ee4acc27d3fad138baced96b291c2e39dc1535fb1927a9968e07324d5e0e0bb0c71d8e5678b8c6f4bb69fb09ce05ac9447712422af0d91c9e06c163e SHA512 ba6611db866f3afffd112887cf6b0f250273f29ab4ed8e29de89405b997a0f7569216f86206040462aba9a4b8548c346bc72945cf7d617cf45a644fa8ded7121
+DIST tdom-0.9.3-src.tgz 1319804 BLAKE2B 8b4c50407eaf28c002ec8399d44881b91bef346dca75370c27e06266a5fa90900528a01fc8310d8a250f551e3a627d0d2965a2e85ef8a9132010f7718e5549ce SHA512 71a589465f84721f222b6312f51ee564d11d88a82000a0e5cc1dab4653bffd57347a39936590b62a580e9df59d7266ff3ae4295fe91ff4b9e58f012e80b0cb3e
diff --git a/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch b/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch
deleted file mode 100644
index 7fa200b9ee33..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-Source: http://download.opensuse.org/repositories/openSUSE:/11.0/standard/src/tdom-0.8.2-50.1.src.rpm
---- extensions/tnc/Makefile.in
-+++ extensions/tnc/Makefile.in
-@@ -355,29 +355,30 @@
- #========================================================================
-
- install-lib-binaries: binaries
-- @mkdir -p $(DESTDIR)$(pkglibdir)
-+ @mkdir -p $(DESTDIR)$(libdir)
- @list='$(lib_BINARIES)'; for p in $$list; do \
- if test -f $$p; then \
-- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \
-+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \
- stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
- if test "x$$stub" = "xstub"; then \
-- echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p; \
- else \
-- echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \
- fi; \
- ext=`echo $$p|sed -e "s/.*\.//"`; \
- if test "x$$ext" = "xdll"; then \
- lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
- if test -f $$lib; then \
-- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
-- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
-+ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \
-+ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \
- fi; \
- fi; \
- fi; \
- done
-+ @mkdir -p $(DESTDIR)$(pkglibdir)
- @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
- if test -f $(srcdir)/$$p; then \
- destp=`basename $$p`; \
---- extensions/tnc/configure.in
-+++ extensions/tnc/configure.in
-@@ -89,7 +89,7 @@
- if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes" ; then
- TEA_ADD_LIBS([\"`${CYGPATH} ${TDOM_STUB_LIB_PATH}`\"])
- else
-- TEA_ADD_LIBS([${TDOM_STUB_LIB_SPEC}])
-+ TEA_ADD_LIBS([${TDOM_BUILD_STUB_LIB_SPEC}])
- fi
-
- #--------------------------------------------------------------------
---- extensions/tnc/pkgIndex.tcl.in
-+++ extensions/tnc/pkgIndex.tcl.in
-@@ -2,4 +2,4 @@
-
- package ifneeded tnc @PACKAGE_VERSION@ \
- "package require tdom; \
-- [list load [file join $dir @PKG_LIB_FILE@] tnc]"
-+ [list load @PKG_LIB_FILE@ tnc]"
---- extensions/tnc/Makefile.in
-+++ extensions/tnc/Makefile.in
-@@ -160,7 +160,7 @@ DEFS = @DEFS@ $(PKG_CFLAGS)
- CONFIG_CLEAN_FILES = Makefile
-
- CPPFLAGS = @CPPFLAGS@
--LIBS = @PKG_LIBS@ @LIBS@
-+LIBS = @PKG_LIBS@ @LIBS@ -L../../unix/
- AR = @AR@
- CFLAGS = @CFLAGS@
- COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
diff --git a/dev-tcltk/tdom/files/tdom-0.8.2.patch b/dev-tcltk/tdom/files/tdom-0.8.2.patch
deleted file mode 100644
index 73af7c60e141..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.8.2.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Source: http://download.opensuse.org/repositories/openSUSE:/11.0/standard/src/tdom-0.8.2-50.1.src.rpm
---- Makefile.in
-+++ Makefile.in
-@@ -307,7 +307,7 @@
-
- pkgIndex.tcl-hand:
- @(echo 'package ifneeded $(PACKAGE_NAME) $(PACKAGE_VERSION)\
-- "load [list [file join $$dir $(PKG_LIB_FILE)]];\
-+ "load $(PKG_LIB_FILE);\
- source [list [file join $$dir tdom.tcl]]"'\
- ) > pkgIndex.tcl
-
-@@ -385,29 +385,30 @@
- #========================================================================
-
- install-lib-binaries: binaries
-- @mkdir -p $(DESTDIR)$(pkglibdir)
-+ @mkdir -p $(DESTDIR)$(libdir)
- @list='$(lib_BINARIES)'; for p in $$list; do \
- if test -f $$p; then \
-- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \
-+ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \
- stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
- if test "x$$stub" = "xstub"; then \
-- echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p; \
- else \
-- echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \
- fi; \
- ext=`echo $$p|sed -e "s/.*\.//"`; \
- if test "x$$ext" = "xdll"; then \
- lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
- if test -f $$lib; then \
-- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
-- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
-+ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \
-+ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \
- fi; \
- fi; \
- fi; \
- done
-+ @mkdir -p $(DESTDIR)$(pkglibdir)
- @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
- if test -f $(srcdir)/$$p; then \
- destp=`basename $$p`; \
diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch b/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch
deleted file mode 100644
index 818850bd8eee..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-diff --git a/configure.in b/configure.in
-index 8e634f2..d9999cf 100644
---- a/configure.in
-+++ b/configure.in
-@@ -72,6 +72,7 @@ AC_CHECK_FUNCS(memmove bcopy)
- #--------------------------------------------------------------------
-
- TDOM_PATH_AOLSERVER
-+TDOM_PATH_EXPAT
-
- #-----------------------------------------------------------------------
- # __CHANGE__
-@@ -83,10 +84,7 @@ TDOM_PATH_AOLSERVER
- # and PKG_TCL_SOURCES.
- #-----------------------------------------------------------------------
-
--TEA_ADD_SOURCES([expat/xmlrole.c \
-- expat/xmltok.c \
-- expat/xmlparse.c \
-- generic/xmlsimple.c \
-+TEA_ADD_SOURCES([generic/xmlsimple.c \
- generic/utf8conv.c \
- generic/dom.c \
- generic/domhtml.c \
-@@ -99,7 +97,7 @@ TEA_ADD_SOURCES([expat/xmlrole.c \
- generic/tclexpat.c \
- generic/tdomStubInit.c])
- TEA_ADD_HEADERS([generic/tdom.h])
--TEA_ADD_INCLUDES([-I${srcdir}/generic -I${srcdir}/expat ${AOL_INCLUDES}])
-+TEA_ADD_INCLUDES([-I${srcdir}/generic ${AOL_INCLUDES}])
- TEA_ADD_LIBS([${AOL_LIBS}])
- TEA_ADD_CFLAGS([])
- TEA_ADD_STUB_SOURCES([generic/tdomStubLib.c])
-diff --git a/tdom.m4 b/tdom.m4
-index f5ecd98..fcab883 100644
---- a/tdom.m4
-+++ b/tdom.m4
-@@ -216,6 +216,46 @@ AC_DEFUN(TDOM_PATH_AOLSERVER, [
- fi
- ])
-
-+
-+AC_DEFUN(TDOM_PATH_EXPAT, [
-+ AC_MSG_CHECKING([for expat])
-+ AC_ARG_WITH(expat,
-+ AC_HELP_STRING([--with-expat],
-+ [directory with expat installation]), , [with_expat=no])
-+
-+ AC_CACHE_VAL(ac_cv_c_expat,[
-+ case $with_expat in
-+ no) ;;
-+ yes)
-+ for f in /usr/local /usr; do
-+ if test -f "$f/include/expat.h" ; then
-+ ac_cv_c_expat=`(cd $f; pwd)`
-+ break
-+ fi
-+ done
-+ ;;
-+ *)
-+ if test -f "$with_expat/include/expat.h"; then
-+ ac_cv_c_expat=`(cd $with_expat; pwd)`
-+ else
-+ AC_MSG_ERROR([${with_expat} directory doesn't contain expat.h])
-+ fi
-+ esac
-+ ])
-+ if test x"${ac_cv_c_expat}" = x ; then
-+ AC_MSG_RESULT([using local copy])
-+ TEA_ADD_SOURCES([expat/xmlrole.c \
-+ expat/xmltok.c \
-+ expat/xmlparse.c])
-+ TEA_ADD_INCLUDES([-I${srcdir}/expat])
-+ else
-+ AC_MSG_RESULT([${ac_cv_c_expat}])
-+ TEA_ADD_INCLUDES(${ac_cv_c_expat}/include)
-+ TEA_ADD_LIBS([-lexpat])
-+ fi
-+])
-+
-+
- #------------------------------------------------------------------------
- # TDOM_PATH_CONFIG --
- #
diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch b/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch
deleted file mode 100644
index f742f6e7f5a1..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/Makefile.in b/Makefile.in
-index d995328..5c17e11 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -108,7 +108,7 @@ CFLAGS_DEFAULT = @CFLAGS_DEFAULT@
- CFLAGS_WARNING = @CFLAGS_WARNING@
- CLEANFILES = @CLEANFILES@
- EXEEXT = @EXEEXT@
--LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@
-+LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -Wl,-soname,libtdom$(PACKAGE_VERSION).so
- MAKE_LIB = @MAKE_LIB@
- MAKE_SHARED_LIB = @MAKE_SHARED_LIB@
- MAKE_STATIC_LIB = @MAKE_STATIC_LIB@
-diff --git a/extensions/tnc/Makefile.in b/extensions/tnc/Makefile.in
-index f8a332c..01e0ef0 100644
---- a/extensions/tnc/Makefile.in
-+++ b/extensions/tnc/Makefile.in
-@@ -98,7 +98,7 @@ CFLAGS_DEFAULT = @CFLAGS_DEFAULT@
- CFLAGS_WARNING = @CFLAGS_WARNING@
- CLEANFILES = @CLEANFILES@
- EXEEXT = @EXEEXT@
--LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@
-+LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -Wl,-soname,libtnc$(PACKAGE_VERSION).so
- MAKE_LIB = @MAKE_LIB@
- MAKE_SHARED_LIB = @MAKE_SHARED_LIB@
- MAKE_STATIC_LIB = @MAKE_STATIC_LIB@
diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch b/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch
deleted file mode 100644
index 5a805931ca31..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch
+++ /dev/null
@@ -1,21 +0,0 @@
- generic/tcldom.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/generic/tcldom.c b/generic/tcldom.c
-index 91d98c9..0f024b3 100644
---- a/generic/tcldom.c
-+++ b/generic/tcldom.c
-@@ -5933,8 +5933,13 @@ int tcldom_EvalLocked (
- ret = Tcl_EvalObj(interp, objv[2]);
- if (ret == TCL_ERROR) {
- char msg[64 + TCL_INTEGER_SPACE];
-+ #if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6
- sprintf(msg, "\n (\"%s %s\" body line %d)", Tcl_GetString(objv[0]),
- Tcl_GetString(objv[1]), interp->errorLine);
-+ #else
-+ sprintf(msg, "\n (\"%s %s\" body line %d)", Tcl_GetString(objv[0]),
-+ Tcl_GetString(objv[1]), Tcl_GetErrorLine(interp));
-+ #endif
- Tcl_AddErrorInfo(interp, msg);
- }
-
diff --git a/dev-tcltk/tdom/files/tdom-0.9.1-tnc.patch b/dev-tcltk/tdom/files/tdom-0.9.1-tnc.patch
deleted file mode 100644
index 36d844d74cbf..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.9.1-tnc.patch
+++ /dev/null
@@ -1,55 +0,0 @@
---- a/extensions/tnc/Makefile.in 2018-10-31 21:18:18.701695694 +0100
-+++ b/extensions/tnc/Makefile.in 2018-10-31 21:19:25.621555122 +0100
-@@ -372,25 +372,25 @@
- #========================================================================
-
- install-lib-binaries: binaries
-- @$(INSTALL_DATA_DIR) $(DESTDIR)$(pkglibdir)
-+ @$(INSTALL_DATA_DIR) $(DESTDIR)$(libdir)
- @list='$(lib_BINARIES)'; for p in $$list; do \
- if test -f $$p; then \
-- echo " $(INSTALL_LIBRARY) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(INSTALL_LIBRARY) $$p $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(INSTALL_LIBRARY) $$p $(DESTDIR)$(libdir)/$$p"; \
-+ $(INSTALL_LIBRARY) $$p $(DESTDIR)$(libdir)/$$p; \
- stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
- if test "x$$stub" = "xstub"; then \
-- echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p; \
- else \
-- echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \
-+ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \
- fi; \
- ext=`echo $$p|sed -e "s/.*\.//"`; \
- if test "x$$ext" = "xdll"; then \
- lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
- if test -f $$lib; then \
-- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
-- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
-+ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \
-+ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \
- fi; \
- fi; \
- fi; \
-@@ -398,13 +398,13 @@
- @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
- if test -f $(srcdir)/$$p; then \
- destp=`basename $$p`; \
-- echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \
-- $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \
-+ echo " Install $$destp $(DESTDIR)$(libdir)/$$destp"; \
-+ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(libdir)/$$destp; \
- fi; \
- done
- @if test "x$(SHARED_BUILD)" = "x1"; then \
-- echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \
-- $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \
-+ echo " Install pkgIndex.tcl $(DESTDIR)$(libdir)"; \
-+ $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(libdir); \
- fi
-
- #========================================================================
diff --git a/dev-tcltk/tdom/files/tdom-0.9.1.patch b/dev-tcltk/tdom/files/tdom-0.9.1.patch
deleted file mode 100644
index 00d3df2a3068..000000000000
--- a/dev-tcltk/tdom/files/tdom-0.9.1.patch
+++ /dev/null
@@ -1,58 +0,0 @@
---- a/Makefile.in 2018-10-31 21:12:16.856861967 +0100
-+++ b/Makefile.in 2018-10-31 21:15:26.611628532 +0100
-@@ -326,7 +326,7 @@
-
- pkgIndex.tcl-hand:
- @(echo 'package ifneeded $(PACKAGE_NAME) $(PACKAGE_VERSION) \
-- "load [list [file join $$dir $(PKG_LIB_FILE)]];\
-+ "load $(PKG_LIB_FILE);\
- source [list [file join $$dir tdom.tcl]]"'\
- ) > pkgIndex.tcl
-
-@@ -422,7 +422,7 @@
- #========================================================================
-
- install-lib-binaries: binaries
-- @$(INSTALL_DATA_DIR) $(DESTDIR)$(pkglibdir)
-+ @$(INSTALL_DATA_DIR) $(DESTDIR)$(libdir)
- @list='$(lib_BINARIES)'; for p in $$list; do \
- if test -f $$p; then \
- if test "x$$stub" = "xstub"; then \
-@@ -432,15 +432,15 @@
- echo " $(RANLIB) $$p"; \
- $(RANLIB) $$p; \
- fi; \
-- echo " $(INSTALL_LIBRARY) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
-- $(INSTALL_LIBRARY) $$p $(DESTDIR)$(pkglibdir)/$$p; \
-+ echo " $(INSTALL_LIBRARY) $$p $(DESTDIR)$(libdir)/$$p"; \
-+ $(INSTALL_LIBRARY) $$p $(DESTDIR)$(libdir)/$$p; \
- stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
- ext=`echo $$p|sed -e "s/.*\.//"`; \
- if test "x$$ext" = "xdll"; then \
- lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
- if test -f $$lib; then \
-- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
-- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
-+ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \
-+ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \
- fi; \
- fi; \
- fi; \
-@@ -450,13 +450,13 @@
- @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
- if test -f $(srcdir)/$$p; then \
- destp=`basename $$p`; \
-- echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \
-- $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \
-+ echo " Install $$destp $(DESTDIR)$(libdir)/$$destp"; \
-+ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(libdir)/$$destp; \
- fi; \
- done
- @if test "x$(SHARED_BUILD)" = "x1"; then \
-- echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \
-- $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \
-+ echo " Install pkgIndex.tcl $(DESTDIR)$(libdir)"; \
-+ $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(libdir); \
- fi
-
- #========================================================================
diff --git a/dev-tcltk/tdom/files/tdom-0.9.2-clang6.patch b/dev-tcltk/tdom/files/tdom-0.9.2-clang6.patch
new file mode 100644
index 000000000000..4bf5e3b2486e
--- /dev/null
+++ b/dev-tcltk/tdom/files/tdom-0.9.2-clang6.patch
@@ -0,0 +1,11 @@
+--- a/generic/tdomDecls.h 2023-01-18 20:37:24.944545544 +0100
++++ b/generic/tdomDecls.h 2023-01-18 20:37:36.574361814 +0100
+@@ -87,7 +87,7 @@
+ int (*xML_GetIdAttributeIndex) (XML_Parser parser); /* 15 */
+ domNode * (*tcldom_getNodeFromName) (Tcl_Interp *interp, char *nodeName, char **errMsg); /* 16 */
+ domDocument * (*tcldom_getDocumentFromName) (Tcl_Interp *interp, char *docName, char **errMsg); /* 17 */
+- SchemaData * (*tdomGetSchemadata) (void); /* 18 */
++ SchemaData * (*tdomGetSchemadata) (Tcl_Interp *interp); /* 18 */
+ } TdomStubs;
+
+ extern const TdomStubs *tdomStubsPtr;
diff --git a/dev-tcltk/tdom/files/tdom-0.9.2-nothreads.patch b/dev-tcltk/tdom/files/tdom-0.9.2-nothreads.patch
new file mode 100644
index 000000000000..a0a691fdce60
--- /dev/null
+++ b/dev-tcltk/tdom/files/tdom-0.9.2-nothreads.patch
@@ -0,0 +1,22 @@
+--- a/generic/tdomDecls.h 2021-12-31 20:52:18.070370435 +0100
++++ b/generic/tdomDecls.h 2021-12-31 20:53:45.892045820 +0100
+@@ -63,7 +63,7 @@
+ EXTERN domDocument * tcldom_getDocumentFromName(Tcl_Interp *interp,
+ char *docName, char **errMsg);
+ /* 18 */
+-EXTERN SchemaData * tdomGetSchemadata(void);
++EXTERN SchemaData * tdomGetSchemadata(Tcl_Interp *interp);
+
+ typedef struct TdomStubs {
+ int magic;
+--- a/generic/schema.c 2021-12-31 23:19:47.869682736 +0100
++++ b/generic/schema.c 2021-12-31 23:20:14.474255669 +0100
+@@ -419,7 +419,7 @@
+ }
+ #else
+ SchemaData *
+-tdomGetSchemadata (void)
++tdomGetSchemadata (Tcl_Interp *interp)
+ {
+ return GETASI;
+ }
diff --git a/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch b/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch
new file mode 100644
index 000000000000..cdfdcb8bf815
--- /dev/null
+++ b/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch
@@ -0,0 +1,28 @@
+--- a/tclconfig/tcl.m4 2019-12-07 22:00:18.094712146 +0100
++++ b/tclconfig/tcl.m4 2019-12-07 22:00:28.961515544 +0100
+@@ -434,7 +434,6 @@
+ AC_SUBST(TCL_STUB_LIB_SPEC)
+
+ AC_MSG_CHECKING([platform])
+- hold_cc=$CC; CC="$TCL_CC"
+ AC_TRY_COMPILE(,[
+ #ifdef _WIN32
+ #error win32
+@@ -446,7 +445,6 @@
+ TEA_PLATFORM="windows"
+ AC_CHECK_PROG(CYGPATH, cygpath, cygpath -m, echo) ]
+ )
+- CC=$hold_cc
+ AC_MSG_RESULT($TEA_PLATFORM)
+
+ # The BUILD_$pkg is to define the correct extern storage class
+--- a/configure.ac 2019-12-07 22:06:56.954496437 +0100
++++ b/configure.ac 2019-12-07 22:07:53.538472872 +0100
+@@ -33,6 +33,7 @@
+ TEA_INIT([3.13])
+
+ AC_CONFIG_AUX_DIR(tclconfig)
++AC_CONFIG_SUBDIRS([extensions/tnc extensions/example])
+
+ #--------------------------------------------------------------------
+ # Load the tclConfig.sh file
diff --git a/dev-tcltk/tdom/files/tdom-0.9.3-expat.patch b/dev-tcltk/tdom/files/tdom-0.9.3-expat.patch
new file mode 100644
index 000000000000..a55fa4b22c14
--- /dev/null
+++ b/dev-tcltk/tdom/files/tdom-0.9.3-expat.patch
@@ -0,0 +1,10 @@
+--- a/generic/dom.h 2024-02-26 08:37:08.464473295 +0100
++++ b/generic/dom.h 2024-02-26 08:43:19.859997138 +0100
+@@ -37,6 +37,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <ctype.h>
++#define XML_GE 1
+ #include <expat.h>
+ #include <domalloc.h>
+
diff --git a/dev-tcltk/tdom/metadata.xml b/dev-tcltk/tdom/metadata.xml
index 9b594bd7ea41..c2f272117389 100644
--- a/dev-tcltk/tdom/metadata.xml
+++ b/dev-tcltk/tdom/metadata.xml
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
<name>Gentoo Tcltk Project</name>
</maintainer>
<longdescription>
-tDOM combines high performance XML data processing with easy and
-powerful Tcl scripting functionality. tDOM should be one of the fastest
-ways to manipulate XML with a scripting language and uses very few
-memory: for example, the DOM tree of the XML recommendation in XML
-(160K) needs only about 450K of memory.
-</longdescription>
+ tDOM combines high performance XML data processing with easy and
+ powerful Tcl scripting functionality. tDOM should be one of the fastest
+ ways to manipulate XML with a scripting language and uses very few
+ memory: for example, the DOM tree of the XML recommendation in XML
+ (160K) needs only about 450K of memory.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-tcltk/tdom/tdom-0.9.1.ebuild b/dev-tcltk/tdom/tdom-0.9.2-r1.ebuild
index b2938532de33..0b92c7636533 100644
--- a/dev-tcltk/tdom/tdom-0.9.1.ebuild
+++ b/dev-tcltk/tdom/tdom-0.9.2-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit autotools eutils flag-o-matic multilib toolchain-funcs
+inherit autotools flag-o-matic
MY_P="tDOM-${PV}"
@@ -13,18 +13,20 @@ SRC_URI="http://tdom.org/downloads/${P}-src.tgz"
LICENSE="MPL-1.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~s390 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
-IUSE="static-libs threads"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="threads"
DEPEND="
dev-lang/tcl:0=
dev-libs/expat"
RDEPEND="${DEPEND}"
+S="${WORKDIR}"/${P}-src
+
PATCHES=(
- "${FILESDIR}/"${P}.patch
- "${FILESDIR}/"${P}-tnc.patch
- "${FILESDIR}/"${PN}-0.8.3-soname.patch
+ "${FILESDIR}"/${P}-useCC.patch
+ "${FILESDIR}"/${P}-nothreads.patch
+ "${FILESDIR}"/${P}-clang6.patch
)
src_prepare() {
@@ -34,7 +36,9 @@ src_prepare() {
-e 's:-pipe::g' \
-e 's:-fomit-frame-pointer::g' \
-e '/SHLIB_LD_LIBS/s:\"$: ${TCL_LIB_FLAG}":g' \
- -i {.,extensions/tnc}/configure tclconfig/tcl.m4 || die
+ -i tclconfig/tcl.m4 || die
+ mv extensions/tnc/configure.{in,ac} || die
+ mv extensions/example/configure.{in,ac} || die
default
eautoreconf
}
@@ -76,9 +80,4 @@ src_install() {
emake DESTDIR="${D}" install
popd > /dev/null
done
-
- if ! use static-libs; then
- einfo "Removing static libs ..."
- rm -f "${ED}"/usr/$(get_libdir)/*.{a,la} || die
- fi
}
diff --git a/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild b/dev-tcltk/tdom/tdom-0.9.3.ebuild
index 833bac790009..cf032e54f1e8 100644
--- a/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild
+++ b/dev-tcltk/tdom/tdom-0.9.3.ebuild
@@ -1,47 +1,49 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-inherit autotools eutils flag-o-matic multilib toolchain-funcs
+inherit autotools flag-o-matic
MY_P="tDOM-${PV}"
DESCRIPTION="A XML/DOM/XPath/XSLT Implementation for Tcl"
-HOMEPAGE="https://tdom.github.com/"
-#SRC_URI="https://cloud.github.com/downloads/tDOM/${PN}/${MY_P}.tgz"
-SRC_URI="mirror://github/tDOM/${PN}/${MY_P}.tgz"
+HOMEPAGE="https://core.tcl.tk/tdom/"
+SRC_URI="http://tdom.org/downloads/${P}-src.tgz"
LICENSE="MPL-1.1"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~mips ~ppc s390 sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
-IUSE="static-libs threads"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="threads"
DEPEND="
dev-lang/tcl:0=
dev-libs/expat"
RDEPEND="${DEPEND}"
-S="${WORKDIR}/${MY_P}"
+S="${WORKDIR}"/${P}-src
PATCHES=(
- "${FILESDIR}/"${PN}-0.8.2.patch
- "${FILESDIR}/"${P}-soname.patch
- "${FILESDIR}/"${P}-expat.patch
- "${FILESDIR}/"${PN}-0.8.2-tnc.patch
- "${FILESDIR}/"${P}-tcl8.6.patch
- )
+ "${FILESDIR}"/${PN}-0.9.2-useCC.patch
+ "${FILESDIR}"/${P}-expat.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 rewinddir64 closedir64 stat64 # used to test for Large File Support
+ arc4random_buf arc4random # used for BSD
+)
src_prepare() {
- tc-export AR
append-libs -lm
sed \
-e 's:-O2::g' \
-e 's:-pipe::g' \
-e 's:-fomit-frame-pointer::g' \
-e '/SHLIB_LD_LIBS/s:\"$: ${TCL_LIB_FLAG}":g' \
- -i {.,extensions/tnc}/configure tclconfig/tcl.m4 || die
- epatch "${PATCHES[@]}"
+ -i tclconfig/tcl.m4 || die
+ mv extensions/tnc/configure.{in,ac} || die
+ mv extensions/example/configure.{in,ac} || die
+ default
eautoreconf
}
@@ -49,13 +51,12 @@ src_configure() {
local myeconfargs=(
$(use_enable threads)
--enable-shared
- --disable-tdomalloc
- --with-expat
--with-tcl="${EPREFIX}"/usr/$(get_libdir)
)
- cd "${S}"/unix && ECONF_SOURCE=".." econf ${myeconfargs}
- cd "${S}"/extensions/tdomhtml && econf ${myeconfargs}
+ cd "${S}"/unix && ECONF_SOURCE=".." econf ${myeconfargs} \
+ --disable-tdomalloc --with-expat
+ cd "${S}"/extensions/tdomhtml && econf
cd "${S}"/extensions/tnc && econf ${myeconfargs}
}
@@ -69,6 +70,10 @@ src_compile() {
done
}
+src_test() {
+ cd unix && default
+}
+
src_install() {
local dir
@@ -79,9 +84,4 @@ src_install() {
emake DESTDIR="${D}" install
popd > /dev/null
done
-
- if ! use static-libs; then
- einfo "Removing static libs ..."
- rm -f "${ED}"/usr/$(get_libdir)/*.{a,la} || die
- fi
}
diff --git a/dev-tcltk/thread/Manifest b/dev-tcltk/thread/Manifest
index a3d1b14423f9..54a772c8f25f 100644
--- a/dev-tcltk/thread/Manifest
+++ b/dev-tcltk/thread/Manifest
@@ -1,3 +1,4 @@
-DIST thread2.7.1.tar.gz 295134 BLAKE2B 785e832f8acf926f550cbffa3e2383eb6ad7fdbb480830e3c0f56d207375053c865d6eb201361acb8ca2df8951a037603b015f85ab4903d80a92f9d957af9dcd SHA512 18ebd9431b6f6bfb1e6a60797af39db0dee29a16cd457ddab2a18cd5dfd9ef2dea9284ab99238fb05b8284fcc855c2ef8011eb3ed02d7e54d715379d133512dc
-DIST thread2.7.3.tar.gz 291332 BLAKE2B 96e7b03cf22227e85462994a6f955fd04d2e40384e540e7cbf78f93c661611607312eb1ceb195cecbe672ecb53df464f1cff4e9b9768864cfeef6be82595e17e SHA512 0efe8db04ffb1cbe539d1bbc9f82e52df994cf0cb570a2eeb79b6f821ee5d585e0b034b970e793a54c588b08321e5ea286c7b9173a09a5cc573b11fbf00c2888
-DIST thread2.8.2.tar.gz 346222 BLAKE2B 194673b14b3f6b98a46330afa58caaf705feb2d8713606547d0d7e5b18770c5729fd562c81e66b403040622afdbdf62b994bd3ef62678d00915ba48f1eafc786 SHA512 0889f54ba8c76413f0333bdf6f17cca38c4fa8ccfff7e1554a63f38f19471dc72c3afe34d2e38ea00724aa3f0c007051999392a8d188d47265dbf0527dadceea
+DIST tclconfig-2023.12.11.tar.gz 49691 BLAKE2B 53bb91d125fd080b79ac83af1053d8bb981a8e917b7c8e4db71da89c43263d75a9604623a85d560bcbf3d686f61ccf21bffd794d333aa6cb35c959ab3042991d SHA512 c4eaa31ca1ec585536cd6d31a548b347dae3167197433674d2f3912ce85bad00dda55b0c60eebf26cb5f9d651c8437688e1829f7d3996a22bba2d93e4538946c
+DIST thread-2-8-9.tar.gz 322166 BLAKE2B d7b1f61048ff7ef2276ab0ed2e72054267f75cf32cc705b2de6e27fd80ffde08e55a7386976d1c6159c5085686f1b534434c9a7cae504feedb91a9bc8bcff69f SHA512 b3f781b2b522a1c184e071c003a2b20ef0615668c56ffd2f6680890f36b106ded051d411547cb6b1afd7e9389e09b5cc67e68bfd79cc95ea06a0e2ee71c2e433
+DIST thread2.8.5.tar.gz 338776 BLAKE2B b6500ba59f87150d3d4479cae9a55b591a41768c6a74520933157d8fe2ec5374a79cf258fad1f08c775b190c17667dc529605f21a4fdd562320778be94b294a2 SHA512 b1cd049605f44ea5e85a121ff864d9e531491b24579654159dd5f3850b0aa4192ea79844324be3e9c6b395b14e6f765474c792bfd3271c7100b49f0ff22832d0
+DIST thread2.8.8.tar.gz 343099 BLAKE2B 3551bdbc4cab78c6ea0ea7eac43c53a65a1f55f9eae302ddd7030c33b40b76317ecc651d731411396cf4f51f11c852bab0c60642d36a312f23e22f96019df427 SHA512 249ddf689ee20536280e3b3d220c0faa3a8a2821bcd31a3f6188ef838d31e5cacefa7fd737b8e29b73a6b30e0a946d2eeb0805dd851c9f8aefc5c5bc5f50de0e
diff --git a/dev-tcltk/thread/files/thread-2.8.5-musl.patch b/dev-tcltk/thread/files/thread-2.8.5-musl.patch
new file mode 100644
index 000000000000..0743d8628c06
--- /dev/null
+++ b/dev-tcltk/thread/files/thread-2.8.5-musl.patch
@@ -0,0 +1,20 @@
+joining a thread not joinable is no more returning EINVAL
+Its behaviour is undefined
+--- a/tests/thread.test 2023-03-16 21:31:05.333423098 +0100
++++ b/tests/thread.test 2023-03-16 21:31:25.837324400 +0100
+@@ -100,15 +100,6 @@
+ set c
+ } {0}
+
+-test thread-4.5 {thread::create - join detached thread} {
+- ThreadReap
+- set tid [thread::create]
+- thread::send -async $tid {after 1000 ; thread::release}
+- catch {set res [thread::join $tid]} msg
+- ThreadReap
+- lrange $msg 0 2
+-} {cannot join thread}
+-
+ test thread-5.0 {thread::release} {
+ ThreadReap
+ set tid [thread::create {thread::release}]
diff --git a/dev-tcltk/thread/metadata.xml b/dev-tcltk/thread/metadata.xml
index ec2fb390faa4..1e08d65c4c11 100644
--- a/dev-tcltk/thread/metadata.xml
+++ b/dev-tcltk/thread/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">tcl</remote-id>
+ <remote-id type="github">tcltk/thread</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/thread/thread-2.7.1.ebuild b/dev-tcltk/thread/thread-2.7.1.ebuild
deleted file mode 100644
index 3028f887d212..000000000000
--- a/dev-tcltk/thread/thread-2.7.1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-AUTOTOOLS_AUTORECONF=true
-
-inherit autotools-utils multilib
-
-MY_P="${PN}${PV}"
-TCL_VER="8.6.2"
-
-DESCRIPTION="Tcl Thread extension"
-HOMEPAGE="http://www.tcl.tk/"
-SRC_URI="mirror://sourceforge/project/tcl/Tcl/${TCL_VER}/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
-IUSE="debug gdbm"
-
-DEPEND="
- dev-lang/tcl:0=[threads]
- gdbm? ( sys-libs/gdbm )"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}"/${PN}${PV}
-
-RESTRICT="test"
-
-src_prepare() {
- # Search for libs in libdir not just exec_prefix/lib
- sed -i -e 's:${exec_prefix}/lib:${libdir}:' \
- aclocal.m4 || die "sed failed"
-
- sed -i -e "s/relid'/relid/" tclconfig/tcl.m4 || die
-
- autotools-utils_src_prepare
-}
-
-src_configure() {
- local myeconfargs=(
- --with-tclinclude="${EPREFIX}/usr/include"
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
- )
- use gdbm && myconf+=( --with-gdbm )
- use debug && myconf+=( --enable-symbols )
- autotools-utils_src_configure
-}
diff --git a/dev-tcltk/thread/thread-2.7.3.ebuild b/dev-tcltk/thread/thread-2.8.5.ebuild
index 147853cab232..1ed9254d6bdd 100644
--- a/dev-tcltk/thread/thread-2.7.3.ebuild
+++ b/dev-tcltk/thread/thread-2.8.5.ebuild
@@ -1,27 +1,30 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit autotools multilib
+inherit autotools
MY_P="${PN}${PV}"
DESCRIPTION="Tcl Thread extension"
HOMEPAGE="http://www.tcl.tk/"
-SRC_URI="mirror://sourceforge/project/tcl/Thread%20Extension/${PV}/${MY_P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/project/tcl/Thread%20Extension/${PV}/${MY_P}.tar.gz"
+
+S="${WORKDIR}"/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE=""
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
DEPEND="dev-lang/tcl:0=[threads]"
RDEPEND="${DEPEND}"
-S="${WORKDIR}"/${PN}${PV}
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
-RESTRICT="test"
+PATCHES=( "${FILESDIR}"/${P}-musl.patch )
src_prepare() {
default
diff --git a/dev-tcltk/thread/thread-2.8.2.ebuild b/dev-tcltk/thread/thread-2.8.8.ebuild
index 700cd2a92305..304357449022 100644
--- a/dev-tcltk/thread/thread-2.8.2.ebuild
+++ b/dev-tcltk/thread/thread-2.8.8.ebuild
@@ -1,25 +1,30 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit autotools multilib
+inherit autotools
MY_P="${PN}${PV}"
DESCRIPTION="Tcl Thread extension"
HOMEPAGE="http://www.tcl.tk/"
-SRC_URI="mirror://sourceforge/project/tcl/Thread%20Extension/${PV}/${MY_P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/project/tcl/Thread%20Extension/${PV}/${MY_P}.tar.gz"
+
+S="${WORKDIR}"/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
DEPEND="dev-lang/tcl:0=[threads]"
RDEPEND="${DEPEND}"
-S="${WORKDIR}"/${PN}${PV}
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 rewinddir64 closedir64 stat64 # used to test for Large File Support on AIX
+)
+
+PATCHES=( "${FILESDIR}"/${PN}-2.8.5-musl.patch )
src_prepare() {
default
diff --git a/dev-tcltk/thread/thread-2.8.9.ebuild b/dev-tcltk/thread/thread-2.8.9.ebuild
new file mode 100644
index 000000000000..280b7de7c6c5
--- /dev/null
+++ b/dev-tcltk/thread/thread-2.8.9.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_P="${PN}-$(ver_rs 0- '-')"
+TCLCONFIGId=4a924db4fb37fa0c7cc2ae987b294dbaa97bc713
+
+DESCRIPTION="Tcl Thread extension"
+HOMEPAGE="http://www.tcl.tk/"
+SRC_URI="
+ https://github.com/tcltk/${PN}/archive/refs/tags/${MY_P}.tar.gz
+ https://github.com/tcltk/tclconfig/archive/${TCLCONFIGId}.tar.gz
+ -> tclconfig-2023.12.11.tar.gz
+"
+
+S="${WORKDIR}"/${PN}-${MY_P}
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+DEPEND="dev-lang/tcl:0=[threads]"
+RDEPEND="${DEPEND}"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 readdir64 rewinddir64 closedir64 stat64 # used to test for Large File Support on AIX
+)
+
+PATCHES=( "${FILESDIR}"/${PN}-2.8.5-musl.patch )
+
+src_prepare() {
+ ln -s ../tclconfig-${TCLCONFIGId} tclconfig || die
+ echo "unknown" > manifest.uuid || die
+ default
+
+ # Search for libs in libdir not just exec_prefix/lib
+ sed -i -e 's:${exec_prefix}/lib:${libdir}:' \
+ aclocal.m4 || die "sed failed"
+
+ eautoreconf
+}
+
+src_configure() {
+ econf --with-tclinclude="${EPREFIX}/usr/include" \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)"
+}
diff --git a/dev-tcltk/tix/files/tix-8.4.3-clang6.patch b/dev-tcltk/tix/files/tix-8.4.3-clang6.patch
new file mode 100644
index 000000000000..a33984ddf225
--- /dev/null
+++ b/dev-tcltk/tix/files/tix-8.4.3-clang6.patch
@@ -0,0 +1,114 @@
+--- a/generic/tixDiStyle.c 2023-01-18 12:17:57.150995223 +0100
++++ b/generic/tixDiStyle.c 2023-01-18 12:18:33.855410140 +0100
+@@ -31,7 +31,7 @@
+ static int DItemStyleParseProc _ANSI_ARGS_((ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin,
+ CONST84 char *value,char *widRec, int offset));
+-static char * DItemStylePrintProc _ANSI_ARGS_((
++static const char *DItemStylePrintProc _ANSI_ARGS_((
+ ClientData clientData, Tk_Window tkwin,
+ char *widRec, int offset,
+ Tcl_FreeProc **freeProcPtr));
+@@ -998,7 +998,7 @@
+ return TCL_ERROR;
+ }
+
+-static char *DItemStylePrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
++static const char *DItemStylePrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
+ ClientData clientData;
+ Tk_Window tkwin;
+ char *widRec;
+--- a/generic/tixDItem.c 2023-01-18 12:16:16.448599643 +0100
++++ b/generic/tixDItem.c 2023-01-18 12:16:48.979081490 +0100
+@@ -30,7 +30,7 @@
+ Tcl_Interp *interp, Tk_Window tkwin, CONST84 char *value,
+ char *widRec, int offset));
+
+-static char *DItemPrintProc _ANSI_ARGS_((
++static const char *DItemPrintProc _ANSI_ARGS_((
+ ClientData clientData, Tk_Window tkwin, char *widRec,
+ int offset, Tcl_FreeProc **freeProcPtr));
+
+@@ -548,7 +548,7 @@
+ return TCL_OK;
+ }
+
+-static char *DItemPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
++static const char *DItemPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
+ ClientData clientData;
+ Tk_Window tkwin;
+ char *widRec;
+--- a/generic/tixImgCmp.c 2023-01-18 12:19:03.138943264 +0100
++++ b/generic/tixImgCmp.c 2023-01-18 12:21:32.884554265 +0100
+@@ -142,8 +142,8 @@
+ * The type record for bitmap images:
+ */
+ static int ImgCmpCreate _ANSI_ARGS_((Tcl_Interp *interp,
+- char *name, int argc, Tcl_Obj *CONST objv[],
+- Tk_ImageType *typePtr, Tk_ImageMaster master,
++ const char *name, int argc, Tcl_Obj *CONST objv[],
++ const Tk_ImageType *typePtr, Tk_ImageMaster master,
+ ClientData *clientDataPtr));
+ static ClientData ImgCmpGet _ANSI_ARGS_((Tk_Window tkwin,
+ ClientData clientData));
+@@ -378,11 +378,11 @@
+ ImgCmpCreate(interp, name, argc, objv, typePtr, master, clientDataPtr)
+ Tcl_Interp *interp; /* Interpreter for application containing
+ * image. */
+- char *name; /* Name to use for image. */
++ const char *name; /* Name to use for image. */
+ int argc; /* Number of arguments. */
+ Tcl_Obj *CONST objv[]; /* Argument strings for options (doesn't
+ * include image name or type). */
+- Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
++ const Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
+ Tk_ImageMaster master; /* Token for image, to be used by us in
+ * later callbacks. */
+ ClientData *clientDataPtr; /* Store manager's token for image here;
+--- a/generic/tixImgXpm.c 2023-01-18 12:22:25.967706824 +0100
++++ b/generic/tixImgXpm.c 2023-01-18 12:23:05.589074088 +0100
+@@ -22,8 +22,8 @@
+ */
+
+ static int ImgXpmCreate _ANSI_ARGS_((Tcl_Interp *interp,
+- char *name, int argc, Tcl_Obj *CONST objv[],
+- Tk_ImageType *typePtr, Tk_ImageMaster master,
++ const char *name, int argc, Tcl_Obj *CONST objv[],
++ const Tk_ImageType *typePtr, Tk_ImageMaster master,
+ ClientData *clientDataPtr));
+ static ClientData ImgXpmGet _ANSI_ARGS_((Tk_Window tkwin,
+ ClientData clientData));
+@@ -115,11 +115,11 @@
+ ImgXpmCreate(interp, name, argc, objv, typePtr, master, clientDataPtr)
+ Tcl_Interp *interp; /* Interpreter for application containing
+ * image. */
+- char *name; /* Name to use for image. */
++ const char *name; /* Name to use for image. */
+ int argc; /* Number of arguments. */
+ Tcl_Obj *CONST objv[]; /* Argument strings for options (doesn't
+ * include image name or type). */
+- Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
++ const Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
+ Tk_ImageMaster master; /* Token for image, to be used by us in
+ * later callbacks. */
+ ClientData *clientDataPtr; /* Store manager's token for image here;
+--- a/generic/tixUtils.c 2023-01-18 12:14:01.374751235 +0100
++++ b/generic/tixUtils.c 2023-01-18 12:14:36.414192268 +0100
+@@ -24,7 +24,7 @@
+ static int ReliefParseProc(ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin, CONST84 char *value,
+ char *widRec, int offset);
+-static char * ReliefPrintProc(ClientData clientData,
++static const char *ReliefPrintProc(ClientData clientData,
+ Tk_Window tkwin, char *widRec, int offset,
+ Tix_FreeProc **freeProcPtr);
+
+@@ -637,7 +637,7 @@
+ return TCL_ERROR;
+ }
+
+-static char *
++static const char *
+ ReliefPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
+ ClientData clientData;
+ Tk_Window tkwin;
diff --git a/dev-tcltk/tix/files/tix-8.4.3-noopt.patch b/dev-tcltk/tix/files/tix-8.4.3-noopt.patch
new file mode 100644
index 000000000000..14a36374d292
--- /dev/null
+++ b/dev-tcltk/tix/files/tix-8.4.3-noopt.patch
@@ -0,0 +1,38 @@
+--- a/tclconfig/tcl.m4 2023-01-18 20:03:02.719671952 +0100
++++ b/tclconfig/tcl.m4 2023-01-18 20:07:22.110504323 +0100
+@@ -981,9 +981,7 @@
+ ECHO_VERSION='`echo ${PACKAGE_VERSION}`'
+ TCL_LIB_VERSIONS_OK=ok
+ CFLAGS_DEBUG=-g
+- CFLAGS_OPTIMIZE=-O
+ if test "$GCC" = "yes" ; then
+- CFLAGS_OPTIMIZE=-O2
+ CFLAGS_WARNING="-Wall -Wno-implicit-int"
+ else
+ CFLAGS_WARNING=""
+@@ -1445,7 +1443,6 @@
+ SHLIB_LD_LIBS='${LIBS}'
+ SHLIB_SUFFIX=".so"
+
+- CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer"
+ # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings
+ # when you inline the string and math operations. Turn this off to
+ # get rid of the warnings.
+@@ -3158,17 +3155,6 @@
+ # It makes compiling go faster. (This is only a performance feature.)
+ #------------------------------------------------------------------------
+
+- if test -z "$no_pipe" -a -n "$GCC"; then
+- AC_CACHE_CHECK([if the compiler understands -pipe],
+- tcl_cv_cc_pipe, [
+- hold_cflags=$CFLAGS; CFLAGS="$CFLAGS -pipe"
+- AC_TRY_COMPILE(,, tcl_cv_cc_pipe=yes, tcl_cv_cc_pipe=no)
+- CFLAGS=$hold_cflags])
+- if test $tcl_cv_cc_pipe = yes; then
+- CFLAGS="$CFLAGS -pipe"
+- fi
+- fi
+-
+ #--------------------------------------------------------------------
+ # Common compiler flag setup
+ #--------------------------------------------------------------------
diff --git a/dev-tcltk/tix/files/tix-8.4.3-wimplicit-int.patch b/dev-tcltk/tix/files/tix-8.4.3-wimplicit-int.patch
new file mode 100644
index 000000000000..b97d55c05a77
--- /dev/null
+++ b/dev-tcltk/tix/files/tix-8.4.3-wimplicit-int.patch
@@ -0,0 +1,49 @@
+https://sourceforge.net/p/tix/bugs/112/
+
+Avoid implicit int declarations, a feature removed from C language with C99.
+
+--- a/generic/tixDiImg.c
++++ b/generic/tixDiImg.c
+@@ -352,6 +352,8 @@ Tix_ImageItemDisplay(drawable, iPtr, x, y, width, height, xOffset, yOffset,
+ int y;
+ int width;
+ int height;
++ int xOffset;
++ int yOffset;
+ int flags;
+ {
+ TixImageItem *itPtr = (TixImageItem *)iPtr;
+--- a/generic/tixDiWin.c
++++ b/generic/tixDiWin.c
+@@ -458,6 +458,8 @@ Tix_WindowItemDisplay(drawable, iPtr, x, y, width, height, xOffset, yOffset,
+ int y;
+ int width;
+ int height;
++ int xOffset;
++ int yOffset;
+ int flags;
+ {
+ TixWindowItem *itPtr = (TixWindowItem *)iPtr;
+--- a/generic/tixForm.c
++++ b/generic/tixForm.c
+@@ -150,7 +150,7 @@ static Tcl_HashTable masterInfoHashTable;
+ /*
+ * Have static variables in this module been initialized?
+ */
+-static initialized = 0;
++static int initialized = 0;
+
+ static int ReqSize(tkwin, axis)
+ Tk_Window tkwin;
+--- a/unix/tixUnixMwm.c
++++ b/unix/tixUnixMwm.c
+@@ -768,7 +768,7 @@ GetMwmInfo(interp, tkwin)
+ Tcl_Interp * interp;
+ Tk_Window tkwin;
+ {
+- static inited = 0;
++ static int inited = 0;
+ Tcl_HashEntry *hashPtr;
+ int isNew;
+
+
diff --git a/dev-tcltk/tix/metadata.xml b/dev-tcltk/tix/metadata.xml
index 1925cd538b7d..e32e35767c25 100644
--- a/dev-tcltk/tix/metadata.xml
+++ b/dev-tcltk/tix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tix/tix-8.4.3-r1.ebuild b/dev-tcltk/tix/tix-8.4.3-r1.ebuild
deleted file mode 100644
index fea8efa756fc..000000000000
--- a/dev-tcltk/tix/tix-8.4.3-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib
-
-MY_P="Tix${PV}"
-DESCRIPTION="A widget library for Tcl/Tk"
-HOMEPAGE="http://tix.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tix/${MY_P}-src.tar.gz"
-
-IUSE=""
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
-
-RESTRICT="test"
-
-DEPEND="
- dev-lang/tk:0=
- x11-libs/libX11
- x11-libs/libXau
- x11-libs/libXdmcp"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- (use x86-macos || use x64-macos) || epatch "${FILESDIR}"/${P}-link.patch
- sed \
- -e 's:-Os::g' \
- -i configure tclconfig/tcl.m4 || die
- epatch \
- "${FILESDIR}"/${P}-tcl8.5.patch \
- "${FILESDIR}"/${P}-tcl8.6.patch
-}
-
-src_configure() {
- econf \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
- --with-tk="${EPREFIX}/usr/$(get_libdir)"
-}
-
-src_install() {
- default
-
- # Bug 168897
- doheader generic/tix.h
- # Bug 201138
- if use x86-macos || use x64-macos; then
- mv "${ED}"/usr/$(get_libdir)/${MY_P}/libTix{,.}${PV}.dylib
- dosym ${MY_P}/libTix.${PV}.dylib /usr/$(get_libdir)/libTix.${PV}.dylib
- else
- dosym ${MY_P}/lib${MY_P}.so /usr/$(get_libdir)/lib${MY_P}.so
- fi
-
- dodoc ChangeLog README.txt docs/*.txt
- dohtml -r index.html ABOUT.html docs/
-}
diff --git a/dev-tcltk/tix/tix-8.4.3-r4.ebuild b/dev-tcltk/tix/tix-8.4.3-r4.ebuild
new file mode 100644
index 000000000000..8eb6eb9f1b88
--- /dev/null
+++ b/dev-tcltk/tix/tix-8.4.3-r4.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_P="Tix${PV}"
+DESCRIPTION="A widget library for Tcl/Tk"
+HOMEPAGE="http://tix.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/tix/${MY_P}-src.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+RESTRICT="test"
+
+DEPEND="
+ dev-lang/tk:=
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXdmcp
+"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-tcl8.5.patch
+ "${FILESDIR}"/${P}-tcl8.6.patch
+ "${FILESDIR}"/${P}-wimplicit-int.patch
+ "${FILESDIR}"/${P}-clang6.patch
+ "${FILESDIR}"/${P}-noopt.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+src_prepare() {
+ [[ ${CHOST} == *-darwin* ]] || eapply "${FILESDIR}"/${P}-link.patch
+
+ sed \
+ -e 's:-Os::g' \
+ -i configure tclconfig/tcl.m4 || die
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)" \
+ --with-tk="${EPREFIX}/usr/$(get_libdir)"
+}
+
+src_install() {
+ DOCS=( ChangeLog README.txt docs/*.txt )
+ HTML_DOCS=(
+ index.html
+ ABOUT.html
+ docs/*.html
+ docs/html
+ docs/img
+ docs/tix-book
+ )
+
+ default
+
+ # Bug #168897
+ doheader generic/tix.h
+
+ # Bug #201138
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ mv "${ED}"/usr/$(get_libdir)/${MY_P}/libTix{,.}${PV}.dylib || die
+ dosym ${MY_P}/libTix.${PV}.dylib /usr/$(get_libdir)/libTix.${PV}.dylib
+ else
+ dosym ${MY_P}/lib${MY_P}.so /usr/$(get_libdir)/lib${MY_P}.so
+ fi
+}
diff --git a/dev-tcltk/tkTheme/Manifest b/dev-tcltk/tkTheme/Manifest
deleted file mode 100644
index e4194ce639d4..000000000000
--- a/dev-tcltk/tkTheme/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tkTheme.tgz 335061 BLAKE2B 3a1b3bd7e82f75c5d0566317d268df5a3215e738e67ca5bf1e575abe31f3de5718a5280f3de03067c94b1469f6e1f38691515dadfbac9b3a6cb9e9dee23e1878 SHA512 71988f5a627582092d30f8d825f4e9e60f11c116e40b90bf4d669cad8146d7130e27ca0f83b0650ca7f225016849242815be27e247c8917f892a16447ed40d7c
diff --git a/dev-tcltk/tkTheme/files/1.0-Makefile.in.diff b/dev-tcltk/tkTheme/files/1.0-Makefile.in.diff
deleted file mode 100644
index 6076a0455c9b..000000000000
--- a/dev-tcltk/tkTheme/files/1.0-Makefile.in.diff
+++ /dev/null
@@ -1,29 +0,0 @@
- Makefile.in | 11 +++++------
- 1 files changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 7cf8b1e..c2c7d3b 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -428,16 +428,15 @@ mostlyclean distclean maintainer-clean
-
-
- install-exec-hook:
-- $(mkinstalldirs) @PKG_TCL@ @PKG_TCL@/demo
-+ $(mkinstalldirs) $(DESTDIR)@PKG_TCL@
- echo "package ifneeded tkTheme" \
- `echo $(VERSION) | awk -F. '{ printf "%s.%s", $$1, $$2 }'` \
-- "[list load $(DESTDIR)$(libdir)/libtkTheme.so]" \
-- > @PKG_TCL@/pkgIndex.tcl
-+ "[list load $(libdir)/libtkTheme.so]" \
-+ > $(DESTDIR)@PKG_TCL@/pkgIndex.tcl
- sed -e 's%load .libs/libtkTheme.so%package require tkTheme%' \
-- < test.tcl \
-+ < $(srcdir)/test.tcl \
- | sed -e 's%cd demo/%cd @PKG_TCL@/demo/%' \
-- > @PKG_TCL@/test.tcl
-- cp demo/* @PKG_TCL@/demo
-+ > $(DESTDIR)@PKG_TCL@/test.tcl
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/dev-tcltk/tkTheme/files/1.0-cflags.patch b/dev-tcltk/tkTheme/files/1.0-cflags.patch
deleted file mode 100644
index 34063d365fd7..000000000000
--- a/dev-tcltk/tkTheme/files/1.0-cflags.patch
+++ /dev/null
@@ -1,18 +0,0 @@
- configure | 4 +---
- 1 files changed, 1 insertions(+), 3 deletions(-)
-
-diff --git a/configure b/configure
-index 373c332..6fc1a14 100755
---- a/configure
-+++ b/configure
-@@ -3341,9 +3341,7 @@ fi
-
-
- if test "${SHARED_BUILD}" = "1" ; then
-- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING} ${SHLIB_CFLAGS}'
--else
-- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING}'
-+ CFLAGS+=' ${SHLIB_CFLAGS}'
- fi
-
- #--------------------------------------------------------------------
diff --git a/dev-tcltk/tkTheme/files/1.0-configure.diff b/dev-tcltk/tkTheme/files/1.0-configure.diff
deleted file mode 100644
index c73f7dc3aa3f..000000000000
--- a/dev-tcltk/tkTheme/files/1.0-configure.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur tkTheme.orig/configure tkTheme/configure
---- tkTheme.orig/configure 2002-08-24 04:19:04.000000000 +0900
-+++ tkTheme/configure 2005-06-26 22:26:30.000000000 +0900
-@@ -3472,7 +3472,7 @@
-
-
-
--PKG_TCL=${TCL_PACKAGE_PATH}/tkTheme
-+PKG_TCL=${TCL_PACKAGE_PATH%% *}/tkTheme
-
-
-
diff --git a/dev-tcltk/tkTheme/metadata.xml b/dev-tcltk/tkTheme/metadata.xml
deleted file mode 100644
index 2b168a2f48c6..000000000000
--- a/dev-tcltk/tkTheme/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>Gentoo Tcltk Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-tcltk/tkTheme/tkTheme-1.0-r2.ebuild b/dev-tcltk/tkTheme/tkTheme-1.0-r2.ebuild
deleted file mode 100644
index 496c8d524646..000000000000
--- a/dev-tcltk/tkTheme/tkTheme-1.0-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit autotools-utils eutils toolchain-funcs
-
-DESCRIPTION="Tcl/Tk Theming library"
-HOMEPAGE="http://www.xmission.com/~georgeps/Tk_Theme/other/"
-SRC_URI="http://www.xmission.com/~georgeps/Tk_Theme/other/${PN}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 ppc x86"
-IUSE="debug examples static-libs threads"
-
-DEPEND="
- dev-lang/tk
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXmu
- x11-libs/libXpm"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}"/${PN}
-
-PATCHES=(
- "${FILESDIR}"/${PV}-Makefile.in.diff
- "${FILESDIR}"/${PV}-configure.diff
- "${FILESDIR}"/${PV}-cflags.patch
- )
-
-src_configure() {
- tc-export CC
- local myeconfargs=(
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
- --with-tk="${EPREFIX}/usr/$(get_libdir)"
- --with-x
- $(use_with debug symbols)
- $(use_enable threads)
- )
- autotools-utils_src_configure
-}
-
-src_install() {
- autotools-utils_src_install
- insinto /usr/share/${PN}
- use examples && doins -r demo
-}
diff --git a/dev-tcltk/tkXwin/Manifest b/dev-tcltk/tkXwin/Manifest
deleted file mode 100644
index 99307160ddc4..000000000000
--- a/dev-tcltk/tkXwin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tkXwin-1.0.tgz 168650 BLAKE2B 6893140bb318f69f0094c4a157245f4fcebb54181b7f8327e790bfa27126a287353798f09427f00573463d54f66c224b98974f61ff5d6018485aa5128af899c4 SHA512 0313ec6fc81c872019a7e247fcaac899d5d584eb8066e7abf1d1feff7bc741de43a9b8a6212ed6dcd12566e8c995bc658360833c692eea5f1b4b5fc199cf2d6e
diff --git a/dev-tcltk/tkXwin/files/1.0-Makefile.in.diff b/dev-tcltk/tkXwin/files/1.0-Makefile.in.diff
deleted file mode 100644
index bd10890c719c..000000000000
--- a/dev-tcltk/tkXwin/files/1.0-Makefile.in.diff
+++ /dev/null
@@ -1,21 +0,0 @@
---- Makefile.in.orig 2003-02-01 22:03:34.000000000 -0500
-+++ Makefile.in 2003-02-01 22:04:39.000000000 -0500
-@@ -432,14 +432,14 @@
-
-
- install-exec-hook:
-- $(mkinstalldirs) @PKG_TCL@
-+ $(mkinstalldirs) $(DESTDIR)@PKG_TCL@
- echo "package ifneeded tkXwin" \
- `echo $(VERSION) | awk -F. '{ printf "%s.%s", $$1, $$2 }'` \
-- "[list load $(DESTDIR)$(libdir)/libtkXwin.so]" \
-- > @PKG_TCL@/pkgIndex.tcl
-+ "[list load $(libdir)/libtkXwin.so]" \
-+ > $(DESTDIR)@PKG_TCL@/pkgIndex.tcl
- sed -e 's%load .libs/libtkXwin.so%package require tkXwin%' \
- < test.tcl \
-- > @PKG_TCL@/test.tcl
-+ > $(DESTDIR)@PKG_TCL@/test.tcl
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/dev-tcltk/tkXwin/files/tkXwin-1.0-configure.patch b/dev-tcltk/tkXwin/files/tkXwin-1.0-configure.patch
deleted file mode 100644
index ac2f84b97f21..000000000000
--- a/dev-tcltk/tkXwin/files/tkXwin-1.0-configure.patch
+++ /dev/null
@@ -1,93 +0,0 @@
- configure | 43 +++----------------------------------------
- 1 file changed, 3 insertions(+), 40 deletions(-)
-
-diff --git a/configure b/configure
-index d92a1bf..d8605a0 100755
---- a/configure
-+++ b/configure
-@@ -823,7 +823,6 @@ fi
-
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
--CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
- echo "configure:829: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
-@@ -839,23 +838,6 @@ rm -f conftest*
-
- fi
-
--echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
--if test "$ac_test_CFLAGS" = set; then
-- CFLAGS="$ac_save_CFLAGS"
--elif test $ac_cv_prog_cc_g = yes; then
-- if test "$GCC" = yes; then
-- CFLAGS="-g -O2"
-- else
-- CFLAGS="-g"
-- fi
--else
-- if test "$GCC" = yes; then
-- CFLAGS="-O2"
-- else
-- CFLAGS=
-- fi
--fi
--
- # Check whether --enable-static or --disable-static was given.
- if test "${enable_static+set}" = set; then
- enableval="$enable_static"
-@@ -2078,7 +2060,6 @@ fi
-
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
--CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
- echo "configure:2084: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
-@@ -2094,24 +2075,6 @@ rm -f conftest*
-
- fi
-
--echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
--if test "$ac_test_CFLAGS" = set; then
-- CFLAGS="$ac_save_CFLAGS"
--elif test $ac_cv_prog_cc_g = yes; then
-- if test "$GCC" = yes; then
-- CFLAGS="-g -O2"
-- else
-- CFLAGS="-g"
-- fi
--else
-- if test "$GCC" = yes; then
-- CFLAGS="-O2"
-- else
-- CFLAGS=
-- fi
--fi
--
--
- # Find a good install program. We prefer a C program (faster),
- # so one script is as good as another. But avoid the broken or
- # incompatible versions:
-@@ -3403,9 +3366,9 @@ fi
-
-
- if test "${SHARED_BUILD}" = "1" ; then
-- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING} ${SHLIB_CFLAGS}'
-+ CFLAGS+=' ${CFLAGS_WARNING} ${SHLIB_CFLAGS}'
- else
-- CFLAGS='${CFLAGS_DEFAULT} ${CFLAGS_WARNING}'
-+ CFLAGS+=' ${CFLAGS_WARNING}'
- fi
-
- #--------------------------------------------------------------------
-@@ -3534,7 +3497,7 @@ fi
-
-
-
--PKG_TCL=${TCL_PACKAGE_PATH}/tkXwin
-+PKG_TCL=${libdir}/tkXwin
-
-
-
diff --git a/dev-tcltk/tkXwin/metadata.xml b/dev-tcltk/tkXwin/metadata.xml
deleted file mode 100644
index 7d188a276b89..000000000000
--- a/dev-tcltk/tkXwin/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>Gentoo Tcltk Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">beepcore-tcl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-tcltk/tkXwin/tkXwin-1.0-r4.ebuild b/dev-tcltk/tkXwin/tkXwin-1.0-r4.ebuild
deleted file mode 100644
index 471945156f57..000000000000
--- a/dev-tcltk/tkXwin/tkXwin-1.0-r4.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit autotools-utils multilib toolchain-funcs
-
-DESCRIPTION="Tcl/Tk library to detect idle periods of an X session"
-HOMEPAGE="http://beepcore-tcl.sourceforge.net/"
-SRC_URI="http://beepcore-tcl.sourceforge.net/${P}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="debug static-libs threads"
-KEYWORDS="amd64 ppc x86"
-
-RDEPEND="
- dev-lang/tk[threads?]
- x11-libs/libXScrnSaver
- x11-libs/libX11
- x11-libs/libXext"
-DEPEND="${RDEPEND}
- x11-base/xorg-proto"
-
-PATCHES=(
- "${FILESDIR}"/${PV}-Makefile.in.diff
- "${FILESDIR}"/${P}-configure.patch
- )
-
-AUTOTOOLS_IN_SOURCE_BUILD=1
-
-src_prepare() {
- tc-export CC AR RANLIB
- autotools-utils_src_prepare
-}
-
-src_configure() {
- local myeconfargs=(
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
- --with-tk="${EPREFIX}/usr/$(get_libdir)"
- --enable-gcc
- --with-x
- $(use_enable threads)
- $(use_enable debug symbols)
- )
- autotools-utils_src_configure
-}
diff --git a/dev-tcltk/tkcon/Manifest b/dev-tcltk/tkcon/Manifest
index 158558d459e4..741e9a4c1276 100644
--- a/dev-tcltk/tkcon/Manifest
+++ b/dev-tcltk/tkcon/Manifest
@@ -1 +1,2 @@
-DIST tkcon-2.5.tar.gz 139834 BLAKE2B 95d0d0fe856b9ed287d1b2af6132845e047d269991fda8fd0ac88b06b200e1e75d9ac5b3ad4bac7daf08d52ebd2a4ec5697c841565cf290980288b0ecf0449a6 SHA512 f53d21dbf281112b761970b05aa643d598819789644445a0e01f6eddcf98709c4b7ef635bc69ec40fc14b5c78397b240b86d8b6ed63aac48f656242c19fd7851
+DIST tkcon-2.7.10.tar.gz 277788 BLAKE2B 7894947c5ca062f2b905550e88c34a414d4b665b6fff0c5bf22a54e2600050b62eecbdfbde179206571cf74d39e3a9d9e33b93356bf5b81aa9cbf79dcdfcf118 SHA512 a580e06d0c86613b3c9e9daa7863fde6fd11b4e2243764c0b016f0db9d9ba0a9cf839ae26efc37e843f5da87f6304a6d0fcab7667ff6c25246a44e1630851634
+DIST tkcon-2.7.11.tar.gz 280499 BLAKE2B c68991100e95f347796c34253b6a4aceb4e1b20a6d6d99b64750b5c50117317b3b571054e6658afa27cf4bbe4af19a6c7c0dc03f68e9e95eec428a84ef910df9 SHA512 d56268f8edfbccb66ef6288d5b98481dc0c2a8e4f97e553e8031175dad5922ad14087f55709e41902a812e738d29ae9e07efdc6ce2d30919801c9bb54cddab07
diff --git a/dev-tcltk/tkcon/metadata.xml b/dev-tcltk/tkcon/metadata.xml
index 06799c8ae04f..e62ce8abea35 100644
--- a/dev-tcltk/tkcon/metadata.xml
+++ b/dev-tcltk/tkcon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -14,5 +14,6 @@
</longdescription>
<upstream>
<remote-id type="sourceforge">tkcon</remote-id>
+ <remote-id type="github">wjoye/tkcon</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tkcon/tkcon-2.5.ebuild b/dev-tcltk/tkcon/tkcon-2.7.10.ebuild
index dcf14a871f2d..d0d15951af1d 100644
--- a/dev-tcltk/tkcon/tkcon-2.5.ebuild
+++ b/dev-tcltk/tkcon/tkcon-2.7.10.ebuild
@@ -1,31 +1,37 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=0
-
-inherit eutils multilib
+EAPI=7
DESCRIPTION="Tk GUI console"
HOMEPAGE="http://tkcon.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+SRC_URI="https://github.com/wjoye/${PN}/archive/v${PV}.tar.gz ->
+ ${P}.tar.gz"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~ppc ~x86"
SLOT="0"
IUSE="doc"
-DEPEND="dev-lang/tk"
+DEPEND="dev-lang/tk:*"
RDEPEND="${DEPEND}"
+RESTRICT="test"
+
+src_prepare() {
+ default
+ mv docs/changes.txt CHANGES
+}
+
src_install() {
local tclver="$(echo 'puts $tcl_version' | tclsh)"
- local instdir=/usr/$(get_libdir)/tcl${tclver}/${PN}2.5
+ local instdir=/usr/$(get_libdir)/tcl${tclver}/${PN}$(ver_cut 1-2)
dodir ${instdir}
cp -pP pkgIndex.tcl tkcon.tcl "${D}"${instdir} || die
dodir /usr/bin
dosym ${instdir}/tkcon.tcl /usr/bin/tkcon
- dodoc README.txt
if use doc; then
- dohtml doc/*
+ HTML_DOCS=( docs/* )
fi
+ einstalldocs
}
diff --git a/dev-tcltk/tkcon/tkcon-2.7.11.ebuild b/dev-tcltk/tkcon/tkcon-2.7.11.ebuild
new file mode 100644
index 000000000000..6ee739f1193b
--- /dev/null
+++ b/dev-tcltk/tkcon/tkcon-2.7.11.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Tk GUI console"
+HOMEPAGE="http://tkcon.sourceforge.net/"
+SRC_URI="https://github.com/wjoye/${PN}/archive/v${PV}.tar.gz ->
+ ${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86"
+SLOT="0"
+IUSE="doc"
+
+DEPEND="dev-lang/tk:*"
+RDEPEND="${DEPEND}"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ mv docs/changes.txt CHANGES
+}
+
+src_install() {
+ local tclver="$(echo 'puts $tcl_version' | tclsh)"
+ local instdir=/usr/$(get_libdir)/tcl${tclver}/${PN}$(ver_cut 1-2)
+ dodir ${instdir}
+ cp -pP pkgIndex.tcl tkcon.tcl "${D}"${instdir} || die
+ dodir /usr/bin
+ dosym ${instdir}/tkcon.tcl /usr/bin/tkcon
+ if use doc; then
+ HTML_DOCS=( docs/* )
+ fi
+ einstalldocs
+}
diff --git a/dev-tcltk/tkdnd/Manifest b/dev-tcltk/tkdnd/Manifest
index 43d5edd80dcc..9f764ee50e47 100644
--- a/dev-tcltk/tkdnd/Manifest
+++ b/dev-tcltk/tkdnd/Manifest
@@ -1,3 +1,2 @@
-DIST tkdnd2.2.tar.gz 501708 BLAKE2B 388a488fa6a6f86041182d741e4bb45b3cf86c8feb39de15010dbd21cddb536800cad0df23b5c27afec83bd4550c759534986b24804aefd007f0de4f5ecbf3cf SHA512 96f3b7209d82801b69932531b987cfe2c3367fbaaffd2198afc84bf21643437db8a9958511e31ce2c36896538ff8f8c9237950d0f82b832f7133fb1e5768fd26
-DIST tkdnd2.6-src.tar.gz 180278 BLAKE2B 598bba80e239440eae5e3dade176a015a33f426a387fbd8dcf96fa7b8644665d05cc2e52a86be40e2c40922211b200c484bde7dc69da1b252922ed203740fc87 SHA512 2ce1be9b49c21bc67102575420311c1ec764493315791c8a76313cae6d22846b3049dd85cdc0b2f28592889432b85103b0fa207445f678dbe22f988eb1d6fc87
-DIST tkdnd2.8-src.tar.gz 185025 BLAKE2B 3f7c1b728d12c2ad7d7fea82dae1c3f29207b70fd382fb6aa7aa6602602b0a9b5c4604347b9b1aa1faff7c5952d9557046157cb6af4268b56483f7398d4b55e3 SHA512 0cca1783ed4e481565fa23cebc12382f223c8a02f24a2795af3818d56769d265b45e2ce74d2a4a3a8203718bad6426efe37a5382e8376dd6a0820ef81866050e
+DIST tkdnd-release-test-v2.9.2.tar.gz 573739 BLAKE2B 4e9cae26542cc7774a0faf3d91a8a3f3b3b598735fcdb4e0565be26893514fe2e3f301ecaa7c698913f570b30f37ba0e2e890c6651ceebbc5d6cd9f66caf57c8 SHA512 dd1538ad884e8287d9c90c3b1565b95a047f552a271f921b0d0d7cb7bde8d8d6ad7e8c3247b647c09080c2e23c57ca11c30bde516cf66abcbe1dac6dd0e7cdc7
+DIST tkdnd-release-test-v2.9.4.tar.gz 1358824 BLAKE2B 7ea5039825cdc160232bc987a903642b2b2e54973c7f45142b5ea53e6b8ec2b2249416a0220217dc1ae1475dbcf432e2c8c72954f850eb2009512f9ef06b0644 SHA512 2eaf84235443c4a69e411674a7a7b27a1d43ded8aba7b09ed4d2f128cc2bfc9e38018c337004ce7bf0a0082dc0f87a7e89c7c2fc50dfedbb1047deef1d73daa2
diff --git a/dev-tcltk/tkdnd/metadata.xml b/dev-tcltk/tkdnd/metadata.xml
index 2c2d17964dce..5b6e2e2055fe 100644
--- a/dev-tcltk/tkdnd/metadata.xml
+++ b/dev-tcltk/tkdnd/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">tkdnd</remote-id>
+ <remote-id type="github">petasis/tkdnd</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tkdnd/tkdnd-2.2.ebuild b/dev-tcltk/tkdnd/tkdnd-2.2.ebuild
deleted file mode 100644
index 3f608bac2cdf..000000000000
--- a/dev-tcltk/tkdnd/tkdnd-2.2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-
-inherit autotools-utils eutils
-
-MY_PN="TkDND"
-
-DESCRIPTION="Extension that adds native drag & drop capabilities to the tk toolkit"
-HOMEPAGE="http://www.ellogon.org/petasis/tcltk-projects/tkdnd/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}/${MY_PN}%20${PV}/${P/-/}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="debug threads X"
-
-RESTRICT="test"
-
-DEPEND="dev-lang/tk"
-RDEPEND=${DEPEND}
-
-S=${WORKDIR}/${P/-/}
-
-src_prepare() {
- sed \
- -e 's:-O2::g' \
- -e 's:-fomit-frame-pointer::g' \
- -e 's:-pipe::g' \
- -i configure tclconfig/tcl.m4 || die
-}
-
-src_configure() {
- local myeconfargs
- use X && myeconfargs+=( --with-x )
- use debug && myeconfargs+=( --with-symbols )
- use threads && myeconfargs+=( --enable-threads )
- autotools-utils_src_configure
-}
diff --git a/dev-tcltk/tkdnd/tkdnd-2.6.ebuild b/dev-tcltk/tkdnd/tkdnd-2.6.ebuild
deleted file mode 100644
index 77ed496b529b..000000000000
--- a/dev-tcltk/tkdnd/tkdnd-2.6.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools-utils eutils
-
-MY_PN="TkDND"
-
-DESCRIPTION="Extension that adds native drag & drop capabilities to the tk toolkit"
-HOMEPAGE="http://www.ellogon.org/petasis/tcltk-projects/tkdnd/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}/${MY_PN}%20${PV}/${P/-/}-src.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="debug threads X"
-
-DEPEND="dev-lang/tk"
-RDEPEND=${DEPEND}
-
-S=${WORKDIR}/${P/-/}
-
-RESTRICT="test"
-
-src_prepare() {
- sed \
- -e 's:-O2::g' \
- -e 's:-fomit-frame-pointer::g' \
- -e 's:-pipe::g' \
- -i configure tclconfig/tcl.m4 || die
-}
-
-src_configure() {
- local myeconfargs
- use X && myeconfargs+=( --with-x )
- use debug && myeconfargs+=( --with-symbols )
- use threads && myeconfargs+=( --enable-threads )
- autotools-utils_src_configure
-}
diff --git a/dev-tcltk/tkdnd/tkdnd-2.8.ebuild b/dev-tcltk/tkdnd/tkdnd-2.8.ebuild
deleted file mode 100644
index b7aecb63ebf7..000000000000
--- a/dev-tcltk/tkdnd/tkdnd-2.8.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools-utils eutils
-
-MY_PN="TkDND"
-
-DESCRIPTION="Extension that adds native drag & drop capabilities to the tk toolkit"
-HOMEPAGE="http://www.ellogon.org/petasis/tcltk-projects/tkdnd/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}/${MY_PN}%20${PV}/${P/-/}-src.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="debug threads X"
-
-DEPEND="dev-lang/tk:="
-RDEPEND=${DEPEND}
-
-S=${WORKDIR}/${P/-/}
-
-RESTRICT="test"
-
-src_prepare() {
- sed \
- -e 's:-O2::g' \
- -e 's:-fomit-frame-pointer::g' \
- -e 's:-pipe::g' \
- -i configure tclconfig/tcl.m4 || die
-}
-
-src_configure() {
- local myeconfargs
- use X && myeconfargs+=( --with-x )
- use debug && myeconfargs+=( --with-symbols )
- use threads && myeconfargs+=( --enable-threads )
- autotools-utils_src_configure
-}
diff --git a/dev-tcltk/tkdnd/tkdnd-2.9.2-r1.ebuild b/dev-tcltk/tkdnd/tkdnd-2.9.2-r1.ebuild
new file mode 100644
index 000000000000..e3ccfb133723
--- /dev/null
+++ b/dev-tcltk/tkdnd/tkdnd-2.9.2-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=${PN}-release-test-v${PV}
+
+DESCRIPTION="Adds native drag & drop capabilities to tk toolkit"
+HOMEPAGE="https://www.ellogon.org/petasis/index.php/tcltk-projects/tkdnd"
+SRC_URI="https://github.com/petasis/tkdnd/archive/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="debug threads X"
+
+DEPEND="dev-lang/tk:="
+RDEPEND=${DEPEND}
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+S=${WORKDIR}/${PN}-${MY_P}
+
+RESTRICT="test"
+
+src_prepare() {
+ sed \
+ -e 's:-O2::g' \
+ -e 's:-fomit-frame-pointer::g' \
+ -e 's:-pipe::g' \
+ -i configure tclconfig/tcl.m4 || die
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_with X x) \
+ $(use_enable debug symbols) \
+ $(use_enable threads)
+}
diff --git a/dev-tcltk/tkdnd/tkdnd-2.9.4-r1.ebuild b/dev-tcltk/tkdnd/tkdnd-2.9.4-r1.ebuild
new file mode 100644
index 000000000000..67c678d6df7a
--- /dev/null
+++ b/dev-tcltk/tkdnd/tkdnd-2.9.4-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=${PN}-release-test-v${PV}
+
+DESCRIPTION="Adds native drag & drop capabilities to tk toolkit"
+HOMEPAGE="https://www.ellogon.org/petasis/index.php/tcltk-projects/tkdnd"
+SRC_URI="https://github.com/petasis/tkdnd/archive/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug threads X"
+
+DEPEND="
+ dev-lang/tk:=
+ x11-libs/libXcursor
+"
+RDEPEND=${DEPEND}
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 readdir64 rewinddir64 closedir64 stat64 # used on AIX
+)
+
+S=${WORKDIR}/${PN}-${MY_P}
+
+RESTRICT="test"
+
+src_prepare() {
+ sed \
+ -e 's:-O2::g' \
+ -e 's:-fomit-frame-pointer::g' \
+ -e 's:-pipe::g' \
+ -i configure tclconfig/tcl.m4 || die
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_with X x) \
+ $(use_enable debug symbols) \
+ $(use_enable threads)
+}
diff --git a/dev-tcltk/tkimg/Manifest b/dev-tcltk/tkimg/Manifest
index ce77ff44bca0..5f8bd763509d 100644
--- a/dev-tcltk/tkimg/Manifest
+++ b/dev-tcltk/tkimg/Manifest
@@ -1,4 +1,3 @@
-DIST Img-Source-1.4.7.tar.gz 7259144 BLAKE2B 48794a21564864c5b20953d1504acde5512be4aaa8db0834f63b15431af0bfa8bb2050f241e7b2d9b383480b59e17567f26f45c91e9f9a7fc58600cfe6ef6595 SHA512 6a395d6263e2f46151d0d3f5c6044d87a933617981200d2663328b8c7993b8a3aacba45568cee7aa2f5d8c8d020cb63956179aab5147d25d91b8834c0dfa4b9d
-DIST tkimg-1.4-patchset-1.tar.xz 17956 BLAKE2B f6d3e5e5f258434bd02e21271357f2e2013ce7c90f2d1862e8e7ac0f1cf235d39b1713434a00261ec442c1843a70194b4d14081a5d4cec07c8ad6bf45bbf1db3 SHA512 bd20e0beaa224c42e856e6d44d86c2a5f04c28d096c561f44c4afcf8c821bf859c602156a9be60f23f906e8da2f43c89ca358d32e8f9497296e7c5a5bf23ed69
-DIST tkimg-1.4.7-patchset-1.tar.xz 8208 BLAKE2B c2e6f5d6ef415c897cac33da4a003efec467312e844912e5a519cfb3ddf04ac5cac830eed05418ef74f931df2211c53c40669e53ce3bed219a7c2c714a398de5 SHA512 596c505db7f2ff40c786b83a018eba7f82718d350b6a601f8b93aa64fac238d6b8def603cd719f89fc526e5d2891a94b46de1a2ba628b8ff0ec80979892e28d8
-DIST tkimg1.4.tar.bz2 4912894 BLAKE2B 630ce6b95f42f0883373970ff919493d34cf4a61119af9520702079c6272f9b6ddbc6241197b39ac509d9b2c76c6f3d3bd29944acea4cdc1c82134cba473818a SHA512 b03aba6e21e35b8733dbc4fa66fae67284a05e68248e5afb2a85c1520c74d0c6c5091860a3ab682f4a662a318c562339e9b7b82f050e63bbf48d1b4757d379a1
+DIST Img-1.4.15-Source.tar.gz 12108837 BLAKE2B b423457f7edceeff38389644e206f2a96204d5f3202a5eb224d9f9a3e4fd2a031c6efb9b53ed72a53441b4d306f4bcdc3ece5d7a08b19e478ed2c74ad66d870e SHA512 f034f7b1cf8b02e0fb80f723927c8512ca67de661b21ee53ea4cf0ec8c09a151466fae0e90395f140834e46e4c231dbce8fefaf870fab41c9dd5a1995fe0d978
+DIST Img-1.4.16-Source.tar.gz 12129708 BLAKE2B 5da76a42a1643d759d765ade01a8a9e9782cba21d30f5ec95693364d80aca32fa54f610081833d44bf5723e6901d7577e93bd4d4285880e855e835ae6a901f4b SHA512 622549749d41c7c026053cf82b4c434602ff541b9ee7f6f15c2450fcf3cfb34eb8277432267c78adc3dcc60e53fa2d84b7cf98c5fd5a6c3cfbcf0f60746cd227
+DIST tkimg-1.4.14-patchset-1.tar.gz 3256 BLAKE2B 8f182365b70b4d7a3f4d9002618285b11293644755304600d302fbb8cf8945cd4bd4eb45e66ed0aec93d19e42556ef294508587f7d4e66821ad960ea5c26c7b6 SHA512 8c93e2b669b56ce5621a4d6d96e7412f623bd42dd777a99ec74741621a5be84f24f47149efae58baa874f49088b053b8466d16dffd79edf9594195ff41c38c0e
diff --git a/dev-tcltk/tkimg/files/tkimg-1.4-jpeg-9.patch b/dev-tcltk/tkimg/files/tkimg-1.4-jpeg-9.patch
deleted file mode 100644
index 23000ac7922c..000000000000
--- a/dev-tcltk/tkimg/files/tkimg-1.4-jpeg-9.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Fix build with jpeg-9, bug #520886
-
---- a/jpeg/jpeg.c 2010-06-17 15:40:24.000000000 +0200
-+++ b/jpeg/jpeg.c 2018-02-07 23:26:38.050073397 +0100
-@@ -53,6 +53,13 @@
- */
-
- #include "tkimg.h"
-+#ifndef FALSE
-+#define FALSE 0
-+#endif
-+#ifndef TRUE
-+#define TRUE 1
-+#endif
-+#define HAVE_BOOLEAN
- #include "jpegtcl.h"
-
- static int SetupJPegLibrary(Tcl_Interp *interp);
diff --git a/dev-tcltk/tkimg/files/tkimg-1.4-png2.patch b/dev-tcltk/tkimg/files/tkimg-1.4-png2.patch
deleted file mode 100644
index 195e9be43fa7..000000000000
--- a/dev-tcltk/tkimg/files/tkimg-1.4-png2.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- png/png.c.orig 2010-06-17 06:40:24.000000000 -0700
-+++ png/png.c 2013-04-23 20:57:32.000000000 -0700
-@@ -332,6 +332,16 @@
- png_set_expand(png_ptr);
- }
-
-+ if (png_get_sRGB && png_get_sRGB(png_ptr, info_ptr, &intent)) {
-+ png_set_sRGB(png_ptr, info_ptr, intent);
-+ } else if (png_get_gAMA) {
-+ double gamma;
-+ if (!png_get_gAMA(png_ptr, info_ptr, &gamma)) {
-+ gamma = 0.45455;
-+ }
-+ png_set_gamma(png_ptr, 1.0, gamma);
-+ }
-+
- png_read_update_info(png_ptr,info_ptr);
- block.pixelSize = png_get_channels(png_ptr, info_ptr);
- block.pitch = png_get_rowbytes(png_ptr, info_ptr);
-@@ -353,16 +363,6 @@
- block.offset[3] = 0;
- }
-
-- if (png_get_sRGB && png_get_sRGB(png_ptr, info_ptr, &intent)) {
-- png_set_sRGB(png_ptr, info_ptr, intent);
-- } else if (png_get_gAMA) {
-- double gamma;
-- if (!png_get_gAMA(png_ptr, info_ptr, &gamma)) {
-- gamma = 0.45455;
-- }
-- png_set_gamma(png_ptr, 1.0, gamma);
-- }
--
- png_data= (char **) ckalloc(sizeof(char *) * info_height +
- info_height * block.pitch);
-
diff --git a/dev-tcltk/tkimg/files/tkimg-1.4.15-gcc11.patch b/dev-tcltk/tkimg/files/tkimg-1.4.15-gcc11.patch
new file mode 100644
index 000000000000..72f529482709
--- /dev/null
+++ b/dev-tcltk/tkimg/files/tkimg-1.4.15-gcc11.patch
@@ -0,0 +1,10 @@
+--- a/tiff/tiffZip.c 2023-03-14 19:04:42.869354563 +0100
++++ b/tiff/tiffZip.c 2023-03-14 19:05:14.768849607 +0100
+@@ -22,6 +22,7 @@
+ * OF THIS SOFTWARE.
+ */
+
++#include <stdint.h>
+ #include "tiffInt.h"
+
+ /*
diff --git a/dev-tcltk/tkimg/metadata.xml b/dev-tcltk/tkimg/metadata.xml
index b1e9347d617c..122ac3cdb818 100644
--- a/dev-tcltk/tkimg/metadata.xml
+++ b/dev-tcltk/tkimg/metadata.xml
@@ -1,13 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
<name>Gentoo Tcltk Project</name>
</maintainer>
- <longdescription lang="en">
- The "Img" package adds a lot of image formats to Tcl/Tk.
- </longdescription>
<upstream>
<remote-id type="sourceforge">tkimg</remote-id>
</upstream>
diff --git a/dev-tcltk/tkimg/tkimg-1.4-r9.ebuild b/dev-tcltk/tkimg/tkimg-1.4-r9.ebuild
deleted file mode 100644
index 155c4483e327..000000000000
--- a/dev-tcltk/tkimg/tkimg-1.4-r9.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib prefix toolchain-funcs virtualx
-
-MYP="${PN}${PV}"
-
-DESCRIPTION="Adds a lot of image formats to Tcl/Tk"
-HOMEPAGE="http://tkimg.sourceforge.net/"
-SRC_URI="
- https://dev.gentoo.org/~jlec/distfiles/${P}-patchset-1.tar.xz
- mirror://sourceforge/${PN}/${PV}/${MYP}.tar.bz2"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
-IUSE="doc test static-libs"
-
-RDEPEND="
- dev-lang/tk:=
- >=dev-tcltk/tcllib-1.11
- media-libs/tiff:0=
- >=media-libs/libpng-1.6:0=
- >=sys-libs/zlib-1.2.7:=
- x11-libs/libX11
- virtual/jpeg:="
-DEPEND="${RDEPEND}
- test? (
- x11-apps/xhost
- media-fonts/font-misc-misc
- media-fonts/font-cursor-misc )"
-
-# Fails with jpeg-turbo silently, #386253
-#RESTRICT="test"
-
-S="${WORKDIR}/${MYP}"
-
-src_prepare() {
- epatch \
- "${WORKDIR}"/${P}-jpeg.patch \
- "${FILESDIR}"/${P}-jpeg-9.patch \
- "${WORKDIR}"/${P}-tiff.patch \
- "${WORKDIR}"/${P}-png.patch \
- "${FILESDIR}"/${P}-png2.patch \
- "${WORKDIR}"/${P}-zlib.patch
-
- find compat/{libjpeg,libpng,zlib,libtiff} -delete
-
- sed \
- -e 's:-O2 -fomit-frame-pointer::g' \
- -e 's: -pipe::g' \
- -i */configure || die
-
- eprefixify */*.h
- tc-export AR
-}
-
-src_test() {
- Xemake test || die "Xmake failed"
-}
-
-src_install() {
- local l bl
-
- emake \
- DESTDIR="${D}" \
- INSTALL_ROOT="${D}" \
- install
-
- if ! use static-libs; then
- find "${ED}"/usr/$(get_libdir)/ -type f -name "*\.a" -delete || die
- fi
-
- # Make library links
- for l in "${ED}"/usr/lib*/Img*/*tcl*.so; do
- bl=$(basename $l)
- dosym Img1.4/${bl} /usr/$(get_libdir)/${bl}
- done
-
- dodoc ChangeLog README Reorganization.Notes.txt changes ANNOUNCE
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- doins demo.tcl
- insinto /usr/share/doc/${PF}/html
- doins -r doc/*
- fi
-}
diff --git a/dev-tcltk/tkimg/tkimg-1.4.15.ebuild b/dev-tcltk/tkimg/tkimg-1.4.15.ebuild
new file mode 100644
index 000000000000..e3a36d80e9df
--- /dev/null
+++ b/dev-tcltk/tkimg/tkimg-1.4.15.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools edos2unix prefix toolchain-funcs virtualx
+
+MYP=Img-${PV}-Source
+
+DESCRIPTION="Adds a lot of image formats to Tcl/Tk"
+HOMEPAGE="http://tkimg.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}/$(ver_cut 1-2)/${PN}%20${PV}/${MYP}.tar.gz
+ https://dev.gentoo.org/~tupone/distfiles/${PN}-1.4.14-patchset-1.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="doc test static-libs"
+
+RDEPEND="
+ dev-lang/tk:=
+ dev-tcltk/tcllib
+ media-libs/tiff:=
+ media-libs/libpng:0=
+ sys-libs/zlib:=
+ x11-libs/libX11
+ media-libs/libjpeg-turbo:="
+DEPEND="${RDEPEND}
+ test? (
+ x11-apps/xhost
+ media-fonts/font-misc-misc
+ media-fonts/font-cursor-misc )"
+
+RESTRICT="!test? ( test )"
+
+S="${WORKDIR}/${MYP}"
+
+PATCHES=(
+ "${WORKDIR}"/patchset-1
+ "${FILESDIR}"/${P}-gcc11.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+ glBegin # used to test for openGL support
+ glutMainLoop # used to test for glut support
+)
+
+src_prepare() {
+ edos2unix \
+ libjpeg/jpegtclDecls.h \
+ zlib/zlibtclDecls.h \
+ libpng/pngtclDecls.h \
+ tiff/tiffZip.c \
+ tiff/tiffPixar.c \
+ libtiff/tifftclDecls.h
+
+ # libtiff/jpeg unbundle is problematic
+ rm ../patchset-1/tkimg-1.4.12-tiff.patch || die
+ rm ../patchset-1/tkimg-1.4.10-jpeg.patch || die
+
+ default
+
+ echo "unknown" > manifest.uuid || die
+
+ find compat/libtiff/config -name ltmain.sh -delete || die
+ sed -i \
+ -e 's:"--with-CC=$TIFFCC"::' \
+ libtiff/configure.ac || die
+
+ eautoreconf
+ for dir in zlib libpng libtiff libjpeg base bmp gif ico jpeg pcx pixmap png\
+ ppm ps sgi sun tga tiff window xbm xpm dted raw flir compat/libtiff ; do
+ (cd ${dir}; AT_NOELIBTOOLIZE=yes eautoreconf)
+ done
+
+ eprefixify */*.h
+ tc-export AR
+}
+
+src_configure() {
+ default
+
+ sed -i \
+ -e "/PACKAGE_/d" \
+ libtiff/libtiff/tif_config.h \
+ || die
+}
+
+src_test() {
+ virtx default
+}
+
+src_install() {
+ local l bl
+
+ emake \
+ DESTDIR="${D}" \
+ INSTALL_ROOT="${D}" \
+ install
+
+ if ! use static-libs; then
+ find "${ED}"/usr/$(get_libdir)/ -type f -name "*\.a" -delete || die
+ fi
+
+ # Make library links
+ for l in "${ED}"/usr/lib*/Img*/*tcl*.so; do
+ bl=$(basename ${l})
+ dosym Img${PV}/${bl} /usr/$(get_libdir)/${bl}
+ done
+
+ dodoc ChangeLog README Reorganization.Notes.txt changes ANNOUNCE
+
+ if use doc; then
+ docompress -x usr/share/doc/${PF}/demo.tcl
+ dodoc demo.tcl
+ docinto html
+ dodoc -r doc/*
+ fi
+}
diff --git a/dev-tcltk/tkimg/tkimg-1.4.16.ebuild b/dev-tcltk/tkimg/tkimg-1.4.16.ebuild
new file mode 100644
index 000000000000..1b25010cff74
--- /dev/null
+++ b/dev-tcltk/tkimg/tkimg-1.4.16.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools edos2unix prefix toolchain-funcs virtualx
+
+MYP=Img-${PV}
+
+DESCRIPTION="Adds a lot of image formats to Tcl/Tk"
+HOMEPAGE="http://tkimg.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}/$(ver_cut 1-2)/${PN}%20${PV}/${MYP}-Source.tar.gz
+ https://dev.gentoo.org/~tupone/distfiles/${PN}-1.4.14-patchset-1.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc test static-libs"
+
+RDEPEND="
+ dev-lang/tk:=
+ dev-tcltk/tcllib
+ media-libs/tiff:=
+ media-libs/libpng:0=
+ sys-libs/zlib:=
+ x11-libs/libX11
+ media-libs/libjpeg-turbo:="
+DEPEND="${RDEPEND}
+ test? (
+ x11-apps/xhost
+ media-fonts/font-misc-misc
+ media-fonts/font-cursor-misc )"
+
+RESTRICT="!test? ( test )"
+
+S="${WORKDIR}/${MYP}"
+
+PATCHES=(
+ "${WORKDIR}"/patchset-1
+ "${FILESDIR}"/${PN}-1.4.15-gcc11.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 rewinddir64 closedir64 stat64 # used on AIX
+ glBegin # used to test for openGL support
+ glutMainLoop # used to test for glut support
+)
+
+src_prepare() {
+ edos2unix \
+ libjpeg/jpegtclDecls.h \
+ zlib/zlibtclDecls.h \
+ libpng/pngtclDecls.h \
+ tiff/tiffZip.c \
+ tiff/tiffPixar.c \
+ libtiff/tifftclDecls.h
+
+ # libtiff/jpeg unbundle is problematic
+ rm ../patchset-1/tkimg-1.4.12-tiff.patch || die
+ rm ../patchset-1/tkimg-1.4.10-jpeg.patch || die
+
+ default
+
+ echo "unknown" > manifest.uuid || die
+
+ find compat/libtiff/config -name ltmain.sh -delete || die
+ sed -i \
+ -e 's:"--with-CC=$TIFFCC"::' \
+ libtiff/configure.ac || die
+
+ eautoreconf
+ for dir in zlib libpng libtiff libjpeg base bmp gif ico jpeg pcx pixmap png\
+ ppm ps sgi sun tga tiff window xbm xpm dted raw flir compat/libtiff ; do
+ (cd ${dir}; AT_NOELIBTOOLIZE=yes eautoreconf)
+ done
+
+ eprefixify */*.h
+ tc-export AR
+}
+
+src_configure() {
+ default
+
+ sed -i \
+ -e "/PACKAGE_/d" \
+ libtiff/libtiff/tif_config.h \
+ || die
+}
+
+src_test() {
+ virtx default
+}
+
+src_install() {
+ local l bl
+
+ emake \
+ DESTDIR="${D}" \
+ INSTALL_ROOT="${D}" \
+ install
+
+ if ! use static-libs; then
+ find "${ED}"/usr/$(get_libdir)/ -type f -name "*\.a" -delete || die
+ fi
+
+ # Make library links
+ for l in "${ED}"/usr/lib*/Img*/*tcl*.so; do
+ bl=$(basename ${l})
+ dosym Img${PV}/${bl} /usr/$(get_libdir)/${bl}
+ done
+
+ dodoc ChangeLog README Reorganization.Notes.txt changes ANNOUNCE
+
+ if use doc; then
+ docompress -x usr/share/doc/${PF}/demo.tcl
+ dodoc demo.tcl
+ docinto html
+ dodoc -r doc/*
+ fi
+}
diff --git a/dev-tcltk/tkimg/tkimg-1.4.7.ebuild b/dev-tcltk/tkimg/tkimg-1.4.7.ebuild
deleted file mode 100644
index 7166b8609063..000000000000
--- a/dev-tcltk/tkimg/tkimg-1.4.7.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools eutils multilib prefix toolchain-funcs virtualx
-
-MYP=Img-Source-$PV
-
-DESCRIPTION="Adds a lot of image formats to Tcl/Tk"
-HOMEPAGE="http://tkimg.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/1.4/${PN}%20${PV}/${MYP}.tar.gz
- https://dev.gentoo.org/~tupone/distfiles/${P}-patchset-1.tar.xz"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
-IUSE="doc test static-libs"
-
-RDEPEND="
- dev-lang/tk:=
- >=dev-tcltk/tcllib-1.11
- media-libs/tiff:0=
- >=media-libs/libpng-1.6:0=
- >=sys-libs/zlib-1.2.7:=
- x11-libs/libX11
- virtual/jpeg:="
-DEPEND="${RDEPEND}
- test? (
- x11-apps/xhost
- media-fonts/font-misc-misc
- media-fonts/font-cursor-misc )"
-
-# Fails tests
-RESTRICT="test"
-
-S="${WORKDIR}/${MYP}"
-
-PATCHES=(
- "${WORKDIR}"/${P}-tclconfig.patch
- "${WORKDIR}"/${P}-jpeg.patch
- "${WORKDIR}"/${P}-zlib.patch
- "${WORKDIR}"/${P}-png.patch
- "${WORKDIR}"/${P}-tiff.patch
- "${FILESDIR}"/${PN}-1.4-jpeg-9.patch
-)
-
-src_prepare() {
- default
- find . -name configure -delete
- eautoreconf
- for dir in zlib libpng libtiff libjpeg base bmp gif ico jpeg pcx pixmap png\
- ppm ps sgi sun tga tiff window xbm xpm dted raw ; do
- (cd $dir; eautoreconf)
- done
-
- find compat/{libjpeg,libpng,zlib,libtiff} -delete
-
- eprefixify */*.h
- tc-export AR
-}
-
-src_install() {
- local l bl
-
- emake \
- DESTDIR="${D}" \
- INSTALL_ROOT="${D}" \
- install
-
- if ! use static-libs; then
- find "${ED}"/usr/$(get_libdir)/ -type f -name "*\.a" -delete || die
- fi
-
- # Make library links
- for l in "${ED}"/usr/lib*/Img*/*tcl*.so; do
- bl=$(basename $l)
- dosym Img1.4/${bl} /usr/$(get_libdir)/${bl}
- done
-
- dodoc ChangeLog README Reorganization.Notes.txt changes ANNOUNCE
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- doins demo.tcl
- insinto /usr/share/doc/${PF}/html
- doins -r doc/*
- fi
-}
diff --git a/dev-tcltk/tklib/Manifest b/dev-tcltk/tklib/Manifest
index 0324259c6808..a57116afb222 100644
--- a/dev-tcltk/tklib/Manifest
+++ b/dev-tcltk/tklib/Manifest
@@ -1 +1 @@
-DIST tklib-0.6.tar.bz2 5637725 BLAKE2B 9a0be896803c5e78e578d7c0b0bb38a742f29055708081dc858ea732895521c37fec35cc21ae544225409dff16d7b2cae93ddd0aa02150a4d7a2bd06e301759b SHA512 c4dbe6afe9d1d9c97edc154c807d429086e045f8b202870f21cafcd846b7ff759c8260d44d5e1e1322a0e7d3478c1dfb12d7a0c76200f583ac3bb85b21bf04b4
+DIST tklib-0.7.tar.bz2 5967953 BLAKE2B a7f6fa366045e78043652eea983f143cac78d847ce8b69575b1f0738b1da7e90cb3566b13412521edd62bf7beb3b92a582b2e3f0e71745bd95bd95232ff7d3ad SHA512 0322611c1dea8eebebe3f8f15ec33b695b074329ce9602aeb93d04985f486237f3ce89f1c42a5c148e12ae00b51be8c889c7db77977a0cc4204ac5eaad2cfec2
diff --git a/dev-tcltk/tklib/files/tklib-0.6-doc.patch b/dev-tcltk/tklib/files/tklib-0.6-doc.patch
deleted file mode 100644
index 7fea599df526..000000000000
--- a/dev-tcltk/tklib/files/tklib-0.6-doc.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/Makefile.in 2018-09-25 09:12:56.269163896 +0200
-+++ b/Makefile.in 2018-09-25 09:14:27.437130443 +0200
-@@ -101,9 +101,9 @@
-
-
- html-doc:
-- $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` html
-+ $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` doc html
- nroff-doc:
-- $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` nroff
-+ $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` doc nroff
- tmml-doc:
- $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` tmml
- wiki-doc:
diff --git a/dev-tcltk/tklib/metadata.xml b/dev-tcltk/tklib/metadata.xml
index 227dda5ba584..7c79d6b524d2 100644
--- a/dev-tcltk/tklib/metadata.xml
+++ b/dev-tcltk/tklib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tklib/tklib-0.6-r1.ebuild b/dev-tcltk/tklib/tklib-0.6-r1.ebuild
deleted file mode 100644
index 9231c58cf5e7..000000000000
--- a/dev-tcltk/tklib/tklib-0.6-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit multilib
-
-CODE=6a397dec6188148cf6a6fe290cf2bd92a9190c42
-
-DESCRIPTION="Collection of utility modules for Tk, and a companion to Tcllib"
-HOMEPAGE="http://www.tcl.tk/software/tklib"
-SRC_URI="http://core.tcl.tk/tklib/raw/tklib-0.6.tar.bz2?name=${CODE} -> ${P}.tar.bz2"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-LICENSE="BSD"
-IUSE="doc"
-
-RDEPEND="
- dev-lang/tk:0
- dev-tcltk/tcllib"
-DEPEND="${RDEPEND}"
-
-src_install() {
- default
- if use doc; then
- emake DESTDIR="${D}" doc
- dohtml doc/html/*
- fi
- dodoc DESCRIPTION.txt README*
- dosym ${PN}${PV} /usr/$(get_libdir)/${PN}
-
- mv "${ED}"/usr/share/man/mann/datefield{,-${PN}}.n || die
- mv "${ED}"/usr/share/man/mann/menubar{,-${PN}}.n || die
- mv "${ED}"/usr/bin/dia{,-${PN}} || die
-}
diff --git a/dev-tcltk/tklib/tklib-0.6-r2.ebuild b/dev-tcltk/tklib/tklib-0.7.ebuild
index b8b7f41408e1..98ab8fe6a033 100644
--- a/dev-tcltk/tklib/tklib-0.6-r2.ebuild
+++ b/dev-tcltk/tklib/tklib-0.7.ebuild
@@ -1,15 +1,13 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit multilib
-
-CODE=6a397dec6188148cf6a6fe290cf2bd92a9190c42
+CODE=7832035fb9249dce
DESCRIPTION="Collection of utility modules for Tk, and a companion to Tcllib"
HOMEPAGE="http://www.tcl.tk/software/tklib"
-SRC_URI="http://core.tcl.tk/tklib/raw/tklib-0.6.tar.bz2?name=${CODE} -> ${P}.tar.bz2"
+SRC_URI="http://core.tcl.tk/${PN}/raw/${P}.tar.bz2?name=${CODE} -> ${P}.tar.bz2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
@@ -21,8 +19,6 @@ RDEPEND="
dev-tcltk/tcllib"
DEPEND="${RDEPEND}"
-PATCHES=( "${FILESDIR}"/${P}-doc.patch )
-
src_compile() {
default
use doc && emake doc
@@ -39,5 +35,4 @@ src_install() {
mv "${ED}"/usr/share/man/mann/datefield{,-${PN}}.n || die
mv "${ED}"/usr/share/man/mann/menubar{,-${PN}}.n || die
- mv "${ED}"/usr/bin/dia{,-${PN}} || die
}
diff --git a/dev-tcltk/tkpiechart/metadata.xml b/dev-tcltk/tkpiechart/metadata.xml
index d836ed383e14..ec0eb938bf50 100644
--- a/dev-tcltk/tkpiechart/metadata.xml
+++ b/dev-tcltk/tkpiechart/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tkpiechart/tkpiechart-6.5-r1.ebuild b/dev-tcltk/tkpiechart/tkpiechart-6.5-r2.ebuild
index ca9a67327bfa..86f30c70ecea 100644
--- a/dev-tcltk/tkpiechart/tkpiechart-6.5-r1.ebuild
+++ b/dev-tcltk/tkpiechart/tkpiechart-6.5-r2.ebuild
@@ -1,9 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=0
-
-inherit multilib
+EAPI=7
DESCRIPTION="create and update 2D or 3D pie charts in a Tcl/Tk application"
HOMEPAGE="http://jfontain.free.fr/piechart6.htm"
@@ -12,17 +10,18 @@ SRC_URI="http://jfontain.free.fr/${P}.tar.bz2"
LICENSE="jfontain"
KEYWORDS="amd64 ~ppc x86"
SLOT="0"
-IUSE=""
-DEPEND=">=dev-lang/tk-8.3
+DEPEND="dev-lang/tk:*
dev-tcltk/tcllib"
+RDEPEND="${DEPEND}"
src_install() {
dodir /usr/$(get_libdir)/tkpiechart
./instapkg.tcl "${D}"/usr/$(get_libdir)/tkpiechart || die
- dodoc CHANGES CONTENTS README TODO || die
- dohtml *.gif *.htm || die
+ HTML_DOCS=( *.gif *.htm )
+ einstalldocs
docinto demo
- dodoc demo* || die
+ dodoc demo*
+ docompress -x /usr/share/doc/${PF}/demo
}
diff --git a/dev-tcltk/tkpng/metadata.xml b/dev-tcltk/tkpng/metadata.xml
index bcd5cf589a25..d3a8da77d5e4 100644
--- a/dev-tcltk/tkpng/metadata.xml
+++ b/dev-tcltk/tkpng/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tkpng/tkpng-0.9.ebuild b/dev-tcltk/tkpng/tkpng-0.9-r2.ebuild
index 316297207f53..e52eff0bbda7 100644
--- a/dev-tcltk/tkpng/tkpng-0.9.ebuild
+++ b/dev-tcltk/tkpng/tkpng-0.9-r2.ebuild
@@ -1,30 +1,44 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
MY_P="${PN}${PV}"
+inherit autotools
+
DESCRIPTION="Implements support for loading and using PNG images with Tcl/Tk"
HOMEPAGE="http://www.muonics.com/FreeStuff/TkPNG/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${MY_P}.tgz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN}/${PV}/${MY_P}.tgz"
-SLOT="0"
LICENSE="tcltk"
+SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug threads"
RDEPEND="
- >=dev-lang/tcl-8.4:0=
- >=dev-lang/tk-8.4:0=
- sys-libs/zlib"
+ >=dev-lang/tcl-8.4:=
+ >=dev-lang/tk-8.4:=
+ sys-libs/zlib
+"
DEPEND="${RDEPEND}"
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
# test target in Makefile, but test not shipped
RESTRICT="test"
S="${WORKDIR}"/${MY_P}
+src_prepare() {
+ default
+
+ # Clang 16
+ eautoreconf
+}
+
src_configure() {
econf \
$(use_enable debug symbols) \
diff --git a/dev-tcltk/tktable/Manifest b/dev-tcltk/tktable/Manifest
index 47558485893b..fedd8cd14556 100644
--- a/dev-tcltk/tktable/Manifest
+++ b/dev-tcltk/tktable/Manifest
@@ -1 +1,2 @@
DIST Tktable2.10.tar.gz 284135 BLAKE2B ff3a37aac53418e7993a310d38ae23b7ec2673e0b44c118ff558a6c3c3805b39bf77f099287e91298fb4a6afacebde68a09171c6b90ecd11f48ac2a33fa3b312 SHA512 d69b1c766abb2833f48c900ca4d4fd3927f138ddf728dd76f2087a784604daa4356ec60a146e71d2fb2508a644598711e0373cb81dbfb0272b7ad16a0754e899
+DIST tktable-2.10.8.tar.gz 308245 BLAKE2B 4ede838e8553244dabd71d9543094bf5dfc82bd74f31ac9b4d4eea7bb2ee7406d90b16198d700eddfccd236160be1b7ed9a1f72f4760a71cddde5e01927ebb42 SHA512 927dad616306f0af477d1ce801ded962d966f7b46904b0a6b6772d1c9140310ff4c93a90ad4cb228495febae8be5f3ded9a328f621ba34195a339fc29d000f04
diff --git a/dev-tcltk/tktable/files/tktable-2.10-clang6.patch b/dev-tcltk/tktable/files/tktable-2.10-clang6.patch
new file mode 100644
index 000000000000..af5eea359442
--- /dev/null
+++ b/dev-tcltk/tktable/files/tktable-2.10-clang6.patch
@@ -0,0 +1,80 @@
+--- a/generic/tkTable.h 2023-01-17 21:57:06.986859146 +0100
++++ b/generic/tkTable.h 2023-01-17 21:59:18.730802234 +0100
+@@ -526,7 +526,7 @@
+ extern int TableOptionBdSet(ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin,
+ CONST84 char *value, char *widgRec, int offset);
+-extern char * TableOptionBdGet(ClientData clientData,
++extern const char *TableOptionBdGet(ClientData clientData,
+ Tk_Window tkwin, char *widgRec, int offset,
+ Tcl_FreeProc **freeProcPtr);
+ extern int TableTagConfigureBd(Table *tablePtr,
+@@ -535,7 +535,7 @@
+ Tcl_Interp *interp,
+ Tk_Window unused, CONST84 char *value,
+ char *widgRec, int offset);
+-extern char * Cmd_OptionGet(ClientData clientData,
++extern const char *Cmd_OptionGet(ClientData clientData,
+ Tk_Window unused, char *widgRec,
+ int offset, Tcl_FreeProc **freeProcPtr);
+
+--- a/generic/tkTableWin.c 2023-01-17 22:09:00.225476183 +0100
++++ b/generic/tkTableWin.c 2023-01-17 22:02:24.739108283 +0100
+@@ -17,7 +17,7 @@
+ static int StickyParseProc _ANSI_ARGS_((ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin,
+ CONST84 char *value, char *widgRec, int offset));
+-static char * StickyPrintProc _ANSI_ARGS_((ClientData clientData,
++static const char *StickyPrintProc _ANSI_ARGS_((ClientData clientData,
+ Tk_Window tkwin, char *widgRec, int offset,
+ Tcl_FreeProc **freeProcPtr));
+
+@@ -117,7 +117,7 @@
+ *
+ *----------------------------------------------------------------------
+ */
+-static char *
++static const char *
+ StickyPrintProc(clientData, tkwin, widgRec, offset, freeProcPtr)
+ ClientData clientData; /* Ignored. */
+ Tk_Window tkwin; /* Window for text widget. */
+--- a/generic/tkTableTag.c 2023-01-17 22:12:25.754449096 +0100
++++ b/generic/tkTableTag.c 2023-01-17 22:12:49.819092428 +0100
+@@ -22,7 +22,7 @@
+ static int TableOptionReliefSet _ANSI_ARGS_((ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin,
+ CONST84 char *value, char *widgRec, int offset));
+-static char * TableOptionReliefGet _ANSI_ARGS_((ClientData clientData,
++static const char *TableOptionReliefGet _ANSI_ARGS_((ClientData clientData,
+ Tk_Window tkwin, char *widgRec, int offset,
+ Tcl_FreeProc **freeProcPtr));
+
+@@ -1340,7 +1340,7 @@
+ *----------------------------------------------------------------------
+ */
+
+-static char *
++static const char *
+ TableOptionReliefGet(clientData, tkwin, widgRec, offset, freeProcPtr)
+ ClientData clientData; /* Type of struct being set. */
+ Tk_Window tkwin; /* Window containing canvas widget. */
+--- a/generic/tkTableUtil.c 2023-01-17 22:13:28.610516868 +0100
++++ b/generic/tkTableUtil.c 2023-01-17 22:14:07.003963494 +0100
+@@ -169,7 +169,7 @@
+ *----------------------------------------------------------------------
+ */
+
+-char *
++const char *
+ TableOptionBdGet(clientData, tkwin, widgRec, offset, freeProcPtr)
+ ClientData clientData; /* Type of struct being set. */
+ Tk_Window tkwin; /* Window containing canvas widget. */
+@@ -329,7 +329,7 @@
+ *----------------------------------------------------------------------
+ */
+
+-char *
++const char *
+ Cmd_OptionGet(ClientData clientData, Tk_Window unused,
+ char *widgRec, int offset, Tcl_FreeProc **freeProcPtr)
+ {
diff --git a/dev-tcltk/tktable/files/tktable-2.10-parallelMake.patch b/dev-tcltk/tktable/files/tktable-2.10-parallelMake.patch
new file mode 100644
index 000000000000..534a0a83b901
--- /dev/null
+++ b/dev-tcltk/tktable/files/tktable-2.10-parallelMake.patch
@@ -0,0 +1,12 @@
+--- a/Makefile.in 2023-01-17 21:41:13.532754760 +0100
++++ b/Makefile.in 2023-01-17 21:41:35.153416999 +0100
+@@ -189,7 +189,8 @@
+ # for the BINARIES that you specified above have already been done.
+ #========================================================================
+
+-all: binaries libraries doc
++all: tkTable.tcl.h
++ $(MAKE) binaries libraries doc
+
+ #========================================================================
+ # The binaries target builds executable programs, Windows .dll's, unix
diff --git a/dev-tcltk/tktable/files/tktable-2.10.8-clang6.patch b/dev-tcltk/tktable/files/tktable-2.10.8-clang6.patch
new file mode 100644
index 000000000000..ddf87cbe6814
--- /dev/null
+++ b/dev-tcltk/tktable/files/tktable-2.10.8-clang6.patch
@@ -0,0 +1,20 @@
+--- a/generic/tkTableTag.c 2023-01-17 22:12:25.754449096 +0100
++++ b/generic/tkTableTag.c 2023-01-17 22:12:49.819092428 +0100
+@@ -22,7 +22,7 @@
+ static int TableOptionReliefSet _ANSI_ARGS_((ClientData clientData,
+ Tcl_Interp *interp, Tk_Window tkwin,
+ CONST84 char *value, char *widgRec, int offset));
+-static char * TableOptionReliefGet _ANSI_ARGS_((ClientData clientData,
++static const char *TableOptionReliefGet _ANSI_ARGS_((ClientData clientData,
+ Tk_Window tkwin, char *widgRec, int offset,
+ Tcl_FreeProc **freeProcPtr));
+
+@@ -1340,7 +1340,7 @@
+ *----------------------------------------------------------------------
+ */
+
+-static char *
++static const char *
+ TableOptionReliefGet(clientData, tkwin, widgRec, offset, freeProcPtr)
+ ClientData clientData; /* Type of struct being set. */
+ Tk_Window tkwin; /* Window containing canvas widget. */
diff --git a/dev-tcltk/tktable/metadata.xml b/dev-tcltk/tktable/metadata.xml
index fb33b8e74e9d..b29e11480553 100644
--- a/dev-tcltk/tktable/metadata.xml
+++ b/dev-tcltk/tktable/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">tktable</remote-id>
+ <remote-id type="github">wjoye/tktable</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-tcltk/tktable/tktable-2.10.ebuild b/dev-tcltk/tktable/tktable-2.10-r2.ebuild
index 52a27f766a8f..1a7cc534e8f1 100644
--- a/dev-tcltk/tktable/tktable-2.10.ebuild
+++ b/dev-tcltk/tktable/tktable-2.10-r2.ebuild
@@ -1,18 +1,17 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
MY_P="Tktable${PV}"
DESCRIPTION="full-featured 2D table widget"
HOMEPAGE="http://tktable.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tktable/${MY_P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/tktable/${MY_P}.tar.gz"
LICENSE="BSD"
KEYWORDS="amd64 ppc x86"
SLOT="0"
-IUSE=""
DEPEND=">=dev-lang/tk-8.0:="
RDEPEND="${DEPEND}"
@@ -22,6 +21,11 @@ S=${WORKDIR}/${MY_P}
HTML_DOCS=( doc/tkTable.html )
DOCS=( ChangeLog README.txt release.txt )
+PATCHES=(
+ "${FILESDIR}"/${P}-parallelMake.patch
+ "${FILESDIR}"/${P}-clang6.patch
+)
+
src_prepare() {
default
sed -e '/^install:/{s: install-doc::}' \
diff --git a/dev-tcltk/tktable/tktable-2.10.8.ebuild b/dev-tcltk/tktable/tktable-2.10.8.ebuild
new file mode 100644
index 000000000000..2215efce4811
--- /dev/null
+++ b/dev-tcltk/tktable/tktable-2.10.8.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="full-featured 2D table widget"
+HOMEPAGE="https://github.com/wjoye/tktable"
+SRC_URI="https://github.com/wjoye/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+KEYWORDS="amd64 ~arm64 ppc x86"
+SLOT="0"
+RESTRICT="test"
+
+DEPEND=">=dev-lang/tk-8.0:="
+RDEPEND="${DEPEND}"
+
+HTML_DOCS=( doc/tkTable.html )
+DOCS=( ChangeLog README.txt release.txt )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ opendir64 rewinddir64 closedir64 stat64 # used on AIX
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.10-parallelMake.patch
+ "${FILESDIR}"/${P}-clang6.patch
+)
+
+src_prepare() {
+ default
+ sed -e '/^install:/{s: install-doc::}' \
+ -e '/^PKG_EXTRA_FILES/{s:=.*:=:}' -i Makefile.in || die
+}
diff --git a/dev-tcltk/tktray/metadata.xml b/dev-tcltk/tktray/metadata.xml
index 227dda5ba584..7c79d6b524d2 100644
--- a/dev-tcltk/tktray/metadata.xml
+++ b/dev-tcltk/tktray/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tktray/tktray-1.3.9-r2.ebuild b/dev-tcltk/tktray/tktray-1.3.9-r2.ebuild
new file mode 100644
index 000000000000..d378d9096777
--- /dev/null
+++ b/dev-tcltk/tktray/tktray-1.3.9-r2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="System Tray Icon Support for Tk on X11"
+HOMEPAGE="https://code.google.com/p/tktray/"
+SRC_URI="https://tktray.googlecode.com/files/${PN}${PV}.tar.gz"
+S="${WORKDIR}/${PN}${PV}"
+
+LICENSE="tcltk"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~sparc x86"
+IUSE="debug threads"
+
+# tests need actual X server with user interaction, bug #284919
+RESTRICT="test"
+
+DEPEND="
+ >=dev-lang/tcl-8.4:=
+ >=dev-lang/tk-8.4:=
+ x11-libs/libXext"
+RDEPEND="${DEPEND}"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+PATCHES=(
+ "${FILESDIR}"/1.1-ldflags.patch
+)
+
+src_prepare() {
+ default
+
+ # Fix bad configure tests w/ Clang 16
+ eautoreconf
+}
+
+src_configure() {
+ source "${ESYSROOT}/usr/$(get_libdir)/tclConfig.sh" || die
+
+ CPPFLAGS="-I${TCL_SRC_DIR}/generic ${CPPFLAGS}" \
+ econf \
+ $(use_enable debug symbols) \
+ $(use_enable threads)
+}
diff --git a/dev-tcltk/tktray/tktray-1.3.9.ebuild b/dev-tcltk/tktray/tktray-1.3.9.ebuild
deleted file mode 100644
index 85b005ef2865..000000000000
--- a/dev-tcltk/tktray/tktray-1.3.9.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils virtualx
-
-MY_P="${PN}${PV}"
-
-DESCRIPTION="System Tray Icon Support for Tk on X11"
-HOMEPAGE="https://code.google.com/p/tktray/"
-SRC_URI="https://tktray.googlecode.com/files/${MY_P}.tar.gz"
-
-LICENSE="tcltk"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~ppc ~sparc x86"
-IUSE="debug threads test"
-
-DEPEND="
- >=dev-lang/tcl-8.4:0=
- >=dev-lang/tk-8.4:0=
- x11-libs/libXext"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- epatch "${FILESDIR}"/1.1-ldflags.patch
-}
-
-src_configure() {
- source /usr/lib/tclConfig.sh
- CPPFLAGS="-I${TCL_SRC_DIR}/generic ${CPPFLAGS}" \
- econf \
- $(use_enable debug symbols) \
- $(use_enable threads)
-}
-
-src_test() {
- Xemake
-}
diff --git a/dev-tcltk/tktreectrl/metadata.xml b/dev-tcltk/tktreectrl/metadata.xml
index 99bf67dcc9a6..210d1b6a2889 100644
--- a/dev-tcltk/tktreectrl/metadata.xml
+++ b/dev-tcltk/tktreectrl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sci@gentoo.org</email>
diff --git a/dev-tcltk/tktreectrl/tktreectrl-2.4.1-r1.ebuild b/dev-tcltk/tktreectrl/tktreectrl-2.4.1-r1.ebuild
new file mode 100644
index 000000000000..373885f86a36
--- /dev/null
+++ b/dev-tcltk/tktreectrl/tktreectrl-2.4.1-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit virtualx
+
+DESCRIPTION="Flexible listbox widget for Tk"
+HOMEPAGE="https://tktreectrl.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
+
+LICENSE="tcltk"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
+IUSE="debug shellicon threads"
+
+RDEPEND=">=dev-lang/tk-8.4:0="
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/2.2.9-as-needed.patch )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable threads)
+ $(use_enable shellicon)
+ $(use_enable amd64 64bit)
+ $(use_enable debug symbols)
+ --with-x
+ --enable-shared
+ )
+
+ econf ${myeconfargs[@]}
+}
+
+src_test() {
+ virtx emake test
+}
+
+src_install() {
+ default
+ mv \
+ "${ED}"/usr/lib*/treectrl${PV}/htmldoc \
+ "${ED}"/usr/share/doc/${PF}/ || die
+}
diff --git a/dev-tcltk/tktreectrl/tktreectrl-2.4.1.ebuild b/dev-tcltk/tktreectrl/tktreectrl-2.4.1.ebuild
deleted file mode 100644
index c77a6d2b59aa..000000000000
--- a/dev-tcltk/tktreectrl/tktreectrl-2.4.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit virtualx
-
-DESCRIPTION="A flexible listbox widget for Tk"
-HOMEPAGE="http://tktreectrl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="tcltk"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
-IUSE="X debug shellicon threads"
-
-RDEPEND=">=dev-lang/tk-8.4:0="
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}"/2.2.9-as-needed.patch )
-
-src_configure() {
- econf \
- $(use_enable threads) \
- $(use_enable shellicon) \
- $(use_enable amd64 64bit) \
- $(use_enable debug symbols) \
- $(use_enable X x) \
- --enable-shared
-}
-
-src_test() {
- virtx emake test
-}
-
-src_install() {
- default
- mv \
- "${ED}"/usr/lib*/treectrl${PV}/htmldoc \
- "${ED}"/usr/share/doc/${P}/ || die
-}
diff --git a/dev-tcltk/tkzinc/Manifest b/dev-tcltk/tkzinc/Manifest
deleted file mode 100644
index cabfe66233e8..000000000000
--- a/dev-tcltk/tkzinc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST Tkzinc-3.3.6plus.tar.gz 1924729 BLAKE2B 9e02b113c37cfb870b2e238591e9b35cf5851c6534249312118c54d179d9ba7dbca17217cd924cfcfb1ef2444697840e3136d0fd1385b976a8a2bfda156c488d SHA512 ead998b69569ebec92e7f60415296262f60b91250b2fe15fdeb9fb71c38756006bedcd9ed2829d915cb6ce3a6461165a48c9037f8e397ba6049a76ae474f7838
diff --git a/dev-tcltk/tkzinc/files/3.3.6-ldflags.patch b/dev-tcltk/tkzinc/files/3.3.6-ldflags.patch
deleted file mode 100644
index 903ef9a2eaee..000000000000
--- a/dev-tcltk/tkzinc/files/3.3.6-ldflags.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/tclconfig/tcl.m4 b/tclconfig/tcl.m4
-index 0cbca13..c68af63 100644
---- a/tclconfig/tcl.m4
-+++ b/tclconfig/tcl.m4
-@@ -1447,7 +1447,8 @@ dnl AC_CHECK_TOOL(AR, ar)
- # get rid of the warnings.
- #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
-
-- SHLIB_LD="${CC} -shared"
-+ # TEA specific: use LDFLAGS_DEFAULT instead of LDFLAGS
-+ SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS_DEFAULT} ${LDFLAGS}'
- DL_OBJS="tclLoadDl.o"
- DL_LIBS="-ldl"
- LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
diff --git a/dev-tcltk/tkzinc/files/tkzinc-3.3.4-latex.patch b/dev-tcltk/tkzinc/files/tkzinc-3.3.4-latex.patch
deleted file mode 100644
index 6b697a7bfd78..000000000000
--- a/dev-tcltk/tkzinc/files/tkzinc-3.3.4-latex.patch
+++ /dev/null
@@ -1,12 +0,0 @@
- doc/refman.tex | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/doc/refman.tex b/doc/refman.tex
-index b384e97..be88fde 100644
---- a/doc/refman.tex
-+++ b/doc/refman.tex
-@@ -1,3 +1,4 @@
-+\RequirePackage{ifpdf}
- \documentclass[11pt,twoside,a4paper]{book}
-
- %----------------------------------------------------------------------
diff --git a/dev-tcltk/tkzinc/metadata.xml b/dev-tcltk/tkzinc/metadata.xml
deleted file mode 100644
index 3f91a1577203..000000000000
--- a/dev-tcltk/tkzinc/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>tcltk@gentoo.org</email>
- <name>TCL / TK Herd</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-tcltk/tkzinc/tkzinc-3.3.6.ebuild b/dev-tcltk/tkzinc/tkzinc-3.3.6.ebuild
deleted file mode 100644
index 73b6514bd1b0..000000000000
--- a/dev-tcltk/tkzinc/tkzinc-3.3.6.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="A Tk widget library"
-HOMEPAGE="http://www.tkzinc.org"
-SRC_URI="http://www.tkzinc.org/Packages/Tkzinc-${PV}plus.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~ppc"
-IUSE="debug doc threads"
-
-DEPEND="
- dev-lang/tk:=
- media-libs/glew:=
- virtual/opengl
- doc? ( virtual/latex-base )"
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/Tkzinc-${PV//.}+"
-
-PATCHES=(
- "${FILESDIR}"/${PV}-ldflags.patch
- "${FILESDIR}"/${PN}-3.3.4-latex.patch
- )
-
-HTML_DOCS='doc/*png doc/*html doc/*css'
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf \
- --enable-shared \
- --enable-gl=damage \
- $(use_enable debug symbols) \
- $(use_enable threads)
-}
-
-src_compile() {
- default
- if use doc; then
- VARTEXFONTS="${T}"/fonts emake pdf
- fi
-}
-
-src_install() {
- default
- use doc && dodoc doc/refman.pdf
-}
-
-src_test() {
- emake test
-}
diff --git a/dev-tcltk/tls/Manifest b/dev-tcltk/tls/Manifest
index 125ba528d5f1..8589bba72fb5 100644
--- a/dev-tcltk/tls/Manifest
+++ b/dev-tcltk/tls/Manifest
@@ -1,4 +1 @@
-DIST tcltls-1.7.11.tar.gz 158181 BLAKE2B 21955f0f4d750c9b0789b275abd45e77ecc6235b8bf8094cfa18c372ccda53fa28612ff10a87c91a883160f625844364391985363304ea2a5d4ca312471a581d SHA512 7a9aa33d7ed606ba792b4ff5a817a94f880b7204795ac30ab386299ee5850c7dfde920f35056676afa2db23866ad4fc6cb6c6b9e7a7dfba7385f97f447de2e04
-DIST tcltls-1.7.16.tar.gz 166439 BLAKE2B 855b61bf21e7635fc9c53838037136586552261bb0c3b4c4a52638e99358f418a2c0d606b5fb130e32004e3a34c80afea25be16f068ffb499d6636309e4ae2a3 SHA512 f63b885dbfaec5d9ae811c126bd0ff253787effd7b053282b9ee566e9fae54df940bc058a6c3dd22e31fcb9ec6ae1b286aa40efd69c3f01f5a3014aada730ab1
-DIST tls1.6-src.tar.gz 168043 BLAKE2B e065f9e9a837d2da861fb52bdfbb0ab9ecf32b6c408e7d0394ab17ccafa2d3a4ee1cfc501a0ff1e9fa01bd4938e15527a74518877813e5cfcbb38d893362c905 SHA512 beaca2653a11924f022e28254cef5071ecb8ab2e2355496d278fcab1bdcc46424aa58d2fe176aea26ec4fbe4416a912b5af8e8e69571c8a5301b7921ecf48383
-DIST tls1.6.7-src.tar.gz 173654 BLAKE2B 50eff220d02c8fb4389a5e0ab3d6f85c61d3bf93a1c6a4ba2c709bb77e821163407ae4f287f16c7548a0405367825cee5da34abf6538d2bf374b23329c2b7129 SHA512 f8dbb7fc9890bcb3e3930cad66209ca67cd68c0aa2288caa6a3bb1fd1ad21444f1eb056b4b4585ec86da64079cd9df72cdd6ff201102820d45e6397d6148d21c
+DIST tcltls-1.7.22.tar.gz 165206 BLAKE2B 351a5ee6a50174db8b13c9232a617aa90480550520771004c318c063b7c9703cdf969c7d12c56c54483bce5d08a9b48c04906d2be3ef9e3de0ab74c5dac68346 SHA512 28c76a6e7333b6ed1d83234691d61c9e71a59d0a6a28182fc0f50e97cae7b54da63ac76527e3b16087f3eab0b9cfe19bad02362e485d0cf378724de534805e99
diff --git a/dev-tcltk/tls/files/tls-1.7.22-gcc11.patch b/dev-tcltk/tls/files/tls-1.7.22-gcc11.patch
new file mode 100644
index 000000000000..be58d47a2640
--- /dev/null
+++ b/dev-tcltk/tls/files/tls-1.7.22-gcc11.patch
@@ -0,0 +1,38 @@
+--- a/tlsBIO.c 2023-03-15 08:36:55.452468839 +0100
++++ b/tlsBIO.c 2023-03-15 08:37:20.480074701 +0100
+@@ -232,8 +232,12 @@
+ case BIO_CTRL_RESET:
+ dprintf("Got BIO_CTRL_RESET");
+ num = 0;
++ ret = 0;
++ break;
+ case BIO_C_FILE_SEEK:
+ dprintf("Got BIO_C_FILE_SEEK");
++ ret = 0;
++ break;
+ case BIO_C_FILE_TELL:
+ dprintf("Got BIO_C_FILE_TELL");
+ ret = 0;
+--- a/tls.c 2023-03-15 08:39:52.491651551 +0100
++++ b/tls.c 2023-03-15 08:41:44.543863094 +0100
+@@ -1424,7 +1424,8 @@
+ channelName = Tcl_GetStringFromObj(objv[2], NULL);
+ break;
+ }
+- /* else fall... */
++ Tcl_WrongNumArgs(interp, 1, objv, "?-local? channel");
++ return TCL_ERROR;
+ default:
+ Tcl_WrongNumArgs(interp, 1, objv, "?-local? channel");
+ return TCL_ERROR;
+--- a/aclocal.m4 2023-03-15 09:05:11.853965135 +0100
++++ b/aclocal.m4 2023-03-15 09:05:49.134383835 +0100
+@@ -689,7 +689,7 @@
+ TCLTLS_SSL_LIBS="-L$openssldir -lssl -lcrypto"
+ openssldir="`AS_DIRNAME(["$openssldir"])`"
+ else
+- TCLTLS_SSL_LIBS="-L$openssldir/lib -lssl -lcrypto"
++ TCLTLS_SSL_LIBS="-lssl -lcrypto"
+ fi
+ TCLTLS_SSL_CFLAGS="-I$openssldir/include"
+ TCLTLS_SSL_CPPFLAGS="-I$openssldir/include"
diff --git a/dev-tcltk/tls/files/tls-1.7.22-ldflags.patch b/dev-tcltk/tls/files/tls-1.7.22-ldflags.patch
new file mode 100644
index 000000000000..a5d8c083d315
--- /dev/null
+++ b/dev-tcltk/tls/files/tls-1.7.22-ldflags.patch
@@ -0,0 +1,13 @@
+--- a/configure.ac 2020-12-25 11:05:31.312433864 +0100
++++ b/configure.ac 2020-12-25 11:05:42.692248123 +0100
+@@ -247,10 +247,8 @@
+
+ dnl Enable a stable ABI
+ DC_SETUP_STABLE_API([${srcdir}/tcltls.vers], tcltls.syms)
+-if test "$tcltls_debug" = 'true'; then
+ WEAKENSYMS=':'
+ REMOVESYMS=':'
+-fi
+
+ dnl Produce output
+ AC_OUTPUT(Makefile pkgIndex.tcl tcltls.syms)
diff --git a/dev-tcltk/tls/metadata.xml b/dev-tcltk/tls/metadata.xml
index ba80abe7401c..39bcd93afcce 100644
--- a/dev-tcltk/tls/metadata.xml
+++ b/dev-tcltk/tls/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
diff --git a/dev-tcltk/tls/tls-1.6-r3.ebuild b/dev-tcltk/tls/tls-1.6-r3.ebuild
deleted file mode 100644
index f85cb1f65961..000000000000
--- a/dev-tcltk/tls/tls-1.6-r3.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib
-
-MY_P="${PN}${PV}"
-
-DESCRIPTION="TLS OpenSSL extension to Tcl"
-HOMEPAGE="http://tls.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tls/${MY_P}-src.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="tk"
-
-DEPEND="
- dev-lang/tcl:0=
- dev-libs/openssl:0=
- tk? ( dev-lang/tk:0= )"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- econf \
- --with-ssl-dir="${EPREFIX}/usr" \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
-}
-
-src_install() {
- default
- dohtml tls.htm
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # this is ugly, but fixing the makefile mess is even worse
- local loc=usr/$(get_libdir)/tls1.6/libtls1.6.dylib
- install_name_tool -id "${EPREFIX}"/${loc} "${ED}"/${loc} || die
- fi
-}
diff --git a/dev-tcltk/tls/tls-1.6.7.ebuild b/dev-tcltk/tls/tls-1.6.7.ebuild
deleted file mode 100644
index 065cbe9b6ba8..000000000000
--- a/dev-tcltk/tls/tls-1.6.7.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib
-
-MY_P="${PN}${PV}"
-
-DESCRIPTION="TLS OpenSSL extension to Tcl"
-HOMEPAGE="http://tls.sourceforge.net/"
-SRC_URI="mirror://sourceforge/tls/${MY_P}-src.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="tk"
-
-DEPEND="
- dev-lang/tcl:0=
- dev-libs/openssl:0=
- tk? ( dev-lang/tk:0= )"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- econf \
- --with-ssl-dir="${EPREFIX}/usr" \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
-}
-
-src_install() {
- default
- dohtml tls.htm
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # this is ugly, but fixing the makefile mess is even worse
- local loc=usr/$(get_libdir)/tls1.6/libtls1.6.dylib
- install_name_tool -id "${EPREFIX}"/${loc} "${ED}"/${loc} || die
- fi
-}
diff --git a/dev-tcltk/tls/tls-1.7.11.ebuild b/dev-tcltk/tls/tls-1.7.11.ebuild
deleted file mode 100644
index 7b22e45bf9df..000000000000
--- a/dev-tcltk/tls/tls-1.7.11.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils
-
-MY_P="tcl${PN}-${PV}"
-
-DESCRIPTION="TLS OpenSSL extension to Tcl"
-HOMEPAGE="http://tls.sourceforge.net/"
-SRC_URI="https://core.tcl.tk/tcltls/uv/tcl${PN}-${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE="tk"
-
-DEPEND="
- dev-lang/tcl:0=
- dev-libs/openssl:0=
- tk? ( dev-lang/tk:0= )"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-src_configure() {
- econf \
- --with-ssl-dir="${EPREFIX}/usr" \
- --with-tcl="${EPREFIX}/usr/$(get_libdir)"
-}
-
-src_install() {
- default
- dodoc tls.htm
-
- if [[ ${CHOST} == *-darwin* ]] ; then
- # this is ugly, but fixing the makefile mess is even worse
- local loc=usr/$(get_libdir)/tls1.7/libtls1.7.dylib
- install_name_tool -id "${EPREFIX}"/${loc} "${ED}"/${loc} || die
- fi
-}
diff --git a/dev-tcltk/tls/tls-1.7.16.ebuild b/dev-tcltk/tls/tls-1.7.22-r1.ebuild
index c553132cdeca..a13d7493da14 100644
--- a/dev-tcltk/tls/tls-1.7.16.ebuild
+++ b/dev-tcltk/tls/tls-1.7.22-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit eutils
+inherit autotools
MY_P="tcl${P}"
@@ -13,7 +13,7 @@ SRC_URI="https://core.tcl.tk/tcltls/uv/${MY_P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="tk"
DEPEND="
@@ -26,8 +26,19 @@ RESTRICT="test"
S="${WORKDIR}/${MY_P}"
+PATCHES=(
+ "${FILESDIR}"/${P}-ldflags.patch
+ "${FILESDIR}"/${P}-gcc11.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
src_configure() {
econf \
+ --disable-hardening \
--with-ssl-dir="${EPREFIX}/usr" \
--with-tcl="${EPREFIX}/usr/$(get_libdir)"
}
diff --git a/dev-tcltk/togl/files/togl-2.0-clang6.patch b/dev-tcltk/togl/files/togl-2.0-clang6.patch
new file mode 100644
index 000000000000..e227c2236f8f
--- /dev/null
+++ b/dev-tcltk/togl/files/togl-2.0-clang6.patch
@@ -0,0 +1,11 @@
+--- a/togl.c 2023-01-18 07:31:37.816199176 +0100
++++ b/togl.c 2023-01-18 07:33:08.946629940 +0100
+@@ -132,7 +132,7 @@
+ /* pointer to Tk_SetClassProcs function in the stub table */
+
+ static void (*SetClassProcsPtr)
+- _ANSI_ARGS_((Tk_Window, Tk_ClassProcs *, ClientData));
++ _ANSI_ARGS_((Tk_Window, const Tk_ClassProcs *, ClientData));
+ #endif
+
+ /*
diff --git a/dev-tcltk/togl/metadata.xml b/dev-tcltk/togl/metadata.xml
index e8e075423cc0..6e84ebb09421 100644
--- a/dev-tcltk/togl/metadata.xml
+++ b/dev-tcltk/togl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
@@ -24,7 +24,7 @@ Togl does almost no OpenGL drawing itself, instead it manages OpenGL
drawing by calling various Tcl commands (a.k.a., callback functions). Those
commands can be C functions that call OpenGL (in)directly or another Tcl
package (e.g., Tcl3D).
-</longdescription>
+ </longdescription>
<upstream>
<remote-id type="sourceforge">togl</remote-id>
</upstream>
diff --git a/dev-tcltk/togl/togl-2.0-r2.ebuild b/dev-tcltk/togl/togl-2.0-r4.ebuild
index 58d12aadd6c7..0d9c1fab4c22 100644
--- a/dev-tcltk/togl/togl-2.0-r2.ebuild
+++ b/dev-tcltk/togl/togl-2.0-r4.ebuild
@@ -1,22 +1,22 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=4
+EAPI=8
MY_P=Togl${PV}
DESCRIPTION="A Tk widget for OpenGL rendering"
HOMEPAGE="http://togl.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}-src.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_P}-src.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
IUSE="debug +threads"
RDEPEND="
- dev-lang/tk
- virtual/opengl
+ dev-lang/tk:*
+ media-libs/mesa[X]
x11-libs/libXmu"
DEPEND="${RDEPEND}"
@@ -25,7 +25,14 @@ RESTRICT="test"
S=${WORKDIR}/${MY_P}
+PATCHES=( "${FILESDIR}"/${P}-clang6.patch )
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 # used to test for Large File Support
+)
+
src_prepare() {
+ default
sed \
-e 's:-fomit-frame-pointer::g' \
-e 's:-O2::g' \
@@ -40,7 +47,6 @@ src_configure() {
}
src_install() {
- emake DESTDIR="${D}" install
- dohtml doc/*
- dodoc README*
+ HTML_DOCS=( doc/* )
+ default
}
diff --git a/dev-tcltk/vtcl/Manifest b/dev-tcltk/vtcl/Manifest
index b8d60283483f..3316ddb89973 100644
--- a/dev-tcltk/vtcl/Manifest
+++ b/dev-tcltk/vtcl/Manifest
@@ -1 +1,2 @@
DIST vtcl-1.6.0.tar.gz 554727 BLAKE2B abf5e9a9fbc42e8c9ab1c216f0d103fcd88c9894a73185d50b56e0c87c88e82e6f368dd3acd7339f3a1875c9cda22123e4df82f6852343da10abac330896c899 SHA512 bfc2ed114af4bee375e820e4b1e47d394a800541eb9917204ef42481a4033927c432d7d2b005d13edd086c7c91bd594908965aae512cc4af9e5654a2bfd296de
+DIST vtcl-1.6.1a1.tar.gz 599864 BLAKE2B 59c3b503cad053de5110d4a46a92803c2e513ddee300ca525382bf76f523e09f01f2680b9ca7ad8b647350c609cedea691b0e40fe028da3ecb7475d95338d60a SHA512 8c7fa1a036d9e30aff322dff2a740ca473b4fe28689b3832304ab29832162967edaf7b6e67f641f2b298c24a9ed9cd911dc6d13277cc8e20fefcacd4268b71ad
diff --git a/dev-tcltk/vtcl/files/vtcl-1.6.1_alpha1-tk86.patch b/dev-tcltk/vtcl/files/vtcl-1.6.1_alpha1-tk86.patch
new file mode 100644
index 000000000000..ae09fe671408
--- /dev/null
+++ b/dev-tcltk/vtcl/files/vtcl-1.6.1_alpha1-tk86.patch
@@ -0,0 +1,10 @@
+--- a/configure 2021-01-06 17:35:58.921365193 +0100
++++ b/configure 2021-01-06 17:34:44.859618414 +0100
+@@ -11,6 +11,7 @@
+ ##
+ findwish( ) {
+ WISHES=" \
++ wish8.6 \
+ wish8.5 \
+ wish8.4 \
+ wish8.3 \
diff --git a/dev-tcltk/vtcl/metadata.xml b/dev-tcltk/vtcl/metadata.xml
index d188e1513e7f..3bb4a54f4ece 100644
--- a/dev-tcltk/vtcl/metadata.xml
+++ b/dev-tcltk/vtcl/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>tcltk@gentoo.org</email>
- <name>TCL / TK herd</name>
+ <name>TCL/TK project</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">vtcl</remote-id>
diff --git a/dev-tcltk/vtcl/vtcl-1.6.0-r1.ebuild b/dev-tcltk/vtcl/vtcl-1.6.0-r2.ebuild
index 596e52294e4e..61a39f123b03 100644
--- a/dev-tcltk/vtcl/vtcl-1.6.0-r1.ebuild
+++ b/dev-tcltk/vtcl/vtcl-1.6.0-r2.ebuild
@@ -1,29 +1,32 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=0
+EAPI=7
DESCRIPTION="Visual Tcl is a high-quality application development environment"
HOMEPAGE="http://vtcl.sf.net"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86"
IUSE="doc"
-DEPEND="dev-lang/tk"
+DEPEND="dev-lang/tk:*"
+RDEPEND="${DEPEND}"
MY_DESTDIR=/usr/share/${PN}
+
src_compile() {
- ./configure || die
sed -i 's,^\(VTCL_HOME=\).*,\1'${MY_DESTDIR}',g' vtcl || die "Path fixing failed."
sed -i 's,package require -exact Tk ,package require Tk ,' lib/tkcon.tcl || die "Tcl8.5 patch failed"
}
src_install() {
- dodir ${MY_DESTDIR} || die "Directory creation failed."
- dobin vtcl || die
+ dodir ${MY_DESTDIR}
+ dobin vtcl
cp -r ./{demo,images,lib,sample,vtcl.tcl} "${D}/${MY_DESTDIR}" || die "Data installation failed."
- dodoc ChangeLog README
- use doc && dodoc doc/tutorial.txt
- use doc && dohtml doc/*html
+ if use doc; then
+ DOCS=( ChangeLog README doc/tutorial.txt )
+ HTML_DOCS=( doc/*html )
+ fi
+ einstalldocs
}
diff --git a/dev-tcltk/vtcl/vtcl-1.6.1_alpha1.ebuild b/dev-tcltk/vtcl/vtcl-1.6.1_alpha1.ebuild
new file mode 100644
index 000000000000..ace740e7dd75
--- /dev/null
+++ b/dev-tcltk/vtcl/vtcl-1.6.1_alpha1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit edos2unix
+
+MYP=${PN}-${PV/_alpha/a}
+
+DESCRIPTION="Visual Tcl is a high-quality application development environment"
+HOMEPAGE="http://vtcl.sf.net"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MYP}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+DEPEND="dev-lang/tk:*"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"/${MYP}
+
+MY_DESTDIR=/usr/share/${PN}
+
+PATCHES=( "${FILESDIR}"/${P}-tk86.patch )
+
+src_prepare() {
+ edos2unix configure
+ default
+}
+
+src_compile() {
+ sed -i 's,^\(VTCL_HOME=\).*,\1'${MY_DESTDIR}',g' vtcl || die "Path fixing failed."
+ sed -i 's,package require -exact Tk ,package require Tk ,' lib/tkcon.tcl || die "Tcl8.5 patch failed"
+}
+
+src_install() {
+ dodir ${MY_DESTDIR}
+ dobin vtcl
+ cp -r ./{demo,images,lib,sample,vtcl.tcl} "${D}/${MY_DESTDIR}" || die "Data installation failed."
+ if use doc; then
+ DOCS=( ChangeLog README doc/tutorial.txt )
+ HTML_DOCS=( doc/*html )
+ fi
+ einstalldocs
+}