/ package-openssl / openssl.pcsi$desc-in
openssl.pcsi$desc-in
  1  {-
  2   use Config;
  3   use File::Spec::Functions;
  4   use File::Basename;
  5  
  6   # The arch name that POLYCENTER uses
  7   sub vms_arch {
  8       my %translations = ( "VMS_VAX"  => "VAXVMS",
  9                            "VMS_AXP"  => "AXPVMS",
 10                            "VMS_IA64" => "I64VMS" );
 11       return $translations{$Config{archname}};
 12   }
 13  
 14   # The arch as returned by F$GETSYI("ARCH_NAME")
 15   sub vms_arch2 {
 16       my %translations = ( "VMS_VAX"  => "VAX",
 17                            "VMS_AXP"  => "Alpha",
 18                            "VMS_IA64" => "IA64" );
 19       return $translations{$Config{archname}};
 20   }
 21  
 22   sub vstring1 {
 23       my @vattribs = split(/-/, $config{version});
 24       my @vnums = split(/\./, $vattribs[0]);
 25       my $type = ord 'V';
 26  
 27       if (scalar @vattribs > 1) {
 28           if ($vattribs[1] =~ m|^pre(\d+)$|) {
 29               $type = 64 + $1;
 30           } else {
 31               $type = ord 'T';
 32           }
 33       }
 34  
 35       if ($vnums[2] eq "0") {
 36           return sprintf "%c%d.%d", $type, @vnums;
 37       } else {
 38           return sprintf "%c%d.%d-%d", $type, @vnums;
 39       }
 40   }
 41   sub vstring2 {
 42       my @vattribs = split(/-/, $config{version});
 43       my @vnums = split(/\./, $vattribs[0]);
 44       return sprintf "%02d%02d", @vnums;
 45   }
 46  
 47   sub public_headers {
 48       my %headers = ();
 49       foreach (glob
 50                sprintf "_kit_%s/files/openssl-install/include/openssl/*.h",
 51                        vms_arch()) {
 52           $headers{basename $_} = 1;
 53       }
 54       return sort keys %headers;
 55   }
 56  
 57  -}
 58  product Levitte {- vms_arch() -} OPENSSL {- vstring1() -} Full ;
 59      if ( ( (not <software DEC {- vms_arch() -} OPENVMS version minimum V8.4>)
 60             and (not <software HP {- vms_arch() -} OPENVMS version minimum V8.4>) )
 61           and (not <software VSI {- vms_arch() -} OPENVMS version minimum V8.4>) ) ;
 62          error NEED{- vms_arch() -}84 abort ;
 63      end if ;
 64  
 65      file [SYSEXE]OPENSSL{- vstring2() -}.EXE ;
 66      file [SYSLIB]OSSL$LIBCRYPTO{- vstring2() -}_SHR.EXE ;
 67      file [SYSLIB]OSSL$LIBCRYPTO{- vstring2() -}_SHR32.EXE ;
 68      file [SYSLIB]OSSL$LIBCRYPTO{- vstring2() -}_SHR64.EXE ;
 69      file [SYSLIB]OSSL$LIBSSL{- vstring2() -}_SHR.EXE ;
 70      file [SYSLIB]OSSL$LIBSSL{- vstring2() -}_SHR32.EXE ;
 71      file [SYSLIB]OSSL$LIBSSL{- vstring2() -}_SHR64.EXE ;
 72      file [SYSLIB]OSSL$LIBCRYPTO.OLB ;
 73      file [SYSLIB]OSSL$LIBCRYPTO32.OLB ;
 74      file [SYSLIB]OSSL$LIBCRYPTO64.OLB ;
 75      file [SYSLIB]OSSL$LIBSSL.OLB ;
 76      file [SYSLIB]OSSL$LIBSSL32.OLB ;
 77      file [SYSLIB]OSSL$LIBSSL64.OLB ;
 78  
 79      file [OSSL$ENGINES{- vstring2() -}]DASYNC.EXE
 80           source [.OPENSSL-INSTALL.ENGINES{- vstring2() -}.{- vms_arch2() -}]DASYNC.EXE ;
 81      file [OSSL$ENGINES{- vstring2() -}32]DASYNC.EXE
 82           source [.OPENSSL-INSTALL.ENGINES{- vstring2() -}.{- vms_arch2() -}32]DASYNC.EXE ;
 83      file [OSSL$ENGINES{- vstring2() -}64]DASYNC.EXE
 84           source [.OPENSSL-INSTALL.ENGINES{- vstring2() -}.{- vms_arch2() -}64]DASYNC.EXE ;
 85  
 86      directory [OSSL$INCLUDE.OPENSSL] ;
 87  {- my $v = vstring2(); join("\n", map { "    file [OSSL\$INCLUDE.OPENSSL]$_ ;" } public_headers()) -}
 88  
 89      directory [OSSL$COMMON] ;
 90      directory [OSSL$COMMON.CERTS] ;
 91      directory [OSSL$COMMON.PRIVATE] ;
 92      file [OSSL$COMMON]openssl.cnf-dist ;
 93      file [OSSL$COMMON]openssl.cnf source [OSSL$COMMON]openssl.cnf-dist write ;
 94  
 95      file [SYS$STARTUP]ossl$startup.com ;
 96      file [SYS$STARTUP]ossl$shutdown.com ;
 97      file [SYSMGR]ossl$utils.com ;
 98      file [SYSTEST]ossl$ivp.com ;
 99  
100      information POST phase after with helptext ;
101      information UPGRADE phase after with helptext ;
102  
103      execute start "@sys$startup:ossl$startup ""/system"""
104              stop "@sys$startup:ossl$shutdown ""/system""" ;
105      execute login "$ @sys$manager:ossl$utils" ;
106      option RUN_IVP ;
107          execute test "@pcsi$destination:[systest]ossl$ivp" ;
108      end option ;
109  
110  end product ;