This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add descriptions for $^E and $^O, and squash a typo.
[perl5.git] / hints / cxux.sh
1 # Hints for the CX/UX 7.1 operating system running on Harris NightHawk
2 # machines.  written by Tom.Horsley@mail.hcsc.com
3 #
4 # This config is setup for dynamic linking and the Harris C compiler.
5
6 # Check some things and print warnings if this isn't going to work...
7 #
8 case ${SDE_TARGET:-ELF} in
9    [Cc][Oo][Ff][Ff]|[Oo][Cc][Ss]) echo ''
10       echo ''
11       echo WARNING: Do not build perl 5 with the SDE_TARGET set to
12       echo generate coff object - perl 5 must be built in the ELF
13       echo environment.
14       echo ''
15       echo '';;
16    [Ee][Ll][Ff]) : ;;
17    *) echo ''
18       echo 'Unknown SDE_TARGET value: '$SDE_TARGET
19       echo '';;
20 esac
21
22 case `uname -r` in
23    [789]*) : ;;
24    *) echo ''
25       echo ''
26       echo WARNING: Perl 5 requires shared library support, it cannot
27       echo be built on releases of CX/UX prior to 7.0 with this hints
28       echo file. You\'ll have to do a separate port for the statically
29       echo linked COFF environment.
30       echo ''
31       echo '';;
32 esac
33
34 # Internally at Harris, we use a source management tool which winds up
35 # giving us read-only copies of source trees that are mostly symbolic links.
36 # That upsets the perl build process when it tries to edit opcode.h and
37 # embed.h or touch perly.c or perly.h, so turn those files into "real" files
38 # when Configure runs. (If you already have "real" source files, this won't
39 # do anything).
40 #
41 if [ -x /usr/local/mkreal ]
42 then
43    for i in '.' '..'
44    do
45       for j in embed.h opcode.h perly.h perly.c
46       do
47          if [ -h $i/$j ]
48          then
49             ( cd $i ; /usr/local/mkreal $j ; chmod 666 $j )
50          fi
51       done
52    done
53 fi
54
55 # We DO NOT want -lmalloc
56 #
57 libswanted=`echo ' '$libswanted' ' | sed -e 's/ malloc / /'`
58
59 # Stick the low-level elf library path in first.
60 #
61 glibpth="/usr/sde/elf/usr/lib $glibpth"
62
63 # Need to use Harris cc for most of these options to be meaningful (if you
64 # want to get this to work with gcc, you're on your own :-). Passing
65 # -Bexport to the linker when linking perl is important because it leaves
66 # the interpreter internal symbols visible to the shared libs that will be
67 # loaded on demand (and will try to reference those symbols). The -u
68 # option to drag 'sigaction' into the perl main program is to make sure
69 # it gets defined for the posix shared library (for some reason sigaction
70 # is static, rather than being defined in libc.so.1).
71 #
72 cc='/bin/cc -Xa'
73 cccdlflags='-Zelf -Zpic'
74 ccdlflags='-Zelf -Zlink=dynamic -Wl,-Bexport -u sigaction'
75 lddlflags='-Zlink=so'
76
77 # Configure imagines that it sees a pw_quota field, but it is really in a
78 # different structure than the one it thinks it is looking at.
79 d_pwquota='undef'
80
81 # Configure sometimes finds what it believes to be ndbm header files on the
82 # system and imagines that we have the NDBM library, but we really don't.
83 # There is something there that once resembled ndbm, but it is purely
84 # for internal use in some tool and has been hacked beyond recognition
85 # (or even function :-)
86 #
87 i_ndbm='undef'
88
89 # Don't use the perl malloc
90 #
91 d_mymalloc='undef'
92 usemymalloc='n'
93
94 cat <<'EOM'
95
96 You will get a failure on lib/posix.t test 16 because ungetc() on
97 stdin does not work if no characters have been read from stdin.
98 If you type a character at the terminal where you are running
99 the tests, you can fool it into thinking it worked.
100
101 EOM