This patch contains different things.
If you prefer three smaller patches,
just speak, I'll resend.

* Configure.pl
  * 5.004_04 does not have $Config{_o}, $Config{_exe},
    use obj_ext, and exe_ext
  * Use ExtUtils::Manifest for manifest parsing
    ( now you can put blank lines/comments/
      file descriptions in MANIFEST )
  * add rm_f configuration variable
    ( WIndows, as usual, is different )
* MANIFEST, MANIFEST.SKIP
  * updates, skip CVS-related files
    in fullcheck
* Makefile.in
  * some cleanup
  * new targets:
    distclean, to remove configure-generated files
    fullcheck, to do a ExtUtils::Manifest::fullcheck
* hints/mswin32.pl
  * added rm_f
* test_main.c
  * renamed _read to read

Regards
Mattia

diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/Configure.pl 
parrot/Configure.pl
--- parrot.cvs/Configure.pl     Tue Sep 18 21:45:08 2001
+++ parrot/Configure.pl Tue Sep 18 21:43:04 2001
@@ -7,4 +7,5 @@
 use Config;
 use Getopt::Long;
+use ExtUtils::Manifest;
  
 my( $opt_debugging, $opt_defaults, $opt_version, $opt_help ) = ( 0, 0, 0, 0 );
@@ -69,10 +70,11 @@
        perl =>                 $^X,
        cc_debug =>             '-g',
-       o =>                    '.o',           # object files extension
-       exe =>                  $Config{_exe},
+       o =>                    $Config{obj_ext}, # object files extension
+       exe =>                  $Config{exe_ext},
        ld =>                   $Config{ld},
        ld_out =>               '-o ',          # ld output file
        ld_debug =>     '',                     # include debug info in executable
        debugging =>    $opt_debugging,
+       rm_f =>         'rm -f',                # remove files
 );
 
@@ -211,11 +213,10 @@
 
 sub check_manifest {
+       my $files = ExtUtils::Manifest::maniread( 'MANIFEST' );
        my $not_ok;
-       open(MANIFEST, "MANIFEST");
 
-       while(<MANIFEST>) {
-               chomp;
-               unless(-e $_) {
-                       print "File $_ is missing!\n";
+       foreach my $i ( keys %$files ) {
+               unless( -e $i) {
+                       print "File $i is missing!\n";
                        $not_ok=1;
                }
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/MANIFEST 
parrot/MANIFEST
--- parrot.cvs/MANIFEST Tue Sep 18 14:53:20 2001
+++ parrot/MANIFEST     Tue Sep 18 15:53:06 2001
@@ -3,5 +3,7 @@
 Makefile.in
 MANIFEST
+MANIFEST.SKIP
 Parrot/Opcode.pm
+Parrot/Test.pm
 Parrot/PackFile.pm
 Parrot/PackFile/Constant.pm
@@ -23,4 +25,6 @@
 docs/strings.pod
 docs/vtables.pod
+docs/parrot_assembly.pod
+hints/mswin32.pl
 include/parrot/events.h
 include/parrot/exceptions.h
@@ -50,4 +54,9 @@
 t/euclid.pasm
 t/jump.pasm
+t/local_label.pasm
+t/Makefile
+t/harness
+t/op/basic.t
+t/op/string.t
 test_main.c
 little_languages/euclid.jako
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/MANIFEST.SKIP 
parrot/MANIFEST.SKIP
--- parrot.cvs/MANIFEST.SKIP    Thu Jan  1 01:00:00 1970
+++ parrot/MANIFEST.SKIP        Tue Sep 18 15:42:04 2001
@@ -0,0 +1,3 @@
+[Cc][Vv][Ss]/
+\.\#.*[\d\.]+
+\.cvsignore
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/Makefile.in 
parrot/Makefile.in
--- parrot.cvs/Makefile.in      Tue Sep 18 21:45:08 2001
+++ parrot/Makefile.in  Tue Sep 18 21:43:04 2001
@@ -1,3 +1,4 @@
 O = ${o}
+RM_F = ${rm_f}
 
 INC=include/parrot
@@ -18,5 +19,5 @@
 TEST_PROG = test_prog${exe}
 
-.c.o:
+.c$(O):
        $(CC) $(CFLAGS) -o $@ -c $<
 
@@ -60,11 +61,17 @@
        $(PERL) make_op_header.pl opcode_table > $(INC)/op.h
 
-config.h: Configure.pl config_h.in
+$(INC)/config.h: Configure.pl config_h.in
        $(PERL) Configure.pl
 
 clean:
-       rm -f *$(O) *.s basic_opcodes.c $(INC)/interp_guts.h $(INC)/op.h $(TEST_PROG)
+       $(RM_F) *$(O) *.s basic_opcodes.c $(INC)/interp_guts.h $(INC)/op.h $(TEST_PROG)
 
-test:
+distclean: clean
+       $(RM_F) Parrot/Config.pm include/parrot/config.h
+
+fullcheck:
+       $(PERL) -MExtUtils::Manifest=fullcheck -e fullcheck
+
+test: $(TEST_PROG)
        $(PERL) t/harness
 
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/hints/mswin32.pl 
parrot/hints/mswin32.pl
--- parrot.cvs/hints/mswin32.pl Mon Sep 17 00:06:44 2001
+++ parrot/hints/mswin32.pl     Tue Sep 18 22:05:58 2001
@@ -3,4 +3,6 @@
        my $is_mingw = grep { $c{cc} eq $_ } ( qw(gcc gcc.exe) );
 
+        $c{rm_f} = '$(PERL) -MExtUtils::Command -e rm_f';
+
        if( $is_msvc ) {
                $c{o} = '.obj';
@@ -10,4 +12,6 @@
        }
        elsif( $is_mingw ) {
+                $c{o} = '.o';
+                $c{perl} =~ tr{\\}{/}; # GNU make hates "\"
                $c{ld} = 'gcc';
                # if your perl is ActivePerl, then libs are .lib files,
@@ -15,3 +19,3 @@
                $c{libs} = ' ' if $c{libs} =~ m/\.lib\s/i;
        }
-}
\ No newline at end of file
+}
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/process_opfunc.pl 
parrot/process_opfunc.pl
--- parrot.cvs/process_opfunc.pl        Tue Sep 18 14:53:20 2001
+++ parrot/process_opfunc.pl    Tue Sep 18 18:56:44 2001
@@ -52,5 +52,6 @@
             D => 1,
             S => 1,
-            s => 1,
+            # quotes to make 5.004_04 happy
+            's' => 1,
             );
 
diff -r -u -2 -N -xCVS -x.#* -xop.h -x*.orig -x*.rej -x*~ parrot.cvs/test_main.c 
parrot/test_main.c
--- parrot.cvs/test_main.c      Mon Sep 17 22:24:30 2001
+++ parrot/test_main.c  Tue Sep 18 15:25:26 2001
@@ -95,5 +95,5 @@
 #ifndef HAS_HEADER_SYSMMAN
         program_code = mem_sys_allocate(program_size);
-        _read(fd, program_code, program_size);
+        read(fd, program_code, program_size);
 #else
         program_code = mmap(0, program_size, PROT_READ, MAP_SHARED, fd, 0);

Reply via email to