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