Import p5-Tkx 1.09.

The Tkx module provides yet another Tk interface for Perl.  Tk is a GUI
toolkit tied to the Tcl language, and Tkx provides a bridge to Tcl that
allows Tk based applications to be written in Perl.

The main idea behind Tkx is that it is a very thin wrapper on top of
Tcl, i.e. that what you get is exactly the behaviour you read about in
the Tcl/Tk documentation with no surprises added by the Perl layer.

For a gentle introduction please read the Tkx::Tutorial.

The tkx-ed example needs the bwidget OpenBSD package.

ok sthen@
This commit is contained in:
stu 2015-05-08 03:11:18 +00:00
parent 6abd446168
commit 4ccd535254
5 changed files with 94 additions and 0 deletions

24
x11/p5-Tkx/Makefile Normal file
View File

@ -0,0 +1,24 @@
# $OpenBSD: Makefile,v 1.1.1.1 2015/05/08 03:11:18 stu Exp $
COMMENT = Tk extension module for Perl
DISTNAME = Tkx-1.09
CATEGORIES = x11 devel
MAINTAINER = Stuart Cassoff <stwo@users.sourceforge.net>
# Perl
PERMIT_PACKAGE_CDROM = Yes
MODULES = cpan x11/tk
BUILD_DEPENDS = ${MODTK_BUILD_DEPENDS}
RUN_DEPENDS = ${MODTK_RUN_DEPENDS} devel/p5-Tcl
CONFIGURE_ARGS = INSTALLSITESCRIPT='$${PREFIX}/share/examples/p5-Tkx'
TEST_IS_INTERACTIVE = X11
post-install:
${INSTALL_SCRIPT} ${WRKSRC}/menu ${PREFIX}/share/examples/p5-Tkx
.include <bsd.port.mk>

2
x11/p5-Tkx/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (Tkx-1.09.tar.gz) = ePH04/uv8Qz5Y1hFTCe/AePDH94JKiO93OSv7/xSYB8=
SIZE (Tkx-1.09.tar.gz) = 28390

View File

@ -0,0 +1,42 @@
$OpenBSD: patch-tkx-prove,v 1.1.1.1 2015/05/08 03:11:18 stu Exp $
--- tkx-prove.orig Sun Nov 29 15:34:20 2009
+++ tkx-prove Thu May 7 05:46:07 2015
@@ -112,8 +112,7 @@ sub set_dir {
}, "$dir/t");
}
-use Test::Harness::Straps;
-my $strap = Test::Harness::Straps->new;
+use TAP::Parser;
$tree->g_bind("<<TreeviewSelect>>", \&tree_select);
@@ -134,16 +133,19 @@ sub run_tests {
$tree->set($item, "time", "-");
Tkx::update();
- my $cmd = $strap->_command_line("$dir/$test");
- my $before = time;
- my @output = qx($cmd);
- my $used = time - $before;
- my $status = $?;
- my %res = $strap->analyze($item, \@output);
- $res{output} = join("", @output);
- $res{start_time} = $before;
+ my %res;
+ my $parser = TAP::Parser->new( { source => "$dir/$test" } );
+ while ( my $pres = $parser->next ) {
+ $res{output} .= $pres->as_string . "\n";
+ }
+ my $used = $parser->end_time - $parser->start_time;
$res{used_time} = sprintf "%.03f", $used;
- $res{status} = $status;
+ $res{skip_all} = $parser->skipped;
+ $res{passing} = ($parser->passed == $parser->tests_run);
+ $res{status} = $parser->exit;
+ $res{max} = $parser->tests_run;
+ $res{ok} = $parser->passed;
+
#use Data::Dump; print Data::Dump::dump(\%res), "\n";
$result{$item} = \%res;

11
x11/p5-Tkx/pkg/DESCR Normal file
View File

@ -0,0 +1,11 @@
The Tkx module provides yet another Tk interface for Perl. Tk is a GUI
toolkit tied to the Tcl language, and Tkx provides a bridge to Tcl that
allows Tk based applications to be written in Perl.
The main idea behind Tkx is that it is a very thin wrapper on top of
Tcl, i.e. that what you get is exactly the behaviour you read about in
the Tcl/Tk documentation with no surprises added by the Perl layer.
For a gentle introduction please read the Tkx::Tutorial.
The tkx-ed example needs the bwidget OpenBSD package.

15
x11/p5-Tkx/pkg/PLIST Normal file
View File

@ -0,0 +1,15 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2015/05/08 03:11:18 stu Exp $
${P5SITE}/Tkx/
${P5SITE}/Tkx.pm
${P5SITE}/Tkx/LabEntry.pm
${P5SITE}/Tkx/MegaConfig.pm
${P5SITE}/Tkx/Tutorial.pod
@man man/man1/tkx-ed.1
@man man/man3p/Tkx.3p
@man man/man3p/Tkx::LabEntry.3p
@man man/man3p/Tkx::MegaConfig.3p
@man man/man3p/Tkx::Tutorial.3p
share/examples/p5-Tkx/
share/examples/p5-Tkx/menu
share/examples/p5-Tkx/tkx-ed
share/examples/p5-Tkx/tkx-prove