1$! Modified DECCMAKE for JED - Andy Harper, Kings College London
2$!	- Use logicals to define SLANG location, if defined	[16-MAY-1996]
3$!	- A few bug fixes!					[16-MAY-1996]
4$!
5$! [.jed.src]deccmake.com
6$! ver = f$verify(0)
7$!  Makefile for VMS
8$ axp = 1
9$ if (p1 .eqs. "INSTALL") then goto install
10$ defs = ""
11$!
12$! If you do not want floating point, comment out next line
13$    defs = "FLOAT_TYPE,"
14$!
15$! S-Lang Include directory (where slang.olb is located)
16$    slanglib = "[-.-.slang.src]"
17$    SLANGOBJ = SLANGLIB + "SLANG.OLB"				! AH 16-MAY-1996
18$
19$!
20$! If logical names defining the location of the slan libraries and header
21$! files exist, use them in preference to the above definition of SLANGLIB
22$!	-  SLANG_ROOT:[SRC] = location of header files (slang.h)
23$!	-  SLANG_LIBRARY    = (if defined) location of SLANG.OLB
24$!			      (if not defined) SLANG_ROOT:[SRC]SLANG.OLB used
25$
26$ if f$trnlnm("SLANG_ROOT") .nes. ""			! AH 16-MAY-1996
27$   then						! AH 16-MAY-1996
28$     SLANGLIB := "SLANG_ROOT:[SRC]"			! AH 16-MAY-1996
29$     if f$trnlnm("SLANG_LIBRARY") .nes. ""		! AH 16-MAY-1996
30$       then						! AH 16-MAY-1996
31$         SLANGOBJ = "SLANG_LIBRARY"			! AH 16-MAY-1996
32$       else						! AH 16-MAY-1996
33$         SLANGOBJ = SLANGLIB  +  "SLANG.OLB"		! AH 16-MAY-1996
34$     endif						! AH 16-MAY-1996
35$ endif							! AH 16-MAY-1996
36$
37$!
38$  Link_Flags = ""
39$  Link_Libs = ""
40$  C_C := CC/PREFIX_LIBRARY_ENTRIES=ALL_ENTRIES
41$!
42$ start:
43$ copy jedconf.h config.h
44$ purge config.h
45$ bfiles = "vmsmail," + "sysdep," + "buffer," + "cmds," + "misc," + "file," -
46    + "main," + "ins," + "sig," + "screen," + "paste," + "ledit," -
47    + "line," + "vterm," + "search," + "text," + "keymap," + "replace," -
48     + "window,undo,vfile,intrin,vmshelp,syntax,abbrev,indent,menu"
49$!
50$ bfiles = bfiles + ",mouse,blocal,lineattr"
51$ jfiles = bfiles + ",display"
52$ xfiles = bfiles + ",xterm"
53$ if (p2 .eqs. "XJED") then goto make_xjed_label
54$!
55$ files = jfiles
56$ make_return = "make_xjed_label"
57$ jexec = "jed.exe"
58$ goto simple_make
59$!
60$ make_xjed_label:
61$  files = xfiles
62$  make_return = "exit_label"
63$  jexec = "xjed.exe"
64$  goto simple_make
65$!
66$  exit_label:
67$  exit
68$!
69$!
70$!  simple make
71$!
72$  simple_make:
73$  count = 0
74$  next_file:
75$    f = f$element(count, ",", files)
76$    count = count + 1
77$    if (f .eqs. ",") then goto do_link
78$    objf = f$search("''f'.obj")
79$    if (objf .eqs. "") then goto compile_it
80$    tobj = f$file_attr(objf, "RDT")
81$    tc  = f$file_attr("''f'.c", "RDT")
82$    if (f .eqs. "sysdep")
83$    then
84$      if ( f$cvtime(tobj) .lts. f$cvtime(f$file_attr("vms.c","RDT"))) -
85	 then goto compile_it
86$    endif
87$    if (f$cvtime(tc) .lts. f$cvtime(tobj)) then goto next_file
88$  compile_it:
89$    write sys$output "''C_C'/define=(''defs'JED)/include=(''slanglib') ''f'.c"
90$    'C_C'/define=('defs'JED)/include=('slanglib') 'f'.c
91$    goto next_file
92$  do_link:
93$    if make_return .eqs. "make_xjed_label"
94$    then
95$      set verify
96$      link/exec='jexec' 'Link_Flags' 'files', 'slangobj'/LIBR 'Link_Libs'
97$      set noverify
98$    else
99$      set verify
100$      link/exec='jexec' 'Link_Flags' 'files', 'slangobj'/LIBR 'Link_Libs', -
101	 sys$input/opt
102         sys$share:decw$xlibshr.exe/share
103$      set noverify
104$    endif
105$!  rename /log 'jexec' [-.bin.vms]
106$  goto 'make_return'
107$!
108$!  Installation
109$!
110$ Install:
111$   write sys$output "Sorry, no installation implemented yet."
112$!   destdef = f$trnlnm("JED_LIBRARY")
113$!   again:
114$!   def = ""
115$!   if (destdef .nes. "") then def = "(default ''destdef')"
116$!   write sys$output "Installation Directory"
117$!   inquire dest "''def'"
118$!   if (dest .eqs. "") then dest = destdef
119$!   if (dest .eqs. "") then goto again
120$!   if (f$parse(dest) .nes. "") then goto do_copy
121$!      write sys$output "Directory does not exist.   Creating it."
122$!      create/dir/prot=(w:re) 'dest'
123$!  do_copy:
124$!   copy/log/prot=(w:re) *.sl, *.hlp, *.rc, *.info, jed.*in, jed.exe, *.com  -
125 !     'dest'
126$  The_Exit:
127$  if (ver .eq. 1) then set verify
128$  exit
129