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