summaryrefslogtreecommitdiff
path: root/hints
diff options
context:
space:
mode:
authorMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-10-08 10:19:27 +0000
committerMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-10-08 10:19:27 +0000
commit93af7a870f71dbbb13443b4087703de0221add17 (patch)
treee767c53d4d4f1783640e5410f94655e45b58b3d0 /hints
parentc116a00cf797ec2e6795338ee18b88d975e760c5 (diff)
parent2269e8ecc334a5a77bdb915666547431c0171402 (diff)
downloadperl-93af7a870f71dbbb13443b4087703de0221add17.tar.gz
Merge maint-5.004 branch (5.004_03) with mainline.
MANIFEST is out of sync. p4raw-id: //depot/perl@114
Diffstat (limited to 'hints')
-rw-r--r--hints/cxux.sh16
-rw-r--r--hints/hpux.sh6
-rw-r--r--hints/linux.sh11
-rw-r--r--hints/os2.sh36
-rw-r--r--hints/sco.sh1
-rw-r--r--hints/sunos_4_1.sh27
-rw-r--r--hints/svr4.sh19
7 files changed, 94 insertions, 22 deletions
diff --git a/hints/cxux.sh b/hints/cxux.sh
index 42bfe5d579..e3ac086e23 100644
--- a/hints/cxux.sh
+++ b/hints/cxux.sh
@@ -61,16 +61,18 @@ libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /'`
#
glibpth="/usr/sde/elf/usr/lib $glibpth"
-# Need to use Concurrent cc for most of these options to be meaningful (if you
-# want to get this to work with gcc, you're on your own :-). Passing
+# Need to use Concurrent cc for most of these options to be meaningful (if
+# you want to get this to work with gcc, you're on your own :-). Passing
# -Bexport to the linker when linking perl is important because it leaves
# the interpreter internal symbols visible to the shared libs that will be
-# loaded on demand (and will try to reference those symbols). The -u
-# option to drag 'sigaction' into the perl main program is to make sure
-# it gets defined for the posix shared library (for some reason sigaction
-# is static, rather than being defined in libc.so.1).
+# loaded on demand (and will try to reference those symbols). The -u option
+# to drag 'sigaction' into the perl main program is to make sure it gets
+# defined for the posix shared library (for some reason sigaction is static,
+# rather than being defined in libc.so.1). The 88110compat option makes sure
+# the code will run on both 88100 and 88110 machines. The define is added to
+# trigger a work around for a compiler bug which shows up in pp.c.
#
-cc='/bin/cc -Xa'
+cc='/bin/cc -Xa -Qtarget=M88110compat -DCXUX_BROKEN_CONSTANT_CONVERT'
cccdlflags='-Zelf -Zpic'
ccdlflags='-Zelf -Zlink=dynamic -Wl,-Bexport -u sigaction'
lddlflags='-Zlink=so'
diff --git a/hints/hpux.sh b/hints/hpux.sh
index ab04e9b82e..c2500d0c37 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -1,7 +1,7 @@
#! /bin/sh
# hints/hpux.sh
-# Perl Configure hints file for Hewlett Packard HP-UX 9.x and 10.x
+# Perl Configure hints file for Hewlett-Packard's HP-UX 9.x and 10.x
# (Hopefully, 7.x through 11.x.)
#
# This file is based on hints/hpux_9.sh, Perl Configure hints file for
@@ -21,7 +21,7 @@
# Don't assume every OS != 10 is < 10, (e.g., 11).
# From: Chuck Phillips <cdp@fc.hp.com>
-# This version: April 27, 1997
+# This version: August 15, 1997
# Current maintainer: Jeff Okamoto <okamoto@corp.hp.com>
#--------------------------------------------------------------------
@@ -121,6 +121,7 @@ else
# ASSUMPTION: Only CPU identifiers contain no lowercase letters.
archname=`getcontext | tr ' ' '\012' | grep -v '[a-z]' | grep -v MC688 |
sed -e 's/HP-//' -e 1q`;
+ selecttype='int *'
fi
@@ -151,7 +152,6 @@ ccdlflags="-Wl,-E -Wl,-B,deferred $ccdlflags"
usemymalloc='y'
alignbytes=8
-selecttype='int *'
# For native nm, you need "-p" to produce BSD format output.
nm_opt='-p'
diff --git a/hints/linux.sh b/hints/linux.sh
index 54bc12295c..8ff7f5d747 100644
--- a/hints/linux.sh
+++ b/hints/linux.sh
@@ -183,6 +183,17 @@ else
echo 'Your csh is really tcsh. Good.'
fi
+# Shimpei Yamashita <shimpei@socrates.patnet.caltech.edu>
+# Message-Id: <33EF1634.B36B6500@pobox.com>
+#
+# MkLinux (osname=linux,archname=ppc-linux), which differs slightly from other
+# linuces, needs special flags passed in order for dynamic loading to work.
+# instead of the recommended:
+# ccdlflags='-rdynamic'
+#
+# it should be:
+# ccdlflags='-Wl,-E'
+
if [ "X$usethreads" != "X" ]; then
ccflags="-D_REENTRANT -DUSE_THREADS $ccflags"
cppflags="-D_REENTRANT -DUSE_THREADS $cppflags"
diff --git a/hints/os2.sh b/hints/os2.sh
index c442a08086..b468f2de41 100644
--- a/hints/os2.sh
+++ b/hints/os2.sh
@@ -28,7 +28,28 @@ startsh="#!$sh"
sysman=`../UU/loc . /man/man1 c:/man/man1 c:/usr/man/man1 d:/man/man1 d:/usr/man/man1 e:/man/man1 e:/usr/man/man1 f:/man/man1 f:/usr/man/man1 g:/man/man1 g:/usr/man/man1 /usr/man/man1`
cc='gcc'
usrinc='/emx/include'
-libemx="`../UU/loc . X c:/emx/lib d:/emx/lib e:/emx/lib f:/emx/lib g:/emx/lib h:/emx/lib /emx/lib`"
+emxpath="`../UU/loc . /emx c:/emx d:/emx e:/emx f:/emx g:/emx h:/emx /emx`"
+
+libemx="$emxpath/lib"
+if test ! -d "$libemx"; then
+ if test -d "$LIBRARY_PATH"; then
+ usrinc="$LIBRARY_PATH"
+ else
+ libemx="`../UU/loc . X c:/emx/lib d:/emx/lib e:/emx/lib f:/emx/lib g:/emx/lib h:/emx/lib /emx/lib`"
+ fi
+fi
+
+if test -d "$emxpath/include"; then
+ usrinc="$emxpath/include"
+else
+ if test -d "$C_INCLUDE_PATH"; then
+ usrinc="$C_INCLUDE_PATH"
+ else
+ usrinc="`../UU/loc . X c:/emx/include d:/emx/include e:/emx/include f:/emx/include g:/emx/include h:/emx/include /emx/include`"
+ fi
+fi
+
+rsx="`../UU/loc rsx.exe undef $pth`"
if test "$libemx" = "X"; then echo "Cannot find C library!" >&2; fi
@@ -66,8 +87,8 @@ fi
aout_ldflags="$aout_ldflags"
aout_d_fork='define'
-aout_ccflags='-DPERL_CORE -DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS -DTWO_POT_OPTIMIZE -DPERL_EMERGENCY_SBRK'
-aout_cppflags='-DPERL_CORE -DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS -DTWO_POT_OPTIMIZE -DPERL_EMERGENCY_SBRK'
+aout_ccflags='-DPERL_CORE -DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DTWO_POT_OPTIMIZE -DPERL_EMERGENCY_SBRK'
+aout_cppflags='-DPERL_CORE -DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DTWO_POT_OPTIMIZE -DPERL_EMERGENCY_SBRK'
aout_use_clib='c'
aout_usedl='undef'
aout_archobjs="os2.o dl_os2.o"
@@ -189,9 +210,14 @@ nm_opt='-p'
d_getprior='define'
d_setprior='define'
-####### All the rest is commented
+# Make denser object files and DLL
+case "X$optimize" in
+ X)
+ optimize="-O2 -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -s"
+ ;;
+esac
-# The next two are commented. pdksh handles #!
+# The next two are commented. pdksh handles #!, extproc gives no path part.
# sharpbang='extproc '
# shsharp='false'
diff --git a/hints/sco.sh b/hints/sco.sh
index 6062fbeb2e..cef1c0c942 100644
--- a/hints/sco.sh
+++ b/hints/sco.sh
@@ -67,6 +67,7 @@ icc)# Apparently, SCO's cc gives rather verbose warnings
3) ccflags="$ccflags -W0 -quiet -U M_XENIX" ;;
5) ccflags="$ccflags -belf -w0 -U M_XENIX"
optimize="-O1" # -g -O1 will not work
+ # optimize="-O0" may be needed for pack test to pass.
lddlflags='-G -L/usr/local/lib'
ldflags=' -W l,-Bexport -L/usr/local/lib'
dlext='so'
diff --git a/hints/sunos_4_1.sh b/hints/sunos_4_1.sh
index 16ea47aa0c..07cd89fc7b 100644
--- a/hints/sunos_4_1.sh
+++ b/hints/sunos_4_1.sh
@@ -25,7 +25,9 @@ d_tzname='undef'
# The gcc fix-includes script exposes those incorrect prototypes.
# There may be other examples as well. Volunteers are welcome to
# track them all down :-). In the meantime, we'll just skip unistd.h
-# for SunOS.
+# for SunOS in most of the code. The POSIX extension is built with
+# unistd.h because, even though unistd.h has problems, if used with
+# care, it helps create a better POSIX extension.
i_unistd='undef'
cat << 'EOM' >&4
@@ -39,12 +41,31 @@ EOM
# the problem. Other BSD platforms may have similar problems.
POSIX_cflags='ccflags="$ccflags -DSTRUCT_TM_HASZONE"'
-# check if user is in a bsd or system 5 type environment
+# The correct setting of groupstype depends on which version of the C
+# library is used. If you are in the 'System V environment'
+# (i.e. you have /usr/5bin ahead of /usr/bin in your PATH), and
+# you use Sun's cc compiler, then you'll pick up /usr/5bin/cc, which
+# links against the C library in /usr/5lib. This library has
+# groupstype='gid_t'.
+# If you are in the normal BSDish environment, then you'll pick up
+# /usr/ucb/cc, which links against the C library in /usr/lib. That
+# library has groupstype='int'.
+#
+# If you are using gcc, it links against the C library in /usr/lib
+# independent of whether or not you are in the 'System V environment'.
+# If you want to use the System V libraries, then you need to
+# manually set groupstype='gid_t' and add explicit references to
+# /usr/5lib when Configure prompts you for where to look for libraries.
+#
+# Check if user is in a bsd or system 5 type environment
if cat -b /dev/null 2>/dev/null
then # bsd
groupstype='int'
else # sys5
- groupstype='gid_t'
+ case "$cc" in
+ *gcc*) groupstype='int';; # gcc doesn't do anything special
+ *) groupstype='gid_t';; # /usr/5bin/cc pulls in /usr/5lib/ stuff.
+ esac
fi
# If you get the message "unresolved symbol '__lib_version' " while
diff --git a/hints/svr4.sh b/hints/svr4.sh
index dbae40d641..922736aa48 100644
--- a/hints/svr4.sh
+++ b/hints/svr4.sh
@@ -33,12 +33,23 @@ usevfork='false'
d_lstat=define
# UnixWare has a broken csh. The undocumented -X argument to uname is probably
-# a reasonable way of detecting UnixWare
+# a reasonable way of detecting UnixWare. Also in 2.1.1 the fields in
+# FILE* got renamed!
uw_ver=`uname -v`
uw_isuw=`uname -X 2>&1 | grep Release`
-if [ "$uw_isuw" = "Release = 4.2MP" -a \
- \( "$uw_ver" = "2.1" -o "$uw_ver" = "2.1.1" \) ]; then
- d_csh='undef'
+if [ "$uw_isuw" = "Release = 4.2MP" ]; then
+ case $uw_ver in
+ 2.1)
+ d_csh='undef'
+ ;;
+ 2.1.*)
+ d_csh='undef'
+ stdio_cnt='((fp)->__cnt)'
+ d_stdio_cnt_lval='define'
+ stdio_ptr='((fp)->__ptr)'
+ d_stdio_ptr_lval='define'
+ ;;
+ esac
fi
# DDE SMES Supermax Enterprise Server