d15adeb3abb3048dfb293869d34c40b06cd76048
[p5sagit/p5-mst-13.2.git] / vms / subconfigure.com
1 $! SUBCONFIGURE.COM - build a config.sh for VMS Perl.
2 $!
3 $! Note for folks from other platforms changing things in here:
4 $!   Fancy changes (based on compiler capabilities or VMS version or
5 $!   whatever) are tricky, so go ahead and punt on those.
6 $!
7 $!   Simple changes, though (say, always setting something to 1, or undef,
8 $!   or something like that) are straightforward. Adding a new item for the
9 $!   ultimately created config.sh requires adding two lines to this file.
10 $!
11 $!   First, a line in the format:
12 $!     $ perl_foo = "bar"
13 $!   after the line tagged ##ADD NEW CONSTANTS HERE##. Replace foo with the
14 $!   variable name as it appears in config.sh.
15 $!
16 $!   Second, add a line in the format:
17 $!     $ WC "foo='" + perl_foo + "'"
18 $!   after the line tagged ##WRITE NEW CONSTANTS HERE##. Careful of the
19 $!   quoting, as it can be tricky. 
20 $! 
21 $! This .COM file expects to be called by configure.com, and thus expects
22 $! a few symbols in the environment. Notably:
23 $!
24 $!  One of: Using_Dec_C, Using_Vax_C, Using_Gnu_C set to "YES"
25 $!  Dec_C_Version set to the Dec C version (defaults to 0 if not specified)
26 $!  Has_Socketshr set to "T" if using socketshr
27 $!  Has_Dec_C_Sockets set to "T" if using Dec C sockets
28 $!  Use_Threads set to "T" if they're using threads
29 $!  C_Compiler_Invoke is the command needed to invoke the C compiler
30 $!
31 $! Set Dec_C_Version to something
32 $ WRITE_RESULT := "WRITE SYS$OUTPUT ""%CONFIG-I-RESULT "" + "
33 $ Dec_C_Version := "''Dec_C_Version'"
34 $ Dec_C_Version = Dec_C_Version + 0
35 $ Vms_Ver := "''f$extract(1,3, f$getsyi(""version""))'"
36 $ perl_extensions := "''extensions'"
37 $ if f$length(Mcc) .eq. 0 then Mcc := "cc"
38 $ MCC = f$edit(mcc, "UPCASE")
39 $ IF Mcc.eqs."CC
40 $ THEN
41 $   C_Compiler_Replace := "CC="
42 $ ELSE
43 $   C_Compiler_Replace := "CC=CC=''Mcc'"
44 $ ENDIF
45 $ if "''Using_Dec_C'" .eqs. "Yes"
46 $ THEN
47 $   Checkcc := "''Mcc'/prefix=all"
48 $ ELSE
49 $   Checkcc := "''Mcc'"
50 $ ENDIF
51 $ cc_flags = ""
52 $! Some constant defaults.
53 $
54 $ hwname = f$getsyi("HW_NAME")
55 $ myname = myhostname
56 $ if "''myname'" .eqs. "" THEN myname = f$trnlnm("SYS$NODE")
57 $!
58 $! ##ADD NEW CONSTANTS HERE##
59 $ perl_package="''package'"
60 $ perl_baserev = "''baserev'"
61 $ cc_defines=""
62 $ perl_CONFIG="true"
63 $ perl_i_netdb="undef"
64 $ perl_d_gnulibc="undef"
65 $ perl_cf_by="unknown"
66 $ perl_ccdlflags=""
67 $ perl_cccdlflags=""
68 $ perl_mab=""
69 $ perl_libpth="/sys$share /sys$library"
70 $ perl_ld="Link"
71 $ perl_lddlflags="/Share"
72 $ perl_ranlib=""
73 $ perl_ar=""
74 $ perl_eunicefix=":"
75 $ perl_hint="none"
76 $ perl_i_arpainet="undef"
77 $ perl_d_grpasswd="undef"
78 $ perl_d_setgrent="undef"
79 $ perl_d_getgrent="define"
80 $ perl_d_endgrent="define"
81 $ perl_d_pwpasswd="define"
82 $ perl_d_setpwent="define"
83 $ perl_d_getpwent="define"
84 $ perl_d_endpwent="define"
85 $ perl_ebcdic="undef"
86 $ perl_hintfile=""
87 $ perl_shrplib="define"
88 $ perl_usemymalloc=mymalloc
89 $ perl_usevfork="true"
90 $ perl_useposix="false"
91 $ perl_spitshell="write sys$output "
92 $ perl_dlsrc="dl_vms.c"
93 $ perl_man1ext="rno"
94 $ perl_man3ext="rno"
95 $ perl_prefix="perl_root"
96 $ perl_binexp="''perl_prefix':[000000]"
97 $ perl_builddir="''perl_prefix':[000000]"
98 $ perl_installbin="''perl_prefix':[000000]"
99 $ perl_installscript="''perl_prefix':[000000]"
100 $ perl_installman1dir="''perl_prefix':[man.man1]"
101 $ perl_installman3dir="''perl_prefix':[man.man3]"
102 $ perl_installprivlib="''perl_prefix':[lib]"
103 $ perl_installsitelib="''perl_prefix':[lib.site_perl]"
104 $ perl_path_sep="|"
105 $ perl_cc=Mcc
106 $ perl_d_sockpair="undef"
107 $ perl_i_neterrno="define"
108 $ perl_ldflags="/NoTrace/NoMap"
109 $ perl_d_lchown="undef"
110 $ perl_d_mknod="undef"
111 $ perl_d_union_semun="undef"
112 $ perl_d_semctl_semun="undef"
113 $ perl_d_semctl_semid_ds="undef"
114 $ IF (sharedperl.EQS."Y")
115 $ THEN
116 $ perl_obj_ext=".abj"
117 $ perl_so="axe"
118 $ perl_dlext="axe"
119 $ perl_exe_ext=".axe"
120 $ perl_lib_ext=".alb"
121 $ ELSE
122 $ perl_obj_ext=".obj"
123 $ perl_so="exe"
124 $ perl_dlext="exe"
125 $ perl_exe_ext=".exe"
126 $ perl_lib_ext=".olb"
127 $ENDIF
128 $ perl_dlobj="dl_vms''perl_obj_ext'"
129 $ perl_osname="VMS"
130 $ perl_d_archlib="define"
131 $ perl_d_bincompat3="undef"
132 $ perl_cppstdin="''Perl_CC'/noobj/preprocess=sys$output sys$input"
133 $ perl_cppminus=""
134 $ perl_d_castneg="define"
135 $ perl_castflags="0"
136 $ perl_d_chsize="undef"
137 $ perl_d_const="define"
138 $ perl_d_crypt="define"
139 $ perl_byteorder="1234"
140 $ perl_full_csh=""
141 $ perl_d_csh="undef"
142 $ perl_d_dup2="define"
143 $ perl_d_fchmod="undef"
144 $ perl_d_fchown="undef"
145 $ perl_d_fcntl="undef"
146 $ perl_d_fgetpos="define"
147 $ perl_d_flexfnam="define"
148 $ perl_d_flock="undef"
149 $ perl_d_fsetpos="define"
150 $ perl_d_getgrps="undef"
151 $ perl_d_setgrps="undef"
152 $ perl_d_getprior="undef"
153 $ perl_d_killpg="undef"
154 $ perl_d_link="undef"
155 $ perl_d_lstat="undef"
156 $ perl_d_lockf="undef"
157 $ perl_d_memcmp="define"
158 $ perl_d_memcpy="define"
159 $ perl_d_memmove="define"
160 $ perl_d_memset="define"
161 $ perl_d_mkdir="define"
162 $ perl_d_msg="undef"
163 $ perl_d_open3="define"
164 $ perl_d_poll="undef"
165 $ perl_d_readdir="define"
166 $ perl_d_seekdir="define"
167 $ perl_d_telldir="define"
168 $ perl_d_rewinddir="define"
169 $ perl_d_rename="define"
170 $ perl_d_rmdir="define"
171 $ perl_d_sem="undef"
172 $ perl_d_setegid="undef"
173 $ perl_d_seteuid="undef"
174 $ perl_d_setprior="undef"
175 $ perl_d_setregid="undef"
176 $ perl_d_setresgid="undef"
177 $ perl_d_setreuid="undef"
178 $ perl_d_setresuid="undef"
179 $ perl_d_setrgid="undef"
180 $ perl_d_setruid="undef"
181 $ perl_d_setsid="undef"
182 $ perl_d_shm="undef"
183 $ perl_d_shmatprototype="undef"
184 $ perl_d_statblks="undef"
185 $ perl_stdio_ptr="((*fp)->_ptr)"
186 $ perl_stdio_cnt="((*fp)->_cnt)"
187 $ perl_stdio_base="((*fp)->_base)"
188 $ perl_stdio_bufsiz="((*fp)->_cnt + (*fp)->_ptr - (*fp)->_base)"
189 $ perl_d_strctcpy="define"
190 $ perl_d_strerror="define"
191 $ perl_d_syserrlst="undef"
192 $ perl_d_strerrm="strerror((e),vaxc$errno)"
193 $ perl_d_symlink="undef"
194 $ perl_d_syscall="undef"
195 $ perl_d_system="define"
196 $ perl_timetype="time_t"
197 $ perl_d_vfork="define"
198 $ perl_signal_t="void"
199 $ perl_d_volatile="define"
200 $ perl_d_vprintf="define"
201 $ perl_d_charvspr="undef"
202 $ perl_d_waitpid="define"
203 $ perl_i_dirent="undef"
204 $ perl_d_dirnamlen="define"
205 $ perl_direntrytype="struct dirent"
206 $ perl_i_fcntl="undef"
207 $ perl_i_grp="undef"
208 $ perl_i_limits="define"
209 $ perl_i_memory="undef"
210 $ perl_i_ndbm="undef"
211 $ perl_i_stdarg="define"
212 $ perl_i_pwd="undef"
213 $ perl_d_pwquota="undef"
214 $ perl_d_pwage="undef"
215 $ perl_d_pwchange="undef"
216 $ perl_d_pwclass="undef"
217 $ perl_d_pwexpire="undef"
218 $ perl_d_pwcomment="define"
219 $ perl_i_stddef="define"
220 $ perl_i_stdlib="define"
221 $ perl_i_string="define"
222 $ perl_i_sysdir="undef"
223 $ perl_i_sysfile="undef"
224 $ perl_i_sysioctl="undef"
225 $ perl_i_sysndir="undef"
226 $ perl_i_sysresrc="undef"
227 $ perl_i_sysselct="undef"
228 $ perl_i_dbm="undef"
229 $ perl_i_rpcsvcdbm="undef"
230 $ perl_i_sfio="undef"
231 $ perl_i_sysstat="define"
232 $ perl_i_systimes="undef"
233 $ perl_i_systypes="define"
234 $ perl_i_sysun="undef"
235 $ perl_i_syswait="undef"
236 $ perl_i_termio="undef"
237 $ perl_i_sgtty="undef"
238 $ perl_i_termios="undef"
239 $ perl_i_time="define"
240 $ perl_i_systime="undef"
241 $ perl_i_systimek="undef"
242 $! perl_i_unistd="undef"
243 $ perl_i_utime="undef"
244 $ perl_i_varargs="undef"
245 $ perl_i_vfork="undef"
246 $ perl_prototype="define"
247 $ perl_randbits="31"
248 $ perl_stdchar="char"
249 $ perl_d_unlink_all_versions="undef"
250 $ perl_full_sed="_NLA0:"
251 $ perl_bin="/''perl_prefix'/000000"
252 $ perl_binexp="''perl_prefix':[000000]"
253 $ perl_d_alarm="define"
254 $ perl_d_casti32="define"
255 $ perl_d_chown="define"
256 $ perl_d_chroot="undef"
257 $ perl_d_cuserid="define"
258 $ perl_d_dbl_dig="define"
259 $ perl_d_difftime="define"
260 $ perl_d_fork="undef"
261 $ perl_d_getlogin="define"
262 $ perl_d_getppid="undef"
263 $ perl_d_nice="define"
264 $ perl_d_pause="define"
265 $ perl_d_pipe="define"
266 $ perl_d_readlink="undef"
267 $ perl_d_setlinebuf="undef"
268 $ perl_d_strchr="define"
269 $ perl_d_strtod="define"
270 $ perl_d_strtol="define"
271 $ perl_d_strtoul="define"
272 $ perl_d_tcgetpgrp="undef"
273 $ perl_d_tcsetpgrp="undef"
274 $ perl_d_times="define"
275 $ perl_d_tzname="undef"
276 $ perl_d_umask="define"
277 $ perl_fpostype="fpos_t"
278 $ perl_i_dlfcn="undef"
279 $ perl_i_float="define"
280 $ perl_i_math="define"
281 $ perl_lseektype="int"
282 $ perl_i_values="undef"
283 $ perl_malloctype="void *"
284 $ perl_freetype="void"
285 $ if "''mymalloc'".eqs."Y"
286 $ THEN
287 $ perl_d_mymalloc="define"
288 $ ELSE
289 $ perl_d_mymalloc="undef"
290 $ENDIF
291 $ perl_sh="MCR"
292 $ perl_modetype="unsigned int"
293 $ perl_ssizetype="int"
294 $ perl_o_nonblock=""
295 $ perl_eagain=""
296 $ perl_rd_nodata=""
297 $ perl_d_eofnblk="undef"
298 $ perl_d_oldarchlib="define"
299 $ perl_privlibexp="''perl_prefix':[lib]"
300 $ perl_privlib="''perl_prefix':[lib]"
301 $ perl_sitelibexp="''perl_prefix':[lib.site_perl]"
302 $ perl_sitelib="''perl_prefix':[lib.site_perl]"
303 $ perl_sizetype="size_t"
304 $ perl_i_sysparam="undef"
305 $ perl_d_void_closedir="define"
306 $ perl_d_dlerror="undef"
307 $ perl_d_dlsymun="undef"
308 $ perl_d_suidsafe="undef"
309 $ perl_d_dosuid="undef"
310 $ perl_d_inetaton="undef"
311 $ perl_d_isascii="define"
312 $ perl_d_mkfifo="undef"
313 $ perl_d_safebcpy="undef"
314 $ perl_d_safemcpy="define"
315 $ perl_d_sanemcmp="define"
316 $ perl_d_setpgrp="undef"
317 $ perl_d_bsdsetpgrp="undef"
318 $ perl_d_bsdpgrp="undef"
319 $ perl_d_setpgid="undef"
320 $ perl_d_setpgrp2="undef"
321 $ perl_d_Gconvert="my_gconvert(x,n,t,b)"
322 $ perl_d_getpgid="undef"
323 $ perl_d_getpgrp="undef"
324 $ perl_d_bsdgetpgrp="undef"
325 $ perl_d_getpgrp2="undef"
326 $ perl_d_sfio="undef"
327 $ perl_usedl="define"
328 $ perl_startperl="""$ perl 'f$env(\""procedure\"")' 'p1' 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8'  !\n$ exit++ + ++$status != 0 and $exit = $status = undef;"""
329 $ perl_db_hashtype=""
330 $ perl_db_prefixtype=""
331 $ perl_useperlio="undef"
332 $ perl_defvoidused="15"
333 $ perl_voidflags="15"
334 $ perl_d_eunice="undef"
335 $ perl_d_pwgecos="define"
336 $ IF ("''Use_Threads'".eqs."T").and.("''VMS_VER'".LES."6.2")
337 $ THEN
338 $ perl_libs="SYS$SHARE:CMA$LIB_SHR.EXE/SHARE SYS$SHARE:CMA$RTL.EXE/SHARE SYS$SHARE:CMA$OPEN_LIB_SHR.exe/SHARE SYS$SHARE:CMA$OPEN_RTL.exe/SHARE"
339 $ ELSE
340 $ perl_libs=""
341 $ ENDIF
342 $ IF ("''Using_Dec_C'".eqs."Yes")
343 $ THEN
344 $ perl_libc="(DECCRTL)"
345 $ ELSE
346 $ perl_libc=""
347 $ ENDIF
348 $ perl_PATCHLEVEL="''patchlevel'"
349 $ perl_SUBVERSION="''subversion'"
350 $ perl_pager="most"
351 $!
352 $!
353 $! Now some that we build up
354 $!
355 $ LocalTime = f$time()
356 $ perl_cf_time= f$extract(0, 3, f$cvtime(LocalTime,, "WEEKDAY")) + " " + - 
357                 f$edit(f$cvtime(LocalTime, "ABSOLUTE", "MONTH"), "LOWERCASE") + -
358                 " " + f$cvtime(LocalTime,, "DAY") + " " + f$cvtime(LocalTime,, "TIME") + -
359                 " " + f$cvtime(LocalTime,, "YEAR")
360 $ if f$getsyi("HW_MODEL").ge.1024
361 $ THEN
362 $ perl_arch="VMS_AXP"
363 $ perl_archname="VMS_AXP"
364 $ perl_alignbytes="8"
365 $ ELSE
366 $ perl_arch="VMS_VAX"
367 $ perl_archname="VMS_VAX"
368 $ perl_alignbytes="8"
369 $ ENDIF
370 $ if ("''Use_Threads'".eqs."T")
371 $ THEN
372 $ perl_arch = "''perl_arch'-thread"
373 $ perl_archname = "''perl_archname'-thread"
374 $ ENDIF
375 $ perl_osvers=f$edit(osvers, "TRIM")
376 $ if (perl_subversion + 0).eq.0
377 $ THEN
378 $ LocalPerlVer = "5_" + Perl_PATCHLEVEL
379 $ ELSE
380 $ LocalPerlVer = "5_" + Perl_PATCHLEVEL + perl_subversion
381 $ ENDIF
382 $!
383 $! Some that we need to invoke the compiler for
384 $ OS := "open/write SOURCECHAN []temp.c"
385 $ WS := "write SOURCECHAN"
386 $ CS := "close SOURCECHAN"
387 $ DS := "delete/nolog []temp.*;*"
388 $ Needs_Opt := "No"
389 $ if ("''using_vax_c'".eqs."Yes").or.("''using_gnu_c'".eqs."Yes")
390 $ THEN
391 $   open/write OPTCHAN []temp.opt
392 $   IF ("''using_gnu_c'".eqs."Yes")
393 $   THEN
394 $     write OPTCHAN "Gnu_CC:[000000]gcclib.olb/library"
395 $   endif
396 $   write OPTCHAN "Sys$Share:VAXCRTL/Share"
397 $   Close OPTCHAN
398 $   Needs_Opt := "Yes"
399 $ ENDIF
400 $!
401 $! Check for __STDC__
402 $!
403 $ OS
404 $ WS "#ifdef __DECC
405 $ WS "#include <stdlib.h>
406 $ WS "#endif
407 $ WS "#include <stdio.h>
408 $ WS "int main()
409 $ WS "{"
410 $ WS "#ifdef __STDC__
411 $ WS "printf(""42\n"");
412 $ WS "#else
413 $ WS "printf(""1\n"");
414 $ WS "#endif
415 $ WS "exit(0);
416 $ WS "}"
417 $ CS
418 $   DEFINE SYS$ERROR _NLA0:
419 $   DEFINE SYS$OUTPUT _NLA0:
420 $   ON ERROR THEN CONTINUE
421 $   ON WARNING THEN CONTINUE
422 $   'Checkcc' temp.c
423 $   If (Needs_Opt.eqs."Yes")
424 $   THEN
425 $     link temp.obj,temp.opt/opt
426 $   else
427 $     link temp.obj
428 $   endif
429 $   DEASSIGN SYS$OUTPUT
430 $   DEASSIGN SYS$ERROR
431 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
432 $   DEFINE SYS$ERROR TEMPOUT
433 $   DEFINE SYS$OUTPUT TEMPOUT
434 $   mcr []temp
435 $   CLOSE TEMPOUT
436 $   DEASSIGN SYS$OUTPUT
437 $   DEASSIGN SYS$ERROR
438 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
439 $   READ TEMPOUT line
440 $   CLOSE TEMPOUT
441
442 $ perl_cpp_stuff=line
443 $ WRITE_RESULT "cpp_stuff is ''perl_cpp_stuff'"
444 $!
445 $! Check for double size
446 $!
447 $ OS
448 $ WS "#ifdef __DECC
449 $ WS "#include <stdlib.h>
450 $ WS "#endif
451 $ WS "#include <stdio.h>
452 $ WS "int main()
453 $ WS "{"
454 $ WS "int foo;
455 $ WS "foo = sizeof(double);
456 $ WS "printf(""%d\n"", foo);
457 $ WS "exit(0);
458 $ WS "}"
459 $ CS
460 $   DEFINE SYS$ERROR _NLA0:
461 $   DEFINE SYS$OUTPUT _NLA0:
462 $   ON ERROR THEN CONTINUE
463 $   ON WARNING THEN CONTINUE
464 $   'Checkcc' temp.c
465 $   If (Needs_Opt.eqs."Yes")
466 $   THEN
467 $     link temp.obj,temp.opt/opt
468 $   else
469 $     link temp.obj
470 $   endif
471 $!   link temp.obj
472 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
473 $   DEASSIGN SYS$OUTPUT
474 $   DEASSIGN SYS$ERROR
475 $   DEFINE SYS$ERROR TEMPOUT
476 $   DEFINE SYS$OUTPUT TEMPOUT
477 $   mcr []temp
478 $   CLOSE TEMPOUT
479 $   DEASSIGN SYS$OUTPUT
480 $   DEASSIGN SYS$ERROR
481 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
482 $   READ TEMPOUT line
483 $   CLOSE TEMPOUT
484
485 $ perl_doublesize=line
486 $ WRITE_RESULT "doublesize is ''perl_doublesize'"
487 $!
488 $! Check for long double size
489 $!
490 $ OS
491 $ WS "#ifdef __DECC
492 $ WS "#include <stdlib.h>
493 $ WS "#endif
494 $ WS "#include <stdio.h>
495 $ WS "int main()
496 $ WS "{"
497 $ WS "printf(""%d\n"", sizeof(long double));
498 $ WS "exit(0);
499 $ WS "}"
500 $ CS
501 $   DEFINE SYS$ERROR _NLA0:
502 $   DEFINE SYS$OUTPUT _NLA0:
503 $   ON ERROR THEN CONTINUE
504 $   ON WARNING THEN CONTINUE
505 $   'Checkcc' temp.c
506 $   teststatus = f$extract(9,1,$status)
507 $   if (teststatus.nes."1")
508 $   THEN
509 $     perl_longdblsize="0"
510 $     perl_d_longdbl="undef"
511 $   ELSE
512 $     ON ERROR THEN CONTINUE
513 $     ON WARNING THEN CONTINUE
514 $     If (Needs_Opt.eqs."Yes")
515 $     THEN
516 $     link temp.obj,temp.opt/opt
517 $     else
518 $       link temp.obj
519 $     endif
520 $     teststatus = f$extract(9,1,$status)
521 $     DEASSIGN SYS$OUTPUT
522 $     DEASSIGN SYS$ERROR
523 $     if (teststatus.nes."1")
524 $     THEN
525 $       perl_longdblsize="0"
526 $       perl_d_longdbl="undef"
527 $     ELSE
528 $       OPEN/WRITE TEMPOUT [-.uu]tempout.lis
529 $       DEFINE SYS$ERROR TEMPOUT
530 $       DEFINE SYS$OUTPUT TEMPOUT
531 $       mcr []temp
532 $       CLOSE TEMPOUT
533 $       DEASSIGN SYS$OUTPUT
534 $       DEASSIGN SYS$ERROR
535 $       OPEN/READ TEMPOUT [-.uu]tempout.lis
536 $       READ TEMPOUT line
537 $       CLOSE TEMPOUT
538
539 $       perl_longdblsize=line
540 $       perl_d_longdbl="define"
541 $     ENDIF
542 $   ENDIF
543 $ WRITE_RESULT "longdblsize is ''perl_longdblsize'"
544 $ WRITE_RESULT "d_longdbl is ''perl_d_longdbl'"
545 $!
546 $! Check for long long existance and size
547 $!
548 $ OS
549 $ WS "#ifdef __DECC
550 $ WS "#include <stdlib.h>
551 $ WS "#endif
552 $ WS "#include <stdio.h>
553 $ WS "int main()
554 $ WS "{"
555 $ WS "printf(""%d\n"", sizeof(long long));
556 $ WS "exit(0);
557 $ WS "}"
558 $ CS
559 $   DEFINE SYS$ERROR _NLA0:
560 $   DEFINE SYS$OUTPUT _NLA0:
561 $   on error then continue
562 $   on warning then continue
563 $   'Checkcc' temp.c
564 $   If (Needs_Opt.eqs."Yes")
565 $   THEN
566 $     link temp.obj,temp.opt/opt
567 $   else
568 $     link temp.obj
569 $   endif
570 $   teststatus = f$extract(9,1,$status)
571 $   DEASSIGN SYS$OUTPUT
572 $   DEASSIGN SYS$ERROR
573 $   if (teststatus.nes."1")
574 $   THEN
575 $     perl_longlongsize="0"
576 $     perl_d_longlong="undef"
577 $   ELSE
578 $     OPEN/WRITE TEMPOUT [-.uu]tempout.lis
579 $     DEFINE SYS$ERROR TEMPOUT
580 $     DEFINE SYS$OUTPUT TEMPOUT
581 $     mcr []temp
582 $     CLOSE TEMPOUT
583 $     DEASSIGN SYS$OUTPUT
584 $     DEASSIGN SYS$ERROR
585 $     OPEN/READ TEMPOUT [-.uu]tempout.lis
586 $     READ TEMPOUT line
587 $     CLOSE TEMPOUT
588
589 $     perl_longlongsize=line
590 $     perl_d_longlong="define"
591 $   ENDIF
592 $ WRITE_RESULT "longlongsize is ''perl_longlongsize'"
593 $ WRITE_RESULT "d_longlong is ''perl_d_longlong'"
594 $!
595 $! Check for int size
596 $!
597 $ OS
598 $ WS "#ifdef __DECC
599 $ WS "#include <stdlib.h>
600 $ WS "#endif
601 $ WS "#include <stdio.h>
602 $ WS "int main()
603 $ WS "{"
604 $ WS "printf(""%d\n"", sizeof(int));
605 $ WS "exit(0);
606 $ WS "}"
607 $ CS
608 $   DEFINE SYS$ERROR _NLA0:
609 $   DEFINE SYS$OUTPUT _NLA0:
610 $   on error then continue
611 $   on warning then continue
612 $   'Checkcc' temp.c
613 $   If (Needs_Opt.eqs."Yes")
614 $   THEN
615 $     link temp.obj,temp.opt/opt
616 $   else
617 $     link temp.obj
618 $   endif
619 $   If (Needs_Opt.eqs."Yes")
620 $   THEN
621 $     link temp.obj,temp.opt/opt
622 $   else
623 $     link temp.obj
624 $   endif
625 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
626 $   DEASSIGN SYS$OUTPUT
627 $   DEASSIGN SYS$ERROR
628 $   DEFINE SYS$ERROR TEMPOUT
629 $   DEFINE SYS$OUTPUT TEMPOUT
630 $   mcr []temp
631 $   CLOSE TEMPOUT
632 $   DEASSIGN SYS$OUTPUT
633 $   DEASSIGN SYS$ERROR
634 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
635 $   READ TEMPOUT line
636 $   CLOSE TEMPOUT
637
638 $   perl_intsize=line
639 $ WRITE_RESULT "intsize is ''perl_intsize'"
640 $!
641 $! Check for short size
642 $!
643 $ OS
644 $ WS "#ifdef __DECC
645 $ WS "#include <stdlib.h>
646 $ WS "#endif
647 $ WS "#include <stdio.h>
648 $ WS "int main()
649 $ WS "{"
650 $ WS "printf(""%d\n"", sizeof(short));
651 $ WS "exit(0);
652 $ WS "}"
653 $ CS
654 $   DEFINE SYS$ERROR _NLA0:
655 $   DEFINE SYS$OUTPUT _NLA0:
656 $   on error then continue
657 $   on warning then continue
658 $   'Checkcc' temp.c
659 $   If (Needs_Opt.eqs."Yes")
660 $   THEN
661 $     link temp.obj,temp.opt/opt
662 $   else
663 $     link temp.obj
664 $   endif
665 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
666 $   DEASSIGN SYS$OUTPUT
667 $   DEASSIGN SYS$ERROR
668 $   DEFINE SYS$ERROR TEMPOUT
669 $   DEFINE SYS$OUTPUT TEMPOUT
670 $   mcr []temp
671 $   CLOSE TEMPOUT
672 $   DEASSIGN SYS$OUTPUT
673 $   DEASSIGN SYS$ERROR
674 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
675 $   READ TEMPOUT line
676 $   CLOSE TEMPOUT
677
678 $   perl_shortsize=line
679 $ WRITE_RESULT "shortsize is ''perl_shortsize'"
680 $!
681 $! Check for long size
682 $!
683 $ OS
684 $ WS "#ifdef __DECC
685 $ WS "#include <stdlib.h>
686 $ WS "#endif
687 $ WS "#include <stdio.h>
688 $ WS "int main()
689 $ WS "{"
690 $ WS "int foo;
691 $ WS "foo = sizeof(long);
692 $ WS "printf(""%d\n"", foo);
693 $ WS "exit(0);
694 $ WS "}"
695 $ CS
696 $   DEFINE SYS$ERROR _NLA0:
697 $   DEFINE SYS$OUTPUT _NLA0:
698 $   on error then continue
699 $   on warning then continue
700 $   'Checkcc' temp.c
701 $   If (Needs_Opt.eqs."Yes")
702 $   THEN
703 $     link temp.obj,temp.opt/opt
704 $   else
705 $     link temp.obj
706 $   endif
707 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
708 $   DEASSIGN SYS$OUTPUT
709 $   DEASSIGN SYS$ERROR
710 $   DEFINE SYS$ERROR TEMPOUT
711 $   DEFINE SYS$OUTPUT TEMPOUT
712 $   mcr []temp
713 $   CLOSE TEMPOUT
714 $   DEASSIGN SYS$OUTPUT
715 $   DEASSIGN SYS$ERROR
716 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
717 $   READ TEMPOUT line
718 $   CLOSE TEMPOUT
719
720 $   perl_longsize=line
721 $ WRITE_RESULT "longsize is ''perl_longsize'"
722 $!
723 $! Check the prototype for getgid
724 $!
725 $ OS
726 $ WS "#ifdef __DECC
727 $ WS "#include <stdlib.h>
728 $ WS "#endif
729 $ WS "#include <stdio.h>
730 $ WS "#include <types.h>
731 $ WS "#include <unistd.h>
732 $ WS "int main()
733 $ WS "{"
734 $ WS "gid_t foo;
735 $ WS "exit(0);
736 $ WS "}"
737 $ CS
738 $   DEFINE SYS$ERROR _NLA0:
739 $   DEFINE SYS$OUTPUT _NLA0:
740 $   on error then continue
741 $   on warning then continue
742 $   'Checkcc' temp.c
743 $   teststatus = f$extract(9,1,$status)
744 $   DEASSIGN SYS$OUTPUT
745 $   DEASSIGN SYS$ERROR
746 $   if (teststatus.nes."1")
747 $   THEN
748 $!   Okay, gid_t failed. Must be unsigned int
749 $     perl_gidtype = "unsigned int"
750 $   ELSE
751 $     perl_gidtype = "gid_t"
752 $   ENDIF
753 $ WRITE_RESULT "Gid_t is ''perl_gidtype'"
754 $!
755 $! Check to see if we've got dev_t
756 $!
757 $ OS
758 $ WS "#ifdef __DECC
759 $ WS "#include <stdlib.h>
760 $ WS "#endif
761 $ WS "#include <stdio.h>
762 $ WS "#include <types.h>
763 $ WS "#include <unistd.h>
764 $ WS "int main()
765 $ WS "{"
766 $ WS "dev_t foo;
767 $ WS "exit(0);
768 $ WS "}"
769 $ CS
770 $   DEFINE SYS$ERROR _NLA0:
771 $   DEFINE SYS$OUTPUT _NLA0:
772 $   on error then continue
773 $   on warning then continue
774 $   'Checkcc' temp.c
775 $   teststatus = f$extract(9,1,$status)
776 $   DEASSIGN SYS$OUTPUT
777 $   DEASSIGN SYS$ERROR
778 $   if (teststatus.nes."1")
779 $   THEN
780 $!   Okay, dev_t failed. Must be unsigned int
781 $     perl_devtype = "unsigned int"
782 $   ELSE
783 $     perl_devtype = "dev_t"
784 $   ENDIF
785 $ WRITE_RESULT "Dev_t is ''perl_devtype'"
786 $!
787 $! Check to see if we've got unistd.h (which we ought to, but you never know)
788 $!
789 $ OS
790 $ WS "#ifdef __DECC
791 $ WS "#include <stdlib.h>
792 $ WS "#endif
793 $ WS "#include <unistd.h>
794 $ WS "int main()
795 $ WS "{"
796 $ WS "exit(0);
797 $ WS "}"
798 $ CS
799 $   DEFINE SYS$ERROR _NLA0:
800 $   DEFINE SYS$OUTPUT _NLA0:
801 $   on error then continue
802 $   on warning then continue
803 $   'Checkcc' temp.c
804 $   teststatus = f$extract(9,1,$status)
805 $   DEASSIGN SYS$OUTPUT
806 $   DEASSIGN SYS$ERROR
807 $   if (teststatus.nes."1")
808 $   THEN
809 $!   Okay, failed. Must not have it
810 $     perl_i_unistd = "undef"
811 $   ELSE
812 $     perl_i_unistd = "define"
813
814 $   ENDIF
815 $ WRITE_RESULT "i_unistd is ''perl_i_unistd'"
816 $!
817 $! Check the prototype for select
818 $!
819 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
820 $ THEN
821 $ OS
822 $ WS "#ifdef __DECC
823 $ WS "#include <stdlib.h>
824 $ WS "#endif
825 $ WS "#include <stdio.h>
826 $ WS "#include <types.h>
827 $ WS "#include <unistd.h>
828 $ if ("''Has_Socketshr'".eqs."T")
829 $ THEN
830 $  WS "#include <socketshr.h>"
831 $ else
832 $  WS "#include <time.h>
833 $  WS "#include <socket.h>
834 $ endif
835 $ WS "int main()
836 $ WS "{"
837 $ WS "fd_set *foo;
838 $ WS "int bar;
839 $ WS "foo = NULL;
840 $ WS "bar = select(2, foo, foo, foo, NULL);
841 $ WS "exit(0);
842 $ WS "}"
843 $ CS
844 $   DEFINE SYS$ERROR _NLA0:
845 $   DEFINE SYS$OUTPUT _NLA0:
846 $   on error then continue
847 $   on warning then continue
848 $   'Checkcc' temp.c
849 $   teststatus = f$extract(9,1,$status)
850 $   DEASSIGN SYS$OUTPUT
851 $   DEASSIGN SYS$ERROR
852 $   if (teststatus.nes."1")
853 $   THEN
854 $!   Okay, fd_set failed. Must be an int
855 $     perl_selecttype = "int *"
856 $   ELSE
857 $     perl_selecttype="fd_set *"
858 $   ENDIF
859 $ ELSE
860 $   ! No sockets, so stick in an int *
861 $   perl_selecttype = "int *"
862 $ ENDIF
863 $ WRITE_RESULT "selectype is ''perl_selecttype'"
864 $!
865 $! Check for bzero
866 $!
867 $ OS
868 $ WS "#ifdef __DECC
869 $ WS "#include <stdlib.h>
870 $ WS "#endif
871 $ WS "#include <stdio.h>
872 $ WS "#include <strings.h>
873 $ WS "int main()
874 $ WS "{"
875 $ WS "char foo[10];
876 $ WS "bzero(foo, 10);
877 $ WS "exit(0);
878 $ WS "}"
879 $ CS
880 $   DEFINE SYS$ERROR _NLA0:
881 $   DEFINE SYS$OUTPUT _NLA0:
882 $   on error then continue
883 $   on warning then continue
884 $   'Checkcc' temp.c
885 $   savedstatus = $status
886 $   teststatus = f$extract(9,1,savedstatus)
887 $   if (teststatus.nes."1")
888 $   THEN
889 $     perl_d_bzero="undef"
890 $     DEASSIGN SYS$OUTPUT
891 $     DEASSIGN SYS$ERROR
892 $   ELSE
893 $     If (Needs_Opt.eqs."Yes")
894 $     THEN
895 $       link temp.obj,temp.opt/opt
896 $     else
897 $       link temp.obj
898 $     endif
899 $     savedstatus = $status
900 $     teststatus = f$extract(9,1,savedstatus)
901 $     DEASSIGN SYS$OUTPUT
902 $     DEASSIGN SYS$ERROR
903 $     if (teststatus.nes."1")
904 $     THEN
905 $       perl_d_bzero="undef"
906 $     ELSE
907 $       perl_d_bzero="define"
908 $     ENDIF
909 $   ENDIF
910 $ WRITE_RESULT "d_bzero is ''perl_d_bzero'"
911 $!
912 $! Check for bcopy
913 $!
914 $ OS
915 $ WS "#ifdef __DECC
916 $ WS "#include <stdlib.h>
917 $ WS "#endif
918 $ WS "#include <stdio.h>
919 $ WS "#include <strings.h>
920 $ WS "int main()
921 $ WS "{"
922 $ WS "char foo[10], bar[10];
923 $ WS "bcopy(""foo"", bar, 3);
924 $ WS "exit(0);
925 $ WS "}"
926 $ CS
927 $   DEFINE SYS$ERROR _NLA0:
928 $   DEFINE SYS$OUTPUT _NLA0:
929 $   on error then continue
930 $   on warning then continue
931 $   'Checkcc' temp.c
932 $   savedstatus = $status
933 $   teststatus = f$extract(9,1,savedstatus)
934 $   if (teststatus.nes."1")
935 $   THEN
936 $     perl_d_bcopy="undef"
937 $     DEASSIGN SYS$OUTPUT
938 $     DEASSIGN SYS$ERROR
939 $   ELSE
940 $     If (Needs_Opt.eqs."Yes")
941 $     THEN
942 $       link temp.obj,temp.opt/opt
943 $     else
944 $       link temp.obj
945 $     endif
946 $     savedstatus = $status
947 $     teststatus = f$extract(9,1,savedstatus)
948 $     DEASSIGN SYS$OUTPUT
949 $     DEASSIGN SYS$ERROR
950 $     if (teststatus.nes."1")
951 $     THEN
952 $       perl_d_bcopy="undef"
953 $     ELSE
954 $       perl_d_bcopy="define"
955 $     ENDIF
956 $   ENDIF
957 $ WRITE_RESULT "d_bcopy is ''perl_d_bcopy'"
958 $!
959 $! Check for mkstemp
960 $!
961 $ OS
962 $ WS "#ifdef __DECC
963 $ WS "#include <stdlib.h>
964 $ WS "#endif
965 $ WS "#include <stdio.h>
966 $ WS "int main()
967 $ WS "{"
968 $ WS "mkstemp(""foo"");
969 $ WS "exit(0);
970 $ WS "}"
971 $ CS
972 $   DEFINE SYS$ERROR _NLA0:
973 $   DEFINE SYS$OUTPUT _NLA0:
974 $   on error then continue
975 $   on warning then continue
976 $   'Checkcc' temp.c
977 $   If (Needs_Opt.eqs."Yes")
978 $   THEN
979 $     link temp.obj,temp.opt/opt
980 $   else
981 $     link temp.obj
982 $   endif
983 $   savedstatus = $status
984 $   teststatus = f$extract(9,1,savedstatus)
985 $   DEASSIGN SYS$OUTPUT
986 $   DEASSIGN SYS$ERROR
987 $   if (teststatus.nes."1")
988 $   THEN
989 $     perl_d_mkstemp="undef"
990 $   ELSE
991 $     perl_d_mkstemp="define"
992 $   ENDIF
993 $ WRITE_RESULT "d_mkstemp is ''perl_d_mkstemp'"
994 $!
995 $! Check for setvbuf
996 $!
997 $ OS
998 $ WS "#ifdef __DECC
999 $ WS "#include <stdlib.h>
1000 $ WS "#endif
1001 $ WS "#include <stdio.h>
1002 $ WS "int main()
1003 $ WS "{"
1004 $ WS "FILE *foo;
1005 $ WS "char Buffer[99];
1006 $ WS "foo = fopen(""foo"", ""r"");
1007 $ WS "setvbuf(foo, Buffer, 0, 0);
1008 $ WS "exit(0);
1009 $ WS "}"
1010 $ CS
1011 $   DEFINE SYS$ERROR _NLA0:
1012 $   DEFINE SYS$OUTPUT _NLA0:
1013 $   on error then continue
1014 $   on warning then continue
1015 $   'Checkcc' temp.c
1016 $   If (Needs_Opt.eqs."Yes")
1017 $   THEN
1018 $     link temp.obj,temp.opt/opt
1019 $   else
1020 $     link temp.obj
1021 $   endif
1022 $   teststatus = f$extract(9,1,$status)
1023 $   DEASSIGN SYS$OUTPUT
1024 $   DEASSIGN SYS$ERROR
1025 $   if (teststatus.nes."1")
1026 $   THEN
1027 $     perl_d_setvbuf="undef"
1028 $   ELSE
1029 $     perl_d_setvbuf="define"
1030 $   ENDIF
1031 $ WRITE_RESULT "d_setvbuf is ''perl_d_setvbuf'"
1032 $!
1033 $! Check for <netinet/in.h>
1034 $!
1035 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1036 $ THEN
1037 $ OS
1038 $ WS "#ifdef __DECC
1039 $ WS "#include <stdlib.h>
1040 $ WS "#endif
1041 $ WS "#include <stdio.h>
1042 $ if ("''Has_Socketshr'".eqs."T")
1043 $ THEN
1044 $  WS "#include <socketshr.h>"
1045 $ else
1046 $  WS "#include <netdb.h>
1047 $ endif
1048 $ WS "#include <netinet/in.h>"
1049 $ WS "int main()
1050 $ WS "{"
1051 $ WS "exit(0);
1052 $ WS "}"
1053 $ CS
1054 $   DEFINE SYS$ERROR _NLA0:
1055 $   DEFINE SYS$OUTPUT _NLA0:
1056 $   on error then continue
1057 $   on warning then continue
1058 $   'Checkcc' temp.c
1059 $   If (Needs_Opt.eqs."Yes")
1060 $   THEN
1061 $     link temp.obj,temp.opt/opt
1062 $   else
1063 $     link temp.obj
1064 $   endif
1065 $   teststatus = f$extract(9,1,$status)
1066 $   DEASSIGN SYS$OUTPUT
1067 $   DEASSIGN SYS$ERROR
1068 $   if (teststatus.nes."1")
1069 $   THEN
1070 $     perl_i_niin="undef"
1071 $   ELSE
1072 $     perl_i_niin="define"
1073 $   ENDIF
1074 $ ELSE
1075 $   perl_i_niin="undef"
1076 $ ENDIF
1077 $ WRITE_RESULT "i_niin is ''perl_i_niin'"
1078 $!
1079 $! Check for endhostent
1080 $!
1081 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1082 $ THEN
1083 $ OS
1084 $ WS "#ifdef __DECC
1085 $ WS "#include <stdlib.h>
1086 $ WS "#endif
1087 $ WS "#include <stdio.h>
1088 $ if ("''Has_Socketshr'".eqs."T")
1089 $ THEN
1090 $  WS "#include <socketshr.h>"
1091 $ else
1092 $  WS "#include <netdb.h>
1093 $ endif
1094 $ WS "int main()
1095 $ WS "{"
1096 $ WS "endhostent();
1097 $ WS "exit(0);
1098
1099 $ CS
1100 $   DEFINE SYS$ERROR _NLA0:
1101 $   DEFINE SYS$OUTPUT _NLA0:
1102 $   on error then continue
1103 $   on warning then continue
1104 $   'Checkcc' temp.c
1105 $   If (Needs_Opt.eqs."Yes")
1106 $   THEN
1107 $     link temp.obj,temp.opt/opt
1108 $   else
1109 $     link temp.obj
1110 $   endif
1111 $   teststatus = f$extract(9,1,$status)
1112 $   DEASSIGN SYS$OUTPUT
1113 $   DEASSIGN SYS$ERROR
1114 $   if (teststatus.nes."1")
1115 $   THEN
1116 $     perl_d_endhent="undef"
1117 $   ELSE
1118 $     perl_d_endhent="define"
1119 $   ENDIF
1120 $ ELSE
1121 $ perl_d_endhent="undef"
1122 $ ENDIF
1123 $ WRITE_RESULT "d_endhent is ''perl_d_endhent'"
1124 $!
1125 $! Check for endnetent
1126 $!
1127 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1128 $ THEN
1129 $ OS
1130 $ WS "#ifdef __DECC
1131 $ WS "#include <stdlib.h>
1132 $ WS "#endif
1133 $ WS "#include <stdio.h>
1134 $ if ("''Has_Socketshr'".eqs."T")
1135 $ THEN
1136 $  WS "#include <socketshr.h>"
1137 $ else
1138 $  WS "#include <netdb.h>
1139 $ endif
1140 $ WS "int main()
1141 $ WS "{"
1142 $ WS "endnetent();
1143 $ WS "exit(0);
1144 $ WS "}"
1145 $ CS
1146 $   DEFINE SYS$ERROR _NLA0:
1147 $   DEFINE SYS$OUTPUT _NLA0:
1148 $   on error then continue
1149 $   on warning then continue
1150 $   'Checkcc' temp.c
1151 $   If (Needs_Opt.eqs."Yes")
1152 $   THEN
1153 $     link temp.obj,temp.opt/opt
1154 $   else
1155 $     link temp.obj
1156 $   endif
1157 $   teststatus = f$extract(9,1,$status)
1158 $   DEASSIGN SYS$OUTPUT
1159 $   DEASSIGN SYS$ERROR
1160 $   if (teststatus.nes."1")
1161 $   THEN
1162 $     perl_d_endnent="undef"
1163 $   ELSE
1164 $     perl_d_endnent="define"
1165 $   ENDIF
1166 $ ELSE
1167 $ perl_d_endnent="undef"
1168 $ ENDIF
1169 $ WRITE_RESULT "d_endnent is ''perl_d_endnent'"
1170 $!
1171 $! Check for endprotoent
1172 $!
1173 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1174 $ THEN
1175 $ OS
1176 $ WS "#ifdef __DECC
1177 $ WS "#include <stdlib.h>
1178 $ WS "#endif
1179 $ WS "#include <stdio.h>
1180 $ if ("''Has_Socketshr'".eqs."T")
1181 $ THEN
1182 $  WS "#include <socketshr.h>"
1183 $ else
1184 $  WS "#include <netdb.h>
1185 $ endif
1186 $ WS "int main()
1187 $ WS "{"
1188 $ WS "endprotoent();
1189 $ WS "exit(0);
1190 $ WS "}"
1191 $ CS
1192 $   DEFINE SYS$ERROR _NLA0:
1193 $   DEFINE SYS$OUTPUT _NLA0:
1194 $   on error then continue
1195 $   on warning then continue
1196 $   'Checkcc' temp.c
1197 $   If (Needs_Opt.eqs."Yes")
1198 $   THEN
1199 $     link temp.obj,temp.opt/opt
1200 $   else
1201 $     link temp.obj
1202 $   endif
1203 $   teststatus = f$extract(9,1,$status)
1204 $   DEASSIGN SYS$OUTPUT
1205 $   DEASSIGN SYS$ERROR
1206 $   if (teststatus.nes."1")
1207 $   THEN
1208 $     perl_d_endpent="undef"
1209 $   ELSE
1210 $     perl_d_endpent="define"
1211 $   ENDIF
1212 $ ELSE
1213 $ perl_d_endpent="undef"
1214 $ ENDIF
1215 $ WRITE_RESULT "d_endpent is ''perl_d_endpent'"
1216 $!
1217 $! Check for endservent
1218 $!
1219 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1220 $ THEN
1221 $ OS
1222 $ WS "#ifdef __DECC
1223 $ WS "#include <stdlib.h>
1224 $ WS "#endif
1225 $ WS "#include <stdio.h>
1226 $ if ("''Has_Socketshr'".eqs."T")
1227 $ THEN
1228 $  WS "#include <socketshr.h>"
1229 $ else
1230 $  WS "#include <netdb.h>
1231 $ endif
1232 $ WS "int main()
1233 $ WS "{"
1234 $ WS "endservent();
1235 $ WS "exit(0);
1236 $ WS "}"
1237 $ CS
1238 $   DEFINE SYS$ERROR _NLA0:
1239 $   DEFINE SYS$OUTPUT _NLA0:
1240 $   on error then continue
1241 $   on warning then continue
1242 $   'Checkcc' temp.c
1243 $   If (Needs_Opt.eqs."Yes")
1244 $   THEN
1245 $     link temp.obj,temp.opt/opt
1246 $   else
1247 $     link temp.obj
1248 $   endif
1249 $   teststatus = f$extract(9,1,$status)
1250 $   DEASSIGN SYS$OUTPUT
1251 $   DEASSIGN SYS$ERROR
1252 $   if (teststatus.nes."1")
1253 $   THEN
1254 $     perl_d_endsent="undef"
1255 $   ELSE
1256 $     perl_d_endsent="define"
1257 $   ENDIF
1258 $ ELSE
1259 $ perl_d_endsent="undef"
1260 $ ENDIF
1261 $ WRITE_RESULT "d_endsent is ''perl_d_endsent'"
1262 $!
1263 $! Check for sethostent
1264 $!
1265 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1266 $ THEN
1267 $ OS
1268 $ WS "#ifdef __DECC
1269 $ WS "#include <stdlib.h>
1270 $ WS "#endif
1271 $ WS "#include <stdio.h>
1272 $ if ("''Has_Socketshr'".eqs."T")
1273 $ THEN
1274 $  WS "#include <socketshr.h>"
1275 $ else
1276 $  WS "#include <netdb.h>
1277 $ endif
1278 $ WS "int main()
1279 $ WS "{"
1280 $ WS "sethostent(1);
1281 $ WS "exit(0);
1282 $ WS "}"
1283 $ CS
1284 $   DEFINE SYS$ERROR _NLA0:
1285 $   DEFINE SYS$OUTPUT _NLA0:
1286 $   on error then continue
1287 $   on warning then continue
1288 $   'Checkcc' temp.c
1289 $   If (Needs_Opt.eqs."Yes")
1290 $   THEN
1291 $     link temp.obj,temp.opt/opt
1292 $   else
1293 $     link temp.obj
1294 $   endif
1295 $   teststatus = f$extract(9,1,$status)
1296 $   DEASSIGN SYS$OUTPUT
1297 $   DEASSIGN SYS$ERROR
1298 $   if (teststatus.nes."1")
1299 $   THEN
1300 $     perl_d_sethent="undef"
1301 $   ELSE
1302 $     perl_d_sethent="define"
1303 $   ENDIF
1304 $ ELSE
1305 $ perl_d_sethent="undef"
1306 $ ENDIF
1307 $ WRITE_RESULT "d_sethent is ''perl_d_sethent'"
1308 $!
1309 $! Check for setnetent
1310 $!
1311 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1312 $ THEN
1313 $ OS
1314 $ WS "#ifdef __DECC
1315 $ WS "#include <stdlib.h>
1316 $ WS "#endif
1317 $ WS "#include <stdio.h>
1318 $ if ("''Has_Socketshr'".eqs."T")
1319 $ THEN
1320 $  WS "#include <socketshr.h>"
1321 $ else
1322 $  WS "#include <netdb.h>
1323 $ endif
1324 $ WS "int main()
1325 $ WS "{"
1326 $ WS "setnetent(1);
1327 $ WS "exit(0);
1328 $ WS "}"
1329 $ CS
1330 $   DEFINE SYS$ERROR _NLA0:
1331 $   DEFINE SYS$OUTPUT _NLA0:
1332 $   on error then continue
1333 $   on warning then continue
1334 $   'Checkcc' temp.c
1335 $   If (Needs_Opt.eqs."Yes")
1336 $   THEN
1337 $     link temp.obj,temp.opt/opt
1338 $   else
1339 $     link temp.obj
1340 $   endif
1341 $   teststatus = f$extract(9,1,$status)
1342 $   DEASSIGN SYS$OUTPUT
1343 $   DEASSIGN SYS$ERROR
1344 $   if (teststatus.nes."1")
1345 $   THEN
1346 $     perl_d_setnent="undef"
1347 $   ELSE
1348 $     perl_d_setnent="define"
1349 $   ENDIF
1350 $ ELSE
1351 $ perl_d_setnent="undef"
1352 $ ENDIF
1353 $ WRITE_RESULT "d_setnent is ''perl_d_setnent'"
1354 $!
1355 $! Check for setprotoent
1356 $!
1357 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1358 $ THEN
1359 $ OS
1360 $ WS "#ifdef __DECC
1361 $ WS "#include <stdlib.h>
1362 $ WS "#endif
1363 $ WS "#include <stdio.h>
1364 $ if ("''Has_Socketshr'".eqs."T")
1365 $ THEN
1366 $  WS "#include <socketshr.h>"
1367 $ else
1368 $  WS "#include <netdb.h>
1369 $ endif
1370 $ WS "int main()
1371 $ WS "{"
1372 $ WS "setprotoent(1);
1373 $ WS "exit(0);
1374 $ WS "}"
1375 $ CS
1376 $   DEFINE SYS$ERROR _NLA0:
1377 $   DEFINE SYS$OUTPUT _NLA0:
1378 $   on error then continue
1379 $   on warning then continue
1380 $   'Checkcc' temp.c
1381 $   If (Needs_Opt.eqs."Yes")
1382 $   THEN
1383 $     link temp.obj,temp.opt/opt
1384 $   else
1385 $     link temp.obj
1386 $   endif
1387 $   teststatus = f$extract(9,1,$status)
1388 $   DEASSIGN SYS$OUTPUT
1389 $   DEASSIGN SYS$ERROR
1390 $   if (teststatus.nes."1")
1391 $   THEN
1392 $     perl_d_setpent="undef"
1393 $   ELSE
1394 $     perl_d_setpent="define"
1395 $   ENDIF
1396 $ ELSE
1397 $ perl_d_setpent="undef"
1398 $ ENDIF
1399 $ WRITE_RESULT "d_setpent is ''perl_d_setpent'"
1400 $!
1401 $! Check for setservent
1402 $!
1403 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1404 $ THEN
1405 $ OS
1406 $ WS "#ifdef __DECC
1407 $ WS "#include <stdlib.h>
1408 $ WS "#endif
1409 $ WS "#include <stdio.h>
1410 $ if ("''Has_Socketshr'".eqs."T")
1411 $ THEN
1412 $  WS "#include <socketshr.h>"
1413 $ else
1414 $  WS "#include <netdb.h>
1415 $ endif
1416 $ WS "int main()
1417 $ WS "{"
1418 $ WS "setservent(1);
1419 $ WS "exit(0);
1420 $ WS "}"
1421 $ CS
1422 $   DEFINE SYS$ERROR _NLA0:
1423 $   DEFINE SYS$OUTPUT _NLA0:
1424 $   on error then continue
1425 $   on warning then continue
1426 $   'Checkcc' temp.c
1427 $   If (Needs_Opt.eqs."Yes")
1428 $   THEN
1429 $     link temp.obj,temp.opt/opt
1430 $   else
1431 $     link temp.obj
1432 $   endif
1433 $   teststatus = f$extract(9,1,$status)
1434 $   DEASSIGN SYS$OUTPUT
1435 $   DEASSIGN SYS$ERROR
1436 $   if (teststatus.nes."1")
1437 $   THEN
1438 $     perl_d_setsent="undef"
1439 $   ELSE
1440 $     perl_d_setsent="define"
1441 $   ENDIF
1442 $ ELSE
1443 $ perl_d_setsent="undef"
1444 $ ENDIF
1445 $ WRITE_RESULT "d_setsent is ''perl_d_setsent'"
1446 $!
1447 $! Check for gethostent
1448 $!
1449 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1450 $ THEN
1451 $ OS
1452 $ WS "#ifdef __DECC
1453 $ WS "#include <stdlib.h>
1454 $ WS "#endif
1455 $ WS "#include <stdio.h>
1456 $ if ("''Has_Socketshr'".eqs."T")
1457 $ THEN
1458 $  WS "#include <socketshr.h>"
1459 $ else
1460 $  WS "#include <netdb.h>
1461 $ endif
1462 $ WS "int main()
1463 $ WS "{"
1464 $ WS "gethostent();
1465 $ WS "exit(0);
1466 $ WS "}"
1467 $ CS
1468 $   DEFINE SYS$ERROR _NLA0:
1469 $   DEFINE SYS$OUTPUT _NLA0:
1470 $   on error then continue
1471 $   on warning then continue
1472 $   'Checkcc' temp.c
1473 $   If (Needs_Opt.eqs."Yes")
1474 $   THEN
1475 $     link temp.obj,temp.opt/opt
1476 $   else
1477 $     link temp.obj
1478 $   endif
1479 $   teststatus = f$extract(9,1,$status)
1480 $   DEASSIGN SYS$OUTPUT
1481 $   DEASSIGN SYS$ERROR
1482 $   if (teststatus.nes."1")
1483 $   THEN
1484 $     perl_d_gethent="undef"
1485 $   ELSE
1486 $     perl_d_gethent="define"
1487 $   ENDIF
1488 $ ELSE
1489 $ perl_d_gethent="undef"
1490 $ ENDIF
1491 $ WRITE_RESULT "d_gethent is ''perl_d_gethent'"
1492 $!
1493 $! Check for getnetent
1494 $!
1495 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1496 $ THEN
1497 $ OS
1498 $ WS "#ifdef __DECC
1499 $ WS "#include <stdlib.h>
1500 $ WS "#endif
1501 $ WS "#include <stdio.h>
1502 $ if ("''Has_Socketshr'".eqs."T")
1503 $ THEN
1504 $  WS "#include <socketshr.h>"
1505 $ else
1506 $  WS "#include <netdb.h>
1507 $ endif
1508 $ WS "int main()
1509 $ WS "{"
1510 $ WS "getnetent();
1511 $ WS "exit(0);
1512 $ WS "}"
1513 $ CS
1514 $   DEFINE SYS$ERROR _NLA0:
1515 $   DEFINE SYS$OUTPUT _NLA0:
1516 $   on error then continue
1517 $   on warning then continue
1518 $   'Checkcc' temp.c
1519 $   If (Needs_Opt.eqs."Yes")
1520 $   THEN
1521 $     link temp.obj,temp.opt/opt
1522 $   else
1523 $     link temp.obj
1524 $   endif
1525 $   teststatus = f$extract(9,1,$status)
1526 $   DEASSIGN SYS$OUTPUT
1527 $   DEASSIGN SYS$ERROR
1528 $   if (teststatus.nes."1")
1529 $   THEN
1530 $     perl_d_getnent="undef"
1531 $   ELSE
1532 $     perl_d_getnent="define"
1533 $   ENDIF
1534 $ ELSE
1535 $ perl_d_getnent="undef"
1536 $ ENDIF
1537 $ WRITE_RESULT "d_getnent is ''perl_d_getnent'"
1538 $!
1539 $! Check for getprotoent
1540 $!
1541 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1542 $ THEN
1543 $ OS
1544 $ WS "#ifdef __DECC
1545 $ WS "#include <stdlib.h>
1546 $ WS "#endif
1547 $ WS "#include <stdio.h>
1548 $ if ("''Has_Socketshr'".eqs."T")
1549 $ THEN
1550 $  WS "#include <socketshr.h>"
1551 $ else
1552 $  WS "#include <netdb.h>
1553 $ endif
1554 $ WS "int main()
1555 $ WS "{"
1556 $ WS "getprotoent();
1557 $ WS "exit(0);
1558 $ WS "}"
1559 $ CS
1560 $   DEFINE SYS$ERROR _NLA0:
1561 $   DEFINE SYS$OUTPUT _NLA0:
1562 $   on error then continue
1563 $   on warning then continue
1564 $   'Checkcc' temp.c
1565 $   If (Needs_Opt.eqs."Yes")
1566 $   THEN
1567 $     link temp.obj,temp.opt/opt
1568 $   else
1569 $     link temp.obj
1570 $   endif
1571 $   teststatus = f$extract(9,1,$status)
1572 $   DEASSIGN SYS$OUTPUT
1573 $   DEASSIGN SYS$ERROR
1574 $   if (teststatus.nes."1")
1575 $   THEN
1576 $     perl_d_getpent="undef"
1577 $   ELSE
1578 $     perl_d_getpent="define"
1579 $   ENDIF
1580 $ ELSE
1581 $ perl_d_getpent="undef"
1582 $ ENDIF
1583 $ WRITE_RESULT "d_getpent is ''perl_d_getpent'"
1584 $!
1585 $! Check for getservent
1586 $!
1587 $ if ("''Has_Dec_C_Sockets'".eqs."T").or.("''Has_Socketshr'".eqs."T")
1588 $ THEN
1589 $ OS
1590 $ WS "#ifdef __DECC
1591 $ WS "#include <stdlib.h>
1592 $ WS "#endif
1593 $ WS "#include <stdio.h>
1594 $ if ("''Has_Socketshr'".eqs."T")
1595 $ THEN
1596 $  WS "#include <socketshr.h>"
1597 $ else
1598 $  WS "#include <netdb.h>
1599 $ endif
1600 $ WS "int main()
1601 $ WS "{"
1602 $ WS "getservent();
1603 $ WS "exit(0);
1604 $ WS "}"
1605 $ CS
1606 $   DEFINE SYS$ERROR _NLA0:
1607 $   DEFINE SYS$OUTPUT _NLA0:
1608 $   on error then continue
1609 $   on warning then continue
1610 $   'Checkcc' temp.c
1611 $   If (Needs_Opt.eqs."Yes")
1612 $   THEN
1613 $     link temp.obj,temp.opt/opt
1614 $   else
1615 $     link temp.obj
1616 $   endif
1617 $   teststatus = f$extract(9,1,$status)
1618 $   DEASSIGN SYS$OUTPUT
1619 $   DEASSIGN SYS$ERROR
1620 $   if (teststatus.nes."1")
1621 $   THEN
1622 $     perl_d_getsent="undef"
1623 $   ELSE
1624 $     perl_d_getsent="define"
1625 $   ENDIF
1626 $ ELSE
1627 $ perl_d_getsent="undef"
1628 $ ENDIF
1629 $ WRITE_RESULT "d_getsent is ''perl_d_getsent'"
1630 $!
1631 $! Check for pthread_yield
1632 $!
1633 $ if ("''use_threads'".eqs."T")
1634 $ THEN
1635 $ OS
1636 $ WS "#ifdef __DECC
1637 $ WS "#include <stdlib.h>
1638 $ WS "#endif
1639 $ WS "#include <pthread.h>
1640 $ WS "#include <stdio.h>
1641 $ WS "int main()
1642 $ WS "{"
1643 $ WS "pthread_yield();
1644 $ WS "exit(0);
1645 $ WS "}"
1646 $ CS
1647 $   DEFINE SYS$ERROR _NLA0:
1648 $   DEFINE SYS$OUTPUT _NLA0:
1649 $   on error then continue
1650 $   on warning then continue
1651 $   'Checkcc' temp.c
1652 $   teststatus = f$extract(9,1,$status)
1653 $   DEASSIGN SYS$OUTPUT
1654 $   DEASSIGN SYS$ERROR
1655 $   if (teststatus.nes."1")
1656 $   THEN
1657 $     perl_d_pthread_yield="undef"
1658 $   ELSE
1659 $     perl_d_pthread_yield="define"
1660 $   ENDIF
1661 $ ELSE
1662 $   perl_d_pthread_yield="undef"
1663 $ ENDIF
1664 $ WRITE_RESULT "d_pthread_yield is ''perl_d_pthread_yield'"
1665 $!
1666 $! Check for sched_yield
1667 $!
1668 $ if ("''use_threads'".eqs."T")
1669 $ THEN
1670 $ OS
1671 $ WS "#ifdef __DECC
1672 $ WS "#include <stdlib.h>
1673 $ WS "#endif
1674 $ WS "#include <pthread.h>
1675 $ WS "#include <stdio.h>
1676 $ WS "int main()
1677 $ WS "{"
1678 $ WS "sched_yield();
1679 $ WS "exit(0);
1680 $ WS "}"
1681 $ CS
1682 $   DEFINE SYS$ERROR _NLA0:
1683 $   DEFINE SYS$OUTPUT _NLA0:
1684 $   on error then continue
1685 $   on warning then continue
1686 $   'Checkcc' temp.c
1687 $   teststatus = f$extract(9,1,$status)
1688 $   DEASSIGN SYS$OUTPUT
1689 $   DEASSIGN SYS$ERROR
1690 $   if (teststatus.nes."1")
1691 $   THEN
1692 $     perl_d_sched_yield="undef"
1693 $   ELSE
1694 $     perl_d_sched_yield="define"
1695 $   ENDIF
1696 $ ELSE
1697 $   perl_d_sched_yield="undef"
1698 $ ENDIF
1699 $ WRITE_RESULT "d_sched_yield is ''perl_d_sched_yield'"
1700 $!
1701 $! Check for generic pointer size
1702 $!
1703 $ OS
1704 $ WS "#ifdef __DECC
1705 $ WS "#include <stdlib.h>
1706 $ WS "#endif
1707 $ WS "#include <stdio.h>
1708 $ WS "int main()
1709 $ WS "{"
1710 $ WS "int foo;
1711 $ WS "foo = sizeof(char *);
1712 $ WS "printf(""%d\n"", foo);
1713 $ WS "exit(0);
1714 $ WS "}"
1715 $ CS
1716 $! copy temp.c sys$output
1717 $!
1718 $   DEFINE SYS$ERROR _NLA0:
1719 $   DEFINE SYS$OUTPUT _NLA0:
1720 $   ON ERROR THEN CONTINUE
1721 $   ON WARNING THEN CONTINUE
1722 $   'Checkcc' temp.c
1723 $   If (Needs_Opt.eqs."Yes")
1724 $   THEN
1725 $     link temp.obj,temp.opt/opt
1726 $   else
1727 $     link temp.obj
1728 $   endif
1729 $   OPEN/WRITE TEMPOUT [-.uu]tempout.lis
1730 $   DEASSIGN SYS$OUTPUT
1731 $   DEASSIGN SYS$ERROR
1732 $   DEFINE SYS$ERROR TEMPOUT
1733 $   DEFINE SYS$OUTPUT TEMPOUT
1734 $   mcr []temp
1735 $   CLOSE TEMPOUT
1736 $   DEASSIGN SYS$OUTPUT
1737 $   DEASSIGN SYS$ERROR
1738 $   OPEN/READ TEMPOUT [-.uu]tempout.lis
1739 $   READ TEMPOUT line
1740 $   CLOSE TEMPOUT
1741
1742 $ perl_ptrsize=line
1743 $ WRITE_RESULT "ptrsize is ''perl_ptrsize'"
1744 $!
1745 $ set nover
1746 $! Done with compiler checks. Clean up.
1747 $ if f$search("temp.c").nes."" then DELETE/NOLOG temp.c;*
1748 $ if f$search("temp.obj").nes."" then DELETE/NOLOG temp.obj;*
1749 $ if f$search("temp.exe").nes."" then DELETE/NOLOG temp.exe;*
1750 $ if f$search("temp.opt").nes."" then DELETE/NOLOG Temp.opt;*
1751 $!
1752 $!
1753 $! Some that are compiler or VMS version sensitive
1754 $!
1755 $! Gnu C stuff
1756 $ IF "''Using_Gnu_C'".EQS."Yes"
1757 $ THEN
1758 $   perl_d_attribut="define"
1759 $   perl_vms_cc_type="gcc"
1760 $ ELSE
1761 $   perl_d_attribut="undef"
1762 $ ENDIF
1763 $
1764 $! Dec C >= 5.2 and VMS ver >= 7.0
1765 $ IF ("''Using_Dec_C'".EQS."Yes").AND.(F$INTEGER(Dec_C_Version).GE.50200000).AND.("''VMS_VER'".GES."7.0")
1766 $ THEN
1767 $ perl_d_bcmp="define"
1768 $ perl_d_gettimeod="define"
1769 $ perl_d_uname="define"
1770 $ perl_d_sigaction="define"
1771 $ perl_d_truncate="define"
1772 $ perl_d_wait4="define"
1773 $ perl_d_index="define"
1774 $ perl_pidtype="pid_t"
1775 $ perl_sig_name="ZERO HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM ABRT USR1 USR2 SPARE18 SPARE19 CHLD CONT STOP TSTP TTIN TTOU DEBUG SPARE27 SPARE28 SPARE29 SPARE30 SPARE31 SPARE32 RTMIN RTMAX"",0"
1776 $ psnwc1="""ZERO"",""HUP"",""INT"",""QUIT"",""ILL"",""TRAP"",""IOT"",""EMT"",""FPE"",""KILL"",""BUS"",""SEGV"",""SYS"","
1777 $ psnwc2="""PIPE"",""ALRM"",""TERM"",""ABRT"",""USR1"",""USR2"",""SPARE18"",""SPARE19"",""CHLD"",""CONT"",""STOP"",""TSTP"","
1778 $ psnwc3="""TTIN"",""TTOU"",""DEBUG"",""SPARE27"",""SPARE28"",""SPARE29"",""SPARE30"",""SPARE31"",""SPARE32"",""RTMIN"",""RTMAX"",0"
1779 $perl_sig_name_with_commas = psnwc1 + psnwc2 + psnwc3
1780 $ perl_sig_num="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,6,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,64,0"
1781 $ perl_sig_num_with_commas=perl_sig_num
1782 $ perl_uidtype="uid_t"
1783 $ perl_d_pathconf="define"
1784 $ perl_d_fpathconf="define"
1785 $ perl_d_sysconf="define"
1786 $ perl_d_sigsetjmp="define"
1787 $ ELSE
1788 $ perl_pidtype="unsigned int"
1789 $ perl_d_gettimeod="undef"
1790 $ perl_d_bcmp="undef"
1791 $ perl_d_uname="undef"
1792 $ perl_d_sigaction="undef"
1793 $ perl_d_truncate="undef"
1794 $ perl_d_wait4="undef"
1795 $ perl_d_index="undef"
1796 $ perl_sig_name="ZERO HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM ABRT USR1 USR2"",0"
1797 $ psnwc1="""ZERO"",""HUP"",""INT"",""QUIT"",""ILL"",""TRAP"",""IOT"",""EMT"",""FPE"",""KILL"",""BUS"",""SEGV"",""SYS"","
1798 $ psnwc2="""PIPE"",""ALRM"",""TERM"",""ABRT"",""USR1"",""USR2"",0"
1799 $ perl_sig_name_with_commas = psnwc1 + psnwc2
1800 $ perl_sig_num="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,6,16,17,0"
1801 $ perl_sig_num_with_commas=perl_sig_num
1802 $ perl_uidtype="unsigned int"
1803 $ perl_d_pathconf="undef"
1804 $ perl_d_fpathconf="undef"
1805 $ perl_d_sysconf="undef"
1806 $ perl_d_sigsetjmp="undef"
1807 $ ENDIF
1808 $!
1809 $! Dec C alone
1810 $ IF ("''Using_Dec_C'".EQS."Yes")
1811 $ THEN
1812 $ perl_d_mbstowcs="define"
1813 $ perl_d_mbtowc="define"
1814 $ perl_d_stdiobase="define"
1815 $ perl_d_stdio_ptr_lval="define"
1816 $ perl_d_stdio_cnt_lval="define"
1817 $ perl_d_stdstdio="define"
1818 $ perl_d_wcstombs="define"
1819 $ perl_d_mblen="define"
1820 $ perl_d_mktime="define"
1821 $ perl_d_strcoll="define"
1822 $ perl_d_strxfrm="define"
1823 $ perl_d_wctomb="define"
1824 $ perl_i_locale="define"
1825 $ perl_d_locconv="define"
1826 $ perl_d_setlocale="define"
1827 $ perl_vms_cc_type="decc"
1828 $ ELSE
1829 $ perl_d_mbstowcs="undef"
1830 $ perl_d_mbtowc="undef"
1831 $ perl_d_stdiobase="undef"
1832 $ perl_d_stdio_ptr_lval="undef"
1833 $ perl_d_stdio_cnt_lval="undef"
1834 $ perl_d_stdstdio="undef"
1835 $ perl_d_wcstombs="undef"
1836 $ perl_d_mblen="undef"
1837 $ perl_d_mktime="undef"
1838 $ perl_d_strcoll="undef"
1839 $ perl_d_strxfrm="undef"
1840 $ perl_d_wctomb="undef"
1841 $ perl_i_locale="undef"
1842 $ perl_d_locconv="undef"
1843 $ perl_d_setlocale="undef"
1844 $ ENDIF
1845 $!
1846 $! Vax C stuff
1847 $ if ("''Using_Vax_C'".EQS."Yes")
1848 $ THEN
1849 $ perl_vms_cc_type="vaxc"
1850 $ ENDIF
1851 $!
1852 $!
1853 $! Sockets?
1854 $ if ("''Has_Socketshr'".EQS."T").OR.("''Has_Dec_C_Sockets'".EQS."T")
1855 $ THEN
1856 $ perl_d_vms_do_sockets="define"
1857 $ perl_d_htonl="define"
1858 $ perl_d_socket="define"
1859 $ perl_d_select="define"
1860 $ perl_netdb_host_type="char *"
1861 $ perl_netdb_hlen_type="int"
1862 $ perl_netdb_name_type="char *"
1863 $ perl_netdb_net_type="long"
1864 $ perl_d_gethbyaddr="define"
1865 $ perl_d_gethbyname="define"
1866 $ perl_d_getnbyaddr="define"
1867 $ perl_d_getnbyname="define"
1868 $ perl_d_getpbynumber="define"
1869 $ perl_d_getpbyname="define"
1870 $ perl_d_getsbyport="define"
1871 $ perl_d_getsbyname="define"
1872 $ perl_d_gethostprotos="define"
1873 $ perl_d_getnetprotos="define"
1874 $ perl_d_getprotoprotos="define"
1875 $ perl_d_getservprotos="define"
1876 $ ELSE
1877 $ perl_d_vms_do_sockets="undef"
1878 $ perl_d_htonl="undef"
1879 $ perl_d_socket="undef"
1880 $ perl_d_select="undef"
1881 $ perl_netdb_host_type="char *"
1882 $ perl_netdb_hlen_type="int"
1883 $ perl_netdb_name_type="char *"
1884 $ perl_netdb_net_type="long"
1885 $ perl_d_gethbyaddr="undef"
1886 $ perl_d_gethbyname="undef"
1887 $ perl_d_getnbyaddr="undef"
1888 $ perl_d_getnbyname="undef"
1889 $ perl_d_getpbynumber="undef"
1890 $ perl_d_getpbyname="undef"
1891 $ perl_d_getsbyport="undef"
1892 $ perl_d_getsbyname="undef"
1893 $ perl_d_gethostprotos="undef"
1894 $ perl_d_getnetprotos="undef"
1895 $ perl_d_getprotoprotos="undef"
1896 $ perl_d_getservprotos="undef"
1897 $ ENDIF
1898 $! Threads
1899 $ if ("''use_threads'".eqs."T")
1900 $ THEN
1901 $   perl_usethreads="define"
1902 $   perl_d_pthreads_created_joinable="define"
1903 $   if ("''VMS_VER'".ges."7.0")
1904 $   THEN
1905 $     perl_d_oldpthreads="undef"
1906 $   ELSE
1907 $     perl_d_oldpthreads="define"
1908 $   ENDIF
1909 $ ELSE
1910 $   perl_d_oldpthreads="undef"
1911 $   perl_usethreads="undef"
1912 $   
1913 $   perl_d_pthreads_created_joinable="undef"
1914 $ ENDIF
1915 $! 
1916 $! 
1917 $! Finally the composite ones. All config
1918 $ perl_installarchlib="''perl_prefix':[lib.''perl_arch'.''localperlver']"
1919 $ perl_installsitearch="''perl_prefix':[lib.site_perl.''perl_arch']"
1920 $ perl_myhostname="''myhostname'"
1921 $ perl_mydomain="''mydomain'"
1922 $ perl_perladmin="''perladmin'"
1923 $ perl_cf_email="''cf_email'"
1924 $ perl_myuname:="VMS ''myname' ''f$edit(perl_osvers, "TRIM")' ''f$edit(hwname, "TRIM")'"
1925 $ perl_archlibexp="''perl_prefix':[lib.''perl_arch'.''localperlver']"
1926 $ perl_archlib="''perl_prefix':[lib.''perl_arch'.''lovalperlver']"
1927 $ perl_oldarchlibexp="''perl_prefix':[lib.''perl_arch']"
1928 $ perl_oldarchlib="''perl_prefix':[lib.''perl_arch']"
1929 $ perl_sitearchexp="''perl_prefix':[lib.site_perl.''perl_arch']"
1930 $ perl_sitearch="''perl_prefix':[lib.site_perl.''perl_arch']"
1931 $ if "''Using_Dec_C'" .eqs. "Yes"
1932 $ THEN
1933 $ perl_ccflags="/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=''perl_obj_ext'/NoList''cc_flags'"
1934 $ ELSE
1935 $   IF "''Using_Vax_C'" .eqs. "Yes"
1936 $   THEN
1937 $     perl_ccflags="/Include=[]/Obj=''perl_obj_ext'/NoList''cc_flags'"
1938 $   ENDIF
1939 $ ENDIF
1940 $!
1941 $! Finally clean off any leading zeros from the patchlevel or subversion
1942 $ perl_patchlevel = perl_patchlevel + 0
1943 $ perl_subversion = perl_subversion + 0
1944 $!
1945 $! Okay, we've got everything configured. Now go write out a config.sh.
1946 $ open/write CONFIGSH [-]config.sh
1947 $ WC := "write CONFIGSH"
1948 $!
1949 $ WC "# This file generated by Configure.COM on a VMS system."
1950 $ WC "# Time: " + perl_cf_time
1951 $ WC ""
1952 $ WC "package='" + perl_package + "'"
1953 $ WC "CONFIG='" + perl_config + "'"
1954 $ WC "cf_time='" + perl_cf_time + "'"
1955 $ WC "cf_by='" + perl_cf_by+ "'"
1956 $ WC "cpp_stuff='" + perl_cpp_stuff + "'"
1957 $ WC "ccdlflags='" + perl_ccdlflags + "'"
1958 $ WC "cccdlflags='" + perl_cccdlflags + "'"
1959 $ WC "mab='" + perl_mab + "'"
1960 $ WC "libpth='" + perl_libpth + "'"
1961 $ WC "ld='" + perl_ld + "'"
1962 $ WC "lddlflags='" + perl_lddlflags + "'"
1963 $ WC "ranlib='" + perl_ranlib + "'"
1964 $ WC "ar='" + perl_ar + "'"
1965 $ WC "eunicefix='" + perl_eunicefix + "'"
1966 $ WC "hint='" + perl_hint +"'"
1967 $ WC "hintfile='" + perl_hintfile + "'"
1968 $ WC "shrplib='" + perl_shrplib + "'"
1969 $ WC "usemymalloc='" + perl_usemymalloc + "'"
1970 $ WC "usevfork='" + perl_usevfork + "'"
1971 $ WC "useposix='false'"
1972 $ WC "spitshell='write sys$output '"
1973 $ WC "dlsrc='dl_vms.c'"
1974 $ WC "binexp='" + perl_binexp + "'"
1975 $ WC "man1ext='" + perl_man1ext + "'"
1976 $ WC "man3ext='" + perl_man3ext + "'"
1977 $ WC "arch='" + perl_arch + "'"
1978 $ WC "archname='" + perl_archname + "'"
1979 $ WC "osvers='" + perl_osvers + "'"
1980 $ WC "prefix='" + perl_prefix + "'"
1981 $ WC "builddir='" + perl_builddir + "'"
1982 $ WC "installbin='" + perl_installbin + "'"
1983 $ WC "installscript='" + perl_installscript + "'"
1984 $ WC "installman1dir='" + perl_installman1dir + "'"
1985 $ WC "installman3dir='" + perl_installman3dir + "'"
1986 $ WC "installprivlib='" + perl_installprivlib + "'"
1987 $ WC "installarchlib='" + perl_installarchlib + "'"
1988 $ WC "installsitelib='" + perl_installsitelib + "'"
1989 $ WC "installsitearch='" + perl_installsitearch + "'"
1990 $ WC "path_sep='" + perl_path_sep + "'"
1991 $ WC "vms_cc_type='" + perl_vms_cc_type + "'"
1992 $ WC "d_attribut='" + perl_d_attribut + "'"
1993 $ WC "cc='" + perl_cc + "'"
1994 $ WC "ccflags='" + perl_ccflags + "'"
1995 $ WC "d_vms_do_sockets='" + perl_d_vms_do_sockets + "'"
1996 $ WC "d_socket='" + perl_d_socket + "'"
1997 $ WC "d_sockpair='" + perl_d_sockpair + "'"
1998 $ WC "d_gethent='" + perl_d_gethent + "'"
1999 $ WC "d_getsent='" + perl_d_getsent + "'"
2000 $ WC "d_select='" + perl_d_select + "'"
2001 $ WC "i_niin='" + perl_i_niin + "'"
2002 $ WC "i_neterrno='" + perl_i_neterrno + "'"
2003 $ WC "d_stdstdio='" + perl_d_stdstdio + "'"
2004 $ WC "d_stdio_ptr_lval='" + perl_d_stdio_ptr_lval + "'"
2005 $ WC "d_stdio_cnt_lval='" + perl_d_stdio_cnt_lval + "'"
2006 $ WC "d_stdiobase='" + perl_d_stdiobase + "'"
2007 $ WC "d_locconv='" + perl_d_locconv + "'"
2008 $ WC "d_setlocale='" + perl_d_setlocale + "'"
2009 $ WC "i_locale='" + perl_i_locale + "'"
2010 $ WC "d_mbstowcs='" + perl_d_mbstowcs + "'"
2011 $ WC "d_mbtowc='" + perl_d_mbtowc + "'"
2012 $ WC "d_wcstombs='" + perl_d_wcstombs + "'"
2013 $ WC "d_wctomb='" + perl_d_wctomb + "'"
2014 $ WC "d_mblen='" + perl_d_mblen + "'"
2015 $ WC "d_mktime='" + perl_d_mktime + "'"
2016 $ WC "d_strcoll='" + perl_d_strcoll + "'"
2017 $ WC "d_strxfrm='" + perl_d_strxfrm  + "'"
2018 $ WC "ldflags='" + perl_ldflags + "'"
2019 $ WC "dlobj='" + perl_dlobj + "'"
2020 $ WC "obj_ext='" + perl_obj_ext + "'"
2021 $ WC "so='" + perl_so + "'"
2022 $ WC "dlext='" + perl_dlext + "'"
2023 $ WC "exe_ext='" + perl_exe_ext + "'"
2024 $ WC "lib_ext='" + perl_lib_ext + "'"
2025 $ WC "myhostname='" + perl_myhostname + "'"
2026 $ WC "mydomain='" + perl_mydomain + "'"
2027 $ WC "perladmin='" + perl_perladmin + "'"
2028 $ WC "cf_email='" + perl_cf_email + "'"
2029 $ WC "myuname='" + perl_myuname + "'"
2030 $ WC "alignbytes='" + perl_alignbytes + "'"
2031 $ WC "osname='" + perl_osname + "'"
2032 $ WC "d_archlib='" + perl_d_archlib + "'"
2033 $ WC "archlibexp='" + perl_archlibexp + "'"
2034 $ WC "archlib='" + perl_archlib + "'"
2035 $ WC "archname='" + perl_archname + "'"
2036 $ WC "d_bincompat3='" + perl_d_bincompat3 + "'"
2037 $ WC "cppstdin='" + perl_cppstdin + "'"
2038 $ WC "cppminus='" + perl_cppminus + "'"
2039 $ WC "d_bcmp='" + perl_d_bcmp + "'"
2040 $ WC "d_bcopy='" + perl_d_bcopy + "'"
2041 $ WC "d_bzero='" + perl_d_bzero + "'"
2042 $ WC "d_castneg='" + perl_d_castneg + "'"
2043 $ WC "castflags='" + perl_castflags + "'"
2044 $ WC "d_chsize='" + perl_d_chsize + "'"
2045 $ WC "d_const='" + perl_d_const + "'"
2046 $ WC "d_crypt='" + perl_d_crypt + "'"
2047 $ WC "byteorder='" + perl_byteorder + "'"
2048 $ WC "full_csh='" + perl_full_csh + "'"
2049 $ WC "d_csh='" + perl_d_csh + "'"
2050 $ WC "d_dup2='" + perl_d_dup2 + "'"
2051 $ WC "d_fchmod='" + perl_d_fchmod + "'"
2052 $ WC "d_fchown='" + perl_d_fchown + "'"
2053 $ WC "d_fcntl='" + perl_d_fcntl + "'"
2054 $ WC "d_fgetpos='" + perl_d_fgetpos + "'"
2055 $ WC "d_flexfnam='" + perl_d_flexfnam + "'"
2056 $ WC "d_flock='" + perl_d_flock + "'"
2057 $ WC "d_fsetpos='" + perl_d_fsetpos + "'"
2058 $ WC "d_gettimeod='" + perl_d_gettimeod + "'"
2059 $ WC "d_getgrps='" + perl_d_getgrps + "'"
2060 $ WC "d_setgrps='" + perl_d_setgrps + "'"
2061 $ WC "d_uname='" + perl_d_uname + "'"
2062 $ WC "d_getprior='" + perl_d_getprior + "'"
2063 $ WC "d_killpg='" + perl_d_killpg + "'"
2064 $ WC "d_link='" + perl_d_link + "'"
2065 $ WC "d_lstat='" + perl_d_lstat + "'"
2066 $ WC "d_lockf='" + perl_d_lockf + "'"
2067 $ WC "d_memcmp='" + perl_d_memcmp + "'"
2068 $ WC "d_memcpy='" + perl_d_memcpy + "'"
2069 $ WC "d_memmove='" + perl_d_memmove + "'"
2070 $ WC "d_memset='" + perl_d_memset + "'"
2071 $ WC "d_mkdir='" + perl_d_mkdir + "'"
2072 $ WC "d_msg='" + perl_d_msg + "'"
2073 $ WC "d_open3='" + perl_d_open3 + "'"
2074 $ WC "d_poll='" + perl_d_poll + "'"
2075 $ WC "d_readdir='" + perl_d_readdir + "'"
2076 $ WC "d_seekdir='" + perl_d_seekdir + "'"
2077 $ WC "d_telldir='" + perl_d_telldir + "'"
2078 $ WC "d_rewinddir='" + perl_d_rewinddir + "'"
2079 $ WC "d_rename='" + perl_d_rename + "'"
2080 $ WC "d_rmdir='" + perl_d_rmdir + "'"
2081 $ WC "d_sem='" + perl_d_sem + "'"
2082 $ WC "d_setegid='" + perl_d_setegid + "'"
2083 $ WC "d_seteuid='" + perl_d_seteuid + "'"
2084 $ WC "d_setprior='" + perl_d_setprior + "'"
2085 $ WC "d_setregid='" + perl_d_setregid + "'"
2086 $ WC "d_setresgid='" + perl_d_setresgid + "'"
2087 $ WC "d_setreuid='" + perl_d_setreuid + "'"
2088 $ WC "d_setresuid='" + perl_d_setresuid + "'"
2089 $ WC "d_setrgid='" + perl_d_setrgid + "'"
2090 $ WC "d_setruid='" + perl_d_setruid + "'"
2091 $ WC "d_setsid='" + perl_d_setsid + "'"
2092 $ WC "d_shm='" + perl_d_shm + "'"
2093 $ WC "d_shmatprototype='" + perl_d_shmatprototype + "'"
2094 $ WC "d_sigaction='" + perl_d_sigaction + "'"
2095 $ WC "d_statblks='" + perl_d_statblks + "'"
2096 $ WC "stdio_ptr='" + perl_stdio_ptr + "'"
2097 $ WC "stdio_cnt='" + perl_stdio_cnt + "'"
2098 $ WC "stdio_base='" + perl_stdio_base + "'"
2099 $ WC "stdio_bufsiz='" + perl_stdio_bufsiz + "'"
2100 $ WC "d_strctcpy='" + perl_d_strctcpy + "'"
2101 $ WC "d_strerror='" + perl_d_strerror + "'"
2102 $ WC "d_syserrlst='" + perl_d_syserrlst + "'"
2103 $ WC "d_strerrm='" + perl_d_strerrm + "'"
2104 $ WC "d_symlink='" + perl_d_symlink + "'"
2105 $ WC "d_syscall='" + perl_d_syscall + "'"
2106 $ WC "d_system='" + perl_d_system + "'"
2107 $ WC "timetype='" + perl_timetype + "'"
2108 $ WC "d_truncate='" + perl_d_truncate + "'"
2109 $ WC "d_vfork='" + perl_d_vfork + "'"
2110 $ WC "signal_t='" + perl_signal_t + "'"
2111 $ WC "d_volatile='" + perl_d_volatile + "'"
2112 $ WC "d_vprintf='" + perl_d_vprintf + "'"
2113 $ WC "d_charvspr='" + perl_d_charvspr + "'"
2114 $ WC "d_wait4='" + perl_d_wait4 + "'"
2115 $ WC "d_waitpid='" + perl_d_waitpid + "'"
2116 $ WC "i_dirent='" + perl_i_dirent + "'"
2117 $ WC "d_dirnamlen='" + perl_d_dirnamlen + "'"
2118 $ WC "direntrytype='" + perl_direntrytype + "'"
2119 $ WC "i_fcntl='" + perl_i_fcntl + "'"
2120 $ WC "i_grp='" + perl_i_grp + "'"
2121 $ WC "i_limits='" + perl_i_limits + "'"
2122 $ WC "i_memory='" + perl_i_memory + "'"
2123 $ WC "i_ndbm='" + perl_i_ndbm + "'"
2124 $ WC "i_stdarg='" + perl_i_stdarg + "'"
2125 $ WC "i_pwd='" + perl_i_pwd + "'"
2126 $ WC "d_pwquota='" + perl_d_pwquota + "'"
2127 $ WC "d_pwage='" + perl_d_pwage + "'"
2128 $ WC "d_pwchange='" + perl_d_pwchange + "'"
2129 $ WC "d_pwclass='" + perl_d_pwclass + "'"
2130 $ WC "d_pwexpire='" + perl_d_pwexpire + "'"
2131 $ WC "d_pwcomment='" + perl_d_pwcomment + "'"
2132 $ WC "i_stddef='" + perl_i_stddef + "'"
2133 $ WC "i_stdlib='" + perl_i_stdlib + "'"
2134 $ WC "i_string='" + perl_i_string + "'"
2135 $ WC "i_sysdir='" + perl_i_sysdir + "'"
2136 $ WC "i_sysfile='" + perl_i_sysfile + "'"
2137 $ WC "i_sysioctl='" + perl_i_sysioctl + "'"
2138 $ WC "i_sysndir='" + perl_i_sysndir + "'"
2139 $ WC "i_sysresrc='" + perl_i_sysresrc + "'"
2140 $ WC "i_sysselct='" + perl_i_sysselct + "'"
2141 $ WC "i_dbm='" + perl_i_dbm + "'"
2142 $ WC "i_rpcsvcdbm='" + perl_i_rpcsvcdbm + "'"
2143 $ WC "i_sfio='" + perl_i_sfio + "'"
2144 $ WC "i_sysstat='" + perl_i_sysstat + "'"
2145 $ WC "i_systimes='" + perl_i_systimes + "'"
2146 $ WC "i_systypes='" + perl_i_systypes + "'"
2147 $ WC "i_sysun='" + perl_i_sysun + "'"
2148 $ WC "i_syswait='" + perl_i_syswait + "'"
2149 $ WC "i_termio='" + perl_i_termio + "'"
2150 $ WC "i_sgtty='" + perl_i_sgtty + "'"
2151 $ WC "i_termios='" + perl_i_termios + "'"
2152 $ WC "i_time='" + perl_i_time + "'"
2153 $ WC "i_systime='" + perl_i_systime + "'"
2154 $ WC "i_systimek='" + perl_i_systimek + "'"
2155 $ WC "i_unistd='" + perl_i_unistd + "'"
2156 $ WC "i_utime='" + perl_i_utime + "'"
2157 $ WC "i_varargs='" + perl_i_varargs + "'"
2158 $ WC "i_vfork='" + perl_i_vfork + "'"
2159 $ WC "prototype='" + perl_prototype + "'"
2160 $ WC "randbits='" + perl_randbits +"'"
2161 $ WC "selecttype='" + perl_selecttype + "'"
2162 $ WC "stdchar='" + perl_stdchar + "'"
2163 $ WC "d_unlink_all_versions='" + perl_d_unlink_all_versions + "'"
2164 $ WC "full_sed='" + perl_full_sed + "'"
2165 $ WC "bin='" + perl_bin + "'"
2166 $ WC "binexp='" + perl_binexp + "'"
2167 $ WC "d_alarm='" + perl_d_alarm + "'"
2168 $ WC "d_casti32='" + perl_d_casti32 + "'"
2169 $ WC "d_chown='" + perl_d_chown + "'"
2170 $ WC "d_chroot='" + perl_d_chroot + "'"
2171 $ WC "d_cuserid='" + perl_d_cuserid + "'"
2172 $ WC "d_dbl_dig='" + perl_d_dbl_dig + "'"
2173 $ WC "d_difftime='" + perl_d_difftime + "'"
2174 $ WC "d_fork='" + perl_d_fork + "'"
2175 $ WC "d_getlogin='" + perl_d_getlogin + "'"
2176 $ WC "d_getppid='" + perl_d_getppid + "'"
2177 $ WC "d_htonl='" + perl_d_htonl + "'"
2178 $ WC "d_nice='" + perl_d_nice + "'"
2179 $ WC "d_pause='" + perl_d_pause + "'"
2180 $ WC "d_pipe='" + perl_d_pipe + "'"
2181 $ WC "d_readlink='" + perl_d_readlink + "'"
2182 $ WC "d_setlinebuf='" + perl_d_setlinebuf + "'"
2183 $ WC "d_strchr='" + perl_d_strchr + "'"
2184 $ WC "d_index='" + perl_d_index + "'"
2185 $ WC "d_strtod='" + perl_d_strtod + "'"
2186 $ WC "d_strtol='" + perl_d_strtol + "'"
2187 $ WC "d_strtoul='" + perl_d_strtoul + "'"
2188 $ WC "d_tcgetpgrp='" + perl_d_tcgetpgrp + "'"
2189 $ WC "d_tcsetpgrp='" + perl_d_tcsetpgrp + "'"
2190 $ WC "d_times='" + perl_d_times + "'"
2191 $ WC "d_tzname='" + perl_d_tzname + "'"
2192 $ WC "d_umask='" + perl_d_umask + "'"
2193 $ WC "fpostype='" + perl_fpostype + "'"
2194 $ WC "i_dlfcn='" + perl_i_dlfcn + "'"
2195 $ WC "i_float='" + perl_i_float + "'"
2196 $ WC "i_math='" + perl_i_math + "'"
2197 $ WC "intsize='" + perl_intsize + "'"
2198 $ WC "longsize='" + perl_longsize + "'"
2199 $ WC "shortsize='" + perl_shortsize + "'"
2200 $ WC "lseektype='" + perl_lseektype + "'"
2201 $ WC "i_values='" + perl_i_values + "'"
2202 $ WC "malloctype='" + perl_malloctype + "'"
2203 $ WC "freetype='" + perl_freetype + "'"
2204 $ WC "d_mymalloc='" + perl_d_mymalloc + "'"
2205 $ WC "sh='" + perl_sh + "'"
2206 $ WC "sig_name='" + perl_sig_name + "'"
2207 $ WC "sig_num='" + perl_sig_num + "'"
2208 $ tempsym = "sig_name_init='" + perl_sig_name_with_commas + "'"
2209 $ WC/symbol tempsym
2210 $ WC "modetype='" + perl_modetype + "'"
2211 $ WC "ssizetype='" + perl_ssizetype + "'"
2212 $ WC "o_nonblock='" + perl_o_nonblock + "'"
2213 $ WC "eagain='" + perl_eagain + "'"
2214 $ WC "rd_nodata='" + perl_rd_nodata + "'"
2215 $ WC "d_eofnblk='" + perl_d_eofnblk + "'"
2216 $ WC "d_oldarchlib='" + perl_d_oldarchlib + "'"
2217 $ WC "oldarchlibexp='" + perl_oldarchlibexp + "'"
2218 $ WC "oldarchlib='" + perl_oldarchlib + "'"
2219 $ WC "privlibexp='" + perl_privlibexp + "'"
2220 $ WC "privlib='" + perl_privlib + "'"
2221 $ WC "sitelibexp='" + perl_sitelibexp + "'"
2222 $ WC "sitelib='" + perl_sitelib + "'"
2223 $ WC "sitearchexp='" + perl_sitearchexp + "'"
2224 $ WC "sitearch='" + perl_sitearch + "'"
2225 $ WC "sizetype='" + perl_sizetype + "'"
2226 $ WC "i_sysparam='" + perl_i_sysparam + "'"
2227 $ WC "d_void_closedir='" + perl_d_void_closedir + "'"
2228 $ WC "d_dlerror='" + perl_d_dlerror + "'"
2229 $ WC "d_dlsymun='" + perl_d_dlsymun + "'"
2230 $ WC "d_suidsafe='" + perl_d_suidsafe + "'"
2231 $ WC "d_dosuid='" + perl_d_dosuid + "'"
2232 $ WC "d_inetaton='" + perl_d_inetaton + "'"
2233 $ WC "d_isascii='" + perl_d_isascii + "'"
2234 $ WC "d_mkfifo='" + perl_d_mkfifo + "'"
2235 $ WC "d_pathconf='" + perl_d_pathconf + "'"
2236 $ WC "d_fpathconf='" + perl_d_fpathconf + "'"
2237 $ WC "d_safebcpy='" + perl_d_safebcpy + "'"
2238 $ WC "d_safemcpy='" + perl_d_safemcpy + "'"
2239 $ WC "d_sanemcmp='" + perl_d_sanemcmp + "'"
2240 $ WC "d_setpgrp='" + perl_d_setpgrp + "'"
2241 $ WC "d_bsdsetpgrp='" + perl_d_bsdsetpgrp + "'"
2242 $ WC "d_bsdpgrp='" + perl_d_bsdpgrp + "'"
2243 $ WC "d_setpgid='" + perl_d_setpgid + "'"
2244 $ WC "d_setpgrp2='" + perl_d_setpgrp2 + "'"
2245 $ WC "d_sysconf='" + perl_d_sysconf + "'"
2246 $ WC "d_Gconvert='" + perl_d_Gconvert + "'"
2247 $ WC "d_getpgid='" + perl_d_getpgid + "'"
2248 $ WC "d_getpgrp='" + perl_d_getpgrp + "'"
2249 $ WC "d_bsdgetpgrp='" + perl_d_bsdgetpgrp + "'"
2250 $ WC "d_getpgrp2='" + perl_d_getpgrp2 + "'"
2251 $ WC "d_sfio='" + perl_d_sfio + "'"
2252 $ WC "d_sigsetjmp='" + perl_d_sigsetjmp + "'"
2253 $ WC "usedl='" + perl_usedl + "'"
2254 $ WC "startperl=" + perl_startperl ! This one's special--no enclosing single quotes
2255 $ WC "db_hashtype='" + perl_db_hashtype + "'"
2256 $ WC "db_prefixtype='" + perl_db_prefixtype + "'"
2257 $ WC "useperlio='" + perl_useperlio + "'"
2258 $ WC "defvoidused='" + perl_defvoidused + "'"
2259 $ WC "voidflags='" + perl_voidflags + "'"
2260 $ WC "d_eunice='" + perl_d_eunice + "'"
2261 $ WC "libs='" + perl_libs + "'"
2262 $ WC "libc='" + perl_libc + "'"
2263 $ tempstring = "PATCHLEVEL='" + "''perl_patchlevel'" + "'"
2264 $ WC tempstring
2265 $ tempstring = "SUBVERSION='" + "''perl_SUBVERSION'" + "'"
2266 $ WC tempstring
2267 $ WC "pager='" + perl_pager + "'"
2268 $ WC "uidtype='" + perl_uidtype + "'"
2269 $ WC "gidtype='" + perl_gidtype + "'"
2270 $ WC "usethreads='" + perl_usethreads + "'"
2271 $ WC "d_pthread_yield='" + perl_d_pthread_yield + "'"
2272 $ WC "d_pthreads_created_joinable='" + perl_d_pthreads_created_joinable + "'"
2273 $ WC "d_gnulibc='" + perl_d_gnulibc + "'"
2274 $ WC "i_netdb='" + perl_i_netdb + "'"
2275 $ WC "pidtype='" + perl_pidtype + "'"
2276 $ WC "netdb_host_type='" + perl_netdb_host_type + "'"
2277 $ WC "netdb_hlen_type='" + perl_netdb_hlen_type + "'"
2278 $ WC "netdb_name_type='" + perl_netdb_name_type + "'"
2279 $ WC "netdb_net_type='" + perl_netdb_net_type + "'"
2280 $ WC "baserev='" + perl_baserev + "'"
2281 $ WC "doublesize='" + perl_doublesize + "'"
2282 $ WC "ptrsize='" + perl_ptrsize + "'"
2283 $ WC "d_gethbyaddr='" + perl_d_gethbyaddr + "'"
2284 $ WC "d_gethbyname='" + perl_d_gethbyname + "'"
2285 $ WC "d_getnbyaddr='" + perl_d_getnbyaddr + "'"
2286 $ WC "d_getnbyname='" + perl_d_getnbyname + "'"
2287 $ WC "d_getpbynumber='" + perl_d_getpbynumber + "'"
2288 $ WC "d_getpbyname='" + perl_d_getpbyname + "'"
2289 $ WC "d_getsbyport='" + perl_d_getsbyport + "'"
2290 $ WC "d_getsbyname='" + perl_d_getsbyname + "'"
2291 $ WC "d_sethent='" + perl_d_sethent + "'"
2292 $ WC "d_oldpthreads='" + perl_d_oldpthreads + "'"
2293 $ WC "d_longdbl='" + perl_d_longdbl + "'"
2294 $ WC "longdblsize='" + perl_longdblsize + "'"
2295 $ WC "d_longlong='" + perl_d_longlong + "'"
2296 $ WC "longlongsize='" + perl_longlongsize + "'"
2297 $ WC "d_mkstemp='" + perl_d_mkstemp + "'"
2298 $ WC "d_setvbuf='" + perl_d_setvbuf + "'"
2299 $ WC "d_endhent='" + perl_d_endhent + "'"
2300 $ WC "d_endnent='" + perl_d_endsent + "'"
2301 $ WC "d_endpent='" + perl_d_endpent + "'"
2302 $ WC "d_endsent='" + perl_d_endsent + "'"
2303 $ WC "d_gethent='" + perl_d_gethent + "'"
2304 $ WC "d_getnent='" + perl_d_getsent + "'"
2305 $ WC "d_getpent='" + perl_d_getpent + "'"
2306 $ WC "d_getsent='" + perl_d_getsent + "'"
2307 $ WC "d_sethent='" + perl_d_sethent + "'"
2308 $ WC "d_setnent='" + perl_d_setsent + "'"
2309 $ WC "d_setpent='" + perl_d_setpent + "'"
2310 $ WC "ebcdic='" + perl_ebcdic + "'"
2311 $ WC "d_setsent='" + perl_d_setsent + "'"
2312 $ WC "d_gethostprotos='" + perl_d_gethostprotos + "'"
2313 $ WC "d_getnetprotos='" + perl_d_getnetprotos + "'"
2314 $ WC "d_getprotoprotos='" + perl_d_getprotoprotos + "'"
2315 $ WC "d_getservprotos='" + perl_d_getservprotos + "'"
2316 $ WC "d_pwgecos='" + perl_d_pwgecos + "'"
2317 $ WC "d_sched_yield='" + perl_d_sched_yield + "'"
2318 $ WC "d_lchown='" + perl_d_lchown + "'"
2319 $ WC "d_union_semun='" + perl_d_union_semun + "'"
2320 $ WC "i_arpainet='" + perl_i_arpainet + "'"
2321 $ WC "d_grpasswd='" + perl_d_grpasswd + "'"
2322 $ WC "d_setgrent='" + perl_d_setgrent + "'"
2323 $ WC "d_getgrent='" + perl_d_getgrent + "'"
2324 $ WC "d_endgrent='" + perl_d_endgrent + "'"
2325 $ WC "d_pwpasswd='" + perl_d_pwpasswd + "'"
2326 $ WC "d_setpwent='" + perl_d_setpwent + "'"
2327 $ WC "d_getpwent='" + perl_d_getpwent + "'"
2328 $ WC "d_endpwent='" + perl_d_endpwent + "'"
2329 $ WC "d_semctl_semun='" + perl_d_semctl_semun + "'"
2330 $ WC "d_semctl_semid_ds='" + perl_d_semctl_semid_ds + "'"
2331 $ WC "extensions='" + perl_extensions + "'"
2332 $ WC "d_mknod='" + perl_d_mknod + "'"
2333 $ WC "devtype='" + perl_devtype + "'"
2334 $!
2335 $! ##WRITE NEW CONSTANTS HERE##
2336 $!
2337 $ Close CONFIGSH
2338 $
2339 $! Okay, we've gotten here. Build munchconfig and run it
2340 $ 'Perl_CC' munchconfig.c
2341 $ If (Needs_Opt.eqs."Yes")
2342 $ THEN
2343 $   open/write OPTCHAN []munchconfig.opt
2344 $   IF ("''using_gnu_c'".eqs."Yes")
2345 $   THEN
2346 $     write OPTCHAN "Gnu_CC:[000000]gcclib.olb/library"
2347 $   endif
2348 $   write OPTCHAN "Sys$Share:VAXCRTL/Share"
2349 $   Close OPTCHAN
2350 $   link munchconfig.obj,munchconfig.opt/opt
2351 $   delete munchconfig.opt;*
2352 $ else
2353 $   link munchconfig.obj
2354 $ endif
2355 $ WRITE_RESULT "Writing config.h"
2356 $ !
2357 $ ! we need an fdl file
2358 $ CREATE [-]CONFIG.FDL
2359 RECORD
2360   FORMAT STREAM_LF
2361 $ CREATE /FDL=[-]CONFIG.FDL [-]CONFIG.LOCAL
2362 $ ! First spit out the header info with the local defines (to get
2363 $ ! around the 255 character command line limit)
2364 $ OPEN/APPEND CONFIG [-]config.local
2365 $ if use_debugging_perl.eqs."Y"
2366 $ THEN
2367 $   WRITE CONFIG "#define DEBUGGING"
2368 $ ENDIF
2369 $ if preload_env.eqs."Y"
2370 $ THEN
2371 $    WRITE CONFIG "#define PRIME_ENV_AT_STARTUP"
2372 $ ENDIF
2373 $ if use_two_pot_malloc.eqs."Y"
2374 $ THEN
2375 $    WRITE CONFIG "#define TWO_POT_OPTIMIZE"
2376 $ endif
2377 $ if mymalloc.eqs."Y"
2378 $ THEN
2379 $    WRITE CONFIG "#define EMBEDMYMALLOC"
2380 $ ENDIF
2381 $ if use_pack_malloc.eqs."Y"
2382 $ THEN
2383 $    WRITE CONFIG "#define PACK_MALLOC"
2384 $ endif
2385 $ if use_debugmalloc.eqs."Y"
2386 $ THEN
2387 $    write config "#define DEBUGGING_MSTATS"
2388 $ ENDIF
2389 $ if "''Using_Gnu_C'" .eqs."Yes"
2390 $ THEN
2391 $   WRITE CONFIG "#define GNUC_ATTRIBUTE_CHECK"
2392 $ ENDIF
2393 $ if "''Has_Dec_C_Sockets'".eqs."T"
2394 $ THEN
2395 $    WRITE CONFIG "#define VMS_DO_SOCKETS"
2396 $    WRITE CONFIG "#define DECCRTL_SOCKETS"
2397 $ ENDIF
2398 $ if "''Has_Socketshr'".eqs."T"
2399 $ THEN
2400 $    WRITE CONFIG "#define VMS_DO_SOCKETS"
2401 $ ENDIF
2402 $ CLOSE CONFIG
2403 $!
2404 $! Now build the normal config.h
2405 $ define/user sys$output [-]config.main
2406 $ mcr []munchconfig [-]config.sh [-]config_h.sh
2407 $ ! Concatenate them together
2408 $ copy [-]config.local,[-]config.main [-]config.h
2409 $! Clean up
2410 $ DELETE/NOLOG [-]CONFIG.MAIN;*
2411 $ DELETE/NOLOG [-]CONFIG.LOCAL;*
2412 $ DELETE/NOLOG [-]CONFIG.FDL;*
2413 $!
2414 $ if "''Using_Dec_C'" .eqs."Yes"
2415 $ THEN
2416 $ DECC_REPLACE = "DECC=decc=1"
2417 $ ELSE
2418 $ DECC_REPLACE = "DECC=" 
2419 $ ENDIF
2420 $ if "''Using_Gnu_C'" .eqs."Yes"
2421 $ THEN
2422 $ GNUC_REPLACE = "GNUC=gnuc=1"
2423 $ ELSE
2424 $ GNUC_REPLACE = "GNUC=" 
2425 $ ENDIF
2426 $ if "''Has_Dec_C_Sockets'" .eqs."T"
2427 $ THEN
2428 $   SOCKET_REPLACE = "SOCKET=DECC_SOCKETS=1"
2429 $ ELSE
2430 $   if "''Has_Socketshr'" .eqs."T"
2431 $   THEN
2432 $     SOCKET_REPLACE = "SOCKET=SOCKETSHRSOCKETS=1"
2433 $   ELSE
2434 $     SOCKET_REPLACE = "SOCKET="
2435 $   ENDIF
2436 $ ENDIF
2437 $ IF ("''Use_Threads'".eqs."T")
2438 $ THEN
2439 $   if ("''VMS_VER'".LES."6.2")
2440 $   THEN
2441 $     THREAD_REPLACE = "THREAD=OLDTHREADED=1"
2442 $   ELSE
2443 $     THREAD_REPLACE = "THREAD=THREADED=1"
2444 $   ENDIF
2445 $ ELSE
2446 $   THREAD_REPLACE = "THREAD="
2447 $ ENDIF
2448 $ if mymalloc.eqs."Y"
2449 $ THEN
2450 $   MALLOC_REPLACE = "MALLOC=MALLOC=1"
2451 $ ELSE
2452 $   MALLOC_REPLACE = "MALLOC="
2453 $ ENDIF
2454 $ if f$getsyi("HW_MODEL").ge.1024
2455 $ THEN
2456 $ ARCH_TYPE = "ARCH-TYPE=__AXP__"
2457 $ ELSE
2458 $ ARCH_TYPE = "ARCH-TYPE=__VAX__"
2459 $ ENDIF
2460 $ WRITE_RESULT "Writing DESCRIP.MMS"
2461 $!set ver
2462 $ define/user sys$output [-]descrip.mms
2463 $ mcr []munchconfig [-]config.sh descrip_mms.template "''DECC_REPLACE'" "''ARCH_TYPE'" "''GNUC_REPLACE'" "''SOCKET_REPLACE'" "''THREAD_REPLACE'" "''C_Compiler_Replace'" "''MALLOC_REPLACE'" "''Thread_Live_Dangerously'" "PV=''LocalPerlVer'"
2464 $! set nover
2465 $!
2466 $! Clean up after ourselves
2467 $ delete/nolog munchconfig.exe;*
2468 $ delete/nolog munchconfig.obj;*