summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/perl/hints
diff options
context:
space:
mode:
authorJason Downs <downsj@cvs.openbsd.org>1996-08-19 10:13:38 +0000
committerJason Downs <downsj@cvs.openbsd.org>1996-08-19 10:13:38 +0000
commit14856225739aa48b6c9cf4c17925362b2d95cea3 (patch)
treedfd38f1b654fb5bbdfc38887c1a829b658e71530 /gnu/usr.bin/perl/hints
parent77469082517e44fe6ca347d9e8dc7dffd1583637 (diff)
Import of Perl 5.003 into the tree. Makefile.bsd-wrapper and
config.sh.OpenBSD are the only local changes.
Diffstat (limited to 'gnu/usr.bin/perl/hints')
-rw-r--r--gnu/usr.bin/perl/hints/3b1.sh15
-rw-r--r--gnu/usr.bin/perl/hints/3b1cc88
-rw-r--r--gnu/usr.bin/perl/hints/README.hints61
-rw-r--r--gnu/usr.bin/perl/hints/aix.sh67
-rw-r--r--gnu/usr.bin/perl/hints/altos486.sh3
-rw-r--r--gnu/usr.bin/perl/hints/apollo.sh51
-rw-r--r--gnu/usr.bin/perl/hints/aux.sh20
-rw-r--r--gnu/usr.bin/perl/hints/bsdos.sh99
-rw-r--r--gnu/usr.bin/perl/hints/convexos.sh20
-rw-r--r--gnu/usr.bin/perl/hints/cxux.sh101
-rw-r--r--gnu/usr.bin/perl/hints/dec_osf.sh11
-rw-r--r--gnu/usr.bin/perl/hints/dgux.sh123
-rw-r--r--gnu/usr.bin/perl/hints/dnix.sh1
-rw-r--r--gnu/usr.bin/perl/hints/dynix.sh7
-rw-r--r--gnu/usr.bin/perl/hints/dynixptx.sh39
-rw-r--r--gnu/usr.bin/perl/hints/epix.sh75
-rw-r--r--gnu/usr.bin/perl/hints/esix4.sh41
-rw-r--r--gnu/usr.bin/perl/hints/fps.sh1
-rw-r--r--gnu/usr.bin/perl/hints/freebsd.sh81
-rw-r--r--gnu/usr.bin/perl/hints/genix.sh1
-rw-r--r--gnu/usr.bin/perl/hints/greenhills.sh1
-rw-r--r--gnu/usr.bin/perl/hints/hpux.sh123
-rw-r--r--gnu/usr.bin/perl/hints/i386.sh1
-rw-r--r--gnu/usr.bin/perl/hints/irix_4.sh24
-rw-r--r--gnu/usr.bin/perl/hints/irix_5.sh34
-rw-r--r--gnu/usr.bin/perl/hints/irix_6.sh43
-rw-r--r--gnu/usr.bin/perl/hints/irix_6_2.sh28
-rw-r--r--gnu/usr.bin/perl/hints/isc.sh35
-rw-r--r--gnu/usr.bin/perl/hints/isc_2.sh22
-rw-r--r--gnu/usr.bin/perl/hints/linux.sh163
-rw-r--r--gnu/usr.bin/perl/hints/machten.sh62
-rw-r--r--gnu/usr.bin/perl/hints/machten_2.sh52
-rw-r--r--gnu/usr.bin/perl/hints/mips.sh14
-rw-r--r--gnu/usr.bin/perl/hints/mpc.sh1
-rw-r--r--gnu/usr.bin/perl/hints/mpeix.sh70
-rw-r--r--gnu/usr.bin/perl/hints/ncr_tower.sh16
-rw-r--r--gnu/usr.bin/perl/hints/netbsd.sh39
-rw-r--r--gnu/usr.bin/perl/hints/next_3.sh41
-rw-r--r--gnu/usr.bin/perl/hints/next_3_0.sh48
-rw-r--r--gnu/usr.bin/perl/hints/opus.sh1
-rw-r--r--gnu/usr.bin/perl/hints/os2.sh139
-rw-r--r--gnu/usr.bin/perl/hints/powerux.sh68
-rw-r--r--gnu/usr.bin/perl/hints/sco.sh90
-rw-r--r--gnu/usr.bin/perl/hints/sco_2_3_0.sh2
-rw-r--r--gnu/usr.bin/perl/hints/sco_2_3_1.sh2
-rw-r--r--gnu/usr.bin/perl/hints/sco_2_3_2.sh2
-rw-r--r--gnu/usr.bin/perl/hints/sco_2_3_3.sh3
-rw-r--r--gnu/usr.bin/perl/hints/sco_2_3_4.sh5
-rw-r--r--gnu/usr.bin/perl/hints/solaris_2.sh346
-rw-r--r--gnu/usr.bin/perl/hints/stellar.sh2
-rw-r--r--gnu/usr.bin/perl/hints/sunos_4_0.sh1
-rw-r--r--gnu/usr.bin/perl/hints/sunos_4_1.sh27
-rw-r--r--gnu/usr.bin/perl/hints/svr4.sh43
-rw-r--r--gnu/usr.bin/perl/hints/ti1500.sh1
-rw-r--r--gnu/usr.bin/perl/hints/titanos.sh40
-rw-r--r--gnu/usr.bin/perl/hints/ultrix_4.sh53
-rw-r--r--gnu/usr.bin/perl/hints/unicos.sh9
-rw-r--r--gnu/usr.bin/perl/hints/unisysdynix.sh1
-rw-r--r--gnu/usr.bin/perl/hints/utekv.sh12
-rw-r--r--gnu/usr.bin/perl/hints/uts.sh2
60 files changed, 2571 insertions, 0 deletions
diff --git a/gnu/usr.bin/perl/hints/3b1.sh b/gnu/usr.bin/perl/hints/3b1.sh
new file mode 100644
index 00000000000..2ed65c591bc
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/3b1.sh
@@ -0,0 +1,15 @@
+d_voidsig='undef'
+d_tosignal='int'
+gidtype='int'
+groupstype='int'
+uidtype='int'
+# Note that 'Configure' is run from 'UU', hence the strange 'ln'
+# command.
+for i in .. ../x2p
+do
+ rm -f $i/3b1cc
+ ln ../hints/3b1cc $i
+done
+echo "\nIf you want to use the 3b1 shared libraries, complete this script then"
+echo "read the header in 3b1cc. [Type carriage return to continue]\c"
+read vch
diff --git a/gnu/usr.bin/perl/hints/3b1cc b/gnu/usr.bin/perl/hints/3b1cc
new file mode 100644
index 00000000000..0001e046b8c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/3b1cc
@@ -0,0 +1,88 @@
+# To incorporate the 7300/3b1 shared library, run this script in place
+# of 'CC'.
+# You can skip this is you have the shcc program installed as cc in
+# your path.
+# First: Run 'Configure' through to the end and run 'make depend'.
+# Second: Edit 'makefile' ( not Makefile ) and set CC = 3b1cc.
+# Third: Edit 'x2p/makefile' and set CC = 3b1cc.
+#
+# Do not use '3b1cc' as the default compiler. The call to the default
+# compiler is used by 'perl' and will not be available when running
+# 'perl'.
+#
+# Note: This script omits libraries which are redundant in the shared
+# library. It is an excerpt from a grander version available upon
+# request from "zebra!vern" or "vern@zebra.alphacdc.com".
+
+CC="cc"
+LIBS=
+INCL=
+
+LD="ld"
+SHAREDLIB="/lib/crt0s.o /lib/shlib.ifile"
+
+# Local variables
+COBJS=
+LOBJS=
+TARG=
+FLAGS=
+CMD=
+
+# These are libraries which are incorporated in the shared library
+OMIT="-lmalloc"
+
+# These routines are in libc.a but not in the shared library
+if [ ! -f vsprintf.o -o ! -f doprnt.o ]
+then
+ echo "Extracting vsprintf.o from libc.a"
+ ar -x /lib/libc.a vsprintf.o doprnt.o
+fi
+
+CMD="$CC"
+while [ $# -gt 0 ]
+do
+ case $1 in
+ -c) CFLAG=$1;;
+ -o) CFLAG=$1
+ shift
+ TARG="$1";;
+ -l*) match=false
+ for i in $OMIT
+ do
+ [ "$i" = "$1" ] && match=true
+ done
+ [ "$match" != false ] || LIBS="$LIBS $1";;
+ -*) FLAGS="$FLAGS $1";;
+ *.c) COBJS="$COBJS $1";;
+ *.o) LOBJS="$LOBJS $1";;
+ *) TARG="$1";;
+ esac
+ shift
+done
+
+if [ -n "$COBJS" ]
+then
+ CMD="$CMD $FLAGS $INCL $LPATHS $LIBS $COBJS $CFLAG $TARG"
+elif [ -n "$LOBJS" ]
+then
+ LOBJS="$LOBJS vsprintf.o doprnt.o"
+ CMD="$LD -r $LOBJS $LPATHS $LIBS -o temp.o"
+ echo "\t$CMD"
+ $CMD
+ CMD="$LD -s temp.o $SHAREDLIB -o $TARG"
+ echo "\t$CMD"
+ $CMD
+ ccrslt=$?
+ if [ $ccrslt -ne 0 ]
+ then
+ exit $ccrslt
+ fi
+ CMD="rm -f temp.o"
+else
+ exit 1
+fi
+echo "\t$CMD"
+$CMD
+ccrslt=$?
+rm -f $$.c
+exit $ccrslt
diff --git a/gnu/usr.bin/perl/hints/README.hints b/gnu/usr.bin/perl/hints/README.hints
new file mode 100644
index 00000000000..6c67585561b
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/README.hints
@@ -0,0 +1,61 @@
+These files are used by Configure to set things which Configure either
+can't or doesn't guess properly. Many of these hints files are from
+perl4. They may or may not work with perl5, but they are probably a
+good starting point.
+
+The following hints files have been tested with at least some version
+of perl5 and are probably reasonably close to being correct:
+
+aix.sh
+aux.sh
+bsdos.sh
+dec_osf.sh
+dgux.sh
+esix4.sh
+freebsd.sh
+hpux_9.sh
+irix_4.sh
+irix_5.sh
+irix_6.sh
+irix_6_2.sh
+isc.sh
+linux.sh
+machten_2.sh
+machten.sh
+ncr_tower.sh
+netbsd.sh
+next_3_2.sh
+sco_3.sh
+solaris_2.sh
+sunos_4_1.sh
+svr4.sh
+titanos.sh
+ultrix_4.sh
+unicos.sh
+utekv.sh
+
+The following hints files have not been tested with perl5:
+
+3b1.sh
+altos486.sh
+apollo.sh
+dnix.sh
+dynix.sh
+fps.sh
+genix.sh
+greenhills.sh
+i386.sh
+isc_2.sh
+mips.sh
+mpc.sh
+opus.sh
+sco_2_3_0.sh
+sco_2_3_1.sh
+sco_2_3_2.sh
+sco_2_3_3.sh
+sco_2_3_4.sh
+stellar.sh
+sunos_4_0.sh
+ti1500.sh
+unisysdynix.sh
+uts.sh
diff --git a/gnu/usr.bin/perl/hints/aix.sh b/gnu/usr.bin/perl/hints/aix.sh
new file mode 100644
index 00000000000..a9f277eed19
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/aix.sh
@@ -0,0 +1,67 @@
+# hints/aix.sh
+# AIX 3.x.x hints thanks to Wayne Scott <wscott@ichips.intel.com>
+# AIX 4.1 hints thanks to Christopher Chan-Nui <channui@austin.ibm.com>.
+# Merged on Mon Feb 6 10:22:35 EST 1995 by
+# Andy Dougherty <doughera@lafcol.lafayette.edu>
+
+
+# Configure finds setrgid and setruid, but they're useless. The man
+# pages state:
+# setrgid: The EPERM error code is always returned.
+# setruid: The EPERM error code is always returned. Processes cannot
+# reset only their real user IDs.
+d_setrgid='undef'
+d_setruid='undef'
+
+alignbytes=8
+
+usemymalloc='n'
+
+# Make setsockopt work correctly. See man page.
+# ccflags='-D_BSD=44'
+
+# uname -m output is too specific and not appropriate here
+case "$archname" in
+'') archname="$osname" ;;
+esac
+
+case "$osvers" in
+3*) d_fchmod=undef
+ ccflags='-D_ALL_SOURCE'
+ ;;
+*) # These hints at least work for 4.x, possibly other systems too.
+ d_setregid='undef'
+ d_setreuid='undef'
+ ccflags='-qmaxmem=8192 -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE'
+ nm_opt='-B'
+ ;;
+esac
+
+# The optimizer in 4.1.1 apparently generates bad code for scope.c.
+# Configure doesn't offer an easy way to propagate extra variables
+# only for certain cases, so the following contortion is required:
+# This is probably not needed in 5.002 and later.
+# scope_cflags='case "$osvers" in 4.1*) optimize=" ";; esac'
+
+# Changes for dynamic linking by Wayne Scott <wscott@ichips.intel.com>
+#
+# Tell perl which symbols to export for dynamic linking.
+case "$cc" in
+*gcc*) ccdlflags='-Xlinker -bE:perl.exp' ;;
+*) ccdlflags='-bE:perl.exp' ;;
+esac
+
+# The first 3 options would not be needed if dynamic libs. could be linked
+# with the compiler instead of ld.
+# -bI:$(PERL_INC)/perl.exp Read the exported symbols from the perl binary
+# -bE:$(BASEEXT).exp Export these symbols. This file contains only one
+# symbol: boot_$(EXP) can it be auto-generated?
+case "$osvers" in
+3*)
+lddlflags='-H512 -T512 -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -e _nostart -lc'
+ ;;
+*)
+lddlflags='-H512 -T512 -bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -b noentry -lc'
+
+;;
+esac
diff --git a/gnu/usr.bin/perl/hints/altos486.sh b/gnu/usr.bin/perl/hints/altos486.sh
new file mode 100644
index 00000000000..b85f907e347
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/altos486.sh
@@ -0,0 +1,3 @@
+: have heard of problems with -lc_s on Altos 486
+set `echo " $libswanted " | sed "s/ c_s / /"`
+libswanted="$*"
diff --git a/gnu/usr.bin/perl/hints/apollo.sh b/gnu/usr.bin/perl/hints/apollo.sh
new file mode 100644
index 00000000000..26180396341
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/apollo.sh
@@ -0,0 +1,51 @@
+# Info from Johann Klasek <jk@auto.tuwien.ac.at>
+# Merged by Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Last revised Fri Jun 2 11:21:27 EDT 1995
+
+# uname -a looks like
+# DomainOS newton 10.4.1 bsd4.3 425t
+
+# We want to use both BSD includes and some of the features from the
+# /sys5 includes.
+ccflags="$ccflags -A cpu,mathchip -I/usr/include -I/sys5/usr/include"
+
+# These adjustments are necessary (why?) to compile malloc.c.
+freetype='void'
+i_malloc='undef'
+malloctype='void *'
+
+# This info is left over from perl4.
+cat <<'EOF'
+Some tests may fail unless you use 'chacl -B'. Also, op/stat
+test 2 may fail occasionally because Apollo doesn't guarantee
+that mtime will be equal to ctime on a newly created unmodified
+file. Finally, the sleep test will sometimes fail. See the
+sleep(3) man page to learn why.
+
+See hints/apollo.sh for hints on running h2ph.
+
+And a note on ccflags:
+
+ Lastly, while -A cpu,mathchip generates optimal code for your DN3500
+ running sr10.3, be aware that you should be using -A cpu,mathlib_sr10
+ if your perl must also run on any machines running sr10.0, sr10.1, or
+ sr10.2. The -A cpu,mathchip option generates code that doesn't work on
+ pre-sr10.3 nodes. See the cc(1) man page for more details.
+ -- Steve Vinoski
+
+EOF
+
+# Running h2ph, on the other hand, presents a challenge.
+
+#The perl header files have to be generated with following commands
+
+#sed 's|/usr/include|/sys5/usr/include|g' h2ph >h2ph.new && chmod +x h2ph.new
+#(set cdir=`pwd`; cd /sys5/usr/include; $cdir/h2ph.new sys/* )
+#(set cdir=`pwd`; cd /usr/include; $cdir/h2ph * sys/* machine/*)
+
+#The SYS5 headers (only sys) are overlayed by the BSD headers. It seems
+#all ok, but once I am going into details, a lot of limitations from
+#'h2ph' are coming up. Lines like "#define NODEV (dev_t)(-1)" result in
+#syntax errors as converted by h2ph.
+
+# Generally, h2ph might need a lot of help.
diff --git a/gnu/usr.bin/perl/hints/aux.sh b/gnu/usr.bin/perl/hints/aux.sh
new file mode 100644
index 00000000000..add0f4dec8f
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/aux.sh
@@ -0,0 +1,20 @@
+# hints/aux.sh
+#
+# Improved by Jake Hamby <jehamby@lightside.com> to support both Apple CC
+# and GNU CC. Tested on A/UX 3.1.1 with GCC 2.6.3.
+# Last modified
+# Fri May 5 10:59:43 EDT 1995
+
+case "$cc" in
+gcc) optimize='-O2'
+ ccflags="$ccflags -D_POSIX_SOURCE"
+ echo "Setting hints for GNU CC."
+ ;;
+*) optimize='-O'
+ ccflags="$ccflags -B/usr/lib/big/ -DPARAM_NEEDS_TYPES -D_POSIX_SOURCE"
+ POSIX_cflags='ccflags="$ccflags -ZP -Du_long=U32"'
+ echo "Setting hints for Apple's CC. If you plan to use"
+ echo "GNU CC, please rerun this Configure script as:"
+ echo "./Configure -Dcc=gcc"
+ ;;
+esac
diff --git a/gnu/usr.bin/perl/hints/bsdos.sh b/gnu/usr.bin/perl/hints/bsdos.sh
new file mode 100644
index 00000000000..aedf4b69676
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/bsdos.sh
@@ -0,0 +1,99 @@
+# hints/bsdos.sh
+#
+# hints file for BSD/OS 2.x (adapted from bsd386.sh)
+# Original by Neil Bowers <neilb@khoros.unm.edu>
+# Tue Oct 4 12:01:34 EDT 1994
+# Updated by Tony Sanders <sanders@bsdi.com>
+# Mon Nov 27 17:25:51 CST 1995
+#
+# You can override the compiler and loader on the Configure command line:
+# ./Configure -Dcc=shlicc2 -Dld=shlicc2
+
+# filename extension for shared library objects
+so='o'
+
+# Don't use this for Perl 5.002, which needs parallel sig_name and sig_num lists
+#sig_name='ZERO HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM URG STOP TSTP CONT CHLD TTIN TTOU IO XCPU XFSZ VTALRM PROF WINCH INFO USR1 USR2 '
+signal_t='void'
+d_voidsig='define'
+d_dosuid='define'
+
+# we don't want to use -lnm, since exp() is busted (in 1.1 anyway)
+set `echo X "$libswanted "| sed -e 's/ nm / /'`
+shift
+libswanted="$*"
+
+# BSD/OS X libraries are in their own tree
+glibpth="$glibpth /usr/X11/lib"
+ldflags="$ldflags -L/usr/X11/lib"
+
+# Avoid telldir prototype conflict in pp_sys.c
+pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
+
+case "$bsdos_distribution" in
+defined)
+ d_portable='no'
+ prefix='/usr/contrib'
+ man3dir='/usr/contrib/man/man3'
+ ;;
+esac
+
+case "$osvers" in
+1.0*)
+ # Avoid problems with HUGE_VAL in POSIX in 1.0's cc.
+ POSIX_cflags='ccflags="$ccflags -UHUGE_VAL"'
+ ;;
+1.1*)
+ # Use gcc2
+ case "$cc" in
+ '') cc='gcc2' ;;
+ esac
+ ;;
+2.0*)
+ # default to GCC 2.X w/shared libraries
+ case "$cc" in
+ '') cc='shlicc2' ;;
+ esac
+
+ # default ld to shared library linker
+ case "$ld" in
+ '') ld='shlicc2' ;;
+ esac
+
+ # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS stuff
+ # in 4.4BSD-based systems (including BSD/OS 2.0 and later).
+ # See http://www.bsdi.com/bsdi-man?setuid(2)
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
+ ;;
+2.1*)
+ # Use 2.1's shlicc2 for dynamic linking
+ # Since cc -o is linking, use it for compiling too.
+ # I'm not sure whether Configure is careful about
+ # distinguishing between the two.
+
+ case "$cc" in
+ '') cc='shlicc2'
+ cccdlflags=' ' ;; # Avoid the dreaded -fpic
+ esac
+
+ # Link with shared libraries in 2.1
+ # Turns out that shlicc2 will automatically use the
+ # shared libs, so don't explicitly specify -lc_s.2.1.*
+ case "$ld" in
+ '') ld='shlicc2'
+ lddlflags='-r' ;; # this one is necessary
+ esac
+
+ # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS stuff
+ # in 4.4BSD-based systems (including BSD/OS 2.0 and later).
+ # See http://www.bsdi.com/bsdi-man?setuid(2)
+ # This stuff may or may not be right, but it works.
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
+ ;;
+esac
diff --git a/gnu/usr.bin/perl/hints/convexos.sh b/gnu/usr.bin/perl/hints/convexos.sh
new file mode 100644
index 00000000000..f0ce4097563
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/convexos.sh
@@ -0,0 +1,20 @@
+# convexos.sh
+# Thanks to David Starks-Browning <dstarks@rc.tudelft.nl>
+# Date: Tue, 17 Jan 1995 10:45:03 -0500 (EST)
+# Subject: Re: Hints for ConvexOS 10.2
+#
+# uname -a output looks like
+# ConvexOS xxxx C38xx 10.2 convex
+# Configure may incorrectly assign $3 to $osvers.
+#
+set X $myuname
+shift
+osvers=$4
+# ConvexOS 10.2 uses POSIX process group semantics for getpgrp but
+# BSD semantics for setpgrp. Perl assumes you don't have such
+# a mixed system, so we undef d_getpgrp.
+# Andy Dougherty doughera@lafcol.lafayette.edu
+#
+case "$osvers" in
+10.2) d_getpgrp='undef' ;;
+esac
diff --git a/gnu/usr.bin/perl/hints/cxux.sh b/gnu/usr.bin/perl/hints/cxux.sh
new file mode 100644
index 00000000000..66608decef0
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/cxux.sh
@@ -0,0 +1,101 @@
+# Hints for the CX/UX 7.1 operating system running on Harris NightHawk
+# machines. written by Tom.Horsley@mail.hcsc.com
+#
+# This config is setup for dynamic linking and the Harris C compiler.
+
+# Check some things and print warnings if this isn't going to work...
+#
+case ${SDE_TARGET:-ELF} in
+ [Cc][Oo][Ff][Ff]|[Oo][Cc][Ss]) echo ''
+ echo ''
+ echo WARNING: Do not build perl 5 with the SDE_TARGET set to
+ echo generate coff object - perl 5 must be built in the ELF
+ echo environment.
+ echo ''
+ echo '';;
+ [Ee][Ll][Ff]) : ;;
+ *) echo ''
+ echo 'Unknown SDE_TARGET value: '$SDE_TARGET
+ echo '';;
+esac
+
+case `uname -r` in
+ [789]*) : ;;
+ *) echo ''
+ echo ''
+ echo WARNING: Perl 5 requires shared library support, it cannot
+ echo be built on releases of CX/UX prior to 7.0 with this hints
+ echo file. You\'ll have to do a separate port for the statically
+ echo linked COFF environment.
+ echo ''
+ echo '';;
+esac
+
+# Internally at Harris, we use a source management tool which winds up
+# giving us read-only copies of source trees that are mostly symbolic links.
+# That upsets the perl build process when it tries to edit opcode.h and
+# embed.h or touch perly.c or perly.h, so turn those files into "real" files
+# when Configure runs. (If you already have "real" source files, this won't
+# do anything).
+#
+if [ -x /usr/local/mkreal ]
+then
+ for i in '.' '..'
+ do
+ for j in embed.h opcode.h perly.h perly.c
+ do
+ if [ -h $i/$j ]
+ then
+ ( cd $i ; /usr/local/mkreal $j ; chmod 666 $j )
+ fi
+ done
+ done
+fi
+
+# We DO NOT want -lmalloc
+#
+libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /'`
+
+# Stick the low-level elf library path in first.
+#
+glibpth="/usr/sde/elf/usr/lib $glibpth"
+
+# Need to use Harris 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).
+#
+cc='/bin/cc -Xa'
+cccdlflags='-Zelf -Zpic'
+ccdlflags='-Zelf -Zlink=dynamic -Wl,-Bexport -u sigaction'
+lddlflags='-Zlink=so'
+
+# Configure imagines that it sees a pw_quota field, but it is really in a
+# different structure than the one it thinks it is looking at.
+d_pwquota='undef'
+
+# Configure sometimes finds what it believes to be ndbm header files on the
+# system and imagines that we have the NDBM library, but we really don't.
+# There is something there that once resembled ndbm, but it is purely
+# for internal use in some tool and has been hacked beyond recognition
+# (or even function :-)
+#
+i_ndbm='undef'
+
+# Don't use the perl malloc
+#
+d_mymalloc='undef'
+usemymalloc='n'
+
+cat <<'EOM'
+
+You will get a failure on lib/posix.t test 16 because ungetc() on
+stdin does not work if no characters have been read from stdin.
+If you type a character at the terminal where you are running
+the tests, you can fool it into thinking it worked.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/dec_osf.sh b/gnu/usr.bin/perl/hints/dec_osf.sh
new file mode 100644
index 00000000000..bfd235faaf9
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/dec_osf.sh
@@ -0,0 +1,11 @@
+# hints/dec_osf.sh
+case "$optimize" in
+'')
+ case "$cc" in
+ *gcc*) ;;
+ *) optimize='-O2 -Olimit 2900' ;;
+ esac
+ ;;
+esac
+ccflags="$ccflags -DSTANDARD_C"
+lddlflags='-shared -expect_unresolved "*" -s -hidden'
diff --git a/gnu/usr.bin/perl/hints/dgux.sh b/gnu/usr.bin/perl/hints/dgux.sh
new file mode 100644
index 00000000000..bc54c945bd1
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/dgux.sh
@@ -0,0 +1,123 @@
+# $Id: dgux.sh,v 1.4 1996/01/18 03:40:38 roderick Exp $
+
+# This is a hints file for DGUX, which is Data General's Unix. It was
+# developed using version 5.4.3.10 of the OS. I think the gross
+# features should work with versions 5.4.2 through 5.4.4.11 with perhaps
+# minor tweaking, but I don't have any older or newer versions installed
+# at the moment with which to test it.
+#
+# DGUX is a SVR4 derivative. It ships with gcc as the standard
+# compiler. Since version 5.4.3.0 it has shipped with Perl 4.036
+# installed in /usr/bin, which is kind of neat. Be careful when you
+# install that you don't overwrite the system version, though (by
+# answering yes to the question about installing perl as /usr/bin/perl),
+# as it would suck to try to get support if the vendor learned that you
+# were physically replacing the system binaries.
+#
+# Be aware that if you opt to use dynamic loading you'll need to set
+# your $LD_LIBRARY_PATH to include the source directory when you build,
+# test and install the software.
+#
+# -Roderick Schertler <roderick@gate.net>
+
+
+# Here are the things from some old DGUX hints files which are different
+# from what's in here now. I don't know the exact reasons that most of
+# these settings were in the hints files, presumably they can be chalked
+# up to old Configure inadequacies and changes in the OS headers and the
+# like. These settings might make a good place to start looking if you
+# have problems.
+#
+# This was specified the the 4.036 hints file. That hints file didn't
+# say what version of the OS it was developed using.
+#
+# cppstdin='/lib/cpp'
+#
+# The 4.036 and 5.001 hints files both contained these. The 5.001 hints
+# file said it was developed with version 5.4.2.01 of DGUX.
+#
+# gidtype='gid_t'
+# groupstype='gid_t'
+# uidtype='uid_t'
+# d_index='define'
+# cc='gcc'
+#
+# These were peculiar to the 5.001 hints file.
+#
+# ccflags='-D_POSIX_SOURCE -D_DGUX_SOURCE'
+#
+# # an ugly hack, since the Configure test for "gcc -P -" hangs.
+# # can't just use 'cppstdin', since our DG has a broken cppstdin :-(
+# cppstdin=`cd ..; pwd`/cppstdin
+# cpprun=`cd ..; pwd`/cppstdin
+#
+# One last note: The 5.001 hints file said "you don't want to use
+# /usr/ucb/cc" in the place at which it set cc to gcc. That in
+# particular baffles me, as I used to have 5.4.2.01 loaded and my memory
+# is telling me that even then /usr/ucb was a symlink to /usr/bin.
+
+
+# The standard system compiler is gcc, but invoking it as cc changes its
+# behavior. I have to pick one name or the other so I can get the
+# dynamic loading switches right (they vary depending on this). I'm
+# picking gcc because there's no way to get at the optimization options
+# and so on when you call it cc.
+case $cc in
+ '')
+ cc=gcc
+ case $optimize in
+ '') optimize=-O2;;
+ esac
+ ;;
+esac
+
+usevfork=true
+
+# DG has this thing set up with symlinks which point to different places
+# depending on environment variables (see elink(5)) and the compiler and
+# related tools use them to access different development environments
+# (COFF, ELF, m88k BCS and so on), see sde(5). The upshot, however, is
+# that when a normal program tries to access one of these elinks it sees
+# no such file (like stat()ting a mis-directed symlink). Setting
+# $plibpth to explicitly include the place to which the elinks point
+# allows Configure to find libraries which vary based on the development
+# environment.
+plibpth="$plibpth \
+ ${SDE_PATH:-/usr}/sde/${TARGET_BINARY_INTERFACE:-m88kdgux}/usr/lib"
+
+# Many functions (eg, gethostent(), killpg(), getpriority(), setruid()
+# dbm_*(), and plenty more) are defined in -ldgc. Usually you don't
+# need to know this (it seems that libdgc.so is searched automatically
+# by ld), but Configure needs to check it otherwise it will report all
+# those functions as missing.
+libswanted="dgc $libswanted"
+
+# Dynamic loading works using the dlopen() functions. Note that dlfcn.h
+# is broken, it declares _dl*() rather than dl*(). (This is in my
+# I'd-open-a-ticket-about-this-if-it-weren't-going-to-be-such-a-hassle
+# file.) You can ignore the warnings caused by the missing
+# declarations, they're harmless.
+usedl=true
+# For cc rather than gcc the flags would be `-K PIC' for compiling and
+# -G for loading. I haven't tested this.
+cccdlflags=-fpic
+lddlflags=-shared
+# The Perl library has to be built as a shared library so that dynamic
+# loading will work (otherwise code loaded with dlopen() won't be able
+# to reference symbols in the main part of perl). Note that since
+# Configure doesn't normally prompt about $d_shrplib this will cause a
+# `Whoa there!'. This is normal, just keep the recommended value. A
+# consequence of all this is that you've got to include the source
+# directory in your LD_LIBRARY_PATH when you're building and testing
+# perl.
+d_shrplib=define
+
+# The system has a function called dg_flock() which is an flock()
+# emulation built using fcntl() locking. Perl currently comes with an
+# flock() emulation which uses lockf(), it should eventually also
+# include an fcntl() emulation of its own. Until that happens I
+# recommend using DG's emulation (and ignoring the `WHOA THERE!' this
+# causes), it provides semantics closer to the original than the lockf()
+# emulation.
+ccflags="$ccflags -Dflock=dg_flock"
+d_flock=define
diff --git a/gnu/usr.bin/perl/hints/dnix.sh b/gnu/usr.bin/perl/hints/dnix.sh
new file mode 100644
index 00000000000..5b67dab8f2d
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/dnix.sh
@@ -0,0 +1 @@
+optimize='-g'
diff --git a/gnu/usr.bin/perl/hints/dynix.sh b/gnu/usr.bin/perl/hints/dynix.sh
new file mode 100644
index 00000000000..4bdb804f530
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/dynix.sh
@@ -0,0 +1,7 @@
+# If this doesn't work, try specifying 'none' for hints.
+d_castneg=undef
+libswanted=`echo $libswanted | sed -e 's/socket /socket seq /'`
+
+# Reported by Craig Milo Rogers <Rogers@ISI.EDU>
+# Date: Tue, 30 Jan 96 15:29:26 PST
+d_casti32=undef
diff --git a/gnu/usr.bin/perl/hints/dynixptx.sh b/gnu/usr.bin/perl/hints/dynixptx.sh
new file mode 100644
index 00000000000..d44f6b82cde
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/dynixptx.sh
@@ -0,0 +1,39 @@
+# Sequent Dynix/Ptx v. 4 hints
+# Created 1996/03/15 by Brad Howerter, bhower@wgc.woodward.com
+# Use Configure -Dcc=gcc to use gcc.
+
+# cc wants -G for dynamic loading
+lddlflags='-G'
+
+# Remove inet to avoid this error in Configure, which causes Configure
+# to be unable to figure out return types:
+# dynamic linker: ./ssize: can't find libinet.so,
+# link with -lsocket instead of -l inet
+
+libswanted=`echo $libswanted | sed -e 's/ inet / /'`
+
+# Configure defaults to usenm='y', which doesn't work very well
+usenm='n'
+
+# The Perl library has to be built as a shared library so that dynamic
+# loading will work (otherwise code loaded with dlopen() won't be able
+# to reference symbols in the main part of perl). Note that since
+# Configure doesn't normally prompt about $d_shrplib this will cause a
+# `Whoa there!'. This is normal, just keep the recommended value. A
+# consequence of all this is that you've got to include the source
+# directory in your LD_LIBRARY_PATH when you're building and testing
+# perl.
+d_shrplib=define
+
+cat <<'EOM' >&4
+
+If you get a 'Whoa there!' with regard to d_shrplib, you can ignore
+it, and just keep the recommended value.
+
+If you wish to use dynamic linking, you must use
+ LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
+or
+ setenv LD_LIBRARY_PATH `pwd`
+before running make.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/epix.sh b/gnu/usr.bin/perl/hints/epix.sh
new file mode 100644
index 00000000000..25e357328f1
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/epix.sh
@@ -0,0 +1,75 @@
+# epix.sh
+# Hint file for EP/IX on CDC RISC boxes.
+#
+# From: Stanley Donald Capelik <sd9sdc@hp100.den.mmc.com>
+# Modified by Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Last modified: Mon May 8 15:29:18 EDT 1995
+#
+# This hint file appears to be based on the svr4 hints for perl5.000,
+# with some CDC-specific additions. I've tried to updated it to
+# match the 5.001 svr4 hints, which allow for dynamic loading,
+# but I have no way of testing the resulting file.
+#
+# There were also some contradictions that I've tried to straighten
+# out, but I'm not sure I got them all right.
+#
+# Edit config.sh to change shmattype from 'char *' to 'void *'"
+
+# Use Configure -Dcc=gcc to use gcc.
+case "$cc" in
+'') cc='/bin/cc3.11'
+ test -f $cc || cc='/usr/ccs/bin/cc'
+ ;;
+esac
+
+usrinc='/svr4/usr/include'
+
+# Various things that Configure apparently doesn't get right.
+strings='/svr4/usr/include/string.h'
+timeincl='/svr4/usr/include/sys/time.h '
+libc='/svr4/usr/lib/libc.a'
+libpth='/svr4/usr/lib /svr4/usr/lib/cmplrs/cc /usr/ccs/lib /svr4/lib /svr4/usr/ucblib'
+osname='epix2'
+archname='epix2'
+d_suidsafe='define' # "./Configure -d" can't figure this out easilly
+d_flock='undef'
+
+# Old version had this, but I'm not sure why since the old version
+# also mucked around with libswanted. This is also definitely wrong
+# if the user is trying to use DB_File or GDBM_File.
+# libs='-lsocket -lnsl -ldbm -ldl -lc -lcrypt -lm -lucb'
+
+# We include support for using libraries in /usr/ucblib, but the setting
+# of libswanted excludes some libraries found there. You may want to
+# prevent "ucb" from being removed from libswanted and see if perl will
+# build on your system.
+ldflags='-non_shared -systype svr4 -L/svr4/usr/lib -L/svr4/usr/lib/cmplrs/cc -L/usr/ccs/lib -L/svr4/usr/ucblib'
+ccflags='-systype svr4 -D__STDC__=0 -I/svr4/usr/include -I/svr4/usr/ucbinclude'
+cppflags='-D__STDC__=0 -I/svr4/usr/include -I/svr4/usr/ucbinclude'
+
+# Don't use problematic libraries:
+
+libswanted=`echo " $libswanted " | sed -e 's/ malloc / /'` # -e 's/ ucb / /'`
+# libmalloc.a - Probably using Perl's malloc() anyway.
+# libucb.a - Remove it if you have problems ld'ing. We include it because
+# it is needed for ODBM_File and NDBM_File extensions.
+if [ -r /usr/ucblib/libucb.a ]; then # If using BSD-compat. library:
+ # Use the "native" counterparts, not the BSD emulation stuff:
+ d_bcmp='undef'; d_bcopy='undef'; d_bzero='undef'; d_safebcpy='undef'
+ d_index='undef'; d_killpg='undef'; d_getprior='undef'; d_setprior='undef'
+ d_setlinebuf='undef'; d_setregid='undef'; d_setreuid='undef'
+fi
+
+lddlflags="-G $ldflags" # Probably needed for dynamic loading
+# We _do_ want the -L paths in ldflags, but we don't want the -non_shared.
+lddlflags=`echo $lddlflags | sed 's/-non_shared//'`
+
+cat <<'EOM' >&4
+
+If you wish to use dynamic linking, you must use
+ LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
+or
+ setenv LD_LIBRARY_PATH `pwd`
+before running make.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/esix4.sh b/gnu/usr.bin/perl/hints/esix4.sh
new file mode 100644
index 00000000000..c8dec8a8b8e
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/esix4.sh
@@ -0,0 +1,41 @@
+# hints/esix4.sh
+# Original esix4 hint file courtesy of
+# Kevin O'Gorman ( kevin@kosman.UUCP, kevin%kosman.uucp@nrc.com )
+#
+# Use Configure -Dcc=gcc to use gcc.
+case "$cc" in
+'') cc='/bin/cc'
+ test -f $cc || cc='/usr/ccs/bin/cc'
+ ;;
+esac
+ldflags='-L/usr/ccs/lib -L/usr/ucblib'
+test -d /usr/local/man || mansrc='none'
+ccflags='-I/usr/include -I/usr/ucbinclude'
+libswanted=`echo " $libswanted " | sed -e 's/ malloc / /' `
+d_index='undef'
+d_suidsafe=define
+usevfork='false'
+if test "$osvers" = "3.0"; then
+ d_gconvert='undef'
+ grep 'define[ ]*AF_OSI[ ]' /usr/include/sys/socket.h | grep '/\*[^*]*$' >/tmp/esix$$
+ if test -s /tmp/esix$$; then
+ cat <<EOM
+
+WARNING: You are likely to have problems compiling the Socket extension
+unless you fix the unterminated comment for AF_OSI in the file
+/usr/include/sys/socket.h.
+
+EOM
+ fi
+ rm -f /tmp/esix$$
+fi
+
+cat <<'EOM'
+
+If you wish to use dynamic linking, you must use
+ LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
+or
+ setenv LD_LIBRARY_PATH `pwd`
+before running make.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/fps.sh b/gnu/usr.bin/perl/hints/fps.sh
new file mode 100644
index 00000000000..7726790ac0c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/fps.sh
@@ -0,0 +1 @@
+ccflags="$ccflags -J"
diff --git a/gnu/usr.bin/perl/hints/freebsd.sh b/gnu/usr.bin/perl/hints/freebsd.sh
new file mode 100644
index 00000000000..1e92053cf54
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/freebsd.sh
@@ -0,0 +1,81 @@
+# Original based on info from
+# Carl M. Fongheiser <cmf@ins.infonet.net>
+# Date: Thu, 28 Jul 1994 19:17:05 -0500 (CDT)
+#
+# Additional 1.1.5 defines from
+# Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
+# Date: Wed, 28 Sep 1994 00:37:46 +0100 (MET)
+#
+# Additional 2.* defines from
+# Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
+# Date: Sat, 8 Apr 1995 20:53:41 +0200 (MET DST)
+#
+# Additional 2.0.5 and 2.1 defined from
+# Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
+# Date: Fri, 12 May 1995 14:30:38 +0200 (MET DST)
+#
+# The two flags "-fpic -DPIC" are used to indicate a
+# will-be-shared object. Configure will guess the -fpic, (and the
+# -DPIC is not used by perl proper) but the full define is included to
+# be consistent with the FreeBSD general shared libs building process.
+#
+# setreuid and friends are inherently broken in all versions of FreeBSD
+# before 2.1-current (before approx date 4/15/95). It is fixed in 2.0.5
+# and what-will-be-2.1
+#
+
+case "$osvers" in
+0.*|1.0*)
+ usedl="$undef"
+ ;;
+1.1*)
+ malloctype='void *'
+ groupstype='int'
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
+ ;;
+2.0-release*)
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
+ ;;
+#
+# Trying to cover 2.0.5, 2.1-current and future 2.1
+# It does not covert all 2.1-current versions as the output of uname
+# changed a few times.
+#
+2.0.5*|2.0-built*|2.1*)
+ usevfork='true'
+ ;;
+#
+# Guesses at what will be needed after 2.1
+*) usevfork='true'
+ ;;
+esac
+
+# Dynamic Loading flags have not changed much, so they are separated
+# out here to avoid duplicating them everywhere.
+case "$osvers" in
+0.*|1.0*) ;;
+*) cccdlflags='-DPIC -fpic'
+ lddlflags="-Bshareable $lddlflags"
+ ;;
+esac
+
+# Avoid telldir prototype conflict in pp_sys.c (FreeBSD uses const DIR *)
+# Configure should test for this. Volunteers?
+pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
+
+cat <<'EOM'
+
+Some users have reported that Configure halts when testing for
+the O_NONBLOCK symbol with a syntax error. This is apparently a
+sh error. Rerunning Configure with ksh apparently fixes the
+problem. Try
+ ksh Configure [your options]
+
+EOM
+
diff --git a/gnu/usr.bin/perl/hints/genix.sh b/gnu/usr.bin/perl/hints/genix.sh
new file mode 100644
index 00000000000..16b6879b46b
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/genix.sh
@@ -0,0 +1 @@
+i_varargs=undef
diff --git a/gnu/usr.bin/perl/hints/greenhills.sh b/gnu/usr.bin/perl/hints/greenhills.sh
new file mode 100644
index 00000000000..da6fcc95b04
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/greenhills.sh
@@ -0,0 +1 @@
+ccflags="$ccflags -X18"
diff --git a/gnu/usr.bin/perl/hints/hpux.sh b/gnu/usr.bin/perl/hints/hpux.sh
new file mode 100644
index 00000000000..8eaf272d70e
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/hpux.sh
@@ -0,0 +1,123 @@
+# hints/hpux.sh
+# Perl Configure hints file for Hewlett Packard HP/UX 9.x and 10.x
+# This file is based on
+# hints/hpux_9.sh, Perl Configure hints file for Hewlett Packard HP/UX 9.x
+# Use Configure -Dcc=gcc to use gcc.
+# From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
+# Date: Thu, 28 Sep 95 11:06:07 PDT
+# and
+# hints/hpux_10.sh, Perl Configure hints file for Hewlett Packard HP/UX 10.x
+# From: Giles Lean <giles@nemeton.com.au>
+# Date: Tue, 27 Jun 1995 08:17:45 +1000
+
+# Use Configure -Dcc=gcc to use gcc.
+# Use Configure -Dprefix=/usr/local to install in /usr/local.
+
+# Some users have reported problems with dynamic loading if the
+# environment variable LDOPTS='-a archive' .
+
+# Turn on the _HPUX_SOURCE flag to get many of the HP add-ons
+ccflags="$ccflags -D_HPUX_SOURCE"
+ldflags="$ldflags"
+
+# Check if you're using the bundled C compiler. This compiler doesn't support
+# ANSI C (the -Aa flag) nor can it produce shared libraries. Thus we have
+# to turn off dynamic loading.
+case "$cc" in
+'') if cc $ccflags -Aa 2>&1 | $contains 'option' >/dev/null
+ then
+ case "$usedl" in
+ '') usedl="$undef"
+ cat <<'EOM'
+
+The bundled C compiler can not produce shared libraries, so you will
+not be able to use dynamic loading.
+
+EOM
+ ;;
+ esac
+ else
+ ccflags="$ccflags -Aa" # The add-on compiler supports ANSI C
+ fi
+ optimize='-O'
+ ;;
+esac
+
+# Determine the architecture type of this system.
+xxuname=`uname -r`
+if echo $xxuname | $contains '10'
+then
+ # This system is running 10.0
+ xxcontext=`grep $(printf %#x $(getconf CPU_VERSION)) /usr/include/sys/unistd.h`
+ if echo "$xxcontext" | $contains 'PA-RISC1.1'
+ then
+ archname='PA-RISC1.1'
+ elif echo "$xxcontext" | $contains 'PA-RISC1.0'
+ then
+ archname='PA-RISC1.0'
+ elif echo "$xxcontext" | $contains 'PA-RISC2'
+ then
+ archname='PA-RISC2'
+ else
+ echo "This 10.0 system is of a PA-RISC type I don't recognize."
+ echo "Debugging output: $xxcontext"
+ archname=''
+ fi
+else
+ # This system is not running 10.0
+ xxcontext=`/bin/getcontext`
+ if echo "$xxcontext" | $contains 'PA-RISC1.1'
+ then
+ archname='PA-RISC1.1'
+ elif echo "$xxcontext" | $contains 'PA-RISC1.0'
+ then
+ archname='PA-RISC1.0'
+ elif echo "$xxcontext" | $contains 'HP-MC'
+ then
+ archname='HP-MC68K'
+ else
+ echo "I cannot recognize what chip set this system is using."
+ echo "Debugging output: $xxcontext"
+ archname=''
+ fi
+fi
+
+# Remove bad libraries that will cause problems
+# (This doesn't remove libraries that don't actually exist)
+# -lld is unneeded (and I can't figure out what it's used for anyway)
+# -ldbm is obsolete and should not be used
+# -lBSD contains BSD-style duplicates of SVR4 routines that cause confusion
+# -lPW is obsolete and should not be used
+# The libraries crypt, malloc, ndir, and net are empty.
+# Although -lndbm should be included, it will make perl blow up if you should
+# copy the binary to a system without libndbm.sl. See ccdlflags below.
+set `echo " $libswanted " | sed -e 's@ ld @ @' -e 's@ dbm @ @' -e 's@ BSD @ @' -e 's@ PW @ @'`
+libswanted="$*"
+
+# By setting the deferred flag below, this means that if you run perl on a
+# system that does not have the required shared library that you linked it
+# with, it will die when you try to access a symbol in the (missing) shared
+# library. If you would rather know at perl startup time that you are
+# missing an important shared library, switch the comments so that immediate,
+# rather than deferred loading is performed.
+# ccdlflags="-Wl,-E $ccdlflags"
+ccdlflags="-Wl,-E -Wl,-B,deferred $ccdlflags"
+
+usemymalloc='y'
+alignbytes=8
+selecttype='int *'
+
+# There are some lingering issues about whether g/setpgrp should be a part
+# of the perl core. This setting should cause perl to conform to the Principle
+# of Least Astonishment. The best thing is to use the g/setpgrp in the POSIX
+# module.
+d_bsdpgrp='define'
+
+# If your compile complains about FLT_MIN, uncomment the next line
+# POSIX_cflags='ccflags="$ccflags -DFLT_MIN=1.17549435E-38"'
+
+# Comment this out if you don't want to follow the SVR4 filesystem layout
+# that HP-UX 10.0 uses
+case "$prefix" in
+'') prefix='/opt/perl5' ;;
+esac
diff --git a/gnu/usr.bin/perl/hints/i386.sh b/gnu/usr.bin/perl/hints/i386.sh
new file mode 100644
index 00000000000..0a810ffea88
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/i386.sh
@@ -0,0 +1 @@
+ldflags='-L/usr/ucblib'
diff --git a/gnu/usr.bin/perl/hints/irix_4.sh b/gnu/usr.bin/perl/hints/irix_4.sh
new file mode 100644
index 00000000000..f934ac7725d
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/irix_4.sh
@@ -0,0 +1,24 @@
+#irix_4.sh
+# Last modified Fri May 5 14:06:37 EDT 1995
+optimize='-O1'
+
+# Does Configure really get these wrong? Why?
+d_voidsig=define
+d_charsprf=undef
+
+case "$cc" in
+*gcc) ccflags="$ccflags -D_BSD_TYPES" ;;
+*) ccflags="$ccflags -ansiposix -signed" ;;
+esac
+
+# This hint due thanks Hershel Walters <walters@smd4d.wes.army.mil>
+# Date: Tue, 31 Jan 1995 16:32:53 -0600 (CST)
+# Subject: IRIX4.0.4(.5? 5.0?) problems
+# I don't know if they affect versions of perl other than 5.000 or
+# versions of IRIX other than 4.0.4.
+#
+cat <<'EOM'
+If you have problems, you might have try including
+ -DSTANDARD_C -cckr
+in ccflags.
+EOM
diff --git a/gnu/usr.bin/perl/hints/irix_5.sh b/gnu/usr.bin/perl/hints/irix_5.sh
new file mode 100644
index 00000000000..5027b1574f8
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/irix_5.sh
@@ -0,0 +1,34 @@
+# irix_5.sh
+# Tue Jan 9 16:04:38 EST 1996
+# Add note about socket patch.
+#
+# Tue Jan 2 14:52:36 EST 1996
+# Apparently, there's a stdio bug that can lead to memory
+# corruption using perl's malloc, but not SGI's malloc.
+usemymalloc='n'
+
+ld=ld
+i_time='define'
+
+case "$cc" in
+*gcc) ccflags="$ccflags -D_BSD_TYPES" ;;
+*) ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -Olimit 3000" ;;
+esac
+
+lddlflags="-shared"
+# For some reason we don't want -lsocket -lnsl or -ldl. Can anyone
+# contribute an explanation?
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+shift
+libswanted="$*"
+
+# Date: Fri, 22 Dec 1995 11:49:17 -0800
+# From: Matthew Black <black@csulb.edu>
+# Subject: sockets broken under IRIX 5.3? YES...how to fix
+# Anyone attempting to use perl4 or perl5 with SGI IRIX 5.3 may discover
+# that sockets are essentially broken. The syslog interface for perl also
+# fails because it uses the broken socket interface. This problem was
+# reported to SGI as bug #255347 and it can be fixed by installing
+# patchSG0000596. The patch can be downloaded from Advantage OnLine (SGI's
+# WWW server) or from the Support Advantage 9/95 Patch CDROM. Thanks to Tom
+# Christiansen and others who provided assistance.
diff --git a/gnu/usr.bin/perl/hints/irix_6.sh b/gnu/usr.bin/perl/hints/irix_6.sh
new file mode 100644
index 00000000000..38fe27d282c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/irix_6.sh
@@ -0,0 +1,43 @@
+# irix_6.sh
+# from Krishna Sethuraman, krishna@sgi.com
+# Date: Wed Jan 18 11:40:08 EST 1995
+# added `-32' to force compilation in 32-bit mode.
+# otherwise, copied from irix_5.sh.
+
+# Perl built with this hints file under IRIX 6.0.1 passes
+# all tests (`make test').
+
+# Tue Jan 2 14:52:36 EST 1996
+# Apparently, there's a stdio bug that can lead to memory
+# corruption using perl's malloc, but not SGI's malloc.
+usemymalloc='n'
+
+ld=ld
+i_time='define'
+cc="cc -32"
+ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -Olimit 3000"
+lddlflags="-32 -shared"
+
+# We don't want these libraries. Anyone know why?
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+shift
+libswanted="$*"
+#
+# The following might be of interest if you wish to try 64-bit mode:
+# irix_6_64bit.sh
+# Krishna Sethuraman, krishna@sgi.com
+# taken from irix_5.sh . Changes from irix_5.sh:
+# Olimit and nested comments (warning 1009) no longer accepted
+# -OPT:fold_arith_limit so POSIX module will optimize
+# no 64bit versions of sun, crypt, nsl, socket, dl dso's available
+# as of IRIX 6.0.1 so omit those from libswanted line via `sed'.
+
+# perl 5 built with this hints file passes most tests (`make test').
+# Fails on op/subst test only. (built and tested under IRIX 6.0.1).
+
+# i_time='define'
+# ccflags="$ccflags -D_POSIX_SOURCE -ansiposix -D_BSD_TYPES -woff 1009 -OPT:fold_arith_limit=1046"
+# lddlflags="-shared"
+# set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ sun / /' -e 's/ crypt / /' -e 's/ nsl / /' -e 's/ dl / /'`
+# shift
+# libswanted="$*"
diff --git a/gnu/usr.bin/perl/hints/irix_6_2.sh b/gnu/usr.bin/perl/hints/irix_6_2.sh
new file mode 100644
index 00000000000..111c4ad02ca
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/irix_6_2.sh
@@ -0,0 +1,28 @@
+# irix_6_2.sh
+# from Krishna Sethuraman, krishna@sgi.com
+# Date: Tue Aug 22 00:38:26 PDT 1995
+# removed -ansiposix and -D_POSIX_SOURCE cuz it was choking
+
+# Perl built with this hints file under IRIX 6.2 passes
+# all tests (`make test').
+
+ld=ld
+i_time='define'
+cc="cc -32"
+ccflags="$ccflags -D_BSD_TYPES -D_BSD_TIME -Olimit 3000"
+#ccflags="$ccflags -Olimit 3000" # this line builds perl but not tk (beta 8)
+lddlflags="-32 -shared"
+# Configure would suggest the default -Kpic, which won't work for SGI.
+# Configure will respect this blank hint value instead.
+cccdlflags=' '
+
+# We don't want these libraries. Anyone know why?
+set `echo X "$libswanted "|sed -e 's/ socket / /' -e 's/ nsl / /' -e 's/ dl / /'`
+shift
+libswanted="$*"
+# Don't need sun crypt bsd PW under 6.2. You *may* need to link
+# with these if you want to run perl built under 6.2 on a 5.3 machine
+# (I haven't checked)
+#set `echo X "$libswanted "|sed -e 's/ sun / /' -e 's/ crypt / /' -e 's/ bsd / /' -e 's/ PW / /'`
+#shift
+#libswanted="$*"
diff --git a/gnu/usr.bin/perl/hints/isc.sh b/gnu/usr.bin/perl/hints/isc.sh
new file mode 100644
index 00000000000..df745a9b252
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/isc.sh
@@ -0,0 +1,35 @@
+# isc.sh
+# Interactive Unix Versions 3 and 4.
+# Compile perl entirely in posix mode.
+# Andy Dougherty doughera@lafcol.lafayette.edu
+# Wed Oct 5 15:57:37 EDT 1994
+#
+# Use Configure -Dcc=gcc to use gcc
+#
+
+# We don't want to explicitly mention -lc (since we're using POSIX mode.)
+# We also don't want -lx (the Xenix compatability libraries.) The only
+# thing that it seems to pick up is chsize(), which has been reported to
+# not work. chsize() can also be implemented via fcntl() in perl (if you
+# define -D_SYSV3). We'll leave in -lPW since it's harmless. Some
+# extension might eventually need it for alloca, though perl doesn't use
+# it.
+
+set `echo X "$libswanted "| sed -e 's/ c / /' -e 's/ x / /'`
+shift
+libswanted="$*"
+
+case "$cc" in
+*gcc*) ccflags="$ccflags -posix"
+ ldflags="$ldflags -posix"
+ ;;
+*) ccflags="$ccflags -Xp -D_POSIX_SOURCE"
+ ldflags="$ldflags -Xp"
+ ;;
+esac
+
+# You can also include -D_SYSV3 to pick up "traditionally visible"
+# symbols hidden by name-space pollution rules. This raises some
+# compilation "redefinition" warnings, but they appear harmless.
+# ccflags="$ccflags -D_SYSV3"
+
diff --git a/gnu/usr.bin/perl/hints/isc_2.sh b/gnu/usr.bin/perl/hints/isc_2.sh
new file mode 100644
index 00000000000..c73908cbc68
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/isc_2.sh
@@ -0,0 +1,22 @@
+# isc_2.sh
+# Interactive Unix Version 2.2
+# Compile perl entirely in posix mode.
+# Andy Dougherty doughera@lafcol.lafayette.edu
+# Wed Oct 5 15:57:37 EDT 1994
+#
+# Use Configure -Dcc=gcc to use gcc
+#
+set `echo X "$libswanted "| sed -e 's/ c / /'`
+shift
+libswanted="$*"
+case "$cc" in
+*gcc*) ccflags="$ccflags -posix"
+ ldflags="$ldflags -posix"
+ ;;
+*) ccflags="$ccflags -Xp -D_POSIX_SOURCE"
+ ldflags="$ldflags -Xp"
+ ;;
+esac
+# Compensate for conflicts in <net/errno.h>
+doio_cflags='ccflags="$ccflags -DENOTSOCK=103"'
+pp_sys_cflags='ccflags="$ccflags -DENOTSOCK=103"'
diff --git a/gnu/usr.bin/perl/hints/linux.sh b/gnu/usr.bin/perl/hints/linux.sh
new file mode 100644
index 00000000000..b76ee89e515
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/linux.sh
@@ -0,0 +1,163 @@
+# hints/linux.sh
+# Original version by rsanders
+# Additional support by Kenneth Albanowski <kjahds@kjahds.com>
+#
+# ELF support by H.J. Lu <hjl@nynexst.com>
+# Additional info from Nigel Head <nhead@ESOC.bitnet>
+# and Kenneth Albanowski <kjahds@kjahds.com>
+#
+# Consolidated by Andy Dougherty <doughera@lafcol.lafayette.edu>
+#
+# Updated Thu Feb 8 11:56:10 EST 1996
+
+# Updated Thu May 30 10:50:22 EDT 1996 by <doughera@lafcol.lafayette.edu>
+
+# Updated Fri Jun 21 11:07:54 EDT 1996
+# NDBM support for ELF renabled by <kjahds@kjahds.com>
+
+# perl goes into the /usr tree. See the Filesystem Standard
+# available via anonymous FTP at tsx-11.mit.edu in
+# /pub/linux/docs/linux-standards/fsstnd.
+# Allow a command line override, e.g. Configure -Dprefix=/foo/bar
+case "$prefix" in
+'') prefix='/usr' ;;
+esac
+
+# gcc-2.6.3 defines _G_HAVE_BOOL to 1, but doesn't actually supply bool.
+ccflags="-Dbool=char -DHAS_BOOL $ccflags"
+
+# BSD compatability library no longer needed
+set `echo X "$libswanted "| sed -e 's/ bsd / /'`
+shift
+libswanted="$*"
+
+# Configure may fail to find lstat() since it's a static/inline
+# function in <sys/stat.h>.
+d_lstat=define
+
+# Explanation?
+case "$usemymalloc" in
+'') usemymalloc='n' ;;
+esac
+
+case "$optimize" in
+'') optimize='-O2' ;;
+esac
+
+# Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
+# for this test.
+cat >try.c <<'EOM'
+/* Test for whether ELF binaries are produced */
+#include <fcntl.h>
+#include <stdlib.h>
+main() {
+ char buffer[4];
+ int i=open("a.out",O_RDONLY);
+ if(i==-1)
+ exit(1); /* fail */
+ if(read(i,&buffer[0],4)<4)
+ exit(1); /* fail */
+ if(buffer[0] != 127 || buffer[1] != 'E' ||
+ buffer[2] != 'L' || buffer[3] != 'F')
+ exit(1); /* fail */
+ exit(0); /* succeed (yes, it's ELF) */
+}
+EOM
+if ${cc:-gcc} try.c >/dev/null 2>&1 && ./a.out; then
+ cat <<'EOM' >&4
+
+You appear to have ELF support. I'll try to use it for dynamic loading.
+If dynamic loading doesn't work, read hints/linux.sh for further information.
+EOM
+
+#For RedHat Linux 3.0.3, you may need to fetch
+# ftp://ftp.redhat.com/pub/redhat-3.0.3/i386/updates/RPMS/ld.so-1.7.14-3.i386.rpm
+#
+
+else
+ cat <<'EOM' >&4
+
+You don't have an ELF gcc. I will use dld if possible. If you are
+using a version of DLD earlier than 3.2.6, or don't have it at all, you
+should probably upgrade. If you are forced to use 3.2.4, you should
+uncomment a couple of lines in hints/linux.sh and restart Configure so
+that shared libraries will be disallowed.
+
+EOM
+ lddlflags="-r $lddlflags"
+ # These empty values are so that Configure doesn't put in the
+ # Linux ELF values.
+ ccdlflags=' '
+ cccdlflags=' '
+ ccflags="-DOVR_DBL_DIG=14 $ccflags"
+ so='sa'
+ dlext='o'
+ nm_so_opt=' '
+ ## If you are using DLD 3.2.4 which does not support shared libs,
+ ## uncomment the next two lines:
+ #ldflags="-static"
+ #so='none'
+
+ # In addition, on some systems there is a problem with perl and NDBM
+ # which causes AnyDBM and NDBM_File to lock up. This is evidenced
+ # in the tests as AnyDBM just freezing. Apparently, this only
+ # happens on a.out systems, so we disable NDBM for all a.out linux
+ # systems. If someone can suggest a more robust test
+ # that would be appreciated.
+ #
+ # More info:
+ # Date: Wed, 7 Feb 1996 03:21:04 +0900
+ # From: Jeffrey Friedl <jfriedl@nff.ncl.omron.co.jp>
+ #
+ # I tried compiling with DBM support and sure enough things locked up
+ # just as advertised. Checking into it, I found that the lockup was
+ # during the call to dbm_open. Not *in* dbm_open -- but between the call
+ # to and the jump into.
+ #
+ # To make a long story short, making sure that the *.a and *.sa pairs of
+ # /usr/lib/lib{m,db,gdbm}.{a,sa}
+ # were perfectly in sync took care of it.
+ #
+ # This will generate a harmless Whoa There! message
+ case "$d_dbm_open" in
+ '') cat <<'EOM' >&4
+
+Disabling ndbm. This will generate a Whoa There message in Configure.
+Read hints/linux.sh for further information.
+EOM
+ # You can override this with Configure -Dd_dbm_open
+ d_dbm_open=undef
+ ;;
+ esac
+fi
+
+rm -f try.c a.out
+
+if /bin/bash -c exit; then
+ echo
+ echo You appear to have a working bash. Good.
+else
+ cat << 'EOM' >&4
+
+*********************** Warning! *********************
+It would appear you have a defective bash shell installed. This is likely to
+give you a failure of op/exec test #5 during the test phase of the build,
+Upgrading to a recent version (1.14.4 or later) should fix the problem.
+******************************************************
+EOM
+
+fi
+
+# Avoid some troublesome gcvt() functions. With some libc versions,
+# perl -e '$x=1e5; print "$x\n";' prints 1e+5. We'd like it
+# to print 100000 instead, consistent with the integer value given
+# on other platforms. This isn't a bug in gcvt, really; more in our
+# expectations for it. We'd like it to behave exactly as
+# sprintf %.16g, but it isn't documented to do that.
+#
+# We'll use sprintf() instead, since we can control the output more
+# precisely.
+#
+# The next version of Configure will check for this automatically.
+d_Gconvert='sprintf((b),"%.*g",(n),(x))'
+
diff --git a/gnu/usr.bin/perl/hints/machten.sh b/gnu/usr.bin/perl/hints/machten.sh
new file mode 100644
index 00000000000..c86707c1827
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/machten.sh
@@ -0,0 +1,62 @@
+# machten.sh
+# This is for MachTen 4.0.2. It might work on other versions too.
+#
+# MachTen users might need a fixed tr from ftp.tenon.com. This should
+# be described in the MachTen release notes.
+#
+# MachTen 2.x has its own hint file.
+#
+# This file has been put together by Andy Dougherty
+# <doughera@lafcol.lafayette.edu> based on comments from lots of
+# folks, especially
+# Mark Pease <peasem@primenet.com>
+# Martijn Koster <m.koster@webcrawler.com>
+# Richard Yeh <rcyeh@cco.caltech.edu>
+#
+# File::Find's use of link count disabled by Dominic Dunlop 950528
+# Perl's use of sigsetjmp etc. disabled by Dominic Dunlop 950521
+#
+# Comments, questions, and improvements welcome!
+#
+# MachTen 4.X does support dynamic loading, but perl doesn't
+# know how to use it yet.
+#
+# Updated by Dominic Dunlop <domo@tcp.ip.lu>
+# Tue May 28 11:20:08 WET DST 1996
+
+# Configure doesn't know how to parse the nm output.
+usenm=undef
+
+# At least on PowerMac, doubles must be aligned on 8 byte boundaries.
+# I don't know if this is true for all MachTen systems, or how to
+# determine this automatically.
+alignbytes=8
+
+# There appears to be a problem with perl's use of sigsetjmp and
+# friends. Use setjmp and friends instead.
+d_sigsetjmp='undef'
+
+# MachTen always reports ony two links to directories, even if they
+# contain subdirectories. Consequently, we use this variable to stop
+# File::Find using the link count to determine whether there are
+# subdirectories to be searched. This will generate a harmless message:
+# Hmm...You had some extra variables I don't know about...I'll try to keep 'em.
+# Propagating recommended variable dont_use_nlink
+dont_use_nlink=define
+
+cat <<'EOM' >&4
+
+Tests
+ io/fs test 4 and
+ op/stat test 3
+may fail since MachTen does not return a useful nlinks field to stat
+on directories.
+
+At the end of Configure, you will see a harmless message
+
+Hmm...You had some extra variables I don't know about...I'll try to keep 'em.
+ Propagating recommended variable dont_use_nlink
+
+Read the File::Find documentation for more information.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/machten_2.sh b/gnu/usr.bin/perl/hints/machten_2.sh
new file mode 100644
index 00000000000..e9fe41df134
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/machten_2.sh
@@ -0,0 +1,52 @@
+# machten.sh
+# This file has been put together by Mark Pease <peasem@primenet.com>
+# Comments, questions, and improvements welcome!
+#
+# MachTen does not support dynamic loading. If you wish to, you
+# can get <ftp://tsx-11.mit.edu/pub/linux/sources/libs/dld-src-3.2.4.tar.gz>
+# compile and install. This is the version of DLD that works with the
+# ext/DynaLoader/dl_dld.xs in the perl5 package. Have fun!
+#
+# Original version was for MachTen 2.1.1.
+# Last modified by Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Fri Feb 9 13:04:45 EST 1996
+
+# I don't know why this is needed. It might be similar to NeXT's
+# problem. See hints/next_3.sh.
+usemymalloc='n'
+
+so='none'
+# These are useful only if you have DLD, but harmless otherwise.
+# Make sure gcc doesn't use -fpic.
+cccdlflags=' ' # That's an empty space.
+lddlflags='-r'
+dlext='o'
+
+# MachTen does not support POSIX enough to compile the POSIX module.
+useposix=false
+
+#MachTen might have an incomplete Berkeley DB implementation.
+i_db=$undef
+
+#MachTen versions 2.X have no hard links. This variable is used
+# by File::Find.
+# This will generate a harmless message:
+# Hmm...You had some extra variables I don't know about...I'll try to keep 'em.
+# Propagating recommended variable dont_use_nlink
+dont_use_nlink=define
+
+cat <<'EOM' >&4
+
+Tests
+ io/fs test 4 and
+ op/stat test 3
+may fail since MachTen versions 2.X have no hard links.
+
+At the end of Configure, you will see a harmless message
+
+Hmm...You had some extra variables I don't know about...I'll try to keep 'em.
+ Propagating recommended variable dont_use_nlink
+
+Read the File::Find documentation for more information.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/mips.sh b/gnu/usr.bin/perl/hints/mips.sh
new file mode 100644
index 00000000000..39cadb4b667
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/mips.sh
@@ -0,0 +1,14 @@
+perl_cflags='optimize="-g"'
+d_volatile=undef
+d_castneg=undef
+cc=cc
+libpth="/usr/lib/cmplrs/cc $libpth"
+groupstype=int
+nm_opt='-B'
+case $PATH in
+*bsd*:/bin:*) cat <<END
+NOTE: Some people have reported having much better luck with Mips CC than
+with the BSD cc. Put /bin first in your PATH if you have difficulties.
+END
+;;
+esac
diff --git a/gnu/usr.bin/perl/hints/mpc.sh b/gnu/usr.bin/perl/hints/mpc.sh
new file mode 100644
index 00000000000..da6fcc95b04
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/mpc.sh
@@ -0,0 +1 @@
+ccflags="$ccflags -X18"
diff --git a/gnu/usr.bin/perl/hints/mpeix.sh b/gnu/usr.bin/perl/hints/mpeix.sh
new file mode 100644
index 00000000000..9fc2737893a
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/mpeix.sh
@@ -0,0 +1,70 @@
+# MPE/IX does not have nm, and the linker doesn't complain
+# about unresolved symbols, so these are all filled in by hand.
+osname='mpeix'
+osvers='5.0'
+alignbytes='8'
+ccflags='-D_POSIX_SOURCE -D_SOCKET_SOURCE -D_POSIX_JOB_CONTROL'
+cc='c89'
+optimize='-g'
+d_safebcpy='undef'
+d_safemcpy='undef'
+intsize='8'
+usemymalloc='y'
+d_casti32='undef'
+d_castneg='undef'
+prefix='/PERL'
+privlib='/PERL/PERL/lib'
+archlib='/PERL/PERL/lib/mpeix'
+clocktype='clock_t'
+gidtype='gid_t'
+groupstype='gid_t'
+lseektype='off_t'
+modetype='mode_t'
+randbits='15'
+ssizetype='ssize_t'
+uidtype='uid_t'
+d_stdstdio='undef'
+i_pwd='undef'
+i_grp='undef'
+#d_fd_set='undef'
+#d_fds_bits='undef'
+d_chroot='undef'
+d_fchmod='undef'
+d_fchown='undef'
+d_flock='undef'
+d_Gconvert='sprintf((b),"%.*g",(n),(x))'
+d_getpgrp2='undef'
+d_getprior='undef'
+d_killpg='undef'
+d_lstat='undef'
+d_seekdir='undef'
+d_telldir='undef'
+d_setpgrp2='undef'
+d_setprior='undef'
+d_setresgid='undef'
+d_setresuid='undef'
+d_setrgid='undef'
+d_setruid='undef'
+d_syscall='undef'
+d_truncate='undef'
+d_setregid='undef'
+d_setreuid='undef'
+d_setpgrp='undef'
+d_chsize='undef'
+d_group='undef'
+d_bcmp='undef'
+d_bcopy='undef'
+d_bzero='undef'
+d_attrib='undef'
+d_dirnamlen='define'
+d_link='undef'
+d_passwd='undef'
+d_pwcomment='undef'
+d_statblks='undef'
+libs='-lsvipc -lsocket -lm -lc'
+ranlib='/bin/true'
+d_nice='undef'
+d_cuserid='undef'
+i_termios='undef'
+d_tcgetpgrp='undef'
+d_tcsetpgrp='undef'
diff --git a/gnu/usr.bin/perl/hints/ncr_tower.sh b/gnu/usr.bin/perl/hints/ncr_tower.sh
new file mode 100644
index 00000000000..7ddb9230e90
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/ncr_tower.sh
@@ -0,0 +1,16 @@
+# For SysV release 2, there are no directory functions defined. To
+# prevent compile errors, acquire the functions written by Doug Gwynn.
+# They are contained in dirent.tar.gz and can be accessed from gnu
+# repositories, as well as other places.
+#
+# The following hints have been verified to work with PERL5 (001m) on
+# SysVr2 with the following caveat(s):
+# 1. Maximum User program space (MAXSPACE) must be at least 2MB.
+# 2. The directory functions mentioned above have been installed.
+#
+optimize='-O0'
+ccflags="$ccflags -W2,-Sl,1500 -W0,-Sp,350,-Ss,2500 -Wp,-Sd,30"
+d_mkdir=$undef
+usemymalloc='y'
+useposix='false'
+so='none'
diff --git a/gnu/usr.bin/perl/hints/netbsd.sh b/gnu/usr.bin/perl/hints/netbsd.sh
new file mode 100644
index 00000000000..24ffe15f730
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/netbsd.sh
@@ -0,0 +1,39 @@
+# hints/netbsd.sh
+#
+# talk to mrg@eterna.com.au if you want to change this file.
+#
+# netbsd keeps dynamic loading dl*() functions in /usr/lib/crt0.o,
+# so Configure doesn't find them (unless you abandon the nm scan).
+# this should be *just* 0.9 below as netbsd 0.9a was the first to
+# introduce shared libraries.
+case "$osvers" in
+0.9|0.8*)
+ usedl="$undef"
+ ;;
+*) d_dlopen=$define
+ d_dlerror=$define
+# we use -fPIC here because -fpic is *NOT* enough for some of the
+# extensions like Tk on some netbsd platforms (the sparc is one)
+ cccdlflags="-DPIC -fPIC $cccdlflags"
+ lddlflags="-Bforcearchive -Bshareable $lddlflags"
+# netbsd has these but they don't really work as advertised. if they
+# are defined, then there isn't a way to make perl call setuid() or
+# setgid(). if they aren't, then ($<, $>) = ($u, $u); will work (same
+# for $(/$)). this is because you can not change the real userid of
+# a process under 4.4BSD.
+ d_setregid="$undef"
+ d_setreuid="$undef"
+ d_setrgid="$undef"
+ d_setruid="$undef"
+ ;;
+esac
+
+# Avoid telldir prototype conflict in pp_sys.c (NetBSD uses const DIR *)
+# Configure should test for this. Volunteers?
+pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
+
+case "$archname" in
+'')
+ archname=`uname -m`-${osname}
+ ;;
+esac
diff --git a/gnu/usr.bin/perl/hints/next_3.sh b/gnu/usr.bin/perl/hints/next_3.sh
new file mode 100644
index 00000000000..7db901c7385
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/next_3.sh
@@ -0,0 +1,41 @@
+# This file has been put together by Anno Siegel <siegel@zrz.TU-Berlin.DE>
+# and Andreas Koenig <k@franz.ww.TU-Berlin.DE>. Comments, questions, and
+# improvements welcome!
+#
+# These hints work for NeXT 3.2 and 3.3. 3.0 has it's own
+# special hint file.
+
+ccflags='-DUSE_NEXT_CTYPE'
+POSIX_cflags='ccflags="-posix $ccflags"'
+ldflags='-u libsys_s'
+libswanted='dbm gdbm db'
+
+lddlflags='-r'
+# Give cccdlflags an empty value since Configure will detect we are
+# using GNU cc and try to specify -fpic for cccdlflags.
+cccdlflags=' '
+
+i_utime='undef'
+groupstype='int'
+direntrytype='struct direct'
+d_strcoll='undef'
+# the simple program `for ($i=1;$i<38771;$i++){$t{$i}=123}' fails
+# with Larry's malloc on NS 3.2 due to broken sbrk()
+usemymalloc='n'
+d_uname='define'
+d_setpgid='define'
+d_setsid='define'
+d_tcgetpgrp='define'
+d_tcsetpgrp='define'
+#
+# On some NeXT machines, the timestamp put by ranlib is not correct, and
+# this may cause useless recompiles. Fix that by adding a sleep before
+# running ranlib. The '5' is an empirical number that's "long enough."
+# (Thanks to Andreas Koenig <k@franz.ww.tu-berlin.de>)
+ranlib='sleep 5; /bin/ranlib'
+#
+# There where reports that the compiler on HPPA machines
+# fails with the -O flag on pp.c.
+if [ `arch` = "hppa" ]; then
+pp_cflags='optimize="-g"'
+fi
diff --git a/gnu/usr.bin/perl/hints/next_3_0.sh b/gnu/usr.bin/perl/hints/next_3_0.sh
new file mode 100644
index 00000000000..3a50247e9c4
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/next_3_0.sh
@@ -0,0 +1,48 @@
+# This file has been put together by Anno Siegel <siegel@zrz.TU-Berlin.DE>
+# and Andreas Koenig <k@franz.ww.TU-Berlin.DE>. Comments, questions, and
+# improvements welcome!
+
+# This file was modified to work on NS 3.0 by Kevin White
+# <klwhite@magnus.acs.ohio-state.edu>, based on suggestions by Andreas
+# Koenig and Andy Dougherty.
+
+echo With NS 3.0 you won\'t be able to use the POSIX module.
+echo Be aware that some of the tests that are run during "make test"
+echo will fail due to the lack of POSIX support on this system.
+echo
+echo Also, if you have the GDBM installed, make sure the header file
+echo is located at a place on the system where the C compiler will
+echo find it. By default, it is placed in /usr/local/include/gdbm.h.
+echo It will not be found there. Try moving it to
+echo /NextDeveloper/Headers/bsd/gdbm.h.
+
+ccflags='-DUSE_NEXT_CTYPE -DNEXT30_NO_ATTRIBUTE'
+POSIX_cflags='ccflags="-posix $ccflags"'
+useposix='undef'
+ldflags='-u libsys_s'
+libswanted='dbm gdbm db'
+#
+lddlflags='-r'
+# Give cccdlflags an empty value since Configure will detect we are
+# using GNU cc and try to specify -fpic for cccdlflags.
+cccdlflags=' '
+#
+i_utime='undef'
+groupstype='int'
+direntrytype='struct direct'
+d_strcoll='undef'
+# the simple program `for ($i=1;$i<38771;$i++){$t{$i}=123}' fails
+# with Larry's malloc on NS 3.2 due to broken sbrk()
+usemymalloc='n'
+d_uname='define'
+d_setpgid='define'
+d_setsid='define'
+d_tcgetpgrp='define'
+d_tcsetpgrp='define'
+#
+# On some NeXT machines, the timestamp put by ranlib is not correct, and
+# this may cause useless recompiles. Fix that by adding a sleep before
+# running ranlib. The '5' is an empirical number that's "long enough."
+# (Thanks to Andreas Koenig <k@franz.ww.tu-berlin.de>)
+ranlib='sleep 5; /bin/ranlib'
+
diff --git a/gnu/usr.bin/perl/hints/opus.sh b/gnu/usr.bin/perl/hints/opus.sh
new file mode 100644
index 00000000000..da6fcc95b04
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/opus.sh
@@ -0,0 +1 @@
+ccflags="$ccflags -X18"
diff --git a/gnu/usr.bin/perl/hints/os2.sh b/gnu/usr.bin/perl/hints/os2.sh
new file mode 100644
index 00000000000..43b4b8ea49b
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/os2.sh
@@ -0,0 +1,139 @@
+# hints/os2.sh
+# This file reflects the tireless work of
+# Ilya Zakharevich <ilya@math.ohio-state.edu>
+#
+# Trimmed and comments added by
+# Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Exactly what is required beyond a standard OS/2 installation?
+# There are notes about "patched pdksh" I don't understand.
+
+# Note that symbol extraction code gives wrong answers (sometimes?) on
+# gethostent and setsid.
+
+# Note that during the .obj compile you need to move the perl.dll file
+# to LIBPATH :-(
+
+#osname="OS/2"
+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`"
+
+if test "$libemx" = "X"; then echo "Cannot find C library!"; fi
+
+libpth="$libemx/st $libemx"
+
+so='dll'
+
+# Additional definitions:
+
+firstmakefile='GNUmakefile'
+exe_ext='.exe'
+
+if [ "$emxaout" != "" ]; then
+ d_shrplib='undef'
+ obj_ext='.o'
+ lib_ext='.a'
+ ar='ar'
+ plibext='.a'
+ d_fork='define'
+ lddlflags='-Zdll'
+ ldflags='-Zexe'
+ ccflags='-DDOSISH -DNO_SYS_ALLOC -DOS2=2 -DEMBED -I. -DPACK_MALLOC'
+ use_clib='c'
+else
+ d_shrplib='define'
+ obj_ext='.obj'
+ lib_ext='.lib'
+ ar='emxomfar'
+ plibext='.lib'
+ d_fork='undef'
+ lddlflags='-Zdll -Zomf -Zcrtdll'
+ # Recursive regmatch may eat 2.5M of stack alone.
+ ldflags='-Zexe -Zomf -Zcrtdll -Zstack 32000'
+ ccflags='-Zomf -DDOSISH -DOS2=2 -DEMBED -I. -DPACK_MALLOC'
+ use_clib='c_import'
+fi
+
+# To get into config.sh (should start at the beginning of line)
+# or you can put it into config.over.
+plibext="$plibext"
+
+#libc="/emx/lib/st/c_import$lib_ext"
+libc="$libemx/st/$use_clib$lib_ext"
+
+if test -r "$libemx/c_alias$lib_ext"; then
+ libnames="$libemx/c_alias$lib_ext"
+fi
+# otherwise puts -lc ???
+
+# [Maybe we should just remove c from $libswanted ?]
+
+libs='-lsocket -lm'
+archobjs="os2$obj_ext"
+
+# Run files without extension with sh - feature of patched ksh
+# [???]
+NOHASHBANG=sh
+# Same with newer ksh
+EXECSHELL=sh
+
+cccdlflags='-Zdll'
+dlsrc='dl_os2.xs'
+ld='gcc'
+usedl='define'
+
+#cppflags='-DDOSISH -DOS2=2 -DEMBED -I.'
+
+# for speedup: (some patches to ungetc are also needed):
+# Note that without this guy tests 8 and 10 of io/tell.t fail, with it 11 fails
+
+stdstdunder=`echo "#include <stdio.h>" | cpp | egrep -c "char +\* +_ptr"`
+d_stdstdio='define'
+d_stdiobase='define'
+d_stdio_ptr_lval='define'
+d_stdio_cnt_lval='define'
+
+if test "$stdstdunder" = 0; then
+ stdio_ptr='((fp)->ptr)'
+ stdio_cnt='((fp)->rcount)'
+ stdio_base='((fp)->buffer)'
+ stdio_bufsiz='((fp)->rcount + (fp)->ptr - (fp)->buffer)'
+ ccflags="$ccflags -DMYTTYNAME"
+ myttyname='define'
+else
+ stdio_ptr='((fp)->_ptr)'
+ stdio_cnt='((fp)->_rcount)'
+ stdio_base='((fp)->_buffer)'
+ stdio_bufsiz='((fp)->_rcount + (fp)->_ptr - (fp)->_buffer)'
+fi
+
+# to put into config.sh
+myttyname="$myttyname"
+
+# To have manpages installed
+nroff='nroff.cmd'
+# above will be overwritten otherwise, indented to avoid config.sh
+ _nroff='nroff.cmd'
+
+ln='cp'
+# Will be rewritten otherwise, indented to not put in config.sh
+ _ln='cp'
+lns='cp'
+
+nm_opt='-p'
+
+####### All the rest is commented
+
+# I do not have these:
+#dynamic_ext='Fcntl GDBM_File SDBM_File POSIX Socket UPM REXXCALL'
+#dynamic_ext='Fcntl POSIX Socket SDBM_File Devel/DProf'
+#extensions='Fcntl GDBM_File SDBM_File POSIX Socket UPM REXXCALL'
+#extensions='Fcntl SDBM_File POSIX Socket Devel/DProf'
+
+# The next two are commented. pdksh handles #!
+# sharpbang='extproc '
+# shsharp='false'
+
+# Commented:
+#startsh='extproc ksh\\n#! sh'
diff --git a/gnu/usr.bin/perl/hints/powerux.sh b/gnu/usr.bin/perl/hints/powerux.sh
new file mode 100644
index 00000000000..b1c082651f6
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/powerux.sh
@@ -0,0 +1,68 @@
+# Hints for the PowerUX operating system running on Harris NightHawk
+# machines. Written by Tom.Horsley@mail.hcsc.com
+#
+# This config uses dynamic linking and the Harris C compiler. It has been
+# tested on a Harris 6800 running PowerUX.
+
+# Internally at Harris, we use a source management tool which winds up
+# giving us read-only copies of source trees that are mostly symbolic links.
+# That upsets the perl build process when it tries to edit opcode.h and
+# embed.h or touch perly.c or perly.h, so turn those files into "real" files
+# when Configure runs. (If you already have "real" source files, this won't
+# do anything).
+#
+if [ -x /usr/local/mkreal ]
+then
+ for i in '.' '..'
+ do
+ for j in embed.h opcode.h perly.h perly.c
+ do
+ if [ -h $i/$j ]
+ then
+ ( cd $i ; /usr/local/mkreal $j ; chmod 666 $j )
+ fi
+ done
+ done
+fi
+
+# We DO NOT want -lmalloc or -lPW, we DO need -lgen to follow -lnsl, so
+# fixup libswanted to reflect that desire.
+#
+libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /' -e 's/ PW / /' -e 's/ nsl / nsl gen /'`
+
+# We DO NOT want /usr/ucblib in glibpth
+#
+glibpth=`echo ' '$glibpth' ' | sed -e 's@ /usr/ucblib @ @'`
+
+# Yes, csh exists, but doesn't work worth beans, if perl tries to use it,
+# the glob test fails, so just pretend it isn't there...
+#
+d_csh='undef'
+
+# Need to use Harris 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).
+#
+cc='/bin/cc'
+cccdlflags='-Zpic'
+ccdlflags='-Zlink=dynamic -Wl,-Bexport'
+lddlflags='-Zlink=so'
+
+# Configure sometime finds what it believes to be ndbm header files on the
+# system and imagines that we have the NDBM library, but we really don't.
+# There is something there that once resembled ndbm, but it is purely
+# for internal use in some tool and has been hacked beyond recognition
+# (or even function :-)
+#
+i_ndbm='undef'
+
+# Misc other flags that might be able to change, but I know these work right.
+#
+d_suidsafe='define'
+d_isascii='define'
+d_mymalloc='undef'
+usemymalloc='n'
+ssizetype='ssize_t'
+usevfork='false'
diff --git a/gnu/usr.bin/perl/hints/sco.sh b/gnu/usr.bin/perl/hints/sco.sh
new file mode 100644
index 00000000000..307e27e4db2
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco.sh
@@ -0,0 +1,90 @@
+# sco_3.sh
+# Courtesy of Joel Rosi-Schwartz <joel@ftechne.co.uk>
+# Additional SCO version info from
+# Peter Wolfe <wolfe@teloseng.com>
+# Last revised
+# Tue Feb 13 09:09:10 EST 1996
+
+# To use gcc, use sh Configure -Dcc=gcc
+
+# figure out what SCO version we are:
+case `uname -X | egrep '^Release'` in
+*3.2v4.2) scorls=3 ;;
+*3.2v5.*) scorls=5 ;;
+*) scorls=3 ;; # this probabaly shouldn't happen
+esac
+
+# Try to use libintl.a since it has strcoll and strxfrm
+libswanted="intl $libswanted"
+# Try to use libdbm.nfs.a since it has dbmclose.
+#
+if test -f /usr/lib/libdbm.nfs.a ; then
+ libswanted=`echo "dbm.nfs $libswanted " | sed -e 's/ dbm / /'`
+fi
+set X $libswanted
+shift
+libswanted="$*"
+
+# We don't want Xenix cross-development libraries
+glibpth=`echo $glibpth | sed -e 's! /usr/lib/386 ! !' -e 's! /lib/386 ! !'`
+xlibpth=''
+
+case "$cc" in
+gcc)
+ ccflags="$ccflags -U M_XENIX"
+ optimize="$optimize -O2"
+ ;;
+scocc) ;;
+
+*) # Apparently, SCO's cc gives rather verbose warnings
+ # Set -w0 to turn them off.
+ case $scorls in
+ 3) ccflags="$ccflags -W0 -quiet -U M_XENIX" ;;
+ 5) ccflags="$ccflags -w0 -U M_XENIX" ;;
+ esac
+ ;;
+esac
+i_varargs=undef
+
+# I have received one report that nm extraction doesn't work if you're
+# using the scocc compiler. This system had the following 'myconfig'
+# uname='xxx xxx 3.2 2 i386 '
+# cc='scocc', optimize='-O'
+usenm='false'
+
+# If you want to use nm, you'll probably have to use nm -p. The
+# following does that for you:
+nm_opt='-p'
+
+# I have received one report that you can't include utime.h in
+# pp_sys.c. Uncomment the following line if that happens to you:
+# i_utime=undef
+
+# Apparently, some versions of SCO include both .so and .a libraries,
+# but they don't mix as they do on other ELF systems. The upshot is
+# that Configure finds -ldl (libdl.so) but 'ld' complains it can't
+# find libdl.a.
+# I don't know which systems have this feature, so I'll just remove
+# -dl from libswanted for all SCO systems until someone can figure
+# out how to get dynamic loading working on SCO.
+#
+# The output of uname -X on one such system was
+# System = SCO_SV
+# Node = xxxxx
+# Release = 3.2v5.0.0
+# KernelID = 95/08/08
+# Machine = Pentium
+# BusType = ISA
+# Serial = xxxxx
+# Users = 5-user
+# OEM# = 0
+# Origin# = 1
+# NumCPU = 1
+#
+# The 5.0.0 on the Release= line is probably the thing to watch.
+# Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Thu Feb 1 15:06:56 EST 1996
+libswanted=`echo " $libswanted " | sed -e 's/ dl / /'`
+set X $libswanted
+shift
+libswanted="$*"
diff --git a/gnu/usr.bin/perl/hints/sco_2_3_0.sh b/gnu/usr.bin/perl/hints/sco_2_3_0.sh
new file mode 100644
index 00000000000..146363ab3d5
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco_2_3_0.sh
@@ -0,0 +1,2 @@
+yacc='/usr/bin/yacc -Sm25000'
+i_dirent=undef
diff --git a/gnu/usr.bin/perl/hints/sco_2_3_1.sh b/gnu/usr.bin/perl/hints/sco_2_3_1.sh
new file mode 100644
index 00000000000..146363ab3d5
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco_2_3_1.sh
@@ -0,0 +1,2 @@
+yacc='/usr/bin/yacc -Sm25000'
+i_dirent=undef
diff --git a/gnu/usr.bin/perl/hints/sco_2_3_2.sh b/gnu/usr.bin/perl/hints/sco_2_3_2.sh
new file mode 100644
index 00000000000..e113a4ec65e
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco_2_3_2.sh
@@ -0,0 +1,2 @@
+yacc='/usr/bin/yacc -Sm25000'
+libswanted=`echo " $libswanted "| sed 's/ x / /'`
diff --git a/gnu/usr.bin/perl/hints/sco_2_3_3.sh b/gnu/usr.bin/perl/hints/sco_2_3_3.sh
new file mode 100644
index 00000000000..10baafd6a30
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco_2_3_3.sh
@@ -0,0 +1,3 @@
+yacc='/usr/bin/yacc -Sm25000'
+echo "NOTE: you may have problems due to a spurious semicolon on the strerror()"
+echo "macro definition in /usr/include/string.h. If so, delete the semicolon."
diff --git a/gnu/usr.bin/perl/hints/sco_2_3_4.sh b/gnu/usr.bin/perl/hints/sco_2_3_4.sh
new file mode 100644
index 00000000000..84f58172b3c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sco_2_3_4.sh
@@ -0,0 +1,5 @@
+yacc='/usr/bin/yacc -Sm25000'
+ccflags="$ccflags -UM_I86"
+usemymalloc='y'
+echo "NOTE: you may have problems due to a spurious semicolon on the strerror()"
+echo "macro definition in /usr/include/string.h. If so, delete the semicolon."
diff --git a/gnu/usr.bin/perl/hints/solaris_2.sh b/gnu/usr.bin/perl/hints/solaris_2.sh
new file mode 100644
index 00000000000..6ce4666421e
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/solaris_2.sh
@@ -0,0 +1,346 @@
+# hints/solaris_2.sh
+# Last modified: Thu Feb 8 11:38:12 EST 1996
+# Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Based on input from lots of folks, especially
+# Dean Roehrich <roehrich@ironwood-fddi.cray.com>
+
+# See man vfork.
+usevfork=false
+
+d_suidsafe=define
+
+# Avoid all libraries in /usr/ucblib.
+set `echo $glibpth | sed -e 's@/usr/ucblib@@'`
+glibpth="$*"
+
+# Remove bad libraries. -lucb contains incompatible routines.
+# -lld doesn't do anything useful.
+# -lmalloc can cause a problem with GNU CC & Solaris. Specifically,
+# libmalloc.a may allocate memory that is only 4 byte aligned, but
+# GNU CC on the Sparc assumes that doubles are 8 byte aligned.
+# Thanks to Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+set `echo " $libswanted " | sed -e 's@ ld @ @' -e 's@ malloc @ @' -e 's@ ucb @ @'`
+libswanted="$*"
+
+# Look for architecture name. We want to suggest a useful default.
+case "$archname" in
+'')
+ if test -f /usr/bin/arch; then
+ archname=`/usr/bin/arch`
+ archname="${archname}-${osname}"
+ elif test -f /usr/ucb/arch; then
+ archname=`/usr/ucb/arch`
+ archname="${archname}-${osname}"
+ fi
+ ;;
+esac
+
+# Solaris 2.5 has reintroduced some BSD-ish functions into libc.
+# This is no problem unless you compile perl under Solaris 2.5 but
+# try to run the binary on 2.4. Here, we take the easy way out by
+# claiming we don't have these functions. perl.h works around all of
+# these anyway.
+# XXX Eventually, I should fix perl.h to prefer the POSIX versions.
+d_bcmp='undef'
+d_bcopy='undef'
+d_safebcpy='undef'
+d_index='undef'
+
+######################################################
+# General sanity testing. See below for excerpts from the Solaris FAQ.
+
+# From roehrich@ironwood-fddi.cray.com Wed Sep 27 12:51:46 1995
+# Date: Thu, 7 Sep 1995 16:31:40 -0500
+# From: Dean Roehrich <roehrich@ironwood-fddi.cray.com>
+# To: perl5-porters@africa.nicoh.com
+# Subject: Re: On perl5/solaris/gcc
+
+# Here's another draft of the perl5/solaris/gcc sanity-checker.
+
+case $PATH in
+*/usr/ucb*:/usr/bin:*|*/usr/ucb*:/usr/bin) cat <<END
+
+NOTE: Some people have reported problems with /usr/ucb/cc.
+Remove /usr/ucb from your PATH if you have difficulties.
+
+END
+;;
+esac
+
+
+# Check that /dev/fd is mounted. If it is not mounted, let the
+# user know that suid scripts may not work.
+/usr/bin/df /dev/fd 2>&1 > /dev/null
+case $? in
+0) ;;
+*)
+ cat <<END
+
+NOTE: Your system does not have /dev/fd mounted. If you want to
+be able to use set-uid scripts you must ask your system administrator
+to mount /dev/fd.
+
+END
+ ;;
+esac
+
+
+# See if libucb can be found in /usr/lib. If it is, warn the user
+# that this may cause problems while building Perl extensions.
+/usr/bin/ls /usr/lib/libucb* >/dev/null 2>&1
+case $? in
+0)
+ cat <<END
+
+NOTE: libucb has been found in /usr/lib. libucb should reside in
+/usr/ucblib. You may have trouble while building Perl extensions.
+
+END
+;;
+esac
+
+
+# See if make(1) is GNU make(1).
+# If it is, make sure the setgid bit is not set.
+make -v > make.vers 2>&1
+if grep GNU make.vers > /dev/null 2>&1; then
+ tmp=`/usr/bin/which make`
+ case "`/usr/bin/ls -l $tmp`" in
+ ??????s*)
+ cat <<END
+
+NOTE: Your PATH points to GNU make, and your GNU make has the set-group-id
+bit set. You must either rearrange your PATH to put /usr/ccs/bin before the
+GNU utilities or you must ask your system administrator to disable the
+set-group-id bit on GNU make.
+
+END
+ ;;
+ esac
+fi
+rm -f make.vers
+
+# If the C compiler is gcc:
+# - check the fixed-includes
+# - check as(1) and ld(1), they should not be GNU
+# If the C compiler is not gcc:
+# - check as(1) and ld(1), they should not be GNU
+#
+# Watch out in case they have not set $cc.
+case "`${cc:-cc} -v 2>&1`" in
+*gcc*)
+ #
+ # Using gcc.
+ #
+ #echo Using gcc
+
+ # Get gcc to share its secrets.
+ echo 'main() { return 0; }' > try.c
+ verbose=`${cc:-cc} -v -o try try.c 2>&1`
+ rm -f try try.c
+ tmp=`echo "$verbose" | grep '^Reading' |
+ awk '{print $NF}' | sed 's/specs$/include/'`
+
+ # Determine if the fixed-includes look like they'll work.
+ # Doesn't work anymore for gcc-2.7.2.
+
+ # See if as(1) is GNU as(1). GNU as(1) won't work for this job.
+ case $verbose in
+ */usr/ccs/bin/as*) ;;
+ *)
+ cat <<END
+
+NOTE: You are using GNU as(1). GNU as(1) will not build Perl.
+You must arrange to use /usr/ccs/bin/as, perhaps by setting
+GCC_EXEC_PREFIX or by including -B/usr/ccs/bin in your cc command.
+
+END
+ ;;
+ esac
+
+ # See if ld(1) is GNU ld(1). GNU ld(1) won't work for this job.
+ case $verbose in
+ */usr/ccs/bin/ld*) ;;
+ *)
+ cat <<END
+
+NOTE: You are using GNU ld(1). GNU ld(1) will not build Perl.
+You must arrange to use /usr/ccs/bin/ld, perhaps by setting
+GCC_EXEC_PREFIX or by including -B/usr/ccs/bin in your cc command.
+
+END
+ ;;
+ esac
+
+ ;; #using gcc
+*)
+ #
+ # Not using gcc.
+ #
+ #echo Not using gcc
+
+ # See if as(1) is GNU as(1). GNU as(1) won't work for this job.
+ case `as --version < /dev/null 2>&1` in
+ *GNU*)
+ cat <<END
+
+NOTE: You are using GNU as(1). GNU as(1) will not build Perl.
+You must arrange to use /usr/ccs/bin, perhaps by adding it to the
+beginning of your PATH.
+
+END
+ ;;
+ esac
+
+ # See if ld(1) is GNU ld(1). GNU ld(1) won't work for this job.
+ case `ld --version < /dev/null 2>&1` in
+ *GNU*)
+ cat <<END
+
+NOTE: You are using GNU ld(1). GNU ld(1) will not build Perl.
+You must arrange to use /usr/ccs/bin, perhaps by adding it to the
+beginning of your PATH
+
+END
+ ;;
+ esac
+
+ ;; #not using gcc
+esac
+
+# as --version or ld --version might dump core.
+rm -f core
+
+# This is just a trick to include some useful notes.
+cat > /dev/null <<'End_of_Solaris_Notes'
+
+Here are some notes kindly contributed by Dean Roehrich.
+
+-----
+Generic notes about building Perl5 on Solaris:
+- Use /usr/ccs/bin/make.
+- If you use GNU make, remove its setgid bit.
+- Remove all instances of *ucb* from your path.
+- Make sure libucb is not in /usr/lib (it should be in /usr/ucblib).
+- Do not use GNU as or GNU ld, or any of GNU binutils or GNU libc.
+- Do not use /usr/ucb/cc.
+- Do not change Configure's default answers, except for the path names.
+- Do not use -lmalloc.
+- Do not build on SunOS 4 and expect it to work properly on SunOS 5.
+- /dev/fd must be mounted if you want set-uid scripts to work.
+
+
+Here are the gcc-related questions and answers from the Solaris 2 FAQ. Note
+the themes:
+ - run fixincludes
+ - run fixincludes correctly
+ - don't use GNU as or GNU ld
+
+Question 5.7 covers the __builtin_va_alist problem people are always seeing.
+Question 6.1.3 covers the GNU as and GNU ld issues which are always biting
+people.
+Question 6.9 is for those who are still trying to compile Perl4.
+
+The latest Solaris 2 FAQ can be found in the following locations:
+ rtfm.mit.edu:/pub/usenet-by-group/comp.sys.sun.admin
+ ftp.fwi.uva.nl:/pub/solaris
+
+Perl5 comes with a script in the top-level directory called "myconfig" which
+will print a summary of the configuration in your config.sh. My summary for
+Solaris 2.4 and gcc 2.6.3 follows. I have also built with gcc 2.7.0 and the
+results are identical. This configuration was generated with Configure's -d
+option (take all defaults, don't bother prompting me). All tests pass for
+Perl5.001, patch.1m.
+
+Summary of my perl5 (patchlevel 1) configuration:
+ Platform:
+ osname=solaris, osver=2.4, archname=sun4-solaris
+ uname='sunos poplar 5.4 generic_101945-27 sun4d sparc '
+ hint=recommended
+ Compiler:
+ cc='gcc', optimize='-O', ld='gcc'
+ cppflags=''
+ ccflags =''
+ ldflags =''
+ stdchar='unsigned char', d_stdstdio=define, usevfork=false
+ voidflags=15, castflags=0, d_casti32=define, d_castneg=define
+ intsize=4, alignbytes=8, usemymalloc=y, randbits=15
+ Libraries:
+ so=so
+ libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
+ libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
+ libc=/usr/lib/libc.so
+ Dynamic Linking:
+ dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef
+ cccdlflags='-fpic', ccdlflags=' ', lddlflags='-G'
+
+
+Dean
+roehrich@cray.com
+9/7/95
+
+-----------
+
+From: Casper.Dik@Holland.Sun.COM (Casper H.S. Dik - Network Security Engineer)
+Subject: Solaris 2 Frequently Asked Questions (FAQ) 1.48
+Date: 25 Jul 1995 12:20:18 GMT
+
+5.7) Why do I get __builtin_va_alist or __builtin_va_arg_incr undefined?
+
+ You're using gcc without properly installing the gcc fixed
+ include files. Or you ran fixincludes after installing gcc
+ w/o moving the gcc supplied varargs.h and stdarg.h files
+ out of the way and moving them back again later. This often
+ happens when people install gcc from a binary distribution.
+ If there's a tmp directory in gcc's include directory, fixincludes
+ didn't complete. You should have run "just-fixinc" instead.
+
+ Another possible cause is using ``gcc -I/usr/include.''
+
+6.1) Where is the C compiler or where can I get one?
+
+ [...]
+
+ 3) Gcc.
+
+ Gcc is available from the GNU archives in source and binary
+ form. Look in a directory called sparc-sun-solaris2 for
+ binaries. You need gcc 2.3.3 or later. You should not use
+ GNU as or GNU ld. Make sure you run just-fixinc if you use
+ a binary distribution. Better is to get a binary version and
+ use that to bootstrap gcc from source.
+
+ [...]
+
+ When you install gcc, don't make the mistake of installing
+ GNU binutils or GNU libc, they are not as capable as their
+ counterparts you get with Solaris 2.x.
+
+6.9) I can't get perl 4.036 to compile or run.
+
+ Run Configure, and use the solaris_2_0 hints, *don't* use
+ the solaris_2_1 hints and don't use the config.sh you may
+ already have. First you must make sure Configure and make
+ don't find /usr/ucb/cc. (It must use gcc or the native C
+ compiler: /opt/SUNWspro/bin/cc)
+
+ Some questions need a special answer.
+
+ Are your system (especially dbm) libraries compiled with gcc? [y] y
+
+ yes: gcc 2.3.3 or later uses the standard calling
+ conventions, same as Sun's C.
+
+ Any additional cc flags? [ -traditional -Dvolatile=__volatile__
+ -I/usr/ucbinclude] -traditional -Dvolatile=__volatile__
+ Remove /usr/ucbinclude.
+
+ Any additional libraries? [-lsocket -lnsl -ldbm -lmalloc -lm
+ -lucb] -lsocket -lnsl -lm
+
+ Don't include -ldbm, -lmalloc and -lucb.
+
+ Perl 5 compiled out of the box.
+
+End_of_Solaris_Notes
+
diff --git a/gnu/usr.bin/perl/hints/stellar.sh b/gnu/usr.bin/perl/hints/stellar.sh
new file mode 100644
index 00000000000..23e15e90912
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/stellar.sh
@@ -0,0 +1,2 @@
+optimize="-O0"
+ccflags="$ccflags -nw"
diff --git a/gnu/usr.bin/perl/hints/sunos_4_0.sh b/gnu/usr.bin/perl/hints/sunos_4_0.sh
new file mode 100644
index 00000000000..99fce3f44b4
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sunos_4_0.sh
@@ -0,0 +1 @@
+ccflags="$ccflags -DFPUTS_BOTCH"
diff --git a/gnu/usr.bin/perl/hints/sunos_4_1.sh b/gnu/usr.bin/perl/hints/sunos_4_1.sh
new file mode 100644
index 00000000000..ee42e2c448c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/sunos_4_1.sh
@@ -0,0 +1,27 @@
+# hints/sunos_4_1.sh
+# Last modified: Thu Feb 8 11:46:05 EST 1996
+# Andy Dougherty <doughera@lafcol.lafayette.edu>
+
+case "$cc" in
+*gcc*) usevfork=false ;;
+*) usevfork=true ;;
+esac
+
+# Configure will issue a WHOA warning. The problem is that
+# Configure finds getzname, not tzname. If you're in the System V
+# environment, you can set d_tzname='define' since tzname[] is
+# available in the System V environment.
+d_tzname='undef'
+
+# SunOS 4.1.3 has two extra fields in struct tm. This works around
+# 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
+if cat -b /dev/null 2>/dev/null
+then # bsd
+ groupstype='int'
+else # sys5
+ groupstype='gid_t'
+fi
+
diff --git a/gnu/usr.bin/perl/hints/svr4.sh b/gnu/usr.bin/perl/hints/svr4.sh
new file mode 100644
index 00000000000..5569274753c
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/svr4.sh
@@ -0,0 +1,43 @@
+# svr4 hints, System V Release 4.x
+# Last modified 1995/01/28 by Tye McQueen, tye@metronet.com
+# Use Configure -Dcc=gcc to use gcc.
+case "$cc" in
+'') cc='/bin/cc'
+ test -f $cc || cc='/usr/ccs/bin/cc'
+ ;;
+esac
+# We include support for using libraries in /usr/ucblib, but the setting
+# of libswanted excludes some libraries found there. You may want to
+# prevent "ucb" from being removed from libswanted and see if perl will
+# build on your system.
+ldflags='-L/usr/ccs/lib -L/usr/ucblib'
+ccflags='-I/usr/include -I/usr/ucbinclude'
+# Don't use problematic libraries:
+libswanted=`echo " $libswanted " | sed -e 's/ malloc / /'` # -e 's/ ucb / /'`
+# libmalloc.a - Probably using Perl's malloc() anyway.
+# libucb.a - Remove it if you have problems ld'ing. We include it because
+# it is needed for ODBM_File and NDBM_File extensions.
+if [ -r /usr/ucblib/libucb.a ]; then # If using BSD-compat. library:
+ d_gconvert='undef' # Unusuable under UnixWare 1.1 [use gcvt() instead]
+ # Use the "native" counterparts, not the BSD emulation stuff:
+ d_bcmp='undef' d_bcopy='undef' d_bzero='undef' d_safebcpy='undef'
+ d_index='undef' d_killpg='undef' d_getprior='undef' d_setprior='undef'
+ d_setlinebuf='undef' d_setregid='undef' d_setreuid='undef'
+fi
+d_suidsafe='define' # "./Configure -d" can't figure this out easilly
+usevfork='false'
+
+# Configure may fail to find lstat() since it's a static/inline
+# function in <sys/stat.h> on Unisys U6000 SVR4, and possibly
+# other SVR4 derivatives.
+d_lstat=define
+
+cat <<'EOM' >&4
+
+If you wish to use dynamic linking, you must use
+ LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
+or
+ setenv LD_LIBRARY_PATH `pwd`
+before running make.
+
+EOM
diff --git a/gnu/usr.bin/perl/hints/ti1500.sh b/gnu/usr.bin/perl/hints/ti1500.sh
new file mode 100644
index 00000000000..69482d86802
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/ti1500.sh
@@ -0,0 +1 @@
+usemymalloc='n'
diff --git a/gnu/usr.bin/perl/hints/titanos.sh b/gnu/usr.bin/perl/hints/titanos.sh
new file mode 100644
index 00000000000..0f382ac0ff9
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/titanos.sh
@@ -0,0 +1,40 @@
+# Hints file (perl 4.019) for Kubota Pacific's Titan 3000 Series Machines.
+# Created by: JT McDuffie (jt@kpc.com) 26 DEC 1991
+# p5ed by: Jarkko Hietaniemi <jhi@hut.fi> Aug 27 1994
+# NOTE: You should run Configure with tcsh (yes, tcsh).
+# Comments by Andy Dougherty <doughera@lafcol.lafayette.edu> 28 Mar 1995
+alignbytes="8"
+byteorder="4321"
+castflags='0'
+gidtype='ushort'
+groupstype='unsigned short'
+intsize='4'
+usenm='true'
+nm_opt='-eh'
+malloctype='void *'
+models='none'
+ccflags="$ccflags -I/usr/include/net -DDEBUGGING -DSTANDARD_C"
+cppflags="$cppflags -I/usr/include/net -DDEBUGGING -DSTANDARD_C"
+stdchar='unsigned char'
+#
+# Apparently there are some harmful libs in Configure's $libswanted.
+# Perl5.000 had: libs='-lnsl -ldbm -lPW -lmalloc -lm'
+# Unfortunately, this line prevents users from including things like
+# -lgdbm and -ldb, which they may or may not have or want.
+# We should probably fiddle with libswanted instead of libs.
+# And even there, we should only bother to delete harmful libraries.
+# However, I don't know what they are or why they should be deleted,
+# so this will have to do for now. --AD 28 Mar 1995
+libswanted='nsl dbm gdbm db PW malloc m'
+#
+# Extensions: This system can not compile POSIX. We'll let Configure
+# figure out the others. Certainly Fcntl, Socket, and at least one *DB*
+# extension should be included.
+# perl5.000 had: static_ext='DynaLoader NDBM_File Socket'
+useposix='n'
+#
+uidtype='ushort'
+voidflags='7'
+inclwanted='/usr/include /usr/include/net'
+libpth='/usr/lib /usr/local/lib /lib'
+pth='. /bin /usr/bin /usr/ucb /usr/local/bin /usr/X11/bin /usr/lbin /etc /usr/lib'
diff --git a/gnu/usr.bin/perl/hints/ultrix_4.sh b/gnu/usr.bin/perl/hints/ultrix_4.sh
new file mode 100644
index 00000000000..e00450792dc
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/ultrix_4.sh
@@ -0,0 +1,53 @@
+# hints/ultrix_4.sh
+# Last updated by Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Fri Feb 10 10:04:51 EST 1995
+#
+# Use Configure -Dcc=gcc to use gcc.
+#
+# I don't know if -g is really needed. (AD)
+case "$optimize" in
+'') optimize=-g ;;
+esac
+
+# Some users have reported Configure runs *much* faster if you
+# replace all occurences of /bin/sh by /bin/sh5
+# Something like:
+# sed 's!/bin/sh!/bin/sh5!g' Configure > Configure.sh5
+# Then run "sh5 Configure.sh5 [your options]"
+
+case "$myuname" in
+*risc*) cat <<EOF
+Note that there is a bug in some versions of NFS on the DECStation that
+may cause utime() to work incorrectly. If so, regression test io/fs
+may fail if run under NFS. Ignore the failure.
+EOF
+esac
+
+# Compiler flags that depend on osversion:
+case "$cc" in
+*gcc*) ;;
+*)
+ case "$osvers" in
+ *4.1*) ccflags="$ccflags -DLANGUAGE_C -Olimit 2900" ;;
+ *4.2*) ccflags="$ccflags -DLANGUAGE_C -Olimit 2900"
+ # Prototypes sometimes cause compilation errors in 4.2.
+ prototype=undef
+ case "$myuname" in
+ *risc*) d_volatile=undef ;;
+ esac
+ ;;
+ *4.3*) ccflags="$ccflags -std1 -DLANGUAGE_C -Olimit 2900" ;;
+ *) ccflags="$ccflags -std -Olimit 2900" ;;
+ esac
+ ;;
+esac
+
+# Other settings that depend on $osvers:
+case "$osvers" in
+*4.1*) ;;
+*4.2*) libswanted=`echo $libswanted | sed 's/ malloc / /'` ;;
+*4.3*) ;;
+*) ranlib='ranlib' ;;
+esac
+
+groupstype='int'
diff --git a/gnu/usr.bin/perl/hints/unicos.sh b/gnu/usr.bin/perl/hints/unicos.sh
new file mode 100644
index 00000000000..272cb9b5d62
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/unicos.sh
@@ -0,0 +1,9 @@
+case `uname -r` in
+6.1*) shellflags="-m+65536" ;;
+esac
+ccflags="$ccflags -DHZ=__hertz"
+optimize="-O1"
+libswanted=m
+d_setregid='undef'
+d_setreuid='undef'
+
diff --git a/gnu/usr.bin/perl/hints/unisysdynix.sh b/gnu/usr.bin/perl/hints/unisysdynix.sh
new file mode 100644
index 00000000000..4251ba8d471
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/unisysdynix.sh
@@ -0,0 +1 @@
+d_waitpid=undef
diff --git a/gnu/usr.bin/perl/hints/utekv.sh b/gnu/usr.bin/perl/hints/utekv.sh
new file mode 100644
index 00000000000..ebc7809c601
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/utekv.sh
@@ -0,0 +1,12 @@
+# XD88/10 UTekV hints by Kaveh Ghazi (ghazi@caip.rutgers.edu) 2/11/92
+# Modified by Andy Dougherty <doughera@lafcol.lafayette.edu> 4 Oct. 1994
+
+# The -X18 is only if you are using the Greenhills compiler.
+ccflags="$ccflags -X18"
+
+usemymalloc='y'
+
+echo " "
+echo "NOTE: You may have to take out makefile dependencies on the files in"
+echo "/usr/include (i.e. /usr/include/ctype.h) or the make will fail. A"
+echo "simple 'grep -v /usr/include/ makefile' should suffice."
diff --git a/gnu/usr.bin/perl/hints/uts.sh b/gnu/usr.bin/perl/hints/uts.sh
new file mode 100644
index 00000000000..9ad72d7e987
--- /dev/null
+++ b/gnu/usr.bin/perl/hints/uts.sh
@@ -0,0 +1,2 @@
+ccflags="$ccflags -DCRIPPLED_CC"
+d_lstat=define