Index: docs/pdds/draft/pdd30_install.pod =================================================================== --- docs/pdds/draft/pdd30_install.pod (.../trunk) (revision 37309) +++ docs/pdds/draft/pdd30_install.pod (.../branches/install_tools) (revision 38358) @@ -206,8 +206,8 @@ destination directory's F directory under F I<(not yet)>. -=item * doc_dir: Copy documentation files to a -F<$doc_dir/languages/mylanguage/> subdirectory tree. +=item * docdir: Copy documentation files to a +F<$docdir/languages/mylanguage/> subdirectory tree. =item * man_dir: Generate man(1) pages and copy to destination directory's F<$man_dir/man1/> directory. {{ what about man(2) and man(3) pages? info_dir Index: ext/SQLite3/Makefile.in =================================================================== --- ext/SQLite3/Makefile.in (.../trunk) (revision 37309) +++ ext/SQLite3/Makefile.in (.../branches/install_tools) (revision 38358) @@ -10,10 +10,10 @@ PREFIX = @prefix@ EXEC_PREFIX = @exec_prefix@ DESTDIR = -BIN_DIR = @bin_dir@ -LIB_DIR = @lib_dir@ -INCLUDE_DIR = @include_dir@ -DOC_DIR = @doc_dir@ +BIN_DIR = @bindir@ +LIB_DIR = @libdir@ +INCLUDE_DIR = @includedir@ +DOC_DIR = @docdir@ INC_DIR = @inc@ RM_F = @rm_f@ RM_RF = @rm_rf@ Index: tools/dev/install_dev_files.pl =================================================================== --- tools/dev/install_dev_files.pl (.../trunk) (revision 37309) +++ tools/dev/install_dev_files.pl (.../branches/install_tools) (revision 38358) @@ -57,9 +57,13 @@ use strict; use warnings; -use File::Basename qw(dirname basename); -use File::Copy; -use File::Spec; +use File::Basename qw(basename); +use lib qw( lib ); +use Parrot::Install qw( + install_files + create_directories + lines_to_files +); # When run from the makefile, which is probably the only time this # script will ever be used, all of these defaults will get overridden. @@ -74,7 +78,9 @@ docdir => '/usr/share/doc', # parrot/ subdir added below datadir => '/usr/share/', # parrot/ subdir added below srcdir => '/usr/src/', # parrot/ subdir added below + versiondir => '', 'dry-run' => 0, + packages => 'devel|pct|tge|nqp', ); my @manifests; @@ -89,119 +95,89 @@ my $parrotdir = $options{versiondir}; -# We'll report multiple occurrences of the same file -my %seen; +# Set up transforms on filenames +my(@transformorder) = (qw(lib share include src doc), '^(tools|VERSION)', '^compilers'); +my(%metatransforms) = ( + lib => { + ismeta => 1, + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + $filehash->{DestDirs} = [$parrotdir, "tools"]; + return($filehash); + }, + }, + share => { + ismeta => 1, + optiondir => 'data', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} = basename($filehash->{Dest}); + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + include => { + ismeta => 1, + optiondir => 'include', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^src//; # strip off leading src/ dir + $filehash->{Dest} =~ s/^include//; + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + src => { + ismeta => 1, + optiondir => 'src', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^src//; # strip off leading src/ dir + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + doc => { + ismeta => 1, + optiondir => 'doc', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^docs/pod/; # other docs are actually raw Pod + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + '^(tools|VERSION)' => { + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + '^compilers' => { + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^compilers/languages/; + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, +); -my @files; -my @installable_exe; -my %directories; -@ARGV = @manifests; -while (<>) { - chomp; +my($filehashes, $directories) = lines_to_files( + \%metatransforms, \@transformorder, \@manifests, \%options, $parrotdir +); - s/\#.*//; # Ignore comments - next if /^\s*$/; # Skip blank lines - - my ( $src, $meta, $dest ) = split( /\s+/, $_ ); - $dest ||= $src; - - if ( $seen{$src}++ ) { - print STDERR "$ARGV:$.: Duplicate entry $src\n"; - } - - # Parse out metadata - die "Malformed line in MANIFEST: $_" if not defined $meta; - my $generated = $meta =~ s/^\*//; - my ($package) = $meta =~ /^\[(.*?)\]/; - $meta =~ s/^\[(.*?)\]//; - next unless $package; # Skip if this file belongs to no package - - next unless $package =~ /devel|pct|tge|nqp/; - - my %meta; - @meta{ split( /,/, $meta ) } = (); - $meta{$_} = 1 for ( keys %meta ); # Laziness - - if ( $meta{lib} ) { - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, "tools", $dest ); - } - elsif ( $meta{share} ) { - $dest = File::Spec->catdir( $options{datadir}, $parrotdir, basename($dest) ); - } - elsif ( $meta{include} ) { - $dest =~ s/^src//; # strip off leading src/ dir - $dest =~ s/^include//; - $dest = File::Spec->catdir( $options{includedir}, $parrotdir, $dest ); - } - elsif ( $meta{src} ) { - $dest =~ s/^src//; # strip off leading src/ dir - $dest = File::Spec->catdir( $options{srcdir}, $parrotdir, $dest ); - } - elsif ( $meta{doc} ) { - $dest =~ s/^docs/pod/; # docs dir are actually raw Pod - $dest = File::Spec->catdir( $options{docdir}, $parrotdir, $dest ); - } - elsif ( /^runtime/ ) { - $dest =~ s/^runtime\/parrot\///; - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - elsif ( /^tools/ ) { - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - elsif ( /^VERSION/ ) { - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - elsif ( /^compilers/ ) { - $dest =~ s/^compilers/languages/; - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - else { - die "Unknown file type in MANIFEST: $_"; - } - - $dest = File::Spec->catdir( $options{buildprefix}, $dest ) - if $options{buildprefix}; - - $directories{ dirname($dest) } = 1; - push( @files, [ $src => $dest ] ); -} -continue { - close ARGV if eof; # Reset line numbering for each input file -} - unless ( $options{'dry-run'} ) { - for my $dir ( map { $options{destdir} . $_ } keys %directories ) { - unless ( -d $dir ) { - - # Make full path to the directory $dir - my @dirs; - while ( !-d $dir ) { # Scan up to nearest existing ancestor - unshift @dirs, $dir; - $dir = dirname($dir); - } - foreach (@dirs) { - mkdir( $_, 0777 ) or die "mkdir $_: $!\n"; - } - } - } + create_directories($options{destdir}, $directories); } -print("Installing ...\n"); -foreach ( @files, @installable_exe ) { - my ( $src, $dest ) = @$_; - $dest = $options{destdir} . $dest; - if ( $options{'dry-run'} ) { - print "$src -> $dest\n"; - next; - } - else { - next unless -e $src; - copy( $src, $dest ) or die "copy $src to $dest: $!\n"; - print "$dest\n"; - } - my $mode = ( stat($src) )[2]; - chmod $mode, $dest; -} +install_files($options{destdir}, $options{'dry-run'}, $filehashes); +print "Finished install_dev_files.pl\n"; + # Local Variables: # mode: cperl # cperl-indent-level: 4 Index: tools/dev/install_files.pl =================================================================== --- tools/dev/install_files.pl (.../trunk) (revision 37309) +++ tools/dev/install_files.pl (.../branches/install_tools) (revision 38358) @@ -1,6 +1,6 @@ #! perl ################################################################################ -# Copyright (C) 2001-2008, Parrot Foundation. +# Copyright (C) 2001-2009, Parrot Foundation. # $Id$ ################################################################################ @@ -112,9 +112,13 @@ use strict; use warnings; -use File::Basename qw(dirname basename); -use File::Copy; -use File::Spec; +use File::Basename qw(basename); +use lib qw( lib ); +use Parrot::Install qw( + install_files + create_directories + lines_to_files +); # When run from the makefile, which is probably the only time this # script will ever be used, all of these defaults will get overridden. @@ -127,8 +131,9 @@ libdir => '/usr/lib', # parrot/ subdir added below includedir => '/usr/include', # parrot/ subdir added below docdir => '/usr/share/doc', # parrot/ subdir added below - version => '', + versiondir => '', 'dry-run' => 0, + packages => 'main|library|pge', ); my @manifests; @@ -143,162 +148,123 @@ my $parrotdir = $options{versiondir}; -# We'll report multiple occurrences of the same file -my %seen; +# Set up transforms on filenames +my(@transformorder) = qw(lib bin include doc pkgconfig ^compilers); +my(%metatransforms) = ( + lib => { + ismeta => 1, + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + local($_) = $filehash->{Dest}; + if ( /^install_/ ) { + s/^install_//; # parrot with different config + $filehash->{DestDirs} = [$parrotdir, 'include']; + $filehash->{Dest} = $_; + } + else { + # don't allow libraries to be installed into subdirs of libdir + $filehash->{Dest} = basename($_); + } + return($filehash); + }, + }, + bin => { + ismeta => 1, + optiondir => 'bin', + transform => sub { + my($filehash) = @_; + # parrot with different config + $filehash->{Installable} = $filehash->{Dest} =~ s/^installable_//; + return($filehash); + }, + isbin => 1, + }, + include => { + ismeta => 1, + optiondir => 'include', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^include//; + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + doc => { + ismeta => 1, + optiondir => 'doc', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s#^docs/resources#resources#; # resources go in the top level of docs + $filehash->{Dest} =~ s/^docs/pod/; # other docs are actually raw Pod + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, + pkgconfig => { + ismeta => 1, + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + # For the time being this is hardcoded as being installed under + # libdir as it is typically done with automake installed packages. + # If there is a use case to make this configurable we'll add a + # seperate --pkgconfigdir option. + $filehash->{DestDirs} = ['pkgconfig', $parrotdir]; + return($filehash); + }, + }, + '^compilers' => { + optiondir => 'lib', + transform => sub { + my($filehash) = @_; + $filehash->{Dest} =~ s/^compilers/languages/; + $filehash->{DestDirs} = [$parrotdir]; + return($filehash); + }, + }, +); -my @files; -my @installable_exe; -my %directories; -@ARGV = @manifests; -while (<>) { - chomp; +my($filehashes, $directories) = lines_to_files( + \%metatransforms, \@transformorder, \@manifests, \%options, $parrotdir +); - s/\#.*//; # Ignore comments - next if /^\s*$/; # Skip blank lines - - my ( $src, $meta, $dest ) = split( /\s+/, $_ ); - $dest ||= $src; - - if ( $seen{$src}++ ) { - print STDERR "$ARGV:$.: Duplicate entry $src\n"; - } - - # Parse out metadata - die "Malformed line in MANIFEST: $_" if not defined $meta; - my $generated = $meta =~ s/^\*//; - my ($package) = $meta =~ /^\[(.*?)\]/; - $meta =~ s/^\[(.*?)\]//; - next unless $package; # Skip if this file belongs to no package - - next unless $package =~ /main|library|pge/; - - my %meta; - @meta{ split( /,/, $meta ) } = (); - $meta{$_} = 1 for ( keys %meta ); # Laziness - - if ( /^runtime/ ) { - # have to catch this case early. - $dest =~ s/^runtime\/parrot\///; - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - elsif ( $meta{lib} ) { - if ( $dest =~ /^install_/ ) { - $dest =~ s/^install_//; # parrot with different config - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, 'include', $dest ); - } - else { - # don't allow libraries to be installed into subdirs of libdir - $dest = File::Spec->catdir( $options{libdir}, basename($dest) ); - } - } - elsif ( $meta{bin} ) { - my $copy = $dest; - $dest =~ s/^installable_//; # parrot with different config - $dest = File::Spec->catdir( $options{bindir}, $dest ); - # track bin here to check later below - # https://trac.parrot.org/parrot/ticket/434 - if ( $copy =~ /^installable/ ) { - push @installable_exe, [ $src, $dest ]; - next; - } - } - elsif ( $meta{include} ) { - $dest =~ s/^include//; - $dest = File::Spec->catdir( $options{includedir}, $parrotdir, $dest ); - } - elsif ( $meta{doc} ) { - $dest =~ s/^docs\/resources/resources/; # resources go in the top level of docs - $dest =~ s/^docs/pod/; # other docs are actually raw Pod - $dest = File::Spec->catdir( $options{docdir}, $parrotdir, $dest ); - } - elsif ( $meta{pkgconfig} ) { - - # For the time being this is hardcoded as being installed under libdir - # as it is typically done with automake installed packages. If there - # is a use case to make this configurable we'll add a seperate - # --pkgconfigdir option. - $dest = File::Spec->catdir( $options{libdir}, 'pkgconfig', $parrotdir, $dest ); - } - elsif ( /^compilers/ ) { - $dest =~ s/^compilers/languages/; - $dest = File::Spec->catdir( $options{libdir}, $parrotdir, $dest ); - } - else { - die "Unknown install location in MANIFEST: $_"; - } - - $dest = File::Spec->catdir( $options{buildprefix}, $dest ) - if $options{buildprefix}; - - $directories{ dirname($dest) } = 1; - push( @files, [ $src => $dest ] ); -} -continue { - close ARGV if eof; # Reset line numbering for each input file -} - unless ( $options{'dry-run'} ) { - for my $dir ( map { $options{destdir} . $_ } keys %directories ) { - unless ( -d $dir ) { - - # Make full path to the directory $dir - my @dirs; - while ( !-d $dir ) { # Scan up to nearest existing ancestor - unshift @dirs, $dir; - $dir = dirname($dir); - } - foreach (@dirs) { - mkdir( $_, 0777 ) or die "mkdir $_: $!\n"; - } - } - } + create_directories($options{destdir}, $directories); } + # TT #347 -# 1. skip build_dir-only binaries for @installable_exe -for (@installable_exe) { - my ( $i, $dest ) = @$_; - my ($file) = $i =~ /installable_(.+)$/; +# 1. skip build_dir-only binaries for files marked Installable +my($filehash, @removes, $removes); +foreach $filehash (grep { $_->{Installable} } @$filehashes) { + my( $src, $dest ) = map { $filehash->{$_} } qw(Source Dest); + my ($file) = $src =~ /installable_(.+)$/; next unless $file; - my @f = map { $_ ? $_->[0] : '' } @files; - if (grep(/^$file$/, @f)) { - if (-e $file) { - print "skipping $file, using installable_$file instead\n"; - @files = map {$_ and $_->[0] !~ /^$file$/ ? $_ : undef} @files; - } + if((grep { $_->{Source} =~ /^$file$/ } @$filehashes) and -e $file) { + print "skipping $file, using installable_$file instead\n"; + push @removes, $file; } } +$removes = join '|', @removes; +@$filehashes = grep { $_->{Source} !~ /^($removes)$/ } @$filehashes; + # 2. for every .exe check if there's an installable. Fail if not -foreach my $f (@files ) { - next unless $_; - my ( $f, $dest ) = @$_; - my $i; +my $i; +foreach $filehash (grep { ! $_->{Installable} } @$filehashes ) { + my( $src, $dest ) = map { $filehash->{$_} } qw(Source Dest); + next unless $src =~ /\.exe$/; # This logic will fail on non-win32 if the generated files are really # generated as with rt #40817. We don't have [main]bin here. - $i = "installable_$f" if $f =~ /\.exe$/; - next unless $i; - unless (map {$_->[0] =~ /^$i$/} @installable_exe) { + $i = "installable_$src"; + unless (map {$_->{Source} =~ /^$i$/} grep { $_->{Installable} } @$filehashes) { die "$i is missing in MANIFEST or MANIFEST.generated\n"; } } -print("Installing ...\n"); -foreach ( @files, @installable_exe ) { - next unless $_; - my ( $src, $dest ) = @$_; - $dest = $options{destdir} . $dest; - if ( $options{'dry-run'} ) { - print "$src -> $dest\n"; - next; - } - else { - next unless -e $src; - next if $^O eq 'cygwin' and -e "$src.exe"; # stat works, copy not - copy( $src, $dest ) or die "copy $src to $dest: $!\n"; - print "$dest\n"; - } - my $mode = ( stat($src) )[2]; - chmod $mode, $dest; -} +install_files($options{destdir}, $options{'dry-run'}, $filehashes); + +print "Finished install_files.pl\n"; + # Local Variables: # mode: cperl # cperl-indent-level: 4 Index: tools/dev/mk_language_shell.pl =================================================================== --- tools/dev/mk_language_shell.pl (.../trunk) (revision 37309) +++ tools/dev/mk_language_shell.pl (.../branches/install_tools) (revision 38358) @@ -457,9 +457,9 @@ ## configuration settings VERSION := @versiondir@ -BIN_DIR := @bin_dir@ -LIB_DIR := @lib_dir@$(VERSION) -DOC_DIR := @doc_dir@$(VERSION) +BIN_DIR := @bindir@ +LIB_DIR := @libdir@$(VERSION) +DOC_DIR := @docdir@$(VERSION) MANDIR := @mandir@$(VERSION) # Set up extensions Index: lib/Parrot/Install.pm =================================================================== --- lib/Parrot/Install.pm (.../trunk) (revision 0) +++ lib/Parrot/Install.pm (.../branches/install_tools) (revision 38358) @@ -0,0 +1,239 @@ +package Parrot::Install; +# $Id$ +use strict; +use warnings; +use File::Basename qw(dirname); +use File::Copy; +use File::Path; # mkpath +use File::Spec; +use base qw( Exporter ); +our @EXPORT_OK = qw( + lines_to_files + create_directories + install_files +); + +#################### DOCUMENTATION #################### + +=head1 NAME + +Parrot::Install - Functionality for installation programs + +=head1 SYNOPSIS + + use Parrot::Install qw( + install_files + create_directories + lines_to_files + ); + +=head1 DESCRIPTION + +This module exports on demand only three subroutines used in the Parrot +installation programs F and +F. The subroutines are tested by tests found +in F. + +=head1 SUBROUTINES + +=head2 C + +B Suck in the lines from the mentioned manifests, and turn them into +file locations. + +B List of five scalars. + + ($files, $directories) = + lines_to_files( + \%metatransforms, + \@transformorder, + \@manifests, + \%options, + $parrotdir, + ); + +B List of three scalars. + +B + +=cut + +sub lines_to_files { + my ($metatransforms, $transformorder, $manifests_ref, + $options_ref, $parrotdir) = @_; + my @files; + my %directories; + my($tkey, $thash); + my $filehash; + + # We'll report multiple occurrences of the same file + my(%seen); + + # Check $manifests_ref + ref($manifests_ref) eq 'ARRAY' + or die "Manifests must be listed in an array reference: $!"; + @{ $manifests_ref } > 0 or die "No manifests specified"; + + # Check $transformorder + ref($transformorder) eq 'ARRAY' + or die "Transform order should be an array of keys\n"; + + @ARGV = @{ $manifests_ref }; + LINE: while ( my $entry = <> ) { + chomp $entry; + + $entry =~ s/\#.*//; # Ignore comments + next if $entry =~ /^\s*$/; # Skip blank lines + + my ( $src, $meta, $dest ) = split( /\s+/, $entry ); + $dest = $src unless $dest; + + if ( $seen{$src}++ ) { + print STDERR "$ARGV:$.: Duplicate entry $src\n"; + } + + # Parse out metadata + die "Malformed line in MANIFEST: $entry" if not defined $meta; + my $generated = $meta =~ s/^\*//; + my ($package) = $meta =~ /^\[(.*?)\]/; + $meta =~ s/^\[(.*?)\]//; + next unless $package; # Skip if this file belongs to no package + + my $plist = defined ( $options_ref->{packages}) + ? $options_ref->{packages} + : '.*'; + next unless $package =~ /$plist/; + + my %metadata; + @metadata{ split( /,/, $meta ) } = (); + $metadata{$_} = 1 for ( keys %metadata ); # Laziness + + $filehash = { + Source => $src, + Dest => $dest, + DestDirs => [], + }; + + FIXFILE: { + # Have to catch this case early for some unknown reason + if ( $entry =~ /^runtime/ ) { + $filehash->{Dest} =~ s/^runtime\/parrot\///; + $filehash->{Dest} = File::Spec->catdir( + $options_ref->{libdir}, $parrotdir, $dest + ); + last FIXFILE; + } + foreach my $tkey (@$transformorder) { + $thash = $metatransforms->{$tkey}; + unless($thash->{ismeta} ? $metadata{$tkey} : $entry =~ /$tkey/) { next; } + $filehash = &{ $thash->{transform} }($filehash); + ref($filehash) eq 'HASH' or die "Error: transform didn't return a hash for key '$tkey'\n"; + $filehash->{Dest} = File::Spec->catdir( + $options_ref->{$thash->{optiondir} . 'dir'}, + @{ $filehash->{DestDirs} }, + $filehash->{Dest} + ); + last FIXFILE; + } + die "Unknown install location in MANIFEST for file '$entry'\n"; + } + + if(! $filehash->{Installable}) { + $filehash->{Dest} = File::Spec->catdir( $options_ref->{buildprefix}, $filehash->{Dest} ) + if $options_ref->{buildprefix}; + } + + $directories{ dirname($filehash->{Dest}) } = 1; + push( @files, $filehash ); + } + continue { + close ARGV if eof; # Reset line numbering for each input file + } + + (grep { ! ref } @files) and die "lines_to_files from Parrot::Install created a bad hash!\n"; + return(\@files, \%directories); +} + +=head2 C + +B Creates the directories passed in. + +B Two scalar arguments. + + create_directories( + $destination_directory, + $directories_hash_ref, + ); + +B True value. + +B + +=cut + +sub create_directories { + my($destdir, $directories) = @_; + + mkpath([ + grep { ! -d } map { $destdir . $_ } keys %$directories + ],0,0777); +} + +=head2 C + +B Install the mentioned files into the appropriate locations. + + install_files( + $destination_directory, + $dry_run_option, + $list_of_files_and_executables, + ); + +B Takes two scalar arguments, followed by a reference to a +list consisting of hashes. + +B True value. + +B + +=cut + +sub install_files { + my($destdir, $dryrun, $files) = @_; + my($src, $dest, $mode); + + ref($files) eq 'ARRAY' or die "Error: parameter \$files must be an array\n"; + print("Installing ...\n"); + foreach my $el ( @$files ) { + unless(ref($el) eq 'HASH') { + my($ref) = ref($el); + warn "Bad reference passed in \$files (want a HASH, got a '$ref')\n"; + next; + } + ( $src, $dest ) = map { $el->{$_} } qw(Source Dest); + $dest = $destdir . $dest; + print "Installing $src to $dest\n"; + if ( $dryrun ) { + print "$src -> $dest\n"; + next; + } + else { + next unless -e $src; + next if $^O eq 'cygwin' and -e "$src.exe"; # stat works, copy not + copy( $src, $dest ) or die "Error: couldn't copy $src to $dest: $!\n"; + print "$dest\n"; + } + $mode = ( stat($src) )[2]; + chmod $mode, $dest; + } + return 1; +} + +1; + +# Local Variables: +# mode: cperl +# cperl-indent-level: 4 +# fill-column: 100 +# End: +# vim: expandtab shiftwidth=4: Property changes on: lib/Parrot/Install.pm ___________________________________________________________________ Name: svn:eol-style + native Name: svn:keywords + Author Date Id Revision Index: MANIFEST =================================================================== --- MANIFEST (.../trunk) (revision 37309) +++ MANIFEST (.../branches/install_tools) (revision 38358) @@ -1,7 +1,7 @@ # ex: set ro: # $Id$ # -# generated by tools/dev/mk_manifest_and_skip.pl Wed Mar 11 06:24:56 2009 UT +# generated by tools/dev/mk_manifest_and_skip.pl Sat Apr 4 23:54:53 2009 UT # # See tools/dev/install_files.pl for documentation on the # format of this file. @@ -1537,6 +1537,7 @@ lib/Parrot/IO/Directory.pm [devel]lib lib/Parrot/IO/File.pm [devel]lib lib/Parrot/IO/Path.pm [devel]lib +lib/Parrot/Install.pm [devel]lib lib/Parrot/Manifest.pm [devel]lib lib/Parrot/Op.pm [devel]lib lib/Parrot/OpTrans.pm [devel]lib @@ -2494,6 +2495,15 @@ t/tools/dev/searchops.t [test] t/tools/dev/searchops/samples.pm [test] t/tools/dump_pbc.t [test] +t/tools/install/01-create_directories.t [test] +t/tools/install/02-install_files.t [test] +t/tools/install/03-lines_to_files.t [test] +t/tools/install/testlib/MANIFEST [test] +t/tools/install/testlib/MANIFEST.1defective [test] +t/tools/install/testlib/MANIFEST.generated [test] +t/tools/install/testlib/README []doc +t/tools/install/testlib/phony [test] +t/tools/install/testlib/phony.exe [test] t/tools/ops2cutils/01-new.t [test] t/tools/ops2cutils/02-usage.t [test] t/tools/ops2cutils/03-print_c_header_file.t [test] Index: t/tools/install/01-create_directories.t =================================================================== --- t/tools/install/01-create_directories.t (.../trunk) (revision 0) +++ t/tools/install/01-create_directories.t (.../branches/install_tools) (revision 38358) @@ -0,0 +1,101 @@ +#! perl +# Copyright (C) 2007, Parrot Foundation. +# $Id$ +# 01-create_directories.t + +use strict; +use warnings; + +use Test::More tests => 6; +use Carp; +use File::Path qw( mkpath ); +use File::Temp qw( tempdir ); +use lib qw( lib ); +use Parrot::Install qw( + create_directories +); +use IO::CaptureOutput qw( capture ); + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + my $dirs_seen = 0; + foreach my $d (@dirs) { + $dirs_seen++ if -d "$tdir$d"; + } + is($dirs_seen, 2, 'got expected number of directories created'); +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + my @created = mkpath( "$tdir$dirs[0]" ); + ok( ( -d $created[0] ), + "one directory created before create_directories() is called" ); + + create_directories($tdir, { map { $_ => 1 } @dirs }); + my $dirs_seen = 0; + foreach my $d (@dirs) { + $dirs_seen++ if -d "$tdir$d"; + } + is($dirs_seen, 2, + "create_directories() handled case where one directory already existed" ); +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + my @created = mkpath( $tdir . 'foo' ); + ok( ( -d $created[0] ), + "one directory created before create_directories() is called" ); + + create_directories($tdir, { map { $_ => 1 } @dirs }); + my $dirs_seen = 0; + foreach my $d (@dirs) { + $dirs_seen++ if -d "$tdir$d"; + } + is($dirs_seen, 2, + "create_directories() handled case where one path partially existed" ); +} + +pass("Completed all tests in $0"); + +################### DOCUMENTATION ################### + +=head1 NAME + +01-create_directories.t - test subroutines exported by C + +=head1 SYNOPSIS + + % prove t/tools/install/01-create_directories.t + +=head1 DESCRIPTION + +The files in this directory test functionality used by +F and F and +exported by F. + +=head1 AUTHOR + +James E Keenan and Timothy S Nelson + +=head1 SEE ALSO + +Parrot::Install, F, F + +=cut + +# Local Variables: +# mode: cperl +# cperl-indent-level: 4 +# fill-column: 100 +# End: +# vim: expandtab shiftwidth=4: Property changes on: t/tools/install/01-create_directories.t ___________________________________________________________________ Name: svn:eol-style + native Name: svn:mime-type + text/plain Name: svn:keywords + Author Date Id Revision Index: t/tools/install/03-lines_to_files.t =================================================================== --- t/tools/install/03-lines_to_files.t (.../trunk) (revision 0) +++ t/tools/install/03-lines_to_files.t (.../branches/install_tools) (revision 38358) @@ -0,0 +1,282 @@ +#! perl +# Copyright (C) 2007, Parrot Foundation. +# $Id$ +# 03-lines_to_files.t + +use strict; +use warnings; + +use Test::More tests => 8; +use Carp; +use Cwd; +use File::Copy; +use File::Path qw( mkpath ); +use File::Temp qw( tempdir ); +use lib qw( lib ); +use Parrot::Install qw( + install_files + create_directories + lines_to_files +); +use IO::CaptureOutput qw( capture ); + +my $cwd = cwd(); +my $testsourcedir = qq{$cwd/t/tools/install/testlib}; + +my $parrotdir = q{};; + +# Double-check these to see if they make sense now +my %metatransforms = ( + doc => { + optiondir => 'doc', + transform => sub { + my($dest) = @_; + # resources go in the top level of docs + $dest =~ s/^docs\/resources/resources/; + # other docs are actually raw Pod + $dest =~ s/^docs/pod/; + $parrotdir, $dest; + }, + }, + '.*' => { + optiondir => 'foo', + transform => sub { + return($_[0]); + } + } +); +my(@transformorder) = ('doc', '.*'); + +my %badmetatransforms = ( + doc => { + optiondir => 'doc', + transform => sub { + my($dest) = @_; + $dest =~ s/^docs\/resources/resources/; # resources go in the top level of docs + $dest =~ s/^docs/pod/; # other docs are actually raw Pod + $parrotdir, $dest; + }, + }, + '.*' => { + optiondir => 'foo', + transform => sub { + return(@_); + } + } +); + +my @manifests = qw(MANIFEST MANIFEST.generated); +my %options = ( + packages => 'main', +); + +my ($files_ref, $directories_ref, %badtransformorder); + +eval { + ($files_ref, $directories_ref) = + lines_to_files( + \%metatransforms, + \@transformorder, + {}, + \%options, + $parrotdir, + ); +}; +like($@, qr/Manifests must be listed in an array reference/, + "Correctly detected lack of array ref as 3rd argument" +); + +eval { + ($files_ref, $directories_ref) = + lines_to_files( + \%metatransforms, + \@transformorder, + [], + \%options, + $parrotdir, + ); +}; +like($@, qr/No manifests specified/, + "Correctly detected lack of manifest files" +); + +eval { + ($files_ref, $directories_ref) = + lines_to_files( + \%metatransforms, + \%badtransformorder, + [ qw( MANIFEST MANIFEST.generated ) ], + \%options, + $parrotdir, + ); +}; +like($@, qr/Transform order should be an array of keys/, + "Correctly detected incorrect type for transform order" +); + +{ + my $tdir = tempdir( CLEANUP => 1 ); + chdir $tdir or die "Unable to change to testing directory: $!"; + copy qq{$testsourcedir/MANIFEST} => qq{$tdir/MANIFEST} + or die "Unable to copy file to tempdir for testing: $!"; + copy qq{$testsourcedir/MANIFEST.generated} => qq{$tdir/MANIFEST.generated} + or die "Unable to copy file to tempdir for testing: $!"; + + my ($stdout, $stderr); + eval { + ($files_ref, $directories_ref) = + lines_to_files( + \%badmetatransforms, + \@transformorder, + [ qw( MANIFEST MANIFEST.generated ) ], + \%options, + $parrotdir, + ); + }; + like($@, qr/transform didn't return a hash for key/, + "Correctly detected transform with a bad return value" + ); + eval { + capture( + sub { + ($files_ref, $directories_ref) = + lines_to_files( + \%metatransforms, + \@transformorder, + [ qw( MANIFEST MANIFEST.generated ) ], + \%options, + $parrotdir, + ); + }, + \$stdout, + \$stderr, + ); + }; +# Is there a way we can skip these two tests as failed and continue? + $@ and die "Error encountered while testing for duplicates: $@ ##"; + like($stderr, qr/MANIFEST\.generated:\d+:\s+Duplicate entry/, + "Detected duplicate entries in one or more manifest files" ); + is( scalar(grep { $_->{Installable} } @$files_ref), 0, + "No installable executables in this test" ); + + chdir $cwd or die "Unable to return to starting directory: $!"; +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + chdir $tdir or die "Unable to change to testing directory: $!"; + my $defective_man = q{MANIFEST.1defective}; + copy qq{$testsourcedir/$defective_man} => qq{$tdir/$defective_man} + or die "Unable to copy file to tempdir for testing: $!"; + + eval { + ($files_ref, $directories_ref) = + lines_to_files( + \%metatransforms, + \@transformorder, + [ $defective_man ], + \%options, + $parrotdir, + ); + }; + like($@, qr/Malformed line in MANIFEST: ChangeLog/, + "Got expected error message with defective manifest" ); + + chdir $cwd or die "Unable to return to starting directory: $!"; +} + + +pass("Completed all tests in $0"); + +################### DOCUMENTATION ################### + +=head1 NAME + +03-lines_to_files.t - test subroutines exported by C + +=head1 SYNOPSIS + + % prove t/tools/install/03-lines_to_files.t + +=head1 DESCRIPTION + +The files in this directory test functionality used by +F and F and +exported by F. + +=head1 AUTHOR + +James E Keenan and Timothy S Nelson + +=head1 SEE ALSO + +Parrot::Install, F, F + +=cut + +# Local Variables: +# mode: cperl +# cperl-indent-level: 4 +# fill-column: 100 +# End: +# vim: expandtab shiftwidth=4: + +__END__ + +# Can't safely run lines_to_files() more than once in a program until it's been fixed, +# and we can't fix it until its tested, so I've commented most of these out until we've +# fixed lines_to_files() not to use @ARGV + + + +## In the code below: +## - othertransforms needs to be merged into metatransforms +## - transformorder needs to be added +## - $installable_exe needs to be removed + +#{ +# my($metatransforms, $transformorder, $manifests, $options, $parrotdir, +# $files, $installable_exe, $directories); +# +# # First lines_to_files test +## eval { lines_to_files(); }; +## $@ or die "lines_to_files didn't die with no parameters\n"; +## ok($@ =~ /^.manifests must be an array reference$/, 'lines_to_files dies with bad parameters'); +# +# # Second lines_to_files test +## eval { lines_to_files( +## $metatransforms, $transformorder, +## [qw(MANIFEST MANIFEST.generated)], +## $options, $parrotdir +## ); }; +## ok($@ =~ /^Unknown install location in MANIFEST for file/, 'fails for install locations not specified in transforms'); +# +# # Third lines_to_files test +# $metatransforms = { +# doc => { +# optiondir => 'doc', +# transform => sub { +# my($dest) = @_; +# $dest =~ s/^docs\/resources/resources/; # resources go in the top level of docs +# $dest =~ s/^docs/pod/; # other docs are actually raw Pod +# $parrotdir, $dest; +# }, +# }, +# }; +# $othertransforms = { +# '.*' => { +# optiondir => 'foo', +# transform => sub { +# return(@_); +# } +# } +# }; +# +# ($files, $installable_exe, $directories) = lines_to_files( +# $metatransforms, $othertransforms, +# [qw(MANIFEST MANIFEST.generated)], +# { packages => 'main' }, $parrotdir +# ); +# ok((ref($files) and ref($installable_exe) and ref($directories)), 'lines_to_files returns something vaguely sensible'); +# ok(1, 'lines_to_files passed all tests'); +#} Property changes on: t/tools/install/03-lines_to_files.t ___________________________________________________________________ Name: svn:eol-style + native Name: svn:mime-type + text/plain Name: svn:keywords + Author Date Id Revision Index: t/tools/install/testlib/MANIFEST.generated =================================================================== --- t/tools/install/testlib/MANIFEST.generated (.../trunk) (revision 0) +++ t/tools/install/testlib/MANIFEST.generated (.../branches/install_tools) (revision 38358) @@ -0,0 +1,294 @@ +# $Id$ +# See tools/dev/install_files.pl for documentation on the +# format of this file. +# Please re-sort this file after *EVERY* modification +blib/lib/libparrot.0.9.1.dylib [main]lib +blib/lib/libparrot.a [main]lib +blib/lib/libparrot.dylib [main]lib +blib/lib/libparrot.so.0.9.1 [main]lib +blib/lib/libparrot.so [main]lib +compilers/imcc/imclexer.c [] +compilers/json/JSON/grammar.pbc [json] +compilers/json/JSON.pbc [json] +compilers/json/JSON/pge2pir.pbc [json] +compilers/nqp/nqp.pbc [nqp] +compilers/nqp/nqp.pbc [nqp] +config/auto/cpu/i386/memcpy_mmx.c [] +config/auto/cpu/i386/memcpy_sse.c [] +config/gen/call_list/opengl.in [] +config/gen/platform/ansi/dl.c [] +config/gen/platform/ansi/time.c [] +config/gen/platform/darwin/memalign.c [] +config/gen/platform/generic/stat.c [] +config/gen/platform/win32/stat.c [] +docs/ops/bit.pod [main]doc +docs/ops/cmp.pod [main]doc +docs/ops/core.pod [main]doc +docs/ops/debug.pod [main]doc +docs/ops/dotgnu.pod [main]doc +docs/ops/experimental.pod [main]doc +docs/ops/io.pod [main]doc +docs/ops/math.pod [main]doc +docs/ops/object.pod [main]doc +docs/ops/obscure.pod [main]doc +docs/ops/pic.pod [main]doc +docs/ops/pmc.pod [main]doc +docs/ops/python.pod [main]doc +docs/ops/set.pod [main]doc +docs/ops/stack.pod [main]doc +docs/ops/string.pod [main]doc +docs/ops/sys.pod [main]doc +docs/ops/var.pod [main]doc +include/parrot/config.h [main]include +include/parrot/core_pmcs.h [main]include +include/parrot/exec_dep.h [main]include +include/parrot/extend_vtable.h [main]include +include/parrot/feature.h [main]include +include/parrot/has_header.h [main]include +include/parrot/oplib/core_ops_cg.h [main]include +include/parrot/oplib/core_ops_cgp.h [main]include +include/parrot/oplib/core_ops.h [main]include +include/parrot/oplib/core_ops_switch.h [main]include +include/parrot/oplib/ops.h [main]include +include/parrot/pbcversion.h [devel]include +include/parrot/platform.h [main]include +include/parrot/platform_interface.h [main]include +include/parrot/platform_limits.h [devel]include +include/parrot/vtable.h [main]include +install_config.fpmc [main]lib +installable_parrot_config.exe [main]bin +installable_parrot_config [main]bin +installable_parrot_debugger.exe [main]bin +installable_parrot_debugger [main]bin +installable_parrot.exe [main]bin +installable_parrot [main]bin +installable_pbc_disassemble.exe [main]bin +installable_pbc_disassemble [main]bin +installable_pbc_dump.exe [main]bin +installable_pbc_dump [main]bin +installable_pbc_info.exe [main]bin +installable_pbc_info [main]bin +installable_pbc_merge.exe [main]bin +installable_pbc_merge [main]bin +installable_pbc_to_exe.exe [main]bin +installable_pbc_to_exe [main]bin +languages/abc/abc.pbc [abc] +languages/befunge/befunge.pbc [befunge] +languages/bf/bfco.pbc [bf] +languages/bf/bfc.pbc [bf] +languages/bf/bf.pbc [bf] +languages/cardinal/cardinal.pbc [cardinal] +languages/dotnet/net2pbc.pbc [dotnet] +languages/ecmascript/js.pbc [ecmascript] +languages/forth/forth.pbc [forth] +languages/lisp/lisp.pbc [lisp] +languages/lolcode/lolcode.pbc [lolcode] +languages/ook/ook.pbc [ook] +languages/pheme/pheme.pbc [pheme] +languages/pipp/pipp.pbc [pipp] +languages/pipp/src/common/php_ctype.pbc [pipp] +languages/pipp/src/common/php_pcre.pbc [pipp] +languages/pipp/src/common/pipplib.pbc [pipp] +languages/PIR/pirc.pbc [PIR] +languages/punie/punie.pbc [punie] +languages/pynie/pynie.pbc [pynie] +languages/squaak/squaak.pbc [squaak] +lib/Parrot/Config/Generated.pm [devel]lib +libparrot.dll [main]bin +lib/Parrot/OpLib/core.pm [devel]lib +lib/Parrot/Pmc2c/PCCMETHOD_BITS.pm [devel]lib +lib/Parrot/PMC.pm [devel]lib +parrot.pc [main]pkgconfig +pbc_disassemble.exe [main]bin +pbc_disassemble [main]bin +pbc_dump.exe [main]bin +pbc_dump [main]bin +pbc_info.exe [main]bin +pbc_info [main]bin +pbc_merge.exe [main]bin +pbc_merge [main]bin +pbc_to_exe.exe [main]bin +pbc_to_exe [main]bin +parrot_debugger.exe [main]bin +parrot_debugger [main]bin +runtime/parrot/dynext/apl_group.bundle [apl] +runtime/parrot/dynext/apl_group.dll [apl] +runtime/parrot/dynext/apl_group.dylib [apl] +runtime/parrot/dynext/apl_group.so [apl] +runtime/parrot/dynext/digest_group.bundle [library] +runtime/parrot/dynext/digest_group.dll [library] +runtime/parrot/dynext/digest_group.dylib [library] +runtime/parrot/dynext/digest_group.so [library] +runtime/parrot/dynext/dotnet.bundle [dotnet] +runtime/parrot/dynext/dotnet.dll [dotnet] +runtime/parrot/dynext/dotnet.dylib [dotnet] +runtime/parrot/dynext/dotnet_ops.bundle [dotnet] +runtime/parrot/dynext/dotnet_ops_cg.bundle [dotnet] +runtime/parrot/dynext/dotnet_ops_cg.dll [dotnet] +runtime/parrot/dynext/dotnet_ops_cg.dylib [dotnet] +runtime/parrot/dynext/dotnet_ops_cgp.bundle [dotnet] +runtime/parrot/dynext/dotnet_ops_cgp.dll [dotnet] +runtime/parrot/dynext/dotnet_ops_cgp.dylib [dotnet] +runtime/parrot/dynext/dotnet_ops_cgp.so [dotnet] +runtime/parrot/dynext/dotnet_ops_cg.so [dotnet] +runtime/parrot/dynext/dotnet_ops.dll [dotnet] +runtime/parrot/dynext/dotnet_ops.dylib [dotnet] +runtime/parrot/dynext/dotnet_ops.so [dotnet] +runtime/parrot/dynext/dotnet_ops_switch.bundle [dotnet] +runtime/parrot/dynext/dotnet_ops_switch.dll [dotnet] +runtime/parrot/dynext/dotnet_ops_switch.dylib [dotnet] +runtime/parrot/dynext/dotnet_ops_switch.so [dotnet] +runtime/parrot/dynext/dotnet_runtime.bundle [dotnet] +runtime/parrot/dynext/dotnet_runtime.dll [dotnet] +runtime/parrot/dynext/dotnet_runtime.dylib [dotnet] +runtime/parrot/dynext/dotnet_runtime.so [dotnet] +runtime/parrot/dynext/dotnet.so [dotnet] +runtime/parrot/dynext/dynlexpad.bundle [library] +runtime/parrot/dynext/dynlexpad.dll [library] +runtime/parrot/dynext/dynlexpad.dylib [library] +runtime/parrot/dynext/dynlexpad.so [library] +runtime/parrot/dynext/gdbmhash.bundle [library] +runtime/parrot/dynext/gdbmhash.dll [library] +runtime/parrot/dynext/gdbmhash.dylib [library] +runtime/parrot/dynext/gdbmhash.so [library] +runtime/parrot/dynext/libglutcb.bundle [library] +runtime/parrot/dynext/libglutcb.dll [library] +runtime/parrot/dynext/libglutcb.dylib [library] +runtime/parrot/dynext/libglutcb.so [library] +runtime/parrot/dynext/libnci_test.bundle [library] +runtime/parrot/dynext/libnci_test.dll [library] +runtime/parrot/dynext/libnci_test.dylib [library] +runtime/parrot/dynext/libnci_test.so [library] +runtime/parrot/dynext/match_group.bundle [library] +runtime/parrot/dynext/match_group.dll [library] +runtime/parrot/dynext/match_group.dylib [library] +runtime/parrot/dynext/match_group.so [library] +runtime/parrot/dynext/php_group.bundle [pipp] +runtime/parrot/dynext/php_group.dll [pipp] +runtime/parrot/dynext/php_group.dylib [pipp] +runtime/parrot/dynext/php_group.so [pipp] +runtime/parrot/dynext/rational.bundle [library] +runtime/parrot/dynext/rational.dll [library] +runtime/parrot/dynext/rational.dylib [library] +runtime/parrot/dynext/rational.so [library] +runtime/parrot/dynext/ruby_group.bundle [cardinal] +runtime/parrot/dynext/ruby_group.dll [cardinal] +runtime/parrot/dynext/ruby_group.dylib [cardinal] +runtime/parrot/dynext/ruby_group.so [cardinal] +runtime/parrot/dynext/subproxy.bundle [library] +runtime/parrot/dynext/subproxy.dll [library] +runtime/parrot/dynext/subproxy.dylib [library] +runtime/parrot/dynext/subproxy.so [library] +runtime/parrot/include/call_bits.pasm [main] +runtime/parrot/include/cclass.pasm [main] +runtime/parrot/include/config.fpmc [] +runtime/parrot/include/datatypes.pasm [main] +runtime/parrot/include/errors.pasm [main] +runtime/parrot/include/except_severity.pasm [main] +runtime/parrot/include/except_types.pasm [main] +runtime/parrot/include/iglobals.pasm [main] +runtime/parrot/include/interpcores.pasm [main] +runtime/parrot/include/interpdebug.pasm [main] +runtime/parrot/include/interpflags.pasm [main] +runtime/parrot/include/interpinfo.pasm [main] +runtime/parrot/include/interptrace.pasm [main] +runtime/parrot/include/iotypes.pasm [main] +runtime/parrot/include/iterator.pasm [main] +runtime/parrot/include/longopt.pasm [main] +runtime/parrot/include/mmd.pasm [main] +runtime/parrot/include/opengl_defines.pasm [main] +runtime/parrot/include/parrotlib.pbc [main] +runtime/parrot/include/pmctypes.pasm [main] +runtime/parrot/include/signal.pasm [main] +runtime/parrot/include/stat.pasm [main] +runtime/parrot/include/stdio.pasm [main] +runtime/parrot/include/stringinfo.pasm [main] +runtime/parrot/include/sysinfo.pasm [main] +runtime/parrot/include/timer.pasm [main] +runtime/parrot/include/tm.pasm [main] +runtime/parrot/include/vtable_methods.pasm [main] +runtime/parrot/include/warnings.pasm [main] +runtime/parrot/library/CGI/QueryHash.pbc [main] +runtime/parrot/library/config.pbc [main] +runtime/parrot/library/config.pir [main] +runtime/parrot/library/Data/Dumper/Base.pbc [main] +runtime/parrot/library/Data/Dumper/Default.pbc [main] +runtime/parrot/library/Data/Dumper.pbc [main] +runtime/parrot/library/dumper.pbc [main] +runtime/parrot/library/Getopt/Obj.pbc [main] +runtime/parrot/library/Math/Random/mt19937ar.pbc [main] +runtime/parrot/library/Math/Rand.pbc [main] +runtime/parrot/library/MIME/Base64.pbc [main] +runtime/parrot/library/NCI/call_toolkit_init.pbc [main] +runtime/parrot/library/ncurses.pbc [main] +runtime/parrot/library/OpenGL_funcs.pir [main] +runtime/parrot/library/OpenGL.pbc [main] +runtime/parrot/library/P6object.pbc [main] +runtime/parrot/library/Parrot/Capture_PIR.pbc [main] +runtime/parrot/library/Parrot/Coroutine.pbc [main] +runtime/parrot/library/Parrot/Exception.pbc [main] +runtime/parrot/library/Parrot/HLLCompiler.pbc [main] +runtime/parrot/library/parrotlib.pbc [main] +runtime/parrot/library/pcre.pbc [main] +runtime/parrot/library/PCT/Grammar.pbc [pct] +runtime/parrot/library/PCT/HLLCompiler.pbc [pct] +runtime/parrot/library/PCT/PAST.pbc [pct] +runtime/parrot/library/PCT.pbc [pct] +runtime/parrot/library/PGE/Dumper.pbc [main] +runtime/parrot/library/PGE/Glob.pbc [main] +runtime/parrot/library/PGE/Hs.pbc [main] +runtime/parrot/library/PGE.pbc [main] +runtime/parrot/library/PGE/Perl6Grammar.pbc [main] +runtime/parrot/library/PGE/Text.pbc [main] +runtime/parrot/library/PGE/Util.pbc [main] +runtime/parrot/library/Protoobject.pbc [main] +runtime/parrot/library/Stream/Base.pbc [main] +runtime/parrot/library/Stream/Combiner.pbc [main] +runtime/parrot/library/Stream/Coroutine.pbc [main] +runtime/parrot/library/Stream/Filter.pbc [main] +runtime/parrot/library/Stream/Lines.pbc [main] +runtime/parrot/library/Stream/ParrotIO.pbc [main] +runtime/parrot/library/Stream/Replay.pbc [main] +runtime/parrot/library/Stream/Sub.pbc [main] +runtime/parrot/library/Stream/Writer.pbc [main] +runtime/parrot/library/TGE.pbc [tge] +src/call_list.txt [devel]src +src/glut_callbacks.c [] +src/jit_emit.h [] +src/nci.c [] +src/null_config.c [] +src/ops/core_ops_cgp.c [] +src/ops/core_ops_switch.c [] +src/parrot_config.c [] +src/pmc/boolean.dump [devel]src +src/pmc/continuation.dump [devel]src +src/pmc/default.dump [devel]src +src/pmc/fixedpmcarray.dump [devel]src +src/pmc/float.dump [devel]src +src/pmc/hash.dump [devel]src +src/pmc/integer.dump [devel]src +src/pmc/multisub.dump [devel]src +src/pmc/pmc_boolean.h [devel]include +src/pmc/pmc_continuation.h [devel]include +src/pmc/pmc_default.h [devel]include +src/pmc/pmc_fixedintegerarray.h [devel]include +src/pmc/pmc_fixedpmcarray.h [devel]include +src/pmc/pmc_float.h [devel]include +src/pmc/pmc_hash.h [devel]include +src/pmc/pmc_integer.h [devel]include +src/pmc/pmc_multisub.h [devel]include +src/pmc/pmc_object.h [devel]include +src/pmc/pmc_parrotlibrary.h [devel]include +src/pmc/pmc_resizablepmcarray.h [devel]include +src/pmc/pmc_scalar.h [devel]include +src/pmc/pmc_string.h [devel]include +src/pmc/pmc_sub.h [devel]include +src/pmc/pmc_undef.h [devel]include +src/pmc/resizablepmcarray.dump [devel]src +src/pmc/scalar.dump [devel]src +src/pmc/string.dump [devel]src +src/pmc/sub.dump [devel]src +src/pmc/undef.dump [devel]src +src/string_private_cstring.h [] +tools/build/dynpmc.pl [] +vtable.dump [devel]src Property changes on: t/tools/install/testlib/MANIFEST.generated ___________________________________________________________________ Name: svn:keywords + Author Date Id Revision Name: cvs2svn:cvs-rev + 1.8 Name: svn:eol-style + native Index: t/tools/install/testlib/MANIFEST.1defective =================================================================== --- t/tools/install/testlib/MANIFEST.1defective (.../trunk) (revision 0) +++ t/tools/install/testlib/MANIFEST.1defective (.../branches/install_tools) (revision 38358) @@ -0,0 +1,5 @@ +# $Id$ +# +# generated by hand for testing purposes only +CREDITS [] /destination/to/file +ChangeLog Property changes on: t/tools/install/testlib/MANIFEST.1defective ___________________________________________________________________ Name: svn:keywords + Author Date Id Revision Name: cvs2svn:cvs-rev + 1.863 Name: svn:eol-style + native Index: t/tools/install/testlib/MANIFEST =================================================================== --- t/tools/install/testlib/MANIFEST (.../trunk) (revision 0) +++ t/tools/install/testlib/MANIFEST (.../branches/install_tools) (revision 38358) @@ -0,0 +1,2619 @@ +# ex: set ro: +# $Id$ +# +# generated by tools/dev/mk_manifest_and_skip.pl Sat Apr 4 15:12:30 2009 UT +# +# See tools/dev/install_files.pl for documentation on the +# format of this file. +# See docs/submissions.pod on how to recreate this file after SVN +# has been told about new or deleted files. +CREDITS [] +ChangeLog [] +Configure.pl [] +DEPRECATED.pod [] +DEVELOPING [] +DONORS.pod [] +LICENSE [main]doc +MANIFEST [] +MANIFEST.SKIP [] +MANIFEST.generated [] +META.yml [] +Makefile.PL [] +NEWS [main]doc +PBC_COMPAT [main]doc +PLATFORMS [devel]doc +README [devel]doc +README_cygwin.pod [] +README_win32.pod [] +RESPONSIBLE_PARTIES [main]doc +TODO [] +VERSION [devel] +compilers/imcc/cfg.c [imcc] +compilers/imcc/cfg.h [imcc] +compilers/imcc/debug.c [imcc] +compilers/imcc/debug.h [imcc] +compilers/imcc/imc.c [imcc] +compilers/imcc/imc.h [imcc] +compilers/imcc/imcc.l [imcc] +compilers/imcc/imcc.y [imcc] +compilers/imcc/imclexer.c [imcc] +compilers/imcc/imcparser.c [imcc] +compilers/imcc/imcparser.h [imcc] +compilers/imcc/instructions.c [imcc] +compilers/imcc/instructions.h [imcc] +compilers/imcc/main.c [imcc] +compilers/imcc/optimizer.c [imcc] +compilers/imcc/optimizer.h [imcc] +compilers/imcc/parser.h [imcc] +compilers/imcc/parser_util.c [imcc] +compilers/imcc/pbc.c [imcc] +compilers/imcc/pbc.h [imcc] +compilers/imcc/pcc.c [imcc] +compilers/imcc/reg_alloc.c [imcc] +compilers/imcc/sets.c [imcc] +compilers/imcc/sets.h [imcc] +compilers/imcc/symreg.c [imcc] +compilers/imcc/symreg.h [imcc] +compilers/imcc/unit.h [imcc] +compilers/json/JSON.pir [json] +compilers/json/JSON/grammar.pg [json] +compilers/json/JSON/pge2pir.tg [json] +compilers/json/postalcodes.pir [json] +compilers/json/test.pir [json] +compilers/ncigen/MAINTAINER [ncigen] +compilers/ncigen/NCIGEN.TODO [ncigen] +compilers/ncigen/NCIGENP6.pm [ncigen] +compilers/ncigen/README []doc +compilers/ncigen/config/makefiles/ncigen.in [ncigen] +compilers/ncigen/lib/Parrot/Test/NCIGENAST.pm [ncigen] +compilers/ncigen/ncigen.pir [ncigen] +compilers/ncigen/ncigen.pl [ncigen] +compilers/ncigen/src/NCIGENAST.pir [ncigen] +compilers/ncigen/src/NCIPIR.pir [ncigen] +compilers/ncigen/src/builtins/say.pir [ncigen] +compilers/ncigen/src/parser/actions.pm [ncigen] +compilers/ncigen/src/parser/grammar.pg [ncigen] +compilers/ncigen/t/NCIGENAST/struct_00.t [test] +compilers/ncigen/t/NCIGENAST/typedef_00.t [test] +compilers/ncigen/t/harness [test] +compilers/ncigen/t/parse_00.t [test] +compilers/ncigen/t/parse_01.t [test] +compilers/ncigen/t/parse_02.t [test] +compilers/nqp/README.pod []doc +compilers/nqp/TODO.pod [nqp] +compilers/nqp/bootstrap/actions.pm [nqp] +compilers/nqp/bootstrap/nqp.pir [nqp] +compilers/nqp/bootstrap/t/harness [test] +compilers/nqp/nqp.pir [nqp] +compilers/nqp/src/Grammar.pg [nqp] +compilers/nqp/src/Grammar/Actions.pir [nqp] +compilers/nqp/src/builtins.pir [nqp] +compilers/nqp/t/01-literals.t [test] +compilers/nqp/t/02-if-else.t [test] +compilers/nqp/t/02-if.t [test] +compilers/nqp/t/03-unless.t [test] +compilers/nqp/t/04-comments.t [test] +compilers/nqp/t/05-pod.t [test] +compilers/nqp/t/06-args-pos.t [test] +compilers/nqp/t/07-boolean.t [test] +compilers/nqp/t/08-blocks.t [test] +compilers/nqp/t/09-var.t [test] +compilers/nqp/t/10-sub.t [test] +compilers/nqp/t/11-cmp.t [test] +compilers/nqp/t/12-list.t [test] +compilers/nqp/t/13-logical.t [test] +compilers/nqp/t/14-op.t [test] +compilers/nqp/t/15-module.t [test] +compilers/nqp/t/16-while.t [test] +compilers/nqp/t/17-class.t [test] +compilers/nqp/t/18-inline.t [test] +compilers/nqp/t/19-hash_access.t [test] +compilers/nqp/t/20-list_access.t [test] +compilers/nqp/t/22-optional_args.t [test] +compilers/nqp/t/23-named_args.t [test] +compilers/nqp/t/24-scalar_context.t [test] +compilers/nqp/t/25-list_context.t [test] +compilers/nqp/t/26-method_ops.t [test] +compilers/nqp/t/27-ternary.t [test] +compilers/nqp/t/28-return.t [test] +compilers/nqp/t/harness [test] +compilers/pct/PCT.pir [pct] +compilers/pct/README.pod []doc +compilers/pct/src/PAST.pir [pct] +compilers/pct/src/PAST/Compiler.pir [pct] +compilers/pct/src/PAST/Node.pir [pct] +compilers/pct/src/PCT/Grammar.pir [pct] +compilers/pct/src/PCT/HLLCompiler.pir [pct] +compilers/pct/src/PCT/Node.pir [pct] +compilers/pct/src/POST/Compiler.pir [pct] +compilers/pct/src/POST/Node.pir [pct] +compilers/pge/P6Rule.grammar [pge] +compilers/pge/PGE.pir [pge] +compilers/pge/PGE/Exp.pir [pge] +compilers/pge/PGE/Match.pir [pge] +compilers/pge/PGE/OPTable.pir [pge] +compilers/pge/PGE/P5Regex.pir [pge] +compilers/pge/PGE/Perl6Regex.pir [pge] +compilers/pge/PGE/Regex.pir [pge] +compilers/pge/PGE/builtins.pg [pge] +compilers/pge/README.pod []doc +compilers/pge/STATUS [pge] +compilers/pge/demo.pir [pge] +compilers/pirc/README.pod []doc +compilers/pirc/TODO [pirc] +compilers/pirc/heredoc/heredocmain.c [pirc] +compilers/pirc/macro/lexer.h [pirc] +compilers/pirc/macro/macro.h [pirc] +compilers/pirc/macro/macro.l [pirc] +compilers/pirc/macro/macro.y [pirc] +compilers/pirc/macro/macrolexer.c [pirc] +compilers/pirc/macro/macrolexer.h [pirc] +compilers/pirc/macro/macroparser.c [pirc] +compilers/pirc/macro/macroparser.h [pirc] +compilers/pirc/src/bcgen.c [pirc] +compilers/pirc/src/bcgen.h [pirc] +compilers/pirc/src/hdocprep.c [pirc] +compilers/pirc/src/hdocprep.l [pirc] +compilers/pirc/src/main.c [pirc] +compilers/pirc/src/pir.l [pirc] +compilers/pirc/src/pir.y [pirc] +compilers/pirc/src/pircapi.c [pirc] +compilers/pirc/src/pircapi.h [pirc] +compilers/pirc/src/pircompiler.c [pirc] +compilers/pirc/src/pircompiler.h [pirc] +compilers/pirc/src/pircompunit.c [pirc] +compilers/pirc/src/pircompunit.h [pirc] +compilers/pirc/src/pirdefines.h [pirc] +compilers/pirc/src/piremit.c [pirc] +compilers/pirc/src/piremit.h [pirc] +compilers/pirc/src/pirerr.c [pirc] +compilers/pirc/src/pirerr.h [pirc] +compilers/pirc/src/pirheredoc.h [pirc] +compilers/pirc/src/pirlexer.c [pirc] +compilers/pirc/src/pirlexer.h [pirc] +compilers/pirc/src/pirmacro.c [pirc] +compilers/pirc/src/pirmacro.h [pirc] +compilers/pirc/src/pirop.c [pirc] +compilers/pirc/src/pirop.h [pirc] +compilers/pirc/src/pirparser.c [pirc] +compilers/pirc/src/pirparser.h [pirc] +compilers/pirc/src/pirpcc.c [pirc] +compilers/pirc/src/pirpcc.h [pirc] +compilers/pirc/src/pirregalloc.c [pirc] +compilers/pirc/src/pirregalloc.h [pirc] +compilers/pirc/src/pirsymbol.c [pirc] +compilers/pirc/src/pirsymbol.h [pirc] +compilers/pirc/src/piryy.h [pirc] +compilers/pirc/t/basic.t [test] +compilers/pirc/t/harness [test] +compilers/pirc/t/heredoc.t [test] +compilers/pirc/t/macro.t [test] +compilers/pirc/t/stmts.t [test] +compilers/pirc/t/subflags.t [test] +compilers/tge/README []doc +compilers/tge/TGE.pir [tge] +compilers/tge/TGE/Compiler.pir [tge] +compilers/tge/TGE/Grammar.pir [tge] +compilers/tge/TGE/Parser.pg [tge] +compilers/tge/TGE/Rule.pir [tge] +compilers/tge/TGE/Tree.pir [tge] +compilers/tge/tgc.pir [tge] +config/auto/alignptrs.pm [] +config/auto/alignptrs/test_c.in [] +config/auto/arch.pm [] +config/auto/attributes.pm [] +config/auto/attributes/test_c.in [] +config/auto/backtrace.pm [] +config/auto/backtrace/test_c.in [] +config/auto/backtrace/test_dlinfo_c.in [] +config/auto/byteorder.pm [] +config/auto/byteorder/test_c.in [] +config/auto/cgoto.pm [] +config/auto/cgoto/test_c.in [] +config/auto/cpu.pm [] +config/auto/cpu/i386/Makefile [] +config/auto/cpu/i386/auto.pm [] +config/auto/cpu/i386/memcpy_mmx.c [] +config/auto/cpu/i386/memcpy_mmx_in.c [] +config/auto/cpu/i386/memcpy_sse.c [] +config/auto/cpu/i386/memcpy_sse_in.c [] +config/auto/cpu/i386/test_gcc_cmpxchg_c.in [] +config/auto/cpu/ppc/auto.pm [] +config/auto/cpu/ppc/test_gcc_cmpset_c.in [] +config/auto/cpu/sun4/auto.pm [] +config/auto/cpu/sun4/test_atomic_c.in [] +config/auto/cpu/x86_64/auto.pm [] +config/auto/crypto.pm [] +config/auto/crypto/crypto_c.in [] +config/auto/ctags.pm [] +config/auto/env.pm [] +config/auto/env/test_setenv_c.in [] +config/auto/env/test_unsetenv_c.in [] +config/auto/fink.pm [] +config/auto/format.pm [] +config/auto/format/floatval_maxmin_c.in [] +config/auto/format/intval_maxmin_c.in [] +config/auto/funcptr.pm [] +config/auto/funcptr/test_c.in [] +config/auto/gc.pm [] +config/auto/gc/test_c.in [] +config/auto/gcc.pm [] +config/auto/gcc/test_c.in [] +config/auto/gdbm.pm [] +config/auto/gdbm/gdbm_c.in [] +config/auto/gettext.pm [] +config/auto/gettext/gettext_c.in [] +config/auto/glibc.pm [] +config/auto/glibc/test_c.in [] +config/auto/gmp.pm [] +config/auto/gmp/gmp_c.in [] +config/auto/headers.pm [] +config/auto/headers/test_c.in [] +config/auto/icu.pm [] +config/auto/inline.pm [] +config/auto/inline/test1_c.in [] +config/auto/inline/test2_c.in [] +config/auto/isreg.pm [] +config/auto/isreg/test_c.in [] +config/auto/jit.pm [] +config/auto/jit/test_c.in [] +config/auto/jit/test_exec_cygwin_c.in [] +config/auto/jit/test_exec_linux_c.in [] +config/auto/jit/test_exec_openbsd_c.in [] +config/auto/macports.pm [] +config/auto/memalign.pm [] +config/auto/memalign/test2_c.in [] +config/auto/memalign/test_c.in [] +config/auto/msvc.pm [] +config/auto/msvc/test_c.in [] +config/auto/neg_0.pm [] +config/auto/neg_0/test_c.in [] +config/auto/opengl.pm [] +config/auto/opengl/opengl_c.in [] +config/auto/ops.pm [] +config/auto/pcre.pm [] +config/auto/pcre/pcre_c.in [] +config/auto/perldoc.pm [] +config/auto/pmc.pm [] +config/auto/pod2man.pm [] +config/auto/readline.pm [] +config/auto/readline/readline_c.in [] +config/auto/revision.pm [] +config/auto/signal.pm [] +config/auto/signal/test1_c.in [] +config/auto/signal/test2_c.in [] +config/auto/signal/test_itimer_c.in [] +config/auto/sizes.pm [] +config/auto/sizes/test2_c.in [] +config/auto/sizes/test3_c.in [] +config/auto/sizes/test_c.in [] +config/auto/snprintf.pm [] +config/auto/snprintf/test_c.in [] +config/auto/socklen_t.pm [] +config/auto/va_ptr.pm [] +config/auto/va_ptr/test_c.in [] +config/auto/warnings.pm [] +config/auto/warnings/test_c.in [] +config/gen/call_list.pm [] +config/gen/call_list/core.in [] +config/gen/call_list/misc.in [] +config/gen/config_h.pm [] +config/gen/config_h/config_h.in [] +config/gen/config_h/feature_h.in [] +config/gen/config_pm.pm [] +config/gen/config_pm/Config_pm.in [] +config/gen/config_pm/config_lib_pasm.in [] +config/gen/config_pm/config_pir.in [] +config/gen/config_pm/myconfig.in [] +config/gen/core_pmcs.pm [] +config/gen/crypto.pm [] +config/gen/crypto/digest_pmc.in [] +config/gen/crypto/digest_t.in [] +config/gen/languages.pm [] +config/gen/makefiles.pm [] +config/gen/makefiles/CFLAGS.in [] +config/gen/makefiles/docs.in [] +config/gen/makefiles/dynoplibs.in [] +config/gen/makefiles/dynoplibs_pl.in [] +config/gen/makefiles/dynpmc.in [] +config/gen/makefiles/dynpmc_pl.in [] +config/gen/makefiles/editor.in [] +config/gen/makefiles/ext.in [] +config/gen/makefiles/json.in [] +config/gen/makefiles/languages.in [] +config/gen/makefiles/nqp.in [] +config/gen/makefiles/parrot_embed_pl.in [] +config/gen/makefiles/parrot_pc.in [] +config/gen/makefiles/pct.in [] +config/gen/makefiles/pge.in [] +config/gen/makefiles/pirc.in [] +config/gen/makefiles/root.in [] +config/gen/makefiles/tge.in [] +config/gen/opengl.pm [] +config/gen/parrot_include.pm [] +config/gen/platform.pm [] +config/gen/platform/aix/asm.s [] +config/gen/platform/ansi/dl.c [] +config/gen/platform/ansi/exec.c [] +config/gen/platform/ansi/io.h [] +config/gen/platform/ansi/time.c [] +config/gen/platform/cygwin/math.c [] +config/gen/platform/darwin/begin.c [] +config/gen/platform/darwin/dl.c [] +config/gen/platform/darwin/memalign.c [] +config/gen/platform/generic/dl.c [] +config/gen/platform/generic/dl.h [] +config/gen/platform/generic/env.c [] +config/gen/platform/generic/exec.c [] +config/gen/platform/generic/io.h [] +config/gen/platform/generic/itimer.c [] +config/gen/platform/generic/math.c [] +config/gen/platform/generic/math.h [] +config/gen/platform/generic/memalign.c [] +config/gen/platform/generic/memexec.c [] +config/gen/platform/generic/platform_limits.h [] +config/gen/platform/generic/signal.c [] +config/gen/platform/generic/signal.h [] +config/gen/platform/generic/stat.c [] +config/gen/platform/generic/stat.h [] +config/gen/platform/generic/threads.h [] +config/gen/platform/generic/time.c [] +config/gen/platform/ia64/asm.s [] +config/gen/platform/netbsd/math.c [] +config/gen/platform/openbsd/math.c [] +config/gen/platform/openbsd/memexec.c [] +config/gen/platform/openbsd/misc.h [] +config/gen/platform/platform_interface.h [] +config/gen/platform/solaris/math.c [] +config/gen/platform/solaris/time.c [] +config/gen/platform/win32/begin.c [] +config/gen/platform/win32/dl.c [] +config/gen/platform/win32/env.c [] +config/gen/platform/win32/exec.c [] +config/gen/platform/win32/io.h [] +config/gen/platform/win32/misc.c [] +config/gen/platform/win32/misc.h [] +config/gen/platform/win32/signal.c [] +config/gen/platform/win32/signal.h [] +config/gen/platform/win32/stat.c [] +config/gen/platform/win32/stat.h [] +config/gen/platform/win32/string.h [] +config/gen/platform/win32/threads.h [] +config/gen/platform/win32/time.c [] +config/init/defaults.pm [] +config/init/headers.pm [] +config/init/hints.pm [] +config/init/hints/aix.pm [] +config/init/hints/cygwin.pm [] +config/init/hints/darwin.pm [] +config/init/hints/dec_osf.pm [] +config/init/hints/dragonfly.pm [] +config/init/hints/freebsd.pm [] +config/init/hints/hpux.pm [] +config/init/hints/irix.pm [] +config/init/hints/linux.pm [] +config/init/hints/mswin32.pm [] +config/init/hints/msys.pm [] +config/init/hints/netbsd.pm [] +config/init/hints/nto.pm [] +config/init/hints/openbsd.pm [] +config/init/hints/os2.pm [] +config/init/hints/solaris.pm [] +config/init/hints/vms.pm [] +config/init/install.pm [] +config/init/manifest.pm [] +config/init/optimize.pm [] +config/inter/charset.pm [] +config/inter/encoding.pm [] +config/inter/lex.pm [] +config/inter/libparrot.pm [] +config/inter/make.pm [] +config/inter/progs.pm [] +config/inter/shlibs.pm [] +config/inter/types.pm [] +config/inter/yacc.pm [] +docs/book/README []doc +docs/book/appX_patch_submission.pod [] +docs/book/ch01_overview.pod [] +docs/book/ch02_getting_started.pod [] +docs/book/ch03_pir_basics.pod [] +docs/book/ch04_pir_subroutines.pod [] +docs/book/ch05_pasm.pod [] +docs/book/ch06_library.pod [] +docs/book/ch07_testing_and_debugging.pod [] +docs/book/ch08_architecture.pod [] +docs/book/ch09_pct.pod [] +docs/book/ch10_hlls.pod [] +docs/book/ch11_pmcs.pod [] +docs/book/ch12_opcodes.pod [] +docs/book/ch13_reference.pod [] +docs/book/figs/p6e_0801.png [] +docs/compiler_faq.pod [devel]doc +docs/configuration.pod [] +docs/debug.pod [devel]doc +docs/debugger.pod [] +docs/dev/byteorder.pod [] +docs/dev/c_functions.pod [] +docs/dev/debugging_with_msvc.pod [] +docs/dev/events.pod [] +docs/dev/fhs.pod [] +docs/dev/headerizer.pod [] +docs/dev/infant.pod [] +docs/dev/jit_i386.pod [] +docs/dev/longopt.pod [] +docs/dev/optimizer.pod [] +docs/dev/parrot_api.pod [] +docs/dev/pcc_state.pod [] +docs/dev/pccmethods.pod [] +docs/dev/pmc_freeze.pod [] +docs/dev/pmc_obj_design_meeting_notes.pod [] +docs/embed.pod [] +docs/extend.pod [] +docs/faq.pod [main]doc +docs/gettingstarted.pod [main]doc +docs/glossary.pod [main]doc +docs/imcc/README []doc +docs/imcc/imcfaq.pod [] +docs/imcc/operation.pod [] +docs/intro.pod [main]doc +docs/jit.pod [] +docs/memory_internals.pod [] +docs/multidispatch.pod [] +docs/native_exec.pod [] +docs/optable.pod [] +docs/overview.pod [] +docs/parrot.pod [] +docs/parrotbyte.pod [] +docs/parrothist.pod [] +docs/pct/gettingstarted.pod [pct]doc +docs/pct/past_building_blocks.pod [pct]doc +docs/pct/pct_optable_guide.pod [pct]doc +docs/pdds/draft/pdd01_overview.pod [] +docs/pdds/draft/pdd05_opfunc.pod [] +docs/pdds/draft/pdd06_pasm.pod [] +docs/pdds/draft/pdd08_keys.pod [] +docs/pdds/draft/pdd10_embedding.pod [] +docs/pdds/draft/pdd11_extending.pod [] +docs/pdds/draft/pdd14_numbers.pod [] +docs/pdds/draft/pdd16_native_call.pod [] +docs/pdds/draft/pdd29_compiler_tools.pod [] +docs/pdds/draft/pdd30_install.pod [] +docs/pdds/draft/pdd31_hll_interop.pod [] +docs/pdds/pdd00_pdd.pod [] +docs/pdds/pdd03_calling_conventions.pod [] +docs/pdds/pdd07_codingstd.pod [] +docs/pdds/pdd09_gc.pod [] +docs/pdds/pdd13_bytecode.pod [] +docs/pdds/pdd15_object_metamodel.png [] +docs/pdds/pdd15_object_metamodel.svg [] +docs/pdds/pdd15_objects.pod [] +docs/pdds/pdd17_pmc.pod [] +docs/pdds/pdd18_security.pod [] +docs/pdds/pdd19_pir.pod [] +docs/pdds/pdd20_lexical_vars.pod [] +docs/pdds/pdd21_namespaces.pod [] +docs/pdds/pdd22_io.pod [] +docs/pdds/pdd23_exceptions.pod [] +docs/pdds/pdd24_events.pod [] +docs/pdds/pdd25_concurrency.pod [] +docs/pdds/pdd26_ast.pod [] +docs/pdds/pdd27_multiple_dispatch.pod [] +docs/pdds/pdd28_strings.pod [] +docs/pdds/pdd_template.pod [] +docs/pmc.pod [] +docs/pmc/array.pod [main]doc +docs/pmc/documentation.pod [main]doc +docs/pmc/struct.pod [main]doc +docs/pmc/subs.pod [main]doc +docs/pmc2c.pod [devel]doc +docs/porting_intro.pod [] +docs/project/branching_guide.pod [devel]doc +docs/project/cage_cleaners_guide.pod [devel]doc +docs/project/committer_guide.pod [devel]doc +docs/project/debian_packaging_guide.pod [devel]doc +docs/project/metacommitter_guide.pod [devel]doc +docs/project/pause_guide.pod [devel]doc +docs/project/release_manager_guide.pod [devel]doc +docs/project/roles_responsibilities.pod [devel]doc +docs/project/support_policy.pod [devel]doc +docs/project/ticket_triaging.pod [devel]doc +docs/project/ubuntu_packaging_guide.pod [devel]doc +docs/req/model_users.pod [] +docs/resources/favicon.ico [] +docs/resources/parrot.css [] +docs/resources/parrot_logo.png [] +docs/resources/parrot_small.png [] +docs/resources/perl.css [] +docs/resources/up.gif [] +docs/running.pod [] +docs/stability.pod [] +docs/submissions.pod [] +docs/tests.pod [] +docs/user/pir/pp001-intro.pod [main]doc +docs/user/pir/pp002-pmc.pod [main]doc +docs/user/pir/pp003-oop.pod [main]doc +docs/vtables.pod [devel]doc +editor/README.pod []doc +editor/filetype_parrot.vim [] +editor/indent_pir.vim [] +editor/kate_syntax.pl [] +editor/ops2vim.pl [] +editor/parrot.el [] +editor/pasm.el [] +editor/pasm.vim [] +editor/pir-mode.el [] +editor/pir_vim.in [] +editor/pmc.vim [] +editor/skeleton.pir [] +editor/subversion_config [] +examples/README []doc +examples/benchmarks/addit.pasm [examples] +examples/benchmarks/addit.pir [examples] +examples/benchmarks/addit.pl [examples] +examples/benchmarks/addit.rb [examples] +examples/benchmarks/addit2.pir [examples] +examples/benchmarks/array_access.pir [examples] +examples/benchmarks/arriter.pir [examples] +examples/benchmarks/arriter.pl [examples] +examples/benchmarks/arriter.rb [examples] +examples/benchmarks/arriter_o1.pir [examples] +examples/benchmarks/bench_newp.pasm [examples] +examples/benchmarks/fib.pir [examples] +examples/benchmarks/fib.pl [examples] +examples/benchmarks/fib.py [examples] +examples/benchmarks/fib.rb [examples] +examples/benchmarks/float4.pir [examples] +examples/benchmarks/freeze.pasm [examples] +examples/benchmarks/freeze.pl [examples] +examples/benchmarks/gc_alloc_new.pasm [examples] +examples/benchmarks/gc_alloc_reuse.pasm [examples] +examples/benchmarks/gc_generations.pasm [examples] +examples/benchmarks/gc_header_new.pasm [examples] +examples/benchmarks/gc_header_reuse.pasm [examples] +examples/benchmarks/gc_waves_headers.pasm [examples] +examples/benchmarks/gc_waves_sizeable_data.pasm [examples] +examples/benchmarks/gc_waves_sizeable_headers.pasm [examples] +examples/benchmarks/mops.pasm [examples] +examples/benchmarks/mops.pl [examples] +examples/benchmarks/mops_intval.pasm [examples] +examples/benchmarks/oo1.pasm [examples] +examples/benchmarks/oo1.pl [examples] +examples/benchmarks/oo1.py [examples] +examples/benchmarks/oo1.rb [examples] +examples/benchmarks/oo2.pasm [examples] +examples/benchmarks/oo2.pl [examples] +examples/benchmarks/oo2.py [examples] +examples/benchmarks/oo2.rb [examples] +examples/benchmarks/oo3.pasm [examples] +examples/benchmarks/oo3.pl [examples] +examples/benchmarks/oo3.py [examples] +examples/benchmarks/oo3.rb [examples] +examples/benchmarks/oo4.pasm [examples] +examples/benchmarks/oo4.pl [examples] +examples/benchmarks/oo4.py [examples] +examples/benchmarks/oo4.rb [examples] +examples/benchmarks/oo5.pir [examples] +examples/benchmarks/oo5.pl [examples] +examples/benchmarks/oo5.py [examples] +examples/benchmarks/oo5.rb [examples] +examples/benchmarks/oo6.pir [examples] +examples/benchmarks/oo6.pl [examples] +examples/benchmarks/oo6.py [examples] +examples/benchmarks/oo6.rb [examples] +examples/benchmarks/oofib.pir [examples] +examples/benchmarks/oofib.pl [examples] +examples/benchmarks/oofib.py [examples] +examples/benchmarks/oofib.rb [examples] +examples/benchmarks/oon.txt [examples] +examples/benchmarks/overload.pir [examples] +examples/benchmarks/overload.pl [examples] +examples/benchmarks/primes.c [examples] +examples/benchmarks/primes.pasm [examples] +examples/benchmarks/primes.pl [examples] +examples/benchmarks/primes2.c [examples] +examples/benchmarks/primes2.pir [examples] +examples/benchmarks/primes2.pl [examples] +examples/benchmarks/primes2.py [examples] +examples/benchmarks/primes2.rb [examples] +examples/benchmarks/primes2_i.pir [examples] +examples/benchmarks/primes_i.pasm [examples] +examples/benchmarks/shared_ref.pasm [examples] +examples/benchmarks/shared_ref.pl [examples] +examples/benchmarks/stress.pasm [examples] +examples/benchmarks/stress.pl [examples] +examples/benchmarks/stress.rb [examples] +examples/benchmarks/stress1.pasm [examples] +examples/benchmarks/stress1.pl [examples] +examples/benchmarks/stress2.pasm [examples] +examples/benchmarks/stress2.pl [examples] +examples/benchmarks/stress2.rb [examples] +examples/benchmarks/stress3.pasm [examples] +examples/benchmarks/vpm.pir [examples] +examples/benchmarks/vpm.pl [examples] +examples/benchmarks/vpm.py [examples] +examples/benchmarks/vpm.rb [examples] +examples/c/nanoparrot.c [examples] +examples/c/test_main.c [examples] +examples/compilers/Makefile [examples] +examples/compilers/japhc.c [examples] +examples/embed/Makefile [examples] +examples/embed/Makefile.msvc [examples] +examples/embed/lorito.c [examples] +examples/io/async_select.pir [examples] +examples/io/echo_client.pir [examples] +examples/io/http.pir [examples] +examples/io/httpd.pir [examples] +examples/io/httpd2.pir [examples] +examples/io/net_smtp.pasm [examples] +examples/io/pipe2.pir [examples] +examples/io/pipe3.pir [examples] +examples/japh/README []doc +examples/japh/japh1.pasm [examples] +examples/japh/japh2.pasm [examples] +examples/japh/japh3.pasm [examples] +examples/japh/japh4.pasm [examples] +examples/japh/japh5.pasm [examples] +examples/languages/abc/Configure.pl [examples] +examples/languages/abc/MAINTAINER [examples] +examples/languages/abc/README []doc +examples/languages/abc/TODO [examples] +examples/languages/abc/abc.pir [examples] +examples/languages/abc/config/makefiles/root.in [examples] +examples/languages/abc/src/builtins/all.pir [examples] +examples/languages/abc/src/parser/actions.pm [examples] +examples/languages/abc/src/parser/grammar-oper.pg [examples] +examples/languages/abc/src/parser/grammar.pg [examples] +examples/languages/abc/t/01-tests.t [examples] +examples/languages/abc/t/abc_basic [examples] +examples/languages/abc/t/abc_functions [examples] +examples/languages/abc/t/abc_special_variables [examples] +examples/languages/abc/t/abc_statement [examples] +examples/languages/abc/t/harness [examples] +examples/languages/squaak/Configure.pl [examples] +examples/languages/squaak/MAINTAINER [examples] +examples/languages/squaak/README []doc +examples/languages/squaak/config/makefiles/root.in [examples] +examples/languages/squaak/doc/tutorial_episode_1.pod [examples] +examples/languages/squaak/doc/tutorial_episode_2.pod [examples] +examples/languages/squaak/doc/tutorial_episode_3.pod [examples] +examples/languages/squaak/doc/tutorial_episode_4.pod [examples] +examples/languages/squaak/doc/tutorial_episode_5.pod [examples] +examples/languages/squaak/doc/tutorial_episode_6.pod [examples] +examples/languages/squaak/doc/tutorial_episode_7.pod [examples] +examples/languages/squaak/doc/tutorial_episode_8.pod [examples] +examples/languages/squaak/doc/tutorial_episode_9.pod [examples] +examples/languages/squaak/examples/factorial.sq [examples] +examples/languages/squaak/examples/life.sq [examples] +examples/languages/squaak/squaak.pir [examples] +examples/languages/squaak/src/builtins/say.pir [examples] +examples/languages/squaak/src/parser/actions.pm [examples] +examples/languages/squaak/src/parser/grammar.pg [examples] +examples/languages/squaak/t/00-sanity.t [examples] +examples/languages/squaak/t/01-math.t [examples] +examples/languages/squaak/t/harness [examples] +examples/library/acorn.l [examples] +examples/library/getopt_demo.pir [examples] +examples/library/md5sum.pir [examples] +examples/library/ncurses_life.pir [examples] +examples/library/pcre.pir [examples] +examples/mops/README []doc +examples/mops/mops.c [examples] +examples/mops/mops.cs [examples] +examples/mops/mops.il [examples] +examples/mops/mops.p6 [examples] +examples/mops/mops.pl [examples] +examples/mops/mops.ps [examples] +examples/mops/mops.py [examples] +examples/mops/mops.rb [examples] +examples/mops/mops.scheme [examples] +examples/namespace/namespace_dump.pir [examples] +examples/nci/Mysql.pir [examples] +examples/nci/PQt.C [examples] +examples/nci/QtHelloWorld.pasm [examples] +examples/nci/Xlib.pir [examples] +examples/nci/Xlibconstants.pir [examples] +examples/nci/ls.pir [examples] +examples/nci/mysqltest.p6 [examples] +examples/nci/mysqltest.pir [examples] +examples/nci/sdl_blue_rectangle.pir [examples] +examples/nci/win32api.pir [examples] +examples/nci/xlibtest.nqp [examples] +examples/nci/xlibtest.p6 [examples] +examples/nci/xlibtest.pir [examples] +examples/nci/xlibtest.rb [examples] +examples/opengl/shapes.p6 [examples] +examples/opengl/shapes.pir [examples] +examples/opengl/static-triangle.p6 [examples] +examples/opengl/static-triangle.pir [examples] +examples/opengl/triangle.p6 [examples] +examples/opengl/triangle.pir [examples] +examples/pasm/cat.pasm [examples] +examples/pasm/fact.pasm [examples] +examples/pasm/hello.pasm [examples] +examples/pasm/nanoforth.pasm [examples] +examples/pasm/nanoforth2.pasm [examples] +examples/pasm/trace.pasm [examples] +examples/past/01-sub.pir [examples] +examples/past/blocktype_immediate.pir [examples] +examples/past/four_plus_one.pir [examples] +examples/pir/befunge/Changes [examples] +examples/pir/befunge/MAINTAINER [examples] +examples/pir/befunge/Makefile [examples] +examples/pir/befunge/README []doc +examples/pir/befunge/befunge.pir [examples] +examples/pir/befunge/debug.pir [examples] +examples/pir/befunge/flow.pir [examples] +examples/pir/befunge/io.pir [examples] +examples/pir/befunge/load.pir [examples] +examples/pir/befunge/maths.pir [examples] +examples/pir/befunge/pascserp.bef [examples] +examples/pir/befunge/stack.pir [examples] +examples/pir/befunge/t/basic.t [examples] +examples/pir/befunge/t/harness [examples] +examples/pir/befunge/test.bef [examples] +examples/pir/circle.pir [examples] +examples/pir/euclid.pir [examples] +examples/pir/genprog.bas [examples] +examples/pir/hanoi.pir [examples] +examples/pir/interlangs.bas [examples] +examples/pir/interlangs.pir [examples] +examples/pir/io.pir [examples] +examples/pir/levenshtein.pir [examples] +examples/pir/life.pir [examples] +examples/pir/local_label.pir [examples] +examples/pir/mandel.pir [examples] +examples/pir/mysqltest.bas [examples] +examples/pir/perl6.bas [examples] +examples/pir/pirric.pir [examples] +examples/pir/queens_r.pir [examples] +examples/pir/quine_ord.pir [examples] +examples/pir/readline.pir [examples] +examples/pir/substr.pir [examples] +examples/pir/sudoku.pir [examples] +examples/pir/uniq.pir [examples] +examples/sdl/anim_image.pir [examples] +examples/sdl/anim_image_dblbuf.pir [examples] +examples/sdl/blue_font.pir [examples] +examples/sdl/blue_rect.pir [examples] +examples/sdl/blue_rect.pl [examples] +examples/sdl/bounce_parrot_logo.pir [examples] +examples/sdl/lcd/clock.pir [examples] +examples/sdl/mandel.pir [examples] +examples/sdl/minesweeper/README []doc +examples/sdl/minesweeper/eventhandler.pir [examples] +examples/sdl/minesweeper/field.pir [examples] +examples/sdl/minesweeper/mines.pir [examples] +examples/sdl/minesweeper/mines.png [examples] +examples/sdl/minesweeper/mines_debug.png [examples] +examples/sdl/minesweeper/smiley.png [examples] +examples/sdl/move_parrot_logo.pir [examples] +examples/sdl/parrot_small.png [examples] +examples/sdl/raw_pixels.pir [examples] +examples/sdl/tetris/README []doc +examples/sdl/tetris/app.pir [examples] +examples/sdl/tetris/block.pir [examples] +examples/sdl/tetris/blockdata.pir [examples] +examples/sdl/tetris/blocks.pir [examples] +examples/sdl/tetris/board.pir [examples] +examples/sdl/tetris/boarddata.pir [examples] +examples/sdl/tetris/eventhandler.pir [examples] +examples/sdl/tetris/tetris.pir [examples] +examples/shootout/README []doc +examples/shootout/ack.pir [examples] +examples/shootout/ack.pir_output [examples] +examples/shootout/ack.py [examples] +examples/shootout/binarytrees.pir [examples] +examples/shootout/binarytrees.pir_output [examples] +examples/shootout/fannkuch.pir [examples] +examples/shootout/fannkuch.pir_output [examples] +examples/shootout/fannkuch.py [examples] +examples/shootout/fasta.pir [examples] +examples/shootout/fasta.pir_output [examples] +examples/shootout/harmonic.pir [examples] +examples/shootout/knucleotide.pir [examples] +examples/shootout/knucleotide.pir_input [examples] +examples/shootout/knucleotide.pir_output [examples] +examples/shootout/mandelbrot.pir [examples] +examples/shootout/mandelbrot.pir_output [examples] +examples/shootout/nbody.pir [examples] +examples/shootout/nbody.pir_output [examples] +examples/shootout/nsieve-bits-2.pir [examples] +examples/shootout/nsieve-bits-2.pir_output [examples] +examples/shootout/nsieve-bits.pir [examples] +examples/shootout/nsieve-bits.pir_output [examples] +examples/shootout/nsieve.pir [examples] +examples/shootout/nsieve.pir_output [examples] +examples/shootout/partialsums-2.pir [examples] +examples/shootout/partialsums-2.pir_output [examples] +examples/shootout/partialsums.pir [examples] +examples/shootout/partialsums.pir_output [examples] +examples/shootout/pidigits.pir [examples] +examples/shootout/pidigits.pir_output [examples] +examples/shootout/pidigits.py [examples] +examples/shootout/random.pasm [examples] +examples/shootout/random.pir [examples] +examples/shootout/recursive-2.pir [examples] +examples/shootout/recursive-2.pir_output [examples] +examples/shootout/recursive.pir [examples] +examples/shootout/recursive.pir_output [examples] +examples/shootout/regexdna.pir [examples] +examples/shootout/regexdna.pir_input [examples] +examples/shootout/regexdna.pir_output [examples] +examples/shootout/revcomp.pir [examples] +examples/shootout/revcomp.pir_input [examples] +examples/shootout/revcomp.pir_output [examples] +examples/shootout/spectralnorm.pir [examples] +examples/shootout/spectralnorm.pir_output [examples] +examples/shootout/sumcol.pir [examples] +examples/shootout/sumcol.pir_input [examples] +examples/shootout/sumcol.pir_output [examples] +examples/shootout/takfp.pir [examples] +examples/shootout/takfp.pir_output [examples] +examples/streams/Bytes.pir [examples] +examples/streams/Combiner.pir [examples] +examples/streams/Coroutine.pir [examples] +examples/streams/FileLines.pir [examples] +examples/streams/Filter.pir [examples] +examples/streams/Include.pir [examples] +examples/streams/Lines.pir [examples] +examples/streams/ParrotIO.pir [examples] +examples/streams/Replay.pir [examples] +examples/streams/SubCounter.pir [examples] +examples/streams/SubHello.pir [examples] +examples/streams/Writer.pir [examples] +examples/subs/bsr_ret.pasm [examples] +examples/subs/coroutine.pasm [examples] +examples/subs/jsr_ret.pasm [examples] +examples/subs/multi_retvals.pir [examples] +examples/subs/no_retval.pir [examples] +examples/subs/pasm_sub1.pasm [examples] +examples/subs/single_retval.pir [examples] +examples/tcl/tcltkdemo.pir [examples] +examples/tge/README []doc +examples/tge/branch/branch.g [examples] +examples/tge/branch/lib/Branch.pir [examples] +examples/tge/branch/lib/Leaf.pir [examples] +examples/tge/branch/transform.pir [examples] +examples/tools/Makefile [examples] +examples/tools/pbc_checker.cpp [examples] +examples/tutorial/00_README.pod []doc +examples/tutorial/01_temp_var.pir [examples] +examples/tutorial/02_local_var.pir [examples] +examples/tutorial/03_temp_var_basic_pmcs.pir [examples] +examples/tutorial/04_pod_comments.pir [examples] +examples/tutorial/10_math_ops.pir [examples] +examples/tutorial/11_math_ops_self_mod.pir [examples] +examples/tutorial/12_math_ops_pasm.pir [examples] +examples/tutorial/13_logical_ops.pir [examples] +examples/tutorial/20_string_ops.pir [examples] +examples/tutorial/21_string_ops_repeat.pir [examples] +examples/tutorial/22_string_ops_length.pir [examples] +examples/tutorial/23_string_ops_substr.pir [examples] +examples/tutorial/24_string_ops_clone.pir [examples] +examples/tutorial/30_arrays_basic.pir [examples] +examples/tutorial/31_array_ops_split.pir [examples] +examples/tutorial/32_array_ops_sprintf.pir [examples] +examples/tutorial/33_hashes.pir [examples] +examples/tutorial/34_multikey.pir [examples] +examples/tutorial/40_file_ops.pir [examples] +examples/tutorial/50_goto.pir [examples] +examples/tutorial/51_if_unless.pir [examples] +examples/tutorial/52_if_compare.pir [examples] +examples/tutorial/53_loop.pir [examples] +examples/tutorial/55_iterator.pir [examples] +examples/tutorial/56_defined.pir [examples] +examples/tutorial/57_exists.pir [examples] +examples/tutorial/60_subroutines.pir [examples] +examples/tutorial/61_namespaces.pir [examples] +examples/tutorial/62_namespaces.pir [examples] +examples/tutorial/70_class_object.pir [examples] +examples/tutorial/81_continuation.pir [examples] +examples/tutorial/82_coroutine.pir [examples] +examples/tutorial/83_external_libraries.pir [examples] +examples/tutorial/90_writing_tests.pir [examples] +ext/Parrot-Embed/Build.PL [] +ext/Parrot-Embed/Changes [] +ext/Parrot-Embed/MANIFEST [] +ext/Parrot-Embed/README []doc +ext/Parrot-Embed/TODO [] +ext/Parrot-Embed/lib/Parrot/Embed.pm [] +ext/Parrot-Embed/lib/Parrot/Embed.xs [] +ext/Parrot-Embed/lib/Parrot/Interpreter.pm [] +ext/Parrot-Embed/lib/Parrot/PMC.pm [] +ext/Parrot-Embed/t/00-load.t [test] +ext/Parrot-Embed/t/greet.pir [test] +ext/Parrot-Embed/t/interp.t [test] +ext/Parrot-Embed/t/languages.t [test] +ext/Parrot-Embed/t/pipp.t [test] +ext/Parrot-Embed/tools/check_embed_coverage.pl [] +ext/Parrot-Embed/tools/write_typemap.pl [] +ext/Parrot-Embed/typemap [] +ext/SQLite3/DBDI.pm [] +ext/SQLite3/DBDI/Driver/SQLite3.pm [] +ext/SQLite3/Makefile.PL [] +ext/SQLite3/Makefile.in [] +ext/SQLite3/SQLite3.pir [] +ext/SQLite3/gen_sqlite3.pl [] +ext/SQLite3/t/test.p6 [test] +ext/SQLite3/test.pir [] +include/parrot/atomic.h [main]include +include/parrot/atomic/fallback.h [main]include +include/parrot/atomic/gcc_pcc.h [main]include +include/parrot/atomic/gcc_x86.h [main]include +include/parrot/atomic/sparc.h [main]include +include/parrot/caches.h [main]include +include/parrot/call.h [main]include +include/parrot/cclass.h [main]include +include/parrot/charset.h [main]include +include/parrot/compiler.h [main]include +include/parrot/core_types.h [main]include +include/parrot/datatypes.h [main]include +include/parrot/debugger.h [main]include +include/parrot/dynext.h [main]include +include/parrot/embed.h [main]include +include/parrot/encoding.h [main]include +include/parrot/enums.h [main]include +include/parrot/events.h [main]include +include/parrot/exceptions.h [main]include +include/parrot/exec.h [main]include +include/parrot/exit.h [main]include +include/parrot/extend.h [main]include +include/parrot/gc_api.h [main]include +include/parrot/gc_mark_sweep.h [main]include +include/parrot/gc_pools.h [main]include +include/parrot/global.h [main]include +include/parrot/global_setup.h [main]include +include/parrot/hash.h [main]include +include/parrot/hll.h [main]include +include/parrot/imcc.h [main]include +include/parrot/interpreter.h [main]include +include/parrot/io.h [main]include +include/parrot/io_portable.h [main]include +include/parrot/io_unix.h [main]include +include/parrot/io_win32.h [main]include +include/parrot/key.h [main]include +include/parrot/library.h [main]include +include/parrot/list.h [main]include +include/parrot/longopt.h [main]include +include/parrot/memory.h [main]include +include/parrot/misc.h [main]include +include/parrot/multidispatch.h [main]include +include/parrot/nci.h [main]include +include/parrot/oo.h [main]include +include/parrot/oo_private.h [main]include +include/parrot/op.h [main]include +include/parrot/oplib.h [main]include +include/parrot/packfile.h [main]include +include/parrot/parrot.h [main]include +include/parrot/pic.h [main]include +include/parrot/pmc.h [main]include +include/parrot/pmc_freeze.h [main]include +include/parrot/pobj.h [main]include +include/parrot/register.h [main]include +include/parrot/resources.h [main]include +include/parrot/scheduler.h [main]include +include/parrot/scheduler_private.h [main]include +include/parrot/settings.h [main]include +include/parrot/slice.h [main]include +include/parrot/stacks.h [main]include +include/parrot/stat.h [main]include +include/parrot/string.h [main]include +include/parrot/string_funcs.h [main]include +include/parrot/string_primitives.h [main]include +include/parrot/sub.h [main]include +include/parrot/thr_pthread.h [main]include +include/parrot/thr_windows.h [main]include +include/parrot/thread.h [main]include +include/parrot/tsq.h [main]include +include/parrot/vtables.h [main]include +include/parrot/warnings.h [main]include +languages/BASIC/MAINTAINER [BASIC] +languages/BASIC/compiler/BASIC_README []doc +languages/BASIC/compiler/COMP_assignments.pm [BASIC] +languages/BASIC/compiler/COMP_expressions.pm [BASIC] +languages/BASIC/compiler/COMP_parsefuncs.pm [BASIC] +languages/BASIC/compiler/COMP_parser.pm [BASIC] +languages/BASIC/compiler/COMP_toker.pm [BASIC] +languages/BASIC/compiler/RT_aggregates.pir [BASIC] +languages/BASIC/compiler/RT_builtins.pir [BASIC] +languages/BASIC/compiler/RT_debugger.pir [BASIC] +languages/BASIC/compiler/RT_initialize.pir [BASIC] +languages/BASIC/compiler/RT_io.pir [BASIC] +languages/BASIC/compiler/RT_platform.pir [BASIC] +languages/BASIC/compiler/RT_platform_ANSIscreen.pir [BASIC] +languages/BASIC/compiler/RT_platform_win32.pir [BASIC] +languages/BASIC/compiler/RT_support.pir [BASIC] +languages/BASIC/compiler/compile.pl [BASIC] +languages/BASIC/compiler/readme.bas [BASIC] +languages/BASIC/compiler/samples/chess.bas [BASIC] +languages/BASIC/compiler/samples/conn4.bas [BASIC] +languages/BASIC/compiler/samples/count_to_100.bas [BASIC] +languages/BASIC/compiler/samples/eliza2.bas [BASIC] +languages/BASIC/compiler/samples/hanoi.bas [BASIC] +languages/BASIC/compiler/samples/newtrek.bas [BASIC] +languages/BASIC/compiler/samples/screen.bas [BASIC] +languages/BASIC/compiler/samples/wumpus2.bas [BASIC] +languages/BASIC/compiler/testrun.pl [BASIC] +languages/BASIC/compiler/testsuite.pl [BASIC] +languages/README []doc +languages/bf/MAINTAINER [bf] +languages/bf/README []doc +languages/bf/bench.bf [bf] +languages/bf/bf.pasm [bf] +languages/bf/bfc.pir [bf] +languages/bf/bfco.pir [bf] +languages/bf/config/makefiles/root.in [bf] +languages/bf/countdown.bf [bf] +languages/bf/cw.bf [bf] +languages/bf/cw.txt [bf] +languages/bf/helloworld.bf [bf] +languages/bf/t/harness [test] +languages/bf/t/test_bf.t [test] +languages/bf/t/test_bfc.t [test] +languages/bf/t/test_bfco.t [test] +languages/bf/test.bf [bf] +languages/cardinal/cardinal.pir [cardinal] +languages/cardinal/config/makefiles/root.in [cardinal] +languages/cardinal/src/builtins/cmp.pir [cardinal] +languages/cardinal/src/builtins/control.pir [cardinal] +languages/cardinal/src/builtins/eval.pir [cardinal] +languages/cardinal/src/builtins/globals.pir [cardinal] +languages/cardinal/src/builtins/guts.pir [cardinal] +languages/cardinal/src/builtins/op.pir [cardinal] +languages/cardinal/src/builtins/say.pir [cardinal] +languages/cardinal/src/classes/Any.pir [cardinal] +languages/cardinal/src/classes/Array.pir [cardinal] +languages/cardinal/src/classes/Bool.pir [cardinal] +languages/cardinal/src/classes/Continuation.pir [cardinal] +languages/cardinal/src/classes/Dir.pir [cardinal] +languages/cardinal/src/classes/Failure.pir [cardinal] +languages/cardinal/src/classes/File.pir [cardinal] +languages/cardinal/src/classes/FileStat.pir [cardinal] +languages/cardinal/src/classes/GC.pir [cardinal] +languages/cardinal/src/classes/Hash.pir [cardinal] +languages/cardinal/src/classes/IO.pir [cardinal] +languages/cardinal/src/classes/Integer.pir [cardinal] +languages/cardinal/src/classes/Kernel.pir [cardinal] +languages/cardinal/src/classes/Math.pir [cardinal] +languages/cardinal/src/classes/NilClass.pir [cardinal] +languages/cardinal/src/classes/Object.pir [cardinal] +languages/cardinal/src/classes/Proc.pir [cardinal] +languages/cardinal/src/classes/Queue.pir [cardinal] +languages/cardinal/src/classes/Range.pir [cardinal] +languages/cardinal/src/classes/String.pir [cardinal] +languages/cardinal/src/classes/Time.pir [cardinal] +languages/cardinal/src/parser/actions.pm [cardinal] +languages/cardinal/src/parser/grammar.pg [cardinal] +languages/cardinal/src/parser/quote_expression.pir [cardinal] +languages/cardinal/t/00-sanity.t [test] +languages/cardinal/t/01-stmts.t [test] +languages/cardinal/t/02-functions.t [test] +languages/cardinal/t/03-return.t [test] +languages/cardinal/t/04-indexed.t [test] +languages/cardinal/t/05-op-cmp.t [test] +languages/cardinal/t/07-loops.t [test] +languages/cardinal/t/08-class.t [test] +languages/cardinal/t/09-test.t [test] +languages/cardinal/t/10-regex.t [test] +languages/cardinal/t/11-slurpy.t [test] +languages/cardinal/t/12-gather.t [test] +languages/cardinal/t/99-other.t [test] +languages/cardinal/t/alias.t [test] +languages/cardinal/t/array/array.t [test] +languages/cardinal/t/array/at.t [test] +languages/cardinal/t/array/clear.t [test] +languages/cardinal/t/array/collect.t [test] +languages/cardinal/t/array/delete.t [test] +languages/cardinal/t/array/empty.t [test] +languages/cardinal/t/array/equals.t [test] +languages/cardinal/t/array/fill.t [test] +languages/cardinal/t/array/first.t [test] +languages/cardinal/t/array/flatten.t [test] +languages/cardinal/t/array/grep.t [test] +languages/cardinal/t/array/include.t [test] +languages/cardinal/t/array/intersection.t [test] +languages/cardinal/t/array/join.t [test] +languages/cardinal/t/array/mathop.t [test] +languages/cardinal/t/array/pop.t [test] +languages/cardinal/t/array/reverse.t [test] +languages/cardinal/t/array/shift.t [test] +languages/cardinal/t/array/slice.t [test] +languages/cardinal/t/array/sort.t [test] +languages/cardinal/t/array/to_s.t [test] +languages/cardinal/t/array/uniq.t [test] +languages/cardinal/t/array/warray.t [test] +languages/cardinal/t/assignment.t [test] +languages/cardinal/t/blocks.t [test] +languages/cardinal/t/constants.t [test] +languages/cardinal/t/continuation.t [test] +languages/cardinal/t/file/dir.t [test] +languages/cardinal/t/file/file.t [test] +languages/cardinal/t/file/stat.t [test] +languages/cardinal/t/freeze.t [test] +languages/cardinal/t/gc.t [test] +languages/cardinal/t/harness [test] +languages/cardinal/t/hash/hash.t [test] +languages/cardinal/t/integer/integer.t [test] +languages/cardinal/t/integer/times.t [test] +languages/cardinal/t/kernel/exit.t [test] +languages/cardinal/t/kernel/open.t [test] +languages/cardinal/t/kernel/sprintf.t [test] +languages/cardinal/t/math/functions.t [test] +languages/cardinal/t/nil.t [test] +languages/cardinal/t/proc.t [test] +languages/cardinal/t/range.t [test] +languages/cardinal/t/range/each.t [test] +languages/cardinal/t/range/infix-exclusive.t [test] +languages/cardinal/t/range/infix-inclusive.t [test] +languages/cardinal/t/range/membership-variants.t [test] +languages/cardinal/t/range/new.t [test] +languages/cardinal/t/range/to_a.t [test] +languages/cardinal/t/range/to_s.t [test] +languages/cardinal/t/range/tofrom-variants.t [test] +languages/cardinal/t/splat.t [test] +languages/cardinal/t/string/add.t [test] +languages/cardinal/t/string/block.t [test] +languages/cardinal/t/string/capitalize.t [test] +languages/cardinal/t/string/chops.t [test] +languages/cardinal/t/string/cmp.t [test] +languages/cardinal/t/string/concat.t [test] +languages/cardinal/t/string/downcase.t [test] +languages/cardinal/t/string/eq.t [test] +languages/cardinal/t/string/mult.t [test] +languages/cardinal/t/string/new.t [test] +languages/cardinal/t/string/quote.t [test] +languages/cardinal/t/string/random_access.t [test] +languages/cardinal/t/string/reverse.t [test] +languages/cardinal/t/string/upcase.t [test] +languages/cardinal/t/time.t [test] +languages/cardinal/t/yield.t [test] +languages/cardinal/t/zip.t [test] +languages/cardinal/test.rb [cardinal] +languages/chitchat/MAINTAINER [chitchat] +languages/chitchat/chitchat.pir [chitchat] +languages/chitchat/config/makefiles/root.in [chitchat] +languages/chitchat/src/builtins/say.pir [chitchat] +languages/chitchat/src/parser/actions.pm [chitchat] +languages/chitchat/src/parser/grammar.pg [chitchat] +languages/chitchat/t/00-sanity.t [test] +languages/chitchat/t/harness [test] +languages/cola/MAINTAINER [cola] +languages/cola/README []doc +languages/cola/System.cola [cola] +languages/cola/TODO [cola] +languages/cola/cola.h [cola] +languages/cola/cola.l [cola] +languages/cola/cola.y [cola] +languages/cola/colac [cola] +languages/cola/config/makefiles/root.in [cola] +languages/cola/core.pir [cola] +languages/cola/examples/calc.cola [cola] +languages/cola/examples/expressions.cola [cola] +languages/cola/examples/fib.cola [cola] +languages/cola/examples/life.cola [cola] +languages/cola/examples/mandelbrot.cola [cola] +languages/cola/examples/oop.cola [cola] +languages/cola/examples/reverse.cola [cola] +languages/cola/gen.c [cola] +languages/cola/lexer.c [cola] +languages/cola/parser.c [cola] +languages/cola/parser.h [cola] +languages/cola/semant.c [cola] +languages/cola/sym.c [cola] +languages/cola/t/examples.t [test] +languages/cola/t/harness [test] +languages/cola/type.c [cola] +languages/forth/MAINTAINER [forth] +languages/forth/config/makefiles/root.in [forth] +languages/forth/forth.pir [forth] +languages/forth/t/comparison.t [test] +languages/forth/t/conditionals.t [test] +languages/forth/t/harness [test] +languages/forth/t/loop.t [test] +languages/forth/t/math.t [test] +languages/forth/t/new_words.t [test] +languages/forth/t/output.t [test] +languages/forth/t/stack.t [test] +languages/forth/t/variables.t [test] +languages/forth/test.pir [forth] +languages/forth/tokenstream.pir [forth] +languages/forth/variablestack.pir [forth] +languages/forth/virtualstack.pir [forth] +languages/forth/words.pir [forth] +languages/jako/Curses.jako [jako] +languages/jako/MAINTAINER [jako] +languages/jako/README []doc +languages/jako/SDL.jako [jako] +languages/jako/antlr/Main.java [jako] +languages/jako/antlr/Makefile [jako] +languages/jako/antlr/jako.g [jako] +languages/jako/antlr/jakop [jako] +languages/jako/config/makefiles/root.in [jako] +languages/jako/docs/jako.pod [jako] +languages/jako/elem.jako [jako] +languages/jako/examples/bench.jako [jako] +languages/jako/examples/board.jako [jako] +languages/jako/examples/euclid.jako [jako] +languages/jako/examples/fact.jako [jako] +languages/jako/examples/fib.jako [jako] +languages/jako/examples/hello.jako [jako] +languages/jako/examples/leibniz.jako [jako] +languages/jako/examples/life.jako [jako] +languages/jako/examples/mandelbrot.jako [jako] +languages/jako/examples/mandelzoom.jako [jako] +languages/jako/examples/mops.jako [jako] +languages/jako/examples/nci.jako [jako] +languages/jako/examples/pmc.jako [jako] +languages/jako/examples/primes.jako [jako] +languages/jako/examples/python.jako [jako] +languages/jako/examples/queens.jako [jako] +languages/jako/examples/queens_array.jako [jako] +languages/jako/examples/sub.jako [jako] +languages/jako/io.jako [jako] +languages/jako/jako [jako] +languages/jako/jakoc [jako] +languages/jako/lib/Jako/Compiler.pm [jako] +languages/jako/lib/Jako/Construct.pm [jako] +languages/jako/lib/Jako/Construct/Block.pm [jako] +languages/jako/lib/Jako/Construct/Block/Bare.pm [jako] +languages/jako/lib/Jako/Construct/Block/Conditional.pm [jako] +languages/jako/lib/Jako/Construct/Block/Conditional/Else.pm [jako] +languages/jako/lib/Jako/Construct/Block/Conditional/If.pm [jako] +languages/jako/lib/Jako/Construct/Block/Conditional/Unless.pm [jako] +languages/jako/lib/Jako/Construct/Block/File.pm [jako] +languages/jako/lib/Jako/Construct/Block/Loop.pm [jako] +languages/jako/lib/Jako/Construct/Block/Loop/Continue.pm [jako] +languages/jako/lib/Jako/Construct/Block/Loop/Until.pm [jako] +languages/jako/lib/Jako/Construct/Block/Loop/While.pm [jako] +languages/jako/lib/Jako/Construct/Block/Module.pm [jako] +languages/jako/lib/Jako/Construct/Block/Sub.pm [jako] +languages/jako/lib/Jako/Construct/Declaration.pm [jako] +languages/jako/lib/Jako/Construct/Declaration/Constant.pm [jako] +languages/jako/lib/Jako/Construct/Declaration/Sub.pm [jako] +languages/jako/lib/Jako/Construct/Declaration/Variable.pm [jako] +languages/jako/lib/Jako/Construct/Expression.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Call.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Infix.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Prefix.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Suffix.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Value.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Value/Identifier.pm [jako] +languages/jako/lib/Jako/Construct/Expression/Value/Literal.pm [jako] +languages/jako/lib/Jako/Construct/Label.pm [jako] +languages/jako/lib/Jako/Construct/Statement.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Arithmetic.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Assign.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Bitwise.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Call.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Concat.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Decrement.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Goto.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Increment.pm [jako] +languages/jako/lib/Jako/Construct/Statement/LoopControl.pm [jako] +languages/jako/lib/Jako/Construct/Statement/New.pm [jako] +languages/jako/lib/Jako/Construct/Statement/Return.pm [jako] +languages/jako/lib/Jako/Construct/Type.pm [jako] +languages/jako/lib/Jako/Construct/Type/Integer.pm [jako] +languages/jako/lib/Jako/Construct/Type/Number.pm [jako] +languages/jako/lib/Jako/Construct/Type/PMC.pm [jako] +languages/jako/lib/Jako/Construct/Type/String.pm [jako] +languages/jako/lib/Jako/Lexer.pm [jako] +languages/jako/lib/Jako/Parser.pm [jako] +languages/jako/lib/Jako/Processor.pm [jako] +languages/jako/lib/Jako/Symbol.pm [jako] +languages/jako/lib/Jako/Token.pm [jako] +languages/jako/string.jako [jako] +languages/jako/sys.jako [jako] +languages/jako/t/assign.jako [test] +languages/jako/t/data_decl.jako [test] +languages/jako/t/examples.t [test] +languages/jako/t/harness [test] +languages/lisp/CHANGES [lisp] +languages/lisp/KNOWN_BUGS [lisp] +languages/lisp/LICENSE [lisp] +languages/lisp/MAINTAINER [lisp] +languages/lisp/README []doc +languages/lisp/cl.pir [lisp] +languages/lisp/config/makefiles/root.in [lisp] +languages/lisp/eval.pir [lisp] +languages/lisp/include/macros.pir [lisp] +languages/lisp/include/macros/assert.pir [lisp] +languages/lisp/include/macros/error.pir [lisp] +languages/lisp/include/macros/list.pir [lisp] +languages/lisp/include/macros/standard.pir [lisp] +languages/lisp/include/macros/types.pir [lisp] +languages/lisp/internals.pir [lisp] +languages/lisp/lib/Parrot/Test/Lisp.pm [lisp] +languages/lisp/lisp.pir [lisp] +languages/lisp/lisp/bootstrap.l [lisp] +languages/lisp/lisp/core.l [lisp] +languages/lisp/lisp/list.l [lisp] +languages/lisp/lisp/logic.l [lisp] +languages/lisp/lisp/math.l [lisp] +languages/lisp/lisp/objects.l [lisp] +languages/lisp/lisp/pred.l [lisp] +languages/lisp/read.pir [lisp] +languages/lisp/system.pir [lisp] +languages/lisp/t/arithmetics.t [test] +languages/lisp/t/atoms.t [test] +languages/lisp/t/cl.t [test] +languages/lisp/t/function.t [test] +languages/lisp/t/harness [test] +languages/lisp/t/hello.t [test] +languages/lisp/t/lexicals.t [test] +languages/lisp/t/read.t [test] +languages/lisp/t/system.t [test] +languages/lisp/types.pir [lisp] +languages/lisp/validate.pir [lisp] +languages/ook/Changes [ook] +languages/ook/MAINTAINER [ook] +languages/ook/README []doc +languages/ook/config/makefiles/root.in [ook] +languages/ook/hello.ook [ook] +languages/ook/ook.pasm [ook] +languages/ook/t/basic.t [test] +languages/ook/t/harness [test] +languages/ook/test.ook [ook] +languages/parrot_compiler/MAINTAINER [parrot_compiler] +languages/parrot_compiler/README []doc +languages/parrot_compiler/config/makefiles/root.in [parrot_compiler] +languages/parrot_compiler/lib/Parrot/Test/ParrotCompiler.pm [parrot_compiler] +languages/parrot_compiler/parrot.pasm [parrot_compiler] +languages/parrot_compiler/parrot_compiler.pir [parrot_compiler] +languages/parrot_compiler/sample.pasm [parrot_compiler] +languages/parrot_compiler/t/basic/hello.t [test] +languages/parrot_compiler/t/harness [test] +languages/pynie/MAINTAINER [pynie] +languages/pynie/README []doc +languages/pynie/TODO [pynie] +languages/pynie/config/makefiles/root.in [pynie] +languages/pynie/examples/ex-3-1-4-a.py [pynie] +languages/pynie/examples/ex-3-2-a.py [pynie] +languages/pynie/examples/ex-3-2-b.py [pynie] +languages/pynie/examples/ex-3-2-c.py [pynie] +languages/pynie/examples/ex-3.py [pynie] +languages/pynie/pynie.pir [pynie] +languages/pynie/src/builtins/funcs.pir [pynie] +languages/pynie/src/builtins/io.pir [pynie] +languages/pynie/src/builtins/lists.pir [pynie] +languages/pynie/src/builtins/oper.pir [pynie] +languages/pynie/src/parser/Actions.pm [pynie] +languages/pynie/src/parser/Grammar.pg [pynie] +languages/pynie/src/parser/indent.pir [pynie] +languages/pynie/t/00-parrot/01-literals.t [test] +languages/pynie/t/00-parrot/02-op-math.t [test] +languages/pynie/t/00-parrot/03-op-logic.t [test] +languages/pynie/t/00-parrot/05-vars.t [test] +languages/pynie/t/00-parrot/06-stmts.t [test] +languages/pynie/t/00-parrot/07-op-cmp.t [test] +languages/pynie/t/00-parrot/08-func.t [test] +languages/pynie/t/00-parrot/09-list.t [test] +languages/pynie/t/00-parrot/10-augop.t [test] +languages/pynie/t/00-parrot/11-boolop.t [test] +languages/pynie/t/00-parrot/12-try.t [test] +languages/pynie/t/00-parrot/13-builtins.t [test] +languages/pynie/t/harness [test] +languages/regex/01_basic.pir [regex] +languages/regex/02_date.pir [regex] +languages/regex/ChangeLog [regex] +languages/regex/MAINTAINER [regex] +languages/regex/README []doc +languages/regex/README.hacking []doc +languages/regex/TODO [regex] +languages/regex/config/makefiles/root.in [regex] +languages/regex/docs/regex.pod [regex] +languages/regex/lib/Parrot/Test/Regex.pm [regex] +languages/regex/lib/Regex.pm [regex] +languages/regex/lib/Regex/CodeGen.pm [regex] +languages/regex/lib/Regex/CodeGen/IMCC.pm [regex] +languages/regex/lib/Regex/CodeGen/Perl5.pm [regex] +languages/regex/lib/Regex/CodeGen/Re.pm [regex] +languages/regex/lib/Regex/CodeGen/Rx.pm [regex] +languages/regex/lib/Regex/Driver.pm [regex] +languages/regex/lib/Regex/Generate.pm [regex] +languages/regex/lib/Regex/Grammar.pm [regex] +languages/regex/lib/Regex/Grammar.yp [regex] +languages/regex/lib/Regex/Ops.pm [regex] +languages/regex/lib/Regex/Ops/List.pm [regex] +languages/regex/lib/Regex/Ops/Tree.pm [regex] +languages/regex/lib/Regex/Optimize.pm [regex] +languages/regex/lib/Regex/Parse.pm [regex] +languages/regex/lib/Regex/Parse/P6C.pm [regex] +languages/regex/lib/Regex/Rewrite.pm [regex] +languages/regex/lib/Regex/State.pm [regex] +languages/regex/lib/Regex/TreeOptimize.pm [regex] +languages/regex/pmc/match.pmc [regex] +languages/regex/pmc/matchrange.pmc [regex] +languages/regex/regex-compiler.pir [regex] +languages/regex/regex.pl [regex] +languages/regex/t/basic/a.t [test] +languages/regex/t/basic/alt.t [test] +languages/regex/t/basic/backopt.t [test] +languages/regex/t/basic/example.t [test] +languages/regex/t/basic/group.t [test] +languages/regex/t/basic/infinite.t [test] +languages/regex/t/basic/literal.t [test] +languages/regex/t/basic/ngplus.t [test] +languages/regex/t/basic/optional.t [test] +languages/regex/t/basic/plus.t [test] +languages/regex/t/basic/quantindex.t [test] +languages/regex/t/basic/regress1.t [test] +languages/regex/t/basic/scanalt.t [test] +languages/regex/t/basic/scanstar.t [test] +languages/regex/t/basic/star.t [test] +languages/regex/t/basic/staralt.t [test] +languages/regex/t/harness [test] +languages/regex/test.pl [regex] +languages/scheme/MAINTAINER [scheme] +languages/scheme/README []doc +languages/scheme/config/makefiles/root.in [scheme] +languages/scheme/lib/Parrot/Test/Scheme.pm [scheme] +languages/scheme/lib/Scheme.pm [scheme] +languages/scheme/lib/Scheme/Builtins.pm [scheme] +languages/scheme/lib/Scheme/Generator.pm [scheme] +languages/scheme/lib/Scheme/Parser.pm [scheme] +languages/scheme/lib/Scheme/Tokenizer.pm [scheme] +languages/scheme/schemec [scheme] +languages/scheme/t/arith/basic.t [test] +languages/scheme/t/arith/logic.t [test] +languages/scheme/t/arith/nested.t [test] +languages/scheme/t/harness [test] +languages/scheme/t/io/basic.t [test] +languages/scheme/t/logic/basic.t [test] +languages/scheme/t/logic/defines.t [test] +languages/scheme/t/logic/lists.t [test] +languages/scheme/t/syn/basic.t [test] +languages/scheme/t/syn/begin.t [test] +languages/t/harness [test] +languages/urm/INSTALL [urm] +languages/urm/LICENSE [urm] +languages/urm/MAINTAINER [urm] +languages/urm/README []doc +languages/urm/config/makefiles/root.in [urm] +languages/urm/examples/biggerzero.urm [urm] +languages/urm/examples/distance.urm [urm] +languages/urm/examples/div.urm [urm] +languages/urm/examples/mult.urm [urm] +languages/urm/examples/sim.urm [urm] +languages/urm/examples/sub.urm [urm] +languages/urm/lib/URM/Test.pm [urm] +languages/urm/t/harness [test] +languages/urm/t/in_out.t [test] +languages/urm/t/mmu.t [test] +languages/urm/t/syn.t [test] +languages/urm/urm-old.pl [urm] +languages/urm/urmc [urm] +lib/File/Which.pm [devel]lib +lib/IO/CaptureOutput.pm [] +lib/Parrot/BuildUtil.pm [devel]lib +lib/Parrot/Config.pm [devel]lib +lib/Parrot/Configure.pm [devel]lib +lib/Parrot/Configure/Compiler.pm [devel]lib +lib/Parrot/Configure/Data.pm [devel]lib +lib/Parrot/Configure/Messages.pm [devel]lib +lib/Parrot/Configure/Options.pm [devel]lib +lib/Parrot/Configure/Options/Conf.pm [devel]lib +lib/Parrot/Configure/Options/Conf/CLI.pm [devel]lib +lib/Parrot/Configure/Options/Conf/File.pm [devel]lib +lib/Parrot/Configure/Options/Conf/Shared.pm [devel]lib +lib/Parrot/Configure/Options/Reconf.pm [devel]lib +lib/Parrot/Configure/Options/Test.pm [devel]lib +lib/Parrot/Configure/Options/Test/Prepare.pm [devel]lib +lib/Parrot/Configure/Step.pm [devel]lib +lib/Parrot/Configure/Step/List.pm [devel]lib +lib/Parrot/Configure/Step/Methods.pm [devel]lib +lib/Parrot/Configure/Test.pm [devel]lib +lib/Parrot/Configure/Trace.pm [devel]lib +lib/Parrot/Configure/Utils.pm [devel]lib +lib/Parrot/Distribution.pm [devel]lib +lib/Parrot/Docs/Directory.pm [devel]lib +lib/Parrot/Docs/File.pm [devel]lib +lib/Parrot/Docs/Group.pm [devel]lib +lib/Parrot/Docs/HTMLPage.pm [devel]lib +lib/Parrot/Docs/Item.pm [devel]lib +lib/Parrot/Docs/POD2HTML.pm [devel]lib +lib/Parrot/Docs/Section.pm [devel]lib +lib/Parrot/Docs/Section/C.pm [devel]lib +lib/Parrot/Docs/Section/Compilers.pm [devel]lib +lib/Parrot/Docs/Section/Config.pm [devel]lib +lib/Parrot/Docs/Section/Developer.pm [devel]lib +lib/Parrot/Docs/Section/Examples.pm [devel]lib +lib/Parrot/Docs/Section/IMCC.pm [devel]lib +lib/Parrot/Docs/Section/Info.pm [devel]lib +lib/Parrot/Docs/Section/Languages.pm [devel]lib +lib/Parrot/Docs/Section/Libs.pm [devel]lib +lib/Parrot/Docs/Section/Ops.pm [devel]lib +lib/Parrot/Docs/Section/PDDs.pm [devel]lib +lib/Parrot/Docs/Section/PMCs.pm [devel]lib +lib/Parrot/Docs/Section/Parrot.pm [devel]lib +lib/Parrot/Docs/Section/Perl.pm [devel]lib +lib/Parrot/Docs/Section/Tests.pm [devel]lib +lib/Parrot/Docs/Section/Tools.pm [devel]lib +lib/Parrot/Docs/Text2HTML.pm [devel]lib +lib/Parrot/Harness/DefaultTests.pm [devel]lib +lib/Parrot/Harness/Options.pm [devel]lib +lib/Parrot/Harness/Smoke.pm [devel]lib +lib/Parrot/Headerizer.pm [devel]lib +lib/Parrot/IO/Directory.pm [devel]lib +lib/Parrot/IO/File.pm [devel]lib +lib/Parrot/IO/Path.pm [devel]lib +lib/Parrot/Install.pm [devel]lib +lib/Parrot/Manifest.pm [devel]lib +lib/Parrot/Op.pm [devel]lib +lib/Parrot/OpTrans.pm [devel]lib +lib/Parrot/OpTrans/C.pm [devel]lib +lib/Parrot/OpTrans/CGP.pm [devel]lib +lib/Parrot/OpTrans/CGoto.pm [devel]lib +lib/Parrot/OpTrans/CPrederef.pm [devel]lib +lib/Parrot/OpTrans/CSwitch.pm [devel]lib +lib/Parrot/OpTrans/Compiled.pm [devel]lib +lib/Parrot/Ops2c/Auxiliary.pm [devel]lib +lib/Parrot/Ops2c/Utils.pm [devel]lib +lib/Parrot/Ops2pm.pm [devel]lib +lib/Parrot/Ops2pm/Auxiliary.pm [devel]lib +lib/Parrot/Ops2pm/Base.pm [devel]lib +lib/Parrot/OpsFile.pm [devel]lib +lib/Parrot/OpsRenumber.pm [devel]lib +lib/Parrot/Pmc2c/Attribute.pm [devel]lib +lib/Parrot/Pmc2c/ComposedMethod.pm [devel]lib +lib/Parrot/Pmc2c/Dumper.pm [devel]lib +lib/Parrot/Pmc2c/Emitter.pm [devel]lib +lib/Parrot/Pmc2c/Library.pm [devel]lib +lib/Parrot/Pmc2c/MULTI.pm [devel]lib +lib/Parrot/Pmc2c/Method.pm [devel]lib +lib/Parrot/Pmc2c/MethodEmitter.pm [devel]lib +lib/Parrot/Pmc2c/Object.pm [devel]lib +lib/Parrot/Pmc2c/PCCMETHOD.pm [devel]lib +lib/Parrot/Pmc2c/PMC.pm [devel]lib +lib/Parrot/Pmc2c/PMC/Null.pm [devel]lib +lib/Parrot/Pmc2c/PMC/Object.pm [devel]lib +lib/Parrot/Pmc2c/PMC/ParrotClass.pm [devel]lib +lib/Parrot/Pmc2c/PMC/PrintTree.pm [devel]lib +lib/Parrot/Pmc2c/PMC/RO.pm [devel]lib +lib/Parrot/Pmc2c/PMC/Ref.pm [devel]lib +lib/Parrot/Pmc2c/PMC/SharedRef.pm [devel]lib +lib/Parrot/Pmc2c/PMC/default.pm [devel]lib +lib/Parrot/Pmc2c/PMCEmitter.pm [devel]lib +lib/Parrot/Pmc2c/Parser.pm [devel]lib +lib/Parrot/Pmc2c/Pmc2cMain.pm [devel]lib +lib/Parrot/Pmc2c/UtilFunctions.pm [devel]lib +lib/Parrot/Pmc2c/VTable.pm [devel]lib +lib/Parrot/Revision.pm [devel]lib +lib/Parrot/SearchOps.pm [devel]lib +lib/Parrot/Test.pm [devel]lib +lib/Parrot/Test/Cardinal.pm [devel]lib +lib/Parrot/Test/Harness.pm [devel]lib +lib/Parrot/Test/PGE.pm [devel]lib +lib/Parrot/Test/PIR_PGE.pm [devel]lib +lib/Parrot/Test/Perl6.pm [devel]lib +lib/Parrot/Test/Pod.pm [devel]lib +lib/Parrot/Test/Pod/Utils.pm [devel]lib +lib/Parrot/Test/Util.pm [devel]lib +lib/Parrot/Test/Util/Runloop.pm [devel]lib +lib/Parrot/Vtable.pm [devel]lib +lib/Perl/Critic/Policy/CodeLayout/ProhibitDuplicateCoda.pm [] +lib/Perl/Critic/Policy/CodeLayout/ProhibitTrailingWhitespace.pm [] +lib/Perl/Critic/Policy/CodeLayout/UseParrotCoda.pm [] +lib/Perl/Critic/Policy/TestingAndDebugging/MisplacedShebang.pm [] +lib/Perl/Critic/Policy/TestingAndDebugging/ProhibitShebangWarningsArg.pm [] +lib/Perl/Critic/Policy/TestingAndDebugging/RequirePortableShebang.pm [] +lib/Pod/Escapes.pm [] +lib/Pod/Simple.pm [] +lib/Pod/Simple/BlackBox.pm [] +lib/Pod/Simple/Checker.pm [] +lib/Pod/Simple/Debug.pm [] +lib/Pod/Simple/DumpAsText.pm [] +lib/Pod/Simple/DumpAsXML.pm [] +lib/Pod/Simple/HTML.pm [] +lib/Pod/Simple/HTMLBatch.pm [] +lib/Pod/Simple/HTMLLegacy.pm [] +lib/Pod/Simple/LinkSection.pm [] +lib/Pod/Simple/Methody.pm [] +lib/Pod/Simple/Progress.pm [] +lib/Pod/Simple/PullParser.pm [] +lib/Pod/Simple/PullParserEndToken.pm [] +lib/Pod/Simple/PullParserStartToken.pm [] +lib/Pod/Simple/PullParserTextToken.pm [] +lib/Pod/Simple/PullParserToken.pm [] +lib/Pod/Simple/RTF.pm [] +lib/Pod/Simple/Search.pm [] +lib/Pod/Simple/SimpleTree.pm [] +lib/Pod/Simple/Text.pm [] +lib/Pod/Simple/TextContent.pm [] +lib/Pod/Simple/TiedOutFH.pm [] +lib/Pod/Simple/Transcode.pm [] +lib/Pod/Simple/TranscodeDumb.pm [] +lib/Pod/Simple/TranscodeSmart.pm [] +lib/Pod/Simple/XHTML.pm [] +lib/Pod/Simple/XMLOutStream.pm [] +parrot.spec [] +parrotbug [] +runtime/parrot/dynext/README []doc +runtime/parrot/include/README []doc +runtime/parrot/include/fp_equality.pasm [library] +runtime/parrot/include/hllmacros.pir [library] +runtime/parrot/include/sockets.pasm [library] +runtime/parrot/include/test_more.pir [library] +runtime/parrot/library/CGI/QueryHash.pir [library] +runtime/parrot/library/Config/JSON.pir [library] +runtime/parrot/library/Crow.pir [library] +runtime/parrot/library/Data/Dumper.pir [library] +runtime/parrot/library/Data/Dumper/Base.pir [library] +runtime/parrot/library/Data/Dumper/Default.pir [library] +runtime/parrot/library/Data/Replace.pir [library] +runtime/parrot/library/Digest/MD5.pir [library] +runtime/parrot/library/Getopt/Obj.pir [library] +runtime/parrot/library/HTTP/Daemon.pir [library] +runtime/parrot/library/Iter.pir [library] +runtime/parrot/library/JSON.pir [library] +runtime/parrot/library/MIME/Base64.pir [library] +runtime/parrot/library/Math/Rand.pir [library] +runtime/parrot/library/Math/Random/mt19937ar.pir [library] +runtime/parrot/library/NCI/call_toolkit_init.pir [library] +runtime/parrot/library/OpenGL.pir [library] +runtime/parrot/library/P6object.pir [library] +runtime/parrot/library/PCT/README []doc +runtime/parrot/library/PGE/Dumper.pir [library] +runtime/parrot/library/PGE/Glob.pir [library] +runtime/parrot/library/PGE/Hs.pir [library] +runtime/parrot/library/PGE/Perl6Grammar.pir [library] +runtime/parrot/library/PGE/Text.pir [library] +runtime/parrot/library/PGE/Util.pir [library] +runtime/parrot/library/Parrot/Coroutine.pir [library] +runtime/parrot/library/Parrot/Exception.pir [library] +runtime/parrot/library/Pg.pir [library] +runtime/parrot/library/Protoobject.pir [library] +runtime/parrot/library/Range.pir [library] +runtime/parrot/library/SDL.pir [library] +runtime/parrot/library/SDL/App.pir [library] +runtime/parrot/library/SDL/Button.pir [library] +runtime/parrot/library/SDL/Color.pir [library] +runtime/parrot/library/SDL/Constants.pir [library] +runtime/parrot/library/SDL/Event.pir [library] +runtime/parrot/library/SDL/EventHandler.pir [library] +runtime/parrot/library/SDL/Font.pir [library] +runtime/parrot/library/SDL/Image.pir [library] +runtime/parrot/library/SDL/LCD.pir [library] +runtime/parrot/library/SDL/LCD.png [library] +runtime/parrot/library/SDL/Rect.pir [library] +runtime/parrot/library/SDL/Sprite.pir [library] +runtime/parrot/library/SDL/StopWatch.pir [library] +runtime/parrot/library/SDL/Surface.pir [library] +runtime/parrot/library/Stream/Base.pir [library] +runtime/parrot/library/Stream/Combiner.pir [library] +runtime/parrot/library/Stream/Coroutine.pir [library] +runtime/parrot/library/Stream/Filter.pir [library] +runtime/parrot/library/Stream/Lines.pir [library] +runtime/parrot/library/Stream/ParrotIO.pir [library] +runtime/parrot/library/Stream/Replay.pir [library] +runtime/parrot/library/Stream/Sub.pir [library] +runtime/parrot/library/Stream/Writer.pir [library] +runtime/parrot/library/String/Utils.pir [library] +runtime/parrot/library/Tcl/Glob.pir [library] +runtime/parrot/library/TclLibrary.pir [library] +runtime/parrot/library/Test/Builder.pir [library] +runtime/parrot/library/Test/Builder/Output.pir [library] +runtime/parrot/library/Test/Builder/Test.pir [library] +runtime/parrot/library/Test/Builder/TestPlan.pir [library] +runtime/parrot/library/Test/Builder/Tester.pir [library] +runtime/parrot/library/Test/Class.pir [library] +runtime/parrot/library/Test/More.pir [library] +runtime/parrot/library/YAML/Dumper.pir [library] +runtime/parrot/library/YAML/Dumper/Base.pir [library] +runtime/parrot/library/YAML/Dumper/Default.pir [library] +runtime/parrot/library/YAML/Parser/Syck.pir [library] +runtime/parrot/library/dumper.pir [library] +runtime/parrot/library/libpcre.pir [library] +runtime/parrot/library/ncurses.declarations [library] +runtime/parrot/library/ncurses.pasm [library] +runtime/parrot/library/ncurses.pir [library] +runtime/parrot/library/parrotlib.pir [library] +runtime/parrot/library/pcore.pir [library] +runtime/parrot/library/pcre.pir [library] +runtime/parrot/library/postgres.declarations [library] +runtime/parrot/library/postgres.pasm [library] +runtime/parrot/library/postgres.pir [library] +runtime/parrot/library/random_lib.pir [library] +runtime/parrot/library/tcpstream.pir [library] +runtime/parrot/library/uuid.pir [library] +runtime/parrot/library/yaml_dumper.pir [library] +src/atomic/gcc_x86.c [] +src/atomic/sparc_v9.s [] +src/byteorder.c [] +src/call/ops.c [] +src/call/pcc.c [] +src/datatypes.c [] +src/debug.c [] +src/dynext.c [] +src/dynoplibs/README []doc +src/dynoplibs/dan.ops [] +src/dynoplibs/myops.ops [] +src/dynpmc/README.pod []doc +src/dynpmc/dynlexpad.pmc [devel]src +src/dynpmc/ext.pir [] +src/dynpmc/foo.pmc [devel]src +src/dynpmc/gdbmhash.pmc [devel]src +src/dynpmc/main.pasm [] +src/dynpmc/pair.pmc [devel]src +src/dynpmc/rational.pmc [devel]src +src/dynpmc/rotest.pmc [devel]src +src/dynpmc/subproxy.pmc [devel]src +src/embed.c [] +src/events.c [] +src/exceptions.c [] +src/exec.c [] +src/exec_save.c [] +src/exec_save.h [] +src/exec_start.c [] +src/exit.c [] +src/extend.c [] +src/gc/api.c [] +src/gc/gc_malloc.c [] +src/gc/gc_private.h [] +src/gc/generational_ms.c [] +src/gc/incremental_ms.c [] +src/gc/mark_sweep.c [] +src/gc/memory.c [] +src/gc/pools.c [] +src/gc/register.c [] +src/gc/res_lea.c [] +src/gc/resources.c [] +src/gc/system.c [] +src/global.c [] +src/global_setup.c [] +src/hash.c [] +src/hll.c [] +src/inter_cb.c [] +src/inter_create.c [] +src/inter_misc.c [] +src/interp_guts.h [] +src/interpreter.c [] +src/io/api.c [] +src/io/buffer.c [] +src/io/core.c [] +src/io/filehandle.c [] +src/io/io_private.h [] +src/io/io_string.c [] +src/io/portable.c [] +src/io/socket_api.c [] +src/io/socket_unix.c [] +src/io/socket_win32.c [] +src/io/unix.c [] +src/io/utf8.c [] +src/io/win32.c [] +src/jit.c [] +src/jit.h [] +src/jit/alpha/core.jit [] +src/jit/alpha/jit_defs.c [] +src/jit/alpha/jit_emit.h [] +src/jit/amd64/core.jit [] +src/jit/amd64/jit_defs.c [] +src/jit/amd64/jit_emit.h [] +src/jit/arm/core.jit [] +src/jit/arm/exec_dep.c [] +src/jit/arm/exec_dep.h [] +src/jit/arm/jit_defs.c [] +src/jit/arm/jit_emit.h [] +src/jit/hppa/core.jit [] +src/jit/hppa/jit_defs.c [] +src/jit/hppa/jit_emit.h [] +src/jit/i386/core.jit [] +src/jit/i386/exec_dep.c [] +src/jit/i386/exec_dep.h [] +src/jit/i386/jit_defs.c [] +src/jit/i386/jit_emit.h [] +src/jit/ia64/core.jit [] +src/jit/ia64/jit_defs.c [] +src/jit/ia64/jit_emit.h [] +src/jit/mips/core.jit [] +src/jit/mips/jit_defs.c [] +src/jit/mips/jit_emit.h [] +src/jit/ppc/asm.s [] +src/jit/ppc/core.jit [] +src/jit/ppc/exec_dep.c [] +src/jit/ppc/exec_dep.h [] +src/jit/ppc/jit_defs.c [] +src/jit/ppc/jit_emit.h [] +src/jit/ppc/ppc-linux.s [] +src/jit/skeleton/jit_defs.c [] +src/jit/skeleton/jit_emit.h [] +src/jit/sun4/core.jit [] +src/jit/sun4/jit_defs.c [] +src/jit/sun4/jit_emit.h [] +src/jit_debug.c [] +src/jit_debug_xcoff.c [] +src/key.c [] +src/libnci_test.def [] +src/library.c [] +src/list.c [] +src/longopt.c [] +src/main.c [] +src/malloc-trace.c [] +src/malloc.c [] +src/misc.c [] +src/multidispatch.c [] +src/nci_test.c [] +src/oo.c [] +src/ops/bit.ops [] +src/ops/cmp.ops [] +src/ops/core.ops [] +src/ops/debug.ops [] +src/ops/experimental.ops [] +src/ops/io.ops [] +src/ops/math.ops [] +src/ops/object.ops [] +src/ops/obscure.ops [] +src/ops/ops.num [devel]src +src/ops/ops.skip [] +src/ops/pic.ops [] +src/ops/pmc.ops [] +src/ops/set.ops [] +src/ops/string.ops [] +src/ops/sys.ops [] +src/ops/var.ops [] +src/packdump.c [] +src/packfile.c [] +src/packfile/pf_items.c [] +src/packout.c [] +src/parrot_debugger.c [] +src/pbc_disassemble.c [] +src/pbc_dump.c [] +src/pbc_info.c [] +src/pbc_merge.c [] +src/pic.c [] +src/pic_jit.c [] +src/pmc.c [] +src/pmc/addrregistry.pmc [devel]src +src/pmc/array.pmc [devel]src +src/pmc/bigint.pmc [devel]src +src/pmc/bignum.pmc [devel]src +src/pmc/boolean.pmc [devel]src +src/pmc/bound_nci.pmc [devel]src +src/pmc/callsignature.pmc [devel]src +src/pmc/capture.pmc [devel]src +src/pmc/class.pmc [devel]src +src/pmc/codestring.pmc [devel]src +src/pmc/complex.pmc [devel]src +src/pmc/continuation.pmc [devel]src +src/pmc/coroutine.pmc [devel]src +src/pmc/cpointer.pmc [devel]src +src/pmc/default.pmc [devel]src +src/pmc/env.pmc [devel]src +src/pmc/eval.pmc [devel]src +src/pmc/eventhandler.pmc [devel]src +src/pmc/exception.pmc [devel]src +src/pmc/exceptionhandler.pmc [devel]src +src/pmc/exporter.pmc [devel]src +src/pmc/file.pmc [devel]src +src/pmc/filehandle.pmc [devel]src +src/pmc/fixedbooleanarray.pmc [devel]src +src/pmc/fixedfloatarray.pmc [devel]src +src/pmc/fixedintegerarray.pmc [devel]src +src/pmc/fixedpmcarray.pmc [devel]src +src/pmc/fixedstringarray.pmc [devel]src +src/pmc/float.pmc [devel]src +src/pmc/hash.pmc [devel]src +src/pmc/integer.pmc [devel]src +src/pmc/iterator.pmc [devel]src +src/pmc/key.pmc [devel]src +src/pmc/lexinfo.pmc [devel]src +src/pmc/lexpad.pmc [devel]src +src/pmc/managedstruct.pmc [devel]src +src/pmc/multisub.pmc [devel]src +src/pmc/namespace.pmc [devel]src +src/pmc/nci.pmc [devel]src +src/pmc/null.pmc [devel]src +src/pmc/object.pmc [devel]src +src/pmc/orderedhash.pmc [devel]src +src/pmc/os.pmc [devel]src +src/pmc/packfile.pmc [devel]src +src/pmc/packfileannotation.pmc [devel]src +src/pmc/packfileannotationkeys.pmc [devel]src +src/pmc/packfileannotations.pmc [devel]src +src/pmc/packfileconstanttable.pmc [devel]src +src/pmc/packfiledirectory.pmc [devel]src +src/pmc/packfilefixupentry.pmc [devel]src +src/pmc/packfilefixuptable.pmc [devel]src +src/pmc/packfilerawsegment.pmc [devel]src +src/pmc/packfilesegment.pmc [devel]src +src/pmc/parrotinterpreter.pmc [devel]src +src/pmc/parrotlibrary.pmc [devel]src +src/pmc/parrotrunningthread.pmc [devel]src +src/pmc/parrotthread.pmc [devel]src +src/pmc/pccmethod_test.pmc [devel]src +src/pmc/pmc.num [] +src/pmc/pmcproxy.pmc [devel]src +src/pmc/pointer.pmc [devel]src +src/pmc/random.pmc [devel]src +src/pmc/ref.pmc [devel]src +src/pmc/resizablebooleanarray.pmc [devel]src +src/pmc/resizablefloatarray.pmc [devel]src +src/pmc/resizableintegerarray.pmc [devel]src +src/pmc/resizablepmcarray.pmc [devel]src +src/pmc/resizablestringarray.pmc [devel]src +src/pmc/retcontinuation.pmc [devel]src +src/pmc/role.pmc [devel]src +src/pmc/scalar.pmc [devel]src +src/pmc/scheduler.pmc [devel]src +src/pmc/schedulermessage.pmc [devel]src +src/pmc/sharedref.pmc [devel]src +src/pmc/slice.pmc [devel]src +src/pmc/string.pmc [devel]src +src/pmc/stringhandle.pmc [devel]src +src/pmc/sub.pmc [devel]src +src/pmc/task.pmc [devel]src +src/pmc/timer.pmc [devel]src +src/pmc/undef.pmc [devel]src +src/pmc/unmanagedstruct.pmc [devel]src +src/pmc_freeze.c [] +src/runops_cores.c [] +src/runops_cores.h [] +src/scheduler.c [] +src/spf_render.c [] +src/spf_vtable.c [] +src/stacks.c [] +src/string/api.c [] +src/string/charset.c [] +src/string/charset/ascii.c [] +src/string/charset/ascii.h [] +src/string/charset/binary.c [] +src/string/charset/binary.h [] +src/string/charset/iso-8859-1.c [] +src/string/charset/iso-8859-1.h [] +src/string/charset/tables.c [] +src/string/charset/tables.h [] +src/string/charset/unicode.c [] +src/string/charset/unicode.h [] +src/string/encoding.c [] +src/string/encoding/fixed_8.c [] +src/string/encoding/fixed_8.h [] +src/string/encoding/ucs2.c [] +src/string/encoding/ucs2.h [] +src/string/encoding/utf16.c [] +src/string/encoding/utf16.h [] +src/string/encoding/utf8.c [] +src/string/encoding/utf8.h [] +src/string/primitives.c [] +src/string/unicode.h [] +src/sub.c [] +src/thread.c [] +src/trace.c [] +src/trace.h [] +src/tsq.c [] +src/utils.c [] +src/vtable.tbl [devel]src +src/vtables.c [] +src/warnings.c [] +t/README []doc +t/TESTS_STATUS.pod [test] +t/benchmark/benchmarks.t [test] +t/codingstd/c_arg_assert.t [test] +t/codingstd/c_code_coda.t [test] +t/codingstd/c_cppcomments.t [test] +t/codingstd/c_function_docs.t [test] +t/codingstd/c_header_guards.t [test] +t/codingstd/c_indent.t [test] +t/codingstd/c_macro_args.t [test] +t/codingstd/c_operator.t [test] +t/codingstd/c_parens.t [test] +t/codingstd/c_returns.t [test] +t/codingstd/c_struct.t [test] +t/codingstd/check_isxxx.t [test] +t/codingstd/check_toxxx.t [test] +t/codingstd/copyright.t [test] +t/codingstd/cuddled_else.t [test] +t/codingstd/filenames.t [test] +t/codingstd/fixme.t [test] +t/codingstd/gmt_utc.t [test] +t/codingstd/linelength.t [test] +t/codingstd/make_code_coda.t [test] +t/codingstd/opcode-doc.t [test] +t/codingstd/pbc_compat.t [test] +t/codingstd/pccmethod_deps.t [test] +t/codingstd/pdd_format.t [test] +t/codingstd/perlcritic.t [test] +t/codingstd/pir_code_coda.t [test] +t/codingstd/pod_description.t [test] +t/codingstd/pod_syntax.t [test] +t/codingstd/pod_todo.t [test] +t/codingstd/svn_id.t [test] +t/codingstd/tabs.t [test] +t/codingstd/trailing_space.t [test] +t/compilers/imcc/imcpasm/cfg.t [test] +t/compilers/imcc/imcpasm/opt0.t [test] +t/compilers/imcc/imcpasm/opt1.t [test] +t/compilers/imcc/imcpasm/opt2.t [test] +t/compilers/imcc/imcpasm/optc.t [test] +t/compilers/imcc/imcpasm/pcc.t [test] +t/compilers/imcc/imcpasm/sub.t [test] +t/compilers/imcc/reg/alloc.t [test] +t/compilers/imcc/reg/spill.t [test] +t/compilers/imcc/syn/bsr.t [test] +t/compilers/imcc/syn/clash.t [test] +t/compilers/imcc/syn/const.t [test] +t/compilers/imcc/syn/errors.t [test] +t/compilers/imcc/syn/eval.t [test] +t/compilers/imcc/syn/file.t [test] +t/compilers/imcc/syn/hll.t [test] +t/compilers/imcc/syn/keyed.t [test] +t/compilers/imcc/syn/labels.t [test] +t/compilers/imcc/syn/macro.t [test] +t/compilers/imcc/syn/objects.t [test] +t/compilers/imcc/syn/op.t [test] +t/compilers/imcc/syn/pasm.t [test] +t/compilers/imcc/syn/pcc.t [test] +t/compilers/imcc/syn/pod.t [test] +t/compilers/imcc/syn/regressions.t [test] +t/compilers/imcc/syn/scope.t [test] +t/compilers/imcc/syn/subflags.t [test] +t/compilers/imcc/syn/symbols.t [test] +t/compilers/imcc/syn/tail.t [test] +t/compilers/imcc/syn/veracity.t [test] +t/compilers/json/from_parrot.t [test] +t/compilers/json/to_parrot.t [test] +t/compilers/pct/complete_workflow.t [test] +t/compilers/pct/past.t [test] +t/compilers/pct/pct_hllcompiler.t [test] +t/compilers/pct/post.t [test] +t/compilers/pct/script.source [test] +t/compilers/pge/00-basic.t [test] +t/compilers/pge/02-match.t [test] +t/compilers/pge/03-optable.t [test] +t/compilers/pge/04-compile.t [test] +t/compilers/pge/06-grammar.t [test] +t/compilers/pge/p5regex/p5rx.t [test] +t/compilers/pge/p5regex/re_tests [test] +t/compilers/pge/perl6regex/01-regex.t [test] +t/compilers/pge/perl6regex/context.t [test] +t/compilers/pge/perl6regex/rx_backtrack [test] +t/compilers/pge/perl6regex/rx_captures [test] +t/compilers/pge/perl6regex/rx_charclass [test] +t/compilers/pge/perl6regex/rx_goal [test] +t/compilers/pge/perl6regex/rx_lookarounds [test] +t/compilers/pge/perl6regex/rx_metachars [test] +t/compilers/pge/perl6regex/rx_modifiers [test] +t/compilers/pge/perl6regex/rx_quantifiers [test] +t/compilers/pge/perl6regex/rx_subrules [test] +t/compilers/pge/perl6regex/rx_syntax [test] +t/compilers/pge/pge-hs.t [test] +t/compilers/pge/pge.t [test] +t/compilers/pge/pge_examples.t [test] +t/compilers/pge/pge_globs.t [test] +t/compilers/pge/pge_text.t [test] +t/compilers/pge/pge_util.t [test] +t/compilers/tge/NoneGrammar.tg [test] +t/compilers/tge/basic.t [test] +t/compilers/tge/grammar.t [test] +t/compilers/tge/harness [test] +t/compilers/tge/parser.t [test] +t/configure/001-options.t [test] +t/configure/002-messages.t [test] +t/configure/003-steplist.t [test] +t/configure/004-configure.t [test] +t/configure/005-run_one_step.t [test] +t/configure/006-bad_step.t [test] +t/configure/007-verbose_two.t [test] +t/configure/008-file_based_configuration.t [test] +t/configure/011-no_description.t [test] +t/configure/012-verbose.t [test] +t/configure/013-die.t [test] +t/configure/015-no_return.t [test] +t/configure/016-no_return_but_result.t [test] +t/configure/017-revision_from_cache.t [test] +t/configure/018-revision_to_cache.t [test] +t/configure/019-version.t [test] +t/configure/020-version.t [test] +t/configure/021-version.t [test] +t/configure/022-version.t [test] +t/configure/023-version.t [test] +t/configure/024-version.t [test] +t/configure/025-options_test.t [test] +t/configure/026-options_test.t [test] +t/configure/027-option_or_data.t [test] +t/configure/028-option_or_data.t [test] +t/configure/029-option_or_data.t [test] +t/configure/030-option_or_data.t [test] +t/configure/031-base.t [test] +t/configure/032-data.t [test] +t/configure/033-step.t [test] +t/configure/034-step.t [test] +t/configure/035-step.t [test] +t/configure/037-run_single_step.t [test] +t/configure/038-run_single_step.t [test] +t/configure/039-run_single_step.t [test] +t/configure/041-return_undef.t [test] +t/configure/042-list_of_steps.t [test] +t/configure/043-verbose_step.t [test] +t/configure/044-slurp_file.t [test] +t/configure/045-generated_file_header.t [test] +t/configure/046-inter.t [test] +t/configure/047-inter.t [test] +t/configure/048-return_result_undef.t [test] +t/configure/049-options_test.t [test] +t/configure/050-fatal.t [test] +t/configure/051-fatal_step.t [test] +t/configure/059-silent.t [test] +t/configure/061-revision_from_cache.t [test] +t/configure/testlib/Make_VERSION_File.pm [test] +t/configure/testlib/Tie/Filehandle/Preempt/Stdin.pm [test] +t/configure/testlib/adefectivefoobar [test] +t/configure/testlib/bdefectivefoobar [test] +t/configure/testlib/cdefectivefoobar [test] +t/configure/testlib/ddefectivefoobar [test] +t/configure/testlib/init/alpha.pm [test] +t/configure/testlib/init/beta.pm [test] +t/configure/testlib/init/delta.pm [test] +t/configure/testlib/init/epsilon.pm [test] +t/configure/testlib/init/foobar.pm [test] +t/configure/testlib/init/gamma.pm [test] +t/configure/testlib/init/iota.pm [test] +t/configure/testlib/init/kappa.pm [test] +t/configure/testlib/init/lambda.pm [test] +t/configure/testlib/init/mu.pm [test] +t/configure/testlib/init/zeta.pm [test] +t/configure/testlib/inter/theta.pm [test] +t/configure/testlib/verbosefoobar [test] +t/distro/file_metadata.t [test] +t/distro/manifest.t [test] +t/distro/meta_yml.t [test] +t/distro/test_file_coverage.t [test] +t/dynoplibs/dan.t [test] +t/dynoplibs/myops.t [test] +t/dynpmc/dynlexpad.t [test] +t/dynpmc/foo.t [test] +t/dynpmc/gdbmhash.t [test] +t/dynpmc/pair.t [test] +t/dynpmc/rational.t [test] +t/dynpmc/rotest.t [test] +t/dynpmc/subclass_with_pir_method.t [test] +t/dynpmc/subproxy.t [test] +t/examples/catchall.t [test] +t/examples/japh.t [test] +t/examples/library.t [test] +t/examples/namespace.t [test] +t/examples/pasm.t [test] +t/examples/past.t [test] +t/examples/pir.t [test] +t/examples/shootout.t [test] +t/examples/streams.t [test] +t/examples/subs.t [test] +t/examples/tutorial.t [test] +t/harness [test] +t/library/cgi_query_hash.t [test] +t/library/coroutine.t [test] +t/library/dumper.t [test] +t/library/getopt_obj.t [test] +t/library/hllmacros.t [test] +t/library/iter.t [test] +t/library/md5.t [test] +t/library/mime_base64.t [test] +t/library/mt19937ar.t [test] +t/library/mt19937ar.txt [test] +t/library/p6object.t [test] +t/library/parrotlib.t [test] +t/library/pcre.t [test] +t/library/perlhist.txt [test] +t/library/pg.t [test] +t/library/protoobject.t [test] +t/library/rand.t [test] +t/library/range.t [test] +t/library/streams.t [test] +t/library/string_utils.t [test] +t/library/tcl_glob.t [test] +t/library/tcl_lib.t [test] +t/library/test_builder_tester.t [test] +t/library/test_class.t [test] +t/library/test_more.t [test] +t/library/uuid.t [test] +t/library/yaml_dumper.t [test] +t/library/yaml_parser_syck.t [test] +t/manifest/01-basic.t [test] +t/manifest/02-regenerate_file.t [test] +t/manifest/03-regenerate_skip.t [test] +t/manifest/04-alt_file.t [test] +t/manifest/05-alt_skip.t [test] +t/manifest/README []doc +t/native_pbc/header.t [test] +t/native_pbc/integer.t [test] +t/native_pbc/integer_1.pbc [test] +t/native_pbc/integer_2.pbc [test] +t/native_pbc/integer_3.pbc [test] +t/native_pbc/integer_4.pbc [test] +t/native_pbc/integer_5.pbc [test] +t/native_pbc/integer_6.pbc [test] +t/native_pbc/number.t [test] +t/native_pbc/number_1.pbc [test] +t/native_pbc/number_2.pbc [test] +t/native_pbc/number_3.pbc [test] +t/native_pbc/number_4.pbc [test] +t/native_pbc/number_5.pbc [test] +t/native_pbc/number_6.pbc [test] +t/native_pbc/string.t [test] +t/native_pbc/string_1.pbc [test] +t/native_pbc/string_2.pbc [test] +t/native_pbc/string_3.pbc [test] +t/native_pbc/string_4.pbc [test] +t/native_pbc/string_6.pbc [test] +t/oo/attributes.t [test] +t/oo/composition.t [test] +t/oo/inheritance.t [test] +t/oo/isa.t [test] +t/oo/metamodel.t [test] +t/oo/methods.t [test] +t/oo/mro-c3.t [test] +t/oo/names.t [test] +t/oo/new.t [test] +t/oo/ops.t [test] +t/oo/proxy.t [test] +t/oo/subclass.t [test] +t/oo/vtableoverride.t [test] +t/op/00ff-dos.t [test] +t/op/00ff-unix.t [test] +t/op/01-parse_ops.t [test] +t/op/64bit.t [test] +t/op/annotate.t [test] +t/op/arithmetics.t [test] +t/op/basic.t [test] +t/op/bitwise.t [test] +t/op/box.t [test] +t/op/calling.t [test] +t/op/cc_params.t [test] +t/op/cc_state.t [test] +t/op/cmp-nonbranch.t [test] +t/op/comp.t [test] +t/op/copy.t [test] +t/op/debuginfo.t [test] +t/op/exceptions.t [test] +t/op/gc.t [test] +t/op/globals.t [test] +t/op/hacks.t [test] +t/op/ifunless.t [test] +t/op/integer.t [test] +t/op/interp.t [test] +t/op/io.t [test] +t/op/jit.t [test] +t/op/jitn.t [test] +t/op/lexicals.t [test] +t/op/literal.t [test] +t/op/load_bytecode.t [test] +t/op/number.t [test] +t/op/pushaction.t [test] +t/op/say.t [test] +t/op/spawnw.t [test] +t/op/sprintf.t [test] +t/op/sprintf2.t [test] +t/op/sprintf_tests [test] +t/op/string.t [test] +t/op/string_cclass.t [test] +t/op/string_cs.t [test] +t/op/string_mem.t [test] +t/op/stringu.t [test] +t/op/sysinfo.t [test] +t/op/time.t [test] +t/op/trans.t [test] +t/perl/Parrot_Distribution.t [test] +t/perl/Parrot_Docs.t [test] +t/perl/Parrot_IO.t [test] +t/perl/Parrot_Test.t [test] +t/perl/README []doc +t/perl/testlib/answer.pir [test] +t/perl/testlib/hello [test] +t/perl/testlib/hello.pasm [test] +t/pharness/01-default_tests.t [test] +t/pharness/02-get_test_prog_args.t [test] +t/pharness/03-handle_long_options.t [test] +t/pharness/04-Usage.t [test] +t/pmc/addrregistry.t [test] +t/pmc/array.t [test] +t/pmc/bigint.t [test] +t/pmc/bignum.t [test] +t/pmc/boolean.t [test] +t/pmc/bound_nci.t [test] +t/pmc/callsignature.t [test] +t/pmc/capture.t [test] +t/pmc/class.t [test] +t/pmc/codestring.t [test] +t/pmc/complex.t [test] +t/pmc/config.t [test] +t/pmc/continuation.t [test] +t/pmc/coroutine.t [test] +t/pmc/cpointer.t [test] +t/pmc/default.t [test] +t/pmc/env.t [test] +t/pmc/eval.t [test] +t/pmc/eventhandler.t [test] +t/pmc/exception.t [test] +t/pmc/exceptionhandler.t [test] +t/pmc/exporter.t [test] +t/pmc/file.t [test] +t/pmc/filehandle.t [test] +t/pmc/fixedbooleanarray.t [test] +t/pmc/fixedfloatarray.t [test] +t/pmc/fixedintegerarray.t [test] +t/pmc/fixedpmcarray.t [test] +t/pmc/fixedstringarray.t [test] +t/pmc/float.t [test] +t/pmc/freeze.t [test] +t/pmc/globals.t [test] +t/pmc/hash.t [test] +t/pmc/integer.t [test] +t/pmc/io.t [test] +t/pmc/io_iterator.t [test] +t/pmc/io_status.t [test] +t/pmc/iterator.t [test] +t/pmc/key.t [test] +t/pmc/lexinfo.t [test] +t/pmc/lexpad.t [test] +t/pmc/managedstruct.t [test] +t/pmc/multidispatch.t [test] +t/pmc/multisub.t [test] +t/pmc/namespace.t [test] +t/pmc/nci.t [test] +t/pmc/null.t [test] +t/pmc/object-meths.t [test] +t/pmc/object-mro.t [test] +t/pmc/object.t [test] +t/pmc/objects.t [test] +t/pmc/orderedhash.t [test] +t/pmc/os.t [test] +t/pmc/packfile.t [test] +t/pmc/packfileconstanttable.t [test] +t/pmc/packfiledirectory.t [test] +t/pmc/packfilefixupentry.t [test] +t/pmc/packfilefixuptable.t [test] +t/pmc/packfilerawsegment.t [test] +t/pmc/packfilesegment.t [test] +t/pmc/parrotclass.t [test] +t/pmc/parrotinterpreter.t [test] +t/pmc/parrotio.t [test] +t/pmc/parrotlibrary.t [test] +t/pmc/parrotobject.t [test] +t/pmc/parrotrunningthread.t [test] +t/pmc/parrotthread.t [test] +t/pmc/pccmethod_test.t [test] +t/pmc/pmc.t [test] +t/pmc/pmcproxy.t [test] +t/pmc/pointer.t [test] +t/pmc/prop.t [test] +t/pmc/random.t [test] +t/pmc/ref.t [test] +t/pmc/resizablebooleanarray.t [test] +t/pmc/resizablefloatarray.t [test] +t/pmc/resizableintegerarray.t [test] +t/pmc/resizablepmcarray.t [test] +t/pmc/resizablestringarray.t [test] +t/pmc/retcontinuation.t [test] +t/pmc/ro.t [test] +t/pmc/role.t [test] +t/pmc/scalar.t [test] +t/pmc/scheduler.t [test] +t/pmc/schedulermessage.t [test] +t/pmc/sharedref.t [test] +t/pmc/signal.t [test] +t/pmc/slice.t [test] +t/pmc/string.t [test] +t/pmc/stringhandle.t [test] +t/pmc/sub.t [test] +t/pmc/sys.t [test] +t/pmc/task.t [test] +t/pmc/threads.t [test] +t/pmc/timer.t [test] +t/pmc/undef.t [test] +t/pmc/unmanagedstruct.t [test] +t/postconfigure/01-options.t [test] +t/postconfigure/02-data_get_PConfig.t [test] +t/postconfigure/05-trace.t [test] +t/postconfigure/06-data_get_PConfig_Temp.t [test] +t/run/README []doc +t/run/exit.t [test] +t/run/options.t [test] +t/src/README []doc +t/src/atomic.t [test] +t/src/basic.t [test] +t/src/embed.t [test] +t/src/exit.t [test] +t/src/extend.t [test] +t/src/warnings.t [test] +t/steps/auto_alignptrs-01.t [test] +t/steps/auto_alignptrs-02.t [test] +t/steps/auto_arch-01.t [test] +t/steps/auto_attributes-01.t [test] +t/steps/auto_backtrace-01.t [test] +t/steps/auto_byteorder-01.t [test] +t/steps/auto_cgoto-01.t [test] +t/steps/auto_cpu-01.t [test] +t/steps/auto_crypto-01.t [test] +t/steps/auto_ctags-01.t [test] +t/steps/auto_env-01.t [test] +t/steps/auto_fink-01.t [test] +t/steps/auto_format-01.t [test] +t/steps/auto_funcptr-01.t [test] +t/steps/auto_gc-01.t [test] +t/steps/auto_gcc-01.t [test] +t/steps/auto_gdbm-01.t [test] +t/steps/auto_gettext-01.t [test] +t/steps/auto_glibc-01.t [test] +t/steps/auto_gmp-01.t [test] +t/steps/auto_headers-01.t [test] +t/steps/auto_icu-01.t [test] +t/steps/auto_inline-01.t [test] +t/steps/auto_isreg-01.t [test] +t/steps/auto_jit-01.t [test] +t/steps/auto_macports-01.t [test] +t/steps/auto_macports-02.t [test] +t/steps/auto_memalign-01.t [test] +t/steps/auto_msvc-01.t [test] +t/steps/auto_neg_0-01.t [test] +t/steps/auto_opengl-01.t [test] +t/steps/auto_ops-01.t [test] +t/steps/auto_pcre-01.t [test] +t/steps/auto_perldoc-01.t [test] +t/steps/auto_pmc-01.t [test] +t/steps/auto_pod2man-01.t [test] +t/steps/auto_readline-01.t [test] +t/steps/auto_readline-02.t [test] +t/steps/auto_revision-01.t [test] +t/steps/auto_signal-01.t [test] +t/steps/auto_sizes-01.t [test] +t/steps/auto_snprintf-01.t [test] +t/steps/auto_socklen_t-01.t [test] +t/steps/auto_va_ptr-01.t [test] +t/steps/auto_warnings-01.t [test] +t/steps/gen_call_list-01.t [test] +t/steps/gen_config_h-01.t [test] +t/steps/gen_config_pm-01.t [test] +t/steps/gen_core_pmcs-01.t [test] +t/steps/gen_crypto-01.t [test] +t/steps/gen_languages-01.t [test] +t/steps/gen_makefiles-01.t [test] +t/steps/gen_opengl-01.t [test] +t/steps/gen_parrot_include-01.t [test] +t/steps/gen_platform-01.t [test] +t/steps/init_defaults-01.t [test] +t/steps/init_headers-01.t [test] +t/steps/init_hints-01.t [test] +t/steps/init_install-01.t [test] +t/steps/init_manifest-01.t [test] +t/steps/init_optimize-01.t [test] +t/steps/inter_charset-01.t [test] +t/steps/inter_encoding-01.t [test] +t/steps/inter_lex-01.t [test] +t/steps/inter_lex-02.t [test] +t/steps/inter_lex-03.t [test] +t/steps/inter_libparrot-01.t [test] +t/steps/inter_make-01.t [test] +t/steps/inter_progs-01.t [test] +t/steps/inter_progs-02.t [test] +t/steps/inter_progs-03.t [test] +t/steps/inter_progs-04.t [test] +t/steps/inter_shlibs-01.t [test] +t/steps/inter_types-01.t [test] +t/steps/inter_yacc-01.t [test] +t/steps/inter_yacc-02.t [test] +t/stress/gc.t [test] +t/tools/dev/pmctree.t [test] +t/tools/dev/searchops.t [test] +t/tools/dev/searchops/samples.pm [test] +t/tools/dump_pbc.t [test] +t/tools/install/01-create_directories.t [test] +t/tools/install/02-install_files.t [test] +t/tools/install/03-lines_to_files.t [test] +t/tools/ops2cutils/01-new.t [test] +t/tools/ops2cutils/02-usage.t [test] +t/tools/ops2cutils/03-print_c_header_file.t [test] +t/tools/ops2cutils/04-print_c_source_top.t [test] +t/tools/ops2cutils/05-print_c_source_bottom.t [test] +t/tools/ops2cutils/06-dynamic.t [test] +t/tools/ops2cutils/07-make_incdir.t [test] +t/tools/ops2cutils/08-nolines.t [test] +t/tools/ops2cutils/09-dynamic_nolines.t [test] +t/tools/ops2cutils/10-print_c_source_file.t [test] +t/tools/ops2cutils/testlib/GenerateCore.pm [test] +t/tools/ops2pm/00-qualify.t [test] +t/tools/ops2pm/01-ops2pm.t [test] +t/tools/ops2pm/02-usage.t [test] +t/tools/ops2pm/03-new.t [test] +t/tools/ops2pm/04-prepare_ops.t [test] +t/tools/ops2pm/05-renum_op_map_file.t [test] +t/tools/ops2pm/06-load_op_map_files.t [test] +t/tools/ops2pm/07-no_ops_skip.t [test] +t/tools/ops2pm/08-sort_ops.t [test] +t/tools/ops2pm/09-prepare_real_ops.t [test] +t/tools/ops2pm/10-print_module.t [test] +t/tools/ops2pm/11-print_h.t [test] +t/tools/ops2pm/samples/bit_ops.original [test] +t/tools/ops2pm/samples/bit_ops.second [test] +t/tools/ops2pm/samples/core_ops.original [test] +t/tools/ops2pm/samples/ops_num.original [test] +t/tools/ops2pm/samples/pic_ops.original [test] +t/tools/parrot_debugger.t [test] +t/tools/pbc_merge.t [test] +t/tools/pmc2c.t [test] +t/tools/pmc2cutils/00-qualify.t [test] +t/tools/pmc2cutils/01-pmc2cutils.t [test] +t/tools/pmc2cutils/02-find_file.t [test] +t/tools/pmc2cutils/03-dump_vtable.t [test] +t/tools/pmc2cutils/04-dump_pmc.t [test] +t/tools/pmc2cutils/05-gen_c.t [test] +t/tools/pmc2cutils/07-open_file.t [test] +t/tools/pmc2cutils/08-pmc-pm.t [test] +t/tools/pmc2cutils/README []doc +tools/build/addopstags.pl [] +tools/build/c2str.pl [] +tools/build/fixup_gen_file.pl [] +tools/build/headerizer.pl [] +tools/build/jit2c.pl [] +tools/build/nativecall.pl [] +tools/build/ops2c.pl [devel] +tools/build/ops2pm.pl [] +tools/build/parrot_config_c.pl [] +tools/build/pbcversion_h.pl [] +tools/build/pmc2c.pl [devel] +tools/build/vtable_extend.pl [] +tools/build/vtable_h.pl [] +tools/dev/.gdbinit [] +tools/dev/as2c.pl [] +tools/dev/bench_op.pir [] +tools/dev/cc_flags.pl [] +tools/dev/debian_docs.sh [] +tools/dev/gen_charset_tables.pl [] +tools/dev/gen_class.pl [] +tools/dev/gen_makefile.pl [devel] +tools/dev/install_dev_files.pl [] +tools/dev/install_files.pl [] +tools/dev/lib_deps.pl [] +tools/dev/list_unjitted.pl [] +tools/dev/manicheck.pl [] +tools/dev/mk_gitignore.pl [] +tools/dev/mk_inno.pl [] +tools/dev/mk_inno_language.pl [] +tools/dev/mk_language_shell.pl [] +tools/dev/mk_manifest_and_skip.pl [] +tools/dev/mk_native_pbc [] +tools/dev/mk_rpm_manifests.pl [] +tools/dev/nci_test_gen.pl [] +tools/dev/nm.pl [] +tools/dev/nopaste.pl [] +tools/dev/ops_not_tested.pl [] +tools/dev/opsrenumber.pl [] +tools/dev/parrot.supp [] +tools/dev/parrot_8.supp [] +tools/dev/parrot_api.pl [] +tools/dev/parrot_coverage.pl [] +tools/dev/parrotbench.pl [] +tools/dev/pbc_header.pl [] +tools/dev/pbc_to_exe.pir [devel] +tools/dev/pmcrenumber.pl [] +tools/dev/pmctree.pl [] +tools/dev/reconfigure.pl [devel] +tools/dev/search-ops.pl [] +tools/dev/svnclobber.pl [] +tools/dev/symlink.pl [] +tools/dev/testyamd [] +tools/dev/vgp [] +tools/dev/vms-patch [] +tools/dev/vtablize.pl [] +tools/docs/func_boilerplate.pl [] +tools/docs/mk_chm.pl [] +tools/docs/ops_summary.pl [] +tools/docs/write_docs.pl [] +tools/install/smoke.pl [] +tools/install/smoke_languages.pl [] +tools/util/crow.pir [] +tools/util/dump_pbc.pl [] +tools/util/gen_release_info.pl [] +tools/util/ncidef2pasm.pl [] +tools/util/parrot-config.pir [] +tools/util/perlcritic-cage.conf [] +tools/util/perlcritic.conf [] +tools/util/perltidy.conf [] +tools/util/pgegrep [] +tools/util/release.json [] +tools/util/templates.json [] +tools/util/update_copyright.pl [] +xconf/samples/testfoobar [] +xconf/samples/yourfoobar [] +# Local variables: +# mode: text +# buffer-read-only: t +# End: Property changes on: t/tools/install/testlib/MANIFEST ___________________________________________________________________ Name: svn:keywords + Author Date Id Revision Name: cvs2svn:cvs-rev + 1.863 Name: svn:eol-style + native Index: t/tools/install/testlib/README =================================================================== --- t/tools/install/testlib/README (.../trunk) (revision 0) +++ t/tools/install/testlib/README (.../branches/install_tools) (revision 38358) @@ -0,0 +1,155 @@ +This is Parrot, version 0.9.1 +------------------------------ + +Parrot is Copyright (C) 2001-2009, Parrot Foundation. + +$Id$ + +LICENSE INFORMATION +------------------- + +This code is distributed under the terms of the Artistic License 2.0. +For more details, see the full text of the license in the file LICENSE. + +PREREQUISITES +------------- + +You need a C compiler, a linker, and a make program of course. If you will be +linking with the ICU library you have to download and install it before +configuring Parrot. + +Get it from http://www-306.ibm.com/software/globalization/icu/downloads.jsp + +You also need Perl 5.8.4 or newer, Storable 2.12 or newer, and Bundle::Parrot +to run various configure and build scripts. + +For most of the platforms that we are supporting initially, Parrot should build +out of the box. PLATFORM lists our target platforms. + +The current configure system is primitive, as it's only a temporary solution. +It will be happy with most any answers you decide to feed it. Garbage In, +Garbage Out. + +INSTRUCTIONS +------------ + +For now, unpack your Parrot tarball, (if you're reading this, you've +probably already done that) and type + + perl Configure.pl + +to run the Configure script. The Configure.pl script extracts +configuration from the running perl5 program. Unfortunately, the perl5 +configuration is not set up to compile and link c++ programs, so you +may need to explicitly tell Configure.pl which compiler and linker to +use. For example, to compile C files with 'cc', C++ files with +'CC', and link everything together with 'CC', you would type + + perl Configure.pl --cc=cc --cxx=CC --link=CC --ld=CC + +See "perl Configure.pl --help" for more options and docs/configuration.pod +for more details. + +For systems like HPUX that don't have inet_pton please run + + perl Configure.pl --define=inet_aton + +Running Configure.pl will generate a config.h header, a Parrot::Config +module, platform files and many Makefiles. + +The file "myconfig" has an overview of configure settings. + +Next, run make. (Configure.pl will tell you which version of make it +recommends for your system.) + +Now, the interpreter should build. If you are building the ICU library +(this is the default on most systems), you need to use GNU make instead +(or something compatible with it). + +NOTE: If you have trouble linking parrot, this *may* be due to a pre-existing +parrot version installed via 'make install'. Until this issue is resolved, +you may have to delete the installed version of parrot before building a new +one. Our apologies. + +You can test parrot by running "make test". You can run the tests in parallel +with "make TEST_JOBS=3 test". + +You can run the full test suite with + + make fulltest + +Note: PLATFORMS contains notes about whether test failures are expected +on your system. + +On some systems you can install parrot: + + make install + +This installs a bunch of files in /usr/local. The parrot executable is in +/usr/local/bin. Please note that this feature is currently experimental. +(It's so experimental that you have to read the directions it gives you.) + +If you want to install Parrot into a non-standard location use: + + perl Configure.pl --prefix=/Users/foo/parrot-0.7.0 + make install + +But please note that dynamic libs will not be found for non-standard +locations unless you set LD_LIBRARY_PATH or similar. + +Look at docs/parrot.pod and docs/intro.pod for where to go from here. If you +have any problems, see the section "How To Submit A Bug Report" in +docs/submissions.pod. These documents are in POD format. You can view these +files with the command: + + perldoc -F docs/intro.pod + +NOTES +----- + +On some older computers with little RAM, the computed-goto dispatch core +(ops/core_ops_cg.c) may take a while to compile or may fail to compile at all. +You can pass a flag to Configure.pl (--cgoto=0) to disable the computed-goto +core, at a slight cost in runtime speed. + +CHANGES +------- + +For documentation on the user-visible changes between this version and +previous versions, please see NEWS. + +MAILING LISTS +------------- + +The mailing list for parrot is parrot-dev@lists.parrot.org. Subscribe by +filling out the form at http://lists.parrot.org/mailman/listinfo/parrot-dev +It is archived at http://lists.parrot.org/pipermail/parrot-dev/ + +The old development list is archived at +http://www.nntp.perl.org/group/perl.perl6.internals +and available via NNTP at nntp://nntp.perl.org/perl.perl6.internals + +You can also read the (old) list via Google Groups at +http://groups-beta.google.com/group/perl.perl6.internals + +FEEDBACK, PATCHES, etc. +----------------------- + +See F for more information on reporting bugs and +submitting patches. + +WEB SITES +--------- + +The following web sites have all the information you need about Parrot: + http://www.parrot.org/ + http://trac.parrot.org/ + http://www.parrotblog.org/ + +And Perl6: + http://rakudo.org/ + http://dev.perl.org/perl6/ + http://pugscode.org/ + +Have fun, + The Parrot Team. Property changes on: t/tools/install/testlib/README ___________________________________________________________________ Name: svn:keywords + Author Date Id Revision Name: cvs2svn:cvs-rev + 1.48 Name: svn:eol-style + native Index: t/tools/install/testlib/phony =================================================================== --- t/tools/install/testlib/phony (.../trunk) (revision 0) +++ t/tools/install/testlib/phony (.../branches/install_tools) (revision 38358) @@ -0,0 +1 @@ +File used in testing of Parrot::Install. Index: t/tools/install/testlib/phony.exe =================================================================== --- t/tools/install/testlib/phony.exe (.../trunk) (revision 0) +++ t/tools/install/testlib/phony.exe (.../branches/install_tools) (revision 38358) @@ -0,0 +1 @@ +File used in testing of Parrot::Install; not a real executable. Index: t/tools/install/02-install_files.t =================================================================== --- t/tools/install/02-install_files.t (.../trunk) (revision 0) +++ t/tools/install/02-install_files.t (.../branches/install_tools) (revision 38358) @@ -0,0 +1,283 @@ +#! perl +# Copyright (C) 2007, Parrot Foundation. +# $Id$ +# 02-install_files.t + +use strict; +use warnings; + +use Test::More tests => 18; +use Carp; +use Cwd; +use File::Copy; +use File::Path qw( mkpath ); +use File::Temp qw( tempdir ); +use lib qw( lib ); +use Parrot::Install qw( + install_files + create_directories +); +use IO::CaptureOutput qw( capture ); + +my $cwd = cwd(); +my $testsourcedir = qq{$cwd/t/tools/install/testlib}; + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + { + my ( $stdout, $stderr, $rv ); + + eval { + capture( + sub { $rv = install_files($tdir, 1); }, + \$stdout, + \$stderr, + ); + }; + like($@, qr/Error: parameter \$files must be an array/s, "Catches non-ARRAY \$files"); + } +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + # Case where element in @files is not a hash ref + my $files_ref = [ q[] ]; + + { + my ( $stdout, $stderr, $rv ); + capture( + sub { $rv = install_files($tdir, 0, $files_ref); }, + \$stdout, + \$stderr, + ); + like($stderr, qr/Bad reference passed in \$files/, "Catches non-HASH files"); + + like( $stdout, qr/Installing \.\.\./, + 'Got expected installation message' ); + } +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + my $files_ref = [ { + Source => "$testsourcedir/README", + Dest => "$dirs[0]/README", + } ]; + + { + my ( $stdout, $stderr, $rv ); + + capture( + sub { $rv = install_files($tdir, 1, $files_ref); }, + \$stdout, + \$stderr, + ); + ok( $rv, 'install_files() completed successfully in dry-run case' ); + + my $files_created = 0; + foreach my $el (@$files_ref) { + $files_created++ if -f $tdir . $el->{Dest}; + } + is( $files_created, 0, 'Dry run, so no files created' ); + + like( $stdout, qr/Installing.*README.*README/s, + 'Got expected installation message' ); + $stdout =~ qr/Installing.*README.*README/s or print "Warning was: $stderr"; + } + + { + my ( $stdout, $stderr, $rv ); + capture( + sub { $rv = install_files($tdir, 0, $files_ref); }, + \$stdout, + \$stderr, + ); + ok( $rv, 'install_files() completed successfully in production case' ); + + my $files_created = 0; + foreach my $el (@$files_ref) { + $files_created++ if -f "$tdir$el->{Dest}"; + } + is( $files_created, 1, 'Production, so 1 file created' ); + + like( $stdout, qr/Installing.*README/s, + 'Got expected installation message' ); + } +} + +{ + local $^O = 'cygwin'; + my $tdir = tempdir( CLEANUP => 1 ); + chdir $tdir or die "Unable to change to testing directory: $!"; + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + my @testingfiles = qw( README phony ); + foreach my $f ( @testingfiles ) { + copy "$testsourcedir/$f", "$tdir/$f" + or die "Unable to copy $f prior to testing: $!"; + } + my $files_ref = [ + { + Source => "$tdir/README", + Dest => "$dirs[0]/README", + }, + { + Source => "$tdir/phony", + Dest => "$dirs[0]/phony", + }, + ]; + + { + my ( $stdout, $stderr, $rv ); + capture( + sub { $rv = install_files($tdir, 0, $files_ref); }, + \$stdout, + \$stderr, + ); + ok( $rv, 'install_files() completed successfully in mock-Cygwin case' ); + + my $files_created = 0; + foreach my $el (@$files_ref) { + $files_created++ if -f "$tdir$el->{Dest}"; + } + is( $files_created, 2, 'Production, so 2 files created' ); + + like( $stdout, qr/Installing.*README.*phony/s, + 'Got expected installation message' ); + } + chdir $cwd or die "Unable to change back to starting directory: $!"; +} + +{ + local $^O = 'cygwin'; + my $tdir = tempdir( CLEANUP => 1 ); + chdir $tdir or die "Unable to change to testing directory: $!"; + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + my @testingfiles = qw( README phony phony.exe ); + foreach my $f ( @testingfiles ) { + copy "$testsourcedir/$f", "$tdir/$f" + or die "Unable to copy $f prior to testing: $!"; + } + my $files_ref = [ + { + Source => "$tdir/README", + Dest => "$dirs[0]/README" + }, + { + Source => "$tdir/phony", + Dest => "$dirs[0]/phony" + }, + { + Source => "$tdir/phony.exe", + Dest => "$dirs[0]/phony.exe" + }, + ]; + + { + my ( $stdout, $stderr, $rv ); + capture( + sub { $rv = install_files($tdir, 0, $files_ref); }, + \$stdout, + \$stderr, + ); + ok( $rv, 'install_files() completed successfully in mock-Cygwin case' ); + + my $files_created = 0; + foreach my $el (@$files_ref) { + $files_created++ if -f "$tdir$el->{Dest}"; + } + is( $files_created, 2, + 'Production, so 2 files created; 1 file passed over' ); + + like( $stdout, qr/Installing.*README.*phony/s, + 'Got expected installation message' ); + } + chdir $cwd or die "Unable to change back to starting directory: $!"; +} + +{ + my $tdir = tempdir( CLEANUP => 1 ); + $tdir .= '/'; + + my @dirs = qw(foo/bar foo/bar/baz); + create_directories($tdir, { map { $_ => 1 } @dirs }); + + # Case where element in @files does not hold existent file + my $nonexistent = q{ajdpfadksjfjvjkvds} . $$; + my $files_ref = [ + { + Source => $nonexistent, + Dest => "$dirs[0]/$nonexistent", + } + ]; + + { + my ( $stdout, $stderr, $rv ); + capture( + sub { $rv = install_files($tdir, 0, $files_ref); }, + \$stdout, + \$stderr, + ); + ok( $rv, 'install_files() handled non-existent file as expected' ); + + like( $stdout, qr/Installing \.\.\./, + 'Got expected installation message' ); + } +} + +pass("Completed all tests in $0"); + +################### DOCUMENTATION ################### + +=head1 NAME + +02-install_files.t - test subroutines exported by C + +=head1 SYNOPSIS + + % prove t/tools/install/02-install_files.t + +=head1 DESCRIPTION + +The files in this directory test functionality used by +F and F and +exported by F. + +=head1 AUTHOR + +James E Keenan and Timothy S Nelson + +=head1 SEE ALSO + +Parrot::Install, F, F + +=cut + +# Local Variables: +# mode: cperl +# cperl-indent-level: 4 +# fill-column: 100 +# End: +# vim: expandtab shiftwidth=4: Property changes on: t/tools/install/02-install_files.t ___________________________________________________________________ Name: svn:eol-style + native Name: svn:mime-type + text/plain Name: svn:keywords + Author Date Id Revision Index: config/init/install.pm =================================================================== --- config/init/install.pm (.../trunk) (revision 37309) +++ config/init/install.pm (.../branches/install_tools) (revision 38358) @@ -108,7 +108,7 @@ srcdir => $srcdir, # parrot internal use only - doc_dir => $datadir . "/doc", + docdir => $datadir . "/doc", versiondir => $versiondir, ); Index: config/gen/makefiles/root.in =================================================================== --- config/gen/makefiles/root.in (.../trunk) (revision 37309) +++ config/gen/makefiles/root.in (.../branches/install_tools) (revision 38358) @@ -32,7 +32,7 @@ LIB_DIR := @libdir@ INCLUDE_DIR := @includedir@ DATA_DIR := @datadir@ -DOC_DIR := @doc_dir@ +DOC_DIR := @docdir@ VERSION_DIR = @versiondir@ @@ -1451,12 +1451,16 @@ $(REVISIONUTILS_DIR)/*.t \ $(HARNESS_DIR)/*.t MANIFEST_DIR := t/manifest +INSTALL_TOOLS_DIR := t/tools/install MANIFEST_TEST_FILES := \ $(MANIFEST_DIR)/01-basic.t \ $(MANIFEST_DIR)/02-regenerate_file.t \ $(MANIFEST_DIR)/03-regenerate_skip.t \ $(MANIFEST_DIR)/04-alt_file.t \ - $(MANIFEST_DIR)/05-alt_skip.t + $(MANIFEST_DIR)/05-alt_skip.t \ + $(INSTALL_TOOLS_DIR)/01-create_directories.t \ + $(INSTALL_TOOLS_DIR)/02-install_files.t \ + $(INSTALL_TOOLS_DIR)/03-lines_to_files.t EXAMPLES_TEST_FILES := \ t/examples/*.t CONFIGURE_TEST_FILES := \ Index: examples/languages/squaak/config/makefiles/root.in =================================================================== --- examples/languages/squaak/config/makefiles/root.in (.../trunk) (revision 37309) +++ examples/languages/squaak/config/makefiles/root.in (.../branches/install_tools) (revision 38358) @@ -6,9 +6,9 @@ ## configuration settings VERSION := @versiondir@ -BIN_DIR := @bin_dir@ -LIB_DIR := @lib_dir@$(VERSION) -DOC_DIR := @doc_dir@$(VERSION) +BIN_DIR := @bindir@ +LIB_DIR := @libdir@$(VERSION) +DOC_DIR := @docdir@$(VERSION) MANDIR := @mandir@$(VERSION) # Set up extensions