Files
pkgsrc-ng/lang/perl5/patches/patch-ca
2014-11-05 12:41:07 +01:00

193 lines
5.2 KiB
Plaintext

$NetBSD: patch-ca,v 1.18 2014/03/14 22:41:10 ryoon Exp $
* Use "uname -r" to get OS version for *BSD.
* Move $loclibpth to the end of $dlist, instead of the beginning.
* Disable -fstack-protector on SunOS
* Several other changes.
--- Configure.orig 2014-01-06 22:46:42.000000000 +0000
+++ Configure
@@ -3274,13 +3274,14 @@ EOM
osvers="$3"
;;
dragonfly) osname=dragonfly
- osvers="$3"
+ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
;;
dynixptx*) osname=dynixptx
osvers=`echo "$4"|sed 's/^v//'`
;;
freebsd) osname=freebsd
- osvers="$3" ;;
+ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
+ ;;
genix) osname=genix ;;
gnu) osname=gnu
osvers="$3" ;;
@@ -3302,7 +3303,7 @@ EOM
MiNT) osname=mint
;;
netbsd*) osname=netbsd
- osvers="$3"
+ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
;;
news-os) osvers="$3"
case "$3" in
@@ -3313,7 +3314,7 @@ EOM
next*) osname=next ;;
nonstop-ux) osname=nonstopux ;;
openbsd) osname=openbsd
- osvers="$3"
+ osvers=`$uname -r | UU/tr '[A-Z]' '[a-z]'`
;;
os2) osname=os2
osvers="$4"
@@ -3328,6 +3329,9 @@ EOM
qnx) osname=qnx
osvers="$4"
;;
+ sco_sv) osname=sco_sv
+ osvers=`$uname -r`v`$uname -v`
+ ;;
solaris) osname=solaris
case "$3" in
5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;;
@@ -4722,7 +4726,7 @@ case "$plibpth" in
esac
case "$libpth" in
' ') dlist='';;
-'') dlist="$loclibpth $plibpth $glibpth";;
+'') dlist="$plibpth $glibpth $loclibpth";;
*) dlist="$libpth";;
esac
@@ -4730,7 +4734,7 @@ esac
libpth=''
for xxx in $dlist
do
- if $test -d $xxx; then
+ if $test -d $xxx -o "$xxx" = "$prefix/lib"; then
case " $libpth " in
*" $xxx "*) ;;
*) libpth="$libpth $xxx";;
@@ -4819,7 +4823,7 @@ lib_ext=$_a
obj_ext=$_o
path_sep=$p_
-rm_try="$rm -f try try$_exe a.out .out try.[cho] try.$_o core core.try* try.core*"
+rm_try="@TOOLS_RM@ -f try try$_exe a.out .out try.[cho] try.$_o core core.try* try.core*"
: Which makefile gets called first. This is used by make depend.
case "$firstmakefile" in
@@ -5119,8 +5123,10 @@ default|recommended)
# as that way the compiler can do the right implementation dependant
# thing. (NWC)
case "$gccversion" in
- ?*) set stack-protector -fstack-protector
+ ?*) if test "X$osname" != "Xsolaris"; then
+ set stack-protector -fstack-protector
eval $checkccflag
+ fi
;;
esac
;;
@@ -6486,7 +6492,9 @@ rp='Pathname for the site-specific libra
. ./getfile
prefixvar=sitelib
. ./setprefixvar
-sitelib_stem=`echo "$sitelibexp" | sed "s,/$version$,,"`
+if $test -z "$sitelib_stem"; then
+ sitelib_stem=`echo "$sitelibexp" | sed "s,/$version$,,"`
+fi
: Determine list of previous versions to include in @INC
$cat > getverlist <<EOPL
@@ -6999,7 +7007,9 @@ case "$vendorprefix" in
vendorlibexp="$ansexp"
;;
esac
-vendorlib_stem=`echo "$vendorlibexp" | sed "s,/$version$,,"`
+if $test -z "$vendorlib_stem"; then
+ vendorlib_stem=`echo "$vendorlibexp" | sed "s,/$version$,,"`
+fi
prefixvar=vendorlib
. ./installprefix
@@ -7476,6 +7486,15 @@ case "$nm_so_opt" in
;;
esac
+: Mac OS X 10.7 is different
+case "$osname" in
+ darwin)
+ case "$osvers" in
+ 11.*)
+ libnames="$libnames /usr/lib/system/libsystem_*.dylib"
+ esac
+esac
+
: Figure out where the libc is located
case "$runnm" in
true)
@@ -8048,6 +8067,7 @@ EOM
;;
linux|irix*|gnu*) dflt="-shared $optimize" ;;
next) dflt='none' ;;
+ sco_sv) dflt='-shared' ;;
solaris) # See [perl #66604]. On Solaris 11, gcc -m64 on amd64
# appears not to understand -G. gcc versions at
# least as old as 3.4.3 support -shared, so just
@@ -8347,7 +8367,7 @@ if "$useshrplib"; then
# next doesn't like the default...
;;
haiku)
- # Haiku doesn't like the default, either.
+ xxx="-Wl,-rpath,$shrpdir"
;;
hpux*)
# hpux doesn't like the default, either.
@@ -8356,6 +8376,9 @@ if "$useshrplib"; then
cygwin)
# cygwin needs only ldlibpth
;;
+ sco_sv)
+ xxx="-Wl,-R$shrpdir"
+ ;;
*)
tmp_shrpenv="env LD_RUN_PATH=$shrpdir"
;;
@@ -9431,6 +9454,13 @@ esac
: Check if we want perlio
useperlio="$define"
+: Look for a hint-file generated 'call-back-unit'. We need
+: to set some defaults for building perl in pkgsrc.
+if $test -f pkgsrc.cbu; then
+ echo "Setting pkgsrc-specific hints regarding compiler/linker flags..."
+ . ./pkgsrc.cbu
+fi
+
: Set the vendorbin variables
case "$vendorprefix" in
'') d_vendorbin="$undef"
@@ -19243,7 +19273,15 @@ RCAT(Rei,ser)
ACAT(Cir,cus)
EOCP
$cppstdin $cppflags $cppminus <cpp_stuff.c >cpp_stuff.out 2>&1
-if $contains 'Circus' cpp_stuff.out >/dev/null 2>&1; then
+# yuck, what a hack.
+# MIPSPro compiler/preprocessor behaves differently if invoked on
+# stdin vs file. Here we test for stdin, but lateron we use files.
+# So force it to work the way we know it does:
+if [ x"${OPSYS}" = x"IRIX" ]; then
+ echo "Hacking MIPSPro on file vs. stdin..." >&4
+ echo "We know we can catify or stringify, separately or together!"
+ cpp_stuff=42
+elif $contains 'Circus' cpp_stuff.out >/dev/null 2>&1; then
echo "Oh! Smells like ANSI's been here." >&4
echo "We can catify or stringify, separately or together!"
cpp_stuff=42