53adfa3b5013129d6dc0f6a63079c6d6d5656eb3
[p5sagit/p5-mst-13.2.git] / hints / bsdos.sh
1 # hints/bsdos.sh
2 #
3 # hints file for BSD/OS (adapted from bsd386.sh)
4 # Original by Neil Bowers <neilb@khoros.unm.edu>; Tue Oct  4 12:01:34 EDT 1994
5 # Updated by Tony Sanders <sanders@bsdi.com>; Sat Aug 23 12:47:45 MDT 1997
6 #     Added 3.1 with ELF dynamic libraries
7 #     SYSV IPC tested Ok so I re-enabled.
8 #
9 # To override the compiler on the command line:
10 #     ./Configure -Dcc=gcc2
11 #
12 # The BSD/OS distribution is built with:
13 #     ./Configure -des -Dbsdos_distribution=defined
14
15 signal_t='void'
16 d_voidsig='define'
17
18 usemymalloc='n'
19
20 # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS versions.
21 # See http://www.bsdi.com/bsdi-man?setuid(2)
22 d_setregid='undef'
23 d_setreuid='undef'
24 d_setrgid='undef'
25 d_setruid='undef'
26
27 # we don't want to use -lnm, since exp() is busted (in 1.1 anyway)
28 set `echo X "$libswanted "| sed -e 's/ nm / /'`
29 shift
30 libswanted="$*"
31
32 # X libraries are in their own tree
33 glibpth="$glibpth /usr/X11/lib"
34 ldflags="$ldflags -L/usr/X11/lib"
35
36 # Avoid telldir prototype conflict in pp_sys.c
37 pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'
38
39 case "$optimize" in
40 '')     optimize='-O2' ;;
41 esac
42
43 case "$bsdos_distribution" in
44 ''|undef|false) ;;
45 *)
46         d_dosuid='define'
47         d_portable='undef'
48         prefix='/usr/contrib'
49         perlpath='/usr/bin/perl5'
50         startperl='#!/usr/bin/perl5'
51         scriptdir='/usr/contrib/bin'
52         privlib='/usr/libdata/perl5'
53         man1dir='/usr/contrib/man/man1'
54         man3dir='/usr/contrib/man/man3'
55         # phlib added by BSDI -- we share the *.ph include dir with perl4
56         phlib="/usr/libdata/perl5/site_perl/$(arch)-$osname/include"
57         phlibexp="/usr/libdata/perl5/site_perl/$(arch)-$osname/include"
58         ;;
59 esac
60
61 case "$osvers" in
62 1.0*)
63         # Avoid problems with HUGE_VAL in POSIX in 1.0's cc.
64         POSIX_cflags='ccflags="$ccflags -UHUGE_VAL"' 
65         ;;
66 1.1*)
67         # Use gcc2
68         case "$cc" in
69         '')     cc='gcc2' ;;
70         esac
71         ;;
72 2.0*|2.1*|3.0*)
73         so='o'
74
75         # default to GCC 2.X w/shared libraries
76         case "$cc" in
77         '')     cc='shlicc2'
78                 cccdlflags=' ' ;; # Avoid the dreaded -fpic
79         esac
80
81         # default ld to shared library linker
82         case "$ld" in
83         '')     ld='shlicc2'
84                 lddlflags='-r' ;; # this one is necessary
85         esac
86
87         # Must preload the static shared libraries.
88         libswanted="Xpm Xaw Xmu Xt SM ICE Xext X11 $libswanted"
89         libswanted="rpc curses termcap $libswanted"
90         ;;
91 3.1*)
92         # ELF dynamic link libraries starting in 3.1
93         useshrplib='true'
94         so='so'
95         dlext='so'
96
97         case "$cc" in
98         '')     cc='cc'                 # cc is gcc2 in 3.1
99                 cccdlflags="-fPIC"
100                 ccdlflags=" " ;;
101         esac
102
103         case "$ld" in
104         '')     ld='ld'
105                 lddlflags="-shared -x $lddlflags" ;;
106         esac
107         ;;
108 esac
109