Commit | Line | Data |
---|---|---|
8d063cd8 LW |
1 | case $CONFIG in |
2 | '') | |
3 | if test ! -f config.sh; then | |
4 | ln ../config.sh . || \ | |
5 | ln ../../config.sh . || \ | |
6 | ln ../../../config.sh . || \ | |
7 | (echo "Can't find config.sh."; exit 1) | |
8 | echo "Using config.sh from above..." | |
9 | fi | |
10 | . config.sh | |
11 | ;; | |
12 | esac | |
13 | echo "Extracting config.h (with variable substitutions)" | |
14 | cat <<!GROK!THIS! >config.h | |
15 | /* config.h | |
16 | * This file was produced by running the config.h.SH script, which | |
17 | * gets its values from config.sh, which is generally produced by | |
18 | * running Configure. | |
19 | * | |
20 | * Feel free to modify any of this as the need arises. Note, however, | |
21 | * that running config.h.SH again will wipe out any changes you've made. | |
22 | * For a more permanent change edit config.sh and rerun config.h.SH. | |
23 | */ | |
24 | ||
25 | ||
26 | /* EUNICE: | |
27 | * This symbol, if defined, indicates that the program is being compiled | |
28 | * under the EUNICE package under VMS. The program will need to handle | |
29 | * things like files that don't go away the first time you unlink them, | |
30 | * due to version numbering. It will also need to compensate for lack | |
31 | * of a respectable link() command. | |
32 | */ | |
33 | /* VMS: | |
34 | * This symbol, if defined, indicates that the program is running under | |
35 | * VMS. It is currently only set in conjunction with the EUNICE symbol. | |
36 | */ | |
37 | #$d_eunice EUNICE /**/ | |
38 | #$d_eunice VMS /**/ | |
39 | ||
36ce8bec DFDL |
40 | /* CPP: |
41 | * This symbol contains the first part of the string which will invoke | |
42 | * the C preprocessor on the standard input and produce to standard | |
43 | * output. Typical value of "cc -E" or "/lib/cpp". | |
44 | */ | |
45 | /* CPPMINUS: | |
46 | * This symbol contains the second part of the string which will invoke | |
47 | * the C preprocessor on the standard input and produce to standard | |
48 | * output. This symbol will have the value "-" if CPP needs a minus | |
49 | * to specify standard input, otherwise the value is "". | |
50 | */ | |
51 | #define CPP "$cpp" | |
52 | #define CPPMINUS "$cppminus" | |
53 | ||
8d063cd8 LW |
54 | /* CHARSPRINTF: |
55 | * This symbol is defined if this system declares "char *sprintf()" in | |
56 | * stdio.h. The trend seems to be to declare it as "int sprintf()". It | |
57 | * is up to the package author to declare sprintf correctly based on the | |
58 | * symbol. | |
59 | */ | |
60 | #$d_charsprf CHARSPRINTF /**/ | |
61 | ||
62 | /* index: | |
63 | * This preprocessor symbol is defined, along with rindex, if the system | |
64 | * uses the strchr and strrchr routines instead. | |
65 | */ | |
66 | /* rindex: | |
67 | * This preprocessor symbol is defined, along with index, if the system | |
68 | * uses the strchr and strrchr routines instead. | |
69 | */ | |
70 | #$d_index index strchr /* cultural */ | |
71 | #$d_index rindex strrchr /* differences? */ | |
72 | ||
36ce8bec DFDL |
73 | /* STDSTDIO: |
74 | * This symbol is defined if this system has a FILE structure declaring | |
75 | * _ptr and _cnt in stdio.h. | |
76 | */ | |
77 | #$d_stdstdio STDSTDIO /**/ | |
78 | ||
8d063cd8 LW |
79 | /* STRUCTCOPY: |
80 | * This symbol, if defined, indicates that this C compiler knows how | |
81 | * to copy structures. If undefined, you'll need to use a block copy | |
82 | * routine of some sort instead. | |
83 | */ | |
84 | #$d_strctcpy STRUCTCOPY /**/ | |
85 | ||
86 | /* vfork: | |
87 | * This symbol, if defined, remaps the vfork routine to fork if the | |
88 | * vfork() routine isn't supported here. | |
89 | */ | |
90 | #$d_vfork vfork fork /**/ | |
91 | ||
36ce8bec DFDL |
92 | /* VOIDSIG: |
93 | * This symbol is defined if this system declares "void (*signal())()" in | |
94 | * signal.h. The old way was to declare it as "int (*signal())()". It | |
95 | * is up to the package author to declare things correctly based on the | |
96 | * symbol. | |
97 | */ | |
98 | #$d_voidsig VOIDSIG /**/ | |
99 | ||
100 | /* STDCHAR: | |
101 | * This symbol is defined to be the type of char used in stdio.h. | |
102 | * It has the values "unsigned char" or "char". | |
103 | */ | |
104 | #define STDCHAR $stdchar /**/ | |
105 | ||
8d063cd8 LW |
106 | /* VOIDFLAGS: |
107 | * This symbol indicates how much support of the void type is given by this | |
108 | * compiler. What various bits mean: | |
109 | * | |
110 | * 1 = supports declaration of void | |
111 | * 2 = supports arrays of pointers to functions returning void | |
112 | * 4 = supports comparisons between pointers to void functions and | |
113 | * addresses of void functions | |
114 | * | |
115 | * The package designer should define VOIDUSED to indicate the requirements | |
116 | * of the package. This can be done either by #defining VOIDUSED before | |
117 | * including config.h, or by defining defvoidused in Myinit.U. If the | |
118 | * level of void support necessary is not present, defines void to int. | |
119 | */ | |
120 | #ifndef VOIDUSED | |
121 | #define VOIDUSED $defvoidused | |
122 | #endif | |
123 | #define VOIDFLAGS $voidflags | |
124 | #if (VOIDFLAGS & VOIDUSED) != VOIDUSED | |
125 | #$define void int /* is void to be avoided? */ | |
126 | #$define M_VOID /* Xenix strikes again */ | |
127 | #endif | |
128 | ||
129 | !GROK!THIS! |