| 1 | # svr4 hints, System V Release 4.x |
| 2 | # Last modified 1996/10/25 by Tye McQueen, tye@metronet.com |
| 3 | # Merged 1998/04/23 with perl5.004_04 distribution by |
| 4 | # Andy Dougherty <doughera@lafayette.edu> |
| 5 | |
| 6 | # Use Configure -Dcc=gcc to use gcc. |
| 7 | case "$cc" in |
| 8 | '') cc='/bin/cc' |
| 9 | test -f $cc || cc='/usr/ccs/bin/cc' |
| 10 | ;; |
| 11 | esac |
| 12 | |
| 13 | # We include support for using libraries in /usr/ucblib, but the setting |
| 14 | # of libswanted excludes some libraries found there. If you run into |
| 15 | # problems, you may have to remove "ucb" from libswanted. Just delete |
| 16 | # the comment '#' from the sed command below. |
| 17 | ldflags='-L/usr/ccs/lib -L/usr/ucblib' |
| 18 | ccflags='-I/usr/include -I/usr/ucbinclude' |
| 19 | # Don't use problematic libraries: |
| 20 | libswanted=`echo " $libswanted " | sed -e 's/ malloc / /'` # -e 's/ ucb / /'` |
| 21 | # libmalloc.a - Probably using Perl's malloc() anyway. |
| 22 | # libucb.a - Remove it if you have problems ld'ing. We include it because |
| 23 | # it is needed for ODBM_File and NDBM_File extensions. |
| 24 | |
| 25 | if [ -r /usr/ucblib/libucb.a ]; then # If using BSD-compat. library: |
| 26 | d_Gconvert='gcvt((x),(n),(b))' # Try gcvt() before gconvert(). |
| 27 | # Use the "native" counterparts, not the BSD emulation stuff: |
| 28 | d_bcmp='undef' d_bcopy='undef' d_bzero='undef' d_safebcpy='undef' |
| 29 | d_index='undef' d_killpg='undef' d_getprior='undef' d_setprior='undef' |
| 30 | d_setlinebuf='undef' |
| 31 | # d_setregid='undef' d_setreuid='undef' # ??? |
| 32 | fi |
| 33 | |
| 34 | # UnixWare has /usr/lib/libc.so.1, /usr/lib/libc.so.1.1, and |
| 35 | # /usr/ccs/lib/libc.so. Configure chooses libc.so.1.1 while it |
| 36 | # appears that /usr/ccs/lib/libc.so contains more symbols: |
| 37 | # |
| 38 | # Try the following if you want to use nm-extraction. We'll just |
| 39 | # skip the nm-extraction phase, since searching for all the different |
| 40 | # library versions will be hard to keep up-to-date. |
| 41 | # |
| 42 | # if [ "" = "$libc" -a -f /usr/ccs/lib/libc.so -a \ |
| 43 | # -f /usr/lib/libc.so.1 -a -f /usr/lib/libc.so.1.1 ]; then |
| 44 | # if nm -h /usr/ccs/lib/libc.so | egrep '\<_?select$' >/dev/null; then |
| 45 | # if nm -h /usr/lib/libc.so.1 | egrep '\<_?select$'` >/dev/null || |
| 46 | # nm -h /usr/lib/libc.so.1.1 | egrep '\<_?select$'` >/dev/null; then |
| 47 | # : |
| 48 | # else |
| 49 | # libc=/usr/ccs/lib/libc.so |
| 50 | # fi |
| 51 | # fi |
| 52 | # fi |
| 53 | # |
| 54 | # Don't bother with nm. Just compile & link a small C program. |
| 55 | case "$usenm" in |
| 56 | '') usenm=false;; |
| 57 | esac |
| 58 | |
| 59 | # Broken C-Shell tests (Thanks to Tye McQueen): |
| 60 | # The OS-specific checks may be obsoleted by the this generic test. |
| 61 | sh_cnt=`sh -c 'echo /*' | wc -c` |
| 62 | csh_cnt=`csh -f -c 'glob /*' 2>/dev/null | wc -c` |
| 63 | csh_cnt=`expr 1 + $csh_cnt` |
| 64 | if [ "$sh_cnt" -ne "$csh_cnt" ]; then |
| 65 | echo "You're csh has a broken 'glob', disabling..." >&2 |
| 66 | d_csh='undef' |
| 67 | fi |
| 68 | |
| 69 | # Unixware-specific problems. The undocumented -X argument to uname |
| 70 | # is probably a reasonable way of detecting UnixWare. |
| 71 | # UnixWare has a broken csh. (This might already be detected above). |
| 72 | # In Unixware 2.1.1 the fields in FILE* got renamed! |
| 73 | # Unixware 1.1 can't cast large floats to 32-bit ints. |
| 74 | # Configure can't detect memcpy or memset on Unixware 2 or 7 |
| 75 | # |
| 76 | # Leave leading tabs on the next two lines so Configure doesn't |
| 77 | # propagate these variables to config.sh |
| 78 | uw_ver=`uname -v` |
| 79 | uw_isuw=`uname -X 2>&1 | grep Release` |
| 80 | |
| 81 | if [ "$uw_isuw" = "Release = 4.2" ]; then |
| 82 | case $uw_ver in |
| 83 | 1.1) |
| 84 | d_casti32='undef' |
| 85 | ;; |
| 86 | esac |
| 87 | fi |
| 88 | if [ "$uw_isuw" = "Release = 4.2MP" ]; then |
| 89 | case $uw_ver in |
| 90 | 2.1) |
| 91 | d_csh='undef' |
| 92 | d_memcpy='define' |
| 93 | d_memset='define' |
| 94 | ;; |
| 95 | 2.1.*) |
| 96 | d_csh='undef' |
| 97 | d_memcpy='define' |
| 98 | d_memset='define' |
| 99 | stdio_cnt='((fp)->__cnt)' |
| 100 | d_stdio_cnt_lval='define' |
| 101 | stdio_ptr='((fp)->__ptr)' |
| 102 | d_stdio_ptr_lval='define' |
| 103 | ;; |
| 104 | esac |
| 105 | fi |
| 106 | if [ "$uw_isuw" = "Release = 5" ]; then |
| 107 | case $uw_ver in |
| 108 | 7) |
| 109 | d_csh='undef' |
| 110 | d_memcpy='define' |
| 111 | d_memset='define' |
| 112 | stdio_cnt='((fp)->__cnt)' |
| 113 | d_stdio_cnt_lval='define' |
| 114 | stdio_ptr='((fp)->__ptr)' |
| 115 | d_stdio_ptr_lval='define' |
| 116 | ;; |
| 117 | esac |
| 118 | fi |
| 119 | # End of Unixware-specific tests. |
| 120 | |
| 121 | # DDE SMES Supermax Enterprise Server |
| 122 | case "`uname -sm`" in |
| 123 | "UNIX_SV SMES") |
| 124 | # the *grent functions are in libgen. |
| 125 | libswanted="$libswanted gen" |
| 126 | # csh is broken (also) in SMES |
| 127 | # This may already be detected by the generic test above. |
| 128 | d_csh='undef' |
| 129 | case "$cc" in |
| 130 | *gcc*) ;; |
| 131 | *) # for cc we need -K PIC (not -K pic) |
| 132 | cccdlflags="$cccdlflags -K PIC" |
| 133 | ;; |
| 134 | esac |
| 135 | ;; |
| 136 | esac |
| 137 | |
| 138 | # NCR MP-RAS. Thanks to Doug Hendricks for this info. |
| 139 | # The output of uname -a looks like this |
| 140 | # foo foo 4.0 3.0 3441 Pentium III(TM)-ISA/PCI |
| 141 | # Configure sets osname=svr4.0, osvers=3.0, archname='3441-svr4.0' |
| 142 | case "$myuname" in |
| 143 | *3441*) |
| 144 | # With the NCR High Performance C Compiler R3.0c, miniperl fails |
| 145 | # t/op/regexp.t test 461 unless we compile with optimizie=-g. |
| 146 | # The whole O/S is being phased out, so more detailed probing |
| 147 | # is probably not warranted. |
| 148 | case "$optimize" in |
| 149 | '') optimize='-g' ;; |
| 150 | esac |
| 151 | ;; |
| 152 | esac |
| 153 | |
| 154 | # Configure may fail to find lstat() since it's a static/inline function |
| 155 | # in <sys/stat.h> on Unisys U6000 SVR4, UnixWare 2.x, and possibly other |
| 156 | # SVR4 derivatives. (Though UnixWare has it in /usr/ccs/lib/libc.so.) |
| 157 | d_lstat=define |
| 158 | |
| 159 | d_suidsafe='define' # "./Configure -d" can't figure this out easilly |
| 160 | |