casey@admin.cognet.ucla.edu (Casey Leedom) (11/13/88)
Thanks much to Dave Gorgen of Apollo for his incredibly helpful
information leading to the final conquest of X.V11R3 under Apollo's
new operating system release SR10.0. Dave deserves a raise both for his
technical knowledge and his constructive and supportive attitude in the
face of a very hostile audience (i.e. me). Thanks Dave, really!!
Following are fixes to four of the core files in the X.V11R3
distribution for compilation under Apollo's SR10.0. These fixes should
be transparent to other platforms, including other versions of the Apollo
operating system. Note in particular the addition of the _APOLLO_SR10
define in the imake.includes/Apllo.macros file - comment this out if you
are not running SR10.0.
Casey
-----
util/imake.includes/Apllo.macros:
Added _APOLLO_SR10 define for use in other distribution files to
distinguish between Apollo's SR10.0 and other releases. Used
above to locate pascal compiler ... (Unfortunately, Apollo
doesn't provide a similar define themselves - I wish they would
issue a general patch instructing all customers to add something
like this to their <apollo_$std.h> (where they define all general
cpp predefines).)
util/imake.includes/Imake.tmpl:
Added ``-A nansi'' to OptimizedCDebugFlags (ifdef _APOLLO_SR10)
because Apollo's SR10 C compiler *isn't really* an ANSI C
compiler - even though *it does* predefine __STDC__. Fucking,
idiot brain damage. Note that ``-A nansi'' should also be added
to DebuggableCDebugFlags, but I doubt very much whether anyone is
ever going to want to use an Apollo to try to debug X ...
The ``-A nansi'' will cause warning in the make depend phase.
ignore them. Also, just as a general note, the Apollo compiler
is very good at detecting variables which are assigned to, but
never used, and several other problems of this nature. Ignore
all the warnings it produces about these (though we should
probably hand the complete set over to the X consortium) ...
server/ddx/apollo/apc/Imakefile:
Under Apollo's SR10, the object file format got changed. SR10
now uses COFF. In any case, we can't just unpack the apcfont.bin
object module and hope for it to work. Added obj2coff step
(ifdef _APOLLO_SR10). Also added pascal compile step if pascal
compiler available (pascal is an unbundled product on Apollos).
server/ddx/apollo/apc/apctext.h:
Added missing #endif.
*** util/imake.includes/Apllo.macros-dist Sun Oct 23 15:00:32 1988
--- util/imake.includes/Apllo.macros Sat Nov 12 01:19:52 1988
***************
*** 1,5 ****
--- 1,8 ----
/**/# platform: $XConsortium: Apllo.macros,v 1.44 88/10/23 11:00:30 jim Exp $
+ /* define this if you're running Apollo SR10 */
+ #define _APOLLO_SR10
+
BOOTSTRAPCFLAGS =
AS = exit 1
CC = cc
***************
*** 15,26 ****
RANLIBINSTFLAGS =
AR = ar clq
LS = ls
- PAS = /com/pas
LINTOPTS = -axz
LINTLIBFLAG = -C
MAKE = make
STD_CPP_DEFINES =
STD_DEFINES =
/* This defines the server you want */
#define XapolloServer Xapollo
--- 18,35 ----
RANLIBINSTFLAGS =
AR = ar clq
LS = ls
LINTOPTS = -axz
LINTLIBFLAG = -C
MAKE = make
+ #ifdef _APOLLO_SR10
+ PAS = /usr/apollo/lib/pas
+ STD_CPP_DEFINES = -D_APOLLO_SR10
+ STD_DEFINES = -D_APOLLO_SR10
+ #else
+ PAS = /com/pas
STD_CPP_DEFINES =
STD_DEFINES =
+ #endif
/* This defines the server you want */
#define XapolloServer Xapollo
*** util/imake.includes/Imake.tmpl-dist Mon Oct 24 02:37:17 1988
--- util/imake.includes/Imake.tmpl Sat Nov 12 02:13:46 1988
***************
*** 246,252 ****
--- 246,256 ----
#define FontCompilerFlags -t
#endif
#ifndef OptimizedCDebugFlags
+ #ifdef _APOLLO_SR10
+ #define OptimizedCDebugFlags -O -A nansi
+ #else
#define OptimizedCDebugFlags -O
+ #endif
#endif
#ifndef DebuggableCDebugFlags
#define DebuggableCDebugFlags -g
*** server/ddx/apollo/apc/Imakefile-dist Fri Oct 21 19:32:20 1988
--- server/ddx/apollo/apc/Imakefile Sat Nov 12 01:04:22 1988
***************
*** 19,27 ****
NormalLibraryObjectRule()
NormalLibraryTarget(apc,$(OBJS))
! apcfont.bin: apcfont.tar
-$(RM) apcfont.bin
! tar -xvf apcfont.tar
DependTarget()
--- 19,45 ----
NormalLibraryObjectRule()
NormalLibraryTarget(apc,$(OBJS))
! #ifdef _APOLLO_SR10
! apcfont.bin: apcfont.pas apcfont.tar
-$(RM) apcfont.bin
! set -ex; \
! if [ -s ${PAS} ]; then \
! ${PAS} apcfont.pas; \
! else \
! tar -xvf apcfont.tar; \
! /usr/apollo/bin/obj2coff apcfont.bin apcfont.coff; \
! mv apcfont.coff apcfont.bin; \
! fi
! #else
! apcfont.bin: apcfont.pas apcfont.tar
! -$(RM) apcfont.bin
! set -ex; \
! if [ -s ${PAS} ]; then \
! ${PAS} apcfont.pas; \
! else \
! tar -xvf apcfont.tar; \
! fi
! #endif
DependTarget()
*** server/ddx/apollo/apc/apctext.h-dist Mon Feb 22 23:42:39 1988
--- server/ddx/apollo/apc/apctext.h Fri Nov 4 00:07:39 1988
***************
*** 38,40 ****
--- 38,42 ----
extern int gprPolyText8();
extern int gprPolyText16();
extern int nopText();
+
+ #endif /* _APOLLO_TEXT_H_ */