Make DynaLoader clone its private data under threads.
[perl.git] / hints / irix_5.sh
1 # irix_5.sh
2 # Tue Jan  9 16:04:38 EST 1996
3 #  Add note about socket patch.
4 #
5 # Tue Jan  2 14:52:36 EST 1996
6 # Apparently, there's a stdio bug that can lead to memory
7 # corruption using perl's malloc, but not SGI's malloc.
8 usemymalloc='n'
9
10 ld=ld
11 i_time='define'
12 i_inttypes='undef'
13
14 case "$cc" in
15 *gcc*) ccflags="$ccflags -D_BSD_TYPES" ;;
16 *)
17    # The warnings turned off are:
18    # 608: Undefined the ANSI standard library defined macro stderr (nostdio.h)
19    # 658: bit-field 'th_off' type required to be int, unsigned int, or signed int. <netinet/tcp.h>
20    # 734: enum declaration must contain enum literals <sys/vnode.h>
21    # 799: 'long long' is not standard ANSI.
22    ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -Olimit 4300 -woff 608,658,734,799"
23 # Without this the cc thinks that a struct timeval * is not equivalent to
24 # a struct timeval *.  Yeah, you read that right.
25 pp_sys_cflags='ccflags="$ccflags -DPERL_IRIX5_SELECT_TIMEVAL_VOID_CAST"'
26    ;;
27 esac
28
29 lddlflags="-shared"
30 # For some reason we don't want -lsocket -lnsl or -ldl.  Can anyone
31 # contribute an explanation?
32 set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
33 shift
34 libswanted="$*"
35
36 # IRIX 5.x does not have -woff for ld.
37 # Don't groan about unused libraries.
38 # case "$ldflags" in
39 #     *-Wl,-woff,84*) ;;
40 #     *) ldflags="$ldflags -Wl,-woff,84" ;;
41 # esac
42
43 # Date: Fri, 22 Dec 1995 11:49:17 -0800
44 # From: Matthew Black <black@csulb.edu>
45 # Subject: sockets broken under IRIX 5.3? YES...how to fix
46 # Anyone attempting to use perl4 or perl5 with SGI IRIX 5.3 may discover
47 # that sockets are essentially broken.  The syslog interface for perl also
48 # fails because it uses the broken socket interface.  This problem was
49 # reported to SGI as bug #255347 and it can be fixed by installing 
50 # patchSG0000596.  The patch can be downloaded from Advantage OnLine (SGI's
51 # WWW server) or from the Support Advantage 9/95 Patch CDROM.  Thanks to Tom 
52 # Christiansen and others who provided assistance.
53
54 case "$usethreads" in
55 $define|true|[yY]*)
56         cat >&4 <<EOM
57 IRIX `uname -r` does not support POSIX threads.
58 You should upgrade to at least IRIX 6.2 with pthread patches.
59 EOM
60         exit 1
61         ;;
62 esac
63
64 case " $use64bits $use64bitint $use64bitall " in
65 *" $define "*|*" true "*|*" [yY] "*)
66         cat >&4 <<EOM
67 IRIX `uname -r` does not support 64-bit types.
68 You should upgrade to at least IRIX 6.2.
69 Cannot continue, aborting.
70 EOM
71         exit 1
72 esac
73