Re: db-recno.t failures with _11 on Freebsd 2.1-stable
[p5sagit/p5-mst-13.2.git] / hints / freebsd.sh
1 # Original based on info from
2 # Carl M. Fongheiser <cmf@ins.infonet.net>
3 # Date: Thu, 28 Jul 1994 19:17:05 -0500 (CDT)
4 #
5 # Additional 1.1.5 defines from 
6 # Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
7 # Date: Wed, 28 Sep 1994 00:37:46 +0100 (MET)
8 #
9 # Additional 2.* defines from
10 # Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
11 # Date: Sat, 8 Apr 1995 20:53:41 +0200 (MET DST)
12 #
13 # Additional 2.0.5 and 2.1 defined from
14 # Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
15 # Date: Fri, 12 May 1995 14:30:38 +0200 (MET DST)
16 #
17 # Additional 2.2 defines from
18 # Mark Murray <mark@grondar.za>
19 # Date: Wed, 6 Nov 1996 09:44:58 +0200 (MET)
20
21 # The two flags "-fpic -DPIC" are used to indicate a
22 # will-be-shared object.  Configure will guess the -fpic, (and the
23 # -DPIC is not used by perl proper) but the full define is included to 
24 # be consistent with the FreeBSD general shared libs building process.
25 #
26 # setreuid and friends are inherently broken in all versions of FreeBSD
27 # before 2.1-current (before approx date 4/15/95). It is fixed in 2.0.5
28 # and what-will-be-2.1
29 #
30
31 case "$osvers" in
32 0.*|1.0*)
33         usedl="$undef"
34         ;;
35 1.1*)
36         malloctype='void *'
37         groupstype='int'
38         d_setregid='undef'
39         d_setreuid='undef'
40         d_setrgid='undef'
41         d_setruid='undef'
42         ;;
43 2.0-release*)
44         d_setregid='undef'
45         d_setreuid='undef'
46         d_setrgid='undef'
47         d_setruid='undef'
48         ;;
49 #
50 # Trying to cover 2.0.5, 2.1-current and future 2.1/2.2
51 # It does not covert all 2.1-current versions as the output of uname
52 # changed a few times.
53 #
54 # Even though seteuid/setegid are available, they've been turned off
55 # because perl isn't coded with saved set[ug]id variables in mind.
56 # In addition, a small patch is requried to suidperl to avoid a security
57 # problem with FreeBSD.
58 #
59 2.0.5*|2.0-built*|2.1*)
60         usevfork='true'
61         d_dosuid='define'
62         d_setregid='define'
63         d_setreuid='define'
64         d_setegid='undef'
65         d_seteuid='undef'
66         cat <<EOF
67
68 Unless you've upgraded your DB library manually you will see failures in
69 db-recno tests 51, 53 and 55.  The behavior these tests are checking is
70 broken in the DB library which is included with the OS.  You can ignore
71 the errors if you're never going to use the broken functionality (recno
72 databases with a modified bval), otherwise you'll have to upgrade your
73 DB library or OS.
74
75 EOF
76         ;;
77 #
78 # 2.2 and above have phkmalloc(3).
79 2.2*)
80         usevfork='true'
81         usemymalloc='n'
82         d_dosuid='define'
83         d_setregid='define'
84         d_setreuid='define'
85         d_setegid='undef'
86         d_seteuid='undef'
87         ;;
88 #
89 # Guesses at what will be needed after 2.2
90 *)      usevfork='true'
91         usemymalloc='n'
92         ;;
93 esac
94
95 # Dynamic Loading flags have not changed much, so they are separated
96 # out here to avoid duplicating them everywhere.
97 case "$osvers" in
98 0.*|1.0*) ;;
99 *)      cccdlflags='-DPIC -fpic'
100         lddlflags="-Bshareable $lddlflags"
101         ;;
102 esac
103
104 # Avoid telldir prototype conflict in pp_sys.c  (FreeBSD uses const DIR *)
105 # Configure should test for this.  Volunteers?
106 pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
107
108 cat <<'EOM'
109
110 Some users have reported that Configure halts when testing for
111 the O_NONBLOCK symbol with a syntax error.  This is apparently a
112 sh error.  Rerunning Configure with ksh apparently fixes the
113 problem.  Try
114         ksh Configure [your options]
115
116 EOM
117