tagged release 0.7.1
[parrot.git] / ports / cygwin / parrot-0.6.4-2.src.patch
blob59d859caa89ed80e1a2827c05b6a46ab5faa4578
1 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/MANIFEST src/parrot-0.6.4/MANIFEST
2 --- origsrc/parrot-0.6.4/MANIFEST 2008-07-15 09:58:46.000000000 +0000
3 +++ src/parrot-0.6.4/MANIFEST 2008-07-27 10:54:15.703125000 +0000
4 @@ -7,10 +7,10 @@
5 # format of this file.
6 # See docs/submissions.pod on how to recreate this file after SVN
7 # has been told about new or deleted files.
8 -CREDITS []
9 -ChangeLog []
10 +CREDITS [devel]doc
11 +ChangeLog [devel]doc
12 Configure.pl []
13 -DEPRECATED.pod []
14 +DEPRECATED.pod [devel]doc
15 DONORS.pod []
16 LICENSE [main]doc
17 MANIFEST []
18 @@ -22,11 +22,11 @@
19 PBC_COMPAT [devel]doc
20 PLATFORMS [devel]doc
21 README [devel]doc
22 -README_cygwin.pod []
23 -README_win32.pod []
24 +README_cygwin.pod [devel]doc
25 +README_win32.pod [devel]doc
26 RESPONSIBLE_PARTIES [main]doc
27 TODO [main]doc
28 -VERSION []
29 +VERSION [devel]doc
30 apps/p3/README [apps/p3]
31 apps/p3/cgi-pir/slides.pir [apps/p3]
32 apps/p3/index.html [apps/p3]
33 @@ -3077,7 +3077,7 @@
34 src/pbc_disassemble.c []
35 src/pbc_info.c []
36 src/pbc_merge.c []
37 -src/pdb.c []
38 +src/parrot_debugger.c []
39 src/pdump.c []
40 src/pic.c []
41 src/pic_jit.c []
42 @@ -3866,7 +3866,7 @@
43 t/tools/ops2pmutils/10-print_module.t []
44 t/tools/ops2pmutils/11-print_h.t []
45 t/tools/pbc_merge.t []
46 -t/tools/pdb.t []
47 +t/tools/parrot_debugger.t []
48 t/tools/pmc2c.t []
49 t/tools/pmc2cutils/00-qualify.t []
50 t/tools/pmc2cutils/01-pmc2cutils.t []
51 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/README_cygwin.pod src/parrot-0.6.4/README_cygwin.pod
52 --- origsrc/parrot-0.6.4/README_cygwin.pod 2008-06-02 17:35:05.000000000 +0000
53 +++ src/parrot-0.6.4/README_cygwin.pod 2008-07-27 10:54:15.703125000 +0000
54 @@ -6,37 +6,98 @@
56 =head1 SYNOPSIS
58 -Parrot builds out of the box under Cygwin. Some tweaks are needed for
59 -different names of dynamic loading of some dll's.
60 +Parrot builds out of the box under Cygwin after
61 +C<export PATH=`pwd`/blib/lib:$PATH>
63 +There are official cygwin parrot packages available via
64 +L<http://cygwin.com/setup.exe>.
66 + parrot libparrot0 libparrot-devel parrot-perl6 parrot-languages
68 +Some tweaks are needed for different names for the ffi to some dll's.
69 +See L</loadlib DLL versioning>
72 =head1 Packages
74 -You'll need the following Cygwin packages to build Parrot.
75 +You'll need the following Cygwin packages to run and build Parrot
76 +by your own.
78 -=over 4
79 +Runtime requirements:
81 + libreadline6 ncurses libintl8 libgmp3 libgdbm4
83 +Optional requirements:
85 + libicu38 libpq5 openssl
87 + for opengl: w32api opengl or libglut3 xorg-x11-base xorg-x11-bin-dlls
89 +Build requirements:
91 + gcc make perl parrot readline libncurses-devel libgmp-devel
92 + libgdbm-devel pcre-devel
94 +Optional build requirements:
96 + libicu-devel openssl-devel
98 + for Cygwin/X opengl: freeglut xorg-x11-devel
100 +Optional perl packages for testing:
102 + L<Test::TAP::HTMLMatrix> if you want to run the language smoke tests
103 + with C<make languages-smoke>.
105 -=item gcc
106 + L<Test::Base> for some APL language tests.
108 -=item make
109 + perl L<Moose> for smartlink
111 -=item perl
112 + perl L<Test::Perl::Critic> and L<Perl::Critic>
114 -=item subversion
115 +=over 4
117 +=item Cygwin subversion and perl
119 If you use SVN to get a copy of Parrot, you should use the Cygwin SVN
120 and not the TortoiseSVN client to avoid build errors. Similarly you will
121 need Cygwin Perl rather than ActiveState or Strawberry Perl.
123 -=item ICU
125 -This is no official Cygwin package yet. However, icu4c-3_8 builds out of the
126 -box on Cygwin.
128 - http://download.icu-project.org/files/icu4c/3.8/icu4c-3_8-src.tgz
129 +=item icu
131 Note that ICU is now optional, you can build Parrot without it,
132 by not installing it or asking Parrot to ignore it (C<--without-icu>).
134 +=item opengl
136 +You can use the w32api and opengl packages for native Windows opengl support,
137 +or the freeglut package for the X Server.
139 +Configure.pl will detect freeglut if freeglut is installed and DISPLAY
140 +is set, otherwise it checks for w32api and opengl with GLUT.
142 + Determining if your platform supports OpenGL.............yes, freeglut 3.4.
143 + Determining if your platform supports OpenGL...................yes, GLUT 3.
144 + Determining if your platform supports OpenGL............................no.
146 +Required packages:
148 + w32api
150 +or
152 + freeglut xorg-x11-devel xorg-x11-base xorg-x11-bin-dlls
154 +=item SDL
156 +SDL references F<cygSDL-1-2-0.dll>, which is only in cygports
157 +L<http://news.gmane.org/gmane.os.cygwin.ports.announce>
159 +=item aio
161 +libaio-devel "Linux-native asynchronous I/O access" is not available
162 +for cygwin, and as the name says it will never be :)
164 =back
166 =head1 BUILD
167 @@ -53,21 +114,24 @@
169 =item Makefile tuning
171 -rename libparrot.dll to cygparrot.dll, create an interim libparrot.dll.a
172 +Rename libparrot.dll to cygparrot0_6_x.dll and create an interim libparrot.dll.a
174 -fix the blib/lib PATH issue
175 + [perl #56998] [TODO] rename cygwin dll to cygparrot$MAJOR_$MINOR_$PATCH.dll
176 + [perl #56562] [PATCH] root.in: add cygwin importlib
178 -=item DLL versioning
179 +=item loadlib DLL versioning
181 -cyg*-1.1.dll instead of lib*.so.1.1
182 +Use cyg*-1.1.dll naming conventions instead of lib*.so.1.1 names for loadlib, the
183 +FFI.
185 -Thanks to the L<Windows DLL Hell / http://> and the impossibility of file
186 +Thanks to the L<Windows DLL Hell / http://?> and the impossibility of file
187 hardlinks, windows dll names are versioned, so the loadlib function or the
188 various pir's needs more logic.
190 Either add the version to each loadlib call, and stem the version from POSIX
191 versions within get_path(), or add an optional version argument to loadlib for
192 -win32. Or just fix all the pir's.
193 +win32. Or just fix all the pir's, which will be easier when exceptions work
194 +again.
196 =item Features
198 @@ -89,6 +153,6 @@
200 =head1 HISTORY
202 -Last updated: 1 June 2008
203 +Last updated: 15 July 2008
205 =cut
206 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/compilers/pct/src/PCT/HLLCompiler.pir src/parrot-0.6.4/compilers/pct/src/PCT/HLLCompiler.pir
207 --- origsrc/parrot-0.6.4/compilers/pct/src/PCT/HLLCompiler.pir 2008-06-18 17:16:40.000000000 +0000
208 +++ src/parrot-0.6.4/compilers/pct/src/PCT/HLLCompiler.pir 2008-07-27 12:30:30.484375000 +0000
209 @@ -25,7 +25,6 @@
211 .sub 'init' :vtable :method
212 load_bytecode 'config.pir'
214 $P0 = split ' ', 'parse past post pir evalpmc'
215 setattribute self, '@stages', $P0
217 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/auto/gcc.pm src/parrot-0.6.4/config/auto/gcc.pm
218 --- origsrc/parrot-0.6.4/config/auto/gcc.pm 2008-02-23 18:27:32.000000000 +0000
219 +++ src/parrot-0.6.4/config/auto/gcc.pm 2008-07-27 10:54:15.703125000 +0000
220 @@ -86,6 +86,7 @@
221 print " (yep: $gccversion )" if $verbose;
222 $self->set_result('yes');
224 + # Don't worry about too many redundant warnings in this list.
225 my $ccwarn = $conf->data->get('ccwarn');
227 $conf->data->set( sym_export => '__attribute__ ((visibility("default")))' )
228 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/auto/jit/test_exec_cygwin.in src/parrot-0.6.4/config/auto/jit/test_exec_cygwin.in
229 --- origsrc/parrot-0.6.4/config/auto/jit/test_exec_cygwin.in 2008-03-16 09:53:34.000000000 +0000
230 +++ src/parrot-0.6.4/config/auto/jit/test_exec_cygwin.in 2008-07-27 10:54:15.703125000 +0000
231 @@ -5,6 +5,7 @@
232 #include <errno.h>
233 #include <malloc.h>
234 #include <unistd.h>
235 +#include <string.h>
236 #ifndef PAGE_SIZE
237 # define PAGE_SIZE getpagesize()
238 #endif
239 @@ -40,7 +41,7 @@
240 if (atoi(argv[1]))
241 prot |= PROT_EXEC;
243 - p = memalign(PAGE_SIZE, sizeof(code));
244 + p = memalign(PAGE_SIZE, PAGE_SIZE);
245 memcpy(p, code, sizeof(code));
247 t = (pf) p;
248 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/auto/opengl.pm src/parrot-0.6.4/config/auto/opengl.pm
249 --- origsrc/parrot-0.6.4/config/auto/opengl.pm 2008-06-02 17:35:05.000000000 +0000
250 +++ src/parrot-0.6.4/config/auto/opengl.pm 2008-07-27 10:54:15.703125000 +0000
251 @@ -109,11 +109,16 @@
253 XXXX: No details yet
255 +=head3 Cygwin/w32api
257 -=head3 cygwin
258 +F<opengl>, F<w32api>
260 - XXXX: No details yet
261 +=head3 Cygwin/X
263 +F<freeglut>, F<xorg-x11-devel>
265 +This is detected if freeglut is installed and DISPLAY is set.
266 +It requires an X server.
268 =cut
270 @@ -163,6 +168,11 @@
271 conf => $conf,
272 osname => $osname,
273 cc => $cc,
274 + # Prefer Cygwin/w32api over Cygwin/X, but use X when DISPLAY is set
275 + ($^O eq 'cygwin') ?
276 + ($ENV{DISPLAY} ? (cygwin => '-lglut -L/usr/X11R6/lib -lGLU -lGL')
277 + : (cygwin => '/usr/bin/glut32.dll -lglu32 -lopengl32'))
278 + : (),
279 win32_gcc => '-lglut32 -lglu32 -lopengl32',
280 win32_nongcc => 'opengl32.lib glu32.lib glut32.lib',
281 darwin => '-framework OpenGL -framework GLUT',
282 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/auto/warnings.pm src/parrot-0.6.4/config/auto/warnings.pm
283 --- origsrc/parrot-0.6.4/config/auto/warnings.pm 2008-06-02 17:35:05.000000000 +0000
284 +++ src/parrot-0.6.4/config/auto/warnings.pm 2008-07-27 10:54:15.703125000 +0000
285 @@ -11,6 +11,8 @@
286 -Wchar-subscripts, etc., that the compiler can support. Directly hacked
287 from F<config/auto/attributes.pm>.
289 +Don't worry about redundant warning flags, automatically implied by -Wall.
291 =head1 SUBROUTINES
293 =over 4
294 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/gen/languages.pm src/parrot-0.6.4/config/gen/languages.pm
295 --- origsrc/parrot-0.6.4/config/gen/languages.pm 2008-07-02 13:38:41.000000000 +0000
296 +++ src/parrot-0.6.4/config/gen/languages.pm 2008-07-27 10:54:15.718750000 +0000
297 @@ -75,7 +75,7 @@
299 elsif ( $language eq 'c99' ) {
300 $conf->genfile("$langdir/config/makefiles/root.in" => "$langdir/Makefile");
301 - $conf->genfile("$langdir/config/makefiles/cpp.in" => "$langdir/src/cpp//Makefile");
302 + $conf->genfile("$langdir/config/makefiles/cpp.in" => "$langdir/src/cpp/Makefile");
304 elsif ( $language eq 'tcl' ) {
305 # tcl has more than one Makefile
306 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/gen/makefiles/languages.in src/parrot-0.6.4/config/gen/makefiles/languages.in
307 --- origsrc/parrot-0.6.4/config/gen/makefiles/languages.in 2008-07-02 13:38:41.000000000 +0000
308 +++ src/parrot-0.6.4/config/gen/makefiles/languages.in 2008-07-27 10:54:15.718750000 +0000
309 @@ -1,4 +1,4 @@
310 -# $Id$
311 +# $Id$ -*- Makefile -*-
313 # setup of commands
314 @make_set_make@
315 @@ -47,6 +47,12 @@
316 @echo ""
317 @echo " test-separate: Run 'make test' in the individual lang dirs."
318 @echo ""
319 + @echo " installable: Create self-hosting bins and libs."
320 + @echo ""
321 + @echo " test-installable: Test self-hosting bins and libs."
322 + @echo ""
323 + @echo " install: Copy installable and more to DESTDIR."
324 + @echo ""
325 @echo " clean: Clean up a lot of languages."
326 @echo ""
327 @echo " help: Print this help message."
328 @@ -60,13 +66,16 @@
329 @echo "Following languages are available:"
330 @echo " $(LANGUAGES)"
331 @echo ""
332 - @echo "A particular language <lang> can be built, tested and cleand up"
333 + @echo "A particular language <lang> can be built, tested and cleaned up"
334 @echo " make <lang>"
335 @echo " make <lang>.test"
336 + @echo " make <lang>.installable"
337 + @echo " make <lang>.test-installable"
338 + @echo " make <lang>.install"
339 @echo " make <lang>.clean"
340 @echo " make <lang>.realclean"
341 @echo ""
342 - @echo "For the status of individual languages see LANGUAGES.STATUS.pod"
343 + @echo "For the status of individual languages see LANGUAGES_STATUS.pod"
344 @echo ""
346 # regenerate the Makefile
347 @@ -98,6 +107,65 @@
348 WMLScript.test \
349 Zcode.test
351 +installable : all \
352 + abc.installable APL.installable \
353 + befunge.installable bf.installable \
354 + c99.installable cardinal.installable chitchat.installable cola.installable \
355 + dotnet.installable \
356 + eclectus.installable ecmascript.installable \
357 + forth.installable \
358 + hq9plus.installable \
359 + jako.installable json.installable \
360 + lazy-k.installable lisp.installable lolcode.installable lua.installable \
361 + m4.installable \
362 + ook.installable \
363 + parrot_compiler.installable perl6.installable pheme.installable PIR.installable pipp.installable pugs.installable punie.installable pynie.installable \
364 + regex.installable \
365 + scheme.installable squaak.installable \
366 + tcl.installable \
367 + urm.installable unlambda.installable \
368 + WMLScript.installable \
369 + Zcode.installable
371 +test-installable : all \
372 + abc.test-installable APL.test-installable \
373 + befunge.test-installable bf.test-installable \
374 + c99.test-installable cardinal.test-installable chitchat.test-installable cola.test-installable \
375 + dotnet.test-installable \
376 + eclectus.test-installable ecmascript.test-installable \
377 + forth.test-installable \
378 + hq9plus.test-installable \
379 + jako.test-installable json.test-installable \
380 + lazy-k.test-installable lisp.test-installable lolcode.test-installable lua.test-installable \
381 + m4.test-installable \
382 + ook.test-installable \
383 + parrot_compiler.test-installable perl6.test-installable pheme.test-installable PIR.test-installable pipp.test-installable pugs.test-installable punie.test-installable pynie.test-installable \
384 + regex.test-installable \
385 + scheme.test-installable squaak.test-installable \
386 + tcl.test-installable \
387 + urm.test-installable unlambda.test-installable \
388 + WMLScript.test-installable \
389 + Zcode.test-installable
391 +install : all \
392 + abc.install APL.install \
393 + befunge.install bf.install \
394 + c99.install cardinal.install chitchat.install cola.install \
395 + dotnet.install \
396 + eclectus.install ecmascript.install \
397 + forth.install \
398 + hq9plus.install \
399 + jako.install json.install \
400 + lazy-k.install lisp.install lolcode.install lua.install \
401 + m4.install \
402 + ook.install \
403 + parrot_compiler.install perl6.install pheme.install PIR.install pipp.install pugs.install punie.install pynie.install \
404 + regex.install \
405 + scheme.install squaak.install \
406 + tcl.install \
407 + urm.install unlambda.install \
408 + WMLScript.install \
409 + Zcode.install
411 smoke: all
412 $(PERL) t/harness --html
413 @@ -160,6 +228,12 @@
414 - $(MAKE) abc
415 abc.test:
416 - $(MAKE) abc test
417 +abc.installable:
418 + - $(MAKE) abc installable
419 +abc.test-installable:
420 + - $(MAKE) abc test-installable
421 +abc.install:
422 + - $(MAKE) abc install
423 abc.clean:
424 - $(MAKE) abc clean
425 abc.realclean:
426 @@ -170,6 +244,12 @@
427 - $(MAKE) APL
428 APL.test:
429 - $(MAKE) APL test
430 +APL.installable:
431 + - $(MAKE) APL installable
432 +APL.test-installable:
433 + - $(MAKE) APL test-installable
434 +APL.install:
435 + - $(MAKE) APL install
436 APL.clean:
437 - $(MAKE) APL clean
438 APL.realclean:
439 @@ -180,6 +260,12 @@
440 # don't know how to build BASIC
441 BASIC.test:
442 # Don't know how to test BASIC
443 +BASIC.installable:
444 +# Missing for BASIC
445 +BASIC.test-installable:
446 +# Missing for BASIC
447 +BASIC.install:
448 +# Missing for BASIC
449 BASIC.clean:
450 # Don't know how to clean BASIC
452 @@ -188,6 +274,12 @@
453 - $(MAKE) befunge
454 befunge.test:
455 - $(MAKE) befunge test
456 +befunge.installable:
457 + - $(MAKE) befunge installable
458 +befunge.test-installable:
459 + - $(MAKE) befunge test-installable
460 +befunge.install:
461 + - $(MAKE) befunge install
462 befunge.clean:
463 - $(MAKE) befunge clean
464 befunge.realclean:
465 @@ -198,6 +290,12 @@
466 - $(MAKE) bf
467 bf.test:
468 - $(MAKE) bf test
469 +bf.installable:
470 + - $(MAKE) bf installable
471 +bf.test-installable:
472 + - $(MAKE) bf test-installable
473 +bf.install:
474 + - $(MAKE) bf install
475 bf.clean:
476 - $(MAKE) bf clean
477 bf.realclean:
478 @@ -208,6 +306,12 @@
479 - $(MAKE) c99
480 c99.test:
481 - $(MAKE) c99 test
482 +c99.installable:
483 + - $(MAKE) c99 installable
484 +c99.test-installable:
485 + - $(MAKE) c99 test-installable
486 +c99.install:
487 + - $(MAKE) c99 install
488 c99.clean:
489 - $(MAKE) c99 clean
490 c99.realclean:
491 @@ -228,6 +332,12 @@
492 - $(MAKE) chitchat
493 chitchat.test:
494 - $(MAKE) chitchat test
495 +chitchat.installable:
496 + - $(MAKE) chitchat installable
497 +chitchat.test-installable:
498 + - $(MAKE) chitchat test-installable
499 +chitchat.install:
500 + - $(MAKE) chitchat install
501 chitchat.clean:
502 - $(MAKE) chitchat clean
503 chitchat.realclean:
504 @@ -238,6 +348,12 @@
505 - $(MAKE) cola
506 cola.test:
507 - $(MAKE) cola test
508 +cola.installable:
509 + - $(MAKE) cola installable
510 +cola.test-installable:
511 + - $(MAKE) cola test-installable
512 +cola.install:
513 + - $(MAKE) cola install
514 cola.clean:
515 - $(MAKE) cola clean
516 cola.realclean:
517 @@ -259,6 +375,12 @@
518 - $(MAKE) eclectus
519 eclectus.test :
520 - $(MAKE) eclectus test
521 +eclectus.installable:
522 + - $(MAKE) eclectus installable
523 +eclectus.test-installable:
524 + - $(MAKE) eclectus test-installable
525 +eclectus.install:
526 + - $(MAKE) eclectus install
527 eclectus.clean :
528 - $(MAKE) eclectus clean
529 eclectus.realclean :
530 @@ -269,6 +391,12 @@
531 - $(MAKE) ecmascript
532 ecmascript.test:
533 - $(MAKE) ecmascript test
534 +ecmascript.installable:
535 + - $(MAKE) ecmascript installable
536 +ecmascript.test-installable:
537 + - $(MAKE) ecmascript test-installable
538 +ecmascript.install:
539 + - $(MAKE) ecmascript install
540 ecmascript.clean:
541 - $(MAKE) ecmascript clean
542 ecmascript.realclean:
543 @@ -289,6 +417,12 @@
544 - $(MAKE) hq9plus
545 hq9plus.test:
546 - $(MAKE) hq9plus test
547 +hq9plus.installable:
548 + - $(MAKE) hq9plus installable
549 +hq9plus.test-installable:
550 + - $(MAKE) hq9plus test-installable
551 +hq9plus.install:
552 + - $(MAKE) hq9plus install
553 hq9plus.clean:
554 - $(MAKE) hq9plus clean
555 hq9plus.realclean:
556 @@ -299,6 +433,12 @@
557 - $(MAKE) jako
558 jako.test:
559 - $(MAKE) jako test
560 +abc.installable:
561 + - $(MAKE) jako installable
562 +jako.test-installable:
563 + - $(MAKE) jako test-installable
564 +jako.install:
565 + - $(MAKE) jako install
566 jako.clean:
567 - $(MAKE) jako clean
568 jako.realclean:
569 @@ -309,6 +449,12 @@
570 - $(MAKE) json
571 json.test:
572 - $(MAKE) json test
573 +json.installable:
574 + - $(MAKE) json installable
575 +json.test-installable:
576 + - $(MAKE) json test-installable
577 +json.install:
578 + - $(MAKE) json install
579 json.clean:
580 - $(MAKE) json clean
581 json.realclean:
582 @@ -319,6 +465,12 @@
583 - $(MAKE) lazy-k
584 lazy-k.test:
585 - $(MAKE) lazy-k test
586 +lazy-k.installable:
587 + - $(MAKE) lazy-k installable
588 +lazy-k.test-installable:
589 + - $(MAKE) lazy-k test-installable
590 +lazy-k.install:
591 + - $(MAKE) lazy-k install
592 lazy-k.clean:
593 - $(MAKE) lazy-k clean
594 lazy-k.realclean:
595 @@ -329,6 +481,12 @@
596 - $(MAKE) lisp
597 lisp.test:
598 - $(MAKE) lisp test
599 +lisp.installable:
600 + - $(MAKE) lisp installable
601 +lisp.test-installable:
602 + - $(MAKE) lisp test-installable
603 +lisp.install:
604 + - $(MAKE) lisp install
605 lisp.clean:
606 - $(MAKE) lisp clean
607 lisp.realclean:
608 @@ -339,6 +497,12 @@
609 - $(MAKE) lolcode
610 lolcode.test:
611 - $(MAKE) lolcode test
612 +lolcode.installable:
613 + - $(MAKE) lolcode installable
614 +lolcode.test-installable:
615 + - $(MAKE) lolcode test-installable
616 +lolcode.install:
617 + - $(MAKE) lolcode install
618 lolcode.clean:
619 - $(MAKE) lolcode clean
620 lolcode.realclean:
621 @@ -349,6 +513,12 @@
622 - $(MAKE) lua
623 lua.test:
624 - $(MAKE) lua test
625 +lua.installable:
626 + - $(MAKE) lua installable
627 +lua.test-installable:
628 + - $(MAKE) lua test-installable
629 +lua.install:
630 + - $(MAKE) lua install
631 lua.clean:
632 - $(MAKE) lua clean
633 lua.realclean:
634 @@ -369,6 +539,12 @@
635 - $(MAKE) ook
636 ook.test:
637 - $(MAKE) ook test
638 +ook.installable:
639 + - $(MAKE) ook installable
640 +ook.test-installable:
641 + - $(MAKE) ook test-installable
642 +ook.install:
643 + - $(MAKE) ook install
644 ook.clean:
645 - $(MAKE) ook clean
646 ook.realclean:
647 @@ -389,6 +565,12 @@
648 - $(MAKE) perl6
649 perl6.test:
650 - $(MAKE) perl6 test
651 +perl6.installable:
652 + - $(MAKE) perl6 installable
653 +perl6.test-installable:
654 + - $(MAKE) perl6 test-installable
655 +perl6.install:
656 + - $(MAKE) perl6 install
657 perl6.clean:
658 - $(MAKE) perl6 clean
659 perl6.realclean:
660 @@ -409,6 +591,12 @@
661 - $(MAKE) pipp
662 pipp.test:
663 - $(MAKE) pipp test
664 +pipp.installable:
665 + - $(MAKE) pipp installable
666 +pipp.test-installable:
667 + - $(MAKE) pipp test-installable
668 +pipp.install:
669 + - $(MAKE) pipp install
670 pipp.clean:
671 - $(MAKE) pipp clean
672 pipp.realclean:
673 @@ -429,6 +617,12 @@
674 - $(MAKE) pugs
675 pugs.test:
676 - $(MAKE) pugs test
677 +pugs.installable:
678 + - $(MAKE) pugs installable
679 +pugs.test-installable:
680 + - $(MAKE) pugs test-installable
681 +pugs.install:
682 + - $(MAKE) pugs install
683 pugs.clean:
684 - $(MAKE) pugs clean
685 pugs.realclean:
686 @@ -449,6 +643,12 @@
687 - $(MAKE) pynie
688 pynie.test:
689 - $(MAKE) pynie test
690 +pynie.installable:
691 + - $(MAKE) pynie installable
692 +pynie.test-installable:
693 + - $(MAKE) pynie test-installable
694 +pynie.install:
695 + - $(MAKE) pynie install
696 pynie.clean:
697 - $(MAKE) pynie clean
698 pynie.realclean:
699 @@ -469,6 +669,12 @@
700 @echo "SKIPPED: scheme: (nothing to make, but should not default to make test)"
701 scheme.test :
702 - $(MAKE) scheme test
703 +scheme.installable:
704 + - $(MAKE) scheme installable
705 +scheme.test-installable:
706 + - $(MAKE) scheme test-installable
707 +scheme.install:
708 + - $(MAKE) scheme install
709 scheme.clean :
710 - $(MAKE) scheme clean
711 scheme.realclean :
712 @@ -489,6 +695,12 @@
713 - $(MAKE) tcl
714 tcl.test:
715 - $(MAKE) tcl test
716 +tcl.installable:
717 + - $(MAKE) tcl installable
718 +tcl.test-installable:
719 + - $(MAKE) tcl test-installable
720 +tcl.install:
721 + - $(MAKE) tcl install
722 tcl.clean:
723 - $(MAKE) tcl clean
724 tcl.realclean:
725 @@ -509,6 +721,12 @@
726 - $(MAKE) urm
727 urm.test:
728 - $(MAKE) urm test
729 +urm.installable:
730 + - $(MAKE) urm installable
731 +urm.test-installable:
732 + - $(MAKE) urm test-installable
733 +urm.install:
734 + - $(MAKE) urm install
735 urm.clean:
736 - $(MAKE) urm clean
737 urm.realclean:
738 @@ -519,6 +737,12 @@
739 - $(MAKE) WMLScript
740 WMLScript.test:
741 - $(MAKE) WMLScript test
742 +WMLScript.installable:
743 + - $(MAKE) WMLScript installable
744 +WMLScript.test-installable:
745 + - $(MAKE) WMLScript test-installable
746 +WMLScript.install:
747 + - $(MAKE) WMLScript install
748 WMLScript.clean:
749 - $(MAKE) WMLScript clean
750 WMLScript.realclean:
751 @@ -529,6 +753,12 @@
752 # Do nothing. make Zcode requires an Inform compiler
753 Zcode.test:
754 - $(MAKE) Zcode test
755 +Zcode.installable:
756 + - $(MAKE) Zcode installable
757 +Zcode.test-installable:
758 + - $(MAKE) Zcode test-installable
759 +Zcode.install:
760 + - $(MAKE) Zcode install
761 Zcode.clean:
762 - $(MAKE) Zcode clean
763 Zcode.realclean:
764 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/gen/makefiles/root.in src/parrot-0.6.4/config/gen/makefiles/root.in
765 --- origsrc/parrot-0.6.4/config/gen/makefiles/root.in 2008-07-15 07:50:15.000000000 +0000
766 +++ src/parrot-0.6.4/config/gen/makefiles/root.in 2008-07-27 10:54:15.718750000 +0000
767 @@ -467,7 +467,7 @@
768 PDUMP = $(CUR_DIR)/pdump$(EXE)
769 PINFO = $(CUR_DIR)/pbc_info$(EXE)
770 PBCMERGE = $(CUR_DIR)/pbc_merge$(EXE)
771 -PDB = $(CUR_DIR)/pdb$(EXE)
772 +PDB = $(CUR_DIR)/parrot_debugger$(EXE)
773 PBC_TO_EXE = $(CUR_DIR)/pbc_to_exe$(EXE)
774 PARROT_CONFIG = $(CUR_DIR)/parrot-config$(EXE)
776 @@ -480,7 +480,7 @@
777 INSTALLABLEPDUMP = $(CUR_DIR)/installable_pdump$(EXE)
778 INSTALLABLEPINFO = $(CUR_DIR)/installable_pbc_info$(EXE)
779 INSTALLABLEPBCMERGE = $(CUR_DIR)/installable_pbc_merge$(EXE)
780 -INSTALLABLEPDB = $(CUR_DIR)/installable_pdb$(EXE)
781 +INSTALLABLEPDB = $(CUR_DIR)/installable_parrot_debugger$(EXE)
783 # Libraries
784 LIBPARROT_STATIC = @blib_dir@/@libparrot_static@
785 @@ -773,8 +773,8 @@
786 lib/Parrot/OpLib/core.pm $(SRC_DIR)/parrot_config$(O) \
787 $(MINIPARROT)
788 $(LINK) @ld_out@$@ \
789 - $(SRC_DIR)/main$(O) @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS) $(LINK_DYNAMIC) \
790 - $(SRC_DIR)/parrot_config$(O)
791 + $(SRC_DIR)/main$(O) @rpath_blib@ $(LINKFLAGS) $(LINK_DYNAMIC) \
792 + $(SRC_DIR)/parrot_config$(O) $(ALL_PARROT_LIBS)
794 pbc_to_exe.pir : $(PARROT) tools/dev/pbc_to_exe_gen.pl
795 $(PERL) tools/dev/pbc_to_exe_gen.pl \
796 @@ -801,15 +801,15 @@
797 # TODO build the real miniparrot
798 $(MINIPARROT) : $(SRC_DIR)/main$(O) $(GEN_HEADERS) $(LIBPARROT) \
799 lib/Parrot/OpLib/core.pm $(SRC_DIR)/null_config$(O)
800 - $(LINK) @ld_out@$@ $(SRC_DIR)/main$(O) \
801 - @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS) $(SRC_DIR)/null_config$(O)
802 + $(LINK) @ld_out@$@ $(SRC_DIR)/main$(O) $(SRC_DIR)/null_config$(O) \
803 + @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
805 $(INSTALLABLEPARROT) : $(SRC_DIR)/main$(O) $(GEN_HEADERS) $(LIBPARROT) \
806 lib/Parrot/OpLib/core.pm $(SRC_DIR)/install_config$(O) \
807 $(PARROT)
808 $(LINK) @ld_out@$@ \
809 - $(SRC_DIR)/main$(O) \
810 - $(ALL_PARROT_LIBS) $(LINKFLAGS) $(SRC_DIR)/install_config$(O)
811 + $(SRC_DIR)/main$(O) $(SRC_DIR)/install_config$(O) \
812 + $(LINKFLAGS) $(ALL_PARROT_LIBS)
814 $(INC_DIR)/parrot.h : $(INC_DIR)/pbcversion.h $(INC_DIR)/vtable.h
816 @@ -878,7 +878,8 @@
817 $(LIBPARROT_SHARED) : $(O_FILES)
818 $(MKPATH) @blib_dir@
819 $(LD) $(LD_SHARE_FLAGS) $(LDFLAGS) @ld_out@$@ @libparrot_soname@ \
820 - $(O_FILES) $(C_LIBS) $(ICU_SHARED)
821 +#CONDITIONED_LINE(cygchkdll): -Wl,--out-implib=blib/lib/libparrot.dll.a \
822 + $(O_FILES) $(C_LIBS) $(ICU_SHARED)
823 #CONDITIONED_LINE(libparrot_shared_alias): ( cd @blib_dir@ ; ln -sf @libparrot_shared@ @libparrot_shared_alias@ )
826 @@ -886,17 +887,17 @@
827 # Parrot Debugger
830 -$(SRC_DIR)/pdb$(O) : $(GENERAL_H_FILES)
831 +$(SRC_DIR)/parrot_debugger$(O) : $(GENERAL_H_FILES)
833 -$(PDB) : $(SRC_DIR)/pdb$(O) $(LIBPARROT)
834 +$(PDB) : $(SRC_DIR)/parrot_debugger$(O) $(LIBPARROT)
835 $(LINK) @ld_out@$@ \
836 - $(SRC_DIR)/pdb$(O) \
837 - @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS)
838 + $(SRC_DIR)/parrot_debugger$(O) \
839 + @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
841 -$(INSTALLABLEPDB) : $(SRC_DIR)/pdb$(O) $(LIBPARROT)
842 +$(INSTALLABLEPDB) : $(SRC_DIR)/parrot_debugger$(O) $(LIBPARROT)
843 $(LINK) @ld_out@$@ \
844 - $(SRC_DIR)/pdb$(O) \
845 - $(ALL_PARROT_LIBS) $(LINKFLAGS)
846 + $(SRC_DIR)/parrot_debugger$(O) \
847 + $(LINKFLAGS) $(ALL_PARROT_LIBS)
850 # Parrot Disassembler
851 @@ -907,12 +908,12 @@
852 $(DIS) : $(SRC_DIR)/pbc_disassemble$(O) $(LIBPARROT)
853 $(LINK) @ld_out@$@ \
854 $(SRC_DIR)/pbc_disassemble$(O) \
855 - @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS)
856 + @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
858 $(INSTALLABLEDIS) : $(SRC_DIR)/pbc_disassemble$(O) $(LIBPARROT)
859 $(LINK) @ld_out@$@ \
860 $(SRC_DIR)/pbc_disassemble$(O) \
861 - $(ALL_PARROT_LIBS) $(LINKFLAGS)
862 + $(LINKFLAGS) $(ALL_PARROT_LIBS)
865 # Parrot Dump
866 @@ -921,28 +922,28 @@
867 $(PDUMP) : $(SRC_DIR)/pdump$(O) $(SRC_DIR)/packdump$(O) $(LIBPARROT)
868 $(LINK) @ld_out@$@ \
869 $(SRC_DIR)/pdump$(O) \
870 - $(SRC_DIR)/packdump$(O) @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS)
871 + $(SRC_DIR)/packdump$(O) @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
873 $(SRC_DIR)/pdump$(O) : $(GEN_HEADERS)
875 $(INSTALLABLEPDUMP) : $(SRC_DIR)/pdump$(O) $(SRC_DIR)/packdump$(O) $(LIBPARROT)
876 $(LINK) @ld_out@$@ \
877 $(SRC_DIR)/pdump$(O) \
878 - $(SRC_DIR)/packdump$(O) $(ALL_PARROT_LIBS) $(LINKFLAGS)
879 + $(SRC_DIR)/packdump$(O) $(LINKFLAGS) $(ALL_PARROT_LIBS)
882 # pbc_info
883 $(PINFO) : $(SRC_DIR)/pbc_info$(O) $(LIBPARROT)
884 $(LINK) @ld_out@$@ \
885 $(SRC_DIR)/pbc_info$(O) \
886 - @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS)
887 + @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
889 $(SRC_DIR)/pbc_info$(O) : $(GEN_HEADERS)
891 $(INSTALLABLEPINFO) : $(SRC_DIR)/pbc_info$(O) $(LIBPARROT)
892 $(LINK) @ld_out@$@ \
893 $(SRC_DIR)/pbc_info$(O) \
894 - $(ALL_PARROT_LIBS) $(LINKFLAGS)
895 + $(LINKFLAGS) $(ALL_PARROT_LIBS)
898 # Parrot Bytecode File Merger
899 @@ -959,7 +960,7 @@
900 $(LINK) @ld_out@$@ \
901 $(SRC_DIR)/pbc_merge$(O) \
902 $(SRC_DIR)/install_config$(O) \
903 - $(ALL_PARROT_LIBS) $(LINKFLAGS)
904 + $(LINKFLAGS) $(ALL_PARROT_LIBS)
907 ###############################################################################
908 @@ -1606,7 +1607,7 @@
909 $(IMCC_DIR)/main$(O) \
910 $(PDUMP) $(SRC_DIR)/pdump$(O) $(SRC_DIR)/packdump$(O) \
911 $(SRC_DIR)/pbc_info$(O) $(PINFO) \
912 - $(PDB) $(SRC_DIR)/pdb$(O) \
913 + $(PDB) $(SRC_DIR)/parrot_debugger$(O) \
914 $(PBCMERGE) $(SRC_DIR)/pbc_merge$(O) \
915 $(DIS) $(SRC_DIR)/pbc_disassemble$(O) \
916 $(SRC_DIR)/main$(O) \
917 @@ -1642,7 +1643,7 @@
918 $(IMCC_DIR)/main$(O) \
919 $(PDUMP) $(SRC_DIR)/pdump$(O) $(SRC_DIR)/packdump$(O) \
920 $(SRC_DIR)/pbc_info$(O) $(PINFO) \
921 - $(PDB) $(SRC_DIR)/pdb$(O) \
922 + $(PDB) $(SRC_DIR)/parrot_debugger$(O) \
923 $(PBCMERGE) $(SRC_DIR)/pbc_merge$(O) \
924 $(DIS) $(SRC_DIR)/pbc_disassemble$(O) \
925 $(SRC_DIR)/null_config$(O) \
926 @@ -1720,7 +1721,7 @@
927 $(RM_F) \
928 "t/tools/pmc2c.t_*" \
929 "t/tools/pmc2c.pmc_t_*" \
930 - "t/tools/pdb.t.*"
931 + "t/tools/parrot_debugger.t.*"
932 $(RM_F) \
933 "test$(EXE)" \
934 "test.*"
935 @@ -2164,7 +2165,7 @@
936 ###############################################################################
938 exec : $(SRC_DIR)/exec_start$(O) $(SRC_DIR)/parrot_config$(O) $(LIBPARROT)
939 - $(LINK) @ld_out@$(EXEC)$(EXE) $(EXEC)$(O) $(SRC_DIR)/exec_start$(O) $(SRC_DIR)/parrot_config$(O) @rpath_blib@ $(ALL_PARROT_LIBS) $(LINKFLAGS)
940 + $(LINK) @ld_out@$(EXEC)$(EXE) $(EXEC)$(O) $(SRC_DIR)/exec_start$(O) $(SRC_DIR)/parrot_config$(O) @rpath_blib@ $(LINKFLAGS) $(ALL_PARROT_LIBS)
942 ###### OS depend targets ##########
944 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/init/hints/cygwin.pm src/parrot-0.6.4/config/init/hints/cygwin.pm
945 --- origsrc/parrot-0.6.4/config/init/hints/cygwin.pm 2008-06-02 17:35:05.000000000 +0000
946 +++ src/parrot-0.6.4/config/init/hints/cygwin.pm 2008-07-27 10:54:15.718750000 +0000
947 @@ -13,18 +13,30 @@
948 # in the standard installation, so we get rid of it
949 my $libs = $conf->data->get('libs');
950 $libs =~ s/-lutil\b//g;
951 + # same for -lm and -dl
952 + $libs =~ s/-lm\b//g;
953 + $libs =~ s/-ldl\b//g;
955 my $build_dir = $conf->data->get('build_dir');
956 $build_dir =~ s/ /\\ /g;
957 + my $libparrot_shared = $conf->data->get('libparrot_shared');
958 + # force cyg prefix
959 + $libparrot_shared =~ s/^lib/cyg/g;
960 + # force the dll versioning
961 + my @parrot_version = Parrot::BuildUtil::parrot_version();
962 + my $dllsuffix = join("_",@parrot_version);
963 + $libparrot_shared =~ s/parrot\.dll/parrot$dllsuffix\.dll/;
965 - # A note about building shared libraries: Perl5 uses the 'ld2' tool, which
966 - # is installed as part of the perl5 installation. So far, it appears
967 - # parrot can get by with simply using gcc -shared, so we override the
968 - # perl5 Configure defaults and use 'gcc -shared' instead of 'ld2'.
969 + # An old note about building shared libraries: Perl5.8 used the
970 + # 'ld2' tool, which is installed as part of the perl5 installation.
971 + # So far, it appears parrot can get by with simply using gcc -shared,
972 + # so we override the perl5 Configure defaults and use 'gcc -shared'
973 + # instead of 'ld2'.
974 # If this later causes problems, it might be worth revisiting.
975 # A. Dougherty 9/9/2002
976 $conf->data->set(
977 build_dir => $build_dir,
978 + libparrot_shared => $libparrot_shared,
979 ld => 'gcc',
980 ld_share_flags => '-shared',
981 ld_load_flags => '-shared',
982 @@ -37,6 +49,7 @@
983 cygchkdll => 'tools/build/cygchkdll.sh $(MINIPARROT) $(LIBPARROT)',
987 # inet_aton needs to be defined on Cygwin.
988 my $define = $conf->options->get('define');
989 unless ($define) {
990 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/config/inter/libparrot.pm src/parrot-0.6.4/config/inter/libparrot.pm
991 --- origsrc/parrot-0.6.4/config/inter/libparrot.pm 2008-05-11 13:27:01.000000000 +0000
992 +++ src/parrot-0.6.4/config/inter/libparrot.pm 2008-07-27 10:54:15.718750000 +0000
993 @@ -46,6 +46,8 @@
994 # of the shared parrot library. However, 'libparrot.so' will catch
995 # at least some of the problems.
996 # RT#52288: the check for old_versions should be improved
997 + # The cygwin build with a preexisting libparrot.dll in the PATH
998 + # works fine if blib/lib is in the PATH before.
999 my $old_version
1000 = File::Spec->catfile($conf->data->get('libdir'), 'libparrot.so');
1001 if (-e $old_version) {
1002 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/docs/debug.pod src/parrot-0.6.4/docs/debug.pod
1003 --- origsrc/parrot-0.6.4/docs/debug.pod 2008-02-23 18:27:15.000000000 +0000
1004 +++ src/parrot-0.6.4/docs/debug.pod 2008-07-27 10:54:15.718750000 +0000
1005 @@ -75,10 +75,10 @@
1006 Let's say you have written (or generated) a huge .pasm or .pir file. It's not
1007 working. You'd like some help in figuring out why.
1009 -=head2 pdb
1010 +=head2 parrot_debugger
1012 -One possible tool is C<pdb>, the Parrot Debugger. See F<docs/debugger.pod> for
1013 -details on it.
1014 +One possible tool is C<parrot_debugger>, the Parrot Debugger. See
1015 +F<docs/debugger.pod> for details on it.
1017 =head2 stabs
1019 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/docs/debugger.pod src/parrot-0.6.4/docs/debugger.pod
1020 --- origsrc/parrot-0.6.4/docs/debugger.pod 2008-02-23 18:27:15.000000000 +0000
1021 +++ src/parrot-0.6.4/docs/debugger.pod 2008-07-27 10:54:15.734375000 +0000
1022 @@ -7,20 +7,20 @@
1024 =head1 ABSTRACT
1026 -This document describes F<pdb>, the Parrot Debugger.
1027 +This document describes F<parrot_debugger>, the Parrot Debugger.
1029 =head1 DESCRIPTION
1031 Starting from version 0.0.6 Parrot has its own debugger, which is modeled after
1032 -Perl's one. Its name is F<pdb>, and is an interactive environment that let you
1033 -step through bytecode, set breakpoints, evaluate assembly instructions and peek
1034 -at the interpreter status.
1035 +Perl's one. Its name is F<parrot_debugger>, and is an interactive environment
1036 +that let you step through bytecode, set breakpoints, evaluate assembly
1037 +instructions and peek at the interpreter status.
1039 A good (well, at least some) knowledge of the Parrot internals is obviously
1040 required to read this document. Some familiarity with debugging principles is
1041 also mandatory beyond this point.
1043 -=head1 BUILDING pdb
1044 +=head1 BUILDING parrot_debugger
1046 The debugger is not built with Parrot, but you should make it with its specific
1047 target:
1048 @@ -29,18 +29,18 @@
1050 (where C<make> is the same C<make> incarnation you used to build Parrot).
1052 -If everything goes well, you should come up with a F<pdb> executable in the
1053 -same directory as the Parrot program.
1054 +If everything goes well, you should come up with a F<parrot_debugger> executable
1055 +in the same directory as the Parrot program.
1057 =head1 THE DEBUGGER SHELL
1059 To start the debugger type:
1061 - pdb file.pbc
1062 + parrot_debugger file.pbc
1064 -That is, F<pdb> takes exactly one argument, which is the Parrot bytecode that
1065 -you're going to debug. F<pdb> will automatically load and disassemble the
1066 -bytecode file for you.
1067 +That is, F<parrot_debugger> takes exactly one argument, which is the Parrot
1068 +bytecode that you're going to debug. F<parrot_debugger> will automatically load
1069 +and disassemble the bytecode file for you.
1071 Note that you can't pass command line arguments to your program when you invoke
1072 the debugger. See the C<run (r)> command below for this.
1073 @@ -49,8 +49,8 @@
1075 (pdb)
1077 -F<pdb> is ready to receive commands and give output. To list the available
1078 -commands type 'h'. To quit the debugger type 'q'.
1079 +F<parrot_debugger> is ready to receive commands and give output. To list the
1080 +available commands type 'h'. To quit the debugger type 'q'.
1082 As with the Perl debugger, whenever it halts and shows you a line of code, it
1083 is always the line it's I<about> to execute, not the one that it has just
1084 @@ -69,10 +69,10 @@
1086 A blank line always repeats the last command entered.
1088 -Also note that at this point in its development, F<pdb> has very poor error
1089 -checking on commands and their arguments, so type carefully or something bad
1090 -will happen. Feel free to report bugs, or better yet patch the source code (see
1091 -L</FILES> below).
1092 +Also note that at this point in its development, F<parrot_debugger> has very
1093 +poor error checking on commands and their arguments, so type carefully or
1094 +something bad will happen. Feel free to report bugs, or better yet patch the
1095 +source code (see L</FILES> below).
1097 =over 4
1099 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/docs/parrot.pod src/parrot-0.6.4/docs/parrot.pod
1100 --- origsrc/parrot-0.6.4/docs/parrot.pod 2008-02-23 18:27:15.000000000 +0000
1101 +++ src/parrot-0.6.4/docs/parrot.pod 2008-07-27 10:54:15.734375000 +0000
1102 @@ -112,7 +112,7 @@
1104 =item F<debugger.pod>
1106 -Documentation for C<pdb>, the Parrot debugger.
1107 +Documentation for C<parrot_debugger>, the Parrot debugger.
1109 =back
1111 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/editor/parrot.el src/parrot-0.6.4/editor/parrot.el
1112 --- origsrc/parrot-0.6.4/editor/parrot.el 2008-02-26 18:33:25.000000000 +0000
1113 +++ src/parrot-0.6.4/editor/parrot.el 2008-07-27 10:54:15.734375000 +0000
1114 @@ -8,7 +8,7 @@
1115 ;; To use this file, copy it to a known location and add this statement to
1116 ;; your .emacs file:
1118 -;; (load-file "/known/location/parrot.el")
1119 +;; (load-file "/usr/share/emacs/site-lisp/parrot.el")
1122 (c-add-style "parrot"
1123 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/APL/config/makefiles/root.in src/parrot-0.6.4/languages/APL/config/makefiles/root.in
1124 --- origsrc/parrot-0.6.4/languages/APL/config/makefiles/root.in 2008-06-24 17:19:59.000000000 +0000
1125 +++ src/parrot-0.6.4/languages/APL/config/makefiles/root.in 2008-07-27 10:54:15.734375000 +0000
1126 @@ -1,12 +1,17 @@
1127 -## $Id$
1128 +## $Id$ -*- Makefile -*-
1130 ## arguments we want to run parrot with
1131 PARROT_ARGS =
1133 ## configuration settings
1134 +LANG = APL
1135 BUILD_DIR = @build_dir@
1136 LOAD_EXT = @load_ext@
1137 O = @o@
1138 +BIN_DIR = @bin_dir@
1139 +LIB_DIR = @lib_dir@
1140 +DOC_DIR = @doc_dir@
1141 +MANDIR = @mandir@
1143 ## Setup some commands
1144 LN_S = @lns@
1145 @@ -15,8 +20,10 @@
1146 CP = @cp@
1147 PARROT = ../../parrot@exe@
1148 CAT = $(PERL) -MExtUtils::Command -e cat
1149 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1150 BUILD_DYNPMC = $(PERL) $(BUILD_DIR)/tools/build/dynpmc.pl
1151 RECONFIGURE = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
1152 +POD2MAN = pod2man
1153 #CONDITIONED_LINE(darwin):
1154 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1155 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1156 @@ -42,11 +49,18 @@
1158 PMCS = aplvector
1159 PMC_SOURCES = $(PMC_DIR)/aplvector.pmc
1160 +DOCS = MAINTAINER README STATUS
1162 # the default target
1163 APL.pbc: $(PARROT) $(SOURCES) $(APL_GROUP)
1164 $(PARROT) $(PARROT_ARGS) -o APL.pbc APL.pir
1166 +$(LANG)@exe@: $(LANG).pbc
1167 + $(PBC_TO_EXE) $(LANG).pbc
1169 +installable_$(LANG)@exe@: $(LANG).pbc
1170 + $(PBC_TO_EXE) $(LANG).pbc --install
1172 src/gen_grammar.pir: $(PERL6GRAMMAR) src/parser/grammar.pg
1173 $(PARROT) $(PARROT_ARGS) $(PERL6GRAMMAR) \
1174 --encoding=utf8 \
1175 @@ -66,9 +80,13 @@
1176 cd $(PMC_DIR) && $(BUILD_DYNPMC) linklibs $(PMCS)
1177 cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
1179 +installable : installable_$(LANG)@exe@ $(ABC_GROUP)
1180 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1181 + cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
1183 # regenerate the Makefile
1184 Makefile: config/makefiles/root.in
1185 - cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=APL
1186 + cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=$(LANG)
1188 # This is a listing of all targets, that are meant to be called by users
1189 help:
1190 @@ -77,8 +95,11 @@
1191 @echo ""
1192 @echo " all: APL.pbc"
1193 @echo " This is the default."
1194 + @echo " install: install the installable targets and docs."
1195 + @echo ""
1196 @echo "Testing:"
1197 @echo " test: Run the test suite."
1198 + @echo " test-installable: Test self-hosting targets."
1199 @echo " testclean: Clean up test results."
1200 @echo ""
1201 @echo "Cleaning:"
1202 @@ -93,6 +114,16 @@
1203 test: all
1204 $(PERL) t/harness
1206 +# TODO: test for installed libs, rename build_dir. basic run for missing libs
1207 +test-installable : installable
1208 + ./installable_$(LANG)@exe@ demo.apl
1210 +install : installable
1211 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1212 + pod2man $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1213 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1214 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1216 testclean:
1217 $(RM_F) t/*.pir
1219 @@ -111,6 +142,8 @@
1220 $(PMC_DIR)/*.manifest \
1221 $(PMC_DIR)/*.pdb \
1222 $(PMC_DIR)/*.lib \
1223 + $(LANG)@exe@ \
1224 + installable_$(LANG)@exe@ \
1227 clean: testclean
1228 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/abc/config/makefiles/root.in src/parrot-0.6.4/languages/abc/config/makefiles/root.in
1229 --- origsrc/parrot-0.6.4/languages/abc/config/makefiles/root.in 2008-06-24 17:20:00.000000000 +0000
1230 +++ src/parrot-0.6.4/languages/abc/config/makefiles/root.in 2008-07-27 10:54:15.734375000 +0000
1231 @@ -1,12 +1,17 @@
1232 -# $Id$
1233 +# $Id$ -*- Makefile -*-
1235 ## arguments we want to run parrot with
1236 PARROT_ARGS =
1238 ## configuration settings
1239 +LANG = abc
1240 BUILD_DIR = @build_dir@
1241 LOAD_EXT = @load_ext@
1242 O = @o@
1243 +BIN_DIR = @bin_dir@
1244 +LIB_DIR = @lib_dir@
1245 +DOC_DIR = @doc_dir@
1246 +MANDIR = @mandir@
1248 ## Setup some commands
1249 LN_S = @lns@
1250 @@ -15,8 +20,10 @@
1251 CP = @cp@
1252 PARROT = ../../parrot@exe@
1253 CAT = $(PERL) -MExtUtils::Command -e cat
1254 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1255 BUILD_DYNPMC = $(PERL) $(BUILD_DIR)/tools/build/dynpmc.pl
1256 RECONFIGURE = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
1257 +POD2MAN = pod2man
1258 #CONDITIONED_LINE(darwin):
1259 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1260 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1261 @@ -45,11 +52,15 @@
1263 # PMCS = abc
1264 # PMC_SOURCES = $(PMC_DIR)/abc.pmc
1265 +DOCS = MAINTAINER README TODO
1267 # the default target
1268 abc.pbc: $(PARROT) $(SOURCES)
1269 $(PARROT) $(PARROT_ARGS) -o abc.pbc abc.pir
1271 +$(LANG)@exe@: $(LANG).pbc
1272 + $(PBC_TO_EXE) $(LANG).pbc
1274 src/gen_grammar.pir: $(PERL6GRAMMAR) src/parser/grammar.pg src/parser/grammar-oper.pg
1275 $(PARROT) $(PARROT_ARGS) $(PERL6GRAMMAR) \
1276 --output=src/gen_grammar.pir \
1277 @@ -69,9 +80,16 @@
1278 cd $(PMC_DIR) && $(BUILD_DYNPMC) linklibs $(PMCS)
1279 cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
1281 +installable : installable_$(LANG)@exe@ $(ABC_GROUP)
1282 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1283 + cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
1285 +installable_$(LANG)@exe@ : $(LANG).pbc
1286 + $(PBC_TO_EXE) $(LANG).pbc --install
1288 # regenerate the Makefile
1289 Makefile: config/makefiles/root.in
1290 - cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=abc
1291 + cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=$(LANG)
1293 # This is a listing of all targets, that are meant to be called by users
1294 help:
1295 @@ -80,8 +98,11 @@
1296 @echo ""
1297 @echo " all: abc.pbc"
1298 @echo " This is the default."
1299 + @echo " install: install the installable targets and docs."
1300 + @echo ""
1301 @echo "Testing:"
1302 @echo " test: Run the test suite."
1303 + @echo " test-installable: Test self-hosting targets."
1304 @echo " testclean: Clean up test results."
1305 @echo ""
1306 @echo "Cleaning:"
1307 @@ -96,6 +117,16 @@
1308 test: all
1309 prove -r t
1311 +# TODO: rename build_dir. basic run for missing libs
1312 +test-installable : installable
1313 + echo "2-1" | ./installable_$(LANG)@exe@
1315 +install : installable
1316 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1317 + $(POD2MAN) $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1318 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1319 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1321 testclean:
1322 $(RM_RF) "t/*.pir" "t/*.out"
1324 @@ -114,7 +145,8 @@
1325 $(PMC_DIR)/*.manifest \
1326 $(PMC_DIR)/*.pdb \
1327 $(PMC_DIR)/*.lib \
1329 + $(LANG)@exe@ \
1330 + installable_$(LANG)@exe@ \
1332 clean: testclean
1333 $(RM_RF) $(CLEANUPS)
1334 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/befunge/config/makefiles/root.in src/parrot-0.6.4/languages/befunge/config/makefiles/root.in
1335 --- origsrc/parrot-0.6.4/languages/befunge/config/makefiles/root.in 2008-06-24 17:20:00.000000000 +0000
1336 +++ src/parrot-0.6.4/languages/befunge/config/makefiles/root.in 2008-07-27 10:54:15.734375000 +0000
1337 @@ -1,31 +1,44 @@
1338 -# $Id$
1339 +# $Id$ -*- Makefile -*-
1341 # Makefile for languages/befunge
1342 +LANG = befunge
1344 +## configuration settings
1345 +BIN_DIR = @bin_dir@
1346 +LIB_DIR = @lib_dir@
1347 +DOC_DIR = @doc_dir@
1348 +MANDIR = @mandir@
1350 # Setup of some commands
1351 PARROT = ../../parrot
1352 PERL = @perl@
1353 RM_F = @rm_f@
1354 +POD2MAN = pod2man
1355 #CONDITIONED_LINE(darwin):
1356 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1357 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1359 +DOCS = MAINTAINER README Changes
1361 default: all
1363 help :
1364 @echo ""
1365 @echo "Following targets are available for the user:"
1366 @echo ""
1367 - @echo " build: Create befunge.pbc"
1368 + @echo " all: befunge.pbc"
1369 @echo " This is the default."
1370 @echo ""
1371 - @echo " test: run the test suite,"
1372 + @echo " install: Install the installable targets and docs."
1373 @echo ""
1374 - @echo " clean: clean up temporary files"
1375 + @echo " test: Run the test suite,"
1376 + @echo " test-installable: Test self-hosting targets."
1377 @echo ""
1378 - @echo " realclean: clean up generated files"
1379 + @echo " clean: Clean up temporary files"
1380 @echo ""
1381 - @echo " help: print this help message"
1382 + @echo " realclean: Clean up generated files"
1383 + @echo ""
1384 + @echo " help: Print this help message"
1387 all: build
1388 @@ -35,8 +48,28 @@
1389 befunge.pbc: befunge.pasm debug.pasm flow.pasm io.pasm load.pasm maths.pasm stack.pasm
1390 $(PARROT) -o befunge.pbc befunge.pasm
1392 +installable_$(LANG)@exe@: $(LANG).pbc
1393 + $(PBC_TO_EXE) $(LANG).pbc --install
1395 +installable : installable_$(LANG)@exe@
1396 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1398 +# regenerate the Makefile
1399 +Makefile: config/makefiles/root.in
1400 + cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=$(LANG)
1402 test: befunge.pbc
1403 - cd .. && $(PERL) t/harness --languages=befunge
1404 + cd .. && $(PERL) t/harness --languages=$(LANG)
1406 +# TODO: rename build_dir. basic run for missing libs
1407 +test-installable : installable
1408 + ./installable_$(LANG)@exe@ test.bef
1410 +install : installable
1411 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1412 + $(POD2MAN) $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1413 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1414 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1416 clean:
1417 $(RM_F) core \
1418 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/bf/config/makefiles/root.in src/parrot-0.6.4/languages/bf/config/makefiles/root.in
1419 --- origsrc/parrot-0.6.4/languages/bf/config/makefiles/root.in 2008-06-24 17:19:59.000000000 +0000
1420 +++ src/parrot-0.6.4/languages/bf/config/makefiles/root.in 2008-07-27 10:54:15.734375000 +0000
1421 @@ -1,11 +1,21 @@
1422 +# -*- Makefile -*-
1423 +LANG = bf
1424 +BIN_DIR = @bin_dir@
1425 +LIB_DIR = @lib_dir@
1426 +DOC_DIR = @doc_dir@
1427 +MANDIR = @mandir@
1429 RM_F = @rm_f@
1430 PERL = @perl@
1431 -PARROT=../../parrot
1432 +PARROT = ../../parrot@exe@
1433 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1434 #CONDITIONED_LINE(darwin):
1435 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1436 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1438 -default: build
1439 +DOCS = MAINTAINER README
1441 +all : build
1443 help :
1444 @echo ""
1445 @@ -22,11 +32,31 @@
1446 @echo ""
1447 @echo " help: print this help message"
1449 -test: build
1450 +test : build
1451 $(PERL) -Ilib -I../../lib t/harness
1453 build: bf.pbc bfc.pbc bfco.pbc
1455 +installable: installable_bf@exe@ installable_bfc@exe@ installable_bfco@exe@
1457 +bf@exe@: bf.pbc
1458 + $(PBC_TO_EXE) bf.pbc
1460 +bfc@exe@: bfc.pbc
1461 + $(PBC_TO_EXE) bfc.pbc
1463 +bfco@exe@: bfco.pbc
1464 + $(PBC_TO_EXE) bfco.pbc
1466 +installable_bf@exe@: bf.pbc
1467 + $(PBC_TO_EXE) bf.pbc --install
1469 +installable_bfc@exe@: bfc.pbc
1470 + $(PBC_TO_EXE) bfc.pbc --install
1472 +installable_bfco@exe@: bfco.pbc
1473 + $(PBC_TO_EXE) bfco.pbc --install
1475 bf.pbc: bf.pasm
1476 $(PARROT) -o bf.pbc bf.pasm
1478 @@ -36,6 +66,20 @@
1479 bfco.pbc: bfco.pir
1480 $(PARROT) -o bfco.pbc bfco.pir
1482 +# TODO: rename build_dir. basic run for missing libs
1483 +test-installable : installable
1484 + ./installable_bf@exe@ test.bf
1485 + ./installable_bfc@exe@ test.bf
1486 + ./installable_bfco@exe@ test.bf
1488 +install : installable
1489 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1490 + cp installable_bfc@exe@ $(DESTDIR)$(BIN_DIR)/parrot-bfc@exe@
1491 + cp installable_bfco@exe@ $(DESTDIR)$(BIN_DIR)/parrot-bfco@exe@
1492 + pod2man $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1493 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1494 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1496 clean:
1497 $(RM_F) core "*.pbc" "*~"
1499 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/c99/config/makefiles/root.in src/parrot-0.6.4/languages/c99/config/makefiles/root.in
1500 --- origsrc/parrot-0.6.4/languages/c99/config/makefiles/root.in 2008-06-24 17:20:00.000000000 +0000
1501 +++ src/parrot-0.6.4/languages/c99/config/makefiles/root.in 2008-07-27 10:54:15.750000000 +0000
1502 @@ -1,12 +1,17 @@
1503 -## $Id$
1504 +## $Id$ -*- Makefile -*-
1506 ## arguments we want to run parrot with
1507 PARROT_ARGS =
1509 ## configuration settings
1510 +LANG = c99
1511 BUILD_DIR = @build_dir@
1512 LOAD_EXT = @load_ext@
1513 O = @o@
1514 +BIN_DIR = @bin_dir@
1515 +LIB_DIR = @lib_dir@
1516 +DOC_DIR = @doc_dir@
1517 +MANDIR = @mandir@
1519 ## Setup some commands
1520 LN_S = @lns@
1521 @@ -15,8 +20,10 @@
1522 CP = @cp@
1523 PARROT = ../../parrot@exe@
1524 CAT = $(PERL) -MExtUtils::Command -e cat
1525 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1526 BUILD_DYNPMC = $(PERL) $(BUILD_DIR)/tools/build/dynpmc.pl
1527 RECONFIGURE = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
1528 +POD2MAN = pod2man
1529 #CONDITIONED_LINE(darwin):
1530 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1531 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1532 @@ -29,8 +36,9 @@
1533 PCT = $(BUILD_DIR)/runtime/parrot/library/PCT.pbc
1535 PMC_DIR = src/pmc
1536 +DOCS = MAINTAINER
1538 -all: c99.pbc
1539 +all: c99.pbc src/cpp/cpp.pbc
1541 C_GROUP = $(PMC_DIR)/c_group$(LOAD_EXT)
1543 @@ -51,6 +59,22 @@
1544 $(PARROT) $(PARROT_ARGS) -o c99.pbc c99.pir
1545 cd src/cpp; $(MAKE)
1547 +c99@exe@: c99.pbc
1548 + $(PBC_TO_EXE) c99.pbc
1550 +installable : installable_c99@exe@ installable_cpp@exe@
1551 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1552 + cp installable_cpp@exe@ $(BUILD_DIR)
1554 +installable_c99@exe@ : c99.pbc
1555 + $(PBC_TO_EXE) c99.pbc --install
1557 +installable_cpp@exe@ : src/cpp/cpp.pbc
1558 + cd src/cpp
1559 + $(PBC_TO_EXE) cpp.pbc --install
1560 + mv installable_cpp@exe@ ../../installable_cpp@exe@
1561 + cd ../..
1563 src/gen_grammar.pir: $(PERL6GRAMMAR) src/parser/grammar.pg
1564 $(PARROT) $(PARROT_ARGS) $(PERL6GRAMMAR) \
1565 --output=src/gen_grammar.pir \
1566 @@ -71,17 +95,20 @@
1568 # regenerate the Makefile
1569 Makefile: config/makefiles/root.in
1570 - cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=c
1571 + cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=c99
1573 # This is a listing of all targets, that are meant to be called by users
1574 help:
1575 @echo ""
1576 @echo "Following targets are available for the user:"
1577 @echo ""
1578 - @echo " all: c.pbc"
1579 + @echo " all: c99.pbc"
1580 @echo " This is the default."
1581 + @echo " install: install the installable targets and docs."
1582 + @echo ""
1583 @echo "Testing:"
1584 @echo " test: Run the test suite."
1585 + @echo " test-installable: Test self-hosting targets."
1586 @echo " testclean: Clean up test results."
1587 @echo ""
1588 @echo "Cleaning:"
1589 @@ -96,6 +123,19 @@
1590 test: all
1591 $(PERL) t/harness
1593 +# TODO: rename build_dir. basic run for missing libs
1594 +test-installable : installable
1595 + ./installable_$(LANG)@exe@ t/spi.t
1596 + ./installable_cpp@exe@ t/spi.t
1598 +install : installable
1599 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1600 + cp installable_cpp@exe@ $(DESTDIR)$(BIN_DIR)/parrot-cpp@exe@
1601 + $(POD2MAN) $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1602 + $(POD2MAN) src/cpp/cpp.pir > $(DESTDIR)$(MANDIR)/man1/parrot-cpp.1
1603 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1604 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1606 # this target has nothing to do
1607 testclean:
1609 @@ -117,8 +157,8 @@
1610 src/cpp/cpp.pbc \
1611 src/cpp/src/gen_actions.pir \
1612 src/cpp/src/gen_grammar.pir \
1613 - src/cpp/src/gen_builtins.pir
1615 + src/cpp/src/gen_builtins.pir \
1616 + installable_*@exe@
1618 clean:
1619 $(RM_RF) $(CLEANUPS)
1620 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/cardinal/config/makefiles/root.in src/parrot-0.6.4/languages/cardinal/config/makefiles/root.in
1621 --- origsrc/parrot-0.6.4/languages/cardinal/config/makefiles/root.in 2008-06-24 17:19:59.000000000 +0000
1622 +++ src/parrot-0.6.4/languages/cardinal/config/makefiles/root.in 2008-07-27 10:54:15.750000000 +0000
1623 @@ -1,12 +1,17 @@
1624 -## $Id$
1625 +## $Id$ -*- Makefile -*-
1627 ## arguments we want to run parrot with
1628 PARROT_ARGS =
1630 ## configuration settings
1631 +LANG = cardinal
1632 BUILD_DIR = @build_dir@
1633 LOAD_EXT = @load_ext@
1634 O = @o@
1635 +BIN_DIR = @bin_dir@
1636 +LIB_DIR = @lib_dir@
1637 +DOC_DIR = @doc_dir@
1638 +MANDIR = @mandir@
1640 ## Setup some commands
1641 LN_S = @lns@
1642 @@ -15,8 +20,10 @@
1643 CP = @cp@
1644 PARROT = ../../parrot@exe@
1645 CAT = $(PERL) -MExtUtils::Command -e cat
1646 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1647 BUILD_DYNPMC = $(PERL) $(BUILD_DIR)/tools/build/dynpmc.pl
1648 RECONFIGURE = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
1649 +POD2MAN = pod2man
1650 #CONDITIONED_LINE(darwin):
1651 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1652 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1653 @@ -29,6 +36,7 @@
1654 PCT = $(BUILD_DIR)/runtime/parrot/library/PCT.pbc
1656 PMC_DIR = src/pmc
1657 +DOCS =
1659 all: cardinal.pbc
1661 @@ -57,6 +65,9 @@
1662 cardinal.pbc: $(PARROT) $(SOURCES)
1663 $(PARROT) $(PARROT_ARGS) -o cardinal.pbc cardinal.pir
1665 +cardinal@exe@: cardinal.pbc
1666 + $(PBC_TO_EXE) cardinal.pbc
1668 src/gen_grammar.pir: $(PERL6GRAMMAR) src/parser/grammar.pg
1669 $(PARROT) $(PARROT_ARGS) $(PERL6GRAMMAR) \
1670 --output=src/gen_grammar.pir \
1671 @@ -79,6 +90,13 @@
1672 Makefile: config/makefiles/root.in
1673 cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=cardinal
1675 +installable_$(LANG)@exe@: $(LANG).pbc
1676 + $(PBC_TO_EXE) $(LANG).pbc --install
1678 +installable : installable_$(LANG)@exe@
1679 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1682 # This is a listing of all targets, that are meant to be called by users
1683 help:
1684 @echo ""
1685 @@ -86,8 +104,11 @@
1686 @echo ""
1687 @echo " all: cardinal.pbc"
1688 @echo " This is the default."
1689 + @echo " install: Install the installable targets and docs."
1690 + @echo ""
1691 @echo "Testing:"
1692 @echo " test: Run the test suite."
1693 + @echo " test-installable: Test self-hosting targets."
1694 @echo " testclean: Clean up test results."
1695 @echo ""
1696 @echo "Cleaning:"
1697 @@ -102,11 +123,21 @@
1698 test: all
1699 $(PERL) t/harness
1701 +# TODO: rename build_dir. basic run for missing libs
1702 +test-installable : installable
1703 + ./installable_$(LANG)@exe@ t/00-sanity.t
1705 +install : installable
1706 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1707 + pod2man $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1709 # this target has nothing to do
1710 testclean:
1712 CLEANUPS = \
1713 cardinal.pbc \
1714 + cardinal@exe@ \
1715 + installable_cardinal@exe@ \
1716 src/gen_grammar.pir \
1717 src/gen_actions.pir \
1718 src/gen_builtins.pir \
1719 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/chitchat/config/makefiles/root.in src/parrot-0.6.4/languages/chitchat/config/makefiles/root.in
1720 --- origsrc/parrot-0.6.4/languages/chitchat/config/makefiles/root.in 2008-06-24 17:19:59.000000000 +0000
1721 +++ src/parrot-0.6.4/languages/chitchat/config/makefiles/root.in 2008-07-27 10:54:15.750000000 +0000
1722 @@ -1,12 +1,17 @@
1723 -## $Id$
1724 +## $Id$ -*- Makefile -*-
1726 ## arguments we want to run parrot with
1727 PARROT_ARGS =
1729 ## configuration settings
1730 +LANG = chitchat
1731 BUILD_DIR = @build_dir@
1732 LOAD_EXT = @load_ext@
1733 O = @o@
1734 +BIN_DIR = @bin_dir@
1735 +LIB_DIR = @lib_dir@
1736 +DOC_DIR = @doc_dir@
1737 +MANDIR = @mandir@
1739 ## Setup some commands
1740 LN_S = @lns@
1741 @@ -15,8 +20,10 @@
1742 CP = @cp@
1743 PARROT = ../../parrot@exe@
1744 CAT = $(PERL) -MExtUtils::Command -e cat
1745 +PBC_TO_EXE = ../../pbc_to_exe@exe@
1746 BUILD_DYNPMC = $(PERL) $(BUILD_DIR)/tools/build/dynpmc.pl
1747 RECONFIGURE = $(PERL) $(BUILD_DIR)/tools/dev/reconfigure.pl
1748 +POD2MAN = pod2man
1749 #CONDITIONED_LINE(darwin):
1750 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1751 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1752 @@ -29,6 +36,7 @@
1753 PCT = $(BUILD_DIR)/runtime/parrot/library/PCT.pbc
1755 PMC_DIR = src/pmc
1756 +DOCS = MAINTAINER
1758 all: chitchat.pbc
1760 @@ -79,8 +87,11 @@
1761 @echo ""
1762 @echo " all: chitchat.pbc"
1763 @echo " This is the default."
1764 + @echo " install: install the installable targets and docs."
1765 + @echo ""
1766 @echo "Testing:"
1767 @echo " test: Run the test suite."
1768 + @echo " test-installable: Test self-hosting targets."
1769 @echo " testclean: Clean up test results."
1770 @echo ""
1771 @echo "Cleaning:"
1772 @@ -95,6 +106,26 @@
1773 test: all
1774 $(PERL) t/harness
1776 +# TODO: rename build_dir. basic run for missing libs
1777 +test-installable : installable
1778 + echo "2-1" | ./installable_$(LANG)@exe@
1780 +install : installable
1781 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
1782 + $(POD2MAN) $(LANG).pir > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
1783 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1784 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1786 +$(LANG)@exe@: $(LANG).pbc
1787 + $(PBC_TO_EXE) $(LANG).pbc
1789 +installable : installable_$(LANG)@exe@ $(CHITCHAT_GROUP)
1790 + cp installable_$(LANG)@exe@ $(BUILD_DIR)
1791 + cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
1793 +installable_$(LANG)@exe@ : $(LANG).pbc
1794 + $(PBC_TO_EXE) $(LANG).pbc --install
1796 # this target has nothing to do
1797 testclean:
1799 @@ -113,7 +144,8 @@
1800 $(PMC_DIR)/*.manifest \
1801 $(PMC_DIR)/*.pdb \
1802 $(PMC_DIR)/*.lib \
1804 + $(LANG)@exe@ \
1805 + installable_$(LANG)@exe@ \
1807 clean:
1808 $(RM_RF) $(CLEANUPS)
1809 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/cola/config/makefiles/root.in src/parrot-0.6.4/languages/cola/config/makefiles/root.in
1810 --- origsrc/parrot-0.6.4/languages/cola/config/makefiles/root.in 2008-06-24 17:20:00.000000000 +0000
1811 +++ src/parrot-0.6.4/languages/cola/config/makefiles/root.in 2008-07-27 10:54:15.750000000 +0000
1812 @@ -1,7 +1,17 @@
1813 -# $Id$
1814 +# $Id$ -*- Makefile -*-
1816 # Makefile for languages/cola
1818 +## configuration settings
1819 +LANG = cola
1820 +BUILD_DIR = @build_dir@
1821 +O = @o@
1822 +EXE = @exe@
1823 +BIN_DIR = @bin_dir@
1824 +LIB_DIR = @lib_dir@
1825 +DOC_DIR = @doc_dir@
1826 +MANDIR = @mandir@
1828 # Set up commands
1829 PERL = @perl@
1830 RM_F = @rm_f@
1831 @@ -11,17 +21,11 @@
1832 YACC = @yacc@
1833 LEX = @lex@
1834 RECONFIGURE = $(PERL) @build_dir@/tools/dev/reconfigure.pl
1835 +POD2MAN = pod2man
1836 #CONDITIONED_LINE(darwin):
1837 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
1838 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
1840 -# Set up extensions
1841 -O = @o@
1842 -EXE = @exe@
1844 -# Set up directories
1845 -BUILD_DIR = @build_dir@
1847 # Libraries: Ordinarily, no special libraries are needed
1848 # for cola, but one of the following settings might be helpful
1849 # in some cases.
1850 @@ -44,8 +48,9 @@
1851 # LIBS = -lefence
1853 HEADERS = cola.h parser.h
1854 +DOCS = MAINTAINER README examples/*
1856 -default :
1857 +all : colacc$(EXE)
1858 $(MAKE) colacc$(EXE)
1859 -$(CHMOD) 775 colacc$(EXE)
1861 @@ -53,8 +58,9 @@
1862 @echo ""
1863 @echo "Following targets are available for the user:"
1864 @echo ""
1865 - @echo " default : build 'colacc'"
1866 + @echo " all : build 'colacc'"
1867 @echo " This is the default."
1868 + @echo " install: install the installable targets and docs."
1869 @echo ""
1870 @echo " test: run the test suite"
1871 @echo ""
1872 @@ -68,7 +74,7 @@
1874 # regenerate the Makefile
1875 Makefile: config/makefiles/root.in
1876 - cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=cola
1877 + cd $(BUILD_DIR) && $(RECONFIGURE) --step=gen::languages --languages=$(LANG)
1879 nogen : gen$(O) semant$(O) sym$(O) type$(O)
1880 $(CC) $(DEBUG) -c parser.c
1881 @@ -93,11 +99,11 @@
1882 $(RM_F) parser.h
1883 $(RM_F) lexer.c parser.c
1885 -publish :
1886 - $(PERL) publish.pl < MANIFEST
1888 -dist :
1889 - $(PERL) distribution.pl < MANIFEST
1890 +#publish :
1891 +# $(PERL) publish.pl < MANIFEST
1893 +#dist :
1894 +# $(PERL) distribution.pl < MANIFEST
1896 parser.c : cola.y
1897 $(YACC) -d -o parser.c cola.y
1898 @@ -127,5 +133,17 @@
1899 $(CC) $(DEBUG) -o colacc$(EXE) parser$(O) lexer$(O) gen$(O) semant$(O) sym$(O) type$(O) $(LIBS)
1901 test: default
1902 - cd .. && $(PERL) t/harness --languages=cola
1903 + cd .. && $(PERL) t/harness --languages=$(LANG)
1905 +# TODO: rename build_dir. basic run for missing libs
1906 +test-installable : installable
1907 + ./colacc$(EXE) examples/fib.cola
1909 +install : installable
1910 + cp colacc$(EXE) $(DESTDIR)$(BIN_DIR)/parrot-colacc$(EXE)
1911 + ascii2man README > $(DESTDIR)$(MANDIR)/man1/parrot-colacc.1
1912 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1913 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
1915 +installable : colacc$(EXE)
1916 + cp colacc$(EXE) $(BUILD_DIR)/installable_colacc$(EXE)
1917 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/dotnet/config/Makefile.in src/parrot-0.6.4/languages/dotnet/config/Makefile.in
1918 --- origsrc/parrot-0.6.4/languages/dotnet/config/Makefile.in 2008-06-24 17:20:00.000000000 +0000
1919 +++ src/parrot-0.6.4/languages/dotnet/config/Makefile.in 2008-07-27 10:54:15.750000000 +0000
1920 @@ -16,6 +16,7 @@
1921 PARROT = ${trans_parrot_path}${slash}parrot${exe}
1922 MONOLIB = ${trans_mono_lib_path}
1923 PBCMERGE = ${trans_parrot_path}${slash}pbc_merge${exe}
1924 +PBC_TO_EXE = ${trans_parrot_path}${slash}pbc_to_exe.exe
1925 PMCBUILD = $(PERL) ${build_dir}${slash}tools${slash}build${slash}dynpmc.pl
1926 OPSBUILD = $(PERL) ${build_dir}${slash}tools${slash}build${slash}dynoplibs.pl
1927 DESTDIR = ${build_dir}${slash}runtime${slash}parrot${slash}dynext
1928 @@ -60,6 +61,8 @@
1929 all : pmc/dotnet$(LOAD_EXT) ops/dotnet_ops$(LOAD_EXT) src/it.pbc \
1930 src/builtins.pbc src/translib.pbc net2pbc.pbc
1932 +installable : net2pbc.pbc installable_net2pbc$exe
1934 pmc/dotnet$(LOAD_EXT) : $(PMC_FILES) pmc/structures.h pmc/tableinfo.h
1935 @cd $(PMCDIR) && $(PMCBUILD) generate $(PMCS)
1936 @cd $(PMCDIR) && $(PMCBUILD) compile $(PMCS)
1937 @@ -91,7 +94,17 @@
1938 $(PBCMERGE) -o net2pbc.pbc src/net2pbc.pbc src/translib.pbc
1940 class-library : net2pbc.pbc
1941 -${trans_class_library}
1942 + ${trans_class_library}
1944 +# regenerate the Makefile
1945 +Makefile: config/Makefile.in
1946 + $(PERL) Configure.pl
1948 +net2pbc$exe : net2pbc.pbc
1949 + $(PBC_TO_EXE) net2pbc.pbc
1951 +installable_net2pbc$exe : net2pbc.pbc
1952 + $(PBC_TO_EXE) net2pbc.pbc --install
1955 # PER FILE RULES AND DEPENDENCIES
1956 @@ -133,6 +146,15 @@
1957 test : all
1958 $(PERL) -It t/harness
1960 +# TODO: rename build_dir. basic run for missing libs
1961 +installable_test : installable
1962 + installable_net2pbc$exe
1964 +install : all installable
1965 + mkdir ${build_dir}${slash}runtime${slash}bin
1966 + cp installable_net2pbc$exe ${build_dir}${slash}runtime${slash}bin${slash}parrot-net2pbc$exe
1967 + @cd $(PMCDIR) && $(PMCBUILD) copy "--destination=$(DESTDIR)" $(PMCS)
1968 + @cd $(PMCDIR) && $(PMCBUILD) copy "--destination=$(DESTDIR)" $(OPLIBS)
1970 # CLEANUP TARGETS
1971 # ###############
1972 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/lua/config/makefiles/root.in src/parrot-0.6.4/languages/lua/config/makefiles/root.in
1973 --- origsrc/parrot-0.6.4/languages/lua/config/makefiles/root.in 2008-06-24 17:19:59.000000000 +0000
1974 +++ src/parrot-0.6.4/languages/lua/config/makefiles/root.in 2008-07-27 10:54:15.750000000 +0000
1975 @@ -1,9 +1,14 @@
1976 +# $Id$ -*- Makefile -*-
1977 # Copyright (C) 2005-2008, The Perl Foundation.
1978 -# $Id$
1980 ## configuration settings
1981 +LANG = lua
1982 O = @o@
1983 LOAD_EXT = @load_ext@
1984 +BIN_DIR = @bin_dir@
1985 +LIB_DIR = @lib_dir@
1986 +DOC_DIR = @doc_dir@
1987 +MANDIR = @mandir@
1989 ## Setup some commands
1990 MAKE = @make_c@
1991 @@ -94,6 +99,8 @@
1992 GEN_PBC = \
1993 lua.pbc
1995 +DOCS = MAINTAINER doc/running.pod doc/status.pod
1997 all: \
1998 $(PMCDIR)/lua_group$(LOAD_EXT) \
1999 $(LIB_PBCS) \
2000 @@ -128,11 +135,15 @@
2001 $(TGE) --output=src/POSTGrammar_gen.pir src/POSTGrammar.tg
2003 lua.pbc: lua.pir src/lua51.pir src/grammar51.pir src/lua51_gen.pir src/PASTGrammar_gen.pir src/POSTGrammar_gen.pir $(LIB_SRCS)
2004 - $(PARROT) -o lua.pbc --output-pbc lua.pir
2005 + $(PARROT) -o lua_i.pbc --output-pbc lua.pir
2006 + $(PBC_MERGE) -o lua.pbc lua_i.pbc ../../compilers/tge/TGE/Rule.pbc
2008 lua@exe@: lua.pbc
2009 $(PBC_TO_EXE) lua.pbc
2011 +installable_lua@exe@: lua.pbc
2012 + $(PBC_TO_EXE) lua.pbc --install
2014 $(LIBPATH)/lualibs.pbc: $(LIB_PBCS)
2015 $(PBC_MERGE) -o $(LIBPATH)/lualibs.pbc $(LIB_PBCS)
2017 @@ -244,6 +255,15 @@
2018 test: all
2019 cd .. && $(PERL) t/harness --languages=lua
2021 +# TODO: rename build_dir. basic run for missing libs
2022 +test-installable : installable
2023 + echo "a=1" | ./installable_$(LANG)@exe@
2025 +install : installable
2026 + cp installable_$(LANG)@exe@ $(DESTDIR)$(BIN_DIR)/parrot-$(LANG)@exe@
2027 + pod2man doc/running.pod > $(DESTDIR)$(MANDIR)/man1/parrot-$(LANG).1
2028 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
2029 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
2031 TEST_CLEANERS = \
2032 "t/pmc/*.pir" \
2033 @@ -258,6 +278,7 @@
2035 BUILD_CLEANERS = \
2036 lua@exe@ \
2037 + installable_lua@exe@ \
2038 lua$(O) \
2039 lua.c \
2040 "*.pbc" \
2041 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/perl6/config/makefiles/root.in src/parrot-0.6.4/languages/perl6/config/makefiles/root.in
2042 --- origsrc/parrot-0.6.4/languages/perl6/config/makefiles/root.in 2008-07-11 06:47:06.000000000 +0000
2043 +++ src/parrot-0.6.4/languages/perl6/config/makefiles/root.in 2008-07-27 11:34:17.968750000 +0000
2044 @@ -1,4 +1,4 @@
2045 -# $Id$
2046 +# $Id$ -*- Makefile -*-
2048 # arguments we want to run parrot with
2049 PARROT_ARGS =
2050 @@ -33,6 +33,7 @@
2051 #CONDITIONED_LINE(darwin):
2052 #CONDITIONED_LINE(darwin):# MACOSX_DEPLOYMENT_TARGET must be defined for OS X compilation/linking
2053 #CONDITIONED_LINE(darwin):export MACOSX_DEPLOYMENT_TARGET := @osx_version@
2054 +DOCS = README MAINTAINER ROADMAP docs/compiler_overview.pod docs/glossary.pod docs/STATUS
2056 all: perl6.pbc
2058 @@ -113,6 +114,9 @@
2059 perl6.pbc: $(PARROT) $(SOURCES)
2060 $(PARROT) $(PARROT_ARGS) -o perl6.pbc perl6.pir
2062 +installable_perl6$(EXE): perl6.pbc
2063 + $(PBC_TO_EXE) perl6.pbc --install
2065 src/gen_grammar.pir: $(PERL6GRAMMAR) src/parser/grammar.pg src/parser/grammar-oper.pg
2066 $(PARROT) $(PARROT_ARGS) $(PERL6GRAMMAR) \
2067 --output=src/gen_grammar.pir \
2068 @@ -213,6 +217,16 @@
2069 t/spec:
2070 svn co http:////svn.pugscode.org//pugs//t//spec t/spec
2072 +installable : installable_perl6@exe@ $(PERL6_GROUP)
2073 + cp installable_perl6@exe@ $(BUILD_DIR)
2074 + cd $(PMC_DIR) && $(BUILD_DYNPMC) copy --destination=$(PARROT_DYNEXT) $(PMCS)
2076 +install : installable
2077 + cp installable_perl6@exe@ $(DESTDIR)$(BIN_DIR)/perl6@exe@
2078 + $(POD2MAN) docs/running.pod > $(DESTDIR)$(MANDIR)/man1/perl6.1
2079 + mkdir $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
2080 + cp $(DOCS) $(DESTDIR)$(DOC_DIR)/languages/$(LANG)
2082 CLEANUPS = \
2083 perl6.pbc \
2084 perl6.c \
2085 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/perl6/docs/running.pod src/parrot-0.6.4/languages/perl6/docs/running.pod
2086 --- origsrc/parrot-0.6.4/languages/perl6/docs/running.pod 1970-01-01 00:00:00.000000000 +0000
2087 +++ src/parrot-0.6.4/languages/perl6/docs/running.pod 2008-07-27 11:32:31.031250000 +0000
2088 @@ -0,0 +1,15 @@
2089 +=head1 NAME
2091 +perl6
2093 +=head1 SYNOPSIS
2095 +Usage: perl6 [switches] [--] [programfile] [arguments]
2096 + -c check syntax only (runs BEGIN and CHECK blocks)
2097 + -e program one line of program
2098 + -h, --help display this help text
2099 + --target=[stage] specify compilation stage to emit
2100 + -t, --trace=[flags] enable trace flags
2101 + --encoding=[mode] specify string encoding mode
2102 + -o, --output=[name] specify name of output file
2103 + -v, --version display version information
2104 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/languages/urm/urmc src/parrot-0.6.4/languages/urm/urmc
2105 --- origsrc/parrot-0.6.4/languages/urm/urmc 2008-02-23 18:27:38.000000000 +0000
2106 +++ src/parrot-0.6.4/languages/urm/urmc 2008-07-27 10:54:15.750000000 +0000
2107 @@ -18,7 +18,7 @@
2109 use strict;
2110 use FindBin;
2111 -use lib "$FindBin::RealBin/../../lib";
2112 +use lib "$FindBin::Bin/../../lib";
2114 use Data::Dumper;
2115 use Getopt::Long;
2116 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/lib/Parrot/Config.pm src/parrot-0.6.4/lib/Parrot/Config.pm
2117 --- origsrc/parrot-0.6.4/lib/Parrot/Config.pm 2008-02-23 18:27:18.000000000 +0000
2118 +++ src/parrot-0.6.4/lib/Parrot/Config.pm 2008-07-27 10:54:15.765625000 +0000
2119 @@ -19,7 +19,7 @@
2120 use strict;
2121 use warnings;
2123 -eval 'use Parrot::Config::Generated';
2124 +eval 'require Parrot::Config::Generated';
2125 if ($@) {
2126 die "\nParrot::Config is unavailable until you configure parrot.\n"
2127 . "Please run `perl Configure.pl`.\n\n";
2128 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/lib/Parrot/Configure/Step/Methods.pm src/parrot-0.6.4/lib/Parrot/Configure/Step/Methods.pm
2129 --- origsrc/parrot-0.6.4/lib/Parrot/Configure/Step/Methods.pm 2008-06-24 19:59:15.000000000 +0000
2130 +++ src/parrot-0.6.4/lib/Parrot/Configure/Step/Methods.pm 2008-07-27 10:54:15.765625000 +0000
2131 @@ -119,6 +119,7 @@
2132 cc => $cc,
2133 win32_gcc => '-lalpha32 -lalpha32 -lopenalpha32',
2134 win32_nongcc => 'alpha.lib',
2135 + cygwin => '-lalpha32 -lXalpha32', # optional
2136 darwin => 'alphadarwin.lib',
2137 default => '-lalpha',
2138 } );
2139 @@ -134,10 +135,12 @@
2141 =over 4
2143 -=item * MSWin32 with F<gcc> as the C-compiler.
2144 +=item * MSWin32 with F<gcc> as the C-compiler - Mingw.
2146 =item * MSWin32 with any C-compiler other than F<gcc>.
2148 +=item * Cygwin to override Mingw.
2150 =item * Darwin.
2152 =back
2153 @@ -173,7 +176,7 @@
2155 =item * C<win32_gcc>
2157 -Libraries to be added where OS is mswin32 and C-compiler is F<gcc>.
2158 +Libraries to be added where OS is mswin32 or cygwin and C-compiler is F<gcc>.
2159 Single whitespace-delimited string.
2161 =item * C<win32_nongcc>
2162 @@ -181,6 +184,12 @@
2163 Libraries to be added where OS is mswin32 and C-compiler is not F<gcc>.
2164 Single whitespace-delimited string.
2166 +=item * C<cygwin>
2168 +Optional libraries to be added where OS is cygwin. This overrides C<win32_gcc>
2169 +if defined.
2170 +Single whitespace-delimited string.
2172 =item * C<darwin>
2174 Libraries to be added where OS is Darwin. Do not supply a value if the value
2175 @@ -197,7 +206,8 @@
2176 my $args = shift;
2177 croak "_add_to_libs() takes hashref: $!" unless ref($args) eq 'HASH';
2178 my $platform =
2179 - (($args->{osname} =~ /mswin32/i ||
2180 + $args->{osname} =~ /cygwin/i ? 'cygwin'
2181 + :(($args->{osname} =~ /mswin32/i ||
2182 $args->{osname} =~ /cygwin/i) &&
2183 $args->{cc} =~ /^gcc/i) ? 'win32_gcc'
2184 : $args->{osname} =~ /mswin32/i ? 'win32_nongcc'
2185 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/runtime/parrot/library/config.pir src/parrot-0.6.4/runtime/parrot/library/config.pir
2186 --- origsrc/parrot-0.6.4/runtime/parrot/library/config.pir 2008-07-05 10:04:43.000000000 +0000
2187 +++ src/parrot-0.6.4/runtime/parrot/library/config.pir 2008-07-27 11:06:40.843750000 +0000
2188 @@ -50,10 +50,19 @@
2189 .local string conf_file
2190 conf_file = interpinfo .INTERPINFO_RUNTIME_PREFIX
2191 conf_file .= "/runtime/parrot/include/config.fpmc"
2193 + stat $I0, conf_file, 0
2194 + if $I0 goto conf
2196 + # If installed into /usr/lib/parrot, not /usr/runtime/parrot
2197 + # This logic has to be reversed when installed versions should run faster
2198 + # than source builds.
2199 + conf_file = interpinfo .INTERPINFO_RUNTIME_PREFIX
2200 + conf_file .= "/lib/parrot/include/config.fpmc"
2201 +conf:
2202 open CONF, conf_file, "<"
2203 $I0 = defined CONF
2204 if $I0 goto ok1
2206 printerr "Can't read '"
2207 printerr conf_file
2208 printerr "': "
2209 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/runtime/parrot/library/ncurses.pir src/parrot-0.6.4/runtime/parrot/library/ncurses.pir
2210 --- origsrc/parrot-0.6.4/runtime/parrot/library/ncurses.pir 2008-02-23 18:27:07.000000000 +0000
2211 +++ src/parrot-0.6.4/runtime/parrot/library/ncurses.pir 2008-07-27 10:54:15.765625000 +0000
2212 @@ -1,6 +1,9 @@
2213 .sub __ncurses_init :load
2215 loadlib $P1, 'libform'
2216 +if $P1 goto has_lib
2217 +loadlib $P1, 'cygform-8'
2218 +has_lib:
2219 dlfunc $P2, $P1, 'new_field', 'piiiiii'
2220 store_global 'ncurses::new_field', $P2
2221 dlfunc $P2, $P1, 'dup_field', 'ppii'
2222 @@ -119,7 +122,9 @@
2223 store_global 'ncurses::data_behind', $P2
2225 loadlib $P1, 'libncurses'
2227 +if $P1 goto has_lib1
2228 +loadlib $P1, 'cygncurses-8'
2229 +has_lib1:
2230 dlfunc $P2, $P1, 'keybound', 'tii'
2231 store_global 'ncurses::keybound', $P2
2233 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/runtime/parrot/library/parrotlib.pir src/parrot-0.6.4/runtime/parrot/library/parrotlib.pir
2234 --- origsrc/parrot-0.6.4/runtime/parrot/library/parrotlib.pir 2008-02-23 18:27:07.000000000 +0000
2235 +++ src/parrot-0.6.4/runtime/parrot/library/parrotlib.pir 2008-07-27 11:07:12.734375000 +0000
2236 @@ -143,8 +143,19 @@
2237 stat $I0, name, 0
2238 if $I0 goto END
2240 - name = "runtime/parrot/dynext/"
2241 + concat name, ext
2242 + stat $I0, name, 0
2243 + if $I0 goto END
2245 + # This logic has to be reversed when installed versions should run faster
2246 + # than source builds.
2247 + .include "interpinfo.pasm"
2248 + name = interpinfo .INTERPINFO_RUNTIME_PREFIX
2249 + concat name, "lib/parrot/dynext/"
2250 concat name, request
2251 + stat $I0, name, 0
2252 + if $I0 goto END
2254 concat name, ext
2255 stat $I0, name, 0
2256 if $I0 goto END
2257 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/runtime/parrot/library/postgres.pir src/parrot-0.6.4/runtime/parrot/library/postgres.pir
2258 --- origsrc/parrot-0.6.4/runtime/parrot/library/postgres.pir 2008-03-16 09:53:34.000000000 +0000
2259 +++ src/parrot-0.6.4/runtime/parrot/library/postgres.pir 2008-07-27 10:54:15.765625000 +0000
2260 @@ -5,6 +5,8 @@
2261 if $P1 goto has_lib
2262 loadlib $P1, 'pq'
2263 if $P1 goto has_lib
2264 +loadlib $P1, 'cygpq'
2265 +if $P1 goto has_lib
2266 $P2 = new 'Exception'
2267 $P2[0] = 'error loading libpg - loadlib failed'
2268 throw $P2
2269 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/src/library.c src/parrot-0.6.4/src/library.c
2270 --- origsrc/parrot-0.6.4/src/library.c 2008-07-12 12:45:23.000000000 +0000
2271 +++ src/parrot-0.6.4/src/library.c 2008-07-27 10:54:15.765625000 +0000
2272 @@ -143,41 +143,45 @@
2273 paths = pmc_new(interp, enum_class_ResizableStringArray);
2274 VTABLE_set_pmc_keyed_int(interp, lib_paths,
2275 PARROT_LIB_PATH_INCLUDE, paths);
2276 + /* favor runtime over buildtime */
2277 + entry = CONST_STRING(interp, "lib/parrot/include/");
2278 + VTABLE_push_string(interp, paths, entry);
2279 + entry = CONST_STRING(interp, "lib/parrot/");
2280 + VTABLE_push_string(interp, paths, entry);
2281 + /* TODO: avoid useless stats for runtime */
2282 entry = CONST_STRING(interp, "runtime/parrot/include/");
2283 VTABLE_push_string(interp, paths, entry);
2284 entry = CONST_STRING(interp, "runtime/parrot/");
2285 VTABLE_push_string(interp, paths, entry);
2286 entry = CONST_STRING(interp, "./");
2287 VTABLE_push_string(interp, paths, entry);
2288 - entry = CONST_STRING(interp, "lib/parrot/include/");
2289 - VTABLE_push_string(interp, paths, entry);
2290 - entry = CONST_STRING(interp, "lib/parrot/");
2291 - VTABLE_push_string(interp, paths, entry);
2293 /* define library paths */
2294 paths = pmc_new(interp, enum_class_ResizableStringArray);
2295 VTABLE_set_pmc_keyed_int(interp, lib_paths,
2296 PARROT_LIB_PATH_LIBRARY, paths);
2297 + /* favor runtime over buildtime */
2298 + entry = CONST_STRING(interp, "lib/parrot/library/");
2299 + VTABLE_push_string(interp, paths, entry);
2300 + entry = CONST_STRING(interp, "lib/parrot/");
2301 + VTABLE_push_string(interp, paths, entry);
2302 entry = CONST_STRING(interp, "runtime/parrot/library/");
2303 VTABLE_push_string(interp, paths, entry);
2304 entry = CONST_STRING(interp, "runtime/parrot/");
2305 VTABLE_push_string(interp, paths, entry);
2306 entry = CONST_STRING(interp, "./");
2307 VTABLE_push_string(interp, paths, entry);
2308 - entry = CONST_STRING(interp, "lib/parrot/library/");
2309 - VTABLE_push_string(interp, paths, entry);
2310 - entry = CONST_STRING(interp, "lib/parrot/");
2311 - VTABLE_push_string(interp, paths, entry);
2313 /* define dynext paths */
2314 paths = pmc_new(interp, enum_class_ResizableStringArray);
2315 VTABLE_set_pmc_keyed_int(interp, lib_paths,
2316 PARROT_LIB_PATH_DYNEXT, paths);
2317 - entry = CONST_STRING(interp, "runtime/parrot/dynext/");
2318 + /* favor runtime over buildtime */
2319 + entry = CONST_STRING(interp, "lib/parrot/dynext/");
2320 VTABLE_push_string(interp, paths, entry);
2321 entry = CONST_STRING(interp, "");
2322 VTABLE_push_string(interp, paths, entry);
2323 - entry = CONST_STRING(interp, "lib/parrot/dynext/");
2324 + entry = CONST_STRING(interp, "runtime/parrot/dynext/");
2325 VTABLE_push_string(interp, paths, entry);
2327 /* shared exts */
2328 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/src/parrot_debugger.c src/parrot-0.6.4/src/parrot_debugger.c
2329 --- origsrc/parrot-0.6.4/src/parrot_debugger.c 1970-01-01 00:00:00.000000000 +0000
2330 +++ src/parrot-0.6.4/src/parrot_debugger.c 2008-07-27 10:54:15.781250000 +0000
2331 @@ -0,0 +1,304 @@
2333 +Copyright (C) 2001-2008, The Perl Foundation.
2334 +$Id$
2336 +=head1 NAME
2338 +parrot_debugger - The Parrot debugger
2340 +=head1 SYNOPSIS
2342 + parrot_debugger programfile
2344 +=head1 DESCRIPTION
2346 +=head2 Commands
2348 +=over 4
2350 +=item C<disassemble>
2352 +Disassemble the bytecode.
2354 +Use this if you have a PBC file but not the PASM.
2356 +=item C<load>
2358 +Load a source code file.
2360 +=item C<list> or C<l>
2362 +List the source code file.
2364 +=item C<run> or C<r>
2366 +Run the program.
2368 +=item C<break> or C<b>
2370 +Add a breakpoint.
2372 +=item C<watch> or C<w>
2374 +Add a watchpoint.
2376 +=item C<delete> or C<d>
2378 +Delete a breakpoint.
2380 +=item C<disable>
2382 +Disable a breakpoint.
2384 +=item C<enable>
2386 +Reenable a disabled breakpoint.
2388 +=item C<continue> or C<c>
2390 +Continue the program execution.
2392 +=item C<next> or C<n>
2394 +Run the next instruction
2396 +=item C<eval> or C<e>
2398 +Run an instruction.
2400 +=item C<trace> or C<t>
2402 +Trace the next instruction.
2404 +=item C<print> or C<p>
2406 +Print the interpreter registers.
2408 +=item C<stack> or C<s>
2410 +Examine the stack.
2412 +=item C<info>
2414 +Print interpreter information.
2416 +=item C<quit> or C<q>
2418 +Exit the debugger.
2420 +=item C<help> or C<h>
2422 +Print the help.
2424 +=back
2426 +=head2 Debug Ops
2428 +You can also debug Parrot code by using the C<debug_init>, C<debug_load>
2429 +and C<debug_break> ops in F<ops/debug.ops>.
2431 +=over 4
2433 +=cut
2437 +#include <stdio.h>
2438 +#include <stdlib.h>
2439 +#include <ctype.h>
2440 +#include "../compilers/imcc/imc.h"
2441 +#include "../compilers/imcc/parser.h"
2442 +#include "parrot/embed.h"
2444 +static void PDB_printwelcome(void);
2445 +static void PDB_run_code(Parrot_Interp interp, int argc, char *argv[]);
2449 +=item C<int main(int argc, char *argv[])>
2451 +Reads the PASM or PBC file from argv[1], loads it, and then calls
2452 +Parrot_debug().
2454 +=cut
2458 +int
2459 +main(int argc, char *argv[])
2461 + Parrot_Interp debugger = Parrot_new(NULL);
2462 + Parrot_Interp interp = Parrot_new(debugger);
2463 + PDB_t *pdb = mem_allocate_zeroed_typed(PDB_t);
2464 + const char *filename;
2465 + char *ext;
2466 + void *yyscanner;
2468 + /*Parrot_set_config_hash(); TODO link with cfg */
2470 + /* attach pdb structure */
2471 + debugger->pdb = pdb;
2472 + interp->debugger = debugger;
2473 + pdb->debugee = interp;
2475 + Parrot_block_GC_mark(interp);
2476 + Parrot_block_GC_sweep(interp);
2478 + do_yylex_init(interp, &yyscanner);
2480 + if (argc < 2) {
2481 + fprintf(stderr, "Usage: parrot_debugger programfile [program-options]\n");
2482 + Parrot_exit(interp, 1);
2485 + filename = argv[1];
2486 + ext = strrchr(filename, '.');
2488 + if (ext && STREQ(ext, ".pbc")) {
2489 + Parrot_PackFile pf = Parrot_readbc(interp, filename);
2491 + if (!pf)
2492 + return 1;
2494 + Parrot_loadbc(interp, pf);
2496 + else {
2497 + Parrot_PackFile pf = PackFile_new(interp, 0);
2498 + int pasm_file = 0;
2500 + Parrot_loadbc(interp, pf);
2502 + IMCC_push_parser_state(interp);
2503 + IMCC_INFO(interp)->state->file = filename;
2505 + if (!(imc_yyin_set(fopen(filename, "r"), yyscanner))) {
2506 + IMCC_fatal_standalone(interp, E_IOError,
2507 + "Error reading source file %s.\n",
2508 + filename);
2511 + if (ext && STREQ(ext, ".pasm"))
2512 + pasm_file = 1;
2514 + emit_open(interp, 1, NULL);
2515 + IMCC_INFO(interp)->state->pasm_file = pasm_file;
2516 + yyparse(yyscanner, interp);
2517 + imc_compile_all_units(interp);
2519 + imc_cleanup(interp, yyscanner);
2521 + fclose(imc_yyin_get(yyscanner));
2522 + PackFile_fixup_subs(interp, PBC_POSTCOMP, NULL);
2525 + Parrot_unblock_GC_mark(interp);
2526 + Parrot_unblock_GC_sweep(interp);
2528 + PDB_printwelcome();
2530 + PDB_run_code(interp, argc - 1, argv + 1);
2533 + Parrot_exit(interp, 0);
2538 +=item C<static void PDB_add_exception_handler(Parrot_Interp)>
2540 +Adds a default exception handler to PDB.
2544 +static void
2545 +PDB_run_code(Parrot_Interp interp, int argc, char *argv[])
2547 + Parrot_exception exp;
2549 + if (setjmp(exp.destination)) {
2550 + char *msg = string_to_cstring(interp, interp->exceptions->msg);
2551 + fprintf(stderr, "Caught exception: %s\n", msg);
2552 + string_cstring_free(msg);
2553 + return;
2556 + push_new_c_exception_handler(interp, &exp);
2558 + Parrot_runcode(interp, argc - 1, argv + 1);
2563 +=item C<static void PDB_printwelcome(void)>
2565 +Prints out the welcome string.
2567 +=cut
2571 +static void
2572 +PDB_printwelcome(void)
2574 + fprintf(stderr, "Parrot Debugger 0.4.x\n");
2575 + fprintf(stderr, "\nPlease note: ");
2576 + fprintf(stderr, "the debugger is currently under reconstruction\n");
2581 +=back
2583 +=head1 SEE ALSO
2585 +F<src/debug.c>, F<include/parrot/debug.h>.
2587 +=head1 HISTORY
2589 +=over 4
2591 +=item * Initial version by Daniel Grunblatt on 2002.5.19.
2593 +=item * Start of rewrite - leo 2005.02.16
2595 +The debugger now uses it's own interpreter. User code is run in
2596 +Interp* debugee. We have:
2598 + debug_interp->pdb->debugee->debugger
2599 + ^ |
2600 + | v
2601 + +------------- := -----------+
2603 +Debug commands are mostly run inside the C<debugger>. User code
2604 +runs of course in the C<debugee>.
2606 +=back
2608 +=head1 TODO
2610 +=over 4
2612 +=item * Check the user input for bad commands, it's quite easy to make
2613 +it bang now, try listing the source before loading or disassembling it.
2615 +=item * Print the interpreter info.
2617 +=item * Make the user interface better (add comands
2618 +history/completion).
2620 +=item * Some other things I don't remember now because it's late.
2623 +=back
2625 +=cut
2631 + * Local variables:
2632 + * c-file-style: "parrot"
2633 + * End:
2634 + * vim: expandtab shiftwidth=4:
2635 + */
2636 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/src/pdb.c src/parrot-0.6.4/src/pdb.c
2637 --- origsrc/parrot-0.6.4/src/pdb.c 2008-07-03 06:49:25.000000000 +0000
2638 +++ src/parrot-0.6.4/src/pdb.c 1970-01-01 00:00:00.000000000 +0000
2639 @@ -1,304 +0,0 @@
2641 -Copyright (C) 2001-2008, The Perl Foundation.
2642 -$Id$
2644 -=head1 NAME
2646 -pdb - The Parrot debugger
2648 -=head1 SYNOPSIS
2650 - pdb programfile
2652 -=head1 DESCRIPTION
2654 -=head2 Commands
2656 -=over 4
2658 -=item C<disassemble>
2660 -Disassemble the bytecode.
2662 -Use this if you have a PBC file but not the PASM.
2664 -=item C<load>
2666 -Load a source code file.
2668 -=item C<list> or C<l>
2670 -List the source code file.
2672 -=item C<run> or C<r>
2674 -Run the program.
2676 -=item C<break> or C<b>
2678 -Add a breakpoint.
2680 -=item C<watch> or C<w>
2682 -Add a watchpoint.
2684 -=item C<delete> or C<d>
2686 -Delete a breakpoint.
2688 -=item C<disable>
2690 -Disable a breakpoint.
2692 -=item C<enable>
2694 -Reenable a disabled breakpoint.
2696 -=item C<continue> or C<c>
2698 -Continue the program execution.
2700 -=item C<next> or C<n>
2702 -Run the next instruction
2704 -=item C<eval> or C<e>
2706 -Run an instruction.
2708 -=item C<trace> or C<t>
2710 -Trace the next instruction.
2712 -=item C<print> or C<p>
2714 -Print the interpreter registers.
2716 -=item C<stack> or C<s>
2718 -Examine the stack.
2720 -=item C<info>
2722 -Print interpreter information.
2724 -=item C<quit> or C<q>
2726 -Exit the debugger.
2728 -=item C<help> or C<h>
2730 -Print the help.
2732 -=back
2734 -=head2 Debug Ops
2736 -You can also debug Parrot code by using the C<debug_init>, C<debug_load>
2737 -and C<debug_break> ops in F<ops/debug.ops>.
2739 -=over 4
2741 -=cut
2745 -#include <stdio.h>
2746 -#include <stdlib.h>
2747 -#include <ctype.h>
2748 -#include "../compilers/imcc/imc.h"
2749 -#include "../compilers/imcc/parser.h"
2750 -#include "parrot/embed.h"
2752 -static void PDB_printwelcome(void);
2753 -static void PDB_run_code(Parrot_Interp interp, int argc, char *argv[]);
2757 -=item C<int main(int argc, char *argv[])>
2759 -Reads the PASM or PBC file from argv[1], loads it, and then calls
2760 -Parrot_debug().
2762 -=cut
2766 -int
2767 -main(int argc, char *argv[])
2769 - Parrot_Interp debugger = Parrot_new(NULL);
2770 - Parrot_Interp interp = Parrot_new(debugger);
2771 - PDB_t *pdb = mem_allocate_zeroed_typed(PDB_t);
2772 - const char *filename;
2773 - char *ext;
2774 - void *yyscanner;
2776 - /*Parrot_set_config_hash(); TODO link with cfg */
2778 - /* attach pdb structure */
2779 - debugger->pdb = pdb;
2780 - interp->debugger = debugger;
2781 - pdb->debugee = interp;
2783 - Parrot_block_GC_mark(interp);
2784 - Parrot_block_GC_sweep(interp);
2786 - do_yylex_init(interp, &yyscanner);
2788 - if (argc < 2) {
2789 - fprintf(stderr, "Usage: pdb programfile [program-options]\n");
2790 - Parrot_exit(interp, 1);
2793 - filename = argv[1];
2794 - ext = strrchr(filename, '.');
2796 - if (ext && STREQ(ext, ".pbc")) {
2797 - Parrot_PackFile pf = Parrot_readbc(interp, filename);
2799 - if (!pf)
2800 - return 1;
2802 - Parrot_loadbc(interp, pf);
2804 - else {
2805 - Parrot_PackFile pf = PackFile_new(interp, 0);
2806 - int pasm_file = 0;
2808 - Parrot_loadbc(interp, pf);
2810 - IMCC_push_parser_state(interp);
2811 - IMCC_INFO(interp)->state->file = filename;
2813 - if (!(imc_yyin_set(fopen(filename, "r"), yyscanner))) {
2814 - IMCC_fatal_standalone(interp, E_IOError,
2815 - "Error reading source file %s.\n",
2816 - filename);
2819 - if (ext && STREQ(ext, ".pasm"))
2820 - pasm_file = 1;
2822 - emit_open(interp, 1, NULL);
2823 - IMCC_INFO(interp)->state->pasm_file = pasm_file;
2824 - yyparse(yyscanner, interp);
2825 - imc_compile_all_units(interp);
2827 - imc_cleanup(interp, yyscanner);
2829 - fclose(imc_yyin_get(yyscanner));
2830 - PackFile_fixup_subs(interp, PBC_POSTCOMP, NULL);
2833 - Parrot_unblock_GC_mark(interp);
2834 - Parrot_unblock_GC_sweep(interp);
2836 - PDB_printwelcome();
2838 - PDB_run_code(interp, argc - 1, argv + 1);
2841 - Parrot_exit(interp, 0);
2846 -=item C<static void PDB_add_exception_handler(Parrot_Interp)>
2848 -Adds a default exception handler to PDB.
2852 -static void
2853 -PDB_run_code(Parrot_Interp interp, int argc, char *argv[])
2855 - Parrot_exception exp;
2857 - if (setjmp(exp.destination)) {
2858 - char *msg = string_to_cstring(interp, interp->exceptions->msg);
2859 - fprintf(stderr, "Caught exception: %s\n", msg);
2860 - string_cstring_free(msg);
2861 - return;
2864 - push_new_c_exception_handler(interp, &exp);
2866 - Parrot_runcode(interp, argc - 1, argv + 1);
2871 -=item C<static void PDB_printwelcome(void)>
2873 -Prints out the welcome string.
2875 -=cut
2879 -static void
2880 -PDB_printwelcome(void)
2882 - fprintf(stderr, "Parrot Debugger 0.4.x\n");
2883 - fprintf(stderr, "\nPlease note: ");
2884 - fprintf(stderr, "the debugger is currently under reconstruction\n");
2889 -=back
2891 -=head1 SEE ALSO
2893 -F<src/debug.c>, F<include/parrot/debug.h>.
2895 -=head1 HISTORY
2897 -=over 4
2899 -=item * Initial version by Daniel Grunblatt on 2002.5.19.
2901 -=item * Start of rewrite - leo 2005.02.16
2903 -The debugger now uses it's own interpreter. User code is run in
2904 -Interp* debugee. We have:
2906 - debug_interp->pdb->debugee->debugger
2907 - ^ |
2908 - | v
2909 - +------------- := -----------+
2911 -Debug commands are mostly run inside the C<debugger>. User code
2912 -runs of course in the C<debugee>.
2914 -=back
2916 -=head1 TODO
2918 -=over 4
2920 -=item * Check the user input for bad commands, it's quite easy to make
2921 -it bang now, try listing the source before loading or disassembling it.
2923 -=item * Print the interpreter info.
2925 -=item * Make the user interface better (add comands
2926 -history/completion).
2928 -=item * Some other things I don't remember now because it's late.
2931 -=back
2933 -=cut
2939 - * Local variables:
2940 - * c-file-style: "parrot"
2941 - * End:
2942 - * vim: expandtab shiftwidth=4:
2943 - */
2944 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/t/tools/parrot_debugger.t src/parrot-0.6.4/t/tools/parrot_debugger.t
2945 --- origsrc/parrot-0.6.4/t/tools/parrot_debugger.t 1970-01-01 00:00:00.000000000 +0000
2946 +++ src/parrot-0.6.4/t/tools/parrot_debugger.t 2008-07-27 10:54:15.890625000 +0000
2947 @@ -0,0 +1,122 @@
2948 +#! perl
2949 +# Copyright (C) 2007, The Perl Foundation.
2950 +# $Id$
2952 +=head1 NAME
2954 +t/tools/parrot_debugger.t - test the Parrot Debugger
2956 +=head1 SYNOPSIS
2958 + % prove t/tools/parrot_debugger.t
2961 +=head1 DESCRIPTION
2963 +Tests the C<parrot_debugger> tool by providing it with a number of source files,
2964 +and running through it with various commands.
2966 +We never actually check the *full* output of parrot_debugger. We simply check
2967 +several smaller components to avoid a test file that is far too unwieldy.
2970 +=head1 REQUIREMENTS
2972 +This test script requires you to build parrot_debugger, by typing "make
2973 +parrot_debugger" (using a suitable make tool for your platform). If this
2974 +requirement has not been met, all tests will be skipped.
2976 +=cut
2978 +use strict;
2979 +use warnings;
2980 +use lib qw(lib);
2982 +use Test::More;
2983 +use IO::File;
2984 +use Parrot::Config;
2985 +use File::Spec;
2987 +my $path_to_pdb;
2989 +BEGIN {
2990 + $path_to_pdb = File::Spec->catfile( ".", "pdb" );
2991 + my $exefile = $path_to_pdb . $PConfig{exe};
2992 + unless ( -f $exefile ) {
2993 + plan skip_all => "pdb hasn't been built";
2994 + exit(0);
2998 +my $tests = 0;
3000 +ok( pdb_output_like( <<PIR, "pir", "help", 'List of commands:' ), "help page" );
3001 +.sub main :main
3002 + \$N3 = 3.14159
3003 + print \$N3
3004 + print "\\n"
3005 +.end
3006 +PIR
3007 +ok( pdb_output_like( <<PIR, "pir", "r", '3\.14159' ), "running the program" );
3008 +.sub main :main
3009 + \$N3 = 3.14159
3010 + print \$N3
3011 + print "\\n"
3012 +.end
3013 +PIR
3014 +BEGIN { $tests += 2 }
3016 +BEGIN { plan tests => $tests; }
3018 +=head1 HELPER SUBROUTINES
3020 +=head2 pdb_output_like
3022 + ok(pdb_output_like(<<PASM, "pasm", 'r', "some output"), "running $file");
3024 +Takes 4 arguments: a file to run, the filename-extension of the file
3025 +(probably "pir" or "pasm"), the command or commands to provide to pdb as
3026 +input, and a regex string to match within pdb's output.
3028 +=cut
3030 +my $testno = 0;
3032 +sub pdb_output_like {
3033 + my ( $file, $ext, $input, $check ) = @_;
3034 + $testno++;
3035 + my $codefn = "$0.$testno.$ext";
3036 + my $stdinfn = "$0.$testno.stdin";
3037 + my $stdoutfn = "$0.$testno.stdout";
3038 + my $f = IO::File->new(">$codefn");
3039 + $f->print($file);
3040 + $f->close();
3041 + $f = IO::File->new(">$stdinfn");
3042 + $f->print($input);
3043 + $f->print("\nquit\n");
3044 + $f->close();
3045 + system("$path_to_pdb $codefn <$stdinfn >$stdoutfn 2>&1");
3046 + $f = IO::File->new($stdoutfn);
3047 + my $output = join( "", <$f> );
3048 + return $output =~ /$check/;
3051 +=head1 TODO
3053 +=over 4
3055 +=item
3057 +Flesh it out. This is a bare bones proof of concept. Add tests for all of the
3058 +commands.
3060 +=back
3062 +=cut
3064 +# Local Variables:
3065 +# mode: cperl
3066 +# cperl-indent-level: 4
3067 +# fill-column: 80
3068 +# End:
3069 +# vim: expandtab shiftwidth=4:
3070 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/t/tools/pdb.t src/parrot-0.6.4/t/tools/pdb.t
3071 --- origsrc/parrot-0.6.4/t/tools/pdb.t 2008-02-23 18:27:29.000000000 +0000
3072 +++ src/parrot-0.6.4/t/tools/pdb.t 1970-01-01 00:00:00.000000000 +0000
3073 @@ -1,123 +0,0 @@
3074 -#! perl
3075 -# Copyright (C) 2007, The Perl Foundation.
3076 -# $Id$
3078 -=head1 NAME
3080 -t/tools/pdb.t - test the Parrot Debugger
3082 -=head1 SYNOPSIS
3084 - % prove t/tools/pdb.t
3087 -=head1 DESCRIPTION
3089 -Tests the C<pdb> tool by providing it with a number of source files,
3090 -and running through it with various commands.
3092 -We never actually check the *full* output of pdb. We simply check
3093 -several smaller components to avoid a test file that is far too
3094 -unwieldy.
3097 -=head1 REQUIREMENTS
3099 -This test script requires you to build pdb, by typing "make pdb" (using
3100 -a suitable make tool for your platform). If this requirement has not
3101 -been met, all tests will be skipped.
3103 -=cut
3105 -use strict;
3106 -use warnings;
3107 -use lib qw(lib);
3109 -use Test::More;
3110 -use IO::File;
3111 -use Parrot::Config;
3112 -use File::Spec;
3114 -my $path_to_pdb;
3116 -BEGIN {
3117 - $path_to_pdb = File::Spec->catfile( ".", "pdb" );
3118 - my $exefile = $path_to_pdb . $PConfig{exe};
3119 - unless ( -f $exefile ) {
3120 - plan skip_all => "pdb hasn't been built";
3121 - exit(0);
3125 -my $tests = 0;
3127 -ok( pdb_output_like( <<PIR, "pir", "help", 'List of commands:' ), "help page" );
3128 -.sub main :main
3129 - \$N3 = 3.14159
3130 - print \$N3
3131 - print "\\n"
3132 -.end
3133 -PIR
3134 -ok( pdb_output_like( <<PIR, "pir", "r", '3\.14159' ), "running the program" );
3135 -.sub main :main
3136 - \$N3 = 3.14159
3137 - print \$N3
3138 - print "\\n"
3139 -.end
3140 -PIR
3141 -BEGIN { $tests += 2 }
3143 -BEGIN { plan tests => $tests; }
3145 -=head1 HELPER SUBROUTINES
3147 -=head2 pdb_output_like
3149 - ok(pdb_output_like(<<PASM, "pasm", 'r', "some output"), "running $file");
3151 -Takes 4 arguments: a file to run, the filename-extension of the file
3152 -(probably "pir" or "pasm"), the command or commands to provide to pdb as
3153 -input, and a regex string to match within pdb's output.
3155 -=cut
3157 -my $testno = 0;
3159 -sub pdb_output_like {
3160 - my ( $file, $ext, $input, $check ) = @_;
3161 - $testno++;
3162 - my $codefn = "$0.$testno.$ext";
3163 - my $stdinfn = "$0.$testno.stdin";
3164 - my $stdoutfn = "$0.$testno.stdout";
3165 - my $f = IO::File->new(">$codefn");
3166 - $f->print($file);
3167 - $f->close();
3168 - $f = IO::File->new(">$stdinfn");
3169 - $f->print($input);
3170 - $f->print("\nquit\n");
3171 - $f->close();
3172 - system("$path_to_pdb $codefn <$stdinfn >$stdoutfn 2>&1");
3173 - $f = IO::File->new($stdoutfn);
3174 - my $output = join( "", <$f> );
3175 - return $output =~ /$check/;
3178 -=head1 TODO
3180 -=over 4
3182 -=item
3184 -Flesh it out. This is a bare bones proof of concept. Add tests for all of the
3185 -commands.
3187 -=back
3189 -=cut
3191 -# Local Variables:
3192 -# mode: cperl
3193 -# cperl-indent-level: 4
3194 -# fill-column: 100
3195 -# End:
3196 -# vim: expandtab shiftwidth=4:
3197 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/tools/dev/install_files.pl src/parrot-0.6.4/tools/dev/install_files.pl
3198 --- origsrc/parrot-0.6.4/tools/dev/install_files.pl 2008-05-11 12:57:40.000000000 +0000
3199 +++ src/parrot-0.6.4/tools/dev/install_files.pl 2008-07-27 10:54:15.906250000 +0000
3200 @@ -126,7 +126,7 @@
3201 bindir => '/usr/bin',
3202 libdir => '/usr/lib',
3203 includedir => '/usr/include',
3204 - docdir => '/usr/share/doc',
3205 + docdir => '/usr/share/doc/parrot',
3206 'dry-run' => 0,
3209 @@ -189,6 +189,7 @@
3211 elsif ( $meta{include} ) {
3212 $dest =~ s/^include//;
3213 + $dest =~ s/^src/parrot/;
3214 $dest = File::Spec->catdir( $options{includedir}, $dest );
3216 elsif ( $meta{doc} ) {
3217 @@ -197,13 +198,16 @@
3218 elsif ( $meta{pkgconfig} ) {
3220 # For the time being this is hardcoded as being installed under libdir
3221 - # as it is typically donw with automake installed packages. If there
3222 + # as it is typically done with automake installed packages. If there
3223 # is a use case to make this configurable we'll add a seperate
3224 # --pkgconfigdir option.
3225 $dest = File::Spec->catdir( $options{libdir}, 'pkgconfig', $dest );
3227 else {
3228 - $dest =~ s/^runtime/lib/ if /\[library]/;
3229 + $dest =~ s|^runtime/|lib/|; # if /\[library]/;
3230 + # $dest =~ s|^src/|src/parrot/|;
3231 + $dest =~ s|^src/|lib/parrot/src/|;
3232 + next if $dest =~ /compilers|config|language|tools/;
3233 $dest = File::Spec->catdir( $options{prefix}, $dest );
3236 @@ -243,6 +247,7 @@
3238 else {
3239 next unless -e $src;
3240 + next if $^O eq 'cygwin' and -e "$src.exe"; # cygwin stat works, but copy not
3241 copy( $src, $dest ) or die "copy $src to $dest: $!\n";
3242 print "$dest\n";
3244 diff -urN -x CYGWIN-PATCHES -x 'aclocal.m4*' -x autom4te.cache -x config.cache -x config.log -x config.status -x config.h -x config.h.in -x ABOUT-NLS -x Makefile.in.in -x Makevars.template -x '*SlackBuild*' -x '*.egg-info' -x '*.class' -x '*.pyc' -x '*.mo' -x '*.gmo' -x '*.orig' -x '*.rej' -x '*.spec' -x '*.temp' -x '*~' -x '*.stackdump' -x COPYING -x INSTALL -x compile -x config-ml.in -x config.guess -x config.sub -x depcomp -x elisp-comp -x install-sh -x libtool.m4 -x ltoptions.m4 -x ltsugar.m4 -x ltversion.m4 -x 'lt~obsolete.m4' -x ltmain.sh -x mdate-sh -x missing -x mkinstalldirs -x py-compile -x symlink-tree -x texinfo.tex -x ylwrap -x config.rpath -x omf.make -x xmldocs.make -x gnome-doc-utils.make -x gnome-doc-utils.m4 -x intltool.m4 -x intltool-extract -x intltool-extract.in -x intltool-merge -x intltool-merge.in -x intltool-update -x intltool-update.in -x 'MANIFEST.*' -x parrot.pc -x myconfig -x config_lib.pasm -x Makefile -x TAGS origsrc/parrot-0.6.4/tools/dev/pbc_to_exe_gen.pl src/parrot-0.6.4/tools/dev/pbc_to_exe_gen.pl
3245 --- origsrc/parrot-0.6.4/tools/dev/pbc_to_exe_gen.pl 2008-06-30 09:34:12.000000000 +0000
3246 +++ src/parrot-0.6.4/tools/dev/pbc_to_exe_gen.pl 2008-07-27 10:54:15.906250000 +0000
3247 @@ -11,6 +11,22 @@
3248 __END__
3249 #! parrot
3251 +=head1 TITLE
3253 +pbc_to_exe
3255 +=head2 SYNOPSIS
3257 + pbc_to_exe my.pbc
3258 + => my.exe
3260 + pbc_to_exe my.pbc --install
3261 + => installable_my.exe
3263 +Warning! With -install there must be no directory prefix in the first arg yet.
3265 +=cut
3267 .include 'library/config.pir'
3269 .sub 'main' :main
3270 @@ -54,8 +70,40 @@
3271 argc = args
3273 if argc == 2 goto proper_args
3274 + if argc == 3 goto check_install
3275 .return ()
3277 +check_install:
3278 + .local string infile, install
3280 + $P0 = shift args
3281 + infile = shift args
3282 + install = shift args
3283 + if install == '--install' goto proper_install
3284 + .return ()
3286 +proper_install:
3287 + .local string cfile, objfile, obj, exefile, exe
3289 + $P0 = '_config'()
3290 + obj = $P0['o']
3291 + exe = $P0['exe']
3293 + .local int infile_len
3294 + infile_len = length infile
3295 + infile_len -= 3
3297 + cfile = substr infile, 0, infile_len
3298 + cfile .= 'c'
3300 + dec infile_len
3301 + objfile = substr infile, 0, infile_len
3302 + exefile = 'installable_'
3303 + exefile .= objfile
3304 + exefile .= exe
3305 + objfile .= obj
3306 + .return(infile, cfile, objfile, exefile)
3308 proper_args:
3309 .local string infile, cfile, objfile, obj, exefile, exe
3311 @@ -270,6 +318,7 @@
3312 .sub 'compile_file'
3313 .param string cfile
3314 .param string objfile
3315 + .param int install :optional
3317 $P0 = '_config'()
3318 .local string cc, ccflags, cc_o_out, osname, build_dir, slash
3319 @@ -318,6 +367,7 @@
3320 .sub 'link_file'
3321 .param string objfile
3322 .param string exefile
3323 + .param int install :optional
3325 $P0 = '_config'()
3326 .local string cc, ld, link_dynamic, linkflags, ld_out, libparrot, libs, o
3327 @@ -336,11 +386,17 @@
3328 slash = $P0['slash']
3329 icushared = $P0['icu_shared']
3331 - .local string config, pathquote
3332 + .local string config, pathquote, exeprefix
3333 + exeprefix = substr exefile, 0, 12
3334 config = concat build_dir, slash
3335 config .= 'src'
3336 config .= slash
3337 + if exeprefix == 'installable_' goto config_install
3338 config .= 'parrot_config'
3339 + goto config_cont
3340 + config_install:
3341 + config .= 'install_config'
3342 + config_cont:
3343 config .= o
3344 pathquote = ''
3345 unless osname == 'MSWin32' goto not_windows
3346 @@ -361,6 +417,8 @@
3347 link .= objfile
3348 link .= pathquote
3349 link .= ' '
3350 + link .= config
3351 + link .= ' '
3352 link .= rpath
3353 link .= ' '
3354 link .= libparrot
3355 @@ -372,8 +430,6 @@
3356 link .= libs
3357 link .= ' '
3358 link .= icushared
3359 - link .= ' '
3360 - link .= config
3362 say link
3363 .local int status
3364 @@ -390,7 +446,7 @@
3367 # Local Variables:
3368 -# mode: cperl
3369 +# mode: pir
3370 # cperl-indent-level: 4
3371 # fill-column: 100
3372 # End: