rpms/parrot/F-12 Makefile, NONE, 1.1 import.log, NONE, 1.1 parrot-1.x.0.patch, NONE, 1.1 parrot.spec, NONE, 1.1 patch-1.5.0.ppc, NONE, 1.1 sources, NONE, 1.1

Gerd Pokorra gerd at fedoraproject.org
Fri Sep 4 14:28:33 UTC 2009


Author: gerd

Update of /cvs/pkgs/rpms/parrot/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv25746/F-12

Added Files:
	Makefile import.log parrot-1.x.0.patch parrot.spec 
	patch-1.5.0.ppc sources 
Log Message:
move from devel to F-12 branch



***** Error reading new file: [Errno 2] No such file or directory: 'Makefile'

--- NEW FILE import.log ---
parrot-1_5_0-2_fc11:F-12:parrot-1.5.0-2.fc11.src.rpm:1252074189

parrot-1.x.0.patch:
 config/gen/makefiles/parrot_pc.in |    2 +-
 lib/Parrot/Install.pm             |   10 ++++++++++
 tools/dev/install_files.pl        |    2 +-
 3 files changed, 12 insertions(+), 2 deletions(-)

--- NEW FILE parrot-1.x.0.patch ---
--- tools/dev/install_files.pl	2009-07-13 10:26:40.000000000 +0200
+++ tools/dev/install_files.pl	2009-07-13 13:37:49.000000000 +0200
@@ -163,7 +163,7 @@
             # 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];
+            $filehash->{DestDirs} = ['pkgconfig'];
             return($filehash);
         },
     },
--- config/gen/makefiles/parrot_pc.in	2009-06-06 16:33:32.000000000 +0200
+++ config/gen/makefiles/parrot_pc.in.new	2009-07-13 23:09:45.000000000 +0200
@@ -7,4 +7,4 @@
 Description: virtual machine to execute bytecode for interpreted languages
 Version: @VERSION@
 Libs: -L${libdir} -lparrot @icu_shared@ @libs@
-Cflags: -I${includedir}
+Cflags: -I${includedir}@versiondir@
--- lib/Parrot/Install.pm	2009-06-01 09:29:57.000000000 +0200
+++ lib/Parrot/Install.pm	2009-06-03 08:41:22.000000000 +0200
@@ -220,6 +220,16 @@
         else {
             next unless -e $src;
             next if $^O eq 'cygwin' and -e "$src.exe"; # stat works, copy not
+            if (-l $src) { 
+                # check if the system supports symbolic linking 
+                use Config; 
+                if ($Config{d_symlink} && $Config{d_readlink}) { 
+                # copy as symbolic link 
+                    symlink(readlink($src), $dest); 
+                    print "$dest\n"; 
+                    next; 
+                } 
+            } 
             copy( $src, $dest ) or die "Error: couldn't copy $src to $dest: $!\n";
             print "$dest\n";
         }


--- NEW FILE parrot.spec ---
Name:           parrot
Version:        1.5.0
Release:        2%{?dist}
Summary:        Parrot is a virtual machine
License:        Artistic 2.0
Group:          Development/Libraries
URL:            http://www.parrot.org/

Source0:        ftp://ftp.parrot.org/pub/parrot/releases/devel/%{version}/parrot-%{version}.tar.gz

Patch1:         patch-1.5.0.ppc
%ifarch %{ix86} x86_64 ppc64
Patch0:         parrot-1.x.0.patch
%else
# The PowerPC-architecture
Patch0:         patch-1.5.0.ppc
%endif

# patches file:           tools/dev/install_files.pl
# It is responsible to have no subdirectory under pkgconfig.
#
# patches file:           config/gen/makefiles/parrot_pc.in
# So "pkg-config parrot --cflags" works correct
#
# see for upstream:       https://trac.parrot.org/parrot/ticket/509
# patched file:           lib/Parrot/Install.pm
# is to have the symlink:    libparrot.so  ->  libparrot.so.%{version}
# Without this %{_libdir}/libparrot.so would not be a symbolic link to
# %{_libdir}/libparrot.so.%{version}  

BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:  readline-devel
BuildRequires:  ncurses-devel
BuildRequires:  gmp-devel
BuildRequires:  gdbm-devel
BuildRequires:  libicu-devel
BuildRequires:  perl(Test::Harness)
BuildRequires:  perl(Test::Simple)
BuildRequires:  ctags
BuildRequires:  openssl-devel
BuildRequires:  flex
 

%package docs
Summary:        Parrot Virtual Machine documentation
Group:          Documentation
Requires:       perl(strict)
Requires:       perl(warnings)
BuildArch:      noarch

#--

%package devel
Summary:        Parrot Virtual Machine development headers and libraries
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
Requires:       pkgconfig

#--

%package tools
Summary:        Parrot Virtual Machine development for languages
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
Requires:       perl(Pod::Simple)
Requires:       perl(File::Which) >= 0.05
Requires:       perl(Parrot::OpLib::core)
# It is necessary to have installed the package "perl-Perl-Critic" to install
# the parrot-tools
Provides:       perl(Parrot::Pmc2c::MethodEmitter) = %{version}
Provides:       perl(Parrot::Pmc2c::PCCMETHOD_BITS) = %{version}
Provides:       perl(Parrot::Pmc2c::PMCEmitter) = %{version}
Provides:       perl(Parrot::OpLib::core) = %{version}


%description
Parrot is a virtual machine designed to efficiently compile and execute
bytecode for dynamic languages. Parrot is the target for Rakudo Perl 6,
as well as variety of other languages.

#--

%description docs
Documentation in text-, POD- and HTML-format (docs/html-subdirectory) and also
examples about the Parrot Virtual Machine.

#--

%description devel
Parrot Virtual Machine development headers and libraries.

#--

%description tools
Parrot Virtual Machine development files for building languages.


%prep
%setup -q
%patch0 -p0


cat << \EOF > %{name}-prov
#!/bin/sh
%{__perl_provides} $* | %{__sed} -e '/perl(A)/d' -e '/perl(B)/d' \
                            -e '/perl(DB)/d' -e '/perl(Parrot::OpLib::core)/d'
EOF

%global __perl_provides %{_builddir}/%{name}-%{version}/%{name}-prov
chmod +x %{__perl_provides}


%build
%ifarch %{ix86} x86_64
    RPM_OPT_FLAGS="$RPM_OPT_FLAGS -maccumulate-outgoing-args"
%else
# The PowerPC-architecture do not build with the '-maccumulate-outgoing-args'
# option.
    RPM_OPT_FLAGS="$RPM_OPT_FLAGS"
%endif

%{__perl} Configure.pl \
    --prefix=%{_usr} \
    --libdir=%{_libdir} \
    --sysconfdir=%{_sysconfdir} \
    --infodir=%{_datadir}/info \
    --mandir=%{_mandir} \
    --cc="%{__cc}" \
    --cxx=%{__cxx} \
    --optimize="$RPM_OPT_FLAGS" \
    --parrot_is_shared \
    --disable-rpath \
    --lex=%{_bindir}/flex \
    --yacc=%{_bindir}/yacc \
    --libs='-lcurses -lm'

# The LD_LIBRARY_PATH hack is needed for "miniparrot"
# to find his parrot-library in "blib/lib" 
export LD_LIBRARY_PATH=$( pwd )/blib/lib

# pbc_to_exe would not build if %{_smp_mflags} would used
make
make parrot_utils
make installable
make html


%install
rm -rf $RPM_BUILD_ROOT

# install-dev: Same as 'install' taget but also install support for 
#              language development 
make install-dev DESTDIR=$RPM_BUILD_ROOT

#Creating man-pages
%{__install} -d $RPM_BUILD_ROOT%{_mandir}/man1
pod2man --section=1 --name=parrot docs/running.pod | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/parrot.1.gz
pod2man --section=1 --name=parrot_debugger src/parrot_debugger.c | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/parrot_debugger.1.gz
pod2man --section=1 --name=pbc_disassemble src/pbc_disassemble.c | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/pbc_disassemble.1.gz
pod2man --section=1 --name=pbc_dump src/pbc_dump.c | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/pbc_dump.1.gz
pod2man --section=1 --name=pbc_merge src/pbc_merge.c | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/pbc_merge.1.gz
pod2man --section=1 --name=parrot_config tools/build/parrot_config_c.pl | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/parrot_config.1.gz
pod2man --section=1 --name=pbc_to_exe tools/dev/pbc_to_exe.pir | %{__gzip} -c > $RPM_BUILD_ROOT%{_mandir}/man1/pbc_to_exe.1.gz

%define RPM_PAR_LIB_DIR $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}/


# Drop the docs so rpm can pick them up itself.
rm -rf $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}

# Force permissions on doc directories.
find docs examples -type d -exec chmod 755 {} \;
find docs examples -type f -exec chmod 644 {} \;

# Force permissions on shared versioned libs so they get stripped.
# The parrot-install-script don't set the permissions right
# With changed permissions the dependencies will be found
find %{RPM_PAR_LIB_DIR}dynext -type f -name '*.so' -exec chmod 755 {} \;

# Remove module that should be install instead (perl(File::Which))
rm -rf %{RPM_PAR_LIB_DIR}tools/lib/File


# Added to reduce output errors when using rpmlint

# Force permission on perl-scripts in the "tools" subdirctory
find %{RPM_PAR_LIB_DIR}tools -type f -name "*.pl" -exec chmod 755 {} \; \
    -exec %{__sed} -i -e '1 s&#! perl&#!/usr/bin/perl&' {} \;
# Set path to parrot binary and Force permission
find %{RPM_PAR_LIB_DIR}tools/dev -type f -name "pbc_to_exe.pir" \
    -exec %{__sed} -i -e '1 s&#! parrot&#!/usr/bin/parrot&' {} \; \
    -exec chmod 755 {} \;

# Remove doc-files with zero-length
find docs/html -type f -size 0 -exec rm -f {} \;

# Set path for installed programs in docs package
find examples/json -type f -name "*.pir" \
    -exec %{__sed} -i -e '1 s&#!../../parrot&#!/usr/bin/parrot&' {} \;
find examples -type f -name "*.pl" \
    -exec %{__sed} -i -e '1 s&#! perl&#!/usr/bin/perl&' {} \;
find examples -wholename 'examples/pir/befunge/t/basic.t' \
    -exec %{__sed} -i -e '1 s&#! perl&#!/usr/bin/perl&' {} \;
find examples -type f -name "*.py" \
    -exec %{__sed} -i -e '1 s&#! python&#!/usr/bin/python&' {} \;
find examples -type f -name "*.rb" \
    -exec %{__sed} -i -e '1 s&#! ruby&#!/usr/bin/ruby&' {} \;

find examples -type f -name "*.pir" \
    -exec %{__sed} -i -e '1 s&#!./parrot&#!/usr/bin/parrot&' {} \;
find examples/shootout -type f -name "random.pasm" \
    -exec %{__sed} -i -e '1 s&#!./parrot&#!/usr/bin/parrot&' {} \;

find examples -wholename 'examples/languages/abc/t/01-tests.t' \
    -exec %{__sed} -i -e '1 s&#!perl&#!/usr/bin/perl&' {} \;
find examples -wholename 'examples/shootout/revcomp.pir' \
    -exec %{__sed} -i -e '1 s&#!parrot&#!/usr/bin/parrot&' {} \;

find examples -wholename 'examples/languages/abc/t/harness' \
    -exec %{__perl} -pi -e 's/\r$//' {} \;

find examples/languages -type f -name harness \
    -exec %{__sed} -i -e '1 s&#! perl&#!/usr/bin/perl&' {} \;
for file in docs/book/pct/ch04_pge.pod docs/memory_internals.pod; do
        %{__mv} $file timestamp
        iconv -f ISO-8859-1 -t UTF-8 -o $file timestamp
        touch -r timestamp $file
done
%{__rm} -f timestamp


%check
# 'make fulltest' is done by default; it take a lot of time
export LD_LIBRARY_PATH=$( pwd )/blib/lib
FULL='full'
%{?_without_fulltest: FULL=''}
%{?!_without_tests: make ${FULL}test}


%clean
rm -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files
%defattr(-,root,root,-)
%doc ChangeLog CREDITS NEWS PBC_COMPAT PLATFORMS README
%doc RESPONSIBLE_PARTIES TODO LICENSE
%{_bindir}/parrot
%{_libdir}/parrot/
%exclude %{_libdir}/parrot/%{version}/tools
%exclude %{_libdir}/parrot/%{version}/VERSION
%{_libdir}/libparrot.so.*
%{_mandir}/man1/parrot.1.gz

%files docs
%defattr(-,root,root,-)
%doc docs examples

%files devel
%defattr(-,root,root,-)
%{_bindir}/parrot_config
%{_bindir}/parrot_debugger
%{_bindir}/pbc_disassemble
%{_bindir}/pbc_merge
%{_bindir}/pbc_to_exe
%{_bindir}/pbc_dump
%{_includedir}/parrot
%{_libdir}/libparrot.so
%exclude %{_libdir}/libparrot.a
%{_libdir}/pkgconfig/*
%{_mandir}/man1/parrot_config.1.gz
%{_mandir}/man1/parrot_debugger.1.gz
%{_mandir}/man1/pbc_disassemble.1.gz
%{_mandir}/man1/pbc_merge.1.gz
%{_mandir}/man1/pbc_to_exe.1.gz
%{_mandir}/man1/pbc_dump.1.gz

%files tools
%defattr(-,root,root,-)
# Files for building languages
%{_libdir}/parrot/%{version}/tools/*
%{_libdir}/parrot/%{version}/VERSION
%{_usr}/src/parrot/*


%changelog
* Sat Aug 22 2009 Tomas Mraz <tmraz at redhat.com> 1.5.0-2
- rebuilt with new openssl

* Fri Aug 21 2009 Gerd Pokorra <gp at zimt.uni-siegen.de> 1.5.0-1
- new upstream version

* Sat Aug 1 2009 Gerd Pokorra <gp at zimt.uni-siegen.de> 1.4.0-9
- ppc test included again
- include the necessary module Parrot::OpLib::core
- change the place of header files to /usr/include/parrot/<version>
- install the files /usr/src/parrot/*

* Sat Jul 25 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.4.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Tue Jul 21 2009 Gerd Pokorra <gp at zimt.uni-siegen.de> 1.4.0-1
- add the new disable-rpath configure option

* Wed Mar 25 2009 Gerd Pokorra <gp at zimt.uni-siegen.de> 1.0.0-6
- add a list of changes from Lubomir Rintel
- add filtering Provides
- change requires for docs-subpackage
- enable test suite
- change the group of the subpackage "-docs" to Documentation
- put the main-documentation from the docs-package to the main package
- LICENSE file added
- change 'make install' to 'make install-dev' to also install support for development (tools)
- add Provides-lines
- add patch for the file "tools/dev/install_files.pl"
- add commands to reduce output of errors when using rpmlint
- define RPM_PAR_LIB_DIR added
- add subpackage "tools"
- exclude tools directory from main-package
- added make html

* Sun Mar 22 2009 Fabien Georget <fabien.georget at gmail.com> 1.0.0-4
- add tools

* Sun Mar 22 2009 David Fetter <david at fetter.org> 1.0.0-3
- Removed wrong prefix from pkgconfig per Christoph Wickert
- Changed i386 to ix86 per Christoph Wickert

* Tue Mar 17 2009 Allison Randal <allison at parrot.org> 1.0.0
- updated to 1.0.0

* Tue Jan 23 2009 Reini Urban <rurban at x-ray.at> 0.9.0
- added make installable, perl6 is still not installable
- added parrot_utils to devel
- fixed Source0 url

* Tue Dec 16 2008 Whiteknight <wknight8111 at gmail.com> 0.8.2
- updated to 0.8.2

* Tue Mar 18 2008 Bernhard Schmalhofer <Bernhard.Schmalhofer at gmx.de> 0.6.0
- Update to 0.5.3.

* Wed Feb 20 2008 Patrick Michaud <pmichaud at pobox.com> 0.5.3
- Update to 0.5.3.

* Sat Mar 10 2007 Steven Pritchard <steve at kspei.com> 0.4.9-1
- Update to 0.4.9.
- BuildRequires ncurses-devel.
- For some reason now I need to force -lm too.
- Remove some files/directories that shouldn't be included.
- Override lib_dir and make various substitutions to try to fix multilib.
- Remove rpath use from Makefile.
- Fix a pod error in src/ops/experimental.ops.
- Enable "make test" since t/doc/pod.t won't fail now.
- Force permissions on shared libraries so rpmbuild strips them.
- Fix URL, description, summary, etc.
- Add post/postun.
- Move parrot-config to the devel sub-package.
- Force permissions on the doc directories.
- Add -lcurses to get readline detection to work.
- Add BuildRequires libicu-devel.

* Tue Mar 18 2003 Steve Fink <sfink at foxglove.localdomain> 0.0.11
- first .spec file created


--- NEW FILE patch-1.5.0.ppc ---
--- ChangeLog	2009-08-18 15:29:26.000000000 +0200
+++ ChangeLog	2009-08-20 19:56:36.000000000 +0200
@@ -1,4 +1,4 @@
-#1 $Id: ChangeLog 40184 2009-07-21 08:08:33Z cotto $
+#1 $Id: ChangeLog 40625 2009-08-18 16:10:36Z whiteknight $
 
 2009.8.18     Whiteknight
     * Released 1.5.0
@@ -3817,9 +3817,9 @@
 2002-01-04 16:09  dan
 
 	* classes/: genclass.pl, perlarray.pmc, perlint.pmc, perlnum.pmc,
-	perlstring.pmc, perlundef.pmc:	- genclass.pl attempts to put $Id: ChangeLog 40184 2009-07-21 08:08:33Z cotto $
+	perlstring.pmc, perlundef.pmc:	- genclass.pl attempts to put $Id: ChangeLog 40625 2009-08-18 16:10:36Z whiteknight $
 	into generated files
-	   but the $Id: ChangeLog 40184 2009-07-21 08:08:33Z cotto $ string gets mangled when it's committed.
+	   but the $Id: ChangeLog 40625 2009-08-18 16:10:36Z whiteknight $ string gets mangled when it's committed.
 	   This patch fixes the existing .pmc files and fixes genclass.pl.
 
 	 - Makes capitalization in .pmc header match actual filenames
--- compilers/imcc/parser_util.c	2009-08-02 14:36:27.000000000 +0200
+++ compilers/imcc/parser_util.c	2009-08-20 19:56:29.000000000 +0200
@@ -8,7 +8,7 @@
  *
  * parser support functions
  *
- * $Id: parser_util.c 40268 2009-07-25 19:53:04Z whiteknight $
+ * $Id: parser_util.c 40643 2009-08-18 22:57:11Z bacek $
  *
  */
 
@@ -693,7 +693,7 @@
     IMCC_pop_parser_state(interp, yyscanner);
 
     if (!IMCC_INFO(interp)->error_code) {
-        Parrot_sub *sub_data;
+        Parrot_Sub_attributes *sub_data;
 
         /*
          * create sub PMC
--- compilers/imcc/pbc.c	2009-08-07 02:50:19.000000000 +0200
+++ compilers/imcc/pbc.c	2009-08-20 19:56:28.000000000 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2002-2009, Parrot Foundation.
- * $Id: pbc.c 40414 2009-08-05 11:29:16Z bacek $
+ * $Id: pbc.c 40643 2009-08-18 22:57:11Z bacek $
  */
 
 #include "imc.h"
@@ -1205,7 +1205,7 @@
                 while (n) {
                     STRING     *lex_name;
                     const int   k = n->color;
-                    Parrot_sub *sub;
+                    Parrot_Sub_attributes *sub;
                     PARROT_ASSERT(k >= 0);
 
                     lex_name = constants[k]->u.string;
@@ -1255,7 +1255,7 @@
     subs_t      *s;
     PMC         *current;
     STRING      *cur_name;
-    Parrot_sub *sub;
+    Parrot_Sub_attributes *sub;
     size_t      len;
 
     if (!unit->outer)
@@ -1320,9 +1320,9 @@
 add_const_pmc_sub(PARROT_INTERP, ARGMOD(SymReg *r), size_t offs, size_t end)
 {
     ASSERT_ARGS(add_const_pmc_sub)
-    PMC                 *ns_pmc;
-    PMC                 *sub_pmc;
-    Parrot_sub          *sub, *outer_sub;
+    PMC                   *ns_pmc;
+    PMC                   *sub_pmc;
+    Parrot_Sub_attributes *sub, *outer_sub;
 
     const int            k            = add_const_table(interp);
     PackFile_ConstTable * const ct    = interp->code->const_table;
--- compilers/pirc/src/bcgen.c	2009-08-02 14:36:27.000000000 +0200
+++ compilers/pirc/src/bcgen.c	2009-08-20 19:56:29.000000000 +0200
@@ -1,5 +1,5 @@
 /*
- * $Id: bcgen.c 38095 2009-04-13 14:20:12Z coke $
+ * $Id: bcgen.c 40676 2009-08-20 15:11:44Z fperrad $
  * Copyright (C) 2008-2009, Parrot Foundation.
  */
 #include <stdio.h>
@@ -910,7 +910,7 @@
 {
     ASSERT_ARGS(find_outer_sub)
     PMC          *current;
-    Parrot_sub   *sub;
+    Parrot_Sub_attributes *sub;
     STRING       *cur_name;
     size_t        len;
     global_label *outersub;
@@ -1131,7 +1131,7 @@
 {
     ASSERT_ARGS(add_sub_pmc)
     PMC                   *sub_pmc;        /* the "Sub" pmc, or a variant, such as "Coroutine" */
-    Parrot_sub            *sub;
+    Parrot_Sub_attributes *sub;
     int                    subconst_index; /* index in const table for the sub pmc */
     int                    subname_index;
     int                    i;              /* for loop iterator */
--- config/gen/core_pmcs.pm	2009-07-08 02:19:09.000000000 +0200
+++ config/gen/core_pmcs.pm	2009-08-20 19:56:31.000000000 +0200
@@ -1,5 +1,5 @@
 # Copyright (C) 2001-2009, Parrot Foundation.
-# $Id: core_pmcs.pm 38777 2009-05-14 19:43:11Z petdance $
+# $Id: core_pmcs.pm 40651 2009-08-19 08:55:58Z NotFound $
 
 =head1 NAME
 
@@ -116,26 +116,20 @@
     __attribute__nonnull__(1)
     __attribute__nonnull__(2);
 
-extern void Parrot_initialize_core_pmcs(PARROT_INTERP)
+extern void Parrot_initialize_core_pmcs(PARROT_INTERP, int pass)
     __attribute__nonnull__(1);
 
-void Parrot_initialize_core_pmcs(PARROT_INTERP)
+void Parrot_initialize_core_pmcs(PARROT_INTERP, int pass)
 {
-    int pass;
-    for (pass = 0; pass <= 1; ++pass) {
-        /* first the PMC with the highest enum
-         * this reduces MMD table resize action */
+    /* first the PMC with the highest enum
+     * this reduces MMD table resize action */
 END_C
 
-    print {$OUT} "        Parrot_${_}_class_init(interp, enum_class_${_}, pass);\n"
+    print {$OUT} "    Parrot_${_}_class_init(interp, enum_class_${_}, pass);\n"
         foreach ( @pmcs[ -1 .. -1 ] );
-    print {$OUT} "        Parrot_${_}_class_init(interp, enum_class_${_}, pass);\n"
+    print {$OUT} "    Parrot_${_}_class_init(interp, enum_class_${_}, pass);\n"
         foreach ( @pmcs[ 0 .. $#pmcs - 1 ] );
     print {$OUT} <<'END_C';
-        if (!pass) {
-            parrot_global_setup_2(interp);
-        }
-    }
 }
 
 static void register_pmc(PARROT_INTERP, NOTNULL(PMC *registry), int pmc_id)
--- config/gen/platform/generic/platform_limits.h	2009-07-22 02:33:43.000000000 +0200
+++ config/gen/platform/generic/platform_limits.h	2009-08-20 19:56:31.000000000 +0200
@@ -1,6 +1,6 @@
 /*
- * $Id: platform_limits.h 40176 2009-07-21 00:33:45Z whiteknight $
- * Copyright (C) 2008, Parrot Foundation.
+ * $Id: platform_limits.h 40634 2009-08-18 21:23:45Z mikehh $
+ * Copyright (C) 2009, Parrot Foundation.
  */
 
 #ifndef PARROT_PLATFORM_GENERIC_PLATFORM_LIMITS_GUARD
@@ -14,6 +14,11 @@
 
 /* LLONG_MAX doesn't appear to be provided for some compilers of Win64, so
    try to define them here. */
+#include "parrot/has_header.h"
+#if PARROT_HAS_HEADER_LIMITS
+#  include <limits.h>
+#endif
+
 #ifdef _MSC_VER
 #  ifndef LLONG_MAX
 #    define LLONG_MAX _I64_MAX
--- config/init/defaults.pm	2009-07-28 14:52:00.000000000 +0200
+++ config/init/defaults.pm	2009-08-20 19:56:30.000000000 +0200
@@ -1,5 +1,5 @@
 # Copyright (C) 2001-2007, Parrot Foundation.
-# $Id: defaults.pm 40296 2009-07-28 03:24:55Z chromatic $
+# $Id: defaults.pm 40635 2009-08-18 21:34:54Z chromatic $
 
 =head1 NAME
 
--- CREDITS	2009-08-18 15:29:26.000000000 +0200
+++ CREDITS	2009-08-20 19:56:36.000000000 +0200
@@ -1,6 +1,6 @@
 =pod
 
-# $Id: CREDITS 40495 2009-08-11 22:19:23Z mikehh $
+# $Id: CREDITS 40625 2009-08-18 16:10:36Z whiteknight $
 
     Following in the steps of other open source projects that
     eventually take over the world, here is the partial list
--- DEPRECATED.pod	2009-08-15 15:06:27.000000000 +0200
+++ DEPRECATED.pod	2009-08-20 19:56:36.000000000 +0200
@@ -1,4 +1,4 @@
-# $Id: DEPRECATED.pod 40557 2009-08-15 10:41:06Z dukeleto $
+# $Id: DEPRECATED.pod 40621 2009-08-18 14:30:59Z coke $
 
 =head1 Purpose
[...4592 lines suppressed...]
+
+*/
+
+PARROT_EXPORT
+void
+Parrot_initialize_core_vtables(PARROT_INTERP)
+{
+    ASSERT_ARGS(Parrot_initialize_core_vtables)
+
+    if (! interp->vtables) {
+        parrot_alloc_vtables(interp);
+        Parrot_initialize_core_pmcs(interp, 0);
+    }
+}
+
+/*
  * Local variables:
  *   c-file-style: "parrot"
  * End:
Binärdateien t/native_pbc/annotations.pbc and t/native_pbc/annotations.pbc sind verschieden.
Binärdateien t/native_pbc/integer_1.pbc and t/native_pbc/integer_1.pbc sind verschieden.
Binärdateien t/native_pbc/number_1.pbc and t/native_pbc/number_1.pbc sind verschieden.
Binärdateien t/native_pbc/string_1.pbc and t/native_pbc/string_1.pbc sind verschieden.
--- t/op/arithmetics.t	2009-08-16 13:54:58.000000000 +0200
+++ t/op/arithmetics.t	2009-08-20 19:56:30.000000000 +0200
@@ -1,13 +1,13 @@
 #!perl
 # Copyright (C) 2001-2009, Parrot Foundation.
-# $Id: arithmetics.t 40588 2009-08-16 09:00:17Z dukeleto $
+# $Id: arithmetics.t 40671 2009-08-20 09:17:12Z dukeleto $
 
 use strict;
 use warnings;
 use lib qw( . lib ../lib ../../lib );
 
 use Test::More;
-use Parrot::Test tests => 26;
+use Parrot::Test tests => 27;
 
 # test for GMP
 use Parrot::Config;
@@ -697,6 +697,33 @@
 -Inf
 OUTPUT
 
+TODO: {
+
+local $TODO = 'rounding nan/inf gives something like -2147483648';
+pir_output_is(<<CODE,<<OUTPUT, "TT #370 Rounding inf/nan");
+.sub 'main'
+        \$N0 = 'Inf'
+        \$I0 = floor \$N0
+        say \$I0
+        \$N0 = 'NaN'
+        \$I0 = floor \$N0
+        say \$I0
+        \$N0 = 'Inf'
+        \$I0 = ceil \$N0
+        say \$I0
+        \$N0 = 'NaN'
+        \$I0 = ceil \$N0
+        say \$I0
+    .end
+CODE
+Inf
+NaN
+Inf
+NaN
+OUTPUT
+
+}
+
 # Local Variables:
 #   mode: cperl
 #   cperl-indent-level: 4
Nur in t/op: exit.t.
--- tools/dev/nm.pl	2009-07-08 02:19:04.000000000 +0200
+++ tools/dev/nm.pl	2009-06-28 22:26:06.000000000 +0200
@@ -143,7 +143,7 @@
 $VERSION = sprintf "%d.%d", q$Revision: 37201 $ =~ /(\d+)/g;    # jhi at iki.fi;
 
 my $ME       = basename($0);
-my $RCS_DATE = q$Date: 2009-03-08 08:07:48 -0400 (Sun, 08 Mar 2009) $;
+my $RCS_DATE = q$Date: 2009-03-08 13:07:48 +0100 (So, 08. Mär 2009) $;
 
 my $nm_cmd = 'nm';
 my $nm_opt = '';
--- tools/dev/install_files.pl	2009-07-13 10:26:40.000000000 +0200
+++ tools/dev/install_files.pl	2009-07-13 13:37:49.000000000 +0200
@@ -163,7 +163,7 @@
             # 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];
+            $filehash->{DestDirs} = ['pkgconfig'];
             return($filehash);
         },
     },
--- config/gen/makefiles/parrot_pc.in	2009-06-06 16:33:32.000000000 +0200
+++ config/gen/makefiles/parrot_pc.in.new	2009-07-13 23:09:45.000000000 +0200
@@ -7,4 +7,4 @@
 Description: virtual machine to execute bytecode for interpreted languages
 Version: @VERSION@
 Libs: -L${libdir} -lparrot @icu_shared@ @libs@
-Cflags: -I${includedir}
+Cflags: -I${includedir}@versiondir@
--- lib/Parrot/Install.pm	2009-06-01 09:29:57.000000000 +0200
+++ lib/Parrot/Install.pm	2009-06-03 08:41:22.000000000 +0200
@@ -220,6 +220,16 @@
         else {
             next unless -e $src;
             next if $^O eq 'cygwin' and -e "$src.exe"; # stat works, copy not
+            if (-l $src) { 
+                # check if the system supports symbolic linking 
+                use Config; 
+                if ($Config{d_symlink} && $Config{d_readlink}) { 
+                # copy as symbolic link 
+                    symlink(readlink($src), $dest); 
+                    print "$dest\n"; 
+                    next; 
+                } 
+            } 
             copy( $src, $dest ) or die "Error: couldn't copy $src to $dest: $!\n";
             print "$dest\n";
         }
--- /dev/null	2009-07-29 14:58:11.425144471 +0200
+++ t/op/exit.t	2009-08-20 19:56:30.000000000 +0200
@@ -0,0 +1,72 @@
+#!perl
+# Copyright (C) 2009, Parrot Foundation.
+# $Id: exit.t 40662 2009-08-19 18:02:12Z mikehh $
+
+use strict;
+use warnings;
+use lib qw( . lib ../lib ../../lib );
+
+use Test::More;
+use Parrot::Test tests => 7;
+
+=head1 NAME
+
+t/op/exit.t - Testing the exit pseudo-opcode
+
+=head1 SYNOPSIS
+
+    % prove t/op/exit.t
+
+=head1 DESCRIPTION
+
+Test both success and failure exit status.
+
+=cut
+
+pir_exit_code_is( <<'CODE', 0, 'pir exit with success' );
+.sub main
+    exit 0
+.end
+CODE
+
+pir_exit_code_is( <<'CODE', 1, 'pir exit with failure' );
+.sub main
+    exit 1
+.end
+CODE
+
+pasm_exit_code_is( <<'CODE', 1, 'pasm exit with failure' );
+    exit 1
+CODE
+
+pasm_exit_code_is( <<'CODE', 0, 'pasm exit without failure' );
+    exit 0
+CODE
+
+# If you know of a better place to put these tests, please put them there
+
+pir_exit_code_is( <<'CODE', 0, 'pir exits with success by default' );
+.sub main
+    $S0 = "cheese"
+.end
+CODE
+
+TODO: {
+    local $TODO = 'pasm exits with 1 by default';
+    pasm_exit_code_is( <<'CODE', 0, 'exit with success by default' );
+        set I0, 0
+CODE
+
+}
+TODO: {
+    local $TODO = 'pbc exits with 1 by default';
+    # Should we be using this file?
+    my $pbc = File::Spec->catfile(qw/ t native_pbc integer_1.pbc /);
+    pbc_exit_code_is($pbc, 0, 'pbc exits with 0 by default');
+}
+
+#   mode: cperl
+#   cperl-indent-level: 4
+#   fill-column: 100
+# End:
+# vim: expandtab shiftwidth=4:


--- NEW FILE sources ---
f209c337b488bfa244520d38502ef330  parrot-1.5.0.tar.gz




More information about the fedora-extras-commits mailing list