80 lines
1.9 KiB
Bash
80 lines
1.9 KiB
Bash
# hints/netbsd.sh
|
|
#
|
|
# talk to mrg@eterna.com.au if you want to change this file.
|
|
#
|
|
# netbsd keeps dynamic loading dl*() functions in /usr/lib/crt0.o,
|
|
# so Configure doesn't find them (unless you abandon the nm scan).
|
|
# this should be *just* 0.9 below as netbsd 0.9a was the first to
|
|
# introduce shared libraries. however, they don't work/build on
|
|
# pmax, powerpc and alpha ports correctly, yet.
|
|
|
|
case "$archname" in
|
|
'')
|
|
archname=`uname -m`-${osname}
|
|
;;
|
|
esac
|
|
|
|
case "$osvers" in
|
|
0.9|0.8*)
|
|
usedl="$undef"
|
|
;;
|
|
*)
|
|
case `uname -m` in
|
|
alpha|powerpc|pmax)
|
|
d_dlopen=$undef
|
|
;;
|
|
# this doesn't work (yet).
|
|
# alpha)
|
|
# d_dlopen=$define
|
|
# d_dlerror=$define
|
|
# cccdlflags="-DPIC -fPIC $cccdlflags"
|
|
# lddlflags="-shared $lddlflags"
|
|
# ;;
|
|
*)
|
|
d_dlopen=$define
|
|
d_dlerror=$define
|
|
# 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"
|
|
lddlflags="-Bforcearchive -Bshareable $lddlflags"
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
# netbsd 1.3 linker warns about setr[gu]id being deprecated.
|
|
# (setregid, setreuid, preferred?)
|
|
case "$osvers" in
|
|
1.3|1.3*)
|
|
d_setrgid="$undef"
|
|
d_setruid="$undef"
|
|
;;
|
|
esac
|
|
|
|
# netbsd had these but they don't really work as advertised, in the
|
|
# versions listed below. if they are defined, then there isn't a
|
|
# way to make perl call setuid() or setgid(). if they aren't, then
|
|
# ($<, $>) = ($u, $u); will work (same for $(/$)). this is because
|
|
# you can not change the real userid of a process under 4.4BSD.
|
|
# netbsd fixed this in 1.2A.
|
|
case "$osvers" in
|
|
0.9*|1.0*|1.1*|1.2_*|1.2|1.2.*)
|
|
d_setregid="$undef"
|
|
d_setreuid="$undef"
|
|
d_setrgid="$undef"
|
|
d_setruid="$undef"
|
|
;;
|
|
esac
|
|
# netbsd 1.3 linker warns about setr[gu]id being deprecated.
|
|
# (setregid, setreuid, preferred?)
|
|
case "$osvers" in
|
|
1.3|1.3*)
|
|
d_setrgid="$undef"
|
|
d_setruid="$undef"
|
|
;;
|
|
esac
|
|
|
|
# vfork is ok on NetBSD.
|
|
case "$usevfork" in
|
|
'') usevfork=true ;;
|
|
esac
|