1*3d8817e4Smiod$!
2*3d8817e4Smiod$! This file configures the bfd library for use with openVMS (Alpha and Vax)
3*3d8817e4Smiod$!
4*3d8817e4Smiod$! We do not use the configure script, since we do not have /bin/sh
5*3d8817e4Smiod$! to execute it.
6*3d8817e4Smiod$!
7*3d8817e4Smiod$! Written by Klaus K"ampf (kkaempf@rmi.de)
8*3d8817e4Smiod$!
9*3d8817e4Smiod$arch_indx = 1 + ((f$getsyi("CPU").ge.128).and.1)      ! vax==1, alpha==2
10*3d8817e4Smiod$arch = f$element(arch_indx,"|","|VAX|Alpha|")
11*3d8817e4Smiod$!
12*3d8817e4Smiod$if arch .eqs. "Alpha"
13*3d8817e4Smiod$then
14*3d8817e4Smiod$ write sys$output "Configuring for Alpha target"
15*3d8817e4Smiod$ target = "alpha"
16*3d8817e4Smiod$!
17*3d8817e4Smiod$! copy bfd-in2.h to bfd.h, replacing @ macros
18*3d8817e4Smiod$!
19*3d8817e4Smiod$ edit/tpu/nojournal/nosection/nodisplay/command=sys$input -
20*3d8817e4Smiod        []bfd-in2.h /output=[]bfd.h
21*3d8817e4Smiod$DECK
22*3d8817e4Smiod!
23*3d8817e4Smiod!  Copy file, changing lines with macros (@@)
24*3d8817e4Smiod!
25*3d8817e4Smiod!
26*3d8817e4Smiod   vfile := CREATE_BUFFER("vfile", "CONFIGURE.IN");
27*3d8817e4Smiod   rang := CREATE_RANGE(BEGINNING_OF(vfile), END_OF(vfile));
28*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, rang);
29*3d8817e4Smiod   IF match_pos <> 0 THEN;
30*3d8817e4Smiod     POSITION(BEGINNING_OF(match_pos));
31*3d8817e4Smiod     ERASE(match_pos);
32*3d8817e4Smiod     vers := CURRENT_LINE-")";
33*3d8817e4Smiod   ELSE;
34*3d8817e4Smiod     vers := "unknown";
35*3d8817e4Smiod   ENDIF;
36*3d8817e4Smiod
37*3d8817e4Smiod   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
38*3d8817e4Smiod   rang := CREATE_RANGE(BEGINNING_OF(file), END_OF(file));
39*3d8817e4Smiod
40*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@VERSION@', FORWARD, EXACT, rang);
41*3d8817e4Smiod   IF match_pos <> 0 THEN;
42*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
43*3d8817e4Smiod      ERASE(match_pos);
44*3d8817e4Smiod      COPY_TEXT(vers);
45*3d8817e4Smiod   ENDIF;
46*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@wordsize@', FORWARD, EXACT, rang);
47*3d8817e4Smiod   IF match_pos <> 0 THEN;
48*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
49*3d8817e4Smiod      ERASE(match_pos);
50*3d8817e4Smiod      COPY_TEXT('64');
51*3d8817e4Smiod   ENDIF;
52*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64BIT_LONG@', FORWARD, EXACT, rang);
53*3d8817e4Smiod   IF match_pos <> 0 THEN;
54*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
55*3d8817e4Smiod      ERASE(match_pos);
56*3d8817e4Smiod      COPY_TEXT('0');
57*3d8817e4Smiod   ENDIF;
58*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT_DEFINED@', FORWARD, EXACT, rang);
59*3d8817e4Smiod   IF match_pos <> 0 THEN;
60*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
61*3d8817e4Smiod      ERASE(match_pos);
62*3d8817e4Smiod      COPY_TEXT('__DECC');
63*3d8817e4Smiod      SPLIT_LINE;
64*3d8817e4Smiod      COPY_TEXT('#include <ints.h>');
65*3d8817e4Smiod   ENDIF;
66*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT@', FORWARD, EXACT, rang);
67*3d8817e4Smiod   IF match_pos <> 0 THEN;
68*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
69*3d8817e4Smiod      ERASE(match_pos);
70*3d8817e4Smiod      COPY_TEXT('int64');
71*3d8817e4Smiod   ENDIF;
72*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_U_64_BIT@', FORWARD, EXACT, rang);
73*3d8817e4Smiod   IF match_pos <> 0 THEN;
74*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
75*3d8817e4Smiod      ERASE(match_pos);
76*3d8817e4Smiod      COPY_TEXT('uint64');
77*3d8817e4Smiod   ENDIF;
78*3d8817e4Smiod   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
79*3d8817e4Smiod   QUIT
80*3d8817e4Smiod$  EOD
81*3d8817e4Smiod$
82*3d8817e4Smiod$else
83*3d8817e4Smiod$
84*3d8817e4Smiod$ write sys$output "Configuring for Vax target"
85*3d8817e4Smiod$ target = "vax"
86*3d8817e4Smiod$!
87*3d8817e4Smiod$! copy bfd-in2.h to bfd.h, replacing @ macros
88*3d8817e4Smiod$!
89*3d8817e4Smiod$ edit/tpu/nojournal/nosection/nodisplay/command=sys$input -
90*3d8817e4Smiod        []bfd-in2.h /output=[]bfd.h
91*3d8817e4Smiod$DECK
92*3d8817e4Smiod!
93*3d8817e4Smiod!  Copy file, changing lines with macros (@@)
94*3d8817e4Smiod!
95*3d8817e4Smiod!
96*3d8817e4Smiod   vfile := CREATE_BUFFER("vfile", "CONFIGURE.IN");
97*3d8817e4Smiod   rang := CREATE_RANGE(BEGINNING_OF(vfile), END_OF(vfile));
98*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, rang);
99*3d8817e4Smiod   IF match_pos <> 0 THEN;
100*3d8817e4Smiod     POSITION(BEGINNING_OF(match_pos));
101*3d8817e4Smiod     ERASE(match_pos);
102*3d8817e4Smiod     vers := CURRENT_LINE-")";
103*3d8817e4Smiod   ELSE;
104*3d8817e4Smiod     vers := "unknown";
105*3d8817e4Smiod   ENDIF;
106*3d8817e4Smiod
107*3d8817e4Smiod   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
108*3d8817e4Smiod   rang := CREATE_RANGE(BEGINNING_OF(file), END_OF(file));
109*3d8817e4Smiod
110*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@VERSION@', FORWARD, EXACT, rang);
111*3d8817e4Smiod   IF match_pos <> 0 THEN;
112*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
113*3d8817e4Smiod      ERASE(match_pos);
114*3d8817e4Smiod      COPY_TEXT(vers);
115*3d8817e4Smiod   ENDIF;
116*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@wordsize@', FORWARD, EXACT, rang);
117*3d8817e4Smiod   IF match_pos <> 0 THEN;
118*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
119*3d8817e4Smiod      ERASE(match_pos);
120*3d8817e4Smiod      COPY_TEXT('32');
121*3d8817e4Smiod   ENDIF;
122*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64BIT_LONG@', FORWARD, EXACT, rang);
123*3d8817e4Smiod   IF match_pos <> 0 THEN;
124*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
125*3d8817e4Smiod      ERASE(match_pos);
126*3d8817e4Smiod      COPY_TEXT('0');
127*3d8817e4Smiod   ENDIF;
128*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT_DEFINED@', FORWARD, EXACT, rang);
129*3d8817e4Smiod   IF match_pos <> 0 THEN;
130*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
131*3d8817e4Smiod      ERASE(match_pos);
132*3d8817e4Smiod      COPY_TEXT('__DECC');
133*3d8817e4Smiod      SPLIT_LINE;
134*3d8817e4Smiod      COPY_TEXT('#include <ints.h>');
135*3d8817e4Smiod   ENDIF;
136*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT@', FORWARD, EXACT, rang);
137*3d8817e4Smiod   IF match_pos <> 0 THEN;
138*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
139*3d8817e4Smiod      ERASE(match_pos);
140*3d8817e4Smiod      COPY_TEXT('int64');
141*3d8817e4Smiod   ENDIF;
142*3d8817e4Smiod   match_pos := SEARCH_QUIETLY('@BFD_HOST_U_64_BIT@', FORWARD, EXACT, rang);
143*3d8817e4Smiod   IF match_pos <> 0 THEN;
144*3d8817e4Smiod      POSITION(BEGINNING_OF(match_pos));
145*3d8817e4Smiod      ERASE(match_pos);
146*3d8817e4Smiod      COPY_TEXT('uint64');
147*3d8817e4Smiod   ENDIF;
148*3d8817e4Smiod   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
149*3d8817e4Smiod   QUIT
150*3d8817e4Smiod$  EOD
151*3d8817e4Smiod$endif
152*3d8817e4Smiod$
153*3d8817e4Smiod$ write sys$output "Generated `bfd.h' from `bfd-in2.h'."
154*3d8817e4Smiod$!
155*3d8817e4Smiod$!
156*3d8817e4Smiod$! create targmatch.h
157*3d8817e4Smiod$!
158*3d8817e4Smiod$ open/write tfile []targmatch.h
159*3d8817e4Smiod$ write tfile "{ """ + target + "-*-*vms*""" + ","
160*3d8817e4Smiod$ write tfile "#if defined (SELECT_VECS)"
161*3d8817e4Smiod$ write tfile "SELECT_VECS"
162*3d8817e4Smiod$ write tfile "#else"
163*3d8817e4Smiod$ write tfile "UNSUPPORTED_TARGET"
164*3d8817e4Smiod$ write tfile "#endif"
165*3d8817e4Smiod$ write tfile "},"
166*3d8817e4Smiod$ close tfile
167*3d8817e4Smiod$ write sys$output "Generated `targmatch.h'"
168*3d8817e4Smiod$!
169*3d8817e4Smiod$!
170*3d8817e4Smiod$! create config.h
171*3d8817e4Smiod$!
172*3d8817e4Smiod$ create []config.h
173*3d8817e4Smiod/* config.h-vms.  Generated by hand by Klaus K�mpf, kkaempf@didymus.rmi.de.  */
174*3d8817e4Smiod/* config.in.  Generated automatically from configure.in by autoheader.  */
175*3d8817e4Smiod/* Whether malloc must be declared even if <stdlib.h> is included.  */
176*3d8817e4Smiod/* #undef NEED_DECLARATION_MALLOC */
177*3d8817e4Smiod/* Whether free must be declared even if <stdlib.h> is included.  */
178*3d8817e4Smiod/* #undef NEED_DECLARATION_FREE */
179*3d8817e4Smiod/* Define if you have a working `mmap' system call.  */
180*3d8817e4Smiod/* #define HAVE_MMAP 1 */
181*3d8817e4Smiod/* Do we need to use the b modifier when opening binary files?  */
182*3d8817e4Smiod/* #undef USE_BINARY_FOPEN */
183*3d8817e4Smiod/* Name of host specific header file to include in trad-core.c.  */
184*3d8817e4Smiod/* #undef TRAD_HEADER */
185*3d8817e4Smiod/* Define only if <sys/procfs.h> is available *and* it defines prstatus_t.  */
186*3d8817e4Smiod/* #undef HAVE_SYS_PROCFS_H */
187*3d8817e4Smiod/* Do we really want to use mmap if it's available?  */
188*3d8817e4Smiod/* #undef USE_MMAP */
189*3d8817e4Smiod/* Define if you have the fcntl function.  */
190*3d8817e4Smiod#define HAVE_FCNTL 1
191*3d8817e4Smiod/* Define if you have the getpagesize function.  */
192*3d8817e4Smiod#define HAVE_GETPAGESIZE 1
193*3d8817e4Smiod/* Define if you have the madvise function.  */
194*3d8817e4Smiod#define HAVE_MADVISE 1
195*3d8817e4Smiod/* Define if you have the mprotect function.  */
196*3d8817e4Smiod#define HAVE_MPROTECT 1
197*3d8817e4Smiod/* Define if you have the <fcntl.h> header file.  */
198*3d8817e4Smiod#define HAVE_FCNTL_H 1
199*3d8817e4Smiod/* Define if you have the <stddef.h> header file.  */
200*3d8817e4Smiod#define HAVE_STDDEF_H 1
201*3d8817e4Smiod/* Define if you have the <stdlib.h> header file.  */
202*3d8817e4Smiod#define HAVE_STDLIB_H 1
203*3d8817e4Smiod/* Define if you have the <string.h> header file.  */
204*3d8817e4Smiod#define HAVE_STRING_H 1
205*3d8817e4Smiod/* Define if you have the <strings.h> header file.  */
206*3d8817e4Smiod#define HAVE_STRINGS_H 1
207*3d8817e4Smiod/* Define if you have the <sys/file.h> header file.  */
208*3d8817e4Smiod#define HAVE_SYS_FILE_H 1
209*3d8817e4Smiod/* Define if you have the <time.h> header file.  */
210*3d8817e4Smiod#define HAVE_TIME_H 1
211*3d8817e4Smiod/* Define if you have the <unistd.h> header file.  */
212*3d8817e4Smiod#define HAVE_UNISTD_H 1
213*3d8817e4Smiod$!
214*3d8817e4Smiod$ write sys$output "Generated `config.h'"
215*3d8817e4Smiod
216