perl5.001 patch.1d
[p5sagit/p5-mst-13.2.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 stdio.h is "standard", but it really isn't.
78 # Things like the -T and -B file test operators (on file handles) fail when
79 # it tries to treat it as "standard"
80 #
81 d_stdstdio='undef'
82
83 # Configure imagines that it sees a pw_quota field, but it is really in a
84 # different structure than the one it thinks it is looking at.  WARNING:
85 # Setting this here in the hints file doesn't help. You need to fix this by
86 # editing config.sh after Configure asks you to fix things with a shell
87 # escape! (Maybe Configure should actually try to compile a routine to
88 # test each field, but what a pain that would be...).
89 #
90 # Perhaps I should create a config.over file and add this to it now?
91 #
92 d_pwquota='undef'
93 echo ''
94 echo ''
95 echo WARNING: Edit config.sh when Configure offers to let you do so at the
96 echo end of the configuration process and manually change d_pwquota from
97 echo define to undef \(or you may want to create a config.over file now\).
98 echo ''
99 echo ''
100
101 # The following silly shell variable is set just so it will be printed out
102 # immediately prior to asking the user to edit config.sh :-).
103 #
104 dont_forget_to_fix_d_pwquota_in_config_to_be_undef="really"
105
106
107 # Configure sometime finds what it believes to be ndbm header files on the
108 # system and imagines that we have the NDBM library, but we really don't.
109 # There is something there that once resembled ndbm, but it is purely
110 # for internal use in some tool and has been hacked beyond recognition
111 # (or even function :-)
112 #
113 i_ndbm='undef'
114
115 # Don't use the perl malloc
116 #
117 d_mymalloc='undef'
118 usemymalloc='n'