This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
fix some typos in perlsyn.pod
[perl5.git] / hints / vos.sh
index 037a6f3..0a3a677 100644 (file)
@@ -1,25 +1,34 @@
-# $Id: vos.sh,v 1.0 2001-12-11 09:30:00-05 Green Exp $
-
-# This is a hints file for Stratus VOS, using the POSIX environment
-# in VOS 14.4.0 and higher.
+# This is a hints file for Stratus OpenVOS, using the POSIX environment
+# found in VOS 17.1.0 and higher.
 #
-# VOS POSIX is based on POSIX.1-1996.  It ships with gcc as the standard
-# compiler.
+# OpenVOS POSIX is based on POSIX.1-1996 and contains elements of
+# POSIX.1-2001.  It ships with gcc as the standard compiler.
 #
 # Paul Green (Paul.Green@stratus.com)
 
 # C compiler and default options.
 cc=gcc
-ccflags="-D_BSD_SOURCE -D_POSIX_C_SOURCE=199509L"
+ccflags="-D_XOPEN_SOURCE=700 -D_VOS_EXTENDED_NAMES"
+ccdlflags="-Wl,-rpath,$shrpdir"
+cccdlflags="-fPIC"
 
 # Make command.
 make="/system/gnu_library/bin/gmake"
-
-# Architecture name
-archname="hppa1.1"
-
-# POSIX commands are here.
-# paths="/system/gnu_library/bin"
+# indented to not put it into config.sh
+  _make="/system/gnu_library/bin/gmake"
+
+# Check for the minimum acceptable release of OpenVOS (17.1.0).
+if test `uname -r | sed -e 's/OpenVOS Release //' -e 's/VOS Release //'` \< "17.1.0"; then
+cat >&4 <<EOF
+***
+*** This version of Perl 5 must be built on OpenVOS Release 17.1.0 or later.
+***
+EOF
+exit 1
+fi
+
+# Always X86
+archname=`uname -m`
 
 # Executable suffix.
 # No, this is not a typo.  The ".pm" really is the native
@@ -27,22 +36,13 @@ archname="hppa1.1"
 _exe=".pm"
 
 # Object library paths.
-loclibpth="/system/stcp/object_library"
-loclibpth="$loclibpth /system/stcp/object_library/common"
-loclibpth="$loclibpth /system/stcp/object_library/net"
-loclibpth="$loclibpth /system/stcp/object_library/socket"
-loclibpth="$loclibpth /system/posix_object_library/sysv"
 loclibpth="$loclibpth /system/posix_object_library"
 loclibpth="$loclibpth /system/c_object_library"
 loclibpth="$loclibpth /system/object_library"
 glibpth="$loclibpth"
 
 # Include library paths
-locincpth="/system/stcp/include_library"
-locincpth="$locincpth /system/stcp/include_library/arpa"
-locincpth="$locincpth /system/stcp/include_library/net"
-locincpth="$locincpth /system/stcp/include_library/netinet"
-locincpth="$locincpth /system/stcp/include_library/protocols"
+locincpth=""
 usrinc="/system/include_library"
 
 # Where to install perl5.
@@ -50,11 +50,15 @@ prefix=/system/ported/perl5
 
 # Linker is gcc.
 ld="gcc"
+lddlflags="-shared"
 
-# No shared libraries.
-so="none"
+# Shared libraries!
+so="so"
 
-# Don't use nm.
+# Build libperl.so
+useshrplib="true"
+
+# Don't use nm. The VOS copy of libc.a is empty.
 usenm="n"
 
 # Make the default be no large file support.
@@ -68,3 +72,20 @@ yacc="/system/gnu_library/bin/bison"
 
 # VOS doesn't have (or need) a pager, but perl needs one.
 pager="/system/gnu_library/bin/cat.pm"
+
+# VOS has a bug that causes _exit() to flush all files.
+# This confuses the tests.  Make 'em happy here.
+fflushNULL=define
+
+# VOS has a link() function but it is a dummy.
+d_link="undef"
+
+# VOS does not have truncate() but we supply one in vos.c
+d_truncate="define"
+archobjs="vos.o"
+
+# Help gmake find vos.c
+test -h vos.c || ln -s vos/vos.c vos.c
+
+# Tell Configure where to find the hosts file.
+hostcat="cat /system/stcp/hosts"