OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [configure.com] - Blame information for rev 145

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 14 khays
$!
2
$! This file configures the bfd library for use with openVMS.
3
$!
4
$! We do not use the configure script, since we do not have /bin/sh
5
$! to execute it.
6
$!
7
$! Written by Klaus K"ampf (kkaempf@rmi.de)
8
$! Rewritten by Tristan Gingold (gingold@adacore.com)
9
$!
10
$ arch=F$GETSYI("ARCH_NAME")
11
$ arch=F$EDIT(arch,"LOWERCASE")
12
$if arch .eqs. "alpha" then target = "alpha"
13
$if arch .eqs. "ia64" then target = "ia64"
14
$!
15
$if (arch .eqs. "alpha") .or. (arch .eqs. "ia64")
16
$then
17
$!
18
$ write sys$output "Configuring BFD for ''target' target"
19
$!
20
$!
21
$! copy bfd-in2.h to bfd.h, replacing @ macros
22
$!
23
$ edit/tpu/nojournal/nosection/nodisplay/command=sys$input -
24
        []bfd-in2.h /output=[]bfd.h
25
$DECK
26
!
27
!  Copy file, changing lines with macros (@@)
28
!
29
!
30
   set (success,off);
31
   vfile := CREATE_BUFFER("vfile", "CONFIGURE.IN");
32
   rang := CREATE_RANGE(BEGINNING_OF(vfile), END_OF(vfile));
33
   match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, rang);
34
   IF match_pos <> 0 THEN;
35
     POSITION(BEGINNING_OF(match_pos));
36
     ERASE(match_pos);
37
     vers := CURRENT_LINE-")";
38
   ELSE;
39
     vers := "unknown";
40
   ENDIF;
41
 
42
   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
43
   rang := CREATE_RANGE(BEGINNING_OF(file), END_OF(file));
44
 
45
   match_pos := SEARCH_QUIETLY('@VERSION@', FORWARD, EXACT, rang);
46
   IF match_pos <> 0 THEN;
47
      POSITION(BEGINNING_OF(match_pos));
48
      ERASE(match_pos);
49
      COPY_TEXT(vers);
50
   ENDIF;
51
   match_pos := SEARCH_QUIETLY('@wordsize@', FORWARD, EXACT, rang);
52
   IF match_pos <> 0 THEN;
53
      POSITION(BEGINNING_OF(match_pos));
54
      ERASE(match_pos);
55
      COPY_TEXT('64');
56
   ENDIF;
57
   match_pos := SEARCH_QUIETLY('@bfd_default_target_size@', FORWARD, EXACT, rang);
58
   IF match_pos <> 0 THEN;
59
      POSITION(BEGINNING_OF(match_pos));
60
      ERASE(match_pos);
61
      COPY_TEXT('64');
62
   ENDIF;
63
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64BIT_LONG@', FORWARD, EXACT, rang);
64
   IF match_pos <> 0 THEN;
65
      POSITION(BEGINNING_OF(match_pos));
66
      ERASE(match_pos);
67
      COPY_TEXT('0');
68
   ENDIF;
69
   match_pos := SEARCH_QUIETLY('@BFD_HOST_LONG_LONG@', FORWARD, EXACT, rang);
70
   IF match_pos <> 0 THEN;
71
      POSITION(BEGINNING_OF(match_pos));
72
      ERASE(match_pos);
73
      COPY_TEXT('1');
74
   ENDIF;
75
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64BIT_LONG_LONG@', FORWARD, EXACT, rang);
76
   IF match_pos <> 0 THEN;
77
      POSITION(BEGINNING_OF(match_pos));
78
      ERASE(match_pos);
79
      COPY_TEXT('1');
80
   ENDIF;
81
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT_DEFINED@', FORWARD, EXACT, rang);
82
   IF match_pos <> 0 THEN;
83
      POSITION(BEGINNING_OF(match_pos));
84
      ERASE(match_pos);
85
      COPY_TEXT('__DECC');
86
      SPLIT_LINE;
87
      COPY_TEXT('#include ');
88
   ENDIF;
89
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT@', FORWARD, EXACT, rang);
90
   IF match_pos <> 0 THEN;
91
      POSITION(BEGINNING_OF(match_pos));
92
      ERASE(match_pos);
93
      COPY_TEXT('int64');
94
   ENDIF;
95
   match_pos := SEARCH_QUIETLY('@BFD_HOST_U_64_BIT@', FORWARD, EXACT, rang);
96
   IF match_pos <> 0 THEN;
97
      POSITION(BEGINNING_OF(match_pos));
98
      ERASE(match_pos);
99
      COPY_TEXT('uint64');
100
   ENDIF;
101
   match_pos := SEARCH_QUIETLY('@BFD_HOSTPTR_T@', FORWARD, EXACT, rang);
102
   IF match_pos <> 0 THEN;
103
      POSITION(BEGINNING_OF(match_pos));
104
      ERASE(match_pos);
105
      COPY_TEXT('uint64');
106
   ENDIF;
107
   match_pos := SEARCH_QUIETLY('@bfd_file_ptr@', FORWARD, EXACT, rang);
108
   IF match_pos <> 0 THEN;
109
      POSITION(BEGINNING_OF(match_pos));
110
      ERASE(match_pos);
111
      COPY_TEXT('bfd_signed_vma');
112
   ENDIF;
113
   match_pos := SEARCH_QUIETLY('unsigned @bfd_file_ptr@ ufile_ptr', FORWARD, EXACT, rang);
114
   IF match_pos <> 0 THEN;
115
      POSITION(BEGINNING_OF(match_pos));
116
      ERASE(match_pos);
117
      COPY_TEXT('bfd_vma ufile_ptr');
118
   ENDIF;
119
   match_pos := SEARCH_QUIETLY('@supports_plugins@', FORWARD, EXACT, rang);
120
   IF match_pos <> 0 THEN;
121
      POSITION(BEGINNING_OF(match_pos));
122
      ERASE(match_pos);
123
      COPY_TEXT('0');
124
   ENDIF;
125
   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
126
   QUIT
127
$  EOD
128
$
129
$else
130
$
131
$ write sys$output "Configuring for Vax target"
132
$ target = "vax"
133
$!
134
$! copy bfd-in2.h to bfd.h, replacing @ macros
135
$!
136
$ write sys$output "Generated `bfd.h' from `bfd-in2.h'."
137
$ edit/tpu/nojournal/nosection/nodisplay/command=sys$input -
138
        []bfd-in2.h /output=[]bfd.h
139
$DECK
140
!
141
!  Copy file, changing lines with macros (@@)
142
!
143
!
144
   set (success,off);
145
   vfile := CREATE_BUFFER("vfile", "CONFIGURE.IN");
146
   rang := CREATE_RANGE(BEGINNING_OF(vfile), END_OF(vfile));
147
   match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, rang);
148
   IF match_pos <> 0 THEN;
149
     POSITION(BEGINNING_OF(match_pos));
150
     ERASE(match_pos);
151
     vers := CURRENT_LINE-")";
152
   ELSE;
153
     vers := "unknown";
154
   ENDIF;
155
 
156
   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
157
   rang := CREATE_RANGE(BEGINNING_OF(file), END_OF(file));
158
 
159
   match_pos := SEARCH_QUIETLY('@VERSION@', FORWARD, EXACT, rang);
160
   IF match_pos <> 0 THEN;
161
      POSITION(BEGINNING_OF(match_pos));
162
      ERASE(match_pos);
163
      COPY_TEXT(vers);
164
   ENDIF;
165
   match_pos := SEARCH_QUIETLY('@wordsize@', FORWARD, EXACT, rang);
166
   IF match_pos <> 0 THEN;
167
      POSITION(BEGINNING_OF(match_pos));
168
      ERASE(match_pos);
169
      COPY_TEXT('32');
170
   ENDIF;
171
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64BIT_LONG@', FORWARD, EXACT, rang);
172
   IF match_pos <> 0 THEN;
173
      POSITION(BEGINNING_OF(match_pos));
174
      ERASE(match_pos);
175
      COPY_TEXT('0');
176
   ENDIF;
177
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT_DEFINED@', FORWARD, EXACT, rang);
178
   IF match_pos <> 0 THEN;
179
      POSITION(BEGINNING_OF(match_pos));
180
      ERASE(match_pos);
181
      COPY_TEXT('__DECC');
182
      SPLIT_LINE;
183
      COPY_TEXT('#include ');
184
   ENDIF;
185
   match_pos := SEARCH_QUIETLY('@BFD_HOST_64_BIT@', FORWARD, EXACT, rang);
186
   IF match_pos <> 0 THEN;
187
      POSITION(BEGINNING_OF(match_pos));
188
      ERASE(match_pos);
189
      COPY_TEXT('int64');
190
   ENDIF;
191
   match_pos := SEARCH_QUIETLY('@BFD_HOST_U_64_BIT@', FORWARD, EXACT, rang);
192
   IF match_pos <> 0 THEN;
193
      POSITION(BEGINNING_OF(match_pos));
194
      ERASE(match_pos);
195
      COPY_TEXT('uint64');
196
   ENDIF;
197
   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
198
   QUIT
199
$  EOD
200
$endif
201
$
202
$!
203
$! create bfdver.h
204
$!
205
$ write sys$output "Generate `bfdver.h' from 'version.h' and `configure.in'."
206
$ edit/tpu/nojournal/nosection/nodisplay/command=sys$input -
207
        []version.h /output=[]bfdver.h
208
$DECK
209
!
210
!  Copy file, changing lines with macros (@@)
211
!
212
!
213
   set (success,off);
214
   vfile := CREATE_BUFFER("vfile", "configure.in");
215
   rang := CREATE_RANGE(BEGINNING_OF(vfile), END_OF(vfile));
216
   match_pos := SEARCH_QUIETLY('AM_INIT_AUTOMAKE(bfd, ', FORWARD, EXACT, rang);
217
   IF match_pos <> 0 THEN;
218
     POSITION(BEGINNING_OF(match_pos));
219
     ERASE(match_pos);
220
     vers := CURRENT_LINE-")";
221
   ELSE;
222
     vers := "unknown";
223
   ENDIF;
224
   versnum := vers - "." - ".";
225
 
226
   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
227
   rang := CREATE_RANGE(BEGINNING_OF(file), END_OF(file));
228
 
229
   match_pos := SEARCH_QUIETLY('@bfd_version@', FORWARD, EXACT, rang);
230
   IF match_pos <> 0 THEN;
231
      POSITION(BEGINNING_OF(match_pos));
232
      ERASE(match_pos);
233
      COPY_TEXT(versnum);
234
   ENDIF;
235
   match_pos := SEARCH_QUIETLY('@bfd_version_string@', FORWARD, EXACT, rang);
236
   IF match_pos <> 0 THEN;
237
      POSITION(BEGINNING_OF(match_pos));
238
      ERASE(match_pos);
239
      COPY_TEXT('"');
240
      COPY_TEXT(vers);
241
      COPY_TEXT('"');
242
   ENDIF;
243
   match_pos := SEARCH_QUIETLY('@bfd_version_package@', FORWARD, EXACT, rang);
244
   IF match_pos <> 0 THEN;
245
      POSITION(BEGINNING_OF(match_pos));
246
      ERASE(match_pos);
247
      COPY_TEXT('"(GNU Binutils) "');
248
   ENDIF;
249
   match_pos := SEARCH_QUIETLY('@report_bugs_to@', FORWARD, EXACT, rang);
250
   IF match_pos <> 0 THEN;
251
      POSITION(BEGINNING_OF(match_pos));
252
      ERASE(match_pos);
253
      COPY_TEXT('""');
254
   ENDIF;
255
   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
256
   QUIT
257
$  EOD
258
$!
259
$!
260
$! create bfd_stdint.h
261
$!
262
$ write sys$output "Generate `bfd_stdint.h'"
263
$ create []bfd_stdint.h
264
#include 
265
$!
266
$!
267
$! create targmatch.h
268
$!
269
$ write sys$output "Generate `targmatch.h'"
270
$ open/write tfile []targmatch.h
271
$ write tfile "{ """ + target + "-*-*vms*""" + ","
272
$ write tfile "#if defined (SELECT_VECS)"
273
$ write tfile "SELECT_VECS"
274
$ write tfile "#else"
275
$ write tfile "UNSUPPORTED_TARGET"
276
$ write tfile "#endif"
277
$ write tfile "},"
278
$ close tfile
279
$!
280
$!
281
$! create config.h
282
$!
283
$ write sys$output "Generate `config.h'"
284
$ create []config.h
285
/* config.h-vms.  Generated by hand by Klaus Kämpf, kkaempf@didymus.rmi.de.  */
286
/* config.in.  Generated automatically from configure.in by autoheader.  */
287
/* Whether malloc must be declared even if  is included.  */
288
/* #undef NEED_DECLARATION_MALLOC */
289
/* Whether free must be declared even if  is included.  */
290
/* #undef NEED_DECLARATION_FREE */
291
/* Define if you have a working `mmap' system call.  */
292
/* #define HAVE_MMAP 1 */
293
/* Do we need to use the b modifier when opening binary files?  */
294
/* #undef USE_BINARY_FOPEN */
295
/* Name of host specific header file to include in trad-core.c.  */
296
/* #undef TRAD_HEADER */
297
/* Define only if  is available *and* it defines prstatus_t.  */
298
/* #undef HAVE_SYS_PROCFS_H */
299
/* Do we really want to use mmap if it's available?  */
300
/* #undef USE_MMAP */
301
/* Define if you have the fcntl function.  */
302
#define HAVE_FCNTL 1
303
/* Define if you have the getpagesize function.  */
304
#define HAVE_GETPAGESIZE 1
305
/* Define if you have the madvise function.  */
306
#define HAVE_MADVISE 1
307
/* Define if you have the mprotect function.  */
308
#define HAVE_MPROTECT 1
309
/* Define if you have the  header file.  */
310
#define HAVE_FCNTL_H 1
311
/* Define if you have the  header file.  */
312
#define HAVE_STDDEF_H 1
313
/* Define if you have the  header file.  */
314
#define HAVE_STDLIB_H 1
315
/* Define if you have the  header file.  */
316
#define HAVE_STRING_H 1
317
/* Define if you have the  header file.  */
318
#define HAVE_STRINGS_H 1
319
/* Define if you have the  header file.  */
320
#define HAVE_SYS_FILE_H 1
321
/* Define if you have the  header file.  */
322
#define HAVE_TIME_H 1
323
/* Define if you have the  header file.  */
324
#define HAVE_UNISTD_H 1
325
/* Disable NLS  */
326
#undef ENABLE_NLS
327
$!
328
$ write sys$output "Copy sysdep.h"
329
$ copy [.hosts]alphavms.h sysdep.h
330
$
331
$ write sys$output "Generate build.com"
332
$!
333
$ if ARCH.eqs."alpha"
334
$ then
335
$   create build.com
336
$DECK
337
$ DEFS="""SELECT_VECS=&vms_alpha_vec"","+-
338
  """SELECT_ARCHITECTURES=&bfd_alpha_arch"""
339
$ FILES="cpu-alpha,vms,vms-hdr,vms-gsd,vms-tir,vms-misc,"
340
$EOD
341
$ endif
342
$ if ARCH.eqs."ia64"
343
$ then
344
$   create build.com
345
$DECK
346
$ DEFS="""SELECT_VECS=&bfd_elf64_ia64_vms_vec"","+-
347
  """SELECT_ARCHITECTURES=&bfd_ia64_arch"""
348
$ FILES="cpu-ia64,elf64-ia64,elf-strtab,corefile,stabs,merge,elf-eh-frame,"+-
349
  "elflink,elf-attrs,dwarf1,elf64,"
350
$EOD
351
$ create substxx.tpu
352
$DECK
353
   set (success,off);
354
   file := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));
355
   found_range := CREATE_RANGE(BEGINNING_OF(file), BEGINNING_OF(file));
356
 
357
   LOOP
358
     rang := CREATE_RANGE (END_OF(found_range),END_OF(file));
359
     match_pos := SEARCH_QUIETLY('NN', FORWARD, EXACT, rang);
360
     EXITIF match_pos = 0;
361
     POSITION(BEGINNING_OF(match_pos));
362
     ERASE(match_pos);
363
     COPY_TEXT('64');
364
   ENDLOOP;
365
   WRITE_FILE(file, GET_INFO(COMMAND_LINE, "output_file"));
366
   QUIT
367
$  EOD
368
$ write sys$output "Generate elf64-ia64.c from elfxx-ia64.c"
369
$ edit/tpu/nojournal/nosection/nodisplay/command=substxx.tpu -
370
        []elfXX-ia64.c /output=[]elf64-ia64.c
371
$ write sys$output "Generate elf64-target.h from elfxx-target.h"
372
$ edit/tpu/nojournal/nosection/nodisplay/command=substxx.tpu -
373
        []elfXX-target.h /output=[]elf64-target.h
374
$ del substxx.tpu;*
375
$ endif
376
$ append sys$input build.com
377
$DECK
378
$ DEFS=DEFS + ",""unlink=remove"",""DEBUGDIR=""""GNU$DEBUGDIR:"""""""
379
$ OPT="/noopt/debug"
380
$ CFLAGS="/name=(as_is,shortened)" + -
381
  "/include=([],""../"",""../include"")" + -
382
  "/define=(" + DEFS + ")" + OPT
383
$ FILES=FILES + "archive,archive64,archures,bfd,bfdio,binary,cache,coffgen,"+-
384
  "compress,corefile,dwarf2,elf,format,hash,ihex,init,libbfd,linker,"+-
385
  "opncls,reloc,section,simple,srec,stab-syms,syms,targets,tekhex,verilog"
386
$ write sys$output "CFLAGS=",CFLAGS
387
$ cflags_libbfd="/warning=(disable=missingreturn)"
388
$ cflags_nil=""
389
$ NUM = 0
390
$ OBJS=""
391
$ LOOP:
392
$   F = F$ELEMENT(NUM,",",FILES)
393
$   IF F.EQS."," THEN GOTO END
394
$   eflags_name="cflags_''f'"
395
$   name_len=f$length(eflags_name)
396
$   dash_pos=f$locate("-",eflags_name)
397
$   if dash_pos.ne.name_len
398
$   then
399
$     eflags_name['dash_pos,1]:="_"
400
$     dash_pos=f$locate("-",eflags_name)
401
$     if dash_pos.ne.name_len then eflags_name['dash_pos,1]:="_"
402
$   endif
403
$   if f$type('eflags_name).eqs."" then eflags_name="cflags_nil"
404
$   eflags='eflags_name
405
$   write sys$output "Compiling ", F, ".c", eflags
406
$   cc 'CFLAGS 'eflags 'F.c
407
$   IF OBJS.NES."" THEN OBJS=OBJS + ","
408
$   OBJS=OBJS + F + ".obj"
409
$   NUM = NUM + 1
410
$   GOTO LOOP
411
$ END:
412
$ purge
413
$ lib/create libbfd 'OBJS
414
$EOD

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.