summaryrefslogtreecommitdiff
path: root/hints
diff options
context:
space:
mode:
Diffstat (limited to 'hints')
-rw-r--r--hints/aix.sh5
-rw-r--r--hints/dec_osf.sh2
-rw-r--r--hints/freebsd.sh11
-rw-r--r--hints/hpux.sh51
-rw-r--r--hints/irix_6_2.sh25
-rw-r--r--hints/netbsd.sh28
-rw-r--r--hints/os2.sh192
-rw-r--r--hints/sco.sh (renamed from hints/sco_3.sh)0
-rw-r--r--hints/solaris_2.sh1
-rw-r--r--hints/ultrix_4.sh6
10 files changed, 309 insertions, 12 deletions
diff --git a/hints/aix.sh b/hints/aix.sh
index bca6eb7022..35fbb5ec39 100644
--- a/hints/aix.sh
+++ b/hints/aix.sh
@@ -43,7 +43,10 @@ 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.
-ccdlflags='-bE:perl.exp'
+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.
diff --git a/hints/dec_osf.sh b/hints/dec_osf.sh
index 85de7cb042..bfd235faaf 100644
--- a/hints/dec_osf.sh
+++ b/hints/dec_osf.sh
@@ -8,4 +8,4 @@ case "$optimize" in
;;
esac
ccflags="$ccflags -DSTANDARD_C"
-lddlflags='-shared -expect_unresolved "*" -s'
+lddlflags='-shared -expect_unresolved "*" -s -hidden'
diff --git a/hints/freebsd.sh b/hints/freebsd.sh
index 756ad78981..e11eb33242 100644
--- a/hints/freebsd.sh
+++ b/hints/freebsd.sh
@@ -70,3 +70,14 @@ 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/hints/hpux.sh b/hints/hpux.sh
index 27513ce196..626d069f18 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -13,6 +13,9 @@
# 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"
@@ -40,6 +43,45 @@ EOM
;;
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)
@@ -71,13 +113,8 @@ d_bsdpgrp='define'
# If your compile complains about FLT_MIN, uncomment the next line
# POSIX_cflags='ccflags="$ccflags -DFLT_MIN=1.17549435E-38"'
-# Comment these out if you don't want to follow the SVR4 filesystem layout
+# 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'
- privlib='/opt/perl5/lib'
- archlib='/opt/perl5/lib/hpux'
- man3dir='/opt/perl5/man/man3'
- ;;
+'') prefix='/opt/perl5' ;;
esac
-
diff --git a/hints/irix_6_2.sh b/hints/irix_6_2.sh
new file mode 100644
index 0000000000..cbb08bbb2a
--- /dev/null
+++ b/hints/irix_6_2.sh
@@ -0,0 +1,25 @@
+# irix_6_2.sh
+# from Krishna Sethuraman, krishna@mit.edu
+# 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"
+
+# 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/hints/netbsd.sh b/hints/netbsd.sh
index 67cd95c2ad..24ffe15f73 100644
--- a/hints/netbsd.sh
+++ b/hints/netbsd.sh
@@ -1,17 +1,39 @@
# hints/netbsd.sh
-# netbsd keeps dynamic loading dl*() functions in /usr/lib/crt0.o,
+#
+# 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*)
+0.9|0.8*)
usedl="$undef"
;;
*) d_dlopen=$define
d_dlerror=$define
- cccdlflags="-DPIC -fpic $cccdlflags"
+# 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/hints/os2.sh b/hints/os2.sh
new file mode 100644
index 0000000000..55766f7482
--- /dev/null
+++ b/hints/os2.sh
@@ -0,0 +1,192 @@
+# Problems:
+# a) warning from fcntl: Third argument is int in emx - patched
+# b) gr_password is not a structure in struct group - patched
+# c) (gone)
+# d) Makefile needs sh before ./makedir
+# e) (gone)
+# f) (gone)
+# g) (gone)
+# h) (gone)
+# i) (gone)
+# j) the rule true in Makefile should become sh -c true
+# k) Cwd does not work. ===> the extensions cannot be compiled - patched
+# l) TEST expects to get -e 'perl' - patched
+# m) (gone)
+
+# Tests failing with .o compile (this is probably obsolete, but now it is .obj):
+
+# comp/cpp (because of sed above)
+# io/fs.t : (patched) 2..5 7..11 18 (why 11?)
+# io/inplace.t ???? (ak works)
+# io/tell.t 10 ????
+# op/exec.t 1 ???? 4 ????
+# op/glob.t 1 (bug in sh)
+# op/magic.t 4 1/2 (????) adding sleep 5 does not help
+# op/readdir.t 3 (same bug in ksh)
+# op/stat.t 3 4 9 10 20 >34
+
+# Newer results with .obj without i/o optimization, fail:
+
+# io/fs.t : 2+
+# io/pipe.t : 1+
+# io/tell.t : 8, 10
+# op/exec.t : 4, 6 (ok 1 comes as "ok \1")
+# op/fork.t : 1+
+# op/misc.t : 9
+# op/pack.t : 8
+# op/stat.t : 3 4 9 10 20 >34
+# lib/sdbm.t : sdbm store returned -1, errno 0, key "21" at lib/sdbm.t line 112.
+# lib/posix.t : coredump on 3
+
+# If compiled with i/o optimization, then 15% speedup on input, and
+# io/tell.t : 11 only
+# no coredump in posix.t
+
+
+# Note that during the .obj compile you need to move the perl.dll file
+# to LIBPATH :-(
+
+#osname="OS/2"
+sysman=`../UU/loc . /man/man1 /usr/man/man1 c:/man/man1 c:/usr/man/man1`
+cc='gcc'
+usrinc='/emx/include'
+libpth='/emx/lib/st /emx/lib'
+
+so='dll'
+
+# Additional definitions:
+
+d_shrplib='define'
+firstmakefile='GNUmakefile'
+obj_ext='.obj'
+obj_ext_regexp='\.obj'
+lib_ext='.lib'
+ar='emxomfar'
+plibext='.lib'
+exe_ext='.exe'
+archobjs="os2$obj_ext"
+cldlibs=''
+
+libc="/emx/lib/st/c_import$lib_ext"
+
+# otherwise puts -lc ???
+
+libs='-lsocket -lm'
+
+# Run files without extension with sh - feature of patched ksh
+NOHASHBANG=sh
+
+cccdlflags='-Zdll'
+dlsrc='dl_os2.xs'
+lddlflags='-Zdll -Zomf -Zcrtdll'
+ldflags='-Zexe -Zomf -Zcrtdll'
+ld='gcc'
+usedl='define'
+ccflags='-Zomf -DDOSISH -DOS2=2 -DEMBED -I.'
+cppflags='-DDOSISH -DOS2=2 -DEMBED -I.'
+
+# This variables taken from recommended config.sh
+alignbytes='8'
+
+d_fork='undef'
+
+# 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
+
+d_stdstdio='define'
+d_stdiobase='define'
+d_stdio_ptr_lval='define'
+d_stdio_cnt_lval='define'
+stdio_ptr='((fp)->ptr)'
+stdio_cnt='((fp)->rcount)'
+stdio_base='((fp)->buffer)'
+stdio_bufsiz='((fp)->rcount + (fp)->ptr - (fp)->buffer)'
+
+
+# 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'
+
+# To have manpages installed
+echo nroff is "'$nroff'"
+nroff='nroff.cmd'
+_nroff='nroff.cmd'
+echo nroff is "'$nroff'"
+
+# Unknown reasons for:
+#cpio='cpio'
+#csh=''
+#date=''
+#byacc=''
+#d_charsprf='undef'
+#d_drem='undef'
+#d_fmod='define'
+#d_linuxstd='undef'
+#d_socket='define'
+#gcc='gcc'
+#gidtype='gid_t'
+#glibpth='c:/usr/lib/emx h:/emx/lib /emx/lib'
+#groupstype='gid_t'
+#h_fcntl='true'
+#i_time='define'
+#line=''
+#lseektype='off_t'
+#man1ext='1'
+#man3ext='3'
+#modetype='mode_t'
+#more='more'
+#mv='mv'
+#sleep='sleep'
+#socketlib='-lsocket'
+#ssizetype='ssize_t'
+#tar='tar'
+#timetype='time_t'
+#uidtype='uid_t'
+#uname=''
+#uniq=''
+#xlibpth=''
+#yacc='yacc'
+#yaccflags=''
+#zcat='zcat'
+#orderlib='false'
+#pg='pg'
+#pr='pr'
+#ranlib=':'
+
+# Misfound by configure:
+
+#gcc='gcc'
+#more='more'
+#mv='mv'
+#pr='pr'
+#sleep='sleep'
+#tar='tar'
+
+xlibpth=''
+
+# I cannot stand it, but did not test with:
+# d_dirnamlen='undef'
+
+# I try to do without these:
+
+#d_pwage='undef'
+#d_pwcomment='undef'
+
+ln='cp'
+lns='cp'
+
+# ????
+#mallocobj=''
+#mallocsrc=''
+#usemymalloc='false'
+
+nm_opt='-p'
+
+# The next two are commented. pdksh handles #!
+# sharpbang='extproc '
+# shsharp='false'
+
+# Commented:
+#startsh='extproc ksh\\n#! sh'
diff --git a/hints/sco_3.sh b/hints/sco.sh
index daf3aec008..daf3aec008 100644
--- a/hints/sco_3.sh
+++ b/hints/sco.sh
diff --git a/hints/solaris_2.sh b/hints/solaris_2.sh
index 0193bd4a1c..06abe32d7f 100644
--- a/hints/solaris_2.sh
+++ b/hints/solaris_2.sh
@@ -128,6 +128,7 @@ case "`${cc:-cc} -v 2>&1`" in
# 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/'`
diff --git a/hints/ultrix_4.sh b/hints/ultrix_4.sh
index 3f96a668e1..e00450792d 100644
--- a/hints/ultrix_4.sh
+++ b/hints/ultrix_4.sh
@@ -9,6 +9,12 @@ 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