diff options
author | Perl 5 Porters <perl5-porters@africa.nicoh.com> | 1997-02-22 02:41:53 +1200 |
---|---|---|
committer | Chip Salzenberg <chip@atlantic.net> | 1997-02-22 02:41:53 +1200 |
commit | b971f6e4f6780f32fa16abecd87989a37436a193 (patch) | |
tree | 994f413811bce803c47f599cc156e4beb08184e4 /hints/dec_osf.sh | |
parent | 1defb83ec18f7f520caf4152c2f5c63dbf3cc155 (diff) | |
download | perl-b971f6e4f6780f32fa16abecd87989a37436a193.tar.gz |
[inseparable changes from match from perl5.003_28 to perl-5.003_90]
BUILD PROCESS
Subject: Re: ccdlflags don't quite work
Date: Mon, 24 Feb 1997 16:07:07 -0500 (EST)
From: Andy Dougherty <doughera@fractal.phys.lafayette.edu>
Files: Configure
Msg-ID: <Pine.SOL.3.95q.970224160630.5700E-100000@fractal.lafayette.e
(applied based on p5p patch as commit bc75e68b7b49a5ac07dc839aec7ca05eba51175f)
Subject: Use $ccflags, $ldflags, $libs when determining $randbits
From: Chip Salzenberg <chip@perl.com>
Files: Configure
Subject: 'installperl -v' doesn't do enough
Date: Mon, 24 Feb 1997 08:42:59 -0500
From: Spider Boardman <spider@Orb.Nashua.NH.US>
Files: installperl
Msg-ID: <199702241342.IAA25945@Orb.Nashua.NH.US>
(applied based on p5p patch as commit 7287d43f85a3731984c0e0ef1f20e1515b4140f2)
Subject: installperl breaks running system (for a while)
Date: Mon, 24 Feb 1997 09:12:11 -0500
From: Spider Boardman <spider@Orb.Nashua.NH.US>
Files: installperl
Msg-ID: <199702241412.JAA11829@Orb.Nashua.NH.US>
(applied based on p5p patch as commit ec2a3d87ba26a9586ad981051a949403027c147a)
CORE PORTABILITY
Subject: Digital UNIX and 3_28
Date: Sun, 23 Feb 1997 16:27:19 +0200 (EET)
From: Jarkko Hietaniemi <jhi@iki.fi>
Files: Configure MANIFEST ext/NDBM_File/hints/dec_osf.pl ext/ODBM_File/hints/dec_osf.pl hints/dec_osf.sh
Msg-ID: <199702231427.QAA13807@alpha.hut.fi>
(applied based on p5p patch as commit 58c0852f6968d0b4520a03e22a56226185ab78c6)
Subject: AmigaOS patches to 5.003_28
Date: Sat, 22 Feb 1997 18:08:02 +0100
From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de>
Files: README.amiga hints/amigaos.sh t/io/fs.t t/lib/anydbm.t t/lib/db-btree.t t/lib/db-hash.t t/lib/db-recno.t t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t t/op/magic.t t/op/stat.t
Msg-ID: <77724759@Armageddon.meb.uni-bonn.de>
(applied based on p5p patch as commit b8e6d11c134e93a7795379ceb62b7f950607c667)
TESTS
Subject: Don't use <*> where readdir() will do
From: Chip Salzenberg <chip@perl.com>
Files: t/op/stat.t
Subject: Allow for $^X to be 'miniperl'
Date: Sun, 23 Feb 1997 16:22:45 +0100
From: Dominic Dunlop <domo@slipper.ip.lu>
Files: t/op/magic.t
private-msgid: <v03020903af360f31aced@[194.51.248.65]>
Diffstat (limited to 'hints/dec_osf.sh')
-rw-r--r-- | hints/dec_osf.sh | 120 |
1 files changed, 90 insertions, 30 deletions
diff --git a/hints/dec_osf.sh b/hints/dec_osf.sh index 6bde1b4514..d50c4c60dc 100644 --- a/hints/dec_osf.sh +++ b/hints/dec_osf.sh @@ -1,9 +1,6 @@ # hints/dec_osf.sh -# -# How to make a DEBUGGING VERSION of perl for DECs cc compiler -# -# If you want to debug perl or want to send a +# * If you want to debug perl or want to send a # stack trace for inclusion into an bug report, call # Configure with the additional argument -Doptimize=-g2 # or uncomment this assignment to "optimize": @@ -13,19 +10,19 @@ # If you want both to optimise and debug with the DEC cc # you must have -g3, e.g. "-O4 -g3", and (re)run Configure. # -# Note 1: gcc can always have both -g and optimisation on. +# * gcc can always have both -g and optimisation on. # -# Note 2: debugging optimised code, no matter what compiler +# * debugging optimised code, no matter what compiler # one is using, can be surprising and confusing because of # the optimisation tricks like code motion, code removal, # loop unrolling, and inlining. The source code and the # executable code simply do not agree any more while in # mid-execution, the optimiser only cares about the results. # -# Note 3: Configure will automatically add the often quoted +# * Configure will automatically add the often quoted # -DDEBUGGING for you if the -g is specified. # -# Note 4: There is even more optimisation available in the new +# * There is even more optimisation available in the new # (GEM) DEC cc: -O5 and -fast. "man cc" will tell more about them. # The jury is still out whether either or neither help for Perl # and how much. Based on very quick testing, -fast boosts @@ -34,7 +31,7 @@ # hand searching things (index, m//, s///), seems to get slower. # Your mileage will vary. # -# Note 5: The -std is needed because the following compiled +# * The -std is needed because the following compiled # without the -std and linked with -lm # # #include <math.h> @@ -45,6 +42,14 @@ # UNIX 4.0{,a} dump core: Floating point exception in the printf(), # the y has become a signaling NaN. # +# * Compilation warnings like: +# +# "Undefined the ANSI standard macro ..." +# +# can be ignored, at least while compiling the POSIX extension +# and especially if using the sfio (the latter is not a standard +# part of Perl, never mind if it says little to you). +# # If using the DEC compiler we must find out the DEC compiler style: # the style changed between Digital UNIX (aka DEC OSF/1) 3 and @@ -53,8 +58,13 @@ # and it is called GEM. Many of the options we are going to use depend # on the compiler style. -# do NOT, I repeat, *NOT* take away that leading tab +# do NOT, I repeat, *NOT* take away those leading tabs + # reset + _DEC_uname_r= _DEC_cc_style= + # set + _DEC_uname_r=`uname -r` + # _DEC_cc_style set soon below # Configure Black Magic (TM) case "$cc" in @@ -74,6 +84,17 @@ case "$cc" in ;; esac +# be nauseatingly ANSI +case "$cc" in +gcc) ccflags="$ccflags -ansi" + ;; +*) ccflags="$ccflags -std" + ;; +esac + +# for gcc the Configure knows about the -fpic: +# position-independent code for dynamic loading + # we want optimisation case "$optimize" in @@ -84,48 +105,60 @@ case "$optimize" in new) optimize='-O4' ;; old) optimize='-O2 -Olimit 3200' ;; esac + ccflags="$ccflags -D_INTRINSICS" ;; esac ;; esac -# all compilers are ANSI -ccflags="$ccflags -DSTANDARD_C" - -# be nauseatingly ANSI -case "$cc" in -gcc) ccflags="$ccflags -ansi" - ;; -*) ccflags="$ccflags -std" - ;; -esac - # dlopen() is in libc libswanted="`echo $libswanted | sed -e 's/ dl / /'`" -# PW contains nothing useful for perl +# libPW contains nothing useful for perl libswanted="`echo $libswanted | sed -e 's/ PW / /'`" -# bsd contains nothing used by perl that is not already in libc +# libbsd contains nothing used by perl that is not already in libc libswanted="`echo $libswanted | sed -e 's/ bsd / /'`" -# c need not be separately listed +# libc need not be separately listed libswanted="`echo $libswanted | sed -e 's/ c / /'`" -# dbm is already in libc (as is ndbm) -libswanted="`echo $libswanted | sed -e 's/ dbm / /'`" +# ndbm is already in libc +libswanted="`echo $libswanted | sed -e 's/ ndbm / /'`" # the basic lddlflags used always lddlflags='-shared -expect_unresolved "*"' -# Check if it's a CMW version of OSF1, -# if so, do not hide the symbols. -test `uname -s` = "MLS+" || lddlflags="$lddlflags -hidden" +# Fancy compiler suites use optimising linker as well as compiler. +# <spider@Orb.Nashua.NH.US> +case "$_DEC_uname_r" in +*[123].*) # old loader + lddlflags="$lddlflags -O3" + ;; +*) lddlflags="$lddlflags $optimize -msym" + # -msym: If using a sufficiently recent /sbin/loader, + # keep the module symbols with the modules. + ;; +esac +# Yes, the above loses if gcc does not use the system linker. +# If that happens, let me know about it. <jhi@iki.fi> + -# If debugging (-g) do not strip the objects, otherwise, strip. +# If debugging or (old systems and doing shared) +# then do not strip the lib, otherwise, strip. +# As noted above the -DDEBUGGING is added automagically by Configure if -g. case "$optimize" in *-g*) ;; # left intentionally blank +*) case "$_DEC_uname_r" in + *[123].*) + case "$useshrplib" in + false|undef|'') lddlflags="$lddlflags -s" ;; + esac + ;; *) lddlflags="$lddlflags -s" + ;; + esac + ;; esac # @@ -133,10 +166,37 @@ esac # unset _DEC_cc_style +unset _DEC_uname_r # # History: # +# perl5.003_28: +# +# 22-Feb-1997 Jarkko Hietaniemi <jhi@iki.fi> +# +# * Restructuring Spider's suggestions. +# +# * Older Digital UNIXes cannot handle -Olimit ... for $lddlflags. +# +# * ld -s cannot be used in older Digital UNIXes when doing shared. +# +# +# 21-Feb-1997 Spider Boardman <spider@Orb.Nashua.NH.US> +# +# * -hidden removed. +# +# * -DSTANDARD_C removed. +# +# * -D_INTRINSICS added. (that -fast does not seem to buy much confirmed) +# +# * odbm not in libc, only ndbm. Therefore dbm back to $libswanted. +# +# * -msym for the newer runtime loaders. +# +# * $optimize also in $lddflags. +# +# # perl5.003_27: # # 18-Feb-1997 Jarkko Hietaniemi <jhi@iki.fi> |