1*f3efcd01Safresh1# hints/minix.sh 2*f3efcd01Safresh1# 3*f3efcd01Safresh1# Please check with packages@netbsd.org before making modifications 4*f3efcd01Safresh1# to this file. 5*f3efcd01Safresh1 6*f3efcd01Safresh1case "$archname" in 7*f3efcd01Safresh1'') 8*f3efcd01Safresh1 archname=`uname -m`-${osname} 9*f3efcd01Safresh1 ;; 10*f3efcd01Safresh1esac 11*f3efcd01Safresh1 12*f3efcd01Safresh1# NetBSD keeps dynamic loading dl*() functions in /usr/lib/crt0.o, 13*f3efcd01Safresh1# so Configure doesn't find them (unless you abandon the nm scan). 14*f3efcd01Safresh1# 15*f3efcd01Safresh1case "$osvers" in 16*f3efcd01Safresh1*) 17*f3efcd01Safresh1 if test -f /usr/libexec/ld.elf_so; then 18*f3efcd01Safresh1 # ELF 19*f3efcd01Safresh1 d_dlopen=$define 20*f3efcd01Safresh1 d_dlerror=$define 21*f3efcd01Safresh1 cccdlflags="-DPIC -fPIC $cccdlflags" 22*f3efcd01Safresh1 lddlflags="-shared $lddlflags" 23*f3efcd01Safresh1 rpathflag="-Wl,-rpath," 24*f3efcd01Safresh1 ccdlflags="-Wl,-E $ccdlflags" 25*f3efcd01Safresh1 elif test -f /usr/libexec/ld.so; then 26*f3efcd01Safresh1 # a.out 27*f3efcd01Safresh1 d_dlopen=$define 28*f3efcd01Safresh1 d_dlerror=$define 29*f3efcd01Safresh1 cccdlflags="-DPIC -fPIC $cccdlflags" 30*f3efcd01Safresh1 lddlflags="-Bshareable $lddlflags" 31*f3efcd01Safresh1 rpathflag="-R" 32*f3efcd01Safresh1 else 33*f3efcd01Safresh1 d_dlopen=$undef 34*f3efcd01Safresh1 rpathflag= 35*f3efcd01Safresh1 fi 36*f3efcd01Safresh1 d_getprotoent_r="$undef" 37*f3efcd01Safresh1 d_getprotobyname_r="$undef" 38*f3efcd01Safresh1 d_getprotobynumber_r="$undef" 39*f3efcd01Safresh1 d_setprotoent_r="$undef" 40*f3efcd01Safresh1 d_endprotoent_r="$undef" 41*f3efcd01Safresh1 d_getservent_r="$undef" 42*f3efcd01Safresh1 d_getservbyname_r="$undef" 43*f3efcd01Safresh1 d_getservbyport_r="$undef" 44*f3efcd01Safresh1 d_setservent_r="$undef" 45*f3efcd01Safresh1 d_endservent_r="$undef" 46*f3efcd01Safresh1 d_gethostbyname_r="$undef" 47*f3efcd01Safresh1 d_gethostbyaddr2_r="$undef" 48*f3efcd01Safresh1 d_gethostbyaddr_r="$undef" 49*f3efcd01Safresh1 d_sethostent_r="$undef" 50*f3efcd01Safresh1 d_gethostent_r="$undef" 51*f3efcd01Safresh1 d_endhostent_r="$undef" 52*f3efcd01Safresh1 d_getprotoent_r_proto="0" 53*f3efcd01Safresh1 d_getprotobyname_r_proto="0" 54*f3efcd01Safresh1 d_getprotobynumber_r_proto="0" 55*f3efcd01Safresh1 d_setprotoent_r_proto="0" 56*f3efcd01Safresh1 d_endprotoent_r_proto="0" 57*f3efcd01Safresh1 d_getservent_r_proto="0" 58*f3efcd01Safresh1 d_getservbyname_r_proto="0" 59*f3efcd01Safresh1 d_getservbyport_r_proto="0" 60*f3efcd01Safresh1 d_setservent_r_proto="0" 61*f3efcd01Safresh1 d_endservent_r_proto="0" 62*f3efcd01Safresh1 d_gethostbyname_r_proto="0" 63*f3efcd01Safresh1 d_gethostbyaddr2_r_proto="0" 64*f3efcd01Safresh1 d_gethostbyaddr_r_proto="0" 65*f3efcd01Safresh1 d_sethostent_r_proto="0" 66*f3efcd01Safresh1 d_endhostent_r_proto="0" 67*f3efcd01Safresh1 d_gethostent_r_proto="0" 68*f3efcd01Safresh1 ;; 69*f3efcd01Safresh1esac 70*f3efcd01Safresh1 71*f3efcd01Safresh1# there's no problem with vfork. 72*f3efcd01Safresh1usevfork=true 73*f3efcd01Safresh1 74*f3efcd01Safresh1# This is there but in machine/ieeefp_h. 75*f3efcd01Safresh1ieeefp_h="define" 76*f3efcd01Safresh1 77*f3efcd01Safresh1# This script UU/usethreads.cbu will get 'called-back' by Configure 78*f3efcd01Safresh1# after it has prompted the user for whether to use threads. 79*f3efcd01Safresh1cat > UU/usethreads.cbu <<'EOCBU' 80*f3efcd01Safresh1case "$usethreads" in 81*f3efcd01Safresh1$define|true|[yY]*) 82*f3efcd01Safresh1 lpthread= 83*f3efcd01Safresh1 for xxx in pthread; do 84*f3efcd01Safresh1 for yyy in $loclibpth $plibpth $glibpth dummy; do 85*f3efcd01Safresh1 zzz=$yyy/lib$xxx.a 86*f3efcd01Safresh1 if test -f "$zzz"; then 87*f3efcd01Safresh1 lpthread=$xxx 88*f3efcd01Safresh1 break; 89*f3efcd01Safresh1 fi 90*f3efcd01Safresh1 zzz=$yyy/lib$xxx.so 91*f3efcd01Safresh1 if test -f "$zzz"; then 92*f3efcd01Safresh1 lpthread=$xxx 93*f3efcd01Safresh1 break; 94*f3efcd01Safresh1 fi 95*f3efcd01Safresh1 zzz=`ls $yyy/lib$xxx.so.* 2>/dev/null` 96*f3efcd01Safresh1 if test "X$zzz" != X; then 97*f3efcd01Safresh1 lpthread=$xxx 98*f3efcd01Safresh1 break; 99*f3efcd01Safresh1 fi 100*f3efcd01Safresh1 done 101*f3efcd01Safresh1 if test "X$lpthread" != X; then 102*f3efcd01Safresh1 break; 103*f3efcd01Safresh1 fi 104*f3efcd01Safresh1 done 105*f3efcd01Safresh1 if test "X$lpthread" != X; then 106*f3efcd01Safresh1 # Add -lpthread. 107*f3efcd01Safresh1 libswanted="$libswanted $lpthread" 108*f3efcd01Safresh1 # There is no libc_r as of NetBSD 1.5.2, so no c -> c_r. 109*f3efcd01Safresh1 # This will be revisited when NetBSD gains a native pthreads 110*f3efcd01Safresh1 # implementation. 111*f3efcd01Safresh1 else 112*f3efcd01Safresh1 echo "$0: No POSIX threads library (-lpthread) found. " \ 113*f3efcd01Safresh1 "You may want to install GNU pth. Aborting." >&4 114*f3efcd01Safresh1 exit 1 115*f3efcd01Safresh1 fi 116*f3efcd01Safresh1 unset lpthread 117*f3efcd01Safresh1esac 118*f3efcd01Safresh1EOCBU 119*f3efcd01Safresh1 120*f3efcd01Safresh1# Set sensible defaults for Minix: look for local software in 121*f3efcd01Safresh1# /usr/local, plus the build prefix, which might or might not be 122*f3efcd01Safresh1# /usr/pkg. 123*f3efcd01Safresh1# 124*f3efcd01Safresh1loclibpth="/usr/local/lib ${prefix}/lib" 125*f3efcd01Safresh1locincpth="/usr/local/include ${prefix}/include" 126*f3efcd01Safresh1 127*f3efcd01Safresh1case "$rpathflag" in 128*f3efcd01Safresh1'') 129*f3efcd01Safresh1 ldflags= 130*f3efcd01Safresh1 ;; 131*f3efcd01Safresh1*) 132*f3efcd01Safresh1 ldflags= 133*f3efcd01Safresh1 for yyy in $loclibpth; do 134*f3efcd01Safresh1 ldflags="$ldflags $rpathflag$yyy" 135*f3efcd01Safresh1 done 136*f3efcd01Safresh1 ;; 137*f3efcd01Safresh1esac 138*f3efcd01Safresh1 139*f3efcd01Safresh1# malloc wrap works 140*f3efcd01Safresh1case "$usemallocwrap" in 141*f3efcd01Safresh1'') usemallocwrap='define' ;; 142*f3efcd01Safresh1esac 143*f3efcd01Safresh1 144*f3efcd01Safresh1# don't use perl malloc by default 145*f3efcd01Safresh1case "$usemymalloc" in 146*f3efcd01Safresh1'') usemymalloc=n ;; 147*f3efcd01Safresh1esac 148