[inseparable changes from patch from perl5.003_20 to perl5.003_21]
[p5sagit/p5-mst-13.2.git] / hints / bsdos.sh
1 # hints/bsdos.sh
2 #
3 # hints file for BSD/OS 2.x (adapted from bsd386.sh)
4 # Original by Neil Bowers <neilb@khoros.unm.edu>
5 #     Tue Oct  4 12:01:34 EDT 1994
6 # Updated by Tony Sanders <sanders@bsdi.com>
7 #     Mon Nov 27 17:25:51 CST 1995
8 #
9 # You can override the compiler and loader on the Configure command line:
10 #     ./Configure -Dcc=shlicc2 -Dld=shlicc2
11
12 # filename extension for shared library objects
13 so='o'
14
15 # Don't use this for Perl 5.002, which needs parallel sig_name and sig_num lists
16 #sig_name='ZERO HUP INT QUIT ILL TRAP IOT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM URG STOP TSTP CONT CHLD TTIN TTOU IO XCPU XFSZ VTALRM PROF WINCH INFO USR1 USR2 '
17 signal_t='void'
18 d_voidsig='define'
19 d_dosuid='define'
20
21 # we don't want to use -lnm, since exp() is busted (in 1.1 anyway)
22 set `echo X "$libswanted "| sed -e 's/ nm / /'`
23 shift
24 libswanted="$*"
25
26 # BSD/OS X libraries are in their own tree
27 glibpth="$glibpth /usr/X11/lib"
28 ldflags="$ldflags -L/usr/X11/lib"
29
30 # Avoid telldir prototype conflict in pp_sys.c
31 pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
32
33 case "$bsdos_distribution" in
34 defined)
35         d_portable='no'
36         prefix='/usr/contrib'
37         man3dir='/usr/contrib/man/man3'
38         ;;
39 esac
40
41 case "$osvers" in
42 1.0*)
43         # Avoid problems with HUGE_VAL in POSIX in 1.0's cc.
44         POSIX_cflags='ccflags="$ccflags -UHUGE_VAL"' 
45         ;;
46 1.1*)
47         # Use gcc2
48         case "$cc" in
49         '')     cc='gcc2' ;;
50         esac
51         ;;
52 2.0*)
53         # default to GCC 2.X w/shared libraries
54         case "$cc" in
55         '')     cc='shlicc2' ;;
56         esac
57
58         # default ld to shared library linker
59         case "$ld" in
60         '')     ld='shlicc2' ;;
61         esac
62
63         # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS stuff
64         # in 4.4BSD-based systems (including BSD/OS 2.0 and later).
65         # See http://www.bsdi.com/bsdi-man?setuid(2)
66         d_setregid='undef'
67         d_setreuid='undef'
68         d_setrgid='undef'
69         d_setruid='undef'
70         ;;
71 2.1*)
72         # Use 2.1's shlicc2 for dynamic linking
73         # Since cc -o is linking, use it for compiling too.
74         # I'm not sure whether Configure is careful about
75         # distinguishing between the two.
76
77         case "$cc" in
78         '')     cc='shlicc2'
79                 cccdlflags=' ' ;; # Avoid the dreaded -fpic
80         esac
81
82         # Link with shared libraries in 2.1
83         # Turns out that shlicc2 will automatically use the
84         # shared libs, so don't explicitly specify -lc_s.2.1.*
85         case "$ld" in
86         '')     ld='shlicc2'
87                 lddlflags='-r' ;; # this one is necessary
88         esac
89
90         # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS  stuff
91         # in 4.4BSD-based systems (including BSD/OS 2.0 and later).
92         # See http://www.bsdi.com/bsdi-man?setuid(2)
93         # This stuff may or may not be right, but it works.
94         d_setregid='undef'
95         d_setreuid='undef'
96         d_setrgid='undef'
97         d_setruid='undef'
98         ;;
99 esac