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 @@
1$! make libz under VMS written by 1$! make libz under VMS written by
2$! Martin P.J. Zinser 2$! Martin P.J. Zinser
3$! <zinser@zinser.no-ip.info or zinser@sysdev.deutsche-boerse.com> 3$!
4$! In case of problems with the install you might contact me at
5$! zinser@zinser.no-ip.info(preferred) or
6$! zinser@sysdev.deutsche-boerse.com (work)
7$!
8$! Make procedure history for Zlib
9$!
10$!------------------------------------------------------------------------------
11$! Version history
12$! 0.01 20060120 First version to receive a number
4$! 13$!
5$ on error then goto err_exit 14$ on error then goto err_exit
6$! 15$!
@@ -10,7 +19,10 @@ $!
10$ true = 1 19$ true = 1
11$ false = 0 20$ false = 0
12$ tmpnam = "temp_" + f$getjpi("","pid") 21$ tmpnam = "temp_" + f$getjpi("","pid")
13$ SAY = "WRITE SYS$OUTPUT" 22$ its_decc = false
23$ its_vaxc = false
24$ its_gnuc = false
25$ s_case = False
14$! 26$!
15$! Setup variables holding "config" information 27$! Setup variables holding "config" information
16$! 28$!
@@ -21,13 +33,11 @@ $ v_string = "ZLIB_VERSION"
21$ v_file = "zlib.h" 33$ v_file = "zlib.h"
22$ ccopt = "" 34$ ccopt = ""
23$ lopts = "" 35$ lopts = ""
36$ dnsrl = ""
24$ linkonly = false 37$ linkonly = false
25$ optfile = name + ".opt" 38$ optfile = name + ".opt"
26$ its_decc = false
27$ its_vaxc = false
28$ its_gnuc = false
29$ axp = f$getsyi("HW_MODEL").ge.1024 39$ axp = f$getsyi("HW_MODEL").ge.1024
30$ s_case = false 40$!
31$! Check for MMK/MMS 41$! Check for MMK/MMS
32$! 42$!
33$ If F$Search ("Sys$System:MMS.EXE") .nes. "" Then Make = "MMS" 43$ If F$Search ("Sys$System:MMS.EXE") .nes. "" Then Make = "MMS"
@@ -107,7 +117,7 @@ $ call make minigzip.exe -
107$ endif 117$ endif
108$ else 118$ else
109$ gosub crea_mms 119$ gosub crea_mms
110$ SAY "Make ''name' ''version' with ''Make' " 120$ write sys$output "Make ''name' ''version' with ''Make' "
111$ 'make' 121$ 'make'
112$ endif 122$ endif
113$! 123$!
@@ -133,6 +143,7 @@ $ write sys$output "C compiler required to build ''name'"
133$ goto err_exit 143$ goto err_exit
134$ERR_EXIT: 144$ERR_EXIT:
135$ set message/facil/ident/sever/text 145$ set message/facil/ident/sever/text
146$ close/nolog optf
136$ write sys$output "Exiting..." 147$ write sys$output "Exiting..."
137$ exit 2 148$ exit 2
138$! 149$!
@@ -244,6 +255,9 @@ $!------------------------------------------------------------------------------
244$! 255$!
245$! Look for the compiler used 256$! Look for the compiler used
246$! 257$!
258$! Version history
259$! 0.01 20040223 First version to receive a number
260$! 0.02 20040229 Save/set value of decc$no_rooted_search_lists
247$CHECK_COMPILER: 261$CHECK_COMPILER:
248$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc)) 262$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc))
249$ then 263$ then
@@ -257,9 +271,20 @@ $!
257$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc)) 271$ if (.not. (its_decc .or. its_vaxc .or. its_gnuc))
258$ then goto CC_ERR 272$ then goto CC_ERR
259$ else 273$ else
260$ if its_decc then write sys$output "CC compiler check ... Compaq C" 274$ if its_decc
261$ if its_vaxc then write sys$output "CC compiler check ... VAX C" 275$ then
262$ if its_gnuc then write sys$output "CC compiler check ... GNU C" 276$ write sys$output "CC compiler check ... Compaq C"
277$ if f$trnlnm("decc$no_rooted_search_lists") .nes. ""
278$ then
279$ dnrsl = f$trnlnm("decc$no_rooted_search_lists")
280$ endif
281$ define decc$no_rooted_search_lists 1
282$ else
283$ if its_vaxc then write sys$output "CC compiler check ... VAX C"
284$ if its_gnuc then write sys$output "CC compiler check ... GNU C"
285$ if f$trnlnm(topt) then write topt "sys$share:vaxcrtl.exe/share"
286$ if f$trnlnm(optf) then write optf "sys$share:vaxcrtl.exe/share"
287$ endif
263$ endif 288$ endif
264$ return 289$ return
265$!------------------------------------------------------------------------------ 290$!------------------------------------------------------------------------------
@@ -382,17 +407,23 @@ $ close h_in
382$ return 407$ return
383$!------------------------------------------------------------------------------ 408$!------------------------------------------------------------------------------
384$! 409$!
385$! Analyze Object files for OpenVMS AXP to extract Procedure and Data 410$! Analyze Object files for OpenVMS AXP to extract Procedure and Data
386$! information to build a symbol vector for a shareable image 411$! information to build a symbol vector for a shareable image
387$! All the "brains" of this logic was suggested by Hartmut Becker 412$! All the "brains" of this logic was suggested by Hartmut Becker
388$! (Hartmut.Becker@compaq.com). All the bugs were introduced by me 413$! (Hartmut.Becker@compaq.com). All the bugs were introduced by me
389$! (zinser@decus.de), so if you do have problem reports please do not 414$! (zinser@zinser.no-ip.info), so if you do have problem reports please do not
390$! bother Hartmut/HP, but get in touch with me 415$! bother Hartmut/HP, but get in touch with me
391$! 416$!
392$ ANAL_OBJ_AXP: Subroutine 417$! Version history
418$! 0.01 20040406 Skip over shareable images in option file
419$! 0.02 20041109 Fix option file for shareable images with case_sensitive=YES
420$! 0.03 20050107 Skip over Identification labels in option file
421$! 0.04 20060117 Add uppercase alias to code compiled with /name=as_is
422$!
423$ ANAL_OBJ_AXP: Subroutine
393$ V = 'F$Verify(0) 424$ V = 'F$Verify(0)
394$ SAY := "WRITE_ SYS$OUTPUT" 425$ SAY := "WRITE_ SYS$OUTPUT"
395$ 426$
396$ IF F$SEARCH("''P1'") .EQS. "" 427$ IF F$SEARCH("''P1'") .EQS. ""
397$ THEN 428$ THEN
398$ SAY "ANAL_OBJ_AXP-E-NOSUCHFILE: Error, inputfile ''p1' not available" 429$ SAY "ANAL_OBJ_AXP-E-NOSUCHFILE: Error, inputfile ''p1' not available"
@@ -409,6 +440,17 @@ $ create a.tmp
409$ open/append atmp a.tmp 440$ open/append atmp a.tmp
410$ loop: 441$ loop:
411$ read/end=end_loop in line 442$ read/end=end_loop in line
443$ if f$locate("/SHARE",f$edit(line,"upcase")) .lt. f$length(line)
444$ then
445$ write sys$output "ANAL_SKP_SHR-i-skipshare, ''line'"
446$ goto loop
447$ endif
448$ if f$locate("IDENTIFICATION=",f$edit(line,"upcase")) .lt. f$length(line)
449$ then
450$ write sys$output "ANAL_OBJ_AXP-i-ident: Identification ", -
451 f$element(1,"=",line)
452$ goto loop
453$ endif
412$ f= f$search(line) 454$ f= f$search(line)
413$ if f .eqs. "" 455$ if f .eqs. ""
414$ then 456$ then
@@ -450,12 +492,35 @@ $ edito/edt/command=sys$input f.tmp
450sub/symbol: "/symbol_vector=(/whole 492sub/symbol: "/symbol_vector=(/whole
451sub/"/=DATA)/whole 493sub/"/=DATA)/whole
452exit 494exit
453$ sort/nodupl d.tmp,f.tmp 'p2' 495$ sort/nodupl d.tmp,f.tmp g.tmp
454$ delete a.tmp;*,b.tmp;*,c.tmp;*,d.tmp;*,e.tmp;*,f.tmp;* 496$ open/read raw_vector g.tmp
497$ open/write case_vector 'p2'
498$ RAWLOOP:
499$ read/end=end_rawloop raw_vector raw_element
500$ write case_vector raw_element
501$ if f$locate("=PROCEDURE)",raw_element) .lt. f$length(raw_element)
502$ then
503$ name = f$element(1,"=",raw_element) - "("
504$ if f$edit(name,"UPCASE") .nes. name then -
505 write case_vector f$fao(" symbol_vector=(!AS/!AS=PROCEDURE)", -
506 f$edit(name,"UPCASE"), name)
507$ endif
508$ if f$locate("=DATA)",raw_element) .lt. f$length(raw_element)
509$ then
510$ name = f$element(1,"=",raw_element) - "("
511$ if f$edit(name,"UPCASE") .nes. name then -
512 write case_vector f$fao(" symbol_vector=(!AS/!AS=DATA)", -
513 f$edit(name,"UPCASE"), name)
514$ endif
515$ goto rawloop
516$ END_RAWLOOP:
517$ close raw_vector
518$ close case_vector
519$ delete a.tmp;*,b.tmp;*,c.tmp;*,d.tmp;*,e.tmp;*,f.tmp;*,g.tmp;*
455$ if f$search("x.tmp") .nes. "" - 520$ if f$search("x.tmp") .nes. "" -
456 then $ delete x.tmp;* 521 then $ delete x.tmp;*
457$! 522$!
458$ EXIT_AA: 523$ EXIT_AA:
459$ if V then set verify 524$ if V then set verify
460$ endsubroutine 525$ endsubroutine
461$!------------------------------------------------------------------------------ 526$!------------------------------------------------------------------------------