local_shlib.com.in 1.0 KB

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