summaryrefslogtreecommitdiff
path: root/make_vms.com
diff options
context:
space:
mode:
Diffstat (limited to 'make_vms.com')
-rw-r--r--make_vms.com99
1 files changed, 82 insertions, 17 deletions
diff --git a/make_vms.com b/make_vms.com
index c2a1fb5..aa4e461 100644
--- a/make_vms.com
+++ b/make_vms.com
@@ -1,6 +1,15 @@
$! make libz under VMS written by
$! Martin P.J. Zinser
-$! <zinser@zinser.no-ip.info or zinser@sysdev.deutsche-boerse.com>
+$!
+$! In case of problems with the install you might contact me at
+$! zinser@zinser.no-ip.info(preferred) or
+$! zinser@sysdev.deutsche-boerse.com (work)
+$!
+$! Make procedure history for Zlib
+$!
+$!------------------------------------------------------------------------------
+$! Version history
+$! 0.01 20060120 First version to receive a number
$!
$ on error then goto err_exit
$!
@@ -10,7 +19,10 @@ $!
$ true = 1
$ false = 0
$ tmpnam = "temp_" + f$getjpi("","pid")
-$ SAY = "WRITE SYS$OUTPUT"
+$ its_decc = false
+$ its_vaxc = false
+$ its_gnuc = false
+$ s_case = False
$!
$! Setup variables holding "config" information
$!
@@ -21,13 +33,11 @@ $ v_string = "ZLIB_VERSION"
$ v_file = "zlib.h"
$ ccopt = ""
$ lopts = ""
+$ dnsrl = ""
$ linkonly = false
$ optfile = name + ".opt"
-$ its_decc = false
-$ its_vaxc = false
-$ its_gnuc = false
$ axp = f$getsyi("HW_MODEL").ge.1024
-$ s_case = false
+$!
$! Check for MMK/MMS
$!
$ If F$Search ("Sys$System:MMS.EXE") .nes. "" Then Make = "MMS"
@@ -107,7 +117,7 @@ $ call make minigzip.exe -
$ endif
$ else
$ gosub crea_mms
-$ SAY "Make ''name' ''version' with ''Make' "
+$ write sys$output "Make ''name' ''version' with ''Make' "
$ 'make'
$ endif
$!
@@ -133,6 +143,7 @@ $ write sys$output "C compiler required to build ''name'"
$ goto err_exit
$ERR_EXIT:
$ set message/facil/ident/sever/text
+$ close/nolog optf
$ write sys$output "Exiting..."
$ exit 2
$!
@@ -244,6 +255,9 @@ $!------------------------------------------------------------------------------
$!
$! Look for the compiler used
$!
+$! Version history
+$! 0.01 20040223 First version to receive a number
+$! 0.02 20040229 Save/set value of decc$no_rooted_search_lists
$CHECK_COMPILER:
$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc))
$ then
@@ -257,9 +271,20 @@ $!
$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc))
$ then goto CC_ERR
$ else
-$ if its_decc then write sys$output "CC compiler check ... Compaq C"
-$ if its_vaxc then write sys$output "CC compiler check ... VAX C"
-$ if its_gnuc then write sys$output "CC compiler check ... GNU C"
+$ if its_decc
+$ then
+$ write sys$output "CC compiler check ... Compaq C"
+$ if f$trnlnm("decc$no_rooted_search_lists") .nes. ""
+$ then
+$ dnrsl = f$trnlnm("decc$no_rooted_search_lists")
+$ endif
+$ define decc$no_rooted_search_lists 1
+$ else
+$ if its_vaxc then write sys$output "CC compiler check ... VAX C"
+$ if its_gnuc then write sys$output "CC compiler check ... GNU C"
+$ if f$trnlnm(topt) then write topt "sys$share:vaxcrtl.exe/share"
+$ if f$trnlnm(optf) then write optf "sys$share:vaxcrtl.exe/share"
+$ endif
$ endif
$ return
$!------------------------------------------------------------------------------
@@ -382,17 +407,23 @@ $ close h_in
$ return
$!------------------------------------------------------------------------------
$!
-$! Analyze Object files for OpenVMS AXP to extract Procedure and Data
+$! Analyze Object files for OpenVMS AXP to extract Procedure and Data
$! information to build a symbol vector for a shareable image
$! All the "brains" of this logic was suggested by Hartmut Becker
$! (Hartmut.Becker@compaq.com). All the bugs were introduced by me
-$! (zinser@decus.de), so if you do have problem reports please do not
+$! (zinser@zinser.no-ip.info), so if you do have problem reports please do not
$! bother Hartmut/HP, but get in touch with me
$!
-$ ANAL_OBJ_AXP: Subroutine
+$! Version history
+$! 0.01 20040406 Skip over shareable images in option file
+$! 0.02 20041109 Fix option file for shareable images with case_sensitive=YES
+$! 0.03 20050107 Skip over Identification labels in option file
+$! 0.04 20060117 Add uppercase alias to code compiled with /name=as_is
+$!
+$ ANAL_OBJ_AXP: Subroutine
$ V = 'F$Verify(0)
$ SAY := "WRITE_ SYS$OUTPUT"
-$
+$
$ IF F$SEARCH("''P1'") .EQS. ""
$ THEN
$ SAY "ANAL_OBJ_AXP-E-NOSUCHFILE: Error, inputfile ''p1' not available"
@@ -409,6 +440,17 @@ $ create a.tmp
$ open/append atmp a.tmp
$ loop:
$ read/end=end_loop in line
+$ if f$locate("/SHARE",f$edit(line,"upcase")) .lt. f$length(line)
+$ then
+$ write sys$output "ANAL_SKP_SHR-i-skipshare, ''line'"
+$ goto loop
+$ endif
+$ if f$locate("IDENTIFICATION=",f$edit(line,"upcase")) .lt. f$length(line)
+$ then
+$ write sys$output "ANAL_OBJ_AXP-i-ident: Identification ", -
+ f$element(1,"=",line)
+$ goto loop
+$ endif
$ f= f$search(line)
$ if f .eqs. ""
$ then
@@ -450,12 +492,35 @@ $ edito/edt/command=sys$input f.tmp
sub/symbol: "/symbol_vector=(/whole
sub/"/=DATA)/whole
exit
-$ sort/nodupl d.tmp,f.tmp 'p2'
-$ delete a.tmp;*,b.tmp;*,c.tmp;*,d.tmp;*,e.tmp;*,f.tmp;*
+$ sort/nodupl d.tmp,f.tmp g.tmp
+$ open/read raw_vector g.tmp
+$ open/write case_vector 'p2'
+$ RAWLOOP:
+$ read/end=end_rawloop raw_vector raw_element
+$ write case_vector raw_element
+$ if f$locate("=PROCEDURE)",raw_element) .lt. f$length(raw_element)
+$ then
+$ name = f$element(1,"=",raw_element) - "("
+$ if f$edit(name,"UPCASE") .nes. name then -
+ write case_vector f$fao(" symbol_vector=(!AS/!AS=PROCEDURE)", -
+ f$edit(name,"UPCASE"), name)
+$ endif
+$ if f$locate("=DATA)",raw_element) .lt. f$length(raw_element)
+$ then
+$ name = f$element(1,"=",raw_element) - "("
+$ if f$edit(name,"UPCASE") .nes. name then -
+ write case_vector f$fao(" symbol_vector=(!AS/!AS=DATA)", -
+ f$edit(name,"UPCASE"), name)
+$ endif
+$ goto rawloop
+$ END_RAWLOOP:
+$ close raw_vector
+$ close case_vector
+$ delete a.tmp;*,b.tmp;*,c.tmp;*,d.tmp;*,e.tmp;*,f.tmp;*,g.tmp;*
$ if f$search("x.tmp") .nes. "" -
then $ delete x.tmp;*
$!
$ EXIT_AA:
$ if V then set verify
-$ endsubroutine
+$ endsubroutine
$!------------------------------------------------------------------------------