| lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | $	! OpenSSL config: determine the architecture and run Configure | 
|  | 2 | $	! Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. | 
|  | 3 | $	! | 
|  | 4 | $	! Licensed under the OpenSSL license (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 | 
|  | 35 | Usage: @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 |  | 
|  | 44 | Any other text will be passed to the Configure perl script. | 
|  | 45 | See INSTALL 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 |