| 1 |
root |
1.1 |
# BeOS hints file |
| 2 |
|
|
# $Id: beos.sh,v 1.1 1998/02/16 03:51:45 dogcow Exp $ |
| 3 |
|
|
|
| 4 |
|
|
if [ ! -f beos/nm ]; then mwcc -w all -o beos/nm beos/nm.c 2>/dev/null; fi |
| 5 |
|
|
# If this fails, that's all right - it's only for PPC. |
| 6 |
|
|
|
| 7 |
|
|
prefix="/boot/home/config" |
| 8 |
|
|
|
| 9 |
|
|
#cpp="mwcc -e" |
| 10 |
|
|
|
| 11 |
|
|
libpth='/boot/beos/system/lib /boot/home/config/lib' |
| 12 |
|
|
usrinc='/boot/develop/headers/posix' |
| 13 |
|
|
locinc='/boot/develop/headers/ /boot/home/config/include' |
| 14 |
|
|
|
| 15 |
|
|
libc='/boot/beos/system/lib/libroot.so' |
| 16 |
|
|
libs=' ' |
| 17 |
|
|
|
| 18 |
|
|
d_bcmp='define' |
| 19 |
|
|
d_bcopy='define' |
| 20 |
|
|
d_bzero='define' |
| 21 |
|
|
d_index='define' |
| 22 |
|
|
#d_htonl='define' # It exists, but much hackery would be required to support. |
| 23 |
|
|
# a bunch of extra includes would have to be added, and it's only used at |
| 24 |
|
|
# one place in the non-socket perl code. |
| 25 |
|
|
|
| 26 |
|
|
#these are all in libdll.a, which my version of nm doesn't know how to parse. |
| 27 |
|
|
#if I can get it to both do that, and scan multiple library files, perhaps |
| 28 |
|
|
#these can be gotten rid of. |
| 29 |
|
|
|
| 30 |
|
|
usemymalloc='n' |
| 31 |
|
|
# Hopefully, Be's malloc knows better than perl's. |
| 32 |
|
|
|
| 33 |
|
|
d_link='undef' |
| 34 |
|
|
dont_use_nlink='define' |
| 35 |
|
|
# no posix (aka hard) links for us! |
| 36 |
|
|
|
| 37 |
|
|
d_syserrlst='undef' |
| 38 |
|
|
# the array syserrlst[] is useless for the most part. |
| 39 |
|
|
# large negative numbers really kind of suck in arrays. |
| 40 |
|
|
|
| 41 |
|
|
# Sockets didn't use to be real sockets but BONE changes this. |
| 42 |
|
|
if [ ! -f /boot/develop/headers/be/bone/sys/socket.h ]; then |
| 43 |
|
|
d_socket='undef' |
| 44 |
|
|
d_gethbyaddr='undef' |
| 45 |
|
|
d_gethbyname='undef' |
| 46 |
|
|
d_getsbyname='undef' |
| 47 |
|
|
|
| 48 |
|
|
libs='-lnet' |
| 49 |
|
|
fi |
| 50 |
|
|
|
| 51 |
|
|
# There's a third party flock() emulation. Check, if it is available. |
| 52 |
|
|
echo "#include <flock.h>" > try.c |
| 53 |
|
|
if cc -E $CFLAGS try.c 2> /dev/null | grep "flock.*("; then |
| 54 |
|
|
d_flock='define' |
| 55 |
|
|
d_flockproto='define' |
| 56 |
|
|
libs="$libs -lflock" |
| 57 |
|
|
ldflags="$ldflags -L/boot/home/config/lib" |
| 58 |
|
|
else |
| 59 |
|
|
cat << 'EOM' >&4 |
| 60 |
|
|
|
| 61 |
|
|
I couldn't find a <flock.h> header defining a flock() prototype. That header |
| 62 |
|
|
comes with the flock server package (available on BeBits). You have to add |
| 63 |
|
|
the path to the directory containing the header via the environment variable |
| 64 |
|
|
CFLAGS (should contain -I</path/to/dir/of/flock/header>). Perl will be compiled |
| 65 |
|
|
without flock() support, if the flock server package is not installed or the |
| 66 |
|
|
header not found. |
| 67 |
|
|
|
| 68 |
|
|
EOM |
| 69 |
|
|
|
| 70 |
|
|
fi |
| 71 |
|
|
rm try.c |
| 72 |
|
|
|
| 73 |
|
|
ld='gcc' |
| 74 |
|
|
|
| 75 |
|
|
export PATH="$PATH:$PWD/beos" |
| 76 |
|
|
|
| 77 |
|
|
case "$ldlibpthname" in |
| 78 |
|
|
'') ldlibpthname=LIBRARY_PATH ;; |
| 79 |
|
|
esac |
| 80 |
|
|
|
| 81 |
|
|
# the waitpid() wrapper (among other things) |
| 82 |
|
|
archobjs="beos.o" |
| 83 |
|
|
test -f beos.c || cp beos/beos.c . |