[win32] support win32_select(0,0,0,msec) (winsock doesn't)
[p5sagit/p5-mst-13.2.git] / hints / aix.sh
CommitLineData
1aef975c 1# hints/aix.sh
2# AIX 3.x.x hints thanks to Wayne Scott <wscott@ichips.intel.com>
3# AIX 4.1 hints thanks to Christopher Chan-Nui <channui@austin.ibm.com>.
52e1cb5e 4# AIX 4.1 pthreading by Christopher Chan-Nui <channui@austin.ibm.com> and
5# Jarkko Hietaniemi <jhi@iki.fi>.
1aef975c 6# Merged on Mon Feb 6 10:22:35 EST 1995 by
7# Andy Dougherty <doughera@lafcol.lafayette.edu>
8
9
10# Configure finds setrgid and setruid, but they're useless. The man
11# pages state:
12# setrgid: The EPERM error code is always returned.
13# setruid: The EPERM error code is always returned. Processes cannot
14# reset only their real user IDs.
a0d0e21e 15d_setrgid='undef'
16d_setruid='undef'
1aef975c 17
a0d0e21e 18alignbytes=8
19
a5f75d66 20usemymalloc='n'
21
3c321fdc 22so="a"
23dlext="so"
24
1aef975c 25# Make setsockopt work correctly. See man page.
26# ccflags='-D_BSD=44'
27
28# uname -m output is too specific and not appropriate here
29case "$archname" in
30'') archname="$osname" ;;
31esac
32
33case "$osvers" in
343*) d_fchmod=undef
35 ccflags='-D_ALL_SOURCE'
36 ;;
37*) # These hints at least work for 4.x, possibly other systems too.
80589958 38 ccflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE'
39 case "$cc" in
40 *gcc*) ;;
41 *) ccflags="-qmaxmem=8192 $ccflags" ;;
42 esac
1aef975c 43 nm_opt='-B'
1aef975c 44 ;;
45esac
46
9018c6a0 47# These functions don't work like Perl expects them to.
48d_setregid='undef'
49d_setreuid='undef'
50
8e07c86e 51# The optimizer in 4.1.1 apparently generates bad code for scope.c.
52# Configure doesn't offer an easy way to propagate extra variables
53# only for certain cases, so the following contortion is required:
c07a80fd 54# This is probably not needed in 5.002 and later.
55# scope_cflags='case "$osvers" in 4.1*) optimize=" ";; esac'
8e07c86e 56
1aef975c 57# Changes for dynamic linking by Wayne Scott <wscott@ichips.intel.com>
a0d0e21e 58#
59# Tell perl which symbols to export for dynamic linking.
4633a7c4 60case "$cc" in
61*gcc*) ccdlflags='-Xlinker -bE:perl.exp' ;;
62*) ccdlflags='-bE:perl.exp' ;;
63esac
a0d0e21e 64
65# The first 3 options would not be needed if dynamic libs. could be linked
66# with the compiler instead of ld.
42793c05 67# -bI:$(PERL_INC)/perl.exp Read the exported symbols from the perl binary
68# -bE:$(BASEEXT).exp Export these symbols. This file contains only one
69# symbol: boot_$(EXP) can it be auto-generated?
c07a80fd 70case "$osvers" in
713*)
42793c05 72lddlflags='-H512 -T512 -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -e _nostart -lc'
c07a80fd 73 ;;
74*)
75lddlflags='-H512 -T512 -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -b noentry -lc'
a0d0e21e 76
c07a80fd 77;;
78esac
52e1cb5e 79
80if [ "X$usethreads" != "X" ]; then
0a5d5e8b 81 ccflags="-DUSE_THREADS -DNEED_PTHREAD_INIT $ccflags"
82 cppflags="-DUSE_THREADS -DNEED_PTHREAD_INIT $cppflags"
52e1cb5e 83 case "$cc" in
0a5d5e8b 84 xlc_r | cc_r)
52e1cb5e 85 ;;
86 cc | '')
ce637636 87 cc=xlc_r # Let us be stricter.
52e1cb5e 88 ;;
89 *)
ce637636 90 cat >&4 <<EOM
91Unknown C compiler '$cc'.
92For pthreads you should use the AIX C compilers xlc_r or cc_r.
93Cannot continue, aborting.
94EOM
52e1cb5e 95 exit 1
96 ;;
97 esac
98
ce637636 99 # Add the POSIX threads library and the re-entrant libc.
52e1cb5e 100
ce637636 101 lddlflags=`echo $lddlflags | sed 's/ -lc$/ -lpthreads -lc_r -lc/'`
52e1cb5e 102fi