You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2011/12/29 18:51:14 UTC

[lucy-commits] svn commit: r1225604 - in /incubator/lucy/branches/0.3: ./ perl/MANIFEST.SKIP perl/buildlib/Lucy/Build.pm

Author: marvin
Date: Thu Dec 29 17:51:14 2011
New Revision: 1225604

URL: http://svn.apache.org/viewvc?rev=1225604&view=rev
Log:
Exclude build artifacts from CPAN tarball.

MANIFEST.SKIP is not a good enough mechanism for excluding build artifacts
from sub-builds, as the sub-builds are encapsulated from it and don't know
that they would need to update MANIFEST.SKIP as they evolve.  Therefore, run
cleanup targets for all sub-builds prior to assembling the CPAN dist tarball
to prevent inclusion of spurious files created by sub-builds and rely on
MANIFEST.SKIP only for files created directly by Lucy::Build.

Modified:
    incubator/lucy/branches/0.3/   (props changed)
    incubator/lucy/branches/0.3/perl/MANIFEST.SKIP
    incubator/lucy/branches/0.3/perl/buildlib/Lucy/Build.pm

Propchange: incubator/lucy/branches/0.3/
------------------------------------------------------------------------------
    svn:mergeinfo = /incubator/lucy/trunk:1225600

Modified: incubator/lucy/branches/0.3/perl/MANIFEST.SKIP
URL: http://svn.apache.org/viewvc/incubator/lucy/branches/0.3/perl/MANIFEST.SKIP?rev=1225604&r1=1225603&r2=1225604&view=diff
==============================================================================
--- incubator/lucy/branches/0.3/perl/MANIFEST.SKIP (original)
+++ incubator/lucy/branches/0.3/perl/MANIFEST.SKIP Thu Dec 29 17:51:14 2011
@@ -26,14 +26,6 @@
 ^_build
 ^MYMETA.yml$
 
-# Module::Build generated files and dirs within clownfish.
-^clownfish/Build$
-^clownfish/blib
-^clownfish/_build
-^clownfish/MYMETA.yml$
-^clownfish/include/ppport.h
-^clownfish/lib/Clownfish.c$
-
 # autogenerated by custom Build.PL
 Lucy\.xs$
 ^typemap$
@@ -73,3 +65,4 @@ extracted_corpus\b
 \.ERR$
 
 ^MYMETA.yml$
+^MYMETA\.json$

Modified: incubator/lucy/branches/0.3/perl/buildlib/Lucy/Build.pm
URL: http://svn.apache.org/viewvc/incubator/lucy/branches/0.3/perl/buildlib/Lucy/Build.pm?rev=1225604&r1=1225603&r2=1225604&view=diff
==============================================================================
--- incubator/lucy/branches/0.3/perl/buildlib/Lucy/Build.pm (original)
+++ incubator/lucy/branches/0.3/perl/buildlib/Lucy/Build.pm Thu Dec 29 17:51:14 2011
@@ -673,7 +673,9 @@ END_AUTOGEN
 sub ACTION_dist {
     my $self = shift;
 
+    # Create POD but make sure not to include build artifacts.
     $self->dispatch('pod');
+    _clean_prereq_builds($self);
 
     # We build our Perl release tarball from $REPOS_ROOT/perl, rather than
     # from the top-level.
@@ -764,25 +766,24 @@ sub ACTION_semiclean {
     }
 }
 
-sub ACTION_clean {
+# Run the cleanup targets for independent prerequisite builds.
+sub _clean_prereq_builds {
     my $self = shift;
     if ( -e $CLOWNFISH_BUILD ) {
-        system("$^X $CLOWNFISH_BUILD clean")
+        my $old_dir = getcwd();
+        chdir $CLOWNFISH_DIR;
+        system("$^X Build realclean")
             and die "Clownfish clean failed";
+        chdir $old_dir;
     }
     $self->_run_make( dir => $CHARMONIZER_ORIG_DIR, args => ['clean'] );
     $self->_run_make( dir => $LEMON_DIR,            args => ['clean'] );
-    $self->SUPER::ACTION_clean;
 }
 
-sub ACTION_realclean {
+sub ACTION_clean {
     my $self = shift;
-    if ( -e $CLOWNFISH_BUILD ) {
-        system("$^X $CLOWNFISH_BUILD realclean")
-            and die "Clownfish realclean failed";
-    }
-
-    $self->SUPER::ACTION_realclean;
+    _clean_prereq_builds($self);
+    $self->SUPER::ACTION_clean;
 }
 
 1;