diff options
author | Larry Wall <lwall@scalpel.netlabs.com> | 1995-11-21 10:01:00 +1200 |
---|---|---|
committer | Larry <lwall@scalpel.netlabs.com> | 1995-11-21 10:01:00 +1200 |
commit | 4633a7c4bad06b471d9310620b7fe8ddd158cccd (patch) | |
tree | 37ebeb26a64f123784fd8fac6243b124767243b0 /hints | |
parent | 8e07c86ebc651fe92eb7e3b25f801f57cfb8dd6f (diff) | |
download | perl-4633a7c4bad06b471d9310620b7fe8ddd158cccd.tar.gz |
5.002 beta 1
If you're adventurous, have a look at
ftp://ftp.sems.com/pub/outgoing/perl5.0/perl5.002beta1.tar.gz
Many thanks to Andy for doing the integration.
Obviously, if you consult the bugs database, you'll note there are
still plenty of buglets that need fixing, and several enhancements that
I've intended to put in still haven't made it in (Hi, Tim and Ilya).
But I think it'll be pretty stable. And you can start to fiddle around
with prototypes (which are, of course, still totally undocumented).
Packrats, don't worry too much about readvertising this widely.
Nowadays we're on a T1 here, so our bandwidth is okay.
Have the appropriate amount of jollity.
Larry
Diffstat (limited to 'hints')
-rw-r--r-- | hints/aix.sh | 5 | ||||
-rw-r--r-- | hints/dec_osf.sh | 2 | ||||
-rw-r--r-- | hints/freebsd.sh | 11 | ||||
-rw-r--r-- | hints/hpux.sh | 51 | ||||
-rw-r--r-- | hints/irix_6_2.sh | 25 | ||||
-rw-r--r-- | hints/netbsd.sh | 28 | ||||
-rw-r--r-- | hints/os2.sh | 192 | ||||
-rw-r--r-- | hints/sco.sh (renamed from hints/sco_3.sh) | 0 | ||||
-rw-r--r-- | hints/solaris_2.sh | 1 | ||||
-rw-r--r-- | hints/ultrix_4.sh | 6 |
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 |