local_shlib.com.in 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. ${-
  2. use File::Spec::Functions qw(rel2abs);
  3. my $bldtop = rel2abs($config{builddir});
  4. our %names = ( map { platform->sharedname($_) =>
  5. $bldtop.platform->sharedlib($_) }
  6. grep { !$unified_info{attributes}->{libraries}->{$_}->{noinst} }
  7. @{$unified_info{libraries}} );
  8. "" -}
  9. $ ! Create a local environment with the shared library logical names
  10. $ ! properly set. Undo this with unlocal_shlib.com
  11. $
  12. $ OPENSSL_NAMES := OPENSSL_NAMES_'F$GETJPI("","PID")'
  13. $ CREATE/NAME_TABLE/PARENT_TABLE=LNM$PROCESS_DIRECTORY 'OPENSSL_NAMES'
  14. $ DEFINE/TABLE='OPENSSL_NAMES' OSSL_FLAG YES
  15. $
  16. $ NAMES := {- join(",", keys %names); -}
  17. {-
  18. join("\n", map { "\$ __$_ = \"".$names{$_}."\"" } sort keys %names);
  19. -}
  20. $ I = 0
  21. $ LOOP:
  22. $ E = F$ELEMENT(I,",",NAMES)
  23. $ I = I + 1
  24. $ IF E .EQS. "," THEN GOTO ENDLOOP
  25. $ EV = __'E'
  26. $ OLDV = F$TRNLNM(E,"LNM$PROCESS")
  27. $ IF OLDV .NES. "" THEN DEFINE/TABLE='OPENSSL_NAMES' 'E' 'OLDV'
  28. $ DEFINE 'E' 'EV'
  29. $ GOTO LOOP
  30. $ ENDLOOP: