Commit | Line | Data |
c07a80fd |
1 | # $Id: dgux.sh,v 1.4 1996/01/18 03:40:38 roderick Exp $ |
2 | |
3 | # This is a hints file for DGUX, which is Data General's Unix. It was |
4 | # developed using version 5.4.3.10 of the OS. I think the gross |
5 | # features should work with versions 5.4.2 through 5.4.4.11 with perhaps |
6 | # minor tweaking, but I don't have any older or newer versions installed |
7 | # at the moment with which to test it. |
a0d0e21e |
8 | # |
c07a80fd |
9 | # DGUX is a SVR4 derivative. It ships with gcc as the standard |
10 | # compiler. Since version 5.4.3.0 it has shipped with Perl 4.036 |
11 | # installed in /usr/bin, which is kind of neat. Be careful when you |
12 | # install that you don't overwrite the system version, though (by |
13 | # answering yes to the question about installing perl as /usr/bin/perl), |
14 | # as it would suck to try to get support if the vendor learned that you |
15 | # were physically replacing the system binaries. |
a0d0e21e |
16 | # |
c07a80fd |
17 | # Be aware that if you opt to use dynamic loading you'll need to set |
18 | # your $LD_LIBRARY_PATH to include the source directory when you build, |
19 | # test and install the software. |
20 | # |
21 | # -Roderick Schertler <roderick@gate.net> |
a0d0e21e |
22 | |
a0d0e21e |
23 | |
c07a80fd |
24 | # Here are the things from some old DGUX hints files which are different |
25 | # from what's in here now. I don't know the exact reasons that most of |
26 | # these settings were in the hints files, presumably they can be chalked |
27 | # up to old Configure inadequacies and changes in the OS headers and the |
28 | # like. These settings might make a good place to start looking if you |
29 | # have problems. |
a0d0e21e |
30 | # |
c07a80fd |
31 | # This was specified the the 4.036 hints file. That hints file didn't |
32 | # say what version of the OS it was developed using. |
a0d0e21e |
33 | # |
c07a80fd |
34 | # cppstdin='/lib/cpp' |
35 | # |
36 | # The 4.036 and 5.001 hints files both contained these. The 5.001 hints |
37 | # file said it was developed with version 5.4.2.01 of DGUX. |
38 | # |
39 | # gidtype='gid_t' |
40 | # groupstype='gid_t' |
41 | # uidtype='uid_t' |
42 | # d_index='define' |
43 | # cc='gcc' |
44 | # |
45 | # These were peculiar to the 5.001 hints file. |
46 | # |
47 | # ccflags='-D_POSIX_SOURCE -D_DGUX_SOURCE' |
a0d0e21e |
48 | # |
c07a80fd |
49 | # # an ugly hack, since the Configure test for "gcc -P -" hangs. |
50 | # # can't just use 'cppstdin', since our DG has a broken cppstdin :-( |
51 | # cppstdin=`cd ..; pwd`/cppstdin |
52 | # cpprun=`cd ..; pwd`/cppstdin |
a0d0e21e |
53 | # |
c07a80fd |
54 | # One last note: The 5.001 hints file said "you don't want to use |
55 | # /usr/ucb/cc" in the place at which it set cc to gcc. That in |
56 | # particular baffles me, as I used to have 5.4.2.01 loaded and my memory |
57 | # is telling me that even then /usr/ucb was a symlink to /usr/bin. |
58 | |
59 | |
60 | # The standard system compiler is gcc, but invoking it as cc changes its |
61 | # behavior. I have to pick one name or the other so I can get the |
62 | # dynamic loading switches right (they vary depending on this). I'm |
63 | # picking gcc because there's no way to get at the optimization options |
64 | # and so on when you call it cc. |
65 | case $cc in |
66 | '') |
67 | cc=gcc |
68 | case $optimize in |
69 | '') optimize=-O2;; |
70 | esac |
71 | ;; |
72 | esac |
73 | |
74 | usevfork=true |
75 | |
76 | # DG has this thing set up with symlinks which point to different places |
77 | # depending on environment variables (see elink(5)) and the compiler and |
78 | # related tools use them to access different development environments |
79 | # (COFF, ELF, m88k BCS and so on), see sde(5). The upshot, however, is |
80 | # that when a normal program tries to access one of these elinks it sees |
81 | # no such file (like stat()ting a mis-directed symlink). Setting |
82 | # $plibpth to explicitly include the place to which the elinks point |
83 | # allows Configure to find libraries which vary based on the development |
84 | # environment. |
85 | plibpth="$plibpth \ |
86 | ${SDE_PATH:-/usr}/sde/${TARGET_BINARY_INTERFACE:-m88kdgux}/usr/lib" |
87 | |
88 | # Many functions (eg, gethostent(), killpg(), getpriority(), setruid() |
89 | # dbm_*(), and plenty more) are defined in -ldgc. Usually you don't |
90 | # need to know this (it seems that libdgc.so is searched automatically |
91 | # by ld), but Configure needs to check it otherwise it will report all |
92 | # those functions as missing. |
93 | libswanted="dgc $libswanted" |
94 | |
95 | # Dynamic loading works using the dlopen() functions. Note that dlfcn.h |
96 | # is broken, it declares _dl*() rather than dl*(). (This is in my |
97 | # I'd-open-a-ticket-about-this-if-it-weren't-going-to-be-such-a-hassle |
98 | # file.) You can ignore the warnings caused by the missing |
99 | # declarations, they're harmless. |
100 | usedl=true |
101 | # For cc rather than gcc the flags would be `-K PIC' for compiling and |
102 | # -G for loading. I haven't tested this. |
103 | cccdlflags=-fpic |
104 | lddlflags=-shared |
c07a80fd |
105 | |
106 | # The system has a function called dg_flock() which is an flock() |
107 | # emulation built using fcntl() locking. Perl currently comes with an |
108 | # flock() emulation which uses lockf(), it should eventually also |
109 | # include an fcntl() emulation of its own. Until that happens I |
110 | # recommend using DG's emulation (and ignoring the `WHOA THERE!' this |
111 | # causes), it provides semantics closer to the original than the lockf() |
112 | # emulation. |
113 | ccflags="$ccflags -Dflock=dg_flock" |
114 | d_flock=define |