1# hints/netbsd.sh 2# 3# talk to packages@netbsd.org if you want to change this file. 4# 5# netbsd keeps dynamic loading dl*() functions in /usr/lib/crt0.o, 6# so Configure doesn't find them (unless you abandon the nm scan). 7# this should be *just* 0.9 below as netbsd 0.9a was the first to 8# introduce shared libraries. 9 10case "$archname" in 11'') 12 archname=`uname -m`-${osname} 13 ;; 14esac 15 16case "$osvers" in 170.9|0.8*) 18 usedl="$undef" 19 ;; 20*) 21 if [ -f /usr/libexec/ld.elf_so ]; then 22 d_dlopen=$define 23 d_dlerror=$define 24 ccdlflags="-Wl,-E -Wl,-R${PREFIX}/lib $ccdlflags" 25 cccdlflags="-DPIC -fPIC $cccdlflags" 26 lddlflags="--whole-archive -shared $lddlflags" 27 elif [ "`uname -m`" = "pmax" ]; then 28# NetBSD 1.3 and 1.3.1 on pmax shipped an `old' ld.so, which will not work. 29 d_dlopen=$undef 30 elif [ -f /usr/libexec/ld.so ]; then 31 d_dlopen=$define 32 d_dlerror=$define 33 ccdlflags="-Wl,-R${PREFIX}/lib $ccdlflags" 34# we use -fPIC here because -fpic is *NOT* enough for some of the 35# extensions like Tk on some netbsd platforms (the sparc is one) 36 cccdlflags="-DPIC -fPIC $cccdlflags" 37 lddlflags="-Bshareable $lddlflags" 38 else 39 d_dlopen=$undef 40 fi 41 ;; 42esac 43 44# netbsd had these but they don't really work as advertised, in the 45# versions listed below. if they are defined, then there isn't a 46# way to make perl call setuid() or setgid(). if they aren't, then 47# ($<, $>) = ($u, $u); will work (same for $(/$)). this is because 48# you can not change the real userid of a process under 4.4BSD. 49# netbsd fixed this in 1.3.2. 50case "$osvers" in 510.9*|1.[012]*|1.3|1.3.1) 52 d_setregid="$undef" 53 d_setreuid="$undef" 54 ;; 55esac 56 57# These are obsolete in any netbsd. 58d_setrgid="$undef" 59d_setruid="$undef" 60 61# there's no problem with vfork. 62case "$usevfork" in 63'') usevfork=true ;; 64esac 65 66# Pre-empt the /usr/bin/perl question of installperl. 67installusrbinperl='n' 68 69# Recognize the NetBSD packages collection. 70# GDBM might be here. 71test -d /usr/pkg/lib && loclibpth="$loclibpth /usr/pkg/lib" 72test -d /usr/pkg/include && locincpth="$locincpth /usr/pkg/include" 73