This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Revive threaded builds for AIX
[perl5.git] / hints / bsdos.sh
... / ...
CommitLineData
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 (NOT in 3.1 yet.
7# Estimated for 4.0) SYSV IPC tested Ok so I re-enabled.
8#
9# Updated to work in post-4.0 by Todd C. Miller <millert@openbsd.org>
10#
11# Updated for threads by "Timur I. Bakeyev" <bsdi@listserv.bat.ru>
12#
13# To override the compiler on the command line:
14# ./Configure -Dcc=gcc2
15#
16# The BSD/OS distribution is built with:
17# ./Configure -des -Dbsdos_distribution=defined
18
19signal_t='void'
20d_voidsig='define'
21
22usemymalloc='n'
23
24# malloc wrap works
25case "$usemallocwrap" in
26'') usemallocwrap='define' ;;
27esac
28
29# setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS versions.
30# See man 2 setuid
31d_setregid='undef'
32d_setreuid='undef'
33d_setrgid='undef'
34d_setruid='undef'
35
36# we don't want to use -lnm, since exp() is busted (in 1.1 anyway)
37set `echo X "$libswanted "| sed -e 's/ nm / /'`
38shift
39libswanted="$*"
40
41# X libraries are in their own tree
42glibpth="$glibpth /usr/X11/lib"
43ldflags="$ldflags -L/usr/X11/lib"
44
45case "$optimize" in
46'') optimize='-O2' ;;
47esac
48
49case "$bsdos_distribution" in
50''|undef|false) ;;
51*)
52 d_dosuid='define'
53 d_portable='undef'
54 prefix='/usr/contrib'
55 perlpath='/usr/bin/perl5'
56 startperl='#!/usr/bin/perl5'
57 scriptdir='/usr/contrib/bin'
58 privlib='/usr/libdata/perl5'
59 man1dir='/usr/contrib/man/man1'
60 man3dir='/usr/contrib/man/man3'
61 # phlib added by BSDI -- we share the *.ph include dir with perl4
62 phlib="/usr/libdata/perl5/site_perl/$(arch)-$osname/include"
63 phlibexp="/usr/libdata/perl5/site_perl/$(arch)-$osname/include"
64 ;;
65esac
66
67case "$osvers" in
681.0*)
69 # Avoid problems with HUGE_VAL in POSIX in 1.0's cc.
70 POSIX_cflags='ccflags="$ccflags -UHUGE_VAL"'
71 ;;
721.1*)
73 # Use gcc2
74 case "$cc" in
75 '') cc='gcc2' ;;
76 esac
77 ;;
782.0*|2.1*|3.0*|3.1*)
79 so='o'
80
81 # default to GCC 2.X w/shared libraries
82 case "$cc" in
83 '') cc='shlicc2'
84 cccdlflags=' ' ;; # Avoid the dreaded -fpic
85 esac
86
87 # default ld to shared library linker
88 case "$ld" in
89 '') ld='shlicc2'
90 lddlflags='-r' ;; # this one is necessary
91 esac
92
93 # Must preload the static shared libraries.
94 libswanted="Xpm Xaw Xmu Xt SM ICE Xext X11 $libswanted"
95 libswanted="rpc curses termcap $libswanted"
96 ;;
974.*)
98 # ELF dynamic link libraries starting in 4.0
99 useshrplib='true'
100 so='so'
101 dlext='so'
102
103 case "$cc" in
104 '') cc='cc' # cc is gcc2 in 4.0
105 cccdlflags="-fPIC"
106 ;;
107 esac
108
109 case "$ld" in
110 '') ld='ld'
111 lddlflags="-shared -x $lddlflags" ;;
112 esac
113 # Due usage of static pointer from crt.o
114 libswanted="util $libswanted" ;;
115esac
116
117# This script UU/usethreads.cbu will get 'called-back' by Configure
118# after it has prompted the user for whether to use threads.
119cat > UU/usethreads.cbu <<'EOCBU'
120case "$usethreads" in
121$define|true|[yY]*)
122 case "$osvers" in
123 3.*|4.*) ccflags="-D_REENTRANT -D_THREAD_SAFE -pthread $ccflags"
124 ;;
125 *) cat <<EOM >&4
126I did not know that BSD/OS $osvers supports POSIX threads.
127
128Feel free to tell perlbug@perl.org otherwise.
129EOM
130 exit 1
131 ;;
132 esac
133 ;;
134esac
135EOCBU