On Tue, Jan 04, 2005 at 04:56:28PM -0500, PPrymmer@factset.com wrote: > > Why would removing it as a dependency matter? > > Because of the subsequent action command: > > $ search descrip.mms "library/object/replace"/window > $(INST_STATIC) : $(OBJECT) $(MYEXTLIB) > If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create > $(MMS$TARGET) > Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST) > $(NOECHO) $(PERL) -e 1 >$(INST_ARCHAUTODIR)extralibs.ld > > The library/object command knows when it is being > asked to insert a non *.OBJ file into an OLB library > because of the different file attributes that a text file > like .exists has. Ahh, $(MMS$SOURCE_LIST) is a list of all dependencies. I think it can be safely removed. The logic is this: 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"); } Since the only time $(MMS$SOURCE_LIST) is used is when $(MYEXTLIB) is empty and the only important dependencies are $(OBJECT) and $(MYEXTLIB) the list is always going to be $(OBJECT) so both branches are effectively the same. So this should solve the problem while keeping the dependency. --- lib/ExtUtils/MM_VMS.pm (revision 4204) +++ lib/ExtUtils/MM_VMS.pm (local) @@ -994,11 +991,7 @@ # 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,"\t",'Library/Object/Replace $(MMS$TARGET) $(OBJECT)',"\n"); - } else { - push(@m,"\t",'Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST)',"\ n"); - } + push(@m,"\t",'Library/Object/Replace $(MMS$TARGET) $(OBJECT)',"\n"); push @m, "\t\$(NOECHO) \$(PERL) -e 1 >\$(INST_ARCHAUTODIR)extralibs.ld\n"; foreach $lib (split ' ', $self->{EXTRALIBS}) { -- Michael G Schwern schwern@pobox.com http://www.pobox.com/~schwern/ Make it too tough for the enemy to get in and you can't get out.Thread Previous | Thread Next