diff -ru ExtUtils-MakeMaker-6.25_08.orig/lib/ExtUtils/MM_VMS.pm ExtUtils-MakeMaker-6.25_08/lib/ExtUtils/MM_VMS.pm
--- ExtUtils-MakeMaker-6.25_08.orig/lib/ExtUtils/MM_VMS.pm	2005-02-08 09:07:02.000000000 -0500
+++ ExtUtils-MakeMaker-6.25_08/lib/ExtUtils/MM_VMS.pm	2005-02-18 16:54:04.507216000 -0500
@@ -980,7 +980,10 @@
 
     my(@m,$lib);
     push @m,'
-$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists
+# Rely on suffix rule for update action
+$(OBJECT) : $(INST_ARCHAUTODIR)$(DFSEP).exists
+
+$(INST_STATIC) : $(OBJECT) $(MYEXTLIB)
 ';
     # If this extension has its own library (eg SDBM_File)
     # then copy that to $(INST_STATIC) and add $(OBJECT) into it.
@@ -991,7 +994,11 @@
     # 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
-    push(@m,"\t",'Library/Object/Replace $(MMS$TARGET) $(OBJECT)',"\n"); 
+    if ($self->{MYEXTLIB}) {
+      push(@m,"\t",'Library/Object/Replace $(MMS$TARGET) $(OBJECT)',"\n");
+    } else {
+      push(@m,"\t",'Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST)',"\n");
+    }
     
     push @m, "\t\$(NOECHO) \$(PERL) -e 1 >\$(INST_ARCHAUTODIR)extralibs.ld\n";
     foreach $lib (split ' ', $self->{EXTRALIBS}) {
