Corrections to the VMS build system.

Submitted by Steven M. Schweda <sms@antinode.info>
This commit is contained in:
Richard Levitte 2011-03-25 16:21:08 +00:00
parent c9d630dab6
commit ecff2e5ce1
7 changed files with 155 additions and 133 deletions

View File

@ -37,14 +37,25 @@ $ VERIFY = openssl + " verify"
$ X509 = openssl + " x509" $ X509 = openssl + " x509"
$ PKCS12 = openssl + " pkcs12" $ PKCS12 = openssl + " pkcs12"
$ echo = "write sys$Output" $ echo = "write sys$Output"
$ RET = 1
$! $!
$ s = F$PARSE(F$ENVIRONMENT("DEFAULT"),"[]") - "].;" $! 2010-12-20 SMS.
$ CATOP := 's'.demoCA $! Use a concealed logical name to reduce command line lengths, to
$ CAKEY := ]cakey.pem $! avoid DCL errors on VAX:
$ CACERT := ]cacert.pem $! %DCL-W-TKNOVF, command element is too long - shorten
$! (Path segments like "openssl-1_0_1-stable-SNAP-20101217" accumulate
$! quickly.)
$!
$ CATOP = F$PARSE( F$ENVIRONMENT( "DEFAULT"), "[]")- "].;"+ ".demoCA.]"
$ define /translation_attributes = concealed CATOP 'CATOP'
$!
$ on error then goto clean_up
$ on control_y then goto clean_up
$!
$ CAKEY = "CATOP:[private]cakey.pem"
$ CACERT = "CATOP:[000000]cacert.pem"
$ $
$ __INPUT := SYS$COMMAND $ __INPUT := SYS$COMMAND
$ RET = 1
$! $!
$ i = 1 $ i = 1
$opt_loop: $opt_loop:
@ -55,7 +66,7 @@ $
$ IF (prog_opt .EQS. "?" .OR. prog_opt .EQS. "-h" .OR. prog_opt .EQS. "-help") $ IF (prog_opt .EQS. "?" .OR. prog_opt .EQS. "-h" .OR. prog_opt .EQS. "-help")
$ THEN $ THEN
$ echo "usage: CA -newcert|-newreq|-newca|-sign|-verify" $ echo "usage: CA -newcert|-newreq|-newca|-sign|-verify"
$ exit $ goto clean_up
$ ENDIF $ ENDIF
$! $!
$ IF (prog_opt .EQS. "-input") $ IF (prog_opt .EQS. "-input")
@ -69,7 +80,7 @@ $!
$ IF (prog_opt .EQS. "-newcert") $ IF (prog_opt .EQS. "-newcert")
$ THEN $ THEN
$ ! Create a certificate. $ ! Create a certificate.
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ REQ -new -x509 -keyout newreq.pem -out newreq.pem 'DAYS' $ REQ -new -x509 -keyout newreq.pem -out newreq.pem 'DAYS'
$ RET=$STATUS $ RET=$STATUS
$ echo "Certificate (and private key) is in newreq.pem" $ echo "Certificate (and private key) is in newreq.pem"
@ -79,7 +90,7 @@ $!
$ IF (prog_opt .EQS. "-newreq") $ IF (prog_opt .EQS. "-newreq")
$ THEN $ THEN
$ ! Create a certificate request $ ! Create a certificate request
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ REQ -new -keyout newreq.pem -out newreq.pem 'DAYS' $ REQ -new -keyout newreq.pem -out newreq.pem 'DAYS'
$ RET=$STATUS $ RET=$STATUS
$ echo "Request (and private key) is in newreq.pem" $ echo "Request (and private key) is in newreq.pem"
@ -90,41 +101,40 @@ $ IF (prog_opt .EQS. "-newca")
$ THEN $ THEN
$ ! If explicitly asked for or it doesn't exist then setup the directory $ ! If explicitly asked for or it doesn't exist then setup the directory
$ ! structure that Eric likes to manage things. $ ! structure that Eric likes to manage things.
$ IF F$SEARCH(CATOP+"]serial.") .EQS. "" $ IF F$SEARCH( "CATOP:[000000]serial.") .EQS. ""
$ THEN $ THEN
$ CREATE /DIR /PROTECTION=OWNER:RWED 'CATOP'] $ CREATE /DIRECTORY /PROTECTION=OWNER:RWED CATOP:[000000]
$ CREATE /DIR /PROTECTION=OWNER:RWED 'CATOP'.certs] $ CREATE /DIRECTORY /PROTECTION=OWNER:RWED CATOP:[certs]
$ CREATE /DIR /PROTECTION=OWNER:RWED 'CATOP'.crl] $ CREATE /DIRECTORY /PROTECTION=OWNER:RWED CATOP:[crl]
$ CREATE /DIR /PROTECTION=OWNER:RWED 'CATOP'.newcerts] $ CREATE /DIRECTORY /PROTECTION=OWNER:RWED CATOP:[newcerts]
$ CREATE /DIR /PROTECTION=OWNER:RWED 'CATOP'.private] $ CREATE /DIRECTORY /PROTECTION=OWNER:RWED CATOP:[private]
$ $
$ OPEN /WRITE ser_file 'CATOP']serial. $ OPEN /WRITE ser_file CATOP:[000000]serial.
$ WRITE ser_file "01" $ WRITE ser_file "01"
$ CLOSE ser_file $ CLOSE ser_file
$ APPEND/NEW NL: 'CATOP']index.txt $ APPEND /NEW_VERSION NL: CATOP:[000000]index.txt
$ $
$ ! The following is to make sure access() doesn't get confused. It $ ! The following is to make sure access() doesn't get confused. It
$ ! really needs one file in the directory to give correct answers... $ ! really needs one file in the directory to give correct answers...
$ COPY NLA0: 'CATOP'.certs].; $ COPY NLA0: CATOP:[certs].;
$ COPY NLA0: 'CATOP'.crl].; $ COPY NLA0: CATOP:[crl].;
$ COPY NLA0: 'CATOP'.newcerts].; $ COPY NLA0: CATOP:[newcerts].;
$ COPY NLA0: 'CATOP'.private].; $ COPY NLA0: CATOP:[private].;
$ ENDIF $ ENDIF
$! $!
$ IF F$SEARCH(CATOP+".private"+CAKEY) .EQS. "" $ IF F$SEARCH( CAKEY) .EQS. ""
$ THEN $ THEN
$ READ '__INPUT' FILE - $ READ '__INPUT' FILE -
/PROMPT="CA certificate filename (or enter to create): " /PROMPT="CA certificate filename (or enter to create): "
$ IF (FILE .NES. "") .AND. (F$SEARCH(FILE) .NES. "") $ IF (FILE .NES. "") .AND. (F$SEARCH(FILE) .NES. "")
$ THEN $ THEN
$ COPY 'FILE' 'CATOP'.private'CAKEY' $ COPY 'FILE' 'CAKEY'
$ RET=$STATUS $ RET=$STATUS
$ ELSE $ ELSE
$ echo "Making CA certificate ..." $ echo "Making CA certificate ..."
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ REQ -new -x509 -keyout 'CATOP'.private'CAKEY' - $ REQ -new -x509 -keyout 'CAKEY' -out 'CACERT' 'DAYS'
-out 'CATOP''CACERT' 'DAYS' $ RET=$STATUS
$ RET=$STATUS
$ ENDIF $ ENDIF
$ ENDIF $ ENDIF
$ GOTO opt_loop_continue $ GOTO opt_loop_continue
@ -135,16 +145,16 @@ $ THEN
$ i = i + 1 $ i = i + 1
$ cname = P'i' $ cname = P'i'
$ IF cname .EQS. "" THEN cname = "My certificate" $ IF cname .EQS. "" THEN cname = "My certificate"
$ PKCS12 -in newcert.pem -inkey newreq.pem -certfile 'CATOP''CACERT - $ PKCS12 -in newcert.pem -inkey newreq.pem -certfile 'CACERT' -
-out newcert.p12 -export -name "''cname'" -out newcert.p12 -export -name "''cname'"
$ RET=$STATUS $ RET=$STATUS
$ exit RET $ goto clean_up
$ ENDIF $ ENDIF
$! $!
$ IF (prog_opt .EQS. "-xsign") $ IF (prog_opt .EQS. "-xsign")
$ THEN $ THEN
$! $!
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ CA -policy policy_anything -infiles newreq.pem $ CA -policy policy_anything -infiles newreq.pem
$ RET=$STATUS $ RET=$STATUS
$ GOTO opt_loop_continue $ GOTO opt_loop_continue
@ -153,7 +163,7 @@ $!
$ IF ((prog_opt .EQS. "-sign") .OR. (prog_opt .EQS. "-signreq")) $ IF ((prog_opt .EQS. "-sign") .OR. (prog_opt .EQS. "-signreq"))
$ THEN $ THEN
$! $!
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ CA -policy policy_anything -out newcert.pem -infiles newreq.pem $ CA -policy policy_anything -out newcert.pem -infiles newreq.pem
$ RET=$STATUS $ RET=$STATUS
$ type newcert.pem $ type newcert.pem
@ -165,9 +175,9 @@ $ IF (prog_opt .EQS. "-signcert")
$ THEN $ THEN
$! $!
$ echo "Cert passphrase will be requested twice - bug?" $ echo "Cert passphrase will be requested twice - bug?"
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ X509 -x509toreq -in newreq.pem -signkey newreq.pem -out tmp.pem $ X509 -x509toreq -in newreq.pem -signkey newreq.pem -out tmp.pem
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ CA -policy policy_anything -out newcert.pem -infiles tmp.pem $ CA -policy policy_anything -out newcert.pem -infiles tmp.pem
y y
y y
@ -182,17 +192,17 @@ $!
$ i = i + 1 $ i = i + 1
$ IF (p'i' .EQS. "") $ IF (p'i' .EQS. "")
$ THEN $ THEN
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ VERIFY "-CAfile" 'CATOP''CACERT' newcert.pem $ VERIFY "-CAfile" 'CACERT' newcert.pem
$ ELSE $ ELSE
$ j = i $ j = i
$ verify_opt_loop: $ verify_opt_loop:
$ IF j .GT. 8 THEN GOTO verify_opt_loop_end $ IF j .GT. 8 THEN GOTO verify_opt_loop_end
$ IF p'j' .NES. "" $ IF p'j' .NES. ""
$ THEN $ THEN
$ DEFINE/USER SYS$INPUT '__INPUT' $ DEFINE /USER_MODE SYS$INPUT '__INPUT'
$ __tmp = p'j' $ __tmp = p'j'
$ VERIFY "-CAfile" 'CATOP''CACERT' '__tmp' $ VERIFY "-CAfile" 'CACERT' '__tmp'
$ tmp=$STATUS $ tmp=$STATUS
$ IF tmp .NE. 0 THEN RET=tmp $ IF tmp .NE. 0 THEN RET=tmp
$ ENDIF $ ENDIF
@ -208,8 +218,8 @@ $ IF (prog_opt .NES. "")
$ THEN $ THEN
$! $!
$ echo "Unknown argument ''prog_opt'" $ echo "Unknown argument ''prog_opt'"
$ $ RET = 3
$ EXIT 3 $ goto clean_up
$ ENDIF $ ENDIF
$ $
$opt_loop_continue: $opt_loop_continue:
@ -217,4 +227,10 @@ $ i = i + 1
$ GOTO opt_loop $ GOTO opt_loop
$ $
$opt_loop_end: $opt_loop_end:
$!
$clean_up:
$!
$ if f$trnlnm( "CATOP", "LNM$PROCESS") .nes. "" then -
deassign /process CATOP
$!
$ EXIT 'RET' $ EXIT 'RET'

View File

@ -43,9 +43,9 @@ $! P6, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.) $! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE) $! "" Compile with default (/NOPOINTER_SIZE)
$! 32 Compile with /POINTER_SIZE=32 (SHORT) $! 32 Compile with /POINTER_SIZE=32 (SHORT)
$! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]) $! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV])
$! (Automatically select ARGV if compiler supports it.) $! (Automatically select ARGV if compiler supports it.)
$! 64= Compile with /POINTER_SIZE=64 (LONG). $! 64= Compile with /POINTER_SIZE=64 (LONG).
$! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV). $! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV).
@ -599,7 +599,7 @@ $ THEN
$! $!
$ IF (P6 .EQS. "32") $ IF (P6 .EQS. "32")
$ THEN $ THEN
$ POINTER_SIZE = "/POINTER_SIZE=32" $ POINTER_SIZE = " /POINTER_SIZE=32"
$ ELSE $ ELSE
$ POINTER_SIZE = F$EDIT( P6, "COLLAPSE, UPCASE") $ POINTER_SIZE = F$EDIT( P6, "COLLAPSE, UPCASE")
$ IF ((POINTER_SIZE .EQS. "64") .OR. - $ IF ((POINTER_SIZE .EQS. "64") .OR. -
@ -610,32 +610,32 @@ $ ARCHD = ARCH+ "_64"
$ LIB32 = "" $ LIB32 = ""
$ IF (F$EXTRACT( 2, 1, POINTER_SIZE) .EQS. "=") $ IF (F$EXTRACT( 2, 1, POINTER_SIZE) .EQS. "=")
$ THEN $ THEN
$! Explicit user choice: "64" or "64=ARGV". $! Explicit user choice: "64" or "64=ARGV".
$ IF (POINTER_SIZE .EQS. "64=") THEN POINTER_SIZE = "64" $ IF (POINTER_SIZE .EQS. "64=") THEN POINTER_SIZE = "64"
$ ELSE $ ELSE
$ SET NOON $ SET NOON
$ DEFINE /USER_MODE SYS$OUTPUT NL: $ DEFINE /USER_MODE SYS$OUTPUT NL:
$ DEFINE /USER_MODE SYS$ERROR NL: $ DEFINE /USER_MODE SYS$ERROR NL:
$ CC /NOLIST /NOOBJECT /POINTER_SIZE=64=ARGV NL: $ CC /NOLIST /NOOBJECT /POINTER_SIZE=64=ARGV NL:
$ IF ($STATUS .AND. %X0FFF0000) .EQ. %X00030000 $ IF ($STATUS .AND. %X0FFF0000) .EQ. %X00030000
$ THEN $ THEN
$ ! If we got here, it means DCL complained like this: $ ! If we got here, it means DCL complained like this:
$ ! %DCL-W-NOVALU, value not allowed - remove value specification $ ! %DCL-W-NOVALU, value not allowed - remove value specification
$ ! \64=\ $ ! \64=\
$ ! $ !
$ ! If the compiler was run, logicals defined in /USER would $ ! If the compiler was run, logicals defined in /USER would
$ ! have been deassigned automatically. However, when DCL $ ! have been deassigned automatically. However, when DCL
$ ! complains, they aren't, so we do it here (it might be $ ! complains, they aren't, so we do it here (it might be
$ ! unnecessary, but just in case there will be another error $ ! unnecessary, but just in case there will be another error
$ ! message further on that we don't want to miss) $ ! message further on that we don't want to miss)
$ DEASSIGN /USER_MODE SYS$ERROR $ DEASSIGN /USER_MODE SYS$ERROR
$ DEASSIGN /USER_MODE SYS$OUTPUT $ DEASSIGN /USER_MODE SYS$OUTPUT
$ ELSE $ ELSE
$ POINTER_SIZE = POINTER_SIZE + "=ARGV" $ POINTER_SIZE = POINTER_SIZE + "=ARGV"
$ ENDIF $ ENDIF
$ SET ON $ SET ON
$ ENDIF $ ENDIF
$ POINTER_SIZE = "/POINTER_SIZE=''POINTER_SIZE'" $ POINTER_SIZE = " /POINTER_SIZE=''POINTER_SIZE'"
$! $!
$ ELSE $ ELSE
$! $!
@ -773,7 +773,7 @@ $ CCDEFS = "MONOLITH"
$ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS $ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS
$ CCEXTRAFLAGS = "" $ CCEXTRAFLAGS = ""
$ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS $ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS
$ CCDISABLEWARNINGS = "LONGLONGTYPE,LONGLONGSUFX,FOUNDCR" $ CCDISABLEWARNINGS = "" !!! "LONGLONGTYPE,LONGLONGSUFX,FOUNDCR"
$ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN - $ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN -
CCDISABLEWARNINGS = CCDISABLEWARNINGS + "," + USER_CCDISABLEWARNINGS CCDISABLEWARNINGS = CCDISABLEWARNINGS + "," + USER_CCDISABLEWARNINGS
$! $!
@ -853,9 +853,9 @@ $!
$ CC = "CC" $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC/DECC" THEN CC = "CC/DECC"
$ CC = CC + "/''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ - $ CC = CC + " /''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ -
"''POINTER_SIZE' /NOLIST /PREFIX=ALL" + - "''POINTER_SIZE' /NOLIST /PREFIX=ALL" + -
"/INCLUDE=(''CC_INCLUDES')" + CCEXTRAFLAGS " /INCLUDE=(''CC_INCLUDES') " + CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
$! $!
@ -1066,13 +1066,13 @@ $ IF COMPILER .EQS. "DECC"
$ THEN $ THEN
$ IF CCDISABLEWARNINGS .NES. "" $ IF CCDISABLEWARNINGS .NES. ""
$ THEN $ THEN
$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))" $ CCDISABLEWARNINGS = " /WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
$ ENDIF $ ENDIF
$ ELSE $ ELSE
$ CCDISABLEWARNINGS = "" $ CCDISABLEWARNINGS = ""
$ ENDIF $ ENDIF
$ CC2 = CC + "/DEFINE=(" + CCDEFS + ",_POSIX_C_SOURCE)" + CCDISABLEWARNINGS $ CC2 = CC + " /DEFINE=(" + CCDEFS + ",_POSIX_C_SOURCE)" + CCDISABLEWARNINGS
$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$! $!
$! Show user the result $! Show user the result
$! $!

View File

@ -48,10 +48,11 @@ $! WARNING: this should only be done to recompile some part of an already
$! fully compiled library. $! fully compiled library.
$! $!
$! P7, if defined, specifies the C pointer size. Ignored on VAX. $! P7, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE) $! "" Compile with default (/NOPOINTER_SIZE)
$! 32 Compile with /POINTER_SIZE=32 (SHORT) $! 32 Compile with /POINTER_SIZE=32 (SHORT)
$! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]). $! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]).
$! (Automatically select ARGV if compiler supports it.) $! (Automatically select ARGV if compiler supports it.)
$! 64= Compile with /POINTER_SIZE=64 (LONG). $! 64= Compile with /POINTER_SIZE=64 (LONG).
@ -976,7 +977,7 @@ $ THEN
$! $!
$ IF (P7 .EQS. "32") $ IF (P7 .EQS. "32")
$ THEN $ THEN
$ POINTER_SIZE = "/POINTER_SIZE=32" $ POINTER_SIZE = " /POINTER_SIZE=32"
$ ELSE $ ELSE
$ POINTER_SIZE = F$EDIT( P7, "COLLAPSE, UPCASE") $ POINTER_SIZE = F$EDIT( P7, "COLLAPSE, UPCASE")
$ IF ((POINTER_SIZE .EQS. "64") .OR. - $ IF ((POINTER_SIZE .EQS. "64") .OR. -
@ -985,7 +986,7 @@ $ IF ((POINTER_SIZE .EQS. "64") .OR. -
$ THEN $ THEN
$ ARCHD = ARCH+ "_64" $ ARCHD = ARCH+ "_64"
$ LIB32 = "" $ LIB32 = ""
$ POINTER_SIZE = "/POINTER_SIZE=64" $ POINTER_SIZE = " /POINTER_SIZE=64"
$ ELSE $ ELSE
$! $!
$! Tell The User Entered An Invalid Option. $! Tell The User Entered An Invalid Option.
@ -1203,9 +1204,9 @@ $!
$ CC = "CC" $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC/DECC" THEN CC = "CC/DECC"
$ CC = CC + "/''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ - $ CC = CC + " /''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ -
"''POINTER_SIZE' /NOLIST /PREFIX=ALL" + - "''POINTER_SIZE' /NOLIST /PREFIX=ALL" + -
"/INCLUDE=(''CC_INCLUDES')"+ - " /INCLUDE=(''CC_INCLUDES')"+ -
CCEXTRAFLAGS CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
@ -1297,20 +1298,20 @@ $ CC6DISABLEWARNINGS = "MIXLINKAGE"
$ ELSE $ ELSE
$ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID" $ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID"
$ CC6DISABLEWARNINGS = CCDISABLEWARNINGS + ",MIXLINKAGE" $ CC6DISABLEWARNINGS = CCDISABLEWARNINGS + ",MIXLINKAGE"
$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))" $ CCDISABLEWARNINGS = " /WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
$ ENDIF $ ENDIF
$ CC4DISABLEWARNINGS = "/WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))" $ CC4DISABLEWARNINGS = " /WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))"
$ CC6DISABLEWARNINGS = "/WARNING=(DISABLE=(" + CC6DISABLEWARNINGS + "))" $ CC6DISABLEWARNINGS = " /WARNING=(DISABLE=(" + CC6DISABLEWARNINGS + "))"
$ ELSE $ ELSE
$ CCDISABLEWARNINGS = "" $ CCDISABLEWARNINGS = ""
$ CC4DISABLEWARNINGS = "" $ CC4DISABLEWARNINGS = ""
$ CC6DISABLEWARNINGS = "" $ CC6DISABLEWARNINGS = ""
$ ENDIF $ ENDIF
$ CC3 = CC + "/DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS $ CC3 = CC + " /DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS
$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$ IF ARCH .EQS. "VAX" .AND. COMPILER .EQS. "DECC" .AND. P2 .NES. "DEBUG" $ IF ARCH .EQS. "VAX" .AND. COMPILER .EQS. "DECC" .AND. P2 .NES. "DEBUG"
$ THEN $ THEN
$ CC5 = CC + "/OPTIMIZE=NODISJOINT" $ CC5 = CC + " /OPTIMIZE=NODISJOINT"
$ CC5_DIFFERENT = 1 $ CC5_DIFFERENT = 1
$ ELSE $ ELSE
$ CC5 = CC $ CC5 = CC

View File

@ -29,6 +29,7 @@ $! P6 if defined, denotes which engines to build. If not defined,
$! all available engines are built. $! all available engines are built.
$! $!
$! P7, if defined, specifies the C pointer size. Ignored on VAX. $! P7, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE) $! "" Compile with default (/NOPOINTER_SIZE)
@ -609,7 +610,7 @@ $ THEN
$! $!
$ IF (OPT_POINTER_SIZE .EQS. "32") $ IF (OPT_POINTER_SIZE .EQS. "32")
$ THEN $ THEN
$ POINTER_SIZE = "/POINTER_SIZE=32" $ POINTER_SIZE = " /POINTER_SIZE=32"
$ ELSE $ ELSE
$ POINTER_SIZE = F$EDIT( OPT_POINTER_SIZE, "COLLAPSE, UPCASE") $ POINTER_SIZE = F$EDIT( OPT_POINTER_SIZE, "COLLAPSE, UPCASE")
$ IF ((POINTER_SIZE .EQS. "64") .OR. - $ IF ((POINTER_SIZE .EQS. "64") .OR. -
@ -618,7 +619,7 @@ $ IF ((POINTER_SIZE .EQS. "64") .OR. -
$ THEN $ THEN
$ ARCHD = ARCH+ "_64" $ ARCHD = ARCH+ "_64"
$ LIB32 = "" $ LIB32 = ""
$ POINTER_SIZE = "/POINTER_SIZE=64" $ POINTER_SIZE = " /POINTER_SIZE=64"
$ ELSE $ ELSE
$! $!
$! Tell The User Entered An Invalid Option. $! Tell The User Entered An Invalid Option.
@ -834,9 +835,9 @@ $!
$ CC = "CC" $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC/DECC" THEN CC = "CC/DECC"
$ CC = CC + "/''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ - $ CC = CC + " /''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ -
"''POINTER_SIZE' /NOLIST /PREFIX=ALL" + - "''POINTER_SIZE' /NOLIST /PREFIX=ALL" + -
"/INCLUDE=(''CC_INCLUDES')" + - " /INCLUDE=(''CC_INCLUDES') " + -
CCEXTRAFLAGS CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
@ -923,12 +924,12 @@ $ IF COMPILER .EQS. "DECC"
$ THEN $ THEN
$ IF CCDISABLEWARNINGS .NES. "" $ IF CCDISABLEWARNINGS .NES. ""
$ THEN $ THEN
$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))" $ CCDISABLEWARNINGS = " /WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
$ ENDIF $ ENDIF
$ ELSE $ ELSE
$ CCDISABLEWARNINGS = "" $ CCDISABLEWARNINGS = ""
$ ENDIF $ ENDIF
$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$! $!
$! Show user the result $! Show user the result
$! $!

View File

@ -33,7 +33,7 @@ $! ENGINES Just build the "[.xxx.EXE.ENGINES]" application programs for O
$! $!
$! P2, if defined, specifies the C pointer size. Ignored on VAX. $! P2, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.) $! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE). $! "" Compile with default (/NOPOINTER_SIZE).
$! 32 Compile with /POINTER_SIZE=32 (SHORT). $! 32 Compile with /POINTER_SIZE=32 (SHORT).

View File

@ -43,11 +43,12 @@ $!
$! P5, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up) $! P5, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up)
$! $!
$! P6, if defined, specifies the C pointer size. Ignored on VAX. $! P6, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE) $! "" Compile with default (/NOPOINTER_SIZE)
$! 32 Compile with /POINTER_SIZE=32 (SHORT) $! 32 Compile with /POINTER_SIZE=32 (SHORT)
$! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]) $! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV])
$! (Automatically select ARGV if compiler supports it.) $! (Automatically select ARGV if compiler supports it.)
$! 64= Compile with /POINTER_SIZE=64 (LONG). $! 64= Compile with /POINTER_SIZE=64 (LONG).
$! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV). $! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV).
@ -342,6 +343,8 @@ $ COMPILEWITH_CC5 = "" !!! ",ssl_task,"
$! $!
$! Tell The User We Are Creating The SSL_TASK. $! Tell The User We Are Creating The SSL_TASK.
$! $!
$! Tell The User We Are Creating The SSL_TASK.
$!
$ WRITE SYS$OUTPUT "Creating SSL_TASK OSU HTTP SSL Engine." $ WRITE SYS$OUTPUT "Creating SSL_TASK OSU HTTP SSL Engine."
$! $!
$! Tell The User What File We Are Compiling. $! Tell The User What File We Are Compiling.
@ -359,9 +362,9 @@ $ THEN
$ if (.not. CC5_SHOWN) $ if (.not. CC5_SHOWN)
$ then $ then
$ CC5_SHOWN = 1 $ CC5_SHOWN = 1
$ write sys$output " \Using special rule (5)" $ write sys$output " \Using special rule (5)"
$ x = " "+ CC5 $ x = " "+ CC5
$ write /symbol sys$output x $ write /symbol sys$output x
$ endif $ endif
$ CC5 /OBJECT='OBJ_DIR''FILE_NAME'.OBJ SYS$DISK:[]'FILE_NAME'.C $ CC5 /OBJECT='OBJ_DIR''FILE_NAME'.OBJ SYS$DISK:[]'FILE_NAME'.C
$ ELSE $ ELSE
@ -708,7 +711,7 @@ $ THEN
$! $!
$ IF (P6 .EQS. "32") $ IF (P6 .EQS. "32")
$ THEN $ THEN
$ POINTER_SIZE = "/POINTER_SIZE=32" $ POINTER_SIZE = " /POINTER_SIZE=32"
$ ELSE $ ELSE
$ POINTER_SIZE = F$EDIT( P6, "COLLAPSE, UPCASE") $ POINTER_SIZE = F$EDIT( P6, "COLLAPSE, UPCASE")
$ IF ((POINTER_SIZE .EQS. "64") .OR. - $ IF ((POINTER_SIZE .EQS. "64") .OR. -
@ -717,7 +720,7 @@ $ IF ((POINTER_SIZE .EQS. "64") .OR. -
$ THEN $ THEN
$ ARCHD = ARCH+ "_64" $ ARCHD = ARCH+ "_64"
$ LIB32 = "" $ LIB32 = ""
$ POINTER_SIZE = "/POINTER_SIZE=64" $ POINTER_SIZE = " /POINTER_SIZE=64"
$ ELSE $ ELSE
$! $!
$! Tell The User Entered An Invalid Option. $! Tell The User Entered An Invalid Option.
@ -934,9 +937,9 @@ $!
$ CC = "CC" $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC/DECC" THEN CC = "CC/DECC"
$ CC = CC + "/''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ - $ CC = CC + " /''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ -
"''POINTER_SIZE' /NOLIST /PREFIX=ALL" + - "''POINTER_SIZE' /NOLIST /PREFIX=ALL" + -
"/INCLUDE=(''CC_INCLUDES')" + CCEXTRAFLAGS " /INCLUDE=(''CC_INCLUDES') " + CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
$! $!
@ -1024,16 +1027,16 @@ $ THEN
$ CC4DISABLEWARNINGS = "DOLLARID" $ CC4DISABLEWARNINGS = "DOLLARID"
$ ELSE $ ELSE
$ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID" $ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID"
$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))" $ CCDISABLEWARNINGS = " /WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
$ ENDIF $ ENDIF
$ CC4DISABLEWARNINGS = "/WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))" $ CC4DISABLEWARNINGS = " /WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))"
$ ELSE $ ELSE
$ CCDISABLEWARNINGS = "" $ CCDISABLEWARNINGS = ""
$ CC4DISABLEWARNINGS = "" $ CC4DISABLEWARNINGS = ""
$ ENDIF $ ENDIF
$ CC2 = CC + "/DEFINE=(" + CCDEFS + ",_POSIX_C_SOURCE)" + CCDISABLEWARNINGS $ CC2 = CC + " /DEFINE=(" + CCDEFS + ",_POSIX_C_SOURCE)" + CCDISABLEWARNINGS
$ CC3 = CC + "/DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS $ CC3 = CC + " /DEFINE=(" + CCDEFS + ISSEVEN + ")" + CCDISABLEWARNINGS
$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$ IF COMPILER .EQS. "DECC" $ IF COMPILER .EQS. "DECC"
$ THEN $ THEN
$ CC4 = CC - CCDISABLEWARNINGS + CC4DISABLEWARNINGS $ CC4 = CC - CCDISABLEWARNINGS + CC4DISABLEWARNINGS

View File

@ -38,11 +38,12 @@ $! P4, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up)
$! $!
$! $!
$! P5, if defined, specifies the C pointer size. Ignored on VAX. $! P5, if defined, specifies the C pointer size. Ignored on VAX.
$! ("64=ARGV" gives more efficient code with HP C V7.3 or newer.)
$! Supported values are: $! Supported values are:
$! $!
$! "" Compile with default (/NOPOINTER_SIZE) $! "" Compile with default (/NOPOINTER_SIZE)
$! 32 Compile with /POINTER_SIZE=32 (SHORT) $! 32 Compile with /POINTER_SIZE=32 (SHORT)
$! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV]) $! 64 Compile with /POINTER_SIZE=64[=ARGV] (LONG[=ARGV])
$! (Automatically select ARGV if compiler supports it.) $! (Automatically select ARGV if compiler supports it.)
$! 64= Compile with /POINTER_SIZE=64 (LONG). $! 64= Compile with /POINTER_SIZE=64 (LONG).
$! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV). $! 64=ARGV Compile with /POINTER_SIZE=64=ARGV (LONG=ARGV).
@ -537,7 +538,7 @@ $ THEN
$! $!
$ IF (P5 .EQS. "32") $ IF (P5 .EQS. "32")
$ THEN $ THEN
$ POINTER_SIZE = "/POINTER_SIZE=32" $ POINTER_SIZE = " /POINTER_SIZE=32"
$ ELSE $ ELSE
$ POINTER_SIZE = F$EDIT( P5, "COLLAPSE, UPCASE") $ POINTER_SIZE = F$EDIT( P5, "COLLAPSE, UPCASE")
$ IF ((POINTER_SIZE .EQS. "64") .OR. - $ IF ((POINTER_SIZE .EQS. "64") .OR. -
@ -548,32 +549,32 @@ $ ARCHD = ARCH+ "_64"
$ LIB32 = "" $ LIB32 = ""
$ IF (F$EXTRACT( 2, 1, POINTER_SIZE) .EQS. "=") $ IF (F$EXTRACT( 2, 1, POINTER_SIZE) .EQS. "=")
$ THEN $ THEN
$! Explicit user choice: "64" or "64=ARGV". $! Explicit user choice: "64" or "64=ARGV".
$ IF (POINTER_SIZE .EQS. "64=") THEN POINTER_SIZE = "64" $ IF (POINTER_SIZE .EQS. "64=") THEN POINTER_SIZE = "64"
$ ELSE $ ELSE
$ SET NOON $ SET NOON
$ DEFINE /USER_MODE SYS$OUTPUT NL: $ DEFINE /USER_MODE SYS$OUTPUT NL:
$ DEFINE /USER_MODE SYS$ERROR NL: $ DEFINE /USER_MODE SYS$ERROR NL:
$ CC /NOLIST /NOOBJECT /POINTER_SIZE=64=ARGV NL: $ CC /NOLIST /NOOBJECT /POINTER_SIZE=64=ARGV NL:
$ IF ($STATUS .AND. %X0FFF0000) .EQ. %X00030000 $ IF ($STATUS .AND. %X0FFF0000) .EQ. %X00030000
$ THEN $ THEN
$ ! If we got here, it means DCL complained like this: $ ! If we got here, it means DCL complained like this:
$ ! %DCL-W-NOVALU, value not allowed - remove value specification $ ! %DCL-W-NOVALU, value not allowed - remove value specification
$ ! \64=\ $ ! \64=\
$ ! $ !
$ ! If the compiler was run, logicals defined in /USER would $ ! If the compiler was run, logicals defined in /USER would
$ ! have been deassigned automatically. However, when DCL $ ! have been deassigned automatically. However, when DCL
$ ! complains, they aren't, so we do it here (it might be $ ! complains, they aren't, so we do it here (it might be
$ ! unnecessary, but just in case there will be another error $ ! unnecessary, but just in case there will be another error
$ ! message further on that we don't want to miss) $ ! message further on that we don't want to miss)
$ DEASSIGN /USER_MODE SYS$ERROR $ DEASSIGN /USER_MODE SYS$ERROR
$ DEASSIGN /USER_MODE SYS$OUTPUT $ DEASSIGN /USER_MODE SYS$OUTPUT
$ ELSE $ ELSE
$ POINTER_SIZE = POINTER_SIZE + "=ARGV" $ POINTER_SIZE = POINTER_SIZE + "=ARGV"
$ ENDIF $ ENDIF
$ SET ON $ SET ON
$ ENDIF $ ENDIF
$ POINTER_SIZE = "/POINTER_SIZE=''POINTER_SIZE'" $ POINTER_SIZE = " /POINTER_SIZE=''POINTER_SIZE'"
$ ELSE $ ELSE
$! $!
$! Tell The User Entered An Invalid Option. $! Tell The User Entered An Invalid Option.
@ -706,7 +707,7 @@ $ CCDEFS = "TCPIP_TYPE_''P3'"
$ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS $ IF F$TYPE(USER_CCDEFS) .NES. "" THEN CCDEFS = CCDEFS + "," + USER_CCDEFS
$ CCEXTRAFLAGS = "" $ CCEXTRAFLAGS = ""
$ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS $ IF F$TYPE(USER_CCFLAGS) .NES. "" THEN CCEXTRAFLAGS = USER_CCFLAGS
$ CCDISABLEWARNINGS = "LONGLONGTYPE,LONGLONGSUFX,FOUNDCR" $ CCDISABLEWARNINGS = "" !!! "LONGLONGTYPE,LONGLONGSUFX,FOUNDCR"
$ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN - $ IF F$TYPE(USER_CCDISABLEWARNINGS) .NES. "" THEN -
CCDISABLEWARNINGS = CCDISABLEWARNINGS + "," + USER_CCDISABLEWARNINGS CCDISABLEWARNINGS = CCDISABLEWARNINGS + "," + USER_CCDISABLEWARNINGS
$! $!
@ -786,9 +787,9 @@ $!
$ CC = "CC" $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC /DECC" THEN CC = "CC /DECC"
$ CC = CC + "/''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ - $ CC = CC + " /''CC_OPTIMIZE' /''DEBUGGER' /STANDARD=RELAXED"+ -
"''POINTER_SIZE' /NOLIST /PREFIX=ALL" + - "''POINTER_SIZE' /NOLIST /PREFIX=ALL" + -
"/INCLUDE=(''CC_INCLUDES')" + CCEXTRAFLAGS " /INCLUDE=(''CC_INCLUDES') " + CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
$! $!
@ -875,14 +876,14 @@ $ THEN
$ CC4DISABLEWARNINGS = "DOLLARID" $ CC4DISABLEWARNINGS = "DOLLARID"
$ ELSE $ ELSE
$ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID" $ CC4DISABLEWARNINGS = CCDISABLEWARNINGS + ",DOLLARID"
$ CCDISABLEWARNINGS = "/WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))" $ CCDISABLEWARNINGS = " /WARNING=(DISABLE=(" + CCDISABLEWARNINGS + "))"
$ ENDIF $ ENDIF
$ CC4DISABLEWARNINGS = "/WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))" $ CC4DISABLEWARNINGS = " /WARNING=(DISABLE=(" + CC4DISABLEWARNINGS + "))"
$ ELSE $ ELSE
$ CCDISABLEWARNINGS = "" $ CCDISABLEWARNINGS = ""
$ CC4DISABLEWARNINGS = "" $ CC4DISABLEWARNINGS = ""
$ ENDIF $ ENDIF
$ CC = CC + "/DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS $ CC = CC + " /DEFINE=(" + CCDEFS + ")" + CCDISABLEWARNINGS
$! $!
$! Show user the result $! Show user the result
$! $!