summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Zakharevich <ilya@math.ohio-state.edu>1997-03-20 23:13:31 -0500
committerChip Salzenberg <chip@atlantic.net>1997-03-09 11:57:19 +1200
commit970322a2e8024294ada6e8d1a027cb98f1f48ee3 (patch)
tree7cfb314bedd7de34a14e3d2ca3d017c4f0dd21e3
parentb3deed9189f963e9994815307931f9084f60d1d9 (diff)
downloadperl-970322a2e8024294ada6e8d1a027cb98f1f48ee3.tar.gz
Problems with SKIP in makemaker
The example in perlxstut (which I created with a lot of pain) works by coincidence only: It has WriteMakefile( NAME => 'Mytest2::mylib', SKIP => [qw(all static static_lib dynamic dynamic_lib)], clean => {'FILES' => 'libmylib$(LIB_EXT)'}, ); sub MY::top_targets { ' all :: static static :: libmylib$(LIB_EXT) libmylib$(LIB_EXT): $(O_FILES) $(AR) cr libmylib$(LIB_EXT) $(O_FILES) $(RANLIB) libmylib$(LIB_EXT) '; } and work only because $self->MM::top_targets is not called. The reason is that 'all' chunk is written anyway not depending on the value of SKIPHASH. In my eText package I do $self->MM::top_targets inside MY::top_targets, and this bombs. Patch follows (only for 'all', I did not check any other target): (The alternative is to patch perlxstut, but this may break some other programs, not only mine...) Enjoy, p5p-msgid: 199703210413.XAA21601@monk.mps.ohio-state.edu
-rw-r--r--lib/ExtUtils/MM_Unix.pm7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm
index 465a075132..0b54a7e986 100644
--- a/lib/ExtUtils/MM_Unix.pm
+++ b/lib/ExtUtils/MM_Unix.pm
@@ -3110,10 +3110,15 @@ sub top_targets {
my(@m);
push @m, '
#all :: config $(INST_PM) subdirs linkext manifypods
+';
+ push @m, '
all :: pure_all manifypods
'.$self->{NOECHO}.'$(NOOP)
-
+'
+ unless $self->{SKIPHASH}{'all'};
+
+ push @m, '
pure_all :: config pm_to_blib subdirs linkext
'.$self->{NOECHO}.'$(NOOP)