ugle.unit.no:/pub/X11R4/contrib/X11.under.Ultrix4.0 This file contains an earlier posting from the net about getting X11R4 up and running under Ultrix-4.0. It seems to work for me on our DECstation 5000/200 and DECstation2100. I've also included our ultrix.cf and site.def, but with no guaranties whatsoever. You should probably ignore the Motif-stuff, but ensure to define ConnectionFlags to what you want (We use tcp, unix and DECnet). Note that we put all our X-stuff under /local. Rolf Halle (rolfh@solan.unit.no) ****************** EARLIER POSTING ********************************** Article 15636 of comp.windows.x: >From mic@ut-emx.UUCP (Mic Kaczmarczik) Newsgroups: comp.windows.x Subject: Re: Installing X11R4 on DECstation 2100 running Ultrix 4.0 Keywords: X11R4, DECstation, Ultrix Message-ID: <35605@ut-emx.UUCP> Date: 9 Aug 90 16:30:52 GMT References: <1990Aug8.043138.20032@metro.ucc.su.OZ.AU> Reply-To: mic@emx.UUCP (Mic Kaczmarczik) Organization: UT Austin Computation Center, Unix/VMS Services Lines: 224 In article <1990Aug8.043138.20032@metro.ucc.su.OZ.AU> albert@ee.su.oz.au (Albert Hirawan) writes: > >I have a DECstation 2100 running Ultrix 4.0 and I want to run Xwindows >on it. But I failed to compile X11R4 because it could not find 3 >include files: > > - machine/dc7085cons.h > - machine/pwreg.h > - machine/pmioctl.h > These include files were evidently moved into under 4.0 (at least, that's where I found them). I managed to get R4 (with fixes 1-12 applied) compiled and running on a demo DECstation 5000 running Ultrix 4.0 using the following config file and changes. The patches are: 1) clients/xterm/main.c -- compiler barfs on the line fileno(stderr) = i; 2) server/ddx/dec/cfbpmax/{cfbpmax_io,cfbpmax_color}.c -- fix location of the include files mentioned above 3) server/ddx/dec/mfbpmax/{init.c,mfbpmax_io}.c -- ditto To apply and build: 1) Rename config/ultrix.cf to config/ultrix-3.cf or config/ultrix.cf.dist, to keep a copy of the original Ultrix Imake config file. 2) Cd to the top level of your build tree and unpack the shell archive below 3) Copy ultrix-4.0.cf into config/ultrix.cf 4) Cd to the top of the build tree and type patch -p 'ultrix-4.0.cf' <<'END_OF_FILE' X/* X * SET VERSION NUMBERS BEFORE MAKING MAKEFILES X */ X X#define OSName Ultrix V4.0 X#define OSMajorVersion 4 X#define OSMinorVersion 0 X#define SystemV NO X#define HasVoidSignalReturn YES X#define HasPutenv YES X#define HasBsearch YES X X#undef ExtensionDefines X#define ExtensionDefines -DSHAPE -DMITSHM -DMULTIBUFFER -DMITMISC X X#ifdef VaxArchitecture X#define XqvssServer Xqvss X#define XqdssServer Xqdss X#define UnalignedReferencesAllowed YES /* if arbitrary deref is okay */ X#define HasSaberC YES X#define ServerDefines StandardDefines ExtensionDefines -DXDMCP -DNOSTDHDRS -DX11R4 X/* gcc is *VERY USEFUL*, especially for the server; GET it */ X/* #define HasGcc YES */ X#endif X X#ifdef MipsArchitecture X#define XmfbpmaxServer Xmfbpmax X#define XcfbpmaxServer Xcfbpmax X#define StandardDefines X#define DefaultCCOptions -Wf,-XNh2000 -Olimit 2000 X#define ServerDefines StandardDefines ExtensionDefines -DXDMCP X X#endif X X/**/# platform: $XConsortium: ultrix.cf,v 1.20 89/12/22 15:56:14 rws Exp $ X/**/# operating system: OSName END_OF_FILE if test 1034 -ne `wc -c <'ultrix-4.0.cf'`; then echo shar: \"'ultrix-4.0.cf'\" unpacked with wrong size! fi # end of 'ultrix-4.0.cf' fi if test -f 'ultrix-4.0.diffs' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'ultrix-4.0.diffs'\" else echo shar: Extracting \"'ultrix-4.0.diffs'\" \(3204 characters\) sed "s/^X//" >'ultrix-4.0.diffs' <<'END_OF_FILE' Xdiff -rc /usr/src/public/X11R4/mit/clients/xterm/main.c ./clients/xterm/main.c X*** /usr/src/public/X11R4/mit/clients/xterm/main.c Mon Mar 12 17:10:42 1990 X--- ./clients/xterm/main.c Wed Aug 8 12:58:27 1990 X*************** X*** 820,826 **** X--- 820,830 ---- X fileno(stderr) = i; X _bufend(stderr) = old_bufend; X #else /* USE_SYSV_TERMIO */ X+ #ifdef ultrix X+ _iob[2]._file = i; X+ #else X fileno(stderr) = i; X+ #endif X #endif /* USE_SYSV_TERMIO */ X X /* mark this file as close on exec */ Xdiff -rc /usr/src/public/X11R4/mit/server/ddx/dec/cfbpmax/cfbpmax_io.c ./server/ddx/dec/cfbpmax/cfbpmax_io.c X*** /usr/src/public/X11R4/mit/server/ddx/dec/cfbpmax/cfbpmax_io.c Wed Nov 29 16:09:29 1989 X--- ./server/ddx/dec/cfbpmax/cfbpmax_io.c Wed Aug 8 11:30:44 1990 X*************** X*** 31,38 **** X #include X #include X #include X! #include X! #include X X #include "misc.h" X #include "X.h" X--- 31,38 ---- X #include X #include X #include X! #include X! #include X X #include "misc.h" X #include "X.h" Xdiff -rc /usr/src/public/X11R4/mit/server/ddx/dec/cfbpmax/cfbpmaxcolor.c ./server/ddx/dec/cfbpmax/cfbpmaxcolor.c X*** /usr/src/public/X11R4/mit/server/ddx/dec/cfbpmax/cfbpmaxcolor.c Wed Jul 19 20:27:04 1989 X--- ./server/ddx/dec/cfbpmax/cfbpmaxcolor.c Wed Aug 8 11:19:57 1990 X*************** X*** 46,53 **** X #include X #include X #include X! #include X! #include X #include "X.h" /* required for DoRed ... */ X #include "Xproto.h" /* required for xColorItem */ X X--- 46,53 ---- X #include X #include X #include X! #include X! #include X #include "X.h" /* required for DoRed ... */ X #include "Xproto.h" /* required for xColorItem */ X Xdiff -rc /usr/src/public/X11R4/mit/server/ddx/dec/mfbpmax/init.c ./server/ddx/dec/mfbpmax/init.c X*** /usr/src/public/X11R4/mit/server/ddx/dec/mfbpmax/init.c Tue Oct 10 09:16:43 1989 X--- ./server/ddx/dec/mfbpmax/init.c Wed Aug 8 11:21:58 1990 X*************** X*** 27,33 **** X #include "X.h" X #include "Xproto.h" X #include X! #include X X #include "scrnintstr.h" X #include "servermd.h" X--- 27,33 ---- X #include "X.h" X #include "Xproto.h" X #include X! #include X X #include "scrnintstr.h" X #include "servermd.h" Xdiff -rc /usr/src/public/X11R4/mit/server/ddx/dec/mfbpmax/mfbpmax_io.c ./server/ddx/dec/mfbpmax/mfbpmax_io.c X*** /usr/src/public/X11R4/mit/server/ddx/dec/mfbpmax/mfbpmax_io.c Wed Jan 24 19:09:22 1990 X--- ./server/ddx/dec/mfbpmax/mfbpmax_io.c Wed Aug 8 11:21:13 1990 X*************** X*** 31,38 **** X #include X #include X #include X! #include X! #include X X #include "misc.h" X #include "X.h" X--- 31,38 ---- X #include X #include X #include X! #include X! #include X X #include "misc.h" X #include "X.h" END_OF_FILE if test 3204 -ne `wc -c <'ultrix-4.0.diffs'`; then echo shar: \"'ultrix-4.0.diffs'\" unpacked with wrong size! fi # end of 'ultrix-4.0.diffs' fi echo shar: End of shell archive. exit 0 -- Mic Kaczmarczik remark@{emx,ix1,ccwf} (Unix consulting, 1-0251) Unix / VMS / Cyber Services ...!cs.utexas.edu!ut-emx!mic (UUCP) UT Austin Computation Center mic@emx.utexas.edu (Internet) mic@utaivc (BITNET) **************************** ULTRIX.CF ********************************* /* * SET VERSION NUMBERS BEFORE MAKING MAKEFILES */ #define OSName Ultrix V4.0 #define OSMajorVersion 4 #define OSMinorVersion 0 #define SystemV NO #define HasVoidSignalReturn YES #define HasPutenv YES #define HasBsearch YES #undef ExtensionDefines #define ExtensionDefines -DSHAPE -DMITSHM -DMULTIBUFFER -DMITMISC #ifdef VaxArchitecture #define XqvssServer Xqvss #define XqdssServer Xqdss #define UnalignedReferencesAllowed YES /* if arbitrary deref is okay */ #define HasSaberC YES #define ServerDefines StandardDefines ExtensionDefines -DXDMCP -DNOSTDHDRS -DX11R4 /* gcc is *VERY USEFUL*, especially for the server; GET it */ #define HasGcc NO #endif #ifdef MipsArchitecture #define XmfbpmaxServer Xmfbpmax #define XcfbpmaxServer Xcfbpmax #define StandardDefines #define DefaultCCOptions -Wf,-XNh2000 -Olimit 2000 #define ServerDefines StandardDefines ExtensionDefines -DXDMCP #endif /**/# platform: $XConsortium: ultrix.cf,v 1.20 89/12/22 15:56:14 rws Exp $ /**/# operating system: OSName ************************* SITE.DEF ****************************** /**/# site: $XConsortium: site.def,v 1.21 89/12/06 11:46:50 jim Exp $ /***************************************************************************** * * * SITE-SPECIFIC DEFINITIONS * * * * Override any of the defaults in *.tmpl here. Use ifndef so that servers * * can override you if necessary: * * * * #ifndef ABuildParameter * * #define ABuildParameter myvalue * * #endif * * * * Make sure you check the following parameters: * * * * 1. HasLargeTmp * * 2. InstallOldHeaderFiles * * 3. ContribDir * * 4. HasXwWidgets * * 5. HasXcuWidgets * * * * Note on using DESTDIR: If you want to install into a scratch directory * * but will eventually move the tree back to the root, compile with DESTDIR * * blank and install with "make install DESTDIR=directory". * * * * We strongly recommend that you don't change the installation directories * * and just use symbolic links if you want things to be installed on a * * different partition. For example, * * * * # cd directory_containing_X_distribution * * # make World * * # mkdir /otherdisk/X * * # foreach i (bin lib include) * * > mkdir /otherdisk/X/$i * * > ln -s /otherdisk/X/$i /usr/$i/X11 * * > end * * # make install * * * *****************************************************************************/ /* * SET THESE PARAMETERS FIRST !!! */ /* * 1. HasLargeTmp - if your /tmp space is less than a 1meg, you should * probably set this to NO */ #ifndef HasLargeTmp #define HasLargeTmp YES #endif /* * 2. InstallOldHeaderFiles - set the following to YES until you have * converted your Xaw programs to use the new naming scheme. */ #ifndef InstallOldHeaderFiles #define InstallOldHeaderFiles NO /* set to YES for compat with R3 Xaw */ #endif /* * 3. ContribDir - set ContribDir to wherever you've placed your sources; the * R4 tape comes with the core tree in ./mit and the contrib tree in ./contrib, * so to get to contrib, go up from TOP: */ #ifndef ContribDir #define ContribDir $(TOP)/../contrib #endif /* * 4. HasXwWidgets - if you want to have make variables for the Xw widgets * used in Doug Young's book, set this to YES. */ #ifndef HasXwWidgets /* whether or not to include make vars */ #define HasXwWidgets YES #endif /* * 5. HasXcuWidgets - if you want to have make variables for the Xcu widgets, * set this to YES. */ #ifndef HasXcuWidgets /* whether or not to include make vars */ #define HasXcuWidgets YES #endif /***************************************************************************** * * * Build Parameters * * * *****************************************************************************/ /* * If you want to use GCC, set HasGcc in the appropriate .cf files. This * results in substantial improvements for the server. */ #ifndef HasGcc #define HasGcc NO #endif #if HasGcc #ifndef CcCmd #ifdef UseInstalled /* if outside the tree */ #define CcCmd gcc -DNOSTDHDRS -fstrength-reduce -fpcc-struct-return -fwritable-strings -traditional #else /* server won't compile with -traditional */ #define CcCmd gcc -DNOSTDHDRS -fstrength-reduce -fpcc-struct-return -fwritable-strings #endif #endif #endif #undef StandardDefines #define StandardDefines -DSTRINGS_ALIGNED -DNO_REGEX -D_NO_PROTO /* Define HasMotif if you have merged the Motif-src into the X-core. You would probably not do this, because this requires some trixing and mixing with the Imakefiles & Co. */ #ifndef HasMotif #define HasMotif NO #endif /* Use pipe's and math-processor.. whatever that might help */ #if HasGcc #undef DefaultCCOptions #define DefaultCCOptions -O #else #ifndef DefaultCCOptions #define DefaultCCOptions -O #endif #endif #ifndef ExtensionDefines #if SystemV #define ExtensionDefines -DSHAPE -DMULTIBUFFER -DMITSHM -DMITMISC #else #define ExtensionDefines -DSHAPE -DMULTIBUFFER -DMITMISC #endif #endif #ifndef DoInstallExtensionsIntoXlib #define DoInstallExtensionsIntoXlib YES /* for Makefile hosers */ #endif /* * Make sure that the library has compatibility stuff built into it, for wno */ #ifndef BuildXawBC #define BuildXawBC YES /* headers can be installed later */ #endif #ifndef CompatibilityFlags #if InstallOldHeaderFiles #define CompatibilityFlags -DXAW_BC #else #define CompatibilityFlags /**/ #endif #endif #ifndef SharedLibXext #define SharedLibXext NO /* XXX - haven't made it sharable yet */ #endif /* * place site-specific definitions here */ #if HasGcc #ifndef HasMotif #define LibraryCcCmd cc /* until gcc can generate -pic code */ #endif #endif /* We put our stuff under /local (/local/lib/X11, /local/X11, /local/include, /local/man ) */ #ifdef UseInstalled #undef LoaderLibPrefix #define LoaderLibPrefix -L/local/lib/X11 #endif #ifndef LibDir #define LibDir /local/lib/X11 #endif #ifndef UsrLibDir #define UsrLibDir /local/lib/X11 #endif #undef XAppLoadDir #define XAppLoadDir /local/lib/X11/app-defaults #ifndef BinDir #define BinDir /local/X11 #endif #ifndef IncRoot #define IncRoot /local/include #endif #ifndef InstKmemFlags #define InstKmemFlags -g kmem -m 2755 #endif #ifndef InstallxinitConfig #define InstallxinitConfig YES #endif #ifndef ManDirectoryRoot #define ManDirectoryRoot /local/man #endif #ifndef ManSuffix #define ManSuffix 1 #endif #ifndef LibManSuffix #define LibManSuffix 3 #endif #ifndef LibManDir #define LibManDir #endif #ifndef HasFortran #define HasFortran YES #endif #ifndef ExtraLibraries #define ExtraLibraries -ldnet #endif #ifndef ExtraLoadFlags #define ExtraLoadFlags -ldnet #endif #ifdef HasMotif MWM_DEFINES= -DSHAPE -DOPAQUE SYSLIBS= $(MTOOLKITSRC)/libXt.a $(EXTENSIONSRC)/lib/libXext.a $(XLIBSRC)/libX11.a ExtraLibraries #endif #ifdef HasMotif #define UsrIncDir /local/include #endif /* * The following as per ERRATA: */ /* Due to minor bugs in the configuration control, if you are trying to install library files into a directory other than /usr/lib/X11, you'll need to set XFILESEARCHPATHDEFAULT and ERRORDB in mit/config/site.def: */ #ifndef XFileSearchPathDefault #define XFileSearchPathDefault "/local/lib/X11/%L/%T/%N%S:/local/lib/X11/%l/%T/%N%S:/local/lib/X11/%T/%N%S" #endif #ifndef ErrorDB #define ErrorDB "/local/lib/X11/XtErrorDB" #endif /* And add the following lines to mit/lib/Xt/Imakefile at about line 10 #ifdef XFileSearchPathDefault XFSP = XFileSearchPathDefault XFSP_DEFINES = -DXFILESEARCHPATHDEFAULT=\"$(XFSP)\" #endif #ifdef ErrorDB ERRORDB = ErrorDB ERRORDB_DEFINES = -DERRORDB=\"$(ERRORDB)\" #endif */ /* This yields lib/Xmu/Imakefile, so that BITMAPDIR is defined as described in ERRATA. You will have to change the Imakefile yourself if you want to use this variable. */ #define OwnBitmapDir YES /* * If you want DECNET-support, be sure to define this */ #undef ConnectionFlags #define ConnectionFlags -DTCPCONN -DUNIXCONN -DDNETCONN /* If you want to use Sunview together with X, remember to define UseSunWindowsInServer in sun.cf */