| 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 . |