1# $Id: vos.sh,v 1.0 2001-12-11 09:30:00-05 Green Exp $ 2 3# This is a hints file for Stratus VOS, using the POSIX environment 4# in VOS 14.4.0 and higher. 5# 6# VOS POSIX is based on POSIX.1-1996. It ships with gcc as the standard 7# compiler. 8# 9# Paul Green (Paul.Green@stratus.com) 10 11# C compiler and default options. 12cc=gcc 13ccflags="-D_SVID_SOURCE -D_POSIX_C_SOURCE=199509L" 14 15# Make command. 16make="/system/gnu_library/bin/gmake" 17# indented to not put it into config.sh 18 _make="/system/gnu_library/bin/gmake" 19 20# Architecture name 21archname="hppa1.1" 22 23# Executable suffix. 24# No, this is not a typo. The ".pm" really is the native 25# executable suffix in VOS. Talk about cosmic resonance. 26_exe=".pm" 27 28# Object library paths. 29loclibpth="/system/stcp/object_library" 30loclibpth="$loclibpth /system/stcp/object_library/common" 31loclibpth="$loclibpth /system/stcp/object_library/net" 32loclibpth="$loclibpth /system/stcp/object_library/socket" 33loclibpth="$loclibpth /system/posix_object_library/sysv" 34loclibpth="$loclibpth /system/posix_object_library" 35loclibpth="$loclibpth /system/c_object_library" 36loclibpth="$loclibpth /system/object_library" 37glibpth="$loclibpth" 38 39# Include library paths 40locincpth="/system/stcp/include_library" 41locincpth="$locincpth /system/include_library/sysv" 42usrinc="/system/include_library" 43 44# Where to install perl5. 45prefix=/system/ported/perl5 46 47# Linker is gcc. 48ld="gcc" 49 50# No shared libraries. 51so="none" 52 53# Don't use nm. 54usenm="n" 55 56# Make the default be no large file support. 57uselargefiles="n" 58 59# Don't use malloc that comes with perl. 60usemymalloc="n" 61 62# Make bison the default compiler-compiler. 63yacc="/system/gnu_library/bin/bison" 64 65# VOS doesn't have (or need) a pager, but perl needs one. 66pager="/system/gnu_library/bin/cat.pm" 67 68# VOS has a bug that causes _exit() to flush all files. 69# This confuses the tests. Make 'em happy here. 70fflushNULL=define 71 72# VOS has a link() function but it is a dummy. 73d_link="undef" 74 75# VOS does not have truncate() but we supply one in vos.c 76d_truncate="define" 77archobjs="vos.o" 78 79# Help gmake find vos.c 80test -h vos.c || ln -s vos/vos.c vos.c 81 82# VOS returns a constant 1 for st_nlink when stat'ing a 83# directory. Therefore, we must set this variable to stop 84# File::Find using the link count to determine whether there are 85# subdirectories to be searched. 86dont_use_nlink=define 87 88# Tell Configure where to find the hosts file. 89hostcat="cat /system/stcp/hosts" 90 91# VOS does not have socketpair() but we supply one in vos.c 92d_sockpair="define" 93 94# Once we have the compiler flags defined, Configure will 95# execute the following call-back script. See hints/README.hints 96# for details. 97cat > UU/cc.cbu <<'EOCBU' 98# This script UU/cc.cbu will get 'called-back' by Configure after it 99# has prompted the user for the C compiler to use. 100 101# Compile and run the a test case to see if bug gnu_g++-220 is 102# present. If so, lower the optimization level when compiling 103# pp_pack.c. This works around a bug in unpack. 104 105echo " " 106echo "Testing whether bug gnu_g++-220 is fixed in your compiler..." 107 108# Try compiling the test case. 109if $cc -o t001 -O $ccflags $ldflags ../hints/t001.c; then 110 gccbug=`$run ./t001` 111 if [ "X$gccversion" = "X" ]; then 112 # Done too late in Configure if hinted 113 gccversion=`$cc --version | sed 's/.*(GCC) *//'` 114 fi 115 case "$gccbug" in 116 *fails*) cat >&4 <<EOF 117This C compiler ($gccversion) is known to have optimizer 118problems when compiling pp_pack.c. The Stratus bug number 119for this problem is gnu_g++-220. 120 121Disabling optimization for pp_pack.c. 122EOF 123 case "$pp_pack_cflags" in 124 '') pp_pack_cflags='optimize=' 125 echo "pp_pack_cflags='optimize=\"\"'" >> config.sh ;; 126 *) echo "You specified pp_pack_cflags yourself, so we'll go with your value." >&4 ;; 127 esac 128 ;; 129 *) echo "Your compiler is ok." >&4 130 ;; 131 esac 132else 133 echo " " 134 echo "*** WHOA THERE!!! ***" >&4 135 echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4 136 case "$knowitall" in 137 '') 138 echo " You'd better start hunting for one and let me know about it." >&4 139 exit 1 140 ;; 141 esac 142fi 143 144$rm -f t001$_o t001$_exe t001.kp 145EOCBU 146 147 148# VOS 14.7 has minimal support for dynamic linking. Too minimal for perl. 149usedl="undef" 150