This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
make POP_SAVEARRAY() safe
[perl5.git] / hints / vos.sh
CommitLineData
05954a8b
PG
1# This is a hints file for Stratus OpenVOS, using the POSIX environment
2# found in VOS 17.1.0 and higher.
573e07cf 3#
05954a8b 4# OpenVOS POSIX is based on POSIX.1-1996 and contains elements of
3722f0dc 5# POSIX.1-2001. It ships with gcc as the standard compiler.
573e07cf
JH
6#
7# Paul Green (Paul.Green@stratus.com)
8
9# C compiler and default options.
61d94d03
PG
10cc=${CC-gcc}
11ccflags=${CFLAGS-"-D_XOPEN_SOURCE=700 -D_SYSV -D_VOS_EXTENDED_NAMES -D_FILE_OFFSET_BITS=64"}
573e07cf
JH
12
13# Make command.
61d94d03 14make=${MAKE-"/system/gnu_library/bin/gmake"}
7b2b351e 15# indented to not put it into config.sh
61d94d03 16 _make=${MAKE-"/system/gnu_library/bin/gmake"}
573e07cf 17
05954a8b
PG
18# Check for the minimum acceptable release of OpenVOS (17.1.0).
19if test `uname -r | sed -e 's/OpenVOS Release //' -e 's/VOS Release //'` \< "17.1.0"; then
20cat >&4 <<EOF
21***
22*** This version of Perl 5 must be built on OpenVOS Release 17.1.0 or later.
23***
24EOF
25exit 1
3722f0dc 26fi
573e07cf 27
61d94d03 28# Architecture name always X86
05954a8b
PG
29archname=`uname -m`
30
b29b993b
JH
31# Executable suffix.
32# No, this is not a typo. The ".pm" really is the native
33# executable suffix in VOS. Talk about cosmic resonance.
34_exe=".pm"
35
573e07cf 36# Object library paths.
573e07cf
JH
37loclibpth="$loclibpth /system/posix_object_library"
38loclibpth="$loclibpth /system/c_object_library"
39loclibpth="$loclibpth /system/object_library"
40glibpth="$loclibpth"
41
42# Include library paths
05954a8b 43locincpth=""
61d94d03 44usrinc=${USRINC-"/system/include_library"}
573e07cf
JH
45
46# Where to install perl5.
61d94d03 47prefix=/system/ported
573e07cf
JH
48
49# Linker is gcc.
61d94d03 50ld=${CC-"gcc"}
573e07cf 51
05954a8b 52# Don't use nm. The VOS copy of libc.a is empty.
573e07cf
JH
53usenm="n"
54
573e07cf
JH
55# Don't use malloc that comes with perl.
56usemymalloc="n"
57
92d4dc7f
JH
58# Make bison the default compiler-compiler.
59yacc="/system/gnu_library/bin/bison"
60
61d94d03
PG
61# VOS doesn't need a pager, but perl does.
62pager="/system/gnu_library/bin/less.pm"
868439a2
JH
63
64# VOS has a bug that causes _exit() to flush all files.
65# This confuses the tests. Make 'em happy here.
66fflushNULL=define
cf346138
PG
67
68# VOS has a link() function but it is a dummy.
69d_link="undef"
7b2b351e
PG
70
71# VOS does not have truncate() but we supply one in vos.c
72d_truncate="define"
73archobjs="vos.o"
74
75# Help gmake find vos.c
76test -h vos.c || ln -s vos/vos.c vos.c
1059054d 77
1059054d
PG
78# Tell Configure where to find the hosts file.
79hostcat="cat /system/stcp/hosts"
61d94d03
PG
80
81# VOS 17.1 has support for dynamic linking.
82usedl="define"
83
84# Filename suffix for shared libraries.
85so="so"
86
87# Flags used when compiling a module for a shared library.
88cccdlflags="-fPIC"
89
90# Flags passed to $ld to produce shared libraries.
91lddlflags="-shared"
92
93# Flags passed to $cc when linking a program that uses shared libraries.
94ccdlflags="-Wl,-export-dynamic"
95
96# Filename suffix for dynamically-loaded perl modules.
97dlext="so"
98
99# Use dlopen() to open shared libraries.
100dlsrc="dl_dlopen.xs"
101
102# Build a shared libperl? (Define on Configure cmd line.)
103# useshrplib="true"