summaryrefslogtreecommitdiff
path: root/lang/perl5/patches/patch-ab
blob: 1aec6bcfdbc2ca73fd1ac9a6854697321f54b4f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
$NetBSD: patch-ab,v 1.12 2003/06/23 07:45:02 jlam Exp $

--- hints/netbsd.sh.orig	Thu Feb 22 18:57:55 2001
+++ hints/netbsd.sh	Fri Jun 20 17:59:50 2003
@@ -21,16 +21,32 @@
 	if [ -f /usr/libexec/ld.elf_so ]; then
 		d_dlopen=$define
 		d_dlerror=$define
-		ccdlflags="-Wl,-E -Wl,-R${PREFIX}/lib $ccdlflags"
+		case "$osvers" in
+		1.[0-5]|1.[0-5].*)
+			# Include the whole libgcc.a, required for Xerces-P,
+			# which needs __eh_alloc, __pure_virtual, and others.
+			# XXX This should be obsoleted by gcc-3.0.
+			ccdlflags="-Wl,-whole-archive -lgcc \
+				-Wl,-no-whole-archive -Wl,-E \
+				-Wl,-R$prefix/lib $ccdlflags"
+			;;
+		*)
+			ccdlflags="-Wl,-E -Wl,-R$prefix/lib $ccdlflags"
+			;;
+		esac
 		cccdlflags="-DPIC -fPIC $cccdlflags"
 		lddlflags="--whole-archive -shared $lddlflags"
 	elif [ "`uname -m`" = "pmax" ]; then
 # NetBSD 1.3 and 1.3.1 on pmax shipped an `old' ld.so, which will not work.
-		d_dlopen=$undef
+		case "$osvers" in
+		1.3|1.3.1)
+			d_dlopen=$undef
+			;;
+		esac
 	elif [ -f /usr/libexec/ld.so ]; then
 		d_dlopen=$define
 		d_dlerror=$define
-		ccdlflags="-Wl,-R${PREFIX}/lib $ccdlflags"
+		ccdlflags="-Wl,-R$prefix/lib $ccdlflags"
 # 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"
@@ -59,12 +75,13 @@
 d_setruid="$undef"
 
 # there's no problem with vfork.
-case "$usevfork" in
-'') usevfork=true ;;
-esac
+usevfork=true
+
+# Using perl's malloc leads to trouble on some toolchain versions.
+usemymalloc="$undef"
 
 # Pre-empt the /usr/bin/perl question of installperl.
-installusrbinperl='n'
+installusrbinperl="$undef"
 
 # Recognize the NetBSD packages collection.
 # GDBM might be here.