This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[inseparable changes from patch to perl 5.004_04]
[perl5.git] / hints / netbsd.sh
CommitLineData
a0d0e21e 1# hints/netbsd.sh
4633a7c4
LW
2#
3# talk to mrg@eterna.com.au if you want to change this file.
4#
5# netbsd keeps dynamic loading dl*() functions in /usr/lib/crt0.o,
232e078e 6# so Configure doesn't find them (unless you abandon the nm scan).
4633a7c4 7# this should be *just* 0.9 below as netbsd 0.9a was the first to
c9ef717e
MG
8# introduce shared libraries. however, they don't work/build on
9# pmax, powerpc and alpha ports correctly, yet.
10
11case "$archname" in
12'')
13 archname=`uname -m`-${osname}
14 ;;
15esac
16
a0d0e21e 17case "$osvers" in
4633a7c4 180.9|0.8*)
a0d0e21e
LW
19 usedl="$undef"
20 ;;
c9ef717e
MG
21*)
22 case `uname -m` in
23 alpha|powerpc|pmax)
24 d_dlopen=$undef
25 ;;
26# this doesn't work (yet).
27# alpha)
28# d_dlopen=$define
29# d_dlerror=$define
30# cccdlflags="-DPIC -fPIC $cccdlflags"
31# lddlflags="-shared $lddlflags"
32# ;;
33 *)
34 d_dlopen=$define
35 d_dlerror=$define
4633a7c4
LW
36# we use -fPIC here because -fpic is *NOT* enough for some of the
37# extensions like Tk on some netbsd platforms (the sparc is one)
c9ef717e
MG
38 cccdlflags="-DPIC -fPIC $cccdlflags"
39 lddlflags="-Bforcearchive -Bshareable $lddlflags"
40 ;;
41 esac
42 ;;
43esac
44
45# netbsd had these but they don't really work as advertised, in the
46# versions listed below. if they are defined, then there isn't a
47# way to make perl call setuid() or setgid(). if they aren't, then
48# ($<, $>) = ($u, $u); will work (same for $(/$)). this is because
49# you can not change the real userid of a process under 4.4BSD.
50# netbsd fixed this in 1.2A.
229e211d 51case "$osvers" in
c9ef717e 520.9*|1.0*|1.1*|1.2_*|1.2|1.2.*)
4633a7c4
LW
53 d_setregid="$undef"
54 d_setreuid="$undef"
55 d_setrgid="$undef"
56 d_setruid="$undef"
a0d0e21e
LW
57 ;;
58esac
232e078e
AD
59
60# Avoid telldir prototype conflict in pp_sys.c (NetBSD uses const DIR *)
61# Configure should test for this. Volunteers?
62pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'