summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Sugalski <sugalskd@ous.edu>1998-05-16 02:18:52 +1200
committerTim Bunce <Tim.Bunce@ig.co.uk>1998-05-16 02:18:52 +1200
commit0f940d276f05bce11e9e7c4ef96f203fd0569c69 (patch)
tree5ed8352f61b2a7ff16876f7bfe20093950e98a46
parentebb60c8fc07b8bd502d29be7417306de9cb13e31 (diff)
downloadperl-0f940d276f05bce11e9e7c4ef96f203fd0569c69.tar.gz
MM_VMS.pm fixes for building external library
(I originally sent this out a while ago (back in january), but it didn't make it into the _05 patchkit. Here it is again) Okay, folks. Here's a patch for MM_VMS.PM that fixes a bug when building an extension with an external library. (like, say, SDBM_File or GD) It's not perfect (will still fail under certain circumstances, but fewer than the current version, and all currently functional cases still work) but it's good enough to fix a majority of the cases *and* get SDBM_File to build (whith the SDBM_File patches needed for VMS, of course) p5p-msgid: 3.0.5.32.19980511160542.009dd480@ous.edu
-rw-r--r--lib/ExtUtils/MM_VMS.pm14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/ExtUtils/MM_VMS.pm b/lib/ExtUtils/MM_VMS.pm
index dc3b4ceca6..954f6123d5 100644
--- a/lib/ExtUtils/MM_VMS.pm
+++ b/lib/ExtUtils/MM_VMS.pm
@@ -1422,7 +1422,21 @@ $(INST_STATIC) : $(OBJECT) $(MYEXTLIB)
push(@m,'
If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
+');
+ # if there was a library to copy, then we can't use MMS$SOURCE_LIST,
+ # 'cause it's a library and you can't stick them in other libraries.
+ # In that case, we use $OBJECT instead and hope for the best
+ if ($self->{MYEXTLIB}) {
+ push(@m,'
+ Library/Object/Replace $(MMS$TARGET) $(OBJECT)
+');
+ } else {
+ push(@m,'
Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST)
+');
+ }
+
+ push(@m, '
$(NOECHO) $(PERL) -e "open F,\'>>$(INST_ARCHAUTODIR)extralibs.ld\';print F qq{$(EXTRALIBS)\n};close F;"
');
push @m, $self->dir_target('$(INST_ARCHAUTODIR)');