1$ ! OpenSSL config: determine the architecture and run Configure 2$ ! Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. 3$ ! 4$ ! Licensed under the Apache License 2.0 (the "License"). You may not use 5$ ! this file except in compliance with the License. You can obtain a 6$ ! copy in the file LICENSE in the source distribution or at 7$ ! https://www.openssl.org/source/license.html 8$ ! 9$ ! Very simple for the moment, it will take the following arguments: 10$ ! 11$ ! -32 or 32 sets /POINTER_SIZE=32 12$ ! -64 or 64 sets /POINTER_SIZE=64 13$ ! -d sets debugging 14$ ! -h prints a usage and exits 15$ ! -t test mode, doesn't run Configure 16$ 17$ arch = f$edit( f$getsyi( "arch_name"), "lowercase") 18$ pointer_size = "" 19$ dryrun = 0 20$ verbose = 0 21$ here = F$PARSE("A.;",F$ENVIRONMENT("PROCEDURE"),,,"SYNTAX_ONLY") - "A.;" 22$ 23$ collected_args = "" 24$ P_index = 0 25$ LOOP1: 26$ P_index = P_index + 1 27$ IF P_index .GT. 8 THEN GOTO ENDLOOP1 28$ P = F$EDIT(P1,"TRIM,LOWERCASE") 29$ IF P .EQS. "-h" 30$ THEN 31$ dryrun = 1 32$ P = "" 33$ TYPE SYS$INPUT 34$ DECK 35Usage: @config [options] 36 37 -32 or 32 Build with 32-bit pointer size. 38 -64 or 64 Build with 64-bit pointer size. 39 -d Build with debugging. 40 -t Test mode, do not run the Configure perl script. 41 -v Verbose mode, show the exact Configure call that is being made. 42 -h This help. 43 44Any other text will be passed to the Configure perl script. 45See INSTALL.md for instructions. 46 47$ EOD 48$ ENDIF 49$ IF P .EQS. "-t" 50$ THEN 51$ dryrun = 1 52$ verbose = 1 53$ P = "" 54$ ENDIF 55$ IF P .EQS. "-v" 56$ THEN 57$ verbose = 1 58$ P = "" 59$ ENDIF 60$ IF P .EQS. "-32" .OR. P .EQS. "32" 61$ THEN 62$ pointer_size = "-P32" 63$ P = "" 64$ ENDIF 65$ IF P .EQS. "-64" .OR. P .EQS. "64" 66$ THEN 67$ pointer_size = "-P64" 68$ P = "" 69$ ENDIF 70$ IF P .EQS. "-d" 71$ THEN 72$ collected_args = collected_args + " --debug" 73$ P = "" 74$ ENDIF 75$ IF P .NES. "" THEN - 76 collected_args = collected_args + " """ + P1 + """" 77$ P1 = P2 78$ P2 = P3 79$ P3 = P4 80$ P4 = P5 81$ P5 = P6 82$ P6 = P7 83$ P7 = P8 84$ P8 = "" 85$ GOTO LOOP1 86$ ENDLOOP1: 87$ 88$ target = "vms-''arch'''pointer_size'" 89$ IF verbose THEN - 90 WRITE SYS$OUTPUT "PERL ''here'Configure ""''target'""",collected_args 91$ IF .not. dryrun THEN - 92 PERL 'here'Configure "''target'"'collected_args' 93$ EXIT $STATUS 94