| 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 | |
| 10 | case "$archname" in |
| 11 | '') |
| 12 | archname=`uname -m`-${osname} |
| 13 | ;; |
| 14 | esac |
| 15 | |
| 16 | case "$osvers" in |
| 17 | 0.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 | ;; |
| 42 | esac |
| 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. |
| 50 | case "$osvers" in |
| 51 | 0.9*|1.[012]*|1.3|1.3.1) |
| 52 | d_setregid="$undef" |
| 53 | d_setreuid="$undef" |
| 54 | ;; |
| 55 | esac |
| 56 | |
| 57 | # These are obsolete in any netbsd. |
| 58 | d_setrgid="$undef" |
| 59 | d_setruid="$undef" |
| 60 | |
| 61 | # there's no problem with vfork. |
| 62 | case "$usevfork" in |
| 63 | '') usevfork=true ;; |
| 64 | esac |
| 65 | |
| 66 | # Pre-empt the /usr/bin/perl question of installperl. |
| 67 | installusrbinperl='n' |
| 68 | |
| 69 | # Recognize the NetBSD packages collection. |
| 70 | # GDBM might be here. |
| 71 | test -d /usr/pkg/lib && loclibpth="$loclibpth /usr/pkg/lib" |
| 72 | test -d /usr/pkg/include && locincpth="$locincpth /usr/pkg/include" |