From b6e6afccf37f4ad0515ef2a698f714fdf1bf23b3 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Fri, 4 Feb 2005 14:48:36 +0000 Subject: [PATCH] Import X server from vnc-3.3.7. --- Xserver/INSTALL.PS | 982 ++ Xserver/INSTALL.TXT | 749 ++ Xserver/Imakefile | 203 + Xserver/LABEL | 128 + Xserver/Makefile | 193 + Xserver/README | 23 + Xserver/RELNOTES.PS | 1732 +++ Xserver/RELNOTES.TXT | 1301 +++ Xserver/bug-report | 64 + Xserver/config/Imakefile | 12 + Xserver/config/cf/Amoeba.cf | 430 + Xserver/config/cf/DGUX.cf | 22 + Xserver/config/cf/FreeBSD.cf | 364 + Xserver/config/cf/Imake.cf | 963 ++ Xserver/config/cf/Imake.rules | 2650 +++++ Xserver/config/cf/Imake.tmpl | 1428 +++ Xserver/config/cf/Imakefile | 142 + Xserver/config/cf/Library.tmpl | 412 + Xserver/config/cf/Mips.cf | 72 + Xserver/config/cf/Motif.rules | 709 ++ Xserver/config/cf/Motif.tmpl | 568 + Xserver/config/cf/NetBSD.cf | 377 + Xserver/config/cf/Oki.cf | 30 + Xserver/config/cf/OpenBSD.cf | 482 + Xserver/config/cf/README | 681 ++ Xserver/config/cf/Server.tmpl | 95 + Xserver/config/cf/ServerLib.tmpl | 141 + Xserver/config/cf/Threads.tmpl | 98 + Xserver/config/cf/Win32.cf | 128 + Xserver/config/cf/Win32.rules | 528 + Xserver/config/cf/WinLib.tmpl | 13 + Xserver/config/cf/X11.rules | 102 + Xserver/config/cf/X11.tmpl | 1815 +++ Xserver/config/cf/apollo.cf | 38 + Xserver/config/cf/bsd.cf | 29 + Xserver/config/cf/bsdLib.rules | 238 + Xserver/config/cf/bsdLib.tmpl | 59 + Xserver/config/cf/bsdi.cf | 151 + Xserver/config/cf/cde.rules | 226 + Xserver/config/cf/cde.tmpl | 439 + Xserver/config/cf/convex.cf | 102 + Xserver/config/cf/cray.cf | 50 + Xserver/config/cf/fujitsu.cf | 95 + Xserver/config/cf/generic.cf | 21 + Xserver/config/cf/hp.cf | 207 + Xserver/config/cf/hpLib.rules | 119 + Xserver/config/cf/hpLib.tmpl | 37 + Xserver/config/cf/ibm.cf | 168 + Xserver/config/cf/ibmLib.rules | 204 + Xserver/config/cf/ibmLib.tmpl | 76 + Xserver/config/cf/isc.cf | 214 + Xserver/config/cf/linux.cf | 883 ++ Xserver/config/cf/lnxLib.rules | 565 + Xserver/config/cf/lnxLib.tmpl | 41 + Xserver/config/cf/lnxdoc.rules | 166 + Xserver/config/cf/lnxdoc.tmpl | 101 + Xserver/config/cf/luna.cf | 117 + Xserver/config/cf/lynx.cf | 316 + Xserver/config/cf/macII.cf | 53 + Xserver/config/cf/mach.cf | 81 + Xserver/config/cf/minix.cf | 64 + Xserver/config/cf/moto.cf | 58 + Xserver/config/cf/ncr.cf | 125 + Xserver/config/cf/nec.cf | 131 + Xserver/config/cf/necLib.rules | 103 + Xserver/config/cf/necLib.tmpl | 29 + Xserver/config/cf/noop.rules | 1 + Xserver/config/cf/oldlib.rules | 109 + Xserver/config/cf/os2.cf | 252 + Xserver/config/cf/os2.rules | 537 + Xserver/config/cf/os2Lib.rules | 244 + Xserver/config/cf/os2Lib.tmpl | 119 + Xserver/config/cf/osf1.cf | 206 + Xserver/config/cf/osfLib.rules | 118 + Xserver/config/cf/osfLib.tmpl | 52 + Xserver/config/cf/pegasus.cf | 34 + Xserver/config/cf/sco.cf | 206 + Xserver/config/cf/sco5.cf | 139 + Xserver/config/cf/scoLib.rules | 43 + Xserver/config/cf/sequent.cf | 84 + Xserver/config/cf/sgi.cf | 233 + Xserver/config/cf/sgiLib.rules | 166 + Xserver/config/cf/sgiLib.tmpl | 14 + Xserver/config/cf/site.def | 165 + Xserver/config/cf/sony.cf | 103 + Xserver/config/cf/sun.cf | 385 + Xserver/config/cf/sunLib.rules | 111 + Xserver/config/cf/sunLib.tmpl | 91 + Xserver/config/cf/sv3Lib.rules | 232 + Xserver/config/cf/sv3Lib.tmpl | 77 + Xserver/config/cf/sv4Lib.rules | 137 + Xserver/config/cf/sv4Lib.tmpl | 77 + Xserver/config/cf/svr3.cf | 335 + Xserver/config/cf/svr4.cf | 214 + Xserver/config/cf/ultrix.cf | 77 + Xserver/config/cf/usl.cf | 112 + Xserver/config/cf/vnc.def | 134 + Xserver/config/cf/vnclibs.def | 24 + Xserver/config/cf/vnclibs.def.in | 24 + Xserver/config/cf/x386.cf | 149 + Xserver/config/cf/xf86.rules | 186 + Xserver/config/cf/xf86.tmpl | 65 + Xserver/config/cf/xf86site.def | 577 + Xserver/config/cf/xfree86.cf | 1228 ++ Xserver/config/imake/Imakefile | 54 + Xserver/config/imake/Makefile.ini | 73 + Xserver/config/imake/ccimake.c | 47 + Xserver/config/imake/imake.c | 1509 +++ Xserver/config/imake/imake.man | 256 + Xserver/config/imake/imakemdep.h | 916 ++ Xserver/config/imake/imakesvc.cmd | 273 + Xserver/config/makedepend/Imakefile | 92 + Xserver/config/makedepend/cpp.ed | 75 + Xserver/config/makedepend/cppsetup.c | 243 + Xserver/config/makedepend/def.h | 152 + Xserver/config/makedepend/ifparser.c | 544 + Xserver/config/makedepend/ifparser.h | 86 + Xserver/config/makedepend/include.c | 320 + Xserver/config/makedepend/main.c | 782 ++ Xserver/config/makedepend/mkdepend.man | 373 + Xserver/config/makedepend/parse.c | 647 ++ Xserver/config/makedepend/pr.c | 130 + Xserver/config/util/Imakefile | 101 + Xserver/config/util/Makefile.ini | 20 + Xserver/config/util/added.cmd | 23 + Xserver/config/util/aminstall.sh | 74 + Xserver/config/util/bsdinst.sh | 168 + Xserver/config/util/buildos2.cmd | 110 + Xserver/config/util/checktree.c | 343 + Xserver/config/util/chownxterm.c | 76 + Xserver/config/util/crayar.sh | 9 + Xserver/config/util/elistgen.hp | 202 + Xserver/config/util/elistgen.ibm | 220 + Xserver/config/util/elistgen.sun | 243 + Xserver/config/util/elistgen.usl | 219 + Xserver/config/util/gccmdep.cpp | 136 + Xserver/config/util/indir.cmd | 23 + Xserver/config/util/install.sh | 108 + Xserver/config/util/instos2.cmd | 13 + Xserver/config/util/lndir.c | 357 + Xserver/config/util/lndir.man | 129 + Xserver/config/util/makeg.man | 63 + Xserver/config/util/makeg.sh | 13 + Xserver/config/util/makestrs.c | 741 ++ Xserver/config/util/makestrs.man | 213 + Xserver/config/util/mdepend.cpp | 246 + Xserver/config/util/mergelib.cpp | 103 + Xserver/config/util/mkdirhier.c | 77 + Xserver/config/util/mkdirhier.cmd | 54 + Xserver/config/util/mkdirhier.man | 40 + Xserver/config/util/mkdirhier.sh | 67 + Xserver/config/util/mkshadow/Imakefile | 5 + Xserver/config/util/mkshadow/README | 38 + Xserver/config/util/mkshadow/mkshadow.c | 378 + Xserver/config/util/mkshadow/savedir.c | 125 + Xserver/config/util/mkshadow/wildmat.c | 167 + Xserver/config/util/os2inst.cmd | 50 + Xserver/config/util/remove.cmd | 14 + Xserver/config/util/syminst.sh | 90 + Xserver/config/util/x11mf.sh | 28 + Xserver/config/util/xmake.cmd | 5 + Xserver/config/util/xmkmf.cmd | 81 + Xserver/config/util/xmkmf.cpp | 58 + Xserver/config/util/xmkmf.man | 87 + Xserver/include/DECkeysym.h | 68 + Xserver/include/HPkeysym.h | 159 + Xserver/include/Imakefile | 57 + Xserver/include/Sunkeysym.h | 113 + Xserver/include/X.h | 693 ++ Xserver/include/XWDFile.h | 115 + Xserver/include/Xalloca.h | 137 + Xserver/include/Xatom.h | 79 + Xserver/include/Xfuncproto.h | 88 + Xserver/include/Xfuncs.h | 98 + Xserver/include/Xmd.h | 206 + Xserver/include/Xos.h | 317 + Xserver/include/Xos_r.h | 1105 ++ Xserver/include/Xosdefs.h | 128 + Xserver/include/Xpoll.h | 228 + Xserver/include/Xproto.h | 2130 ++++ Xserver/include/Xprotostr.h | 79 + Xserver/include/Xthreads.h | 292 + Xserver/include/Xw32defs.h | 74 + Xserver/include/Xwinsock.h | 52 + Xserver/include/ap_keysym.h | 51 + Xserver/include/bitmaps/1x1 | 6 + Xserver/include/bitmaps/2x2 | 6 + Xserver/include/bitmaps/Imakefile | 79 + Xserver/include/bitmaps/black | 6 + Xserver/include/bitmaps/boxes | 6 + Xserver/include/bitmaps/calculator | 19 + Xserver/include/bitmaps/cntr_ptr | 8 + Xserver/include/bitmaps/cntr_ptrmsk | 6 + Xserver/include/bitmaps/cross_weave | 6 + Xserver/include/bitmaps/dimple1 | 6 + Xserver/include/bitmaps/dimple3 | 6 + Xserver/include/bitmaps/dot | 6 + Xserver/include/bitmaps/dropbar7 | 4 + Xserver/include/bitmaps/dropbar8 | 4 + Xserver/include/bitmaps/escherknot | 473 + Xserver/include/bitmaps/flagdown | 27 + Xserver/include/bitmaps/flagup | 27 + Xserver/include/bitmaps/flipped_gray | 4 + Xserver/include/bitmaps/gray | 4 + Xserver/include/bitmaps/gray1 | 4 + Xserver/include/bitmaps/gray3 | 4 + Xserver/include/bitmaps/grid16 | 6 + Xserver/include/bitmaps/grid2 | 4 + Xserver/include/bitmaps/grid4 | 4 + Xserver/include/bitmaps/grid8 | 4 + Xserver/include/bitmaps/hlines2 | 4 + Xserver/include/bitmaps/hlines3 | 4 + Xserver/include/bitmaps/icon | 6 + Xserver/include/bitmaps/keyboard16 | 6 + Xserver/include/bitmaps/left_ptr | 8 + Xserver/include/bitmaps/left_ptrmsk | 6 + Xserver/include/bitmaps/letters | 27 + Xserver/include/bitmaps/light_gray | 4 + Xserver/include/bitmaps/mailempty | 27 + Xserver/include/bitmaps/mailemptymsk | 27 + Xserver/include/bitmaps/mailfull | 27 + Xserver/include/bitmaps/mailfullmsk | 27 + Xserver/include/bitmaps/mensetmanus | 258 + Xserver/include/bitmaps/menu10 | 5 + Xserver/include/bitmaps/menu12 | 5 + Xserver/include/bitmaps/menu16 | 6 + Xserver/include/bitmaps/menu6 | 4 + Xserver/include/bitmaps/menu8 | 4 + Xserver/include/bitmaps/noletters | 27 + Xserver/include/bitmaps/opendot | 8 + Xserver/include/bitmaps/opendotMask | 8 + Xserver/include/bitmaps/plaid | 11 + Xserver/include/bitmaps/right_ptr | 8 + Xserver/include/bitmaps/right_ptrmsk | 6 + Xserver/include/bitmaps/root_weave | 4 + Xserver/include/bitmaps/scales | 6 + Xserver/include/bitmaps/sipb | 16 + Xserver/include/bitmaps/star | 8 + Xserver/include/bitmaps/starMask | 8 + Xserver/include/bitmaps/stipple | 4 + Xserver/include/bitmaps/target | 6 + Xserver/include/bitmaps/terminal | 52 + Xserver/include/bitmaps/tie_fighter | 6 + Xserver/include/bitmaps/vlines2 | 4 + Xserver/include/bitmaps/vlines3 | 4 + Xserver/include/bitmaps/weird_size | 5 + Xserver/include/bitmaps/wide_weave | 6 + Xserver/include/bitmaps/wingdogs | 14 + Xserver/include/bitmaps/woman | 66 + Xserver/include/bitmaps/xfd_icon | 27 + Xserver/include/bitmaps/xlogo11 | 6 + Xserver/include/bitmaps/xlogo16 | 6 + Xserver/include/bitmaps/xlogo32 | 14 + Xserver/include/bitmaps/xlogo64 | 46 + Xserver/include/bitmaps/xsnow | 1112 ++ Xserver/include/extensions/Imakefile | 42 + Xserver/include/extensions/MITMisc.h | 73 + Xserver/include/extensions/Print.h | 596 + Xserver/include/extensions/Printstr.h | 732 ++ Xserver/include/extensions/XI.h | 269 + Xserver/include/extensions/XIE.h | 430 + Xserver/include/extensions/XIEproto.h | 687 ++ Xserver/include/extensions/XIEprotost.h | 1118 ++ Xserver/include/extensions/XInput.h | 1210 ++ Xserver/include/extensions/XIproto.h | 1426 +++ Xserver/include/extensions/XKB.h | 781 ++ Xserver/include/extensions/XKBgeom.h | 745 ++ Xserver/include/extensions/XKBproto.h | 1282 +++ Xserver/include/extensions/XKBsrv.h | 1285 +++ Xserver/include/extensions/XKBstr.h | 614 + Xserver/include/extensions/XLbx.h | 144 + Xserver/include/extensions/XShm.h | 170 + Xserver/include/extensions/XTest.h | 195 + Xserver/include/extensions/Xag.h | 135 + Xserver/include/extensions/Xagsrv.h | 93 + Xserver/include/extensions/Xagstr.h | 164 + Xserver/include/extensions/Xdbe.h | 154 + Xserver/include/extensions/Xdbeproto.h | 277 + Xserver/include/extensions/Xext.h | 59 + Xserver/include/extensions/bigreqstr.h | 64 + Xserver/include/extensions/dpms.h | 43 + Xserver/include/extensions/dpmsstr.h | 185 + Xserver/include/extensions/extutil.h | 222 + Xserver/include/extensions/lbxbuf.h | 45 + Xserver/include/extensions/lbxbufstr.h | 43 + Xserver/include/extensions/lbxdeltastr.h | 91 + Xserver/include/extensions/lbximage.h | 167 + Xserver/include/extensions/lbxopts.h | 133 + Xserver/include/extensions/lbxstr.h | 909 ++ Xserver/include/extensions/lbxzlib.h | 50 + Xserver/include/extensions/mitmiscstr.h | 66 + Xserver/include/extensions/multibuf.h | 351 + Xserver/include/extensions/multibufst.h | 629 ++ Xserver/include/extensions/record.h | 239 + Xserver/include/extensions/recordstr.h | 318 + Xserver/include/extensions/saver.h | 54 + Xserver/include/extensions/saverproto.h | 140 + Xserver/include/extensions/scrnsaver.h | 149 + Xserver/include/extensions/security.h | 188 + Xserver/include/extensions/securstr.h | 117 + Xserver/include/extensions/shape.h | 198 + Xserver/include/extensions/shapestr.h | 235 + Xserver/include/extensions/shmstr.h | 226 + Xserver/include/extensions/sync.h | 523 + Xserver/include/extensions/syncstr.h | 500 + Xserver/include/extensions/xcmiscstr.h | 108 + Xserver/include/extensions/xf86dga.h | 167 + Xserver/include/extensions/xf86dgastr.h | 201 + Xserver/include/extensions/xf86misc.h | 141 + Xserver/include/extensions/xf86mscstr.h | 156 + Xserver/include/extensions/xf86vmode.h | 272 + Xserver/include/extensions/xf86vmstr.h | 278 + Xserver/include/extensions/xtestext1.h | 326 + Xserver/include/extensions/xteststr.h | 121 + Xserver/include/fonts/FS.h | 136 + Xserver/include/fonts/FSproto.h | 816 ++ Xserver/include/fonts/Imakefile | 14 + Xserver/include/fonts/font.h | 189 + Xserver/include/fonts/fontstruct.h | 364 + Xserver/include/fonts/fsmasks.h | 99 + Xserver/include/keysym.h | 60 + Xserver/include/keysymdef.h | 1572 +++ Xserver/lib/Imakefile | 84 + Xserver/lib/X11/Imakefile | 989 ++ Xserver/lib/X11/XKBlib.h | 1335 +++ Xserver/lib/X11/Xcms.h | 921 ++ Xserver/lib/X11/Xlib.h | 4724 ++++++++ Xserver/lib/X11/Xlibint.h | 1254 +++ Xserver/lib/X11/Xlocale.h | 72 + Xserver/lib/X11/Xresource.h | 413 + Xserver/lib/X11/Xutil.h | 908 ++ Xserver/lib/X11/cursorfont.h | 109 + Xserver/lib/Xau/AuDispose.c | 47 + Xserver/lib/Xau/AuFileName.c | 78 + Xserver/lib/Xau/AuGetAddr.c | 127 + Xserver/lib/Xau/AuGetBest.c | 187 + Xserver/lib/Xau/AuLock.c | 118 + Xserver/lib/Xau/AuRead.c | 112 + Xserver/lib/Xau/AuUnlock.c | 61 + Xserver/lib/Xau/AuWrite.c | 75 + Xserver/lib/Xau/Autest.c | 69 + Xserver/lib/Xau/Imakefile | 38 + Xserver/lib/Xau/README | 184 + Xserver/lib/Xau/Xauth.h | 181 + Xserver/lib/Xau/k5encode.c | 184 + Xserver/lib/Xdmcp/A8Eq.c | 48 + Xserver/lib/Xdmcp/AA16.c | 49 + Xserver/lib/Xdmcp/AA32.c | 49 + Xserver/lib/Xdmcp/AA8.c | 49 + Xserver/lib/Xdmcp/Alloc.c | 63 + Xserver/lib/Xdmcp/AofA8.c | 49 + Xserver/lib/Xdmcp/CA8.c | 47 + Xserver/lib/Xdmcp/CmpKey.c | 45 + Xserver/lib/Xdmcp/DA16.c | 43 + Xserver/lib/Xdmcp/DA32.c | 43 + Xserver/lib/Xdmcp/DA8.c | 43 + Xserver/lib/Xdmcp/DAofA8.c | 47 + Xserver/lib/Xdmcp/DecKey.c | 46 + Xserver/lib/Xdmcp/Fill.c | 148 + Xserver/lib/Xdmcp/Flush.c | 112 + Xserver/lib/Xdmcp/GenKey.c | 77 + Xserver/lib/Xdmcp/Imakefile | 113 + Xserver/lib/Xdmcp/IncKey.c | 46 + Xserver/lib/Xdmcp/RA16.c | 62 + Xserver/lib/Xdmcp/RA32.c | 62 + Xserver/lib/Xdmcp/RA8.c | 62 + Xserver/lib/Xdmcp/RAofA8.c | 62 + Xserver/lib/Xdmcp/RC16.c | 50 + Xserver/lib/Xdmcp/RC32.c | 54 + Xserver/lib/Xdmcp/RC8.c | 45 + Xserver/lib/Xdmcp/RHead.c | 46 + Xserver/lib/Xdmcp/RR.c | 41 + Xserver/lib/Xdmcp/RaA16.c | 49 + Xserver/lib/Xdmcp/RaA32.c | 49 + Xserver/lib/Xdmcp/RaA8.c | 49 + Xserver/lib/Xdmcp/RaAoA8.c | 49 + Xserver/lib/Xdmcp/Unwrap.c | 90 + Xserver/lib/Xdmcp/WA16.c | 49 + Xserver/lib/Xdmcp/WA32.c | 49 + Xserver/lib/Xdmcp/WA8.c | 49 + Xserver/lib/Xdmcp/WAofA8.c | 49 + Xserver/lib/Xdmcp/WC16.c | 46 + Xserver/lib/Xdmcp/WC32.c | 50 + Xserver/lib/Xdmcp/WC8.c | 45 + Xserver/lib/Xdmcp/Whead.c | 60 + Xserver/lib/Xdmcp/Wrap.c | 128 + Xserver/lib/Xdmcp/Wrap.h | 10 + Xserver/lib/Xdmcp/Wraphelp.c | 401 + Xserver/lib/Xdmcp/Xdmcp.h | 141 + Xserver/lib/font/Imakefile | 35 + Xserver/lib/font/Speedo/Imakefile | 22 + Xserver/lib/font/Speedo/adobe-iso.h | 200 + Xserver/lib/font/Speedo/bics-iso.h | 225 + Xserver/lib/font/Speedo/do_char.c | 1022 ++ Xserver/lib/font/Speedo/do_trns.c | 513 + Xserver/lib/font/Speedo/htest.c | 361 + Xserver/lib/font/Speedo/iface.c | 645 ++ Xserver/lib/font/Speedo/keys.h | 56 + Xserver/lib/font/Speedo/nsample.c | 745 ++ Xserver/lib/font/Speedo/out_bl2d.c | 778 ++ Xserver/lib/font/Speedo/out_blk.c | 710 ++ Xserver/lib/font/Speedo/out_outl.c | 287 + Xserver/lib/font/Speedo/out_scrn.c | 1093 ++ Xserver/lib/font/Speedo/out_util.c | 337 + Xserver/lib/font/Speedo/reset.c | 127 + Xserver/lib/font/Speedo/set_spcs.c | 770 ++ Xserver/lib/font/Speedo/set_trns.c | 1329 +++ Xserver/lib/font/Speedo/spdo_prv.h | 425 + Xserver/lib/font/Speedo/speedo.h | 1081 ++ Xserver/lib/font/Speedo/spencode.c | 64 + Xserver/lib/font/Speedo/sperr.c | 136 + Xserver/lib/font/Speedo/spfile.c | 351 + Xserver/lib/font/Speedo/spfont.c | 456 + Xserver/lib/font/Speedo/spfuncs.c | 160 + Xserver/lib/font/Speedo/spglyph.c | 405 + Xserver/lib/font/Speedo/spinfo.c | 441 + Xserver/lib/font/Speedo/spint.h | 174 + Xserver/lib/font/Speedo/sptobdf.c | 680 ++ Xserver/lib/font/Speedo/useropt.h | 43 + Xserver/lib/font/Type1/Imakefile | 53 + Xserver/lib/font/Type1/arith.c | 484 + Xserver/lib/font/Type1/arith.h | 70 + Xserver/lib/font/Type1/blues.h | 93 + Xserver/lib/font/Type1/cluts.h | 35 + Xserver/lib/font/Type1/curves.c | 217 + Xserver/lib/font/Type1/curves.h | 40 + Xserver/lib/font/Type1/digit.h | 64 + Xserver/lib/font/Type1/fontfcn.c | 309 + Xserver/lib/font/Type1/fontfcn.h | 98 + Xserver/lib/font/Type1/fonts.h | 49 + Xserver/lib/font/Type1/hdigit.h | 94 + Xserver/lib/font/Type1/hints.c | 919 ++ Xserver/lib/font/Type1/hints.h | 42 + Xserver/lib/font/Type1/lines.c | 186 + Xserver/lib/font/Type1/lines.h | 37 + Xserver/lib/font/Type1/minimain.c | 50 + Xserver/lib/font/Type1/objects.c | 1119 ++ Xserver/lib/font/Type1/objects.h | 291 + Xserver/lib/font/Type1/paths.c | 1507 +++ Xserver/lib/font/Type1/paths.h | 197 + Xserver/lib/font/Type1/pictures.h | 48 + Xserver/lib/font/Type1/regions.c | 1746 +++ Xserver/lib/font/Type1/regions.h | 213 + Xserver/lib/font/Type1/scanfont.c | 1514 +++ Xserver/lib/font/Type1/spaces.c | 1000 ++ Xserver/lib/font/Type1/spaces.h | 140 + Xserver/lib/font/Type1/strokes.h | 38 + Xserver/lib/font/Type1/t1funcs.c | 697 ++ Xserver/lib/font/Type1/t1hdigit.h | 40 + Xserver/lib/font/Type1/t1imager.h | 148 + Xserver/lib/font/Type1/t1info.c | 490 + Xserver/lib/font/Type1/t1intf.h | 36 + Xserver/lib/font/Type1/t1io.c | 294 + Xserver/lib/font/Type1/t1malloc.c | 729 ++ Xserver/lib/font/Type1/t1snap.c | 79 + Xserver/lib/font/Type1/t1stdio.h | 73 + Xserver/lib/font/Type1/t1stub.c | 42 + Xserver/lib/font/Type1/t1test.c | 248 + Xserver/lib/font/Type1/token.c | 1211 ++ Xserver/lib/font/Type1/token.h | 77 + Xserver/lib/font/Type1/tokst.h | 508 + Xserver/lib/font/Type1/trig.h | 35 + Xserver/lib/font/Type1/type1.c | 1776 +++ Xserver/lib/font/Type1/util.c | 195 + Xserver/lib/font/Type1/util.h | 182 + Xserver/lib/font/bitmap/Imakefile | 28 + Xserver/lib/font/bitmap/bdfint.h | 80 + Xserver/lib/font/bitmap/bdfread.c | 943 ++ Xserver/lib/font/bitmap/bdfutils.c | 346 + Xserver/lib/font/bitmap/bitmap.c | 167 + Xserver/lib/font/bitmap/bitmapfunc.c | 228 + Xserver/lib/font/bitmap/bitmaputil.c | 229 + Xserver/lib/font/bitmap/bitscale.c | 1914 ++++ Xserver/lib/font/bitmap/fontink.c | 219 + Xserver/lib/font/bitmap/pcf.h | 93 + Xserver/lib/font/bitmap/pcfread.c | 887 ++ Xserver/lib/font/bitmap/pcfwrite.c | 487 + Xserver/lib/font/bitmap/snfread.c | 491 + Xserver/lib/font/bitmap/snfstr.h | 178 + Xserver/lib/font/fc/Imakefile | 26 + Xserver/lib/font/fc/fsconvert.c | 703 ++ Xserver/lib/font/fc/fserve.c | 2824 +++++ Xserver/lib/font/fc/fserve.h | 68 + Xserver/lib/font/fc/fservestr.h | 188 + Xserver/lib/font/fc/fsio.c | 652 ++ Xserver/lib/font/fc/fsio.h | 82 + Xserver/lib/font/fc/fslibos.h | 219 + Xserver/lib/font/fontfile/Imakefile | 38 + Xserver/lib/font/fontfile/bitsource.c | 173 + Xserver/lib/font/fontfile/bufio.c | 224 + Xserver/lib/font/fontfile/decompress.c | 408 + Xserver/lib/font/fontfile/defaults.c | 73 + Xserver/lib/font/fontfile/dirfile.c | 486 + Xserver/lib/font/fontfile/ffcheck.c | 173 + Xserver/lib/font/fontfile/fileio.c | 89 + Xserver/lib/font/fontfile/filewr.c | 65 + Xserver/lib/font/fontfile/fontdir.c | 812 ++ Xserver/lib/font/fontfile/fontfile.c | 1129 ++ Xserver/lib/font/fontfile/fontscale.c | 455 + Xserver/lib/font/fontfile/gunzip.c | 224 + Xserver/lib/font/fontfile/printerfont.c | 212 + Xserver/lib/font/fontfile/register.c | 45 + Xserver/lib/font/fontfile/renderers.c | 78 + Xserver/lib/font/include/bitmap.h | 74 + Xserver/lib/font/include/bufio.h | 72 + Xserver/lib/font/include/fntfil.h | 81 + Xserver/lib/font/include/fntfilio.h | 51 + Xserver/lib/font/include/fntfilst.h | 167 + Xserver/lib/font/include/fontmisc.h | 80 + Xserver/lib/font/include/fontshow.h | 38 + Xserver/lib/font/include/fontxlfd.h | 100 + Xserver/lib/font/util/Imakefile | 20 + Xserver/lib/font/util/atom.c | 219 + Xserver/lib/font/util/fontaccel.c | 104 + Xserver/lib/font/util/fontnames.c | 126 + Xserver/lib/font/util/fontutil.c | 419 + Xserver/lib/font/util/fontxlfd.c | 661 ++ Xserver/lib/font/util/format.c | 123 + Xserver/lib/font/util/miscutil.c | 95 + Xserver/lib/font/util/patcache.c | 226 + Xserver/lib/font/util/private.c | 71 + Xserver/lib/font/util/utilbitmap.c | 188 + Xserver/lib/xtrans/Imakefile | 8 + Xserver/lib/xtrans/Xtrans.c | 1458 +++ Xserver/lib/xtrans/Xtrans.h | 501 + Xserver/lib/xtrans/Xtransam.c | 2008 ++++ Xserver/lib/xtrans/Xtransdnet.c | 707 ++ Xserver/lib/xtrans/Xtransint.h | 511 + Xserver/lib/xtrans/Xtranslcl.c | 2666 +++++ Xserver/lib/xtrans/Xtransmnx.c | 1639 +++ Xserver/lib/xtrans/Xtransos2.c | 937 ++ Xserver/lib/xtrans/Xtranssock.c | 2012 ++++ Xserver/lib/xtrans/Xtranstli.c | 1472 +++ Xserver/lib/xtrans/Xtransutil.c | 467 + Xserver/lib/xtrans/transport.c | 92 + Xserver/programs/Imakefile | 72 + Xserver/programs/Xserver/Imakefile | 1743 +++ Xserver/programs/Xserver/Xext/Imakefile | 80 + Xserver/programs/Xserver/Xext/SecurityPolicy | 88 + Xserver/programs/Xserver/Xext/appgroup.c | 805 ++ Xserver/programs/Xserver/Xext/bigreq.c | 96 + Xserver/programs/Xserver/Xext/dpms.c | 425 + Xserver/programs/Xserver/Xext/mbuf.c | 1804 +++ Xserver/programs/Xserver/Xext/mbufbf.c | 1056 ++ Xserver/programs/Xserver/Xext/mbufpx.c | 650 ++ Xserver/programs/Xserver/Xext/mitmisc.c | 166 + Xserver/programs/Xserver/Xext/saver.c | 1324 +++ Xserver/programs/Xserver/Xext/security.c | 1992 ++++ Xserver/programs/Xserver/Xext/shape.c | 1127 ++ Xserver/programs/Xserver/Xext/shm.c | 1089 ++ Xserver/programs/Xserver/Xext/sleepuntil.c | 243 + Xserver/programs/Xserver/Xext/sync.c | 2557 +++++ Xserver/programs/Xserver/Xext/xcmisc.c | 234 + Xserver/programs/Xserver/Xext/xf86dga.c | 483 + Xserver/programs/Xserver/Xext/xf86misc.c | 632 ++ Xserver/programs/Xserver/Xext/xf86vmode.c | 1615 +++ Xserver/programs/Xserver/Xext/xprint.c | 2873 +++++ Xserver/programs/Xserver/Xext/xtest.c | 555 + Xserver/programs/Xserver/Xext/xtest1.frags | 90 + Xserver/programs/Xserver/Xext/xtest1dd.c | 1653 +++ Xserver/programs/Xserver/Xext/xtest1dd.h | 126 + Xserver/programs/Xserver/Xext/xtest1di.c | 974 ++ Xserver/programs/Xserver/Xprint/DiPrint.h | 54 + Xserver/programs/Xserver/Xserver.man | 688 ++ Xserver/programs/Xserver/Xvnc.man | 169 + Xserver/programs/Xserver/cfb/Imakefile | 252 + Xserver/programs/Xserver/cfb/cfb.h | 1507 +++ Xserver/programs/Xserver/cfb/cfb8bit.c | 468 + Xserver/programs/Xserver/cfb/cfb8bit.h | 1577 +++ Xserver/programs/Xserver/cfb/cfb8cppl.c | 221 + Xserver/programs/Xserver/cfb/cfb8line.c | 1458 +++ Xserver/programs/Xserver/cfb/cfballpriv.c | 85 + Xserver/programs/Xserver/cfb/cfbbitblt.c | 760 ++ Xserver/programs/Xserver/cfb/cfbblt.c | 698 ++ Xserver/programs/Xserver/cfb/cfbbres.c | 339 + Xserver/programs/Xserver/cfb/cfbbresd.c | 403 + Xserver/programs/Xserver/cfb/cfbbstore.c | 150 + Xserver/programs/Xserver/cfb/cfbcmap.c | 588 + Xserver/programs/Xserver/cfb/cfbfillarc.c | 369 + Xserver/programs/Xserver/cfb/cfbfillrct.c | 304 + Xserver/programs/Xserver/cfb/cfbfillsp.c | 1001 ++ Xserver/programs/Xserver/cfb/cfbgc.c | 784 ++ Xserver/programs/Xserver/cfb/cfbgetsp.c | 200 + Xserver/programs/Xserver/cfb/cfbglblt8.c | 465 + Xserver/programs/Xserver/cfb/cfbhrzvert.c | 521 + Xserver/programs/Xserver/cfb/cfbigblt8.c | 98 + Xserver/programs/Xserver/cfb/cfbimage.c | 193 + Xserver/programs/Xserver/cfb/cfbline.c | 755 ++ Xserver/programs/Xserver/cfb/cfbmap.h | 197 + Xserver/programs/Xserver/cfb/cfbmskbits.c | 1398 +++ Xserver/programs/Xserver/cfb/cfbmskbits.h | 902 ++ Xserver/programs/Xserver/cfb/cfbpixmap.c | 371 + Xserver/programs/Xserver/cfb/cfbply1rct.c | 352 + Xserver/programs/Xserver/cfb/cfbpntwin.c | 708 ++ Xserver/programs/Xserver/cfb/cfbpolypnt.c | 199 + Xserver/programs/Xserver/cfb/cfbpush8.c | 181 + Xserver/programs/Xserver/cfb/cfbrctstp8.c | 594 + Xserver/programs/Xserver/cfb/cfbrrop.c | 222 + Xserver/programs/Xserver/cfb/cfbrrop.h | 334 + Xserver/programs/Xserver/cfb/cfbscrinit.c | 195 + Xserver/programs/Xserver/cfb/cfbsetsp.c | 308 + Xserver/programs/Xserver/cfb/cfbsolid.c | 1329 +++ Xserver/programs/Xserver/cfb/cfbteblt8.c | 584 + Xserver/programs/Xserver/cfb/cfbtegblt.c | 225 + Xserver/programs/Xserver/cfb/cfbtile32.c | 506 + Xserver/programs/Xserver/cfb/cfbtileodd.c | 1220 ++ Xserver/programs/Xserver/cfb/cfbwindow.c | 335 + Xserver/programs/Xserver/cfb/cfbzerarc.c | 318 + Xserver/programs/Xserver/cfb/stip68kgnu.h | 124 + Xserver/programs/Xserver/cfb/stipmips.s | 282 + Xserver/programs/Xserver/cfb/stipple68k.s | 232 + Xserver/programs/Xserver/cfb/stipsparc.s | 281 + Xserver/programs/Xserver/cfb/stipsprc32.s | 282 + Xserver/programs/Xserver/cfb16/Imakefile | 5 + Xserver/programs/Xserver/cfb24/Imakefile | 5 + Xserver/programs/Xserver/cfb24/cfbrrop24.h | 60 + Xserver/programs/Xserver/cfb32/Imakefile | 5 + Xserver/programs/Xserver/dix/BuiltInAtoms | 329 + Xserver/programs/Xserver/dix/CHANGES | 17 + Xserver/programs/Xserver/dix/Imakefile | 91 + Xserver/programs/Xserver/dix/atom.c | 214 + Xserver/programs/Xserver/dix/buildatoms | 43 + Xserver/programs/Xserver/dix/colormap.c | 2794 +++++ Xserver/programs/Xserver/dix/cursor.c | 405 + Xserver/programs/Xserver/dix/devices.c | 1753 +++ Xserver/programs/Xserver/dix/dispatch.c | 3955 +++++++ Xserver/programs/Xserver/dix/dispatch.h | 206 + Xserver/programs/Xserver/dix/dixfonts.c | 2270 ++++ Xserver/programs/Xserver/dix/dixutils.c | 1011 ++ Xserver/programs/Xserver/dix/events.c | 3837 +++++++ Xserver/programs/Xserver/dix/extension.c | 473 + Xserver/programs/Xserver/dix/ffs.c | 39 + Xserver/programs/Xserver/dix/gc.c | 1335 +++ Xserver/programs/Xserver/dix/globals.c | 150 + Xserver/programs/Xserver/dix/glyphcurs.c | 198 + Xserver/programs/Xserver/dix/grabs.c | 493 + Xserver/programs/Xserver/dix/initatoms.c | 80 + Xserver/programs/Xserver/dix/main.c | 749 ++ Xserver/programs/Xserver/dix/pixmap.c | 150 + Xserver/programs/Xserver/dix/privates.c | 355 + Xserver/programs/Xserver/dix/property.c | 743 ++ Xserver/programs/Xserver/dix/resource.c | 871 ++ Xserver/programs/Xserver/dix/swaprep.c | 1465 +++ Xserver/programs/Xserver/dix/swapreq.c | 1176 ++ Xserver/programs/Xserver/dix/swapreq.h | 137 + Xserver/programs/Xserver/dix/tables.c | 531 + Xserver/programs/Xserver/dix/window.c | 3803 +++++++ Xserver/programs/Xserver/dix/xpstubs.c | 47 + Xserver/programs/Xserver/hw/vnc/Imakefile | 28 + Xserver/programs/Xserver/hw/vnc/README | 4 + Xserver/programs/Xserver/hw/vnc/auth.c | 193 + Xserver/programs/Xserver/hw/vnc/buildtime.c | 1 + Xserver/programs/Xserver/hw/vnc/cmap.c | 140 + Xserver/programs/Xserver/hw/vnc/corre.c | 350 + Xserver/programs/Xserver/hw/vnc/cutpaste.c | 88 + Xserver/programs/Xserver/hw/vnc/dispcur.c | 403 + Xserver/programs/Xserver/hw/vnc/dispcur.h | 23 + Xserver/programs/Xserver/hw/vnc/draw.c | 1998 ++++ Xserver/programs/Xserver/hw/vnc/hextile.c | 345 + Xserver/programs/Xserver/hw/vnc/httpd.c | 392 + Xserver/programs/Xserver/hw/vnc/init.c | 921 ++ Xserver/programs/Xserver/hw/vnc/kbdptr.c | 600 + Xserver/programs/Xserver/hw/vnc/rfb.h | 451 + Xserver/programs/Xserver/hw/vnc/rfbserver.c | 1221 ++ Xserver/programs/Xserver/hw/vnc/rre.c | 319 + Xserver/programs/Xserver/hw/vnc/sockets.c | 510 + Xserver/programs/Xserver/hw/vnc/sprite.c | 2009 ++++ Xserver/programs/Xserver/hw/vnc/sprite.h | 108 + Xserver/programs/Xserver/hw/vnc/spritest.h | 125 + Xserver/programs/Xserver/hw/vnc/stats.c | 87 + .../Xserver/hw/vnc/tableinitcmtemplate.c | 82 + .../Xserver/hw/vnc/tableinittctemplate.c | 140 + .../Xserver/hw/vnc/tabletranstemplate.c | 115 + Xserver/programs/Xserver/hw/vnc/translate.c | 449 + Xserver/programs/Xserver/hw/vnc/zrle.cc | 179 + .../Xserver/hw/xfree86/common/compiler.h | 1460 +++ .../Xserver/hw/xfree86/common/scoasm.h | 112 + Xserver/programs/Xserver/include/Imakefile | 40 + Xserver/programs/Xserver/include/XIstubs.h | 101 + Xserver/programs/Xserver/include/closestr.h | 164 + Xserver/programs/Xserver/include/closure.h | 58 + Xserver/programs/Xserver/include/colormap.h | 239 + Xserver/programs/Xserver/include/colormapst.h | 125 + Xserver/programs/Xserver/include/cursor.h | 152 + Xserver/programs/Xserver/include/cursorstr.h | 81 + Xserver/programs/Xserver/include/dix.h | 1103 ++ Xserver/programs/Xserver/include/dixevents.h | 256 + Xserver/programs/Xserver/include/dixfont.h | 444 + Xserver/programs/Xserver/include/dixfontstr.h | 95 + Xserver/programs/Xserver/include/dixgrabs.h | 79 + Xserver/programs/Xserver/include/dixstruct.h | 237 + Xserver/programs/Xserver/include/exevents.h | 275 + Xserver/programs/Xserver/include/extension.h | 81 + Xserver/programs/Xserver/include/extinit.h | 210 + Xserver/programs/Xserver/include/extnsionst.h | 194 + Xserver/programs/Xserver/include/gc.h | 232 + Xserver/programs/Xserver/include/gcstruct.h | 397 + Xserver/programs/Xserver/include/input.h | 535 + Xserver/programs/Xserver/include/inputstr.h | 317 + Xserver/programs/Xserver/include/misc.h | 280 + Xserver/programs/Xserver/include/miscstruct.h | 73 + Xserver/programs/Xserver/include/opaque.h | 74 + Xserver/programs/Xserver/include/os.h | 776 ++ Xserver/programs/Xserver/include/pixmap.h | 124 + Xserver/programs/Xserver/include/pixmapstr.h | 88 + Xserver/programs/Xserver/include/property.h | 79 + Xserver/programs/Xserver/include/propertyst.h | 76 + Xserver/programs/Xserver/include/region.h | 54 + Xserver/programs/Xserver/include/regionstr.h | 409 + Xserver/programs/Xserver/include/resource.h | 282 + Xserver/programs/Xserver/include/rgb.h | 55 + Xserver/programs/Xserver/include/screenint.h | 171 + Xserver/programs/Xserver/include/scrnintstr.h | 938 ++ Xserver/programs/Xserver/include/selection.h | 69 + Xserver/programs/Xserver/include/servermd.h | 562 + Xserver/programs/Xserver/include/site.h | 138 + Xserver/programs/Xserver/include/swaprep.h | 542 + Xserver/programs/Xserver/include/validate.h | 42 + Xserver/programs/Xserver/include/window.h | 351 + Xserver/programs/Xserver/include/windowstr.h | 228 + Xserver/programs/Xserver/mfb/Imakefile | 93 + Xserver/programs/Xserver/mfb/fastblt.h | 120 + Xserver/programs/Xserver/mfb/maskbits.c | 9865 +++++++++++++++++ Xserver/programs/Xserver/mfb/maskbits.h | 719 ++ Xserver/programs/Xserver/mfb/mergerop.h | 314 + Xserver/programs/Xserver/mfb/mfb.h | 1277 +++ Xserver/programs/Xserver/mfb/mfbbitblt.c | 478 + Xserver/programs/Xserver/mfb/mfbblt.c | 593 + Xserver/programs/Xserver/mfb/mfbbres.c | 366 + Xserver/programs/Xserver/mfb/mfbbresd.c | 205 + Xserver/programs/Xserver/mfb/mfbbstore.c | 153 + Xserver/programs/Xserver/mfb/mfbclip.c | 269 + Xserver/programs/Xserver/mfb/mfbcmap.c | 199 + Xserver/programs/Xserver/mfb/mfbfillarc.c | 329 + Xserver/programs/Xserver/mfb/mfbfillrct.c | 225 + Xserver/programs/Xserver/mfb/mfbfillsp.c | 1025 ++ Xserver/programs/Xserver/mfb/mfbfont.c | 73 + Xserver/programs/Xserver/mfb/mfbgc.c | 1086 ++ Xserver/programs/Xserver/mfb/mfbgetsp.c | 155 + Xserver/programs/Xserver/mfb/mfbhrzvert.c | 173 + Xserver/programs/Xserver/mfb/mfbimage.c | 174 + Xserver/programs/Xserver/mfb/mfbimggblt.c | 442 + Xserver/programs/Xserver/mfb/mfbline.c | 751 ++ Xserver/programs/Xserver/mfb/mfbmisc.c | 92 + Xserver/programs/Xserver/mfb/mfbpixmap.c | 291 + Xserver/programs/Xserver/mfb/mfbply1rct.c | 256 + Xserver/programs/Xserver/mfb/mfbplygblt.c | 393 + Xserver/programs/Xserver/mfb/mfbpntarea.c | 297 + Xserver/programs/Xserver/mfb/mfbpntwin.c | 124 + Xserver/programs/Xserver/mfb/mfbpolypnt.c | 141 + Xserver/programs/Xserver/mfb/mfbpushpxl.c | 279 + Xserver/programs/Xserver/mfb/mfbscrclse.c | 60 + Xserver/programs/Xserver/mfb/mfbscrinit.c | 160 + Xserver/programs/Xserver/mfb/mfbsetsp.c | 278 + Xserver/programs/Xserver/mfb/mfbtegblt.c | 420 + Xserver/programs/Xserver/mfb/mfbtile.c | 231 + Xserver/programs/Xserver/mfb/mfbwindow.c | 339 + Xserver/programs/Xserver/mfb/mfbzerarc.c | 255 + Xserver/programs/Xserver/mi/Imakefile | 74 + Xserver/programs/Xserver/mi/cbrt.c | 45 + Xserver/programs/Xserver/mi/mi.h | 762 ++ Xserver/programs/Xserver/mi/miarc.c | 3677 ++++++ Xserver/programs/Xserver/mi/mibitblt.c | 819 ++ Xserver/programs/Xserver/mi/mibstore.c | 3824 +++++++ Xserver/programs/Xserver/mi/mibstore.h | 73 + Xserver/programs/Xserver/mi/mibstorest.h | 92 + Xserver/programs/Xserver/mi/miclipn.c | 75 + Xserver/programs/Xserver/mi/micursor.c | 72 + Xserver/programs/Xserver/mi/midash.c | 311 + Xserver/programs/Xserver/mi/midispcur.c | 615 + Xserver/programs/Xserver/mi/mieq.c | 192 + Xserver/programs/Xserver/mi/miexpose.c | 829 ++ Xserver/programs/Xserver/mi/mifillarc.c | 812 ++ Xserver/programs/Xserver/mi/mifillarc.h | 225 + Xserver/programs/Xserver/mi/mifillrct.c | 140 + Xserver/programs/Xserver/mi/mifpoly.h | 109 + Xserver/programs/Xserver/mi/mifpolycon.c | 278 + Xserver/programs/Xserver/mi/migc.c | 312 + Xserver/programs/Xserver/mi/migc.h | 99 + Xserver/programs/Xserver/mi/miglblt.c | 249 + Xserver/programs/Xserver/mi/miinitext.c | 280 + Xserver/programs/Xserver/mi/miline.h | 168 + Xserver/programs/Xserver/mi/mipointer.c | 512 + Xserver/programs/Xserver/mi/mipointer.h | 189 + Xserver/programs/Xserver/mi/mipointrst.h | 63 + Xserver/programs/Xserver/mi/mipoly.c | 125 + Xserver/programs/Xserver/mi/mipoly.h | 230 + Xserver/programs/Xserver/mi/mipolycon.c | 246 + Xserver/programs/Xserver/mi/mipolygen.c | 227 + Xserver/programs/Xserver/mi/mipolypnt.c | 120 + Xserver/programs/Xserver/mi/mipolyrect.c | 188 + Xserver/programs/Xserver/mi/mipolyseg.c | 80 + Xserver/programs/Xserver/mi/mipolytext.c | 197 + Xserver/programs/Xserver/mi/mipolyutil.c | 399 + Xserver/programs/Xserver/mi/mipushpxl.c | 199 + Xserver/programs/Xserver/mi/miregion.c | 2420 ++++ Xserver/programs/Xserver/mi/miscanfill.h | 146 + Xserver/programs/Xserver/mi/miscrinit.c | 305 + Xserver/programs/Xserver/mi/mispans.c | 560 + Xserver/programs/Xserver/mi/mispans.h | 133 + Xserver/programs/Xserver/mi/misprite.c | 2069 ++++ Xserver/programs/Xserver/mi/misprite.h | 112 + Xserver/programs/Xserver/mi/mispritest.h | 111 + Xserver/programs/Xserver/mi/mistruct.h | 64 + Xserver/programs/Xserver/mi/mivalidate.h | 53 + Xserver/programs/Xserver/mi/mivaltree.c | 730 ++ Xserver/programs/Xserver/mi/miwideline.c | 2206 ++++ Xserver/programs/Xserver/mi/miwideline.h | 246 + Xserver/programs/Xserver/mi/miwindow.c | 1145 ++ Xserver/programs/Xserver/mi/mizerarc.c | 849 ++ Xserver/programs/Xserver/mi/mizerarc.h | 138 + Xserver/programs/Xserver/mi/mizerline.c | 961 ++ Xserver/programs/Xserver/os/Imakefile | 157 + Xserver/programs/Xserver/os/WaitFor.c | 788 ++ Xserver/programs/Xserver/os/access.c | 1398 +++ Xserver/programs/Xserver/os/auth.c | 411 + Xserver/programs/Xserver/os/connection.c | 1258 +++ Xserver/programs/Xserver/os/decompress.c | 388 + Xserver/programs/Xserver/os/genalloca.c | 189 + Xserver/programs/Xserver/os/hpsocket.c | 68 + Xserver/programs/Xserver/os/io.c | 1259 +++ Xserver/programs/Xserver/os/iopreader.c | 179 + Xserver/programs/Xserver/os/k5auth.c | 799 ++ Xserver/programs/Xserver/os/lbxio.c | 572 + Xserver/programs/Xserver/os/mitauth.c | 195 + Xserver/programs/Xserver/os/oscolor.c | 305 + Xserver/programs/Xserver/os/osdep.h | 224 + Xserver/programs/Xserver/os/osinit.c | 205 + Xserver/programs/Xserver/os/rpcauth.c | 206 + Xserver/programs/Xserver/os/secauth.c | 209 + Xserver/programs/Xserver/os/utils.c | 1541 +++ Xserver/programs/Xserver/os/wrapper.c | 241 + Xserver/programs/Xserver/os/xalloc.c | 724 ++ Xserver/programs/Xserver/os/xdmauth.c | 519 + Xserver/programs/Xserver/os/xdmcp.c | 1464 +++ Xserver/registry | 1629 +++ 836 files changed, 324561 insertions(+) create mode 100644 Xserver/INSTALL.PS create mode 100644 Xserver/INSTALL.TXT create mode 100644 Xserver/Imakefile create mode 100644 Xserver/LABEL create mode 100644 Xserver/Makefile create mode 100644 Xserver/README create mode 100644 Xserver/RELNOTES.PS create mode 100644 Xserver/RELNOTES.TXT create mode 100644 Xserver/bug-report create mode 100644 Xserver/config/Imakefile create mode 100644 Xserver/config/cf/Amoeba.cf create mode 100644 Xserver/config/cf/DGUX.cf create mode 100644 Xserver/config/cf/FreeBSD.cf create mode 100644 Xserver/config/cf/Imake.cf create mode 100644 Xserver/config/cf/Imake.rules create mode 100644 Xserver/config/cf/Imake.tmpl create mode 100644 Xserver/config/cf/Imakefile create mode 100644 Xserver/config/cf/Library.tmpl create mode 100644 Xserver/config/cf/Mips.cf create mode 100644 Xserver/config/cf/Motif.rules create mode 100644 Xserver/config/cf/Motif.tmpl create mode 100644 Xserver/config/cf/NetBSD.cf create mode 100644 Xserver/config/cf/Oki.cf create mode 100644 Xserver/config/cf/OpenBSD.cf create mode 100644 Xserver/config/cf/README create mode 100644 Xserver/config/cf/Server.tmpl create mode 100644 Xserver/config/cf/ServerLib.tmpl create mode 100644 Xserver/config/cf/Threads.tmpl create mode 100644 Xserver/config/cf/Win32.cf create mode 100644 Xserver/config/cf/Win32.rules create mode 100644 Xserver/config/cf/WinLib.tmpl create mode 100644 Xserver/config/cf/X11.rules create mode 100644 Xserver/config/cf/X11.tmpl create mode 100644 Xserver/config/cf/apollo.cf create mode 100644 Xserver/config/cf/bsd.cf create mode 100644 Xserver/config/cf/bsdLib.rules create mode 100644 Xserver/config/cf/bsdLib.tmpl create mode 100644 Xserver/config/cf/bsdi.cf create mode 100644 Xserver/config/cf/cde.rules create mode 100644 Xserver/config/cf/cde.tmpl create mode 100644 Xserver/config/cf/convex.cf create mode 100644 Xserver/config/cf/cray.cf create mode 100644 Xserver/config/cf/fujitsu.cf create mode 100644 Xserver/config/cf/generic.cf create mode 100644 Xserver/config/cf/hp.cf create mode 100644 Xserver/config/cf/hpLib.rules create mode 100644 Xserver/config/cf/hpLib.tmpl create mode 100644 Xserver/config/cf/ibm.cf create mode 100644 Xserver/config/cf/ibmLib.rules create mode 100644 Xserver/config/cf/ibmLib.tmpl create mode 100644 Xserver/config/cf/isc.cf create mode 100644 Xserver/config/cf/linux.cf create mode 100644 Xserver/config/cf/lnxLib.rules create mode 100644 Xserver/config/cf/lnxLib.tmpl create mode 100644 Xserver/config/cf/lnxdoc.rules create mode 100644 Xserver/config/cf/lnxdoc.tmpl create mode 100644 Xserver/config/cf/luna.cf create mode 100644 Xserver/config/cf/lynx.cf create mode 100644 Xserver/config/cf/macII.cf create mode 100644 Xserver/config/cf/mach.cf create mode 100644 Xserver/config/cf/minix.cf create mode 100644 Xserver/config/cf/moto.cf create mode 100644 Xserver/config/cf/ncr.cf create mode 100644 Xserver/config/cf/nec.cf create mode 100644 Xserver/config/cf/necLib.rules create mode 100644 Xserver/config/cf/necLib.tmpl create mode 100644 Xserver/config/cf/noop.rules create mode 100644 Xserver/config/cf/oldlib.rules create mode 100644 Xserver/config/cf/os2.cf create mode 100644 Xserver/config/cf/os2.rules create mode 100644 Xserver/config/cf/os2Lib.rules create mode 100644 Xserver/config/cf/os2Lib.tmpl create mode 100644 Xserver/config/cf/osf1.cf create mode 100644 Xserver/config/cf/osfLib.rules create mode 100644 Xserver/config/cf/osfLib.tmpl create mode 100644 Xserver/config/cf/pegasus.cf create mode 100644 Xserver/config/cf/sco.cf create mode 100644 Xserver/config/cf/sco5.cf create mode 100644 Xserver/config/cf/scoLib.rules create mode 100644 Xserver/config/cf/sequent.cf create mode 100644 Xserver/config/cf/sgi.cf create mode 100644 Xserver/config/cf/sgiLib.rules create mode 100644 Xserver/config/cf/sgiLib.tmpl create mode 100644 Xserver/config/cf/site.def create mode 100644 Xserver/config/cf/sony.cf create mode 100644 Xserver/config/cf/sun.cf create mode 100644 Xserver/config/cf/sunLib.rules create mode 100644 Xserver/config/cf/sunLib.tmpl create mode 100644 Xserver/config/cf/sv3Lib.rules create mode 100644 Xserver/config/cf/sv3Lib.tmpl create mode 100644 Xserver/config/cf/sv4Lib.rules create mode 100644 Xserver/config/cf/sv4Lib.tmpl create mode 100644 Xserver/config/cf/svr3.cf create mode 100644 Xserver/config/cf/svr4.cf create mode 100644 Xserver/config/cf/ultrix.cf create mode 100644 Xserver/config/cf/usl.cf create mode 100644 Xserver/config/cf/vnc.def create mode 100644 Xserver/config/cf/vnclibs.def create mode 100644 Xserver/config/cf/vnclibs.def.in create mode 100644 Xserver/config/cf/x386.cf create mode 100644 Xserver/config/cf/xf86.rules create mode 100644 Xserver/config/cf/xf86.tmpl create mode 100644 Xserver/config/cf/xf86site.def create mode 100644 Xserver/config/cf/xfree86.cf create mode 100644 Xserver/config/imake/Imakefile create mode 100644 Xserver/config/imake/Makefile.ini create mode 100644 Xserver/config/imake/ccimake.c create mode 100644 Xserver/config/imake/imake.c create mode 100644 Xserver/config/imake/imake.man create mode 100644 Xserver/config/imake/imakemdep.h create mode 100644 Xserver/config/imake/imakesvc.cmd create mode 100644 Xserver/config/makedepend/Imakefile create mode 100644 Xserver/config/makedepend/cpp.ed create mode 100644 Xserver/config/makedepend/cppsetup.c create mode 100644 Xserver/config/makedepend/def.h create mode 100644 Xserver/config/makedepend/ifparser.c create mode 100644 Xserver/config/makedepend/ifparser.h create mode 100644 Xserver/config/makedepend/include.c create mode 100644 Xserver/config/makedepend/main.c create mode 100644 Xserver/config/makedepend/mkdepend.man create mode 100644 Xserver/config/makedepend/parse.c create mode 100644 Xserver/config/makedepend/pr.c create mode 100644 Xserver/config/util/Imakefile create mode 100644 Xserver/config/util/Makefile.ini create mode 100644 Xserver/config/util/added.cmd create mode 100644 Xserver/config/util/aminstall.sh create mode 100755 Xserver/config/util/bsdinst.sh create mode 100644 Xserver/config/util/buildos2.cmd create mode 100644 Xserver/config/util/checktree.c create mode 100644 Xserver/config/util/chownxterm.c create mode 100755 Xserver/config/util/crayar.sh create mode 100644 Xserver/config/util/elistgen.hp create mode 100644 Xserver/config/util/elistgen.ibm create mode 100644 Xserver/config/util/elistgen.sun create mode 100644 Xserver/config/util/elistgen.usl create mode 100644 Xserver/config/util/gccmdep.cpp create mode 100644 Xserver/config/util/indir.cmd create mode 100755 Xserver/config/util/install.sh create mode 100644 Xserver/config/util/instos2.cmd create mode 100644 Xserver/config/util/lndir.c create mode 100644 Xserver/config/util/lndir.man create mode 100644 Xserver/config/util/makeg.man create mode 100755 Xserver/config/util/makeg.sh create mode 100644 Xserver/config/util/makestrs.c create mode 100644 Xserver/config/util/makestrs.man create mode 100644 Xserver/config/util/mdepend.cpp create mode 100755 Xserver/config/util/mergelib.cpp create mode 100644 Xserver/config/util/mkdirhier.c create mode 100644 Xserver/config/util/mkdirhier.cmd create mode 100644 Xserver/config/util/mkdirhier.man create mode 100755 Xserver/config/util/mkdirhier.sh create mode 100644 Xserver/config/util/mkshadow/Imakefile create mode 100644 Xserver/config/util/mkshadow/README create mode 100644 Xserver/config/util/mkshadow/mkshadow.c create mode 100644 Xserver/config/util/mkshadow/savedir.c create mode 100644 Xserver/config/util/mkshadow/wildmat.c create mode 100644 Xserver/config/util/os2inst.cmd create mode 100644 Xserver/config/util/remove.cmd create mode 100755 Xserver/config/util/syminst.sh create mode 100755 Xserver/config/util/x11mf.sh create mode 100644 Xserver/config/util/xmake.cmd create mode 100644 Xserver/config/util/xmkmf.cmd create mode 100644 Xserver/config/util/xmkmf.cpp create mode 100644 Xserver/config/util/xmkmf.man create mode 100644 Xserver/include/DECkeysym.h create mode 100644 Xserver/include/HPkeysym.h create mode 100644 Xserver/include/Imakefile create mode 100644 Xserver/include/Sunkeysym.h create mode 100644 Xserver/include/X.h create mode 100644 Xserver/include/XWDFile.h create mode 100644 Xserver/include/Xalloca.h create mode 100644 Xserver/include/Xatom.h create mode 100644 Xserver/include/Xfuncproto.h create mode 100644 Xserver/include/Xfuncs.h create mode 100644 Xserver/include/Xmd.h create mode 100644 Xserver/include/Xos.h create mode 100644 Xserver/include/Xos_r.h create mode 100644 Xserver/include/Xosdefs.h create mode 100644 Xserver/include/Xpoll.h create mode 100644 Xserver/include/Xproto.h create mode 100644 Xserver/include/Xprotostr.h create mode 100644 Xserver/include/Xthreads.h create mode 100644 Xserver/include/Xw32defs.h create mode 100644 Xserver/include/Xwinsock.h create mode 100644 Xserver/include/ap_keysym.h create mode 100644 Xserver/include/bitmaps/1x1 create mode 100644 Xserver/include/bitmaps/2x2 create mode 100644 Xserver/include/bitmaps/Imakefile create mode 100644 Xserver/include/bitmaps/black create mode 100644 Xserver/include/bitmaps/boxes create mode 100644 Xserver/include/bitmaps/calculator create mode 100644 Xserver/include/bitmaps/cntr_ptr create mode 100644 Xserver/include/bitmaps/cntr_ptrmsk create mode 100644 Xserver/include/bitmaps/cross_weave create mode 100644 Xserver/include/bitmaps/dimple1 create mode 100644 Xserver/include/bitmaps/dimple3 create mode 100644 Xserver/include/bitmaps/dot create mode 100644 Xserver/include/bitmaps/dropbar7 create mode 100644 Xserver/include/bitmaps/dropbar8 create mode 100644 Xserver/include/bitmaps/escherknot create mode 100644 Xserver/include/bitmaps/flagdown create mode 100644 Xserver/include/bitmaps/flagup create mode 100644 Xserver/include/bitmaps/flipped_gray create mode 100644 Xserver/include/bitmaps/gray create mode 100644 Xserver/include/bitmaps/gray1 create mode 100644 Xserver/include/bitmaps/gray3 create mode 100644 Xserver/include/bitmaps/grid16 create mode 100644 Xserver/include/bitmaps/grid2 create mode 100644 Xserver/include/bitmaps/grid4 create mode 100644 Xserver/include/bitmaps/grid8 create mode 100644 Xserver/include/bitmaps/hlines2 create mode 100644 Xserver/include/bitmaps/hlines3 create mode 100644 Xserver/include/bitmaps/icon create mode 100644 Xserver/include/bitmaps/keyboard16 create mode 100644 Xserver/include/bitmaps/left_ptr create mode 100644 Xserver/include/bitmaps/left_ptrmsk create mode 100644 Xserver/include/bitmaps/letters create mode 100644 Xserver/include/bitmaps/light_gray create mode 100644 Xserver/include/bitmaps/mailempty create mode 100644 Xserver/include/bitmaps/mailemptymsk create mode 100644 Xserver/include/bitmaps/mailfull create mode 100644 Xserver/include/bitmaps/mailfullmsk create mode 100644 Xserver/include/bitmaps/mensetmanus create mode 100644 Xserver/include/bitmaps/menu10 create mode 100644 Xserver/include/bitmaps/menu12 create mode 100644 Xserver/include/bitmaps/menu16 create mode 100644 Xserver/include/bitmaps/menu6 create mode 100644 Xserver/include/bitmaps/menu8 create mode 100644 Xserver/include/bitmaps/noletters create mode 100644 Xserver/include/bitmaps/opendot create mode 100644 Xserver/include/bitmaps/opendotMask create mode 100644 Xserver/include/bitmaps/plaid create mode 100644 Xserver/include/bitmaps/right_ptr create mode 100644 Xserver/include/bitmaps/right_ptrmsk create mode 100644 Xserver/include/bitmaps/root_weave create mode 100644 Xserver/include/bitmaps/scales create mode 100644 Xserver/include/bitmaps/sipb create mode 100644 Xserver/include/bitmaps/star create mode 100644 Xserver/include/bitmaps/starMask create mode 100644 Xserver/include/bitmaps/stipple create mode 100644 Xserver/include/bitmaps/target create mode 100644 Xserver/include/bitmaps/terminal create mode 100644 Xserver/include/bitmaps/tie_fighter create mode 100644 Xserver/include/bitmaps/vlines2 create mode 100644 Xserver/include/bitmaps/vlines3 create mode 100644 Xserver/include/bitmaps/weird_size create mode 100644 Xserver/include/bitmaps/wide_weave create mode 100644 Xserver/include/bitmaps/wingdogs create mode 100644 Xserver/include/bitmaps/woman create mode 100644 Xserver/include/bitmaps/xfd_icon create mode 100644 Xserver/include/bitmaps/xlogo11 create mode 100644 Xserver/include/bitmaps/xlogo16 create mode 100644 Xserver/include/bitmaps/xlogo32 create mode 100644 Xserver/include/bitmaps/xlogo64 create mode 100644 Xserver/include/bitmaps/xsnow create mode 100644 Xserver/include/extensions/Imakefile create mode 100644 Xserver/include/extensions/MITMisc.h create mode 100644 Xserver/include/extensions/Print.h create mode 100644 Xserver/include/extensions/Printstr.h create mode 100644 Xserver/include/extensions/XI.h create mode 100644 Xserver/include/extensions/XIE.h create mode 100644 Xserver/include/extensions/XIEproto.h create mode 100644 Xserver/include/extensions/XIEprotost.h create mode 100644 Xserver/include/extensions/XInput.h create mode 100644 Xserver/include/extensions/XIproto.h create mode 100644 Xserver/include/extensions/XKB.h create mode 100644 Xserver/include/extensions/XKBgeom.h create mode 100644 Xserver/include/extensions/XKBproto.h create mode 100644 Xserver/include/extensions/XKBsrv.h create mode 100644 Xserver/include/extensions/XKBstr.h create mode 100644 Xserver/include/extensions/XLbx.h create mode 100644 Xserver/include/extensions/XShm.h create mode 100644 Xserver/include/extensions/XTest.h create mode 100644 Xserver/include/extensions/Xag.h create mode 100644 Xserver/include/extensions/Xagsrv.h create mode 100644 Xserver/include/extensions/Xagstr.h create mode 100644 Xserver/include/extensions/Xdbe.h create mode 100644 Xserver/include/extensions/Xdbeproto.h create mode 100644 Xserver/include/extensions/Xext.h create mode 100644 Xserver/include/extensions/bigreqstr.h create mode 100644 Xserver/include/extensions/dpms.h create mode 100644 Xserver/include/extensions/dpmsstr.h create mode 100644 Xserver/include/extensions/extutil.h create mode 100644 Xserver/include/extensions/lbxbuf.h create mode 100644 Xserver/include/extensions/lbxbufstr.h create mode 100644 Xserver/include/extensions/lbxdeltastr.h create mode 100644 Xserver/include/extensions/lbximage.h create mode 100644 Xserver/include/extensions/lbxopts.h create mode 100644 Xserver/include/extensions/lbxstr.h create mode 100644 Xserver/include/extensions/lbxzlib.h create mode 100644 Xserver/include/extensions/mitmiscstr.h create mode 100644 Xserver/include/extensions/multibuf.h create mode 100644 Xserver/include/extensions/multibufst.h create mode 100644 Xserver/include/extensions/record.h create mode 100644 Xserver/include/extensions/recordstr.h create mode 100644 Xserver/include/extensions/saver.h create mode 100644 Xserver/include/extensions/saverproto.h create mode 100644 Xserver/include/extensions/scrnsaver.h create mode 100644 Xserver/include/extensions/security.h create mode 100644 Xserver/include/extensions/securstr.h create mode 100644 Xserver/include/extensions/shape.h create mode 100644 Xserver/include/extensions/shapestr.h create mode 100644 Xserver/include/extensions/shmstr.h create mode 100644 Xserver/include/extensions/sync.h create mode 100644 Xserver/include/extensions/syncstr.h create mode 100644 Xserver/include/extensions/xcmiscstr.h create mode 100644 Xserver/include/extensions/xf86dga.h create mode 100644 Xserver/include/extensions/xf86dgastr.h create mode 100644 Xserver/include/extensions/xf86misc.h create mode 100644 Xserver/include/extensions/xf86mscstr.h create mode 100644 Xserver/include/extensions/xf86vmode.h create mode 100644 Xserver/include/extensions/xf86vmstr.h create mode 100644 Xserver/include/extensions/xtestext1.h create mode 100644 Xserver/include/extensions/xteststr.h create mode 100644 Xserver/include/fonts/FS.h create mode 100644 Xserver/include/fonts/FSproto.h create mode 100644 Xserver/include/fonts/Imakefile create mode 100644 Xserver/include/fonts/font.h create mode 100644 Xserver/include/fonts/fontstruct.h create mode 100644 Xserver/include/fonts/fsmasks.h create mode 100644 Xserver/include/keysym.h create mode 100644 Xserver/include/keysymdef.h create mode 100644 Xserver/lib/Imakefile create mode 100644 Xserver/lib/X11/Imakefile create mode 100644 Xserver/lib/X11/XKBlib.h create mode 100644 Xserver/lib/X11/Xcms.h create mode 100644 Xserver/lib/X11/Xlib.h create mode 100644 Xserver/lib/X11/Xlibint.h create mode 100644 Xserver/lib/X11/Xlocale.h create mode 100644 Xserver/lib/X11/Xresource.h create mode 100644 Xserver/lib/X11/Xutil.h create mode 100644 Xserver/lib/X11/cursorfont.h create mode 100644 Xserver/lib/Xau/AuDispose.c create mode 100644 Xserver/lib/Xau/AuFileName.c create mode 100644 Xserver/lib/Xau/AuGetAddr.c create mode 100644 Xserver/lib/Xau/AuGetBest.c create mode 100644 Xserver/lib/Xau/AuLock.c create mode 100644 Xserver/lib/Xau/AuRead.c create mode 100644 Xserver/lib/Xau/AuUnlock.c create mode 100644 Xserver/lib/Xau/AuWrite.c create mode 100644 Xserver/lib/Xau/Autest.c create mode 100644 Xserver/lib/Xau/Imakefile create mode 100644 Xserver/lib/Xau/README create mode 100644 Xserver/lib/Xau/Xauth.h create mode 100644 Xserver/lib/Xau/k5encode.c create mode 100644 Xserver/lib/Xdmcp/A8Eq.c create mode 100644 Xserver/lib/Xdmcp/AA16.c create mode 100644 Xserver/lib/Xdmcp/AA32.c create mode 100644 Xserver/lib/Xdmcp/AA8.c create mode 100644 Xserver/lib/Xdmcp/Alloc.c create mode 100644 Xserver/lib/Xdmcp/AofA8.c create mode 100644 Xserver/lib/Xdmcp/CA8.c create mode 100644 Xserver/lib/Xdmcp/CmpKey.c create mode 100644 Xserver/lib/Xdmcp/DA16.c create mode 100644 Xserver/lib/Xdmcp/DA32.c create mode 100644 Xserver/lib/Xdmcp/DA8.c create mode 100644 Xserver/lib/Xdmcp/DAofA8.c create mode 100644 Xserver/lib/Xdmcp/DecKey.c create mode 100644 Xserver/lib/Xdmcp/Fill.c create mode 100644 Xserver/lib/Xdmcp/Flush.c create mode 100644 Xserver/lib/Xdmcp/GenKey.c create mode 100644 Xserver/lib/Xdmcp/Imakefile create mode 100644 Xserver/lib/Xdmcp/IncKey.c create mode 100644 Xserver/lib/Xdmcp/RA16.c create mode 100644 Xserver/lib/Xdmcp/RA32.c create mode 100644 Xserver/lib/Xdmcp/RA8.c create mode 100644 Xserver/lib/Xdmcp/RAofA8.c create mode 100644 Xserver/lib/Xdmcp/RC16.c create mode 100644 Xserver/lib/Xdmcp/RC32.c create mode 100644 Xserver/lib/Xdmcp/RC8.c create mode 100644 Xserver/lib/Xdmcp/RHead.c create mode 100644 Xserver/lib/Xdmcp/RR.c create mode 100644 Xserver/lib/Xdmcp/RaA16.c create mode 100644 Xserver/lib/Xdmcp/RaA32.c create mode 100644 Xserver/lib/Xdmcp/RaA8.c create mode 100644 Xserver/lib/Xdmcp/RaAoA8.c create mode 100644 Xserver/lib/Xdmcp/Unwrap.c create mode 100644 Xserver/lib/Xdmcp/WA16.c create mode 100644 Xserver/lib/Xdmcp/WA32.c create mode 100644 Xserver/lib/Xdmcp/WA8.c create mode 100644 Xserver/lib/Xdmcp/WAofA8.c create mode 100644 Xserver/lib/Xdmcp/WC16.c create mode 100644 Xserver/lib/Xdmcp/WC32.c create mode 100644 Xserver/lib/Xdmcp/WC8.c create mode 100644 Xserver/lib/Xdmcp/Whead.c create mode 100644 Xserver/lib/Xdmcp/Wrap.c create mode 100644 Xserver/lib/Xdmcp/Wrap.h create mode 100644 Xserver/lib/Xdmcp/Wraphelp.c create mode 100644 Xserver/lib/Xdmcp/Xdmcp.h create mode 100644 Xserver/lib/font/Imakefile create mode 100644 Xserver/lib/font/Speedo/Imakefile create mode 100644 Xserver/lib/font/Speedo/adobe-iso.h create mode 100644 Xserver/lib/font/Speedo/bics-iso.h create mode 100644 Xserver/lib/font/Speedo/do_char.c create mode 100644 Xserver/lib/font/Speedo/do_trns.c create mode 100644 Xserver/lib/font/Speedo/htest.c create mode 100644 Xserver/lib/font/Speedo/iface.c create mode 100644 Xserver/lib/font/Speedo/keys.h create mode 100644 Xserver/lib/font/Speedo/nsample.c create mode 100644 Xserver/lib/font/Speedo/out_bl2d.c create mode 100644 Xserver/lib/font/Speedo/out_blk.c create mode 100644 Xserver/lib/font/Speedo/out_outl.c create mode 100644 Xserver/lib/font/Speedo/out_scrn.c create mode 100644 Xserver/lib/font/Speedo/out_util.c create mode 100644 Xserver/lib/font/Speedo/reset.c create mode 100644 Xserver/lib/font/Speedo/set_spcs.c create mode 100644 Xserver/lib/font/Speedo/set_trns.c create mode 100644 Xserver/lib/font/Speedo/spdo_prv.h create mode 100644 Xserver/lib/font/Speedo/speedo.h create mode 100644 Xserver/lib/font/Speedo/spencode.c create mode 100644 Xserver/lib/font/Speedo/sperr.c create mode 100644 Xserver/lib/font/Speedo/spfile.c create mode 100644 Xserver/lib/font/Speedo/spfont.c create mode 100644 Xserver/lib/font/Speedo/spfuncs.c create mode 100644 Xserver/lib/font/Speedo/spglyph.c create mode 100644 Xserver/lib/font/Speedo/spinfo.c create mode 100644 Xserver/lib/font/Speedo/spint.h create mode 100644 Xserver/lib/font/Speedo/sptobdf.c create mode 100644 Xserver/lib/font/Speedo/useropt.h create mode 100644 Xserver/lib/font/Type1/Imakefile create mode 100644 Xserver/lib/font/Type1/arith.c create mode 100644 Xserver/lib/font/Type1/arith.h create mode 100644 Xserver/lib/font/Type1/blues.h create mode 100644 Xserver/lib/font/Type1/cluts.h create mode 100644 Xserver/lib/font/Type1/curves.c create mode 100644 Xserver/lib/font/Type1/curves.h create mode 100644 Xserver/lib/font/Type1/digit.h create mode 100644 Xserver/lib/font/Type1/fontfcn.c create mode 100644 Xserver/lib/font/Type1/fontfcn.h create mode 100644 Xserver/lib/font/Type1/fonts.h create mode 100644 Xserver/lib/font/Type1/hdigit.h create mode 100644 Xserver/lib/font/Type1/hints.c create mode 100644 Xserver/lib/font/Type1/hints.h create mode 100644 Xserver/lib/font/Type1/lines.c create mode 100644 Xserver/lib/font/Type1/lines.h create mode 100644 Xserver/lib/font/Type1/minimain.c create mode 100644 Xserver/lib/font/Type1/objects.c create mode 100644 Xserver/lib/font/Type1/objects.h create mode 100644 Xserver/lib/font/Type1/paths.c create mode 100644 Xserver/lib/font/Type1/paths.h create mode 100644 Xserver/lib/font/Type1/pictures.h create mode 100644 Xserver/lib/font/Type1/regions.c create mode 100644 Xserver/lib/font/Type1/regions.h create mode 100644 Xserver/lib/font/Type1/scanfont.c create mode 100644 Xserver/lib/font/Type1/spaces.c create mode 100644 Xserver/lib/font/Type1/spaces.h create mode 100644 Xserver/lib/font/Type1/strokes.h create mode 100644 Xserver/lib/font/Type1/t1funcs.c create mode 100644 Xserver/lib/font/Type1/t1hdigit.h create mode 100644 Xserver/lib/font/Type1/t1imager.h create mode 100644 Xserver/lib/font/Type1/t1info.c create mode 100644 Xserver/lib/font/Type1/t1intf.h create mode 100644 Xserver/lib/font/Type1/t1io.c create mode 100644 Xserver/lib/font/Type1/t1malloc.c create mode 100644 Xserver/lib/font/Type1/t1snap.c create mode 100644 Xserver/lib/font/Type1/t1stdio.h create mode 100644 Xserver/lib/font/Type1/t1stub.c create mode 100644 Xserver/lib/font/Type1/t1test.c create mode 100644 Xserver/lib/font/Type1/token.c create mode 100644 Xserver/lib/font/Type1/token.h create mode 100644 Xserver/lib/font/Type1/tokst.h create mode 100644 Xserver/lib/font/Type1/trig.h create mode 100644 Xserver/lib/font/Type1/type1.c create mode 100644 Xserver/lib/font/Type1/util.c create mode 100644 Xserver/lib/font/Type1/util.h create mode 100644 Xserver/lib/font/bitmap/Imakefile create mode 100644 Xserver/lib/font/bitmap/bdfint.h create mode 100644 Xserver/lib/font/bitmap/bdfread.c create mode 100644 Xserver/lib/font/bitmap/bdfutils.c create mode 100644 Xserver/lib/font/bitmap/bitmap.c create mode 100644 Xserver/lib/font/bitmap/bitmapfunc.c create mode 100644 Xserver/lib/font/bitmap/bitmaputil.c create mode 100644 Xserver/lib/font/bitmap/bitscale.c create mode 100644 Xserver/lib/font/bitmap/fontink.c create mode 100644 Xserver/lib/font/bitmap/pcf.h create mode 100644 Xserver/lib/font/bitmap/pcfread.c create mode 100644 Xserver/lib/font/bitmap/pcfwrite.c create mode 100644 Xserver/lib/font/bitmap/snfread.c create mode 100644 Xserver/lib/font/bitmap/snfstr.h create mode 100644 Xserver/lib/font/fc/Imakefile create mode 100644 Xserver/lib/font/fc/fsconvert.c create mode 100644 Xserver/lib/font/fc/fserve.c create mode 100644 Xserver/lib/font/fc/fserve.h create mode 100644 Xserver/lib/font/fc/fservestr.h create mode 100644 Xserver/lib/font/fc/fsio.c create mode 100644 Xserver/lib/font/fc/fsio.h create mode 100644 Xserver/lib/font/fc/fslibos.h create mode 100644 Xserver/lib/font/fontfile/Imakefile create mode 100644 Xserver/lib/font/fontfile/bitsource.c create mode 100644 Xserver/lib/font/fontfile/bufio.c create mode 100644 Xserver/lib/font/fontfile/decompress.c create mode 100644 Xserver/lib/font/fontfile/defaults.c create mode 100644 Xserver/lib/font/fontfile/dirfile.c create mode 100644 Xserver/lib/font/fontfile/ffcheck.c create mode 100644 Xserver/lib/font/fontfile/fileio.c create mode 100644 Xserver/lib/font/fontfile/filewr.c create mode 100644 Xserver/lib/font/fontfile/fontdir.c create mode 100644 Xserver/lib/font/fontfile/fontfile.c create mode 100644 Xserver/lib/font/fontfile/fontscale.c create mode 100644 Xserver/lib/font/fontfile/gunzip.c create mode 100644 Xserver/lib/font/fontfile/printerfont.c create mode 100644 Xserver/lib/font/fontfile/register.c create mode 100644 Xserver/lib/font/fontfile/renderers.c create mode 100644 Xserver/lib/font/include/bitmap.h create mode 100644 Xserver/lib/font/include/bufio.h create mode 100644 Xserver/lib/font/include/fntfil.h create mode 100644 Xserver/lib/font/include/fntfilio.h create mode 100644 Xserver/lib/font/include/fntfilst.h create mode 100644 Xserver/lib/font/include/fontmisc.h create mode 100644 Xserver/lib/font/include/fontshow.h create mode 100644 Xserver/lib/font/include/fontxlfd.h create mode 100644 Xserver/lib/font/util/Imakefile create mode 100644 Xserver/lib/font/util/atom.c create mode 100644 Xserver/lib/font/util/fontaccel.c create mode 100644 Xserver/lib/font/util/fontnames.c create mode 100644 Xserver/lib/font/util/fontutil.c create mode 100644 Xserver/lib/font/util/fontxlfd.c create mode 100644 Xserver/lib/font/util/format.c create mode 100644 Xserver/lib/font/util/miscutil.c create mode 100644 Xserver/lib/font/util/patcache.c create mode 100644 Xserver/lib/font/util/private.c create mode 100644 Xserver/lib/font/util/utilbitmap.c create mode 100644 Xserver/lib/xtrans/Imakefile create mode 100644 Xserver/lib/xtrans/Xtrans.c create mode 100644 Xserver/lib/xtrans/Xtrans.h create mode 100644 Xserver/lib/xtrans/Xtransam.c create mode 100644 Xserver/lib/xtrans/Xtransdnet.c create mode 100644 Xserver/lib/xtrans/Xtransint.h create mode 100644 Xserver/lib/xtrans/Xtranslcl.c create mode 100644 Xserver/lib/xtrans/Xtransmnx.c create mode 100644 Xserver/lib/xtrans/Xtransos2.c create mode 100644 Xserver/lib/xtrans/Xtranssock.c create mode 100644 Xserver/lib/xtrans/Xtranstli.c create mode 100644 Xserver/lib/xtrans/Xtransutil.c create mode 100644 Xserver/lib/xtrans/transport.c create mode 100644 Xserver/programs/Imakefile create mode 100644 Xserver/programs/Xserver/Imakefile create mode 100644 Xserver/programs/Xserver/Xext/Imakefile create mode 100644 Xserver/programs/Xserver/Xext/SecurityPolicy create mode 100644 Xserver/programs/Xserver/Xext/appgroup.c create mode 100644 Xserver/programs/Xserver/Xext/bigreq.c create mode 100644 Xserver/programs/Xserver/Xext/dpms.c create mode 100644 Xserver/programs/Xserver/Xext/mbuf.c create mode 100644 Xserver/programs/Xserver/Xext/mbufbf.c create mode 100644 Xserver/programs/Xserver/Xext/mbufpx.c create mode 100644 Xserver/programs/Xserver/Xext/mitmisc.c create mode 100644 Xserver/programs/Xserver/Xext/saver.c create mode 100644 Xserver/programs/Xserver/Xext/security.c create mode 100644 Xserver/programs/Xserver/Xext/shape.c create mode 100644 Xserver/programs/Xserver/Xext/shm.c create mode 100644 Xserver/programs/Xserver/Xext/sleepuntil.c create mode 100644 Xserver/programs/Xserver/Xext/sync.c create mode 100644 Xserver/programs/Xserver/Xext/xcmisc.c create mode 100644 Xserver/programs/Xserver/Xext/xf86dga.c create mode 100644 Xserver/programs/Xserver/Xext/xf86misc.c create mode 100644 Xserver/programs/Xserver/Xext/xf86vmode.c create mode 100644 Xserver/programs/Xserver/Xext/xprint.c create mode 100644 Xserver/programs/Xserver/Xext/xtest.c create mode 100644 Xserver/programs/Xserver/Xext/xtest1.frags create mode 100644 Xserver/programs/Xserver/Xext/xtest1dd.c create mode 100644 Xserver/programs/Xserver/Xext/xtest1dd.h create mode 100644 Xserver/programs/Xserver/Xext/xtest1di.c create mode 100644 Xserver/programs/Xserver/Xprint/DiPrint.h create mode 100644 Xserver/programs/Xserver/Xserver.man create mode 100644 Xserver/programs/Xserver/Xvnc.man create mode 100644 Xserver/programs/Xserver/cfb/Imakefile create mode 100644 Xserver/programs/Xserver/cfb/cfb.h create mode 100644 Xserver/programs/Xserver/cfb/cfb8bit.c create mode 100644 Xserver/programs/Xserver/cfb/cfb8bit.h create mode 100644 Xserver/programs/Xserver/cfb/cfb8cppl.c create mode 100644 Xserver/programs/Xserver/cfb/cfb8line.c create mode 100644 Xserver/programs/Xserver/cfb/cfballpriv.c create mode 100644 Xserver/programs/Xserver/cfb/cfbbitblt.c create mode 100644 Xserver/programs/Xserver/cfb/cfbblt.c create mode 100644 Xserver/programs/Xserver/cfb/cfbbres.c create mode 100644 Xserver/programs/Xserver/cfb/cfbbresd.c create mode 100644 Xserver/programs/Xserver/cfb/cfbbstore.c create mode 100644 Xserver/programs/Xserver/cfb/cfbcmap.c create mode 100644 Xserver/programs/Xserver/cfb/cfbfillarc.c create mode 100644 Xserver/programs/Xserver/cfb/cfbfillrct.c create mode 100644 Xserver/programs/Xserver/cfb/cfbfillsp.c create mode 100644 Xserver/programs/Xserver/cfb/cfbgc.c create mode 100644 Xserver/programs/Xserver/cfb/cfbgetsp.c create mode 100644 Xserver/programs/Xserver/cfb/cfbglblt8.c create mode 100644 Xserver/programs/Xserver/cfb/cfbhrzvert.c create mode 100644 Xserver/programs/Xserver/cfb/cfbigblt8.c create mode 100644 Xserver/programs/Xserver/cfb/cfbimage.c create mode 100644 Xserver/programs/Xserver/cfb/cfbline.c create mode 100644 Xserver/programs/Xserver/cfb/cfbmap.h create mode 100644 Xserver/programs/Xserver/cfb/cfbmskbits.c create mode 100644 Xserver/programs/Xserver/cfb/cfbmskbits.h create mode 100644 Xserver/programs/Xserver/cfb/cfbpixmap.c create mode 100644 Xserver/programs/Xserver/cfb/cfbply1rct.c create mode 100644 Xserver/programs/Xserver/cfb/cfbpntwin.c create mode 100644 Xserver/programs/Xserver/cfb/cfbpolypnt.c create mode 100644 Xserver/programs/Xserver/cfb/cfbpush8.c create mode 100644 Xserver/programs/Xserver/cfb/cfbrctstp8.c create mode 100644 Xserver/programs/Xserver/cfb/cfbrrop.c create mode 100644 Xserver/programs/Xserver/cfb/cfbrrop.h create mode 100644 Xserver/programs/Xserver/cfb/cfbscrinit.c create mode 100644 Xserver/programs/Xserver/cfb/cfbsetsp.c create mode 100644 Xserver/programs/Xserver/cfb/cfbsolid.c create mode 100644 Xserver/programs/Xserver/cfb/cfbteblt8.c create mode 100644 Xserver/programs/Xserver/cfb/cfbtegblt.c create mode 100644 Xserver/programs/Xserver/cfb/cfbtile32.c create mode 100644 Xserver/programs/Xserver/cfb/cfbtileodd.c create mode 100644 Xserver/programs/Xserver/cfb/cfbwindow.c create mode 100644 Xserver/programs/Xserver/cfb/cfbzerarc.c create mode 100644 Xserver/programs/Xserver/cfb/stip68kgnu.h create mode 100644 Xserver/programs/Xserver/cfb/stipmips.s create mode 100644 Xserver/programs/Xserver/cfb/stipple68k.s create mode 100644 Xserver/programs/Xserver/cfb/stipsparc.s create mode 100644 Xserver/programs/Xserver/cfb/stipsprc32.s create mode 100644 Xserver/programs/Xserver/cfb16/Imakefile create mode 100644 Xserver/programs/Xserver/cfb24/Imakefile create mode 100644 Xserver/programs/Xserver/cfb24/cfbrrop24.h create mode 100644 Xserver/programs/Xserver/cfb32/Imakefile create mode 100644 Xserver/programs/Xserver/dix/BuiltInAtoms create mode 100644 Xserver/programs/Xserver/dix/CHANGES create mode 100644 Xserver/programs/Xserver/dix/Imakefile create mode 100644 Xserver/programs/Xserver/dix/atom.c create mode 100755 Xserver/programs/Xserver/dix/buildatoms create mode 100644 Xserver/programs/Xserver/dix/colormap.c create mode 100644 Xserver/programs/Xserver/dix/cursor.c create mode 100644 Xserver/programs/Xserver/dix/devices.c create mode 100644 Xserver/programs/Xserver/dix/dispatch.c create mode 100644 Xserver/programs/Xserver/dix/dispatch.h create mode 100644 Xserver/programs/Xserver/dix/dixfonts.c create mode 100644 Xserver/programs/Xserver/dix/dixutils.c create mode 100644 Xserver/programs/Xserver/dix/events.c create mode 100644 Xserver/programs/Xserver/dix/extension.c create mode 100644 Xserver/programs/Xserver/dix/ffs.c create mode 100644 Xserver/programs/Xserver/dix/gc.c create mode 100644 Xserver/programs/Xserver/dix/globals.c create mode 100644 Xserver/programs/Xserver/dix/glyphcurs.c create mode 100644 Xserver/programs/Xserver/dix/grabs.c create mode 100644 Xserver/programs/Xserver/dix/initatoms.c create mode 100644 Xserver/programs/Xserver/dix/main.c create mode 100644 Xserver/programs/Xserver/dix/pixmap.c create mode 100644 Xserver/programs/Xserver/dix/privates.c create mode 100644 Xserver/programs/Xserver/dix/property.c create mode 100644 Xserver/programs/Xserver/dix/resource.c create mode 100644 Xserver/programs/Xserver/dix/swaprep.c create mode 100644 Xserver/programs/Xserver/dix/swapreq.c create mode 100644 Xserver/programs/Xserver/dix/swapreq.h create mode 100644 Xserver/programs/Xserver/dix/tables.c create mode 100644 Xserver/programs/Xserver/dix/window.c create mode 100644 Xserver/programs/Xserver/dix/xpstubs.c create mode 100644 Xserver/programs/Xserver/hw/vnc/Imakefile create mode 100644 Xserver/programs/Xserver/hw/vnc/README create mode 100644 Xserver/programs/Xserver/hw/vnc/auth.c create mode 100644 Xserver/programs/Xserver/hw/vnc/buildtime.c create mode 100644 Xserver/programs/Xserver/hw/vnc/cmap.c create mode 100644 Xserver/programs/Xserver/hw/vnc/corre.c create mode 100644 Xserver/programs/Xserver/hw/vnc/cutpaste.c create mode 100644 Xserver/programs/Xserver/hw/vnc/dispcur.c create mode 100644 Xserver/programs/Xserver/hw/vnc/dispcur.h create mode 100644 Xserver/programs/Xserver/hw/vnc/draw.c create mode 100644 Xserver/programs/Xserver/hw/vnc/hextile.c create mode 100644 Xserver/programs/Xserver/hw/vnc/httpd.c create mode 100644 Xserver/programs/Xserver/hw/vnc/init.c create mode 100644 Xserver/programs/Xserver/hw/vnc/kbdptr.c create mode 100644 Xserver/programs/Xserver/hw/vnc/rfb.h create mode 100644 Xserver/programs/Xserver/hw/vnc/rfbserver.c create mode 100644 Xserver/programs/Xserver/hw/vnc/rre.c create mode 100644 Xserver/programs/Xserver/hw/vnc/sockets.c create mode 100644 Xserver/programs/Xserver/hw/vnc/sprite.c create mode 100644 Xserver/programs/Xserver/hw/vnc/sprite.h create mode 100644 Xserver/programs/Xserver/hw/vnc/spritest.h create mode 100644 Xserver/programs/Xserver/hw/vnc/stats.c create mode 100644 Xserver/programs/Xserver/hw/vnc/tableinitcmtemplate.c create mode 100644 Xserver/programs/Xserver/hw/vnc/tableinittctemplate.c create mode 100644 Xserver/programs/Xserver/hw/vnc/tabletranstemplate.c create mode 100644 Xserver/programs/Xserver/hw/vnc/translate.c create mode 100644 Xserver/programs/Xserver/hw/vnc/zrle.cc create mode 100644 Xserver/programs/Xserver/hw/xfree86/common/compiler.h create mode 100644 Xserver/programs/Xserver/hw/xfree86/common/scoasm.h create mode 100644 Xserver/programs/Xserver/include/Imakefile create mode 100644 Xserver/programs/Xserver/include/XIstubs.h create mode 100644 Xserver/programs/Xserver/include/closestr.h create mode 100644 Xserver/programs/Xserver/include/closure.h create mode 100644 Xserver/programs/Xserver/include/colormap.h create mode 100644 Xserver/programs/Xserver/include/colormapst.h create mode 100644 Xserver/programs/Xserver/include/cursor.h create mode 100644 Xserver/programs/Xserver/include/cursorstr.h create mode 100644 Xserver/programs/Xserver/include/dix.h create mode 100644 Xserver/programs/Xserver/include/dixevents.h create mode 100644 Xserver/programs/Xserver/include/dixfont.h create mode 100644 Xserver/programs/Xserver/include/dixfontstr.h create mode 100644 Xserver/programs/Xserver/include/dixgrabs.h create mode 100644 Xserver/programs/Xserver/include/dixstruct.h create mode 100644 Xserver/programs/Xserver/include/exevents.h create mode 100644 Xserver/programs/Xserver/include/extension.h create mode 100644 Xserver/programs/Xserver/include/extinit.h create mode 100644 Xserver/programs/Xserver/include/extnsionst.h create mode 100644 Xserver/programs/Xserver/include/gc.h create mode 100644 Xserver/programs/Xserver/include/gcstruct.h create mode 100644 Xserver/programs/Xserver/include/input.h create mode 100644 Xserver/programs/Xserver/include/inputstr.h create mode 100644 Xserver/programs/Xserver/include/misc.h create mode 100644 Xserver/programs/Xserver/include/miscstruct.h create mode 100644 Xserver/programs/Xserver/include/opaque.h create mode 100644 Xserver/programs/Xserver/include/os.h create mode 100644 Xserver/programs/Xserver/include/pixmap.h create mode 100644 Xserver/programs/Xserver/include/pixmapstr.h create mode 100644 Xserver/programs/Xserver/include/property.h create mode 100644 Xserver/programs/Xserver/include/propertyst.h create mode 100644 Xserver/programs/Xserver/include/region.h create mode 100644 Xserver/programs/Xserver/include/regionstr.h create mode 100644 Xserver/programs/Xserver/include/resource.h create mode 100644 Xserver/programs/Xserver/include/rgb.h create mode 100644 Xserver/programs/Xserver/include/screenint.h create mode 100644 Xserver/programs/Xserver/include/scrnintstr.h create mode 100644 Xserver/programs/Xserver/include/selection.h create mode 100644 Xserver/programs/Xserver/include/servermd.h create mode 100644 Xserver/programs/Xserver/include/site.h create mode 100644 Xserver/programs/Xserver/include/swaprep.h create mode 100644 Xserver/programs/Xserver/include/validate.h create mode 100644 Xserver/programs/Xserver/include/window.h create mode 100644 Xserver/programs/Xserver/include/windowstr.h create mode 100644 Xserver/programs/Xserver/mfb/Imakefile create mode 100644 Xserver/programs/Xserver/mfb/fastblt.h create mode 100644 Xserver/programs/Xserver/mfb/maskbits.c create mode 100644 Xserver/programs/Xserver/mfb/maskbits.h create mode 100644 Xserver/programs/Xserver/mfb/mergerop.h create mode 100644 Xserver/programs/Xserver/mfb/mfb.h create mode 100644 Xserver/programs/Xserver/mfb/mfbbitblt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbblt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbbres.c create mode 100644 Xserver/programs/Xserver/mfb/mfbbresd.c create mode 100644 Xserver/programs/Xserver/mfb/mfbbstore.c create mode 100644 Xserver/programs/Xserver/mfb/mfbclip.c create mode 100644 Xserver/programs/Xserver/mfb/mfbcmap.c create mode 100644 Xserver/programs/Xserver/mfb/mfbfillarc.c create mode 100644 Xserver/programs/Xserver/mfb/mfbfillrct.c create mode 100644 Xserver/programs/Xserver/mfb/mfbfillsp.c create mode 100644 Xserver/programs/Xserver/mfb/mfbfont.c create mode 100644 Xserver/programs/Xserver/mfb/mfbgc.c create mode 100644 Xserver/programs/Xserver/mfb/mfbgetsp.c create mode 100644 Xserver/programs/Xserver/mfb/mfbhrzvert.c create mode 100644 Xserver/programs/Xserver/mfb/mfbimage.c create mode 100644 Xserver/programs/Xserver/mfb/mfbimggblt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbline.c create mode 100644 Xserver/programs/Xserver/mfb/mfbmisc.c create mode 100644 Xserver/programs/Xserver/mfb/mfbpixmap.c create mode 100644 Xserver/programs/Xserver/mfb/mfbply1rct.c create mode 100644 Xserver/programs/Xserver/mfb/mfbplygblt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbpntarea.c create mode 100644 Xserver/programs/Xserver/mfb/mfbpntwin.c create mode 100644 Xserver/programs/Xserver/mfb/mfbpolypnt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbpushpxl.c create mode 100644 Xserver/programs/Xserver/mfb/mfbscrclse.c create mode 100644 Xserver/programs/Xserver/mfb/mfbscrinit.c create mode 100644 Xserver/programs/Xserver/mfb/mfbsetsp.c create mode 100644 Xserver/programs/Xserver/mfb/mfbtegblt.c create mode 100644 Xserver/programs/Xserver/mfb/mfbtile.c create mode 100644 Xserver/programs/Xserver/mfb/mfbwindow.c create mode 100644 Xserver/programs/Xserver/mfb/mfbzerarc.c create mode 100644 Xserver/programs/Xserver/mi/Imakefile create mode 100644 Xserver/programs/Xserver/mi/cbrt.c create mode 100644 Xserver/programs/Xserver/mi/mi.h create mode 100644 Xserver/programs/Xserver/mi/miarc.c create mode 100644 Xserver/programs/Xserver/mi/mibitblt.c create mode 100644 Xserver/programs/Xserver/mi/mibstore.c create mode 100644 Xserver/programs/Xserver/mi/mibstore.h create mode 100644 Xserver/programs/Xserver/mi/mibstorest.h create mode 100644 Xserver/programs/Xserver/mi/miclipn.c create mode 100644 Xserver/programs/Xserver/mi/micursor.c create mode 100644 Xserver/programs/Xserver/mi/midash.c create mode 100644 Xserver/programs/Xserver/mi/midispcur.c create mode 100644 Xserver/programs/Xserver/mi/mieq.c create mode 100644 Xserver/programs/Xserver/mi/miexpose.c create mode 100644 Xserver/programs/Xserver/mi/mifillarc.c create mode 100644 Xserver/programs/Xserver/mi/mifillarc.h create mode 100644 Xserver/programs/Xserver/mi/mifillrct.c create mode 100644 Xserver/programs/Xserver/mi/mifpoly.h create mode 100644 Xserver/programs/Xserver/mi/mifpolycon.c create mode 100644 Xserver/programs/Xserver/mi/migc.c create mode 100644 Xserver/programs/Xserver/mi/migc.h create mode 100644 Xserver/programs/Xserver/mi/miglblt.c create mode 100644 Xserver/programs/Xserver/mi/miinitext.c create mode 100644 Xserver/programs/Xserver/mi/miline.h create mode 100644 Xserver/programs/Xserver/mi/mipointer.c create mode 100644 Xserver/programs/Xserver/mi/mipointer.h create mode 100644 Xserver/programs/Xserver/mi/mipointrst.h create mode 100644 Xserver/programs/Xserver/mi/mipoly.c create mode 100644 Xserver/programs/Xserver/mi/mipoly.h create mode 100644 Xserver/programs/Xserver/mi/mipolycon.c create mode 100644 Xserver/programs/Xserver/mi/mipolygen.c create mode 100644 Xserver/programs/Xserver/mi/mipolypnt.c create mode 100644 Xserver/programs/Xserver/mi/mipolyrect.c create mode 100644 Xserver/programs/Xserver/mi/mipolyseg.c create mode 100644 Xserver/programs/Xserver/mi/mipolytext.c create mode 100644 Xserver/programs/Xserver/mi/mipolyutil.c create mode 100644 Xserver/programs/Xserver/mi/mipushpxl.c create mode 100644 Xserver/programs/Xserver/mi/miregion.c create mode 100644 Xserver/programs/Xserver/mi/miscanfill.h create mode 100644 Xserver/programs/Xserver/mi/miscrinit.c create mode 100644 Xserver/programs/Xserver/mi/mispans.c create mode 100644 Xserver/programs/Xserver/mi/mispans.h create mode 100644 Xserver/programs/Xserver/mi/misprite.c create mode 100644 Xserver/programs/Xserver/mi/misprite.h create mode 100644 Xserver/programs/Xserver/mi/mispritest.h create mode 100644 Xserver/programs/Xserver/mi/mistruct.h create mode 100644 Xserver/programs/Xserver/mi/mivalidate.h create mode 100644 Xserver/programs/Xserver/mi/mivaltree.c create mode 100644 Xserver/programs/Xserver/mi/miwideline.c create mode 100644 Xserver/programs/Xserver/mi/miwideline.h create mode 100644 Xserver/programs/Xserver/mi/miwindow.c create mode 100644 Xserver/programs/Xserver/mi/mizerarc.c create mode 100644 Xserver/programs/Xserver/mi/mizerarc.h create mode 100644 Xserver/programs/Xserver/mi/mizerline.c create mode 100644 Xserver/programs/Xserver/os/Imakefile create mode 100644 Xserver/programs/Xserver/os/WaitFor.c create mode 100644 Xserver/programs/Xserver/os/access.c create mode 100644 Xserver/programs/Xserver/os/auth.c create mode 100644 Xserver/programs/Xserver/os/connection.c create mode 100644 Xserver/programs/Xserver/os/decompress.c create mode 100644 Xserver/programs/Xserver/os/genalloca.c create mode 100644 Xserver/programs/Xserver/os/hpsocket.c create mode 100644 Xserver/programs/Xserver/os/io.c create mode 100644 Xserver/programs/Xserver/os/iopreader.c create mode 100644 Xserver/programs/Xserver/os/k5auth.c create mode 100644 Xserver/programs/Xserver/os/lbxio.c create mode 100644 Xserver/programs/Xserver/os/mitauth.c create mode 100644 Xserver/programs/Xserver/os/oscolor.c create mode 100644 Xserver/programs/Xserver/os/osdep.h create mode 100644 Xserver/programs/Xserver/os/osinit.c create mode 100644 Xserver/programs/Xserver/os/rpcauth.c create mode 100644 Xserver/programs/Xserver/os/secauth.c create mode 100644 Xserver/programs/Xserver/os/utils.c create mode 100644 Xserver/programs/Xserver/os/wrapper.c create mode 100644 Xserver/programs/Xserver/os/xalloc.c create mode 100644 Xserver/programs/Xserver/os/xdmauth.c create mode 100644 Xserver/programs/Xserver/os/xdmcp.c create mode 100644 Xserver/registry diff --git a/Xserver/INSTALL.PS b/Xserver/INSTALL.PS new file mode 100644 index 0000000..122e934 --- /dev/null +++ b/Xserver/INSTALL.PS @@ -0,0 +1,982 @@ +%!PS-Adobe-3.0 +%%Creator: groff version 1.09 +%%CreationDate: Sun Dec 22 20:42:59 1996 +%%DocumentNeededResources: font Times-Bold +%%+ font Times-Italic +%%+ font Times-Roman +%%DocumentSuppliedResources: procset grops 1.09 0 +%%Pages: 13 +%%PageOrder: Ascend +%%Orientation: Portrait +%%EndComments +%%BeginProlog +%%BeginResource: procset grops 1.09 0 +/setpacking where{ +pop +currentpacking +true setpacking +}if +/grops 120 dict dup begin +/SC 32 def +/A/show load def +/B{0 SC 3 -1 roll widthshow}bind def +/C{0 exch ashow}bind def +/D{0 exch 0 SC 5 2 roll awidthshow}bind def +/E{0 rmoveto show}bind def +/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def +/G{0 rmoveto 0 exch ashow}bind def +/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/I{0 exch rmoveto show}bind def +/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def +/K{0 exch rmoveto 0 exch ashow}bind def +/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/M{rmoveto show}bind def +/N{rmoveto 0 SC 3 -1 roll widthshow}bind def +/O{rmoveto 0 exch ashow}bind def +/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/Q{moveto show}bind def +/R{moveto 0 SC 3 -1 roll widthshow}bind def +/S{moveto 0 exch ashow}bind def +/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/SF{ +findfont exch +[exch dup 0 exch 0 exch neg 0 0]makefont +dup setfont +[exch/setfont cvx]cvx bind def +}bind def +/MF{ +findfont +[5 2 roll +0 3 1 roll +neg 0 0]makefont +dup setfont +[exch/setfont cvx]cvx bind def +}bind def +/level0 0 def +/RES 0 def +/PL 0 def +/LS 0 def +/PLG{ +gsave newpath clippath pathbbox grestore +exch pop add exch pop +}bind def +/BP{ +/level0 save def +1 setlinecap +1 setlinejoin +72 RES div dup scale +LS{ +90 rotate +}{ +0 PL translate +}ifelse +1 -1 scale +}bind def +/EP{ +level0 restore +showpage +}bind def +/DA{ +newpath arcn stroke +}bind def +/SN{ +transform +.25 sub exch .25 sub exch +round .25 add exch round .25 add exch +itransform +}bind def +/DL{ +SN +moveto +SN +lineto stroke +}bind def +/DC{ +newpath 0 360 arc closepath +}bind def +/TM matrix def +/DE{ +TM currentmatrix pop +translate scale newpath 0 0 .5 0 360 arc closepath +TM setmatrix +}bind def +/RC/rcurveto load def +/RL/rlineto load def +/ST/stroke load def +/MT/moveto load def +/CL/closepath load def +/FL{ +currentgray exch setgray fill setgray +}bind def +/BL/fill load def +/LW/setlinewidth load def +/RE{ +findfont +dup maxlength 1 index/FontName known not{1 add}if dict begin +{ +1 index/FID ne{def}{ pop pop}ifelse +}forall +/Encoding exch def +dup/FontName exch def +currentdict end definefont pop +}bind def +/DEFS 0 def +/EBEGIN{ +moveto +DEFS begin +}bind def +/EEND/end load def +/CNT 0 def +/level1 0 def +/PBEGIN{ +/level1 save def +translate +div 3 1 roll div exch scale +neg exch neg exch translate +0 setgray +0 setlinecap +1 setlinewidth +0 setlinejoin +10 setmiterlimit +[] 0 setdash +/setstrokeadjust where{ +pop +false setstrokeadjust +}if +/setoverprint where{ +pop +false setoverprint +}if +newpath +/CNT countdictstack def +userdict begin +/showpage{} def +}bind def +/PEND{ +clear +countdictstack CNT sub{end}repeat +level1 restore +}bind def +end def +/setpacking where{ +pop +setpacking +}if +%%EndResource +%%IncludeResource: font Times-Bold +%%IncludeResource: font Times-Italic +%%IncludeResource: font Times-Roman +grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 +def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron +/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent +/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen +/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon +/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O +/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex +/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y +/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft +/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl +/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut +/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash +/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen +/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft +/logicalnot/minus/registered/macron/degree/plusminus/twosuperior +/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior +/ordmasculine/guilsinglright/onequarter/onehalf/threequarters +/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE +/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex +/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis +/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn +/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla +/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis +/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash +/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def +/Times-Roman@0 ENC0/Times-Roman RE/Times-Italic@0 ENC0/Times-Italic RE +/Times-Bold@0 ENC0/Times-Bold RE +%%EndProlog +%%Page: title 1 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 15/Times-Bold@0 SF(Building and Installing the X W)159.51 123 Q +(indo)-.27 E 3.75(wS)-.15 G(ystem)-3.75 E/F1 11/Times-Italic@0 SF +(Stephen Gildea)272.241 219 Q/F2 11/Times-Roman@0 SF 2.75(XC)274.677 249 +S(onsortium)-2.75 E(March 5, 1996)273.77 333 Q(Updated F)251.704 357 Q +(or Release 6.3)-.165 E EP +%%Page: copyr 2 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF(Cop)72 192 Q +(yright \251 1995, 1996 X Consortium)-.11 E/F1 9/Times-Roman@0 SF +(Permission is hereby granted, free of char)72 206.6 Q(ge, to an)-.162 E +2.25(yp)-.135 G(erson obtaining a cop)-2.25 E 2.25(yo)-.09 G 2.25(ft) +-2.25 G(his softw)-2.25 E(are and associated documentation \214les)-.09 +E(\(the `)72 217.6 Q(`Softw)-.75 E(are')-.09 E +('\), to deal in the Softw)-.75 E(are without restriction, including wi\ +thout limitation the rights to use, cop)-.09 E 1.17 -.585(y, m)-.09 H +(odify).585 E 2.25(,m)-.585 G(er)-2.25 E(ge,)-.162 E(publish, distrib)72 +228.6 Q(ute, sublicense, and/or sell copies of the Softw)-.18 E +(are, and to permit persons to whom the Softw)-.09 E +(are is furnished to do)-.09 E(so, subject to the follo)72 239.6 Q +(wing conditions:)-.225 E(The abo)72 254.2 Q .27 -.135(ve c)-.135 H(op) +.135 E(yright notice and this permission notice shall be included in al\ +l copies or substantial portions of the Softw)-.09 E(are.)-.09 E +(THE SOFTW)72 268.8 Q(ARE IS PR)-1.08 E -.45(OV)-.36 G(IDED `).45 E -.72 +(`A)-.75 G 2.25(SI).72 G(S')-2.25 E(', WITHOUT W)-.75 E +(ARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUD-)-1.08 E(ING B)72 279.8 +Q(UT NO)-.09 E 2.25(TL)-.36 G(IMITED T)-2.25 E 2.25(OT)-.162 G(HE W) +-2.25 E(ARRANTIES OF MERCHANT)-1.08 E(ABILITY)-.837 E 2.25(,F)-1.161 G +(ITNESS FOR A P)-2.25 E(AR)-.828 E(TICULAR PURPOSE)-.54 E +(AND NONINFRINGEMENT)72 290.8 Q 4.5(.I)-.666 G 2.25(NN)-4.5 G 2.25(OE) +-2.25 G(VENT SHALL THE X CONSOR)-2.25 E(TIUM BE LIABLE FOR ANY CLAIM, D) +-.54 E(AMA)-.36 E(GES)-.36 E(OR O)72 301.8 Q(THER LIABILITY)-.36 E 2.25 +(,W)-1.161 G(HETHER IN AN A)-2.25 E(CTION OF CONTRA)-.36 E(CT)-.36 E +2.25(,T)-.666 G(OR)-2.412 E 2.25(TO)-.54 G 2.25(RO)-2.25 G(THER)-2.61 E +(WISE, ARISING FR)-.495 E(OM, OUT OF)-.36 E +(OR IN CONNECTION WITH THE SOFTW)72 312.8 Q(ARE OR THE USE OR O)-1.08 E +(THER DEALINGS IN THE SOFTW)-.36 E(ARE.)-1.08 E(Except as contained in \ +this notice, the name of the X Consortium shall not be used in adv)72 +327.4 Q(ertising or otherwise to promote the)-.135 E +(sale, use or other dealings in this Softw)72 338.4 Q +(are without prior written authorization from the X Consortium.)-.09 E +/F2 9/Times-Italic@0 SF 2.25(XW)72 353 S(indow System)-2.745 E F1 +(is a trademark of X Consortium, Inc.)2.25 E EP +%%Page: i 3 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 13/Times-Bold@0 SF -1.196(Ta)257.126 85 S(ble of Contents)1.196 E/F1 +11/Times-Roman@0 SF(1. Easy Build Instructions)72 127.6 Q -2.75 11 +(........................ 1)7.221 H(2. Building X)72 144.2 Q -2.75 11 +(............................ 1)6.297 H(2.1. Preparing the Site)72 160.8 +Q -2.75 11(......................... 1)9.674 H +(2.2. Unpacking the Distrib)72 177.4 Q 6.836(ution .)-.22 F -2.75 11 +(..................... 2)11 H(2.2.1. Unpacking a Compressed FTP Distrib) +72 194 Q 10.807(ution .)-.22 F -2.75 11(............... 2)11 H +(2.2.2. Unpacking a gzipped FTP Distrib)72 210.6 Q 2.865(ution .)-.22 F +-2.75 11(................. 2)11 H +(2.2.3. Unpacking a Split Compressed FTP Distrib)72 227.2 Q 1.017 +(ution .)-.22 F -2.75 11(.............. 2)11 H(2.2.4. Unpacking the T)72 +243.8 Q(ape Distrib)-.88 E 2.227(ution .)-.22 F -2.75 11 +(................... 3)11 H(2.2.5. Using the CD-R)72 260.4 Q 2.469(OM .) +-.44 F -2.75 11(....................... 3)11 H(2.3. Apply P)72 277 Q +8.31(atches .)-.165 F -2.75 11(......................... 3)11 H +(2.4. Symbolic Link T)72 293.6 Q 7.001(rees .)-.385 F -2.75 11 +(....................... 3)11 H(2.5. Con\214guration P)72 310.2 Q .676 +(arameters .)-.165 F -2.75 11(...................... 3)11 H +(2.6. System Build Notes)72 326.8 Q -2.75 11(........................ 5) +14.239 H(2.6.1. gcc)72 343.4 Q -2.75 11(............................. 5) +9.982 H(2.6.2. Other GNU tools)72 360 Q -2.75 11 +(......................... 5)4.482 H(2.6.3. SparcW)72 376.6 Q(orks 2.0) +-.88 E -2.75 11(......................... 5)10.257 H +(2.6.4. CenterLine C under Solaris 2)72 393.2 Q -2.75 11 +(..................... 5)6.319 H(2.6.5. IBM AIX 4.1.4)72 409.8 Q -2.75 +11(......................... 6)12.424 H(2.6.6. SunOS 4)72 426.4 Q -2.75 +11(........................... 6)13.326 H(2.6.7. Microsoft W)72 443 Q +(indo)-.44 E(ws NT)-.275 E -2.75 11(....................... 6)2.755 H +(2.6.8. Omron Luna)72 459.6 Q -2.75 11(.......................... 6) +9.982 H(2.7. The Build)72 476.2 Q -2.75 11 +(............................ 7)2.942 H(2.8. Installing X)72 492.8 Q +-2.75 11(........................... 7)8.75 H +(2.8.1. System Installation Notes)72 509.4 Q -2.75 11 +(...................... 7)8.442 H(2.8.1.1. The X Serv)72 526 Q +(er on AIX 4)-.165 E -2.75 11(...................... 7)9.861 H +(2.9. Shared Libraries)72 542.6 Q -2.75 11(......................... 8) +15.493 H(2.10. Setting Up xterm)72 559.2 Q -2.75 11 +(......................... 8)7.221 H(2.11. Starting Serv)72 575.8 Q +(ers at System Boot)-.165 E -2.75 11(.................... 8)11.357 H +(2.11.1. On BSD-based systems using /etc/rc)72 592.4 Q -2.75 11 +(.................. 8)10.29 H(2.11.2. On SystemV)72 609 Q +(-based systems)-1.1 E -2.75 11(..................... 9)8.024 H +(2.12. Using OPEN LOOK applications)72 625.6 Q -2.75 11 +(.................... 9)4.79 H(2.13. Reb)72 642.2 Q(uilding after P)-.22 +E 13.733(atches .)-.165 F -8.25 11(..................... 1)11 H(0)-11 E +(2.14. F)72 658.8 Q(ormatting the Documentation)-.165 E -8.25 11 +(.................... 1)16.252 H(0)-11 E(i)304.471 769 Q EP +%%Page: blank 4 +showpage +%%Page: 1 5 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Bold@0 SF 2.75(1. Easy)72 85 R(Build Instructions)2.75 E/F1 +11/Times-Roman@0 SF +(This quick summary is no substitute for reading the full b)72 101.6 Q +(uild instructions later in this document.)-.22 E(Edit)72 118.2 Q F0 +(xc/con\214g/cf/site.def)2.75 E F1(for local preferences.)2.75 E +(If you w)5.5 E(ant to b)-.11 E(uild with)-.22 E/F2 11/Times-Italic@0 SF +(gcc)2.75 E F1(uncomment the)2.75 E F0(HasGcc2)2.75 E F1 2.75(line. If) +72 131.2 R(you w)2.75 E(ant to install some)-.11 E(where other than) +-.275 E F0(/usr/X11R6.3)2.75 E F1 2.75(,c)C(hange)-2.75 E F0(Pr)2.75 E +(ojectRoot)-.198 E F1 5.5(.\()C(Do)-5.5 E F2(not)2.75 E F1(use)2.75 E F0 +(DESTDIR)72 144.2 Q F1(.\))A(If an)72 160.8 Q 2.75<798c>-.165 G -.165 +(xe)-2.75 G 2.75(sh).165 G -2.475 -.22(av e)-2.75 H +(been released by the X Consortium, stop here and follo)2.97 E 2.75(wt) +-.275 G(he instructions at the top of)-2.75 E(each patch, b)72 173.8 Q +(ut don')-.22 E 2.75(td)-.198 G 2.75(oa)-2.75 G .33 -.165(ny o)-2.75 H +2.75(ft).165 G(he)-2.75 E F2(mak)2.75 E(e)-.11 E F1 +(commands suggested in the patches.)2.75 E(Then continue here.)5.5 E +(Check the appropriate v)72 190.4 Q(endor)-.165 E(-speci\214c)-.22 E F0 +(.cf)2.75 E F1(\214le in)2.75 E F0(xc/con\214g/cf/)2.75 E F1(to mak)2.75 +E 2.75(es)-.11 G(ure that)-2.75 E F0(OSMajorV)2.75 E(ersion)-1.1 E F1 +(and)2.75 E F0(OSMinorV)72 203.4 Q(ersion)-1.1 E F1 +(are set correctly for your system.)2.75 E(Ov)5.5 E(erride them in)-.165 +E F0(site.def)2.75 E F1(if necessary)2.75 E(.)-.715 E(See if there is a) +72 220 Q F0(BootstrapCFlags)2.75 E F1 +(mentioned in the comments in the v)2.75 E(endor)-.165 E(-speci\214c) +-.22 E F0(.cf)2.75 E F1 2.75(\214le. If)2.75 F(there isn')2.75 E(t)-.198 +E(one,)72 233 Q F2(cd)2.75 E F1(to the)2.75 E F0(xc)2.75 E F1 +(directory and type:)2.75 E 2.75(%m)108 252 S(ak)-2.75 E 2.75(eW)-.11 G +(orld >& w)-3.63 E(orld.log)-.11 E(If there is a)72 274.6 Q F0 +(BootstrapCFlags)2.75 E F1 2.75(,t)C(ak)-2.75 E 2.75(ei)-.11 G(ts v) +-2.75 E(alue and type:)-.275 E 2.75(%m)108 293.6 S(ak)-2.75 E 2.75(eW) +-.11 G(orld BOO)-3.63 E(TSTRAPCFLA)-.44 E(GS=")-.44 E F2(value)A F1 2.75 +(">)C 2.75(&w)-2.75 G(orld.log)-2.86 E(Do not call the output \214le `) +72 316.2 Q(`mak)-.916 E(e.log')-.11 E 2.75('w)-.916 G(hen doing `)-2.75 +E(`mak)-.916 E 2.75(eW)-.11 G(orld')-3.63 E 2.75('. After)-.916 F 2.75 +(as)2.75 G(uccessful b)-2.75 E(uild, you can)-.22 E(install with:)72 +329.2 Q 2.75(%m)108 348.2 S(ak)-2.75 E 2.75(ei)-.11 G +(nstall >& install.log)-2.75 E -1.21(Yo)72 370.8 S 2.75(uc)1.21 G +(an install manual pages with:)-2.75 E 2.75(%m)108 389.8 S(ak)-2.75 E +2.75(ei)-.11 G(nstall.man >& man.log)-2.75 E(While the system is b)72 +412.4 Q(uilding \(or if things f)-.22 E +(ail\), read the rest of these installation instructions.)-.11 E F0 2.75 +(2. Building)72 464.4 R(X)2.75 E F1(This document gi)72 494 Q -.165(ve) +-.275 G 2.75(sd).165 G(etailed instructions for b)-2.75 E +(uilding Release 6: getting it of)-.22 E 2.75(ft)-.275 G(he distrib) +-2.75 E(ution medium,)-.22 E +(con\214guring, compiling, installing, running, and updating.)72 507 Q +(Release Notes are in)72 523.6 Q F0(xc/RELNO)2.75 E(TES.*)-.44 E F1(\(v) +2.75 E(arious formats\) in the distrib)-.275 E(ution.)-.22 E +(More recent information about ne)72 540.2 Q(wly-disco)-.275 E -.165(ve) +-.165 G(red problems may be found in the).165 E F2 -1.947 -.605(Fr e) +2.75 H(quently Ask).605 E(ed Ques-)-.11 E(tions)72 553.2 Q F1 +(posting appearing monthly on the comp.windo)2.75 E(ws.x ne)-.275 E +(wsgroup and xpert mailing list.)-.275 E(It is also)5.5 E -.22(av)72 +566.2 S(ailable via anon)-.055 E(ymous FTP on)-.165 E F0(ftp.x.or)2.75 E +(g)-.11 E F1(in the \214le)2.75 E F0(contrib/faqs/F)2.75 E -1.98 -.495 +(AQ .)-.99 H(Z).495 E F1 2.75(,o)C 2.75(ro)-2.75 G 2.75(ny)-2.75 G +(our local X mirror site.)-2.75 E F0 2.75(2.1. Pr)72 605.2 R +(eparing the Site)-.198 E F1(If you are unpacking tar \214les, you will\ + need about 130 Mb to hold the)72 634.8 Q F0(xc/)2.75 E F1 2.75(part. T) +2.75 F 2.75(oi)-.88 G(nstall requires 30-50)-2.75 E(Mb assuming you ha) +72 647.8 Q .33 -.165(ve s)-.22 H(hared libraries \(80-100 Mb without\).) +.165 E -1.21(Yo)5.5 G 2.75(uw)1.21 G(ill need an equi)-2.75 E -.275(va) +-.275 G(lent amount of).275 E -.165(ex)72 660.8 S(tra space to b).165 E +(uild, since you also need room for all the object \214les.)-.22 E +(Distrib)72 677.4 Q(uted as tar \214les, Release 6.3 core is di)-.22 E +(vided into parts as follo)-.275 E(ws:)-.275 E(1)303.25 769 Q EP +%%Page: 2 6 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation V)-2.75 E(ersion 11, Release 6.3 Snapshot)-1.221 E +71.348(xc-1.tar contains)108 85 R -2.365 -.275(ev e)2.75 H +(rything in xc/ that isn').275 E 2.75(ti)-.198 G 2.75(nt)-2.75 G +(he other tar \214les)-2.75 E 71.348(xc-2.tar contains)108 98 R +(xc/fonts, xc/doc/specs, xc/util)2.75 E 71.348(xc-3.tar contains)108 111 +R(xc/doc/hardcop)2.75 E(y)-.11 E(If you de\214ne BuildF)72 133.6 Q +(onts to NO, you only need to unpack xc-1.tar to b)-.165 E 2.75 +(uild. If)-.22 F(you b)2.75 E(uild fonts, then you)-.22 E +(will also need xc-2.tar to b)72 146.6 Q(uild.)-.22 E/F1 11/Times-Bold@0 +SF 2.75(2.2. Unpacking)72 185.6 R(the Distrib)2.75 E(ution)-.22 E F0 +(The distrib)72 215.2 Q(ution normally comes as multiple tar \214les, e\ +ither on tape or across a netw)-.22 E(ork, or as a CD-R)-.11 E(OM.)-.44 +E F1 2.75(2.2.1. Unpacking)72 254.2 R 2.75(aC)2.75 G(ompr)-2.75 E +(essed FTP Distrib)-.198 E(ution)-.22 E F0(If you ha)72 283.8 Q .33 +-.165(ve o)-.22 H(btained compressed tar \214les o).165 E -.165(ve)-.165 +G 2.75(rt).165 G(he netw)-2.75 E +(ork, create a directory to hold the sources and)-.11 E/F2 11 +/Times-Italic@0 SF(cd)2.75 E F0(into it:)72 296.8 Q(mkdir)108 315.8 Q F2 +(sour)2.75 E(cedir)-.407 E F0(cd)108 328.8 Q F2(sour)2.75 E(cedir)-.407 +E F0(Then for each tar \214le)72 347.8 Q F1(xc\255*.tar)2.75 E(.Z)-1.1 E +F0 2.75(,e)C -.165(xe)-2.915 G(cute this:).165 E(zcat)108 366.8 Q F2 +(ftp-dir)5.5 E F0(/xc\255)A F2(N)A F0(.tar)A(.Z | tar xf)-.605 E5.5 +E F1 2.75(2.2.2. Unpacking)72 411.8 R 2.75(ag)2.75 G(zipped FTP Distrib) +-2.75 E(ution)-.22 E F0(If you ha)72 441.4 Q .33 -.165(ve o)-.22 H +(btained gzipped tar \214les o).165 E -.165(ve)-.165 G 2.75(rt).165 G +(he netw)-2.75 E(ork, create a directory to hold the sources and)-.11 E +F2(cd)2.75 E F0(into)2.75 E(it:)72 454.4 Q(mkdir)108 473.4 Q F2(sour) +2.75 E(cedir)-.407 E F0(cd)108 486.4 Q F2(sour)2.75 E(cedir)-.407 E F0 +(Then for each tar \214le)72 505.4 Q F1(xc\255*.tar)2.75 E(.gz)-1.1 E F0 +2.75(,e)C -.165(xe)-2.915 G(cute this:).165 E 2.75(gunzip \255c)108 +524.4 R F2(ftp-dir)5.5 E F0(/xc\255)A F2(N)A F0(.tar)A(.gz | tar xf) +-.605 E5.5 E F1 2.75(2.2.3. Unpacking)72 569.4 R 2.75(aS)2.75 G +(plit Compr)-2.75 E(essed FTP Distrib)-.198 E(ution)-.22 E F0(If you ha) +72 599 Q .33 -.165(ve o)-.22 H +(btained compressed and split tar \214les o).165 E -.165(ve)-.165 G 2.75 +(rt).165 G(he netw)-2.75 E(ork, create a directory to hold the)-.11 E +(sources:)72 612 Q(mkdir)108 631 Q F2(sour)2.75 E(cedir)-.407 E F0 +(Then for each directory)72 650 Q F1(xc\255*)2.75 E F0(:)A(cd)108 669 Q +F2(ftp-dir)2.75 E F0(/xc\255)A F2(N)A F0(cat xc\255)108 682 Q F2(N)A F0 +(.?? | uncompress | \(cd)A F2(sour)2.75 E(cedir)-.407 E F0 2.75(;t)1.833 +G(ar xf)-2.75 E 1.8335.5 G(2)303.25 769 Q EP +%%Page: 3 7 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3 Snapshot) +-3.971 E 2.75(XW)175.4 G(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation)-2.75 E/F1 11/Times-Bold@0 SF 2.75(2.2.4. Unpacking) +72 85 R(the T)2.75 E(ape Distrib)-1.012 E(ution)-.22 E F0(If you ha)72 +114.6 Q .33 -.165(ve o)-.22 H +(btained a tape, create a directory to hold the sources and untar e).165 +E -.165(ve)-.275 G(rything into that directory:).165 E(mkdir)108 133.6 Q +/F2 11/Times-Italic@0 SF(sour)2.75 E(cedir)-.407 E F0(cd)108 146.6 Q F2 +(sour)2.75 E(cedir)-.407 E F0(tar xf)108 159.6 Q F2(tape-de)2.75 E(vice) +-.165 E F1 2.75(2.2.5. Using)72 204.6 R(the CD-R)2.75 E(OM)-.33 E F0 +(If you ha)72 234.2 Q .33 -.165(ve o)-.22 H(btained a CD-R).165 E +(OM, you don')-.44 E 2.75(th)-.198 G -2.475 -.22(av e)-2.75 H(to do an) +2.97 E(ything to unpack it.)-.165 E(Ho)5.5 E(we)-.275 E -.165(ve)-.275 G +.88 -.44(r, y).165 H(ou will ha).44 E .33 -.165(ve t)-.22 H(o).165 E +(create a symbolic link tree to b)72 247.2 Q(uild X.)-.22 E(See the ne) +5.5 E(xt section.)-.165 E 1.76 -.88(To m)72 263.8 T(ount the CD-R).88 E +(OM, see the mount\(8\) manual page on your system or the liner notes t\ +hat came with)-.44 E(the CD-R)72 276.8 Q 2.75(OM. Some)-.44 F +(systems, e.g., Solaris 2, can automatically mount the CD-R)2.75 E +(OM for you.)-.44 E F1 2.75(2.3. A)72 315.8 R(pply P)-.275 E(atches)-.11 +E F0(If there are \214x)72 345.4 Q +(es released that are more recent than your distrib)-.165 E +(ution, apply them no)-.22 E 4.18 -.715(w. F)-.275 H(ollo).55 E 2.75(wt) +-.275 G(he instruc-)-2.75 E(tions at the top of each patch, b)72 358.4 Q +(ut don')-.22 E 2.75(td)-.198 G 2.75(oa)-2.75 G .33 -.165(ny m)-2.75 H +(ak).165 E 2.75(ec)-.11 G 2.75(ommands. See)-2.75 F(the section `)2.75 E +(`Public P)-.916 E(atches')-.165 E 2.75('l)-.916 G(ater)-2.75 E +(in this document.)72 371.4 Q(Then continue here.)5.5 E F1 2.75 +(2.4. Symbolic)72 410.4 R(Link T)2.75 E -.198(re)-.814 G(es).198 E F0 +(If you e)72 440 Q(xpect to b)-.165 E(uild the distrib)-.22 E +(ution on more than one machine using a shared source tree, or you are) +-.22 E -.22(bu)72 453 S(ilding from CD-R).22 E(OM, or you just w)-.44 E +(ant to k)-.11 E(eep the source tree pure, you may w)-.11 E +(ant to use the program)-.11 E F1(xc/con\214g/util/lndir)72 466 Q(.c) +-1.1 E F0(to create a symbolic link tree on each b)2.75 E(uild machine.) +-.22 E(The links may use an addi-)5.5 E(tional 10 me)72 479 Q -.055(ga) +-.165 G(bytes, b).055 E(ut it is cheaper than ha)-.22 E +(ving multiple copies of the source tree.)-.22 E(It may be trick)72 +495.6 Q 2.75(yt)-.165 G 2.75(oc)-2.75 G(ompile)-2.75 E F2(lndir)2.75 E +F0(before the distrib)2.75 E(ution is b)-.22 E 2.75(uilt. If)-.22 F +(you ha)2.75 E .33 -.165(ve a c)-.22 H(op).165 E 2.75(yf)-.11 G +(rom a pre)-2.75 E(vious)-.275 E(release, use that.)72 508.6 Q F1(Mak) +5.5 E(e\214le.ini)-.11 E F0(can be used for b)2.75 E(uilding)-.22 E F2 +(lndir)2.75 E F0(the \214rst time.)2.75 E -1.21(Yo)5.5 G 2.75(um)1.21 G +(ay ha)-2.75 E .33 -.165(ve t)-.22 H 2.75(os).165 G(pecify)-2.75 E F1 +(OSFLA)72 521.6 Q(GS=\255D)-.605 E F2(something)A F0 +(to get it to compile.)2.75 E(What you w)5.5 E(ould pass as)-.11 E F1 +(BOO)2.75 E(TSTRAPCFLA)-.44 E(GS)-.605 E F0(might)2.75 E -.11(wo)72 +534.6 S 2.75(rk. The).11 F(command line looks something lik)2.75 E 2.75 +(et)-.11 G(his:)-2.75 E(mak)108 553.6 Q 5.5<65ad>-.11 G 5.5(fM)-5.5 G +(ak)-5.5 E 2.75(e\214le.ini OSFLA)-.11 F(GS=\255D)-.44 E F2<8d61>A(g) +-.11 E F0 1.76 -.88(To u)72 576.2 T +(se a symbolic link tree, create a directory for the b).88 E(uild,)-.22 +E F2(cd)2.75 E F0(to it, and type this:)2.75 E(lndir)108 595.2 Q F2 +(sour)2.75 E(cedir)-.407 E F0(where)72 617.8 Q F2(sour)2.75 E(cedir) +-.407 E F0 +(is the pathname of the directory where you stored the sources.)2.75 E +(All of the b)5.5 E(uild instruc-)-.22 E(tions gi)72 630.8 Q -.165(ve) +-.275 G 2.75(nb).165 G(elo)-2.75 E 2.75(ws)-.275 G +(hould then be done in the b)-2.75 E +(uild directory on each machine, rather than in the source)-.22 E +(directory)72 643.8 Q(.)-.715 E F1(xc/con\214g/util/mkshado)72 660.4 Q +(w/)-.11 E F0(contains)2.75 E F2(mkshadow)2.75 E F0 2.75(,a)C 2.75(na) +-2.75 G(lternati)-2.75 E .33 -.165(ve p)-.275 H(rogram to).165 E F2 +(lndir)2.75 E F0(.)A F1 2.75(2.5. Con\214guration)72 699.4 R -.11(Pa) +2.75 G(rameters).11 E F0 +(Build information for each source directory is in \214les called)72 729 +Q F1(Imak)2.75 E(e\214le)-.11 E F0 5.5(.A)C(n)-5.5 E F1(Imak)2.75 E +(e\214le)-.11 E F0 2.75(,a)C(long with local)-2.75 E(3)303.25 769 Q EP +%%Page: 4 8 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation V)-2.75 E(ersion 11, Release 6.3 Snapshot)-1.221 E +(con\214guration information in)72 85 Q/F1 11/Times-Bold@0 SF +(xc/con\214g/cf/)2.75 E F0 2.75(,i)C 2.75(su)-2.75 G(sed by the program) +-2.75 E/F2 11/Times-Italic@0 SF(imak)2.75 E(e)-.11 E F0(to generate a) +2.75 E F1(Mak)2.75 E(e\214le)-.11 E F0(.)A +(Most of the con\214guration w)72 101.6 Q(ork prior to b)-.11 E +(uilding the release is to set parameters so that)-.22 E F2(imak)2.75 E +(e)-.11 E F0(will gener)2.75 E(-)-.22 E(ate correct \214les.)72 114.6 Q +(Most of those parameters are set in)5.5 E F1(xc/con\214g/cf/site.def) +2.75 E F0 5.5(.Y)C(ou will also need to check the)-6.71 E(appropriate v) +72 127.6 Q(endor)-.165 E(-speci\214c)-.22 E F1(.cf)2.75 E F0(\214le in) +2.75 E F1(xc/con\214g/cf/)2.75 E F0(to mak)2.75 E 2.75(es)-.11 G +(ure that OSMajorV)-2.75 E(ersion, OSMinorV)-1.221 E(ersion,)-1.221 E +(and OsT)72 140.6 Q(een)-.77 E(yV)-.165 E +(ersion are set correctly for your system.)-1.221 E(Ov)5.5 E +(erride them in)-.165 E F1(site.def)2.75 E F0(if necessary)2.75 E(.) +-.715 E(The)72 157.2 Q F1(site.def)2.75 E F0(\214le has tw)2.75 E 2.75 +(op)-.11 G(arts, one protected with `)-2.75 E(`#ifdef BeforeV)-.916 E +(endorCF')-1.221 E 2.75('a)-.916 G(nd one with `)-2.75 E(`#ifdef)-.916 E +(AfterV)72 170.2 Q(endorCF')-1.221 E 2.75('. The)-.916 F +(\214le is actually processed twice, once before the)2.75 E F1(.cf)2.75 +E F0(\214le and once after)2.75 E 5.5(.A)-.605 G(bout the)-5.5 E +(only thing you need to set in the `)72 183.2 Q(`before')-.916 E 2.75 +('s)-.916 G(ection is)-2.75 E F1(HasGcc2)2.75 E F0 2.75(;j)C +(ust about e)-2.75 E -.165(ve)-.275 G(rything else can be set in the) +.165 E -.916(``)72 196.2 S(after').916 E 2.75('s)-.916 G(ection.)-2.75 E +(The sample)72 212.8 Q F1(site.def)2.75 E F0 +(also has commented out support to include another \214le,)2.75 E F1 +(host.def)2.75 E F0 5.5(.T)C(his scheme may)-5.5 E(be useful if you w)72 +225.8 Q(ant to set most parameters site-wide, b)-.11 E +(ut some parameters v)-.22 E(ary from machine to)-.275 E 2.75 +(machine. If)72 238.8 R(you use a symbolic link tree, you can share)2.75 +E F1(site.def)2.75 E F0(across all machines, and gi)2.75 E .33 -.165 +(ve e)-.275 H(ach).165 E(machine its o)72 251.8 Q(wn cop)-.275 E 2.75 +(yo)-.11 G(f)-2.75 E F1(host.def)2.75 E F0(.)A +(The con\214g parameters are listed in)72 268.4 Q F1 +(xc/con\214g/cf/README)2.75 E F0 2.75(,b)C +(ut here are some of the more common)-2.97 E +(parameters that you may wish to set in)72 281.4 Q F1(site.def)2.75 E F0 +(.)A F1(Pr)72 298 Q(ojectRoot)-.198 E F0 +(The destination where X will be installed.)97 311 Q(This v)5.5 E +(ariable needs to be set before you b)-.275 E(uild, as some)-.22 E +(programs that read \214les at run-time ha)97 324 Q .33 -.165(ve t)-.22 +H(he installation directory compiled in to them.).165 E(Assuming)5.5 E +(you ha)97 337 Q .33 -.165(ve s)-.22 H(et the v).165 E +(ariable to some v)-.275 E(alue /)-.275 E F2(path)A F0 2.75<2c8c>C +(les will be installed into /)-2.75 E F2(path)A F0(/bin,)A(/)97 350 Q F2 +(path)A F0(/include/X11, /)A F2(path)A F0(/lib, and /)A F2(path)A F0 +(/man.)A F1(HasGcc)72 366.6 Q F0(Set to)97 379.6 Q F1(YES)2.75 E F0 +(to b)2.75 E(uild with)-.22 E F2(gcc)2.75 E F0 -.165(ve)2.75 G(rsion 1.) +.165 E F1(HasGcc2)72 396.2 Q F0(Set to)97 409.2 Q F1(YES)2.75 E F0(to b) +2.75 E(uild with)-.22 E F2(gcc)2.75 E F0 -.165(ve)2.75 G(rsion 2.).165 E +(Both this option and)5.5 E F1(HasGcc)2.75 E F0 +(look for a compiler named)2.75 E F2(gcc)97 422.2 Q F0 2.75(,b)C(ut) +-2.97 E F1(HasGcc2)2.75 E F0(will cause the b)2.75 E +(uild to use more features of)-.22 E F2(gcc)2.75 E F0 +(2, such as the ability to compile)2.75 E(shared libraries.)97 435.2 Q +F1(BuildXInputExt)72 451.8 Q F0(Set to)97 464.8 Q F1(YES)2.75 E F0(to b) +2.75 E(uild the X Input Extension.)-.22 E(This e)5.5 E +(xtension requires de)-.165 E(vice-dependent support in the)-.275 E 2.75 +(Xs)97 477.8 S(erv)-2.75 E(er)-.165 E 2.75(,w)-.44 G(hich e)-2.75 E +(xists only in)-.165 E F2(Xhp)2.75 E F0(in our implementation.)2.75 E F1 +(BuildP)72 494.4 Q(exExt)-.22 E F0(Set to)97 507.4 Q F1(NO)2.75 E F0 +(to not b)2.75 E(uild the PEX serv)-.22 E(er e)-.165 E +(xtension and fonts.)-.165 E F1(DefaultUsrBin)72 524 Q F0 +(This is a directory where programs will be found e)97 537 Q -.165(ve) +-.275 G 2.75(ni).165 G 2.75(fP)-2.75 G -1.221(AT)-3.762 G 2.75(Hi)1.221 +G 2.75(sn)-2.75 G(ot set in the en)-2.75 E 2.75(vironment. It)-.44 F(is) +2.75 E(independent of ProjectRoot and def)97 550 Q(aults to)-.11 E F1 +(/usr/bin)2.75 E F0 5.5(.I)C 2.75(ti)-5.5 G 2.75(su)-2.75 G(sed, for e) +-2.75 E(xample, when connecting from)-.165 E 2.75(ar)97 563 S +(emote system via)-2.75 E F2 -.11(rs)2.75 G(h).11 E F0 5.5(.T)C(he)-5.5 +E F2 -.11(rs)2.75 G(tart).11 E F0(program installs its serv)2.75 E +(er in this directory)-.165 E(.)-.715 E F1(InstallSer)72 579.6 Q -.11 +(ve)-.11 G(rSetUID).11 E F0(Some systems require the X serv)97 592.6 Q +(er to run as root to access the de)-.165 E(vices it needs.)-.275 E +(If you are on such a)5.5 E(system and will not be using)97 605.6 Q F2 +(xdm)2.75 E F0 2.75(,y)C(ou can set this v)-2.75 E(ariable to)-.275 E F1 +(YES)2.75 E F0(to install the X serv)2.75 E(er setuid to)-.165 E 2.75 +(root. Note)97 618.6 R(that the X serv)2.75 E +(er has not been analyzed by the X Consortium for security in such an) +-.165 E(installation; talk to your system manager before setting this v) +97 631.6 Q(ariable.)-.275 E F1(InstallXdmCon\214g)72 648.2 Q F0(By def) +97 661.2 Q +(ault set to NO, which suppresses installing xdm con\214g \214les o)-.11 +E -.165(ve)-.165 G 2.75(re).165 G(xisting ones.)-2.915 E(Lea)5.5 E .33 +-.165(ve i)-.22 H 2.75(ts).165 G(et to)-2.75 E +(NO if your site has customized the \214les in)97 674.2 Q F1 +(/usr/X11R6.3/lib/X11/xdm)2.75 E F0 2.75(,a)C 2.75(sm)-2.75 G(an)-2.75 E +2.75(ys)-.165 G(ites do.)-2.75 E(If you)5.5 E(don')97 687.2 Q 2.75(ti) +-.198 G(nstall the ne)-2.75 E 2.75<778c>-.275 G(les, mer)-2.75 E(ge an) +-.198 E 2.75(yc)-.165 G(hanges present in the ne)-2.75 E 2.75<778c>-.275 +G(les.)-2.75 E F1(MotifBC)72 703.8 Q F0(Causes Xlib and Xt to w)97 716.8 +Q(ork around some b)-.11 E(ugs in older v)-.22 E(ersions of Motif.)-.165 +E(Set to)5.5 E F1(YES)2.75 E F0(only if you)2.75 E +(will be linking with Motif v)97 729.8 Q(ersion 1.1.1, 1.1.2, or 1.1.3.) +-.165 E(4)303.25 769 Q EP +%%Page: 5 9 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3 Snapshot) +-3.971 E 2.75(XW)175.4 G(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation)-2.75 E/F1 11/Times-Bold@0 SF(GetV)72 85 Q(aluesBC) +-1.012 E F0(Setting this v)97 98 Q(ariable to)-.275 E F1(YES)2.75 E F0 +(allo)2.75 E(ws ille)-.275 E -.055(ga)-.165 G 2.75(lX).055 G(tGetV)-2.75 +E(alues requests with NULL Ar)-1.221 E(gV)-.198 E(al to usually suc-) +-1.221 E(ceed, as R5 did.)97 111 Q +(Some applications erroneously rely on this beha)5.5 E(vior)-.22 E 5.5 +(.S)-.605 G(upport for this will be)-5.5 E(remo)97 124 Q -.165(ve)-.165 +G 2.75(di).165 G 2.75(naf)-2.75 G(uture release.)-2.75 E(The follo)72 +140.6 Q(wing v)-.275 E(endor)-.165 E(-speci\214c)-.22 E F1(.cf)2.75 E F0 +(\214les are in the release b)2.75 E(ut ha)-.22 E .33 -.165(ve n)-.22 H +(ot been tested recently and hence prob-).165 E(ably need changes to w) +72 153.6 Q(ork:)-.11 E F1(apollo.cf)2.75 E F0(,)A F1(bsd.cf)2.75 E F0(,) +A F1(con)2.75 E -.11(ve)-.44 G(x.cf).11 E F0(,)A F1(DGUX.cf)2.75 E F0(,) +A F1(luna.cf)2.75 E F0(,)A F1(macII.cf)2.75 E F0(,)A F1(Mips.cf)2.75 E +F0(,)A F1(moto.cf)2.75 E F0(,)A F1(Oki.cf)72 166.6 Q F0(,)A F1 +(pegasus.cf)2.75 E F0(,)A F1(x386.cf)2.75 E F0(.)A F1(Amoeba.cf)5.5 E F0 +(is kno)2.75 E(wn to require additional patches.)-.275 E(The \214le)72 +183.2 Q F1(xc/lib/Xdmcp/Wraphelp.c)2.75 E F0 2.75(,f)C(or XDM-A)-2.75 E +(UTHORIZA)-.605 E(TION-1, is not included in this release.)-1.221 E F1 +2.75(2.6. System)72 222.2 R(Build Notes)2.75 E F0 +(This section contains hints on b)72 251.8 Q +(uilding X with speci\214c compilers and operating systems.)-.22 E +(If the b)72 268.4 Q(uild isn')-.22 E 2.75<748c>-.198 G +(nding things right, mak)-2.75 E 2.75(es)-.11 G +(ure you are using a compiler for your operating system.)-2.75 E -.165 +(Fo)5.5 G(r).165 E -.165(ex)72 281.4 S(ample, a pre-compiled).165 E/F2 +11/Times-Italic@0 SF(gcc)2.75 E F0(for a dif)2.75 E +(ferent OS will not ha)-.275 E .33 -.165(ve r)-.22 H +(ight symbols de\214ned, so).165 E F2(imak)2.75 E(e)-.11 E F0(will not) +2.75 E -.11(wo)72 294.4 S(rk correctly).11 E(.)-.715 E F1 2.75 +(2.6.1. gcc)72 333.4 R F2(gcc)72 350 Q F0 -.165(ve)2.75 G +(rsion 2 is in re).165 E +(gular use at the X Consortium on Sparc platforms.)-.165 E(Set the v)5.5 +E(ariable)-.275 E F1(HasGcc2)2.75 E F0 5.5(.X)C(will)-2.75 E +(not compile on some systems with)72 363 Q F2(gcc)2.75 E F0 -.165(ve) +2.75 G +(rsion 2.5, 2.5.1, or 2.5.2 because of an incorrect declaration of).165 +E(memmo)72 376 Q -.165(ve)-.165 G(\(\) in a gcc include \214le.).165 E +(If you are using a)72 392.6 Q F2(gcc)2.75 E F0 -.165(ve)2.75 G +(rsion older than 2.7 on Solaris x86, you need to specify).165 E F1(BOO) +72 405.6 Q(TSTRAPCFLA)-.44 E(GS="\255Dsun")-.605 E F0(in the `)2.75 E +(`mak)-.916 E 2.75(eW)-.11 G(orld')-3.63 E 2.75('c)-.916 G(ommand.)-2.75 +E F1 2.75(2.6.2. Other)72 444.6 R(GNU tools)2.75 E F0 +(Use of the GNU assembler)72 461.2 Q(,)-.44 E F2(as)2.75 E F0 2.75(,o)C +2.75(rl)-2.75 G(ink)-2.75 E(er)-.11 E(,)-.44 E F2(ld)2.75 E F0 2.75(,i)C +2.75(sn)-2.75 G(ot supported.)-2.75 E(GNU)5.5 E F2(mak)2.75 E(e)-.11 E +F0(is not supported.)2.75 E F1 2.75(2.6.3. Spar)72 500.2 R(cW)-.198 E +(orks 2.0)-.825 E F0(If you ha)72 529.8 Q .33 -.165(ve a n)-.22 H +(on-threaded program and w).165 E(ant to deb)-.11 E +(ug it with the old SparcW)-.22 E(orks 2.0 dbx, you will need)-.88 E +(to use the thread stubs library in)72 542.8 Q F1 +(xc/util/misc/thr_stubs.c)2.75 E F0 5.5(.C)C(ompile it as follo)-5.5 E +(ws:)-.275 E(cc -c thr_stubs.c)108 561.8 Q +(ar cq libthr_stubs.a thr_stubs.o)108 574.8 Q(ranlib libthr_stubs.a)108 +587.8 Q(Install libthr_stubs.a in the same directory with your X librar\ +ies \(e.g.,)72 606.8 Q F1(/usr/X11R6.3/lib/libthr_stubs.a)2.75 E F0(\).) +A(Add the follo)72 619.8 Q(wing line to)-.275 E F1(site.def)2.75 E F0(:) +A(#de\214ne ExtraLibraries)108 638.8 Q(\255lsock)5.5 E 2.75(et \255lnsl) +-.11 F($\(CDEB)2.75 E(UGFLA)-.11 E(GS:\255g=\255lthr_stubs\))-.44 E +(This e)72 657.8 Q(xample uses a)-.165 E F2(mak)2.75 E(e)-.11 E F0 +(macro substitution; not all)2.75 E F2(mak)2.75 E(e)-.11 E F0 +(implementations support this feature.)2.75 E F1 2.75(2.6.4. CenterLine) +72 696.8 R 2.75(Cu)2.75 G(nder Solaris 2)-2.75 E F0 +(If you are using the CenterLine C compiler to compile the distrib)72 +726.4 Q(ution under Solaris 2, place the)-.22 E(5)303.25 769 Q EP +%%Page: 6 10 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation V)-2.75 E(ersion 11, Release 6.3 Snapshot)-1.221 E +(follo)72 85 Q(wing line in your)-.275 E/F1 11/Times-Bold@0 SF(site.def) +2.75 E F0(:)A(#de\214ne HasCenterLineC YES)108 104 Q +(If clcc is not in your def)72 123 Q(ault search path, add this line to) +-.11 E F1(site.def)2.75 E F0(:)A(#de\214ne CcCmd /path/to/your/clcc)108 +142 Q(If you are using CodeCenter 4.0.4 or earlier)72 164.6 Q 2.75(,t) +-.44 G(he follo)-2.75 E(wing \214les trigger b)-.275 E(ugs in the)-.22 E +/F2 11/Times-Italic@0 SF(clcc)2.75 E F0(optimizer:)2.75 E +(xc/programs/Xserv)108 183.6 Q(er/cfb16/cfbgetsp.c)-.165 E +(xc/programs/Xserv)108 196.6 Q(er/cfb16/cfb\214llsp.c)-.165 E +(xc/programs/Xserv)108 209.6 Q(er/cfb/cfbgetsp.c)-.165 E(Thus to b)72 +232.2 Q(uild the serv)-.22 E(er)-.165 E 2.75(,y)-.44 G(ou will ha)-2.75 +E .33 -.165(ve t)-.22 H 2.75(oc).165 G +(ompile these \214les by hand with the)-2.75 E F12.75 E F0 +(\215ag:)2.75 E 2.75(%c)108 251.2 S 2.75(dx)-2.75 G(c/programs/Xserv) +-2.75 E(er/cfb16)-.165 E 2.75(%m)108 264.2 S(ak)-2.75 E 2.75(eC)-.11 G +(DEB)-2.75 E(UGFLA)-.11 E(GS="\255g" cfbgetsp.o cfb\214llsp.o)-.44 E +2.75(%c)108 277.2 S 2.75(d.)-2.75 G(./cfb)-2.75 E 2.75(%m)108 290.2 S +(ak)-2.75 E 2.75(eC)-.11 G(DEB)-2.75 E(UGFLA)-.11 E +(GS="\255g" cfbgetsp.o)-.44 E(This optimizer b)72 309.2 Q +(ug appears to be \214x)-.22 E(ed in CodeCenter 4.0.6.)-.165 E F1 2.75 +(2.6.5. IBM)72 348.2 R(AIX 4.1.4)2.75 E F0(On AIX 4.1.4, the \214le)72 +377.8 Q F1(lib/f)2.75 E(ont/T)-.275 E(ype1/objects.c)-.814 E F0 +(must be compiled without optimization \()2.75 E F1A F0 2.75(\)e)C +(lse the X)-2.75 E(serv)72 390.8 Q(er will e)-.165 E(xit when T)-.165 E +(ype 1 fonts are used.)-.88 E F1 2.75(2.6.6. SunOS)72 429.8 R(4)2.75 E +F0(SunOS 4.0 and earlier need BOO)72 459.4 Q(TSTRAPCFLA)-.44 E +(GS=-DNOSTDHDRS because the)-.44 E 2.75(yd)-.165 G 2.75(on)-2.75 G +(ot ha)-2.75 E .33 -.165(ve u)-.22 H(nistd.h).165 E(nor stdlib)72 472.4 +Q 2.75(.h. Do)-.44 F F2(not)2.75 E F0(supply a BOO)2.75 E(TSTRAPCFLA) +-.44 E(GS when b)-.44 E(uilding an)-.22 E 2.75(yS)-.165 G(unOS 4.1 v) +-2.75 E(ersion.)-.165 E F1 2.75(2.6.7. Micr)72 511.4 R(osoft W)-.198 E +(indo)-.198 E(ws NT)-.11 E F0(All of the base libraries are supported, \ +including multi-threading in Xlib and Xt, b)72 541 Q +(ut some of the more)-.22 E(complicated applications, speci\214cally)72 +554 Q F2(xterm)2.75 E F0(and)2.75 E F2(xdm)2.75 E F0 2.75(,a)C +(re not supported.)-2.75 E(There are also some other rough edges in the\ + implementation, such as lack of support for non-sock)72 570.6 Q +(et \214le)-.11 E +(descriptors as Xt alternate inputs and not using the re)72 583.6 Q +(gistry for con\214gurable parameters lik)-.165 E 2.75(et)-.11 G +(he system)-2.75 E(\214lenames and search paths.)72 596.6 Q(The)72 613.2 +Q F2(Xnest)2.75 E F0(serv)2.75 E(er has been made to run on NT)-.165 E +5.5(.I)-.814 G 2.75(tr)-5.5 G(equires a real X serv)-2.75 E +(er for output still.)-.165 E F1 2.75(2.6.8. Omr)72 652.2 R(on Luna) +-.198 E F0(The Omron Luna platform is no longer supported.)72 681.8 Q +(The Luna v)5.5 E(ersion of the)-.165 E F2(mak)2.75 E(e)-.11 E F0 +(program doesn')2.75 E 2.75(td)-.198 G(e\214ne)-2.75 E +(the standard macro MAKE, so you must run it as `)72 694.8 Q(`mak)-.916 +E 2.75(eM)-.11 G(AKE=mak)-2.75 E(e')-.11 E 2.75('a)-.916 G 2.75(tt)-2.75 +G(op le)-2.75 E -.165(ve)-.275 G(l, e.g., `).165 E(`mak)-.916 E(e)-.11 E +(MAKE=mak)72 707.8 Q 2.75(eW)-.11 G(orld')-3.63 E('.)-.916 E(6)303.25 +769 Q EP +%%Page: 7 11 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3 Snapshot) +-3.971 E 2.75(XW)175.4 G(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation)-2.75 E/F1 11/Times-Bold@0 SF 2.75(2.7. The)72 85 R +(Build)2.75 E F0(On NT)72 114.6 Q 2.75(,t)-.814 G(ype)-2.75 E(nmak)108 +133.6 Q 2.75(eW)-.11 G(orld.W)-3.63 E(in32 > w)-.44 E(orld.log)-.11 E +(On other systems, \214nd the BootstrapCFlags line, if an)72 152.6 Q +1.43 -.715(y, i)-.165 H 2.75(nt).715 G(he v)-2.75 E(endor)-.165 E +(-speci\214c)-.22 E F1(.cf)2.75 E F0 2.75(\214le. If)2.75 F(there isn') +2.75 E 2.75(to)-.198 G(ne,)-2.75 E(type)72 165.6 Q 2.75(%m)108 184.6 S +(ak)-2.75 E 2.75(eW)-.11 G(orld >& w)-3.63 E(orld.log)-.11 E +(otherwise type)72 203.6 Q 2.75(%m)108 222.6 S(ak)-2.75 E 2.75(eW)-.11 G +(orld BOO)-3.63 E(TSTRAPCFLA)-.44 E(GS="v)-.44 E(alue" >& w)-.275 E +(orld.log)-.11 E -1.21(Yo)72 245.2 S 2.75(uc)1.21 G +(an call the output \214le something other than `)-2.75 E(`w)-.916 E +(orld.log')-.11 E(', b)-.916 E(ut do not call it `)-.22 E(`mak)-.916 E +(e.log')-.11 E 2.75('b)-.916 G(ecause \214les)-2.75 E +(with this name are automatically deleted during the `)72 258.2 Q +(`cleaning')-.916 E 2.75('s)-.916 G(tage of the b)-2.75 E(uild.)-.22 E +(Because the b)72 274.8 Q(uild can tak)-.22 E 2.75(es)-.11 G -2.365 +-.275(ev e)-2.75 H(ral hours to complete, you will probably w).275 E +(ant to run it in the background)-.11 E(and k)72 287.8 Q(eep a w)-.11 E +(atch on the output.)-.11 E -.165(Fo)5.5 G 2.75(re).165 G(xample:)-2.915 +E 2.75(%m)108 306.8 S(ak)-2.75 E 2.75(eW)-.11 G(orld >& w)-3.63 E +(orld.log &)-.11 E 2.75(%t)108 319.8 S 2.75(ail \255f w)-2.75 F +(orld.log)-.11 E +(If something goes wrong, the easiest thing is to just start o)72 342.4 +Q -.165(ve)-.165 G 2.75(r\().165 G(typing `)-2.75 E(`mak)-.916 E 2.75 +(eW)-.11 G(orld')-3.63 E 2.75('a)-.916 G -.055(ga)-2.75 G(in\) once you) +.055 E(ha)72 355.4 Q .33 -.165(ve c)-.22 H(orrected the problem.).165 E +F1 2.75(2.8. Installing)72 394.4 R(X)2.75 E F0(If e)72 424 Q -.165(ve) +-.275 G(rything is b).165 E(uilt successfully)-.22 E 2.75(,y)-.715 G +(ou can install the softw)-2.75 E(are by typing the follo)-.11 E +(wing as root:)-.275 E 2.75(%m)108 443 S(ak)-2.75 E 2.75(ei)-.11 G +(nstall >& install.log)-2.75 E(Ag)72 465.6 Q(ain, you might w)-.055 E +(ant to run this in the background and use)-.11 E/F2 11/Times-Italic@0 +SF(tail)2.75 E F0(to w)2.75 E(atch the progress.)-.11 E -1.21(Yo)72 +482.2 S 2.75(uc)1.21 G(an install the manual pages by typing the follo) +-2.75 E(wing as root:)-.275 E 2.75(%m)108 501.2 S(ak)-2.75 E 2.75(ei) +-.11 G(nstall.man >& man.log)-2.75 E F1 2.75(2.8.1. System)72 546.2 R +(Installation Notes)2.75 E F0(This section contains hints on installing\ + and using X with speci\214c compilers and operating systems.)72 575.8 Q +F1 2.75(2.8.1.1. The)72 614.8 R 2.75(XS)2.75 G(er)-2.75 E -.11(ve)-.11 G +2.75(ro).11 G 2.75(nA)-2.75 G(IX 4)-2.75 E F0 -.165(Fo)72 644.4 S 2.75 +(rI).165 G(BM')-2.75 E 2.75(sA)-.605 G(IX 4, you need to mak)-2.75 E +2.75(es)-.11 G(ure the LFT de)-2.75 E +(vice is associated with the correct graphics adapter)-.275 E(.)-.605 E +(It')72 657.4 Q 2.75(sao)-.605 G(ne-time setup that does)-2.75 E F2(not) +2.75 E F0(happen automatically)2.75 E 2.75(,e)-.715 G -.165(ve)-3.025 G +2.75(ni).165 G 2.75(ft)-2.75 G(here')-2.75 E 2.75(so)-.605 G +(nly one graphics adapter in the)-2.75 E 2.75(system. T)72 670.4 R 2.75 +(oc)-.88 G(on\214gure the LFT de)-2.75 E(vice properly)-.275 E 2.75(,b) +-.715 G(ecome root and start SMIT)-2.75 E 5.5(.G)-.814 G 2.75(ot)-5.5 G +2.75(ot)-2.75 G(he `)-2.75 E(`De)-.916 E(vices')-.275 E 2.75('c)-.916 G +(ate-)-2.75 E(gory)72 683.4 Q 2.75(,c)-.715 G(hoose `)-2.75 E(`LFT') +-.916 E(', then `)-.916 E(`Displays')-.916 E(', then `)-.916 E(`Mo)-.916 +E .33 -.165(ve t)-.165 H(he LFT to Another Display').165 E('.)-.916 E +(Select `)72 700 Q(`Both')-.916 E 2.75('f)-.916 G +(or when the change should tak)-2.75 E 2.75(ee)-.11 G -.275(ff)-2.75 G +(ect, then select the display adapter where you w).275 E(ant to)-.11 E +(run the X serv)72 713 Q(er)-.165 E 5.5(.C)-.605 G +(on\214rm the changes and e)-5.5 E(xit SMIT)-.165 E 2.75(;f)-.605 G +(rom no)-2.75 E 2.75(wo)-.275 G(n, you should be able to run the serv) +-2.75 E(er)-.165 E(just \214ne.)72 726 Q(7)303.25 769 Q EP +%%Page: 8 12 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation V)-2.75 E(ersion 11, Release 6.3 Snapshot)-1.221 E +1.76 -.88(To r)72 85 T(un).88 E/F1 11/Times-Italic@0 SF(Xibm)2.75 E F0 +(from)2.75 E F1(xdm)2.75 E F0 2.75(,y)C(ou must pro)-2.75 E(vide the `) +-.165 E(`\255force')-.916 E 2.75<278d>-.916 G(ag on the serv)-2.75 E +(er command line in the)-.165 E/F2 11/Times-Bold@0 SF(Xser)2.75 E -.11 +(ve)-.11 G(rs).11 E F0(\214le.)72 98 Q F2 2.75(2.9. Shar)72 137 R +(ed Libraries)-.198 E F0(The v)72 166.6 Q +(ersion number of some of the the shared libraries has been changed.) +-.165 E(On SunOS 4, which supports)5.5 E(minor v)72 179.6 Q +(ersion numbers for shared libraries, programs link)-.165 E +(ed with the R6 libraries will use the ne)-.11 E(w)-.275 E +(libraries with no special action required.)72 192.6 Q +(On other platforms you ha)5.5 E .33 -.165(ve t)-.22 H(he follo).165 E +(wing choices:)-.275 E 14(1. K)72 209.2 R(eep the old v)-.275 E +(ersions of the libraries around.)-.165 E 14(2. Relink)72 225.8 R +(all applications with the ne)2.75 E 2.75(wl)-.275 G(ibraries.)-2.75 E +14(3. Create)72 242.4 R 2.75(al)2.75 G(ink from the old name to the ne) +-2.75 E 2.75(wn)-.275 G(ame.)-2.75 E -.165(Fo)97 259 S 2.75(re).165 G +(xample, to ha)-2.915 E .33 -.165(ve p)-.22 H(rograms that were link) +.165 E(ed ag)-.11 E(ainst libX11.so.6.0 use libX11.so.6.3, mak)-.055 E +2.75(et)-.11 G(his)-2.75 E(link:)97 272 Q 2.75(ln \255s)133 291 R +(libX11.so.6.3 libX11.so.6.0)2.75 E F2 2.75(2.10. Setting)72 336 R +(Up xterm)2.75 E F0(If your)72 365.6 Q F2(/etc/termcap)2.75 E F0(and) +2.75 E F2(/usr/lib/terminf)2.75 E(o)-.275 E F0(databases do not ha)2.75 +E .33 -.165(ve c)-.22 H(orrect entries for).165 E F1(xterm)2.75 E F0 +2.75(,u)C(se the sample)-2.75 E(entries pro)72 378.6 Q +(vided in the directory)-.165 E F2(xc/pr)2.75 E(ograms/xterm/)-.198 E F0 +5.5(.S)C(ystem V users may need to compile and install)-5.5 E(the)72 +391.6 Q F2(terminf)2.75 E(o)-.275 E F0(entry with the)2.75 E F1(tic)2.75 +E F0(utility)2.75 E(.)-.715 E(Since each)72 408.2 Q F1(xterm)2.75 E F0(\ +will need a separate pseudoterminal, you need a reasonable number of th\ +em for normal)2.75 E -.165(exe)72 421.2 S 2.75(cution. Y).165 F +(ou probably will w)-1.21 E +(ant at least 32 on a small, multiuser system.)-.11 E +(On most systems, each pty)5.5 E(has tw)72 434.2 Q 2.75(od)-.11 G -.275 +(ev)-2.75 G(ices, a master and a sla).275 E -.165(ve)-.22 G 2.75(,w).165 +G(hich are usually named /de)-2.75 E(v/tty[pqrstu][0-f] and)-.275 E(/de) +72 447.2 Q 2.75(v/pty[pqrstu][0-f]. If)-.275 F(you don')2.75 E 2.75(th) +-.198 G -2.475 -.22(av e)-2.75 H(at least the `)2.97 E(`p')-.916 E 2.75 +('a)-.916 G(nd `)-2.75 E(`q')-.916 E 2.75('s)-.916 G +(ets con\214gured \(try typing `)-2.75 E(`ls)-.916 E(/de)72 460.2 Q +(v/?ty??')-.275 E('\), you should ha)-.916 E .33 -.165(ve y)-.22 H +(our system administrator add them.).165 E +(This is commonly done by running)5.5 E(the)72 473.2 Q F1(MAKEDEV)2.75 E +F0(script in the)2.75 E F2(/de)2.75 E(v)-.165 E F0 +(directory with appropriate ar)2.75 E(guments.)-.198 E F2 2.75 +(2.11. Starting)72 512.2 R(Ser)2.75 E -.11(ve)-.11 G(rs at System Boot) +.11 E F0(The)72 541.8 Q F1(xfs)2.75 E F0(and)2.75 E F1(xdm)2.75 E F0 +(programs are designed to be run automatically at system startup.)2.75 E +(Please read the manual)5.5 E(pages for details on setting up con\214gu\ +ration \214les; reasonable sample \214les are in)72 554.8 Q F2(xc/pr)72 +567.8 Q(ograms/xdm/con\214g/)-.198 E F0(and)2.75 E F2(xc/pr)2.75 E +(ograms/xfs/)-.198 E F0(.)A F2 2.75(2.11.1. On)72 606.8 R +(BSD-based systems using /etc/r)2.75 E(c)-.198 E F0 +(If your system uses an)72 636.4 Q F2(/etc/r)2.75 E(c)-.198 E F0(\214le\ + at boot time, you can usually enable these programs by placing the fol\ +-)2.75 E(lo)72 649.4 Q(wing at or near the end of the \214le:)-.275 E +(if [ \255f /usr/X11R6.3/bin/xfs ]; then)108 668.4 Q +(/usr/X11R6.3/bin/xfs & echo \255n ' xfs')130 681.4 Q<8c>108 694.4 Q +(if [ \255f /usr/X11R6.3/bin/xdm ]; then)108 720.4 Q(8)303.25 769 Q EP +%%Page: 9 13 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3 Snapshot) +-3.971 E 2.75(XW)175.4 G(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation)-2.75 E(/usr/X11R6.3/bin/xdm; echo \255n ' xdm')130 +85 Q<8c>108 98 Q(Since)72 120.6 Q/F1 11/Times-Italic@0 SF(xfs)2.75 E F0 +(can serv)2.75 E 2.75(ef)-.165 G(onts o)-2.75 E -.165(ve)-.165 G 2.75 +(rt).165 G(he netw)-2.75 E(ork, you do not need to run a font serv)-.11 +E(er on e)-.165 E -.165(ve)-.275 G(ry machine with an).165 E 2.75(Xd)72 +133.6 S(isplay)-2.75 E 5.5(.Y)-.715 G(ou should start)-6.71 E F1(xfs) +2.75 E F0(before)2.75 E F1(xdm)2.75 E F0 2.75(,s)C(ince)-2.75 E F1(xdm) +2.75 E F0(may start an X serv)2.75 E(er which is a client of the font) +-.165 E(serv)72 146.6 Q(er)-.165 E(.)-.605 E(The e)72 163.2 Q +(xamples here use)-.165 E/F2 11/Times-Bold@0 SF(/usr/X11R6.3/bin)2.75 E +F0 2.75(,b)C(ut if you ha)-2.97 E .33 -.165(ve i)-.22 H +(nstalled into a dif).165 E(ferent directory by setting \(or)-.275 E +(unsetting\))72 176.2 Q F2(Pr)2.75 E(ojectRoot)-.198 E F0 +(then you need to substitute the correct directory)2.75 E(.)-.715 E +(If you are unsure about ho)72 192.8 Q 2.75(ws)-.275 G(ystem boot w) +-2.75 E(orks, or if your system does not use)-.11 E F2(/etc/r)2.75 E(c) +-.198 E F0 2.75(,c)C(onsult your sys-)-2.75 E +(tem administrator for help.)72 205.8 Q F2 2.75(2.11.2. On)72 244.8 R +(SystemV)2.75 E(-based systems)-.814 E F0(There are tw)72 274.4 Q 2.75 +(ow)-.11 G(ays you can get On systems with a)-2.86 E F2(/etc/inittab) +2.75 E F0(\214le, you can edit this \214le to add the lines)2.75 E +(xfs:3:once:/usr/X11R6.3/bin/xfs)108 293.4 Q +(xdm:3:once:/usr/X11R6.3/bin/xdm)108 306.4 Q(On some systems, you can e\ +dit a \214le in /etc/init.d to run the X Consortium xdm instead of the \ +v)72 329 Q(endor')-.165 E(s)-.605 E(product xdm.)72 342 Q(On Son)5.5 E +2.75(yt)-.165 G(his \214le is /etc/init.d/consxdm.)-2.75 E +(On IRIX edit /etc/init.d/xdm.)5.5 E F2 2.75(2.12. Using)72 381 R +(OPEN LOOK applications)2.75 E F0 -1.21(Yo)72 410.6 S 2.75(uc)1.21 G +(an use the X11R6 Xsun serv)-2.75 E(er with OPEN LOOK applications, b) +-.165 E(ut you must pass the)-.22 E F2(\255swapLk)2.75 E(eys)-.11 E F0 +(\215ag to the serv)72 423.6 Q +(er on startup, or the OPEN LOOK Undo, Cop)-.165 E 1.43 -.715(y, P)-.11 +H(aste, Find, and Cut k).55 E -.165(ey)-.11 G 2.75(sm).165 G(ay not w) +-2.75 E(ork)-.11 E(correctly)72 436.6 Q 5.5(.F)-.715 G(or e)-5.665 E +(xample, to run Sun')-.165 E 2.75(sO)-.605 G(penW)-2.75 E(indo)-.44 E +(ws 3.3 desktop en)-.275 E(vironment with an X11R6 serv)-.44 E(er)-.165 +E 2.75(,u)-.44 G(se)-2.75 E(the command:)72 449.6 Q 2.75(%o)108 468.6 S +2.75(penwin \255serv)-2.75 F 2.75(er /usr/X11R6.3/bin/Xsun \255sw)-.165 +F(apLk)-.11 E -.165(ey)-.11 G(s).165 E(The k)72 491.2 Q -.165(ey)-.11 G +(syms reported by k).165 E -.165(ey)-.11 G 2.75(so).165 G 2.75(nt)-2.75 +G(he numeric k)-2.75 E -.165(ey)-.11 G(pad ha).165 E .33 -.165(ve a)-.22 +H(lso changed since X11R5; if you \214nd that).165 E(OpenW)72 504.2 Q +(indo)-.44 E(ws applications do not respond to k)-.275 E -.165(ey)-.11 G +(pad k).165 E -.165(ey)-.11 G 2.75(sa).165 G(nd cursor control k)-2.75 E +-.165(ey)-.11 G 2.75(sw).165 G(hen using the R6)-2.75 E(serv)72 517.2 Q +(er)-.165 E 2.75(,y)-.44 G(ou can remap the k)-2.75 E -.165(ey)-.11 G +(pad to generate R5 style k).165 E -.165(ey)-.11 G(syms using the follo) +.165 E(wing)-.275 E F1(xmodmap)2.75 E F0(commands:)2.75 E -.11(ke)108 +536.2 S(ysym P)-.055 E(ause = F21)-.165 E -.11(ke)108 549.2 S +(ysym Print = F22)-.055 E -.11(ke)108 562.2 S(ysym Break = F23)-.055 E +-.11(ke)108 575.2 S(ysym KP_Equal = F24)-.055 E -.11(ke)108 588.2 S +(ysym KP_Di)-.055 E(vide = F25)-.275 E -.11(ke)108 601.2 S +(ysym KP_Multiply = F26)-.055 E -.11(ke)108 614.2 S(ysym KP_Home = F27) +-.055 E -.11(ke)108 627.2 S(ysym KP_Up = Up)-.055 E -.11(ke)108 640.2 S +(ysym KP_Prior = F29)-.055 E -.11(ke)108 653.2 S(ysym KP_Left = Left) +-.055 E -.11(ke)108 666.2 S(ycode 100 = F31)-.055 E -.11(ke)108 679.2 S +(ysym KP_Right = Right)-.055 E -.11(ke)108 692.2 S(ysym KP_End = F33) +-.055 E -.11(ke)108 705.2 S(ysym KP_Do)-.055 E(wn = Do)-.275 E(wn)-.275 +E -.11(ke)108 718.2 S(ysym KP_Ne)-.055 E(xt = F35)-.165 E -.11(ke)108 +731.2 S(ysym KP_Insert = Insert)-.055 E(9)303.25 769 Q EP +%%Page: 10 14 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Installation V)-2.75 E(ersion 11, Release 6.3 Snapshot)-1.221 E +-.11(ke)108 85 S(ysym KP_Delete = Delete)-.055 E/F1 11/Times-Bold@0 SF +2.75(2.13. Reb)72 130 R(uilding after P)-.22 E(atches)-.11 E F0 -1.21 +(Yo)72 159.6 S 2.75(us)1.21 G(houldn')-2.75 E 2.75(tn)-.198 G +(eed this right a)-2.75 E -.11(wa)-.165 G 1.43 -.715(y, b).11 H(ut e) +.495 E -.165(ve)-.275 G(ntually you are probably going to mak).165 E +2.75(ec)-.11 G(hanges to the sources,)-2.75 E(for e)72 172.6 Q +(xample by applying an)-.165 E 2.75(yp)-.165 G +(ublic patches that may be released.)-2.75 E(Each patch comes with e)72 +189.2 Q(xplicit instructions at the top of it saying what to do.)-.165 E +(Thus the procedure here is)5.5 E(only an o)72 202.2 Q -.165(ve)-.165 G +(rvie).165 E 2.75(wo)-.275 G 2.75(ft)-2.75 G +(he types of commands that might be necessary to reb)-2.75 E +(uild X after changing it.)-.22 E(If you are b)72 218.8 Q +(uilding from CD-R)-.22 E +(OM, apply the patches to the symbolic link tree.)-.44 E +(The links to changed \214les)5.5 E +(will be replaced with local \214les containing the ne)72 231.8 Q 2.75 +(wc)-.275 G(ontents.)-2.75 E +(If only source \214les are changed, you should be able to reb)72 248.4 +Q(uild just by going to the)-.22 E F1(xc)2.75 E F0(directory in your) +2.75 E -.22(bu)72 261.4 S(ild tree and typing:).22 E 2.75(%m)108 280.4 S +(ak)-2.75 E 2.75(e>)-.11 G 2.75(&m)-2.75 G(ak)-2.75 E(e.log)-.11 E(If c\ +on\214guration \214les are changed, the safest thing to do is type:)72 +303 Q 2.75(%m)108 322 S(ak)-2.75 E 2.75(eE)-.11 G -.165(ve)-2.75 G +(rything >& e).165 E -.165(ve)-.275 G(ry).165 E(.log)-.715 E -.916(``)72 +344.6 S(Ev).916 E(erything')-.165 E 2.75('i)-.916 G 2.75(ss)-2.75 G +(imilar to `)-2.75 E(`W)-.916 E(orld')-.88 E 2.75('i)-.916 G 2.75(nt) +-2.75 G(hat it reb)-2.75 E(uilds e)-.22 E -.165(ve)-.275 G(ry).165 E F1 +(Mak)2.75 E(e\214le)-.11 E F0 2.75(,b)C(ut unlik)-2.97 E 2.75(e`)-.11 G +(`W)-3.666 E(orld')-.88 E 2.75('i)-.916 G 2.75(td)-2.75 G(oes not)-2.75 +E(delete the e)72 357.6 Q(xisting objects, libraries, and e)-.165 E +-.165(xe)-.165 G(cutables, and only reb).165 E +(uilds what is out of date.)-.22 E F1 2.75(2.14. F)72 396.6 R +(ormatting the Documentation)-.275 E F0(The PostScript \214les in)72 +426.2 Q F1(xc/doc/hardcopy)2.75 E F0 +(can be generated from the sources in)2.75 E F1(xc/doc/specs)2.75 E F0 +5.5(.M)C(ost of the)-5.5 E(documentation is in trof)72 439.2 Q 2.75(fu) +-.275 G(sing the)-2.75 E(\255ms macros.)4.583 E(The easiest w)5.5 E +(ay to format it is to use the Imak)-.11 E(e\214les pro-)-.11 E(vided.) +72 452.2 Q(Set the name of your local trof)72 468.8 Q 2.75(fp)-.275 G +(rogram by setting the v)-2.75 E(ariable)-.275 E F1 -1.32 -.814(Tr o) +2.75 H(ffCmd).814 E F0(in)2.75 E F1(xc/con\214g/cf/site.def)2.75 E F0 +5.5(.T)C(hen)-5.5 E -.22(bu)72 481.8 S(ild the Mak).22 E(e\214les:)-.11 +E(cd xc/doc)108 500.8 Q(mak)108 513.8 Q 2.75(eS)-.11 G(UBDIRS=specs Mak) +-2.75 E(e\214les)-.11 E(Finally)72 536.4 Q 2.75(,g)-.715 G 2.75(ot)-2.75 +G 2.75(ot)-2.75 G(he directory you are interested in and type `)-2.75 E +(`mak)-.916 E(e')-.11 E 2.75('t)-.916 G 2.75(here. This)-2.75 F +(command will generate)2.75 E F1(.PS)2.75 E F0 2.75(\214les. Y)72 549.4 +R(ou can also generate te)-1.21 E +(xt \214les by specifying the document name with a)-.165 E F1(.txt)2.75 +E F0 -.165(ex)2.75 G(tension as a).165 E/F2 11/Times-Italic@0 SF(mak) +2.75 E(e)-.11 E F0(tar)72 562.4 Q(get, e.g., `)-.198 E(`mak)-.916 E 2.75 +(ei)-.11 G(cccm.txt')-2.75 E('.)-.916 E(10)300.5 769 Q EP +%%Trailer +end +%%EOF diff --git a/Xserver/INSTALL.TXT b/Xserver/INSTALL.TXT new file mode 100644 index 0000000..786c88d --- /dev/null +++ b/Xserver/INSTALL.TXT @@ -0,0 +1,749 @@ + + + + + + + + + + Building and Installing the X Window System + + + + + + + + + Stephen Gildea + + X Consortium + + + + + + + March 5, 1996 + + Updated For Release 6.3 + + + + + + + + + + +Copyright c 1995, 1996 X Consortium + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, dis- +tribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the fol- +lowing conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- +ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL- +ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + +Except as contained in this notice, the name of the X Consortium shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization from +the X Consortium. + +X Window System is a trademark of X Consortium, Inc. + + +1. Easy Build Instructions + +This quick summary is no substitute for reading the full build instruc- +tions later in this document. + +Edit xc/config/cf/site.def for local preferences. If you want to build +with gcc uncomment the HasGcc2 line. If you want to install somewhere +other than /usr/X11R6.3, change ProjectRoot. (Do not use DESTDIR.) + +If any fixes have been released by the X Consortium, stop here and fol- +low the instructions at the top of each patch, but don't do any of the +make commands suggested in the patches. Then continue here. + +Check the appropriate vendor-specific .cf file in xc/config/cf/ to make +sure that OSMajorVersion and OSMinorVersion are set correctly for your +system. Override them in site.def if necessary. + +See if there is a BootstrapCFlags mentioned in the comments in the +vendor-specific .cf file. If there isn't one, cd to the xc directory +and type: + + % make World >& world.log + + +If there is a BootstrapCFlags, take its value and type: + + % make World BOOTSTRAPCFLAGS="value" >& world.log + + +Do not call the output file "make.log" when doing "make World". After a +successful build, you can install with: + + % make install >& install.log + + +You can install manual pages with: + + % make install.man >& man.log + + +While the system is building (or if things fail), read the rest of these +installation instructions. + + + +2. Building X + + +This document gives detailed instructions for building Release 6: get- +ting it off the distribution medium, configuring, compiling, installing, +running, and updating. + +Release Notes are in xc/RELNOTES.* (various formats) in the distribu- +tion. + +More recent information about newly-discovered problems may be found in +the Frequently Asked Questions posting appearing monthly on the +comp.windows.x newsgroup and xpert mailing list. It is also available +via anonymous FTP on ftp.x.org in the file contrib/faqs/FAQ.Z, or on +your local X mirror site. + + +2.1. Preparing the Site + + +If you are unpacking tar files, you will need about 130 Mb to hold the +xc/ part. To install requires 30-50 Mb assuming you have shared +libraries (80-100 Mb without). You will need an equivalent amount of +extra space to build, since you also need room for all the object files. + +Distributed as tar files, Release 6.3 core is divided into parts as fol- +lows: + + + xc-1.tar contains everything in xc/ that isn't in the other tar files + xc-2.tar contains xc/fonts, xc/doc/specs, xc/util + xc-3.tar contains xc/doc/hardcopy + + +If you define BuildFonts to NO, you only need to unpack xc-1.tar to +build. If you build fonts, then you will also need xc-2.tar to build. + + +2.2. Unpacking the Distribution + + +The distribution normally comes as multiple tar files, either on tape or +across a network, or as a CD-ROM. + + +2.2.1. Unpacking a Compressed FTP Distribution + + +If you have obtained compressed tar files over the network, create a +directory to hold the sources and cd into it: + + mkdir sourcedir + cd sourcedir + +Then for each tar file xc-*.tar.Z, execute this: + + zcat ftp-dir/xc-N.tar.Z | tar xf - + + + +2.2.2. Unpacking a gzipped FTP Distribution + + +If you have obtained gzipped tar files over the network, create a direc- +tory to hold the sources and cd into it: + + mkdir sourcedir + cd sourcedir + +Then for each tar file xc-*.tar.gz, execute this: + + gunzip -c ftp-dir/xc-N.tar.gz | tar xf - + + + +2.2.3. Unpacking a Split Compressed FTP Distribution + + +If you have obtained compressed and split tar files over the network, +create a directory to hold the sources: + + mkdir sourcedir + +Then for each directory xc-*: + + cd ftp-dir/xc-N + cat xc-N.?? | uncompress | (cd sourcedir; tar xf -) + + + +2.2.4. Unpacking the Tape Distribution + + +If you have obtained a tape, create a directory to hold the sources and +untar everything into that directory: + + mkdir sourcedir + cd sourcedir + tar xf tape-device + + + +2.2.5. Using the CD-ROM + + +If you have obtained a CD-ROM, you don't have to do anything to unpack +it. However, you will have to create a symbolic link tree to build X. +See the next section. + +To mount the CD-ROM, see the mount(8) manual page on your system or the +liner notes that came with the CD-ROM. Some systems, e.g., Solaris 2, +can automatically mount the CD-ROM for you. + + +2.3. Apply Patches + + +If there are fixes released that are more recent than your distribution, +apply them now. Follow the instructions at the top of each patch, but +don't do any make commands. See the section "Public Patches" later in +this document. Then continue here. + + +2.4. Symbolic Link Trees + + +If you expect to build the distribution on more than one machine using a +shared source tree, or you are building from CD-ROM, or you just want to +keep the source tree pure, you may want to use the program +xc/config/util/lndir.c to create a symbolic link tree on each build +machine. The links may use an additional 10 megabytes, but it is +cheaper than having multiple copies of the source tree. + +It may be tricky to compile lndir before the distribution is built. If +you have a copy from a previous release, use that. Makefile.ini can be +used for building lndir the first time. You may have to specify +OSFLAGS=-Dsomething to get it to compile. What you would pass as +BOOTSTRAPCFLAGS might work. The command line looks something like this: + + make -f Makefile.ini OSFLAGS=-Dflag + + +To use a symbolic link tree, create a directory for the build, cd to it, +and type this: + + lndir sourcedir + + +where sourcedir is the pathname of the directory where you stored the +sources. All of the build instructions given below should then be done +in the build directory on each machine, rather than in the source direc- +tory. + +xc/config/util/mkshadow/ contains mkshadow, an alternative program to +lndir. + + +2.5. Configuration Parameters + + +Build information for each source directory is in files called +Imakefile. An Imakefile, along with local configuration information in +xc/config/cf/, is used by the program imake to generate a Makefile. + +Most of the configuration work prior to building the release is to set +parameters so that imake will generate correct files. Most of those +parameters are set in xc/config/cf/site.def. You will also need to +check the appropriate vendor-specific .cf file in xc/config/cf/ to make +sure that OSMajorVersion, OSMinorVersion, and OsTeenyVersion are set +correctly for your system. Override them in site.def if necessary. + +The site.def file has two parts, one protected with "#ifdef BeforeVen- +dorCF" and one with "#ifdef AfterVendorCF". The file is actually pro- +cessed twice, once before the .cf file and once after. About the only +thing you need to set in the "before" section is HasGcc2; just about +everything else can be set in the "after" section. + +The sample site.def also has commented out support to include another +file, host.def. This scheme may be useful if you want to set most +parameters site-wide, but some parameters vary from machine to machine. +If you use a symbolic link tree, you can share site.def across all +machines, and give each machine its own copy of host.def. + +The config parameters are listed in xc/config/cf/README, but here are +some of the more common parameters that you may wish to set in site.def. + +ProjectRoot + The destination where X will be installed. This variable needs to + be set before you build, as some programs that read files at run- + time have the installation directory compiled in to them. Assuming + you have set the variable to some value /path, files will be + installed into /path/bin, /path/include/X11, /path/lib, and + /path/man. + +HasGccSet to YES to build with gcc version 1. + +HasGcc2 + Set to YES to build with gcc version 2. Both this option and + HasGcc look for a compiler named gcc, but HasGcc2 will cause the + build to use more features of gcc 2, such as the ability to compile + shared libraries. + +BuildXInputExt + Set to YES to build the X Input Extension. This extension requires + device-dependent support in the X server, which exists only in Xhp + in our implementation. + +BuildPexExt + Set to NO to not build the PEX server extension and fonts. + +DefaultUsrBin + This is a directory where programs will be found even if PATH is + not set in the environment. It is independent of ProjectRoot and + defaults to /usr/bin. It is used, for example, when connecting + from a remote system via rsh. The rstart program installs its + server in this directory. + +InstallServerSetUID + Some systems require the X server to run as root to access the dev- + ices it needs. If you are on such a system and will not be using + xdm, you can set this variable to YES to install the X server + setuid to root. Note that the X server has not been analyzed by + the X Consortium for security in such an installation; talk to your + system manager before setting this variable. + +InstallXdmConfig + By default set to NO, which suppresses installing xdm config files + over existing ones. Leave it set to NO if your site has customized + the files in /usr/X11R6.3/lib/X11/xdm, as many sites do. If you + don't install the new files, merge any changes present in the new + files. + +MotifBC + Causes Xlib and Xt to work around some bugs in older versions of + Motif. Set to YES only if you will be linking with Motif version + 1.1.1, 1.1.2, or 1.1.3. + +GetValuesBC + Setting this variable to YES allows illegal XtGetValues requests + with NULL ArgVal to usually succeed, as R5 did. Some applications + erroneously rely on this behavior. Support for this will be + removed in a future release. + +The following vendor-specific .cf files are in the release but have not +been tested recently and hence probably need changes to work: +apollo.cf, bsd.cf, convex.cf, DGUX.cf, luna.cf, macII.cf, Mips.cf, +moto.cf, Oki.cf, pegasus.cf, x386.cf. Amoeba.cf is known to require +additional patches. + +The file xc/lib/Xdmcp/Wraphelp.c, for XDM-AUTHORIZATION-1, is not +included in this release. + + +2.6. System Build Notes + + +This section contains hints on building X with specific compilers and +operating systems. + +If the build isn't finding things right, make sure you are using a com- +piler for your operating system. For example, a pre-compiled gcc for a +different OS will not have right symbols defined, so imake will not work +correctly. + + +2.6.1. gcc + +gcc version 2 is in regular use at the X Consortium on Sparc platforms. +Set the variable HasGcc2. X will not compile on some systems with gcc +version 2.5, 2.5.1, or 2.5.2 because of an incorrect declaration of mem- +move() in a gcc include file. + +If you are using a gcc version older than 2.7 on Solaris x86, you need +to specify BOOTSTRAPCFLAGS="-Dsun" in the "make World" command. + + +2.6.2. Other GNU tools + +Use of the GNU assembler, as, or linker, ld, is not supported. GNU make +is not supported. + + +2.6.3. SparcWorks 2.0 + + +If you have a non-threaded program and want to debug it with the old +SparcWorks 2.0 dbx, you will need to use the thread stubs library in +xc/util/misc/thr_stubs.c. Compile it as follows: + + cc -c thr_stubs.c + ar cq libthr_stubs.a thr_stubs.o + ranlib libthr_stubs.a + +Install libthr_stubs.a in the same directory with your X libraries +(e.g., /usr/X11R6.3/lib/libthr_stubs.a). Add the following line to +site.def: + + #define ExtraLibraries -lsocket -lnsl $(CDEBUGFLAGS:-g=-lthr_stubs) + +This example uses a make macro substitution; not all make implementa- +tions support this feature. + + +2.6.4. CenterLine C under Solaris 2 + + +If you are using the CenterLine C compiler to compile the distribution +under Solaris 2, place the following line in your site.def: + + #define HasCenterLineC YES + +If clcc is not in your default search path, add this line to site.def: + + #define CcCmd /path/to/your/clcc + + +If you are using CodeCenter 4.0.4 or earlier, the following files +trigger bugs in the clcc optimizer: + + xc/programs/Xserver/cfb16/cfbgetsp.c + xc/programs/Xserver/cfb16/cfbfillsp.c + xc/programs/Xserver/cfb/cfbgetsp.c + + +Thus to build the server, you will have to compile these files by hand +with the -g flag: + + % cd xc/programs/Xserver/cfb16 + % make CDEBUGFLAGS="-g" cfbgetsp.o cfbfillsp.o + % cd ../cfb + % make CDEBUGFLAGS="-g" cfbgetsp.o + +This optimizer bug appears to be fixed in CodeCenter 4.0.6. + + +2.6.5. IBM AIX 4.1.4 + + +On AIX 4.1.4, the file lib/font/Type1/objects.c must be compiled without +optimization (-O) else the X server will exit when Type 1 fonts are +used. + + +2.6.6. SunOS 4 + + +SunOS 4.0 and earlier need BOOTSTRAPCFLAGS=-DNOSTDHDRS because they do +not have unistd.h nor stdlib.h. Do not supply a BOOTSTRAPCFLAGS when +building any SunOS 4.1 version. + + +2.6.7. Microsoft Windows NT + + +All of the base libraries are supported, including multi-threading in +Xlib and Xt, but some of the more complicated applications, specifically +xterm and xdm, are not supported. + +There are also some other rough edges in the implementation, such as +lack of support for non-socket file descriptors as Xt alternate inputs +and not using the registry for configurable parameters like the system +filenames and search paths. + +The Xnest server has been made to run on NT. It requires a real X +server for output still. + + +2.6.8. Omron Luna + + +The Omron Luna platform is no longer supported. The Luna version of the +make program doesn't define the standard macro MAKE, so you must run it +as "make MAKE=make" at top level, e.g., "make MAKE=make World". + + +2.7. The Build + + +On NT, type + + nmake World.Win32 > world.log + +On other systems, find the BootstrapCFlags line, if any, in the vendor- +specific .cf file. If there isn't one, type + + % make World >& world.log + +otherwise type + + % make World BOOTSTRAPCFLAGS="value" >& world.log + + +You can call the output file something other than "world.log", but do +not call it "make.log" because files with this name are automatically +deleted during the "cleaning" stage of the build. + +Because the build can take several hours to complete, you will probably +want to run it in the background and keep a watch on the output. For +example: + + % make World >& world.log & + % tail -f world.log + + +If something goes wrong, the easiest thing is to just start over (typing +"make World" again) once you have corrected the problem. + + +2.8. Installing X + + +If everything is built successfully, you can install the software by +typing the following as root: + + % make install >& install.log + + +Again, you might want to run this in the background and use tail to +watch the progress. + +You can install the manual pages by typing the following as root: + + % make install.man >& man.log + + + +2.8.1. System Installation Notes + + +This section contains hints on installing and using X with specific com- +pilers and operating systems. + + +2.8.1.1. The X Server on AIX 4 + + +For IBM's AIX 4, you need to make sure the LFT device is associated with +the correct graphics adapter. It's a one-time setup that does not hap- +pen automatically, even if there's only one graphics adapter in the sys- +tem. To configure the LFT device properly, become root and start SMIT. +Go to the "Devices" category, choose "LFT", then "Displays", then "Move +the LFT to Another Display". + +Select "Both" for when the change should take effect, then select the +display adapter where you want to run the X server. Confirm the changes +and exit SMIT; from now on, you should be able to run the server just +fine. + +To run Xibm from xdm, you must provide the "-force" flag on the server +command line in the Xservers file. + + +2.9. Shared Libraries + + +The version number of some of the the shared libraries has been changed. +On SunOS 4, which supports minor version numbers for shared libraries, +programs linked with the R6 libraries will use the new libraries with no +special action required. On other platforms you have the following +choices: + +1. Keep the old versions of the libraries around. + +2. Relink all applications with the new libraries. + +3. Create a link from the old name to the new name. + + For example, to have programs that were linked against + libX11.so.6.0 use libX11.so.6.3, make this link: + + ln -s libX11.so.6.3 libX11.so.6.0 + + + +2.10. Setting Up xterm + + +If your /etc/termcap and /usr/lib/terminfo databases do not have correct +entries for xterm, use the sample entries provided in the directory +xc/programs/xterm/. System V users may need to compile and install the +terminfo entry with the tic utility. + +Since each xterm will need a separate pseudoterminal, you need a reason- +able number of them for normal execution. You probably will want at +least 32 on a small, multiuser system. On most systems, each pty has +two devices, a master and a slave, which are usually named +/dev/tty[pqrstu][0-f] and /dev/pty[pqrstu][0-f]. If you don't have at +least the "p" and "q" sets configured (try typing "ls /dev/?ty??"), you +should have your system administrator add them. This is commonly done +by running the MAKEDEV script in the /dev directory with appropriate ar- +guments. + + +2.11. Starting Servers at System Boot + + +The xfs and xdm programs are designed to be run automatically at system +startup. Please read the manual pages for details on setting up confi- +guration files; reasonable sample files are in xc/programs/xdm/config/ +and xc/programs/xfs/. + + +2.11.1. On BSD-based systems using /etc/rc + + +If your system uses an /etc/rc file at boot time, you can usually enable +these programs by placing the following at or near the end of the file: + + if [ -f /usr/X11R6.3/bin/xfs ]; then + /usr/X11R6.3/bin/xfs & echo -n ' xfs' + fi + + if [ -f /usr/X11R6.3/bin/xdm ]; then + /usr/X11R6.3/bin/xdm; echo -n ' xdm' + fi + + +Since xfs can serve fonts over the network, you do not need to run a +font server on every machine with an X display. You should start xfs +before xdm, since xdm may start an X server which is a client of the +font server. + +The examples here use /usr/X11R6.3/bin, but if you have installed into a +different directory by setting (or unsetting) ProjectRoot then you need +to substitute the correct directory. + +If you are unsure about how system boot works, or if your system does +not use /etc/rc, consult your system administrator for help. + + +2.11.2. On SystemV-based systems + + +There are two ways you can get On systems with a /etc/inittab file, you +can edit this file to add the lines + + xfs:3:once:/usr/X11R6.3/bin/xfs + xdm:3:once:/usr/X11R6.3/bin/xdm + + +On some systems, you can edit a file in /etc/init.d to run the X Consor- +tium xdm instead of the vendor's product xdm. On Sony this file is +/etc/init.d/consxdm. On IRIX edit /etc/init.d/xdm. + + +2.12. Using OPEN LOOK applications + + +You can use the X11R6 Xsun server with OPEN LOOK applications, but you +must pass the -swapLkeys flag to the server on startup, or the OPEN LOOK +Undo, Copy, Paste, Find, and Cut keys may not work correctly. For exam- +ple, to run Sun's OpenWindows 3.3 desktop environment with an X11R6 +server, use the command: + + % openwin -server /usr/X11R6.3/bin/Xsun -swapLkeys + + +The keysyms reported by keys on the numeric keypad have also changed +since X11R5; if you find that OpenWindows applications do not respond to +keypad keys and cursor control keys when using the R6 server, you can +remap the keypad to generate R5 style keysyms using the following xmod- +map commands: + + keysym Pause = F21 + keysym Print = F22 + keysym Break = F23 + keysym KP_Equal = F24 + keysym KP_Divide = F25 + keysym KP_Multiply = F26 + keysym KP_Home = F27 + keysym KP_Up = Up + keysym KP_Prior = F29 + keysym KP_Left = Left + keycode 100 = F31 + keysym KP_Right = Right + keysym KP_End = F33 + keysym KP_Down = Down + keysym KP_Next = F35 + keysym KP_Insert = Insert + keysym KP_Delete = Delete + + + +2.13. Rebuilding after Patches + + +You shouldn't need this right away, but eventually you are probably go- +ing to make changes to the sources, for example by applying any public +patches that may be released. + +Each patch comes with explicit instructions at the top of it saying what +to do. Thus the procedure here is only an overview of the types of com- +mands that might be necessary to rebuild X after changing it. + +If you are building from CD-ROM, apply the patches to the symbolic link +tree. The links to changed files will be replaced with local files con- +taining the new contents. + +If only source files are changed, you should be able to rebuild just by +going to the xc directory in your build tree and typing: + + % make >& make.log + + +If configuration files are changed, the safest thing to do is type: + + % make Everything >& every.log + + +"Everything" is similar to "World" in that it rebuilds every Makefile, +but unlike "World" it does not delete the existing objects, libraries, +and executables, and only rebuilds what is out of date. + + +2.14. Formatting the Documentation + + +The PostScript files in xc/doc/hardcopy can be generated from the +sources in xc/doc/specs. Most of the documentation is in troff using +the -ms macros. The easiest way to format it is to use the Imakefiles +provided. + +Set the name of your local troff program by setting the variable +TroffCmd in xc/config/cf/site.def. Then build the Makefiles: + + cd xc/doc + make SUBDIRS=specs Makefiles + + +Finally, go to the directory you are interested in and type "make" +there. This command will generate .PS files. You can also generate +text files by specifying the document name with a .txt extension as a +make target, e.g., "make icccm.txt". + + diff --git a/Xserver/Imakefile b/Xserver/Imakefile new file mode 100644 index 0000000..35dbfe4 --- /dev/null +++ b/Xserver/Imakefile @@ -0,0 +1,203 @@ +XCOMM $XConsortium: Imakefile /main/137 1996/10/08 07:38:14 swick $ +XCOMM $XFree86: xc/Imakefile,v 3.11.2.2 1998/02/28 04:47:00 dawes Exp $ +#define IHaveSubdirs +#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)" + +RELEASE = "Release 6.3" +#ifndef OSName +#define OSName Unknown Operating System! +#endif + +#if !BuildServersOnly +#if BuildFonts + FONTSDIR = fonts +#endif +#ifndef Win32Architecture + DOCSDIR = doc + NLSSUBDIR = nls +#endif +#endif + + SUBDIRS = include config lib $(NLSSUBDIR) \ + programs $(FONTSDIR) $(DOCSDIR) + LNINSTALLDIRS = lib + +#if HasParallelMake +#ifdef ParallelDefines + PARALLELOPTS = ParallelDefines +#endif +#endif + +MakeSubdirs($(SUBDIRS)) + +MakeLintSubdirs($(LNINSTALLDIRS),install.ln,install.ln) + +MakeLintSubdirs($(LNINSTALLDIRS),external.ln,lintlib) + +DependSubdirs($(SUBDIRS)) + +#define IHaveSpecialMakefileTarget + +#ifndef Win32Architecture +#ifndef OS2Architecture +VerifyOS:: + @echo "" + @echo Building on OSName "("OSMajorVersion"."OSMinorVersion"."OSTeenyVersion")." + @echo "" +#ifdef LinuxArchitecture + @echo libc version LinuxCLibMajorVersion"."LinuxCLibMinorVersion"."LinuxCLibTeenyVersion + @echo "" +#endif + +includes:: + MakeDir($(BUILDINCDIR)) + MakeDir($(BUILDBINDIR)) + +XCOMM +XCOMM Watch out!!! Make sure you do make includes after removing X11.... +XCOMM +clean:: + $(RM) -r $(BUILDINCDIR) + $(RM) -r $(BUILDLIBDIR) + $(RM) -r $(BUILDBINDIR) + + MAKE_OPTS = -f xmakefile + +World:: + $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(PARALLELOPTS) all + +Everything:: + @echo "" + @echo Rebuilding $(RELEASE) of the X Window System. + @echo "" + @date + @echo "" + cd $(IMAKESRC) && if [ -f Makefile ]; then \ + $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \ + else \ + $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \ + fi + -$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak + $(MAKE) $(MFLAGS) xmakefile + $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles + $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes + $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend + $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS) + @echo "" + @date + @echo "" + @echo Rebuild of $(RELEASE) of the X Window System complete. + @echo "" + +XCOMM clean out link tree looking for stuff that should get checked in +dangerous_strip_clean:: + $(MAKE) -k clean + find . -type l -exec rm {} \; + find . \( \! \( -type d -o -name Makefile \) \) -print + +#else /* OS2Architecture */ +VerifyOS:: + @echo : + @echo Building on OSName. + @echo : + +includes:: + MakeDir($(subst /,\,$(BUILDINCDIR))) + +XCOMM +XCOMM Watch out!!! Make sure you do make includes after removing X11.... +XCOMM +clean:: + $(RM) -r $(BUILDINCDIR) + $(RM) -r $(BUILDLIBDIR) + +Everything:: + @echo : + @echo Building $(RELEASE) of the X Window System on OS/2 + @echo : + @echo : + \indir $(IMAKESRC) $(MAKE) $(MFLAGS) SHELL= -f Makefile.ini BOOTSTRAPCFLAGS=-Zexe + if exist Makefile.bak del Makefile.bak + if exist MAkefile ren Makefile Makefile.bak + $(MAKE) $(MFLAGS) -f Makefile.bak Makefile + $(MAKE) $(MFLAGS) SHELL= VerifyOS + $(MAKE) $(MFLAGS) SHELL= Makefiles + $(MAKE) $(MFLAGS) SHELL= clean + $(MAKE) $(MFLAGS) SHELL= includes + $(MAKE) $(MFLAGS) SHELL= depend + $(MAKE) $(MFLAGS) + @echo : + @echo : + @echo Rebuild of $(RELEASE) of the X Window System complete. + @echo : + +#ifdef ProjectRoot +install:: + MakeDir($(subst /,\,$(PROJECTROOT))) +#endif + +install:: + MakeDir($(subst /,\,$(INCROOT))) + MakeDir($(subst /,\,$(USRLIBDIR))) + MakeDir($(subst /,\,$(LIBDIR))) + +#endif +#else /* not Win32Architecture else */ +VerifyOS:: + @echo : + @echo Building on OSName. + @echo : + +includes:: + MakeDir($(BUILDINCDIR:/=\)) + +XCOMM +XCOMM Watch out!!! Make sure you do make includes after removing X11.... +XCOMM +clean:: + RmTreeCmd $(BUILDINCDIR:/=\) + RmTreeCmd $(BUILDLIBDIR:/=\) + +Everything:: + @echo : + @echo Rebuilding $(RELEASE) of the X Window System. + @echo : + @echo : + cd $(IMAKESRC) + $(MAKE) $(MFLAGS) -f Makefile.ini imake.exe + cd ..\.. + RMoveToBakFile(xmakefile) + $(MAKE) $(MFLAGS) xmakefile + $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles + $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes + $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend + $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS) + @echo : + @echo : + @echo Rebuild of $(RELEASE) of the X Window System complete. + @echo : + +#ifdef ProjectRoot +install:: + MakeDir($(PROJECTROOT:/=\)) +#endif + +install:: + MakeDir($(INCROOT:/=\)) + MakeDir($(USRLIBDIR:/=\)) + MakeDir($(LIBDIR:/=\)) + +#endif /* not Win32Architecture else */ + +XCOMM special target to determine if the xmakefile exists. +XCOMM Works on both Unix and NMAKE.EXE +xmakefile-exists:: + + +#ifndef MakeManKeywords +#define MakeManKeywords YES /* install.man rebuilds "man -k" database? */ +#endif + +#undef BootstrapCleanSubdirs +#define BootstrapCleanSubdirs BOOTSTRAPSUBDIRS="$(BOOTSTRAPSUBDIRS)" +BOOTSTRAPSUBDIRS = imake makedepend diff --git a/Xserver/LABEL b/Xserver/LABEL new file mode 100644 index 0000000..a881e68 --- /dev/null +++ b/Xserver/LABEL @@ -0,0 +1,128 @@ + X Window System, Version 11 + Release 6.3 + + Portions Copyright by: + + X Consortium + + and + + Mark Adler + Adobe Systems Incorporated + AGE Logic, Inc. + Gerrit Jan Akkerman + Corin Anderson + Doug Anson + Apollo Computer Inc. + Ares Software Corp. + ATI + AT&T, Inc. + Robert V. Baron + David Bateman + Bigelow & Holmes + Bitstream, Inc. + Jon Block + Adam de Boor + Manfred Brands + Richard Burdick + Cognition Corp. + Simon P. Cooper + Regis Cridlig + Robin Cutshaw + Daniver Limited + Daewoo Electronics Co.,Ltd. + Data General Corporation + David Dawes + Jorge Delgado + Digital Equipment Corporation + Evans & Sutherland Computer Corporation + Rickard E. Faith + Erik Fortune + Free Software Foundation, Inc. + Joseph Friedman + Fuji Xerox Co., Ltd. + Fujitsu Limited + Fujitsu Open Systems Solutions, Inc. + Jean-loup Gailly + Tiago Gons + Pascal Haible + Harm Hanemaayer + Randy Hendry + Matthieu Herrb + Hewlett-Packard Company + Hitachi, Ltd. + David Holland + Philip Homburg + Alan Hourihane + IBM Corporation + The Institute of Software, Academia Sinica + INTERACTIVE Systems Corporation + Kaleb S. Keithley + Jeff Kirk + Marc Aurele La France + Glenn G. Lai + Scott Laird + Thomas G. Lane + Steven Lang + Harry Langenbacher + Patrick Lecoanet + Sam Leffler + Frederic Lepied + Lexmark International, Inc. + Sebastien Marineau + Michael P. Marking + Kevin E. Martin + Davor Matic + David McCullough + David McKay + MIPS Computer Systems, Inc. + Joe Moss + Thomas Mueller + Rich Murphey + NCR Corporation, Inc. + Netscape Communications + Network Computing Devices, Inc. + Novell, Inc. + NTT Software Corporation + Number Nine Computer Corp. + NVIDIA Corp. + Erik Nygren + Hans Oey + Kazuyuki (ikko-) Okamoto + Oki Technosystems Laboratory, Inc. + OMRON Corporation + Open Software Foundation + Panacea Inc. + Prentice Hall + Quarterdeck Office Systems + Regents of the University of California + Bill Reynolds + Thomas Roell + The Santa Cruz Operation, Inc. + Dale Schumacher + Paolo Severini + ShoGraphics, Inc. + Silicon Graphics Computer Systems, Inc. + Sony Corporation + SRI + Craig Struble + Sun Microsystems, Inc. + SunSoft, Inc. + Tektronix, Inc. + Finn Thoegersen + Jon Tombs + Linus Torvalds + TOSHIBA Corp. + Peter Trattler + James Tsillas + UniSoft Group Limited + UNIX System Laboratories, Inc. + Holger Veit + Vrije Universiteit + Larry Wall + David E. Wexelblat + Thomas Wolfram + Henry A. Worth + Wyse Technology, Inc. + The XFree86 Project, Inc. + Orest Zborowski diff --git a/Xserver/Makefile b/Xserver/Makefile new file mode 100644 index 0000000..35bbe68 --- /dev/null +++ b/Xserver/Makefile @@ -0,0 +1,193 @@ +# $XConsortium: Makefile /main/36 1996/11/13 14:42:50 lehors $ +# $XFree86: xc/Makefile,v 3.6.2.2 1998/02/07 00:44:32 dawes Exp $ + +# Luna users will need to either run make as "make MAKE=make" +# or add "MAKE = make" to this file. + +RELEASE = "Release 6.3" +SHELL = /bin/sh +RM = rm -f +MV = mv +WORLDOPTS = -k +WIN32WORLDOPTS = -i +TOP = . +CURRENT_DIR = . +CONFIGSRC = $(TOP)/config +IMAKESRC = $(CONFIGSRC)/imake +DEPENDSRC = $(CONFIGSRC)/makedepend +DEPENDTOP = ../.. +IMAKETOP = ../.. +IRULESRC = $(CONFIGSRC)/cf +IMAKE = imake +IMAKE_CMD = $(IMAKE) -I$(IRULESRC) $(IMAKE_DEFINES) +MAKE_OPTS = -f xmakefile +MAKE_CMD = $(MAKE) $(MAKE_OPTS) +FLAGS = $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)" + +all: + @$(MAKE_CMD) xmakefile-exists || $(MAKE) all-initial + @$(MAKE_CMD) $@ + +all-initial: + @echo Please use make World, or on NT use nmake World.Win32. + @echo Check the configuration parameters in the $(IRULESRC) directory, + @echo and pass BOOTSTRAPCFLAGS if necessary. + @echo Read the release notes carefully before proceeding. + @echo Do not name your log file make.log or it will be deleted. + +World: + @echo "" + @echo Building $(RELEASE) of the X Window System. + @echo "" + @case "x$(BOOTSTRAPCFLAGS)" in x) \ + echo I hope you checked the configuration parameters in $(IRULESRC) ; \ + echo to see if you need to pass BOOTSTRAPCFLAGS. ; \ + echo "" ; \ + ;; esac; + @date + @echo "" + @if [ ! -f $(IRULESRC)/host.def ]; then \ + if [ ! -f $(TOP)/lib/Xt/Imakefile ]; then \ + echo "#define BuildServersOnly YES" > $(IRULESRC)/host.def; \ + else \ + if [ ! -f $(TOP)/fonts/Imakefile ]; then \ + echo "#define BuildFonts NO" > $(IRULESRC)/host.def; \ + else \ + echo "" > $(IRULESRC)/host.def; \ + fi \ + fi \ + fi + cd $(IMAKESRC) && $(MAKE) $(FLAGS) clean + $(MAKE) $(MFLAGS) Makefile.boot + $(MAKE_CMD) $(MFLAGS) VerifyOS + $(MAKE_CMD) $(MFLAGS) Makefiles + $(MAKE_CMD) $(MFLAGS) clean BOOTSTRAPSUBDIRS= + $(MAKE_CMD) $(MFLAGS) includes + $(MAKE_CMD) $(MFLAGS) depend + $(MAKE_CMD) $(MFLAGS) $(WORLDOPTS) World + @echo "" + @date + @echo "" + @echo Full build of $(RELEASE) of the X Window System complete. + @echo "" + +.PRECIOUS: Makefile + +# This is just a sequence of bootstrapping steps we have to do. +# The steps are listed as separate targets so clearmake can wink in +# the Makefile.proto files. +Makefile.boot: imake.proto $(DEPENDSRC)/Makefile.proto depend.bootstrap $(IMAKESRC)/Makefile.proto imake.bootstrap + +imake.proto: + cd $(IMAKESRC) && $(MAKE) $(FLAGS) + $(RM) $(DEPENDSRC)/Makefile.proto + +$(DEPENDSRC)/Makefile.proto: + $(IMAKE_CMD) -s $(DEPENDSRC)/Makefile.proto -f $(DEPENDSRC)/Imakefile -DTOPDIR=$(DEPENDTOP) -DCURDIR=$(DEPENDSRC) + +depend.bootstrap: + cd $(DEPENDSRC) && $(RM) -r Makefile Makefile.dep makedepend *.o bootstrap + cd $(DEPENDSRC) && $(MAKE) -f Makefile.proto bootstrap + +$(IMAKESRC)/Makefile.proto: + $(IMAKE_CMD) -s $(IMAKESRC)/Makefile.proto -f $(IMAKESRC)/Imakefile -DTOPDIR=$(IMAKETOP) -DCURDIR=$(IMAKESRC) + +imake.bootstrap: + cd $(IMAKESRC) && $(MAKE) -f Makefile.proto bootstrapdepend + cd $(IMAKESRC) && $(MAKE) $(FLAGS) bootstrap + cd $(IMAKESRC) && $(MAKE) -f Makefile.proto all + -@if [ -f xmakefile ]; then set -x; \ + $(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak; \ + else exit 0; fi + $(MAKE) $(MFLAGS) xmakefile + +Makefile:: + $(MAKE) $(MFLAGS) xmakefile + +xmakefile: Imakefile + $(IMAKE_CMD) -s xmakefile -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) + +World.Win32: + @echo : + @echo Building $(RELEASE) of the X Window System. + @echo : + @echo : + -@if not exist $(IRULESRC)\host.def echo > $(IRULESRC)\host.def + cd $(IMAKESRC) + $(MAKE) -f Makefile.ini clean.Win32 + $(MAKE) -f Makefile.ini imake.exe + cd ..\.. + -if exist xmakefile.bak del xmakefile.bak + -if exist xmakefile ren xmakefile xmakefile.bak + $(IMAKE:/=\) -s xmakefile -I$(IRULESRC) $(IMAKE_DEFINES) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) + $(MAKE_CMD) $(MFLAGS) VerifyOS + $(MAKE_CMD) $(MFLAGS) Makefiles + $(MAKE_CMD) $(MFLAGS) clean + cd $(CONFIGSRC)\util + $(MAKE) mkdirhier.exe + cd ..\.. + $(MAKE_CMD) $(MFLAGS) includes + $(MAKE_CMD) $(MFLAGS) depend + $(MAKE_CMD) $(MFLAGS) $(WIN32WORLDOPTS) + @echo : + @echo : + @echo Full build of $(RELEASE) of the X Window System complete. + @echo : + +World.OS2: + @echo : + @echo Building $(RELEASE) of the X Window System on OS/2. + @echo : + @echo : + -@if not exist $(IRULESRC)\host.def echo > $(IRULESRC)\host.def + \indir $(IMAKESRC) $(MAKE) SHELL= -f Makefile.ini clean.os2 + \indir $(IMAKESRC) $(MAKE) SHELL= CC=gcc -f Makefile.ini imake.os2 + -if exist Makefile.bak del Makefile.bak + -if exist Makefile ren Makefile Makefile.bak + $(subst /,\,$(IMAKE)) -I$(IRULESRC) $(IMAKE_DEFINES) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) + $(MAKE) $(MFLAGS) VerifyOS + $(MAKE) $(MFLAGS) Makefiles + $(MAKE) $(MFLAGS) clean + $(MAKE) $(MFLAGS) includes + $(MAKE) $(MFLAGS) depend + $(MAKE) $(MFLAGS) + @echo : + @echo : + @echo Full build of $(RELEASE) of the X Window System complete. + @echo : + +# don't allow any default rules in this Makefile +.SUFFIXES: +# quiet "make" programs that display a message if suffix list empty +.SUFFIXES: .Dummy + +# a copy of every rule that might be invoked at top level + +clean: + $(MAKE_CMD) $@ +dangerous_strip_clean: + $(MAKE_CMD) $@ +depend: + $(MAKE_CMD) $@ +Everything: + $(MAKE_CMD) $@ +external.ln: + $(MAKE_CMD) $@ +includes: + $(MAKE_CMD) $@ +install.linkkit: + $(MAKE_CMD) $@ +install.ln: + $(MAKE_CMD) $@ +install.man: + $(MAKE_CMD) $@ +install: + $(MAKE_CMD) $@ +Makefiles: + $(MAKE_CMD) $@ +man_keywords: + $(MAKE_CMD) $@ +tags: + $(MAKE_CMD) $@ +VerifyOS: + $(MAKE_CMD) $@ diff --git a/Xserver/README b/Xserver/README new file mode 100644 index 0000000..d434942 --- /dev/null +++ b/Xserver/README @@ -0,0 +1,23 @@ +======================= +Xvnc - the VNC X server +======================= + +This is the top level directory for Xvnc, the VNC X server (or the X VNC +server, depending on how you look at it). + +It is based on the XFree86 3.3.2 "server only" distribution, which in turn is +based on the X11R6.3 distribution from the X consortium. + +To build Xvnc, simply do "make World" in this directory (make sure you have run +./configure in the directory above this one first - this generates the file +config/cf/vnclibs.def which is needed for the build). If the build is +successful, the binary will be left in programs/Xserver. + +If you have trouble building you may need to play around with the imake +configuration files in the directory config/cf. Read the X consortium files +RELNOTES.TXT and INSTALL.TXT. Also see the file config/cf/vnc.def for +information specific to Xvnc. + +The code specific to the VNC X server is in programs/Xserver/hw/vnc. The rest +of the code is a cut-down version of the standard XFree86 distribution without +many of the later X extensions or hardware-specific code. diff --git a/Xserver/RELNOTES.PS b/Xserver/RELNOTES.PS new file mode 100644 index 0000000..df6bf85 --- /dev/null +++ b/Xserver/RELNOTES.PS @@ -0,0 +1,1732 @@ +%!PS-Adobe-3.0 +%%Creator: groff version 1.09 +%%CreationDate: Sun Dec 22 21:51:06 1996 +%%DocumentNeededResources: font Times-Bold +%%+ font Times-Italic +%%+ font Times-Roman +%%+ font Courier +%%DocumentSuppliedResources: procset grops 1.09 0 +%%Pages: 24 +%%PageOrder: Ascend +%%Orientation: Portrait +%%EndComments +%%BeginProlog +%%BeginResource: procset grops 1.09 0 +/setpacking where{ +pop +currentpacking +true setpacking +}if +/grops 120 dict dup begin +/SC 32 def +/A/show load def +/B{0 SC 3 -1 roll widthshow}bind def +/C{0 exch ashow}bind def +/D{0 exch 0 SC 5 2 roll awidthshow}bind def +/E{0 rmoveto show}bind def +/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def +/G{0 rmoveto 0 exch ashow}bind def +/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/I{0 exch rmoveto show}bind def +/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def +/K{0 exch rmoveto 0 exch ashow}bind def +/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/M{rmoveto show}bind def +/N{rmoveto 0 SC 3 -1 roll widthshow}bind def +/O{rmoveto 0 exch ashow}bind def +/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/Q{moveto show}bind def +/R{moveto 0 SC 3 -1 roll widthshow}bind def +/S{moveto 0 exch ashow}bind def +/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def +/SF{ +findfont exch +[exch dup 0 exch 0 exch neg 0 0]makefont +dup setfont +[exch/setfont cvx]cvx bind def +}bind def +/MF{ +findfont +[5 2 roll +0 3 1 roll +neg 0 0]makefont +dup setfont +[exch/setfont cvx]cvx bind def +}bind def +/level0 0 def +/RES 0 def +/PL 0 def +/LS 0 def +/PLG{ +gsave newpath clippath pathbbox grestore +exch pop add exch pop +}bind def +/BP{ +/level0 save def +1 setlinecap +1 setlinejoin +72 RES div dup scale +LS{ +90 rotate +}{ +0 PL translate +}ifelse +1 -1 scale +}bind def +/EP{ +level0 restore +showpage +}bind def +/DA{ +newpath arcn stroke +}bind def +/SN{ +transform +.25 sub exch .25 sub exch +round .25 add exch round .25 add exch +itransform +}bind def +/DL{ +SN +moveto +SN +lineto stroke +}bind def +/DC{ +newpath 0 360 arc closepath +}bind def +/TM matrix def +/DE{ +TM currentmatrix pop +translate scale newpath 0 0 .5 0 360 arc closepath +TM setmatrix +}bind def +/RC/rcurveto load def +/RL/rlineto load def +/ST/stroke load def +/MT/moveto load def +/CL/closepath load def +/FL{ +currentgray exch setgray fill setgray +}bind def +/BL/fill load def +/LW/setlinewidth load def +/RE{ +findfont +dup maxlength 1 index/FontName known not{1 add}if dict begin +{ +1 index/FID ne{def}{ pop pop}ifelse +}forall +/Encoding exch def +dup/FontName exch def +currentdict end definefont pop +}bind def +/DEFS 0 def +/EBEGIN{ +moveto +DEFS begin +}bind def +/EEND/end load def +/CNT 0 def +/level1 0 def +/PBEGIN{ +/level1 save def +translate +div 3 1 roll div exch scale +neg exch neg exch translate +0 setgray +0 setlinecap +1 setlinewidth +0 setlinejoin +10 setmiterlimit +[] 0 setdash +/setstrokeadjust where{ +pop +false setstrokeadjust +}if +/setoverprint where{ +pop +false setoverprint +}if +newpath +/CNT countdictstack def +userdict begin +/showpage{} def +}bind def +/PEND{ +clear +countdictstack CNT sub{end}repeat +level1 restore +}bind def +end def +/setpacking where{ +pop +setpacking +}if +%%EndResource +%%IncludeResource: font Times-Bold +%%IncludeResource: font Times-Italic +%%IncludeResource: font Times-Roman +%%IncludeResource: font Courier +grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 +def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron +/scaron/zcaron/Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent +/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen +/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon +/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O +/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex +/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y +/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft +/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl +/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut +/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash +/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen +/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft +/logicalnot/minus/registered/macron/degree/plusminus/twosuperior +/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior +/ordmasculine/guilsinglright/onequarter/onehalf/threequarters +/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE +/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex +/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis +/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn +/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla +/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis +/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash +/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def +/Courier@0 ENC0/Courier RE/Times-Roman@0 ENC0/Times-Roman RE +/Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE +%%EndProlog +%%Page: title 1 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 15/Times-Bold@0 SF 3.75(XW)209.67 123 S(indo)-4.02 E 3.75(wS)-.15 G +(ystem, V)-3.75 E(ersion 11)-1.5 E(Release 6.3)270.592 138 Q/F1 14 +/Times-Bold@0 SF(Release Notes)264.987 168 Q/F2 11/Times-Italic@0 SF +2.75(XC)264.139 264 S(onsortium, Inc.)-2.75 E/F3 11/Times-Roman@0 SF +(December 23, 1996)262.775 354 Q EP +%%Page: copyr 2 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF(Cop)72 192 Q(yright \251 1996 X Consortium)-.11 +E/F1 9/Times-Roman@0 SF(Permission is hereby granted, free of char)72 +206.6 Q(ge, to an)-.162 E 2.25(yp)-.135 G(erson obtaining a cop)-2.25 E +2.25(yo)-.09 G 2.25(ft)-2.25 G(his softw)-2.25 E +(are and associated documentation \214les)-.09 E(\(the `)72 217.6 Q +(`Softw)-.75 E(are')-.09 E('\), to deal in the Softw)-.75 E(are without\ + restriction, including without limitation the rights to use, cop)-.09 E +1.17 -.585(y, m)-.09 H(odify).585 E 2.25(,m)-.585 G(er)-2.25 E(ge,)-.162 +E(publish, distrib)72 228.6 Q +(ute, sublicense, and/or sell copies of the Softw)-.18 E +(are, and to permit persons to whom the Softw)-.09 E +(are is furnished to do)-.09 E(so, subject to the follo)72 239.6 Q +(wing conditions:)-.225 E(The abo)72 254.2 Q .27 -.135(ve c)-.135 H(op) +.135 E(yright notice and this permission notice shall be included in al\ +l copies or substantial portions of the Softw)-.09 E(are.)-.09 E +(THE SOFTW)72 268.8 Q(ARE IS PR)-1.08 E -.45(OV)-.36 G(IDED `).45 E -.72 +(`A)-.75 G 2.25(SI).72 G(S')-2.25 E(', WITHOUT W)-.75 E +(ARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUD-)-1.08 E(ING B)72 279.8 +Q(UT NO)-.09 E 2.25(TL)-.36 G(IMITED T)-2.25 E 2.25(OT)-.162 G(HE W) +-2.25 E(ARRANTIES OF MERCHANT)-1.08 E(ABILITY)-.837 E 2.25(,F)-1.161 G +(ITNESS FOR A P)-2.25 E(AR)-.828 E(TICULAR PURPOSE)-.54 E +(AND NONINFRINGEMENT)72 290.8 Q 4.5(.I)-.666 G 2.25(NN)-4.5 G 2.25(OE) +-2.25 G(VENT SHALL THE X CONSOR)-2.25 E(TIUM BE LIABLE FOR ANY CLAIM, D) +-.54 E(AMA)-.36 E(GES)-.36 E(OR O)72 301.8 Q(THER LIABILITY)-.36 E 2.25 +(,W)-1.161 G(HETHER IN AN A)-2.25 E(CTION OF CONTRA)-.36 E(CT)-.36 E +2.25(,T)-.666 G(OR)-2.412 E 2.25(TO)-.54 G 2.25(RO)-2.25 G(THER)-2.61 E +(WISE, ARISING FR)-.495 E(OM, OUT OF)-.36 E +(OR IN CONNECTION WITH THE SOFTW)72 312.8 Q(ARE OR THE USE OR O)-1.08 E +(THER DEALINGS IN THE SOFTW)-.36 E(ARE.)-1.08 E(Except as contained in \ +this notice, the name of the X Consortium shall not be used in adv)72 +327.4 Q(ertising or otherwise to promote the)-.135 E +(sale, use or other dealings in this Softw)72 338.4 Q +(are without prior written authorization from the X Consortium.)-.09 E +/F2 9/Times-Italic@0 SF 2.25(XW)72 353 S(indow System)-2.745 E F1 +(is a trademark of X Consortium, Inc.)2.25 E EP +%%Page: i 3 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 13/Times-Bold@0 SF -1.196(Ta)257.126 85 S(ble of Contents)1.196 E/F1 +11/Times-Roman@0 SF(1. What Is Release 6.3)72 127.6 Q -2.75 11 +(......................... 1)8.772 H(1.1. Ov)72 144.2 Q(ervie)-.165 E +2.75(wo)-.275 G 2.75(ft)-2.75 G(he X Consortium Release)-2.75 E -2.75 11 +(.................. 1)11.357 H(1.2. Supported Systems)72 160.8 Q -2.75 +11(......................... 2)3.855 H(1.2.1. Supported Display De)72 +177.4 Q 12.402(vices .)-.275 F -2.75 11(.................... 2)11 H +(1.3. The XC T)72 194 Q .599(ree .)-.385 F -2.75 11 +(.......................... 2)11 H(1.4. X Re)72 210.6 Q 10.444(gistry .) +-.165 F -2.75 11(.......................... 3)11 H +(1.5. Extensions Supported)72 227.2 Q -2.75 11 +(........................ 3)6 H(1.6. Implementation P)72 243.8 Q 5.879 +(arameters .)-.165 F -2.75 11(..................... 3)11 H +(2. What is Unchanged in Release 6.3)72 260.4 Q -2.75 11 +(.................... 5)13.975 H(3. What Is Ne)72 277 Q 2.75(wi)-.275 G +2.75(nR)-2.75 G(elease 6.3)-2.75 E -2.75 11(...................... 5) +15.471 H(3.1. OS Support)72 293.6 Q -2.75 11 +(........................... 5)9.355 H(3.2. Ne)72 310.2 Q 2.75(wS)-.275 +G 5.373(tandards .)-2.75 F -2.75 11(......................... 6)11 H +(3.3. Lo)72 326.8 Q 2.75(wB)-.275 G(andwidth X Extension)-2.75 E -2.75 +11(..................... 6)15.141 H(3.4. RX: X Remote eXecution)72 343.4 +Q -2.75 11(...................... 6)15.79 H(3.4.1. Preparing Y)72 360 Q +(our W)-1.21 E(eb Serv)-.88 E 11.654(er .)-.165 F -2.75 11 +(.................... 7)11 H(3.4.2. The RX Helper Program)72 376.6 Q +-2.75 11(...................... 8)13.051 H(3.4.3. The RX Netscape Na)72 +393.2 Q(vig)-.22 E(ator Plug-in)-.055 E -2.75 11(................... 8) +2.942 H(3.4.4. T)72 409.8 Q(rying Embedding W)-.385 E(ith an Old X Serv) +-.44 E 5.791(er .)-.165 F -2.75 11(................ 9)11 H +(3.4.5. Setting Up Y)72 426.4 Q(our Own Applications T)-1.21 E 2.75(oR) +-.88 G(un Ov)-2.75 E(er The W)-.165 E 13.139(eb .)-.88 F -2.75 11 +(.......... 9)11 H(3.5. Security Extension)72 443 Q -8.25 11 +(......................... 1)5.087 H(0)-11 E +(3.5.1. Untrusted Application Beha)72 459.6 Q 5.318(vior .)-.22 F -8.25 +11(................... 1)11 H(0)-11 E(3.5.1.1. Beha)72 476.2 Q +(viors That Are Implementation-Dependent)-.22 E -8.25 11 +(.............. 1)12.985 H(0)-11 E(3.5.1.2. Beha)72 492.8 Q +(viors That Are Not Lik)-.22 E(ely T)-.11 E 2.75(oC)-.88 G 5.406 +(hange .)-2.75 F -8.25 11(............... 1)11 H(1)-11 E +(3.6. Application Group Extension)72 509.4 Q -8.25 11 +(..................... 1)13.953 H(1)-11 E(3.7. Print Extension)72 526 Q +-8.25 11(.......................... 1)6.605 H(2)-11 E +(3.7.1. Running an X Print Serv)72 542.6 Q 1.589(er .)-.165 F -8.25 11 +(..................... 1)11 H(2)-11 E(3.7.2. Specifying The Print Serv) +72 559.2 Q(er T)-.165 E 2.75(oAC)-.88 G 10.114(lient .)-2.75 F -8.25 11 +(................ 1)11 H(3)-11 E(3.8. Proxy Management Protocol)72 575.8 +Q -8.25 11(...................... 1)3.261 H(3)-11 E +(3.9. Con\214guration)72 592.4 Q -8.25 11(.......................... 1) +13.634 H(3)-11 E(3.10. Documentation)72 609 Q -8.25 11 +(......................... 1)15.174 H(4)-11 E(3.11. Header Files)72 +625.6 Q -8.25 11(.......................... 1)13.348 H(4)-11 E +(3.12. X Serv)72 642.2 Q 13.513(er .)-.165 F -8.25 11 +(.......................... 1)11 H(4)-11 E(3.12.1. Ne)72 658.8 Q 2.75 +(wD)-.275 G -.275(ev)-2.75 G(ice Support).275 E -8.25 11 +(....................... 1)10.543 H(4)-11 E(3.12.2. Internal Changes)72 +675.4 Q -8.25 11(........................ 1)13.656 H(4)-11 E +(3.13. ICE Library Addition)72 692 Q -8.25 11(....................... 1) +15.174 H(5)-11 E(3.14. Xlib V)72 708.6 Q(ertical Writing and User)-1.221 +E(-De\214ned Characters)-.22 E -8.25 11(.............. 1)10.554 H(5)-11 +E(3.15. Xt Geometry Management Deb)72 725.2 Q 12.677(ugger .)-.22 F +-8.25 11(................. 1)11 H(5)-11 E(i)304.471 769 Q EP +%%Page: ii 4 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(3.16. Ne)72 85 Q 2.75(wP)-.275 G 1.094(rograms .)-2.75 F -8.25 +11(......................... 1)11 H(6)-11 E(3.16.1. Using The LBX Proxy) +72 101.6 Q -8.25 11(...................... 1)16.087 H(6)-11 E +(3.17. Major Additions to Existing Programs)72 118.2 Q -8.25 11 +(.................. 1)10.576 H(7)-11 E(3.18. ANSI\214cation)72 134.8 Q +-8.25 11(.......................... 1)10.587 H(7)-11 E(4. Kno)72 151.4 Q +(wn Bugs)-.275 E -8.25 11(........................... 1)11.775 H(8)-11 E +(5. Filing Bug Reports)72 168 Q -8.25 11(......................... 1) +12.402 H(8)-11 E(6. Ackno)72 184.6 Q 6.902(wledgements .)-.275 F -8.25 +11(........................ 1)11 H(8)-11 E(ii)302.942 769 Q EP +%%Page: 1 5 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Bold@0 SF 2.75(1. What)72 85 R(Is Release 6.3)2.75 E/F1 11 +/Times-Roman@0 SF +(This is the last X Consortium implementation of the X W)72 114.6 Q +(indo)-.44 E 2.75(wS)-.275 G 2.75(ystem. X)-2.75 F(is a v)2.75 E(endor) +-.165 E(-neutral, system-)-.22 E(architecture neutral netw)72 127.6 Q +(ork-transparent windo)-.11 E 2.75(ws)-.275 G(ystem and user interf) +-2.75 E(ace standard.)-.11 E 2.75(Xr)5.5 G(uns on a wide)-2.75 E +(range of computing and graphics machines.)72 140.6 Q -.165(Fo)5.5 G +2.75(ra).165 G 2.75(no)-2.75 G -.165(ve)-2.915 G(rvie).165 E 2.75(wo) +-.275 G 2.75(fX)-2.75 G 2.75(,s)-2.75 G(ee the)-2.75 E/F2 11 +/Times-Italic@0 SF(X)2.75 E F1(manual page.)2.75 E +(R6.3 is an update to R6.1.)72 157.2 Q +(It is compatible with R6 and R6.1 at the source and protocol le)5.5 E +-.165(ve)-.275 G(ls in all).165 E(respects, and binaries are upw)72 +170.2 Q(ard-compatible.)-.11 E(What about Release 6.2?)72 186.8 Q(Relea\ +se 6.2 is a proper subset of Release 6.3 produced at the request of the\ + OSF)5.5 E(Common Desktop En)72 199.8 Q(vironment program.)-.44 E(It w) +5.5 E(as produced by the X Consortium and is being released by)-.11 E +(OSF simultaneously with CDE 2.1.)72 212.8 Q +(Release 6.2 contains only the print e)5.5 E +(xtension and the Xlib implemen-)-.165 E(tation of v)72 225.8 Q +(ertical writing and user)-.165 E(-de\214ned character support.)-.22 E +(The X Consortium w)72 242.4 Q(as an independent, not-for)-.11 E +(-pro\214t membership corporation formed in 1993 as the suc-)-.22 E +(cessor to the MIT X Consortium and dissolv)72 255.4 Q +(ed at the end of 1996.)-.165 E(Refer to the)5.5 E F2(Consortium)2.75 E +F1(man page for)2.75 E(additional details about the X Consortium.)72 +268.4 Q(See)72 285 Q F0(xc/INST)2.75 E(ALL.PS)-.99 E F1 +(\(PostScript\) or)2.75 E F0(xc/INST)2.75 E(ALL.TXT)-.99 E F1 +(\(plain te)2.75 E(xt\) for instructions on ho)-.165 E 2.75(wt)-.275 G +2.75(ob)-2.75 G(uild and)-2.97 E(install this softw)72 298 Q(are.)-.11 E +F0 2.75(1.1. Ov)72 337 R(er)-.11 E(view of the X Consortium Release)-.11 +E F1(The X Consortium softw)72 366.6 Q +(are and documentation in Release 6.3 is in directory)-.11 E F0(xc/)2.75 +E F1(and contains the follo)2.75 E(w-)-.275 E(ing:)72 379.6 Q F0 2.75 +(XC)72 396.2 S(onsortium Standards)-2.75 E F1 +(The X Consortium produced standards:)97 409.2 Q +(documents which de\214ne netw)5.5 E(ork protocols, programming)-.11 E +(interf)97 422.2 Q(aces, and other aspects of the X en)-.11 E 2.75 +(vironment. See)-.44 F(the)2.75 E F2(XStandar)2.75 E(ds)-.407 E F1 +(manual page for a list of)2.75 E(standards.)97 435.2 Q F0 +(Implementations)72 451.8 Q F1 -.165(Fo)97 464.8 S 2.75(rm).165 G +(ost of our standards, we pro)-2.75 E +(vide high-quality implementations to demonstrate proof of con-)-.165 E +(cept and to gi)97 477.8 Q .33 -.165(ve e)-.275 H(arly adopters and v) +.165 E(endors a base to use.)-.165 E(These are not)5.5 E F2 -.407(re) +2.75 G(fer).407 E(ence)-.407 E F1(implementations;)2.75 E +(the written speci\214cations de\214ne the standards.)97 490.8 Q F0 +-.275(Fo)72 507.4 S(nts).275 E F1 2.75(Ac)97 520.4 S +(ollection of bitmap and outline fonts are included in the distrib)-2.75 +E(ution, contrib)-.22 E(uted by v)-.22 E(arious indi-)-.275 E +(viduals and companies.)97 533.4 Q F0(Utility Libraries)72 550 Q F1 2.75 +(An)97 563 S(umber of libraries, such as)-2.75 E F2(Xmu)2.75 E F1 +(and the)2.75 E F2(Athena W)2.75 E(idg)-.605 E(et Set)-.11 E F1 2.75(,a) +C(re included.)-2.75 E(These are not stan-)5.5 E(dards, b)97 576 Q +(ut are used in b)-.22 E +(uilding X Consortium applications and may be useful in b)-.22 E +(uilding other appli-)-.22 E(cations.)97 589 Q F0(Pr)72 605.6 Q(ograms) +-.198 E F1 1.76 -.88(We a)97 618.6 T(lso pro).88 E +(vide a number of application programs.)-.165 E 2.75(Af)5.5 G .55 -.275 +(ew o)-2.75 H 2.75(ft).275 G(hese programs, such as)-2.75 E F2(xdm)2.75 +E F1(\(or its)2.75 E(equi)97 631.6 Q -.275(va)-.275 G +(lent\), should be considered essential in almost all en).275 E 2.75 +(vironments. The)-.44 F(rest of the applications)2.75 E +(carry no special status; the)97 644.6 Q 2.75(ya)-.165 G +(re simply programs that ha)-2.75 E .33 -.165(ve b)-.22 H(een de).165 E +-.165(ve)-.275 G(loped and/or maintained by X).165 E(Consortium staf)97 +657.6 Q 2.75(f. In)-.275 F(some cases, you will \214nd better substitut\ +es for these programs contrib)2.75 E(uted by)-.22 E(others.)97 670.6 Q +(1)303.25 769 Q EP +%%Page: 2 6 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E/F1 11/Times-Bold@0 SF 2.75(1.2. Supported)72 85 R(Systems)2.75 +E F0 1.76 -.88(We b)72 114.6 T +(uilt and tested this release on the follo).66 E(wing systems:)-.275 E +(AIX 4.2)108 137.2 Q(Digital Unix 4.0A)108 150.2 Q(HP-UX 10.01)108 163.2 +Q(IRIX 6.2)108 176.2 Q(Solaris 2.5)108 189.2 Q +(UNIX System V/386 Release 4.2 \(No)108 202.2 Q -.165(ve)-.165 G +(ll UnixW).165 E(are\) V)-.88 E(ersion 2.02)-1.221 E 1.76 -.88(We a)72 +221.2 T(lso b).88 E(uilt this release on the follo)-.22 E +(wing and did some minimal testing:)-.275 E(FreeBSD 2.1.6)108 240.2 Q +(Linux 1.2.13 \(Yggdrasil\) and 2.0.0 \(Slackw)108 253.2 Q(are 3.1\)) +-.11 E(SCO Open Serv)108 266.2 Q(er 5.0)-.165 E(SunOS 4.1.4)108 279.2 Q +-.44(Wi)108 292.2 S(ndo).44 E(ws NT 4.0)-.275 E(In all cases e)72 314.8 +Q(xcept SunOS we ha)-.165 E .33 -.165(ve u)-.22 H(sed the v).165 E +(endor')-.165 E 2.75(sc)-.605 G(ompiler)-2.75 E 5.5(.O)-.605 G 2.75(nS) +-5.5 G(unOS we b)-2.75 E(uild with)-.22 E/F2 11/Times-Italic@0 SF(gcc) +2.75 E F0(.)A F1 2.75(1.2.1. Supported)72 353.8 R(Display De)2.75 E +(vices)-.165 E F0(This release includes the necessary de)72 383.4 Q +(vice-dependent support to b)-.275 E(uild a nati)-.22 E .33 -.165 +(ve X s)-.275 H(erv).165 E(er for the follo)-.165 E(wing)-.275 E +(platforms:)72 396.4 Q(AIX: Xibm with Sk)108 419 Q(yw)-.165 E +(ay display adapter)-.11 E(HP-UX: Xhp)108 432 Q +(Digital Unix: Xdec on Alpha AXP with PMA)108 445 Q(G-B frame b)-.44 E +(uf)-.22 E(fer)-.275 E +(SunOS/Solaris: Xsun -- see the Xsun man page for supported frame b)108 +458 Q(uf)-.22 E(fers)-.275 E(Ultrix)108 471 Q/F3 7.7/Times-Roman@0 SF(1) +-4.51 I F0(:Xdec)2.75 4.51 M +(XFree86: See the XF_* man pages for supported video cards)108 484 Q +(In addition to the abo)72 503 Q -.165(ve)-.165 G 2.75(,t).165 G +(he Xvfb and Xnest serv)-2.75 E(ers can be b)-.165 E +(uilt on most platforms.)-.22 E(Nati)72 519.6 Q .33 -.165(ve s)-.275 H +(erv).165 E(ers are not b)-.165 E(uilt on IRIX or Microsoft W)-.22 E +(indo)-.44 E(ws NT)-.275 E(.)-.814 E F1 2.75(1.3. The)72 558.6 R(XC T) +2.75 E -.198(re)-.814 G(e).198 E F0(The general layout under)72 588.2 Q +F1(xc/)2.75 E F0(is as follo)2.75 E(ws:)-.275 E .32 LW 144 698.2 72 +698.2 DL/F4 5.6/Times-Roman@0 SF(1)82 706.72 Q/F5 8/Times-Roman@0 SF(th\ +is is not a full ANSI C and POSIX platform and the full release will no\ + longer b)2 3.28 M(uild here.)-.16 E(But we ha)4 E .24 -.12(ve n)-.16 H +(ot intentionally remo).12 E -.12(ve)-.12 G 2(da).12 G .24 -.12(ny o)-2 +H(ld).12 E 2(support. I.e.)72 720 R/F6 8/Times-Italic@0 SF(no guar)2 E +(antees)-.12 E F5 -.16(bu)2 G 2(tw).16 G 2(eh)-2 G(ope we')-2 E .24 -.12 +(ve l)-.4 H +(eft open the possibility of someone else making the release w).12 E +(ork ag)-.08 E(ain on Ultrix.)-.04 E F0(2)303.25 769 Q EP +%%Page: 3 7 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E 110.692(con\214g/ con\214g)72 85 R(\214les,)2.75 E/F1 11 +/Times-Italic@0 SF(imak)2.75 E(e)-.11 E F0(,)A F1(mak)2.75 E(edepend) +-.11 E F0 2.75(,b)C(uild utilities)-2.97 E 122.308(doc/ all)72 98 R +(documentation other than per)2.75 E(-program manual pages)-.22 E +116.192(fonts/ BDF)72 111 R 2.75(,S)-.88 G(peedo, T)-2.75 E(ype1 fonts) +-.88 E 105.808(include/ include)72 124 R +(\214les shared by multiple directories)2.75 E 126.576(lib/ all)72 137 R +(libraries)2.75 E 125.355(nls/ national)72 150 R +(language support \214les)2.75 E 96.645(programs/ all)72 163 R +(programs, including the X serv)2.75 E(er and)-.165 E F1 -.407(rg)2.75 G +(b).407 E F0(util/)72 176 Q F1(patc)126.268 E(h)-.165 E F0(,)A F1(compr) +2.75 E(ess)-.407 E F0 2.75(,o)C(ther utilities)-2.75 E -.22(bu)72 189 S +95.039(g-report b).22 F(ug reporting template)-.22 E(re)72 202 Q 107.81 +(gistry X)-.165 F(Re)2.75 E(gistry)-.165 E(This \214le is)72 224.6 Q/F2 +11/Times-Bold@0 SF(xc/RELNO)2.75 E(TES.*)-.44 E F0 2.75(,i)C 2.75(nv) +-2.75 G(arious formats.)-3.025 E(The documentation source \214les)5.5 E +F2(RELNO)2.75 E(TES.ms)-.44 E F0(and)2.75 E F2(INST)72 237.6 Q(ALL.ms) +-.99 E F0(are in the)2.75 E F2(xc/doc/misc/)2.75 E F0(directory)2.75 E +(.)-.715 E F2 2.75(1.4. X)72 276.6 R(Registry)2.75 E F0 +(The X Consortium maintained a re)72 306.2 Q +(gistry of certain X-related items to aid in a)-.165 E -.22(vo)-.22 G +(iding con\215icts and to aid).22 E(in sharing of such items.)72 319.2 Q +(The re)72 335.8 Q(gistry is in the \214le)-.165 E F2(xc/r)2.75 E +(egistry)-.198 E F0(in the distrib)2.75 E 2.75(ution. The)-.22 F +(latest v)2.75 E(ersion may also be a)-.165 E -.275(va)-.22 G +(ilable by send-).275 E(ing a message to xstuf)72 348.8 Q(f@x.or)-.275 E +2.75(g. The)-.198 F(message can ha)2.75 E .33 -.165(ve a s)-.22 H +(ubject line and no body).165 E 2.75(,o)-.715 G 2.75(ras)-2.75 G +(ingle-line body)-2.75 E +(and no subject; in either case the line should look lik)72 361.8 Q 2.75 +(et)-.11 G(his:)-2.75 E(send docs re)108 380.8 Q(gistry)-.165 E F2 2.75 +(1.5. Extensions)72 425.8 R(Supported)2.75 E F0(The core distrib)72 +455.4 Q(ution includes the follo)-.22 E(wing e)-.275 E +(xtensions: BIG-REQ)-.165 E(UESTS, DOUBLE-B)-.11 E(UFFER, LBX,)-.11 E +(MIT)72 468.4 Q(-SHM, MIT)-1.012 E(-SUNDR)-1.012 E -1.221(Y-)-.715 G +(NONST)1.221 E(AND)-1.023 E(ARD, Multi-Buf)-.44 E +(fering, RECORD, SECURITY)-.275 E 2.75(,S)-1.419 G(HAPE, SYNC,)-2.75 E +(X3D-PEX, XC-APPGR)72 481.4 Q(OUP)-.44 E 2.75(,X)-1.221 G +(C-MISC, XFree86-V)-2.75 E(idModeExtension, XIE, XInputExtension, XKEY) +-.66 E(-)-1.221 E(BO)72 494.4 Q(ARD, XpExtension \(printing\), XTEST) +-.385 E 2.75(,a)-.814 G(nd XT)-2.75 E(estExtension1.)-.77 E +(Not all of these e)72 511 Q(xtensions are standards; see the)-.165 E F1 +(XStandar)2.75 E(ds)-.407 E F0(manual page.)2.75 E(Some of these e)5.5 E +(xtensions are)-.165 E(not supported on all platforms.)72 524 Q F2 2.75 +(1.6. Implementation)72 563 R -.11(Pa)2.75 G(rameters).11 E F0 +(Some of the speci\214cations de\214ne some beha)72 592.6 Q +(vior as implementation-dependent.)-.22 E(Implementations of X)5.5 E +(Consortium standards need to document ho)72 605.6 Q 2.75(wt)-.275 G +(hose parameters are implemented; this section does so.)-2.75 E +(XFILESEARCHP)72 622.2 Q -1.221(AT)-1.012 G 2.75(Hd)1.221 G(ef)-2.75 E +(ault)-.11 E(This def)97 635.2 Q(ault can be set at b)-.11 E +(uild time by setting the)-.22 E F1(imak)2.75 E(e)-.11 E F0 -.275(va) +2.75 G(riables XFileSearchP).275 E(athDef)-.165 E(ault,)-.11 E +(XAppLoadDir)97 648.2 Q 2.75(,X)-.44 G(FileSearchP)-2.75 E +(athBase, and ProjectRoot in)-.165 E F2(site.def)2.75 E F0 5.5(.S)C(ee) +-5.5 E F2(xc/con\214g/cf/README)2.75 E F0(for)2.75 E(instructions and)97 +661.2 Q F2(xc/con\214g/cf/X11.tmpl)2.75 E/F3 7.7/Times-Roman@0 SF(2) +-4.51 I F0(for details of ho)2.75 4.51 M 2.75(wt)-.275 G +(hese con\214guration v)-2.75 E(ariables are used.)-.275 E(By def)97 +677.8 Q(ault ProjectRoot is /usr/X11R6.3 and XFILESEARCHP)-.11 E -1.221 +(AT)-1.012 G 2.75(Hh)1.221 G(as these components:)-2.75 E +(/usr/X11R6.3/lib/X11/%L/%T/%N%C%S)133 696.8 Q +(/usr/X11R6.3/lib/X11/%l/%T/%N%C%S)133 709.8 Q .32 LW 144 717.8 72 717.8 +DL/F4 5.6/Times-Roman@0 SF(2)82 726.32 Q/F5 8/Times-Roman@0 SF +(This \214le w)2 3.28 M(as renamed from Project.tmpl in R6.1 in order t\ +o support multiple projects \(e.g. CDE/Motif\) in the same con\214g dir\ +ectory)-.08 E(.)-.52 E F0(3)303.25 769 Q EP +%%Page: 4 8 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(/usr/X11R6.3/lib/X11/%T/%N%C%S)133 85 Q +(/usr/X11R6.3/lib/X11/%L/%T/%N%S)133 98 Q +(/usr/X11R6.3/lib/X11/%l/%T/%N%S)133 111 Q(/usr/X11R6.3/lib/X11/%T/%N%S) +133 124 Q(XUSERFILESEARCHP)72 146.6 Q -1.221(AT)-1.012 G 2.75(Hd)1.221 G +(ef)-2.75 E(ault)-.11 E(If the en)97 159.6 Q(vironment v)-.44 E +(ariable XAPPLRESDIR is de\214ned, the def)-.275 E(ault v)-.11 E +(alue of XUSERFILESEARCH-)-.275 E -1.012(PA)97 172.6 S(TH has the follo) +-.209 E(wing components:)-.275 E($XAPPLRESDIR/%L/%N%C)133 191.6 Q +($XAPPLRESDIR/%l/%N%C)133 204.6 Q($XAPPLRESDIR/%N%C)133 217.6 Q +($HOME/%N%C)133 230.6 Q($XAPPLRESDIR/%L/%N)133 243.6 Q +($XAPPLRESDIR/%l/%N)133 256.6 Q($XAPPLRESDIR/%N)133 269.6 Q($HOME/%N)133 +282.6 Q(Otherwise it has these components:)97 301.6 Q($HOME/%L/%N%C)133 +320.6 Q($HOME/%l/%N%C)133 333.6 Q($HOME/%N%C)133 346.6 Q($HOME/%L/%N)133 +359.6 Q($HOME/%l/%N)133 372.6 Q($HOME/%N)133 385.6 Q(XKEYSYMDB def)72 +408.2 Q(ault)-.11 E(Def)97 421.2 Q(aults to)-.11 E/F1 11/Times-Bold@0 SF +(/usr/X11R6.3/lib/X11/XK)2.75 E(eysymDB)-.275 E F0 2.75(,a)C(ssuming) +-2.75 E F1(Pr)2.75 E(ojectRoot)-.198 E F0(is set to)2.75 E F1 +(/usr/X11R6.3)2.75 E F0(.)A(XCMSDB def)72 437.8 Q(ault)-.11 E(Def)97 +450.8 Q(aults to)-.11 E F1(/usr/X11R6.3/lib/X11/Xcms.txt)2.75 E F0 2.75 +(,a)C(ssuming)-2.75 E F1(Pr)2.75 E(ojectRoot)-.198 E F0(is set to)2.75 E +F1(/usr/X11R6.3)2.75 E F0(.)A(XLOCALEDIR def)72 467.4 Q(ault)-.11 E(Def) +97 480.4 Q(aults to the directory)-.11 E F1(/usr/X11R6.3/lib/X11/locale) +2.75 E F0 2.75(,a)C(ssuming)-2.75 E F1(Pr)2.75 E(ojectRoot)-.198 E F0 +(is set to)2.75 E F1(/usr/X11R6.3)97 493.4 Q F0 5.5(.T)C +(he XLOCALEDIR v)-5.5 E +(ariable can contain multiple colon-separated pathnames.)-.275 E +(XErrorDB location)72 510 Q(The Xlib error database \214le is)97 523 Q +F1(/usr/X11R6.3/lib/X11/XErr)2.75 E(orDB)-.198 E F0 2.75(,a)C(ssuming) +-2.75 E F1(Pr)2.75 E(ojectRoot)-.198 E F0(is set to)2.75 E F1 +(/usr/X11R6.3)97 536 Q F0(.)A(XtErrorDB location)72 552.6 Q +(The Xt error database \214le is)97 565.6 Q F1 +(/usr/X11R6.3/lib/X11/XtErr)2.75 E(orDB)-.198 E F0 2.75(,a)C(ssuming) +-2.75 E F1(Pr)2.75 E(ojectRoot)-.198 E F0(is set to)2.75 E F1 +(/usr/X11R6.3)97 578.6 Q F0(.)A(Supported Locales)72 595.2 Q 2.75(Xl)97 +608.2 S(ocales supported are in)-2.75 E F1(locale.dir)2.75 E F0 2.75(;t) +C(he mapping between v)-2.75 E(arious system locale names and X)-.275 E +(locale names is in)97 621.2 Q F1(locale.alias)2.75 E F0 5.5(.B)C +(oth \214les are shipped in the)-5.5 E F1(xc/nls/X11/locale/)2.75 E F0 +(directory and)2.75 E(installed in the XLocaleDir directory \(e.g.)97 +634.2 Q F1(/usr/X11R6.3/lib/X11/locale/)2.75 E F0(\).)A +(Input Methods supported)72 650.8 Q(The core distrib)97 663.8 Q +(ution does not include an)-.22 E 2.75(yi)-.165 G(nput method serv)-2.75 +E 2.75(ers. Ho)-.165 F(we)-.275 E -.165(ve)-.275 G .88 -.44(r, X).165 H +(lib supplies a def).44 E(ault)-.11 E -.22(bu)97 676.8 S +(ilt-in input method that supports compose processing in 8-bit locales.) +.22 E(Compose \214les are pro)5.5 E(vided)-.165 E +(for Latin-1 and Latin-2.)97 689.8 Q(The b)5.5 E +(uilt-in input method can support other locales, gi)-.22 E -.165(ve) +-.275 G 2.75(ns).165 G(uitable com-)-2.75 E(pose \214les.)97 702.8 Q +(See)5.5 E F1(xc/nls/X11/locale/Compose/iso8859-*)2.75 E F0 +(for the supported compositions.)2.75 E(There are input method serv)72 +719.4 Q(ers a)-.165 E -.275(va)-.22 G(ilable on the net.).275 E(4)303.25 +769 Q EP +%%Page: 5 9 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E/F1 11/Times-Bold@0 SF 2.75(2. What)72 85 R +(is Unchanged in Release 6.3)2.75 E F0(As this is an update release, th\ +ere is a great deal of stability in the standards, libraries, and clien\ +ts.)72 114.6 Q(No)5.5 E -.165(ex)72 127.6 S +(isting standards other than the ICE library speci\214cation ha).165 E +.33 -.165(ve c)-.22 H(hanged in a material w).165 E(ay)-.11 E 2.75(,t) +-.715 G(hough se)-2.75 E -.165(ve)-.275 G(ral).165 E(documents ha)72 +140.6 Q .33 -.165(ve b)-.22 H(een updated with editorial impro).165 E +-.165(ve)-.165 G 2.75(ments. There).165 F(is one ne)2.75 E 2.75(wi)-.275 +G(nterf)-2.75 E(ace added to the ICE)-.11 E(library)72 153.6 Q/F2 11 +/Times-Italic@0 SF(libICE)2.75 E F0 2.75(;s)C(ee belo)-2.75 E 4.18 -.715 +(w. T)-.275 H(he e).715 E(xtension library)-.165 E(,)-.715 E F2(libXe) +2.75 E(xt)-.22 E F0 2.75(,i)C 2.75(su)-2.75 G +(pdated to include the LBX, security)-2.75 E 2.75(,a)-.715 G(nd)-2.75 E +(application group e)72 166.6 Q(xtension interf)-.165 E 2.75(aces. All) +-.11 F(pre)2.75 E(vious interf)-.275 E +(aces in these and all other libraries are)-.11 E(unchanged.)72 179.6 Q +F1 2.75(3. What)72 231.6 R(Is New in Release 6.3)2.75 E F0 +(This section describes changes in the X Consortium distrib)72 261.2 Q +(ution since Release 6.1.)-.22 E(All libraries, protocols, and serv)72 +277.8 Q(ers are compatible with Release 6 and Release 6.1.)-.165 E +(That is, R6 and R6.1)5.5 E(clients and applications will w)72 290.8 Q +(ork with R6.3 libraries and serv)-.11 E 2.75(ers. Most)-.165 F +(R6.3 clients will w)2.75 E(ork with R6.1)-.11 E(and R6 libraries e)72 +303.8 Q(xcept those that use the ne)-.165 E 2.75(wi)-.275 G(nterf)-2.75 +E(aces in libICE, libXe)-.11 E(xt, and libXp.)-.165 E(The major ne)72 +320.4 Q 2.75(wf)-.275 G(unctionality in R6.3 is support for W)-2.75 E +(orld W)-.88 E(ide W)-.44 E(eb inte)-.88 E +(gration, protection of data from)-.165 E -.814(``)72 333.4 S +(untrusted').814 E 2.75('c)-.814 G +(lient connections, a bandwidth- and latenc)-2.75 E +(y-optimized protocol for using X across the Inter)-.165 E(-)-.22 E +(net, a print protocol follo)72 346.4 Q +(wing the Xlib API, and support for v)-.275 E(ertical te)-.165 E +(xt writing and user)-.165 E(-de\214ned charac-)-.22 E +(ters in the Xlib implementation.)72 359.4 Q F1 2.75(3.1. OS)72 398.4 R +(Support)2.75 E F0(The follo)72 428 Q(wing platforms ha)-.275 E .33 +-.165(ve a n)-.22 H -.275(ew).165 G(er operating system v).275 E +(ersion supported:)-.165 E 72.855(System R6.1)72 450.6 R(R6.3)86.913 E +85.703(AIX 4.1.4)72 476.6 R(4.2)86 E(Digital Unix)72 489.6 Q 84.163 +(3.2C 4.0A)52.692 F 71.645(HP-UX 10.01)72 502.6 R 82.645(IRIX 5.3)72 +515.6 R(6.2)94.25 E 74.692(Solaris 2.4)72 528.6 R(2.5)94.25 E(UnixW)72 +541.6 Q 60.315(are 2.02)-.88 F 1.76 -.88(We a)72 564.2 T(lso b).88 E +(uilt on the follo)-.22 E(wing platforms, ho)-.275 E(we)-.275 E -.165 +(ve)-.275 G 2.75(rf).165 G(ull support is not guaranteed:)-2.75 E 72.855 +(System R6.1)72 586.8 R(R6.3)86.913 E 64.308(FreeBSD 2.1.0)72 612.8 R +(2.1.6)86 E 78.971(Linux 1.2.13)72 625.8 R(2.0)80.5 E(SCO Open Serv)72 +638.8 Q 25.984(er 5.0)-.165 F 74.076(SunOS 4.1.3)72 651.8 R(4.1.4)86 E +-.44(Wi)72 664.8 S(ndo).44 E(ws NT)-.275 E 91.5(3.5 4.0)49.139 F(5) +303.25 769 Q EP +%%Page: 6 10 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E/F1 11/Times-Bold@0 SF 2.75(3.2. New)72 85 R(Standards)2.75 E F0 +(The follo)72 114.6 Q(wing are ne)-.275 E 2.75(wXC)-.275 G +(onsortium standards in Release 6.3.)-2.75 E(Each is described in its o) +5.5 E(wn section)-.275 E(belo)72 127.6 Q -.715(w.)-.275 G(Lo)108 146.6 Q +2.75(wB)-.275 G(andwidth X Extension)-2.75 E(RX: X Remote Ex)108 159.6 Q +(ecution MIME type)-.165 E(Security Extension)108 172.6 Q +(Application Group Extension)108 185.6 Q(Print Extension)108 198.6 Q +(Proxy Management Protocol)108 211.6 Q F1 2.75(3.3. Lo)72 256.6 R 2.75 +(wB)-.11 G(and)-2.75 E(width X Extension)-.165 E F0(The Lo)72 286.2 Q +2.75(wB)-.275 G(andwidth X e)-2.75 E(xtension \(LBX\) de\214nes se)-.165 +E -.165(ve)-.275 G(ral compression and local caching techniques to).165 +E(impro)72 299.2 Q .33 -.165(ve p)-.165 H(erformance on wide area netw) +.165 E(orks and also on slo)-.11 E(wer)-.275 E(-speed connections.)-.22 +E(These reduce the)5.5 E(amount of protocol data transported o)72 312.2 +Q -.165(ve)-.165 G 2.75(rt).165 G(he netw)-2.75 E +(ork and reduce the number of client-to-serv)-.11 E(er roundtrips)-.165 +E(required for common application startup operations.)72 325.2 Q(LBX w) +72 341.8 Q(as referred to as X.f)-.11 E(ast in some materials b)-.11 E +(ut we elected to not go through the implementation and)-.22 E +(change all the names.)72 354.8 Q 1.76 -.88(To a)5.5 H -.22(vo).66 G +(id an).22 E 2.75(yc)-.165 G(onfusion with an e)-2.75 E +(xternal name dif)-.165 E(ferent from the internal name in)-.275 E +(the implementation, we elected to drop the `)72 367.8 Q(`X.f)-.814 E +(ast')-.11 E 2.75('m)-.814 G(onik)-2.75 E(er)-.11 E(.)-.605 E +(LBX is implemented in tw)72 384.4 Q 2.75(op)-.11 G(ieces; an X serv) +-2.75 E(er e)-.165 E(xtension and a proxy application.)-.165 E +(The X serv)5.5 E(er e)-.165 E(xten-)-.165 E(sion pro)72 397.4 Q +(vides the ne)-.165 E 2.75(wo)-.275 G(ptimized protocol.)-2.75 E +(The proxy application,)5.5 E/F2 11/Times-Italic@0 SF(lbxpr)2.75 E(oxy) +-.495 E F0 2.75(,t)C(ranslates a normal client X)-2.75 E +(protocol stream into an LBX stream.)72 410.4 Q(This permits an)5.5 E +2.75(ye)-.165 G(xisting application to g)-2.915 E +(ain the bene\214t of the opti-)-.055 E(mized protocol with no changes.) +72 423.4 Q +(The proxy is especially useful when multiple applications are running) +5.5 E(on the same local area netw)72 436.4 Q +(ork separated from the X serv)-.11 E(er by a slo)-.165 E(wer netw)-.275 +E 2.75(ork. In)-.11 F(this case the full ben-)2.75 E(e\214t of the loca\ +l cache is shared by each application using the same proxy process.)72 +449.4 Q(The speci\214cation for LBX is in)72 466 Q F1 +(xc/doc/specs/Xext/lbx.mif)2.75 E F0(\(FrameMak)2.75 E +(er interchange source\) and)-.11 E F1(xc/doc/hardcopy/Xext/lbx.PS.Z)72 +479 Q F0(\(compressed PostScript\).)2.75 E F1 2.75(3.4. RX:)72 518 R +2.75(XR)2.75 G(emote eXecution)-2.75 E F0(The remote e)72 547.6 Q -.165 +(xe)-.165 G(cution \(RX\) service speci\214es a MIME format for in).165 +E -.22(vo)-.44 G(king applications remotely).22 E 2.75(,f)-.715 G(or) +-2.75 E -.165(ex)72 560.6 S(ample via a W).165 E(orld W)-.88 E(ide W) +-.44 E(eb bro)-.88 E(wser)-.275 E 5.5(.T)-.605 G +(his RX format speci\214es a syntax for listing netw)-5.5 E +(ork services)-.11 E(required by the application, for e)72 573.6 Q +(xample an X display serv)-.165 E(er)-.165 E 5.5(.T)-.605 G +(he requesting W)-5.5 E(eb bro)-.88 E(wser must identify)-.275 E +(speci\214c instances of the services in the request to in)72 586.6 Q +-.22(vo)-.44 G .22 -.11(ke t).22 H(he application.).11 E(The distrib)72 +603.2 Q(ution contains a helper program \()-.22 E F2(xrx)A F0 2.75(\)a)C +(nd a Netscape Na)-2.75 E(vig)-.22 E(ator plug-in \()-.055 E F2(libxrx)A +F0 2.75(\)t)C(hat demon-)-2.75 E(strate this protocol.)72 616.2 Q +(The plug-in requires Na)5.5 E(vig)-.22 E(ator 3.0.)-.055 E 1.76 -.88 +(We h)72 632.8 T -2.475 -.22(av e).88 H(only been able to test the plug\ +-in on HP-UX, IRIX, Digital Unix, and Solaris2.)2.97 E(Netscape Na)5.5 E +(vi-)-.22 E -.055(ga)72 645.8 S +(tor binaries for other platforms are either not a).055 E -.275(va)-.22 +G(ilable at all or were not a).275 E -.275(va)-.22 G +(ilable in time to be included).275 E(in the testing for this release.) +72 658.8 Q(The speci\214cation for the RX mime type is in)72 675.4 Q F1 +(xc/doc/specs/RX/RX.mif)2.75 E F0(\(FrameMak)2.75 E +(er interchange source\))-.11 E(and)72 688.4 Q F1 +(xc/doc/hardcopy/RX/RX.PS.Z)2.75 E F0(\(compressed PostScript\).)2.75 E +(The follo)72 705 Q +(wing section describes the procedure to set up your en)-.275 E +(vironment and try the e)-.44 E(xamples pro)-.165 E(vided)-.165 E +(in this distrib)72 718 Q(ution.)-.22 E(6)303.25 769 Q EP +%%Page: 7 11 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E/F1 11/Times-Bold@0 SF 2.75(3.4.1. Pr)72 85 R(eparing Y)-.198 E(our W) +-1.221 E(eb Ser)-.715 E -.11(ve)-.11 G(r).11 E F0(In order to demonstra\ +te the RX helper program and the RX Netscape plug-in you need to ha)72 +114.6 Q .33 -.165(ve a)-.22 H(ccess to).165 E(an HTTP serv)72 127.6 Q +(er to install `)-.165 E(`common g)-.814 E(ate)-.055 E -.11(wa)-.275 G +2.75(yi).11 G(nterf)-2.75 E(ace')-.11 E 2.75('\()-.814 G(CGI\) scripts.) +-2.75 E(While CGI programs can be writ-)5.5 E(ten in an)72 140.6 Q 2.75 +(yc)-.165 G(ompiled or interpreted language, the sample CGI programs in\ + the distrib)-2.75 E(ution are written in)-.22 E(perl.)72 153.6 Q +(If you don')72 170.2 Q 2.75(tc)-.198 G(urrently ha)-2.75 E .33 -.165 +(ve a w)-.22 H(eb serv).165 E(er the NCSA serv)-.165 E +(er is a good one to try)-.165 E 5.5(.B)-.715 G(inaries for v)-5.5 E +(arious sys-)-.275 E(tems are a)72 183.2 Q -.275(va)-.22 G(ilable at:) +.275 E(http://hoohoo.ncsa.uiuc.edu/docs/setup/PreEx)108 200.2 Q(ec.html) +-.165 E(If you don')72 216.8 Q 2.75(th)-.198 G -2.475 -.22(av e)-2.75 H +(perl you can get the source code from:)2.97 E +(ftp://prep.ai.mit.edu/pub/gnu/perl-4.036.tar)108 233.8 Q(.gz)-.605 E +-1.21(Yo)72 250.4 S 2.75(un)1.21 G +(eed to install the HTML, RX, and CGI sample \214les into your serv) +-2.75 E(er')-.165 E 2.75(sH)-.605 G(TML and CGI directories.)-2.75 E +(The process can be partially automated by adding the follo)72 263.4 Q +(wing de\214nitions to your)-.275 E F1(site.def)2.75 E F0(or)2.75 E F1 +(host.def)2.75 E F0(\214le:)72 276.4 Q -.88(We)72 306 S(bServ).88 E +31.317(er de\214nes)-.165 F(the hostname and port of your web serv)2.75 +E(er)-.165 E 2.75(,f)-.44 G(or e)-2.75 E(xample)-.165 E/F2 11/Courier@0 +SF(#define WebServer www.myorg.org:8001)180 323 Q F0 42.471 +(HtmlDir de\214nes)72 345.6 R +(the path at which HTML and RX documents are installed, for e)2.75 E +(xample)-.165 E F2(#define HtmlDir /usr/local/etc/httpd/htdocs)180 362.6 +Q F0 33.297(CgiBinDir de\214nes)72 385.2 R +(the path at which CGI programs are installed, for e)2.75 E(xample)-.165 +E F2(#define CgiBinDir /usr/local/etc/httpd/cgi-bin)180 402.2 Q F0 +14.377(ProxyManager de\214nes)72 424.8 R(the transport scheme, hostname\ +, and port for CGI programs to contact the)2.75 E(Proxy Manager)154.5 +437.8 Q 5.5(.S)-.605 G(ee the)-5.5 E/F3 11/Times-Italic@0 SF(pr)2.75 E +(oxymngr)-.495 E F0(man pages for further details.)2.75 E -.88(Ty)5.5 G +(pically the proxy).88 E(manager host will be the same as your web serv) +154.5 450.8 Q(er)-.165 E 2.75(,f)-.44 G(or e)-2.75 E(xample:)-.165 E F2 +(#define ProxyManager tcp/www.myorg.org:6500)180 467.8 Q F0(Then mak)72 +490.4 Q 2.75(et)-.11 G(he Mak)-2.75 E(e\214les and b)-.11 E +(uild the directories with the follo)-.22 E(wing command sequence:)-.275 +E F2(cd xc/programs/xrx/htdocs)99.5 509.4 Q +(xmkmf ../../.. programs/xrx/htdocs)99.5 522.4 Q(make)99.5 535.4 Q +(make install)99.5 548.4 Q(cd ../cgi-bin)99.5 561.4 Q +(xmkmf ../../.. programs/xrx/cgi-bin)99.5 574.4 Q(make)99.5 587.4 Q +(make install)99.5 600.4 Q F0(These directories are not automatically b) +72 623 Q(uilt or installed by the top le)-.22 E -.165(ve)-.275 G 2.75 +(lM).165 G(ak)-2.75 E(e\214le because the)-.11 E 2.75(yi)-.165 G +(nstall out-)-2.75 E(side the ProjectRoot.)72 636 Q -1.21(Yo)72 652.6 S +2.75(ua)1.21 G(lso need to con\214gure your web serv)-2.75 E +(er so that \214les with the e)-.165 E(xtension name `)-.165 E(`rx') +-.814 E 2.75('a)-.814 G(re of the MIME)-2.75 E(type `)72 665.6 Q +(`application/x-rx')-.814 E 2.75('. See)-.814 F(your HTTP serv)2.75 E +(er')-.165 E 2.75(sc)-.605 G +(on\214guration documentation for the right procedure to)-2.75 E(do so.) +72 678.6 Q(7)303.25 769 Q EP +%%Page: 8 12 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E/F1 11/Times-Bold@0 SF 2.75(3.4.2. The)72 85 R(RX Helper Pr)2.75 +E(ogram)-.198 E F0(The helper program,)72 114.6 Q/F2 11/Times-Italic@0 +SF(xrx)2.75 E F0 2.75(,m)C(ay be used with an)-2.75 E 2.75(yW)-.165 G +(eb bro)-3.63 E(wser to interpret the ne)-.275 E 2.75(wR)-.275 G 2.75 +(Xd)-2.75 G(ocument type.)-2.75 E +(The RX helper program is installed in /bin \(e.g.)72 131.2 +Q 2.75(/usr/X11R6.3/bin/\). Y)5.5 F(ou will need to con-)-1.21 E +(\214gure your web bro)72 144.2 Q(wser to use it for RX documents by ad\ +ding a line to your $HOME/.mailcap:)-.275 E/F3 11/Courier@0 SF +(application/x-rx; /X11/bin/xrx %s)108 161.2 Q F0 -1.21(Yo)72 177.8 S +2.75(um)1.21 G(ay need to refer to your web bro)-2.75 E(wser')-.275 E +2.75(sd)-.605 G(ocumentation for e)-2.75 E +(xact instructions on con\214guring helper)-.165 E(applications.)72 +190.8 Q(The helper program is acti)72 207.4 Q -.275(va)-.275 G +(ted by your bro).275 E(wser as soon as you retrie)-.275 E .33 -.165 +(ve a)-.275 H .33 -.165(ny d).165 H(ocument of the MIME type).165 E +(application/x-rx. All you need to do is to point your bro)72 220.4 Q +(wser at the URL:)-.275 E F3(http://your.web.server/xload.rx)108 237.4 Q +F0(The application \(i.e.)72 254 Q F2(xload)2.75 E F0 2.75(\)s)C +(hould appear on your DISPLA)-2.75 E 2.75(Ya)-1.155 G 2.75(san)-2.75 G +.55 -.275(ew t)-2.75 H(op-le).275 E -.165(ve)-.275 G 2.75(lc).165 G 2.75 +(lient. The)-2.75 F(client will be)2.75 E(running on your web serv)72 +267 Q(er host and connected to your X serv)-.165 E(er)-.165 E 5.5(.I) +-.605 G 2.75(fy)-5.5 G(our X serv)-2.75 E(er supports the SECU-)-.165 E +(RITY e)72 280 Q +(xtension the client will be running as an untrusted client.)-.165 E F1 +2.75(3.4.3. The)72 319 R(RX Netscape Na)2.75 E(vigator Plug-in)-.275 E +F0(The Na)72 348.6 Q(vig)-.22 E +(ator plug-in supports all the functions of)-.055 E F2(xrx)2.75 E F0 +(and in addition uses the ne)2.75 E 2.75(wX)-.275 G(C-APPGR)-2.75 E(OUP) +-.44 E -.165(ex)72 361.6 S(tension, if your X serv).165 E(er pro)-.165 E +(vides it, to cause the remotely launched application to be embedded wi\ +thin)-.165 E(the bro)72 374.6 Q(wser page from which it w)-.275 E +(as launched.)-.11 E +(The HTML page links to an RX document via the EMBED tag, a Netscape e) +72 391.2 Q(xtension to HTML.)-.165 E(The RX)5.5 E(document pro)72 404.2 +Q(vides the plug-in with the list of services the application w)-.165 E +(ants to use.)-.11 E(Based on this infor)5.5 E(-)-.22 E +(mation, the plug-in sets the v)72 417.2 Q +(arious requested services, including creating authorization k)-.275 E +-.165(ey)-.11 G(s, and passes).165 E(the rele)72 430.2 Q -.275(va)-.275 +G(nt data to the application through an HTTP GET request of the associa\ +ted CGI script.).275 E(The W)5.5 E(eb)-.88 E(serv)72 443.2 Q(er then e) +-.165 E -.165(xe)-.165 G(cutes the CGI script to start the application.) +.165 E 1.76 -.88(To b)72 459.8 T 2.75(ea).88 G +(ble to use the RX plug-in you need Netscape Na)-2.75 E(vig)-.22 E +(ator 3.0.)-.055 E(Binaries for v)5.5 E(arious systems can be)-.275 E +(found at:)72 472.8 Q F3 +(http://home.netscape.com/comprod/mirror/client_download.html)108 489.8 +Q F0 1.76 -.88(To c)72 506.4 T(omplete the installation of the Netscape\ + plug-in, \214nd the \214le named).88 E F2(libxrx.so.6.3)2.75 E F0(or) +2.75 E F2(libxrx.sl.6.3)2.75 E F0(\(or)2.75 E(similar)72 519.4 Q 2.75 +(,d)-.44 G(epending on your platform\) in /lib \(e.g.)-2.75 +E F1(/usr/X11R6.3/lib)2.75 E F0 2.75(\)a)C(nd cop)-2.75 E 2.75(yi)-.11 G +2.75(tt)-2.75 G 2.75(oe)-2.75 G(ither)-2.75 E(/usr/local/lib/netscape/p\ +lugins or $HOME/.netscape/plugins. Do not install the symlinks)72 532.4 +Q F2(libxrx.so)2.75 E F0(or)2.75 E F2(libxrx.sl)72 545.4 Q F0 2.75(;t)C +(he)-2.75 E 2.75(ym)-.165 G(ay confuse Netscape.)-2.75 E -1.21(Yo)72 562 +S 2.75(us)1.21 G(hould remo)-2.75 E .33 -.165(ve o)-.165 H 2.75(rc).165 +G(omment out the line you may ha)-2.75 E .33 -.165(ve p)-.22 H(re).165 E +(viously added in your mailcap \214le to use)-.275 E +(the RX helper program, otherwise the plug-in will not be enabled.)72 +575 Q(\(The usual comment character for)5.5 E(mailcap is `)72 588 Q(`#') +-.814 E('.\))-.814 E(If you are already running Netscape Na)72 604.6 Q +(vig)-.22 E(ator)-.055 E 2.75(,y)-.44 G(ou need to e)-2.75 E +(xit and restart it after cop)-.165 E(ying the plug-in)-.11 E +(library so the ne)72 617.6 Q 2.75(wp)-.275 G(lug-in will be found.) +-2.75 E(Once this is done you can check that Na)5.5 E(vig)-.22 E +(ator has successfully)-.055 E(loaded the plug-in by checking the `)72 +630.6 Q -.88(`A)-.814 G(bout Plug-ins').88 E 2.75('p)-.814 G +(age from the Help menu. This should sho)-2.75 E 2.75(ws)-.275 G(ome-) +-2.75 E(thing lik)72 643.6 Q(e:)-.11 E(8)303.25 769 Q EP +%%Page: 9 13 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(RX Plug-in)195.75 85 Q +(File name: /usr/guest/netscape/plugins/libxrx.sl.6.3)110.5 111 Q 2.75 +(XR)110.5 137 S(emote Acti)-2.75 E -.275(va)-.275 G(tion Plug-in).275 E +(Mime T)110.5 163 Q 36.296(ype Description)-.88 F(Suf)99.874 E<8c78> +-.275 E 33.632(es Enabled)-.165 F 16.782(application/x-rx X)110.5 176 R +(Remote Acti)2.75 E -.275(va)-.275 G(tion Plug-in).275 E 54.587(xrx Y) +22.5 F(es)-1.1 E(The plug-in will be acti)72 198.6 Q -.275(va)-.275 G +(ted by Netscape Na).275 E(vig)-.22 E(ator as soon as you retrie)-.055 E +.33 -.165(ve a)-.275 H .33 -.165(ny d).165 H(ocument of the MIME).165 E +(type application/x-rx.)72 211.6 Q(Se)5.5 E -.165(ve)-.275 G +(ral samples are included in the distrib).165 E +(ution. The most basic one is xload. All)-.22 E +(you need to do is point your bro)72 224.6 Q(wser at the page:)-.275 E +/F1 11/Courier@0 SF(http://your.web.server/xload.html)108 241.6 Q F0 +(If something goes wrong check on the all the pre)72 258.2 Q +(vious steps listed abo)-.275 E .33 -.165(ve a)-.165 H(nd try ag).165 E +2.75(ain. Once)-.055 F(xload is)2.75 E -.11(wo)72 271.2 S +(rking you can try some of the other e).11 E(xamples in the distrib) +-.165 E(ution such as bitmap.html or dtcm.html.)-.22 E/F2 11 +/Times-Bold@0 SF 2.75(3.4.4. T)72 310.2 R(rying Embedding W)-.814 E +(ith an Old X Ser)-.198 E -.11(ve)-.11 G(r).11 E F0(The Netscape Na)72 +339.8 Q(vig)-.22 E(ator plug-in,)-.055 E/F3 11/Times-Italic@0 SF(libxrx) +2.75 E F0 2.75(,w)C(ill w)-2.75 E(ork with an X serv)-.11 E +(er that does not contain the application)-.165 E(group or security e)72 +352.8 Q 2.75(xtensions. The)-.165 F +(application will be started as a separate top-le)2.75 E -.165(ve)-.275 +G 2.75(lc).165 G(lient.)-2.75 E(If you wish to try out the embedding f) +72 369.4 Q(acilities without replacing your desktop X serv)-.11 E(er) +-.165 E 2.75(,y)-.44 G(ou may use the)-2.75 E F3(Xnest)72 382.4 Q F0 +(serv)2.75 E(er)-.165 E(.)-.605 E 2.75(At)72 399 S(ypical)-2.75 E F3 +(Xnest)2.75 E F0(session w)2.75 E(ould look lik)-.11 E 2.75(et)-.11 G +(he follo)-2.75 E(wing:)-.275 E F1 6.6(%X)99.5 418 S(nest :11)-6.6 E 6.6 +(%x)99.5 431 S(term -display :11)-6.6 E F0(These tw)72 453.6 Q 2.75(oc) +-.11 G(ommands start a `)-2.75 E(`nested')-.814 E 2.75('s)-.814 G(erv) +-2.75 E(er and a terminal emulator within that serv)-.165 E(er)-.165 E +5.5(.Y)-.605 G(our f)-6.71 E -.22(avo)-.11 G(rite).22 E(windo)72 466.6 Q +2.75(wm)-.275 G(anager and Netscape Na)-2.75 E(vig)-.22 E(ator can no) +-.055 E 2.75(wb)-.275 G 2.75(ee)-2.75 G -.165(xe)-2.915 G +(cuted from the nested xterm windo).165 E 4.18 -.715(w. Y)-.275 H +(ou may)-.495 E +(wish to \214rst disable access control in the nested serv)72 479.6 Q +(er by running `)-.165 E(`xhost +')-.814 E 2.75('i)-.814 G 2.75(nt)-2.75 +G(he nested xterm.)-2.75 E F2 2.75(3.4.5. Setting)72 518.6 R(Up Y)2.75 E +(our Own A)-1.221 E(pplications T)-.275 E 2.75(oR)-1.012 G(un Ov)-2.75 E +(er The W)-.11 E(eb)-.715 E F0(Based on the e)72 548.2 Q(xamples pro) +-.165 E(vided in the distrib)-.165 E +(ution it should be easy to set up your web serv)-.22 E(er to run your) +-.165 E -.275(ow)72 561.2 S 2.75(na).275 G 2.75(pplications. Ev)-2.75 F +(ery application requires 3 additional \214les to identify it to W)-.165 +E(eb bro)-.88 E(wsers:)-.275 E 16.384(myapp.html An)99.5 580.2 R +(HTML page to present the application embedded)2.75 E 27.395 +(myapp.rx The)99.5 593.2 R(RX document describing the application)2.75 E +28(myapp.pl The)99.5 606.2 R(CGI script to start the application)2.75 E +(Note that the separate `)72 625.2 Q(`.rx')-.814 E 2.75<278c>-.814 G(le\ + could be omitted by implementing the CGI script such that if it is in) +-2.75 E -.22(vo)-.44 G -.11(ke).22 G(d).11 E(without a Q)72 638.2 Q(UER) +-.11 E(Y_STRING it will return the RX content.)-.715 E 1.76 -.88(We d) +5.5 H(ecided not to do so in the distrib).88 E(uted)-.22 E -.165(ex)72 +651.2 S(amples for purpose of clarity).165 E(.)-.715 E +(The xload demo pro)72 667.8 Q(vides a good starting point. Simply mak) +-.165 E 2.75(eac)-.11 G(op)-2.75 E 2.75(yo)-.11 G 2.75(fe)-2.75 G +(ach of the \214les xload.rx,)-2.75 E +(xload.html, and xload.pl. Then look inside them for e)72 680.8 Q -.165 +(ve)-.275 G(ry instance of `).165 E(`xload')-.814 E 2.75('a)-.814 G +(nd change it to whate)-2.75 E -.165(ve)-.275 G(r).165 E +(is appropriate for your application.)72 693.8 Q -1.21(Yo)72 710.4 S +2.75(uw)1.21 G(ill not be able to run the dtcm demo unless you ha)-2.75 +E -.165(ve)-.22 G F3(dtcm)2.915 E F0 +(\(a CDE component\) installed on your)2.75 E(web serv)72 723.4 Q +(er host.)-.165 E(This e)5.5 E(xample sho)-.165 E(ws ho)-.275 E 2.75 +(waC)-.275 G(GI script w)-2.75 E(ould look when an X Print serv)-.11 E +(er is requested.)-.165 E(9)303.25 769 Q EP +%%Page: 10 14 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(The script)72 85 Q/F1 11/Times-Italic@0 SF(dtcm.pl)2.75 E F0 +(is, for that reason, slightly more complicated than other e)2.75 E +(xamples.)-.165 E/F2 11/Times-Bold@0 SF 2.75(3.5. Security)72 124 R +(Extension)2.75 E F0(The SECURITY e)72 153.6 Q(xtension contains ne) +-.165 E 2.75(wp)-.275 G(rotocol needed to pro)-2.75 E +(vide enhanced X serv)-.165 E(er security)-.165 E 5.5(.T)-.715 G(his) +-5.5 E -.165(ex)72 166.6 S +(tension adds to the X protocol the concepts of `).165 E(`trusted')-.814 +E 2.75('a)-.814 G(nd `)-2.75 E(`untrusted')-.814 E 2.75('c)-.814 G 2.75 +(lients. The)-2.75 F(trust status of a)2.75 E +(client is determined by the authorization used at connection setup.)72 +179.6 Q(All clients using host-based authoriza-)5.5 E +(tion are considered `)72 192.6 Q(`trusted')-.814 E 2.75('. Clients) +-.814 F(using other authorization protocols may be either trusted or) +2.75 E(untrusted depending on the data included in the connection autho\ +rization phase.)72 205.6 Q(The requests in the security e)72 222.2 Q(xt\ +ension permit a trusted client to create multiple authorization entries\ + for a)-.165 E(single authorization protocol.)72 235.2 Q +(Each entry is tagged with the trust status to be associated with an)5.5 +E 2.75(yc)-.165 G(lient)-2.75 E(presenting that authorization.)72 248.2 +Q(When a connection identifying an `)72 264.8 Q(`untrusted')-.814 E 2.75 +('c)-.814 G(lient is accepted, the client is restricted from performing) +-2.75 E(certain operations that w)72 277.8 Q +(ould steal or modify data that is held by the serv)-.11 E +(er for trusted clients.)-.165 E(An)5.5 E +(untrusted client performing a disallo)72 290.8 Q +(wed operation will recei)-.275 E .33 -.165(ve p)-.275 H +(rotocol errors.).165 E(Such a client may be)5.5 E +(written to catch these errors and continue operation.)72 303.8 Q +(When a client is untrusted, the serv)72 320.4 Q +(er will also limit the e)-.165 E(xtensions that are a)-.165 E -.275(va) +-.22 G(ilable to the client.).275 E(Each X)5.5 E(protocol e)72 333.4 Q(\ +xtension is responsible for de\214ning what operations are permitted to\ + untrusted clients; by)-.165 E(def)72 346.4 Q(ault, the entire e)-.11 E +(xtension is hidden.)-.165 E(The speci\214cation for the SECURITY e)72 +363 Q(xtension is in)-.165 E F2(xc/doc/specs/Xext/security)2.75 E(.tex) +-.77 E F0(\(LaT)2.75 E(eX source\) and)-.77 E F2 +(xc/doc/hardcopy/Xext/security)72 376 Q(.PS.Z)-.77 E F0 +(\(compressed PostScript\).)2.75 E F2 2.75(3.5.1. Untrusted)72 415 R +-.275(Ap)2.75 G(plication Beha).275 E(vior)-.275 E F0 +(Most applications w)72 444.6 Q +(ork normally when run as untrusted clients, b)-.11 E +(ut since the security e)-.22 E(xtension changes)-.165 E(the semantics \ +of certain parts of the X protocol, it is no surprise that some clients\ + beha)72 457.6 Q .33 -.165(ve d)-.22 H(if).165 E(ferently when)-.275 E +2.75(untrusted. W)72 470.6 R 2.75(en)-.88 G(ote the follo)-2.75 E +(wing signi\214cant beha)-.275 E(vior changes, separated into tw)-.22 E +2.75(oc)-.11 G(ate)-2.75 E(gories: changes)-.165 E(that we e)72 483.6 Q +(xpect could disappear or mutate if the implementation were impro)-.165 +E -.165(ve)-.165 G 2.75(di).165 G 2.75(naf)-2.75 G(uture release, and) +-2.75 E(changes we e)72 496.6 Q(xpect are permanent, le)-.165 E +(gitimate defenses ag)-.165 E(ainst data loss or leakage.)-.055 E F2 +2.75(3.5.1.1. Beha)72 535.6 R(viors That Ar)-.275 E 2.75(eI)-.198 G +(mplementation-Dependent)-2.75 E F0(The follo)72 565.2 Q(wing beha)-.275 +E(viors when running the respecti)-.22 E .33 -.165(ve a)-.275 H +(pplications as untrusted are not mandated by the).165 E +(security design b)72 578.2 Q(ut are side ef)-.22 E +(fects of limitations in the current implementation.)-.275 E F1(ocloc)72 +594.8 Q(k)-.22 E F0(is square because the SHAPE e)2.75 E(xtension hasn') +-.165 E 2.75(tb)-.198 G(een mark)-2.75 E(ed secure yet.)-.11 E +(Similarly)5.5 E 2.75(,X)-.715 G .33 -.165(aw a)-2.75 H(pplica-).165 E +(tions that use o)72 607.8 Q -.275(va)-.165 G 2.75(lb).275 G +(uttons will ha)-2.97 E .33 -.165(ve r)-.22 H(ectangular b).165 E +(uttons instead.)-.22 E(An)72 624.4 Q 2.75(ya)-.165 G +(pplication that depends on an e)-2.75 E +(xtension other than XC-MISC, LBX, or BIG-REQ)-.165 E(UESTS will ha)-.11 +E -.165(ve)-.22 G(dif)72 637.4 Q(ferent beha)-.275 E(vior)-.22 E 2.75 +(,a)-.44 G 2.75(sn)-2.75 G 2.75(oo)-2.75 G(ther e)-2.75 E +(xtensions are currently mark)-.165 E(ed secure.)-.11 E +(The core clients af)5.5 E(fected are)-.275 E F1(xieperf)72 650.4 Q F0 +(and all the xkb utilities.)2.75 E F1(emacs)72 667 Q F0 -.165(ex)2.75 G +(its with a W).165 E(indo)-.44 E 2.75(we)-.275 G +(rror when trying to use the QueryPointer request on the root windo) +-2.75 E 2.75(ww)-.275 G(hen)-2.75 E(you click in a b)72 680 Q(uf)-.22 E +(fer)-.275 E(.)-.605 E F1 -1.705 -.605(Fr a)72 696.6 T(meMak).605 E(er) +-.11 E F0 2.75(,a)C(nd)-2.75 E F1(xwd -r)2.75 E(oot)-.495 E F0(both e) +2.75 E(xit with a W)-.165 E(indo)-.44 E 2.75(we)-.275 G +(rror when trying to use the GetW)-2.75 E(indo)-.44 E(wAttrib)-.275 E +(utes)-.22 E(request on a windo)72 709.6 Q 2.75(wm)-.275 G +(anager frame windo)-2.75 E -.715(w.)-.275 G(10)300.5 769 Q EP +%%Page: 11 15 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(All the remaining changes are in)72 85 Q -.22(vo)-.44 G(lv).22 E +(ed in some w)-.165 E(ay with windo)-.11 E 2.75(wp)-.275 G 2.75 +(roperties. Some)-2.75 F(of these beha)2.75 E(viors)-.22 E +(can be modi\214ed with changes to the SecurityPolic)72 98 Q 2.75<798c> +-.165 G(le; see the)-2.75 E/F1 11/Times-Italic@0 SF(Xserver)2.75 E F0 +(man page.)2.75 E(Se)72 114.6 Q -.165(ve)-.275 G(ral clients e).165 E +(xit with a W)-.165 E(indo)-.44 E 2.75(we)-.275 G +(rror when trying to use the DeleteProperty request on v)-2.75 E +(arious proper)-.275 E(-)-.22 E(ties on the root windo)72 127.6 Q 4.18 +-.715(w. T)-.275 H(hese include).715 E F1(xcmsdb -r)2.75 E(emo)-.407 E +(ve)-.11 E F0(,)A F1(xpr)2.75 E(op -r)-.495 E(oot -r)-.495 E(emo)-.407 E +(ve)-.11 E F0 2.75(,a)C(nd)-2.75 E F1(xstdcmap -delete)2.75 E F0(.)A F1 +(xpr)72 144.2 Q(op)-.495 E F0 -.165(ex)2.75 G +(its with an Atom error when attempting to access protected properties.) +.165 E(The follo)72 160.8 Q(wing tw)-.275 E 2.75(oc)-.11 G +(hanges require, in addition, a `)-2.75 E +(`trusted selection intermediary')-.814 E 2.75('t)-.814 G 2.75(op)-2.75 +G(ro)-2.75 E(vide selection)-.165 E +(transfer from untrusted to trusted clients \(and vice-v)72 173.8 Q 2.75 +(ersa\). R6.3)-.165 F(does not include such a trusted intermedi-)2.75 E +(ary)72 186.8 Q(.)-.715 E F1(xterm)72 203.4 Q F0 -.165(ex)2.75 G +(its with an Atom error when it tries to store the property v).165 E +(alue during a selection transfer \(paste\))-.275 E +(to a trusted selection requester)72 216.4 Q(.)-.605 E(The `)72 233 Q +(`cop)-.814 E 2.75(y0t)-.11 G 2.75(oP)-2.75 G(RIMAR)-2.75 E(Y')-.715 E +2.75('b)-.814 G(utton of)-2.97 E F1(xcutsel)2.75 E F0(does not w)2.75 E +(ork.)-.11 E +(Selection transfer from untrusted clients to trusted clients f)72 249.6 +Q(ails when the untrusted client attempts to use)-.11 E(SendEv)72 262.6 +Q(ent to generate the SelectionNotify e)-.165 E -.165(ve)-.275 G +(nt for the requester).165 E 5.5(.M)-.605 G +(ost requesters will treat this as a)-5.5 E +(transfer timeout and continue.)72 275.6 Q +(Xt-based applications will create an additional Atom each time such a) +5.5 E(transfer is attempted.)72 288.6 Q/F2 11/Times-Bold@0 SF 2.75 +(3.5.1.2. Beha)72 327.6 R(viors That Ar)-.275 E 2.75(eN)-.198 G(ot Lik) +-2.75 E(ely T)-.11 E 2.75(oC)-1.012 G(hange)-2.75 E F0(The follo)72 +357.2 Q(wing beha)-.275 E +(viors represent actions performed by the applications that are disallo) +-.22 E(wed by design.)-.275 E F1(editr)72 373.8 Q(es)-.407 E F0(will f) +2.75 E(ail when pointed at a trusted client when it tries to read windo) +-.11 E 2.75(wp)-.275 G(roperties on a windo)-2.75 E(w)-.275 E -.275(ow) +72 386.8 S(ned by that client.).275 E F1(Xnest)72 403.4 Q F0 -.165(ex) +2.75 G +(its on startup with an Access error as it tries to use the ChangeK).165 +E -.165(ey)-.275 G(boardControl request.).165 E(The ne)72 420 Q(w)-.275 +E F1 -.11(ge)2.75 G(ner).11 E(ate)-.165 E F0(option to)2.75 E F1(xauth) +2.75 E F0 -.11(fa)2.75 G +(ils because untrusted applications are not allo).11 E +(wed to create additional)-.275 E(authorizations.)72 433 Q F1(xhost)72 +449.6 Q F0(cannot be used to modify the host access list.)2.75 E F1(xma) +72 466.2 Q(g)-.11 E F0(gets an unending stream of Dra)2.75 E -.11(wa) +-.165 G +(ble errors as it tries to use the PolyRectangle request on the root).11 +E(windo)72 479.2 Q 4.18 -.715(w. I)-.275 H 2.75(fy).715 G +(ou click to select a location to magnify)-2.75 E 2.75(,x)-.715 G +(mag gets a Dra)-2.75 E -.11(wa)-.165 G +(ble error as it tries to use the).11 E +(GetImage request on the root windo)72 492.2 Q -.715(w.)-.275 G F1(xma) +6.215 E(g)-.11 E F0(could be modi\214ed to e)2.75 E +(xit gracefully under these conditions.)-.165 E F1(netscape)72 508.8 Q +F0 -.165(ex)2.75 G(its on startup with a Dra).165 E -.11(wa)-.165 G +(ble error when trying to use the GetImage request on the root win-).11 +E(do)72 521.8 Q -.715(w.)-.275 G F1(xmodmap)72 538.4 Q F0 -.165(ex)2.75 +G(its with an Access error when trying to use the ChangeK).165 E -.165 +(ey)-.275 G(boardMapping request.).165 E F1(xset)72 555 Q F0(with the) +2.75 E F1(b)2.75 E F0(,)A F1(c)2.75 E F0(,)A F1(led)2.75 E F0 2.75(,o)C +(r)-2.75 E F1(r)2.75 E F0(options e)2.75 E +(xits with an Access error when trying to use the ChangeK)-.165 E -.165 +(ey)-.275 G(board-).165 E(Control request.)72 568 Q -.44(Wi)5.5 G +(th the).44 E F1(bc)2.75 E F0(option, it can')2.75 E 2.75<748c>-.198 G +(nd the MIT)-2.75 E(-SUNDR)-1.012 E -1.221(Y-)-.715 G(NONST)1.221 E(AND) +-1.023 E(ARD e)-.44 E(xtension and)-.165 E -.165(ex)72 581 S +(its gracefully).165 E(.)-.715 E F1(xsetr)72 597.6 Q(oot)-.495 E F0 +-.165(ex)2.75 G(its with a W).165 E(indo)-.44 E 2.75(we)-.275 G +(rror when trying to use the ChangeW)-2.75 E(indo)-.44 E(wAttrib)-.275 E +(utes request on the root)-.22 E(windo)72 610.6 Q -.715(w.)-.275 G F2 +2.75(3.6. A)72 649.6 R(pplication Gr)-.275 E(oup Extension)-.198 E F0 +(The application group e)72 679.2 Q(xtension \(XC-APPGR)-.165 E +(OUP\) pro)-.44 E(vides ne)-.165 E 2.75(wp)-.275 G +(rotocol to implement Application)-2.75 E(Groups \(`)72 692.2 Q -.88(`A) +-.814 G(ppGroups').88 E 2.75('\). The)-.814 F(AppGroup f)2.75 E +(acility allo)-.11 E(ws other clients to share the SubstructureRedirect) +-.275 E(mechanism with the windo)72 705.2 Q 2.75(wm)-.275 G(anager)-2.75 +E 5.5(.T)-.605 G(his allo)-5.5 E(ws another client called the `)-.275 E +(`application group leader')-.814 E(',)-.814 E(such as a web bro)72 +718.2 Q(wser)-.275 E 2.75(,t)-.44 G 2.75(oi)-2.75 G(ntercept a MapReque\ +st made by a third application and reparent its windo)-2.75 E(w)-.275 E +(into the web bro)72 731.2 Q(wser before the windo)-.275 E 2.75(wm)-.275 +G(anager tak)-2.75 E(es control.)-.11 E +(The AppGroup leader may also limit the)5.5 E(11)300.5 769 Q EP +%%Page: 12 16 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(screens and visuals a)72 85 Q -.275(va)-.22 G +(ilable to the applications in the group.).275 E(Users who ha)72 101.6 Q +.33 -.165(ve a)-.22 H 2.75(nX).165 G(C-APPGR)-2.75 E +(OUP enhanced X serv)-.44 E(er and an RX plug-in for their Netscape Na) +-.165 E(vig)-.22 E(ator)-.055 E(web bro)72 114.6 Q +(wser can run programs remotely o)-.275 E -.165(ve)-.165 G 2.75(rt).165 +G(he web and ha)-2.75 E .33 -.165(ve t)-.22 H +(he output appear as part of the presenta-).165 E(tion in their web bro) +72 127.6 Q(wser)-.275 E(.)-.605 E(The only w)72 144.2 Q(ay for an appli\ +cation to become a member of an AppGroup is by using an authorization g\ +ener)-.11 E(-)-.22 E(ated using the ne)72 157.2 Q 2.75(ws)-.275 G +(ecurity e)-2.75 E 2.75(xtension. Whene)-.165 F -.165(ve)-.275 G 2.75 +(ra).165 G 2.75(na)-2.75 G(pplication connects to the serv)-2.75 E(er) +-.165 E 2.75(,t)-.44 G(he authorization)-2.75 E(that it used to connect\ + is tested to see if it belongs to an AppGroup. This means that the Aut\ +horization)72 170.2 Q(data must be transmitted to the remote host where\ + the application will be run. In the case of RX, HTTP is)72 183.2 Q +(used to send the Authorization.)72 196.2 Q(Sites who ha)5.5 E .33 -.165 +(ve c)-.22 H(oncerns about sending unencrypted authorization data).165 E +(such as MIT)72 209.2 Q(-MA)-1.012 E +(GIC-COOKIE-1 via HTTP should con\214gure their web serv)-.44 E +(ers and web bro)-.165 E(wsers to use)-.275 E(SHTTP or SSL.)72 222.2 Q +(The speci\214cation for the XC-APPGR)72 238.8 Q(OUP e)-.44 E +(xtension is in)-.165 E/F1 11/Times-Bold@0 SF(xc/doc/specs/Xext/A)2.75 E +(ppGr)-.275 E(oup.mif)-.198 E F0(\(FrameMak)72 251.8 Q +(er interchange source\) and)-.11 E F1(xc/doc/hardcopy/Xext/A)2.75 E +(ppGr)-.275 E(oup.PS.Z)-.198 E F0(\(compressed PostScript\).)2.75 E F1 +2.75(3.7. Print)72 290.8 R(Extension)2.75 E F0(The print e)72 320.4 Q +(xtension supports output to hardcop)-.165 E 2.75(yd)-.11 G -.275(ev) +-2.75 G(ices using the core X dra).275 E(wing requests.)-.165 E +(The print)5.5 E -.165(ex)72 333.4 S +(tension adds requests for job and page control and de\214nes ho).165 E +2.75(ws)-.275 G(peci\214c printer attrib)-2.75 E(utes are communi-)-.22 +E(cated between the serv)72 346.4 Q(er and printing clients.)-.165 E +(Printer attrib)5.5 E(ute speci\214cations are modeled after the ISO) +-.22 E(10175 speci\214cation.)72 359.4 Q(An X client that w)72 376 Q +(ants to produce hardcop)-.11 E 2.75(yo)-.11 G +(utput will typically open a second connection to an X print)-2.75 E +(serv)72 389 Q(er)-.165 E 2.75(,p)-.44 G +(roduce a print job, and then close the print serv)-2.75 E +(er connection.)-.165 E(The print serv)5.5 E(er may be the same)-.165 E +(process as the display serv)72 402 Q(er \(the term `)-.165 E +(`video serv)-.814 E(er')-.165 E 2.75('i)-.814 G 2.75(ss)-2.75 G +(ometimes used\) although the implementation)-2.75 E(pro)72 415 Q +(vided in R6.3 does not completely support video and print serv)-.165 E +(ers in the same binary)-.165 E(.)-.715 E +(The speci\214cation for the print e)72 431.6 Q(xtension is in)-.165 E +F1(xc/doc/specs/XPRINT/xp_pr)2.75 E(oto.mif)-.198 E F0(\(FrameMak)2.75 E +(er inter)-.11 E(-)-.22 E(change source\) and)72 444.6 Q F1 +(xc/doc/hardcopy/XPRINT/xp_pr)2.75 E(oto.PS.Z)-.198 E F0 +(\(compressed PostScript\).)2.75 E(The library)5.5 E +(API speci\214cation is in)72 457.6 Q F1(xc/doc/specs/XPRINT/xp_library) +2.75 E(.mif)-.77 E F0(\(FrameMak)2.75 E(er interchange source\) and)-.11 +E F1(xc/doc/hardcopy/XPRINT/xp_library)72 470.6 Q(.PS.Z)-.77 E F0 +(\(compressed PostScript\).)2.75 E F1 2.75(3.7.1. Running)72 509.6 R +(an X Print Ser)2.75 E -.11(ve)-.11 G(r).11 E F0(The print serv)72 539.2 +Q(er is simply an X serv)-.165 E(er with the print e)-.165 E +(xtension and special DDX implementations.)-.165 E(The X)5.5 E +(Print Serv)72 552.2 Q(er is started lik)-.165 E 2.75(ea)-.11 G .33 +-.165(ny o)-2.75 H(ther X serv).165 E(er)-.165 E(.)-.605 E +(Here is a sample command line for use with a typical con\214guration:) +72 568.8 Q/F2 11/Courier@0 SF 6.6(%X)99.5 587.8 S(prt :1 -ac)-6.6 E F0 +(The options used in the e)72 610.4 Q(xample are:)-.165 E 43.692(:1 On) +72 627 R 2.75(ah)2.75 G(ost that is running a video display serv)-2.75 E +(er you will need to specify a dif)-.165 E(ferent display)-.275 E +(from the def)127 640 Q(ault.)-.11 E 38.819(-ac Disable)72 656.6 R +(access control, since no simple mechanism for sharing k)2.75 E -.165 +(ey)-.11 G 2.75(si).165 G 2.75(sp)-2.75 G(ro)-2.75 E(vided.)-.165 E +(The X print serv)72 673.2 Q(er supports the follo)-.165 E +(wing additional options:)-.275 E 18.029(-XpFile Points)72 689.8 R +(to the directory containing the print serv)2.75 E +(er con\214guration \214les.)-.165 E(XPCONFIGDIR)72 706.4 Q(En)127 719.4 +Q(vironment v)-.44 E(ariable specifying alternati)-.275 E .33 -.165 +(ve l)-.275 H(ocation of the print serv).165 E +(er con\214guration \214les.)-.165 E(12)300.5 769 Q EP +%%Page: 13 17 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(The print serv)72 85 Q(er)-.165 E(,)-.44 E/F1 11/Times-Italic@0 SF +(Xprt)2.75 E F0 2.75(,i)C 2.75(sb)-2.75 G +(uilt only if the con\214g option XprtServ)-2.97 E(er is YES.)-.165 E +-.165(Fo)5.5 G(ur printer DDXen are pro-).165 E(vided, each with a sepa\ +rate con\214g option to control whether or not it will be included: XpR\ +asterDDX,)72 98 Q(XpColorPclDDX, XpMonoPclDDX, XpPostScriptDDX; see)72 +111 Q/F2 11/Times-Bold@0 SF(xc/con\214g/cf/README)2.75 E F0 5.5(.X)C +(prtServ)-5.5 E(er)-.165 E(def)72 124 Q(aults to the v)-.11 E +(alue of BuildServ)-.275 E(er \(i.e.)-.165 E F1(Xprt)2.75 E F0 +(will be b)2.75 E(uilt by def)-.22 E(ault on all platforms that b)-.11 E +(uild a full X)-.22 E(serv)72 137 Q 2.75(er\). XpRasterDDX)-.165 F +(and XpMonoPclDDX def)2.75 E(ault to NO.)-.11 E +(XpColorPclDDX and XpPostScriptDDX)5.5 E(def)72 150 Q(ault to YES.)-.11 +E(The print serv)72 166.6 Q(er is con\214gured through a directory of c\ +on\214guration \214les that de\214ne printer model types and)-.165 E +(instances of printer models.)72 179.6 Q(An e)5.5 E +(xample con\214guration tree is pro)-.165 E(vided in)-.165 E F2(xc/pr)72 +192.6 Q(ograms/Xser)-.198 E -.11(ve)-.11 G(r/XpCon\214g/).11 E F0 5.5 +(.S)C(ee also)-5.5 E F2(xc/doc/specs/Xser)2.75 E -.11(ve)-.11 G +(r/Xprt.mif).11 E F0(\(FrameMak)2.75 E(er interchange)-.11 E +(source\) and)72 205.6 Q F2(xc/doc/hardcopy/Xser)2.75 E -.11(ve)-.11 G +(r/Xprt.PS.Z).11 E F0 +(\(compressed PostScript\) for further instructions on)2.75 E +(con\214guring)72 218.6 Q F1(Xprt)2.75 E F0(.)A F2 2.75 +(3.7.2. Specifying)72 257.6 R(The Print Ser)2.75 E -.11(ve)-.11 G 2.75 +(rT).11 G 2.75(oAC)-3.762 G(lient)-2.75 E F0(By con)72 287.2 Q -.165(ve) +-.44 G(ntion, clients locate the print serv).165 E(er using the en)-.165 +E(vironment v)-.44 E(ariable XPRINTER.)-.275 E(The syntax of)5.5 E +(XPRINTER is an augmented DISPLA)72 300.2 Q 2.024 -1.012(Y; i)-1.155 H +(.e.)1.012 E(printerName@host:display)108 317.2 Q(where `)72 333.8 Q +(`printerName')-.814 E 2.75('i)-.814 G 2.75(so)-2.75 G +(ne of the printer instances listed in the print serv)-2.75 E +(er con\214guration \214les.)-.165 E(The use)5.5 E +(of XPRINTER and its syntax is an application con)72 346.8 Q -.165(ve) +-.44 G(ntion only; there is nothing in the supplied libraries).165 E +(that uses \(or parses\) this en)72 359.8 Q(vironment v)-.44 E(ariable.) +-.275 E F2 2.75(3.8. Pr)72 398.8 R(oxy Management Pr)-.198 E(otocol) +-.198 E F0 +(The Proxy Management Protocol is an ICE based protocol that pro)72 +428.4 Q(vides a w)-.165 E(ay for application serv)-.11 E(ers to)-.165 E +(easily locate proxy services such as the LBX proxy and the X \214re)72 +441.4 Q -.11(wa)-.275 G(ll proxy).11 E(.)-.715 E -.88(Ty)72 458 S +(pically).88 E 2.75(,as)-.715 G(ervice called a `)-2.75 E +(`proxy manager')-.814 E 2.75('i)-.814 G 2.75(sr)-2.75 G +(esponsible for resolving requests for proxy services,)-2.75 E +(starting ne)72 471 Q 2.75(wp)-.275 G(roxies when appropriate, and k) +-2.75 E(eeping track of all of the a)-.11 E -.275(va)-.22 G +(ilable proxy services.).275 E(The)5.5 E(proxy manager stri)72 484 Q +-.165(ve)-.275 G 2.75(st).165 G 2.75(or)-2.75 G(euse e)-2.75 E +(xisting proxy processes whene)-.165 E -.165(ve)-.275 G 2.75(rp).165 G +(ossible.)-2.75 E(The Proxy Management Protocol is described in)72 500.6 +Q F2(xc/doc/specs/PM/PM_spec)2.75 E F0(.)A F2 2.75(3.9. Con\214guration) +72 539.6 R F0(As in R6.1, the top-le)72 569.2 Q -.165(ve)-.275 G 2.75 +(lM).165 G(ak)-2.75 E(e\214le is no longer o)-.11 E -.165(ve)-.165 G +-.22(r-).165 G(ridden by the \214rst b).22 E 2.75(uild. Instead)-.22 F +2.75(an)2.75 G .55 -.275(ew \214)-2.75 H(le).275 E F1(xmak)2.75 E +(e\214le)-.11 E F0(is created.)72 582.2 Q +(Thus is it not necessary to tak)5.5 E 2.75(ea)-.11 G .33 -.165(ny a) +-2.75 H(dditional steps to reset the b).165 E(uilds.)-.22 E(The \214le) +72 598.8 Q F2(xc/con\214g/cf/README)2.75 E F0(pro)2.75 E +(vides more guidance on ho)-.165 E 2.75(wt)-.275 G 2.75(ow)-2.75 G +(rite an Imak)-2.75 E(e\214le, including a list of)-.11 E -.275(va)72 +611.8 S(riables that may be set in an Imak).275 E 2.75(e\214le. This) +-.11 F(\214le is strongly recommended reading for Imak)2.75 E(e\214le) +-.11 E(authors.)72 624.8 Q(The LaT)72 641.4 Q(eX te)-.77 E +(xt processor is supported as of R6.1.)-.165 E(If you ha)5.5 E .33 -.165 +(ve L)-.22 H(aT).165 E(eX on your system, turn on HasLate)-.77 E(x)-.165 +E(to ha)72 654.4 Q .33 -.165(ve t)-.22 H(he Mak).165 E(eLate)-.11 E +(xDoc rule use it.)-.165 E +(Also since R6.1, with System V Release 4 \(SVR4\) compilers we no)72 +671 Q 2.75(wu)-.275 G(se the)-2.75 E(\255Xa \(ANSI C with nati)4.583 E +-.165(ve)-.275 G -.165(ex)72 684 S +(tensions\) compiler \215ag rather than).165 E(\255Xc \(limit en)4.583 E +(vironment to that speci\214ed in the standard\).)-.44 E(This pro-)5.5 E +(vides access to the full richness of the platform.)72 697 Q +(Unfortunately)5.5 E 2.75(,i)-.715 G 2.75(ta)-2.75 G +(lso de\214nes the preprocessor symbol)-2.75 E .916(__)72 710 S -1.834 +(STDC_ _)-.916 F(to 0, instead of 1 as speci\214ed by the standard.)2.75 +E(Therefore we use `)5.5 E(`#ifdef _)-.916 E -1.834(_STDC_ _').916 F +2.75('i)-.916 G 2.75(no)-2.75 G(ur)-2.75 E(sources rather than `)72 723 +Q(`#if _)-.916 E -1.834(_STDC_ _').916 F 2.75('. On)-.916 F +(HP-UX systems we use the)2.75 E(\255Ae compiler option instead of)4.583 +E(13)300.5 769 Q EP +%%Page: 14 18 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(\255Aa, also to access the full en)73.833 85 Q(vironment of) +-.44 E(fered by the platform.)-.275 E(As in R6.1, the imak)72 101.6 Q +2.75(ev)-.11 G(ariables)-3.025 E/F1 11/Times-Bold@0 SF +(InstallXdmCon\214g)2.75 E F0(,)A F1(InstallXinitCon\214g)2.75 E F0 2.75 +(,a)C(nd)-2.75 E F1(InstallA)2.75 E(ppDefFiles)-.275 E F0(sup-)2.75 E +(press o)72 114.6 Q -.165(ve)-.165 G(rwriting e).165 E +(xisting \214les; if the \214les didn')-.165 E 2.75(tp)-.198 G(re)-2.75 +E(viously e)-.275 E(xist, the \214les are al)-.165 E -.11(wa)-.11 G +(ys installed.).11 E(This)5.5 E(interpretation mak)72 127.6 Q +(es bootstrapping a ne)-.11 E 2.75(ws)-.275 G +(ystem easier than in R6 and earlier releases.)-2.75 E 2.75(An)72 144.2 +S .55 -.275(ew c)-2.75 H(on\214guration b).275 E(uild option, GzipF)-.22 +E(ontCompression, has been added to use)-.165 E/F2 11/Times-Italic@0 SF +(gzip)2.75 E F0(rather than)2.75 E F2(compr)2.75 E(ess)-.407 E F0 +(for font compression.)72 157.2 Q(It def)5.5 E(aults to NO.)-.11 E +(The b)72 173.8 Q(uild creates a ne)-.22 E 2.75(wd)-.275 G(irectory) +-2.75 E F1(xc/exports)2.75 E F0 +(into which the header \214les, libraries, and certain b)2.75 E +(uild utility)-.22 E(binaries are symlink)72 186.8 Q 2.75(ed. This)-.11 +F(greatly simpli\214es Imak)2.75 E +(e\214le construction and supports multiple de)-.11 E -.165(ve)-.275 G +(lopment).165 E +(projects \(such as X, Motif, and CDE\) on a single system.)72 199.8 Q +(Imak)72 216.4 Q 2.75(er)-.11 G(ules and template \214les for b)-2.75 E +(uilding Motif and CDE were contrib)-.22 E +(uted by the OSF CDE/Motif pro-)-.22 E(ject and are included in R6.3.)72 +229.4 Q F1 2.75(3.10. Documentation)72 268.4 R F0(Additional X serv)72 +298 Q(er internals documentation is pro)-.165 E(vided in the)-.165 E F1 +(/xc/doc/specs/Xser)2.75 E -.11(ve)-.11 G(r/).11 E F0(directory for the) +2.75 E(XC-APPGR)72 311 Q(OUP and SECURITY e)-.44 E 2.75(xtensions. An) +-.165 F(analysis and rationale for the SECURITY e)2.75 E(xtension)-.165 +E(will also be found in that directory)72 324 Q 5.5(.S)-.715 G +(peci\214cations for the other ne)-5.5 E 2.75(ws)-.275 G +(tandards are in)-2.75 E F1(/xc/doc/specs/RX/)2.75 E F0(,)A F1 +(/xc/doc/specs/XPRINT/)72 337 Q F0 2.75(,a)C(nd)-2.75 E F1 +(/xc/doc/specs/Xext/)2.75 E F0(.)A F1 2.75(3.11. Header)72 376 R(Files) +2.75 E(xc/include/Xos_r)72 405.6 Q(.h)-1.1 E F0(is a ne)2.75 E 2.75(wh) +-.275 G(eader \214le to promote portable source code using thread-safe \ +implementa-)-2.75 E +(tions of getpwnam, getpwuid, gethostbyname, gethostbyaddr)72 418.6 Q +2.75(,a)-.44 G(nd getservbyname.)-2.75 E(It is not required by)5.5 E(an) +72 431.6 Q 2.75(yXC)-.165 G(onsortium standard.)-2.75 E F1 2.75(3.12. X) +72 470.6 R(Ser)2.75 E -.11(ve)-.11 G(r).11 E F0(The security)72 500.2 Q +2.75(,L)-.715 G(BX, printing, and AppGroup e)-2.75 E +(xtensions are all ne)-.165 E 4.18 -.715(w. I)-.275 H 2.75(nR).715 G +(6.3 only MIT)-2.75 E(-MA)-1.012 E(GIC-)-.44 E +(COOKIE-1 is supported in the security e)72 513.2 Q 2.75(xtension. P) +-.165 F(arts of the security polic)-.165 E 2.75(ya)-.165 G +(re con\214gured at run-time)-2.75 E(from the \214le)72 526.2 Q F1 +(/usr/X11R6.3/lib/X11/xser)2.75 E -.11(ve)-.11 G(r/SecurityP).11 E +(olicy)-.22 E F0 5.5(.S)C(ite-de\214ned polic)-5.5 E 2.75(ys)-.165 G +(trings used by)-2.75 E F2(xfwp)2.75 E F0(and)2.75 E +(rules for property access by untrusted clients are de\214ned there.)72 +539.2 Q(See the)5.5 E F2(Xserver)2.75 E F0(man page for full details.) +2.75 E F1 2.75(3.12.1. New)72 578.2 R(De)2.75 E(vice Support)-.165 E F0 +(Support has been added for the Sun TCX frame b)72 607.8 Q(uf)-.22 E +(fer as a dumb 8-bit frame b)-.275 E(uf)-.22 E(fer on Solaris 2.5.)-.275 +E(Ne)72 624.4 Q 2.75(wX)-.275 G(Free86 serv)-2.75 E +(ers based on XFree86 3.2 are included.)-.165 E F1 2.75(3.12.2. Inter)72 +663.4 R(nal Changes)-.165 E F0(The security e)72 693 Q(xtension pro) +-.165 E(vides ne)-.165 E 2.75(wi)-.275 G +(nternal resource ID lookup interf)-2.75 E +(aces that incorporate the access)-.11 E(control lookup.)72 706 Q +(In order to be declared secure and therefore be made a)5.5 E -.275(va) +-.22 G(ilable to untrusted clients, other).275 E -.165(ex)72 719 S +(tensions should, at a minimum, be changed to use these interf).165 E +2.75(aces. Depending)-.11 F(on what the e)2.75 E(xtension)-.165 E(does,\ + more may need to be done in its implementation before it can appropria\ +tely be labeled `)72 732 Q(`secure')-.814 E('.)-.814 E(14)300.5 769 Q EP +%%Page: 15 19 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(Refer to the documents)72 85 Q/F1 11/Times-Bold@0 SF +(xc/doc/specs/Xser)2.75 E -.11(ve)-.11 G(r/appgr).11 E(oup.ms)-.198 E F0 +(and)2.75 E F1(xc/doc/specs/Xser)2.75 E -.11(ve)-.11 G(r/secint.tex).11 +E F0(for)2.75 E +(implementation details of the application group and security e)72 98 Q +(xtensions, respecti)-.165 E -.165(ve)-.275 G(ly).165 E(.)-.715 E F1 +2.75(3.13. ICE)72 137 R(Library Addition)2.75 E F0 1.76 -.88(To s)72 +166.6 T(upport proxy managers and \214re).88 E -.11(wa)-.275 G +(ll proxies using ICE on well-kno).11 E +(wn TCP ports, an additional inter)-.275 E(-)-.22 E -.11(fa)72 179.6 S +(ce has been added to the ICE library).11 E 5.5(.T)-.715 G(his ne)-5.5 E +2.75(wi)-.275 G(nterf)-2.75 E(ace, IceListenF)-.11 E(orW)-.165 E(ellKno) +-.88 E(wnConnections, has)-.275 E(equi)72 192.6 Q -.275(va)-.275 G +(lent calling parameters to IceListenF).275 E +(orConnections plus an ICE netw)-.165 E(ork id parameter)-.11 E(.)-.605 +E F1 2.75(3.14. Xlib)72 231.6 R -1.1(Ve)2.75 G(rtical Writing and User) +1.1 E(-De\214ned Characters)-.407 E F0(The Xlib output method implement\ +ation has been enhanced to support the XOM v)72 261.2 Q(alue dra)-.275 E +(wing direction)-.165 E(XOMOrientation_TTB_R)72 274.2 Q 2.75(TL. V)-.66 +F(ertical writing information and other locale speci\214c information i\ +s read)-1.221 E(from the \214le /%L/XLC_LOCALE where the XL\ +ocaleDir con\214guration option def)72 287.2 Q(aults to)-.11 E F1 +(/usr/X11R6.3/lib/X11/locale)72 300.2 Q F0(.)A(The X[mb|wc]T)72 316.8 Q +-.165(ex)-.77 G(tEscapement functions no).165 E 2.75(wr)-.275 G +(eturn the te)-2.75 E(xt escapement in pix)-.165 E(els for the v)-.165 E +(ertical or hori-)-.165 E +(zontal direction depending on the XNOrientation XOCV)72 329.8 Q(alue.) +-1.221 E(The X[mb|wc]Dra)72 346.4 Q(wString functions will no)-.165 E +2.75(wr)-.275 G(ender a character string in the v)-2.75 E +(ertical or horizontal direc-)-.165 E +(tion depending on the XNOrientation XOCV)72 359.4 Q(alue.)-1.221 E +(The Xlib NLS database implementation has been enhanced to support e)72 +376 Q(xtended se)-.165 E(gments used for inter)-.165 E(-)-.22 E +(changing non-standard code sets.)72 389 Q +(Support has been added for control sequences and encoding names)5.5 E +(used in e)72 402 Q(xtended se)-.165 E(gments and con)-.165 E -.165(ve) +-.44 G(rsion of glyph inde).165 E -.165(xe)-.165 G 2.75(sw).165 G +(hen interchanging data in e)-2.75 E(xtended se)-.165 E(g-)-.165 E +(ments.)72 415 Q F1 2.75(3.15. Xt)72 454 R(Geometry Management Deb)2.75 +E(ugger)-.22 E F0(Daniel Dardailler')72 483.6 Q 2.75(s`)-.605 G(`GeoT) +-3.564 E(attler')-.88 E 2.75('c)-.814 G(ode has been mer)-2.75 E +(ged into the Xt Intrinsics library implementation.)-.198 E +(This is not a standard.)72 496.6 Q +(If libXt is compiled with the XT_GEO_T)5.5 E -1.221(AT)-1.023 G +(TLER symbol de\214ned \(currently there)1.221 E(is no b)72 509.6 Q +(uild con\214guration support to do this\) then a `)-.22 E(`geoT)-.814 E +(attler')-.88 E 2.75('r)-.814 G(esource may be speci\214ed for an)-2.75 +E 2.75(yw)-.165 G(idget)-2.75 E(in an application.)72 522.6 Q +(If the geoT)5.5 E(attler resource for a widget instance is T)-.88 E +(rue then libXt will generate deb)-.385 E(ug-)-.22 E +(ging information to stdout when the widget mak)72 535.6 Q +(es geometry change requests.)-.11 E -.165(Fo)72 552.2 S 2.75(re).165 G +(xample, if the resources specify:)-2.915 E/F2 11/Courier@0 SF +(myapp*draw.XmScale.geoTattler: ON)99.5 571.2 Q +(*XmScrollBar.geoTattler:ON)99.5 584.2 Q +(*XmRowColumn.exit_button.geoTattler:ON)99.5 597.2 Q F0 +(then geometry management deb)72 616.2 Q(ugging information will be gen\ +erated for all the XmScale children of the)-.22 E(widget named dra)72 +629.2 Q 1.43 -.715(w, a)-.165 H +(ll the XmScrollBars, and the widget named e).715 E(xit_b)-.165 E +(utton in an)-.22 E 2.75(yX)-.165 G(mRo)-2.75 E(wColumn.)-.275 E(15) +300.5 769 Q EP +%%Page: 16 20 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E/F1 11/Times-Bold@0 SF 2.75(3.16. New)72 85 R(Pr)2.75 E(ograms) +-.198 E F0(There are ne)72 114.6 Q 2.75(wc)-.275 G(ore programs)-2.75 E +/F2 11/Times-Italic@0 SF(lbxpr)2.75 E(oxy)-.495 E F0(,)A F2(pr)2.75 E +(oxymngr)-.495 E F0(,)A F2(x\214ndpr)2.75 E(oxy)-.495 E F0(,)A F2(xfwp) +2.75 E F0(,)A F2(Xprt)2.75 E F0 2.75(,a)C(nd)-2.75 E F2(xrx)2.75 E F0(.) +A 23.529(lbxproxy The)72 144.2 R F2(lbxpr)2.75 E(oxy)-.495 E F0 +(program is used to `)2.75 E(`translate')-.814 E 2.75('Xp)-.814 G +(rotocol to LBX protocol.)-2.75 E(It should be)5.5 E -.165(exe)138 157.2 +S(cuted on the same host as the client application or on a host connect\ +ed to the client host).165 E(by a f)138 170.2 Q(ast netw)-.11 E(ork.) +-.11 E F2(lbxpr)5.5 E(oxy)-.495 E F0 +(appears to the clients using it as another X serv)2.75 E +(er; that is, the)-.165 E(clients connect through it using the con)138 +183.2 Q -.165(ve)-.44 G(ntional DISPLA).165 E 2.75(Ys)-1.155 G +(yntax, specifying the proxy)-2.75 E(host in place of the serv)138 196.2 +Q(er)-.165 E(.)-.605 E F2(lbxpr)5.5 E(oxy)-.495 E F0 +(can be used stand-alone or in conjunction with)2.75 E F2(pr)2.75 E(ox-) +-.495 E(ymngr)138 209.2 Q F0(and)2.75 E F2(x\214ndpr)2.75 E(oxy)-.495 E +F0 5.5(.S)C(ee the)-5.5 E F2(lbxpr)2.75 E(oxy)-.495 E F0 +(man page for further details.)2.75 E(proxymngr)72 225.8 Q F2(pr)17.116 +E(oxymngr)-.495 E F0(is a process that runs continuously to control oth\ +er proxy applications, such as)2.75 E F2(lbxpr)138 238.8 Q(oxy)-.495 E +F0(and)2.75 E F2(xfwp)2.75 E F0 5.5(.I)C 2.75(tm)-5.5 G +(aintains a list of acti)-2.75 E .33 -.165(ve p)-.275 H +(roxy processes and responds to queries).165 E(from)138 251.8 Q F2 +(x\214ndpr)2.75 E(oxy)-.495 E F0 5.5(.S)C(ee the)-5.5 E F2(pr)2.75 E +(oxymngr)-.495 E F0(man pages for further details.)2.75 E(x\214ndproxy) +72 268.4 Q F2(x\214ndpr)17.721 E(oxy)-.495 E F0 +(is used to locate a running proxy process for a gi)2.75 E -.165(ve) +-.275 G 2.75(nn).165 G(etw)-2.75 E(ork service, such as)-.11 E F2(lbxpr) +138 281.4 Q(oxy)-.495 E F0(or)2.75 E F2(xfwp)2.75 E F0 2.75(,o)C 2.75 +(rt)-2.75 G 2.75(or)-2.75 G +(equest that a proxy be started if one is not already running.)-2.75 E +F2(x\214nd-)5.5 E(pr)138 294.4 Q(oxy)-.495 E F0(communicates with)2.75 E +F2(pr)2.75 E(oxymngr)-.495 E F0(to perform the actual w)2.75 E(ork.)-.11 +E(xfwp)72 311 Q F2(xfwp)43.395 E F0(is the X \214re)2.75 E -.11(wa)-.275 +G(ll application proxy).11 E 5.5(.I)-.715 G 2.75(ti)-5.5 G 2.75(sd)-2.75 +G(esigned to run on a netw)-2.75 E(ork \214re)-.11 E -.11(wa)-.275 G +(ll host).11 E(and relay X protocol between applications \(typically ou\ +tside the \214re)138 324 Q -.11(wa)-.275 G(ll\) and the X serv).11 E(er) +-.165 E(\(inside the \214re)138 337 Q -.11(wa)-.275 G(ll\).).11 E F2 +(xfwp)5.5 E F0(appears to the clients using it as another X serv)2.75 E +(er; that is, clients)-.165 E(connect through it using the con)138 350 Q +-.165(ve)-.44 G(ntional DISPLA).165 E 2.75(Ys)-1.155 G(yntax.)-2.75 E F2 +(xfwp)5.5 E F0(will not do an)2.75 E(ything)-.165 E(useful without)138 +363 Q F2(pr)2.75 E(oxymngr)-.495 E F0(and)2.75 E F2(x\214ndpr)2.75 E +(oxy)-.495 E F0(or)2.75 E F2(xrx)2.75 E F0 5.5(.S)C(ee the)-5.5 E F2 +(xfwp)2.75 E F0(man page for further details.)2.75 E(Xprt)72 379.6 Q F2 +(Xprt)45.837 E F0(is the print serv)2.75 E(er)-.165 E 2.75(,b)-.44 G +(uilt as part of the Xserv)-2.97 E(er b)-.165 E(uild if the)-.22 E F1 +(XprtSer)2.75 E -.11(ve)-.11 G(r).11 E F0(con\214g option is)2.75 E 2.75 +(YES. The)138 392.6 R(print serv)2.75 E +(er supports printing to PostScript and PCL de)-.165 E +(vices, as well as raster)-.275 E(output to an)138 405.6 Q F2(xwd)2.75 E +F0(format \214le \(and thence to an)2.75 E 2.75(yp)-.165 G(rinter that) +-2.75 E F2(xpr)2.75 E F0 2.75(supports\). The)2.75 F(print e)2.75 E +(xten-)-.165 E(sion w)138 418.6 Q(as designed to be inte)-.11 E +(grated with the `)-.165 E(`video')-.814 E 2.75('s)-.814 G(erv)-2.75 E +(er in a single process b)-.165 E(ut the R6.3)-.22 E +(implementation does not support a combined video and print serv)138 +431.6 Q(er)-.165 E 5.5(.D)-.605 G(etails of con\214gura-)-5.5 E +(tion for)138 444.6 Q F2(Xprt)2.75 E F0(are in)2.75 E F1 +(xc/doc/specs/Xser)2.75 E -.11(ve)-.11 G(r/Xprt.mif).11 E F0(\(FrameMak) +2.75 E(er interchange source\) and)-.11 E F1(xc/doc/hardcopy/Xser)138 +457.6 Q -.11(ve)-.11 G(r/Xprt.PS.Z).11 E F0(\(compressed PostScript\).) +2.75 E(xrx, libxrx)72 474.2 Q F2(xrx)19.558 E F0(is the W)2.75 E(eb bro) +-.88 E +(wser helper application that interprets documents in the RX MIME type) +-.275 E(to remotely launch applications via the W)138 487.2 Q(eb)-.88 E +5.5(.I)-.44 G(ts companion)-5.5 E F2(libxrx)2.75 E F0(is a plug-in for) +2.75 E(Netscape Na)138 500.2 Q(vig)-.22 E(ator 3.0 that supports in add\ +ition the capability to visually embed the)-.055 E +(remote applications in the associated bro)138 513.2 Q(wser W)-.275 E +(eb page windo)-.88 E 4.18 -.715(w. S)-.275 H(ee the).715 E F2(xrx)2.75 +E F0(man page for)2.75 E(further details.)138 526.2 Q F1 2.75 +(3.16.1. Using)72 565.2 R(The LBX Pr)2.75 E(oxy)-.198 E F0 +(The implementation of)72 594.8 Q F2(lbxpr)2.75 E(oxy)-.495 E F0(pro) +2.75 E +(vided here will support an arbitrary number of clients connecting to) +-.165 E(the same X serv)72 607.8 Q(er)-.165 E 5.5(.A)-.605 G(separate) +-2.75 E F2(lbxpr)2.75 E(oxy)-.495 E F0 +(process is required for each separate X serv)2.75 E(er process.)-.165 E +2.75(At)5.5 G(ypical)-2.75 E(command line to in)72 620.8 Q -.22(vo)-.44 +G -.11(ke).22 G F2(lbxpr)2.86 E(oxy)-.495 E F0(is)2.75 E/F3 11/Courier@0 +SF(lbxproxy :22 -display myhost:0)108 639.8 Q F0 +(This command runs a proxy with the X serv)72 662.4 Q(er `)-.165 E +(`myhost:0')-.814 E 2.75('a)-.814 G 2.75(st)-2.75 G(he tar)-2.75 E 2.75 +(get. Clients)-.198 F(must connect to the)2.75 E(proxy using `)72 675.4 +Q(`proxyhost:22')-.814 E 2.75('a)-.814 G 2.75(st)-2.75 G(he DISPLA)-2.75 +E 5.588 -1.419(Y. T)-1.155 H +(he .Xauthority \214le for these clients must contain an entry)1.419 E +(for serv)72 688.4 Q(er `)-.165 E(`proxyhost:22')-.814 E 2.75('w)-.814 G +(ith the same MIT)-2.75 E(-MA)-1.012 E(GIC-COOKIE as `)-.44 E +(`myhost:0')-.814 E(', or the X serv)-.814 E(er must be)-.165 E +(con\214gured to permit connections from an)72 701.4 Q 2.75(yh)-.165 G +(ost on the netw)-2.75 E(ork.)-.11 E(16)300.5 769 Q EP +%%Page: 17 21 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(Here is an e)72 85 Q(xample sho)-.165 E(wing ho)-.275 E 2.75(wt)-.275 +G 2.75(os)-2.75 G(etup the appropriate .Xauthority entries:)-2.75 E/F1 +11/Courier@0 SF 6.6(%l)99.5 104 S(bxproxy :22 -display myws:0)-6.6 E 6.6 +(%x)99.5 117 S(auth list)-6.6 E 6.6 +(myws:0 MIT-MAGIC-COOKIE-1 7fd231ccdce2)99.5 130 R 6.6 +(myws/unix:0 MIT-MAGIC-COOKIE-1 7fd231ccdce2)99.5 143 R 6.6(%x)99.5 156 +S(auth -f $HOME/proxyauth add proxyhost:22 .)-6.6 E(7fd231ccdce2)13.2 E +6.6(xauth: creating)99.5 169 R(new authority file /usr/myself/proxyauth) +6.6 E 6.6(%x)99.5 182 S(auth -f $HOME/proxyauth)-6.6 E +(add proxyhost/unix:22 .)13.2 E(7fd231ccdce2)13.2 E 6.6(%s)99.5 195 S +(etenv XAUTHORITY $HOME/proxyauth)-6.6 E F0(In this e)72 217.6 Q +(xample, the authorization tok)-.165 E +(en for display 0 is copied into a ne)-.11 E 2.75<778c>-.275 G(le `) +-2.75 E(`proxyauth')-.814 E 2.75('a)-.814 G(nd associated)-2.75 E +(with the LBX proxy serv)72 230.6 Q(er display number \(22\).)-.165 E +(The ne)5.5 E 2.75(wa)-.275 G +(uthority \214le may then be copied to another)-2.75 E +(host and used as the v)72 243.6 Q(alue of the XA)-.275 E(UTHORITY en) +-.605 E(vironment v)-.44 E(ariable.)-.275 E(The)72 260.2 Q/F2 11 +/Times-Italic@0 SF(pr)2.75 E(oxymngr)-.495 E F0 +(daemon is usually con\214gured to in)2.75 E -.22(vo)-.44 G -.11(ke).22 +G F2(lbxpr)2.86 E(oxy)-.495 E F0(automatically when a user or a CGI)2.75 +E(script runs)72 273.2 Q F2(x\214ndpr)2.75 E(oxy -name LBX)-.495 E F0(.) +A(See the)72 289.8 Q F2(lbxpr)2.75 E(oxy)-.495 E F0 +(man page for further details.)2.75 E/F3 11/Times-Bold@0 SF 2.75 +(3.17. Major)72 328.8 R(Additions to Existing Pr)2.75 E(ograms)-.198 E +F0(The)72 358.4 Q F2 -.11(ge)2.75 G(ner).11 E(ate)-.165 E F0(option of) +2.75 E F2(xauth)2.75 E F0 +(is used to obtain additional authorization tok)2.75 E +(ens for client connections.)-.11 E(These authorization tok)72 371.4 Q(\ +ens may specify that the client using them is to be restricted in the o\ +perations that)-.11 E(may be performed in the X serv)72 384.4 Q(er)-.165 +E 5.5(.T)-.605 G(he authorization tok)-5.5 E +(ens may be independently re)-.11 E -.22(vo)-.275 G -.11(ke).22 G 2.75 +(d. Refer).11 F(to the)2.75 E(SECURITY e)72 397.4 Q +(xtension for further details on authorizations.)-.165 E(The)72 414 Q F2 +(xauth)2.75 E F0(man page gi)2.75 E -.165(ve)-.275 G 2.75(sf).165 G +(ull details on the ne)-2.75 E 2.75(wg)-.275 G(enerate command.)-2.75 E +(Here is an e)5.5 E(xample use:)-.165 E F1 +(xauth -f untrusted-auth-file g :0 . timeout 0)99.5 433 Q +(setenv XAUTHORITY untrusted-auth-file)99.5 446 Q F0(This will cause)72 +465 Q F2(xauth)2.75 E F0(to contact serv)2.75 E(er `)-.165 E(`:0')-.814 +E 2.75('t)-.814 G 2.75(og)-2.75 G +(et a long-lasting untrusted cookie which it then stores in)-2.75 E 2.75 +(untrusted-auth-\214le. By)72 478 R(setting XA)2.75 E +(UTHORITY to point to untrusted-auth-\214le, subsequent applications) +-.605 E(run from this shell to serv)72 491 Q(er :0 will be untrusted.) +-.165 E(The `)5.5 E(`g')-.814 E 2.75('i)-.814 G 2.75(ss)-2.75 G +(hort for `)-2.75 E(`generate')-.814 E(', and the `)-.814 E(`.)-.814 E +1.628 -.814('' i)-.77 H 2.75(ss).814 G(hort for)-2.75 E -.814(``)72 504 +S(MIT).814 E(-MA)-1.012 E(GIC-COOKIE-1')-.44 E 2.75('. If)-.814 F +(you omit the -f ar)2.75 E(gument,)-.198 E F2(xauth)2.75 E F0 +(will use $XA)2.75 E(UTHORITY \(or ~/.Xau-)-.605 E +(thority\), which may not be what you w)72 517 Q +(ant, especially if you are creating an untrusted auth.)-.11 E(This is) +5.5 E(because)72 530 Q F2(xauth)2.75 E F0(will replace the trusted auth\ + in ~/.Xauthority \(put there by xdm\) with the untrusted one, pre-)2.75 +E -.165(ve)72 543 S(nting you from making an).165 E 2.75(yf)-.165 G +(urther trusted connections to the serv)-2.75 E(er)-.165 E(.)-.605 E +(The)72 569 Q F2(xterm)2.75 E F0(terminal emulator no)2.75 E 2.75(ws) +-.275 G(upports the acti)-2.75 E .33 -.165(ve i)-.275 H(con mode that w) +.165 E(as in X v)-.11 E(ersion 10 Release 4.)-.165 E(See)5.5 E(the)72 +582 Q F2(xterm)2.75 E F0(man page for further details.)2.75 E +(There is support in the)5.5 E F2(xterm)2.75 E F0(source to b)2.75 E +(uild xterm without the)-.22 E(acti)72 595 Q .33 -.165(ve i)-.275 H +(con mode for those who may care for some reason to not pro).165 E +(vide it.)-.165 E F3 2.75(3.18. ANSI\214cation)72 634 R F0(As noted pre) +72 663.6 Q(viously under `)-.275 E(`Con\214guration Files')-.916 E +(', for pragmatic reasons we changed the w)-.916 E(ay we use)-.11 E .916 +(__)72 676.6 S -1.834(STDC_ _)-.916 F(to test for standard C compilers.) +2.75 E(R6.1 w)5.5 E(as of)-.11 E +(\214cially the last release that supported traditional)-.275 E(K&R C.) +72 689.6 Q(R6.3 assumes a standard C compiler and en)5.5 E 2.75 +(vironment. W)-.44 F 2.75(eh)-.88 G -2.475 -.22(av e)-2.75 H +(not intentionally remo)2.97 E -.165(ve)-.165 G 2.75(da).165 G -.165(ny) +-2.75 G +(K&R C support from old code; most of the release will continue to b)72 +702.6 Q(uild on older platforms.)-.22 E(17)300.5 769 Q EP +%%Page: 18 22 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E/F1 11/Times-Bold@0 SF 2.75(4. Kno)72 85 R(wn Bugs)-.11 E F0 +(There are no e)72 114.6 Q(xamples in this release sho)-.165 E(wing ho) +-.275 E 2.75(wt)-.275 G 2.75(ou)-2.75 G(se the print e)-2.75 E 2.75 +(xtension. CDE)-.165 F(2.1 has se)2.75 E -.165(ve)-.275 G(ral such).165 +E(applications.)72 127.6 Q/F2 11/Times-Italic@0 SF(lbxpr)72 144.2 Q(oxy) +-.495 E F0 -.11(fa)2.75 G(ils to start on SCO Open Serv).11 E(er)-.165 E +(.)-.605 E F2(x11perf)72 160.8 Q F0(running through)2.75 E F2(lbxpr)2.75 +E(oxy)-.495 E F0(will tickle a dra)2.75 E(wing b)-.165 E +(ug in cfb-based X serv)-.22 E(ers that causes some lines)-.165 E +(and curv)72 173.8 Q(es to be dra)-.165 E +(wn to the wrong coordinates and outside the windo)-.165 E 2.75(wb)-.275 +G 2.75(oundaries. Use)-2.75 F(the)2.75 E F2(-no)2.75 E(gfx)-.11 E F0 +(option to)72 186.8 Q F2(lbxpr)2.75 E(oxy)-.495 E F0(as a w)2.75 E +(orkaround on af)-.11 E(fected serv)-.275 E(ers.)-.165 E(If)72 203.4 Q +F2(pr)2.75 E(oxymngr)-.495 E F0 -.165(ex)2.75 G +(its abnormally all managed proxies die.).165 E +(Documentation is missing on ho)72 220 Q 2.75(wt)-.275 G 2.75(ou)-2.75 G +(se the v)-2.75 E(ertical writing and user)-.165 E +(-de\214ned character support.)-.22 E(Documentation is sparse on ho)72 +236.6 Q 2.75(wt)-.275 G 2.75(oc)-2.75 G(on\214gure)-2.75 E F2(Xprt)2.75 +E F0(.)A(There are no e)72 253.2 Q(xample fonts in the release with v) +-.165 E(ertical te)-.165 E(xt escapement \(`)-.165 E(`v)-.814 E +(ertical writing fonts')-.165 E('\).)-.814 E F1 2.75(5. Filing)72 305.2 +R(Bug Reports)2.75 E F0(If you \214nd a reproducible b)72 334.8 Q +(ug in softw)-.22 E(are in the)-.11 E F1(xc/)2.75 E F0(directory)2.75 E +2.75(,o)-.715 G 2.75<728c>-2.75 G(nd b)-2.75 E(ugs in the)-.22 E F1(xc) +2.75 E F0(documentation,)2.75 E(please send a b)72 347.8 Q +(ug report to The Open Group using the form in the \214le)-.22 E F1 +(xc/b)2.75 E(ug-r)-.22 E(eport)-.198 E F0(and this destination)2.75 E +(address:)72 360.8 Q(xb)108 379.8 Q(ugs@x.or)-.22 E(g)-.198 E +(Please try to pro)72 402.4 Q(vide all of the information requested on \ +the form if it is applicable; the little e)-.165 E(xtra time)-.165 E +(you spend on the report will mak)72 415.4 Q 2.75(ei)-.11 G 2.75(tm) +-2.75 G(uch easier for someone to reproduce, \214nd, and \214x the b) +-2.75 E(ug.)-.22 E(Bugs in the contrib)72 432 Q(uted softw)-.22 E +(are that is a)-.11 E -.275(va)-.22 G +(ilable on the net are not handled on an).275 E 2.75(yo)-.165 G -.275 +<668c>-2.75 G(cial basis.).275 E(Consult)5.5 E +(the documentation for the indi)72 445 Q(vidual softw)-.275 E +(are to see where \(if an)-.11 E(ywhere\) to report the b)-.165 E 2.75 +(ug. Man)-.22 F 2.75(ya)-.165 G(uthors)-2.75 E(of contrib)72 458 Q +(uted softw)-.22 E(are subscribe to the mailing list `)-.11 E +(`contrib-b)-.916 E(ugs')-.22 E 2.75('h)-.916 G(osted at x.or)-2.75 E +(g, so this might be a)-.198 E(useful place to report b)72 471 Q 2.75 +(ugs. \(T)-.22 F 2.75(os)-.88 G(ubscribe to contrib-b)-2.75 E +(ugs yourself, send email to contrib-b)-.22 E(ugs-)-.22 E(request@x.or) +72 484 Q(g.\))-.198 E F1 2.75(6. Ackno)72 536 R(wledgements)-.11 E F0 +(Release 6.3 of X V)72 565.6 Q(ersion 11 w)-1.221 E +(as brought to you by the X staf)-.11 E 2.75(fa)-.275 G 2.75(tt)-2.75 G +(he X Consortium, Inc.: Donna Con)-2.75 E -.165(ve)-.44 G(rse).165 E +(\(emeritus\), Jim F)72 578.6 Q(ournier)-.165 E 2.75(,S)-.44 G +(tephen Gildea \(emeritus\), Kaleb K)-2.75 E(eithle)-.275 E 1.43 -.715 +(y, M)-.165 H(att Landau \(emeritus\), Arnaud Le).715 E +(Hors, Ralph Mor \(emeritus\), Bob Schei\215er)72 591.6 Q 2.75(,R)-.44 G +(alph Swick, Ray T)-2.75 E(ice, Mark W)-.385 E +(elch \(emeritus\), and Da)-.88 E -.165(ve)-.22 G -.44(Wi)72 604.6 S +(ggins \(emeritus\).).44 E -.275(Kev)5.5 G(in Samborn and Geor).275 E +(ge Tsang \(emeritus\) of the CDE staf)-.198 E 2.75(fa)-.275 G 2.75(tXC) +-2.75 G(onsortium, Inc.)-2.75 E -.11(wo)72 617.6 S(rk).11 E +(ed hard on the print e)-.11 E(xtension, including the PostScript dri) +-.165 E -.165(ve)-.275 G(r; Da).165 E(vid Kaelbling of the CDE staf)-.22 +E(f)-.275 E(con)72 630.6 Q -.165(ve)-.44 G -.198(rg).165 G +(ed the X, Motif, and CDE imak).198 E +(e/con\214g support and helped with Xos_r)-.11 E +(.h; and Daniel Dardailler)-.605 E(\(emeritus\) of the CDE staf)72 643.6 +Q 2.75(fc)-.275 G(ontrib)-2.75 E(uted the libXt geometry tracing code.) +-.22 E(Also, contractors Reed)5.5 E +(Augliere, Roger Helmendach \(Liberty Systems\), and Ann Piche)72 656.6 +Q 2.75(ye)-.165 G(ach w)-2.75 E(ork)-.11 E(ed on critical components.) +-.11 E(Se)72 673.2 Q -.165(ve)-.275 G(ral companies and indi).165 E +(viduals ha)-.275 E .33 -.165(ve c)-.22 H(ooperated and w).165 E(ork) +-.11 E(ed e)-.11 E(xtremely hard to mak)-.165 E 2.75(et)-.11 G +(his release a)-2.75 E(reality)72 686.2 Q 2.75(,a)-.715 G +(nd our thanks go out to them.)-2.75 E -1.21(Yo)5.5 G 2.75(uw)1.21 G +(ill \214nd man)-2.75 E 2.75(yo)-.165 G 2.75(ft)-2.75 G +(hem listed in the ackno)-2.75 E(wledgements in the)-.275 E(indi)72 +699.2 Q(vidual speci\214cations.)-.275 E -.275(Ke)72 715.8 S 2.75(nR) +.275 G(aeb)-2.75 E(urn of XFree86 and Cygnus Support contrib)-.22 E +(uted the gzip font compression support.)-.22 E(18)300.5 769 Q EP +%%Page: 19 23 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XV)72 49 S(ersion 11, Release 6.3)-3.971 E +2.75(XW)205.364 G(indo)-3.19 E 2.75(wS)-.275 G(ystem Release Notes)-2.75 +E(The Common Desktop En)72 85 Q +(vironment sponsors Digital Equipment Corp, Fujitsu, He)-.44 E(wlett-P) +-.275 E(ackard, Hitachi,)-.165 E(IBM, No)72 98 Q -.165(ve)-.165 G +(ll, and SunSoft jointly contrib).165 E(uted the print e)-.22 E +(xtension and the Xlib v)-.165 E(ertical writing and user)-.165 E(-)-.22 +E(de\214ned character support.)72 111 Q(Ax)5.5 E(el Deininger)-.165 E +2.75(,H)-.44 G(arry Phinne)-2.75 E 1.43 -.715(y, T)-.165 H +(om Gilg, Charles Prince, and Jim Miller all)-.165 E(from He)72 124 Q +(wlett-P)-.275 E(ackard did the print e)-.165 E +(xtension and PCL and raster dri)-.165 E -.165(ve)-.275 G 2.75 +(rs. Fujitsu).165 F(did the Xlib v)2.75 E(ertical)-.165 E +(writing and user)72 137 Q(-de\214ned character support.)-.22 E(19)300.5 +769 Q EP +%%Page: 20 24 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 11/Times-Roman@0 SF 2.75(XW)72 49 S(indo)-3.19 E 2.75(wS)-.275 G +(ystem Release Notes)-2.75 E 2.75(XV)205.364 G(ersion 11, Release 6.3) +-3.971 E(20)300.5 769 Q EP +%%Trailer +end +%%EOF diff --git a/Xserver/RELNOTES.TXT b/Xserver/RELNOTES.TXT new file mode 100644 index 0000000..8e47fef --- /dev/null +++ b/Xserver/RELNOTES.TXT @@ -0,0 +1,1301 @@ + + + + + + + + + + X Window System, Version 11 + Release 6.3 + + Release Notes + + + + + + + + + X Consortium, Inc. + + December 23, 1996 + + + + + + + + + + +Copyright c 1996 X Consortium + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, dis- +tribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the fol- +lowing conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- +ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABIL- +ITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + +Except as contained in this notice, the name of the X Consortium shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization from +the X Consortium. + +X Window System is a trademark of X Consortium, Inc. + + + +1. What Is Release 6.3 + + +This is the last X Consortium implementation of the X Window System. X +is a vendor-neutral, system-architecture neutral network-transparent +window system and user interface standard. X runs on a wide range of +computing and graphics machines. For an overview of X, see the X manual +page. + +R6.3 is an update to R6.1. It is compatible with R6 and R6.1 at the +source and protocol levels in all respects, and binaries are upward- +compatible. + +What about Release 6.2? Release 6.2 is a proper subset of Release 6.3 +produced at the request of the OSF Common Desktop Environment program. +It was produced by the X Consortium and is being released by OSF simul- +taneously with CDE 2.1. Release 6.2 contains only the print extension +and the Xlib implementation of vertical writing and user-defined charac- +ter support. + +The X Consortium was an independent, not-for-profit membership corpora- +tion formed in 1993 as the successor to the MIT X Consortium and dis- +solved at the end of 1996. Refer to the Consortium man page for addi- +tional details about the X Consortium. + +See xc/INSTALL.PS (PostScript) or xc/INSTALL.TXT (plain text) for +instructions on how to build and install this software. + + +1.1. Overview of the X Consortium Release + + +The X Consortium software and documentation in Release 6.3 is in direc- +tory xc/ and contains the following: + +X Consortium Standards + The X Consortium produced standards: documents which define net- + work protocols, programming interfaces, and other aspects of the X + environment. See the XStandards manual page for a list of stan- + dards. + +Implementations + For most of our standards, we provide high-quality implementations + to demonstrate proof of concept and to give early adopters and ven- + dors a base to use. These are not reference implementations; the + written specifications define the standards. + +Fonts + A collection of bitmap and outline fonts are included in the dis- + tribution, contributed by various individuals and companies. + +Utility Libraries + A number of libraries, such as Xmu and the Athena Widget Set, are + included. These are not standards, but are used in building X Con- + sortium applications and may be useful in building other applica- + tions. + +Programs + We also provide a number of application programs. A few of these + programs, such as xdm (or its equivalent), should be considered + essential in almost all environments. The rest of the applications + carry no special status; they are simply programs that have been + developed and/or maintained by X Consortium staff. In some cases, + you will find better substitutes for these programs contributed by + others. + + +1.2. Supported Systems + + +We built and tested this release on the following systems: + + + AIX 4.2 + Digital Unix 4.0A + HP-UX 10.01 + IRIX 6.2 + Solaris 2.5 + UNIX System V/386 Release 4.2 (Novell UnixWare) Version 2.02 + +We also built this release on the following and did some minimal test- +ing: + + FreeBSD 2.1.6 + Linux 1.2.13 (Yggdrasil) and 2.0.0 (Slackware 3.1) + SCO Open Server 5.0 + SunOS 4.1.4 + Windows NT 4.0 + + +In all cases except SunOS we have used the vendor's compiler. On SunOS +we build with gcc. + + +1.2.1. Supported Display Devices + + +This release includes the necessary device-dependent support to build a +native X server for the following platforms: + + XFree86: See the XF_* man pages for supported video cards + + AIX: Xibm with Skyway display adapter + HP-UX: Xhp + Digital Unix: Xdec on Alpha AXP with PMAG-B frame buffer + SunOS/Solaris: Xsun -- see the Xsun man page for supported frame buffers + Ultrix[1] :Xdec + +In addition to the above, the Xvfb and Xnest servers can be built on +most platforms. + +Native servers are not built on IRIX or Microsoft Windows NT. + + +1.3. The XC Tree + + +The general layout under xc/ is as follows: + + +config/ config files, imake, makedepend, build utilities +doc/ all documentation other than per-program manual pages +fonts/ BDF, Speedo, Type1 fonts +include/ include files shared by multiple directories +lib/ all libraries +nls/ national language support files +programs/ all programs, including the X server and rgb +util/ patch, compress, other utilities +bug-report bug reporting template +registry X Registry + + +This file is xc/RELNOTES.*, in various formats. The documentation +source files RELNOTES.ms and INSTALL.ms are in the xc/doc/misc/ direc- +tory. + + +1.4. X Registry + + +The X Consortium maintained a registry of certain X-related items to aid +in avoiding conflicts and to aid in sharing of such items. + +The registry is in the file xc/registry in the distribution. The latest +version may also be available by sending a message to xstuff@x.org. The +message can have a subject line and no body, or a single-line body and +no subject; in either case the line should look like this: + + send docs registry + + + +1.5. Extensions Supported + + +The core distribution includes the following extensions: BIG-REQUESTS, +DOUBLE-BUFFER, LBX, MIT-SHM, MIT-SUNDRY-NONSTANDARD, Multi-Buffering, +RECORD, SECURITY, SHAPE, SYNC, X3D-PEX, XC-APPGROUP, XC-MISC, XFree86- +VidModeExtension, XIE, XInputExtension, XKEYBOARD, XpExtension (print- +ing), XTEST, and XTestExtension1. + +Not all of these extensions are standards; see the XStandards manual +page. Some of these extensions are not supported on all platforms. + + +1.6. Implementation Parameters + + +Some of the specifications define some behavior as implementation- +dependent. Implementations of X Consortium standards need to document +how those parameters are implemented; this section does so. + +XFILESEARCHPATH default + This default can be set at build time by setting the imake vari- + ables XFileSearchPathDefault, XAppLoadDir, XFileSearchPathBase, and + ProjectRoot in site.def. See xc/config/cf/README for instructions + and xc/config/cf/X11.tmpl[2] for details of how these configuration + variables are used. + + By default ProjectRoot is /usr/X11R6.3 and XFILESEARCHPATH has + these components: + + /usr/X11R6.3/lib/X11/%L/%T/%N%C%S + /usr/X11R6.3/lib/X11/%l/%T/%N%C%S + /usr/X11R6.3/lib/X11/%T/%N%C%S + /usr/X11R6.3/lib/X11/%L/%T/%N%S + /usr/X11R6.3/lib/X11/%l/%T/%N%S + /usr/X11R6.3/lib/X11/%T/%N%S + + +XUSERFILESEARCHPATH default + If the environment variable XAPPLRESDIR is defined, the default + value of XUSERFILESEARCHPATH has the following components: + + $XAPPLRESDIR/%L/%N%C + $XAPPLRESDIR/%l/%N%C + $XAPPLRESDIR/%N%C + $HOME/%N%C + $XAPPLRESDIR/%L/%N + $XAPPLRESDIR/%l/%N + $XAPPLRESDIR/%N + $HOME/%N + + Otherwise it has these components: + + $HOME/%L/%N%C + $HOME/%l/%N%C + $HOME/%N%C + $HOME/%L/%N + $HOME/%l/%N + $HOME/%N + + +XKEYSYMDB default + Defaults to /usr/X11R6.3/lib/X11/XKeysymDB, assuming ProjectRoot is + set to /usr/X11R6.3. + +XCMSDB default + Defaults to /usr/X11R6.3/lib/X11/Xcms.txt, assuming ProjectRoot is + set to /usr/X11R6.3. + +XLOCALEDIR default + Defaults to the directory /usr/X11R6.3/lib/X11/locale, assuming + ProjectRoot is set to /usr/X11R6.3. The XLOCALEDIR variable can + contain multiple colon-separated pathnames. + +XErrorDB location + The Xlib error database file is /usr/X11R6.3/lib/X11/XErrorDB, + assuming ProjectRoot is set to /usr/X11R6.3. + +XtErrorDB location + The Xt error database file is /usr/X11R6.3/lib/X11/XtErrorDB, + assuming ProjectRoot is set to /usr/X11R6.3. + +Supported Locales + X locales supported are in locale.dir; the mapping between various + system locale names and X locale names is in locale.alias. Both + files are shipped in the xc/nls/X11/locale/ directory and installed + in the XLocaleDir directory (e.g. /usr/X11R6.3/lib/X11/locale/). + +Input Methods supported + The core distribution does not include any input method servers. + However, Xlib supplies a default built-in input method that sup- + ports compose processing in 8-bit locales. Compose files are pro- + vided for Latin-1 and Latin-2. The built-in input method can sup- + port other locales, given suitable compose files. See + xc/nls/X11/locale/Compose/iso8859-* for the supported compositions. + +There are input method servers available on the net. + + + +2. What is Unchanged in Release 6.3 + + +As this is an update release, there is a great deal of stability in the +standards, libraries, and clients. No existing standards other than the +ICE library specification have changed in a material way, though several +documents have been updated with editorial improvements. There is one +new interface added to the ICE library libICE; see below. The extension +library, libXext, is updated to include the LBX, security, and applica- +tion group extension interfaces. All previous interfaces in these and +all other libraries are unchanged. + + + +3. What Is New in Release 6.3 + + +This section describes changes in the X Consortium distribution since +Release 6.1. + +All libraries, protocols, and servers are compatible with Release 6 and +Release 6.1. That is, R6 and R6.1 clients and applications will work +with R6.3 libraries and servers. Most R6.3 clients will work with R6.1 +and R6 libraries except those that use the new interfaces in libICE, +libXext, and libXp. + +The major new functionality in R6.3 is support for World Wide Web +integration, protection of data from ``untrusted'' client connections, a +bandwidth- and latency-optimized protocol for using X across the Inter- +net, a print protocol following the Xlib API, and support for vertical +text writing and user-defined characters in the Xlib implementation. + + +3.1. OS Support + + +The following platforms have a newer operating system version supported: + + +System R6.1 R6.3 + +AIX 4.1.4 4.2 +Digital Unix 3.2C 4.0A +HP-UX 10.01 +IRIX 5.3 6.2 +Solaris 2.4 2.5 +UnixWare 2.02 + + +We also built on the following platforms, however full support is not +guaranteed: + + +System R6.1 R6.3 + +FreeBSD 2.1.0 2.1.6 +Linux 1.2.13 2.0 +SCO Open Server 5.0 +SunOS 4.1.3 4.1.4 +Windows NT 3.5 4.0 + + + +3.2. New Standards + + +The following are new X Consortium standards in Release 6.3. Each is +described in its own section below. + + Low Bandwidth X Extension + RX: X Remote Execution MIME type + Security Extension + Application Group Extension + Print Extension + Proxy Management Protocol + + + +3.3. Low Bandwidth X Extension + + +The Low Bandwidth X extension (LBX) defines several compression and +local caching techniques to improve performance on wide area networks +and also on slower-speed connections. These reduce the amount of proto- +col data transported over the network and reduce the number of client- +to-server roundtrips required for common application startup operations. + +LBX was referred to as X.fast in some materials but we elected to not go +through the implementation and change all the names. To avoid any con- +fusion with an external name different from the internal name in the +implementation, we elected to drop the ``X.fast'' moniker. + +LBX is implemented in two pieces; an X server extension and a proxy +application. The X server extension provides the new optimized proto- +col. The proxy application, lbxproxy, translates a normal client X pro- +tocol stream into an LBX stream. This permits any existing application +to gain the benefit of the optimized protocol with no changes. The +proxy is especially useful when multiple applications are running on the +same local area network separated from the X server by a slower network. +In this case the full benefit of the local cache is shared by each +application using the same proxy process. + +The specification for LBX is in xc/doc/specs/Xext/lbx.mif (FrameMaker +interchange source) and xc/doc/hardcopy/Xext/lbx.PS.Z (compressed +PostScript). + + +3.4. RX: X Remote eXecution + + +The remote execution (RX) service specifies a MIME format for invoking +applications remotely, for example via a World Wide Web browser. This +RX format specifies a syntax for listing network services required by +the application, for example an X display server. The requesting Web +browser must identify specific instances of the services in the request +to invoke the application. + +The distribution contains a helper program (xrx) and a Netscape Naviga- +tor plug-in (libxrx) that demonstrate this protocol. The plug-in +requires Navigator 3.0. + +We have only been able to test the plug-in on HP-UX, IRIX, Digital Unix, +and Solaris2. Netscape Navigator binaries for other platforms are +either not available at all or were not available in time to be included +in the testing for this release. + +The specification for the RX mime type is in xc/doc/specs/RX/RX.mif +(FrameMaker interchange source) and xc/doc/hardcopy/RX/RX.PS.Z +(compressed PostScript). + +The following section describes the procedure to set up your environment +and try the examples provided in this distribution. + + +3.4.1. Preparing Your Web Server + + +In order to demonstrate the RX helper program and the RX Netscape plug- +in you need to have access to an HTTP server to install ``common gateway +interface'' (CGI) scripts. While CGI programs can be written in any +compiled or interpreted language, the sample CGI programs in the distri- +bution are written in perl. + +If you don't currently have a web server the NCSA server is a good one +to try. Binaries for various systems are available at: + + http://hoohoo.ncsa.uiuc.edu/docs/setup/PreExec.html + +If you don't have perl you can get the source code from: + ftp://prep.ai.mit.edu/pub/gnu/perl-4.036.tar.gz + +You need to install the HTML, RX, and CGI sample files into your +server's HTML and CGI directories. The process can be partially +automated by adding the following definitions to your site.def or +host.def file: + + +WebServer defines the hostname and port of your web server, for + example + + #define WebServer www.myorg.org:8001 + +HtmlDir defines the path at which HTML and RX documents are + installed, for example + + #define HtmlDir /usr/local/etc/httpd/htdocs + +CgiBinDir defines the path at which CGI programs are installed, for + example + + #define CgiBinDir /usr/local/etc/httpd/cgi-bin + +ProxyManager defines the transport scheme, hostname, and port for CGI + programs to contact the Proxy Manager. See the proxymngr + man pages for further details. Typically the proxy + manager host will be the same as your web server, for + example: + + #define ProxyManager tcp/www.myorg.org:6500 + +Then make the Makefiles and build the directories with the following +command sequence: + +cd xc/programs/xrx/htdocs +xmkmf ../../.. programs/xrx/htdocs +make +make install +cd ../cgi-bin +xmkmf ../../.. programs/xrx/cgi-bin +make +make install + + +These directories are not automatically built or installed by the top +level Makefile because they install outside the ProjectRoot. + +You also need to configure your web server so that files with the exten- +sion name ``rx'' are of the MIME type ``application/x-rx''. See your +HTTP server's configuration documentation for the right procedure to do +so. + + +3.4.2. The RX Helper Program + + +The helper program, xrx, may be used with any Web browser to interpret +the new RX document type. + +The RX helper program is installed in /bin (e.g. +/usr/X11R6.3/bin/). You will need to configure your web browser to use +it for RX documents by adding a line to your $HOME/.mailcap: + + application/x-rx; /X11/bin/xrx %s + +You may need to refer to your web browser's documentation for exact +instructions on configuring helper applications. + +The helper program is activated by your browser as soon as you retrieve +any document of the MIME type application/x-rx. All you need to do is to +point your browser at the URL: + http://your.web.server/xload.rx + +The application (i.e. xload) should appear on your DISPLAY as a new +top-level client. The client will be running on your web server host +and connected to your X server. If your X server supports the SECURITY +extension the client will be running as an untrusted client. + + +3.4.3. The RX Netscape Navigator Plug-in + + +The Navigator plug-in supports all the functions of xrx and in addition +uses the new XC-APPGROUP extension, if your X server provides it, to +cause the remotely launched application to be embedded within the +browser page from which it was launched. + +The HTML page links to an RX document via the EMBED tag, a Netscape +extension to HTML. The RX document provides the plug-in with the list +of services the application wants to use. Based on this information, +the plug-in sets the various requested services, including creating +authorization keys, and passes the relevant data to the application +through an HTTP GET request of the associated CGI script. The Web +server then executes the CGI script to start the application. + +To be able to use the RX plug-in you need Netscape Navigator 3.0. +Binaries for various systems can be found at: + + http://home.netscape.com/comprod/mirror/client_download.html + +To complete the installation of the Netscape plug-in, find the file +named libxrx.so.6.3 or libxrx.sl.6.3 (or similar, depending on your +platform) in /lib (e.g. /usr/X11R6.3/lib) and copy it to +either /usr/local/lib/netscape/plugins or $HOME/.netscape/plugins. Do +not install the symlinks libxrx.so or libxrx.sl; they may confuse +Netscape. + +You should remove or comment out the line you may have previously added +in your mailcap file to use the RX helper program, otherwise the plug-in +will not be enabled. (The usual comment character for mailcap is +``#''.) + +If you are already running Netscape Navigator, you need to exit and res- +tart it after copying the plug-in library so the new plug-in will be +found. Once this is done you can check that Navigator has successfully +loaded the plug-in by checking the ``About Plug-ins'' page from the Help +menu. This should show something like: + + + RX Plug-in + + File name: /usr/guest/netscape/plugins/libxrx.sl.6.3 + + X Remote Activation Plug-in + + Mime Type Description Suffixes Enabled + application/x-rx X Remote Activation Plug-inxrxYes + + +The plug-in will be activated by Netscape Navigator as soon as you +retrieve any document of the MIME type application/x-rx. Several sam- +ples are included in the distribution. The most basic one is xload. All +you need to do is point your browser at the page: + http://your.web.server/xload.html + +If something goes wrong check on the all the previous steps listed above +and try again. Once xload is working you can try some of the other +examples in the distribution such as bitmap.html or dtcm.html. + + +3.4.4. Trying Embedding With an Old X Server + + +The Netscape Navigator plug-in, libxrx, will work with an X server that +does not contain the application group or security extensions. The +application will be started as a separate top-level client. + +If you wish to try out the embedding facilities without replacing your +desktop X server, you may use the Xnest server. + +A typical Xnest session would look like the following: + +% Xnest :11 +% xterm -display :11 + + +These two commands start a ``nested'' server and a terminal emulator +within that server. Your favorite window manager and Netscape Navigator +can now be executed from the nested xterm window. You may wish to first +disable access control in the nested server by running ``xhost +'' in +the nested xterm. + + +3.4.5. Setting Up Your Own Applications To Run Over The Web + + +Based on the examples provided in the distribution it should be easy to +set up your web server to run your own applications. Every application +requires 3 additional files to identify it to Web browsers: + +myapp.htmlAn HTML page to present the application embedded +myapp.rx The RX document describing the application +myapp.pl The CGI script to start the application + +Note that the separate ``.rx'' file could be omitted by implementing the +CGI script such that if it is invoked without a QUERY_STRING it will +return the RX content. We decided not to do so in the distributed exam- +ples for purpose of clarity. + +The xload demo provides a good starting point. Simply make a copy of +each of the files xload.rx, xload.html, and xload.pl. Then look inside +them for every instance of ``xload'' and change it to whatever is +appropriate for your application. + +You will not be able to run the dtcm demo unless you have dtcm (a CDE +component) installed on your web server host. This example shows how a +CGI script would look when an X Print server is requested. The script +dtcm.pl is, for that reason, slightly more complicated than other exam- +ples. + + +3.5. Security Extension + + +The SECURITY extension contains new protocol needed to provide enhanced +X server security. This extension adds to the X protocol the concepts +of ``trusted'' and ``untrusted'' clients. The trust status of a client +is determined by the authorization used at connection setup. All +clients using host-based authorization are considered ``trusted''. +Clients using other authorization protocols may be either trusted or +untrusted depending on the data included in the connection authorization +phase. + +The requests in the security extension permit a trusted client to create +multiple authorization entries for a single authorization protocol. +Each entry is tagged with the trust status to be associated with any +client presenting that authorization. + +When a connection identifying an ``untrusted'' client is accepted, the +client is restricted from performing certain operations that would steal +or modify data that is held by the server for trusted clients. An +untrusted client performing a disallowed operation will receive protocol +errors. Such a client may be written to catch these errors and continue +operation. + +When a client is untrusted, the server will also limit the extensions +that are available to the client. Each X protocol extension is respon- +sible for defining what operations are permitted to untrusted clients; +by default, the entire extension is hidden. + +The specification for the SECURITY extension is in +xc/doc/specs/Xext/security.tex (LaTeX source) and +xc/doc/hardcopy/Xext/security.PS.Z (compressed PostScript). + + +3.5.1. Untrusted Application Behavior + + +Most applications work normally when run as untrusted clients, but since +the security extension changes the semantics of certain parts of the X +protocol, it is no surprise that some clients behave differently when +untrusted. We note the following significant behavior changes, +separated into two categories: changes that we expect could disappear or +mutate if the implementation were improved in a future release, and +changes we expect are permanent, legitimate defenses against data loss +or leakage. + + +3.5.1.1. Behaviors That Are Implementation-Dependent + + +The following behaviors when running the respective applications as +untrusted are not mandated by the security design but are side effects +of limitations in the current implementation. + +oclock is square because the SHAPE extension hasn't been marked secure +yet. Similarly, Xaw applications that use oval buttons will have rec- +tangular buttons instead. + +Any application that depends on an extension other than XC-MISC, LBX, or +BIG-REQUESTS will have different behavior, as no other extensions are +currently marked secure. The core clients affected are xieperf and all +the xkb utilities. + +emacs exits with a Window error when trying to use the QueryPointer +request on the root window when you click in a buffer. + +FrameMaker, and xwd -root both exit with a Window error when trying to +use the GetWindowAttributes request on a window manager frame window. + +All the remaining changes are involved in some way with window proper- +ties. Some of these behaviors can be modified with changes to the Secu- +rityPolicy file; see the Xserver man page. + +Several clients exit with a Window error when trying to use the +DeleteProperty request on various properties on the root window. These +include xcmsdb -remove, xprop -root -remove, and xstdcmap -delete. + +xprop exits with an Atom error when attempting to access protected pro- +perties. + +The following two changes require, in addition, a ``trusted selection +intermediary'' to provide selection transfer from untrusted to trusted +clients (and vice-versa). R6.3 does not include such a trusted +intermediary. + +xterm exits with an Atom error when it tries to store the property value +during a selection transfer (paste) to a trusted selection requester. + +The ``copy 0 to PRIMARY'' button of xcutsel does not work. + +Selection transfer from untrusted clients to trusted clients fails when +the untrusted client attempts to use SendEvent to generate the Selec- +tionNotify event for the requester. Most requesters will treat this as +a transfer timeout and continue. Xt-based applications will create an +additional Atom each time such a transfer is attempted. + + +3.5.1.2. Behaviors That Are Not Likely To Change + + +The following behaviors represent actions performed by the applications +that are disallowed by design. + +editres will fail when pointed at a trusted client when it tries to read +window properties on a window owned by that client. + +Xnest exits on startup with an Access error as it tries to use the +ChangeKeyboardControl request. + +The new generate option to xauth fails because untrusted applications +are not allowed to create additional authorizations. + +xhost cannot be used to modify the host access list. + +xmag gets an unending stream of Drawable errors as it tries to use the +PolyRectangle request on the root window. If you click to select a +location to magnify, xmag gets a Drawable error as it tries to use the +GetImage request on the root window. xmag could be modified to exit +gracefully under these conditions. + +netscape exits on startup with a Drawable error when trying to use the +GetImage request on the root window. + +xmodmap exits with an Access error when trying to use the ChangeKey- +boardMapping request. + +xset with the b, c, led, or r options exits with an Access error when +trying to use the ChangeKeyboardControl request. With the bc option, it +can't find the MIT-SUNDRY-NONSTANDARD extension and exits gracefully. + +xsetroot exits with a Window error when trying to use the ChangeWin- +dowAttributes request on the root window. + + +3.6. Application Group Extension + + +The application group extension (XC-APPGROUP) provides new protocol to +implement Application Groups (``AppGroups''). The AppGroup facility +allows other clients to share the SubstructureRedirect mechanism with +the window manager. This allows another client called the ``application +group leader'', such as a web browser, to intercept a MapRequest made by +a third application and reparent its window into the web browser before +the window manager takes control. The AppGroup leader may also limit +the screens and visuals available to the applications in the group. + +Users who have an XC-APPGROUP enhanced X server and an RX plug-in for +their Netscape Navigator web browser can run programs remotely over the +web and have the output appear as part of the presentation in their web +browser. + +The only way for an application to become a member of an AppGroup is by +using an authorization generated using the new security extension. +Whenever an application connects to the server, the authorization that +it used to connect is tested to see if it belongs to an AppGroup. This +means that the Authorization data must be transmitted to the remote host +where the application will be run. In the case of RX, HTTP is used to +send the Authorization. Sites who have concerns about sending unen- +crypted authorization data such as MIT-MAGIC-COOKIE-1 via HTTP should +configure their web servers and web browsers to use SHTTP or SSL. + +The specification for the XC-APPGROUP extension is in +xc/doc/specs/Xext/AppGroup.mif (FrameMaker interchange source) and +xc/doc/hardcopy/Xext/AppGroup.PS.Z (compressed PostScript). + + +3.7. Print Extension + + +The print extension supports output to hardcopy devices using the core X +drawing requests. The print extension adds requests for job and page +control and defines how specific printer attributes are communicated +between the server and printing clients. Printer attribute specifica- +tions are modeled after the ISO 10175 specification. + +An X client that wants to produce hardcopy output will typically open a +second connection to an X print server, produce a print job, and then +close the print server connection. The print server may be the same +process as the display server (the term ``video server'' is sometimes +used) although the implementation provided in R6.3 does not completely +support video and print servers in the same binary. + +The specification for the print extension is in +xc/doc/specs/XPRINT/xp_proto.mif (FrameMaker interchange source) and +xc/doc/hardcopy/XPRINT/xp_proto.PS.Z (compressed PostScript). The +library API specification is in xc/doc/specs/XPRINT/xp_library.mif +(FrameMaker interchange source) and +xc/doc/hardcopy/XPRINT/xp_library.PS.Z (compressed PostScript). + + +3.7.1. Running an X Print Server + + +The print server is simply an X server with the print extension and spe- +cial DDX implementations. The X Print Server is started like any other +X server. + +Here is a sample command line for use with a typical configuration: + +% Xprt :1 -ac + + +The options used in the example are: + +:1 On a host that is running a video display server you will need + to specify a different display from the default. + +-ac Disable access control, since no simple mechanism for sharing + keys is provided. + +The X print server supports the following additional options: + +-XpFile Points to the directory containing the print server configura- + tion files. + +XPCONFIGDIREnvironment variable specifying alternative location of the + print server configuration files. + +The print server, Xprt, is built only if the config option XprtServer is +YES. Four printer DDXen are provided, each with a separate config +option to control whether or not it will be included: XpRasterDDX, +XpColorPclDDX, XpMonoPclDDX, XpPostScriptDDX; see xc/config/cf/README. +XprtServer defaults to the value of BuildServer (i.e. Xprt will be built +by default on all platforms that build a full X server). XpRasterDDX +and XpMonoPclDDX default to NO. XpColorPclDDX and XpPostScriptDDX +default to YES. + +The print server is configured through a directory of configuration +files that define printer model types and instances of printer models. +An example configuration tree is provided in +xc/programs/Xserver/XpConfig/. See also xc/doc/specs/Xserver/Xprt.mif +(FrameMaker interchange source) and xc/doc/hardcopy/Xserver/Xprt.PS.Z +(compressed PostScript) for further instructions on configuring Xprt. + + +3.7.2. Specifying The Print Server To A Client + + +By convention, clients locate the print server using the environment +variable XPRINTER. The syntax of XPRINTER is an augmented DISPLAY; i.e. + + printerName@host:display + +where ``printerName'' is one of the printer instances listed in the +print server configuration files. The use of XPRINTER and its syntax is +an application convention only; there is nothing in the supplied +libraries that uses (or parses) this environment variable. + + +3.8. Proxy Management Protocol + + +The Proxy Management Protocol is an ICE based protocol that provides a +way for application servers to easily locate proxy services such as the +LBX proxy and the X firewall proxy. + +Typically, a service called a ``proxy manager'' is responsible for +resolving requests for proxy services, starting new proxies when +appropriate, and keeping track of all of the available proxy services. +The proxy manager strives to reuse existing proxy processes whenever +possible. + +The Proxy Management Protocol is described in xc/doc/specs/PM/PM_spec. + + +3.9. Configuration + + +As in R6.1, the top-level Makefile is no longer over-ridden by the first +build. Instead a new file xmakefile is created. Thus is it not neces- +sary to take any additional steps to reset the builds. + +The file xc/config/cf/README provides more guidance on how to write an +Imakefile, including a list of variables that may be set in an +Imakefile. This file is strongly recommended reading for Imakefile +authors. + +The LaTeX text processor is supported as of R6.1. If you have LaTeX on +your system, turn on HasLatex to have the MakeLatexDoc rule use it. + +Also since R6.1, with System V Release 4 (SVR4) compilers we now use the +-Xa (ANSI C with native extensions) compiler flag rather than -Xc (limit +environment to that specified in the standard). This provides access to +the full richness of the platform. Unfortunately, it also defines the +preprocessor symbol __STDC__ to 0, instead of 1 as specified by the +standard. Therefore we use "#ifdef __STDC__" in our sources rather than +"#if __STDC__". On HP-UX systems we use the -Ae compiler option instead +of -Aa, also to access the full environment offered by the platform. + +As in R6.1, the imake variables InstallXdmConfig, InstallXinitConfig, +and InstallAppDefFiles suppress overwriting existing files; if the files +didn't previously exist, the files are always installed. This interpre- +tation makes bootstrapping a new system easier than in R6 and earlier +releases. + +A new configuration build option, GzipFontCompression, has been added to +use gzip rather than compress for font compression. It defaults to NO. + +The build creates a new directory xc/exports into which the header +files, libraries, and certain build utility binaries are symlinked. +This greatly simplifies Imakefile construction and supports multiple +development projects (such as X, Motif, and CDE) on a single system. + +Imake rules and template files for building Motif and CDE were contri- +buted by the OSF CDE/Motif project and are included in R6.3. + + +3.10. Documentation + + +Additional X server internals documentation is provided in the +/xc/doc/specs/Xserver/ directory for the XC-APPGROUP and SECURITY exten- +sions. An analysis and rationale for the SECURITY extension will also +be found in that directory. Specifications for the other new standards +are in /xc/doc/specs/RX/, /xc/doc/specs/XPRINT/, and +/xc/doc/specs/Xext/. + + +3.11. Header Files + + +xc/include/Xos_r.h is a new header file to promote portable source code +using thread-safe implementations of getpwnam, getpwuid, gethostbyname, +gethostbyaddr, and getservbyname. It is not required by any X Consor- +tium standard. + + +3.12. X Server + + +The security, LBX, printing, and AppGroup extensions are all new. In +R6.3 only MIT-MAGIC-COOKIE-1 is supported in the security extension. +Parts of the security policy are configured at run-time from the file +/usr/X11R6.3/lib/X11/xserver/SecurityPolicy. Site-defined policy +strings used by xfwp and rules for property access by untrusted clients +are defined there. See the Xserver man page for full details. + + +3.12.1. New Device Support + + +Support has been added for the Sun TCX frame buffer as a dumb 8-bit +frame buffer on Solaris 2.5. + +New XFree86 servers based on XFree86 3.2 are included. + + +3.12.2. Internal Changes + + +The security extension provides new internal resource ID lookup inter- +faces that incorporate the access control lookup. In order to be +declared secure and therefore be made available to untrusted clients, +other extensions should, at a minimum, be changed to use these inter- +faces. Depending on what the extension does, more may need to be done +in its implementation before it can appropriately be labeled ``secure''. + +Refer to the documents xc/doc/specs/Xserver/appgroup.ms and +xc/doc/specs/Xserver/secint.tex for implementation details of the appli- +cation group and security extensions, respectively. + + +3.13. ICE Library Addition + + +To support proxy managers and firewall proxies using ICE on well-known +TCP ports, an additional interface has been added to the ICE library. +This new interface, IceListenForWellKnownConnections, has equivalent +calling parameters to IceListenForConnections plus an ICE network id +parameter. + + +3.14. Xlib Vertical Writing and User-Defined Characters + + +The Xlib output method implementation has been enhanced to support the +XOM value drawing direction XOMOrientation_TTB_RTL. Vertical writing +information and other locale specific information is read from the file +/%L/XLC_LOCALE where the XLocaleDir configuration option +defaults to /usr/X11R6.3/lib/X11/locale. + +The X[mb|wc]TextEscapement functions now return the text escapement in +pixels for the vertical or horizontal direction depending on the +XNOrientation XOCValue. + +The X[mb|wc]DrawString functions will now render a character string in +the vertical or horizontal direction depending on the XNOrientation +XOCValue. + +The Xlib NLS database implementation has been enhanced to support +extended segments used for interchanging non-standard code sets. Sup- +port has been added for control sequences and encoding names used in +extended segments and conversion of glyph indexes when interchanging +data in extended segments. + + +3.15. Xt Geometry Management Debugger + + +Daniel Dardailler's ``GeoTattler'' code has been merged into the Xt +Intrinsics library implementation. This is not a standard. If libXt is +compiled with the XT_GEO_TATTLER symbol defined (currently there is no +build configuration support to do this) then a ``geoTattler'' resource +may be specified for any widget in an application. If the geoTattler +resource for a widget instance is True then libXt will generate debug- +ging information to stdout when the widget makes geometry change +requests. + +For example, if the resources specify: + +myapp*draw.XmScale.geoTattler: ON +*XmScrollBar.geoTattler:ON +*XmRowColumn.exit_button.geoTattler:ON + +then geometry management debugging information will be generated for all +the XmScale children of the widget named draw, all the XmScrollBars, and +the widget named exit_button in any XmRowColumn. + +3.16. New Programs + + +There are new core programs lbxproxy, proxymngr, xfindproxy, xfwp, Xprt, +and xrx. + + +lbxproxy The lbxproxy program is used to ``translate'' X protocol to + LBX protocol. It should be executed on the same host as the + client application or on a host connected to the client host + by a fast network. lbxproxy appears to the clients using it + as another X server; that is, the clients connect through it + using the conventional DISPLAY syntax, specifying the proxy + host in place of the server. lbxproxy can be used stand- + alone or in conjunction with proxymngr and xfindproxy. See + the lbxproxy man page for further details. + +proxymngr proxymngr is a process that runs continuously to control + other proxy applications, such as lbxproxy and xfwp. It + maintains a list of active proxy processes and responds to + queries from xfindproxy. See the proxymngr man pages for + further details. + +xfindproxy xfindproxy is used to locate a running proxy process for a + given network service, such as lbxproxy or xfwp, or to + request that a proxy be started if one is not already run- + ning. xfindproxy communicates with proxymngr to perform the + actual work. + +xfwp xfwp is the X firewall application proxy. It is designed to + run on a network firewall host and relay X protocol between + applications (typically outside the firewall) and the X + server (inside the firewall). xfwp appears to the clients + using it as another X server; that is, clients connect + through it using the conventional DISPLAY syntax. xfwp will + not do anything useful without proxymngr and xfindproxy or + xrx. See the xfwp man page for further details. + +Xprt Xprt is the print server, built as part of the Xserver build + if the XprtServer config option is YES. The print server + supports printing to PostScript and PCL devices, as well as + raster output to an xwd format file (and thence to any + printer that xpr supports). The print extension was + designed to be integrated with the ``video'' server in a + single process but the R6.3 implementation does not support + a combined video and print server. Details of configuration + for Xprt are in xc/doc/specs/Xserver/Xprt.mif (FrameMaker + interchange source) and xc/doc/hardcopy/Xserver/Xprt.PS.Z + (compressed PostScript). + +xrx, libxrx xrx is the Web browser helper application that interprets + documents in the RX MIME type to remotely launch applica- + tions via the Web. Its companion libxrx is a plug-in for + Netscape Navigator 3.0 that supports in addition the capa- + bility to visually embed the remote applications in the + associated browser Web page window. See the xrx man page + for further details. + + +3.16.1. Using The LBX Proxy + + +The implementation of lbxproxy provided here will support an arbitrary +number of clients connecting to the same X server. A separate lbxproxy +process is required for each separate X server process. A typical com- +mand line to invoke lbxproxy is +lbxproxy :22 -display myhost:0 + + +This command runs a proxy with the X server ``myhost:0'' as the target. +Clients must connect to the proxy using ``proxyhost:22'' as the DISPLAY. +The .Xauthority file for these clients must contain an entry for server +``proxyhost:22'' with the same MIT-MAGIC-COOKIE as ``myhost:0'', or the +X server must be configured to permit connections from any host on the +network. + +Here is an example showing how to setup the appropriate .Xauthority +entries: + +% lbxproxy :22 -display myws:0 +% xauth list +myws:0 MIT-MAGIC-COOKIE-1 7fd231ccdce2 +myws/unix:0 MIT-MAGIC-COOKIE-1 7fd231ccdce2 +% xauth -f $HOME/proxyauth add proxyhost:22 . 7fd231ccdce2 +xauth: creating new authority file /usr/myself/proxyauth +% xauth -f $HOME/proxyauth add proxyhost/unix:22 . 7fd231ccdce2 +% setenv XAUTHORITY $HOME/proxyauth + + +In this example, the authorization token for display 0 is copied into a +new file ``proxyauth'' and associated with the LBX proxy server display +number (22). The new authority file may then be copied to another host +and used as the value of the XAUTHORITY environment variable. + +The proxymngr daemon is usually configured to invoke lbxproxy automati- +cally when a user or a CGI script runs xfindproxy -name LBX. + +See the lbxproxy man page for further details. + + +3.17. Major Additions to Existing Programs + + +The generate option of xauth is used to obtain additional authorization +tokens for client connections. These authorization tokens may specify +that the client using them is to be restricted in the operations that +may be performed in the X server. The authorization tokens may be +independently revoked. Refer to the SECURITY extension for further +details on authorizations. + +The xauth man page gives full details on the new generate command. Here +is an example use: + +xauth -f untrusted-auth-file g :0 . timeout 0 +setenv XAUTHORITY untrusted-auth-file + +This will cause xauth to contact server ``:0'' to get a long-lasting +untrusted cookie which it then stores in untrusted-auth-file. By set- +ting XAUTHORITY to point to untrusted-auth-file, subsequent applications +run from this shell to server :0 will be untrusted. The ``g'' is short +for ``generate'', and the ``.'' is short for ``MIT-MAGIC-COOKIE-1''. If +you omit the -f argument, xauth will use $XAUTHORITY (or ~/.Xauthority), +which may not be what you want, especially if you are creating an +untrusted auth. This is because xauth will replace the trusted auth in +~/.Xauthority (put there by xdm) with the untrusted one, preventing you +from making any further trusted connections to the server. + +The xterm terminal emulator now supports the active icon mode that was +in X version 10 Release 4. See the xterm man page for further details. +There is support in the xterm source to build xterm without the active +icon mode for those who may care for some reason to not provide it. + + +3.18. ANSIfication + + +As noted previously under "Configuration Files", for pragmatic reasons +we changed the way we use __STDC__ to test for standard C compilers. +R6.1 was officially the last release that supported traditional K&R C. +R6.3 assumes a standard C compiler and environment. We have not inten- +tionally removed any K&R C support from old code; most of the release +will continue to build on older platforms. + + + +4. Known Bugs + + +There are no examples in this release showing how to use the print +extension. CDE 2.1 has several such applications. + +lbxproxy fails to start on SCO Open Server. + +x11perf running through lbxproxy will tickle a drawing bug in cfb-based +X servers that causes some lines and curves to be drawn to the wrong +coordinates and outside the window boundaries. Use the -nogfx option to +lbxproxy as a workaround on affected servers. + +If proxymngr exits abnormally all managed proxies die. + +Documentation is missing on how to use the vertical writing and user- +defined character support. + +Documentation is sparse on how to configure Xprt. + +There are no example fonts in the release with vertical text escapement +(``vertical writing fonts''). + + + +5. Filing Bug Reports + + +If you find a reproducible bug in software in the xc/ directory, or find +bugs in the xc documentation, please send a bug report to The Open Group +using the form in the file xc/bug-report and this destination address: + + xbugs@x.org + + +Please try to provide all of the information requested on the form if it +is applicable; the little extra time you spend on the report will make +it much easier for someone to reproduce, find, and fix the bug. + +Bugs in the contributed software that is available on the net are not +handled on any official basis. Consult the documentation for the indi- +vidual software to see where (if anywhere) to report the bug. Many +authors of contributed software subscribe to the mailing list "contrib- +bugs" hosted at x.org, so this might be a useful place to report bugs. +(To subscribe to contrib-bugs yourself, send email to contrib-bugs- +request@x.org.) + + + +6. Acknowledgements + + +Release 6.3 of X Version 11 was brought to you by the X staff at the X +Consortium, Inc.: Donna Converse (emeritus), Jim Fournier, Stephen Gil- +dea (emeritus), Kaleb Keithley, Matt Landau (emeritus), Arnaud Le Hors, +Ralph Mor (emeritus), Bob Scheifler, Ralph Swick, Ray Tice, Mark Welch +(emeritus), and Dave Wiggins (emeritus). Kevin Samborn and George Tsang +(emeritus) of the CDE staff at X Consortium, Inc. worked hard on the +print extension, including the PostScript driver; David Kaelbling of the +CDE staff converged the X, Motif, and CDE imake/config support and +helped with Xos_r.h; and Daniel Dardailler (emeritus) of the CDE staff +contributed the libXt geometry tracing code. Also, contractors Reed +Augliere, Roger Helmendach (Liberty Systems), and Ann Pichey each worked +on critical components. + +Several companies and individuals have cooperated and worked extremely +hard to make this release a reality, and our thanks go out to them. You +will find many of them listed in the acknowledgements in the individual +specifications. + +Ken Raeburn of XFree86 and Cygnus Support contributed the gzip font +compression support. + +The Common Desktop Environment sponsors Digital Equipment Corp, Fujitsu, +Hewlett-Packard, Hitachi, IBM, Novell, and SunSoft jointly contributed +the print extension and the Xlib vertical writing and user-defined char- +acter support. Axel Deininger, Harry Phinney, Tom Gilg, Charles Prince, +and Jim Miller all from Hewlett-Packard did the print extension and PCL +and raster drivers. Fujitsu did the Xlib vertical writing and user- +defined character support. + + diff --git a/Xserver/bug-report b/Xserver/bug-report new file mode 100644 index 0000000..a822cdc --- /dev/null +++ b/Xserver/bug-report @@ -0,0 +1,64 @@ +To: xbugs@x.org +Subject: [area]: [synopsis] [replace with actual area and short description] + + VERSION: + +R6.3, public-patch-2 +[X Consortium public patches edit this line to indicate the patch level] + + CLIENT MACHINE and OPERATING SYSTEM: + +[e.g. Sparc/SunOS 5.3, DECstation 5000/Ultrix 4.3, HP 9000-730/HP-UX 9.1] + + DISPLAY TYPE: + +[e.g. Sun GX, 8-bit framebuffer, IBM Skyway ...] + + WINDOW MANAGER: + +[e.g. twm, mwm, gwm, olwm, ...] + + COMPILER: + +[e.g. native ANSI cc, native cc, gcc 2.5.8, ...] + + AREA: + +[Area of the source tree affected, +e.g., Xserver, Xlib, Xt, Xaw, PEX, twm, xterm, xmh, config, .... +Please only one area per bug report.] + + SYNOPSIS: + +[Brief description of the problem and where it is located] + + DESCRIPTION: + +[Detailed description of problem. Don't just say " +doesn't work, here's a fix," explain what your program does +to get to the state. If this is a request for an +enhancement, justify it.] + + REPEAT BY: + +[What you did to get the error; include test program or session +transcript if at all possible. If you include a program, make +sure it depends only on libraries in the X distribution, not +on any vendor or third-party libraries. Be specific; if we can't +reproduce it, we can't fix it. Don't just say "run this program +and it will be obvious," tell us exactly what we should see when +the program is run. Bug reports without a clear, deterministic +way of reproducing them will be fixed only after all bug reports +that do.] + + SAMPLE FIX: + +[Preferred, but not necessary. Please send context diffs (`diff +-c original-file fixed-file`). Be sure to include our "XConsortium" +ident line in any diffs. The best way to do this is to add your +own versioning line immediately after ours.] + +[PLEASE make your Subject: line as descriptive as possible. +Subjects like "xterm bug" or "bug report" are not helpful!] +[Remove all the explanatory text in brackets before mailing.] +[Send to xbugs@x.org, as shown in the sample message header above] diff --git a/Xserver/config/Imakefile b/Xserver/config/Imakefile new file mode 100644 index 0000000..26b3dd0 --- /dev/null +++ b/Xserver/config/Imakefile @@ -0,0 +1,12 @@ +XCOMM $XConsortium: Imakefile /main/6 1996/09/28 16:04:42 rws $ +#define IHaveSubdirs +#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)" + +#undef BootstrapCleanSubdirs +#define BootstrapCleanSubdirs BOOTSTRAPSUBDIRS="$(BOOTSTRAPSUBDIRS)" + +BOOTSTRAPSUBDIRS = imake makedepend +SUBDIRS = cf $(BOOTSTRAPSUBDIRS) util + +MakeSubdirs($(SUBDIRS)) +DependSubdirs($(SUBDIRS)) diff --git a/Xserver/config/cf/Amoeba.cf b/Xserver/config/cf/Amoeba.cf new file mode 100644 index 0000000..a844789 --- /dev/null +++ b/Xserver/config/cf/Amoeba.cf @@ -0,0 +1,430 @@ +XCOMM platform: $XConsortium: Amoeba.cf /main/12 1996/09/28 16:04:48 rws $ +XCOMM platform: $XFree86: xc/config/cf/Amoeba.cf,v 3.9 1996/12/23 05:50:00 dawes Exp $ + +/* The presence of this configuration file in the X distribution + * does not imply full support for the system it describes. + * Additional patches from The XFree86 Project, Inc. will be required to + * compile the X distribution on Amoeba. According to them, these patches + * will also be made available at the regular Amoeba ftp site + * ftp.am.cs.vu.nl. + */ + +/* + * Configuration file for Amoeba 5.2 + */ + +#ifndef OSName +#define OSName Amoeba 5.2 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 5 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 2 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 0 +#endif +#ifndef OSVendor +#define OSVendor Vrije Universiteit +#endif + +#define AmoebaArchitecture YES + +/* Configuration defaults */ +#ifndef AmoebaTop +#define AmoebaTop __AM_TOP__ +#endif +#ifndef AmoebaBin +#define AmoebaBin $(ATOP)/bin.sun4 +#endif +#ifndef AmoebaConf +#define AmoebaConf __AM_CONF__ +#endif + +#define HasNdbm YES +#define NeedSdbm YES +#define HasShm NO +#define HasSecureRPC NO +#define SetTtyGroup NO +#define HasPutenv YES +#define HasSockets NO +#define HasStreams NO + +#if defined(Sun3Architecture) || defined(SparcArchitecture) +#define XsunAmoebaServer YES +#define XsunAmoebaMonoServer YES +#endif + +#define BuildFonts NO +#define BuildFontServer NO +#define BuildPexExt NO +#define BuildXIE NO + +#define YaccCmd byacc +#define TermcapLibrary /* in libajax */ +#define LexLib /* not needed */ + +#define PexCCOptions DefaultCCOptions +#define ServerOSDefines XFree86ServerOSDefines + +#define UsrLibDir $(DESTDIR)/profile/module/x11/lib +#define LibDir $(DESTDIR)/profile/module/x11/lib +#define ManDirectoryRoot $(DESTDIR)/profile/module/x11/man +#define BinDir $(DESTDIR)/profile/module/x11/bin +#define IncRoot $(DESTDIR)/profile/module/x11/include +#define FontDir $(DESTDIR)/profile/module/x11/fonts/$(ARCH) +#define DefaultRGBDatabase $(DESTDIR)/profile/module/x11/lib/rgb/$(ARCH)/rgb + +#define ManSuffix 1 +#define ManPath ManDirectoryRoot +#define XmanLocalSearchPath ManDirectoryRoot + +#define DefaultUserPath :/bin:$(BINDIR) +#define DefaultSystemPath /bin:$(BINDIR): + +#define StandardIncludes -I$(ATOP)/src/h \ + -I$(ATOP)/src/h/posix \ + -I$(ATOP)/src/h/posix/machdep/$(ARCH) \ + -I$(ATOP)/src/h/machdep/arch/$(ARCH) \ + -I$(ATOP)/src/h/toolset/$(TOOLSET) + +#define Malloc0ReturnsNull YES +#define ServerInstallFlags -s 32 +#define FontDefines -DFONT_SNF +#define ConnectionFlags -DAMTCPCONN -DAMRPCCONN +#define ServerXdmcpDefines /* no -DXDMCP */ +#define UseRgbTxt YES +#define NdbmDefines -DSDBM -DNDBM -I$(XINCLUDESRC) +#define DBMLibrary /* $(LIBSRC)/sdbm/libsdbm.a */ + +#if defined(i386Architecture) +#ifndef AckToolset +#define AckToolset YES +#define ExtraFPLoadFlags -fp +#endif +#define XF86MonoServer YES +#endif + +#if defined(Sun3Architecture) +#ifndef AckToolset +#define AckToolset YES +#endif +#endif + +#if AckToolset +#define CcCmd ack +#define ServerCcCmd ack +#define LdCmd ack +#define AckArchOption -mam_$(ARCH) +#define DefaultCCOptions AckArchOption +#define LibraryCCOptions AckArchOption +#define LdCombineFlags -Rled-r -c.out +#define ArCmd aal clrv +#define RanlibCmd /bin/true +#define AsCmd AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_as AckArchOption +#define AsIncl -I$(ATOP)/src/h/machdep/arch/$(ARCH) +#define AsmDefines -DACK_ASSEMBLER +#define LdPreLib /**/ +#define LdPostLib /**/ +#endif + +#if defined(SparcArchitecture) +#define AllocateLocalDefines -DINCLUDE_ALLOCA_H + +#define CcCmd cc +#define ServerCcCmd cc +#define LdCmd AmoebaConf/$(ARCH).$(TOOLSET)/toolset/do_gld +#define DefaultCCOptions -sun4 +#define LibraryCCOptions -sun4 +#define AmoebaCompilerDefs -Usun +#define ServerExtraDefines AllocateLocalDefines +#define LdPostLib /**/ +#endif + +#ifndef AmoebaCompilerDefs +#define AmoebaCompilerDefs /**/ +#endif + +#define CommonAmoebaDefines -DAMOEBA -D$(ARCH) AmoebaCompilerDefs +#define StandardDefines CommonAmoebaDefines +#define StandardCppDefines StandardDefines + +#ifndef ExtraFPLoadFlags +#define ExtraFPLoadFlags +#endif +#define MathLibrary $(ALIB)/math/libmath.a +#define OSLibraries $(ALIB)/ajax/libajax.a \ + $(ALIB)/amoeba/libamoeba.a \ + MathLibrary \ + ExtraFPLoadFlags +#define ServerExtraSysLibs $(CBRT) OSLibraries +#define ExtraLoadFlags OSLibraries + +ATOP = AmoebaTop +ALIB = AmoebaConf/$(ARCH).$(TOOLSET)/lib +#if AckToolset +/* The ACK toolset already links in the appropriate head.o by default */ +HEAD = +#else +HEAD = $(ALIB)/head/head.o +#endif + +ABIN = AmoebaBin +AINSTALL = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN) +AINSTALLFLAGS = +TOB = /bin/sh $(CONFIGSRC)/util/aminstall.sh $(ABIN) +MKXDIRHIER = /bin/sh $(CONFIGSRC)/util/ammkdirhier.sh $(ABIN) + +/* Make wizardy: */ +COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) -c +LINK.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) + +#if defined(i386Architecture) +ARCH = i80386 +TOOLSET = ack +ALDFLAGS = /* -mam_i80386 now in CCopts */ -.c -Rcv-s32 + +#include +#endif + +#if defined(Sun3Architecture) +ARCH = mc68000 +TOOLSET = ack +ALDFLAGS = -.c -Rcv-s32 +#endif + +#if defined(SparcArchitecture) +ARCH = sparc +TOOLSET = sun +SPARCLIBDIR = AmoebaBin/gnu/sparc +ALDFLAGS = -mam_sparc -n -Ttext 40000 -Bstatic -e start -L$(SPARCLIBDIR) +#endif + +#define BootstrapCFlags -DAMOEBA -DCROSS_$(ARCH) -DCROSS_COMPILE + +/* + * The rest of this files consists of rules to allow cross-compilation + * and installation of binaries and data files from the Unix host to + * the Amoeba file system. + */ + +/* #ifdef CROSS_COMPILING */ +#define CrossCompiling YES + +#define HostLinkRule(target, flags, src, libs) cc -o target src + +#define LinkRule(program,options,objects,libraries) \ +$(LD) $(ALDFLAGS) $(HEAD) -o program options objects libraries $(EXTRA_LOAD_FLAGS) + +/* ComplexHostProgramTarget - Compile a program such that we can run + * it on this host, i.e., don't use the default cross compiler. + */ +#ifndef ComplexHostProgramTarget +#define ComplexHostProgramTarget(program) @@\ + CC=cc @@\ + STD_INCLUDES= @@\ + CFLAGS=$(TOP_INCLUDES) $(INCLUDES) $(BOOTSTRAPCFLAGS) @@\ +EXTRA_LOAD_FLAGS= @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +program: $(OBJS) $(DEPLIBS) @@\ + RemoveTargetProgram($@) @@\ + HostLinkRule($@,$(_NOOP_),$(OBJS),$(DEPLIBS) $(LOCAL_LIBRARIES)) @@\ + @@\ +DependTarget() @@\ + @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* ComplexHostProgramTarget */ + +#ifndef SimpleHostProgramTarget +#define SimpleHostProgramTarget(program) @@\ + OBJS = program.o @@\ + SRCS = program.c @@\ + @@\ +ComplexHostProgramTarget(program) +#endif /* SimpleHostProgramTarget */ + + +#ifndef Concat +#if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp) +#define Concat(a,b)a##b +#else +#define Concat(a,b)a/**/b +#endif +#endif + +/* + * LintLibReferences - variables for lint libraries + */ +#ifndef LintLibReferences +#define LintLibReferences(varname,libname,libsource) @@\ +Concat(LINT,varname) = Concat(libsource/llib-,libname.ln) +#endif + +/* + * UnsharedLibReferences - variables for unshared libraries + */ +#ifndef UnsharedLibReferences +#define UnsharedLibReferences(varname,libname,libsource) @@\ +Concat3(DEP,varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a) @@\ + Concat(varname,LIB) = Concat($(BUILDLIBDIR)/lib,libname.a) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +#ifndef InstallLibrary +#define InstallLibrary(libname,dest) @@\ +install:: Concat(lib,libname.a) @@\ + @echo '** TODO: Install Library ' Concat(lib,libname.a) +#endif /* InstallLibrary */ + +#ifndef MergeIntoInstalledLibrary +#define MergeIntoInstalledLibrary(tolib,fromlib) @@\ +install:: fromlib @@\ + @echo '** TODO: merge ' fromlib into tolib +#endif /* MergeIntoInstalledLibrary */ + +#ifndef InstallLibraryAlias +#define InstallLibraryAlias(libname,alias,dest) @@\ +install:: @@\ + @echo '** TODO: Install lib alias ' libname alias dest +#endif /* InstallLibraryAlias */ + +#ifndef InstallLintLibrary +#define InstallLintLibrary(libname,dest) @@\ +install.ln:: Concat(llib-l,libname.ln) @@\ + @echo '** TODO: Install lintlib ' Concat(llib-l,libname.ln) +#endif /* InstallLintLibrary */ + +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + @echo '** TODO: Install man page ' file.man +#endif /* InstallManPageLong */ + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + @echo '** TODO: Install man page ' file.man +#endif /* InstallGenManPageLong */ + +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(TMP=/tmp/tmp.$$$$; \ @@\ + $(RM) $${TMP}; \ @@\ + echo .so `basename destdir`/file.$(MANSUFFIX) > $${TMP}; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(TOB) $${TMP} $(DESTDIR)destdir/$$i.$(MANSUFFIX)); \ @@\ + done; \ @@\ + $(RM) $${TMP}) +#endif /* InstallManPageAliases */ + +#ifndef InstallGenManPageAliases +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ +install.man:: @@\ + @(TMP=/tmp/tmp.$$$$; \ @@\ + $(RM) $${TMP}; \ @@\ + echo .so `basename destdir`/file.suffix > $${TMP}; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(TOB) $${TMP} $(DESTDIR)destdir/$$i.suffix); \ @@\ + done; \ @@\ + $(RM) $${TMP}) +#endif /* InstallGenManPageAliases */ + +#ifndef InstallNamedNonExec +#define InstallNamedNonExec(srcname,dstname,dest) @@\ +install:: srcname @@\ + $(MKXDIRHIER) $(DESTDIR)dest @@\ + $(TOB) srcname $(DESTDIR)dest/dstname +#endif /* InstallNamedNonExec */ + +#ifndef InstallNonExecFile +#define InstallNonExecFile(file,dest) @@\ +install:: file @@\ + $(MKXDIRHIER) dest @@\ + $(TOB) file dest/file +#endif /* InstallNonExecFile */ + +#ifndef InstallNonExec +#define InstallNonExec(file,dest) @@\ +install:: file @@\ + $(TOB) file dest/file +#endif /* InstallNonExec */ + +#ifndef InstallProgramWithFlags +#define InstallProgramWithFlags(program,dest,flags) @@\ +install:: program @@\ + $(MKXDIRHIER) dest/program @@\ + $(AINSTALL) $(AINSTALLFLAGS) program dest/program/pd.$(ARCH) +#endif /* InstallProgramWithFlags */ + +#ifndef InstallScript +#define InstallScript(program,dest) @@\ +install:: program.script @@\ + $(TOB) program.script dest/program +#endif /* InstallScript */ + +#ifndef InstallNamedScript +#define InstallNamedScript(srcname,dstname,dest) @@\ +install:: srcname @@\ + $(TOB) srcname dest/dstname +#endif /* InstallNamedScript */ + +#ifndef InstallNamedProg +#define InstallNamedProg(srcname,dstname,dest) @@\ +install:: srcname @@\ + $(MKXDIRHIER) $(DESTDIR)dest/dstname @@\ + $(AINSTALL) $(AINSTALLFLAGS) srcname $(DESTDIR)dest/dstname/pd.$(ARCH) +#endif /* InstallNamedProg */ + +#ifndef InstallMultipleDestFlags +#define InstallMultipleDestFlags(step,list,dest,flags) @@\ +step:: list @@\ + $(MKXDIRHIER) $(DESTDIR)dest @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; $(TOB) $$i dest/$$i); \ @@\ + done +#endif /* InstallMultipleDestFlags */ + +#ifndef InstallMultipleProg +#define InstallMultipleProg(list,dest) @@\ +install:: list @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + $(MKXDIRHIER) $(DESTDIR)dest/$$i; \ @@\ + $(AINSTALL) $(AINSTALLFLAGS) $$i dest/$$i/pd.$(ARCH));\ @@\ + done +#endif /* InstallMultipleProg */ + +#ifndef InstallAppDefaults +#if InstallAppDefFiles +#define InstallAppDefaults(class) @@\ +install:: class.ad @@\ + $(MKXDIRHIER) $(XAPPLOADDIR) @@\ + $(TOB) class.ad $(DESTDIR)$(XAPPLOADDIR)/class +#else +#define InstallAppDefaults(class) +#endif /* InstallAppDefFiles */ +#endif /* InstallAppDefaults */ + +#ifndef InstallAppDefaultsLong +#if InstallAppDefFiles +#define InstallAppDefaultsLong(file,class) @@\ +install:: file.ad @@\ + $(MKXDIRHIER) $(DESTDIR)$(XAPPLOADDIR) @@\ + $(TOB) file.ad $(DESTDIR)$(XAPPLOADDIR)/class +#else +#define InstallAppDefaultsLong(file,class) +#endif /* InstallAppDefFiles */ +#endif /* InstallAppDefaultsLong */ + +/* #endif CROSS_COMPILE */ diff --git a/Xserver/config/cf/DGUX.cf b/Xserver/config/cf/DGUX.cf new file mode 100644 index 0000000..f790afe --- /dev/null +++ b/Xserver/config/cf/DGUX.cf @@ -0,0 +1,22 @@ +XCOMM platform: $XConsortium: DGUX.cf /main/5 1996/09/28 16:04:56 rws $ + +#ifndef OSName +#define OSName DG/UX 4.32 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 32 +#endif + +#define BootstrapCFlags -DDGUX +#define StandardDefines -DDGUX -DSYSV +#define SystemV YES +#define HasPutenv YES +#define HasGcc YES +#define BuildServer NO +#define UNCOMPRESSPATH /usr/bin/X11/uncompress + +#define ExtraFilesToClean *.lg diff --git a/Xserver/config/cf/FreeBSD.cf b/Xserver/config/cf/FreeBSD.cf new file mode 100644 index 0000000..b93e3af --- /dev/null +++ b/Xserver/config/cf/FreeBSD.cf @@ -0,0 +1,364 @@ +XCOMM platform: $TOG: FreeBSD.cf /main/18 1997/06/12 07:40:35 kaleb $ +XCOMM platform: $XFree86: xc/config/cf/FreeBSD.cf,v 3.58.2.11 1998/03/01 01:08:59 dawes Exp $ + +#ifndef OSName +#define OSName DefaultOSName +#endif +#ifndef OSVendor +#define OSVendor /**/ +#endif +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +#define HasGcc YES +#define HasGcc2 YES +#define HasCplusplus YES +#define HasGcc2ForCplusplus YES +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES +#define HasNdbm YES +#define HasPutenv YES +#define HasSnprintf YES +#define HasBSD44Sockets YES +#ifndef HasLibCrypt +# define HasLibCrypt YES +#endif +#ifndef HasShm +# define HasShm YES +#endif +#define HasWChar32 YES + +#define AvoidNullMakeCommand YES +#define StripInstalledPrograms YES +#define CompressAllFonts YES +#define Malloc0ReturnsNull YES +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#define MkdirHierCmd mkdir -p + +#define CcCmd cc +#define CppCmd /usr/libexec/cpp +#define PreProcessCmd CppCmd +#define StandardCppDefines -traditional +#if defined(UseInstalled) && (!defined(XF86LinkKit) || !XF86LinkKit) +#define DefaultCCOptions /**/ +#else +#define DefaultCCOptions -ansi -pedantic -Dasm=__asm +#endif +#ifndef ExtraLibraries +#define ExtraLibraries /**/ +#endif +#ifndef UseGnuMalloc +/* 2.2 doesn't really have GnuMalloc */ +#if OSMajorVersion < 2 || (OSMajorVersion == 2 && OSMinorVersion < 2) +#define UseGnuMalloc YES +#else +#define UseGnuMalloc NO +#endif +#endif + +/* 2.2.2 and later has setusercontext() */ +#if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion > 2) || \ + (OSMajorVersion == 2 && OSMinorVersion == 2 && OSTeenyVersion >= 2) +#define HasSetUserContext YES +#endif + +/* + * This doesn't work the way it does on every other system. On FreeBSD it's + * only a "hint, not a demand", whatever that means. Note that this is not + * what it says in the ld and ld.so man pages, which are rather vague on the + * matter. + * + * But we do know that if a) you do what the X Project team does and set your + * ProjectRoot to something like "/X11", and b) you have other X libraries, + * e.g. in /usr/X11R6/lib, and you have added /usr/X11R6/lib to your + * ld.so.cache with ldconfig, then any programs linked with this "hint" will + * find that ld.so ignores the "hint" at runtime and loads the libraries in + * the ld.so.cache, i.e.the wrong ones, instead! Empirically we find that + * the run-path is only used as a last resort to find the libraries, after + * the LD_LIBRARY_PATH and ld.so.cache. + * + * N. B. to FreeBSD users who are not familiar with the semantics of the run- + * path on other systems. The run-path is akin to a per-program ld.so.cache. + * If a program is linked with a run-path, that run-path should take + * precedence over _everything_ else! In my opinion ldconfig and the + * ld.so.cache should be deprecated immediately now that FreeBSD has run- + * paths. Any program that needs libraries that are outside the "well known" + * locations should be linked with a run-path. + * + * All of which begs the question: If this option doesn't work in any useful + * way, why did they (FreeBSD) bother to add it? It would be nice if FreeBSD + * would fix ld.so so that run-paths are truly useful. + * + * Using run-paths is added with the intent that vendors who ship X for + * FreeBSD should use it too. Once everyone uses it then there will be no + * reason for FreeBSD to assume that it knows where X libraries are installed + * and they can remove it from the list of directories they add to ld.so.cache + * in their /etc/rc file. + */ +#if OSMajorVersion > 2 || (OsMajorVersion == 2 && OSMinorVersion >= 2) +#ifndef ExtraLoadFlags +#define ExtraLoadFlags -Wl,-R,$(USRLIBDIRPATH) +#endif +#endif + +#ifndef GnuMallocLibrary +#define GnuMallocLibrary -lgnumalloc +#endif + +#if (OSMajorVersion > 2) || (OSMajorVersion == 2 && OSMinorVersion >= 2) \ + || (OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 6) +/* 2.1.6 and 2.2 have libz */ +#ifndef HasZlib +#define HasZlib YES +#endif +#endif + +#if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 2) || \ + (OSMajorVersion == 2 && OSMinorVersion == 2 && OSTeenyVersion > 2) +/* + * FreeBSD 2.2.5 or later. + * + * Don't make any assumptions about the version of Tcl in the base OS. + * These settings assume that the tcl-7.6 and tk-4.2 packages have been + * installed. + * + * Note the static libs in some versions of the FreeBSD packages are + * broken. The symptom of this is unresolved symbols when linking + * XF86Setup. If you run into this problem, either build your own + * static libs from the standard Tcl and Tk source, or change the + * definitions of XF86SetupUsesStatic{Tcl,Tk}. The latter is not + * recommended for binaries that are going to be redistributed. + */ +#ifndef TkLibName +#define TkLibName tk42 +#endif +#ifndef TkIncDir +#define TkIncDir /usr/local/include/tk4.2 +#endif +#ifndef TclLibName +#define TclLibName tcl76 +#endif +#ifndef TclIncDir +#define TclIncDir /usr/local/include/tcl7.6 +#endif +#else +#if OSMajorVersion == 2 && OSMinorVersion == 2 +/* + * FreeBSD 2.2 prior to 2.2.5 + * + * Note: the tk-4.1 package for FreeBSD doesn't have the static lib, so + * you'll have to build it yourself, or change the definition of + * XF86SetupUsesStaticTk. + */ +#ifndef TkLibName +#define TkLibName tk41 +#endif +#ifndef TclLibName +#define TclLibName tcl +#endif +#ifndef TclLibDir +#define TclLibDir /usr/lib +#endif +#ifndef TclIncDir +#define TclIncDir /usr/include +#endif +/* FreeBSD 2.2 has libtcl in the base system */ +#ifndef XF86SetupUsesStaticTcl +#define XF86SetupUsesStaticTcl NO +#endif + +#else /* ! 2.2 or later */ + +#if OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 6 + +/* + * 2.1.x with x >=6 has tk 4.1 and tcl 7.5 in the packages collection. + * Neither packages include the static libs, so you either need to build + * them yourself or set XF86SetupUsesStaticTcl and XF86SetupUsesStaticTk + * to NO. This isn't the default because we don't want the XFree86 + * binaries to have these packages as a dependency. + */ + +#ifndef TkLibName +#define TkLibName tk41 +#endif +#ifndef TclLibName +#define TclLibName tcl75 +#endif + +#else /* ! 2.1.6 or later */ + +#ifndef TkLibName +#define TkLibName tk40 +#endif +#ifndef TclLibName +#define TclLibName tcl74 +#endif + +#endif +#endif +#endif + +#undef InstallCmd +#define InstallCmd /usr/bin/install + +#if GccUsesGas +# define GccGasOption -DGCCUSESGAS +# define AsmDefines -DUSE_GAS +#else +# define GccGasOption /**/ +#endif + +#define ServerExtraDefines GccGasOption XFree86ServerDefines + +#define StandardDefines -DCSRG_BASED + +#if OSMajorVersion > 1 +#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +#define XawI18nDefines -DUSE_XWCHAR_STRING +#define HasMakefileSafeInclude YES +#define IncludeMakefile(file) @@# dependencies are in .depend +#define DependFileName .depend +#ifndef BuildDynamicLoading +#define BuildDynamicLoading YES +#endif +#ifndef ForceNormalLib +#define ForceNormalLib YES +#endif +#define HasMkstemp YES +#else +#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DXNO_SYSCONF +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#endif + +/* The GCC strength-reduce bug is fixed for FreeBSD 2.1.5 and later */ +#ifndef DefaultGcc2i386Opt +#if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion > 1) || (OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 5) +#define DefaultGcc2i386Opt -O2 +#endif +#endif + +#ifdef i386Architecture +# define OptimizedCDebugFlags DefaultGcc2i386Opt +#else +# define OptimizedCDebugFlags -O2 +#endif + +#ifndef PreIncDir +# define PreIncDir /usr/include +#endif + +#define TroffCmd groff -Tps +#define SetTtyGroup YES + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.core +#endif + +#define DefaultUserPath /bin:/usr/bin:/sbin:/usr/sbin:$(BINDIR):/usr/gnu/bin:/usr/local/bin +#define DefaultSystemPath /bin:/usr/bin:/sbin:/usr/sbin:$(BINDIR) +#ifndef SystemManDirectory +#define SystemManDirectory /usr/share/man +#endif + +#define InstKmemFlags -g kmem -m 2755 + +/* + * Compress manual pages + */ +#ifndef CompressManPages +# define CompressManPages YES +#endif + +#if CompressManPages + +#ifndef CompressManCmd +# define CompressManCmd gzip -n +#endif + COMPRESSMANCMD = CompressManCmd + +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.$(MANSUFFIX)* @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.man \ @@\ + $(DESTDIR)destdir/dest.$(MANSUFFIX) @@\ + -$(COMPRESSMANCMD) $(DESTDIR)destdir/dest.$(MANSUFFIX) +#endif + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.suffix* @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.man \ @@\ + $(DESTDIR)destdir/dest.suffix @@\ + -$(COMPRESSMANCMD) $(DESTDIR)destdir/dest.suffix +#endif + +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + MNAME=`echo $$i | cut -f1 -d.`; \ @@\ + $(RM) $(DESTDIR)dest/$${MNAME}*; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) $$i \ @@\ + $(DESTDIR)dest/$${MNAME}.$(MANSUFFIX); \ @@\ + $(COMPRESSMANCMD) $(DESTDIR)dest/$${MNAME}.$(MANSUFFIX)); \ @@\ + done +#endif + +/* + * InstallManPageAliases - install soft links for aliases. + */ +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(SUFFIX=`echo $(DESTDIR)destdir/file.* | sed -e 's,.*/[^\.]*.,,'`; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.*; \ @@\ + (cd $(DESTDIR)destdir; $(LN) file.$${SUFFIX} \ @@\ + $$i.$${SUFFIX})); \ @@\ + done) +#endif + +/* + * InstallGenManPageAliases - install soft links for aliases. + */ +#ifndef InstallGenManPageAliases +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) +#endif +#endif + +#if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 1) +#define HasBsdMake YES +#endif + +#ifndef StaticLibrary +#define StaticLibrary(libpath,libname) -Wl,-Bstatic Concat(-L,libpath) Concat(-l,libname) -Wl,-Bdynamic +#endif + +#include + +#ifdef i386Architecture +#include +#endif diff --git a/Xserver/config/cf/Imake.cf b/Xserver/config/cf/Imake.cf new file mode 100644 index 0000000..2c3a71b --- /dev/null +++ b/Xserver/config/cf/Imake.cf @@ -0,0 +1,963 @@ +XCOMM $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $ +/* + * To add support for another platform: + * + * 1. Identify a machine-specific cpp symbol. If your preprocessor + * does not have any built in, you will need to add the symbol to the + * cpp_argv table in config/imake/imakemdep.h and rebuild imake with + * the BOOTSTRAPCFLAGS variable set (see the macII for an example). + * + * 2. Add all machine-specific cpp symbols (either defined by you or by + * the preprocessor or compiler) to the predefs table in + * config/imake/imakemdep.h. + * + * 3. But a new #ifdef block below that defines MacroIncludeFile and + * MacroFile for your new platform and then #undefs the machine- + * specific preprocessor symbols (to avoid problems with file names). + * + * 4. Create a .cf file with the name given by MacroFile. + */ +XCOMM $XFree86: xc/config/cf/Imake.cf,v 3.66 2001/04/18 16:13:17 dawes Exp $ + +#if defined(__APPLE__) +# undef __APPLE__ +# define MacroIncludeFile +# define MacroFile darwin.cf +# define DarwinArchitecture +# ifdef __ppc__ +# define PpcDarwinArchitecture +# undef __ppc__ +# endif +# ifdef __i386__ +# define i386DarwinArchitecture +# undef __i386__ +# endif +#endif + +#if defined(clipper) || defined(__clipper__) +# undef clipper +# define MacroIncludeFile +# define MacroFile ingr.cf +# define IngrArchitecture +#endif /* clipper */ + +#ifdef __CYGWIN__ +#define MacroIncludeFile +#define MacroFile cygwin.cf +#define cygwinArchitecture +#define i386Architecture +#undef i386 +#undef __i386__ +#undef _X86_ +#undef __CYGWIN__ +#endif /* CYGWIN */ + +#ifdef ultrix +# define MacroIncludeFile +# define MacroFile ultrix.cf +# ifdef vax +# undef vax +# define VaxArchitecture +# endif +# ifdef mips +# undef mips +# define MipsArchitecture +# define MipselArchitecture +# endif +# undef ultrix +# define UltrixArchitecture +#endif /* ultrix */ + +#if defined(vax) && !defined(UltrixArchitecture) +# define MacroIncludeFile +# define MacroFile bsd.cf +# undef vax +# define BSDArchitecture +# define VaxArchitecture +#endif /* vax */ + +#ifdef bsdi +# define MacroIncludeFile +# define MacroFile bsdi.cf +# undef bsdi +# define BSDOSArchitecture +# if defined(__i386__) || defined(i386) +# define i386BsdArchitecture +# define i386Architecture +# undef i386 +# undef __i386__ +# endif +# if defined(__sparc__) || defined(__sparc_v9__) || defined(sparc) +# define SparcArchitecture +# undef sparc +# undef __sparc__ +# undef __sparc_v9__ +# endif +#endif /* bsdi */ + +#ifdef __OpenBSD__ +# undef __OpenBSD__ +# undef __NetBSD__ +# define OpenBSDArchitecture +# define MacroIncludeFile +# define MacroFile OpenBSD.cf +# ifdef __i386__ +# define i386BsdArchitecture +# define i386Architecture +# undef i386 +# endif +# if defined(__sparc__) || defined(sparc) +# define SparcArchitecture +# undef sparc +# endif +# ifdef mips +# define MipsArchitecture +# ifdef arc +# define ArcArchitecture +# undef arc +# endif +# ifdef pmax +# define PmaxArchitecture +# undef pmax +# endif +# undef mips +# endif +# ifdef __alpha__ +# define AlphaArchitecture +# undef __alpha__ +# endif +# ifdef mc68020 +# define Mc68020Architecture +# if defined(amiga) +# define AmigaArchitecture +# undef amiga +# endif +# if defined(hp300) +# define Hp300Architecture +# undef hp300 +# endif +# if defined(mac68k) +# define Mac68kArchitecture +# undef mac68k +# endif +# if defined(mvme68k) +# define Mvme68kArchitecture +# undef mvme68k +# endif +# if defined(sun3) +# define Sun3Architecture +# undef sun3 +# endif +# undef mc68000 +# endif +# ifdef __powerpc__ +# define PpcArchitecture +# undef __powerpc__ +# endif +#endif /* OpenBSD */ + +#ifdef __NetBSD__ +# define MacroIncludeFile +# define MacroFile NetBSD.cf +# undef __NetBSD__ +# define NetBSDArchitecture +# ifdef __i386__ +# define i386BsdArchitecture +# define i386Architecture +# undef i386 +# endif +# if defined(__sparc__) || defined(sparc) +# define SparcArchitecture +# undef sparc +# endif +# ifdef mips +# define MipsArchitecture +# define ArcArchitecture +# undef mips +# endif +# ifdef __alpha__ +# define AlphaArchitecture +# undef __alpha__ +# endif +# ifdef mc68000 +# define Mc68020Architecture +# endif +# ifdef __arm32__ +# define Arm32Architecture +# undef __arm32__ +# endif +# ifdef __vax__ +# define VaxArchitecture +# undef __vax__ +# endif +# ifdef __powerpc__ +# define PpcArchitecture +# undef __powerpc__ +# endif +#endif /* NetBSD */ + +#ifdef __FreeBSD__ +# define MacroIncludeFile +# define MacroFile FreeBSD.cf +# undef __FreeBSD__ +# define FreeBSDArchitecture +# ifdef __i386__ +# define i386BsdArchitecture +# define i386Architecture +# undef i386 +# endif +# ifdef __alpha__ +# define AlphaBsdArchitecture +# define AlphaArchitecture +# undef __alpha__ +# endif +#endif /* __FreeBSD__ */ + +#ifdef AMOEBA + /* Should be before the 'sun' entry because we may be cross-compiling */ +# define MacroIncludeFile +# define MacroFile Amoeba.cf +# if defined(i80386) || defined(__i80386__) +# undef i80386 +# define i386Architecture +# else +# if defined(mc68000) || defined(__mc68000__) +# undef mc68000 +# define Sun3Architecture +# define SunArchitecture +# else +# if defined(sparc) || defined(__sparc__) +# undef sparc +# define SparcArchitecture +# define SunArchitecture +# endif +# endif +# undef sun +# endif +#endif /* AMOEBA */ + +#ifdef sun +# define MacroIncludeFile +# define MacroFile sun.cf +# ifdef SVR4 +# undef SVR4 +# define SVR4Architecture +# endif +# ifdef sparc +# undef sparc +# define SparcArchitecture +# endif +# ifdef mc68000 +# undef mc68000 +# define Sun3Architecture +# endif +# ifdef i386 +# undef i386 +# define i386Architecture +# endif +# undef sun +# define SunArchitecture +#endif /* sun */ + +#ifdef hpux +# define MacroIncludeFile +# define MacroFile hp.cf +# undef hpux +# define HPArchitecture +#endif /* hpux */ + +#ifdef sco +# define MacroIncludeFile +# define MacroFile sco5.cf +# undef sco +# undef USL +# undef SYSV +# undef i386 +# undef SCO +# undef SVR4 +# define i386Architecture +# define SCOArchitecture +# define i386SVR3Architecture +# define SVR3Architecture +# define i386ScoArchitecture +# define i386Sco325Architecture +#endif /* sco - SCO Open Server 5 */ + +#ifdef USL +# define MacroIncludeFile +# define MacroFile usl.cf +# undef USL +# undef SVR4 +# undef i386 +# define SVR4Architecture +# define i386Architecture +# define USLArchitecture +#endif /* USL */ + +#ifdef NCR +# define MacroIncludeFile +# define MacroFile ncr.cf +# undef NCR +# undef SVR4 +# undef i386 +# define SVR4Architecture +# define i386Architecture +# define NCRArchitecture +#endif /* NCR */ + +#ifdef apollo +# define MacroIncludeFile +# define MacroFile apollo.cf +# undef apollo +# define ApolloArchitecture +#endif /* apollo */ + +#ifdef sony +# define MacroIncludeFile +# define MacroFile sony.cf +# undef sony +# undef sony_news +# define SonyArchitecture +# ifdef mc68020 +# undef mc68020 +# undef mc68030 +# define Mc68020Architecture +# endif +# ifdef mips +# undef mips +# define MipsArchitecture +# endif +# ifdef __svr4 +# define SVR4Architecture +# else +# if !defined(bsd43) || defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV) +# define SonySysvArchitecture +# else +# define SonyBsdArchitecture +# endif +# endif +#endif /* sony */ + +#ifdef M4310 +# define MacroIncludeFile +# define MacroFile pegasus.cf +# undef M4310 +# define PegasusArchitecture +#endif /* M4310 */ + +#ifdef M4330 +# define MacroIncludeFile +# define MacroFile m4330.cf +# undef M4330 +# define M4330Architecture +#endif /* M4330 */ + +#ifdef macII +# define MacroIncludeFile +# define MacroFile macII.cf +# undef macII +# define MacIIArchitecture +#endif /* macII */ + +#ifdef _CRAY +# define MacroIncludeFile +# define MacroFile cray.cf +# undef cray +# undef CRAY +# undef CRAY1 +# undef CRAY2 +# undef YMP +# define CrayArchitecture +#endif /* _CRAY */ + +#ifdef sgi +# define MacroIncludeFile +# define MacroFile sgi.cf +# undef sgi +# define SGIArchitecture +# undef mips +# undef __mips +# define MipsArchitecture +# ifdef _SVR4 +# undef _SVR4 +# define SVR4Architecture +# endif +# ifdef _SYSTYPE_SVR4 +# undef _SYSTYPE_SVR4 +# define SVR4Architecture +# endif +#endif /* sgi */ + +#ifdef stellar +# define MacroIncludeFile +# define MacroFile stellar.cf +# undef stellar +# define StellarArchitecture +#endif /* stellar */ + +#if defined(ibm) || defined(_IBMR2) || defined(ibm032) || defined(aix) +# define MacroIncludeFile +# define MacroFile ibm.cf +# ifdef ibm +# undef ibm +# endif +# define IBMArchitecture +# ifdef i386 +# undef i386 +# define PS2Architecture +# endif +# ifdef ibm032 +# undef ibm032 +# define RtArchitecture +# endif +# ifdef aix +# undef aix +# define AIXArchitecture +# endif +# ifdef _IBMR2 +# undef _IBMR2 +# define RsArchitecture +# endif +#endif /* ibm */ + +#ifdef luna +# undef luna +# define MacroIncludeFile +# define MacroFile luna.cf +# define LunaArchitecture +# ifdef mc68000 +# undef mc68000 +# define Mc68000Architecture +# else +# undef mc88000 +# define Mc88000Architecture +# endif +#endif /* luna */ + +#ifdef Mips +# define MacroIncludeFile +# define MacroFile Mips.cf +# undef Mips +# undef mips +# if defined(SYSTYPE_BSD43) || defined(BSD) || defined(BSD43) +# define MipsBsdArchitecture +# else /* BSD */ +# define MipsSysvArchitecture +# endif /* BSD */ +#endif /* Mips */ + +#ifdef MOTOROLA +# define MacroIncludeFile +# define MacroFile moto.cf +# undef MOTOROLA +# ifdef SYSV +# define MotoR3Architecture +# endif +# ifdef SVR4 +# define MotoR4Architecture +# endif +#endif /* MOTOROLA */ + +#if defined(SVR4) && !defined(DGUX) +# ifdef i386 +# define i386Architecture +# undef i386 +# endif +# ifdef PC98 +# define PANIX98Architecture +# undef PC98 +# endif +# define SVR4Architecture +# define MacroIncludeFile +# define MacroFile svr4.cf +# undef SVR4 +#endif /* SVR4 */ + +#ifdef SYSV +# ifdef i386 +# undef i386 +# ifdef ISC +# define i386Architecture +# define i386SVR3Architecture +# define MacroIncludeFile +# define MacroFile isc.cf +# define i386IscArchitecture +# undef ISC +# ifdef ISC202 +# define IscVersion 202 +# undef ISC202 +# else +# ifdef ISC30 +# define IscVersion 300 +# undef ISC30 +# else +# ifdef ISC40 +# define IscVersion 400 +# undef ISC40 +# else +# define IscVersion 221 +# endif /* ISC40 */ +# endif /* ISC30 */ +# endif /* ISC202 */ +# endif /* ISC */ +# ifndef MacroFile +# define i386SVR3Architecture +# define MacroIncludeFile +# define MacroFile x386.cf +# endif /* MacroFile */ +# endif /* i386 */ +#endif /* SYSV */ + +/* SYSV386 is here for backward compatibility only */ +#ifdef SYSV386 +# undef i386 +# ifdef SVR4 +# define i386Architecture +# define SVR4Architecture +# define i386SVR4Architecture +# define MacroIncludeFile +# define MacroFile svr4.cf +# undef SVR4 +# else /* ! SVR4 */ +# ifdef ISC +# define i386Architecture +# define i386SVR3Architecture +# define MacroIncludeFile +# define MacroFile isc.cf +# define i386IscArchitecture +# undef ISC +# ifdef ISC202 +# define IscVersion 202 +# undef ISC202 +# else +# ifdef ISC30 +# define IscVersion 300 +# undef ISC30 +# else +# ifdef ISC40 +# define IscVersion 400 +# undef ISC40 +# else +# define IscVersion 221 +# endif /* ISC40 */ +# endif /* ISC30 */ +# endif /* ISC202 */ +# endif /* ISC */ +# ifndef MacroFile +# define i386SVR3Architecture +# define MacroIncludeFile +# define MacroFile x386.cf +# endif /* MacroFile */ +# endif /* ! SVR4 */ +#endif /* SYSV386 */ + +#ifdef DGUX +# define i386Architecture +# define SVR4Architecture +# define MacroIncludeFile +# define MacroFile DGUX.cf +# undef DGUX +# define DguxArchitecture +#endif /* DGUX */ + +#ifdef __convex__ +# define MacroIncludeFile +# define MacroFile convex.cf +# ifdef convex +# undef convex +# endif +# define ConvexArchitecture +#endif /* _convex_ */ + +#ifdef __osf__ +# define MacroIncludeFile +# define MacroFile osf1.cf +# define OSF1Architecture +# undef __osf__ +# ifdef __mips__ +# undef __mips__ +# define MipsArchitecture +# define MipselArchitecture +# endif +# ifdef __alpha +# undef __alpha +# define AlphaArchitecture +# endif +#endif /* __osf__ */ + +#ifdef Oki +# define MacroIncludeFile +# define MacroFile Oki.cf +# undef Oki +# define i860SVR4Architecture +# define SVR4Architecture +# undef SVR4 +#endif /* Oki */ + +#ifdef WIN32 +# define MacroIncludeFile +# define MacroFile Win32.cf +# define Win32Architecture +#endif /* WIN32 */ + +#ifdef linux +# define MacroIncludeFile +# define MacroFile linux.cf +# undef linux +# define LinuxArchitecture +# ifdef i386 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef i386 +XCOMM Keep cpp from replacing path elements containing i486/i586/i686 +# ifdef i486 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef i486 +# endif +# ifdef i586 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef i586 +# endif +# ifdef i686 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef i686 +# endif +# ifdef k6 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef k6 +# endif +# endif /* k6 */ +# ifdef __i386__ +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i386__ +# endif /* __i386__ */ +# ifdef __i486__ +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i486__ +# endif /* __i486__ */ +# ifdef __i586__ +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i586__ +# endif /* __i586__ */ +# ifdef __i686__ +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i686__ +# endif /* __i686__ */ +# ifdef __k6__ +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __k6__ +# endif /* __k6__ */ +# ifdef __i386 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i386 +# endif /* __i386 */ +# ifdef __i486 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i486 +# endif /* __i486 */ +# ifdef __i586 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i586 +# endif /* __i586 */ +# ifdef __i686 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __i686 +# endif /* __i686 */ +# ifdef __k6 +# ifndef i386Architecture +# define i386Architecture +# endif +# undef __k6 +# endif /* __k6 */ +# ifdef __s390__ +# define s390Architecture +# undef __s390__ +# endif /* s390 */ +# ifdef __alpha +# define AlphaArchitecture +# undef __alpha +# endif /* __alpha */ +# ifdef __alpha__ +# ifndef AlphaArchitecture +# define AlphaArchitecture +# endif +# undef __alpha__ +# endif /* __alpha__ */ +# ifdef __arm__ +# define Arm32Architecture +# undef arm +# undef __arm +# undef __arm__ +# endif +# ifdef mc68000 +# define Mc68020Architecture +# undef mc68000 +# endif /* mc68000 */ +# ifdef powerpc +# define PpcArchitecture +# undef powerpc +# endif +# ifdef __powerpc__ +# ifndef PpcArchitecture +# define PpcArchitecture +# endif +# undef __powerpc__ +# endif +# ifdef sparc +# define SparcArchitecture +# undef sparc +# endif +# ifdef __sparc__ +# ifndef SparcArchitecture +# define SparcArchitecture +# endif +# undef __sparc__ +# endif +# ifdef x86_64 +# define x86_64Architecture +# undef x86_64 +# endif +# ifdef __x86_64__ +# ifndef x86_64Architecture +# define x86_64Architecture +# endif +# undef __x86_64__ +# endif +# ifdef ia64 +# define ia64Architecture +# undef ia64 +# endif +# ifdef __ia64__ +# ifndef ia64Architecture +# define ia64Architecture +# endif +# undef __ia64__ +# endif +# if defined(mips) || defined(__mips__) +# define MipsArchitecture +# undef mips +# undef __mips__ +# if defined(MIPSEL) || defined(_MIPSEL) +# define MipselArchitecture +# endif +# undef MIPSEL +# undef _MIPSEL +# endif +# ifdef __hppa__ +# ifndef HPArchitecture +# define HPArchitecture +# endif +# undef __hppa__ +# endif /* __hppa__ */ +# ifdef __sh__ +# ifndef SuperHArchitecture +# define SuperHArchitecture +# endif +# ifdef __BIG_ENDIAN__ +# ifndef SuperHebArchitecture +# define SuperHebArchitecture +# endif +# endif +# undef __sh__ +# endif /* __sh__ */ +# if defined(__SH3__) || defined(__sh3__) +# ifndef SuperH3Architecture +# define SuperH3Architecture +# endif +# undef __SH3__ +# undef __sh3__ +# endif /* __SH3__ or __sh3__ */ +# ifdef __SH4__ +# ifdef __SH4_NOFPU__ +# ifndef SuperH4NOFPUArchitecture +# define SuperH4NOFPUArchitecture +# endif +# undef __SH4_NOFPU__ +# else +# ifndef SuperH4Architecture +# define SuperH4Architecture +# endif +# endif +# undef __SH4__ +# endif /* __SH4__ */ +XCOMM for compatibility with 3.3.x +# ifdef PpcArchitecture +# define PowerPCArchitecture +# endif +#endif /* linux */ + +#if (defined(__Lynx__) || defined(Lynx)) && (defined(i386) || defined(__i386__) || defined(__x86__) || defined(__powerpc__) || defined(__sparc__) || defined(sparc)) +# define MacroIncludeFile +# define MacroFile lynx.cf +# define LynxOSArchitecture +# undef __Lynx__ +# undef Lynx +# undef lynx +# if defined(i386) || defined(__i386__) || defined(__x86__) +# define i386Architecture +# undef i386 +# undef __i386__ +# undef __x86__ +# endif +# ifdef __powerpc__ +# define PpcArchitecture +# undef __powerpc__ +# endif +# if defined(sparc) || defined(__sparc__) +# define SparcArchitecture +# undef sparc +# undef __sparc__ +# endif +/* for compatibility with 3.3.x */ +# ifdef PpcArchitecture +# define PowerPCArchitecture +# endif +#endif /* LynxOS AT/PPC/microSPARC */ + +#ifdef __uxp__ +# define MacroIncludeFile +# define MacroFile fujitsu.cf +# define FujitsuArchitecture +# undef __uxp__ +# define UXPArchitecture +# define SVR4Architecture +# ifdef sparc +# undef sparc +# define SparcArchitecture +# endif +#endif /* __uxp__ */ + +#ifdef __sxg__ +# define MacroIncludeFile +# define MacroFile fujitsu.cf +# define FujitsuArchitecture +# undef __sxg__ +# define mc68000Architecture +#endif /* __sxg__ */ + +#ifdef _SEQUENT_ +/* undefine assignments resulting from -DSVR4 */ +# undef MacroIncludeFile +# define MacroIncludeFile +# undef MacroFile +# define MacroFile sequent.cf +# undef _SEQUENT_ +# define DynixPtxArchitecture +# define SequentArchitecture +#endif + +#if defined(_nec_ews_svr4) || defined(nec_ews_svr4) || defined(nec_ews_svr2) || defined(SX) || defined(_nec_up) || defined(_nec_ft) || defined(PC_UX) +# ifdef nec +# undef nec +# endif +# define MacroIncludeFile +# define MacroFile nec.cf +# define NecArchitecture +#endif + +#ifdef minix +#define MacroIncludeFile +#define MacroFile minix.cf +#undef minix +#define MinixArchitecture +#define i386Architecture +#endif /* minix */ + +#ifdef MACH +#ifdef __GNU__ +#define MacroIncludeFile +#define MacroFile gnu.cf +#define GNUMachArchitecture +#else +#define MacroIncludeFile +#define MacroFile mach.cf +#endif +#undef MACH +#ifdef i386 +#define i386MachArchitecture +#define i386Architecture +#endif /* i386 */ +#undef i386 +#endif /* MACH */ + +/* On NetBSD, `unix' is not defined, and cpp emits a warning every time + * it sees a test using the `unix' symbol */ +#if !defined(NetBSDArchitecture) || (defined(NetBSDArchitecture) && DefaultOSMajorVersion == 1 && DefaultOSMinorVersion <= 3) +#ifdef unix +#undef unix +#endif +#endif + +#ifdef emxos2 +#define MacroIncludeFile +#define MacroFile os2.cf +#define OS2Architecture +#define i386Architecture +#endif /* emxos2 */ + +#if defined(__QNX__) && !defined(__QNXNTO__) +#define MacroIncludeFile +#define MacroFile QNX4.cf +#define QNX4Architecture +#define i386Architecture +#endif /* QNX4 */ + +#ifdef __QNXNTO__ +#define MacroIncludeFile +#define MacroFile nto.cf +#define NTOArchitecture +#ifdef PPC +# define PPCArchitecture +# undef PPC +#else +#ifdef MIPS +# define mipsArchitecture +# undef MIPS +#else +#ifdef i386 +# define i386Architecture +# undef i386 +#endif +#endif +#endif +#endif /* QNX/Neutrino */ + +#ifdef SparcArchitecture +# if defined(__sparc_v9) || defined(__arch64__) +# define Sparc64Architecture +# endif +#endif + +#ifndef MacroIncludeFile +XCOMM WARNING: Imake.cf not configured; guessing at definitions!!! +XCOMM This might mean that BOOTSTRAPCFLAGS was not set when building imake. +#define MacroIncludeFile +#define MacroFile generic.cf +#endif diff --git a/Xserver/config/cf/Imake.rules b/Xserver/config/cf/Imake.rules new file mode 100644 index 0000000..5ab9a18 --- /dev/null +++ b/Xserver/config/cf/Imake.rules @@ -0,0 +1,2650 @@ +XCOMM --------------------------------------------------------------------- +XCOMM Imake rules for building libraries, programs, scripts, and data files +XCOMM rules: $TOG: Imake.rules /main/222 1997/07/17 20:04:40 kaleb $ +XCOMM rules: $XFree86: xc/config/cf/Imake.rules,v 3.33.2.7 1998/02/06 09:02:17 dawes Exp $ + +/* + * MACHINE-INDEPENDENT RULES; DO NOT MODIFY + * + * Warning, when defining rules: make sure you do not include both a trailing + * backslash and double ampersand backslash or else you will get an extra + * backslash in the Makefile. + * + * The following macros are defined for the various templates and Imakefiles + * (for a list of the applicable make variables, see the template files): + * + * Concat (a,b) + * Concat3 (a,b,c) + * Concat4 (a,b,c,d) + * _Use (a,b) + * _UseCat (a,b,c) + * _MUse (a,b) + * _MUseCat (a,b,c) + * ProgramTargetName (target) + * RunProgram (progvar,options) + * RunProgramWithSetup (setup,progvar,options) + * RemoveFile (file) + * RemoveFiles (files) + * CenterLoadTarget (target,srclist,libs,defines) + * CenterProgramTarget (program,srclist,objlist,locallibs,syslibs) + * SentinelLinkTarget (step,program,linklist) + * SentinelProgramTarget (program,deplist,linklist) + * SentinelCplusplusProgramTarget (program,deplist,linklist) + * PurifyLinkTarget (step,program,linklist) + * PurifyProgramTarget (program,deplist,linklist) + * PurifyCplusplusProgramTarget (program,deplist,linklist) + * ProofLinkTarget (step,program,linklist) + * ProofProgramTarget (program,deplist,linklist) + * ProofCplusplusProgramTarget (program,deplist,linklist) + * ProofCleanTarget () + * RemoveTargetProgram (program) + * MakeDir (dir) + * BuildIncludesTop (srclist) + * BuildIncludes (srclist,dstsubdir,dstupdir) + * LinkRule (program,options,objects,libraries) + * HostLinkRule (program,options,objects,libraries) + * NoCmpScript (target) + * NoConfigRec (target) + * NormalProgramTarget (program,objects,deplibs,locallibs,syslibs) + * SetUIDProgramTarget (program,objects,deplibs,locallibs,syslibs) + * SingleProgramTarget (program,objects,locallibs,syslibs) + * SimpleProgramTarget (program) + * ComplexProgramTarget (program) + * ComplexProgramTarget_1 (program,locallib,syslib) + * ComplexProgramTarget_2 (program,locallib,syslib) + * ComplexProgramTarget_3 (program,locallib,syslib) + * ServerTargetWithFlags (server,subdirs,objects,libs,syslibs,flags) + * ServerTarget (server,subdirs,objects,libs,syslibs) + * MoveToBakFile (file) + * RMoveToBakFile (file) + * RanLibrary (args) + * LibraryTargetName (libname) + * LibraryTargetNameSuffix (libname,suffix) + * InstallNamedTarget (step,srcname,flags,dest,dstname) + * InstallTarget (step,file,flags,dest) + * InstallLibrary (libname,dest) + * MergeIntoInstalledLibrary (tolib,fromlib) + * InstallLibraryAlias (libname,alias,dest) + * InstallLintLibrary (libname,dest) + * InstallManPageLong (file,destdir,dest) + * InstallManPage (file,destdir) + * InstallManPageAliases (file,destdir,aliases) + * ManKeywordsTarget (manpath) + * InstallNamedNonExec (srcname,dstname,dest) + * InstallNonExecFile (file,dest) + * InstallNonExecFileNoClobber (file,dest) + * InstallNonExec (file,dest) + * InstallProgramWithFlags (program,dest,flags) + * InstallProgram (program,dest) + * InstallScript (program,dest) + * InstallNamedProg (srcname,dstname,dest) + * InstallNamedProgNoClobber (srcname,dstname,dest) + * MakeFlagsToShellFlags (makeflags,shellcmd) + * MakeNamedTargetSubdir (dir,flags,subname) + * LinkFileList (step,list,dir,sub) + * LinkVarDirectory (mdir,cdir,rdir,ldir) + * InstallMultipleDestFlags (step,list,dest,flags) + * InstallMultipleDest (step,list,dest) + * InstallMultiple (list,dest) + * InstallMultipleFlags (list,dest,flags) + * InstallMultipleMan (list,dest) + * DependDependency () + * DependTarget () + * DependTarget3 (srcs1,srcs2,srcs3) + * CleanTarget () + * TagsTarget () + * ImakeDependency (target) + * BuildMakefileTarget (notused,imakeflags) + * MakefileTarget () + * LibMkdir (dir) + * LibCleanDir (dir) + * LintLibReferences (varname,libname,libsource) + * UnsharedLibReferences (varname,libname,libsource) + * ProjectUnsharedLibReferences (varname,libname,libsource,buildlibdir) + * SharedLibDependencies (libname,libsource,revname) + * SharedDSLibDependencies (libname,libsource,revname) + * SharedLibReferences (varname,libname,libsource,revname,rev) + * SharedDSLibReferences (varname,libname,libsource,revname,rev) + * ObjectCompile (options) + * NormalLibObjCompile (options) + * NormalSharedLibObjCompile (options) + * LibObjCompile (dir,options) + * DebuggedLibObjCompile (options) + * ProfiledLibObjCompile (options) + * SharedLibObjCompile (options) + * NormalLibraryObjectRule () + * NormalFortranObjectRule () + * ObjectFromSpecialSource (dst,src,flags) + * SpecialObjectRule (objs,depends,options) + * SpecialCObjectRule (basename,depends,options) + * LexFile (file) + * YaccFile (file,flags) + * YaccFileNoFlags (file) + * MakeLibrary (libname,objlist) + * NormalLibraryTarget (libname,objlist) + * NormalLibraryTarget2 (libname,objlist1,objlist2) + * NormalLibraryTarget3 (libname,objlist1,objlist2,objlist3) + * NormalDepLibraryTarget (libname,deplist,objlist) + * UnsharedLibraryTarget (libname,objlist,down,up) + * UnsharedLibraryTarget3 (libname,objlist1,objlist2,objlist3,down,up) + * SubdirLibraryRule (objlist) + * ProfiledLibraryTarget (libname,objlist) + * DebuggedLibraryTarget (libname,objlist) + * AliasedLibraryTarget (libname,alias) + * NormalRelocatableTarget (objname,objlist) + * ProfiledRelocatableTarget (objname,objlist) + * DebuggedRelocatableTarget (objname,objlist) + * LintLibraryTarget (libname,srclist) + * NormalLintTarget (srclist) + * LintTarget () + * LinkSourceFile (src,dir) + * LinkFile (tofile,fromfile) + * MakeSubincludesForBuild (step,dir,srclist) + * LangNamedTargetSubdirs (lang,name,dirs,verb,flags,subname) + * LangNamedMakeSubdirs (lang,name,dirs) + * LangMakeSubdirs (lang,dirs) + * NamedTargetSubdirs (name,dirs,verb,flags,subname) + * NamedMakeSubdirs (name,dirs) + * MakeSubdirs (dirs) + * DependSubdirs (dirs) + * ForceSubdirs (dirs) + * InstallSubdirs (dirs) + * InstallManSubdirs (dirs) + * IncludesSubdirs (dirs) + * NamedCleanSubdirs (name,dirs) + * CleanSubdirs (dirs) + * NamedTagSubdirs (name,dirs) + * TagSubdirs (dirs) + * MakeLintSubdirs (dirs,target,subtarget) + * LintSubdirs (dirs) + * MakeLintLibSubdirs (dirs) + * MakeMakeSubdirs (dirs,target) + * MakefileSubdirs (dirs) + * CppScriptTarget (dst,src,defs,deplist) + * MakeScriptFromCpp (name,defs) + * CppFileTarget (dst,src,defs,deplist) + * CppSourceFile (dst,src,defs,deplist) + * MakeDirectories (step,dirs) + * AllTarget (depends) + * StaticLibrary (libpath,libname) + * MakeMutex (targets) + * + * + * The following are in specific Lib.rules: + * + * SharedLibraryTarget (libname,rev,solist,down,up) + * SharedLibraryDataTarget (libname,rev,salist) + * InstallSharedLibrary (libname,rev,dest) + * InstallSharedLibraryData (libname,rev,dest) + * + */ + +#define NullParameter + +/* if [ -d ] or [ ! -d ] causes make to fail, define this as - */ +#ifndef DirFailPrefix +#define DirFailPrefix +#endif + +/* + * NoCmpScript - suppress clearmake build script comparison. + */ +#ifndef NoCmpScript +#if HasClearmake +#define NoCmpScript(targ) @@\ +XCOMM special target for clearmake @@\ +.NO_CMP_SCRIPT: targ +#else +#define NoCmpScript(targ) /**/ +#endif +#endif + +/* + * NoConfigRec - suppress using clearmake configuration records. + */ +#ifndef NoConfigRec +#if HasClearmake +#define NoConfigRec(targ) @@\ +XCOMM special target for clearmake @@\ +.NO_CONFIG_REC: targ +#else +#define NoConfigRec(targ) /**/ +#endif +#endif + +/* + * Concat - concatenates two strings. + */ +#ifndef Concat +#if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp) +#define Concat(a,b)a##b +#else +#define Concat(a,b)a/**/b +#endif +#endif + +/* + * Concat3 - concatenates three strings. + */ +#ifndef Concat3 +#if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp) +#define Concat3(a,b,c)a##b##c +#else +#define Concat3(a,b,c)a/**/b/**/c +#endif +#endif + +/* + * Concat4 - concatenates four strings. + */ +#ifndef Concat4 +#if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp) +#define Concat4(a,b,c,d)a##b##c##d +#else +#define Concat4(a,b,c,d)a/**/b/**/c/**/d +#endif +#endif + +/* + * _XUse - makes a choice based on UseInstalledX11. + */ +#ifndef _XUse +# if defined(UseInstalled) || UseInstalledX11 +# define _XUse(a,b) a +# else +# define _XUse(a,b) b +# endif +#endif /* _XUse */ + +/* + * _Use - makes a choice based on UseInstalled. + */ +#ifndef _Use +# define _Use _XUse +#endif /* _Use */ + +/* + * _XUseCat - combination of _XUse and Concat. + * exists to avoid problems with some preprocessors + */ +#ifndef _XUseCat +# if (__STDC__ && !defined(UnixCpp)) || defined(AnsiCpp) +# if defined(UseInstalled) || UseInstalledX11 +# define _XUseCat(a,b,c) a##c +# else +# define _XUseCat(a,b,c) b##c +# endif +# else +# if defined(UseInstalled) || UseInstalledX11 +# define _XUseCat(a,b,c) a/**/c +# else +# define _XUseCat(a,b,c) b/**/c +# endif +# endif +#endif /* _XUseCat */ + +/* + * _UseCat - combination of _Use and Concat. + * exists to avoid problems with some preprocessors + */ +#ifndef _UseCat +# define _UseCat _XUseCat +#endif /* _UseCat */ + +#ifndef ProgramTargetName +#define ProgramTargetName(target)target +#endif + +#ifndef RunProgram +#define RunProgram(progvar,options) $(progvar) options +#endif + +#ifndef RunProgramWithSetup +#define RunProgramWithSetup(setup,progvar,options) setup $(progvar) options +#endif + +#ifndef RemoveFile +#define RemoveFile(file) $(RM) file +#endif /* RemoveFile */ + +#ifndef RemoveFiles +#define RemoveFiles(files) $(RM) files +#endif /* RemoveFiles */ + +/* + * CenterLoadTarget - generate rules to load files into CodeCenter + */ +#ifndef CenterLoadTarget +#if HasCodeCenter +#define CenterLoadTarget(target,srclist,libs,defines) @@\ +ProgramTargetName(target):: srclist @@\ + XCOMM load defines srclist libs +#else +#define CenterLoadTarget(target,srclist,libs,defines) /**/ +#endif +#endif /* CenterLoadTarget */ + +/* + * CenterProgramTarget - generate rules to make CodeCenter read in sources + * and objects. + */ +#ifndef CenterProgramTarget +#define CenterProgramTarget(program,srclist,objlist,locallibs,syslibs) @@\ +CenterLoadTarget(Concat(debug_,program),srclist,$(EXTRA_LDOPTIONS) $(LOCAL_LDFLAGS) $(LDPRELIBS) locallibs $(LDLIBS) syslibs,$(ALLDEFINES)) @@\ + @@\ +CenterLoadTarget(Concat(odebug_,program),objlist,$(EXTRA_LDOPTIONS) $(LOCAL_LDFLAGS) $(LDPRELIBS) locallibs $(LDLIBS) syslibs,$(ALLDEFINES)) +#endif /* CenterProgramTarget */ + +#ifndef SentinelLinkTarget +#if HasSentinel +#define SentinelLinkTarget(step,program,linklist) @@\ +ProgramTargetName(step.sentinel): @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(SENTINEL) $(SENTINELOPTIONS) $(CC) -o program.sentinel $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) +#else +#define SentinelLinkTarget(step,program,linklist) /**/ +#endif +#endif /* SentinelLinkTarget */ + +/* + * SentinelProgramTarget - generate rules to make Sentinel image + */ +#ifndef SentinelProgramTarget +#if HasSentinel +#define SentinelProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.sentinel): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(SENTINEL) $(SENTINELOPTIONS) $(CC) -o $@ $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.sentinel:: @@\ + RemoveFile(program.sentinel) +#else +#define SentinelProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* SentinelProgramTarget */ + +/* + * SentinelCplusplusProgramTarget - generate rules to make Sentinel image + */ +#ifndef SentinelCplusplusProgramTarget +#if HasSentinel +#define SentinelCplusplusProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.sentinel): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CXXENVSETUP) $(SENTINEL) $(SENTINELOPTIONS) $(CXX) -o $@ $(CXXLDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.sentinel:: @@\ + RemoveFile(program.sentinel) +#else +#define SentinelCplusplusProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* SentinelCplusplusProgramTarget */ + +#ifndef PurifyLinkTarget +#if HasPurify +#define PurifyLinkTarget(step,program,linklist) @@\ +ProgramTargetName(step.pure): @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(PURIFY) $(PURIFYOPTIONS) $(CC) -o program.pure $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) +#else +#define PurifyLinkTarget(step,program,linklist) /**/ +#endif +#endif /* PurifyLinkTarget */ + +/* + * PurifyProgramTarget - generate rules to make Purify'ed image + */ +#ifndef PurifyProgramTarget +#if HasPurify +#define PurifyProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.pure): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(PURIFY) $(PURIFYOPTIONS) $(CC) -o $@ $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.pure:: @@\ + RemoveFile(program.pure) +#else +#define PurifyProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* PurifyProgramTarget */ + +/* + * PurifyCplusplusProgramTarget - generate rules to make Purify'ed image + */ +#ifndef PurifyCplusplusProgramTarget +#if HasPurify +#define PurifyCplusplusProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.pure): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CXXENVSETUP) $(PURIFY) $(PURIFYOPTIONS) $(CXX) -o $@ $(CXXLDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.pure:: @@\ + RemoveFile(program.pure) +#else +#define PurifyCplusplusProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* PurifyCplusplusProgramTarget */ + +#ifndef ProofLinkTarget +#if HasTestCenter +#define ProofLinkTarget(step,program,linklist) @@\ +ProgramTargetName(step.tc): @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(PROOF) $(PROOFOPTIONS) $(CC) -o program.tc $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) +#else +#define ProofLinkTarget(step,program,linklist) /**/ +#endif +#endif /* ProofLinkTarget */ + +/* + * ProofProgramTarget - generate rules to make Proof'ed image + */ +#ifndef ProofProgramTarget +#if HasTestCenter +#define ProofProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.tc): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CCENVSETUP) $(PROOF) $(PROOFOPTIONS) $(CC) -o $@ $(LDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.tc:: @@\ + RemoveFiles(program.tc program.tc.*.*) +#else +#define ProofProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* ProofProgramTarget */ + +/* + * ProofCplusplusProgramTarget - generate rules to make Proof'ed image + */ +#ifndef ProofCplusplusProgramTarget +#if HasTestCenter +#define ProofCplusplusProgramTarget(program,deplist,linklist) @@\ +ProgramTargetName(program.tc): deplist @@\ + RemoveTargetProgram($@) @@\ + $(CXXENVSETUP) $(PROOF) $(PROOFOPTIONS) $(CXX) -o $@ $(CXXLDOPTIONS) linklist $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean clean.tc:: @@\ + RemoveFiles(program.tc program.tc.*.*) +#else +#define ProofCplusplusProgramTarget(program,deplist,linklist) /**/ +#endif +#endif /* ProofCplusplusProgramTarget */ + +#ifndef ProofCleanTarget +#if HasTestCenter +#define ProofCleanTarget() @@\ +clean clean.tc:: @@\ + $(RM) -r TC.Cache +#else +#define ProofCleanTarget() /**/ +#endif +#endif /* ProofCleanTarget */ + +#ifndef RemoveTargetProgram +#if RemoveTargetProgramByMoving +#define RemoveTargetProgram(program) \ +-if [ -f program ]; then RemoveFile(Concat(program,~)); $(MV) program Concat(program,~); fi +#else +#define RemoveTargetProgram(program) RemoveFile(program) +#endif +#endif /* RemoveTargetProgram */ + +#ifndef MakeDir +#define MakeDir(dir) DirFailPrefix@if [ -d dir ]; then set +x; \ @@\ + else (set -x; $(MKDIRHIER) dir); fi +#endif /* MakeDir */ + +#ifndef BuildIncludesTop +#define BuildIncludesTop(srclist) @@\ +includes:: srclist @@\ + MakeDir($(BUILDINCDIR)) @@\ + @(set -x; cd $(BUILDINCDIR) && for i in srclist; do \ @@\ + RemoveFile($$i); \ @@\ + $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/$$i .; \ @@\ + done) +#endif /* BuildIncludesTop */ + +#ifndef BuildIncludes +#define BuildIncludes(srclist,dstsubdir,dstupdir) @@\ +includes:: srclist @@\ + MakeDir($(BUILDINCDIR)/dstsubdir) @@\ + @(set -x; cd $(BUILDINCDIR)/dstsubdir && for i in srclist; do \ @@\ + RemoveFile($$i); \ @@\ + $(LN) $(BUILDINCTOP)/dstupdir/$(CURRENT_DIR)/$$i .; \ @@\ + done) +#endif /* BuildIncludes */ + +/* + * LinkBuildBinary - export a binary from the build tree. + */ +#ifndef LinkBuildBinary +#define LinkBuildBinary(binary) @@\ +all:: $(BUILDBINDIR)/binary binary @@\ + @@\ +$(BUILDBINDIR)/binary: binary @@\ + RemoveFile($@) @@\ + cd $(BUILDBINDIR) && $(LN) $(BUILDBINTOP)/$(CURRENT_DIR)/binary . +#endif /* LinkBuildBinary */ + +#ifndef BuildInterfaces +#define BuildInterfaces(srclist,dstsubdir,dstupdir) @@\ +interfaces:: @@\ + MakeDir($(BUILDINCDIR)/dstsubdir) @@\ + @(set -x; cd $(BUILDINCDIR)/dstsubdir && for i in srclist; do \ @@\ + RemoveFile($$i); \ @@\ + $(LN) $(BUILDINCTOP)/dstupdir/$(CURRENT_DIR)/$$i .; \ @@\ + done) +#endif /* BuildInterfaces */ + +/* + * LinkRule - link a program + */ +#ifndef LinkRule +#define LinkRule(program,options,objects,libraries) \ +$(CCLINK) -o program options objects libraries $(EXTRA_LOAD_FLAGS) +#endif /* LinkRule */ + +/* + * HostLinkRule - link a utility to be used on the build host + * (differs from LinkRule if cross compiling) + */ +#ifndef HostLinkRule +#define HostLinkRule LinkRule +#endif + +#ifndef CplusplusLinkRule +#define CplusplusLinkRule(program,options,objects,libraries) \ +$(CXXLINK) -o program options objects libraries $(EXTRA_LOAD_FLAGS) +#endif /* CplusplusLinkRule */ + +/* + * NormalProgramTarget - generate rules to compile and link the indicated + * program; since it does not use any default object files, it may be used for + * multiple programs in the same Imakefile. + */ +#ifndef NormalProgramTarget +#define NormalProgramTarget(program,objects,deplibs,locallibs,syslibs) @@\ +ProgramTargetName(program): objects deplibs @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),objects,locallibs $(LDLIBS) syslibs) @@\ + @@\ +SentinelProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ +PurifyProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ +ProofProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* NormalProgramTarget */ + + +/* + * NormalCplusplusProgramTarget - Like NormalTargetProgram, but uses + * C++ linking rules. + */ +#ifndef NormalCplusplusProgramTarget +#define NormalCplusplusProgramTarget(program,objects,deplibs,locallibs,syslibs) @@\ +ProgramTargetName(program): objects deplibs @@\ + RemoveTargetProgram($@) @@\ + CplusplusLinkRule($@,$(CXXLDOPTIONS),objects,locallibs $(LDLIBS) syslibs) @@\ + @@\ +SentinelCplusplusProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ +PurifyCplusplusProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ +ProofCplusplusProgramTarget(program,objects deplibs,objects locallibs $(LDLIBS) syslibs) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* NormalCplusplusProgramTarget */ + + +#ifndef SetUIDProgramTarget +#define SetUIDProgramTarget NormalProgramTarget +#endif + + +/* + * SingleProgramTarget - obsolete version of NormalProgramTarget that does + * not have deplibs. + */ +#ifndef SingleProgramTarget +#define SingleProgramTarget(program,objects,locallibs,syslibs) @@\ +NormalProgramTarget(program,objects,NullParameter,locallibs,syslibs) +#endif /* SingleProgramTarget */ + +/* + * SimpleProgramTarget - generate rules for compiling and linking programs + * that only have one C source file. It should only be used in Imakefiles + * that describe a single program. + */ +#ifndef SimpleProgramTarget +#define SimpleProgramTarget(program) @@\ + OBJS = program.o @@\ + SRCS = program.c @@\ + @@\ +ComplexProgramTarget(program) +#endif /* SimpleProgramTarget */ + +#ifndef SimpleCplusplusProgramTarget +#define SimpleCplusplusProgramTarget(program) @@\ + OBJS = program.o @@\ + SRCS = program.CCsuf @@\ + @@\ +ComplexCplusplusProgramTarget(program) +#endif /* SimpleCplusplusProgramTarget */ + +#ifndef ProgramTargetHelper +#define ProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs) $(deplib) @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\ + @@\ +CenterProgramTarget(program,$(srcs),$(objs),locallib,syslib) @@\ +SentinelProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +PurifyProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +ProofProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ +InstallManPage(program,$(MANDIR)) +#endif /* ProgramTargetHelper */ + +#ifndef ProgramTargetHelperNoMan +#define ProgramTargetHelperNoMan(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs) $(deplib) @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\ + @@\ +CenterProgramTarget(program,$(srcs),$(objs),locallib,syslib) @@\ +SentinelProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +PurifyProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +ProofProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif /* ProgramTargetHelperNoMan */ + +#ifndef CplusplusProgramTargetHelper +#define CplusplusProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs) $(deplib) @@\ + RemoveTargetProgram($@) @@\ + CplusplusLinkRule($@,$(CXXLDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\ + @@\ +CenterProgramTarget(program,$(srcs),$(objs),locallib,syslib) @@\ +SentinelCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +PurifyCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ +ProofCplusplusProgramTarget(program,$(objs) $(deplib),$(objs) locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ +InstallManPage(program,$(MANDIR)) +#endif /* CplusplusProgramTargetHelper */ + +/* + * ComplexProgramTarget - generate rules for compiling and linking the + * program specified by $(OBJS) and $(SRCS), installing the program and its + * man page, and generating dependencies. It should only be used in + * Imakefiles that describe a single program. + */ +#ifndef ComplexProgramTarget +#define ComplexProgramTarget(program) @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +ProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* ComplexProgramTarget */ + +#ifndef ComplexCplusplusProgramTarget +#define ComplexCplusplusProgramTarget(program) @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +CplusplusProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* ComplexCplusplusProgramTarget */ + +/* + * ComplexProgramTargetNoMan - generate rules for compiling and linking + * the program specified by $(OBJS) and $(SRCS), installing the program + * and generating dependencies. It should only be used in Imakefiles + * that describe a single program. + */ +#ifndef ComplexProgramTargetNoMan +#define ComplexProgramTargetNoMan(program) @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +ProgramTargetHelperNoMan(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* ComplexProgramTargetNoMan */ + +/* + * ComplexProgramTarget_1 - generate rules for compiling and linking the + * program specified by $(OBJS1) and $(SRCS1), installing the program and its + * man page, and generating dependencies for it and any programs described + * by $(SRCS2) through $(SRCS10). It should be used to build the primary + * program in Imakefiles that describe multiple programs. + */ +#ifndef ComplexProgramTarget_1 +#define ComplexProgramTarget_1(program,locallib,syslib) @@\ + OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(OBJS5) \ @@\ + $(OBJS6) $(OBJS7) $(OBJS8) $(OBJS9) $(OBJS10) @@\ + SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4) $(SRCS5) \ @@\ + $(SRCS6) $(SRCS7) $(SRCS8) $(SRCS9) $(SRCS10) @@\ + @@\ +AllTarget($(PROGRAMS)) @@\ + @@\ +ProgramTargetHelper(program,SRCS1,OBJS1,DEPLIBS1,locallib,syslib) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFiles($(PROGRAMS)) +#endif /* ComplexProgramTarget_1 */ + +#ifndef ComplexCplusplusProgramTarget_1 +#define ComplexCplusplusProgramTarget_1(program,locallib,syslib) @@\ + OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4) $(OBJS5) \ @@\ + $(OBJS6) $(OBJS7) $(OBJS8) $(OBJS9) $(OBJS10) @@\ + SRCS = $(SRCS1) $(SRCS2) $(SRCS3) $(SRCS4) $(SRCS5) \ @@\ + $(SRCS6) $(SRCS7) $(SRCS8) $(SRCS9) $(SRCS10) @@\ + @@\ +AllTarget($(PROGRAMS)) @@\ + @@\ +CplusplusProgramTargetHelper(program,SRCS1,OBJS1,DEPLIBS1,locallib,syslib)@@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFiles($(PROGRAMS)) +#endif /* ComplexCplusplusProgramTarget_1 */ + +/* + * ComplexProgramTarget_2 - generate rules for compiling and linking the + * program specified by $(OBJS2) and $(SRCS2) and installing the program and + * man page. It should be used to build the second program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_2 +#define ComplexProgramTarget_2(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS2,OBJS2,DEPLIBS2,locallib,syslib) +#endif /* ComplexProgramTarget_2 */ + +#ifndef ComplexCplusplusProgramTarget_2 +#define ComplexCplusplusProgramTarget_2(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS2,OBJS2,DEPLIBS2,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_2 */ + +/* + * ComplexProgramTarget_3 - generate rules for compiling and linking the + * program specified by $(OBJS3) and $(SRCS3) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_3 +#define ComplexProgramTarget_3(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS3,OBJS3,DEPLIBS3,locallib,syslib) +#endif /* ComplexProgramTarget_3 */ + +#ifndef ComplexCplusplusProgramTarget_3 +#define ComplexCplusplusProgramTarget_3(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS3,OBJS3,DEPLIBS3,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_3 */ + +/* + * ComplexProgramTarget_4 - generate rules for compiling and linking the + * program specified by $(OBJS4) and $(SRCS4) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_4 +#define ComplexProgramTarget_4(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS4,OBJS4,DEPLIBS4,locallib,syslib) +#endif /* ComplexProgramTarget_4 */ + +#ifndef ComplexCplusplusProgramTarget_4 +#define ComplexCplusplusProgramTarget_4(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS4,OBJS4,DEPLIBS4,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_4 */ + +/* + * ComplexProgramTarget_5 - generate rules for compiling and linking the + * program specified by $(OBJS5) and $(SRCS5) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_5 +#define ComplexProgramTarget_5(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS5,OBJS5,DEPLIBS5,locallib,syslib) +#endif /* ComplexProgramTarget_5 */ + +#ifndef ComplexCplusplusProgramTarget_5 +#define ComplexCplusplusProgramTarget_5(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS5,OBJS5,DEPLIBS5,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_5 */ + +/* + * ComplexProgramTarget_6 - generate rules for compiling and linking the + * program specified by $(OBJS6) and $(SRCS6) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_6 +#define ComplexProgramTarget_6(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS6,OBJS6,DEPLIBS6,locallib,syslib) +#endif /* ComplexProgramTarget_6 */ + +#ifndef ComplexCplusplusProgramTarget_6 +#define ComplexCplusplusProgramTarget_6(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS6,OBJS6,DEPLIBS6,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_6 */ + +/* + * ComplexProgramTarget_7 - generate rules for compiling and linking the + * program specified by $(OBJS7) and $(SRCS7) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_7 +#define ComplexProgramTarget_7(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS7,OBJS7,DEPLIBS7,locallib,syslib) +#endif /* ComplexProgramTarget_7 */ + +#ifndef ComplexCplusplusProgramTarget_7 +#define ComplexCplusplusProgramTarget_7(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS7,OBJS7,DEPLIBS7,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_7 */ + +/* + * ComplexProgramTarget_8 - generate rules for compiling and linking the + * program specified by $(OBJS8) and $(SRCS8) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_8 +#define ComplexProgramTarget_8(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS8,OBJS8,DEPLIBS8,locallib,syslib) +#endif /* ComplexProgramTarget_8 */ + +#ifndef ComplexCplusplusProgramTarget_8 +#define ComplexCplusplusProgramTarget_8(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS8,OBJS8,DEPLIBS8,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_8 */ + +/* + * ComplexProgramTarget_9 - generate rules for compiling and linking the + * program specified by $(OBJS9) and $(SRCS9) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_9 +#define ComplexProgramTarget_9(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS9,OBJS9,DEPLIBS9,locallib,syslib) +#endif /* ComplexProgramTarget_9 */ + +#ifndef ComplexCplusplusProgramTarget_9 +#define ComplexCplusplusProgramTarget_9(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS9,OBJS9,DEPLIBS9,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_9 */ + +/* + * ComplexProgramTarget_10 - generate rules for compiling and linking the + * program specified by $(OBJS10) and $(SRCS10) and installing the program and + * man page. It should be used to build the third program in Imakefiles + * describing more than one program. + */ +#ifndef ComplexProgramTarget_10 +#define ComplexProgramTarget_10(program,locallib,syslib) @@\ +ProgramTargetHelper(program,SRCS10,OBJS10,DEPLIBS10,locallib,syslib) +#endif /* ComplexProgramTarget_10 */ + +#ifndef ComplexCplusplusProgramTarget_10 +#define ComplexCplusplusProgramTarget_10(program,locallib,syslib) @@\ +CplusplusProgramTargetHelper(program,SRCS10,OBJS10,DEPLIBS10,locallib,syslib) +#endif /* ComplexCplusplusProgramTarget_10 */ + +#ifndef MoveToBakFile +#define MoveToBakFile(file) -@if [ -f file ]; then set -x; \ @@\ + $(MV) file file.bak; else exit 0; fi +#endif /* MoveToBakFile */ + +#ifndef RMoveToBakFile +#define RMoveToBakFile(file) -@if [ -f file ]; then set -x; \ @@\ + RemoveFile(file.bak); $(MV) file file.bak; \ @@\ + else exit 0; fi +#endif /* RMoveToBakFile */ + +/* + * ServerTargetWithFlags - generate rules to compile, link, and relink a server + */ +#ifndef ServerTargetWithFlags +#define ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,flags) @@\ +AllTarget(ProgramTargetName(server)) @@\ +ProgramTargetName(server): subdirs objects libs @@\ + MoveToBakFile($@) @@\ + LinkRule($@,$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ + @@\ +Concat(load,server): @@\ + MoveToBakFile(ProgramTargetName(server)) @@\ + LinkRule(ProgramTargetName(server),$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ + @@\ +loadX:: Concat(load,server) @@\ + @@\ +SentinelProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +SentinelLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ +PurifyProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +PurifyLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ +ProofProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +ProofLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ + @@\ +InstallProgramWithFlags(server,$(BINDIR),flags) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(server)) +#endif /* ServerTargetWithFlags */ + +/* + * ServerTarget - rules to compile, link, and relink a normal server + */ +#ifndef ServerTarget +#define ServerTarget(server,subdirs,objects,libs,syslibs) @@\ +ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,$(_NOOP_)) +#endif /* ServerTarget */ + +#if DoRanlibCmd +#define RanLibrary(args) $(RANLIB) args +#else +#define RanLibrary(args) $(_NULLCMD_) +#endif + +#ifndef LibraryTargetName +#define LibraryTargetName(libname)Concat(lib,libname.a) +#endif + +#ifndef LibraryTargetNameSuffix +#define LibraryTargetNameSuffix(libname,suffix)Concat3(lib,libname,suffix.a) +#endif + +#ifndef InstallNamedTarget +#define InstallNamedTarget(step,srcname,flags,dest,dstname) @@\ +step:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) flags srcname $(DESTDIR)dest/dstname +#endif /* InstallNamedTarget */ + +/* + * InstallNamedTargetNoClobber - Like InstallNamedTarget, but doesn't + * do the install if an installed version already exists. Useful + * for files that might have local customizations that you don't + * want to clobber. Config files are good candidates for this. + */ +#ifndef InstallNamedTargetNoClobber +#define InstallNamedTargetNoClobber(step,srcname,flags,dest,dstname) @@\ +step:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + @if [ -f $(DESTDIR)dest/dstname ]; then \ @@\ + echo "Not overwriting existing" $(DESTDIR)dest/dstname; \ @@\ + else set -x; \ @@\ + $(INSTALL) $(INSTALLFLAGS) flags srcname $(DESTDIR)dest/dstname; fi +#endif /* InstallNamedTargetNoClobber */ + +#ifndef InstallTarget +#define InstallTarget(step,file,flags,dest) @@\ +InstallNamedTarget(step,file,flags,dest,file) +#endif /* InstallTarget */ + +/* + * InstallLibrary - generate rules to install the indicated library. + */ +#ifndef InstallLibrary +#define InstallLibrary(libname,dest) @@\ +install:: LibraryTargetName(libname) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(libname) $(DESTDIR)dest @@\ + RanLibrary($(RANLIBINSTFLAGS) $(DESTDIR)dest/LibraryTargetName(libname)) +#endif /* InstallLibrary */ + + +/* + * InstallLinkKitLibrary - rule to install Link Kit library. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitLibrary +#define InstallLinkKitLibrary(lib,dir) +#endif + + +/* + * InstallLinkKitNamedLibrary - rule to install Link Kit library. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitNamedLibrary +#define InstallLinkKitNamedLibrary(lib,dlib,dir) +#endif + + +/* + * MergeIntoInstalledLibrary - generate rules to merge one library into another + */ +#ifndef MergeIntoInstalledLibrary +#define MergeIntoInstalledLibrary(tolib,fromlib) @@\ +install:: fromlib @@\ + $(SCRIPTSRC)/mergelib $(DESTDIR)tolib fromlib +#endif /* MergeIntoInstalledLibrary */ + +/* + * InstallLibraryAlias - generate rules to create a link from one library name + * to another for the purposes of aliasing. + */ +#ifndef InstallLibraryAlias +#define InstallLibraryAlias(libname,alias,dest) @@\ +install:: @@\ + -(cd $(DESTDIR)dest && ( \ @@\ + RemoveFile(LibraryTargetName(alias)); \ @@\ + $(LN) LibraryTargetName(libname) LibraryTargetName(alias))) +#endif /* InstallLibraryAlias */ + + +/* + * InstallLintLibrary - generate rules to install the indicated lint library. + */ +#ifndef InstallLintLibrary +#define InstallLintLibrary(libname,dest) @@\ +InstallTarget(install.ln,Concat(llib-l,libname.ln),$(INSTLIBFLAGS),dest) +#endif /* InstallLintLibrary */ + + +/* + * InstallManPageLong - generate rules to install the indicated manual page, + * giving it an alternate name. This is used for installing man pages whose + * base name without the .man suffix would normally be longer than 8 characters + * (the limit for using source code control systems on files systems with + * short file names). + */ +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +InstallNamedTarget(install.man,file.man,$(INSTMANFLAGS),destdir,dest.$(MANSUFFIX)) +#endif /* InstallManPageLong */ + + +/* + * InstallManPage - generate rules to install the indicated manual page. + */ +#ifndef InstallManPage +#define InstallManPage(file,destdir) @@\ +InstallManPageLong(file,destdir,file) +#endif /* InstallManPage */ + + +/* + * InstallManPageAliases - generate rules to install manual page aliases. + */ +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(TMP=/tmp/tmp.$$$$; \ @@\ + RemoveFile($${TMP}); \ @@\ + echo .so `basename destdir`/file.$(MANSUFFIX) > $${TMP}; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) $${TMP} $(DESTDIR)destdir/$$i.$(MANSUFFIX)); \ @@\ + done; \ @@\ + RemoveFile($${TMP})) +#endif /* InstallManPageAliases */ + + +/* + * InstallGenManPageLong - More general rules for installing manual pages -- + * doesn't assume MANSUFFIX. + */ +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.man $(DESTDIR)destdir/dest.suffix +#endif /* InstallGenManPageLong */ + + +/* + * InstallGenManPage - general equivalent of InstallManPage + */ +#ifndef InstallGenManPage +#define InstallGenManPage(file,destdir,suffix) @@\ +InstallGenManPageLong(file,destdir,file,suffix) +#endif /* InstallGenManPage */ + + +/* + * InstallGenManPageAliases - general equivalent of InstallManPageAliases + */ +#ifndef InstallGenManPageAliases +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ +install.man:: @@\ + @(TMP=/tmp/tmp.$$$$; \ @@\ + RemoveFile($${TMP}); \ @@\ + echo .so `basename destdir`/file.suffix > $${TMP}; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) $${TMP} $(DESTDIR)destdir/$$i.suffix); \ @@\ + done; \ @@\ + RemoveFile($${TMP})) +#endif /* InstallGenManPageAliases */ + +/* + * ManKeywordsTarget - generate the database used by "man -k". + * This rule updates the index in the directory "manpath", which + * indexes all the manual pages in the section subdirectories under + * it. An update command is defined only on systems that have a + * per MANPATH element index. If the OS supports only one system-wide + * database, we don't update it, because then we can't do cross + * installations or use a non-empty DESTDIR for testing. + */ +#ifndef ManKeywordsTarget +#define ManKeywordsTarget(manpath) man_keywords:: +#endif + +/* + * InstallNamedNonExec - generate rules to install a data file + */ +#ifndef InstallNamedNonExec +#define InstallNamedNonExec(srcname,dstname,dest) @@\ +InstallNamedTarget(install,srcname,$(INSTDATFLAGS),dest,dstname) +#endif /* InstallNamedNonExec */ + + +/* + * InstallLinkKitNamedNonExec - rule for installing server Link Kit files. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitNamedNonExec +#define InstallLinkKitNamedNonExec(srcname,dstname,dest) +#endif + + +/* + * InstallNonExecFile - generate rules to install a data file + */ +#ifndef InstallNonExecFile +#define InstallNonExecFile(file,dest) @@\ +InstallTarget(install,file,$(INSTDATFLAGS),dest) +#endif /* InstallNonExecFile */ + + +/* + * InstallNonExecFileNoClobber - install a data file once + */ +#ifndef InstallNonExecFileNoClobber +#define InstallNonExecFileNoClobber(file,dest) @@\ +InstallNamedTargetNoClobber(install,file,$(INSTDATFLAGS),dest,file) +#endif /* InstallNonExecFileNoClobber */ + + +/* + * InstallLinkKitNonExecFile - rule for installing server Link Kit files. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitNonExecFile +#define InstallLinkKitNonExecFile(file,dir) +#endif + + +/* + * InstallNonExec - generate rules to install a data file, but does not + * try to create the destination directory (deprecated) + */ +#ifndef InstallNonExec +#define InstallNonExec(file,dest) @@\ +install:: file @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) file $(DESTDIR)dest +#endif /* InstallNonExec */ + + +/* + * InstallProgramWithFlags - generate rules to install an executable program + * using given install flags. + */ +#ifndef InstallProgramWithFlags +#define InstallProgramWithFlags(program,dest,flags) @@\ +InstallTarget(install,ProgramTargetName(program),$(INSTPGMFLAGS) flags,dest) +#endif /* InstallProgramWithFlags */ + + +/* + * InstallProgram - generate rules to install an executable program using any + * special install flags set in $(INSTALLFLAGS). + */ +#ifndef InstallProgram +#define InstallProgram(program,dest) @@\ +InstallProgramWithFlags(program,dest,NullParameter) +#endif /* InstallProgram */ + + + +/* + * InstallScript - install a shell script. + */ +#ifndef InstallScript +#define InstallScript(program,dest) @@\ +InstallNamedTarget(install,program.script,$(INSTBINFLAGS),dest,program) +#endif /* InstallScript */ + + +/* + * InstallNamedProg - install a program with renaming and no stripping. + */ +#ifndef InstallNamedProg +#define InstallNamedProg(srcname,dstname,dest) @@\ +InstallNamedTarget(install,srcname,$(INSTBINFLAGS),dest,dstname) +#endif /* InstallNamedProg */ + + +/* + * InstallNamedProgNoClobber - Like InstallNamedProg, but doesn't + * do the install if an installed version already exists. + */ +#ifndef InstallNamedProgNoClobber +#define InstallNamedProgNoClobber(srcname,dstname,dest) @@\ +InstallNamedTargetNoClobber(install,srcname,$(INSTBINFLAGS),dest,dstname) +#endif /* InstallNamedProgNoClobber */ + + +/* + * InstallLinkKitNamedProg - rule for installing server Link Kit files. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitNamedProg +#define InstallLinkKitNamedProg(srcname,dstname,dest) +#endif + + +/* + * MakeFlagsToShellFlags - set variables before starting a loop. + * makeflags is the set of "make" flags to check. + * shellcmd is the shell command to execute if any of the flags are set. + * + * The usual use of this rule is to translate make's "don't quit on error" + * flags into the equivalent for the shell. To do this, "make -i" always + * becomes "set +e". "make -k" should also turn on "set +e" if the target + * is building subdirectories. That is, subdirectories are independent + * and should appear to be multiple targets, even though they are + * implemented in a loop in a single target. + */ +#ifndef MakeFlagsToShellFlags +#define MakeFlagsToShellFlags(makeflags,shellcmd)\ + for flag in ${MAKEFLAGS} ''; do \ @@\ + case "$$flag" in *=*) ;; *[makeflags]*) shellcmd;; esac; done +#endif + +/* + * MakeNamedTargetSubdir - do make in a subdir. + */ +#ifndef MakeNamedTargetSubdir +#define MakeNamedTargetSubdir(dir,flags,subname)\ + (cd dir && $(MAKE) $(MFLAGS) $(PARALLELMFLAGS) \ @@\ + flags subname) +#endif + +/* + * LinkFileList - link a list of files from one place to another + */ +#ifndef LinkFileList +#define LinkFileList(step,list,dir,sub) @@\ +step:: list @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + echo " cd" dir; cd dir && \ @@\ + for i in list; do (set -x; RemoveFile($$i); $(LN) sub/$$i .); done +#endif + + +/* + * LinkVarDirectory + * + * Make links from $LIBDIR (/lib/X11) to /var/X11/ + * For example /usr/X11R6/lib/X11/xdm ==> /var/X11/xdm so that X can be + * run from a read-only volume like a CD-ROM. + */ +#ifndef LinkVarDirectory +#if HasVarDirectory && HasSymLinks +#define LinkVarDirectory(mdir,cdir,rdir,ldir) @@\ +install:: @@\ + MakeDir(Concat($(DESTDIR)$(LIBDIR)/,cdir)) @@\ + MakeDir(Concat($(VARDIR)/,mdir)) @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + if [ -d Concat($(DESTDIR)$(LIBDIR)/,cdir) ]; then \ @@\ + cd Concat($(DESTDIR)$(LIBDIR)/,cdir); \ @@\ + if [ -d rdir -a ! -h rdir ]; then \ @@\ + (cd rdir; tar cf - . | (cd Concat($(VARDIR)/,mdir); tar xf -; exit 0); exit 0); \ @@\ + fi; \ @@\ + $(RM) -r rdir; \ @@\ + $(LN) Concat($(VARDIR)/,mdir) ldir; \ @@\ + fi +#else +#define LinkVarDirectory(mdir,cdir,rdir,ldir) +#endif +#endif + + +/* + * InstallMultipleDestFlags - generate rules to install multiple files at + * once during a particular step in the build using a specific set of install + * flags. + */ +#ifndef InstallMultipleDestFlags +#define InstallMultipleDestFlags(step,list,dest,flags) @@\ +step:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + for i in list; do \ @@\ + (set -x; $(INSTALL) $(INSTALLFLAGS) flags $$i $(DESTDIR)dest); \ @@\ + done +#endif /* InstallMultipleDestFlags */ + + +/* + * InstallLinkKitMultipleDestFlags - rule for installing server Link Kit files. + * (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitMultipleDestFlags +#define InstallLinkKitMultipleDestFlags(list,dest,flags) +#endif + + +/* + * InstallMultipleDest - generate rules to install multiple files at once + * during a particular step in the build using any install flags set in + * $(INSTDATFLAGS). + */ +#ifndef InstallMultipleDest +#define InstallMultipleDest(step,list,dest) @@\ +InstallMultipleDestFlags(step,list,dest,$(INSTDATFLAGS)) +#endif /* InstallMultipleDest */ + +/* + * InstallMultiple - generate rules to install multiple files at once + * during the install step of the build using any install flags set in + * $(INSTALLFLAGS). + */ +#ifndef InstallMultiple +#define InstallMultiple(list,dest) @@\ +InstallMultipleDest(install,list,dest) +#endif /* InstallMultiple */ + + +/* + * InstallMultipleFlags - generate rules to install multiple files at once + * during the install step of the build using the given install flags. + */ +#ifndef InstallMultipleFlags +#define InstallMultipleFlags(list,dest,flags) @@\ +InstallMultipleDestFlags(install,list,dest,flags) +#endif /* InstallMultipleFlags */ + + +/* + * InstallMultipleMan - generate rules to install a variety of manual pages + * during the install.man step of the build. + */ +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +InstallMultipleDestFlags(install.man,list,dest,$(INSTMANFLAGS)) +#endif /* InstallMultipleMan */ + +/* + * IncludeMakefile - rule to include another Makefile. + * Must not generate an error or even a warning if the named file + * is not present, since we use this to include Makefile.dep, which + * may not be built yet. + * This is defined non-null iff HasMakefileSafeInclude is YES. + * The double-@ is to ensure no leading spaces on the line. + */ +#ifndef IncludeMakefile +#if HasClearmake +#define IncludeMakefile(file) @@sinclude file +#else +#if HasBsdMake +#define IncludeMakefile(file) @@# dependencies are in .depend +#else +#define IncludeMakefile(file) /**/ +#endif +#endif +#endif + +/* + * DependDependencyStatement - Used by DependDependency to set up the + * most specific dependency, which differs based on whether we support + * a separate Makefile.dep on this platform. + */ +#ifndef DependDependencyStatement +#if HasMakefileSafeInclude +#define DependDependencyStatement() @@\ +DependFileName:: ProgramTargetName($(DEPEND)) +#else +#define DependDependencyStatement() @@\ +depend:: ProgramTargetName($(DEPEND)) +#endif +#endif + +/* + * DependDependency - generate rules to build the makedepend program if + * this Imakefile is within the source tree. + */ +#ifndef DependDependency +#ifdef UseInstalled +#define DependDependency() /**/ +#else +#define DependDependency() @@\ +DependDependencyStatement() @@\ + @@\ +NoCmpScript(ProgramTargetName($(DEPEND))) @@\ + @@\ +ProgramTargetName($(DEPEND)): @@\ + @echo "checking $@ over in $(DEPENDSRC) first..."; \ @@\ + cd $(DEPENDSRC) && $(MAKE); \ @@\ + echo "okay, continuing in $(CURRENT_DIR)" + +#endif /* UseInstalled */ +#endif /* DependDependency */ + + +/* + * DependTarget - generate rules to compute dependencies for all files listed + * in $(SRCS). + */ +#ifndef DependTarget +#if HasMakefileSafeInclude +#define DependTarget() @@\ +DependDependency() @@\ + @@\ +depend:: DependFileName @@\ + @@\ +DependFileName:: @@\ + RemoveFile($@) @@\ + RunProgram(DEPEND,-f- $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)) > $@ +#else /* HasMakefileSafeInclude */ +#define DependTarget() @@\ +DependDependency() @@\ + @@\ +depend:: @@\ + RunProgram(DEPEND,$(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)) +#endif /* HasMakefileSafeInclude else */ +#endif /* DependTarget */ + +/* + * DependTarget3 - generate rules to compute dependencies for all files given. + */ +#ifndef DependTarget3 +#if HasMakefileSafeInclude +#define DependTarget3(srcs1,srcs2,srcs3) @@\ +DependDependency() @@\ + @@\ +depend:: DependFileName @@\ + @@\ +DependFileName:: @@\ + RemoveFile($@) @@\ + RunProgram(DEPEND,-f- $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs1) > $@ @@\ + RunProgram(DEPEND,-f- $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs2) >> $@ @@\ + RunProgram(DEPEND,-f- $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs3) >> $@ +#else /* HasMakefileSafeInclude */ +#define DependTarget3(srcs1,srcs2,srcs3) @@\ +DependDependency() @@\ + @@\ +depend:: @@\ + RunProgram(DEPEND,$(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs1) @@\ + RunProgram(DEPEND,-a $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs2) @@\ + RunProgram(DEPEND,-a $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs3) +#endif /* HasMakefileSafeInclude else */ +#endif /* DependTarget3 */ + + +/* + * CleanTarget - generate rules to remove any garbage files + */ +#ifndef CleanTarget +#define CleanTarget() @@\ +clean:: @@\ + $(RM) FilesToClean ExtraFilesToClean "#"* @@\ + @@\ +ProofCleanTarget() +#endif /* CleanTarget */ + + +/* + * TagsTarget - generate rules to compute tags files for C source code. + */ +#ifndef TagsTarget +#define TagsTarget() @@\ +tags:: @@\ + $(TAGS) -w *.[ch] @@\ + $(TAGS) -xw *.[ch] > TAGS +#endif /* TagsTarget */ + + +/* + * ImakeDependency - generate rules to compile imake if this Imakefile is + * within the source tree. + */ +#ifndef ImakeDependency +#ifdef UseInstalled +#define ImakeDependency(target) /**/ +#else +#define ImakeDependency(target) @@\ +target:: ProgramTargetName($(IMAKE)) @@\ + @@\ +NoCmpScript(ProgramTargetName($(IMAKE)) $(IMAKE).Osuf) @@\ + @@\ +ProgramTargetName($(IMAKE)) $(IMAKE).Osuf: @@\ + -@(cd $(IMAKESRC) && if [ -f Makefile ]; then \ @@\ + echo "checking $@ in $(IMAKESRC) first..."; $(MAKE) all; else \ @@\ + echo "bootstrapping $@ from Makefile.ini in $(IMAKESRC) first..."; \ @@\ + $(MAKE) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; fi; \ @@\ + echo "okay, continuing in $(CURRENT_DIR)") +#endif /* UseInstalled */ +#endif /* ImakeDependency */ + + +/* + * BuildMakefileTarget - generate rules to build a Makefile from an Imakefile + * and any special imake flags. This is generally done automatically by the + * template or by any special Imakefiles. The first argument exists just + * because imakeflags is usually empty and some preprocessors will complain + * if an empty argument is passed as the sole argument to a macro. + */ +#ifndef BuildMakefileTarget +#define BuildMakefileTarget(notused,imakeflags) @@\ +ImakeDependency(Makefile) @@\ + @@\ +Makefile:: @@\ + RMoveToBakFile(Makefile) @@\ + $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) imakeflags + +#endif /* BuildMakefileTarget */ + + +/* + * MakefileTarget - generate rules to build a normal Makefile. + */ +#ifndef MakefileTarget +#define MakefileTarget() @@\ +BuildMakefileTarget(Imakefile,NullParameter) +#endif /* MakefileTarget */ + + +/* + * LibMkdir - helper for creating library object subdirectories + */ +#ifndef LibMkdir +#define LibMkdir(dir) DirFailPrefix@if [ -d dir ]; then exit 0; else set -x; mkdir dir; fi +#endif + +#ifndef LibMkdirLinkSubdirs +#define LibMkdirLinkSubdirs(dir) DirFailPrefix@if [ -d dir ]; then \ @@\ + exit 0; \ @@\ + else \ @@\ + echo "mkdir dir"; mkdir dir; \ @@\ + for i in $(SUBDIRS); do \ @@\ + j=`echo "$$i" | sed -e 's;[^/]\{1,\};..;g'`; \ @@\ + $(MKDIRHIER) "dir/`dirname $$i`"; \ @@\ + echo $(LN) "$$j/$$i/dir" "dir/$$i"; \ @@\ + $(LN) "$$j/$$i/dir" "dir/$$i"; \ @@\ + done; \ @@\ + fi +#endif + +/* + * LibCleanDir - helper for cleaning library object subdirectories + */ +#ifndef LibCleanDir +#define LibCleanDir(dir) -@if [ -d dir ]; then \ @@\ + set -x; $(RM) -r dir; else exit 0; fi +#endif + +/* + * LintLibReferences - variables for lint libraries + */ +#ifndef LintLibReferences +#define LintLibReferences(varname,libname,libsource) @@\ +Concat(LINT,varname) = _UseCat($(LINTLIBDIR)/llib-l,libsource/llib-,libname.ln) +#endif + + +/* + * UnsharedLibReferences - variables for unshared libraries + */ +#ifndef UnsharedLibReferences +#define UnsharedLibReferences(varname,libname,libsource) @@\ +ProjectUnsharedLibReferences(varname,libname,libsource,$(BUILDLIBDIR)) +#endif + +/* + * ProjectUnsharedLibReferences - variables for unshared libraries + */ +#ifndef ProjectUnsharedLibReferences +#define ProjectUnsharedLibReferences(varname,libname,libsource,buildlibdir) @@\ +Concat3(DEP,varname,LIB) = _UseCat($(USRLIBDIR)/,buildlibdir/,LibraryTargetName(libname)) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +/* + * SharedLibDependencies - shared library dependencies + */ +#ifndef SharedLibDependencies +#define SharedLibDependencies(libname,libsource,revname) /**/ +#endif + +/* + * SharedDSLibDependencies - shared library dependencies with data separation + */ +#ifndef SharedDSLibDependencies +#define SharedDSLibDependencies(libname,libsource,revname) /**/ +#endif + +/* + * SharedLibReferences - variables for shared libraries + */ +#ifndef SharedLibReferences +#define SharedLibReferences(varname,libname,libsource,revname,rev) @@\ +revname = rev @@\ +Concat3(DEP,varname,LIB) = SharedLibDependencies(libname,libsource,revname) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +/* + * SharedDSLibReferences - variables for shared libraries with data separation + */ +#ifndef SharedDSLibReferences +#define SharedDSLibReferences(varname,libname,libsource,revname,rev) @@\ +revname = rev @@\ +Concat3(DEP,varname,LIB) = SharedDSLibDependencies(libname,libsource,revname) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +/* + * CPPOnlyCompile - run C compiler's preprocessor only + */ +#ifndef CPPOnlyCompile +#define CPPOnlyCompile(src,options) RemoveFile($@) @@\ + ClearmakeOSName \ + $(CC) -E $(CFLAGS) options src > $@ +#endif + +/* + * ObjectCompile - compile fragment for a normal object file + */ +#ifndef ObjectCompile +#define ObjectCompile(options) RemoveFile($@) @@\ + ClearmakeOSName \ + $(CC) -c $(CFLAGS) options $*.c +#endif + +#ifndef ObjectCplusplusCompile +#define ObjectCplusplusCompile(options) RemoveFile($@) @@\ + ClearmakeOSName \ + $(CXX) -c $(CXXFLAGS) options $*.CCsuf +#endif + +/* + * NormalLibObjCompile - compile fragment for a normal library object file + */ +#ifndef NormalLibObjCompile +#define NormalLibObjCompile(options) ObjectCompile(options) +#endif + +#ifndef NormalLibObjCplusplusCompile +#define NormalLibObjCplusplusCompile(options) ObjectCplusplusCompile(options) +#endif + +/* + * NormalSharedLibObjCompile - compile fragment for shared objects + */ +#ifndef NormalSharedLibObjCompile +#define NormalSharedLibObjCompile(options) NormalLibObjCompile(options $(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS)) +#endif + +#ifndef NormalSharedLibObjCplusplusCompile +#define NormalSharedLibObjCplusplusCompile(options) NormalLibObjCplusplusCompile(options $(SHLIBDEF) $(SHAREDCODEDEF) $(CXXPICFLAGS)) +#endif + +/* + * LibObjCompile - compile fragment for unshared/profiled/debugged objects + */ +#ifndef LibObjCompile +#if HasGcc || HasGcc2 +#define LibObjCompile(dir,options) RemoveFiles($@ dir/$@) @@\ + ClearmakeOSName \ + $(CC) -c $(CCOPTIONS) $(ALLDEFINES) options $*.c -o dir/$@ +#else +#define LibObjCompile(dir,options) RemoveFiles($@ dir/$@) @@\ + ClearmakeOSName \ + $(CC) -c $(CCOPTIONS) $(ALLDEFINES) options $*.c @@\ + $(MV) $@ dir/$@ +#endif +#endif + +#ifndef LibObjCplusplusCompile +#if HasGcc || HasGcc2 +#define LibObjCplusplusCompile(dir,options) RemoveFiles($@ dir/$@) @@\ + ClearmakeOSName \ + $(CXX) -c $(CXXOPTIONS) $(CXXDEFINES) options $*.CCsuf -o dir/$@ +#else +#define LibObjCplusplusCompile(dir,options) RemoveFiles($@ dir/$@) @@\ + ClearmakeOSName \ + $(CXX) -c $(CXXOPTIONS) $(CXXDEFINES) options $*.CCsuf @@\ + $(MV) $@ dir/$@ +#endif +#endif + +/* + * DebuggedLibObjCompile - compile fragment for debugged objects + */ +#ifndef DebuggedLibObjCompile +#define DebuggedLibObjCompile(options) LibObjCompile(debugger,DebuggableCDebugFlags options) +#endif + +#ifndef DebuggedLibObjCplusplusCompile +#define DebuggedLibObjCplusplusCompile(options) LibObjCplusplusCompile(debugger,DebuggableCplusplusDebugFlags options) +#endif + +/* + * ProfiledLibObjCompile - compile fragment for profiled objects + */ +#ifndef ProfiledLibObjCompile +#define ProfiledLibObjCompile(options) LibObjCompile(profiled,ProfiledCDebugFlags options) +#endif + +#ifndef ProfiledLibObjCplusplusCompile +#define ProfiledLibObjCplusplusCompile(options) LibObjCplusplusCompile(profiled,ProfiledCplusplusDebugFlags options) +#endif + +/* + * UnsharedLibObjCompile - compile fragment for unshared objects + */ +#ifndef UnsharedLibObjCompile +#define UnsharedLibObjCompile(options) LibObjCompile(unshared,$(CDEBUGFLAGS) options) +#endif + +#ifndef UnsharedLibObjCplusplusCompile +#define UnsharedLibObjCplusplusCompile(options) LibObjCplusplusCompile(unshared,$(CXXDEBUGFLAGS) options) +#endif + +/* + * SharedLibObjCompile - compile fragment for shared objects + */ +#ifndef SharedLibObjCompile +#define SharedLibObjCompile(options) LibObjCompile(shared,options $(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS) $(CDEBUGFLAGS)) +#endif + +/* + * NormalLibraryObjectRule - for simple libraries + */ +#ifndef NormalLibraryObjectRule +#define NormalLibraryObjectRule() @@\ +.c.Osuf: @@\ + NormalLibObjCompile($(_NOOP_)) +#endif /* NormalLibraryObjectRule */ + +#ifndef NormalCplusplusObjectRule +#define NormalCplusplusObjectRule() @@\ +.CCsuf.Osuf: @@\ + NormalLibObjCplusplusCompile($(_NOOP_)) +#endif + +#ifndef NormalFortranObjectRule +#define NormalFortranObjectRule() @@\ +.f.Osuf: @@\ + RemoveFile($@) @@\ + ClearmakeOSName \ + $(FC) -c $(FCFLAGS) $*.f +#endif + +/* + * SpecialObjectRule - generate rules to compile a file with special flags. + */ +#ifndef SpecialObjectRule +#define SpecialObjectRule(objs,depends,options) @@\ +objs: depends @@\ + ObjectCompile(options) +#endif /* SpecialObjectRule */ + +#ifndef SpecialCplusplusObjectRule +#define SpecialCplusplusObjectRule(baseobj,basedep,options) @@\ +baseobj.Osuf: basedep.CCsuf @@\ + ObjectCplusplusCompile(options) +#endif /* SpecialCplusplusObjectRule */ + +/* + * SpecialCObjectRule - generate rules to compile a C file with special flags. + * also handles CodeCenter rules + */ +#ifndef SpecialCObjectRule +#define SpecialCObjectRule(basename,depends,options) @@\ +SpecialObjectRule(basename.Osuf,basename.c depends,options) @@\ + @@\ +basename.i: basename.c depends @@\ + CPPOnlyCompile(basename.c,options) @@\ + @@\ +CenterLoadTarget(debug_src,basename.c,NullParameter,$(ALLDEFINES) options) +#endif /* SpecialCObjectRule */ + + +#ifndef ObjectFromSpecialSource +#define ObjectFromSpecialSource(dst,src,flags) @@\ +NoConfigRec(dst.c) @@\ + @@\ +dst.c: src.c @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +SpecialCObjectRule(dst,NullParameter,flags) @@\ + @@\ +includes:: dst.c @@\ + @@\ +depend:: dst.c @@\ + @@\ +clean:: @@\ + RemoveFile(dst.c) +#endif /* ObjectFromSpecialSource */ + +#ifndef LexFileExplicit +#if HasClearmake /* provide a place to hang ClearmakeOSName */ +#define LexFileExplicit(file) @@\ +file.c: file.l @@\ + ClearmakeOSName \ + $(LEX) $(LFLAGS) file.l @@\ + $(MV) lex.yy.c file.c +#else +#define LexFileExplicit(file) /* the default rule is fine */ +#endif +#endif + +#ifndef LexFile +#define LexFile(file) @@\ +LexFileExplicit(file) @@\ + @@\ +depend:: file.c @@\ + @@\ +clean:: @@\ + RemoveFiles(lex.yy.c file.c) +#endif /* LexFile */ + +#ifndef YaccFile +#if HasGnuMake +#define YaccFile(file,flags) @@\ +depend:: file.c @@\ + @@\ +file.h: file.c @@\ + @@\ +file.c: file.y @@\ + ClearmakeOSName \ + $(YACC) flags file.y @@\ + $(MV) y.tab.c file.c @@\ + @if [ -f y.tab.h ]; then set -x; $(MV) y.tab.h file.h; \ @@\ + else exit 0; fi @@\ + @@\ +clean:: @@\ + RemoveFiles(y.tab.c y.tab.h file.h file.c) +#else +#define YaccFile(file,flags) @@\ +depend:: file.c @@\ + @@\ +file.h file.c: file.y @@\ + ClearmakeOSName \ + $(YACC) flags file.y @@\ + $(MV) y.tab.c file.c @@\ + @if [ -f y.tab.h ]; then set -x; $(MV) y.tab.h file.h; \ @@\ + else exit 0; fi @@\ + @@\ +clean:: @@\ + RemoveFiles(y.tab.c y.tab.h file.h file.c) +#endif +#endif /* YaccFile */ + +#ifndef YaccFileNoFlags +#define YaccFileNoFlags(file) @@\ +depend:: file.c @@\ + @@\ +file.c: file.y @@\ + ClearmakeOSName \ + $(YACC) file.y @@\ + $(MV) y.tab.c file.c @@\ + @@\ +clean:: @@\ + RemoveFiles(y.tab.c file.c) +#endif /* YaccFileNoFlags */ + + +#ifndef MakeLibrary +#define MakeLibrary(libname,objlist) $(AR) libname objlist +#endif + +#ifndef LinkBuildLibrary +#ifdef UseInstalled +#define LinkBuildLibrary(lib) $(_NULLCMD_) +#else +#define LinkBuildLibrary(lib) MakeDir($(BUILDLIBDIR)) @@\ + RemoveFile($(BUILDLIBDIR)/lib) @@\ + cd $(BUILDLIBDIR) && $(LN) $(BUILDLIBTOP)/$(CURRENT_DIR)/lib . +#endif +#endif /* LinkBuildLibrary */ + +#ifndef _LinkBuildLibrary /* will get redefined elsewhere */ +#define _LinkBuildLibrary(lib) $(_NULLCMD_) +#endif /* _LinkBuildLibrary */ + +/* + * NormalLibraryTarget - generate rules to create a library. + */ +#ifndef NormalLibraryTarget +#define NormalLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* NormalLibraryTarget */ + + +/* + * NormalLibraryTarget2 - generate rules to create a library in two steps. + * This is used to create libraries with large numbers of files. + */ +#ifndef NormalLibraryTarget2 +#define NormalLibraryTarget2(libname,objlist1,objlist2) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist1 objlist2 $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist1) @@\ + MakeLibrary($@,objlist2) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* NormalLibraryTarget2 */ + + +/* + * NormalLibraryTarget3 - generate rules to create a library in three steps. + * This is used to create libraries with very large numbers of files. + */ +#ifndef NormalLibraryTarget3 +#define NormalLibraryTarget3(libname,objlist1,objlist2,objlist3) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist1 objlist2 objlist3 $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist1) @@\ + MakeLibrary($@,objlist2) @@\ + MakeLibrary($@,objlist3) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* NormalLibraryTarget3 */ + + +/* + * NormalDepLibraryTarget - generate rules to create a library. + */ +#ifndef NormalDepLibraryTarget +#define NormalDepLibraryTarget(libname,deplist,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): deplist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* NormalDepLibraryTarget */ + + +/* + * UnsharedLibraryTarget - generate rules to create a library. + */ +#ifndef UnsharedLibraryTarget +#define UnsharedLibraryTarget(libname,objlist,down,up) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + (cd down && MakeLibrary(up/$@,objlist)) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* UnsharedLibraryTarget */ + + +/* + * UnsharedLibraryTarget3 - generate rules to create a library in three steps. + * This is used to create libraries with very large numbers of files. + */ +#ifndef UnsharedLibraryTarget3 +#define UnsharedLibraryTarget3(libname,objlist1,objlist2,objlist3,down,up) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist1 objlist2 objlist3 $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + (cd down && MakeLibrary(up/$@,objlist1)) @@\ + (cd down && MakeLibrary(up/$@,objlist2)) @@\ + (cd down && MakeLibrary(up/$@,objlist3)) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) +#endif /* UnsharedLibraryTarget3 */ + + +/* + * SubdirLibraryRule - + */ +#ifndef SubdirLibraryRule +#define SubdirLibraryRule(objlist) @@\ +all:: DONE @@\ + @@\ +DONE: objlist @@\ + RemoveFile($@) @@\ + touch $@ @@\ + @@\ +clean:: @@\ + RemoveFile(DONE) +#endif /* SubdirLibraryRule */ + + +/* + * ProfiledLibraryTarget - generate rules to create a profiled library. + */ +#ifndef ProfiledLibraryTarget +#define ProfiledLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_p)) @@\ + @@\ +LibraryTargetNameSuffix(libname,_p): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + cd profiled && MakeLibrary(../$@,objlist) @@\ + RanLibrary($@) + +#endif /* ProfiledLibraryTarget */ + + +/* + * DebuggedLibraryTarget - generate rules to create a debuggable library. + */ +#ifndef DebuggedLibraryTarget +#define DebuggedLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_d)) @@\ + @@\ +LibraryTargetNameSuffix(libname,_d): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + cd debugger && MakeLibrary(../$@,objlist) @@\ + RanLibrary($@) + +#endif /* DebuggedLibraryTarget */ + + +/* + * AliasedLibraryTarget - generate rules to link one library to another. + */ +#ifndef AliasedLibraryTarget +#define AliasedLibraryTarget(libname,alias) @@\ +AllTarget(LibraryTargetName(alias)) @@\ + @@\ +LibraryTargetName(alias): LibraryTargetName(libname) @@\ + RemoveFile($@) @@\ + $(LN) LibraryTargetName(libname) $@ @@\ + @@\ +clean:: @@\ + RemoveFile(LibraryTargetName(alias)) +#endif /* AliasedLibraryTarget */ + + +/* + * NormalRelocatableTarget - generate rules to produce a relocatable object + * file instead of a library. + */ +#ifndef NormalRelocatableTarget +#define NormalRelocatableTarget(objname,objlist) @@\ +AllTarget(objname.Osuf) @@\ + @@\ +objname.Osuf: objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + $(LD) $(LDCOMBINEFLAGS) objlist -o $@ +#endif /* NormalRelocatableTarget */ + + +/* + * ProfiledRelocatableTarget - generate rules to produce a profiled relocatable + * object file instead of a library. + */ +#ifndef ProfiledRelocatableTarget +#define ProfiledRelocatableTarget(objname,objlist) @@\ +AllTarget(Concat(objname,_p.Osuf)) @@\ + @@\ +Concat(objname,_p.Osuf): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + $(LD) -X -r objlist -o $@ + +#endif /* ProfiledRelocatableTarget */ + + +/* + * DebuggedRelocatableTarget - generate rules to produce a debuggable + * relocatable object file instead of a library. + */ +#ifndef DebuggedRelocatableTarget +#define DebuggedRelocatableTarget(objname,objlist) @@\ +AllTarget(Concat(objname,_d.Osuf)) @@\ + @@\ +Concat(objname,_d.Osuf): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + $(LD) -X -r objlist -o $@ + +#endif /* DebuggedRelocatableTarget */ + + +/* + * LintLibraryTarget - generate rules to create a lint library. Note that the + * lint library is always forced to be newer than the library itself. + */ +#ifndef LintLibraryTarget +#define LintLibraryTarget(libname,srclist) @@\ +lintlib:: Concat(llib-l,libname.ln) @@\ + @@\ +Concat(llib-l,libname.ln): srclist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + $(LINT) Concat($(LINTLIBFLAG),libname) $(LINTFLAGS) srclist +#endif /* LintLibraryTarget */ + + +/* + * NormalLintTarget - generate rules to lint a set of sources. + */ +#ifndef NormalLintTarget +#define NormalLintTarget(srclist) @@\ +lint: @@\ + $(LINT) $(LINTFLAGS) srclist $(LINTLIBS) @@\ +lint1: @@\ + $(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS) +#endif /* NormalLintTarget */ + + +/* + * LintTarget - generate rules to lint $(SRCS) + */ +#ifndef LintTarget +#define LintTarget() @@\ +NormalLintTarget($(SRCS)) +#endif + + +/* + * LinkSourceFile - snag source file from some other directory + */ +#ifndef LinkSourceFile +#define LinkSourceFile(src,dir) @@\ +src: dir/src @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +NoConfigRec(src) @@\ + @@\ +includes:: src @@\ + @@\ +depend:: src @@\ + @@\ +clean:: @@\ + RemoveFile(src) +#endif + + +/* + * LinkFile - link a file + */ +#ifndef LinkFile +#define LinkFile(tofile,fromfile) @@\ +tofile:: fromfile @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +NoConfigRec(tofile) @@\ + @@\ +includes:: tofile @@\ + @@\ +depend:: tofile @@\ + @@\ +clean:: @@\ + RemoveFile(tofile) +#endif + + +#ifndef MakeSubincludesForBuild +#define MakeSubincludesForBuild(step,dir,srclist) @@\ +step:: dir srclist @@\ + @-(list=`echo srclist | sed -e 's/[^ ]*\///g'`; \ @@\ + set -x; cd dir && RemoveFiles($$list)) @@\ + @for i in srclist; do \ @@\ + (set -x; cd dir && $(LN) ../$$i .); \ @@\ + done @@\ + @@\ +dir:: @@\ + $(MKDIRHIER) dir @@\ + @@\ +clean:: @@\ + @-(if [ -d dir ]; then \ @@\ + list=`echo srclist | sed -e 's/[^ ]*\///g'`; \ @@\ + set -x; cd dir && RemoveFile($$list); else exit 0; fi) +#endif + + +/* + * LangNamedTargetSubdirs - recursively make a series of steps + */ +#ifndef LangNamedTargetSubdirs +#define LangNamedTargetSubdirs(lang,name,dirs,verb,flags,subname) @@\ +name:: @@\ + @MakeFlagsToShellFlags(ik,set +e); \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + echo verb "in $(CURRENT_DIR)/$$i..."; \ @@\ + (cd $$i && LANG=lang $(MAKE) $(MFLAGS) flags subname);\ @@\ + done +#endif + + +/* + * NamedMakeSubdirs - generate rules to do makes in the given subdirectories. + * If you want CDEBUGFLAGS passed along to subdirectories, provide a line like + * the following in the appropriate Imakefile + * + * #define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)' + */ +#ifndef LangNamedMakeSubdirs +#define LangNamedMakeSubdirs(lang,name,dirs) \ +LangNamedTargetSubdirs(lang,name,dirs,"making" name,PassCDebugFlags,all) +#endif /* LangNamedMakeSubdirs */ + +#ifndef LangMakeSubdirs +#define LangMakeSubdirs(lang,dirs) @@\ +LangNamedMakeSubdirs(lang,all,dirs) +#endif /* LangMakeSubdirs */ + + + +/* + * NamedTargetSubdirs - recursively make a series of steps + */ +#ifndef NamedTargetSubdirs +#define NamedTargetSubdirs(name,dirs,verb,flags,subname) @@\ +name:: @@\ + @MakeFlagsToShellFlags(ik,set +e); \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + echo verb "in $(CURRENT_DIR)/$$i..."; \ @@\ + MakeNamedTargetSubdir($$i,flags,subname); \ @@\ + done +#endif + + +/* + * NamedMakeSubdirs - generate rules to do makes in the given subdirectories. + * If you want CDEBUGFLAGS passed along to subdirectories, provide a line like + * the following in the appropriate Imakefile + * + * #define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)' + */ +#ifndef NamedMakeSubdirs +#define NamedMakeSubdirs(name,dirs) \ +NamedTargetSubdirs(name,dirs,"making" name,PassCDebugFlags,all) +#endif /* NamedMakeSubdirs */ + +#ifndef MakeSubdirs +#define MakeSubdirs(dirs) @@\ +NamedMakeSubdirs(all,dirs) +#endif /* MakeSubdirs */ + + +/* + * DependSubdirs - generate rules to recursively compute dependencies as + * part of the make depend step. + */ +#ifndef DependSubdirs +#define DependSubdirs(dirs) \ +NamedTargetSubdirs(depend,dirs,"depending",NullParameter,depend) +#endif /* DependSubdirs */ + + +/* + * ForceSubdirs - force make to build subdirectories + */ +#ifndef ForceSubdirs +#if !HasBsdMake +#define ForceSubdirs(dirs) @@\ +dirs: FRC @@\ + @echo "making all in $(CURRENT_DIR)/$@..." @@\ + @MakeNamedTargetSubdir($@,PassCDebugFlags,all) @@\ + @@\ +FRC: +#else +/* For BSD 4.4 make */ +#define ForceSubdirs(dirs) @@\ +dirs: .EXEC @@\ + @cd $@ ; echo "making all in $(CURRENT_DIR)/$@..."; \ @@\ + $(MAKE) $(MFLAGS) PassCDebugFlags all @@\ + @@\ +.EXEC: +#endif +#endif /* ForceSubdirs */ + +/* + * InstallSubdirs - generate rules to recursively install programs and files. + */ +#ifndef InstallSubdirs +#define InstallSubdirs(dirs) \ +NamedTargetSubdirs(install,dirs,"installing",DESTDIR=$(DESTDIR),install) +#endif /* InstallSubdirs */ + + +/* + * InstallManSubdirs - generate rules to recursively install manual pages. + */ +#ifndef InstallManSubdirs +#define InstallManSubdirs(dirs) \ +NamedTargetSubdirs(install.man,dirs,"installing man pages",DESTDIR=$(DESTDIR),install.man) +#endif /* InstallManSubdirs */ + + +/* + * IncludesSubdirs - generate rules to recursively put include files in build + */ +#ifndef IncludesSubdirs +#define IncludesSubdirs(dirs) \ +NamedTargetSubdirs(includes,dirs,including,NullParameter,includes) +#endif + + +/* + * InstallLinkKitSubdirs - generate rules to recursively install server Link + * Kit (only used for XFree86). This is a no-op + * rule so that Imakefiles on non-XFree86 systems + * continue to build Makefiles correctly. + */ +#ifndef InstallLinkKitSubdirs +#define InstallLinkKitSubdirs(dirs) +#endif + + +/* + * CleanSubdirs - generate rules to recursively clean out garbage files. + */ +#define BootstrapCleanSubdirs /**/ /* used at top-level */ +#ifndef NamedCleanSubdirs +#define NamedCleanSubdirs(name,dirs) \ +NamedTargetSubdirs(name,dirs,"cleaning",BootstrapCleanSubdirs,clean) +#endif /* NamedCleanSubdirs */ + +#ifndef CleanSubdirs +#define CleanSubdirs(dirs) \ +NamedCleanSubdirs(clean,dirs) +#endif + + +/* + * TagSubdirs - generate rules to recursively create tags files. + */ +#ifndef NamedTagSubdirs +#define NamedTagSubdirs(name,dirs) \ +NamedTargetSubdirs(name,dirs,"tagging",TAGS='$(TAGS)',tags) +#endif /* TagSubdirs */ + +#ifndef TagSubdirs +#define TagSubdirs(dirs) \ +NamedTagSubdirs(tags,dirs) +#endif + +/* + * MakeLintSubdirs - generate rules to recursively lint directories as part + * of the named step. + */ +#ifndef MakeLintSubdirs +#define MakeLintSubdirs(dirs,target,subtarget) \ +NamedTargetSubdirs(target,dirs,"linting" for target and subtarget,DESTDIR=$(DESTDIR) LINTOPTS='$(LINTOPTS)',subtarget) +#endif /* MakeLintSubdirs */ + + +/* + * LintSubdirs - generate rules to recursively lint directories as part of + * the make lint step. + */ +#ifndef LintSubdirs +#define LintSubdirs(dirs) @@\ +MakeLintSubdirs(dirs,lint,lint) +#endif /* LintSubdirs */ + + +/* + * MakeLintLibSubdirs - generate rules to recursively create lint libraries. + */ +#ifndef MakeLintLibSubdirs +#define MakeLintLibSubdirs(dirs) @@\ +MakeLintSubdirs(dirs,lintlib,lintlib) +#endif /* MakeLintLibSubdirs */ + + +/* + * MakeMakeSubdirs - generate rules to recursively recreate Makefiles as part + * of the specified step in the build. If $(TOP) is set to an absolute path, + * do not prepend the ../ prefix. This makes running things outside of the + * source tree much easier. + * $(ONESUBDIR)/Makefile exists as a separate, explicit target so that + * clearmake will know what its goal is and do wink-in. + */ +#ifndef MakeMakeSubdirs +#define MakeMakeSubdirs(dirs,target) @@\ +$(ONESUBDIR)/Makefile: @@\ + @MakeFlagsToShellFlags(n,executeit="no"); \ @@\ + cd $(ONESUBDIR) && \ @@\ + if [ "$$executeit" != "no" ]; then \ @@\ + ImakeSubCmdHelper -DTOPDIR=$(IMAKETOP) -DCURDIR=$(ONECURDIR)$(ONESUBDIR); \ @@\ + fi; @@\ + @@\ +target:: @@\ + -@MakeFlagsToShellFlags(ik,set +e); \ @@\ + MakeFlagsToShellFlags(n,executeit="no"); \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + case "$(CURRENT_DIR)" in \ @@\ + .) curdir= ;; \ @@\ + *) curdir=$(CURRENT_DIR)/ ;; \ @@\ + esac; \ @@\ + echo "making Makefiles in $$curdir$$i..."; \ @@\ + itmp=`echo $$i | sed -e 's;^\./;;g' -e 's;/\./;/;g'`; \ @@\ + curtmp="$(CURRENT_DIR)" \ @@\ + toptmp=""; \ @@\ + case "$$itmp" in \ @@\ + ../?*) \ @@\ + while echo "$$itmp" | grep '^\.\./' > /dev/null;\ @@\ + do \ @@\ + toptmp="/`basename $$curtmp`$$toptmp"; \ @@\ + curtmp="`dirname $$curtmp`"; \ @@\ + itmp="`echo $$itmp | sed 's;\.\./;;'`"; \ @@\ + done \ @@\ + ;; \ @@\ + esac; \ @@\ + case "$$itmp" in \ @@\ + */?*/?*/?*/?*) newtop=../../../../..;; \ @@\ + */?*/?*/?*) newtop=../../../..;; \ @@\ + */?*/?*) newtop=../../..;; \ @@\ + */?*) newtop=../..;; \ @@\ + *) newtop=..;; \ @@\ + esac; \ @@\ + newtop="$$newtop$$toptmp"; \ @@\ + case "$(TOP)" in \ @@\ + /?*) imaketop=$(TOP) \ @@\ + imakeprefix= ;; \ @@\ + .) imaketop=$$newtop \ @@\ + imakeprefix=$$newtop/ ;; \ @@\ + *) imaketop=$$newtop/$(TOP) \ @@\ + imakeprefix=$$newtop/ ;; \ @@\ + esac; \ @@\ + RemoveFile($$i/Makefile.bak); \ @@\ + if [ -f $$i/Makefile ]; then \ @@\ + echo " $(MV) Makefile Makefile.bak"; \ @@\ + if [ "$$executeit" != "no" ]; then \ @@\ + $(MV) $$i/Makefile $$i/Makefile.bak; \ @@\ + fi; \ @@\ + fi; \ @@\ + $(MAKE) $(MFLAGS) $(MAKE_OPTS) ONESUBDIR=$$i ONECURDIR=$$curdir IMAKETOP=$$imaketop IMAKEPREFIX=$$imakeprefix $$i/Makefile; \ @@\ + if [ -d $$i ] ; then \ @@\ + cd $$i; \ @@\ + $(MAKE) $(MFLAGS) Makefiles; \ @@\ + cd $$newtop; \ @@\ + else \ @@\ + exit 1; \ @@\ + fi; \ @@\ + done + +#ifdef UseInstalled +#define ImakeSubCmdHelper $(IMAKE_CMD) +#else +#define ImakeSubCmdHelper $(IMAKEPREFIX)$(IMAKE) -I$(IMAKEPREFIX)$(IRULESRC) $(IMAKE_DEFINES) +#endif + +#endif /* MakeMakeSubdirs */ + + +/* + * MakefileSubdirs - generate rules to create Makefiles. + */ +#ifndef MakefileSubdirs +#define MakefileSubdirs(dirs) @@\ +MakeMakeSubdirs(dirs,Makefiles) +#endif /* MakefileSubdirs */ + +/* + * Translate XCOMM into pound sign with sed, rather than passing -DXCOMM=XCOMM + * to cpp, because that trick does not work on all ANSI C preprocessors. + * Also delete line numbers from the cpp output (-P is not portable, I guess). + */ +#ifndef CppSedMagic +#define CppSedMagic sed -e '/^# *[0-9][0-9]* *.*$$/d' -e '/^XCOMM$$/s//#/' -e '/^XCOMM[^a-zA-Z0-9_]/s/^XCOMM/#/' +#endif /* CppSedMagic */ + +#ifndef CppFileTarget +#define CppFileTarget(dst,src,defs,deplist) @@\ +dst:: src deplist @@\ + RemoveFile($@) @@\ + ClearmakeOSName \ + $(CPP) CppNoLineInfoOption defs $@ @@\ + @@\ +clean:: @@\ + RemoveFiles(dst) +#endif /* CppFileTarget */ + +/* + * CppScriptTarget - generate rules to create a shell script by running the + * input through cpp. If the ExecableScripts configuration parameter is not + * set, then make sure that the first line begins with a colon. + */ +#ifndef CppScriptTarget +#if ExecableScripts /* can use #! instead of colon */ +#define CppScriptTarget(dst,src,defs,deplist) @@\ +dst:: src deplist @@\ + RemoveFile($@) @@\ + ClearmakeOSName \ + $(CPP) CppNoLineInfoOption defs $@ @@\ + chmod a+x $@ @@\ + @@\ +clean:: @@\ + RemoveFiles(dst) +#else +#define CppScriptTarget(dst,src,defs,deplist) @@\ +dst:: src deplist @@\ + RemoveFile($@) @@\ + ClearmakeOSName \ + echo \: >$@ @@\ + sed '1d' src | $(CPP) CppNoLineInfoOption defs | CppSedMagic >>$@ @@\ + chmod a+x $@ @@\ + @@\ +clean:: @@\ + RemoveFile(dst) +#endif /* ExecableScripts */ +#endif /* CppScriptTarget */ + + +/* + * MakeScriptFromCpp - generate rules to create a script from a file with a + * .cpp suffix. + */ +#ifndef MakeScriptFromCpp +#define MakeScriptFromCpp(name,defs) @@\ +CppScriptTarget(name,name.cpp,defs,NullParameter) +#endif /* MakeScriptFromCpp */ + +#ifndef CppSourceFile +#define CppSourceFile(dst,src,defs,deplist) @@\ +CppFileTarget(dst,src,defs,deplist) @@\ + @@\ +includes:: dst @@\ + @@\ +depend:: dst +#endif /* CppFileTarget */ + +/* + * MakeDirectories - generate rules to create a hierarchy of directories. + */ +#ifndef MakeDirectories +#define MakeDirectories(step,dirs) @@\ +step:: @@\ + DirFailPrefix@MakeFlagsToShellFlags(i,set +e); \ @@\ + for i in dirs; do if [ -d $(DESTDIR)$$i ]; then \ @@\ + set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi; \ @@\ + done +#endif /* MakeDirectories */ + + +/* + * AllTarget - generate rules to build necessary things during make all. + */ +#ifndef AllTarget +#define AllTarget(depends) @@\ +all:: depends +#endif /* AllTarget */ + +#ifdef DefineOldLibraryRules +#include +#endif + +#ifndef StaticLibrary +#define StaticLibrary(libpath,libname) Concat3(libpath,/,LibraryTargetName(libname)) +#endif + +/* + * MakeMutex - generate mutex rules for parallel make + */ +#ifndef MakeMutex +#ifdef MutexDirective +#define MakeMutex(targets) @@\ +MutexDirective: targets +#endif /* MutexDirective */ +#endif /* MakeMutex */ diff --git a/Xserver/config/cf/Imake.tmpl b/Xserver/config/cf/Imake.tmpl new file mode 100644 index 0000000..c0422e0 --- /dev/null +++ b/Xserver/config/cf/Imake.tmpl @@ -0,0 +1,1428 @@ +XCOMM ---------------------------------------------------------------------- +XCOMM Makefile generated from IMAKE_TEMPLATE and INCLUDE_IMAKEFILE +XCOMM $TOG: Imake.tmpl /main/245 1997/05/20 10:05:47 kaleb $ +XCOMM +XCOMM +XCOMM +XCOMM +XCOMM $XFree86: xc/config/cf/Imake.tmpl,v 3.32.2.8 1998/02/08 11:19:24 dawes Exp $ +XCOMM ---------------------------------------------------------------------- + +/* + * generic imake template + */ + +/* + * Modify Imake.cf when adding a new architecture, do not modify this file. + * Platform-specific parameters may be set in the appropriate .cf + * configuration files. Site-specific parameters should be set in the file + * site.def. Full rebuilds are recommended if any parameters are changed. + * If your C preprocessor does not define any unique symbols, you will need + * to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing + * "make World" the first time). + */ + +#define ImakeConfigRelease 6 + +#define YES 1 +#define NO 0 + +/* Ensure that "all" is the default target in the Makefile. */ +all:: + +.SUFFIXES: .i + +#include + +XCOMM ----------------------------------------------------------------------- +XCOMM site-specific configuration parameters that need to come before +XCOMM the platform-specific parameters - edit site.def to change +#define BeforeVendorCF +#include +#undef BeforeVendorCF + +#if defined(HasGcc2) && !defined(HasGcc) +# define HasGcc HasGcc2 +#endif + +#ifndef HasClearmake +# define HasClearmake NO +#endif + +/* + * ClearmakeOSName - insert the current OS type into the clearmake + * build script, so .o files from different platforms cannot be winked in. + * If clearmake finds the build script for two .o files is the same, it + * will share the .o, even across different architectures. Inserting the + * O/S name into the build script in a comment prevents unwanted sharing. + * Note the trailing double-@ in the macro: end a line using this macro + * with backslash without the double-@ usually used. + * Like this: + * + * #define SomeRule() @@\ + * something or other @@\ + * ClearmakeOSName \ + * something else @@\ + * and more + */ +#ifndef ClearmakeOSName +# if HasClearmake +# define ClearmakeOSName @ XCOMM $(OSNAME) @@ +# else +# define ClearmakeOSName /**/ +# endif +#endif + +#if HasClearmake +# ifndef MakeCmd +# define MakeCmd clearmake +# endif +#endif + +#if HasClearmake +XCOMM ---------------------------------------------------------------------- +.c.o: + ClearmakeOSName $(CC) -c $(CFLAGS) $*.c +#endif + +XCOMM ---------------------------------------------------------------------- +XCOMM platform-specific configuration parameters - edit MacroFile to change +#include MacroIncludeFile + +XCOMM ---------------------------------------------------------------------- +XCOMM site-specific configuration parameters that go after +XCOMM the platform-specific parameters - edit site.def to change +#define AfterVendorCF +#include +#undef AfterVendorCF + +/* + * defaults for various generic parameters; set in site.def if needed + */ + +/* the following are needed before we can include Imake.rules */ + +#ifndef HasVarDirectory +#define HasVarDirectory NO +#endif +#ifndef HasSymLinks +#define HasSymLinks YES +#endif +#ifndef SystemV +#define SystemV NO /* SYSV (R3) */ +#endif +#ifndef SystemV4 +#define SystemV4 NO /* SVR4 */ +#endif +#ifndef HasCodeCenter +#define HasCodeCenter NO +#endif +#ifndef HasSentinel +#define HasSentinel NO +#endif +#ifndef HasPurify +#define HasPurify NO +#endif +#ifndef HasTestCenter +#define HasTestCenter NO +#endif +#ifndef HasBsdMake +#define HasBsdMake NO +#endif +#ifndef HasGnuMake +#define HasGnuMake NO +#endif +#ifndef HasParallelMake +#define HasParallelMake NO +#endif +#ifndef RemoveTargetProgramByMoving +#define RemoveTargetProgramByMoving NO +#endif +#ifndef DoRanlibCmd +#if SystemV || SystemV4 +#define DoRanlibCmd NO +#else +#define DoRanlibCmd YES +#endif +#endif +#ifndef ExecableScripts +#if SystemV +#define ExecableScripts NO +#else +#define ExecableScripts YES /* kernel exec() can handle #! */ +#endif +#endif + +#ifndef HasMakefileSafeInclude /* -include or sinclude in a Makefile */ +#if HasClearmake || HasBsdMake +#define HasMakefileSafeInclude YES +#else +#define HasMakefileSafeInclude NO /* see also vendor-specific .cf files */ +#endif +#endif + +#include + +#ifndef HasSharedLibraries +#define HasSharedLibraries NO +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 0 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 0 +#endif +#ifndef UnalignedReferencesAllowed +#define UnalignedReferencesAllowed NO /* if arbitrary deref is okay */ +#endif +#ifndef AvoidNullMakeCommand +#if !HasBsdMake +#define AvoidNullMakeCommand NO +#else +#define AvoidNullMakeCommand YES +#endif +#endif +#if AvoidNullMakeCommand +#ifndef NullMakeCommand +#define NullMakeCommand @ echo -n +#endif +/* + * An obscure bug in BSD4.3's original make causes it not to recognize a + * macro definition if the macro name starts with a non-alpha and in + * column one. + */ + _NULLCMD_ = NullMakeCommand +#endif + +#ifndef CrossCompiling +#define CrossCompiling NO +#endif +#ifndef BourneShell /* to force shell in makefile */ +#define BourneShell /bin/sh +#endif +#ifndef ConstructMFLAGS +#if SystemV +#define ConstructMFLAGS YES /* build MFLAGS from MAKEFLAGS */ +#else +#define ConstructMFLAGS NO /* build MFLAGS from MAKEFLAGS */ +#endif +#endif + +#ifndef ConstructMAKEFLAGS /* needed on old BSD-based? */ +#define ConstructMAKEFLAGS NO /* build MAKEFLAGS from MFLAGS */ +#endif + +#ifndef HasLargeTmp +#define HasLargeTmp NO /* be paranoid */ +#endif + +#ifndef HasBSD44Sockets +#define HasBSD44Sockets NO +#endif +#ifndef HasSockets +#define HasSockets YES +#endif +#ifndef HasStreams +#define HasStreams !HasSockets +#endif +#ifndef HasDECnet +#define HasDECnet NO +#endif +#ifndef HasPoll +#if SystemV || SystemV4 +#define HasPoll YES +#else +#define HasPoll NO +#endif +#endif +#ifndef HasVFork +#if SystemV +#define HasVFork NO /* not yet... */ +#else +#define HasVFork YES +#endif +#endif +#ifndef HasSetUserContext +#define HasSetUserContext NO +#endif +#ifndef HasLibCrypt +#define HasLibCrypt NO +#endif +#ifndef HasPutenv +#define HasPutenv NO /* assume not */ +#endif +#ifndef HasVoidSignalReturn +#define HasVoidSignalReturn YES /* assume yes */ +#endif +#ifndef HasBsearch +#define HasBsearch YES /* assume yes */ +#endif +#ifndef HasSnprintf +#define HasSnprintf NO /* assume not */ +#endif +#ifndef HasMkstemp +#define HasMkstemp NO /* assume not */ +#endif +#ifndef HasFortran +#define HasFortran NO +#endif +#ifndef HasCplusplus +#if HasGcc2ForCplusplus +#define HasCplusplus YES +#else +#define HasCplusplus NO +#endif +#endif +#ifndef HasNdbm +#define HasNdbm NO +#endif +#ifndef HasSecureRPC +#define HasSecureRPC NO /* if you have Secure RPC */ +#endif +#ifndef HasKrb5 +#define HasKrb5 NO /* if you have Kerberos V5 */ +#endif +#ifndef HasLatex +#define HasLatex YES +#endif +#ifndef HasShm +#if SystemV || SystemV4 +#define HasShm YES +#else +#define HasShm NO +#endif +#endif +#ifndef HasCbrt +#define HasCbrt YES +#endif +#ifndef HasFfs +#define HasFfs YES +#endif +#ifndef HasZlib +#define HasZlib NO +#endif +#if !HasZlib /* if OS doesn't have it, we'll build it */ +#undef GzipLibrary /* GzipLibrary was valid only if HasZlib */ +#endif +#ifndef GzipLibrary /* if OS config didn't define it, assume it's -lz */ +#define GzipLibrary -lz +#endif +#if HasKrb5 +#ifndef Krb5Includes +#define Krb5Includes -I/krb5/include +#endif +#ifndef Krb5Libraries +#define Krb5Libraries -L/krb5/lib -L/usr/isode/lib -lkrb5 -lcrypto -lisode -lcom_err -ldbm +#endif +#else +#undef Krb5Includes +#define Krb5Includes /**/ +#undef Krb5Libraries +#define Krb5Libraries /**/ +#endif +#ifndef UseGnuMalloc +#define UseGnuMalloc NO +#endif +#ifndef GnuMallocLibrary +#define GnuMallocLibrary -lgmalloc +#endif +#ifndef MallocLibraries +#if UseGnuMalloc +#define MallocLibraries GnuMallocLibrary +#else +#define MallocLibraries /**/ +#endif +#endif +#ifndef HasTk +#define HasTk NO +#endif +#ifndef TkLibName +#if HasTk +#define TkLibName tk +#else +#define TkLibName +#endif +#endif +TKLIBNAME = TkLibName +#ifndef TkLibDir +#if HasTk +#define TkLibDir /usr/local/lib +#else +#define TkLibDir +#endif +#endif +TKLIBDIR = TkLibDir +#ifndef TkIncDir +#if HasTk +#define TkIncDir /usr/local/include +#else +#define TkIncDir +#endif +#endif +#ifndef TkLibrary +#ifdef HasTk +#define TkLibrary Concat(-L,$(TKLIBDIR)) Concat(-l,$(TKLIBNAME)) +#else +#define TkLibrary +#endif +#endif +#ifndef HasTcl +#define HasTcl NO +#endif +#ifndef TclLibName +#if HasTcl +#define TclLibName tcl +#else +#define TclLibName +#endif +#endif +TCLLIBNAME = TclLibName +#ifndef TclLibDir +#if HasTcl +#define TclLibDir /usr/local/lib +#else +#define TclLibDir +#endif +#endif +TCLIBDIR = TclLibDir +#ifndef TclIncDir +#if HasTcl +#define TclIncDir /usr/local/include +#else +#define TclIncDir +#endif +#endif +#ifndef TclLibrary +#ifdef HasTcl +#define TclLibrary Concat(-L,$(TCLLIBDIR)) Concat(-l,$(TCLLIBNAME)) +#else +#define TclLibrary +#endif +#endif +#ifndef NeedConstPrototypes +#define NeedConstPrototypes NO +#endif +#ifndef NeedVarargsPrototypes +#define NeedVarargsPrototypes NO +#endif +#ifndef NeedNestedPrototypes +#define NeedNestedPrototypes NO +#endif +#ifndef NeedFunctionPrototypes +#define NeedFunctionPrototypes (NeedVarargsPrototypes || NeedNestedPrototypes) +#endif +#ifndef NeedWidePrototypes +#define NeedWidePrototypes YES /* mix and match ANSI-C, non-ANSI */ +#endif + +#ifndef StripInstalledPrograms +#define StripInstalledPrograms NO /* leave symbol table just in case */ +#endif +#ifndef UseCCMakeDepend /* use slow cc -E script */ +#define UseCCMakeDepend NO +#endif +#ifndef UseGccMakeDepend /* use slowish but correct gcc -M */ +#define UseGccMakeDepend NO +#endif + +/* DefaultUsrBin is independent of ProjectRoot. + This is a directory where programs will be found even if PATH + is not set, for example when coming in remotely via rsh. */ +#ifndef DefaultUsrBin +#define DefaultUsrBin /usr/bin +#endif + +#ifndef UsrLibDir +#ifdef ProjectRoot +#define UsrLibDir Concat(ProjectRoot,/lib) +#ifndef AlternateUsrLibDir +#define AlternateUsrLibDir YES +#endif +#else +#define UsrLibDir /usr/lib +#ifndef AlternateUsrLibDir +#define AlternateUsrLibDir NO +#endif +#endif +#else +#ifndef AlternateUsrLibDir +#define AlternateUsrLibDir YES +#endif +#endif +#ifndef VarLibDir +#ifdef ProjectVar +#define VarLibDir Concat(ProjectVar,/lib) +#else +#define VarLibDir /var/lib +#endif +#endif + +#ifndef ShLibDir +#define ShLibDir UsrLibDir +#endif +#ifndef IncRoot +#ifdef ProjectRoot +#define IncRoot Concat(ProjectRoot,/include) +#ifndef AlternateIncRoot +#define AlternateIncRoot YES +#endif +#else +#define IncRoot /usr/include +#ifndef AlternateIncRoot +#define AlternateIncRoot NO +#endif +#endif +#else +#ifndef AlternateIncRoot +#define AlternateIncRoot YES +#endif +#endif +#ifndef LintlibDir +#define LintlibDir $(USRLIBDIR)/lint +#endif +#ifndef SystemManDirectory +#if SystemV4 +#define SystemManDirectory /usr/share/man +#else +#define SystemManDirectory /usr/share/man +#endif +#endif +#ifndef ManDirectoryRoot +#ifdef ProjectRoot +#define ManDirectoryRoot Concat(ProjectRoot,/man) +#else +#define ManDirectoryRoot SystemManDirectory +#endif +#endif +#ifndef ManPath +#define ManPath ManDirectoryRoot +#endif +#ifndef ManSourcePath +#define ManSourcePath $(MANPATH)/man +#endif +#ifndef ManDir +#define ManDir $(MANSOURCEPATH)$(MANSUFFIX) +#endif +#ifndef LibmanDir +#define LibmanDir $(MANSOURCEPATH)$(LIBMANSUFFIX) +#endif +#ifndef FileManDir +#define FileManDir $(MANSOURCEPATH)$(FILEMANSUFFIX) +#endif +#ifndef ConfigSrc +#define ConfigSrc $(TOP)/config +#endif +#ifndef DependDir +#if UseCCMakeDepend || UseGccMakeDepend +#define DependDir $(CONFIGSRC)/util +#else +#define DependDir $(CONFIGSRC)/makedepend +#endif +#endif +#ifndef UNCOMPRESSPATH +#define UNCOMPRESSPATH /usr/ucb/uncompress +#endif +#ifndef OptimizedCDebugFlags +#define OptimizedCDebugFlags -O +#endif +#ifndef OptimizedCplusplusDebugFlags +#define OptimizedCplusplusDebugFlags OptimizedCDebugFlags +#endif +#ifndef DebuggableCDebugFlags +#define DebuggableCDebugFlags -g +#endif +#ifndef DebuggableCplusplusDebugFlags +#define DebuggableCplusplusDebugFlags DebuggableCDebugFlags +#endif +#ifndef ProfiledCDebugFlags +#define ProfiledCDebugFlags -pg +#endif +#ifndef ProfiledCplusplusDebugFlags +#define ProfiledCplusplusDebugFlags ProfiledCDebugFlags +#endif +#ifndef NoOpCDebugFlags +#define NoOpCDebugFlags /**/ +#endif +#ifndef DefaultCDebugFlags +#define DefaultCDebugFlags OptimizedCDebugFlags +#endif +#ifndef DefaultCplusplusDebugFlags +#define DefaultCplusplusDebugFlags OptimizedCplusplusDebugFlags +#endif +#ifndef DefaultCCOptions +#define DefaultCCOptions /* floating point, etc. */ +#endif +#ifndef DefaultCplusplusOptions +#define DefaultCplusplusOptions /* floating point, etc. */ +#endif +#ifndef NoRConst +#define NoRConst NO /* YES if const for structs of funcs is bad */ +#endif +#ifndef InstPgmFlags +#define InstPgmFlags -s +#endif +#ifndef InstBinFlags +#define InstBinFlags -m 0755 +#endif +#ifndef InstUidFlags +#define InstUidFlags -m 4711 +#endif +#ifndef InstLibFlags +#define InstLibFlags -m 0644 +#endif +#ifndef InstIncFlags +#define InstIncFlags -m 0444 +#endif +#ifndef InstManFlags +#define InstManFlags -m 0444 +#endif +#ifndef InstDatFlags +#define InstDatFlags -m 0444 +#endif +#ifndef InstKmemFlags /* put -g kmem -m 2711 in site.def... */ +#define InstKmemFlags InstUidFlags +#endif +#ifndef ParallelMakeFlags +#define ParallelMakeFlags /**/ +#endif +#ifndef ArCmdBase +#define ArCmdBase ar +#endif +#ifndef ArCmd +#if HasLargeTmp || SystemV4 +#define ArCmd ArCmdBase cq +#else +#define ArCmd ArCmdBase clq +#endif +#endif +#ifndef ArAddCmd +#if HasLargeTmp || SystemV4 +#define ArAddCmd ArCmdBase ru +#else +#define ArAddCmd ArCmdBase rul +#endif +#endif +#ifndef ArExtCmd +#if HasLargeTmp || SystemV4 +#define ArExtCmd ArCmdBase x +#else +#define ArExtCmd ArCmdBase xl +#endif +#endif +#ifndef BootstrapCFlags +#define BootstrapCFlags /**/ +#endif +#ifndef HasGcc2 +#define HasGcc2 NO +#endif +#ifndef HasGcc +#define HasGcc HasGcc2 +#endif +#ifndef HasGcc2ForCplusplus +#define HasGcc2ForCplusplus NO +#endif +#ifndef HasCenterLineC +#define HasCenterLineC NO +#endif +#ifndef HasCenterLineCplusplus +#define HasCenterLineCplusplus NO +#endif +#ifndef CcCmd +#if HasGcc2 +#define CcCmd gcc -fpcc-struct-return +#else +#if HasGcc +#define CcCmd gcc -fstrength-reduce -fpcc-struct-return +#else +#if HasCenterLineC +#define CcCmd clcc +#else +#define CcCmd cc +#endif +#endif +#endif +#endif +#ifndef CplusplusCmd +#if HasGcc2ForCplusplus +#define CplusplusCmd g++ +#else +#define CplusplusCmd CC +#endif +#endif +#ifndef CplusplusFilt +# define CplusplusFilt c++filt +#endif +#ifndef CplusplusLibC +#define CplusplusLibC /**/ +#endif +#ifndef CplusplusStandardDefines +#define CplusplusStandardDefines StandardDefines +#endif +#ifndef CplusplusExtraDefines +#define CplusplusExtraDefines /**/ +#endif +#ifndef CplusplusExtraIncludes +#define CplusplusExtraIncludes /**/ +#endif +#ifndef CplusplusDependIncludes +#define CplusplusDependIncludes /**/ +#endif +#ifndef CplusplusOptions +#define CplusplusOptions /**/ +#endif +#ifndef CplusplusSpecialOptions +#define CplusplusSpecialOptions /**/ +#endif +#if HasFortran +#ifndef FortranCmd +#define FortranCmd f77 +#endif +#ifndef FortranFlags +#define FortranFlags /**/ +#endif +#ifndef FortranDebugFlags /* for -O or -g */ +#define FortranDebugFlags /**/ +#endif +#endif +#ifndef AsCmd +#define AsCmd as +#endif +#ifndef CompressCmd +#define CompressCmd compress +#endif +#ifndef GzipCmd +#define GzipCmd gzip +#endif +#ifndef CppCmd +#define CppCmd /lib/cpp +#endif +#ifndef CppNoLineInfoOption +#define CppNoLineInfoOption /**/ +#endif +#ifndef PreProcessCmd +#define PreProcessCmd CcCmd -E +#endif +#ifndef InstallCmd /* hack should be in project */ +#if SystemV || SystemV4 +#ifdef UseInstalled /* assume BINDIR in path */ +#define InstallCmd bsdinst +#else +#define InstallCmd $(SHELL) $(CONFIGSRC)/util/bsdinst.sh +#endif +#else +#define InstallCmd install +#endif +#endif +#ifndef InstallFlags +#define InstallFlags -c +#endif +#ifndef LdCmd +#define LdCmd ld +#endif +#ifndef LexCmd +#define LexCmd lex +#endif +#ifndef LexLib +#define LexLib -ll +#endif +#ifndef YaccCmd +#define YaccCmd yacc +#endif +#ifndef CplusplusYaccCmd +#define CplusplusYaccCmd YaccCmd +#endif +#ifndef LintCmd +#define LintCmd lint +#endif +#ifndef LintLibFlag +#if SystemV || SystemV4 +#define LintLibFlag -o +#else +#define LintLibFlag -C +#endif +#endif +#ifndef LintOpts +#if SystemV || SystemV4 +#define LintOpts -bh +#else +#define LintOpts -axz +#endif +#endif +#ifndef CpCmd +#define CpCmd cp +#endif +#ifndef LnCmd /* can use cp instead of ln if necessary */ +#if HasSymLinks +#define LnCmd ln -s +#else +#define LnCmd ln +#endif +#endif +#ifndef MakeCmd +#define MakeCmd make +#endif +#ifndef MvCmd +#define MvCmd mv -f +#endif +#ifndef RanlibCmd +#define RanlibCmd ranlib +#endif +#ifndef RanlibInstFlags +#define RanlibInstFlags /**/ +#endif +#ifndef RmCmd +#define RmCmd rm -f +#endif +#ifndef StandardIncludes /* for platform-specifics */ +#define StandardIncludes /**/ +#endif +#ifndef StandardDefines +#if SystemV +#define StandardDefines -DSYSV +#else +#if SystemV4 +#define StandardDefines -DSVR4 +#else +#define StandardDefines /**/ +#endif +#endif +#endif +#ifndef StandardCppDefines +#define StandardCppDefines StandardDefines +#endif +#ifndef Malloc0ReturnsNull +#if UseGnuMalloc +#define Malloc0ReturnsNull YES +#else +#define Malloc0ReturnsNull NO +#endif +#endif +#if Malloc0ReturnsNull +#ifndef Malloc0ReturnsNullDefines +#define Malloc0ReturnsNullDefines -DMALLOC_0_RETURNS_NULL +#endif +#endif +#ifndef ToolkitStringsABIOptions +#define ToolkitStringsABIOptions /**/ +#endif +#ifndef NdbmDefines +#if HasNdbm +#define NdbmDefines -DNDBM +#else +#define NdbmDefines /**/ +#endif +#endif +#ifndef LdPreLib +#if !defined(UseInstalled) +#define LdPreLib -L$(BUILDLIBDIR) +#else +#if AlternateUsrLibDir +#define LdPreLib -L$(USRLIBDIR) +#else +#define LdPreLib /**/ +#endif +#endif +#endif +#ifndef LdPostLib +#if !defined(UseInstalled) && AlternateUsrLibDir && !HasLdRunPath +#define LdPostLib -L$(USRLIBDIR) +#else +#define LdPostLib /**/ +#endif +#endif +#ifndef MathLibrary +#define MathLibrary -lm +#endif +#ifndef DBMLibrary +#define DBMLibrary -ldbm +#endif +#ifndef DlLibrary +#define DlLibrary -ldl +#endif +#ifndef ExtraLibraries +#if SystemV4 +#if HasSockets +#define ExtraLibraries -lsocket -lnsl -lw +#else +#define ExtraLibraries -lnsl -lw +#endif +#else +#define ExtraLibraries /**/ +#endif +#endif +#ifndef ExtraLoadOptions +#define ExtraLoadOptions /**/ +#endif +#ifndef ExtraLoadFlags +#define ExtraLoadFlags /**/ +#endif +#ifndef LdCombineFlags +#if SystemV4 +#define LdCombineFlags -r +#else +#define LdCombineFlags -X -r +#endif +#endif +#ifndef LdStripFlags +#define LdStripFlags -x +#endif +#ifndef TagsCmd +#define TagsCmd ctags +#endif +#ifndef LoaderLibPrefix +#define LoaderLibPrefix /**/ +#endif +#ifndef ImakeCmd +#ifdef UseInstalled /* assume BINDIR in path */ +#define ImakeCmd imake +#else +#define ImakeCmd $(IMAKESRC)/imake +#endif +#endif +#ifndef DependCmd +#if UseGccMakeDepend +#ifdef UseInstalled /* assume BINDIR in path */ +#define DependCmd gccmakedep +#else +#define DependCmd $(DEPENDSRC)/gccmakedep +#endif +#else +#ifdef UseInstalled /* assume BINDIR in path */ +#define DependCmd makedepend +#else +#define DependCmd $(DEPENDSRC)/makedepend +#endif +#endif +#endif +#ifndef DependFlags +#define DependFlags /**/ +#endif +#ifndef DependFileName +#if !HasBsdMake +#define DependFileName Makefile.dep +#else +#define DependFileName .depend +#endif +#endif +#ifndef ExportListCmd +# ifndef ExportListGenSource +# define ExportListCmd /**/ +# elif !defined(UseInstalled) +# define ExportListCmd $(CONFIGSRC)/util/exportlistgen +# else +# define ExportListCmd exportlistgen +# endif +#endif +#ifndef MkdirHierCmd +#ifdef UseInstalled /* assume BINDIR in path */ +#define MkdirHierCmd mkdirhier +#else +#define MkdirHierCmd $(SHELL) $(CONFIGSRC)/util/mkdirhier.sh +#endif +#endif +#ifndef TroffCmd +#define TroffCmd psroff +#endif +#ifndef NroffCmd +#define NroffCmd nroff +#endif +#ifndef MsMacros +#define MsMacros -ms +#endif +#ifndef ManMacros +#define ManMacros -man +#endif +#ifndef TblCmd +#define TblCmd tbl +#endif +#ifndef EqnCmd +#define EqnCmd eqn +#endif +#ifndef NeqnCmd +#define NeqnCmd neqn +#endif +#ifndef ColCmd +#define ColCmd col +#endif +#ifndef DvipsCmd +#define DvipsCmd dvips +#endif +#ifndef LatexCmd +#define LatexCmd latex +#endif +#if HasSentinel +#ifndef SentinelCmd +#define SentinelCmd sentinel +#endif +#ifndef SentinelOptions +#define SentinelOptions /**/ +#endif +#endif +#if HasPurify +#ifndef PurifyCmd +#define PurifyCmd purify +#endif +#ifndef PurifyOptions +#define PurifyOptions /**/ +#endif +#endif +#if HasTestCenter +#ifndef ProofCmd +#define ProofCmd proof +#endif +#ifndef ProofOptions +#define ProofOptions /**/ +#endif +#endif +#ifndef PathSeparator +#define PathSeparator / +#endif +#ifndef Osuf +#define Osuf o +#endif +#ifndef CCsuf +#define CCsuf cc +#endif +#ifndef SHsuf +#define SHsuf sh +#endif +#ifndef ManSuffix +#define ManSuffix n /* use just one tab or cpp will die */ +#endif +#ifndef LibManSuffix +#define LibManSuffix 3 /* use just one tab or cpp will die */ +#endif +#ifndef FileManSuffix +#if SystemV || SystemV4 || defined(OSF1Architecture) +#define FileManSuffix 4 /* use just one tab or cpp will die */ +#else +#define FileManSuffix 5 /* use just one tab or cpp will die */ +#endif +#endif +#ifndef ExpandManNames +#if SystemV +#define ExpandManNames NO +#else +#define ExpandManNames YES +#endif +#endif +#ifndef TOPDIR +#define TOPDIR . +#endif +#ifndef CURDIR +#define CURDIR . +#endif +#ifndef SiteIConfigFiles +#define SiteIConfigFiles /**/ +#endif +#ifndef OtherIConfigFiles +#define OtherIConfigFiles /**/ +#endif +#ifndef ExtraFilesToClean +#define ExtraFilesToClean /**/ +#endif +#ifndef FilesToClean +#define FilesToClean *.CKP *.ln *.BAK *.bak *.Osuf core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut +#endif + + PATHSEP = PathSeparator + SHELL = BourneShell + + TOP = TOPDIR + CURRENT_DIR = CURDIR + + IMAKE = ImakeCmd + DEPEND = DependCmd + MKDIRHIER = MkdirHierCmd + EXPORTLISTGEN = ExportListCmd + CONFIGSRC = ConfigSrc + IMAKESRC = $(CONFIGSRC)/imake + DEPENDSRC = DependDir + + INCROOT = IncRoot /* base of where to put header files */ + USRLIBDIR = UsrLibDir /* nonshared libraries */ + VARLIBDIR = VarLibDir /* xdm runtime files */ + SHLIBDIR = ShLibDir /* shared libraries */ + LINTLIBDIR = LintlibDir /* lint libraries */ + MANPATH = ManPath /* top of manual page tree */ + MANSOURCEPATH = ManSourcePath /* prefix for man page sources */ + MANDIR = ManDir /* man pages for commands */ + LIBMANDIR = LibmanDir /* man pages for library routines */ + FILEMANDIR = FileManDir /* man pages for config files */ + + AR = ArCmd + BOOTSTRAPCFLAGS = BootstrapCFlags /* set if cpp does not have uniq sym */ + CC = CcCmd + AS = AsCmd +#if HasFortran + FC = FortranCmd + FDEBUGFLAGS = FortranDebugFlags + FCFLAGS = FortranFlags $(FDEBUGFLAGS) +#endif +#if HasCplusplus + +.SUFFIXES: .CCsuf + + CXX = CplusplusCmd + CXXFILT = CplusplusFilt + CXXLIB = CplusplusLibC + CXXDEBUGFLAGS = DefaultCplusplusDebugFlags +CXXDEPENDINCLUDES = CplusplusDependIncludes + CXXEXTRA_DEFINES = CplusplusExtraDefines +CXXEXTRA_INCLUDES = CplusplusExtraIncludes + CXXSTD_DEFINES = CplusplusStandardDefines $(CXXPROJECT_DEFINES) + CXXOPTIONS = CplusplusOptions + CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES) + CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(CXXEXTRA_DEFINES) $(DEFINES) + CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES) +#endif + COMPRESS = CompressCmd + GZIPCMD = GzipCmd + CPP = CppCmd $(STD_CPP_DEFINES) /* simple filters */ + PREPROCESSCMD = PreProcessCmd $(STD_CPP_DEFINES) /* prefered; mdep */ + INSTALL = InstallCmd + INSTALLFLAGS = InstallFlags + LD = LdCmd + LEX = LexCmd + LEXLIB = LexLib + YACC = YaccCmd + CCYACC = CplusplusYaccCmd + LINT = LintCmd + LINTLIBFLAG = LintLibFlag + LINTOPTS = LintOpts + LN = LnCmd + MAKE = MakeCmd + MV = MvCmd + CP = CpCmd +#if DoRanlibCmd + RANLIB = RanlibCmd + RANLIBINSTFLAGS = RanlibInstFlags +#endif + RM = RmCmd + MANSUFFIX = ManSuffix /* suffix for command man pages */ + LIBMANSUFFIX = LibManSuffix /* suffix for library man pages */ + FILEMANSUFFIX = FileManSuffix /* suffix for config file man pages */ + TROFF = TroffCmd + NROFF = NroffCmd + MSMACROS = MsMacros + MANMACROS = ManMacros + TBL = TblCmd + EQN = EqnCmd + NEQN = NeqnCmd + COL = ColCmd +#if HasLatex + DVIPS = DvipsCmd + LATEX = LatexCmd +#endif +#if HasSentinel + SENTINEL = SentinelCmd + SENTINELOPTIONS = SentinelOptions +#endif +#if HasPurify + PURIFY = PurifyCmd + PURIFYOPTIONS = PurifyOptions +#endif +#if HasTestCenter + PROOF = ProofCmd + PROOFOPTIONS = ProofOptions +#endif + STD_INCLUDES = StandardIncludes + STD_CPP_DEFINES = StandardCppDefines $(PROJECT_DEFINES) + STD_DEFINES = StandardDefines $(PROJECT_DEFINES) + EXTRA_LOAD_FLAGS = ExtraLoadFlags + EXTRA_LDOPTIONS = ExtraLoadOptions + EXTRA_LIBRARIES = MallocLibraries ExtraLibraries Krb5Libraries + TAGS = TagsCmd +#if ConstructMFLAGS + MFLAGS = -$(MAKEFLAGS) +#endif +#if ConstructMAKEFLAGS + MAKEFLAGS = $(MFLAGS) +#endif + PARALLELMFLAGS = ParallelMakeFlags +#if HasSharedLibraries + SHAREDCODEDEF = SharedCodeDef + SHLIBDEF = SharedLibraryDef +#ifdef SharedLibraryLoadFlags + SHLIBLDFLAGS = SharedLibraryLoadFlags +#endif +/* + * Here we set up flags needed to produce position-independent code + * when doing C and C++ compilation. The default if you specify C + * PIC flags without also specifying C++ PIC flags is to assume that + * the C flags work for both. If your C++ compiler requires different + * flags, specify them explicitly in PositionIndependentCplusplusFlags. + */ +#ifdef PositionIndependentCFlags + PICFLAGS = PositionIndependentCFlags +#endif +#ifdef PositionIndependentCplusplusFlags + CXXPICFLAGS = PositionIndependentCplusplusFlags +#else +#ifdef PositionIndependentCFlags + CXXPICFLAGS = PositionIndependentCFlags +#endif +#endif +#endif +#if !HasVoidSignalReturn + SIGNAL_DEFINES = -DSIGNALRETURNSINT +#endif +/* + * The following supports forcing of function prototypes + */ +#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes && NeedNestedPrototypes +#define _funcprotodef -DFUNCPROTO=15 +#else +#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedNestedPrototypes +#define _funcprotodef -DFUNCPROTO=11 +#else +#if NeedFunctionPrototypes && NeedNestedPrototypes +#define _funcprotodef -DFUNCPROTO=9 +#else +#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes +#define _funcprotodef -DFUNCPROTO=7 +#else +#if NeedFunctionPrototypes && NeedConstPrototypes +#define _funcprotodef -DFUNCPROTO=5 +#else +#if NeedFunctionPrototypes && NeedVarargsPrototypes +#define _funcprotodef -DFUNCPROTO=3 +#else +#if NeedFunctionPrototypes +#define _funcprotodef -DFUNCPROTO +#else +#define _funcprotodef /**/ +#endif +#endif +#endif +#endif +#endif +#endif +#endif +#if NeedWidePrototypes +#define _wideprotodef /**/ +#else +#define _wideprotodef -DNARROWPROTO +#endif + PROTO_DEFINES = _funcprotodef _wideprotodef +#undef _funcprotodef +#undef _wideprotodef + +#if StripInstalledPrograms + INSTPGMFLAGS = InstPgmFlags /* install flags for stripping */ +#else + INSTPGMFLAGS = +#endif + INSTBINFLAGS = InstBinFlags /* install flags for programs */ + INSTUIDFLAGS = InstUidFlags /* install flags for setuid programs */ + INSTLIBFLAGS = InstLibFlags /* install flags for libraries */ + INSTINCFLAGS = InstIncFlags /* install flags for headers */ + INSTMANFLAGS = InstManFlags /* install flags for man pages */ + INSTDATFLAGS = InstDatFlags /* install flags for data files */ + INSTKMEMFLAGS = InstKmemFlags /* install flags for /dev/kmem progs */ + +#ifdef ProjectRoot + PROJECTROOT = ProjectRoot +#endif +#ifdef UseInstalled +# if AlternateIncRoot +# define TopInclude -I$(INCROOT) +# else +# define TopInclude /**/ +# endif +#else +# define TopInclude -I$(TOP) +#endif + CDEBUGFLAGS = DefaultCDebugFlags + CCOPTIONS = DefaultCCOptions /* to distinguish from param flags */ +/* + * STD_INCLUDES contains system-specific includes + * TOP_INCLUDES specifies how to get to /usr/include or its build substitute + * EXTRA_INCLUDES contains project-specific includes set in project incfiles + * INCLUDES contains client-specific includes set in Imakefile + * LOCAL_LDFLAGS contains client-specific ld flags flags set in Imakefile + */ + ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES) + ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) + CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(ALLDEFINES) + LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES) + LDPRELIB = LdPreLib + LDPOSTLIB = LdPostLib + LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS) + CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS) + + LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES) +#if HasBrokenCCForLink + CCLINK = LdCmd +#else +#if AlternateUsrLibDir && HasLdRunPath + CCENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH) + CCLINK = $(CCENVSETUP) $(CC) +#else + CCLINK = $(CC) +#endif +#endif +#if AlternateUsrLibDir && HasLdRunPath + CXXENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH) + CXXLINK = $(CXXENVSETUP) $(CXX) +#else + CXXLINK = $(CXX) +#endif + LDSTRIPFLAGS = LdStripFlags + LDCOMBINEFLAGS = LdCombineFlags + DEPENDFLAGS = DependFlags + +XCOMM Not sure this belongs here + TKLIBDIR = TkLibDir + TKINCDIR = TkIncDir + TKLIBNAME = TkLibName + TKLIBRARY = TkLibrary + TCLLIBDIR = TclLibDir + TCLINCDIR = TclIncDir + TCLLIBNAME = TclLibName + TCLLIBRARY = TclLibrary + + MACROFILE = MacroFile + RM_CMD = $(RM) + + IMAKE_DEFINES = /* leave blank, for command line use only */ +#ifdef UseInstalled + IRULESRC = $(CONFIGDIR) /* used in rules file */ + IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES) +#else + IRULESRC = $(CONFIGSRC)/cf + IMAKE_CMD = $(IMAKE) -I$(IRULESRC) $(IMAKE_DEFINES) +#endif +#if !HasClearmake + /* clearmake records relevant defines and flags in the build script, + so it knows when they change and we don't need this coarser-level + dependency. We also don't want it, since it prevents sharing if + even one config file, say site.def or host.def, changes. */ + ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl \ + $(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) \ + OtherIConfigFiles SiteIConfigFiles $(EXTRA_ICONFIGFILES) +#endif + +#ifndef TopLevelProject +# define TopLevelProject X11 +#endif +#ifndef ProjectRulesFile +# define ProjectRulesFile Concat3(<,TopLevelProject,.rules>) +#endif +#include ProjectRulesFile +#ifndef LocalRulesFile +/* need this to make ANSI-style preprocessors happy */ +#define LocalRulesFile +#endif +#include LocalRulesFile + +/* + * get project-specific configuration and rules + */ +#ifndef ProjectTmplFile +#define ProjectTmplFile Concat3(<,TopLevelProject,.tmpl>) +#endif +#include ProjectTmplFile +#ifndef LocalTmplFile +/* need this to make ANSI-style preprocessors happy */ +#define LocalTmplFile +#endif +#include LocalTmplFile + +#ifdef FixupLibReferences +FixupLibReferences() +#endif + +/* ConfigDir comes from X11.tmpl */ + CONFIGDIR = ConfigDir /* build configuration information */ +#if HasClearmake + OSNAME = OSName +#endif + USRLIBDIRPATH = UsrLibDirPath + LDPRELIBS = LdPreLibs + LDPOSTLIBS = LdPostLibs + TOP_INCLUDES = TopIncludes + PROJECT_DEFINES = ProjectDefines +#if HasCplusplus +CXXPROJECT_DEFINES = CplusplusProjectDefines +#endif + +XCOMM ---------------------------------------------------------------------- +XCOMM start of Imakefile +#include INCLUDE_IMAKEFILE + +XCOMM ---------------------------------------------------------------------- +XCOMM common rules for all Makefiles - do not edit + +.c.i: + CPPOnlyCompile($*.c,$(_NOOP_)) +/* + * These need to be here so that rules in Imakefile occur first; the blank + * emptyrule is to make sure that an empty Imakefile does not default to make + * clean. + */ +emptyrule:: + +CleanTarget() + +#ifndef IHaveSpecialMakefileTarget +MakefileTarget() +#endif + +TagsTarget() +#ifdef MakefileAdditions +MakefileAdditions() +#endif + +CenterLoadTarget(debug_src,$(SRCS),NullParameter,$(ALLDEFINES)) + +CenterLoadTarget(debug_obj,$(OBJS),NullParameter,$(ALLDEFINES)) + +ManKeywordsTarget($(MANPATH)) + +#ifdef IHaveSubdirs +XCOMM ---------------------------------------------------------------------- +XCOMM rules for building in SUBDIRS - do not edit + +InstallSubdirs($(SUBDIRS)) +InstallManSubdirs($(SUBDIRS)) +InstallLinkKitSubdirs($(SUBDIRS)) +CleanSubdirs($(SUBDIRS)) +TagSubdirs($(SUBDIRS)) +MakefileSubdirs($(SUBDIRS)) +IncludesSubdirs($(SUBDIRS)) + +#endif + +/* must be after all install.man rules that install anything */ +#if MakeManKeywords /* typically only at top level */ +install.man:: man_keywords +#endif + +#ifndef IHaveSubdirs +XCOMM ---------------------------------------------------------------------- +XCOMM empty rules for directories that do not have SUBDIRS - do not edit + +install:: + @echo "install in $(CURRENT_DIR) done" + +install.man:: + @echo "install.man in $(CURRENT_DIR) done" + +install.linkkit:: + @echo "install.linkkit in $(CURRENT_DIR) done" + +Makefiles:: + +includes:: + +depend:: + +#endif /* if subdirectory rules are needed */ + +XCOMM ---------------------------------------------------------------------- +XCOMM dependencies generated by makedepend +IncludeMakefile(DependFileName) diff --git a/Xserver/config/cf/Imakefile b/Xserver/config/cf/Imakefile new file mode 100644 index 0000000..4dfd0db --- /dev/null +++ b/Xserver/config/cf/Imakefile @@ -0,0 +1,142 @@ +XCOMM $XConsortium: Imakefile /main/38 1996/11/07 14:43:46 kaleb $ +XCOMM $XFree86: xc/config/cf/Imakefile,v 3.13.2.2 1997/07/27 02:41:03 dawes Exp $ + +XCOMM Some compilers generate fatal errors if an -L directory does +XCOMM not exist. Since BUILDLIBDIR may not exist yet suppress its use. + LDPRELIB = + LDPRELIBS = + +#ifdef LocalConfigFiles +LOCALFILES = LocalConfigFiles +#endif + +#ifndef InstallEmptyHostDef +HOSTDEFFILES = \ +host.def +#endif + +DEFFILES = \ +xf86site.def \ +$(HOSTDEFFILES) \ +site.def + +RULEFILES = \ +Imake.rules \ +Motif.rules \ +Win32.rules \ +X11.rules \ +bsdLib.rules \ +cde.rules \ +hpLib.rules \ +ibmLib.rules \ +lnxLib.rules \ +lnxdoc.rules \ +necLib.rules \ +noop.rules \ +oldlib.rules \ +os2.rules \ +os2Lib.rules \ +os2Lib.rules \ +osfLib.rules \ +scoLib.rules \ +sgiLib.rules \ +sunLib.rules \ +sv3Lib.rules \ +sv4Lib.rules \ +xf86.rules + +TMPLFILES = \ +Imake.tmpl \ +Library.tmpl \ +Motif.tmpl \ +Server.tmpl \ +ServerLib.tmpl \ +Threads.tmpl \ +WinLib.tmpl \ +X11.tmpl \ +bsdLib.tmpl \ +cde.tmpl \ +hpLib.tmpl \ +ibmLib.tmpl \ +lnxLib.tmpl \ +lnxdoc.tmpl \ +necLib.tmpl \ +os2Lib.tmpl \ +osfLib.tmpl \ +sgiLib.tmpl \ +sunLib.tmpl \ +sv3Lib.tmpl \ +sv4Lib.tmpl \ +xf86.tmpl + +CFFILES = \ +Imake.cf \ +Amoeba.cf \ +DGUX.cf \ +FreeBSD.cf \ +Mips.cf \ +NetBSD.cf \ +OpenBSD.cf \ +Oki.cf \ +Win32.cf \ +apollo.cf \ +bsd.cf \ +bsdi.cf \ +convex.cf \ +cray.cf \ +fujitsu.cf \ +generic.cf \ +hp.cf \ +ibm.cf \ +isc.cf \ +linux.cf \ +luna.cf \ +macII.cf \ +mach.cf \ +minix.cf \ +moto.cf \ +ncr.cf \ +nec.cf \ +os2.cf \ +osf1.cf \ +pegasus.cf \ +sco.cf \ +sco5.cf \ +sequent.cf \ +sgi.cf \ +sony.cf \ +sun.cf \ +svr3.cf \ +svr4.cf \ +ultrix.cf \ +usl.cf \ +lynx.cf \ +x386.cf \ +xfree86.cf + +INSTFILES = $(RULEFILES) $(TMPLFILES) $(DEFFILES) $(CFFILES) $(LOCALFILES) + +all:: + +InstallMultipleDestFlags(install,$(INSTFILES),$(CONFIGDIR),$(INSTDATFLAGS)) +InstallLinkKitMultipleDestFlags($(INSTFILES),$(LINKKITDIR)/config/cf,$(INSTDATFLAGS)) + +#ifdef InstallEmptyHostDef +install:: + @(TMP=/tmp/tmp.$$$$; \ + RemoveFile($${TMP}); \ + echo "" > $${TMP}; \ + $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $${TMP} \ + $(DESTDIR)$(CONFIGDIR)/host.def; \ + RemoveFile($${TMP})) + +#ifdef XFree86Version +install.linkkit:: + @(TMP=/tmp/tmp.$$$$; \ + RemoveFile($${TMP}); \ + echo "" > $${TMP}; \ + $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $${TMP} \ + $(DESTDIR)$(LINKKITDIR)/config/cf/host.def; \ + RemoveFile($${TMP})) +#endif +#endif diff --git a/Xserver/config/cf/Library.tmpl b/Xserver/config/cf/Library.tmpl new file mode 100644 index 0000000..ba2445b --- /dev/null +++ b/Xserver/config/cf/Library.tmpl @@ -0,0 +1,412 @@ +/* + * Library imakefile info - this contains any special redefinitions, etc. + * that Imakefiles in the various library subtrees will need. + * + * Before including this, you must set the following boolean variables: + * DoNormalLib, DoSharedLib, DoDebugLib, DoProfileLib + * + * To get automatic generation of standard rules, also set the variables: + * LibName, SoRev, HasSharedData, and optionally HugeLibrary and IncSubdir. + * + * To suppress installation of the library define LibInstall NO. + * To suppress creating (and installing) the library define LibCreate NO. + * To suppress installing headers define LibHeaders NO. + * Define LargePICTable YES if large (32-bit) PIC tables are needed. + */ + +XCOMM $TOG: Library.tmpl /main/44 1997/04/28 11:47:53 kaleb $ + + + + +XCOMM $XFree86: xc/config/cf/Library.tmpl,v 3.5.2.1 1997/06/11 12:08:29 dawes Exp $ + +#ifndef LibraryCplusplusOptions +# if DoSharedLib && defined(SharedLibraryCplusplusOptions) +# define LibraryCplusplusOptions SharedLibraryCplusplusOptions +# else +# define LibraryCplusplusOptions DefaultCplusplusOptions +# endif +#endif +#ifndef LibraryDefines +# define LibraryDefines StandardDefines +#endif +#ifndef LibraryCDebugFlags +# define LibraryCDebugFlags DefaultCDebugFlags +#endif +#ifndef LibraryCplusplusDebugFlags +# define LibraryCplusplusDebugFlags DefaultCplusplusDebugFlags +#endif +#ifndef SeparateSharedCompile +# define SeparateSharedCompile YES +#endif + +#ifndef CplusplusSource +# ifndef LibraryCcCmd +# if DoSharedLib && defined(SharedLibraryCcCmd) +# define LibraryCcCmd SharedLibraryCcCmd +# else +# define LibraryCcCmd CcCmd +# endif +# endif +# ifndef LibraryCCOptions +# if DoSharedLib && defined(SharedLibraryCCOptions) +# define LibraryCCOptions SharedLibraryCCOptions +# else +# define LibraryCCOptions DefaultCCOptions +# endif +# endif + + CC = LibraryCcCmd + CCOPTIONS = LibraryCCOptions +STD_DEFINES = LibraryDefines $(PROJECT_DEFINES) +CDEBUGFLAGS = LibraryCDebugFlags +# if defined(LargePICTable) && LargePICTable && defined(LargePositionIndependentCFlags) + PICFLAGS = LargePositionIndependentCFlags +# endif +#else +# ifndef LibraryCplusplusCmd +# if DoSharedLib && defined(SharedLibraryCplusplusCmd) +# define LibraryCplusplusCmd SharedLibraryCplusplusCmd +# else +# define LibraryCplusplusCmd CplusplusCmd +# endif +# endif +# ifndef LibraryCplusplusOptions +# if DoSharedLib && defined(SharedLibraryCplusplusOptions) +# define LibraryCplusplusOptions SharedLibraryCplusplusOptions +# else +# define LibraryCplusplusOptions DefaultCplusplusOptions +# endif +# endif + + CXX = LibraryCplusplusCmd + CXXOPTIONS = LibraryCplusplusOptions + STD_DEFINES = LibraryDefines $(PROJECT_DEFINES) +CXXDEBUGFLAGS = LibraryCplusplusDebugFlags +# if defined(LargePICTable) && LargePICTable +# ifdef LargePositionIndependentCplusplusFlags + CXXPICFLAGS = LargePositionIndependentCplusplusFlags +# elif defined(LargePositionIndependentCFlags) + CXXPICFLAGS = LargePositionIndependentCFlags +# endif +# endif +#endif + +LIB_MT_DEFINES = LibraryMTDefines + +#if defined(IHaveSubdirs) && HasSymLinks +#define _LibMkdir LibMkdirLinkSubdirs +#else +#define _LibMkdir LibMkdir +#endif + +#if DoDebugLib +# define _DebuggedLibMkdir() _LibMkdir(debugger) +# define _DebuggedObjCompile(options) DebuggedLibObjCompile(options) +# define _DebuggedObjCplusplusCompile(options) DebuggedLibObjCplusplusCompile(options) +# define _DebuggedCleanDir() LibCleanDir(debugger) +#else +# define _DebuggedLibMkdir() $(_NULLCMD_) +# define _DebuggedObjCompile(options) $(_NULLCMD_) +# define _DebuggedObjCplusplusCompile(options) $(_NULLCMD_) +# define _DebuggedCleanDir() $(_NULLCMD_) +#endif + +#if DoProfileLib +# define _ProfiledLibMkdir() _LibMkdir(profiled) +# define _ProfiledObjCompile(options) ProfiledLibObjCompile(options) +# define _ProfiledObjCplusplusCompile(options) ProfiledLibObjCplusplusCompile(options) +# define _ProfiledCleanDir() LibCleanDir(profiled) +#else +# define _ProfiledLibMkdir() $(_NULLCMD_) +# define _ProfiledObjCompile(options) $(_NULLCMD_) +# define _ProfiledObjCplusplusCompile(options) $(_NULLCMD_) +# define _ProfiledCleanDir() $(_NULLCMD_) +#endif + +#if !DoNormalLib +# define _NormalLibMkdir() $(_NULLCMD_) +# define _NormalObjCompile(options) $(_NULLCMD_) +# define _NormalObjCplusplusCompile(options) $(_NULLCMD_) +# define _NormalCleanDir() $(_NULLCMD_) +#else +# if DoSharedLib && SeparateSharedCompile +# define _NormalLibMkdir() _LibMkdir(unshared) +# define _NormalObjCompile(options) UnsharedLibObjCompile(options) +# define _NormalObjCplusplusCompile(options) UnsharedLibObjCplusplusCompile(options) +# define _NormalCleanDir() LibCleanDir(unshared) +# else +# define _NormalLibMkdir() $(_NULLCMD_) +# define _NormalObjCompile(options) NormalLibObjCompile(options) +# define _NormalObjCplusplusCompile(options) NormalLibObjCplusplusCompile(options) +# define _NormalCleanDir() $(_NULLCMD_) +# endif +#endif + +#if !DoSharedLib || (DoNormalLib && !SeparateSharedCompile) +# define _SharedObjCompile(options) $(_NULLCMD_) +# define _SharedObjCplusplusCompile(options) $(_NULLCMD_) +#else +# if SeparateSharedCompile +# define _SharedObjCompile(options) NormalSharedLibObjCompile(options) +# define _SharedObjCplusplusCompile(options) NormalSharedLibObjCplusplusCompile(options) +#else +# define _SharedObjCompile(options) NormalLibObjCompile(options) +# define _SharedObjCplusplusCompile(options) NormalLibObjCplusplusCompile(options) +#endif +#endif + +#ifndef CplusplusSource +# define SRCsuf c +#else +# define SRCsuf CCsuf +# ifdef SunArchitecture +.SUFFIXES: .CCsuf +# endif +#endif + +#define _CompileObj(target, options) @@\ +target @@\ + _DebuggedObjCompile(options) @@\ + _ProfiledObjCompile(options) @@\ + _NormalObjCompile(options) @@\ + _SharedObjCompile(options) + +#ifdef CplusplusSource +# define _CompileObjCplusplus(target, options) @@\ +target @@\ + _DebuggedObjCplusplusCompile(options) @@\ + _ProfiledObjCplusplusCompile(options) @@\ + _NormalObjCplusplusCompile(options) @@\ + _SharedObjCplusplusCompile(options) +#else +# define _CompileObjCplusplus(target, options) +#endif + +#ifndef LibraryObjectRule +# define LibraryObjectRule() @@\ +all:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _NormalLibMkdir() @@\ + @@\ +includes:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _NormalLibMkdir() @@\ + @@\ +_CompileObj(.c.Osuf:,$(_NOOP_)) @@\ +_CompileObjCplusplus(.SRCsuf.Osuf:,$(_NOOP_)) @@\ + @@\ +clean:: @@\ + _DebuggedCleanDir() @@\ + _ProfiledCleanDir() @@\ + _NormalCleanDir() @@\ + +#endif /* LibraryObjectRule */ + +#ifndef SpecialLibObjectRule +# define SpecialLibObjectRule(objs,depends,options) @@\ +_CompileObj(objs: depends,options) +#endif /* SpecialLibObjectRule */ + +#ifndef SpecialCLibObjectRule +# define SpecialCLibObjectRule(basename,depends,options) @@\ +_CompileObj(basename.Osuf: basename.SRCsuf depends,options) @@\ + @@\ +basename.i: basename.SRCsuf depends @@\ + CPPOnlyCompile(basename.SRCsuf,options) @@\ + @@\ +CenterLoadTarget(debug_src,basename.SRCsuf,NullParameter,$(ALLDEFINES) options) +#endif /* SpecialCLibObjectRule */ + +#ifndef SpecialCplusplusLibObjectRule +# define SpecialCplusplusLibObjectRule(basename,depends,options) @@\ +_CompileObjCplusplus(basename.Osuf: basename.SRCsuf depends,options) @@\ + @@\ +CenterLoadTarget(debug_src,basename.SRCsuf,NullParameter,$(ALLDEFINES) options) +#endif /* SpecialCplusplusLibObjectRule */ + +/* + * ToolkitMakeStrings generates a string-table, i.e., a C source + * file and the matching header(s), e.g., Xt's StringDefs.c, StringDefs.h, + * and Shell.h files; or Motif's XmStrDefs.c and XmStrDefs.h files. + * + * The 'files' argument is the list of files that will be produced by + * this rule, e.g., for Xt they would be "Shell.h StringDefs.c StringDefs.h" + * and for Motif they would be "XmStrDefs.c XmStrDefs.h". + * + * The 'source' argument is the string-list file to be parsed, e.g., in + * Xt that would be "util/string.list". For Motif 2.0 it would be + * "../../tools/makestr/xmstring.list", and for Motif-CDE1 it would be + * "util/xmstring.list". + * + * The 'options' argument is passed by the library's Imakefile, see the + * Xt Imakefile for an example. Typically this would be nothing, -intelabi, + * or -sparcabi; there are other choices, but these are typical. + * + * The 'depends' argument names additional files the target files + * depend on. It should name the #ctmpl and #htmpl files from the + * 'source' file. + * + * The 'dest' argument is the C source output file. For Xt this should + * be "StringDefs.c", and for all versions of Motif it would be "XmStrDefs.c" + * + * Headers are generated and named according to data in the 'source' + * file. + */ +/* + * The NoCmpScript + * prevents clearmake from trying to remake makestrs if it exists. + * Including both $(MAKESTRS) and $(MAKESTRS).o as primary targets + * prevents clearmake from trying to recompile makestrs from here. + * We have includes, not files, depend on makestrs to try to get + * clearmake to wink in the files. Bug in clearmake 2.0.2? + */ + +#ifndef MakeStringsDependency +# define MakeStringsDependency @@\ +MAKESTRS = $(CONFIGSRC)/util/makestrs @@\ +NoCmpScript(ProgramTargetName($(MAKESTRS)) $(MAKESTRS).Osuf) @@\ + @@\ +ProgramTargetName($(MAKESTRS)) $(MAKESTRS).Osuf: @@\ + cd $(CONFIGSRC)/util && $(MAKE) ProgramTargetName(makestrs) @@\ + @@\ +includes:: ProgramTargetName($(MAKESTRS)) +#endif +#ifndef ToolkitMakeStrings +# if defined(LibTookitMakeStringsDependency) && LibTookitMakeStringsDependency +# define ToolkitMakeStrings(files,source,options,depends,dest) @@\ +files: source depends @@\ + RemoveFiles(files) @@\ + RunProgram(MAKESTRS,options < source > dest) @@\ + @@\ +AllTarget(files) @@\ + @@\ +includes:: files @@\ + @@\ +depend:: files @@\ + @@\ +clean:: @@\ + RemoveFiles(files) +# else +# define ToolkitMakeStrings(files,source,options,depends,dest) @@\ +MakeStringsDependency @@\ + @@\ +files: source depends @@\ + RemoveFiles(files) @@\ + RunProgram(MAKESTRS,options < source > dest) @@\ + @@\ +AllTarget(files) @@\ + @@\ +includes:: files @@\ + @@\ +depend:: files @@\ + @@\ +clean:: @@\ + RemoveFiles(files) +# endif +#endif /* ToolkitMakeStrings */ + +#ifdef LibName + +LIBNAME = LibName + +# if defined(LibTookitMakeStringsDependency) && LibTookitMakeStringsDependency +/* + * Do ToolkitMakeStrings() before BuildIncludes so makestrs is still + * built first, even if the generated header will be installed. + */ +MakeStringsDependency +# endif + +LibraryObjectRule() + +# undef _LinkBuildLibrary +# if !defined(LibInstall) || LibInstall +# define _LinkBuildLibrary(lib) LinkBuildLibrary(lib) +# else +# define _LinkBuildLibrary(lib) $(_NULLCMD_) +# endif + +# if !defined(LibCreate) || LibCreate +# if DoSharedLib +# if HugeLibrary && defined(SharedLibraryTarget3) +SharedLibraryTarget3($(LIBNAME),$(SoRev),$(OBJS1),$(OBJS2),$(OBJS3),.,.) +# else +SharedLibraryTarget($(LIBNAME),$(SoRev),$(OBJS),.,.) +# endif +# if !defined(LibInstall) || LibInstall +InstallSharedLibrary($(LIBNAME),$(SoRev),$(SHLIBDIR)) +# endif +# if HasSharedData +SharedLibraryDataTarget($(LIBNAME),$(SoRev),$(UNSHAREDOBJS)) +# if !defined(LibInstall) || LibInstall +InstallSharedLibraryData($(LIBNAME),$(SoRev),$(SHLIBDIR)) +# endif +# endif +# endif +# if DoNormalLib +# if HugeLibrary +# if DoSharedLib && SeparateSharedCompile +UnsharedLibraryTarget3($(LIBNAME),$(OBJS1),$(OBJS2),$(OBJS3),unshared,..) +# else +NormalLibraryTarget3($(LIBNAME),$(OBJS1),$(OBJS2),$(OBJS3)) +# endif +# else +# if DoSharedLib && SeparateSharedCompile +UnsharedLibraryTarget($(LIBNAME),$(OBJS),unshared,..) +# else +NormalLibraryTarget($(LIBNAME),$(OBJS)) +# endif +# endif +# if !defined(LibInstall) || LibInstall +InstallLibrary($(LIBNAME),$(USRLIBDIR)) +# endif +# endif +# if DoProfileLib +ProfiledLibraryTarget($(LIBNAME),$(OBJS)) +# if !defined(LibInstall) || LibInstall +InstallLibrary($(LIBNAME)_p,$(USRLIBDIR)) +# endif +# endif +# if DoDebugLib +DebuggedLibraryTarget($(LIBNAME),$(OBJS)) +# if !defined(LibInstall) || LibInstall +InstallLibrary($(LIBNAME)_d,$(USRLIBDIR)) +# endif +# endif + +LintLibraryTarget($(LIBNAME),$(SRCS)) +# if !defined(LibInstall) || LibInstall +InstallLintLibrary($(LIBNAME),$(LINTLIBDIR)) +# endif +# else /* not LibCreate */ +# if HugeLibrary +AllTarget($(OBJS1)) +AllTarget($(OBJS2)) +AllTarget($(OBJS3)) +# else +AllTarget($(OBJS)) +# endif +# endif /* LibCreate */ +# ifdef IncSubdir +# ifdef IncSubSubdir +BuildIncludes($(HEADERS),IncSubdir/IncSubSubdir,../..) +InstallMultipleFlags($(HEADERS),$(INCDIR)/IncSubdir/IncSubSubdir,$(INSTINCFLAGS)) +# else +BuildIncludes($(HEADERS),IncSubdir,..) +InstallMultipleFlags($(HEADERS),$(INCDIR)/IncSubdir,$(INSTINCFLAGS)) +# endif +# else +# ifndef CplusplusSource +# if !defined(LibHeaders) || LibHeaders +BuildIncludesTop($(HEADERS)) +InstallMultipleFlags($(HEADERS),$(INCDIR),$(INSTINCFLAGS)) +# endif +# endif +# endif + +NormalLintTarget($(SRCS)) +#endif /* defined(LibName) */ diff --git a/Xserver/config/cf/Mips.cf b/Xserver/config/cf/Mips.cf new file mode 100644 index 0000000..ad2184a --- /dev/null +++ b/Xserver/config/cf/Mips.cf @@ -0,0 +1,72 @@ +/* + * Set version numbers before making makefiles. + * + * X11r5 only builds using the berkeley libraries and compiler. Make + * sure your path includes /bsd43/bin before /bin/ or /usr/bin. + */ + +#ifndef OSName +#define OSName RISCOS +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 50 +#endif + +XCOMM platform: $XConsortium: Mips.cf /main/17 1996/09/28 16:06:25 rws $ +XCOMM operating system: OSName + +/*************************************************************************** + * Platform-specific parameters * + ***************************************************************************/ + +#define HasVoidSignalReturn NO +#define SetTtyGroup YES +#define UnalignedReferencesAllowed NO /* if arbitrary deref okay */ +#define HasBsearch NO + +#define MipsArchitecture +#define MakeEnv -e + +#define DefaultCCOptions -signed -systype bsd43 -Olimit 2000 -Wf,-XNd8400,-XNp12000 +#define StandardDefines -DMips -DBSD43 +#define PostIncDir /usr/include/bsd43 +#define ExtraLibraries -lmld +#define ArCmd ar clr +#define BootstrapCFlags -DMips +#define InstallCmd /etc/mipsinstall -f +#define MakeCmd make MakeEnv +#define DoRanlibCmd NO +#define AllocateLocalDefines -DINCLUDE_ALLOCA_H + +/*************************************************************************** + * * + * DEFINE PARAMETERS FOR BUILDING * + * * + ***************************************************************************/ + +#define XmipsServer YES + +/*************************************************************************** + * * + * OVERRIDE ANY CONFIGURATION PARAMETERS FROM Imake.tmpl * + * * + ***************************************************************************/ + +#define SpecialMalloc NO + +#define PrimaryScreenResolution 110 + +#define ConstructMFLAGS NO /* build MFLAGS from MAKEFLAGS */ + +#define DefaultUserPath /usr/net:/bin:/usr/bin:$(BINDIR):/usr/ucb +#define DefaultSystemPath /usr/net:/bin:/usr/bin:/etc:$(BINDIR):/usr/ucb + +/* mips manuals are really complicated. This certainly won't work. */ + +#define ManDirectoryRoot /man/cat +#define ManSourcePath $(MANPATH)/man + +#define InstKmemFlags -g sys -m 2711 diff --git a/Xserver/config/cf/Motif.rules b/Xserver/config/cf/Motif.rules new file mode 100644 index 0000000..dda9a8b --- /dev/null +++ b/Xserver/config/cf/Motif.rules @@ -0,0 +1,709 @@ +/* + * @OSF_COPYRIGHT@ + * COPYRIGHT NOTICE + * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. + * ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for + * the full copyright text. + * + * (c) Copyright 1996 Digital Equipment Corporation. + * (c) Copyright 1996 Hewlett-Packard Company. + * (c) Copyright 1996 International Business Machines Corp. + * (c) Copyright 1996 Sun Microsystems, Inc. + * (c) Copyright 1996 Novell, Inc. + * (c) Copyright 1996 FUJITSU LIMITED. + * (c) Copyright 1996 Hitachi. + */ +XCOMM $TOG: Motif.rules /main/3 1997/03/24 09:10:35 mgreess $ + +/* Note whether we are the top level project. */ +#ifndef SeenTopLevelProject +# define SeenTopLevelProject YES +# define MotifIsTopLevelProject YES +#else +# define MotifIsTopLevelProject NO +#endif + +/* Include the X11 project rules file. */ +#include + + +/* Use the in-tree Motif by default. */ +#ifndef UseInstalledMotif +# define UseInstalledMotif NO +#endif +#ifdef UseInstalled +# undef UseInstalledMotif +# define UseInstalledMotif YES +#endif + +#ifndef ImportMotif +# ifdef UseImports +# define ImportMotif YES +# else +# define ImportMotif NO +# endif +#endif +#if UseInstalledMotif +# undef ImportMotif +# define ImportMotif NO +#endif + +#ifndef MSimpleProgramTarget +#define MSimpleProgramTarget(program) @@\ +AllTarget(program) @@\ + @@\ +program: program.o $(DEPS) $(DEPLIBS) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ program.o $(LDOPTIONS) $(DEPS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean:: @@\ + $(RM) program +#endif + +#ifndef MSimpleUilTarget +#define MSimpleUilTarget(program) @@\ +MSimpleProgramTarget(program) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ + @@\ +MSimpleUidTarget(program) +#endif + +/* + * UILFLAGS contains site/vendor-specific flags + * defined by UilFlags, which supposed to be set in *.cf or + * site.def files. + * LOCAL_UILFLAGS(_n) contains client-specific uil flags set in Imakefile + */ + +#ifndef MSimpleUidTarget +#define MSimpleUidTarget(program) @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: program.uil $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MSimpleUidLocaleTarget +#define MSimpleUidLocaleTarget(program,locale) @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: program.uil $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(LIBDIR)/locale/uid) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_1 +#define MComplexUidTarget_1(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS1) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_1) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_2 +#define MComplexUidTarget_2(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS2) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_2) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_3 +#define MComplexUidTarget_3(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS3) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_3) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_4 +#define MComplexUidTarget_4(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS4) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_4) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_5 +#define MComplexUidTarget_5(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS5) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_5) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_6 +#define MComplexUidTarget_6(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS6) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_6) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_7 +#define MComplexUidTarget_7(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS7) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_7) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_8 +#define MComplexUidTarget_8(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS8) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_8) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_9 +#define MComplexUidTarget_9(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS9) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_9) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexUidTarget_10 +#define MComplexUidTarget_10(program) @@\ + @@\ +AllTarget(program.uid) @@\ + @@\ +program.uid: $(UILS10) $(DEPUIL) @@\ + RemoveTargetProgram($@) @@\ + $(CLIENTENVSETUP) $(UIL) $(UILFLAGS) $(LOCAL_UILFLAGS_10) -o $@ program.uil $(UIL_INCLUDES) @@\ + @@\ +InstallNonExecFile(program.uid,$(UIDDIR)) @@\ + @@\ +clean:: @@\ + $(RM) program.uid +#endif + +#ifndef MComplexProgramTarget +#define MComplexProgramTarget(program,locallib,syslib) @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +program: $(OBJS) $(DEPLIBS) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS),$(OBJS),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ + @@\ +install.man:: @@\ + @echo To install documentation for $(PROGRAM), consult the Release Notes @@\ + @echo and/or README file in the current directory. @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + $(RM) $(PROGRAM) +#endif + +#ifndef MComplexProgramTarget_1 +#define MComplexProgramTarget_1(program,locallib,syslib) @@\ + OBJS = $(OBJS1) $(OBJS2) $(OBJS3) @@\ + SRCS = $(SRCS1) $(SRCS2) $(SRCS3) @@\ + @@\ +AllTarget($(PROGRAMS)) @@\ + @@\ +program: $(OBJS1) $(DEPLIBS1) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS1) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS1),$(OBJS1),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ + @@\ +install.man:: @@\ + @echo To install documentation for $(PROGRAMS), consult the Release Notes @@\ + @echo and/or README file in the current directory. @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + $(RM) $(PROGRAMS) +#endif + +#ifndef MComplexProgramTarget_2 +#define MComplexProgramTarget_2(program,locallib,syslib) @@\ +program: $(OBJS2) $(DEPLIBS2) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS2) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS2),$(OBJS2),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_3 +#define MComplexProgramTarget_3(program,locallib,syslib) @@\ + PROGRAM_3 = program @@\ +program: $(OBJS3) $(DEPLIBS3) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS3) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS3),$(OBJS3),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_4 +#define MComplexProgramTarget_4(program,locallib,syslib) @@\ + PROGRAM_4 = program @@\ +program: $(OBJS4) $(DEPLIBS4) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS4) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS4),$(OBJS4),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_5 +#define MComplexProgramTarget_5(program,locallib,syslib) @@\ + PROGRAM_5 = program @@\ +program: $(OBJS5) $(DEPLIBS5) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS5) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS5),$(OBJS5),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_6 +#define MComplexProgramTarget_6(program,locallib,syslib) @@\ + PROGRAM_6 = program @@\ +program: $(OBJS6) $(DEPLIBS6) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS6) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS6),$(OBJS6),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_7 +#define MComplexProgramTarget_7(program,locallib,syslib) @@\ + PROGRAM_7 = program @@\ +program: $(OBJS7) $(DEPLIBS7) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS7) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS7),$(OBJS7),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_8 +#define MComplexProgramTarget_8(program,locallib,syslib) @@\ + PROGRAM_8 = program @@\ +program: $(OBJS8) $(DEPLIBS8) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS8) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS8),$(OBJS8),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifndef MComplexProgramTarget_9 +#define MComplexProgramTarget_9(program,locallib,syslib) @@\ + PROGRAM_9 = program @@\ +program: $(OBJS9) $(DEPLIBS9) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(LDOPTIONS) $(OBJS9) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS9),$(OBJS9),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + +#ifdef AUTOMATION +#ifndef TestPPTarget +#define TestPPTarget(root) @@\ +all:: root.Scr root.Dat @@\ + @@\ +root.Dat: root.dat @@\ + $(RM) root.Dat @@\ + $(COMMONPP) $(DEFINES) root.dat @@\ +root.Scr: root.scr @@\ + $(RM) root.Scr @@\ + $(COMMONPP) $(DEFINES) root.scr +#endif +#else +#ifndef TestPPTarget +#define TestPPTarget(root) @@\ +all:: root.Dat @@\ + @@\ +root.Dat: root.dat @@\ + $(RM) root.Dat @@\ + $(COMMONPP) $(DEFINES) root.dat +#endif +#endif + +#ifdef AUTOMATION +#ifndef TestPPTargetScr +#define TestPPTargetScr(root) @@\ +all:: root.Scr @@\ + @@\ +root.Scr: root.scr @@\ + $(RM) root.Scr @@\ + $(COMMONPP) $(DEFINES) root.scr +#endif +#else +#ifndef TestPPTargetScr +#define TestPPTargetScr(root) /**/ +#endif +#endif + +#ifdef AUTOMATION +#ifndef TestPPTargetDat +#define TestPPTargetDat(root) @@\ +all:: root.Dat @@\ + @@\ +root.Dat: root.dat @@\ + $(RM) root.Dat @@\ + $(COMMONPP) $(DEFINES) root.dat +#endif +#endif +#ifndef AUTOMATION +#ifndef TestPPTargetDat +#define TestPPTargetDat(root) @@\ +all:: root.Dat @@\ + @@\ +root.Dat: root.dat @@\ + $(RM) root.Dat @@\ + $(COMMONPP) $(DEFINES) root.dat +#endif +#endif + + +#ifndef NO_AUTOMATION +#ifndef RunTarget +#define RunTarget() @@\ +all:: RUN @@\ + @@\ +RUN: always @@\ + $(GENRUN) $(CURRENT_DIR) $(MTOP) $(DEFINES) @@\ + @@\ +always: @@\ + $(RM) RUN +#endif +#else +#ifdef UseVista +#ifndef RunTarget +#define RunTarget() @@\ +all:: RUN @@\ + @@\ +RUN: always @@\ + $(MANRUN) $(CURRENT_DIR) $(MTOP) $(DEFINES) @@\ + @@\ +always: @@\ + $(RM) RUN +#endif +#else +#ifdef UsePurify +#ifndef RunTarget +#define RunTarget() @@\ +all:: RUN @@\ + @@\ +RUN: always @@\ + $(MANRUN) $(CURRENT_DIR) $(MTOP) $(DEFINES) @@\ + @@\ +always: @@\ + $(RM) RUN +#endif +#else +#ifndef RunTarget +#define RunTarget() @@\ +all:: RUN @@\ + @@\ +RUN: always @@\ + @@\ +always: @@\ + +#endif +#endif +#endif +#endif +#ifdef UseVista +#ifndef VistaMapRule +#define VistaMapRule(targetmap,depend) @@\ +all:: targetmap @@\ + @@\ +targetmap: depend @@\ + $(RM) $(MTOP)/tests/Vista/targetmap @@\ + CATCMD *.M > $(MTOP)/tests/Vista/targetmap +#endif +#ifndef ComplexVistaMapRule +#define ComplexVistaMapRule(program,filelist) @@\ +all:: program.M @@\ + @@\ +program.M: filelist @@\ + $(RM) program.vista.tmpfile @@\ + touch program.vista.tmpfile @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; @@\ + @for i in filelist; do \ @@\ + cat `basename $$i .o`.M >> program.vista.tmpfile ; done @@\ + $(RM) program.M @@\ + $(MV) program.vista.tmpfile program.M @@\ + @@\ +clean:: @@\ + $(RM) *.M +#endif + +#endif + +/* Rule for making shadow trees. */ +#ifndef MakeShadowTree +#define MakeShadowTree(name,dirs) @@\ +all:: @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; @@\ + MakeDir(name) @@\ + @for i in dirs; \ @@\ + do if [ -d $$i/name ]; then \ @@\ + exit 0; else set -x; mkdir $$i/name; fi \ @@\ + done @@\ + @for i in dirs; \ @@\ + do if [ -r name/$$i ]; then \ @@\ + set +x; \ @@\ + else (set -x; $(LN) ../$$i/name name/$$i); fi \@@\ + done +#endif + +#ifdef BuildPlusPlus + +/* Rules for C++ */ + +/* + * "CPlusPlusObjectCompile" - compile fragment for a normal C++ object file +*/ +#ifndef CPlusPlusObjectCompile +#define CPlusPlusObjectCompile(options) $(RM) $@ @@\ + $(CPLUSPLUSCOM) -c $(CPLUSPLUSFLAGS) options $*.cxx +#endif + +#ifndef CPlusPlusObjectRule +#define CPlusPlusObjectRule() @@\ +.cxx.o: @@\ + CPlusPlusObjectCompile($(_NOOP_)) +#endif /* CPlusPlusObjectRule */ + +#ifndef MCPlusPlusSimpleProgramTarget +#define MCPlusPlusSimpleProgramTarget(program) @@\ +AllTarget(program) @@\ + @@\ +program: program.o $(DEPS) $(DEPLIBS) @@\ + RemoveTargetProgram($@) @@\ + $(CPLUSPLUSLINKCOM) -o $@ program.o $(LDOPTIONS) $(DEPS) $(LOCAL_LIBRARIES) $(CPLUSPLUSLIBS) $(LDLIBS) $(EXTRA_LOAD_FLAGS) @@\ + @@\ +clean:: @@\ + $(RM) program +#endif + +#ifndef MCPlusPlusComplexProgramTarget +#define MCPlusPlusComplexProgramTarget(program,locallib,syslib) @@\ + PROGRAM = program @@\ + @@\ +AllTarget(program) @@\ + @@\ +program: $(OBJS) $(DEPLIBS) @@\ + RemoveTargetProgram($@) @@\ + $(CPLUSPLUSLINKCOM) -o $@ $(LDOPTIONS) $(OBJS) locallib $(CPLUSPLUSLIBS) $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\ + @@\ +CenterProgramTarget(program,$(SRCS),$(OBJS),locallib,syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ + @@\ +install.man:: @@\ + @echo To install documentation for $(PROGRAM), consult the Release Notes @@\ + @echo and/or README file in the current directory. @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + $(RM) $(PROGRAM) +#endif + +#endif /* BuildPlusPlus */ + +/* Rules for message catalog building */ +#ifndef Real_MessageCatalogRule +#define Real_MessageCatalogRule(prefix) @@\ +prefix.cat Concat(prefix,MsgCatI.h): @@\ + $(RM) Concat(prefix,MsgCatI.h) prefix.cat $(MLOCSRC)/C/msg/prefix.msg @@\ + $(MKCATTOOL) Concat(prefix,MsgCatI.h) prefix.msg > $(MLOCSRC)/C/msg/prefix.msg @@\ + $(GENCAT) prefix.cat $(MLOCSRC)/C/msg/prefix.msg @@\ + @@\ +includes:: prefix.cat Concat(prefix,MsgCatI.h) @@\ + @@\ +depend:: prefix.cat Concat(prefix,MsgCatI.h) @@\ + @@\ +all:: prefix.cat @@\ + @@\ +clean:: @@\ + $(RM) prefix.cat Concat(prefix,MsgCatI.h) +#endif +#define Stub_MessageCatalogRule(prefix) /**/ + + +/* The X BuildLibDir is now an import, not an export. */ +#if UseImports || ImportX11 +# ifndef XBuildLibDir +# define XBuildLibDir $(TOP)/imports/x11/lib +# endif +#endif + + +/* Search the Motif ProjectRoot too if it is different. */ +#ifdef MotifProjectRoot +# define MUsrLibDirPath Concat(XUsrLibDirPath,:$(MPROJECTROOT)/lib) +#else +# define MUsrLibDirPath XUsrLibDirPath +#endif +#ifdef UsrLibDirPath +# undef UsrLibDirPath +#endif +#define UsrLibDirPath MUsrLibDirPath + +#if ImportMotif +# define MLdPreLibs -L$(MLIBSRC) +#elif defined(UseInstalledMotif) && defined(MotifProjectRoot) +# define MLdPreLibs -L$(MPROJECTROOT)/lib +#else +# define MLdPreLibs /**/ +#endif +#ifdef LdPreLibs +# undef LdPreLibs +#endif +#define LdPreLibs LdPreLib MLdPreLibs XLdPreLibs + +#ifdef LdPostLibs +# undef LdPostLibs +#endif +#ifdef MotifProjectRoot +# define MLdPostLibs -L$(MPROJECTROOT)/lib +#else +# define MLdPostLibs /**/ +#endif +#define LdPostLibs LdPostLib MLdPostLibs XLdPostLibs + +#ifdef TopIncludes +# undef TopIncludes +#endif +#define TopIncludes TopInclude $(TOP_MOTIF_INCLUDES) $(TOP_X_INCLUDES) + +#if UseInstalledMotif && defined(MotifProjectRoot) +# define MotifBuildLibPath $(MPROJECTROOT)/lib +#elif UseInstalledMotif +# define MotifBuildLibPath $(USRLIBDIR) +#elif ImportMotif +# define MotifBuildLibPath $(MLIBSRC) +#else +# define MotifBuildLibPath $(TOP)/exports/lib +#endif +#ifdef BuildLibPath +# undef BuildLibPath +#endif +#ifdef SystemBuildLibPath +# define BuildLibPath $(MOTIFENVLIBDIR):$(XENVLIBDIR):$(SYSTEMENVLIBDIR) +#else +# define BuildLibPath $(MOTIFENVLIBDIR):$(XENVLIBDIR) +#endif + +#ifndef MotifProjectDefines +# define MotifProjectDefines MotifDefines MessageCatalogDefines +#endif +#ifdef ProjectDefines +# undef ProjectDefines +#endif +#define ProjectDefines X11ProjectDefines MotifProjectDefines + +#ifndef MotifCplusplusProjectDefines +# define MotifCplusplusProjectDefines MotifProjectDefines +#endif +#ifdef CplusplusProjectDefines +# undef CplusplusProjectDefines +#endif +#define CplusplusProjectDefines \ + X11CplusplusProjectDefines MotifCplusplusProjectDefines diff --git a/Xserver/config/cf/Motif.tmpl b/Xserver/config/cf/Motif.tmpl new file mode 100644 index 0000000..e421300 --- /dev/null +++ b/Xserver/config/cf/Motif.tmpl @@ -0,0 +1,568 @@ +/* + * @OSF_COPYRIGHT@ + * COPYRIGHT NOTICE + * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. + * ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for + * the full copyright text. + * + * (c) Copyright 1996 Digital Equipment Corporation. + * (c) Copyright 1996 Hewlett-Packard Company. + * (c) Copyright 1996 International Business Machines Corp. + * (c) Copyright 1996 Sun Microsystems, Inc. + * (c) Copyright 1996 Novell, Inc. + * (c) Copyright 1996 FUJITSU LIMITED. + * (c) Copyright 1996 Hitachi. + */ +XCOMM $XConsortium: Motif.tmpl /main/2 1996/12/04 10:12:55 swick $ + +/* Include the X11 project template file. */ +#include + +#ifdef AUTOMATION +# ifndef Automation +# define Automation YES +# endif +#else +# define NO_AUTOMATION +#endif + +#ifdef USE_VISTACC +# ifndef UseVista +# define UseVista +# endif +# ifndef CATCMD +# define CATCMD cat +# endif +#endif + +#ifdef USE_PURIFY +# ifndef UsePurify +# define UsePurify +# endif +#endif + +#ifdef DEBUG_GEOMETRY +# ifndef DebugGeometry +# define DebugGeometry YES +# endif +#endif + + +#ifndef _MUse +# if UseInstalledMotif +# define _MUse(a,b) a +# else +# define _MUse(a,b) b +# endif +#endif + +#ifndef _MUseCat +# if (defined(__STDC__) && !defined(UnixCpp)) || defined(AnsiCpp) +# if UseInstalledMotif +# define _MUseCat(a,b,c) a##c +# else +# define _MUseCat(a,b,c) b##c +# endif +# else +# if UseInstalledMotif +# define _MUseCat(a,b,c) a/**/c +# else +# define _MUseCat(a,b,c) b/**/c +# endif +# endif +#endif + +#ifndef MTop +# if ImportMotif +# define MTop $(TOP)/imports/motif +# else +# define MTop $(TOP) +# endif +#endif + +#ifndef BuildDocDir +# define BuildDocDir $(BUILDINCROOT)/doc +#endif +#ifndef BuildLocDir +# define BuildLocDir $(BUILDINCROOT)/localized +#endif + +#ifndef MotifDefines +# define MotifDefines /**/ +#endif + +#ifndef XmDefines +# define XmDefines /**/ +#endif + +/* To compile without SHAPE extension, set this to -DNO_SHAPE */ +#ifndef MwmDefines +# define MwmDefines /**/ +#endif + +#ifndef UilFlags +# define UilFlags /**/ +#endif + +#ifndef TestDefines +# define TestDefines /**/ +#endif + +#ifndef AutoDefines +# if Automation +# define AutoDefines -DAUTOMATION +# else +# define AutoDefines /**/ +# endif +#endif + +#ifndef AutoIncludes +# if Automation +# define AutoIncludes -I$(AUTOSCRIPTSRC) +# else +# define AutoIncludes /**/ +# endif +#endif + +#ifdef UsePurify +# define PurifyFilesToClean *.pure_linkinfo *.pure_hardlink +#else +# define PurifyFilesToClean +#endif +#if Automation +# define TestExtraFilesToClean *.Dat *.Scr PurifyFilesToClean +#else +# define TestExtraFilesToClean *.Dat PurifyFilesToClean +#endif + +#ifndef UsrIncDir +# define UsrIncDir IncRoot +#endif + +/* Place to install .uid files */ +#ifndef UidDir +# define UidDir $(LIBDIR)/uid +#endif + +#ifndef XmExtraLibraries +# define XmExtraLibraries /**/ +#endif + +#ifndef YaccFlags +# define YaccFlags /**/ +#endif + +#define MotifSharedRev 2.1 + +#ifndef SharedLibXm +# define SharedLibXm HasSharedLibraries +#endif +#ifndef NormalLibXm +# define NormalLibXm (!SharedLibXm | ForceNormalLib) +#endif +#ifndef DebugLibXm +# define DebugLibXm NO +#endif +#ifndef ProfileLibXm +# define ProfileLibXm NO +#endif +#ifndef SharedXmRev +# define SharedXmRev MotifSharedRev +#endif + +#ifndef SharedLibMrm +# define SharedLibMrm HasSharedLibraries +#endif +#ifndef NormalLibMrm +# define NormalLibMrm (!SharedLibMrm | ForceNormalLib) +#endif +#ifndef DebugLibMrm +# define DebugLibMrm NO +#endif +#ifndef ProfileLibMrm +# define ProfileLibMrm NO +#endif +#ifndef SharedMrmRev +# define SharedMrmRev MotifSharedRev +#endif + +#ifndef SharedLibUil +# define SharedLibUil HasSharedLibraries +#endif +#ifndef NormalLibUil +# define NormalLibUil (!SharedLibUil | ForceNormalLib) +#endif +#ifndef DebugLibUil +# define DebugLibUil NO +#endif +#ifndef ProfileLibUil +# define ProfileLibUil NO +#endif +#ifndef SharedUilRev +# define SharedUilRev MotifSharedRev +#endif + +#ifndef SharedLibACommon +# define SharedLibACommon HasSharedLibraries +#endif +#ifndef NormalLibACommon +# define NormalLibACommon (!SharedLibACommon | ForceNormalLib) +#endif +#ifndef DebugLibACommon +# define DebugLibACommon NO +#endif +#ifndef ProfileLibACommon +# define ProfileLibACommon NO +#endif +#ifndef SharedACommonRev +# define SharedACommonRev MotifSharedRev +#endif + +#ifndef SharedLibScript +# define SharedLibScript HasSharedLibraries +#endif +#ifndef NormalLibScript +# define NormalLibScript (!SharedLibScript | ForceNormalLib) +#endif +#ifndef DebugLibScript +# define DebugLibScript NO +#endif +#ifndef ProfileLibScript +# define ProfileLibScript NO +#endif +#ifndef SharedScriptRev +# define SharedScriptRev MotifSharedRev +#endif + +#ifndef SharedLibUtil +# define SharedLibUtil HasSharedLibraries +#endif +#ifndef NormalLibUtil +# define NormalLibUtil (!SharedLibUtil | ForceNormalLib) +#endif +#ifndef DebugLibUtil +# define DebugLibUtil NO +#endif +#ifndef ProfileLibUtil +# define ProfileLibUtil NO +#endif +#ifndef SharedUtilRev +# define SharedUtilRev MotifSharedRev +#endif + +#ifndef SharedLibCreate +# define SharedLibCreate HasSharedLibraries +#endif +#ifndef NormalLibCreate +# define NormalLibCreate (!SharedLibCreate | ForceNormalLib) +#endif +#ifndef DebugLibCreate +# define DebugLibCreate NO +#endif +#ifndef ProfileLibCreate +# define ProfileLibCreate NO +#endif +#ifndef SharedCreateRev +# define SharedCreateRev MotifSharedRev +#endif + +#ifndef SharedLibVisual +# define SharedLibVisual HasSharedLibraries +#endif +#ifndef NormalLibVisual +# define NormalLibVisual (!SharedLibVisual | ForceNormalLib) +#endif +#ifndef DebugLibVisual +# define DebugLibVisual NO +#endif +#ifndef ProfileLibVisual +# define ProfileLibVisual NO +#endif +#ifndef SharedVisualRev +# define SharedVisualRev MotifSharedRev +#endif + +#ifndef SharedLibSynth +# define SharedLibSynth HasSharedLibraries +#endif +#ifndef NormalLibSynth +# define NormalLibSynth (!SharedLibSynth | ForceNormalLib) +#endif +#ifndef DebugLibSynth +# define DebugLibSynth NO +#endif +#ifndef ProfileLibSynth +# define ProfileLibSynth NO +#endif +#ifndef SharedSynthRev +# define SharedSynthRev MotifSharedRev +#endif + +#ifndef SharedLibMCommon +# define SharedLibMCommon HasSharedLibraries +#endif +#ifndef NormalLibMCommon +# define NormalLibMCommon (!SharedLibMCommon | ForceNormalLib) +#endif +#ifndef DebugLibMCommon +# define DebugLibMCommon NO +#endif +#ifndef ProfileLibMCommon +# define ProfileLibMCommon NO +#endif +#ifndef SharedMCommonRev +# define SharedMCommonRev MotifSharedRev +#endif + +#ifndef XmClientLibs +# define XmClientLibs $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(XMEXTRA_LIBS) +#endif +#ifndef XmClientDepLibs +# define XmClientDepLibs $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB) +#endif + +#ifndef MrmClientLibs +# define MrmClientLibs $(MRESOURCELIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(XMEXTRA_LIBS) +#endif +#ifndef MrmClientDepLibs +# define MrmClientDepLibs $(DEPMRESOURCELIB) $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB) +#endif + +#ifndef UilClientLibs +# define UilClientLibs $(UILLIB) $(MRESOURCELIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(XMEXTRA_LIBS) +#endif +#ifndef UilClientDepLibs +# define UilClientDepLibs $(DEPUILLIB) $(DEPMRESOURCELIB) $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB) +#endif + +#ifndef TestClientLibs +# define TestClientLibs $(PURIFYLIBS) $(TESTCOMLIB) \ + $(AUTOSCRIPTLIB) $(AUTOUTILLIB) \ + $(AUTOCREATELIB) $(AUTOVISUALLIB) $(AUTOSYNTHLIB) \ + $(XMLIB) $(TESTGEOLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) \ + $(AUTOEXTRALIBS) $(XMEXTRA_LIBS) +#endif +#ifndef TestUilClientLibs +# define TestUilClientLibs $(PURIFYLIBS) $(TESTUILCOMLIB) $(TESTCOMLIB) \ + $(AUTOSCRIPTLIB) $(AUTOUTILLIB) \ + $(AUTOCREATELIB) $(AUTOVISUALLIB) $(AUTOSYNTHLIB) \ + $(UILLIB) $(MRESOURCELIB) $(XMLIB) $(TESTGEOLIB) \ + $(XTOOLLIB) $(XPLIB) $(XLIB) $(AUTOEXTRALIBS) $(XMEXTRA_LIBS) +#endif +#ifndef TestClientDepLibs +# define TestClientDepLibs XmClientDepLibs +#endif +#ifndef TestUilClientDepLibs +# define TestUilClientDepLibs UilClientDepLibs +#endif + + + MTOP = MTop +TOP_MOTIF_INCLUDES = -I$(MINCLUDESRC) +#if defined(UseInstalled) || (UseInstalledMotif && UseInstalledX11) + UIL_INCLUDES = -I$(USRINCDIR)/uil +#else + UIL_INCLUDES = -I$(UILSRC) +#endif +#ifdef BuildLibPathVar + MOTIFENVLIBDIR = MotifBuildLibPath +#endif + +/* Message catalog usage */ +#ifndef GencatCmd +# define GencatCmd gencat +#endif +#ifndef GencatFlags +# define GencatFlags /**/ +#endif +#if defined(NoMessageCatalog) +# define BuildMessageCatalog NO +# define MessageCatalogDefines -DNO_MESSAGE_CATALOG +#else +# define BuildMessageCatalog YES +# define MessageCatalogDefines /**/ +#endif +#ifndef MessageCatalogRule +# if BuildMessageCatalog +# define MessageCatalogRule(prefix) Real_MessageCatalogRule(prefix) +# else +# define MessageCatalogRule(prefix) Stub_MessageCatalogRule(prefix) +# endif +#endif + + USRINCDIR = UsrIncDir + UIDDIR = UidDir + TESTSRC = $(MTOP)/tests + TESTLIB = $(TESTSRC)/lib + GENERALSRCLIB = $(TESTSRC)/General/lib + GENERALSRCBIN = $(TESTSRC)/General/bin + MANUALSRCLIB = $(TESTSRC)/Manual/lib + MANUALSRCBIN = $(TESTSRC)/Manual/bin + AUTOSRCLIB = $(TESTSRC)/Auto/lib + AUTOSRCBIN = $(TESTSRC)/Auto/bin + COMMONPP = $(GENERALSRCBIN)/Commonpp + GENRUN = $(GENERALSRCBIN)/Genrun + MANRUN = $(GENERALSRCBIN)/Manrun +#ifdef DebugLib + TESTMALLOCSRC = $(GENERALSRCLIB)/Malloc +#endif +#ifdef DebugGeometry + TESTGEOSRC = $(TESTLIB)/Geometry +#endif +#ifdef Automation + TESTCOMSRC = $(AUTOSRCLIB)/Common + AUTOSCRIPTSRC = $(AUTOSRCLIB)/Script + AUTOSYNTHSRC = $(AUTOSRCLIB)/Synth + AUTOCREATESRC = $(AUTOSRCLIB)/Create + AUTOVISUALSRC = $(AUTOSRCLIB)/Visual + AUTOUTILSRC = $(AUTOSRCLIB)/Util + AUTOEXTRALIBS = -ll -ly -lm +#else + TESTCOMSRC = $(MANUALSRCLIB)/Common +#endif + + BUILDDOCDIR = BuildDocDir + BUILDLOCDIR = BuildLocDir + +/* MTOOLKITSRC should be removed */ + MTOOLKITSRC = $(TOOLKITSRC) +#if ImportMotif || UseInstalledMotif + MINCLUDESRC = $(MTOP)/include + MDOCSRC = $(MTOP)/doc + MLOCSRC = $(MTOP)/localized +#else + MINCLUDESRC = $(MTOP)/exports/include + MLOCSRC = $(MTOP)/exports/localized +#endif + MLIBSRC = $(MTOP)/lib + MCLIENTSRC = $(MTOP)/clients + MDEMOSRC = $(MTOP)/demos + MWIDGETSRC = $(MLIBSRC)/Xm + MRESOURCESRC = $(MLIBSRC)/Mrm + UILSRC = $(MCLIENTSRC)/uil +#ifdef MotifProjectRoot + MPROJECTROOT = MotifProjectRoot +#endif + + UIL = _MUse(uil,$(UILSRC)/uil) + DEPUIL = _MUseCat($(BINDIR),$(UILSRC),/uil) + + XMEXTRA_LIBS = XmExtraLibraries + +/* These libraries use UseInstalledMotif instead of UseInstalled. */ +#undef _Use +#undef _UseCat +#define _Use _MUse +#define _UseCat _MUseCat + +#ifndef MBuildLibDir +# define MBuildLibDir BuildLibDir +#endif + +#if SharedLibXm +SharedLibReferences(XM,Xm,$(MWIDGETSRC),SOXMREV,SharedXmRev) +#else +ProjectUnsharedLibReferences(XM,Xm,$(MWIDGETSRC),MBuildLibDir) +#endif + +#if SharedLibMrm +SharedLibReferences(MRESOURCE,Mrm,$(MRESOURCESRC),SOMRMREV,SharedMrmRev) +#else +ProjectUnsharedLibReferences(MRESOURCE,Mrm,$(MRESOURCESRC),MBuildLibDir) +#endif + +#if SharedLibUil +SharedLibReferences(UIL,Uil,$(UILSRC),SOUILREV,SharedUilRev) +#else +ProjectUnsharedLibReferences(UIL,Uil,$(UILSRC),MBuildLibDir) +#endif + +#ifdef DebugGeometry +ProjectUnsharedLibReferences(TESTGEO,XtGeo,$(TESTGEOSRC),MBuildLibDir) +#endif + +#if Automation + +# if SharedLibACommon +SharedLibReferences(TESTCOM,ACommon,$(TESTCOMSRC),SOACOMMONREV,SharedACommonRev) +# else +ProjectUnsharedLibReferences(TESTCOM,ACommon,$(TESTCOMSRC),MBuildLibDir) +# endif + +TESTUILCOMLIB = $(TESTCOMSRC)/libACommonUil.a + +# if SharedLibScript +SharedLibReferences(AUTOSCRIPT,Script,$(AUTOSCRIPTSRC),SOSCRIPTREV,SharedScriptRev) +# else +ProjectUnsharedLibReferences(AUTOSCRIPT,Script,$(AUTOSCRIPTSRC),MBuildLibDir) +# endif + +# if SharedLibSynth +SharedLibReferences(AUTOSYNTH,Synth,$(AUTOSYNTHSRC),SOSYNTHREV,SharedSynthRev) +# else +ProjectUnsharedLibReferences(AUTOSYNTH,Synth,$(AUTOSYNTHSRC),MBuildLibDir) +# endif + +# if SharedLibCreate +SharedLibReferences(AUTOCREATE,Create,$(AUTOCREATESRC),SOCREATEREV,SharedCreateRev) +# else +ProjectUnsharedLibReferences(AUTOCREATE,Create,$(AUTOCREATESRC),MBuildLibDir) +# endif + +# if SharedLibVisual +SharedLibReferences(AUTOVISUAL,Visual,$(AUTOVISUALSRC),SOVISUALREV,SharedVisualRev) +# else +ProjectUnsharedLibReferences(AUTOVISUAL,Visual,$(AUTOVISUALSRC),MBuildLibDir) +# endif + +# if SharedLibUtil +SharedLibReferences(AUTOUTIL,Util,$(AUTOUTILSRC),SOUTILREV,SharedUtilRev) +# else +ProjectUnsharedLibReferences(AUTOUTIL,Util,$(AUTOUTILSRC),MBuildLibDir) +# endif + +#else /* Manual */ + +# if SharedLibMCommon +SharedLibReferences(TESTCOM,MCommon,$(TESTCOMSRC),SOMCOMMONREV,SharedMCommonRev) +# else +ProjectUnsharedLibReferences(TESTCOM,MCommon,$(TESTCOMSRC),MBuildLibDir) +# endif +TESTUILCOMLIB = $(TESTCOMSRC)/libMCommonUil.a + +#endif /* Automation */ + + +/* Revert to the normal library rules. */ +#undef _Use +#undef _UseCat +#define _Use _XUse +#define _UseCat _XUseCat + + +#ifdef UsePurify + PURIFYLIBS = $(PURIFYHOME)/purify_stubs.a +#endif + LINTMRESOURCE = $(MRESOURCESRC)/libMrm.a +LINTXMWIDGETLIB = $(MWIDGETSRC)/llib-l/Xm.ln + LINTXMTOOL = $(MTOOLKITSRC)/llib-lXt.ln + LINTUILLIB = $(UILSRC)/llib-lUil.ln + + YACCFLAGS = YaccFlags + UILFLAGS = UilFlags + GENCATFLAGS = GencatFlags + GENCAT = GencatCmd $(GENCATFLAGS) + MKCATTOOL = $(MLOCSRC)/util/mkcatdefs + + RM_CMD = $(RM) FilesToClean ExtraFilesToClean TestExtraFilesToClean + +#if NeedDefaultDepLibs +# if HasSharedLibraries || defined(UseInstalled) + DEPLIBS = $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB) +# else + DEPLIBS = $(LOCAL_LIBRARIES) +# endif + DEPLIBS1 = $(DEPLIBS) + DEPLIBS2 = $(DEPLIBS) + DEPLIBS3 = $(DEPLIBS) +#endif /* NeedDefaultDepLibs */ diff --git a/Xserver/config/cf/NetBSD.cf b/Xserver/config/cf/NetBSD.cf new file mode 100644 index 0000000..cf64c76 --- /dev/null +++ b/Xserver/config/cf/NetBSD.cf @@ -0,0 +1,377 @@ +XCOMM platform: $XConsortium: NetBSD.cf /main/16 1996/10/31 14:47:14 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/NetBSD.cf,v 3.49.2.9 1997/07/26 06:30:39 dawes Exp $ + + +#ifndef OSName +#define OSName DefaultOSName OSBinaryType +#endif +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif + + +#ifndef OSVendor +#define OSVendor /**/ +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +/* + * C library features + */ +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) +# define HasPoll YES +#endif +#define HasNdbm YES +#define HasPutenv YES +#define HasSnprintf YES +#define HasBSD44Sockets YES +#define Malloc0ReturnsNull NO +#define SetTtyGroup YES +#define DBMLibrary /**/ +#ifndef HasLibCrypt +# define HasLibCrypt YES +#endif +#ifndef HasShm +# if OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2 +/* + * Shm memory was removed in 0.9B because it was encumbered. + * A free version was added in 0.9C + */ +# define HasShm NO +# else +# define HasShm YES +# endif +#endif +#define HasWChar32 YES +/* + * There's a bug in NetBSD 1.0, 1.1 and 1.2 dlsym() + */ +#if ((OSMajorVersion == 1 && OSMinorVersion < 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion < 2)) +# define HasDlsymBug YES +#endif +/* Mkstemp is there since 1.2 (at least) */ +#if (!(OSMajorVersion == 0 || \ + (OSMajorVersion == 1 && OSMinorVersion < 2))) +#define HasMkstemp YES +#endif +/* + * Compiler Features + */ +#undef HasGcc +#define HasGcc YES +#define HasGcc2 YES +#ifndef HasGcc2ForCplusplus +#define HasGcc2ForCplusplus YES +#endif +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES + +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#define MkdirHierCmd mkdir -p + +#define CppCmd /usr/libexec/cpp +#define StandardCppDefines -traditional +#define PreProcessCmd CppCmd +#define PreIncDir /usr/include + +#undef CcCmd +#define CcCmd gcc +#if defined(UseInstalled) && (!defined(XF86LinkKit) || !XF86LinkKit) +#define DefaultCCOptions /**/ +#else +#define DefaultCCOptions -ansi -Dasm=__asm +#endif + +#define GccGasOption -DGCCUSESGAS +#define AsmDefines -DUSE_GAS + +/* UseElfFormat defaults to YES if __ELF__ set */ +#ifndef UseElfFormat +# ifdef __ELF__ +# undef __ELF__ /* other imake files shouldn't care */ +# define UseElfFormat YES +# else +# define UseElfFormat NO +# endif +#endif + +/* + * Dynamic loading supported starting in 1.0 on a.out platforms, + * and on all ELF platforms. + * + * XXX May not be correct on NetBSD/pmax (ELF, but might not have + * working shared libs). + */ +#if ((OSMajorVersion > 0) && \ + !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \ + UseElfFormat +# ifndef BuildDynamicLoading +# define BuildDynamicLoading YES +# endif +#endif + +#if UseElfFormat +#define DlLibrary -rdynamic /* no -ldl yet */ +#else +#define DlLibrary /**/ +#endif + +#ifdef i386Architecture +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# if OSMajorVersion < 1 +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DXNO_SYSCONF +# else +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +# endif +# if OSMajorVersion == 1 && OSMinorVersion >= 1 || OSMajorVersion >= 2 +# define ServerExtraSysLibs -li386 DlLibrary +# endif +#else +# define OptimizedCDebugFlags -O2 +# if defined(SparcArchitecture) || defined(AlphaArchitecture) +# define ServerOSDefines -DDDXOSINIT +# else +# define ServerOSDefines /**/ +# endif +# if BuildDynamicLoading +# define ServerExtraSysLibs DlLibrary +# else +# define ServerExtraSysLibs /**/ +# endif +#endif +#ifdef i386Architecture +# define ServerExtraDefines GccGasOption XFree86ServerDefines +# ifndef XFree86ConsoleDefines +# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT +# endif +#else +# if defined(AlphaArchitecture) +# define ServerExtraDefines GccGasOption -D_XSERVER64 +# else +# define ServerExtraDefines GccGasOption +# endif +#endif + +#define StandardDefines -DCSRG_BASED +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + +#ifndef ExtraLibraries +#define ExtraLibraries /**/ +#endif +#ifndef UseGnuMalloc +# define UseGnuMalloc YES +#endif +#ifndef GnuMallocLibrary +#define GnuMallocLibrary -lgnumalloc +#endif + +#if ((OSMajorVersion > 1) || \ + (OSMajorVersion == 1 && OSMinorVersion > 2) || \ + (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1)) +#ifndef HasZlib +#define HasZlib YES +#endif +#endif + +#define AdmDir /var/log + +/* + * Make & install Features + */ +#define HasBsdMake YES +#define StripInstalledPrograms YES +#define CompressAllFonts YES +#define GzipFontCompression YES +#define DefaultUserPath /bin:/usr/bin:/usr/local/bin:$(BINDIR) +#define DefaultSystemPath /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR) + +#ifdef InstallCmd +# undef InstallCmd +# define InstallCmd /usr/bin/install +#endif + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.core +#endif + +/* + * Documentation formatting + */ +#define NeqnCmd neqn -Tlatin1 +#define NroffCmd nroff -Tlatin1 +#define EqnCmd eqn -Tps +#define TroffCmd groff -Tps + +/* + * To use the NetBSD Aperture driver + */ +#if defined(i386Architecture) +#ifndef HasNetBSDApertureDriver +#define HasNetBSDApertureDriver YES +#endif +#endif + +/* + * ForceSubdirs - force make to build subdirectories + * + * For BSD 4.4 make + */ +#define ForceSubdirs(dirs) @@\ +dirs: .EXEC @@\ + @cd $@ ; echo "making all in $(CURRENT_DIR)/$@..."; \ @@\ + $(MAKE) $(MFLAGS) PassCDebugFlags all @@\ + @@\ +.EXEC: + +XCOMM Man pages need to be formatted when installed, so override the default +XCOMM imake rules. + +#define ManSuffix 1 +#define FileManSuffix 5 +#define ManSourcePath $(MANPATH)/cat + +#define InstallManPageLong(file,destdir,dest) @@\ +all:: file.0 @@\ + @@\ +file.0:: file.man @@\ + @if [ -f file.man ]; \ @@\ + then \ @@\ + cat file.man | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.man; \ @@\ + cp /tmp/$$$$.man file.0; \ @@\ + $(RM) /tmp/$$$$.man; \ @@\ + fi @@\ + @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + -@if [ -f file.0 ]; \ @@\ + then \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\ + fi + +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ + InstallManPageLong(file,destdir,dest) + +#define InstallMultipleManSuffix(list,dest,suff) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.suff; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$$$.suff $(DESTDIR)dest/$$i.0; \ @@\ + $(RM) /tmp/$$$$.suff); \ @@\ + done + +#define InstallMultipleMan(list,dest) @@\ + InstallMultipleManSuffix(list,dest,man) + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in aliases; do \ @@\ + (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.0;\ @@\ + (cd $(DESTDIR)/destdir; $(LN) file.0 $$i.0);\ @@\ + ); \ @@\ + done + +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) + +/* + * Shared libraries supported starting in 1.0 on a.out platforms, + * and on all ELF platforms. + * + * XXX May not be correct on NetBSD/pmax (ELF, but might not have + * working shared libs). + */ +#if ((OSMajorVersion > 0) && \ + !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \ + UseElfFormat +# ifndef HasSharedLibraries +# define HasSharedLibraries YES +# endif +#endif + +#ifndef OSBinaryType +#if UseElfFormat +#define OSBinaryType [ELF] +#else +#define OSBinaryType /**/ +#endif +#endif + +#ifndef HasSharedLibraries +#define HasSharedLibraries NO +#endif + +#if HasSharedLibraries +#include +#endif /* HasSharedLibraries */ + +#ifdef i386Architecture +# include +#endif + +/* + * Definitions for the SUN server on NetBSD/sparc + */ +#ifdef SparcArchitecture +#ifndef Xsun24Server +#define Xsun24Server NO +#endif +#ifndef XsunServer +#define XsunServer YES +#endif +#ifndef XsunMonoServer +#define XsunMonoServer YES +#endif +#ifndef BuildScreenSaverLibrary +#define BuildScreenSaverLibrary YES +#endif +/* + * XFree86 uses its own (more portable) database routines to speed up + * the RGB database lookups + * However, if you want to use ndbm anyway, you can set that to NO in + * site.def + */ +#ifndef UseRgbTxt +#define UseRgbTxt YES +#endif +#endif + +/* + * Definition for compiling on MIPS machines + */ +#ifdef MipsArchitecture +#define PositionIndependentCFlags +#define SharedLibraryLoadFlags -x -shared --whole-archive -soname `echo $@ | +sed 's/\.[0-9]*$$//'` +#define SharedXtReqs $(XLIBONLY) $(SMLIB) $(ICELIB) +#define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XONLYLIB) $(EXTENSIONLIB) +#endif + +/* + * Definition for compiling on Alpha machines + */ +#ifdef AlphaArchitecture +#define BuildServer NO +#endif diff --git a/Xserver/config/cf/Oki.cf b/Xserver/config/cf/Oki.cf new file mode 100644 index 0000000..d51766b --- /dev/null +++ b/Xserver/config/cf/Oki.cf @@ -0,0 +1,30 @@ +XCOMM platform: $XConsortium: Oki.cf /main/16 1996/09/28 16:06:53 rws $ + +#ifndef OSName +#define OSName Unix System V/860 Release 4.0 Version 3 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 3 +#endif + +#define BootstrapCFlags -DOki +#define SystemV4 YES +#define HasLdRunPath YES +#define ConnectionFlags -DTCPCONN -DUNIXCONN -DLOCALCONN +#define SetTtyGroup YES +#define HasPutenv YES +#define HasPoll YES +#define PatheticCpp YES +#define CcCmd /usr/bin/cc +#define StandardDefines -DSVR4 -Di860 +#define DefaultCCOptions -Xa +#define BuildServer NO +#define ToolkitStringsABIOptions -intelabi +#include diff --git a/Xserver/config/cf/OpenBSD.cf b/Xserver/config/cf/OpenBSD.cf new file mode 100644 index 0000000..c55eb40 --- /dev/null +++ b/Xserver/config/cf/OpenBSD.cf @@ -0,0 +1,482 @@ +XCOMM platform: $XFree86: xc/config/cf/OpenBSD.cf,v 3.1.2.11 1998/02/15 16:08:33 hohndel Exp $ +XCOMM $OpenBSD: OpenBSD.cf,v 1.11 1997/12/09 03:03:48 gene Exp $ + +#ifndef OSName +#define OSName DefaultOSName OSBinaryType +#endif +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif + +#ifndef OSVendor +#define OSVendor /**/ +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +/* + * C library features + */ +#define HasPoll YES +#define HasNdbm YES +#define HasPutenv YES +#define HasSnprintf YES +#define HasBSD44Sockets YES +#define Malloc0ReturnsNull NO +#define SetTtyGroup YES +#define DBMLibrary /**/ +#define HasLibCrypt NO +#define HasShm YES +#define HasWChar32 YES +#define HasMkstemp YES + +/* + * Compiler Features + */ +#undef HasGcc +#define HasGcc YES +#define HasGcc2 YES +#ifndef HasGcc2ForCplusplus +#define HasGcc2ForCplusplus YES +#endif +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES + + +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#define MkdirHierCmd mkdir -p + +#define CppCmd /usr/libexec/cpp +#define StandardCppDefines -traditional +#define PreProcessCmd CppCmd +#define PreIncDir DefaultGccIncludeDir + +#undef CcCmd +#define CcCmd gcc +#if defined(UseInstalled) && (!defined(XF86LinkKit) || !XF86LinkKit) +#define DefaultCCOptions /**/ +#else +#define DefaultCCOptions -ansi -Dasm=__asm +#endif + +#define GccGasOption -DGCCUSESGAS +#define AsmDefines -DUSE_GAS + + +#ifdef i386Architecture +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +# define ServerExtraSysLibs -li386 +#else +# define OptimizedCDebugFlags -O2 +# if defined(SparcArchitecture) || defined(AlphaArchitecture) || defined(AmigaArchitecture) || defined(Sun3Architecture) +# define ServerOSDefines -DDDXOSINIT +# else +# define ServerOSDefines /**/ +# endif +#endif +#if defined(i386Architecture) || defined(ArcArchitecture) +# define ServerExtraDefines GccGasOption XFree86ServerDefines +# ifndef XFree86ConsoleDefines +# if defined(ArcArchitecture) +# define XFree86ConsoleDefines -DPCCONS_SUPPORT +# else +# define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT +# endif +# endif +#else +# if defined(AlphaArchitecture) +# define ServerExtraDefines GccGasOption -D_XSERVER64 +# else +# if !defined(Sun3Architecture) +# define ServerExtraDefines GccGasOption +# endif +# endif +#endif + +#define StandardDefines -DCSRG_BASED +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + + +#ifndef ExtraLibraries +#define ExtraLibraries /**/ +#endif +#define UseGnuMalloc NO + +#define HasZlib YES + +#define AdmDir /var/log + +/* + * Make & install Features + */ + +#define HasBsdMake YES + +#define StripInstalledPrograms YES +#define CompressAllFonts YES +#define GzipFontCompression YES +#define DefaultUserPath /bin:/usr/bin:/usr/local/bin:$(BINDIR) +#define DefaultSystemPath /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR) + +#ifdef InstallCmd +# undef InstallCmd +# define InstallCmd /usr/bin/install +#endif + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.core +#endif + +/* + * Documentation formatting + */ +#define NeqnCmd neqn -Tlatin1 +#define NroffCmd nroff -Tlatin1 +#define EqnCmd eqn -Tps +#define TroffCmd groff -Tps + +/* + * To use the NetBSD Aperture driver + */ +#if defined(i386Architecture) +#ifndef HasNetBSDApertureDriver +#define HasNetBSDApertureDriver YES +#endif +#endif + + + +XCOMM Man pages need to be formatted when installed, so override the default +XCOMM imake rules. + +#define ManSuffix 1 +#define FileManSuffix 5 +#define ManSourcePath $(MANPATH)/cat + +#define InstallManPageLong(file,destdir,dest) @@\ +all:: file.0 @@\ + @@\ +file.0:: file.man @@\ + @if [ -f file.man ]; \ @@\ + then \ @@\ + cat file.man | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.man; \ @@\ + cp /tmp/$$$$.man file.0; \ @@\ + $(RM) /tmp/$$$$.man; \ @@\ + fi @@\ + @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + -@if [ -f file.0 ]; \ @@\ + then \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\ + fi + +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ + InstallManPageLong(file,destdir,dest) + +#define InstallMultipleManSuffix(list,dest,suff) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.suff; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$$$.suff $(DESTDIR)dest/$$i.0; \ @@\ + $(RM) /tmp/$$$$.suff); \ @@\ + done + +#define InstallMultipleMan(list,dest) @@\ + InstallMultipleManSuffix(list,dest,man) + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in aliases; do \ @@\ + (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.0;\ @@\ + (cd $(DESTDIR)/destdir; $(LN) file.0 $$i.0);\ @@\ + ); \ @@\ + done + +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) + + + +/* + * Architecture specific sections - put all architecture dependent + * options and setting here into the correct section + */ + +/* + * Definitions for the alpha architecture + */ +#ifdef AlphaArchitecture + +# define XF86Contrib +# include +# define BuildServer NO +# define XnestServer NO +# define XVirtualFramebufferServer NO + + /* + * For the current ECOFF system + */ +# define HasSharedLibraries NO +# define UseElfFormat NO +# define BuildDynamicLoading NO + /* + * For the upcoming ELF system + */ +# if 0 /* NOT YET */ +# define HasSharedLibraries YES +# define UseElfFormat YES +# define BuildDynamicLoading YES +# endif + +#endif /* AlphaArchitecture */ + + +/* + * Definitions for the i386 architecture + */ +#ifdef i386Architecture + +/* + * For safety reasons, don't install the X server setuid on OpenBSD + * use xdm instead + */ +# define InstallXserverSetUID NO + +# define BuildDynamicLoading YES +# include + +#endif /* i386Architecture */ + + +/* + * Definitions for the m68k architecture (currently amiga, hp300, + * mac68k, mvme68k, sun3) + */ +#ifdef Mc68020Architecture + +/* + * Function CSE makes gas -k not recognize external function calls as lazily + * resolvable symbols, thus sometimes making ld.so report undefined symbol + * errors on symbols found in shared library members that would never be + * called. Ask niklas@openbsd.org for details. + */ +# define PositionIndependentCFlags -fpic -fno-function-cse + +#endif /* Mc68020Architecture */ + + +/* + * Definitions for the amiga architecture + */ +#ifdef AmigaArchitecture + +# define XF86Contrib +# include +# define BuildServer NO + +#endif /* AmigaArchitecture */ + + +/* + * Definitions for the hp300 architecture + */ +#ifdef Hp300Architecture + +# include +# define BuildServer NO + +#endif /* Hp300Architecture */ + + +/* + * Definitions for the mac68k architecture + */ +#ifdef mac68kArchitecture + +# include +# define BuildServer NO + +#endif /* Mac68kArchitecture */ + + +/* + * Definitions for the mvme68k architecture + */ +#ifdef Mvme68kArchitecture + +# include +# define BuildServer NO + +#endif /* Mvme68kArchitecture */ + + +/* + * Definitions for the sun3 architecture + */ +#ifdef Sun3Architecture + +# include + +# define OptimizedCDebugFlags -O2 +# define ServerOSDefines -DDDXOSINIT +# define BootstrapCFlags -Dsun3 +# define UnalignedReferencesAllowed YES /* changes _XtCopyArgs() */ +/* Note: -ansi turns off -Dmc68000 */ +# define ServerExtraDefines GccGasOption -Dmc68000 -Dmc68020 + +# ifndef Xsun24Server +# define Xsun24Server NO +# endif +# ifndef XsunServer +# define XsunServer NO +# endif +# ifndef XsunMonoServer +# define XsunMonoServer YES +# endif + +# ifndef BuildXKB +# define BuildXKB NO +# endif + +# ifndef BuildXKBlib +# define BuildXKBlib NO +# endif + +# ifndef BuildPexExt +# define BuildPexExt (XsunServer || Xsun24Server) +# endif + +#endif /* Sun3Architecture */ + + +/* + * Definitions for the mips architecture (currently arc, pmax) + */ +#ifdef MipsArchitecture + + /* + * Mips ELF shared libs need some special handling. + */ +# define PositionIndependentCFlags +# define SharedLibraryLoadFlags -x -shared --whole-archive -soname `echo $@ | sed 's/\.[0-9]*$$//'` +# define SharedXtReqs -L$(BUILDLIBDIR) $(XLIBONLY) $(SMLIB) $(ICELIB) +# define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XONLYLIB) $(EXTENSIONLIB) + +#endif /* MipsArchitecture */ + + +/* + * Definitions for the arc architecture + */ +#ifdef ArcArchitecture + +# include + +#endif /* ArcArchitecture */ + + +/* + * Definitions for the pmax architecture + */ +#ifdef PmaxArchitecture + +# include +# define BuildServer NO + +#endif /* PmaxArchitecture */ + + +/* + * Definitions for the sparc architecture + */ +#ifdef SparcArchitecture + +# include + +# ifndef Xsun24Server +# define Xsun24Server YES +# endif +# ifndef XsunServer +# define XsunServer YES +# endif +# ifndef XsunMonoServer +# define XsunMonoServer YES +# endif + +#define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT + +# ifndef BuildPexExt +# define BuildPexExt (XsunServer || Xsun24Server) +# endif +#endif /* SparcArchitecture */ + + +/* End or architecture specific section */ + +/* + * Generic settings for all architectures + */ + +#ifndef XVirtualFramebufferServer +# undef BuildServer +# define BuildServer YES +# define XVirtualFramebufferServer YES +#endif + +#ifndef XnestServer +# undef BuildServer +# define BuildServer YES +# define XnestServer YES +#endif + +#ifndef BuildScreenSaverLibrary +# define BuildScreenSaverLibrary YES +#endif + +#ifndef ForceNormalLib +# define ForceNormalLib YES +#endif + +#ifndef BuildDynamicLoading +# define BuildDynamicLoading NO +#endif + +/* + * XFree86 uses its own (more portable) database routines to speed up + * the RGB database lookups + * However, if you want to use ndbm anyway, you can set that to NO in + * site.def + */ +#ifndef UseRgbTxt +# define UseRgbTxt YES +#endif + +#ifndef OSBinaryType +# if UseElfFormat +# define OSBinaryType [ELF] +# else +# define OSBinaryType /**/ +# endif +#endif + +/* This must come last */ +#include + diff --git a/Xserver/config/cf/README b/Xserver/config/cf/README new file mode 100644 index 0000000..b16bd85 --- /dev/null +++ b/Xserver/config/cf/README @@ -0,0 +1,681 @@ +$TOG: README /main/66 1997/05/20 10:05:36 kaleb $ + + + + +$XFree86: xc/config/cf/README,v 1.1.1.9.2.3 1998/01/23 12:35:07 dawes Exp $ + +The easiest way to write an Imakefile is to find another one that does +something similar and copy/modify it! + +To change any of these variables, edit the site.def file. + +Imake.tmpl provides defaults for the following variables: + + AlternateIncRoot compiler needs -I to find project includes + AlternateUsrLibDir linker needs -L to find project libraries + ArCmd command used to create libraries + ArCmdBase program name part of ArCmd + ArAddCmd flags to have ArCmdBase add files to a library + ArExtCmd flags to have ArCmdBase extract files + AsCmd command used to run assembler + BootstrapCFlags missing cpp symbols needed to get started + BourneShell command used to run Bourne Shell + CCsuf suffix that C++ source files have + CURDIR current directory relative to top of sources + CcCmd command to run C compiler + CompressCmd command to run compress program + GzipCmd command to run gzip program + ConstructMFLAGS System V option to set MFLAGS make variable + CpCmd command to copy one file to another + CplusplusCmd command to run C++ compiler + CplusplusFilt command to run C++ name demangler + CplusplusYaccCmd command to produce C++ source from yacc source + CppCmd command to run C preprocessor + CrossCompiling cross compiling? (not fully supported) + DebuggableCDebugFlags C compiler -I's and -D's to turn on debug info + DefaultCCOptions default special C compiler options + DefaultCDebugFlags debug/optimize flags for programs + DefaultUsrBin program directory used even if PATH not set + DependFlags extra makedepend flags + DoRanlibCmd boolean for system uses ranlib + EqnCmd command used for eqn + ExecableScripts boolean for systems that can exec() #!/bin/sh + ExpandManNames boolean to expand man pages names to long form + ExtraFilesToClean extra files to remove on make clean + ExtraLibraries system-specific libraries need to link + ExtraLoadFlags system-specific loader flags + FileManSuffix man suffix for file format pages + FilesToClean files to delete in make clean + FortranCmd command to run Fortran compiler + FortranDebugFlags flags for Fortran debug info + FortranFlags Fortran compiler flags + HasBSD44Sockets boolean for system has BSD4.4 sockets + HasBsdMake use the 4.4BSD variant of the make program? + HasBsearch boolean for libc has bsearch() + HasBrokenCCForLink boolean for brain damaged cc driver + HasCenterLineC boolean for system has CenterLine C compiler + HasCenterLineCplusplus boolean for system has CenterLine C++ compiler + HasClearmake use Clearcase's clearmake make program? + HasCodeCenter boolean for system has CodeCenter + HasCplusplus system has a C++ compiler? + HasDECnet system has DECnet? + HasFortran boolean for system has Fortran compiler + HasGcc boolean for system has GNU gcc compiler + HasGcc2 boolean for system has GNU gcc 2.x compiler + HasGcc2ForCplusplus use gcc 2 for C++ programs? + HasGnuMake use the GNU make program? + HasKrb5 system has Kerberos version 5 support? + HasLargeTmp boolean for system has /tmp space + HasLatex system has LaTeX document preparation software + HasLibCrypt boolean for system has libcrypt + HasNdbm boolean for system has ndbm routines + HasPoll use poll() syscall? + HasPurify boolean for system has Purify + HasPutenv boolean for libc has putenv() + HasSecureRPC boolean for Sun Secure RPC + HasSetUserContext boolean for setusercontext() + HasSentinel boolean for system has Sentinel available + HasSharedLibraries boolean for system has shared libraries + HasShm boolean for System V shared memory + HasSockets boolean for system has BSD sockets + HasStrcasecmp boolean for system implements str[n]casecmp + HasStreams use STREAMS I/O interface? + HasSymLinks boolean for system has symbolic links + HasTestCenter boolean for system has TestCenter + HasVarDirectory boolean for system has /var + HasVFork boolean for system has vfork() + HasVoidSignalReturn boolean for POSIX signal() procs + HasZlib boolean for system has libz + IncRoot parent of X11 include directory + InstBinFlags install flags for binaries + InstDatFlags install flags for data files + InstIncFlags install flags for header files + InstKmemFlags install flags for xload to get at /dev/kmem + InstLibFlags install flags for libraries + InstManFlags install flags for manual pages + InstPgmFlags install flags for normal programs + InstUidFlags install flags for xterm to chown /dev/ptys + InstallCmd command to install files + Krb5Includes where to include Kerberos header files from + Krb5Libraries where to load Kerberos libraries from + LdCmd command to run loader + LdCombineFlags flags for incremental loading + LexCmd command to run lex + LexLib library for programs using lex output + LintCmd command to run lint + LintLibFlag flags to generate lint libraries + LintOpts lint options to control strictness + LnCmd command to link two files + LoaderLibPrefix loader flags before libraries + LocalRulesFile site-specific file with additional imake rules + LocalTmplFile file with additional imake variables + MacroFile name of machine-dependent config params file + MacroIncludeFile + MakeCmd command to run make + Malloc0ReturnsNull boolean for malloc(0) == NULL + Malloc0ReturnsNullDefines -D's to build libX11/libXt + MathLibrary library for programs using C math functions + MsMacros macro flag for TroffCmd, normally "-ms" + MvCmd command to rename a file + NdbmDefines -D's to turn on use of ndbm routines + NeedConstPrototoypes whether const is supported + NeedFunctionPrototypes whether or not to force function prototypes + NeedNestedPrototypes whether nested prototypes are supported + NeedVarargsPrototypes whether varargs prototypes are supported + NeedWidePrototypes whether or not to widen function prototypes + NoOpCDebugFlags C compiler flags to not debug or optimize + NoRConst YES if const for structs of funcs is bad + OSMajorVersion major version number of operating system + OSMinorVersion minor version number of operating system + OptimizedCDebugFlags C compiler flags to turn on optimization + PreProcessCmd command to run /lib/cpp on scripts + RanlibCmd command to clean up libraries + RanlibInstFlags flags to ranlib after copying + RmCmd command to delete files + ShLibDir directory in which to install shared libraries + StandardCppDefines -D's for running cpp + StandardDefines -D's for running C compiler + StandardIncludes -I's for running C compiler + StripInstalledPrograms boolean for sites that want to install -s + SystemV boolean for systems that are at least SVR2 + SystemV4 boolean for SVR4 systems + TOPDIR relative path to top of sources + TagsCmd command to run tags + TblCmd command to run tbl + TroffCmd command to run troff to get PostScript + UNCOMPRESSPATH command to run uncompress + UnalignedReferencesAllowed boolean for unaligned copies ok + UsrLibDir directory in which to install libraries + VarDirectory directory in /var for logs, etc., and config + YaccCmd command to run yacc + +X11.tmpl provides defaults for the following variables: + + AdmDir directory containing system log files + AllocateLocalDefines -D's to turn on alloca() + BDFTOSNFFILT command to run bdftosnf + BaseExtensionDefines universal extensions to use + BinDir directory in which to install programs + BuildAppgroup build AppGroup extension + BuildFontServer build font server + BuildFonts build pcf fonts + BuildIncRoot relative path to location of headers in build + BuildIncTop path from build includes directory to top + BuildLBX build LBX (aka X.fast) server extension + BuildPexExt build PEX server extension and fonts + BuildPhigs build Phigs (obsolete) + BuildServer build X server + BuildXAudio build Audio + BuildXAServer build Audio server + BuildXIE build X Image Extension + BuildDIS build Document Imaging Subset of XIE + BuildXCSecurity Build Security Extension + BuildXInputExt build X Input extension (requires ddx support, + which exists only in Xhp) + BuildXInputLib build X Input library + BuildXKB build X Keyboard Extension? + BuildXKBlib build X Keyboard Extension into Xlib? + UseXKBInClients Use XKB functions in normal clients? + BuildDBE build DOUBLE-BUFFER extension + BuildMultibuffer build Multibuffer extension (obsolete) + BuildRECORD Build RECORD extension + BuildPlugin build xrx plug-in for web browsers + ConfigDir install directory for config files + ConnectionFlags -D's for supported transports + ContribDir location of user-contributed sources + DebugLibFS build libFS_d.a + DebugLibICE build libICE_d.a + DebugLibPex build libPEX5_d.a + DebugLibSM build libSM_d.a + DebugLibX11 build libX11_d.a + DebugLibXau build libXau_d.a + DebugLibXaw build libXaw_d.a + DebugLibXdmcp build libXdmcp_d.a + DebugLibXext build libXext_d.a + DebugLibXi build libXi_d.a + DebugLibXie build libXie_d.a + DebugLibXmu build libXmu_d.a + DebugLibXt build libXt_d.a + DebugLibXtst build libXtst_d.a + DebugLibXag build libXag_d.a + DebugOldX build liboldX_d.a + DefaultFSConfigFile default font server config file + DefaultFontPath default server font path + DefaultRGBDatabase default server rgb color database + DefaultSystemPath default system xdm PATH environment variable + DefaultSystemShell default /bin/sh + DefaultUserPath default user xdm PATH environment variable + DependCmd command to run makedepend + DependDir build directory containing makedepend program + ExtensionDefines -D's for universal extensions + ExtensionOSDefines -D's for additional extensions + FontCompilerFlags flags for bdftosnf + FontDefines -D's to turn on font options + FontDir directory in which to install fonts + FontFilters -D's to specify font conversion filters + FontOSDefines -D's for which fonts to support + ForceNormalLib force building of .a in addition to shared lib + GzipFontCompression boolean for using gzip instead of compress + HasXdmAuth boolean for using XDM-AUTHORIZATION-1; + needs Wraphelp.c, see Release Notes + InstallAppDefFiles install new app defaults files over old? + InstallFSConfig install fs config file over old? + InstallLibManPages boolean for installing library man pages + InstallSecurityConfig install server security policy file over old? + InstallXdmConfig install xdm config files over old? + InstallXinitConfig install xinit config files over old? + LibDir directory in which to install X11 support files + LibManSuffix man suffix for library pages + LibmanDir directory in which to install library man pages + LintlibDir directory in which to install lint libs + ManDir directory in which to install program man pages + ManDirectoryRoot parent of man directories relative to root + ManPath full path of parent directory + ManSourcePath common prefix of man page directories + ManSuffix man suffix for programs + NeedDefaultDepLibs boolean for enabling default DEPLIBS + NlsDir directory in which to install nls files + NormalLibFS build libFS.a + NormalLibICE build libICE.a + NormalLibPex build libPEX5.a + NormalLibPhigs build libphigs.a + NormalLibSM build libSM.a + NormalLibX11 build libX11.a + NormalLibXau build libXau.a + NormalLibXaw build libXaw.a + NormalLibXdmcp build libXdmcp.a + NormalLibXext build libXext.a + NormalLibXi build libXi.a + NormalLibXie build libXie.a + NormalLibXmu build libXmu.a + NormalLibXt build libXt.a + NormalLibXtst build libXtst.a + NormalLibXag build libXag.a + NormalOldX build liboldX.a + OsNameDefines beats me + PexApiDir PEX include file location + PexCCOptions special options for building PEX library + PexCDebugFlags special flags for building PEX library + PexClientDefines special -D's for building PEX clients + PexDipexDefines special -D's for building PEX di files + PexPhigsDefines special -D's for building PEX library + PexShmIPC boolean for using shared memory in phigsmon + PhigsInclude include directory for phigs clients + PrimaryScreenResolution resolution of default server screen + ProfileLibFS build libFS_p.a + ProfileLibICE build libICE_p.a + ProfileLibPex build libPEX5_p.a + ProfileLibSM build libSM_p.a + ProfileLibX11 build libX11_p.a + ProfileLibXau build libXau_p.a + ProfileLibXaw build libXaw_p.a + ProfileLibXdmcp build libXdmcp_p.a + ProfileLibXext build libXext_p.a + ProfileLibXi build libXi_p.a + ProfileLibXie build libXie_p.a + ProfileLibXmu build libXmu_p.a + ProfileLibXt build libXt_p.a + ProfileLibXtst build libXtst_p.a + ProfileLibXag build libXag_p.a + ProfileOldX build liboldX_p.a + ProjectX version indicating this is the X Window System + RemoveTargetProgramByMoving boolean for rm -f that doesn't + SHELLPATH -D for /bin/sh + ServerConfigDir directory for server security config files + ServerDefines complete -D's for server + ServerExtraDefines special -D's for server + ServerOSDefines OS -D's for server + ServerAssertDefines -DNDEBUG for no assertions, /**/ for assertions + SharedLibFS boolean for making sharable libFS.so + SharedLibICE boolean for making sharable libICE.so + SharedLibPex boolean for making sharable libPEX5.so + SharedLibPhigs boolean for making sharable libphigs.so + SharedLibSM boolean for making sharable libSM.so + SharedLibX11 boolean for making sharable libX11.so + SharedLibXau boolean for making sharable libXau.so + SharedLibXaw boolean for making sharable libXaw.so + SharedLibXdmcp boolean for making sharable libXdmcp.so + SharedLibXext boolean for making sharable libXext.so + SharedLibXi boolean for making sharable libXi.so + SharedLibXie boolean for making sharable libXie.so + SharedLibXmu boolean for making sharable libXmu.so + SharedLibXt boolean for making sharable libXt.so + SharedLibXtst boolean for making sharable libXtst.so + SharedLibXag boolean for making sharable libXag.so + SharedOldX boolean for making sharable liboldX.so + ShmDefines MIT-SHM define + TwmDir directory in which to install twm config files + UseCCMakeDepend boolean for using alternate makedepend script + UseRgbTxt use rgb.txt file as is instead of DBM-compiled + VendorHasX11R6_3libXext don't need Security & AppGroup in xrx plug-in + XAppLoadDir directory in which to install app defaults + XFileSearchPathBase base file search path + XFileSearchPathDefault default path to search for app defaults files + XInputDefines XINPUT define + XMalloc0ReturnsNullDefines -D's specifically for libX11 + XawClientDepLibs DEPLIBS for clients that use Xaw + XawClientLibs LOCAL_LIBRARIES for clients that use Xaw + XdmConfigurationSubdirectory name of default xdm configuration + XdmDir directory in which to install xdm files + XdmServersType type of xdm Xservers file to install + XinitDir directory in which to install xinit files + XPrintDir parent of X Print server config directory + XprtServer build the X Print server + XmanLocalSearchPath non-standard path for man pages + XtErrorPrefix leading text in XtError() msg; eg. 'X Toolkit ' + XtWarningPrefix leading text in XtWarning()msg, same as above + XtMalloc0ReturnsNullDefines -D's specifically for libXt + ZBDFTOSNFFILT -D to run uncompress and bdftosnf + + +Library.tmpl provides defaults for the following variables: + + AvoidNullMakeCommand for makes that spout about $(_NULLCMD_) + LibraryCCOptions special C compiler options for libraries + LibraryCDebugFlags library debug/optimize flags to override defs + LibraryCcCmd command to run C compiler in libraries + LibraryCplusplusOptions special C++ options for libraries + LibraryCplusplusDebugFlags library debug/optimize flags for C++ + LibraryCplusplusCmd command to run C++ compiler in libraries + LibraryDefines -D's for libraries + SeparateSharedCompile shared and unshared libs use same binaries? + + +Server.tmpl provides defaults for the following variables: + + ServerCCOptions server C compiler options to override defaults + ServerCcCmd command to run C compiler in server + ServerCDebugFlags server debug/opt compiler flags + ServerDefines server standard -D's + InstallServerSetUID does this system need X server suid to root? + + +Threads.tmpl provides defaults for the following variables: + + LocalThreads whether to enable multi-threading support + LocalThreadsDefines -D flags needed in this directory + + +An Lib.rules file provides defaults for the following variables: + + HasSharedLibraries boolean for using shared libraries + SharedDataSeparation boolean indicating separate data/code + SharedCodeDef -D's for compiling shared library files + SharedLibraryDef -D's for defining which kind of shared lib + ShLibIncludeFile location of the Lib.tmpl file + SharedLibraryLoadFlags loader flags when making the library + UseExportLists boolean for using an export list + PositionIndependentCFlags PIC compiler flags for C + PositionIndependentCplusplusFlags PIC compiler flags for C++ + + Note: PositionIndependentCplusplusFlags is only required if the + C and C++ compilers use different flags to build PIC code. The + default configuration will try to use PositionIndependentCFlags + for both C and C++ compiles. + +An Lib.tmpl file provides defaults for the following variables: + + SharedFSReqs required libs for libFS.so + SharedFSRev version number for libFS.so + SharedICEReqs required libs for libICE.so + SharedICERev version number for libICE.so + SharedOldXReqs required libs for liboldX.so + SharedOldXRev version number for liboldX.so + SharedPexReqs required libs for libPEX5.so + SharedPexRev version number for libPEX5.so + SharedSMReqs required libs for libSM.so + SharedSMRev version number for libSM.so + SharedX11Reqs required libs for libX11.so + SharedX11Rev version number for libX11.so + SharedXauReqs required libs for libXau.so + SharedXauRev version number for libXau.so + SharedXawReqs required libs for libXaw.so + SharedXawRev version number for libXaw.so + SharedXdmcpReqs required libs for libXdmcp.so + SharedXdmcpRev version number for libXdmcp.so + SharedXextReqs required libs for libXext.so + SharedXextRev version number for libXext.so + SharedXiReqs required libs for libXi.so + SharedXiRev version number for libXi.so + SharedXieReqs required libs for libXie.so + SharedXieRev version number for libXie.so + SharedXmuReqs required libs for libXmu.so + SharedXmuRev version number for libXmu.so + SharedXtReqs required libs for libXt.so + SharedXtRev version number for libXt.so + SharedXtstReqs required libs for libXtst.so + SharedXtstRev version number for libXtst.so + SharedXmReqs required libs for libXm.so + SharedXmRev version number for libXm.so + SharedMrmReqs required libs for libMrm.so + SharedMrmRev version number for libMrm.so + SharedUilReqs required libs for libUil.so + SharedUilRev version number for libUil.so + SharedTtReqs required libs for libtt.so + SharedTtRev version number for libtt.so + SharedPamReqs required libs for libpam.so + SharedPamRev version number for libpam.so + SharedDtSvcReqs required libs for libDtSvc.so + SharedDtSvcRev version number for libDtSvc.so + SharedDtSearchReqs required libs for libDtSearch.so + SharedDtSearchRev version number for libDtSearch.so + SharedDtWidgetReqs required libs for libDtWidget.so + SharedDtWidgetRev version number for libDtWidget.so + SharedDtHelpReqs required libs for libDtHelp.so + SharedDtHelpRev version number for libDtHelp.so + SharedDtPrintReqs required libs for libDtPrint.so + SharedDtPrintRev version number for libDtPrint.so + SharedDtTermReqs required libs for libDtTerm.so + SharedDtTermRev version number for libDtTerm.so + SharedDtMrmReqs required libs for libDtMrm.so + SharedDtMrmRev version number for libDtMrm.so + +The following variables are used by some part of the tree: + + AckToolset programs/Xserver/hw/xfree86 + BuildChooser build the xdm chooser program? + SharedLibXdmGreet use xdm shared dynamic greeter library? + LatexCmd command to run LaTeX on a document + DvipsCmd command to turn .dvi file into PostScript + MotifBC using Motif 1.1.1, 1.1.2, or 1.1.3? + GetValuesBC compat GetValues behavior for broken apps? + NeedBerklib application needs libXbsd? + SvgaConfig default SVGA configuration + HasGetReturnAddress util/memleak + HasShadowPasswd system has getspnam() function + XnestServer build X server with Xlib-based ddx + XVirtualFramebufferServer build X server with virtual memory framebuffer + XpRasterDDX include the raster print ddx driver + XpColorPclDDX include the color PCL print ddx driver + XpMonoPclDDX include the monochrome PCL print ddx driver + XpPostScriptDDX include the PostScript print ddx driver + WebServer host:port of your Web server (see programs/xrx) + HtmlDir path used by Web server for HTML and RX docs + CgiBinDir path used by Web server for CGI programs + ProxyManager ICE network ID to contact a running proxymngr + + +Make Variables + +The following make variables are used by imake rules and may be set in +an individual Imakefile. + +DEFINES program-specific -D flags and other arguments + to pass to the C compiler, lint, and makedepend. +DEPEND_DEFINES program-specific flags in addition to + $(DEFINES) to pass to lint and makedepend. + This is usually used when there are special + compilation rules for individual files, and + the defines passed to those files affect + makedepend results. If they can be passed to + all files during the makedepend step without + affecting the results for other files, + DEPEND_DEFINES is used to do that. Example is + the Xlib Imakefile. +INCLUDES program-specific -I flags. +HEADERS .h files to install with "make includes" and + "make install". If this Imakefile includes + Library.tmpl there are no headers, include + this line instead of a HEADERS definition: + #define LibHeaders NO +REQUIREDLIBS when building a shared library, other libraries used + by this library that should be referenced at + link time. +LINTLIBS program-specific libraries for lint. +LOCAL_LDFLAGS program-specific flags for the linker. +LOCAL_LIBRARIES project libraries (usually specified + as -lname) needed by this program. + For example, "-lXt -lXext -lX11". + Used by SimpleProgramTarget and + ComplexProgramTarget* rules. + Do not include any system-specific libraries here. +SYS_LIBRARIES system libraries (usually specified + as -lname) needed by this program. + For example "MathLibrary". + Do not include any system-specific libraries + such as "-lnsl" here; they are automatically + added to the link command by the + vendor-specific .cf file. +SUBDIRS for an Imakefile in a directory containing + subdirectories, this names the subdirectories. + Such an Imakefile also needs to #define IHaveSubdirs + and call MakeSubdirs() and DependSubdirs(). +MANSUFFIX suffix used by InstallManPage* rules. + May be set to $(LIBMANSUFFIX) or $(FILEMANSUFFIX) in + directories for libraries or data files. + + +Rule-specific variables that may be set in an individual Imakefile. +If you aren't using these rules, you may need variables with a similar +function, but you need not use these names. However, following these +conventions may make your Imakefile easier to read and maintain. + +DEPLIBS library dependencies for ComplexProgramTarget +SRCS source files used by ComplexProgramTarget and + DependTarget. +OBJS object files used by ComplexProgramTarget +PROGRAMS default target used with ComplexProgramTarget_(n) +SRCS1 source files used by ComplexProgramTarget_1 +OBJS1 object files used by ComplexProgramTarget_1 +DEPLIBS1 library dependencies for ComplexProgramTarget_1 +SRCS2 source files used by ComplexProgramTarget_2 +OBJS2 object files used by ComplexProgramTarget_2 +DEPLIBS2 library dependencies for ComplexProgramTarget_2 +SRCS3 source files used by ComplexProgramTarget_3 +OBJS3 object files used by ComplexProgramTarget_3 +DEPLIBS3 library dependencies for ComplexProgramTarget_3 + +Variables that can be set on the make command line: + +DESTDIR directory under which "make install" should + install instead of "/"; used only for testing + "make install" rules. +FILE file for "lint1" target to run lint on. +CDEBUGFLAGS -g and/or -O flag to control C compiler optimization. +CXXDEBUGFLAGS -g and/or -O flag to control C++ optimization. +LDSTRIPFLAGS flag to have linker strip objects (typically -x). + Typically set to the empty string to prevent + the linker from stripping objects; use this + way when setting CDEBUGFLAGS to "-g". + +These variables are set in project-specific files such as X11.tmpl. +They should NOT be set in an Imakefile. These variables are sometimes +misused; they are included here to remind Imakefile writers NOT to use +them: + +EXTRA_DEFINES project-specific -D flags +EXTRA_INCLUDES project-specific -I flags +EXTRA_ICONFIGFILES Additional project-specific imake config files + to add to ICONFIGFILES. + This is a list of files that define variables + that might affect compilation of some files. + +Many other make variables are set up by the imake config files and can +be used in an Imakefile. The easiest way to discover them is to look +at the Makefile generated by an empty Imakefile. + + +Comments + +Use C comment syntax in an Imakefile for comments that should not +appear in the resulting Makefile. +Use "XCOMM" at the start of each +line to produce a comment that will appear in the Makefile. +(The "XCOMM" will +be translated into the Makefile comment character "#" by imake.) +Do NOT use "#" as a comment character in Imakefiles; it confuses the C +preprocessor used by imake on some systems. + + +Imake variables + +Don't abuse the variables in X11.tmpl that describe +particular pieces of X by using them to describe your own subsystems. +Instead, create new variables that are defaulted using +Imake.tmpl variables. + + +Examples + +Since the easiest way to write an Imakefile is to start with one that +works, here are some short, easy-to-read Imakefile examples in the X +distribution: + +with subdirs: config/Imakefile +library: lib/Xau/Imakefile +simple program: programs/xdpyinfo/Imakefile +complex progs: programs/xclipboard/Imakefile +complex prog: programs/xmodmap/Imakefile + +Common Rules + +Here are some of the common rules for building programs. How to use +them is described in Imake.rules and in the O'Reilly book "Software +Portability with imake." + +Basic program-building rules + +All of these except NormalProgramTarget also generate rules to install +the program and its manual page, and to generate dependencies. + +SimpleProgramTarget Use if there is only one program to be made + and it has only one source file. + +ComplexProgramTarget Use if there is only one program to be made + and it has multiple source files. Set SRCS to + the names of the source files, set OBJS to + the names of the object files, and set DEPLIBS + to the libraries that this program depends on. + +ComplexProgramTarget_1 Like ComplexProgramTarget, but uses SRCS1, + OBJS1, and DEPLIBS1 and can be used with + ComplexProgramTarget_2 and ComplexProgramTarget_3 + to build up to three programs in the same directory. + Set PROGRAMS to the programs built by all of + these rules. For more than 3 programs, use + NormalProgramTarget for each. +ComplexProgramTarget_2 Use after ComplexProgramTarget_1 for the + second program in a directory. Uses SRCS2, + OBJS2, and DEPLIBS2. +ComplexProgramTarget_3 Use after ComplexProgramTarget_2 for the + third program in a directory. Uses SRCS3, + OBJS3, and DEPLIBS3. + +NormalProgramTarget Build a program. Can be used multiple times + with different arguments in the same Imakefile. + +Lower level rules, often used with NormalProgramTarget + +InstallProgram install a program. + +InstallManPage install a manual page. + +DependTarget() include once at end of Imakefile with + NormalProgramTarget rules or that uses Library.tmpl. + Generates dependencies for files named in SRCS. + +Manual page rules, commonly used only in special documentation directories: + +InstallManPage +InstallManPageLong +InstallManPageAliases + +Other rules: + +SpecialCObjectRule Compile a C file with special flags. +AllTarget Declare additional targets to build. +InstallAppDefaults Install X application defaults file. + +Imakefile for directory with subdirectories + +XCOMM this is a sample Imakefile for a directory containing subdirectories +#define IHaveSubdirs +#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)" +SUBDIRS = list of subdirs ... +MakeSubdirs($(SUBDIRS)) +DependSubdirs($(SUBDIRS)) + + +Common Targets + +These targets are typically NOT defined explicitly by the Imakefile +writer; rather they are generated automatically by imake rules. +They are listed here for the convenience of people using the resulting +Makefile, not people writing the original Imakefile. + +all Default rule; builds whatever is in this directory. +Makefile Remake the Makefile (use after changing Imakefile). + Run "make depend" after. +Makefiles Remake all Makefiles in subdirectories. (Does + nothing if no subdirectories.) + Run "make depend" after. +includes Generate and install in the tree any necessary + header files. +depend Update dependencies in the Makefile calculated + by examining the source files. +install Install what "make all" built on the system. +install.man Install manual pages. +clean Remove built objects and other derived files. +lint Run lint. +tags Create a tags file. diff --git a/Xserver/config/cf/Server.tmpl b/Xserver/config/cf/Server.tmpl new file mode 100644 index 0000000..d1c86e0 --- /dev/null +++ b/Xserver/config/cf/Server.tmpl @@ -0,0 +1,95 @@ +/* + * Server imakefile info - this contains any special redefinitions, etc. + * that Imakefiles in the server subtree will need. + */ + +XCOMM $XConsortium: Server.tmpl /main/14 1996/04/30 14:37:27 mw $ +XCOMM $XFree86: xc/config/cf/Server.tmpl,v 3.3.2.3 1998/02/07 00:54:21 dawes Exp $ + +#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)" LDSTRIPFLAGS="$(LDSTRIPFLAGS)" + +#ifndef ServerCcCmd +#define ServerCcCmd CcCmd +#endif +#ifndef ServerCCOptions +#define ServerCCOptions DefaultCCOptions +#endif +#ifndef ServerDefines +#define ServerDefines StandardDefines +#endif +#ifndef ServerCDebugFlags +#define ServerCDebugFlags DefaultCDebugFlags +#endif +#ifndef DoThreadedServer +#define DoThreadedServer NO +#endif +#ifndef XserverNeedsSetUID +#define XserverNeedsSetUID NO +#endif +#ifndef UseXserverWrapper +#define UseXserverWrapper XserverNeedsSetUID +#endif +#ifndef InstallServerSetUID +#define InstallServerSetUID (XserverNeedsSetUID && !UseXserverWrapper) +#endif + +/* + * SetUIDServerTarget - compile, link, and relink a setuid server + */ +#ifndef SetUIDServerTarget +#if InstallServerSetUID +#define SetUIDServerTarget(server,subdirs,objects,libs,syslibs) @@\ +ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,$(INSTUIDFLAGS)) +#else +#define SetUIDServerTarget ServerTarget +#endif +#endif /* SetUIDServerTarget */ + +/* + * BuildDynamicLoading - dynamic module support + */ +#ifndef BuildDynamicLoading +#define BuildDynamicLoading NO +#endif + +/* + * ExtensionsDynamicModules - compile server extensions as dynamic modules + */ +#ifndef ExtensionsDynamicModules +#define ExtensionsDynamicModules BuildDynamicLoading +#endif + +#ifndef PexDynamicModule +#define PexDynamicModule ExtensionsDynamicModules +#endif +#ifndef XieDynamicModule +#define XieDynamicModule ExtensionsDynamicModules +#endif +#ifndef GlxModule +#define GlxModule ExtensionsDynamicModules +#endif + + CC = ServerCcCmd + CCOPTIONS = ServerCCOptions +#if DoThreadedServer +SERVER_THREAD_DEFINES = XThreadsDefines ThreadTypeDefines +#endif +STD_DEFINES = ServerDefines $(SERVER_THREAD_DEFINES) +CDEBUGFLAGS = ServerCDebugFlags +EXT_DEFINES = ExtensionDefines + +#if GlxModule | DoLoadableServer +GLX_DEFINES = GlxDefines -DGLX_MODULE +#else +GLX_DEFINES = GlxDefines +#endif + +#ifndef GlxStaticServerLib +#define GlxStubLib YES +#else +#define GlxStubLib NO +#endif + +#ifdef XFree86Version +#include +#endif diff --git a/Xserver/config/cf/ServerLib.tmpl b/Xserver/config/cf/ServerLib.tmpl new file mode 100644 index 0000000..fe38049 --- /dev/null +++ b/Xserver/config/cf/ServerLib.tmpl @@ -0,0 +1,141 @@ +XCOMM $XFree86: xc/config/cf/ServerLib.tmpl,v 3.0 1996/10/03 08:28:07 dawes Exp $ +/* + * Server Library imakefile info - this contains any special + * redefinitions, etc. that Imakefiles in the various server library + * subtrees will need. + * + * Before including this, you must set the following boolean variables: + * DoSharedLib, DoNormalLib, DoDebugLib, DoProfileLib + * + */ + +#ifndef DoNormalLib +#define DoNormalLib YES +#endif + +#ifndef LibraryDefines +#define LibraryDefines StandardDefines +#endif +#ifndef LibraryCDebugFlags +#define LibraryCDebugFlags DefaultCDebugFlags +#endif +#ifndef SeparateSharedCompile +#define SeparateSharedCompile YES +#endif +#ifndef SharedServerLibraryDef +#define SharedServerLibraryDef $(__NOOP__) +#endif + +#ifndef LibraryCcCmd +#if DoSharedLib && defined(SharedLibraryCcCmd) +#define LibraryCcCmd SharedLibraryCcCmd +#else +#define LibraryCcCmd CcCmd +#endif +#endif +#ifndef LibraryCCOptions +#if DoSharedLib && defined(SharedLibraryCCOptions) +#define LibraryCCOptions SharedLibraryCCOptions +#else +#define LibraryCCOptions DefaultCCOptions +#endif +#endif + +#if DoDebugLib +#define _DebuggedLibMkdir() LibMkdir(debugger) +#define _DebuggedObjCompile(options) DebuggedLibObjCompile(options) +#define _DebuggedCleanDir() LibCleanDir(debugger) +#else +#define _DebuggedLibMkdir() $(_NULLCMD_) +#define _DebuggedObjCompile(options) $(_NULLCMD_) +#define _DebuggedCleanDir() $(_NULLCMD_) +#endif + +#if DoProfileLib +#define _ProfiledLibMkdir() LibMkdir(profiled) +#define _ProfiledObjCompile(options) ProfiledLibObjCompile(options) +#define _ProfiledCleanDir() LibCleanDir(profiled) +#else +#define _ProfiledLibMkdir() $(_NULLCMD_) +#define _ProfiledObjCompile(options) $(_NULLCMD_) +#define _ProfiledCleanDir() $(_NULLCMD_) +#endif + +#if !DoNormalLib +#define _NormalLibMkdir() $(_NULLCMD_) +#define _NormalObjCompile(options) $(_NULLCMD_) +#define _NormalCleanDir() $(_NULLCMD_) +#else +#if DoSharedLib && SeparateSharedCompile +#define _NormalLibMkdir() LibMkdir(unshared) +#define _NormalObjCompile(options) UnsharedLibObjCompile(options) +#define _NormalCleanDir() LibCleanDir(unshared) +#else +#define _NormalLibMkdir() $(_NULLCMD_) +#define _NormalObjCompile(options) NormalLibObjCompile(options) +#define _NormalCleanDir() $(_NULLCMD_) +#endif +#endif + +#if !DoSharedLib || (DoNormalLib && !SeparateSharedCompile) +#define _SharedObjCompile(options) $(_NULLCMD_) +#else +#if SeparateSharedCompile +#define _SharedObjCompile(options) NormalSharedLibObjCompile(options) +#else +#define _SharedObjCompile(options) NormalLibObjCompile(options) +#endif +#endif + +#define SRCsuf c + +#ifndef LibraryObjectRule +#define LibraryObjectRule() @@\ +all:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _NormalLibMkdir() @@\ + @@\ +includes:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _NormalLibMkdir() @@\ + @@\ +.SRCsuf.Osuf: @@\ + _DebuggedObjCompile($(_NOOP_)) @@\ + _ProfiledObjCompile($(_NOOP_)) @@\ + _NormalObjCompile($(_NOOP_)) @@\ + _SharedObjCompile(SharedServerLibraryDef) @@\ + @@\ +clean:: @@\ + _DebuggedCleanDir() @@\ + _ProfiledCleanDir() @@\ + _NormalCleanDir() @@\ + +#endif /* LibraryObjectRule */ + +#ifndef SpecialLibObjectRule +#define SpecialLibObjectRule(objs,depends,options) @@\ +objs: depends @@\ + _DebuggedObjCompile(options) @@\ + _ProfiledObjCompile(options) @@\ + _NormalObjCompile(options) @@\ + _SharedObjCompile(options) @@\ + +#endif /* SpecialLibObjectRule */ + +#ifndef SpecialCLibObjectRule +#define SpecialCLibObjectRule(basename,depends,options) @@\ +SpecialLibObjectRule(basename.Osuf,basename.SRCsuf depends,options) @@\ + @@\ +basename.i: basename.SRCsuf depends @@\ + CPPOnlyCompile(basename.SRCsuf,options) @@\ + @@\ +CenterLoadTarget(debug_src,basename.SRCsuf,NullParameter,$(ALLDEFINES) options) +#endif /* SpecialCLibObjectRule */ + +#if DoSharedLib +LibraryObjectRule() +#else +NormalLibraryObjectRule() +#endif diff --git a/Xserver/config/cf/Threads.tmpl b/Xserver/config/cf/Threads.tmpl new file mode 100644 index 0000000..a505fce --- /dev/null +++ b/Xserver/config/cf/Threads.tmpl @@ -0,0 +1,98 @@ +XCOMM $XConsortium: Threads.tmpl /main/11 1996/09/28 16:07:06 rws $ +XCOMM $XFree86: xc/config/cf/Threads.tmpl,v 3.2 1996/12/23 05:50:12 dawes Exp $ + +/* + * For a multi-threaded application or library, + * Define LocalThreadsDefines in your Imakefile (unless you like the + * project default), then include this file. + * Everything else should be automatic. + */ + +#ifndef LocalThreadsDefines +#ifdef ProjectThreadsDefines +#define LocalThreadsDefines ProjectThreadsDefines +#else +#define LocalThreadsDefines /**/ +#endif +#endif + +#ifndef LocalThreads +#ifdef ThreadedProject +#define LocalThreads ThreadedProject +#else +#define LocalThreads YES +#endif +#endif + +#ifndef ThreadTypeDefines +#if HasCThreads +#define ThreadTypeDefines -DCTHREADS +#else +#define ThreadTypeDefines /**/ +#endif +#endif +#ifndef SystemMTDefines +#define SystemMTDefines /**/ +#endif +#ifndef LibraryMTDefines +#define LibraryMTDefines /**/ +#endif +#ifndef HasThreadSafeAPI /* does it have getpwnam_r, etc. */ +#define HasThreadSafeAPI YES +#endif +#ifndef MTSafeAPIDefines +#if HasThreadSafeAPI +#define MTSafeAPIDefines -DXUSE_MTSAFE_API +#else +#define MTSafeAPIDefines /**/ +#endif +#endif +#ifndef ThreadPreStdAPIDefines +#define ThreadPreStdAPIDefines /* nominally for POSIX P1003.4a (Draft 4) API */ +#endif +#ifndef CplusplusSystemMTDefines +# ifdef SystemMTDefines +# define CplusplusSystemMTDefines SystemMTDefines +# else +# define CplusplusSystemMTDefines /**/ +# endif +#endif +#ifndef ThreadsCompileFlags +#define ThreadsCompileFlags /**/ +#endif +#ifndef ThreadsCplusplusCompileFlags +# ifdef ThreadsCompileFlags +# define ThreadsCplusplusCompileFlags ThreadsCompileFlags +# else +# define ThreadsCplusplusCompileFlags /**/ +# endif +#endif + +#ifndef ThreadsLibraries +#define ThreadsLibraries /**/ +#endif +#ifndef ThreadsCplusplusLibraries +# ifdef ThreadsLibraries +# define ThreadsCplusplusLibraries ThreadsLibraries +# else +# define ThreadsCplusplusLibraries /**/ +# endif +#endif +#ifndef ThreadsLoadFlags +#define ThreadsLoadFlags ThreadsCompileFlags +#endif +#ifndef ThreadsCplusplusLoadFlags +#define ThreadsCplusplusLoadFlags ThreadsCplusplusCompileFlags +#endif + +#if LocalThreads + THREADS_CFLAGS = ThreadsCompileFlags + THREADS_DEFINES = LocalThreadsDefines ThreadTypeDefines SystemMTDefines MTSafeAPIDefines ThreadPreStdAPIDefines $(LIB_MT_DEFINES) + THREADS_LDFLAGS = ThreadsLoadFlags + THREADS_LIBS = ThreadsLibraries + + THREADS_CXXFLAGS = ThreadsCplusplusCompileFlags +THREADS_CXXDEFINES = LocalThreadsDefines ThreadTypeDefines CplusplusSystemMTDefines MTSafeAPIDefines ThreadPreStdAPIDefines $(LIB_MT_DEFINES) +THREADS_CXXLDFLAGS = ThreadsCplusplusLoadFlags + THREADS_CXXLIBS = ThreadsCplusplusLibraries +#endif diff --git a/Xserver/config/cf/Win32.cf b/Xserver/config/cf/Win32.cf new file mode 100644 index 0000000..c44d528 --- /dev/null +++ b/Xserver/config/cf/Win32.cf @@ -0,0 +1,128 @@ +XCOMM platform: $XConsortium: Win32.cf /main/51 1996/12/19 14:20:08 lehors $ + +#ifndef OSName +#define OSName Microsoft Windows NT 4.0 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 0 +#endif + +#ifndef CompilerMajorVersion +/* 0 == NT 3.1 Win32 SDK, 2 == MSVC++ 2, 4 == MSVC 4 */ +#define CompilerMajorVersion 4 +#endif + +#define BootstrapCFlags -DWIN32 +#ifdef _M_IX86 +#define CpuDefines -D_X86_ +#endif +/* brain-damaged windows headers will not compile with -Za */ +#define StandardDefines -DWIN32 -DWIN32_LEAN_AND_MEAN -D_DLL -D_MT -D__STDC__ CpuDefines +#if CompilerMajorVersion < 4 +#define DefaultCCOptions -nologo -batch -G4 -W2 +#else +#define DefaultCCOptions -nologo -G4 -W2 +#endif +#if CompilerMajorVersion < 4 +#define DebuggableCDebugFlags -Zi +#else +#define DebuggableCDebugFlags -Zi -Od +#endif +#define ThreadedX YES +#define HasThreadSafeAPI NO +#define CpCmd copy +#define LnCmd copy +#define MvCmd ren +#define RmCmd del +#ifndef RmTreeCmd +/*#define RmTreeCmd del /q /s */ +#define RmTreeCmd rm -rfx +#endif +#define CcCmd cl +#define HasCplusplus YES +#define CplusplusCmd cl +#if CompilerMajorVersion < 4 +#define PreProcessCmd CcCmd -nologo -batch -EP +#define CppCmd CcCmd -nologo -batch -E +#else +#define PreProcessCmd CcCmd -nologo -EP +#define CppCmd CcCmd -nologo -E +#endif +#define PatheticCpp YES +#define ConstructMFLAGS YES +#if (CompilerMajorVersion == 0) +#define ArCmdBase lib32 +#else +#define ArCmdBase lib +#endif +#define ArCmd ArCmdBase +#define CplusplusCmd cl +#define MkdirHierCmd mkdir +#define InstallCmd copy +#define InstPgmFlags /**/ +#define InstBinFlags /**/ +#define InstUidFlags /**/ +#define InstLibFlags /**/ +#define InstIncFlags /**/ +#define InstManFlags /**/ +#define InstDatFlags /**/ +#define InstallFlags /**/ +#if (CompilerMajorVersion == 0) +#define ExtraLibraries crtdll.lib kernel32.lib wsock32.lib +#elif (CompilerMajorVersion < 4) +#define ExtraLibraries msvcrt.lib kernel32.lib wsock32.lib +#else +#define ExtraLibraries msvcrt.lib kernel32.lib wsock32.lib -link -nodefaultlib:libc +#endif +#define MakeCmd nmake -nologo +#if (CompilerMajorVersion == 0) +#define LdCmd link32 +#else +#define LdCmd link +#endif +#define MathLibrary +#define HasSymLinks NO +#define HasVarDirectory NO +#define HasPutenv YES +#define Osuf obj +#ifndef CCsuf +#define CCsuf cxx +#endif +#define BuildServer NO +#define ConnectionFlags -DTCPCONN + +/* override as necessary in site.def/host.def */ +#ifndef StdIncDir +#define StdIncDir C:/MSDEVSTD/INCLUDE +#endif +#define LdPreLib /**/ +#define LdPostLib /**/ +#ifndef UseInstalled +#define ImakeCmd $(IMAKESRC:/=\)\imake +#define DependCmd $(DEPENDSRC:/=\)\makedepend +#endif +#define DependFlags -D_WIN32 +#define FilesToClean *.bak *.obj *.lib make.log +#define ShLibDir $(BINDIR) + +#define XFileSearchPathBase Concat4($(LIBDIR)/;L/;T/;N;C,;S:$(LIBDIR)/;l/;T/;N;C,;S:$(LIBDIR)/;T/;N;C,;S:$(LIBDIR)/;L/;T/;N;S:$(LIBDIR)/;l/;T/;N;S:$(LIBDIR)/;T/;N;S) + +#define XawI18nDefines -DHAS_WCHAR_H +#define UseRgbTxt YES +#define HasCbrt NO +#define HasFfs NO +#define HasXdmAuth NO + +/* the following components haven't been ported yet */ +#define BuildLBX NO +#define BuildXprint NO +#define XprtServer NO + +#include diff --git a/Xserver/config/cf/Win32.rules b/Xserver/config/cf/Win32.rules new file mode 100644 index 0000000..5090686 --- /dev/null +++ b/Xserver/config/cf/Win32.rules @@ -0,0 +1,528 @@ +XCOMM platform: $XConsortium: Win32.rules /main/49 1996/12/02 14:12:47 kaleb $ + +#define HasSharedLibraries YES +#define NeedLibInsideFlag YES +#define SharedLibXaw NO +#define SharedLibXmu NO +#define SharedLibXt NO +#define SharedDataSeparation NO +#define SharedCodeDef /**/ +#define SharedLibraryDef /**/ +#define ShLibIncludeFile +#define SharedLibraryLoadFlags -dll +#define PositionIndependentCFlags /**/ + +.c.obj: + $(CC) -c $*.c @<< + $(CFLAGS) +<< + +#if HasCplusplus +.CCsuf.obj: + $(CXX) -c $*.CCsuf @<< + $(CFLAGS) +<< +#endif + +#define ProgramTargetName(target) target.exe + +#define RunProgram(progvar,options) $(progvar:/=\) options + +#define RemoveFile(file) if exist file $(RM) file + +#define RemoveFiles(files) @$(MAKE) $(MFLAGS) -f << @@\ +.SUFFIXES: @@\ + @@\ +all: files @@\ + !for %%i in ( Avoid.Error $$** ) do if exist %%i $(RM) %%i @@\ + @@\ +Avoid.Error files: @@\ +<< + +#define MakeDir(dir) -$(MKDIRHIER) dir + +#define ObjectCompile(options) RemoveFile($@) @@\ + $(CC) -c $*.c @<< @@\ + $(CFLAGS) options @@\ +<< + +#define LibObjCompile(dir,options) RemoveFiles($@ dir\$@) @@\ + $(CC) -c $*.c @<< @@\ + $(CCOPTIONS) $(ALLDEFINES) options @@\ +<< @@\ + $(MV) $@ dir\$@ + +#define BuildIncludesTop(srclist,dstsubdir,dstupdir) @@\ +includes:: srclist @@\ + MakeDir($(BUILDINCDIR:/=\)) @@\ + @$(MAKE) $(MFLAGS) -f << @@\ +.SUFFIXES: @@\ + @@\ +all: srclist @@\ + cd $(BUILDINCDIR:/=\) @@\ + !RemoveFile($$**) @@\ + !$(LN) $(BUILDINCTOP:/=\)\$(CURRENT_DIR:/=\)\$$** . @@\ + @@\ +Avoid.Error srclist: @@\ +<< + +#define BuildIncludes(srclist,dstsubdir,dstupdir) @@\ +XVARdef0 = $(BUILDINCDIR)/dstsubdir @@\ +XVARdef1 = $(BUILDINCTOP)/dstupdir/$(CURRENT_DIR) @@\ + @@\ +includes:: srclist @@\ + MakeDir($(XVARuse0:/=\)) @@\ + @$(MAKE) -A $(MFLAGS) -f << @@\ +.SUFFIXES: @@\ + @@\ +all: srclist @@\ + cd $(XVARuse0:/=\) @@\ + !RemoveFile($$**) @@\ + !$(LN) $(XVARuse1:/=\)\$$** . @@\ + @@\ +Avoid.Error srclist: @@\ +<< + +#define LinkFileList(step,list,dir,sub) @@\ +XVARdef0 = dir @@\ +XVARdef1 = sub @@\ +XVARdef2 = list @@\ + @@\ +step:: $(XVARuse2:/=\) @@\ + cd $(XVARuse0:/=\) @@\ + !RemoveFile($**) @@\ + !$(LN) $(XVARuse1:/=\)\\$** . + +#define LinkRule(program,options,objects,libraries) \ +$(CCLINK) Concat(-Fe,program) options objects libraries $(EXTRA_LOAD_FLAGS) + +#define NormalProgramTarget(program,objects,deplibs,locallibs,syslibs) @@\ +XVARdef0 = objects @@\ + @@\ +ProgramTargetName(program): $(XVARuse0:.o=.obj) deplibs @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(XVARuse0:.o=.obj),locallibs $(LDLIBS) syslibs) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) + +#define ProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs:.o=.obj) $(deplib) @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(objs:.o=.obj),locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ +InstallManPage(program,$(MANDIR)) + +#define ComplexProgramTarget(program) @@\ +PROGRAM = ProgramTargetName(program) @@\ + @@\ +AllTarget(ProgramTargetName(program)) @@\ + @@\ +ProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile($(PROGRAM)) + +#define ComplexProgramTarget_1(program,locallib,syslib) @@\ +OBJS = $(OBJS1) $(OBJS2) $(OBJS3) @@\ +SRCS = $(SRCS1) $(SRCS2) $(SRCS3) @@\ +PROGRAM1 = ProgramTargetName(program) @@\ + @@\ +AllTarget($(PROGRAM1) $(PROGRAM2) $(PROGRAM3)) @@\ + @@\ +ProgramTargetHelper(program,SRCS1,OBJS1,DEPLIBS1,locallib,syslib) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + for %%i in ($(PROGRAMS)) do $(RM) ProgramTargetName(%%i) + +#define ComplexProgramTarget_2(program,locallib,syslib) @@\ +PROGRAM2 = ProgramTargetName(program) @@\ + @@\ +ProgramTargetHelper(program,SRCS2,OBJS2,DEPLIBS2,locallib,syslib) + +#define ComplexProgramTarget_3(program,locallib,syslib) @@\ +PROGRAM3 = ProgramTargetName(program) @@\ + @@\ +ProgramTargetHelper(program,SRCS3,OBJS3,DEPLIBS3,locallib,syslib) + +#define MoveToBakFile(file) -@if exist file $(MV) file file.bak + +#define RMoveToBakFile(file) -RemoveFile(file.bak) @@\ + -@if exist file $(MV) file file.bak + +#define InstallMultipleDestFlags(step,list,dest,flags) @@\ +XVARdef0 = $(DESTDIR)dest @@\ + @@\ +step:: list @@\ + MakeDir($(XVARuse0:/=\)) @@\ + !$(INSTALL) $(INSTALLFLAGS) flags $** $(XVARuse0:/=\) + +#define CleanTarget() @@\ +clean:: @@\ + RemoveFiles(FilesToClean ExtraFilesToClean) + +#define LibraryTargetName(libname)libname.lib + +#define LibraryTargetNameSuffix(libname,suffix)Concat(libname,suffix.lib) + +#define MakeLibrary(libname,objlist) $(AR) @<< @@\ +-out:libname objlist @@\ +<< + +#define LinkSourceFile(src,dir) @@\ +XVARdef0 = dir/src @@\ + @@\ +src: $(XVARuse0:/=\) @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +includes:: src @@\ + @@\ +depends:: src @@\ + @@\ +clean:: @@\ + RemoveFile(src) + +#define LinkFile(tofile,fromfile) @@\ +XVARdef0 = fromfile @@\ +tofile:: $(XVARuse0:/=\) @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +includes:: tofile @@\ + @@\ +depend:: tofile @@\ + @@\ +clean:: @@\ + RemoveFile(tofile) + + +#define NormalLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +XVARdef0 = objlist @@\ + @@\ +LibraryTargetName(libname): $(XVARuse0:.o=.obj) $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,$(XVARuse0:.o=.obj)) @@\ + LinkBuildLibrary($@) + +#define NormalLibraryTarget2(libname,objlist1,objlist2) @@\ +NormalLibraryTarget(libname,objlist1 objlist2) + +#define NormalLibraryTarget3(libname,objlist1,objlist2,objlist3) @@\ +NormalLibraryTarget(libname,objlist1 objlist2 objlist3) + +#define NormalDepLibraryTarget(libname,deplist,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +XVARdef0 = deplist @@\ +XVARdef1 = objlist @@\ +XVARdef2 = $(XVARuse1:/=\) @@\ + @@\ +LibraryTargetName(libname): $(XVARuse0:/=\) $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,$(XVARuse2:.o=.obj)) @@\ + LinkBuildLibrary($@) + +#define ProfiledLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_p)) @@\ + @@\ +XVARdef0 = objlist @@\ + @@\ +LibraryTargetNameSuffix(libname,_p): $(XVARuse0:.o=.obj) $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + cd profiled @@\ + MakeLibrary(..\$@,$(XVARuse0:.o=.obj)) @@\ + cd .. + +#define DebuggedLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_d)) @@\ + @@\ +XVARdef0 = objlist @@\ + @@\ +LibraryTargetNameSuffix(libname,_d): $(XVARuse0:.o=.obj) $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + cd debugger @@\ + MakeLibrary(..\$@,$(XVARuse0:.o=.obj)) @@\ + cd .. + +#ifndef UseInstalled +#define ImakeDependency(target) @@\ +target:: ProgramTargetName($(IMAKE)) @@\ + @@\ +ProgramTargetName($(IMAKE)): @@\ + < $@ @@\ + @@\ +clean:: @@\ + RemoveFile(DONE) + +#define CppScriptTarget(dst,src,defs,deplist) @@\ +dst:: @@\ + @echo sorry, unable to make $@ + +#define CppFileTarget(dst,src,defs,deplist) @@\ +XFAKEVAR = X @@\ +dst:: src deplist @@\ + RemoveFile($@) @@\ + $(PREPROCESSCMD) -I. <$@ @@\ + XCOMM define $(XFAKEVAR)COMM XCOMM @@\ + XCOMM include @@\ +<< @@\ + defs @@\ +<< @@\ + @@\ +clean:: @@\ + RemoveFiles(dst) + +#define InstallNamedTarget(step,srcname,flags,dest,dstname) @@\ +XVARdef0 = $(DESTDIR)dest @@\ + @@\ +step:: srcname @@\ + MakeDir($(XVARuse0:/=\)) @@\ + $(INSTALL) $(INSTALLFLAGS) flags srcname $(XVARuse0:/=\)\\dstname + +#define InstallNamedTargetNoClobber(step,srcname,flags,dest,dstname) @@\ +XVARdef0 = $(DESTDIR)dest @@\ + @@\ +step:: srcname @@\ + MakeDir($(XVARuse0:/=\)) @@\ + @if exist $(XVARuse0:/=\)\\dstname echo Not overwriting existing $(XVARuse0:/=\)\\dstname @@\ + if not exist $(XVARuse0:/=\)\\dstname $(INSTALL) $(INSTALLFLAGS) flags srcname $(XVARuse0:/=\)\\dstname + + +#define InstallLibrary(libname,dest) @@\ +InstallTarget(install,LibraryTargetName(libname),$(INSTLIBFLAGS),dest) + +#define InstallScript(program,dest) /**/ + +#define InstallNamedProg(srcname,dstname,dest) @@\ +install:: srcname @@\ + @echo sorry, unable to install srcname + +#define InstallSharedLibrary(libname,rev,dest) @@\ +InstallTarget(install,LibraryTargetName(libname),$(INSTLIBFLAGS),$(USRLIBDIR)) @@\ +InstallTarget(install,libname.dll,$(INSTLIBFLAGS),dest) + +#define InstallSharedLibraryData(libname,rev,dest) + +#define MakeDLL(libname,solist) $(LD) @<< @@\ +SharedLibraryLoadFlags -out:libname.dll libname.exp solist @@\ +<< + +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(libname.dll) @@\ + @@\ +CppFileTarget(libname.def,libname-def.cpp,-DLIBRARY_VERSION=rev,$(ICONFIGFILES)) @@\ + @@\ +XVARdef0 = solist @@\ + @@\ +LibraryTargetName(libname): $(XVARuse0:.o=.obj) libname.def $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + MakeLibrary($@,-def:libname.def $(XVARuse0:.o=.obj)) @@\ + LinkBuildLibrary($@) @@\ + RemoveFile(libname.dll) @@\ + MakeDLL(libname,$(XVARuse0:.o=.obj) $(REQUIREDLIBS) $(EXTRA_LIBRARIES)) @@\ + LinkBuildDLL(libname.dll) @@\ + @@\ +libname.dll: LibraryTargetName(libname) $(EXTRALIBRARYDEPS) @@\ + RemoveFile(libname.dll) @@\ + MakeDLL(libname,$(XVARuse0:.o=.obj) $(REQUIREDLIBS) $(EXTRA_LIBRARIES)) @@\ + LinkBuildDLL(libname.dll) @@\ + @@\ +clean:: @@\ + RemoveFile(LibraryTargetName(libname)) @@\ + RemoveFile(libname.dll) + +#define SharedLibraryDataTarget(libname,rev,salist) + +#define ObjectCplusplusCompile(options) RemoveFile($@) @@\ + $(CXX) -c $*.CCsuf @<< @@\ + $(CFLAGS) options @@\ +<< + +#define CplusplusLinkRule LinkRule + +#define CplusplusProgramTargetHelper ProgramTargetHelper + +#ifndef ComplexCplusplusProgramTarget +#define ComplexCplusplusProgramTarget(program) @@\ + PROGRAM = ProgramTargetName(program) @@\ + @@\ +AllTarget(ProgramTargetName(program)) @@\ + @@\ +CplusplusProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) +#endif /* ComplexCplusplusProgramTarget */ + +#ifndef UseInstalled +# define LinkBuildDLL(binary) MakeDir($(BUILDBINDIR:/=\)) @@\ + RemoveFile(Concat($(BUILDBINDIR:/=\)\,binary)) @@\ + cd $(BUILDBINDIR:/=\) && $(LN) Concat($(BUILDBINTOP:/=\)\$(CURRENT_DIR:/=\)\,binary) . + +# ifdef LinkBuildBinary +# undef LinkBuildBinary +# endif +# define LinkBuildBinary(binary) @@\ +all:: $(BUILDBINDIR)\ProgramTargetName(binary) ProgramTargetName(binary) @@\ + @@\ +$(BUILDBINDIR)\ProgramTargetName(binary): ProgramTargetName(binary) @@\ + MakeDir($(BUILDBINDIR:/=\)) @@\ + RemoveFile($(BUILDBINDIR:/=\)\ProgramTargetName(binary))) @@\ + cd $(BUILDBINDIR:/=\) && $(LN) $(BUILDBINTOP:/=\)\$(CURRENT_DIR:/=\)\ProgramTargetName(binary) . + +# ifdef LinkBuildLibrary +# undef LinkBuildLibrary +# endif +# define LinkBuildLibrary(lib) MakeDir($(BUILDLIBDIR:/=\)) @@\ + RemoveFile(Concat($(BUILDLIBDIR:/=\)\,lib)) @@\ + cd $(BUILDLIBDIR:/=\) && $(LN) Concat($(BUILDLIBTOP:/=\)\$(CURRENT_DIR:/=\)\,lib) . + +#endif + +#ifndef ProjectUnsharedLibReferences +#define ProjectUnsharedLibReferences(varname,libname,libsource,buildlibdir) @@\ +Concat3(DEP,varname,LIB) = _UseCat($(USRLIBDIR)/lib,buildlibdir/,libname.lib) @@\ +Concat(varname,LIB) = $(Concat3(DEP,varname,LIB)) @@\ +LintLibReferences(varname,libname,libsource) +#endif + + +/* + * ServerTargetWithFlags - generate rules to compile, link, and relink a server + */ +#ifndef ServerTargetWithFlags +#define ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,flags) @@\ +XVARdef0 = objects @@\ + @@\ +AllTarget(ProgramTargetName(server)) @@\ +ProgramTargetName(server): subdirs $(XVARuse0:.o=.obj) libs @@\ + MoveToBakFile($@) @@\ + LinkRule($@,$(LDOPTIONS),$(XVARuse0:.o=.obj),libs $(LDLIBS) syslibs) @@\ + @@\ +Concat(load,server): @@\ + MoveToBakFile(ProgramTargetName(server)) @@\ + LinkRule(ProgramTargetName(server),$(LDOPTIONS),$(XVARuse0:.o=.obj),libs $(LDLIBS) syslibs) @@\ + @@\ +loadX:: Concat(load,server) @@\ + @@\ +ProofProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +ProofLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ + @@\ +InstallProgramWithFlags(server,$(BINDIR),flags) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(server)) +#endif /* ServerTargetWithFlags */ diff --git a/Xserver/config/cf/WinLib.tmpl b/Xserver/config/cf/WinLib.tmpl new file mode 100644 index 0000000..bf13f06 --- /dev/null +++ b/Xserver/config/cf/WinLib.tmpl @@ -0,0 +1,13 @@ +XCOMM $XConsortium: WinLib.tmpl /main/3 1996/11/13 14:43:09 lehors $ + +#define SharedOldXReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedXtReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedXawReqs $(LDPRELIBS) $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) +#define SharedXextReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedXiReqs $(LDPRELIBS) $(XLIB) +#define SharedPexReqs $(LDPRELIBS) $(XLIBONLY) MathLibrary +#define SharedXtstReqs $(LDPRELIBS) $(XLIB) +#define SharedXieReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedSMReqs $(LDPRELIBS) $(ICELIB) +#define SharedXpReqs $(LDPRELIBS) $(XAUTHLIB) $(EXTENSIONLIB) $(XLIBONLY) diff --git a/Xserver/config/cf/X11.rules b/Xserver/config/cf/X11.rules new file mode 100644 index 0000000..915897d --- /dev/null +++ b/Xserver/config/cf/X11.rules @@ -0,0 +1,102 @@ +XCOMM $TOG: X11.rules /main/4 1997/04/30 15:23:24 kaleb $ + +/* Note whether we are the top level project. */ +#ifndef SeenTopLevelProject +# define SeenTopLevelProject YES +# define X11IsTopLevelProject YES +#else +# define X11IsTopLevelProject NO +#endif + +/* + * If no clues are given assume X11 is in the tree, otherwise + * UseInstalled overrides UseImports. Do not do both. + */ +#ifndef UseInstalledX11 +# define UseInstalledX11 NO +#endif +#ifdef UseInstalled +# undef UseInstalledX11 +# define UseInstalledX11 YES +#endif + +#ifndef ImportX11 +# ifdef UseImports +# define ImportX11 YES +# else +# define ImportX11 NO +# endif +#endif +#if UseInstalledX11 +# undef ImportX11 +# define ImportX11 NO +#endif + +#ifdef X11ProjectRoot +# define XUsrLibDirPath $(USRLIBDIR):$(XPROJECTROOT)/lib +#else +# define XUsrLibDirPath $(USRLIBDIR) +#endif +#ifdef UsrLibDirPath +# undef UsrLibDirPath +#endif +#define UsrLibDirPath XUsrLibDirPath + +#if ImportX11 +# define XLdPreLibs -L$(LIBSRC) +#elif defined(UseInstalledX11) && defined(X11ProjectRoot) +# define XLdPreLibs -L$(XPROJECTROOT)/lib +#else +# define XLdPreLibs /**/ +#endif +#ifdef LdPreLibs +# undef LdPreLibs +#endif +#define LdPreLibs LdPreLib XLdPreLibs + +#ifdef X11ProjectRoot +# define XLdPostLibs -L$(XPROJECTROOT)/lib +#else +# define XLdPostLibs /**/ +#endif +#ifdef LdPostLibs +# undef LdPostLibs +#endif +#define LdPostLibs LdPostLib XLdPostLibs + +#if ImportX11 +# define TopXInclude -I$(TOP)/imports/x11/include +#elif !UseInstalledX11 +# define TopXInclude -I$(TOP)/exports/include +#else +# define TopXInclude -I$(XPROJECTROOT)/include +#endif +#ifdef TopIncludes +# undef TopIncludes +#endif +#define TopIncludes TopInclude $(TOP_X_INCLUDES) + +#if UseInstalledX11 && defined(X11ProjectRoot) +# define X11BuildLibPath $(XPROJECTROOT)/lib +#elif UseInstalledX11 +# define X11BuildLibPath $(USRLIBDIR) +#elif ImportX11 +# define X11BuildLibPath $(XTOP)/lib +#else +# define X11BuildLibPath $(TOP)/exports/lib +#endif +#ifdef SystemBuildLibPath +# define BuildLibPath $(XENVLIBDIR):$(SYSTEMENVLIBDIR) +#else +# define BuildLibPath $(XENVLIBDIR) +#endif + +#ifndef X11ProjectDefines +# define X11ProjectDefines /**/ +#endif +#define ProjectDefines X11ProjectDefines + +#ifndef X11CplusplusProjectDefines +# define X11CplusplusProjectDefines X11ProjectDefines +#endif +#define CplusplusProjectDefines X11CplusplusProjectDefines diff --git a/Xserver/config/cf/X11.tmpl b/Xserver/config/cf/X11.tmpl new file mode 100644 index 0000000..4ec1b49 --- /dev/null +++ b/Xserver/config/cf/X11.tmpl @@ -0,0 +1,1815 @@ +XCOMM ---------------------------------------------------------------------- +XCOMM X Window System Build Parameters and Rules +XCOMM $TOG: X11.tmpl /main/292 1997/05/20 10:05:59 kaleb $ +XCOMM +XCOMM +XCOMM +XCOMM +XCOMM $XFree86: xc/config/cf/X11.tmpl,v 1.8.2.4 1998/01/23 12:35:08 dawes Exp $ + +/*************************************************************************** + * * + * DEFAULT DEFINITIONS * + * * + * The following section contains defaults for things that can * + * overridden in the various *.cf and site.def files. DO NOT EDIT! * + * * + **************************************************************************/ + +#define ProjectX 603 /* do *not* change this line */ + +/* The following project-specific rules are defined at the end of this file: + * + * InstallAppDefaults (class) + * InstallAppDefaultsLong (file,class) + * MakeFontsDir (deplist) + * MakeFonts () + * InstallFontObjs (objs,dest) + * InstallFonts (dest) + * InstallFontAliases (dest) + * FontSrc (basename) + * FontBaseObj (basename) + * InstallFontScale (dest) + * UncompressedFontTarget (basename) + * CompressedFontTarget (basename) + * FontTarget (basename) + * FontObj (basename) + * MakeXkbDir (basedir,subdir) + */ + +/* + * X-specific things + */ +#ifndef HasXServer +#define HasXServer YES +#endif +#ifndef BuildServer +#define BuildServer HasXServer +#endif +#ifndef BuildServersOnly +#define BuildServersOnly NO +#endif +#ifndef BuildFontServer +#define BuildFontServer YES +#endif +#ifndef BuildFonts +#define BuildFonts (BuildServer | BuildFontServer) +#endif +#ifndef Build75DpiFonts +#define Build75DpiFonts YES +#endif +#ifndef Build100DpiFonts +#define Build100DpiFonts YES +#endif +#ifndef BuildSpeedoFonts +#define BuildSpeedoFonts YES +#endif +#ifndef BuildType1Fonts +#define BuildType1Fonts YES +#endif +#ifndef BuildCyrillicFonts +#define BuildCyrillicFonts NO +#endif +#ifndef UseKoi8RForCyrillic +#define UseKoi8RForCyrillic NO +#endif +#ifndef HasXAudio +#define HasXAudio NO +#endif +#ifndef BuildXAudio +#define BuildXAudio (HasXAudio & HasCplusplus) +#endif +#ifndef HasXAServer +#define HasXAServer NO +#endif +#ifndef BuildXAServer +#define BuildXAServer (HasXAServer & HasCplusplus) +#endif +#ifndef BuildMITMiscExt +#define BuildMITMiscExt YES +#endif +#ifndef BuildTestExt +#define BuildTestExt YES +#endif +#ifndef BuildSyncExt +#define BuildSyncExt YES +#endif +#ifndef BuildXCMiscExt +#define BuildXCMiscExt YES +#endif +#ifndef BuildShapeExt +#define BuildShapeExt YES +#endif +#ifndef BuildBigReqsExt +#define BuildBigReqsExt YES +#endif +#ifndef BuildPhigs +#define BuildPhigs NO +#endif +#ifndef BuildPexExt +#define BuildPexExt NO +#endif +#ifndef BuildXInputExt +#define BuildXInputExt NO +#endif +#ifndef BuildDIS +#define BuildDIS NO +#endif +#ifndef BuildXIE +#define BuildXIE YES +#endif +#ifndef BuildXIElib +#define BuildXIElib BuildXIE +#endif +#ifndef BuildXKB +#define BuildXKB YES +#endif +#ifndef BuildXKBlib +#define BuildXKBlib BuildXKB +#endif +#ifndef BuildXKBuilib +#define BuildXKBuilib BuildXKB +#endif + /* + * WARNING: Setting UseXKBInClients to YES cause incompatibilities + * between many clients (such as xterm) and pre-XKB shared + * libraries. + */ +#ifndef UseXKBInClients +#define UseXKBInClients NO /* use XKB in "normal" clients? */ +#endif +#ifndef BuildDBE +#define BuildDBE YES +#endif +#ifndef BuildDBElib +#define BuildDBElib BuildDBE +#endif +#ifndef BuildMultibuffer +#define BuildMultibuffer NO +#endif +#ifndef BuildRECORD +#define BuildRECORD YES +#endif +#ifndef BuildRECORDlib +#define BuildRECORDlib BuildRECORD +#endif +#ifndef BuildLBX +#define BuildLBX YES +#endif +#ifndef BuildXCSecurity +#define BuildXCSecurity YES +#endif +#ifndef BuildAppgroup +#define BuildAppgroup YES +#endif +#ifndef HasPlugin +#define HasPlugin NO +#endif +#ifndef BuildPlugin +#define BuildPlugin HasPlugin +#endif +#ifndef XprtServer +#define XprtServer BuildServer +#endif +#ifndef BuildXprint +#if XprtServer +#define BuildXprint YES +#else +#define BuildXprint NO +#endif +#endif +#ifndef BuildScreenSaverExt +#define BuildScreenSaverExt NO +#endif +#ifndef BuildScreenSaverLibrary +#define BuildScreenSaverLibrary BuildScreenSaverExt +#endif +#ifndef BuildXF86VidModeExt +#define BuildXF86VidModeExt NO +#endif +#ifndef BuildXF86VidModeLibrary +#define BuildXF86VidModeLibrary BuildXF86VidModeExt +#endif +#ifndef BuildXF86MiscExt +#define BuildXF86MiscExt NO +#endif +#ifndef BuildXF86MiscLibrary +#define BuildXF86MiscLibrary BuildXF86MiscExt +#endif +#ifndef BuildXF86DGA +#define BuildXF86DGA NO +#endif +#ifndef BuildXF86DGALibrary +#define BuildXF86DGALibrary BuildXF86DGA +#endif +#ifndef BuildDPMSExt +#define BuildDPMSExt NO +#endif +#ifndef BuildDPMSLibrary +#define BuildDPMSLibrary BuildDPMSExt +#endif + +#ifndef InstallLibManPages +#define InstallLibManPages YES +#endif +#ifndef InstallXtermSetUID +#define InstallXtermSetUID YES /* xterm needs to be set uid */ +#endif +#ifndef InstallXinitConfig +#define InstallXinitConfig NO /* install sample xinit config */ +#endif +#ifndef InstallXdmConfig +#define InstallXdmConfig NO /* install sample xdm config */ +#endif +#ifndef XdmServersType /* what Xservers files to use */ +#if BuildServer +#define XdmServersType ws +#else +#define XdmServersType fs +#endif +#endif +#ifndef InstallFSConfig +#define InstallFSConfig NO /* install sample fs config */ +#endif +#ifndef InstallAppDefFiles +#define InstallAppDefFiles YES /* install application defaults */ +#endif +#ifndef CompressAllFonts +#define CompressAllFonts NO +#endif +#ifndef ThreadedX +#if HasPosixThreads || HasCThreads +#define ThreadedX YES /* multi-threaded libraries */ +#else +#define ThreadedX NO +#endif +#endif +#ifndef ThreadedProject +#define ThreadedProject ThreadedX +#endif +#ifndef HasWChar32 +#define HasWChar32 SystemV4 +#endif +#ifndef HasXdmAuth +#define HasXdmAuth NO /* if you can not use XDM-AUTH* */ +#endif +#ifndef PrimaryScreenResolution +#define PrimaryScreenResolution 72 /* a common resolution */ +#endif +#ifndef DefaultFontPath +#if PrimaryScreenResolution < 88 /* (75 + 100) / 2 */ +#define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/Speedo/,$(FONTDIR)/Type1/,$(FONTDIR)/75dpi/,$(FONTDIR)/100dpi/ +#else +#define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/Speedo/,$(FONTDIR)/Type1/,$(FONTDIR)/100dpi/,$(FONTDIR)/75dpi/ +#endif +#endif +#ifndef DefaultRGBDatabase +#define DefaultRGBDatabase $(LIBDIR)/rgb +#endif +#ifndef UseRgbTxt +#define UseRgbTxt NO /* default is to compile with dbm */ +#endif +#ifndef UseMemLeak +#define UseMemLeak NO +#endif +#ifndef SpecialMalloc +#define SpecialMalloc NO +#endif +#ifndef UseInternalMalloc +#define UseInternalMalloc NO +#endif +#ifndef FontCompilerFlags +#define FontCompilerFlags -t +#endif +#ifndef ConnectionFlags +#if HasStreams +#define ConnectionFlags -DSTREAMSCONN +#else +#if HasDECnet +#define ConnectionFlags -DTCPCONN -DUNIXCONN -DDNETCONN +#else +#define ConnectionFlags -DTCPCONN -DUNIXCONN +#endif +#endif +#endif +#ifndef ProjectThreadsDefines +#define ProjectThreadsDefines -DXTHREADS +#endif +#ifndef FontOSDefines +#define FontOSDefines /**/ +#endif +#ifndef FontDefines +#define FontDefines -DFONT_SNF -DFONT_BDF -DFONT_PCF -DCOMPRESSED_FONTS FontOSDefines +#endif +#ifndef XawI18nDefines +#if SystemV4 +#define XawI18nDefines -DHAS_WCTYPE_H +#else +#define XawI18nDefines -DUSE_XWCHAR_STRING +#endif +#endif +#if Malloc0ReturnsNull +#ifndef XMalloc0ReturnsNullDefines +#define XMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines +#endif +#ifndef XtMalloc0ReturnsNullDefines +#define XtMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines +#endif +#endif +#ifndef ExtensionOSDefines +#define ExtensionOSDefines /**/ +#endif + +#ifndef ExtensionDefines +#ifndef MITMiscDefines +#if BuildMITMiscExt +#define MITMiscDefines -DMITMISC +#else +#define MITMiscDefines /**/ +#endif +#endif +#ifndef XTestDefines +#if BuildTestExt +#define XTestDefines -DXTEST +#else +#define XTestDefines /**/ +#endif +#endif +#ifndef XSyncDefines +#if BuildSyncExt +#define XSyncDefines -DXSYNC +#else +#define XSyncDefines /**/ +#endif +#endif +#ifndef XCMiscDefines +#if BuildXCMiscExt +#define XCMiscDefines -DXCMISC +#else +#define XCMiscDefines /**/ +#endif +#endif +#ifndef ShapeDefines +#if BuildShapeExt +#define ShapeDefines -DSHAPE +#else +#define ShapeDefines /**/ +#endif +#endif +#ifndef PexDefines +#if BuildPexExt +#define PexDefines -DPEXEXT +#else +#define PexDefines /**/ +#endif +#endif +#ifndef GlxDefines +#if BuildGlxExt +#define GlxDefines -DGLXEXT +#else +#define GlxDefines /**/ +#endif +#endif +#ifndef ShmDefines +#if HasShm +#define ShmDefines -DMITSHM +#else +#define ShmDefines /**/ +#endif +#endif +#ifndef XInputDefines +#if BuildXInputExt +#define XInputDefines -DXINPUT +#else +#define XInputDefines /**/ +#endif +#endif +#ifndef XieDefines +#if BuildXIE +#define XieDefines -DXIE +#else +#define XieDefines /**/ +#endif +#endif +#ifndef PrintOnlyServer +#define PrintOnlyServer YES +#endif +#ifndef XprintDefines +#if BuildXprint +#if PrintOnlyServer +#define XprintDefines -DPIXPRIV +#else +#define XprintDefines -DXPRINT -DPIXPRIV +#endif +#else +#define XprintDefines /**/ +#endif +#endif +#ifndef XkbDefines +#if BuildXKB +#define XkbDefines -DXKB +#else +#define XkbDefines /**/ +#endif +#endif +#ifndef XkbClientDefines +#if UseXKBInClients +#define XkbClientDefines -DXKB +#else +#define XkbClientDefines /**/ +#endif +#endif +#ifndef XkbServerDefines +#define XkbServerDefines /**/ +#endif +#ifndef LbxDefines +#if BuildLBX +#define LbxDefines -DLBX +#else +#define LbxDefines /**/ +#endif +#endif +#ifndef BigReqDefines +#if BuildBigReqsExt +#define BigReqDefines -DBIGREQS +#else +#define BigReqDefines /**/ +#endif +#endif + +#ifndef DBEDefines +#if BuildDBE +#define DBEDefines -DDBE +#else +#define DBEDefines /**/ +#endif +#endif + +#ifndef PervasiveDBEDefines +#define PervasiveDBEDefines /* -DNEED_DBE_BUF_BITS -DNEED_DBE_BUF_VALIDATE */ +#endif + +#ifndef MultibufferDefines +#if BuildMultibuffer +#define MultibufferDefines -DMULTIBUFFER +#else +#define MultibufferDefines /**/ +#endif +#endif + +#ifndef ScreenSaverExtensionDefines +#if BuildScreenSaverExt +#define ScreenSaverExtensionDefines -DSCREENSAVER +#else +#define ScreenSaverExtensionDefines /**/ +#endif +#endif +#ifndef VidTuneExtensionDefines +#if BuildXF86VidModeExt +#define VidTuneExtensionDefines -DXF86VIDMODE +#else +#define VidTuneExtensionDefines /**/ +#endif +#endif +#ifndef XF86MiscExtensionDefines +#if BuildXF86MiscExt +#define XF86MiscExtensionDefines -DXF86MISC +#else +#define XF86MiscExtensionDefines /**/ +#endif +#endif + +#ifndef DPMSExtensionDefines +#if BuildDPMSExt +#define DPMSExtensionDefines -DDPMSExtension +#else +#define DPMSExtensionDefines /**/ +#endif +#endif + +#ifndef RECORDDefines +#if BuildRECORD +#define RECORDDefines -DXRECORD +#else +#define RECORDDefines /**/ +#endif +#endif + +#ifndef AppgroupDefines +#if BuildAppgroup +#define AppgroupDefines -DXAPPGROUP +#else +#define AppgroupDefines /**/ +#endif +#endif + +#ifndef XCSecurityDefines +#if BuildXCSecurity +#define XCSecurityDefines -DXCSECURITY +#else +#define XCSecurityDefines /**/ +#endif +#endif + +#ifndef SitePervasiveExtensionDefines +#define SitePervasiveExtensionDefines /**/ +#endif +#ifndef PervasiveExtensionDefines +#define PervasiveExtensionDefines ShapeDefines XInputDefines XkbDefines \ + LbxDefines AppgroupDefines \ + XCSecurityDefines PervasiveDBEDefines \ + DPMSExtensionDefines \ + XprintDefines SitePervasiveExtensionDefines +#endif +#ifndef SiteExtensionDefines +#define SiteExtensionDefines /**/ +#endif +#ifndef BaseExtensionDefines +#define BaseExtensionDefines MultibufferDefines MITMiscDefines XTestDefines \ + XSyncDefines XCMiscDefines RECORDDefines \ + PexDefines GlxDefines ShmDefines XieDefines BigReqDefines \ + VidTuneExtensionDefines XF86MiscExtensionDefines \ + DBEDefines ScreenSaverExtensionDefines \ + SiteExtensionDefines +#endif +#define ExtensionDefines BaseExtensionDefines ExtensionOSDefines +#endif /* ExtensionDefines */ + +#ifndef HasStrcasecmp +#define HasStrcasecmp YES +#endif + +#ifndef StrcasecmpDefines +# if HasStrcasecmp +# define StrcasecmpDefines /**/ +# else +# define StrcasecmpDefines -DNEED_STRCASECMP +# endif +#endif + +#ifndef ServerXdmcpDefines +#define ServerXdmcpDefines -DXDMCP +#endif +#ifndef ServerOSDefines +#define ServerOSDefines /**/ +#endif +#if HasKrb5 +#ifndef Krb5Defines +#define Krb5Defines -DK5AUTH +#endif +#else +#define Krb5Defines /**/ +#endif +#ifndef ServerExtraDefines +#define ServerExtraDefines /* -DPIXPRIV */ +#endif +#ifndef ServerAssertDefines +#define ServerAssertDefines -DNDEBUG +#endif +#ifndef ServerDefines +#define ServerDefines StandardDefines PervasiveExtensionDefines ServerExtraDefines ServerAssertDefines +#endif +#ifndef PexDipexDefines +#define PexDipexDefines /**/ +#endif +#ifndef PexDdpexDefines +#define PexDdpexDefines /**/ +#endif +#ifndef PexPhigsDefines +#ifndef PexShmIPC +#define PexShmIPC HasShm +#endif +#if PexShmIPC +#define PexPhigsDefines /**/ +#else +#define PexPhigsDefines -DPEX_API_SOCKET_IPC +#endif +#endif +#ifndef PexClientDefines +#define PexClientDefines -DPEX_SI_PHIGS +#endif +#ifndef PhigsInclude +#ifdef UseInstalled +#define PhigsInclude -I$(INCDIR)/X11 +#else +#define PhigsInclude -I$(BUILDINCDIR) +#endif +#endif +#ifndef PexCDebugFlags +#define PexCDebugFlags DebuggableCDebugFlags +#endif +#ifndef PexCCOptions +#ifdef LibraryCCOptions +#define PexCCOptions LibraryCCOptions +#else +#define PexCCOptions DefaultCCOptions +#endif +#endif +#ifndef DefaultFSConfigFile +#define DefaultFSConfigFile $(LIBDIR)/fs/config +#endif +#ifndef BinDir +#ifdef ProjectRoot +#define BinDir Concat(ProjectRoot,/bin) +#else +#define BinDir /usr/bin/X11 +#endif +#endif +#ifndef BuildIncRoot +#define BuildIncRoot $(TOP)/exports +#endif +#ifndef BuildIncDir +#define BuildIncDir $(BUILDINCROOT)/include +#endif +#ifndef BuildIncTop +#define BuildIncTop ../.. /* relative to BuildIncDir */ +#endif +#ifndef XTop +# if ImportX11 +# define XTop $(TOP)/imports/x11 +# else +# define XTop $(TOP) +# endif +#endif +#ifndef XBuildIncRoot +# if ImportX11 +# define XBuildIncRoot $(XTOP) +# else +# define XBuildIncRoot $(XTOP)/exports +# endif +#endif +#ifndef XBuildIncDir +# define XBuildIncDir $(XBUILDINCROOT)/include/X11 +#endif +#ifndef XBuildIncTop +# define XBuildIncTop ../../.. +#endif +#ifndef XBuildBinDir +# define XBuildBinDir $(XBUILDINCROOT)/bin +#endif +#ifndef BuildBinDir +#define BuildBinDir $(TOP)/exports/bin +#endif +#ifndef BuildBinTop +#define BuildBinTop ../.. /* relative to BuildBinDir */ +#endif +#ifndef BuildLibDir +#define BuildLibDir $(TOP)/exports/lib +#endif +#ifndef BuildLibTop +#define BuildLibTop ../.. /* relative to BuildLibDir */ +#endif +#ifndef LibDir +#define LibDir $(USRLIBDIR)/X11 +#endif +#ifndef ConfigDir +#define ConfigDir $(LIBDIR)/config +#endif +#ifndef FontDir +#define FontDir $(LIBDIR)/fonts +#endif +#ifndef AdmDir +#define AdmDir /usr/adm +#endif +#ifndef XinitDir +#define XinitDir $(LIBDIR)/xinit +#endif +#ifndef XdmDir +#define XdmDir $(LIBDIR)/xdm +#endif +#ifndef XdmVarDir +#define XdmVarDir $(VARLIBDIR)/xdm +#endif +#ifndef XdmAuthDir +#define XdmAuthDir $(LIBDIR)/xdm +#endif +#ifndef XdmConfigurationSubdirectory /* under xdm sources */ +#define XdmConfigurationSubdirectory config +#endif +#ifndef TwmDir +#define TwmDir $(LIBDIR)/twm +#endif +#ifndef XsmDir +#define XsmDir $(LIBDIR)/xsm +#endif +#ifndef NlsDir +#define NlsDir $(LIBDIR)/nls +#endif +#ifndef XLocaleDir +#define XLocaleDir $(LIBDIR)/locale +#endif +#ifndef PexApiDir +#define PexApiDir $(LIBDIR)/PEX +#endif +#ifndef LbxproxyDir +#define LbxproxyDir $(LIBDIR)/lbxproxy +#endif +#ifndef LbxproxyConfigSubdir /* under lbxproxy sources */ +#define LbxproxyConfigSubdir config +#endif +#ifndef ProxyManagerDir +#define ProxyManagerDir $(LIBDIR)/proxymngr +#endif +#ifndef XPrintDir +#define XPrintDir $(LIBDIR) +#endif +#ifndef ServerConfigDir +#define ServerConfigDir $(LIBDIR)/xserver +#endif +#ifndef VarDirectory +#define VarDirectory /var/X11 +#endif +#ifndef InstallSecurityConfig +#define InstallSecurityConfig YES /* Install sample security policy */ +#endif +#ifndef XFileSearchPathBase +/* avoid SCCS keyword */ +#define XFileSearchPathBase Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S) +#endif +#ifndef XFileSearchPathDefault +#ifdef XAppLoadDir +/* avoid SCCS keyword */ +#define XFileSearchPathDefault XAppLoadDir/Concat(%N%C,%S):XAppLoadDir/%N%S:XFileSearchPathBase +#else +#define XFileSearchPathDefault XFileSearchPathBase +#endif +#endif +#ifndef XAppLoadDir +#define XAppLoadDir /etc/app-defaults +#endif +#ifndef XtErrorPrefix +#define XtErrorPrefix /* as empty string */ +#endif +#ifndef XtExtraDefines +#define XtExtraDefines /* as empty string */ +#endif +#ifndef XtWarningPrefix +#define XtWarningPrefix /* as empty string */ +#endif +#ifndef OsNameDefines +#define OsNameDefines /* as nothing */ +#endif +#ifndef DefaultUserPath /* for xdm */ +#define DefaultUserPath :/bin:/usr/bin:$(BINDIR):/usr/ucb +#endif +#ifndef DefaultSystemPath /* for xdm */ +#define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR):/usr/ucb +#endif +#ifndef DefaultSystemShell /* for xdm to set in SHELL */ +#define DefaultSystemShell BourneShell +#endif +#ifndef ContribDir +#define ContribDir $(XTOP)/../contrib /* contrib is outside core tree */ +#endif +#ifndef UnsupportedDir +#define UnsupportedDir $(XTOP)/unsupported +#endif +#ifndef AllocateLocalDefines +#define AllocateLocalDefines /**/ +#endif + +#ifndef ForceNormalLib +#define ForceNormalLib (HasGcc && !HasGcc2) +#endif + +#ifndef XkbComp +#define XkbComp xkbcomp +#endif + +XCOMM ----------------------------------------------------------------------- +XCOMM X Window System make variables; these need to be coordinated with rules + +/* + * This list must be reflected in the DIRS_TO_BUILD list in the top-level + * Makefile. + */ + XTOP = XTop + BINDIR = BinDir /* programs */ + BUILDINCROOT = BuildIncRoot /* base of build loc */ + BUILDINCDIR = BuildIncDir /* built headers */ + BUILDINCTOP = BuildIncTop /* top relative to BUILDINCDIR */ + BUILDLIBDIR = BuildLibDir /* built libraries */ + BUILDLIBTOP = BuildLibTop /* top relative to BUILDLIBDIR */ + BUILDBINDIR = BuildBinDir /* built binaries */ + BUILDBINTOP = BuildBinTop /* top relative to BUILDBINDIR */ + XBUILDINCROOT = XBuildIncRoot /* base of X build loc */ + XBUILDINCDIR = XBuildIncDir + XBUILDINCTOP = XBuildIncTop + XBUILDBINDIR = XBuildBinDir + INCDIR = $(INCROOT) /* header files */ + ADMDIR = AdmDir /* server log files */ + LIBDIR = LibDir /* rgb, XErrorDB, etc. */ + TOP_X_INCLUDES = TopXInclude + +#ifdef VarDirectory + VARDIR = VarDirectory +#endif + + FONTDIR = FontDir /* font directories */ + XINITDIR = XinitDir /* xinit config files */ + XDMDIR = XdmDir /* xdm config files */ + XDMVARDIR = XdmVarDir /* xdm config files */ + TWMDIR = TwmDir /* twm config files */ + XSMDIR = XsmDir /* xsm config files */ + NLSDIR = NlsDir /* nls files */ + XLOCALEDIR = XLocaleDir /* locale files */ + PEXAPIDIR = PexApiDir /* PEX support files */ + LBXPROXYDIR = LbxproxyDir /* lbxproxy files */ + PROXYMANAGERDIR = ProxyManagerDir /* proxy manager config files */ + XPRINTDIR = XPrintDir /* print config file root */ + XAPPLOADDIR = XAppLoadDir /* application default resource dir */ + FONTCFLAGS = FontCompilerFlags + + INSTAPPFLAGS = $(INSTDATFLAGS) /* XXX - this should go away - XXX */ + +#if UseInstalledX11 + RGB = rgb /* assume BINDIR in path */ + FONTC = bdftopcf /* assume BINDIR in path */ + MKFONTDIR = mkfontdir /* assume BINDIR in path */ +#else + RGB = $(CLIENTENVSETUP) $(XBUILDBINDIR)/rgb + FONTC = $(CLIENTENVSETUP) $(XBUILDBINDIR)/bdftopcf + MKFONTDIR = $(CLIENTENVSETUP) $(XBUILDBINDIR)/mkfontdir +#endif + + DOCUTILSRC = $(XTOP)/doc/util + CLIENTSRC = $(TOP)/clients + DEMOSRC = $(TOP)/demos + XDOCMACROS = $(DOCUTILSRC)/macros.t + XIDXMACROS = $(DOCUTILSRC)/indexmacros.t + PROGRAMSRC = $(TOP)/programs + LIBSRC = $(XTOP)/lib + FONTSRC = $(XTOP)/fonts + INCLUDESRC = BuildIncDir + XINCLUDESRC = $(INCLUDESRC)/X11 + SERVERSRC = $(XTOP)/programs/Xserver + CONTRIBSRC = ContribDir + UNSUPPORTEDSRC = UnsupportedDir + DOCSRC = $(XTOP)/doc + RGBSRC = $(XTOP)/programs/rgb + BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf + MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir + FONTSERVERSRC = $(PROGRAMSRC)/xfs + FONTINCSRC = $(XTOP)/include/fonts + EXTINCSRC = $(XTOP)/include/extensions + TRANSCOMMSRC = $(LIBSRC)/xtrans + TRANS_INCLUDES = -I$(TRANSCOMMSRC) +#ifdef X11ProjectRoot + XPROJECTROOT = X11ProjectRoot +#endif +#if HasSharedLibraries +#ifndef DontUseLibPathVar +#ifndef BuildLibPathVar +#define BuildLibPathVar LD_LIBRARY_PATH +#endif +#endif +#endif +#ifdef BuildLibPathVar +# ifdef SystemBuildLibPath + SYSTEMENVLIBDIR = SystemBuildLibPath +# endif + XENVLIBDIR = X11BuildLibPath + CLIENTENVSETUP = BuildLibPathVar=BuildLibPath +#else + CLIENTENVSETUP = +#endif + +#ifndef ShLibIncludeFile +/* need this to make ANSI-style preprocessors happy */ +#define ShLibIncludeFile +#endif + +#include ShLibIncludeFile + +#ifndef XBuildLibDir +# define XBuildLibDir BuildLibDir +#endif + +#ifndef SharedLibX11 +#define SharedLibX11 HasSharedLibraries +#endif +#ifndef NormalLibX11 +#define NormalLibX11 (!SharedLibX11 | ForceNormalLib) +#endif +#ifndef DebugLibX11 +#define DebugLibX11 NO /* debugged X library */ +#endif +#ifndef ProfileLibX11 +#define ProfileLibX11 NO /* profiled X library */ +#endif + XLIBSRC = $(LIBSRC)/X11 +#if SharedLibX11 +#ifndef SharedX11Rev +#define SharedX11Rev 6.1 +#endif +SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev) +#else +ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir) +#endif + XLIBONLY = $(XONLYLIB) + +#if BuildThreadStubLibrary +#ifndef SharedLibXThrStub +#define SharedLibXThrStub YES +#endif +#ifndef NormalLibXThrStub +#define NormalLibXThrStub NO +#endif +#ifndef DebugLibXThrStub +#define DebugLibXThrStub NO +#endif +#ifndef ProfileLibXThrStub +#define ProfileLibXThrStub NO +#endif + XTHRSTUBLIBSRC = $(LIBSRC)/XThrStub +#if SharedLibXThrStub +#ifndef SharedXThrStubRev +#define SharedXThrStubRev 6.0 +#endif +SharedLibReferences(XTHRSTUB,XThrStub,$(XTHRSTUBLIBSRC),SOXTHRSTUBREV,SharedXThrStubRev) +#else +ProjectUnsharedLibReferences(XTHRSTUB,XThrStub,$(XTHRSTUBSRC),XBuildLibDir) +#endif +#endif + +#if BuildScreenSaverLibrary +#ifndef SharedLibXss +#define SharedLibXss NO +#endif +#ifndef NormalLibXss +#define NormalLibXss YES +#endif +#ifndef DebugLibXss +#define DebugLibXss NO +#endif +#ifndef ProfileLibXss +#define ProfileLibXss NO +#endif +#endif + +#if BuildXF86MiscLibrary +#ifndef SharedLibXxf86misc +#define SharedLibXxf86misc NO +#endif +#ifndef NormalLibXxf86misc +#define NormalLibXxf86misc YES +#endif +#ifndef DebugLibXxf86misc +#define DebugLibXxf86misc NO +#endif +#ifndef ProfileLibXxf86misc +#define ProfileLibXxf86misc NO +#endif +#endif + +#if BuildXF86VidModeLibrary +#ifndef SharedLibXxf86vm +#define SharedLibXxf86vm NO +#endif +#ifndef NormalLibXxf86vm +#define NormalLibXxf86vm YES +#endif +#ifndef DebugLibXxf86vm +#define DebugLibXxf86vm NO +#endif +#ifndef ProfileLibXxf86vm +#define ProfileLibXxf86vm NO +#endif +#endif + +#if BuildXF86DGALibrary +#ifndef SharedLibXxf86dga +#define SharedLibXxf86dga NO +#endif +#ifndef NormalLibXxf86dga +#define NormalLibXxf86dga YES +#endif +#ifndef DebugLibXxf86dga +#define DebugLibXxf86dga NO +#endif +#ifndef ProfileLibXxf86dga +#define ProfileLibXxf86dga NO +#endif +#endif + +#if BuildDPMSLibrary +#ifndef SharedLibXdpms +#define SharedLibXdpms NO +#endif +#ifndef NormalLibXdpms +#define NormalLibXdpms YES +#endif +#ifndef DebugLibXdpms +#define DebugLibXdpms NO +#endif +#ifndef ProfileLibXdpms +#define ProfileLibXdpms NO +#endif +#endif + +#ifndef SharedLibXext +#define SharedLibXext HasSharedLibraries +#endif +#ifndef NormalLibXext +#define NormalLibXext (!SharedLibXext | ForceNormalLib) +#endif +#ifndef DebugLibXext +#define DebugLibXext NO /* debugged Xext library */ +#endif +#ifndef ProfileLibXext +#define ProfileLibXext NO /* profiled Xext library */ +#endif + XEXTLIBSRC = $(LIBSRC)/Xext +#if SharedLibXext +#ifndef SharedXextRev +#define SharedXextRev 6.3 +#endif +SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev) +#else +ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir) +#endif +LINTEXTENSIONLIB = $(LINTEXTENSION) + DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB) + XLIB = $(EXTENSIONLIB) $(XONLYLIB) + LINTXLIB = $(LINTXONLYLIB) + +#if BuildScreenSaverLibrary + XSSLIBSRC = $(LIBSRC)/Xss +#if SharedLibXss +#ifndef SharedXssRev +#define SharedXssRev 1.0 +#endif +SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev) +#else +ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir) +#endif +#endif + +#if BuildXF86MiscLibrary + XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc +#if SharedLibXxf86misc +#ifndef SharedXxf86miscRev +#define SharedXxf86miscRev 1.0 +#endif +SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev) +#else +ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir) +#endif +#endif + +#if BuildXF86VidModeLibrary + XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm +#if SharedLibXxf86vm +#ifndef SharedXxf86vmRev +#define SharedXxf86vmRev 1.0 +#endif +SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev) +#else +ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) +#endif +#endif + +#if BuildXF86DGALibrary + XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga +#if SharedLibXxf86dga +#ifndef SharedXxf86dgaRev +#define SharedXxf86dgaRev 1.0 +#endif +SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev) +#else +ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) +#endif +#endif + +#if BuildDPMSLibrary + XDPMSLIBSRC = $(LIBSRC)/Xdpms +#if SharedLibXdpms +#ifndef SharedXdpmsRev +#define SharedXdpmsRev 1.0 +#endif +SharedLibReferences(XDPMS,Xdpms,$(XDPMSLIBSRC),SOXDPMSREV,SharedXdpmsRev) +#else +ProjectUnsharedLibReferences(XDPMS,Xdpms,$(XDPMSLIBSRC),XBuildLibDir) +#endif +#endif + +#ifndef SharedLibXau +#define SharedLibXau NO /* don't need shared form */ +#endif +#ifndef NormalLibXau +#define NormalLibXau (!SharedLibXau | ForceNormalLib) +#endif +#ifndef DebugLibXau +#define DebugLibXau NO /* debugged auth library */ +#endif +#ifndef ProfileLibXau +#define ProfileLibXau NO /* profiled auth library */ +#endif + XAUTHSRC = $(LIBSRC)/Xau +#if SharedLibXau +#ifndef SharedXauRev +#define SharedXauRev 6.0 +#endif +SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev) +#else +ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXdmcp +#define SharedLibXdmcp NO /* don't need shared form */ +#endif +#ifndef NormalLibXdmcp +#define NormalLibXdmcp (!SharedLibXdmcp | ForceNormalLib) +#endif +#ifndef DebugLibXdmcp +#define DebugLibXdmcp NO /* debugged XDMCP library */ +#endif +#ifndef ProfileLibXdmcp +#define ProfileLibXdmcp NO /* profiled XDMCP library */ +#endif + XDMCPLIBSRC = $(LIBSRC)/Xdmcp +#if SharedLibXdmcp +#ifndef SharedXdmcpRev +#define SharedXdmcpRev 6.0 +#endif +SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev) +#else +ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXmu +#define SharedLibXmu HasSharedLibraries +#endif +#ifndef NormalLibXmu +#define NormalLibXmu (!SharedLibXmu | ForceNormalLib) +#endif +#ifndef DebugLibXmu +#define DebugLibXmu NO /* debugged Xmu library */ +#endif +#ifndef ProfileLibXmu +#define ProfileLibXmu NO /* profiled Xmu library */ +#endif + XMUSRC = $(LIBSRC)/Xmu +#if SharedLibXmu +#ifndef SharedXmuRev +#define SharedXmuRev 6.0 +#endif +SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev) +#else +ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir) +#endif + +#ifndef SharedOldX +#define SharedOldX HasSharedLibraries +#endif +#ifndef NormalOldX +#define NormalOldX (!SharedOldX | ForceNormalLib) +#endif +#ifndef DebugOldX +#define DebugOldX NO /* debugged old X library */ +#endif +#ifndef ProfileOldX +#define ProfileOldX NO /* profiled old X library */ +#endif + OLDXLIBSRC = $(LIBSRC)/oldX +#if SharedOldX +#ifndef SharedOldXRev +#define SharedOldXRev 6.0 +#endif +SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev) +#else +ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXp +#define SharedLibXp HasSharedLibraries +#endif +#ifndef NormalLibXp +#define NormalLibXp (!SharedLibXp | ForceNormalLib) +#endif +#ifndef DebugLibXp +#define DebugLibXp NO /* debugged Xp library */ +#endif +#ifndef ProfileLibXp +#define ProfileLibXp NO /* profiled Xp library */ +#endif + XPLIBSRC = $(LIBSRC)/Xp +#if SharedLibXp +#ifndef SharedXpRev +#define SharedXpRev 6.2 +#endif +SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev) +#else +ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXt +#define SharedLibXt HasSharedLibraries +#endif +#ifndef NormalLibXt +#define NormalLibXt (!SharedLibXt | ForceNormalLib) +#endif +#ifndef DebugLibXt +#define DebugLibXt NO /* debugged toolkit library */ +#endif +#ifndef ProfileLibXt +#define ProfileLibXt NO /* profiled toolkit library */ +#endif + TOOLKITSRC = $(LIBSRC)/Xt +#if SharedLibXt +#ifndef SharedXtRev +#define SharedXtRev 6.0 +#endif +SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev) +#else +ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir) +#endif + DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB) + XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB) + LINTXTOOLLIB = $(LINTXTOOLONLYLIB) + +#ifndef SharedLibXa +#define SharedLibXa (HasSharedLibraries & HasCplusplus) +#endif +#ifndef NormalLibXa +/* #define NormalLibXa ((!SharedLibXa | ForceNormalLib) & HasCplusplus) */ +#define NormalLibXa YES /* needed for current tests, will correct later */ +#endif +#ifndef DebugLibXa +#define DebugLibXa NO /* debugged audio library */ +#endif +#ifndef ProfileLibXa +#define ProfileLibXa NO /* profiled audio library */ +#endif + XALIBSRC = $(LIBSRC)/Xa +#if SharedLibXa +#ifndef SharedXaRev +#define SharedXaRev 1.0 +#endif +SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev) +#else +UnsharedLibReferences(XA,Xa,$(XALIBSRC)) +#endif + +#ifndef SharedLibXaw +#define SharedLibXaw HasSharedLibraries +#endif +#ifndef NormalLibXaw +#define NormalLibXaw (!SharedLibXaw | ForceNormalLib) +#endif +#ifndef DebugLibXaw +#define DebugLibXaw NO /* debugged widget library */ +#endif +#ifndef ProfileLibXaw +#define ProfileLibXaw NO /* profiled widget library */ +#endif + AWIDGETSRC = $(LIBSRC)/Xaw +#if SharedLibXaw +#ifndef SharedXawRev +#define SharedXawRev 6.1 +#endif +SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev) +#else +ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXi +#define SharedLibXi HasSharedLibraries +#endif +#ifndef NormalLibXi +#define NormalLibXi (!SharedLibXi | ForceNormalLib) +#endif +#ifndef DebugLibXi +#define DebugLibXi NO /* debugged Xi library */ +#endif +#ifndef ProfileLibXi +#define ProfileLibXi NO /* profiled Xi library */ +#endif + XILIBSRC = $(LIBSRC)/Xi +#if SharedLibXi +#ifndef SharedXiRev +#define SharedXiRev 6.0 +#endif +SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev) +#else +ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXtst +#define SharedLibXtst HasSharedLibraries +#endif +#ifndef NormalLibXtst +#define NormalLibXtst (!SharedLibXtst | ForceNormalLib) +#endif +#ifndef DebugLibXtst +#define DebugLibXtst NO /* debugged Xtst library */ +#endif +#ifndef ProfileLibXtst +#define ProfileLibXtst NO /* profiled Xtst library */ +#endif + XTESTLIBSRC = $(LIBSRC)/Xtst +#if SharedLibXtst +#ifndef SharedXtstRev +#define SharedXtstRev 6.1 +#endif +SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev) +#else +ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibPex +#define SharedLibPex HasSharedLibraries +#endif +#ifndef NormalLibPex +#define NormalLibPex (!SharedLibPex | ForceNormalLib) +#endif +#ifndef DebugLibPex +#define DebugLibPex NO /* debugged PEX5 library */ +#endif +#ifndef ProfileLibPex +#define ProfileLibPex NO /* profiled PEX5 library */ +#endif + PEXLIBSRC = $(LIBSRC)/PEX5 +#if SharedLibPex +#ifndef SharedPexRev +#define SharedPexRev 6.0 +#endif +SharedLibReferences(PEX,PEX5,$(PEXLIBSRC),SOPEXREV,SharedPexRev) +#else +ProjectUnsharedLibReferences(PEX,PEX5,$(PEXLIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXie +#define SharedLibXie HasSharedLibraries +#endif +#ifndef NormalLibXie +#define NormalLibXie (!SharedLibXie | ForceNormalLib) +#endif +#ifndef DebugLibXie +#define DebugLibXie NO /* debugged XIE library */ +#endif +#ifndef ProfileLibXie +#define ProfileLibXie NO /* profiled XIE library */ +#endif + XIELIBSRC = $(LIBSRC)/XIE +#if SharedLibXie +#ifndef SharedXieRev +#define SharedXieRev 6.0 +#endif +SharedLibReferences(XIE,XIE,$(XIELIBSRC),SOXIEREV,SharedXieRev) +#else +ProjectUnsharedLibReferences(XIE,XIE,$(XIELIBSRC),XBuildLibDir) +#endif + +#ifndef SharedLibPhigs +#define SharedLibPhigs NO /* XXX - haven't made it sharable yet */ +#endif +#ifndef NormalLibPhigs +#define NormalLibPhigs (!SharedLibPhigs | ForceNormalLib) +#endif + PHIGSLIBSRC = $(LIBSRC)/PHIGS +#if SharedLibPhigs +#ifndef SharedPhigsRev +#define SharedPhigsRev 6.0 +#endif +SharedLibReferences(PHIGS,phigs,$(PHIGSLIBSRC),SOPHIGSREV,SharedPhigsRev) +#else +ProjectUnsharedLibReferences(PHIGS,phigs,$(PHIGSLIBSRC),XBuildLibDir) +#endif + +ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) + +#ifndef SharedLibICE +#define SharedLibICE HasSharedLibraries +#endif +#ifndef NormalLibICE +#define NormalLibICE (!SharedLibICE | ForceNormalLib) +#endif +#ifndef DebugLibICE +#define DebugLibICE NO /* debugged ICE library */ +#endif +#ifndef ProfileLibICE +#define ProfileLibICE NO /* profiled ICE library */ +#endif + ICESRC = $(LIBSRC)/ICE +#if SharedLibICE +#ifndef SharedICERev +#define SharedICERev 6.3 +#endif +SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev) +#else +ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir) +#endif + +#ifndef SharedLibSM +#define SharedLibSM HasSharedLibraries +#endif +#ifndef NormalLibSM +#define NormalLibSM (!SharedLibSM | ForceNormalLib) +#endif +#ifndef DebugLibSM +#define DebugLibSM NO /* debugged SM library */ +#endif +#ifndef ProfileLibSM +#define ProfileLibSM NO /* profiled SM library */ +#endif + SMSRC = $(LIBSRC)/SM +#if SharedLibSM +#ifndef SharedSMRev +#define SharedSMRev 6.0 +#endif +SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev) +#else +ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir) +#endif + +#ifndef SharedLibXkey +#define SharedLibXkey HasSharedLibraries +#endif +#ifndef NormalLibXkey +#define NormalLibXkey (!SharedLibXkey | ForceNormalLib) +#endif +#ifndef DebugLibXkey +#define DebugLibXkey NO /* debugged Xkey library */ +#endif +#ifndef ProfileLibXkey +#define ProfileLibXkey NO /* profiled Xkey library */ +#endif + XKEYSRC = $(LIBSRC)/Xkey +#if SharedLibXkey +#ifndef SharedXkeyRev +#define SharedXkeyRev 6.0 +#endif +SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev) +#else +ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir) +#endif + +#ifndef SharedLibFS +#define SharedLibFS NO /* for now */ +#endif +#ifndef NormalLibFS +#define NormalLibFS (!SharedLibFS | ForceNormalLib) +#endif +#ifndef DebugLibFS +#define DebugLibFS NO /* debugged FS library */ +#endif +#ifndef ProfileLibFS +#define ProfileLibFS NO /* profiled FS library */ +#endif + FSLIBSRC = $(LIBSRC)/FS +#if SharedLibFS +#ifndef SharedFSRev +#define SharedFSRev 6.0 +#endif +SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev) +#else +ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir) +#endif + + FONTLIBSRC = $(LIBSRC)/font +ProjectUnsharedLibReferences(FONT,font,$(FONTLIBSRC),XBuildLibDir) + + XPMLIBSRC = $(LIBSRC)/Xpm +#if SharedLibXpm +#ifndef SharedXpmRev +#define SharedXpmRev 4.8 +#endif +SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev) +#else +ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir) +#endif + +#ifndef LdLibraryPath +#define LdLibraryPath LD_LIBRARY_PATH +#endif + +#ifdef BuildXKBlib + XKBFILELIBSRC = $(LIBSRC)/xkbfile +ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir) +#ifndef XkbClientDepLibs +#if UseXKBInClients +#define XkbClientDepLibs $(DEPXKBFILELIB) +#else +#define XkbClientDepLibs /**/ +#endif +#endif +#ifndef XkbClientLibs +#if UseXKBInClients +#define XkbClientLibs $(XKBFILELIB) +#else +#define XkbClientLibs /**/ +#endif +#endif +#if defined(UseInstalled) || defined(OS2Architecture) + XKBCOMPCMD = XkbComp /* assume BINDIR in path */ +#else + XKBCOMPSRC = $(PROGRAMSRC)/xkbcomp + XKBCOMPCMD = $(CLIENTENVSETUP) $(XKBCOMPSRC)/xkbcomp +#endif +#else /* !BuildXKBlib */ +#ifndef XkbClientDepLibs +#define XkbClientDepLibs +#endif +#ifndef XkbClientLibs +#define XkbClientLibs +#endif +#endif /* BuildXKBlib */ + +#ifdef BuildXKBuilib + XKBUILIBSRC = $(LIBSRC)/xkbui +ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir) +#ifndef XkbuiLibs +#define XkbuiLibs $(XKBUILIB) +#endif +#ifndef XkbuiDepLibs +#define XkbuiDepLibs $(DEPXKBFILELIB) +#endif +#else /* !BuildXKBuilib */ +#ifndef XkbuiLibs +#define XkbuiLibs +#endif +#ifndef XkbuiDepLibs +#define XkbuiDepLibs +#endif +#endif /* BuildXKBuilib */ + +#ifndef XawClientDepLibs +#define XawClientDepLibs $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB) +#endif +#ifndef XawClientLibs +#define XawClientLibs $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB) +#endif + +#ifndef NeedDefaultDepLibs +#define NeedDefaultDepLibs YES +#endif + +#if NeedDefaultDepLibs +/* + * Individual libraries should override this + */ +#if HasSharedLibraries || defined(UseInstalled) + DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB) +#else + DEPLIBS = $(LOCAL_LIBRARIES) +#endif + DEPLIBS1 = $(DEPLIBS) + DEPLIBS2 = $(DEPLIBS) + DEPLIBS3 = $(DEPLIBS) + DEPLIBS4 = $(DEPLIBS) + DEPLIBS5 = $(DEPLIBS) + DEPLIBS6 = $(DEPLIBS) + DEPLIBS7 = $(DEPLIBS) + DEPLIBS8 = $(DEPLIBS) + DEPLIBS9 = $(DEPLIBS) + DEPLIBS10 = $(DEPLIBS) +#endif /* NeedDefaultDepLibs */ + + +/* + * InstallAppDefaults - simple rules to install application default file + */ +#ifndef InstallAppDefaults +#define InstallAppDefaults(class) InstallAppDefaultsLong(class,class) +#endif /* InstallAppDefaults */ + +/* + * InstallAppDefaultsLong - general rule to install application default file + * if the InstallAppDefFiles configuration parameter is set. + */ +#ifndef InstallAppDefaultsLong +#if InstallAppDefFiles +#define InstallAppDefaultsLong(file,class) @@\ +LinkVarDirectory(app-defaults,.,app-defaults,.) @@\ +InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class) +#else +#define InstallAppDefaultsLong(file,class) @@\ +LinkVarDirectory(app-defaults,.,app-defaults,.) @@\ +InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class) +#endif /* InstallAppDefFiles */ +#endif /* InstallAppDefaultsLong */ + +/* + * MakeFontsDir - generate rules to build fonts.dir database. + */ +#ifndef MakeFontsDir +#define MakeFontsDir(deplist) @@\ +all:: fonts.dir @@\ + @@\ +fonts.dir: deplist @@\ + RunProgram(MKFONTDIR,.) @@\ + @@\ +clean:: @@\ + RemoveFile(fonts.dir) +#endif /* MakeFontsDir */ + + +/* + * MakeFonts - generate rules to build font database. + */ +#ifndef MakeFonts +#define MakeFonts() @@\ +all:: $(OBJS) @@\ + @@\ +MakeFontsDir($(OBJS)) @@\ + @@\ +clean:: @@\ + RemoveFiles(*.pcf *.pcf.Z *.pcf.gz) +#endif /* MakeFonts */ + + +/* + * InstallFontObjs - generate rules to install font files + */ +#ifndef InstallFontObjs +#define InstallFontObjs(objs,dest) @@\ +InstallMultipleFlags(objs,dest,$(INSTDATFLAGS)) @@\ + @@\ +InstallTarget(install,fonts.dir,$(INSTDATFLAGS),dest) +#endif /* InstallFontObjs */ + + +/* + * InstallFonts - generate rules to install font files + */ +#ifndef InstallFonts +#define InstallFonts(dest) @@\ +InstallFontObjs($(OBJS),dest) +#endif /* InstallFonts */ + + +/* + * InstallFontAliases - generate rules to install font aliases databases. + */ +#ifndef InstallFontAliases +#define InstallFontAliases(dest) @@\ +InstallTarget(install,fonts.alias,$(INSTDATFLAGS),dest) +#endif /* InstallFontAliases */ + +#ifndef FontSrc +#define FontSrc(basename) basename.bdf +#endif + +#ifndef FontBaseObj +#define FontBaseObj(basename)basename.pcf +#endif + +/* + * InstallFontScale - generate rules to install font scale database. + */ +#ifndef InstallFontScale +#define InstallFontScale(dest) @@\ +InstallTarget(install,fonts.scale,$(INSTDATFLAGS),dest) +#endif /* InstallFontScale */ + +/* + * UncompressedFontTarget + */ +#ifndef UncompressedFontTarget +#define UncompressedFontTarget(basename) @@\ +FontBaseObj(basename): FontSrc(basename) @@\ + RunProgram(FONTC,$(FONTCFLAGS) $? -o $@) +#endif /* UncompressedFontTarget */ + +/* + * CompressedFontTarget + */ +#ifndef GzipFontCompression +#define GzipFontCompression NO +#endif + +#ifndef CompressedFontTarget +#if GzipFontCompression +#define CompressedFontTarget(basename) @@\ +FontBaseObj(basename).gz: FontSrc(basename) @@\ + RunProgram(FONTC,$(FONTCFLAGS) $?) | $(GZIPCMD) > $@ +#else +#define CompressedFontTarget(basename) @@\ +FontBaseObj(basename).Z: FontSrc(basename) @@\ + RunProgram(FONTC,$(FONTCFLAGS) $?) | $(COMPRESS) > $@ +#endif +#endif /* CompressedFontTarget */ + +#if !defined(FontTarget) && !defined(FontObj) +#ifdef CompressAllFonts +#define FontTarget(basename) CompressedFontTarget(basename) +#if GzipFontCompression +#define FontObj(basename) FontBaseObj(basename).gz +#else +#define FontObj(basename) FontBaseObj(basename).Z +#endif +#else +#define FontTarget(basename) UncompressedFontTarget(basename) +#define FontObj(basename) FontBaseObj(basename) +#endif /* CompressAllFonts */ +#endif + +/* + * MakeXkbDir + */ +#ifndef MakeXkbDir +#define MakeXkbDir(basedir,subdir) @@\ +all:: Concat(subdir,.dir) @@\ + @@\ +Concat(subdir,.dir): @@\ + $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) '*' @@\ + @@\ +InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir) +#endif + +/* + * PostProcessTroffPS - by default moves the working output into place, + * but can be a hook for more complicated post-processing. + */ +#ifndef PostProcessTroffPS +#define PostProcessTroffPS(temp,real) $(MV) temp real +#endif + +#ifndef MakeSimpleDoc +#define MakeSimpleDoc(file,srcs) @@\ +all:: file.PS @@\ +.PRECIOUS: file.PS @@\ + @@\ +file.PS: srcs @@\ + -$(TROFF) $(MSMACROS) $(XDOCMACROS) srcs 2> index.raw > file.nPS \@@\ + && PostProcessTroffPS(file.nPS,$@) @@\ + @if grep '^[^1-9.]' index.raw; then exit 1; else test $$? = 1; fi @@\ + @@\ +file.txt: srcs @@\ + $(NROFF) $(MSMACROS) $(XDOCMACROS) srcs 2> index.raw > $@ @@\ + @@\ +clean:: @@\ + $(RM) index.raw file.nPS file.PS file.txt +#endif + +#ifndef MakeTblDoc +#define MakeTblDoc(file,srcs) @@\ +all:: file.PS @@\ +.PRECIOUS: file.PS @@\ + @@\ +file.PS: srcs @@\ + -$(TBL) $(XDOCMACROS) srcs | $(TROFF) $(MSMACROS) 2> index.raw > file.nPS \@@\ + && PostProcessTroffPS(file.nPS,$@) @@\ + @if grep '^[^1-9.]' index.raw; then exit 1; else test $$? = 1; fi @@\ + @@\ +file.txt: srcs @@\ + $(TBL) $(XDOCMACROS) srcs | $(NROFF) $(MSMACROS) 2> index.raw | $(COL) > $@ @@\ + @@\ +clean:: @@\ + $(RM) index.raw file.nPS file.PS file.txt +#endif + +#ifndef MakeEqnDoc +#define MakeEqnDoc(file,srcs) @@\ +all:: file.PS @@\ +.PRECIOUS: file.PS @@\ + @@\ +file.PS: srcs @@\ + -$(TBL) $(XDOCMACROS) srcs | $(EQN) | $(TROFF) $(MSMACROS) 2> index.raw > file.nPS \@@\ + && PostProcessTroffPS(file.nPS,$@) @@\ + @if grep '^[^1-9.]' index.raw; then exit 1; else test $$? = 1; fi @@\ + @@\ +file.txt: srcs @@\ + $(TBL) $(XDOCMACROS) srcs | $(NEQN) | $(NROFF) $(MSMACROS) 2> index.raw | $(COL) > $@ @@\ + @@\ +clean:: @@\ + $(RM) index.raw file.nPS file.PS file.txt +#endif + +#ifndef MakeDocIndex +#define MakeDocIndex(file,srcs) @@\ +all:: file.idx.PS @@\ + @@\ +file.idx.PS: srcs index.raw @@\ + tail -1 index.raw > index.pageno @@\ + grep '^[1-9]' index.raw | sort -f '-t:' +1 -3 +0n -1n | awk -f $(DOCUTILSRC)/fixindex.awk | awk -f $(DOCUTILSRC)/block.awk > index.troff @@\ + cat srcs $(XIDXMACROS) index.troff | $(TROFF) -me > file.idx.nPS \@@\ + && $(MV) file.idx.nPS $@ @@\ + $(RM) index.troff index.pageno @@\ + @@\ +clean:: @@\ + $(RM) index.troff index.pageno file.idx.nPS file.idx.PS +#endif + +#ifndef MakeLatexDoc +#if HasLatex +#define MakeLatexDoc(file,src) @@\ +all:: file.PS @@\ + @@\ +file.dvi: src @@\ + $(LATEX) src @@\ + @@\ +file.PS: file.dvi @@\ + $(DVIPS) -o file.nPS file && $(MV) file.nPS $@ @@\ + @@\ +clean:: @@\ + RemoveFiles(file.nPS file.PS file.dvi file.log) @@\ + RemoveFiles(file.aux file.toc file.lof file.lot) +#else /* HasLatex */ +#define MakeLatexDoc(file,src) @@\ +all:: @@\ +file.PS: src @@\ + @echo "cannot make file.PS: no latex on this system"; exit 1 +#endif /* HasLatex (else) */ +#endif /* MakeLatexDoc */ diff --git a/Xserver/config/cf/apollo.cf b/Xserver/config/cf/apollo.cf new file mode 100644 index 0000000..a802b1a --- /dev/null +++ b/Xserver/config/cf/apollo.cf @@ -0,0 +1,38 @@ +XCOMM platform: $XConsortium: apollo.cf /main/34 1996/09/28 16:09:07 rws $ + +/* + * Minimally tested, and only in the bsd4.3 environment. X_NOT_POSIX is not + * in Xosdefs.h, because we suspect someone might want to try building with + * POSIX support in the sysv environment (the OS doc seems to imply that + * POSIX is supported in sysv). + */ + +#ifndef OSName +#define OSName Domain/OS SR10.3 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 10 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 3 +#endif + +#ifndef CCompilerMajorVersion +#define CCompilerMajorVersion 6 +#endif +#ifndef CCompilerMinorVersion +#define CCompilerMinorVersion 8 +#endif + +#define StandardDefines -DX_NOT_POSIX +#define BuildServer NO +#define HasNdbm YES +#define ConnectionFlags -DTCPCONN + +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(NROFF) $(MANMACROS) file.man > file.mantxt @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.mantxt $(DESTDIR)destdir/dest.$(MANSUFFIX) @@\ + $(RM) file.mantxt diff --git a/Xserver/config/cf/bsd.cf b/Xserver/config/cf/bsd.cf new file mode 100644 index 0000000..feba08c --- /dev/null +++ b/Xserver/config/cf/bsd.cf @@ -0,0 +1,29 @@ +XCOMM platform: $XConsortium: bsd.cf /main/24 1996/09/28 16:09:13 rws $ + +#ifndef OSName +#define OSName 4.3bsd +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 3 +#endif + +#define BootstrapCFlags -DNOSTDHDRS +#define StandardDefines -DNOSTDHDRS -DCSRG_BASED +#define HasVoidSignalReturn NO +#define HasBsearch NO +#define DirFailPrefix - +#define AvoidNullMakeCommand YES + +#define BuildServer NO + +#ifdef VaxArchitecture +#define UnalignedReferencesAllowed YES /* if arbitrary deref is okay */ +#endif + +#if OSMajorVersion >= 4 && OSMinorVersion >= 3 +#define SetTtyGroup YES +#endif diff --git a/Xserver/config/cf/bsdLib.rules b/Xserver/config/cf/bsdLib.rules new file mode 100644 index 0000000..9e3aed0 --- /dev/null +++ b/Xserver/config/cf/bsdLib.rules @@ -0,0 +1,238 @@ +XCOMM $XConsortium: bsdLib.rules /main/3 1996/09/28 16:09:18 rws $ + + + + + +XCOMM $XFree86: xc/config/cf/bsdLib.rules,v 3.4.2.1 1997/05/11 05:04:04 dawes Exp $ +/* + * NetBSD/FreeBSD shared library rules + */ + +#ifndef UseElfFormat +#define UseElfFormat NO +#endif + +#if !UseElfFormat +/* a.out shared libs */ +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef -DBSDSHLIB +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -Bshareable +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -fpic +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest +@@\ + +#endif /* InstallSharedLibrary */ + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + LinkBuildLibrary($@) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) + +#endif /* SharedLibraryTarget */ + +#ifndef SharedDepModuleTarget +#define SharedDepModuleTarget(name,deps,solist) @@\ +AllTarget(name) @@\ + @@\ +name: deps @@\ + $(RM) $@~ @@\ + $(LD) -o $@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @@\ +clean:: @@\ + $(RM) name + +#endif /* SharedDepModuleTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryDataTarget */ + +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +/* + * SharedLibReferences - variables for shared libraries + */ +#ifndef SharedLibReferences +#define SharedLibReferences(varname,libname,libsource,revname,rev) @@\ +revname = rev @@\ +Concat3(DEP,varname,LIB) = SharedLibDependencies(libname,libsource,revname) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +/* + * SharedDSLibReferences - variables for shared libraries + */ +#ifndef SharedDSLibReferences +#define SharedDSLibReferences(varname,libname,libsource,revname,rev) @@\ +revname = rev @@\ +Concat3(DEP,varname,LIB) = SharedDSLibDependencies(libname,libsource,revname) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) Concat3(Shared,libname,Reqs) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +#else /* UseElfFormat */ + +/* + * NetBSD/FreeBSD (ELF) shared library rules + * Cloned from Linux ELF rules, with the following major change: + * + * Shared libraries depend on -lc. Since we don't have to worry + * about libc vs. libg, etc., this is a good idea. (This is actually + * implied by using $(CC) to build the shared libraries.) + */ + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef ForceNormalLib +#define ForceNormalLib YES +#endif + +#ifndef BaseShLibReqs +#define BaseShLibReqs /* -lc implied by $(CC) */ +#endif + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -shared -Wl,-rpath,$(USRLIBDIR) +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -fPIC +#endif +#ifndef PositionIndependentCplusplusFlags +#define PositionIndependentCplusplusFlags -fPIC +#endif +#ifndef ExtraLoadFlags +#ifdef UseInstalled +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH) +#else +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH) -Wl,-rpath-link,$(BUILDLIBDIR) +#endif +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + * NOTE: file must be executable, hence "INSTBINFLAGS" + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + (T=`echo Concat($(DESTDIR)dest/lib,libname.so.rev) | sed 's/\.[^\.]*$$//'`;\ + $(RM) $$T && $(LN) Concat(lib,libname.so.rev) $$T) @@\ + (T=`echo Concat($(DESTDIR)dest/lib,libname.so.rev) | sed 's/\.so.*$$/.so/'`;\ + $(RM) $$T && $(LN) Concat(lib,libname.so.rev) $$T) @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + $(LN) Concat(lib,libname.so.rev) Concat($(DESTDIR)dest/lib,libname.so) +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#ifdef UseInstalled +#define LinkBuildSonameLibrary(lib) true +#else +#define LinkBuildSonameLibrary(lib) (RemoveFile($(BUILDLIBDIR)/lib); \ + cd $(BUILDLIBDIR); $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/lib .) +#endif + +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist @@\ + $(RM) $@~ @@\ + SONAME=`echo $@ | sed 's/\.[^\.]*$$//'`; \ @@\ + (cd down; $(CC) -o up/$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$SONAME solist $(REQUIREDLIBS) BaseShLibReqs); \ @@\ + $(RM) $$SONAME; $(LN) $@ $$SONAME; \ @@\ + LinkBuildSonameLibrary($$SONAME) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) + +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ + +#endif /* UseElfFormat */ diff --git a/Xserver/config/cf/bsdLib.tmpl b/Xserver/config/cf/bsdLib.tmpl new file mode 100644 index 0000000..57266d3 --- /dev/null +++ b/Xserver/config/cf/bsdLib.tmpl @@ -0,0 +1,59 @@ +XCOMM $XConsortium: bsdLib.tmpl /main/3 1996/09/28 16:09:25 rws $ +XCOMM $XFree86: xc/config/cf/bsdLib.tmpl,v 3.3.2.1 1997/07/27 02:41:03 dawes Exp $ + +/* + * NetBSD/FreeBSD/OpenBSD shared library template + */ + +#if !UseElfFormat + +#ifndef SharedXtReqs +#define SharedXtReqs /**/ +#endif +#ifndef SharedXawReqs +#define SharedXawReqs /**/ +#endif +#ifndef SharedXmuReqs +# if !defined(Mc68020Architecture) || !defined(OpenBSDArchitecture) +# define SharedXmuReqs $(LDPRELIBS) $(XTOOLONLYLIB) $(XONLYLIB) +# else + /* At least the hp300 and the sun3 OpenBSD ports need that */ +# define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(EXTENSIONLIB) $(XONLYLIB) +# endif +#endif + +#else /* UseElfFormat */ + +/* + * NetBSD/FreeBSD (ELF) shared library template + * Cloned from Linux ELF rules, but with a minor number. + */ + +#ifndef FixupLibReferences +#define FixupLibReferences() @@\ +XMULIBONLY = -lXmu @@\ +XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB) +#endif + +#ifndef XawClientLibs +#define XawClientLibs $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XLIB) +#endif + +#define CplusplusLibC +#define FrescoSysLibs CplusplusLibC MathLibrary + +#define SharedX11Reqs +#define SharedOldXReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXtReqs $(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB) +#define SharedXawReqs $(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXmuReqs $(LDPRELIB) $(XTOOLLIB) $(XLIB) +#define SharedXextReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXiReqs $(LDPRELIB) $(XLIB) +#define SharedPexReqs $(LDPRELIB) $(XLIBONLY) MathLibrary +#define SharedXtstReqs $(LDPRELIB) $(XLIB) +#define SharedXieReqs $(LDPRELIB) $(XLIBONLY) +#define SharedSMReqs $(LDPRELIB) $(ICELIB) +#define SharedFrescoReqs $(LDPRELIB) $(XLIBONLY) FrescoSysLibs +#define SharedXtfReqs $(LDPRELIB) $(FRESCOLIB) $(XTOOLLIB) $(XLIB) FrescoSysLibs + +#endif /* UseElfFormat */ diff --git a/Xserver/config/cf/bsdi.cf b/Xserver/config/cf/bsdi.cf new file mode 100644 index 0000000..f457e95 --- /dev/null +++ b/Xserver/config/cf/bsdi.cf @@ -0,0 +1,151 @@ +XCOMM platform: $XConsortium: bsdi.cf /main/22 1996/09/28 16:09:30 rws $ +XCOMM platform: $XFree86: xc/config/cf/bsdi.cf,v 3.23.2.5 1998/02/09 14:33:21 robin Exp $ + +#ifndef OSName +#define OSName BSD/OS 2.0 +#endif +#ifndef OSVendor +#define OSVendor BSDI +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 2 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif + +#define HasPutenv YES +#define HasBSD44Sockets YES + +XCOMM BSD/OS 2.0 comes with gcc 2.6.3 installed as gcc2 and gcc. +XCOMM gcc 1.42 is installed as cc. +XCOMM BSD/386 1.1 comes with gcc 2.5.8 installed as gcc2. +XCOMM BSD/386 1.0 comes with gcc 1.40 as the only compiler. +XCOMM The default is to use gcc2 on release 2.0 and 1.1 and gcc1 on 1.0 +XCOMM The defaults can be altered by defining "HasGcc2" as YES or NO in +XCOMM xf86site.def + +#ifndef HasGcc +# define HasGcc YES +#endif +#if OSMajorVersion > 1 || OSMinorVersion >= 1 +# ifndef HasGcc2 +# define HasGcc2 YES +# endif +#endif +#if HasGcc2 +# ifndef HasGcc2ForCplusplus +# define HasGcc2ForCplusplus YES +# endif +# define CcCmd gcc2 +# define OptimizedCDebugFlags DefaultGcc2i386Opt +#else +# define CcCmd cc +# define OptimizedCDebugFlags -O +#endif +#define CppCmd /usr/bin/cpp +#define TroffCmd groff -Tps +#define MkdirHierCmd mkdir -p +#define SetTtyGroup YES +#define HasNdbm YES +#define HasWChar32 YES +#define DirFailPrefix - +#define AvoidNullMakeCommand YES +# ifndef GccUsesGas +# define GccUsesGas YES +# endif +#if HasGcc +#if defined(UseInstalled) && (!defined(XF86LinkKit) || !XF86LinkKit) +#define DefaultCCOptions /**/ +#else +#define DefaultCCOptions -ansi +#endif +#endif + +#if GccUsesGas +# define GccGasOption -DGCCUSESGAS +#else +# define GccGasOption /**/ +#endif + +#define HasShm YES +#define ServerExtraDefines GccGasOption XFree86ServerDefines +#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +#define XFree86ConsoleDefines /**/ +#define AsmDefines -DUSE_GAS + +#define StandardDefines -DCSRG_BASED + +#define InstallCmd /usr/bin/install +#define EqnCmd eqn -Tps +#define NeqnCmd eqn -Tascii + COL = col + NEQN = NeqnCmd + NROFF = nroff + +#define DefaultUserPath :/bin:/usr/bin:/usr/local/bin:$(BINDIR) +#define DefaultSystemPath /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR) + +XCOMM Man pages need to be formatted when installed, so override the default +XCOMM imake rules. + +#define ManSuffix 1 +#define ManSourcePath $(MANPATH)/cat + +#define InstallManPageLong(file,destdir,dest) @@\ +all:: file.0 @@\ + @@\ +file.0:: file.man @@\ + @if [ -f file.man ]; \ @@\ + then \ @@\ + cat file.man | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.man; \ @@\ + cp /tmp/$$$$.man file.0; \ @@\ + $(RM) /tmp/$$$$.man; \ @@\ + fi @@\ + @@\ +file.man:: @@\ + @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + -@if [ -f file.0 ]; \ @@\ + then \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\ + fi + +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ + InstallManPageLong(file,destdir,dest) + +#define InstallMultipleManSuffix(list,dest,suff) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.suff; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$$$.suff $(DESTDIR)dest/$$i.0; \ @@\ + $(RM) /tmp/$$$$.suff); \ @@\ + done + +#define InstallMultipleMan(list,dest) @@\ + InstallMultipleManSuffix(list,dest,man) + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in aliases; do \ @@\ + (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.0;\ @@\ + (cd $(DESTDIR)destdir; $(LN) file.0 $$i.0);\ @@\ + ); \ @@\ + done + +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) + +/* + * These seem redundant, but leave them in for now. + */ +#define i386Bsd 1 +#define i386Bsdi 1 +#include diff --git a/Xserver/config/cf/cde.rules b/Xserver/config/cf/cde.rules new file mode 100644 index 0000000..108cf48 --- /dev/null +++ b/Xserver/config/cf/cde.rules @@ -0,0 +1,226 @@ +/* + * @OSF_COPYRIGHT@ + * COPYRIGHT NOTICE + * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. + * ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for + * the full copyright text. + * + * (c) Copyright 1996 Digital Equipment Corporation. + * (c) Copyright 1996 Hewlett-Packard Company. + * (c) Copyright 1996 International Business Machines Corp. + * (c) Copyright 1996 Sun Microsystems, Inc. + * (c) Copyright 1996 Novell, Inc. + * (c) Copyright 1996 FUJITSU LIMITED. + * (c) Copyright 1996 Hitachi. + */ +XCOMM $XConsortium: cde.rules /main/2 1996/12/04 10:13:04 swick $ + +/* Note whether we are the top level project. */ +#ifndef SeenTopLevelProject +# define SeenTopLevelProject YES +# define CDEIsTopLevelProject YES +#else +# define CDEIsTopLevelProject NO +#endif + +/* Include the Motif project rules file. */ +#include + + +/* Use the in-tree CDE by default. */ +#ifndef UseInstalledCDE +# define UseInstalledCDE NO +#endif +#ifdef UseInstalled +# undef UseInstalledCDE +# define UseInstalledCDE YES +#endif + +#ifndef ImportCDE +# ifdef UseImports +# define ImportCDE YES +# else +# define ImportCDE NO +# endif +#endif +#if UseInstalledCDE +# undef ImportCDE +# define ImportCDE NO +#endif + +/* If CDE has a different ProjectRoot we need to search the regular ones too. */ +#ifdef CDEProjectRoot +# define CUsrLibDirPath Concat(MUsrLibDirPath,:$(CDEPROJECTROOT)/lib) +#else +# define CUsrLibDirPath MUsrLibDirPath +#endif +#ifdef UsrLibDirPath +# undef UsrLibDirPath +#endif +#define UsrLibDirPath CUsrLibDirPath + +#if ImportCDE +# define CLdPreLibs -L$(CDELIBSRC) +#elif defined(UseInstalledCDE) && defined(CDEProjectRoot) +# define CLdPreLibs -L$(CDEPROJECTROOT)/lib +#else +# define CLdPreLibs /**/ +#endif +#ifdef LdPreLibs +# undef LdPreLibs +#endif +#define LdPreLibs LdPreLib CLdPreLibs MLdPreLibs XLdPreLibs + +#ifdef CDEProjectRoot +# define CLdPostLibs -L$(CDEPROJECTROOT)/lib +#else +# define CLdPostLibs /**/ +#endif +#ifdef LdPostLibs +# undef LdPostLibs +#endif +#define LdPostLibs LdPostLib CLdPostLibs MLdPostLibs XLdPostLibs + +#ifdef TopIncludes +# undef TopIncludes +#endif +#define TopIncludes TopInclude $(TOP_CDE_INCLUDES) $(TOP_MOTIF_INCLUDES) $(TOP_X_INCLUDES) + +#if UseInstalledCDE && defined(CdeProjectRoot) +# define CDEBuildLibPath $(CDEPROJECTROOT)/lib +#elif UseInstalledCDE +# define CDEBuildLibPath $(USRLIBDIR) +#elif ImportCDE +# define CDEBuildLibPath $(CDELIBSRC) +#else +# define CDEBuildLibPath $(TOP)/exports/lib +#endif +#ifdef BuildLibPath +# undef BuildLibPath +#endif +#ifdef SystemBuildLibPath +# define BuildLibPath \ +$(DTENVLIBDIR):$(MOTIFENVLIBDIR):$(XENVLIBDIR):$(SYSTEMENVLIBDIR) +#else +# define BuildLibPath $(DTENVLIBDIR):$(MOTIFENVLIBDIR):$(XENVLIBDIR) +#endif + + +#ifndef CdeInstallationTop +# define CdeInstallationTop /usr/dt +#endif +#ifndef CdeConfigurationTop +# define CdeConfigurationTop /etc/dt +#endif +#ifndef CdeLogFilesTop +# define CdeLogFilesTop /var/dt +#endif +#ifndef CdeUserTop +# define CdeUserTop .dt +#endif + +#ifndef CdeProjectDefines +# define CdeProjectDefines \ + -DANSICPP -DMULTIBYTE -DNLS16 \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion +#endif +#ifdef ProjectDefines +# undef ProjectDefines +#endif +#define ProjectDefines X11ProjectDefines MotifProjectDefines CdeProjectDefines + +#ifndef CdeCplusplusProjectDefines +# define CdeCplusplusProjectDefines CdeProjectDefines +#endif +#ifdef CplusplusProjectDefines +# undef CplusplusProjectDefines +#endif +#define CplusplusProjectDefines \ + X11CplusplusProjectDefines MotifCplusplusProjectDefines CdeCplusplusProjectDefines + +/* + * Doc build rules + */ + +/* + * MakeSdlVolume - generate rules to create an SDL volume, in the specified + * directory, from an SGML source doc. + * Note: the volume name must match the directory name. + */ +#ifndef MakeSdlVolume +#define MakeSdlVolume(vol,dir,env,opts,dep) @@\ +all:: dir/vol.sdl @@\ + @@\ +dir/vol.sdl: dep @@\ + MakeDir(dir) @@\ + env $(DTDOCBOOK) $(DTDOCBOOKOPTIONS) opts -o dir/vol.sdl vol/book.sgm @@\ + @@\ +clean:: @@\ + $(RM) dir/vol.sdl vol/book.log +#endif + +/* + * MakeTocFile - generate rules to create an SGML TOC file. + * Note: the volume name must match the directory name. + */ +#ifndef MakeTocFile +#define MakeTocFile(vol,env,opts,ttle,ident,dep) @@\ +all:: vol/TOC.sgm @@\ + @@\ +vol/TOC.sgm: dep @@\ + MakeDir($(DTINFOGENTMPDIR)) @@\ + env $(DTINFOGEN) tocgen -T $(DTINFOGENTMPDIR) $(DTINFOGENOPTIONS) opts -f vol/TOC.sgm -id ident -title ttle vol/book.sgm @@\ + @@\ +clean:: @@\ + $(RM) vol/TOC.sgm +#endif + +#ifndef MakeTocFile3 +#define MakeTocFile3(vol,env,opts,ttle,ident,dep1,dep2,dep3) @@\ +all:: vol/TOC.sgm @@\ + @@\ +vol/TOC.sgm: dep1 @@\ +vol/TOC.sgm: dep2 @@\ +vol/TOC.sgm: dep3 @@\ + MakeDir($(DTINFOGENTMPDIR)) @@\ + env $(DTINFOGEN) tocgen -T $(DTINFOGENTMPDIR) $(DTINFOGENOPTIONS) opts -f vol/TOC.sgm -id ident -title ttle vol/book.sgm @@\ + @@\ +clean:: @@\ + $(RM) vol/TOC.sgm +#endif + +/* + * TocFileDep - generate TOC file dependency rule + */ +#ifndef TocFileDep +#define TocFileDep(vol,dep) @@\ +vol/TOC.sgm: dep +#endif + +/* + * MakeInfolib - generate rules to create an infolib. + */ +#ifndef MakeInfolib +#define MakeInfolib(infolib,bkcase,env,opts,dep) @@\ +all:: infolib/bkcase/dtsearch/dtsearch.ocf @@\ + @@\ +infolib/bkcase/dtsearch/dtsearch.ocf: dep @@\ + MakeDir($(DTINFOGENTMPDIR)) @@\ + MakeDir(infolib) @@\ + env $(DTINFOGEN) build -T $(DTINFOGENTMPDIR) $(DTINFOGENOPTIONS) opts -l infolib bookcase.bc +#endif + +/* + * InfolibDep - generate infolib dependency rule - Highly depending on MMDB! + */ +#ifndef InfolibDep +#define InfolibDep(infolib,bkcase,dep) @@\ +infolib/bkcase/dtsearch/dtsearch.ocf: dep +#endif + +#ifndef InfolibDep3 +#define InfolibDep3(infolib,bkcase,dep1,dep2,dep3) @@\ +infolib/bkcase/dtsearch/dtsearch.ocf: dep1 @@\ +infolib/bkcase/dtsearch/dtsearch.ocf: dep2 @@\ +infolib/bkcase/dtsearch/dtsearch.ocf: dep3 +#endif diff --git a/Xserver/config/cf/cde.tmpl b/Xserver/config/cf/cde.tmpl new file mode 100644 index 0000000..5dfa301 --- /dev/null +++ b/Xserver/config/cf/cde.tmpl @@ -0,0 +1,439 @@ +XCOMM $XConsortium: cde.tmpl /main/2 1996/12/04 10:13:09 swick $ + +/* Include the Motif project template file. */ +#include + +#ifndef _CUse +# if UseInstalledCDE +# define _CUse(a,b) a +# else +# define _CUse(a,b) b +# endif +#endif + +#ifndef _CUseCat +# if (defined(__STDC__) && !defined(UnixCpp)) || defined(AnsiCpp) +# if UseInstalledCDE +# define _CUseCat(a,b,c) a##c +# else +# define _CUseCat(a,b,c) b##c +# endif +# else +# if UseInstalledCDE +# define _CUseCat(a,b,c) a/**/c +# else +# define _CUseCat(a,b,c) b/**/c +# endif +# endif +#endif + +#ifndef CDETop +# if ImportCDE +# define CDETop $(TOP)/imports/cde +# else +# define CDETop $(TOP) +# endif +#endif + +#define CDESharedRev 2.1 + +#ifndef SharedLibPam +# define SharedLibPam HasSharedLibraries +#endif +#ifndef NormalLibPam +# define NormalLibPam (!SharedLibPam | ForceNormalLib) +#endif +#ifndef DebugLibPam +# define DebugLibPam NO +#endif +#ifndef ProfileLibPam +# define ProfileLibPam NO +#endif +#ifndef SharedPamRev +# define SharedPamRev CDESharedRev +#endif + +#ifndef SharedLibTt +# define SharedLibTt HasSharedLibraries +#endif +#ifndef NormalLibTt +# define NormalLibTt (!SharedLibTt | ForceNormalLib) +#endif +#ifndef DebugLibTt +# define DebugLibTt NO +#endif +#ifndef ProfileLibTt +# define ProfileLibTt NO +#endif +#ifndef SharedTtRev +# define SharedTtRev CDESharedRev +#endif + +#ifndef SharedLibDtSvc +# define SharedLibDtSvc HasSharedLibraries +#endif +#ifndef NormalLibDtSvc +# define NormalLibDtSvc (!SharedLibDtSvc | ForceNormalLib) +#endif +#ifndef DebugLibDtSvc +# define DebugLibDtSvc NO +#endif +#ifndef ProfileLibDtSvc +# define ProfileLibDtSvc NO +#endif +#ifndef SharedDtSvcRev +# define SharedDtSvcRev CDESharedRev +#endif + +#ifndef SharedLibDtSearch +# define SharedLibDtSearch HasSharedLibraries +#endif +#ifndef NormalLibDtSearch +# define NormalLibDtSearch (!SharedLibDtSearch | ForceNormalLib) +#endif +#ifndef DebugLibDtSearch +# define DebugLibDtSearch NO +#endif +#ifndef ProfileLibDtSearch +# define ProfileLibDtSearch NO +#endif +#ifndef SharedDtSearchRev +# define SharedDtSearchRev CDESharedRev +#endif + +#ifndef SharedLibDtWidget +# define SharedLibDtWidget HasSharedLibraries +#endif +#ifndef NormalLibDtWidget +# define NormalLibDtWidget (!SharedLibDtWidget | ForceNormalLib) +#endif +#ifndef DebugLibDtWidget +# define DebugLibDtWidget NO +#endif +#ifndef ProfileLibDtWidget +# define ProfileLibDtWidget NO +#endif +#ifndef SharedDtWidgetRev +# define SharedDtWidgetRev CDESharedRev +#endif + +#ifndef SharedLibDtHelp +# define SharedLibDtHelp HasSharedLibraries +#endif +#ifndef NormalLibDtHelp +# define NormalLibDtHelp (!SharedLibDtHelp | ForceNormalLib) +#endif +#ifndef DebugLibDtHelp +# define DebugLibDtHelp NO +#endif +#ifndef ProfileLibDtHelp +# define ProfileLibDtHelp NO +#endif +#ifndef SharedDtHelpRev +# define SharedDtHelpRev CDESharedRev +#endif + +#ifndef SharedLibDtPrint +# define SharedLibDtPrint HasSharedLibraries +#endif +#ifndef NormalLibDtPrint +# define NormalLibDtPrint (!SharedLibDtPrint | ForceNormalLib) +#endif +#ifndef DebugLibDtPrint +# define DebugLibDtPrint NO +#endif +#ifndef ProfileLibDtPrint +# define ProfileLibDtPrint NO +#endif +#ifndef SharedDtPrintRev +# define SharedDtPrintRev CDESharedRev +#endif + +#ifndef SharedLibDtTerm +# define SharedLibDtTerm HasSharedLibraries +#endif +#ifndef NormalLibDtTerm +# define NormalLibDtTerm (!SharedLibDtTerm | ForceNormalLib) +#endif +#ifndef DebugLibDtTerm +# define DebugLibDtTerm NO +#endif +#ifndef ProfileLibDtTerm +# define ProfileLibDtTerm NO +#endif +#ifndef SharedDtTermRev +# define SharedDtTermRev CDESharedRev +#endif + +#ifndef SharedLibDtMrm +# define SharedLibDtMrm HasSharedLibraries +#endif +#ifndef NormalLibDtMrm +# define NormalLibDtMrm (!SharedLibDtMrm | ForceNormalLib) +#endif +#ifndef DebugLibDtMrm +# define DebugLibDtMrm NO +#endif +#ifndef ProfileLibDtMrm +# define ProfileLibDtMrm NO +#endif +#ifndef SharedDtMrmRev +# define SharedDtMrmRev CDESharedRev +#endif + +#ifndef SharedLibDtMmdb +# define SharedLibDtMmdb HasSharedLibraries +#endif +#ifndef NormalLibDtMmdb +# define NormalLibDtMmdb (!SharedLibDtMmdb | ForceNormalLib) +#endif +#ifndef DebugLibDtMmdb +# define DebugLibDtMmdb NO +#endif +#ifndef ProfileLibDtMmdb +# define ProfileLibDtMmdb NO +#endif +#ifndef SharedDtMmdbRev +# define SharedDtMmdbRev CDESharedRev +#endif + +#ifndef SharedLibCsa +# define SharedLibCsa HasSharedLibraries +#endif +#ifndef NormalLibCsa +# define NormalLibCsa (!SharedLibCsa | ForceNormalLib) +#endif +#ifndef DebugLibCsa +# define DebugLibCsa NO +#endif +#ifndef ProfileLibCsa +# define ProfileLibCsa NO +#endif +#ifndef SharedCsaRev +# define SharedCsaRev CDESharedRev +#endif + +#ifndef DtLocalesToBuild +#define DtLocalesToBuild de_DE.ISO8859-1 es_ES.ISO8859-1 fr_FR.ISO8859-1 it_IT.ISO8859-1 ja_JP.dt-eucJP +#endif + +#ifndef DtCodeGen +# if UseInstalledCDE +# define DtCodeGen dtcodegen +# else +# define DtCodeGen $(CLIENTENVSETUP) $(CDESRC)/dtappbuilder/src/abmf/dtcodegen +# endif +#endif + +#ifndef BuildCDEDoc +# define BuildCDEDoc YES +#endif + +#ifndef UseNSGMLS +# ifdef SunArchitecture +# define UseNSGMLS NO +# else +# define UseNSGMLS YES +# endif +#endif +#ifndef SGMLParser +# if UseNSGMLS +# define SGMLDir $(NSGMLSSRC) +# define SGMLParser $(NSGMLSSRC)/nsgmls +# else +# define SGMLDir $(SGMLSSRC) +# define SGMLParser $(SGMLSSRC)/sgmls +# endif +#endif + +#ifndef DtInfoGen +# if UseInstalledCDE +# define DtInfoGen dtinfogen +# else +# define DtInfoGen $(CLIENTENVSETUP) $(DTLCXENVSETUP) DTINFO_HOME=$(DTINFOGENSRC) DTINFO_BIN=$(DTINFOGENSRC)/install:$(DTINFOGENSRC)/mmdb/StyleSheet:$(DTINFOGENSRC)/mmdb/src:SGMLDir:$(CDESRC)/dtsr $(DTINFOGENSRC)/infolib/etc/dtinfogen +# endif +#endif +#ifndef DtInfoGenTmpDir +# define DtInfoGenTmpDir $(TOP)/doc/tmp +#endif + +#ifndef DtDocBook +# if UseInstalledCDE +# define DtDocBook dtdocbook +# else +# define DtDocBook $(CLIENTENVSETUP) $(DTLCXENVSETUP) $(CDESRC)/dtdocbook/doc2sdl/dtdocbook +# endif +#endif +#ifndef DtDocBookOptions +# if UseInstalledCDE +# define DtDocBookOptions +# else +# define DtDocBookOptions -t $(CDESRC)/dtdocbook/doc2sdl -H $(HELPTAGPASS2DEF) -I $(CDESRC)/dtdocbook/instant/instant -L $(CDESRC)/dtdocbook/xlate_locale/xlate_locale -S SGMLParser +# endif +#endif + + CDETOP = CDETop +#if ImportCDE || UseInstalledCDE + CDEINCLUDESRC = $(CDETOP)/include +#else + CDEINCLUDESRC = $(CDETOP)/exports/include +#endif + TOP_CDE_INCLUDES = -I$(CDEINCLUDESRC) + CDELIBSRC = $(CDETOP)/lib + PAMSRC = $(CDELIBSRC)/pam/libpam + TTSRC = $(CDELIBSRC)/tt + DTSVCSRC = $(CDELIBSRC)/DtSvc + DTSEARCHSRC = $(CDELIBSRC)/DtSearch + DTWIDGETSRC = $(CDELIBSRC)/DtWidget + DTHELPSRC = $(CDELIBSRC)/DtHelp + DTPRINTSRC = $(CDELIBSRC)/DtPrint + DTTERMSRC = $(CDELIBSRC)/DtTerm + DTMRMSRC = $(CDELIBSRC)/DtMrm + DTMMDBSRC = $(CDELIBSRC)/DtMmdb + CSASRC = $(CDELIBSRC)/csa + CDESRC = $(CDETOP)/programs +#ifdef BuildLibPathVar + DTENVLIBDIR = CDEBuildLibPath +#endif +#ifdef CDEProjectRoot + CDEPROJECTROOT = CDEProjectRoot +#endif + CDE_INSTALLATION_TOP = CdeInstallationTop +CDE_CONFIGURATION_TOP = CdeConfigurationTop + CDE_LOGFILES_TOP = CdeLogFilesTop + CDE_USER_TOP = CdeUserTop + + DTCODEGEN = DtCodeGen + HELPPARSERSRC = $(CDESRC)/dthelp/parser + HELPTAG = _CUseCat($(BINDIR),$(HELPPARSERSRC)/helptag,/dthelptag) + HELPTAGPASS1DEF = _CUseCat($(BINDIR),$(HELPPARSERSRC)/pass1/helptag,/dthelp_htag1) + HELPTAGPASS2DEF = _CUseCat($(BINDIR),$(HELPPARSERSRC)/pass2/htag2,/dthelp_htag2) + DTDOCBOOK = DtDocBook + DTDOCBOOKOPTIONS = DtDocBookOptions +#if UseNSGMLS + NSGMLSSRC = $(CDESRC)/nsgmls +#else + SGMLSSRC = $(CDESRC)/dtdocbook/sgmls +#endif + DTINFOGENSRC = $(CDESRC)/dtinfo/dtinfogen + DTINFOGEN = DtInfoGen + DTINFOGENTMPDIR = DtInfoGenTmpDir +#ifdef DtInfoGenOptions + DTINFOGENOPTIONS = DtInfoGenOptions +#endif +#ifdef ArchitectureDefines + ARCHITECTURE_DEFINES = ArchitectureDefines +#endif +#if !UseInstalledCDE +DTLCXENVSETUP = DTLCXSEARCHPATH=$(DTHELPSRC) +#endif + +#ifndef TtClientLibs +# define TtClientLibs $(TTLIB) $(XLIB) +#endif +#ifndef TtClientDepLibs +# define TtClientDepLibs $(DEPTTLIB) $(DEPXLIB) +#endif + +/* These libraries use UseInstalledCDE instead of UseInstalled. */ +#undef _Use +#undef _UseCat +#define _Use _CUse +#define _UseCat _CUseCat + +#ifndef CDEBuildLibDir +# define CDEBuildLibDir BuildLibDir +#endif + +#if SharedLibPam +SharedLibReferences(PAM,pam,$(PAMSRC),SOPAMREV,SharedPamRev) +#else +ProjectUnsharedLibReferences(PAM,pam,$(PAMSRC),CDEBuildLibDir) +#endif + +#if SharedLibTt +SharedLibReferences(TT,tt,$(TTSRC)/lib,SOTTREV,SharedTtRev) +#else +ProjectUnsharedLibReferences(TT,tt,$(TTSRC)/lib,CDEBuildLibDir) +#endif + +#if SharedLibDtSvc +SharedLibReferences(DTSVC,DtSvc,$(DTSVCSRC),SODTSVCREV,SharedDtSvcRev) +#else +ProjectUnsharedLibReferences(DTSVC,DtSvc,$(DTSVCSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtSearch +SharedLibReferences(DTSEARCH,DtSearch,$(DTSEARCHSRC),SODTSEARCHREV,SharedDtSearchRev) +#else +ProjectUnsharedLibReferences(DTSEARCH,DtSearch,$(DTSEARCHSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtWidget +SharedLibReferences(DTWIDGET,DtWidget,$(DTWIDGETSRC),SODTWIDGETREV,SharedDtWidgetRev) +#else +ProjectUnsharedLibReferences(DTWIDGET,DtWidget,$(DTWIDGETSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtHelp +SharedLibReferences(DTHELP,DtHelp,$(DTHELPSRC),SODTHELPREV,SharedDtHelpRev) +#else +ProjectUnsharedLibReferences(DTHELP,DtHelp,$(DTHELPSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtPrint +SharedLibReferences(DTPRINT,DtPrint,$(DTPRINTSRC),SODTPRINTREV,SharedDtPrintRev) +#else +ProjectUnsharedLibReferences(DTPRINT,DtPrint,$(DTPRINTSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtTerm +SharedLibReferences(DTTERM,DtTerm,$(DTTERMSRC),SODTTERMREV,SharedDtTermRev) +#else +ProjectUnsharedLibReferences(DTTERM,DtTerm,$(DTTERMSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtMrm +SharedLibReferences(DTMRM,DtMrm,$(DTMRMSRC),SODTMRMREV,SharedDtMrmRev) +#else +ProjectUnsharedLibReferences(DTMRM,DtMrm,$(DTMRMSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtMmdb +SharedLibReferences(DTMMDB,DtMmdb,$(DTMMDBSRC),SODTMMDBREV,SharedDtMmdbRev) +#else +ProjectUnsharedLibReferences(DTMMDB,DtMmdb,$(DTMMDBSRC),CDEBuildLibDir) +#endif + +#if SharedLibDtCm +SharedLibReferences(DTCM,DtCm,$(DTCMSRC),SODTCMREV,SharedDtCmRev) +#else +ProjectUnsharedLibReferences(DTCM,DtCm,$(DTCMSRC),CDEBuildLibDir) +#endif + +#if SharedLibCsa +SharedLibReferences(CSA,csa,$(CSASRC),SOCSAREV,SharedCsaRev) +#else +ProjectUnsharedLibReferences(CSA,csa,$(CSASRC),CDEBuildLibDir) +#endif + + +/* Revert to the normal library rules. */ +#undef _Use +#undef _UseCat +#define _Use _XUse +#define _UseCat _XUseCat + + +#ifndef DtClientLibs +# define DtClientLibs $(DTPRINTLIB) $(DTHELPLIB) $(DTWIDGETLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) +#endif +#ifndef DepDtClientLibs +# define DepDtClientLibs $(DEPDTPRINTLIB) $(DEPDTHELPLIB) $(DEPDTWIDGETLIB) $(DEPDTSVCLIB) $(DEPTTLIB) $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB) +#endif +#ifndef DtClientSysLibs +# define DtClientSysLibs $(DYNLIBSYSLIB) $(ICONVSYSLIB) $(REGEXSYSLIB) -lm +#endif +#ifndef DtClientExtraLibs +# define DtClientExtraLibs /**/ +#endif diff --git a/Xserver/config/cf/convex.cf b/Xserver/config/cf/convex.cf new file mode 100644 index 0000000..deb6d76 --- /dev/null +++ b/Xserver/config/cf/convex.cf @@ -0,0 +1,102 @@ +XCOMM platform: $XConsortium: convex.cf /main/4 1996/09/28 16:09:50 rws $ + +#ifndef OSName +#define OSName ConvexOS V9.0 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 9 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef VersionNumber +#define VersionNumber 0.0.0.0 +#endif + +#define BootstrapCFlags -tm c1 +#define SetTtyGroup YES +#define BuildServer NO +#define ConnectionFlags -DTCPCONN -DUNIXCONN -DCOVUENETCONN +#define InstallXdmConfig YES +#define XdmDir $(LIBDIR)/xdm-sample +#define XdmServersType fs /* one tab here */ +#define HasXmWidgets NO +#define InstKmemFlags -g kmem -m 2711 -v $(VERSION) +#define InstScriptFlags -m 0755 -g bin +#define InstManFlags -m 0444 -g bin +#define DefaultCCOptions -fn -tm c1 +#define LibraryCCOptions -fx -tm c1 +#define StripFlags -r -x +#define HasSecureOS YES +#define BuildExamples YES +#define BuildMotif NO +#define BuildConvexClients YES +#define MotifBC YES +#define UilCommand uil +#define ExampleDir $(LIBDIR)/examples +#define UnSupDir $(LIBDIR)/unsupported +#define BuildTestExt YES +#define DefaultScreenSaverTime 0 + +#if BuildTestExt +#define TestDefines -DXTESTEXT1 +#else +#define TestDefines /**/ +#endif + +#define ExtensionOSDefines TestDefines + + VERSION = VersionNumber + UIL = UilCommand + UNSUPDIR = UnSupDir /* unsupported examples and code */ + +/* + * _Use - makes a choice based on UseInstalled. + */ +#ifndef _Use +#ifdef UseInstalled +#define _Use(a,b) a +#else +#define _Use(a,b) b +#endif +#endif + +/* + * _UseCat - combination of _Use and Concat. + * exists to avoid problems with some preprocessors + */ +#ifndef _UseCat +#if (defined(__STDC__) || (defined(__convex__) && defined(__stdc__))) +&& !defined(UnixCpp) +#ifdef UseInstalled +#define _UseCat(a,b,c) a##c +#else +#define _UseCat(a,b,c) b##c +#endif +#else +#ifdef UseInstalled +#define _UseCat(a,b,c) a/**/c +#else +#define _UseCat(a,b,c) b/**/c +#endif +#endif +#endif + +#if HasXmWidgets + MRESOURCESRC = $(LIBSRC)/Mrm +DEPMRESOURCELIB = _UseCat($(USRLIBDIR),$(MRESOURCESRC),/libMrm.a) + MRESOURCELIB = LoaderLibPrefix _Use(-lMrm,$(DEPMRESOURCELIB)) +LINTMRESOURCELIB= _UseCat($(LINTLIBDIR),$(MRESOURCESRC),/llib-lMrm.ln) + + XMLIBSRC = $(LIBSRC)/Xm + DEPXMLIB = _UseCat($(USRLIBDIR),$(XMLIBSRC),/libXm.a) + XMLIB = LoaderLibPrefix _Use(-lXm,$(DEPXMLIB)) + LINTXMLIB = _UseCat($(LINTLIBDIR),$(XMLIBSRC),/llib-lXm.ln) + + UILLIBSRC = $(LIBSRC)/uil + DEPUILLIB = _UseCat($(USRLIBDIR),$(UILLIBSRC),/libUil.a) + UILLIB = LoaderLibPrefix _Use(-lUil,$(DEPUILLIB)) + LINTUILLIB = _UseCat($(LINTLIBDIR),$(UILLIBSRC),/llib-lUil.ln) + +#endif diff --git a/Xserver/config/cf/cray.cf b/Xserver/config/cf/cray.cf new file mode 100644 index 0000000..78f36c5 --- /dev/null +++ b/Xserver/config/cf/cray.cf @@ -0,0 +1,50 @@ +XCOMM platform: $XConsortium: cray.cf /main/52 1996/09/28 16:09:55 rws $ + +#ifndef OSName +#define OSName UNICOS 8.0 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 8 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif + +#define SystemV YES +#define Malloc0ReturnsNull YES +#define RemoveTargetProgramByMoving YES +#define ArCmd bld cr +#define StandardDefines -DSYSV -DUSG +#define ExecableScripts NO +#define HasPoll NO +#define HasXServer NO +#define ConnectionFlags -DTCPCONN +#define HasShm NO +#define PexNativeFPFormat PEXCRAY_Floating +#define NativeFPFormat CRAY_Float +#ifdef UseInstalled +#define InstallCmd install +#else +#define InstallCmd $(SHELL) $(CONFIGSRC)/util/install.sh +#endif + +#ifdef _CRAY2 +#define DefaultCCOptions -hpagelm -hlimitlm +#endif + +#if OSMajorVersion >= 6 +#define PreProcessCmd /lib/pcpp +#define CppCmd /lib/pcpp +#else +# if OSMajorVersion == 5 +# define PreProcessCmd /lib/cpp +# define CppCmd /lib/cpp +# define ExtraLoadFlags -lnet +# endif +#endif + +/* XKB library code does not work here yet */ +#define BuildXKBlib NO + +#define MotifDefines -DNO_REGEX -DNO_REGCOMP diff --git a/Xserver/config/cf/fujitsu.cf b/Xserver/config/cf/fujitsu.cf new file mode 100644 index 0000000..d2c8c34 --- /dev/null +++ b/Xserver/config/cf/fujitsu.cf @@ -0,0 +1,95 @@ +XCOMM platform: $TOG: fujitsu.cf /main/9 1997/04/17 14:11:44 barstow $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion) + +#define PatheticCpp YES + +#ifdef SparcArchitecture + +#define BootstrapCFlags -D__uxp__ +#define StandardDefines -D__uxp__ -DSVR4 -DANSICPP +#define StandardCppDefines -D__uxp__ -DSVR4 -DANSICPP + +#define CppCmd /usr/ccs/lib/cpp + +#ifndef ArCmdBase +# define ArCmdBase /usr/ccs/bin/ar +#endif +#ifndef AsCmd +# define AsCmd /usr/ccs/bin/as +#endif +#ifndef CcCmd +# define CcCmd /usr/ccs/bin/cc +#endif +#ifndef CplusplusCmd +# define CplusplusCmd /opt/uxpcplus/bin/CC +#endif +#ifndef CplusplusFilt +# define CplusplusFilt /opt/uxpcplus/bin/c++filt +#endif +#ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/opt/uxpcplus/include/CC +#endif +#ifndef LdCmd +# define LdCmd /usr/ccs/bin/ld +#endif +#ifndef LexCmd +# define LexCmd /usr/ccs/bin/lex +#endif +#ifndef YaccCmd +# define YaccCmd /usr/ccs/bin/yacc +#endif + +#define BuildLibPathVar LD_LIBRARY_PATH +#define SystemV4 YES +#define HasSockets YES +#define DBMLibrary /* ndbm modules are in -lc */ +#define HasNdbm YES +#ifndef HasLdRunPath +#define HasLdRunPath YES +#endif +#define BuildServer NO + +#include + +#endif + +#ifdef mc68000Architecture + +#define BootstrapCFlags -D__sxg__ +#define StandardDefines -D__sxg__ -DSYSV -DUSG -DNOSTDHDRS -I/usr/xwin/include +#define StandardCppDefines -D__sxg__ -DSYSV -DUSG -DNOSTDHDRS -I/usr/xwin/include + +#define LnCmd ln + +#define DoRanlibCmd NO +#define DefaultCCOptions +Z384 +#define ExtraLibraries -lXbsd -lsocket -lu +#define TermcapLibrary -lcurses +#define BuildServer NO +#define HasSymLinks NO +#define HasVFork NO +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + +#endif + +#define GencatFlags -m + +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DNO_REGCOMP -DHAVE_PTMS +#define DtSearchDefines -DI18N_MSG DtSvcDefines -DNEED_STRCASECMP +#define DtWidgetDefines DtSearchDefines + +#define ArchitectureDefines -DUXP_ARCHITECTURE + +#define CdeProjectDefines \ + -DMULTIBYTE -DNLS16 \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion diff --git a/Xserver/config/cf/generic.cf b/Xserver/config/cf/generic.cf new file mode 100644 index 0000000..de2b098 --- /dev/null +++ b/Xserver/config/cf/generic.cf @@ -0,0 +1,21 @@ +XCOMM platform: $XConsortium: generic.cf /main/8 1996/09/28 16:10:06 rws $ + +#ifndef OSName +#define OSName Unknown Operating System +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 0 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif + +#ifdef SYSV +#define SystemV YES +#endif +#ifdef SVR4 +#define SystemV4 YES +#endif + +#define BuildServer NO diff --git a/Xserver/config/cf/hp.cf b/Xserver/config/cf/hp.cf new file mode 100644 index 0000000..145714f --- /dev/null +++ b/Xserver/config/cf/hp.cf @@ -0,0 +1,207 @@ +XCOMM platform: $TOG: hp.cf /main/85 1997/04/17 14:11:34 barstow $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion.OSMinorVersion.OSTeenyVersion) + + +/* The default yacc options are too small for Uil.y. */ +#define YaccFlags -Nm15000 + +/* + * C++ compiler setup. This file knows what options to use with + * certain compilers, including HP C++ and CenterLine C++. + * + * For HP C++, define HasHPCplusplus to YES in site.def. + * For CenterLine C++, define HasCenterLineCplusplus to YES in site.def. + * For other compilers, define HasCplusplus to YES in site.def, and + * check to see if you need to provide values for CplusplusOptions + * and/or DefaultCplusplusOptions. + * + * In any case, you may also need to set CplusplusDependIncludes. + */ + +#if HasHPCplusplus +# ifndef HasCplusplus +# define HasCplusplus YES +# endif +# ifndef DefaultCplusplusOptions +# define DefaultCplusplusOptions -Aa +# endif +# ifndef CplusplusOptions +# define CplusplusOptions -Aa +# endif +# ifndef CplusplusCmd +# define CplusplusCmd /opt/CC/bin/CC +# endif +# ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/opt/CC/include/CC +# endif +#endif + +#ifndef CcCmd +# define CcCmd /opt/ansic/bin/cc +#endif +#ifndef YaccCmd +# define YaccCmd /opt/langtools/bin/yacc +#endif +#ifndef LexCmd +# define LexCmd /opt/langtools/bin/lex +#endif +#ifndef LintCmd +# define LintCmd /opt/ansic/bin/lint +#endif + +#if HasCenterLineCplusplus +# ifndef HasCplusplus +# define HasCplusplus YES +# endif +# ifndef OptimizedCplusplusDebugFlags +# define OptimizedCplusplusDebugFlags -O +# endif +# ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/usr/local/CenterLine/clc++/pa-hpux8/incl +# endif +#endif + + +#define SystemV YES +#define Malloc0ReturnsNull YES + +#ifdef __hp9000s800 +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags +O1 +# endif +# ifndef DefaultCCOptions +# define DefaultCCOptions -Ae +ESlit +# endif +# ifndef SharedLibraryCCOptions +# define SharedLibraryCCOptions -Ae +# endif +# define StandardDefines -Dhpux -DSYSV +# define ServerExtraDefines -DXOS -DBSTORE -DSOFTWARE_CURSOR -DNO_ALLOCA -DSCREEN_PIXMAPS -DMERGE_SAVE_UNDERS -DHAS_IFREQ -DFORCE_SEPARATE_PRIVATE + +# if OSMajorVersion > 9 +# include +# endif + +#else /* __hp9000s800 */ +# define StandardDefines -Dhpux -DSYSV +# if OSMajorVersion < 8 +# define DefaultCCOptions -Wc,-Nd4000,-Ns4100,-Ne700,-Np200,-Nw300 +# define PexCCOptions -Wp,-H150000 -Wc,-Nd4000,-Ns8100,-Ne700,-Np200 +# else +# define OptimizedCDebugFlags +O1 +# define PexCCOptions -Wp,-H250000 +# endif +# define PexShmIPC NO +# define LintOpts -ax -Nd4000 -Ns8000 -Ne700 -Np200 -Na25000 +#endif +#define MvCmd mv -f +#define LdCombineFlags -r +#define ExecableScripts YES +#define HasVFork YES +#define HasPoll YES +#define RemoveTargetProgramByMoving YES +#define ExpandManNames YES +#define HasPutenv YES +#define HasNdbm YES +#define DBMLibrary /usr/lib/libdbm.a +#define PrimaryScreenResolution 91 +#define ExtensionOSDefines -DHPINPUT # -DXTESTEXT1 +#define XhpServer NO +#define ServerExtraSysLibs -ldld +#ifndef BuildXInputExt +# define BuildXInputExt NO +#endif +#define BuildPex NO +#define BuildPexExt NO +#define XvncServer YES +#define HPFastScrolling YES +#ifndef BuildServer +# define BuildServer __hp9000s700 +#endif +#define NeedBerklib NO +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS + +#if OSMajorVersion < 6 || (OSMajorVersion == 6 && OSMinorVersion < 2) +# define ConnectionFlags -DTCPCONN /* no unix sockets */ +#endif + +#if OSMajorVersion > 8 +#define HasWChar32 YES +#define HasPlugin YES +#endif + +#ifdef __hp9000s300 +# ifndef CompatabilityDefines +# define CompatabilityDefines -D__hp9000s300 -Dhp9000s300 +# endif +#elif defined(__hp9000s700) +# ifndef CompatabilityDefines +# define CompatabilityDefines -D__hp9000s800 -Dhp9000s800 -D__hp9000s700 +# endif +#else +# ifndef CompatabilityDefines +# define CompatabilityDefines -D__hp9000s800 -Dhp9000s800 +# endif +#endif + +#ifndef OsDefines +# if OSMajorVersion > 9 +# define OsDefines -DhpV4 -DHPUX +# else +# define OsDefines -DHPUX +# endif +#endif + +#if OSMajorVersion > 9 +# if ThreadedX +# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXUSE_NETDB_R_API +# endif +# define CppCmd /opt/langtools/lbin/cpp +#endif + +/* CC does not recognize -Ae, and has a different meaning for +e. */ +/* +e also confuses cpp. */ +#define AnsiDefines -Ae -D_HPUX_SOURCE +#define CplusplusAnsiDefines -Aa -D_HPUX_SOURCE + +#define BuildLibPathVar SHLIB_PATH + +#define CdeBaseProjectDefines \ + -DNLS16 -DMALLOC_0_RETURNS_NULL -DMERGE -D__hpux \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion \ + CompatabilityDefines OsDefines + +#define CdeProjectDefines CdeBaseProjectDefines AnsiDefines +#define CdeCplusplusProjectDefines \ + CdeBaseProjectDefines CplusplusAnsiDefines + +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DMESSAGE_CAT +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#define DtWidgetDefines DtSearchDefines +#define DtPrintDefines DtSearchDefines +#if OSMajorVersion > 9 +#define DtMailDefines \ + -DBIG_ENDIAN -DDO_ANONYMOUS_MAP -DNEED_MMAP_WRAPPER -DSENDMAIL_LOCKS \ + -DMAILGROUP_REQUIRED -DMAIL_SPOOL_PATH=\"/var/mail/%s\" +#else +#define DtMailDefines \ + -DBIG_ENDIAN -DDO_ANONYMOUS_MAP -DNEED_MMAP_WRAPPER -DSENDMAIL_LOCKS \ + -DMAILGROUP_REQUIRED -DMAIL_SPOOL_PATH=\"/usr/mail/%s\" +#endif + +#define ArchitectureDefines -DHP_ARCHITECTURE + +#define ExportListGenSource elistgen.hp diff --git a/Xserver/config/cf/hpLib.rules b/Xserver/config/cf/hpLib.rules new file mode 100644 index 0000000..c780fff --- /dev/null +++ b/Xserver/config/cf/hpLib.rules @@ -0,0 +1,119 @@ +XCOMM $XConsortium: hpLib.rules /main/16 1996/12/04 11:44:35 swick $ + +/* + * HP shared library rules + */ + +#ifndef HasSharedLibraries +# define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +# define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +# define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +# define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +# define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +# define SharedLibraryLoadFlags -b +#endif +#ifndef PositionIndependentCFlags +# define PositionIndependentCFlags +z +#endif +#ifndef LargePositionIndependentCFlags +# define LargePositionIndependentCFlags +Z +#endif +#ifndef InstLibFlags +# define InstLibFlags -m 0555 +#endif +#ifndef UseInstalled +/* assert: LdPostLib pulls in -L$(USRLIBDIR), so it doesn't need to be here */ +# define ExtraLoadFlags -Wl,+s -Wl,+b$(USRLIBDIRPATH) +#endif +#ifndef UseExportLists +# define UseExportLists YES +#endif + +/* Pre-linking shared libraries is supported in HP/UX 10. */ +#if OSMajorVersion > 9 +# define HPRequiredLibs $(LDPRELIBS) $(REQUIREDLIBS) +s +b $(USRLIBDIRPATH) +#else +# define HPRequiredLibs $(REQUIREDLIBS) +#endif + +#ifndef LinkWithExports +# if UseExportLists +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs) @@\ + if [ -f Concat(lib,libname.elist) ]; then \ @@\ + RemoveFiles($@.exports $@.list); \ @@\ + $(CPP) $(ALLINCLUDES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) Concat(lib,libname.elist) | CppSedMagic >$@.list; \ @@\ + $(EXPORTLISTGEN) $@~ $@.list > $@.exports; \ @@\ + (cd down; $(LD) -c up/$@.exports -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs); \ @@\ + RemoveFiles($@.exports $@.list); \ @@\ + fi +# else +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs) +# endif +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +# define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.sl.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + RMoveToBakFile(Concat($(DESTDIR)dest/lib,libname.sl.rev)) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.sl.rev) $(DESTDIR)dest @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.sl) @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.sl.rev) Concat(lib,libname.sl) @@\ + -RemoveFile(Concat(lib,libname.sl.rev.bak)) + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +# define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +# define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.sl.rev)) @@\ + @@\ +Concat(lib,libname.sl.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + LinkWithExports(libname,rev,solist,down,up) @@\ + -RemoveFiles($@ $@.bak) @@\ + MoveToBakFile($@) @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.sl) @@\ + $(LN) $@ Concat(lib,libname.sl) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.sl)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.sl.rev) Concat(lib,libname.sl) + +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +# define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ diff --git a/Xserver/config/cf/hpLib.tmpl b/Xserver/config/cf/hpLib.tmpl new file mode 100644 index 0000000..42e18a6 --- /dev/null +++ b/Xserver/config/cf/hpLib.tmpl @@ -0,0 +1,37 @@ +XCOMM $XConsortium: hpLib.tmpl /main/10 1996/12/04 11:57:22 swick $ + +/* + * HP shared library template + */ + +#define SharedThreadReqs /**/ +#define SharedOldXReqs $(XLIBONLY) +#define SharedX11Reqs SharedThreadReqs +#define SharedXtReqs $(XLIBONLY) $(SMLIB) $(ICELIB) SharedThreadReqs +#define SharedXawReqs $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXmuReqs $(XTOOLLIB) $(XLIB) +#define SharedXextReqs $(XLIBONLY) +#define SharedXiReqs $(XLIB) +#define SharedPexReqs $(XLIBONLY) MathLibrary +#define SharedXtstReqs $(XLIB) +#define SharedXieReqs $(XLIBONLY) +#define SharedSMReqs $(ICELIB) +#define SharedXpReqs $(XLIB) + +#define SharedXReqs $(XTOOLLIB) $(XPLIB) $(XLIB) SharedThreadReqs +#define SharedXmReqs SharedXReqs +#define SharedMrmReqs $(XMLIB) SharedXReqs +#define SharedUilReqs $(MRESOURCELIB) $(XMLIB) SharedXReqs + +/* #define SharedPamReqs */ +#define SharedTtReqs $(XTOOLLIB) $(XLIB) SharedThreadReqs $(CXXLIB) +#define SharedDtSvcReqs $(TTLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtMmdbReqs $(DTSVCLIB) $(TTLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtSearchReqs -lm +#define SharedDtWidgetReqs $(DTSVCLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtHelpReqs $(DTSVCLIB) $(XMLIB) SharedXReqs -lm +#define SharedDtPrintReqs $(DTSVCLIB) $(DTHELPLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtTermReqs $(DTHELPLIB) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm +#define SharedDtMrmReqs $(DTTERMLIB) $(DTPRINTLIB) $(DTHELPLIB) $(DTWIDGETLIB) $(MRESOURCELIB) $(XMLIB) SharedXReqs -lm +#define SharedDtMailReqs $(DTHELPLIB) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedCsaReqs $(DTSVCLIB) $(XMLIB) SharedXReqs -lm diff --git a/Xserver/config/cf/ibm.cf b/Xserver/config/cf/ibm.cf new file mode 100644 index 0000000..3450537 --- /dev/null +++ b/Xserver/config/cf/ibm.cf @@ -0,0 +1,168 @@ +XCOMM platform: $XConsortium: ibm.cf /main/80 1996/12/26 08:52:31 kaleb $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# ifdef DefaultOSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +# elif (OSMajorVersion == 4) && (OSMinorVersion == 1) +# define OSTeenyVersion 3 +# else +# define OSTeenyVersion 0 +# endif +#endif +XCOMM operating system: OSName (OSMajorVersion.OSMinorVersion.OSTeenyVersion) + +#if OSMajorVersion > 3 || (OSMajorVersion == 3 && OSMinorVersion >= 2) +#define HasBSD44Sockets YES +#define HasPutenv YES +/* + * If you do not have threads support installed, put + * #define HasPosixThreads NO + * in the BeforeVendorCF section of your site.def. + */ +#if !defined(HasPosixThreads) && ((OSMajorVersion == 3 && (OSMinorVersion > 2 || (OSMinorVersion == 2 && OSTeenyVersion > 4))) || (OSMajorVersion == 4 && (OSMinorVersion > 1 || (OSMinorVersion == 1 && OSTeenyVersion > 1)))) +#define HasPosixThreads YES +#endif +#if HasPosixThreads +#ifndef ThreadedX +#define ThreadedX YES +#define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXUSE_NETDB_R_API +#endif +#endif +#endif /* OS > 3.2 */ + +/* + * For IBM platforms, we must define both the location of the compiler + * and the location of its standard C++ library. The library location + * is needed to resolve dependent library symbols if we build our own + * C++ shared libraries. + */ + +#if !HasGcc2ForCplusplus +# ifndef CplusplusCmd +# if ThreadedX +# define CplusplusCmd xlC_r +# else +# define CplusplusCmd xlC +# endif +# endif +#endif + +#ifndef CplusplusFilt +# define CplusplusFilt /usr/lpp/xlC/bin/c++filt +#endif +#ifndef CplusplusLibC +# if ThreadedX +# define CplusplusLibC /usr/lpp/xlC/lib/libC.a +# else +# define CplusplusLibC /usr/lpp/xlC/lib/libC_r.a +# endif +#endif +#if !HasGcc2ForCplusplus +# ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/usr/lpp/xlC/include +# endif +#endif + +/* + * IBM's xlC refuses to compile files unless their names end in ".C". + * As an alternative to this fix, one could edit /etc/xlC.cfg + * to change the suffix accepted by the compiler, but we prefer not + * requiring users to reconfigure their C++ compilers to make them work. + * We also have to override the default SUFFIXES to defeat the use of + * the builtin .C -> .o file, which doesn't use the right flags. + */ + +.SUFFIXES: +.SUFFIXES: .o .c .y .l .s .sh .h .f .Y .L .cxx + +#define NormalLibObjCplusplusCompile(options) test -r $*.C || $(LN) $*.CCsuf $*.C @@\ + $(CXX) -c $(CXXFLAGS) options $*.C + +#define SpecialCplusplusObjectRule(baseobj,basedep,options) @@\ +baseobj.Osuf: basedep.CCsuf @@\ + test -r basedep.C || $(LN) basedep.CCsuf basedep.C @@\ + $(CXX) -c $(CXXFLAGS) options basedep.C + + +#define BuildLibPathVar LIBPATH +#define SystemV YES +#define LdCombineFlags -r +#define ExecableScripts YES +#define Malloc0ReturnsNull YES +#define CppCmd /usr/ccs/lib/cpp +#define ExpandManNames YES +#define ExtensionOSDefines # -DXTESTEXT1 +#define XibmServer NO +#define ibmIncludeSKYWAY YES + +/* IBM cpp has slightly non-standard line directives, but supports -P */ +#define CppNoLineInfoOption -P + +#if OSMajorVersion > 3 +#define StandardDefines -DSYSV -DAIXV3 -DAIXV4 -D_ALL_SOURCE +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#define ServerExtraDefines -D_IBM_LFT +#if ThreadedX +#define CcCmd xlc_r +#else +#define CcCmd xlc +#endif +#define SystemMTDefines /* xlc_r defines -D_THREAD_SAFE */ +#define ThreadsLibraries -lpthreads /* xlc_r does -lc_r */ +#define ThreadsCplusplusLibraries -lpthreads +#define AvoidNullMakeCommand YES +#define NullMakeCommand @ echo +/* AIX 4 appends all MAKEFLAGS (even dups), so cannot pass on command line. */ +#define ConstructMFLAGS NO +#define LdPreLib _Use(-L$(USRLIBDIR),-L$(BUILDLIBDIR)) +#define ExtraFilesToClean *.inp +#else /* OSMajorVersion < 4 */ +#define StandardDefines -DSYSV -DAIXV3 -D_ALL_SOURCE +#define ServerExtraDefines -D_IBM_HFT +#define CcCmd xlc +#define ThreadPreStdAPIDefines -DXPRE_STANDARD_API +#define SystemMTDefines -D_THREAD_SAFE +#define ThreadsLibraries -lpthreads -lc_r +#endif /* OSMajorVersion */ + +#define OPERATING_SYSTEM AIX /* directory name under server/ddx/ibm/ */ +#define InstallCmd /usr/ucb/install +#include + +#ifndef ManKeywordsTarget +#define ManKeywordsTarget(manpath) @@\ +man_keywords:: @@\ + /usr/lib/makewhatis $(DESTDIR)manpath +#endif + +#define DtMailDefines \ + -DI_HAVE_NO_BOOL -DI_HAVE_SELECT_H \ + -DBIG_ENDIAN -DSTRCASECMP_NOT_DEFINED -DDO_ANONYMOUS_MAP -DSENDMAIL_LOCKS \ + -DMAILGROUP_REQUIRED -DMAIL_SPOOL_PATH=\"/var/spool/mail/%s\" + +#define ArchitectureDefines -DIBM_ARCHITECTURE + +#define ExportListGenSource elistgen.ibm + +#define CdeProjectDefines \ + -D_AIX -D__AIX -D__aix -D_aix -Daix -DMULTIBYTE -DNLS16 -DMESSAGE_CAT \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion -DAIX + +/* + * -D__STR31__ disables inlining of memcpy to work around optimization bug + * in XLC v1.2.0.7. Bug report filed as PMR 8X196, branch 060. + */ +#ifndef OptimizedCDebugFlags +#define OptimizedCDebugFlags -O -D__STR31__ -DNDEBUG +#endif + +#define CdeTicDefines -DHAS_KNL -DHAS_KTAB diff --git a/Xserver/config/cf/ibmLib.rules b/Xserver/config/cf/ibmLib.rules new file mode 100644 index 0000000..d837cb7 --- /dev/null +++ b/Xserver/config/cf/ibmLib.rules @@ -0,0 +1,204 @@ +XCOMM $XConsortium: ibmLib.rules /main/15 1996/12/30 16:06:05 kaleb $ + +/* + * AIX shared library rules + */ + +#ifndef HasSharedLibraries +# define HasSharedLibraries YES +#endif +#ifndef ForceNormalLib +# define ForceNormalLib NO +#endif +#ifndef SharedDataSeparation +# define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +# define SharedCodeDef -DSHAREDCODE +#endif +#ifndef SharedLibraryDef +# define SharedLibraryDef -DAIXSHLIB +#endif +#ifndef ShLibIncludeFile +# define ShLibIncludeFile +#endif +#ifndef PositionIndependentCFlags +# define PositionIndependentCFlags -bM\:SRE +#endif +#ifndef ExtraLoadFlags +# define ExtraLoadFlags -bnodelcsect +#endif +#if !defined(LdPostLib) && !defined(UseInstalled) && OSMajorVersion > 3 +# if ThreadedX +# define LdPostLib -blibpath:$(USRLIBDIRPATH):/usr/lib/threads:/usr/lib:/lib +# else +# define LdPostLib -blibpath:$(USRLIBDIRPATH):/usr/lib:/lib +# endif +# define SharedLibPostRef $(LDPOSTLIBS) +#endif +#ifndef SharedLibPostRef +# define SharedLibPostRef $(LDPOSTLIBS) +#endif +#if ThreadedX +# define BaseShLibReqs -lc_r -lm +#else +# define BaseShLibReqs -lc -lm +#endif +#ifndef UseExportLists +# define UseExportLists YES +#endif + +/* + * MakeExportList - generate an export list file for linking libraries. + */ +#ifndef MakeExportList +# if UseExportLists +# define MakeExportList(libname,result) \ + @-RemoveFile(result) @@\ + case ,$(SHR4OBJLIBS), in *,libname,*) shr4obj=shr4.o;; esac &&\ @@\ + echo "#! $@ ($${shr4obj:-shr.o})" > result @@\ + if [ -f Concat(lib,libname.elist) ]; then \ @@\ + $(CPP) $(ALLINCLUDES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) Concat(lib,libname.elist) | CppSedMagic > $@.list; \ @@\ + $(EXPORTLISTGEN) $@~ $@.list >> result; \ @@\ + RemoveFile($@.list); \ @@\ + else \ @@\ + dump -g $@~ | sed -n -e 's/^[ ]*[0-9][0-9]*[ ]*\([^ .][^ ]*\)$$/\1/p' >> result; \ @@\ + fi; +# else +# define MakeExportList(libname,result) \ + @-RemoveFile(result) @@\ + case ,$(SHR4OBJLIBS), in *,libname,*) shr4obj=shr4.o;; esac &&\ @@\ + echo "#! $@ ($${shr4obj:-shr.o})" > result @@\ + dump -g $@~ | sed -n -e 's/^[ ]*[0-9][0-9]*[ ]*\([^ .][^ ]*\)$$/\1/p' >> result; +# endif +#endif /* MakeExportList */ + + +#if !defined(UseInstalled) && !defined(UseInstalledX11) \ + && !defined(UseImports) && !defined(ImportX11) + /* we want this to be defined only when building X */ + +# if OSMajorVersion < 4 +/* + * SharedDSLibReferences - variables for shared libraries + */ + +# ifndef SharedLibReferences +# define SharedLibReferences(varname,libname,libsource,revname,rev) @@\ +Concat3(DEP,varname,LIB) = /**/ @@\ +Concat(varname,LIB) = _Use(Concat(-l,libname),Concat(libsource/lib,libname.a)) @@\ +LintLibReferences(varname,libname,libsource) +# endif + +# else + +# ifndef SharedLibReferences +# define SharedLibReferences(varname,libname,libsource,revname,rev) @@\ +Concat3(DEP,varname,LIB) = /**/ @@\ +Concat(varname,LIB) = _Use(Concat(-l,libname),Concat($(BUILDLIBDIR),/libname.imp) Concat3($(BUILDLIBDIR),/lib,libname.a)) @@\ +LintLibReferences(varname,libname,libsource) +# endif + +# endif + +/* + * SharedDSLibReferences - variables for shared libraries + */ +# ifndef SharedDSLibReferences +# define SharedDSLibReferences(varname,libname,libsource,revname,rev) @@\ +SharedLibReferences(varname,libname,libsource,revname,rev) +# endif + +# if OSMajorVersion == 4 +/* + * UnsharedLibReferences - variables for unshared libraries + */ +# ifndef UnsharedLibReferences +# define UnsharedLibReferences(varname,libname,libsource) @@\ +Concat3(DEP,varname,LIB) = _UseCat($(USRLIBDIR)/lib,$(BUILDLIBDIR)/lib,libname.a) @@\ +Concat(varname,LIB) = _Use(Concat(-l,libname),Concat($(BUILDLIBDIR)/lib,libname.a)) @@\ +LintLibReferences(varname,libname,libsource) +# endif +# endif + +#endif /* !defined(UseInstalled) && !defined(UseInstalledX11) ... */ + + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +# define InstallSharedLibrary(libname,rev,dest) @@\ +InstallLibrary(libname,dest) +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +# define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that the we do not hose people by having + * the library gone for long periods. + * + * IBM uses an unusual shared object file name (shr4.o) in some libraries. + * Duplicate this behavior to preserve compatibility with IBM's libraries. + */ +#if OSMajorVersion < 4 + +# ifndef SharedLibraryTarget +# define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.a)) @@\ + @@\ +Concat(lib,libname.a): solist $(UNSHAREDOBJS) $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ shr.o shr4.o @@\ + (cd down; $(AR) up/$@~ solist) @@\ + dump -g $@~ | sed -n -e 's/^[ ]*[0-9][0-9]*[ ]*\([^ .][^ ]*\)$$/\1/p' > $@.syms @@\ + $(LD) -o shr.o $@~ -H512 -T512 -bM\:SRE -bE\:$@.syms $(REQUIREDLIBS) BaseShLibReqs SharedLibPostRef @@\ + $(LN) shr.o shr4.o @@\ + $(RM) $@~ @@\ + case ,$(SHR4OBJLIBS), in *,libname,*) shr4obj=shr4.o;; esac &&\ @@\ + $(AR) $@~ $${shr4obj} shr.o $(UNSHAREDOBJS) @@\ + $(RM) $@.syms $@ shr.o shr4.o @@\ + $(MV) $@~ $@ @@\ + LinkBuildLibrary($@) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.a) +# endif /* SharedLibraryTarget */ + +#else /* OSMajorVersion >= 4 */ + +# ifndef SharedLibraryTarget +# define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.a)) @@\ + @@\ +Concat(lib,libname.a): solist $(UNSHAREDOBJS) $(EXTRALIBRARYDEPS) @@\ + RemoveFiles($@~ shr.o shr4.o) @@\ + (cd down; $(AR) up/$@~ solist) @@\ + MakeExportList(libname,libname.imp) @@\ + $(LD) -o shr.o $@~ -H512 -T512 -bM\:SRE -bE\:libname.imp -bnoentry $(REQUIREDLIBS) BaseShLibReqs $(LDPOSTLIBS) @@\ + $(LN) shr.o shr4.o @@\ + RemoveFile($@~) @@\ + case ,$(SHR4OBJLIBS), in *,libname,*) shr4obj=shr4.o;; esac &&\ @@\ + $(AR) $@~ $${shr4obj} shr.o $(UNSHAREDOBJS) @@\ + RemoveFile($@) @@\ + $(MV) $@~ $@ @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(libname.imp) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.a) +# endif /* SharedLibraryTarget */ + +#endif + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +# define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ diff --git a/Xserver/config/cf/ibmLib.tmpl b/Xserver/config/cf/ibmLib.tmpl new file mode 100644 index 0000000..f989d76 --- /dev/null +++ b/Xserver/config/cf/ibmLib.tmpl @@ -0,0 +1,76 @@ +XCOMM $XConsortium: ibmLib.tmpl /main/21 1996/12/04 12:21:49 swick $ + +/* + * AIX shared library template + */ + +/* + * IBM used an unusual shared object file name in some librares. + * Mimic this behavior to preserve compatibility with IBM's libraries. + */ +#ifndef IBMShr4Compatibility +#define IBMShr4Compatibility YES +#endif + +/* + * Imake thinks lines with colons are the result of a broken cpp + * inserting extra leading whitespace, so use ',' as a separator. + */ +#if IBMShr4Compatibility + SHR4OBJLIBS = X11,Xt,oldX,Xm,Mrm,Uil +#endif + +#if ThreadedX +#define SharedThreadReqs -lpthreads +#define SharedX11Reqs -lpthreads +#else +#define SharedThreadReqs /**/ +#endif + +#define SharedXextReqs $(XLIBONLY) +#define SharedXmuReqs $(XTOOLLIB) $(XLIB) +#define SharedOldXReqs $(XLIBONLY) +#define SharedXtReqs $(XLIBONLY) $(SMLIB) $(ICELIB) SharedThreadReqs +#define SharedXawReqs $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXiReqs $(XLIB) +#define SharedXtstReqs $(XLIB) +#define SharedPexReqs $(XLIBONLY) +#define SharedXieReqs $(XLIBONLY) +#define SharedSMReqs $(ICELIB) +#define SharedXpReqs $(XLIB) + +#define SharedXReqs $(XTOOLLIB) $(XPLIB) $(XLIB) SharedThreadReqs +#define SharedXmReqs $(LDPRELIBS) SharedXReqs +#define SharedMrmReqs $(LDPRELIBS) $(XMLIB) SharedXReqs +#define SharedUilReqs $(LDPRELIBS) $(MRESOURCELIB) $(XMLIB) SharedXReqs + +/* #define SharedPamReqs */ +#define SharedTtReqs $(LDPRELIBS) SharedXReqs $(CXXLIB) +#define SharedDtSvcReqs $(LDPRELIBS) $(TTLIB) $(XMLIB) SharedXReqs $(CXXLIB) +#define SharedDtMmdbReqs $(LDPRELIBS) $(DTSVCLIB) $(TTLIB) $(XMLIB) SharedXReqs $(CXXLIB) +#define SharedDtSearchReqs $(LDPRELIBS) -lisode +#define SharedDtWidgetReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs +#define SharedDtHelpReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs -liconv +#define SharedDtPrintReqs $(LDPRELIBS) $(DTSVCLIB) $(DTHELPLIB) $(XMLIB) SharedXReqs +#define SharedDtTermReqs $(LDPRELIBS) $(DTHELPLIB) $(DTSVCLIB) $(XMLIB) SharedXReqs -liconv -lm +#define SharedDtMrmReqs $(LDPRELIBS) $(DTTERMLIB) $(DTPRINTLIB) $(DTHELPLIB) $(DTWIDGETLIB) $(MRESOURCELIB) $(XMLIB) SharedXReqs +#define SharedCsaReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs + +#if !defined(UseInstalled) && !defined(UseInstalledX11) \ + && !defined(UseImports) && !defined(ImportX11) + /* we want this to be defined only when building X */ +# ifndef FixupLibReferences +# define FixupLibReferences() @@\ +DEPXTOOLLIB = _UseCat($(USRLIBDIR),$(TOOLKITSRC),/libXt.a) +# endif +#endif + +/* The inbuf paramter to iconv(3) is "const char**", not "char **" */ +ICONV_INBUF_DEFINE = -DICONV_INBUF_CONST + +ICONVSYSLIB = -liconv + +#if (OSMajorVersion > 4) || ((OSMajorVersion == 4) && (OSMinorVersion >= 2)) +DYNLIBSYSLIB = -ldl +#endif + diff --git a/Xserver/config/cf/isc.cf b/Xserver/config/cf/isc.cf new file mode 100644 index 0000000..2c04c7f --- /dev/null +++ b/Xserver/config/cf/isc.cf @@ -0,0 +1,214 @@ +XCOMM $XConsortium: isc.cf /main/1 1996/10/31 14:45:18 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/isc.cf,v 3.11.2.1 1998/02/15 16:08:33 hohndel Exp $ + +#ifndef HasGcc2 +#define HasGcc2 YES +#endif + +/* INTERACTIVE UNIX SYSTEM (IUS) Version 3.x 4.x */ + +#if IscVersion > 300 +# define ISCVerDef -DISC40 -DISC30 +# define OSVendor (IUS Version 4.x) +#else +# if IscVersion == 300 +# define ISCVerDef -DISC30 +# define OSVendor (ISC Version 3.0) +# else +# if IscVersion == 202 +# define OSVendor (ISC Version 2.0.2) +# define ISCVerDef -DISC202 +# else +# define OSVendor (ISC Version 2.2.1) +# define ISCVerDef -DISC22 +# endif +# endif +#endif + +/* gcc 2.7.2 tested Optimization Flags */ +#ifndef DefaultGcc2i386Opt +# define DefaultGcc2i386Opt -m486 -O2 -fno-strength-reduce -malign-loops=2 -malign-jumps=2 -malign-functions=2 +/* -fomit-frame-pointer */ +#endif + +/* For a POSIXized build on Interactive maybe needed to use gcc2.7.2 */ +#ifndef UsePosix +# define UsePosix YES +#endif + +/* ISC 4.1Mu +#define IscCompileVersion 410 +*/ + +#if !defined(IscCompileVersion) && IscVersion < 410 +/* ISC 4.0 compatible */ +#define IscCompileVersion 400 +#endif + +#if IscCompileVersion == 400 + +/* binaries which should run on ISC 4.0 or for the build on a real 4.0 System */ +# define UseChmod YES + +/* for compatibility with ISC 4.0 - reported by Ami Fischmann */ +/* troubles when linking with libX11.a build on ISC4.1 and used with 4.0 */ +# define HasSnprintf NO +# define UseXwctomb YES + +#endif + +#if defined(UseXwctomb) +# define XwctombDefine -DUSE_XMBTOWC +#else +# define XwctombDefine +#endif + +#if defined(UseChmod) +# define IscCompatDefines XwctombDefine -DUSE_CHMOD +#else +# define IscCompatDefines XwctombDefine +#endif + +#ifdef UsePosix +# define PosixDefines -posix -D_SYSV3 -D_POSIX_SOURCE +#else +# define PosixDefines +#endif + +#define OSDefines -DISC ISCVerDef IscCompatDefines + +/* +#define OSName Unix System V/386 Release 3.2 +#define OSMajorVersion 3 +#define OSMinorVersion 2 +*/ +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif + +#ifndef OSName +#define OSName INTERACTIVE UNIX System V/386 Release 3.2 +#endif + +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +/* Note, cpp already does -Di386 */ +#define BootstrapCFlags OSDefines -DSYSV + +#if IscVersion > 202 +# define LocalLibraries -lpt +# define PosixLibraries -lcposix +#else +# define LocalLibraries MallocLibrary -lpt +# define PosixLibraries +#endif + +#define SocketLibraries -linet + +#ifndef GnuMallocLibrary +#ifndef UseIscLd +# define GnuMallocLibrary -L/usr/local/lib -lgmalloc +#else +# define GnuMallocLibrary /usr/local/lib/libgmalloc.a +#endif +#endif + +#ifndef MallocLibrary +# if UseGnuMalloc +# define MallocLibrary GnuMallocLibrary +# else +# define MallocLibrary -lmalloc +# endif +#endif + +#ifndef ExtraLibraries +# if UseGnuMalloc +# define ExtraLibraries SocketLibraries LocalLibraries MallocLibrary PosixLibraries +# else +# define ExtraLibraries SocketLibraries LocalLibraries PosixLibraries +# endif +#endif + +/* Don't know if this is necessary, but it avoids breaking the current setup */ +#define MallocLibraries /**/ + +#if UseXwctomb +#define XawI18nDefines -DUSE_XWCHAR_STRING +#else +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#endif + +#if HasCbrt +#define MathLibrary -loptm +#endif + +#ifdef UseInlineMath +#define InlineMathDefines -DUseInlineMath +#if !HasCbrt +#define ServerExtraSysLibs $(CBRT) MathLibrary +#endif +#endif + +#ifndef ServerExtraSysLibs +#define ServerExtraSysLibs $(CBRT) +#endif + +#define ServerExtraDefines SVR3mmapFlags XFree86ServerDefines + +#if IscVersion > 300 +# ifndef HasSymLinks +# define HasSymLinks YES +# endif +#endif + +#define HasShm YES + +#ifndef HasSnprintf +#define HasSnprintf YES +#endif + +#ifndef HasLibCrypt +#define HasLibCrypt YES +#define SpecialLibCrypt -lcrypt +#endif + +#ifndef DefaultCDebugFlags +# if HasGcc2 +# define DefaultCDebugFlags DefaultGcc2i386Opt PosixDefines InlineMathDefines +# else +# define DefaultCDebugFlags -O PosixDefines InlineMathDefines +# endif +#endif + +#if HasGcc2 +# define CcCmd gcc +#endif + +#ifndef DefaultCplusplusOptions +#define DefaultCplusplusOptions -fno-implicit-templates +#endif + +#ifndef ConnectionFlags +#define ConnectionFlags -DLOCALCONN -DTCPCONN +/* -DSTREAMSCONN -DUNIXCONN -- does not work on ISC SVR3 */ +#endif + +#define CompressManCmd $(COMPRESS) -v + +#define XmanSearchPath /usr/catman + +#ifndef RemoveDSDENroffMacros +#define RemoveDSDENroffMacros YES +#endif + +#include + diff --git a/Xserver/config/cf/linux.cf b/Xserver/config/cf/linux.cf new file mode 100644 index 0000000..2bbbcc8 --- /dev/null +++ b/Xserver/config/cf/linux.cf @@ -0,0 +1,883 @@ +XCOMM platform: $Xorg: linux.cf,v 1.3 2000/08/17 19:41:47 cpqbld Exp $ + + + + + +XCOMM platform: $XFree86: xc/config/cf/linux.cf,v 3.165 2001/04/19 19:54:43 dawes Exp $ + +#ifndef LinuxElfDefault +# define LinuxElfDefault YES +#endif + +#ifndef UseElfFormat +# define UseElfFormat LinuxElfDefault +#endif + +#ifndef OSBinaryType +# if UseElfFormat +# define OSBinaryType [ELF] +# else +# ifdef AlphaArchitecture +# define OSBinaryType [ECOFF] +# else +# define OSBinaryType [a.out] +# endif +# endif +#endif + +#ifndef OSName +# define OSName DefaultOSName OSBinaryType +#endif + +#ifndef OSVendor +# define OSVendor /**/ +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +#endif + +#ifndef LinuxDistribution +# define LinuxDistribution DefaultLinuxDistribution +/* + Add "#define LinuxDistribution Linux" to your site.def or host.def. + Currently only LinuxSuSE, LinuxRedHat and LinuxDebian will be figured out + automatically. + Valid values are (from the list at www.linux.org in Oct. '97): + LinuxUnknown (0) + LinuxSuSE (1) + LinuxCaldera (2) + LinuxCraftworks (3) + LinuxDebian (4) + LinuxInfoMagic (5) + LinuxKheops (6) + LinuxPro (7) + LinuxRedHat (8) + LinuxSlackware (9) + LinuxTurbo (10) + LinuxWare (11) + LinuxYggdrasil (12) +*/ +#endif +#ifndef LinuxDistName +# define LinuxDistName DefaultLinuxDistName +#endif +#ifndef LinuxCLibMajorVersion +# define LinuxCLibMajorVersion DefaultLinuxCLibMajorVersion +#endif +#ifndef LinuxCLibMinorVersion +# define LinuxCLibMinorVersion DefaultLinuxCLibMinorVersion +#endif +#ifndef LinuxCLibTeenyVersion +# define LinuxCLibTeenyVersion DefaultLinuxCLibTeenyVersion +#endif + +#ifndef LinuxBinUtilsMajorVersion +# define LinuxBinUtilsMajorVersion DefaultLinuxBinUtilsMajorVersion +#endif + +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) +XCOMM libc: (LinuxCLibMajorVersion./**/LinuxCLibMinorVersion./**/LinuxCLibTeenyVersion) +XCOMM binutils: (LinuxBinUtilsMajorVersion) + +#if LinuxDistribution == LinuxDebian +# define SystemManDirectory /usr/share/man +# define HasPam YES +# define HasTk YES +# define TkLibDir /usr/lib +# define TkIncDir /usr/include +# define TkLibName tk8.3 +# define XF86SetupUsesStaticTk NO +# define HasTcl YES +# define TclLibDir /usr/lib +# define TclIncDir /usr/include +# define TclLibName tcl8.3 +# define XF86SetupUsesStaticTcl NO +/* un-comment this when it is un-broken */ +/* # define JoystickSupport YES */ +# define InstallXinitConfig YES +# define InstallXdmConfig YES +# define InstallFSConfig YES +# define DebuggableLibraries YES +# define ForceNormalLib YES +# define BuildSpecsDocs YES +# define SpecsDocDirs CTEXT GL ICCCM X11 Xext Xv i18n xterm +# define XAppLoadDir EtcX11Directory/app-defaults +# define XFileSearchPathDefault Concat4(EtcX11Directory/%L/%T/%N%C,%S:EtcX11Directory/%l/%T/%N%C,%S:EtcX11Directory/%T/%N%C,%S:EtcX11Directory/%L/%T/%N%S:EtcX11Directory/%l/%T/%N%S:EtcX11Directory/%T/%N%S):Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S) +/* the relative symlink created by this rule causes problems for us */ +# if InstallAppDefFiles +# define InstallAppDefaultsLong(file,class) @@\ +InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class) +# else +# define InstallAppDefaultsLong(file,class) @@\ +InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class) +# endif /* InstallAppDefFiles */ +# define SharedLibXdmGreet NO +# define LinkGLToUsrInclude NO +# define LinkGLToUsrLib NO +# define SharedLibFont NO +# define HasZlib YES +# define BuildGLXLibrary YES +# define BuildGLULibrary YES +# define BuildRman NO +# define BuildHtmlManPages NO +# define FSUseSyslog YES + +/* + * + */ +# define DebianMaintainer "xfree86@packages.debian.org" +/* + * + */ + +# ifdef DebianMaintainer +# define BuilderEMailAddr "submit@bugs.debian.org" +# define XFree86Devel YES +# define BuildAllSpecsDocs YES +/* we build-depend on libfreetype6-dev (FreeType 2.x) */ +# define BuildFreetype2Library NO +# define HasFreetype2 YES +/* m68k has no 2.4 kernel yet */ +# ifndef Mc68020Architecture +# define HasLinuxInput YES +# endif +# define HasXdmAuth YES +# define HasLatex YES +/* at present, glide2 only works on i386 */ +# ifdef i386Architecture +# define HasGlide2 YES +# define Glide2IncDir /usr/include/glide +# endif /* i386Architecture */ +/* at present, glide3 only works on alpha and i386 */ +# if defined(i386Architecture) || defined(AlphaArchitecture) +# define HasGlide3 YES +# define Glide3IncDir /usr/include/glide3 +# endif /* i386Architecture || AlphaArchitecture */ +/* extended instruction set support */ +# ifdef i386Architecture +# define HasMMXSupport YES +# define Has3DNowSupport YES +/* 2.4 is not yet the official (or predominant) kernel in unstable */ +# define HasKatmaiSupport NO +# endif /* i386Architecture */ +# endif /* DebianMaintainer */ +#endif /* LinuxDebian */ + +#if LinuxDistribution == LinuxRedHat +#define FSUseSyslog YES +#endif + +/* + * The Linux BinUtils major version. 25 => 2.5.x, which is what is included + * with Slackware 3.0 + * + * This remains for compatibility only. + * + */ +#ifndef BinUtilsMajorVersion +# define BinUtilsMajorVersion LinuxBinUtilsMajorVersion +#endif + +#if (LinuxCLibMajorVersion >= 6 || LinuxDistribution == LinuxSuSE) +# define LinuxLocaleDefines /**/ +#else +# define LinuxLocaleDefines -DX_LOCALE +#endif + +#ifndef LinuxAdditionalIncludes +# define LinuxAdditionalIncludes /**/ +#endif + +#ifndef LinuxGnuSourceDefines +# ifdef UseInstalled +# define LinuxGnuSourceDefines /**/ +# else +# define LinuxGnuSourceDefines -D_GNU_SOURCE +# endif +#endif + +#if LinuxCLibMajorVersion >= 6 +# define LinuxSourceDefines -D_POSIX_C_SOURCE=199309L \ + -D_POSIX_SOURCE -D_XOPEN_SOURCE \ + -D_BSD_SOURCE -D_SVID_SOURCE \ + LinuxAdditionalIncludes LinuxGnuSourceDefines \ + LinuxLocaleDefines +# define XawI18nDefines -DHAS_WCHAR_H -DHAS_WCTYPE_H -DNO_WIDEC_H +# define HasPosixThreads YES +# define ThreadedX YES +# define HasThreadSafeAPI YES +# define ThreadsLibraries -lpthread +# define SystemMTDefines -D_REENTRANT +# ifndef HasLibCrypt +# define HasLibCrypt YES +# endif +/* netscape wraps select but not poll as of communicator 4.72 */ +# ifndef HasPoll +# define HasPoll NO +# endif +#else +# define LinuxSourceDefines -D_POSIX_SOURCE -D_POSIX_C_SOURCE=2 \ + -D_BSD_SOURCE -D_SVID_SOURCE \ + LinuxGnuSourceDefines LinuxLocaleDefines +# define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +# ifndef HasLibCrypt +# define HasLibCrypt NO +# endif +#endif + +#ifndef InstallXloadSetGID +#define InstallXloadSetGID NO +#endif + +/* support mainly for USB support */ +#ifndef HasLinuxInput +# if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 4) +# define HasLinuxInput YES +# endif +#endif + +/* On x86, determine whether to build with MTRR support */ +#ifndef HasMTRRSupport +# ifdef i386Architecture +/* There is no certain way to know if is available, + but it made it into kernel 2.2, so... */ +# if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 2) +# define HasMTRRSupport YES +# else +# define HasMTRRSupport NO +# endif +# else +# define HasMTRRSupport NO /* no for non-ix86 */ +# endif +#endif + +#ifndef XF86INT10_BUILD +# ifdef i386Architecture +# define XF86INT10_BUILD X86VM +# else +# define XF86INT10_BUILD X86EMU_GENERIC +# endif +#endif + +/* The DRM module requires kernel services that appeared in late 2.1.x + kernels and are known to be present in 2.2.x kernels. */ +#ifndef BuildXF86DRI +# if defined(i386Architecture) +# if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 2) +# define BuildXF86DRI YES +# else +# define BuildXF86DRI NO +# endif +# elif defined(AlphaArchitecture) +# define BuildXF86DRI YES +# elif defined(Arm32Architecture) +# define BuildXF86DRI NO +# elif defined(HPArchitecture) +# define BuildXF86DRI NO +# elif defined(x86_64Architecture) +# define BuildXF86DRI YES +# elif defined(ia64Architecture) +# define BuildXF86DRI YES +# elif defined(Mc68020Architecture) +# define BuildXF86DRI NO +# elif defined(MipsArchitecture) +# define BuildXF86DRI NO +# elif defined(PpcArchitecture) +# define BuildXF86DRI YES +# elif defined(s390Architecture) +# define BuildXF86DRI NO +# elif defined(SparcArchitecture) +# define BuildXF86DRI YES +# else +# define BuildXF86DRI NO +# endif +#endif + +/* + * Build shared libGL and the DRI modules without -fPIC. This improves + * performance. Do this only on architectures that can handle missing PIC + * symbols in shared libraries. + */ +#if BuildXF86DRI +# if defined(AlphaArchitecture) || defined(Arm32Architecture) || defined(i386Architecture) || defined(SparcArchitecture) +# define BuildLibGlxWithoutPIC YES +# endif +#endif + +/* The DRM module requires kernel services that appeared in late 2.1.x + kernels and are known to be present in 2.2.x kernels. Unfortunately, + the kernel API is a moving target and the module may break with new + kernel revisions. So, we'll only build the module for kernels that are + known to be supported by the module. */ +#ifndef BuildXF86DRM +# if defined(i386Architecture) || defined(x86_64Architecture) || defined(ia64Architecture) || defined(SparcArchitecture) || defined(AlphaArchitecture) +# if OSMajorVersion == 2 + /* Only tested for Linux 2.2.0 through 2.2.12 */ +# if OSMinorVersion == 2 && OSTeenyVersion <= 12 +# define BuildXF86DRM YES +# else + /* Only tested for Linux 2.3.0 through 2.3.18 */ +# if OSMinorVersion == 3 && OSTeenyVersion <= 18 +# define BuildXF86DRM YES +# else + /* Note: add more conditions when 2.4.x and 2.5.x are released */ +# define BuildXF86DRM NO +# endif +# endif +# else + /* Note: add more conditions when 3.0.x and 3.1.x are released */ +# define BuildXF86DRM NO +# endif +# else +# define BuildXF86DRM NO +# endif +#endif + +#ifndef HasAgpGart +# if defined(i386Architecture) || defined(x86_64Architecture) || defined(ia64Architecture) + /* The AGPGART header file is included in os-support/linux, which + allows all drivers that depend on AGP to build properly. */ +# define HasAgpGart YES +# else +# define HasAgpGart NO +# endif +#endif + +/* Support for Intel's Katmai Native Instructions, also known as the + * Streaming SIMD Extensions, was introduced in the 2.4.x kernels. + */ +#ifndef HasKatmaiSupport +# ifdef i386Architecture +# if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion >= 4) +# define HasKatmaiSupport YES +# else +# define HasKatmaiSupport NO +# endif +# else +# define HasKatmaiSupport NO +# endif +#endif + +/* + * Support for MMX isn't present in the Assembler used in Red Hat 4.2, so + * don't enable it for libc5 as a reasonable default. + */ +#ifndef HasMMXSupport +# ifdef i386Architecture +# if (LinuxCLibMajorVersion > 5) +# define HasMMXSupport YES +# else +# define HasMMXSupport NO +# endif +# else +# define HasMMXSupport NO +# endif +#endif + +/* + * Support for 3DNow isn't present in the Assembler used in Red Hat 4.2, so + * don't enable it for libc5 as a reasonable default. + * + * XXX This is preliminary. + */ +#ifndef Has3DNowSupport +# ifdef i386Architecture +# if (LinuxCLibMajorVersion > 5) +# define Has3DNowSupport YES +# else +# define Has3DNowSupport NO +# endif +# else +# define Has3DNowSupport NO +# endif +#endif + +/* + * libGLU doesn't build correctly on a libc5 system. + */ +#if !defined(BuildGLULibrary) && (LinuxCLibMajorVersion < 6) +# define BuildGLULibrary NO +#endif + +/* + * The Rush extension support. + */ +#ifndef BuildXF86RushExt +# define BuildXF86RushExt YES +#endif + +#ifndef LinuxFBDevSupport +# define LinuxFBDevSupport YES +#endif + +/* For compatibility */ +#define SourceDefines LinuxSourceDefines + +#define BuildLibPathVar LD_LIBRARY_PATH +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES +#if UseElfFormat +# define HasDlopen YES +#endif +#ifndef HasShadowPasswd +# if UseElfFormat +# define HasShadowPasswd YES +# else +# define HasShadowPasswd NO +# endif +#endif +#define HasPutenv YES +#define HasShm YES +#define HasSockets YES +#if UseElfFormat || defined(AlphaArchitecture) +#define HasSnprintf YES +#define HasMkstemp YES +#endif +#if OSMajorVersion >= 2 +#define HasUsableFileMmap YES +#endif +#ifndef HasNCurses +#define HasNCurses YES +#endif + +#ifndef HasGroff +#define HasGroff YES +#endif + +#define AvoidNullMakeCommand YES +#ifndef DebuggableLibraries +#define DebuggableLibraries NO +#endif +#define CompressAllFonts YES +#define Malloc0ReturnsNull YES +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#ifndef NeedWidePrototypes +#define NeedWidePrototypes NO +#endif +#define SetTtyGroup YES + +#ifndef UseStaticTermcapLib +#define UseStaticTermcapLib NO +#endif + +#ifndef HasCookieMaker +#define HasCookieMaker YES +#define MkCookieCmd mcookie +#endif + +#ifndef BourneShell +/* + * This will cause builds/installs to terminate on errors, as on other + * platforms. + */ +#define BourneShell /bin/sh -e +#endif + +#define MkdirHierCmd mkdir -p + +#if LinuxElfDefault +# if UseElfFormat +# ifdef MipsArchitecture +# ifndef AsCmd +# define AsCmd gcc -c -x assembler-with-cpp +# endif +# ifndef DoLoadableServer +# define DoLoadableServer NO +# endif +# endif /* MipsArchitecure */ +# ifndef CcCmd +# define CcCmd gcc +# endif +# ifndef AsCmd +# define AsCmd as +# endif +# ifndef LdCmd +# define LdCmd ld +# endif +# define AsmDefines -D__ELF__ +# define CplusplusCmd c++ +# ifndef LinuxUsesNcurses +# if LinuxCLibMajorVersion >= 6 || (LinuxDistribution == LinuxSuSE) +# define LinuxUsesNcurses YES +# else +# define LinuxUsesNcurses NO +# endif +# endif +# ifndef TermcapLibrary +# if UseStaticTermcapLib +# if LinuxUsesNcurses +# define TermcapLibrary StaticLibrary(/usr/lib,ncurses) +# else +# define TermcapLibrary StaticLibrary(/usr/lib/termcap,termcap) +# endif +# else +# if LinuxUsesNcurses +# define TermcapLibrary -lncurses +# else +# define TermcapLibrary -ltermcap +# endif +# endif +# endif +# else +# ifdef AlphaArchitecture +# define CcCmd gcc -b alpha-linuxecoff +# define CplusplusCmd g++ -b alpha-linuxecoff +# define AsCmd /usr/alpha-linuxecoff/bin/as +# define LdCmd /usr/alpha-linuxecoff/bin/ld -m alpha +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* AlphaArchitecture */ +# ifdef HPArchitecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* HPArchitecture */ +# ifdef x86_64Architecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* x86_64Architecture */ +# ifdef ia64Architecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* ia64Architecture */ +# ifdef i386Architecture +# define CcCmd gcc -b i486-linuxaout +# define CplusplusCmd g++ -b i486-linuxaout +# define AsCmd /usr/i486-linuxaout/bin/as +# define LdCmd /usr/i486-linuxaout/bin/ld -m i386linux +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* i386Architecture */ +# ifdef Mc68020Architecture +# define CcCmd gcc -b m68k-linuxaout +# define CplusplusCmd g++ -b m68k-linuxaout +# define AsCmd /usr/m68k-linuxaout/bin/as +# define LdCmd /usr/m68k-linuxaout/bin/ld -m m68klinux +# define AsmDefines -DUSE_GAS -U__ELF__ +# endif /* Mc68020Architecture */ +# endif +#else +# if UseElfFormat +# ifdef AlphaArchitecture +# define CcCmd gcc -b alpha-linux +# define AsCmd /usr/alpha-linux/bin/as +# define LdCmd ld -m elf64alpha +# define AsmDefines -D__ELF__ +# define CplusplusCmd c++ -b alpha-linux +# endif /* AlphaArchitecture */ +# ifdef x86_64Architecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -D__ELF__ +# endif /* x86_64Architecture */ +# ifdef ia64Architecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -D__ELF__ +# endif /* ia64Architecture */ +# ifdef HPArchitecture +# define CcCmd gcc +# define CplusplusCmd g++ +# define AsCmd as +# define LdCmd ld +# define AsmDefines -D__ELF__ +# define SharedLibXau YES +# endif /* HPArchitecture */ +# ifdef i386Architecture +# define CcCmd gcc -b i486-linux +# define AsCmd /usr/i486-linux/bin/as +# define LdCmd ld -m elf_i386 +# define AsmDefines -D__ELF__ +# define CplusplusCmd c++ -b i486-linux +# endif /* i386Architecture */ +# ifdef Mc68020Architecture +# define CcCmd gcc -b m68k-linux +# define AsCmd /usr/m68k-linux/bin/as +# define LdCmd ld -m m68kelf +# define AsmDefines -D__ELF__ +# define CplusplusCmd c++ -b m68k-linux +# endif /* Mc68020Architecture */ +# else +# define CcCmd gcc +# define AsCmd as +# define LdCmd ld +# define AsmDefines -DUSE_GAS +# endif +#endif +#if UseElfFormat +# ifndef DoLoadableServer +# ifdef HPArchitecture +# define DoLoadableServer NO +# else +# define DoLoadableServer YES +# endif +# endif +#endif +#ifndef CppCmd +# define CppCmd /lib/cpp +#endif +/* Some Linux distributions have yacc, some don't. All have bison. */ +#define YaccCmd bison -y +#define LexCmd flex -l +#define HasFlex YES +#define LexLib -lfl +#define PreProcessCmd CcCmd -E +#define PostIncDir DefaultGccIncludeDir +#define LdCombineFlags -r +#ifndef LdPostLib +# define LdPostLib /* Never needed */ +#endif +#define HasWChar32 YES +#define StandardCppOptions -traditional +#define StandardCppDefines StandardDefines + +#define HasVarRun YES +#define VarDbDirectory $(VARDIR)/lib + +#ifndef XF86OSCardDrivers +# define XF86OSCardDrivers v4l +#endif + +#if UseElfFormat +# define HasPlugin YES +# define VendorHasX11R6_3libXext YES /* XC or XFree86 >= 3.3.1 */ +#endif + +#ifdef i386Architecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O +# endif +# define LinuxMachineDefines -D__i386__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* i386Architecture */ + +#ifdef s390Architecture +# define DefaultCCOptions -fsigned-char +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__s390__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* s390Architecture */ + +#ifdef AlphaArchitecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O +# endif +# define LinuxMachineDefines -D__alpha__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 -DJENSEN_SUPPORT +# ifdef UseCompaqMathLibrary +# define MathLibrary -lcpml -lm +# endif +#endif /* AlphaArchitecture */ + +#ifdef Arm32Architecture +# define DefaultCCOptions -fsigned-char +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O3 +# endif +# define LinuxMachineDefines -D__arm__ -D__arm32__ -U__arm -Uarm +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* Arm32Achitecture */ + +#ifdef x86_64Architecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__x86_64__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 +#endif /* x86_64Architecture */ + +#ifdef ia64Architecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__ia64__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 +#endif /* ia64Architecture */ + +#ifdef Mc68020Architecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__mc68000__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* Mc68020Architecture */ + +#ifdef PpcArchitecture +# define DefaultCCOptions -fsigned-char +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O +# endif +# define LinuxMachineDefines -D__powerpc__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* PpcArchitecture */ + +#ifdef SparcArchitecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__sparc__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DHAVE_DOMAINS -DGCCUSESGAS XFree86ServerDefines +# define AsVISOption -Av9a +# ifdef Sparc64Architecture +# define AsOutputArchSize 64 +# else +# define AsOutputArchSize 32 +# endif +#endif + +#ifdef MipsArchitecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 +# endif +# define LinuxMachineDefines -D__mips__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif + +#ifdef HPArchitecture +# define OptimizedCDebugFlags -O2 +# define LinuxMachineDefines -D__hppa__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif + +#ifdef SuperHArchitecture +# ifndef SuperHArchOptFlags +# ifdef SuperH4Architecture +# define SuperHArchOptFlags -m4 +# elif defined(SuperH4NOFPUArchitecture) +# define SuperHArchOptFlags -m4-nofpu +# else +# define SuperHArchOptFlags -m3 +# endif +# endif +# ifndef SuperHebArchitecture +# ifdef SuperHebArchitecture +# define SuperHEndianFlags -mb +# else +# define SuperHEndianFlags -ml +# endif +# endif +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O2 SuperHArchOptFlags SuperHEndianFlags +# endif +# define LinuxMachineDefines -D__sh__ +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif + +#ifndef StandardDefines +# define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines +#endif + +#if UseElfFormat +# define DlLibrary -rdynamic -ldl +#else +# define DlLibrary /**/ +#endif + +#define ServerExtraSysLibs /**/ + +#ifndef PamLibraries +#define PamLibraries -lpam DlLibrary +#endif + +#ifndef PamMiscLibraries +#define PamMiscLibraries -lpam_misc +#endif + +#if HasDECnet +# define ConnectionFlags -DUNIXCONN -DTCPCONN -DDNETCONN +# define ExtraLibraries -ldnet +#else +# define ConnectionFlags -DUNIXCONN -DTCPCONN +#endif + +/* Some of these man page defaults are overriden in the above OS sections */ +#ifndef ManSuffix +# define ManSuffix 1x +#endif +#ifndef ManDir +# define ManDir $(MANSOURCEPATH)1 +#endif +#ifndef LibManSuffix +# define LibManSuffix 3x +#endif +#ifndef LibmanDir +# define LibmanDir $(MANSOURCEPATH)3 +#endif +#ifndef FileManSuffix +# define FileManSuffix 5x +#endif +#ifndef FileManDir +# define FileManDir $(MANSOURCEPATH)5 +#endif + +#ifndef StaticLibrary +# define StaticLibrary(libpath,libname) -Wl,-Bstatic Concat(-L,libpath) Concat(-l,libname) -Wl,-Bdynamic +#endif + +#ifndef LinkGLToUsrLib +# define LinkGLToUsrLib YES +#endif +# ifndef LinkGLToUsrInclude +# define LinkGLToUsrInclude YES +#endif + + +#define HasGnuMake YES + +#define MakeNamedTargetSubdir(dir,flags,subname)\ + $(MAKE) -C dir $(MFLAGS) $(PARALLELMFLAGS) flags subname + +#define ArchitectureDefines -DLINUX_ARCHITECTURE + +#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB) +#define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB) + +#ifdef s390Architecture +# define HasXServer NO +#endif + +#include +#ifdef KDriveXServer +# include +#else +# include +#endif + +#ifndef XFree86ServerOSDefines +# define XFree86ServerOSDefines +#endif diff --git a/Xserver/config/cf/lnxLib.rules b/Xserver/config/cf/lnxLib.rules new file mode 100644 index 0000000..ade66d7 --- /dev/null +++ b/Xserver/config/cf/lnxLib.rules @@ -0,0 +1,565 @@ +XCOMM $XConsortium: lnxLib.rules /main/13 1996/09/28 16:11:01 rws $ +XCOMM $XFree86: xc/config/cf/lnxLib.rules,v 3.28.2.3 1997/06/22 10:32:20 dawes Exp $ + +/* + * Linux shared library rules (DLL & ELF versions) + */ +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef ForceNormalLib +#define ForceNormalLib NO +#endif + +#define SharedOldX NO + +#if UseElfFormat + +#if (LinuxCLibMajorVersion >= 5 && LinuxCLibMinorVersion >= 4) || LinuxCLibMajorVersion >= 6 +#undef SpecialMalloc +#define SpecialMalloc NO +#undef UseInternalMalloc +#define UseInternalMalloc NO +#endif + +/* + * #define BaseShLibReqs -lc + * + * I don't want to use this since the normal ELF executables should + * be linked with libc.so. If it is not, i.e., static, the variables in + * libc.so which is loaded in because of the other shared libraries + * may have different values than the ones in the static ELF + * executables. That happens if the binaries are linked with libg.a + * or libc_p.a. + * + * If an ELF executable linked with libg.a or libc_p.a loads a shared + * object which needs libc.so via dlopen (), I think it should fail. + * It is a very bad idea. The moral story is DON'T USE dlopen () IN + * ELF EXECUTABLES LINKED WITH libg.a OR libc_p.a. H.J. + * + */ +#define BaseShLibReqs + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -shared +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -fPIC +#endif +#ifndef PositionIndependentCplusplusFlags +#define PositionIndependentCplusplusFlags -fPIC +#endif +#ifndef ExtraLoadFlags +#if LinuxBinUtilsMajorVersion >= 26 +#ifdef UseInstalled +#if LinuxBinUtilsMajorVersion < 27 +#define ExtraLoadFlags -Wl,-rpath-link,$(USRLIBDIRPATH) +#endif +#else +#define ExtraLoadFlags -Wl,-rpath-link,$(BUILDLIBDIR) +#endif +#else +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH) +#endif +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + * NOTE: file must be executable, hence "INSTBINFLAGS" + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + @T=`echo Concat($(DESTDIR)dest/lib,libname.so.rev) | sed 's/\.[^\.]*$$//'`;\ + set -x; $(RM) $$T && $(LN) Concat(lib,libname.so.rev) $$T @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + $(LN) Concat(lib,libname.so.rev) Concat($(DESTDIR)dest/lib,libname.so) +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#ifdef UseInstalled +#define LinkBuildSonameLibrary(lib) true +#else +#define LinkBuildSonameLibrary(lib) (RemoveFile($(BUILDLIBDIR)/lib); \ + cd $(BUILDLIBDIR); $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/lib .) +#endif + +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + @SONAME=`echo $@ | sed 's/\.[^\.]*$$//'`; set -x; \ @@\ + (cd down; $(CC) -o up/$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$SONAME solist $(REQUIREDLIBS) BaseShLibReqs); \ @@\ + $(RM) $$SONAME; $(LN) $@ $$SONAME; \ @@\ + LinkBuildSonameLibrary($$SONAME) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + @MAJREV=`expr rev : '\(.*\)\.'`; \ @@\ + set -x; $(RM) Concat(lib,libname.so.$$MAJREV) @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* SharedLibraryTarget */ + +#ifndef SharedDepModuleTarget +#define SharedDepModuleTarget(name,deps,solist) @@\ +AllTarget(name) @@\ + @@\ +name: deps @@\ + $(RM) $@~ @@\ + $(CC) -o $@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS) BaseShLibReqs @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @@\ +clean:: @@\ + $(RM) name + +#endif /* SharedDepModuleTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ + +#else /* UseElfFormat */ + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags /**/ +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -B/usr/bin/jump +#endif + +/* + * These definitions are now extended to work with the X sources and + * external sources wishing to build shared libs. + * + * A library can create it's own shlibs (.so) or can be incorporated into + * another "host" lib. All libraries generate stub (.sa) files. + * A "host" lib does all the work to generate the stubs for itself and its + * "guests", invoking the "guest" Makefiles to create the objects for + * inclusion into the "host" shlib. A "guest" lib will ask the "host" to + * create the stubfiles, then copy its own into its directory. + * Most external libs are "host" libs; the concept of "guest" is a holdover + * from older libs during the days of scarce shared library address space. + * + * To create a simple "host" shared lib, Xfoo, define: + * + * JUMP_ROOT_Xfoo = + * JUMP_IS_HOST_Xfoo = YES + * JUMP_STUBLIBS_Xfoo = libXfoo.sa + * JUMP_DIR_Xfoo = $(JUMP_ROOT_Xfoo)/shared + * JUMP_DEFS_Xfoo = -DFOO + * JUMP_VARS_Xfoo = $(JUMP_ROOT_Xfoo)/jump_vars + * JUMP_FUNCS_Xfoo = $(JUMP_ROOT_Xfoo)/jump_funcs + * JUMP_IGNORE_Xfoo = $(JUMP_ROOT_Xfoo)/jump_ignore + * JUMP_EXPORT_Xfoo = $(JUMP_DIR_Xfoo)/jump.vars + * JUMP_IMPORT_Xfoo = $(JUMP_EXPORT_Xbar) + * JUMP_ADDRESS_Xfoo = 0xXXXXXXXX + * JUMP_JUMPTABLESIZE_Xfoo = 0x4000 + * JUMP_GOTSIZE_Xfoo = 4096 + * JUMP_STUBNAMES_Xfoo = libXfoo + * JUMP_STUBS_IMPORT_Xfoo = /usr/lib/libc.sa + * JUMP_LDLIBS_Xfoo = `$(CC) --print-libgcc-file-name` -lc + * + * To create a complex "host", you need to add + * JUMP_SIBARS_Xt = jump/libXbar.a~ + * These are the archives of the shared objects of the "guest" libs. They + * need to be added to the JUMP_LDLIBS_Xfoo lines. + * + * For further clarification, study the definitions of libXaw, a simple "host" + * lib, libXt, a complex "host" lib, and libXmu, one of libXts "guests". + * + * As a hint of how to start (with the DLL docs), touch jump_vars, jump_funcs + * and jump_ignore, then compile. Then massage the jump.vars and jump.funcs + * files in the shared subdirectory into jump_xxx files. + */ + +#ifndef UseInstalled +XCOMM These are only needed to build the server + +#if LinuxElfDefault +LIBC_SA = /usr/i486-linuxaout/lib/libc.sa +LIBM_SA = /usr/i486-linuxaout/lib/libm.sa +#else +LIBC_SA = /usr/lib/libc.sa +LIBM_SA = /usr/lib/libm.sa +#endif + +JUMP_LDLIBS_libc = `$(CC) --print-libgcc-file-name` -lc + +XCOMM libX11.so (X11, SM, ICE) +JUMP_ROOT_X11 = $(XLIBSRC) +JUMP_IS_HOST_X11 = YES +JUMP_STUBLIBS_X11 = libX11.sa libSM.sa libICE.sa +JUMP_SIBDIRS_X11 = $(JUMP_ROOT_SM) $(JUMP_ROOT_ICE) +JUMP_DIR_X11 = $(JUMP_ROOT_X11)/shared +JUMP_DEFS_X11 = $(XDMAUTHDEFS) $(XKB_DEFINES) +JUMP_VARS_X11 = $(JUMP_ROOT_X11)/jump_vars +JUMP_FUNCS_X11 = $(JUMP_ROOT_X11)/jump_funcs +JUMP_IGNORE_X11 = $(JUMP_ROOT_X11)/jump_ignore +JUMP_EXPORT_X11 = $(JUMP_DIR_X11)/jump.vars +JUMP_ADDRESS_X11 = 0x60200000 +JUMP_JUMPTABLESIZE_X11 = 0x4000 +JUMP_GOTSIZE_X11 = 4096 +JUMP_STUBNAMES_X11 = libX11 libSM libICE +JUMP_STUBS_IMPORT_X11 = $(LIBC_SA) +JUMP_SIBARS_X11 = jump/libSM.a~ jump/libICE.a~ +JUMP_LDLIBS_X11 = $(JUMP_SIBARS_X11) $(JUMP_LDLIBS_libc) + +XCOMM libSM (part of libX11.so) +JUMP_ROOT_SM = $(SMSRC) +JUMP_IS_HOST_SM = NO +JUMP_HOST_SM = $(JUMP_ROOT_X11) +JUMP_DIR_SM = $(JUMP_DIR_X11) + +XCOMM libICE (part of libX11.so) +JUMP_ROOT_ICE = $(ICESRC) +JUMP_IS_HOST_ICE = NO +JUMP_HOST_ICE = $(JUMP_ROOT_X11) +JUMP_DIR_ICE = $(JUMP_DIR_X11) + +XCOMM libXt.so (Xt, Xmu, Xext, Xi, Xtst, Xp) +JUMP_ROOT_Xt = $(TOOLKITSRC) +JUMP_IS_HOST_Xt = YES +JUMP_STUBLIBS_Xt = libXt.sa libXmu.sa libXext.sa libXi.sa libXtst.sa libXp.sa +JUMP_SUBDIRS_Xt = $(JUMP_ROOT_X11) +JUMP_SIBDIRS_Xt = $(JUMP_ROOT_Xmu) $(JUMP_ROOT_Xext) \ + $(JUMP_ROOT_Xi) $(JUMP_ROOT_Xtst) $(JUMP_ROOT_Xp) +JUMP_DIR_Xt = $(JUMP_ROOT_Xt)/shared +JUMP_VARS_Xt = $(JUMP_ROOT_Xt)/jump_vars +JUMP_FUNCS_Xt = $(JUMP_ROOT_Xt)/jump_funcs +JUMP_IGNORE_Xt = $(JUMP_ROOT_Xt)/jump_ignore +JUMP_EXPORT_Xt = $(JUMP_DIR_Xt)/jump.vars +JUMP_IMPORT_Xt = $(JUMP_EXPORT_X11) +JUMP_ADDRESS_Xt = 0x602a0000 +JUMP_JUMPTABLESIZE_Xt = 0x4000 +JUMP_GOTSIZE_Xt = 4096 +JUMP_STUBNAMES_Xt = libXt libXmu libXext libXi libXtst libXp +JUMP_STUBS_IMPORT_Xt = $(JUMP_STUBS_IMPORT_X11) +JUMP_SIBARS_Xt = jump/libXmu.a~ jump/libXext.a~ jump/libXi.a~ jump/libXtst.a~ jump/libXp.a~ +JUMP_LDLIBS_Xt = $(JUMP_SIBARS_Xt) $(JUMP_ROOT_ICE)/libICE.sa \ + $(JUMP_ROOT_SM)/libSM.sa $(JUMP_ROOT_X11)/libX11.sa $(JUMP_LDLIBS_libc) + +XCOMM libXmu (part of libXt.so) +JUMP_ROOT_Xmu = $(XMUSRC) +JUMP_IS_HOST_Xmu = NO +JUMP_HOST_Xmu = $(JUMP_ROOT_Xt) +JUMP_DIR_Xmu = $(JUMP_DIR_Xt) + +XCOMM libXext (part of libXt.so) +JUMP_ROOT_Xext = $(XEXTLIBSRC) +JUMP_IS_HOST_Xext = NO +JUMP_HOST_Xext = $(JUMP_ROOT_Xt) +JUMP_DIR_Xext = $(JUMP_DIR_Xt) + +XCOMM libXi (part of libXt.so) +JUMP_ROOT_Xi = $(XILIBSRC) +JUMP_IS_HOST_Xi = NO +JUMP_HOST_Xi = $(JUMP_ROOT_Xt) +JUMP_DIR_Xi = $(JUMP_DIR_Xt) + +XCOMM libXtst (part of libXt.so) +JUMP_ROOT_Xtst = $(XTESTLIBSRC) +JUMP_IS_HOST_Xtst = NO +JUMP_HOST_Xtst = $(JUMP_ROOT_Xt) +JUMP_DIR_Xtst = $(JUMP_DIR_Xt) + +XCOMM libXp (part of libXt.so) +JUMP_ROOT_Xp = $(XPLIBSRC) +JUMP_IS_HOST_Xp = NO +JUMP_HOST_Xp = $(JUMP_ROOT_Xt) +JUMP_DIR_Xp = $(JUMP_DIR_Xt) + +XCOMM libXaw.so (Xaw) +JUMP_ROOT_Xaw = $(AWIDGETSRC) +JUMP_IS_HOST_Xaw = YES +JUMP_STUBLIBS_Xaw = libXaw.sa +JUMP_SUBDIRS_Xaw = $(JUMP_ROOT_Xt) +JUMP_DIR_Xaw = $(JUMP_ROOT_Xaw)/shared +JUMP_VARS_Xaw = $(JUMP_ROOT_Xaw)/jump_vars +JUMP_FUNCS_Xaw = $(JUMP_ROOT_Xaw)/jump_funcs +JUMP_IGNORE_Xaw = $(JUMP_ROOT_Xaw)/jump_ignore +JUMP_EXPORT_Xaw = $(JUMP_DIR_Xaw)/jump.vars +JUMP_IMPORT_Xaw = $(JUMP_EXPORT_Xt) $(JUMP_EXPORT_X11) +JUMP_ADDRESS_Xaw = 0x60300000 +JUMP_JUMPTABLESIZE_Xaw = 0x4000 +JUMP_GOTSIZE_Xaw = 4096 +JUMP_STUBNAMES_Xaw = libXaw +JUMP_STUBS_IMPORT_Xaw = $(JUMP_STUBS_IMPORT_X11) +JUMP_LDLIBS_Xaw = $(JUMP_ROOT_Xt)/libXt.sa $(JUMP_ROOT_Xt)/libXmu.sa \ + $(JUMP_ROOT_Xt)/libXext.sa $(JUMP_ROOT_X11)/libX11.sa \ + $(JUMP_LDLIBS_libc) + +# libPEX.so (PEX5) +JUMP_ROOT_PEX5 = $(PEXLIBSRC) +JUMP_IS_HOST_PEX5 = YES +JUMP_STUBLIBS_PEX5 = libPEX5.sa +JUMP_SUBDIRS_PEX5 = $(JUMP_ROOT_X11) +JUMP_DIR_PEX5 = $(JUMP_ROOT_PEX5)/shared +JUMP_VARS_PEX5 = $(JUMP_ROOT_PEX5)/jump_vars +JUMP_FUNCS_PEX5 = $(JUMP_ROOT_PEX5)/jump_funcs +JUMP_IGNORE_PEX5 = $(JUMP_ROOT_PEX5)/jump_ignore +JUMP_EXPORT_PEX5 = $(JUMP_DIR_PEX5)/jump.vars +JUMP_IMPORT_PEX5 = $(JUMP_EXPORT_X11) +JUMP_ADDRESS_PEX5 = 0x60b00000 +JUMP_JUMPTABLESIZE_PEX5 = 0x4000 +JUMP_GOTSIZE_PEX5 = 4096 +JUMP_STUBNAMES_PEX5 = libPEX5 +JUMP_STUBS_IMPORT_PEX5 = $(JUMP_STUBS_IMPORT_X11) $(LIBM_SA) +JUMP_LDLIBS_PEX5 = $(JUMP_ROOT_X11)/libX11.sa $(JUMP_LDLIBS_libc) -lm + +# libXIE.so (XIE) +JUMP_ROOT_XIE = $(XIELIBSRC) +JUMP_IS_HOST_XIE = YES +JUMP_STUBLIBS_XIE = libXIE.sa +JUMP_SUBDIRS_XIE = $(JUMP_ROOT_X11) +JUMP_DIR_XIE = $(JUMP_ROOT_XIE)/shared +JUMP_VARS_XIE = $(JUMP_ROOT_XIE)/jump_vars +JUMP_FUNCS_XIE = $(JUMP_ROOT_XIE)/jump_funcs +JUMP_IGNORE_XIE = $(JUMP_ROOT_XIE)/jump_ignore +JUMP_EXPORT_XIE = $(JUMP_DIR_XIE)/jump.vars +JUMP_IMPORT_XIE = $(JUMP_EXPORT_X11) +JUMP_ADDRESS_XIE = 0x60be0000 +JUMP_JUMPTABLESIZE_XIE = 0x4000 +JUMP_GOTSIZE_XIE = 4096 +JUMP_STUBNAMES_XIE = libXIE +JUMP_STUBS_IMPORT_XIE = $(JUMP_STUBS_IMPORT_X11) $(LIBM_SA) +JUMP_LDLIBS_XIE = $(JUMP_ROOT_X11)/libX11.sa $(JUMP_LDLIBS_libc) -lm + +#endif /* !UseInstalled */ + +/* + * SharedLibraryDataTarget - generate rules to create shared data file + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * There are two basic flavors of libs: self-generating, which create + * their own (and possibly other) libs, and hosted, which rely on another + * lib for all the work. + */ +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +XCOMM This logic is such to compile the libs in their proper order, @@\ +XCOMM remain dependent on subsidiary libs, and yet minimize local work @@\ + @@\ +JUMP_DIR=./jump @@\ +JUMP_LIB=Concat(lib,libname) @@\ + @@\ +XCOMM this is needed for newer gnumake versions @@\ +export JUMP_DIR JUMP_LIB @@\ + @@\ +JUMP_IS_HOST=$(Concat(JUMP_IS_HOST_,libname)) @@\ +JUMP_AR=$(JUMP_DIR)/Concat(lib,libname.a~) @@\ +JUMP_SA=Concat(lib,libname.sa) @@\ +JUMP_SO=Concat(lib,libname.so.rev) @@\ + @@\ +JUMP_HOST=$(Concat(JUMP_HOST_,libname)) @@\ + @@\ +INSTSOLIBFLAGS=-m 0555 @@\ + @@\ +AllTarget($(BUILDLIBDIR)/$(JUMP_SA)) @@\ + @@\ +$(BUILDLIBDIR)/$(JUMP_SA): $(JUMP_SA) @@\ + LinkBuildLibrary($(JUMP_SA)) @@\ + @@\ +$(JUMP_SA) $(Concat(JUMP_STUBLIBS_,libname)) do_JUMP_SA: \ + down/mk_JUMP_SA_$(JUMP_IS_HOST) @@\ + @@\ +down/mk_JUMP_SA_0:: mk_JUMP_HOST @@\ + @@\ +down/mk_JUMP_SA_0:: $(JUMP_HOST)/$(JUMP_SA) @@\ + $(RM) $(JUMP_SA) @@\ + $(LN) $(JUMP_HOST)/$(JUMP_SA) $(JUMP_SA) @@\ + touch $@ @@\ + @@\ +down/mk_JUMP_SA_1:: $(JUMP_SO) @@\ + @@\ +down/mk_JUMP_SA_1:: down/mk_JUMP_SO_2 @@\ + $(RM) $(Concat(JUMP_STUBLIBS_,libname)) @@\ + mkstubs -v rev -l $(JUMP_LIB) \ + -a $(Concat(JUMP_ADDRESS_,libname)) \ + -j $(Concat(JUMP_JUMPTABLESIZE_,libname)) \ + -g $(Concat(JUMP_GOTSIZE_,libname)) \ + -- $(Concat(JUMP_STUBNAMES_,libname)) @@\ + verify-shlib -l $(JUMP_SO) \ + $(Concat(JUMP_STUBLIBS_,libname)) @@\ + $(MV) verify.out $(JUMP_DIR) @@\ + touch $@ @@\ + @@\ +mk_JUMP_HOST: @@\ + @echo checking stub library $(JUMP_SA) in $(JUMP_HOST)... @@\ + @(cd $(JUMP_HOST); $(MAKE) $(MFLAGS) $(JUMP_SA)) || exit 1 @@\ + @echo ok. continuing in $(Concat(JUMP_ROOT_,libname))... @@\ + @@\ +$(JUMP_SO): down/mk_JUMP_SO_$(JUMP_IS_HOST) @@\ + @@\ +down/mk_JUMP_SO_0: @@\ + @@\ +down/mk_JUMP_SO_1:: $(JUMP_AR) mk_JUMP_SIBDIRS down/mk_JUMP_SO_2 @@\ + @@\ +down/mk_JUMP_SO_2: down/mk_JUMP_AR $(Concat(JUMP_SIBARS_,libname)) @@\ + $(RM) $(JUMP_SO) @@\ + mkimage -f -v rev -l $(JUMP_LIB) \ + -a $(Concat(JUMP_ADDRESS_,libname)) \ + -j $(Concat(JUMP_JUMPTABLESIZE_,libname)) \ + -g $(Concat(JUMP_GOTSIZE_,libname)) \ + -- $(JUMP_AR) $(Concat(JUMP_LDLIBS_,libname)) @@\ + $(RM) $(JUMP_DIR)/__jump.s $(JUMP_DIR)/__jump.o @@\ + LinkBuildLibrary($(JUMP_SO)) @@\ + touch $@ @@\ + @@\ +mk_JUMP_SIBDIRS: @@\ + @for d in $(Concat(JUMP_SIBDIRS_,libname)); do \ + echo checking ar library in $$d...; \ + (cd $$d ; $(MAKE) $(MFLAGS) fastdo_JUMP_AR) || exit 1; \ + echo ok. continuing in $(Concat(JUMP_ROOT_,libname))...;done@@\ + @@\ +fastdo_JUMP_AR: $(JUMP_DIR) down/mk_JUMP_AR @@\ + @@\ +$(JUMP_AR) do_JUMP_AR:: jumpsetup down/mk_JUMP_AR @@\ + @@\ +jumpsetup: $(JUMP_DIR) jumpsetup_$(JUMP_IS_HOST) @@\ + @@\ +$(JUMP_DIR): @@\ + $(RM) jump @@\ + LibMkdir($(Concat(JUMP_DIR_,libname))) @@\ + $(LN) $(Concat(JUMP_DIR_,libname)) jump @@\ + @@\ +jumpsetup_0: @@\ + @echo doing jump setup in host $(JUMP_HOST)... @@\ + @(cd $(JUMP_HOST); $(MAKE) $(MFLAGS) jumpsetup) || exit 1 @@\ + @echo ok. continuing in $(Concat(JUMP_ROOT_,libname))... @@\ + @@\ +jumpsetup_1:: @@\ + @for d in $(Concat(JUMP_SUBDIRS_,libname)); do \ + echo checking stub library in $$d...; \ + (cd $$d ; $(MAKE) $(MFLAGS) do_JUMP_SA) || exit 1; \ + echo ok. continuing in $(Concat(JUMP_ROOT_,libname))...;done@@\ + @@\ +jumpsetup_1:: $(JUMP_DIR)/jump.funcs $(JUMP_DIR)/jump.vars \ + $(JUMP_DIR)/jump.ignore $(JUMP_DIR)/jump.import @@\ + @@\ +$(JUMP_DIR)/jump.funcs: $(Concat(JUMP_FUNCS_,libname)) @@\ + $(RM) $(JUMP_DIR)/jump.funcs @@\ + cat $(Concat(JUMP_FUNCS_,libname)) | \ + $(CPP) $(ALLDEFINES) $(Concat(JUMP_DEFS_,libname)) > $@ @@\ + @@\ +$(JUMP_DIR)/jump.vars: $(Concat(JUMP_VARS_,libname)) @@\ + $(RM) $(JUMP_DIR)/jump.vars @@\ + cat $(Concat(JUMP_VARS_,libname)) | \ + $(CPP) $(ALLDEFINES) $(Concat(JUMP_DEFS_,libname)) > $@ @@\ + @@\ +$(JUMP_DIR)/jump.ignore: $(Concat(JUMP_IGNORE_,libname)) @@\ + $(RM) $(JUMP_DIR)/jump.ignore @@\ + cat $(Concat(JUMP_IGNORE_,libname)) | \ + $(CPP) $(ALLDEFINES) $(Concat(JUMP_DEFS_,libname)) > $@ @@\ + @@\ +$(JUMP_DIR)/jump.import: $(JUMP_DIR)/stubs.import \ + $(Concat(JUMP_IMPORT_,libname)) @@\ + $(RM) $(JUMP_DIR)/jump.import @@\ + cat $(JUMP_DIR)/stubs.import $(Concat(JUMP_IMPORT_,libname)) > $@ @@\ + @@\ +$(JUMP_DIR)/stubs.import: $(Concat(JUMP_STUBS_IMPORT_,libname)) @@\ + $(RM) $(JUMP_DIR)/stubs.import @@\ + nm --no-cplus $(Concat(JUMP_STUBS_IMPORT_,libname)) | grep '__GOT__' | \ + sed 's/__GOT__/_/' > $@ @@\ + @@\ +down/mk_JUMP_AR: solist @@\ + $(RM) $(JUMP_AR) @@\ + @if [ -s $(JUMP_DIR)/jump.log ]; then \ + echo "Error: Leftover globals for shared lib"; \ + exit 1; fi @@\ + (cd down; $(AR) up/$(JUMP_AR) solist) || exit 1 @@\ + $(RANLIB) $(JUMP_AR) @@\ + touch $@ @@\ + @@\ +clean:: jumpclean @@\ + @@\ +jumpclean: jumpclean_$(JUMP_IS_HOST) @@\ + $(RM) $(JUMP_SA) down/mk_JUMP_AR @@\ + $(RM) -r $(JUMP_DIR) @@\ + @@\ +jumpclean_0: @@\ + $(RM) down/mk_JUMP_SA_0 @@\ + $(RM) $(JUMP_HOST)/$(JUMP_SA) @@\ + @@\ +jumpclean_1: @@\ + $(RM) -r $(JUMP_SO) $(Concat(JUMP_DIR_,libname)) \ @@\ + down/mk_JUMP_SA_1 down/mk_JUMP_SO_1 down/mk_JUMP_SO_2 +#endif /* SharedLibraryTarget */ + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: $(JUMP_SA) $(JUMP_SO) @@\ + MakeDir($(DESTDIR)dest) @@\ + @if [ "$(JUMP_IS_HOST)" = YES ]; then \ + (T=$(DESTDIR)dest/`echo $(JUMP_SO)|sed 's/\.[^\.]*$$//'`;\ + set -x; \ + $(INSTALL) -s -c $(INSTSOLIBFLAGS) $(JUMP_SO) $(DESTDIR)dest; \ + $(RM) $$T && $(LN) $(JUMP_SO) $$T); fi @@\ + $(INSTALL) -c $(INSTLIBFLAGS) $(JUMP_SA) $(DESTDIR)dest +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +#endif /* UseElfFormat */ diff --git a/Xserver/config/cf/lnxLib.tmpl b/Xserver/config/cf/lnxLib.tmpl new file mode 100644 index 0000000..ebf7307 --- /dev/null +++ b/Xserver/config/cf/lnxLib.tmpl @@ -0,0 +1,41 @@ +XCOMM $XConsortium: lnxLib.tmpl,v 1.5 95/01/11 21:44:44 kaleb Exp $ +XCOMM $XFree86: xc/config/cf/lnxLib.tmpl,v 3.9 1996/02/24 04:32:52 dawes Exp $ + +/* + * Linux shared library template + */ + +#if UseElfFormat + +#ifndef FixupLibReferences +#define FixupLibReferences() @@\ +XMULIBONLY = -lXmu @@\ +XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB) +#endif + +#ifndef XawClientLibs +#define XawClientLibs $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XLIB) +#endif + +#define CplusplusLibC + +#define SharedX11Reqs +#define SharedOldXReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXtReqs $(LDPRELIB) $(XLIBONLY) $(SMLIB) $(ICELIB) +#define SharedXawReqs $(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXmuReqs $(LDPRELIB) $(XTOOLLIB) $(XLIB) +#define SharedXextReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXiReqs $(LDPRELIB) $(XLIB) +#define SharedPexReqs $(LDPRELIB) $(XLIBONLY) MathLibrary +#define SharedXtstReqs $(LDPRELIB) $(XLIB) +#define SharedXieReqs $(LDPRELIB) $(XLIBONLY) +#define SharedSMReqs $(LDPRELIB) $(ICELIB) + +#else /* UseElfFormat */ + +#ifndef FixupLibReferences +#define FixupLibReferences() @@\ +XMULIB = -lXmu $(XLIB) +#endif + +#endif /* UseElfFormat */ diff --git a/Xserver/config/cf/lnxdoc.rules b/Xserver/config/cf/lnxdoc.rules new file mode 100644 index 0000000..71881a6 --- /dev/null +++ b/Xserver/config/cf/lnxdoc.rules @@ -0,0 +1,166 @@ +XCOMM $XFree86: xc/config/cf/lnxdoc.rules,v 3.9 1997/01/26 05:10:25 dawes Exp $ +XCOMM +XCOMM Rules for formatting Linuxdoc-SGML documentation +XCOMM + +#include + +#ifdef DontInstallLinuxDoc +#define LinuxDocInstall(file,dest) /* do nothing */ +#define LinuxDocInstallMultiple(files,dest) /* do nothing */ +#else +#define LinuxDocInstall(file,dest) InstallNonExecFile(file,dest) +#define LinuxDocInstallMultiple(files,dest) @@\ +InstallMultipleDest(install,files,dest) +#endif + +#if !HasSgmlFmt +/* Version for Linuxdoc-SGML */ +#if BuildLinuxDocPS +#define LinuxDocSgmlToPs(sgmlfile,base) @@\ +AllTarget(base.ps) @@\ + @@\ +base.ps: sgmlfile @@\ + RemoveFile(base.dvi) @@\ + $(LINUXDOCFORMAT) -T latex sgmlfile | \ @@\ + $(LINUXDOCLATEX) -d > base.dvi @@\ + RemoveFile(base.ps) @@\ + $(DVIPS) $(DVIPSOPTIONS) -o base._ps base.dvi && \ @@\ + $(MV) base._ps $@ @@\ + RemoveFile(base.dvi) @@\ + @@\ +LinuxDocInstall(base.ps,$(XFREE86PSDOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFiles(base.dvi base._ps base.ps) +#else +#define LinuxDocSgmlToPs(sgmlfile,base) /**/ +#endif + +#if BuildLinuxDocText +#define LinuxDocSgmlToText(sgmlfile,textfile) @@\ +AllTarget(textfile) @@\ + @@\ +textfile: sgmlfile @@\ + RemoveFile(textfile) @@\ + $(LINUXDOCFORMAT) -T nroff sgmlfile | \ @@\ + $(LINUXDOCROFF) | $(XFREE86IDENTFIX) > _$@ && \ @@\ + $(MV) _$@ $@ @@\ + @@\ +LinuxDocInstall(textfile,$(XFREE86DOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFiles(Concat(_,textfile) textfile) +#else +#define LinuxDocSgmlToText(sgmlfile,textfile) /**/ +#endif + +/* + * The 'echo' stuff here is a bit of a hack, but 'set -x' doesn't show + * what is going on. + */ +#if BuildLinuxDocHtml +#define LinuxDocSgmlToHtml(sgmlfile,base) @@\ +AllTarget(base.html) @@\ + @@\ +base.html: sgmlfile @@\ + @(TMP=/tmp/tmp.$$$$; \ @@\ + RemoveFile($${TMP}); \ @@\ + echo RemoveFiles(base*.html); \ @@\ + RemoveFiles(base*.html); \ @@\ + echo "$(LINUXDOCFORMAT) -T html sgmlfile |" \ @@\ + "$(LINUXDOCPREHTML) | $(LINUXDOCFIXREF) > $${TMP}"; \ @@\ + $(LINUXDOCFORMAT) -T html sgmlfile | \ @@\ + $(LINUXDOCPREHTML) | $(LINUXDOCFIXREF) > $${TMP}; \ @@\ + echo "$(LINUXDOCFORMAT) -T html sgmlfile |" \ @@\ + "$(LINUXDOCPREHTML) >> $${TMP}"; \ @@\ + $(LINUXDOCFORMAT) -T html sgmlfile | \ @@\ + $(LINUXDOCPREHTML) >> $${TMP}; \ @@\ + echo "$(LINUXDOCHTML) base < $${TMP} > base.html &&" \ @@\ + "$(MV) base._html $@"; \ @@\ + $(LINUXDOCHTML) base < $${TMP} > base._html && \ @@\ + $(MV) base._html $@; \ @@\ + RemoveFile($${TMP})) @@\ + @@\ +LinuxDocInstallMultiple(base*.html,$(XFREE86HTMLDOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFiles(base*.html base._html) +#else +#define LinuxDocSgmlToHtml(sgmlfile,base) /**/ +#endif + +#else /* HasSgmlFmt */ + +/* Version for FreeBSD's sgmlfmt */ +#if BuildLinuxDocPS +#define LinuxDocSgmlToPs(sgmlfile,base) @@\ +AllTarget(base.ps) @@\ + @@\ +base.ps: sgmlfile @@\ + RemoveFile(base.ps) @@\ + @(BASE=`basename sgmlfile .sgml`;\ @@\ + set -x;\ @@\ + RemoveFile($$BASE.ps);\ @@\ + $(SGMLFMTCMD) -f ps sgmlfile && $(MV) $$BASE.ps $@) @@\ + @@\ +LinuxDocInstall(base.ps,$(XFREE86PSDOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFile(base.ps) +#else +#define LinuxDocSgmlToPs(sgmlfile,base) /**/ +#endif + +#if BuildLinuxDocText +#define LinuxDocSgmlToText(sgmlfile,textfile) @@\ +AllTarget(textfile) @@\ + @@\ +textfile: sgmlfile @@\ + RemoveFile(textfile) @@\ + @(BASE=`basename sgmlfile .sgml`;\ @@\ + set -x;\ @@\ + RemoveFile($$BASE.latin1);\ @@\ + $(SGMLFMTCMD) -f latin1 sgmlfile; \ @@\ + $(XFREE86IDENTFIX) < $$BASE.latin1 > _$@ && $(MV) _$@ $@) @@\ + @@\ +LinuxDocInstall(textfile,$(XFREE86DOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFiles(Concat(_,textfile) textfile) +#else +#define LinuxDocSgmlToText(sgmlfile,textfile) /**/ +#endif + +#if BuildLinuxDocHtml +#define LinuxDocSgmlToHtml(sgmlfile,base) @@\ +AllTarget(base.html) @@\ + @@\ +base.html: sgmlfile @@\ + @if [ sgmlfile != base.sgml ]; then $(LN) sgmlfile base.sgml; fi @@\ + RemoveFiles(base*.html) @@\ + $(SGMLFMTCMD) -f html base.sgml || RemoveFile($@) @@\ + @if [ sgmlfile != base.sgml ]; then RemoveFile(base.sgml); fi @@\ + @@\ +LinuxDocInstallMultiple(base*.html,$(XFREE86HTMLDOCDIR)) @@\ + @@\ +clean:: @@\ + RemoveFiles(base*.html) +#else +#define LinuxDocSgmlToHtml(sgmlfile,base) /**/ +#endif + +#endif /* HasSgmlFmt */ + + +#define LinuxDocTargetLong(sgmlfile,textfile,base) @@\ +LinuxDocSgmlToText(sgmlfile,textfile) @@\ +LinuxDocSgmlToHtml(sgmlfile,base) @@\ +LinuxDocSgmlToPs(sgmlfile,base) + +#define LinuxDocReadmeTarget(base) @@\ +LinuxDocTargetLong(base.sgml,README.base,base) + +#define LinuxDocTarget(base) @@\ +LinuxDocTargetLong(base.sgml,base,base) + diff --git a/Xserver/config/cf/lnxdoc.tmpl b/Xserver/config/cf/lnxdoc.tmpl new file mode 100644 index 0000000..4809643 --- /dev/null +++ b/Xserver/config/cf/lnxdoc.tmpl @@ -0,0 +1,101 @@ +XCOMM $XFree86: xc/config/cf/lnxdoc.tmpl,v 3.5 1997/01/26 05:10:26 dawes Exp $ +XCOMM + +#ifndef HasLinuxDoc +#define HasLinuxDoc NO +#endif + +#ifndef HasSgmlFmt +#define HasSgmlFmt NO +#endif + +#ifndef LinuxDocDir +#define LinuxDocDir /usr/local/linuxdoc-sgml +#endif + +#ifndef LinuxDocBinDir +#define LinuxDocBinDir $(LINUXDOCPATH)/bin +#endif + +#ifndef LinuxDocFormatCmd +#define LinuxDocFormatCmd $(LINUXDOCBIN)/ldformat +#endif + +#ifndef LinuxDocRoffCmd +#define LinuxDocRoffCmd $(LINUXDOCBIN)/qroff +#endif + +#ifndef XFree86IdentFix +#define XFree86IdentFix sed '/\$$\XFree86:/s/\$$/Generated from /' +#endif + +#ifndef LinuxDocFixrefCmd +#define LinuxDocFixrefCmd $(LINUXDOCBIN)/fixref +#endif + +#ifndef LinuxDocPreHtmlCmd +#define LinuxDocPreHtmlCmd $(LINUXDOCBIN)/prehtml +#endif + +#ifndef LinuxDocHtmlCmd +#define LinuxDocHtmlCmd $(LINUXDOCBIN)/html2html +#endif + +#ifndef HasLatex +#define HasLatex NO +#endif + +#ifndef LinuxDocLatexCmd +#define LinuxDocLatexCmd $(LINUXDOCBIN)/qtex +#endif + +#ifndef SgmlFmtCmd +#define SgmlFmtCmd sgmlfmt +#endif + +#ifndef HasDvips +#define HasDvips NO +#endif + +#ifndef DvipsOptions +#define DvipsOptions /**/ +#endif + +#ifndef DvipsCmd +#define DvipsCmd dvips +#endif + +#ifndef BuildLinuxDocText +#define BuildLinuxDocText HasLinuxDoc +#endif + +#ifndef BuildLinuxDocHtml +#define BuildLinuxDocHtml NO +#endif + +#ifndef BuildLinuxDocPS +#define BuildLinuxDocPS (HasLatex && HasDvips) || HasSgmlFmt +#endif + + + LINUXDOCPATH = LinuxDocDir + LINUXDOCENV = LINUXDOC=$(LINUXDOCPATH) + LINUXDOCBIN = LinuxDocBinDir + LINUXDOCFORMAT = $(LINUXDOCENV) LinuxDocFormatCmd + LINUXDOCROFF = $(LINUXDOCENV) LinuxDocRoffCmd + LINUXDOCLATEX = $(LINUXDOCENV) LinuxDocLatexCmd + LINUXDOCFIXREF = $(LINUXDOCENV) LinuxDocFixrefCmd + LINUXDOCPREHTML = $(LINUXDOCENV) LinuxDocPreHtmlCmd + LINUXDOCHTML = $(LINUXDOCENV) LinuxDocHtmlCmd + XFREE86IDENTFIX = XFree86IdentFix + DVIPS = DvipsCmd + DVIPSOPTIONS = DvipsOptions + SGMLFMTCMD = SgmlFmtCmd + +XCOMM Some extra things to clean + +#ifdef ExtraFilesToClean +#undef ExtraFilesToClean +#endif +#define ExtraFilesToClean *.aux *.dvi *.log *.tex *.toc *.html *.ps *.latin1 + diff --git a/Xserver/config/cf/luna.cf b/Xserver/config/cf/luna.cf new file mode 100644 index 0000000..cb5d99c --- /dev/null +++ b/Xserver/config/cf/luna.cf @@ -0,0 +1,117 @@ +XCOMM platform: $XConsortium: luna.cf /main/35 1996/09/28 16:11:11 rws $ +/* + * Please set the values for OSMajorVerion and OSMinorVersion + * before making makefiles. + * + * The Luna version of the make program doesn't define the standard + * macro MAKE, so you must run it as "make MAKE=make" at top level, + * e.g., "make MAKE=make World" + */ + +#ifdef Mc68000Architecture +# ifdef luna2 +#ifndef OSName +#define OSName Mach 2.5 Vers 1.40 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 1 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 40 +#endif +# else +#ifndef OSName +#define OSName UNIOS-B 4.3BSD UNIX: 2.00 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 2 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#define DirFailPrefix - +# endif +#else /* Mc88000Architecture */ +#ifndef OSName +#define OSName Mach 2.5 Vers 2.00.1 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 2 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 1 +#endif +#endif +XCOMM operating system: OSName + +#define HasBsearch NO +#define HasVoidSignalReturn NO +#define HasGcc YES +#define HasCThreads YES +#define HasThreadSafeAPI NO +#define Malloc0ReturnsNull HasCThreads /* -lthreads fails, -lc works */ +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#define BootstrapCFlags -DUSE_CC_E -DNFS_STDOUT_BUG + +#define ThreadsLibraries -lthreads -lmach +#define ThreadsCplusplusLibraries -lthreads -lmach + +#define PrimaryScreenResolution 100 +#define BuildXKB YES + +#ifdef Mc68000Architecture +#ifdef luna2 +#if ((OSMajorVersion <= 1) && (OSMinorVersion < 40)) +#define ServerExtraDefines -DUNUSE_DRV_TIME -DUNUSE_SIGIO_SIGNAL +#endif +#else /* luna1 */ +#if ((OSMajorVersion <= 1) && (OSMinorVersion <= 60)) +#define StandardDefines -Dluna -Duniosb +#endif +#if ((OSMajorVersion < 2) || ((OSMajorVersion == 2) && (OSMinorVersion < 1))) +#define ServerExtraDefines -DUNUSE_DRV_TIME -DUNUSE_SIGIO_SIGNAL +#endif +#endif /* luna2 */ +#if HasGcc +#define OptimizedCDebugFlags -O -traditional +#define ServerCDebugFlags -Dmc68020 -O -traditional +#else /* cc */ +#define OptimizedCDebugFlags -O -Z18 +#define ServerCDebugFlags -Dmc68020 -O -Z18 +#endif /* HasGcc */ +#endif /* Mc68000Architecture */ + + +#ifdef Mc88000Architecture +#if ((OSMajorVersion <= 1) && (OSMinorVersion <= 12)) +#define ServerExtraDefines -DUNUSE_DRV_TIME -DUNUSE_SIGIO_SIGNAL +#endif +#define HasNdbm YES +#define ExtraLibraries -li18n +#if HasGcc +#define CcCmd gcc -fstrength-reduce +#define PreIncDir /usr/local/lib/gcc/gcc-include +#define OptimizedCDebugFlags -O2 /* -traditional */ +#else +#define PreIncDir /usr/lib/ccom/include +#endif +#define PostIncDir /usr/mach/include +#endif + +#ifdef Mc68000Architecture +#define UnalignedReferencesAllowed YES /* if arbitrary deref is okay */ +#define BuildPexExt NO +#define XlunaServer YES +#endif + +#ifdef Mc88000Architecture +#define BuildPexExt NO +#define XlunaServer YES +#endif + +#if ((OSMajorVersion >= 2) && (OSMinorVersion >= 0) && (OSTeenyVersion >= 1)) +#define HasWChar32 YES +#endif diff --git a/Xserver/config/cf/lynx.cf b/Xserver/config/cf/lynx.cf new file mode 100644 index 0000000..257380a --- /dev/null +++ b/Xserver/config/cf/lynx.cf @@ -0,0 +1,316 @@ +XCOMM platform: $XFree86: xc/config/cf/lynx.cf,v 3.12.2.6 1998/02/01 16:03:19 robin Exp $ + +#ifdef i386Architecture +# define OSName LynxOS AT +#endif +#ifdef ppcArchitecture +# define OSName LynxOS PowerPC +#endif +#ifdef SparcArchitecture +# define OSName LynxOS microSPARC +#endif +#define OSVendor (LYNX Real-Time Systems, Inc) +#define OSMajorVersion 2 +#define OSMinorVersion 5 +#define OSTeenyVersion 0 + +#define HasGcc YES +#if OSMajorVersion == 2 && OSMinorVersion > 2 +# define HasGcc2 YES +# ifndef HasGcc2ForCplusplus +# define HasGcc2ForCplusplus YES +# endif +#else +# define HasGcc2 NO +#endif +#ifndef HasGcc2ForCplusplus +# define HasGcc2ForCplusplus YES +#endif +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES +#define HasShadowPasswd NO +#ifndef HasLibCrypt +# define HasLibCrypt NO +#endif +#define HasPutenv YES +#define HasShm YES +#define HasSockets YES +#define HasVFork NO +#define HasVarDirectory NO +#if OSMajorVersion == 2 && OSMinorVersion > 4 +# define HasBSD44Sockets YES +#endif + +#define HasPosixThreads YES +#define ThreadedX YES +#define HasThreadSafeAPI YES /* only 2.[345].0 ?? */ +#if HasGcc2 +# if OSMajorVersion == 2 && OSMinorVersion == 3 +# define ThreadsCompileFlags -mposix -mthreads +# define ThreadsCplusplusCompileFlags -mposix -mthreads +# else +# define ThreadsCompileFlags -mthreads +# define ThreadsCplusplusCompileFlags -mthreads +# endif +#else +# define ThreadsCompileFlags -m +# define ThreadsCplusplusCompileFlags -m +#endif +#if OSMajorVersion == 2 && OSMinorVersion < 3 +# define ThreadsLibraries /lib/thread/libc.a /lib/thread/libc_p.a +#endif +#if OSMinorVersion <= 5 +# define ThreadPreStdAPIDefines -DXPRE_STANDARD_API +#endif +#define AvoidNullMakeCommand YES +#if OSMajorVersion == 2 && OSMinorVersion > 2 +#define StripInstalledPrograms YES +#else +/* under LynxOS AT V2.x /bin/strip will leave file.unstripped around + * and fail if installing across different file systems + */ +#define StripInstalledPrograms NO +#endif +#define CompressAllFonts YES +#define Malloc0ReturnsNull NO +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#if HasGcc2 +# if OSMajorVersion == 2 && OSMinorVersion == 3 +# define CplusplusCmd g++ -mposix +# define CcCmd gcc -mposix +# else +# define CplusplusCmd g++ +# define CcCmd gcc +# endif +# if OSMajorVersion == 2 && OSMinorVersion == 5 +# define DefaultCCOptions -ansi -pedantic -fcommon +# endif +#else +# define CplusplusCmd g++ +# define CcCmd gcc +# define DefaultCCOptions -ansi +# define GccGasOption -DGCCUSESGAS /* For SuperProbe */ +#endif +#define AsCmd as +#define LdCmd ld +#define AsmDefines -DUSE_GAS +#define CppCmd /lib/cpp +#define YaccCmd bison -y +/* make sure we take the right flex on 2.3.0 and 2.4.0 */ +#define LexCmd /bin/flex +#if OSMinorVersion >= 5 +# define LexLib -lfl +#else +# define LexLib /**/ +#endif +/* On LynxOS AT 2.3.0 /lib/libm.a is a symbolic link to /lib/libc.a, so we + * screw up some POSIX functionality when -lm comes before -lc_p in our + * ld argument list. For LynxOS-AT we don't need -lm but for others we + * do (e.g. SPARC) + */ +#if OSMajorVersion == 2 && OSMinorVersion == 3 +# define MathLibrary -lc_p -lm +# define TermcapLibrary -lc_p -ltermcap +#else +# define MathLibrary -lm +# define TermcapLibrary -ltermcap +#endif +#define PreProcessCmd CcCmd -E +#if HasGcc2 +# define PostIncDir DefaultGccIncludeDir +#endif +#define LdCombineFlags -r +#if HasGcc2 +# ifdef i386Architecture +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# else +# define OptimizedCDebugFlags -O2 +# endif +#else +# define OptimizedCDebugFlags -O +#endif +#if OSMajorVersion == 2 && OSMinorVersion <= 2 +# define StandardDefines -DLynx -DLynx_22 -DX_NOT_POSIX +#else +# if defined(i386Architecture) && OSMajorVersion == 2 && OSMinorVersion > 4 +/* need __i386__ for 2.5.0 AT and higher */ +# define StandardDefines -DLynx -DX_LOCALE -D__i386__ +# else +# define StandardDefines -DLynx -DX_LOCALE +# endif +#endif +#define StandardCppDefines -traditional StandardDefines +#ifdef i386Architecture +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#else +# if defined(SparcArchitecture) +# define SparcConsoleDefines -DPATCHED_CONSOLE +# define ServerOSDefines -DDDXOSINIT +# define ServerExtraDefines -DGCCUSESGAS SparcConsoleDefines +# define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT +# else +# define ServerOSDefines /**/ +# define ServerExtraDefines -DGCCUSESGAS +# endif +#endif +#define ServerExtraSysLibs $(CBRT) MathLibrary +#define ConnectionFlags -DUNIXCONN -DTCPCONN +#if OSMajorVersion == 2 && OSMinorVersion < 5 +# define ExtraLibraries -lbsd +#else +# define ExtraLibraries -lbsd -llynx +#endif +#if !HasGcc2 +# define ExtraLoadFlags -k +#endif +#if OSMajorVersion == 2 && OSMinorVersion <= 2 +# define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#endif + +/* define HasMotif to YES for LynxOS with Motif + * installed according to the notes in README.LynxOS. + */ +#ifndef HasMotif +# define HasMotif NO +#endif +#if HasMotif +# ifndef UseInstalledMotif +# define UseInstalledMotif YES +# endif +# ifndef SaberProgramTarget +# define SaberProgramTarget(program,srclist,objlist,locallibs,syslibs) /**/ +# endif +# define LocalTmplFile +# define LocalRulesFile +#endif + +#define ManSourcePath $(MANPATH)/cat + +#ifndef ManSuffix +# define ManSuffix 1 +#endif +#ifndef ManDir +# define ManDir $(MANSOURCEPATH)1 +#endif +#ifndef LibManSuffix +# define LibManSuffix 3 +#endif +#ifndef LibmanDir +# define LibmanDir $(MANSOURCEPATH)3 +#endif +#ifndef FileManSuffix +# define FileManSuffix 5 +#endif +#ifndef FileManDir +# define FileManDir $(MANSOURCEPATH)5 +#endif + +/* groff 1.09 compiles right out of the box with LynxOS 2.3, + * so if you want to have manual pages you should install groff 1.09 + * before you run 'make install.man' + */ +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.$(MANSUFFIX)* @@\ + groff -e -t -man -Tascii file.man >/tmp/file.man @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/file.man $(DESTDIR)destdir/dest.$(MANSUFFIX) @@\ + echo dest dest $(MANSUFFIX) >> $(DESTDIR)destdir/LIST$(MANSUFFIX) @@\ + gawk ' \ @@\ + /^\.SH[ ]*NAME/ { \ @@\ + getline; sub("\\\\", "(" p ") "); print; exit \ @@\ + }' p=$(MANSUFFIX) file.man >> $(DESTDIR)destdir/../whatis @@\ + $(RM) /tmp/file.man +#endif + +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(SUFFIX=`echo $(DESTDIR)destdir/file.* | cut -f2,3 -d.`; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.*; \ @@\ + (cd $(DESTDIR)destdir; $(LN) file.$${SUFFIX} \ @@\ + $$i.$${SUFFIX})); \ @@\ + echo $$i dest $(MANSUFFIX) >> $(DESTDIR)destdir/LIST$(MANSUFFIX); \ @@\ + done) +#endif + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.suffix* @@\ + groff -e -t -man -Tascii file.man >/tmp/file.man @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/file.man $(DESTDIR)destdir/dest.suffix @@\ + echo dest dest suffix >> $(DESTDIR)destdir/Concat(LIST,suffix) @@\ + gawk ' \ @@\ + /^\.SH[ ]*NAME/ { \ @@\ + getline; sub("\\\\", "(" p ") "); print; exit \ @@\ + }' p=suffix file.man >> $(DESTDIR)destdir/../whatis @@\ + $(RM) /tmp/file.man) +#endif + +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + MNAME=`echo $$i | cut -f1 -d.`; \ @@\ + $(RM) $(DESTDIR)dest/$${MNAME}*; \ @@\ + groff -e -t -man -Tascii $$i >/tmp/$$i; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$i $(DESTDIR)dest/$${MNAME}.$(MANSUFFIX); \ @@\ + echo $${MNAME} $${MNAME} $(MANSUFFIX) >> $(DESTDIR)dest/LIST$(MANSUFFIX)\ @@\ + gawk ' \ @@\ + /^\.SH[ ]*NAME/ { \ @@\ + getline; sub("\\\\", "(" p ") "); print; exit \ @@\ + }' p=$(MANSUFFIX) $$i >> $(DESTDIR)dest/../whatis \ @@\ + $(RM) /tmp/$$i); \ @@\ + done +#endif + +/* + * Definitions for the SUN server on LynxOS SPARC + */ +#ifdef SparcArchitecture +# define XsunLynxServer YES +# define XsunLynxMonoServer NO +# define BuildPexExt YES +# define BuildXIE YES +# ifndef BuildScreenSaverLibrary +# define BuildScreenSaverLibrary YES +# endif +# if BuildXInputExt +# undef BuildXInputExt +# endif +# define BuildXInputExt NO +# if BuildDPMSExt +# undef BuildDPMSExt +# endif +# define BuildDPMSExt NO +# define BuildXF86MiscExt NO +/* + * XFree86 uses its own (more portable) database routines to speed up + * the RGB database lookups + * However, if you want to use ndbm anyway, you can set that to NO in + * site.def + */ +# ifndef UseRgbTxt +# define UseRgbTxt YES +# endif +#endif + +#ifndef i386Architecture +# define BuildXF86DGA NO +#endif + +#include diff --git a/Xserver/config/cf/macII.cf b/Xserver/config/cf/macII.cf new file mode 100644 index 0000000..90d1c86 --- /dev/null +++ b/Xserver/config/cf/macII.cf @@ -0,0 +1,53 @@ +XCOMM platform: $XConsortium: macII.cf /main/50 1996/09/28 16:11:19 rws $ + +#ifndef OSName +#define OSName A/UX 3.0.1 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 3 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 1 +#endif +XCOMM operating system: OSName + +#if HasGcc +#define BootstrapCFlags -DmacII +#endif +#define SystemV YES +#define HasPoll NO +#define NeedBerklib YES +#define ExtraLibraries $(XBSDLIB) -lposix -lm -lmr +#define Malloc0ReturnsNull YES +#define StandardDefines -DmacII -DSYSV +#define ExecableScripts NO +#define RemoveTargetProgramByMoving YES +#define ExpandManNames YES +#define PexShmIPC NO +#define XmacIIServer YES +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#if MacHasc89 +#define CcCmd c89 -D_POSIX_SOURCE +#else +#define HasVoidSignalReturn NO +#endif +#if OSMajorVersion <= 2 +#define ServerExtraDefines -DSUPPORT_2_0 +#endif +#define InstKmemFlags -g sys -m 2711 +#define ExtensionOSDefines -DXTESTEXT1 + +#if !HasGcc +#define DefaultCCOptions -A 3 +#define PexCCOptions -A 4 +#endif + +/* + * If you wish to override the man page directories, do so here using just + * one tab between the parameter name (e.g. ManDirectoryRoot) and the + * value so that cpp doesn't get confused. + */ +#define ManDirectoryRoot /usr/catman/u_man diff --git a/Xserver/config/cf/mach.cf b/Xserver/config/cf/mach.cf new file mode 100644 index 0000000..ec1d60d --- /dev/null +++ b/Xserver/config/cf/mach.cf @@ -0,0 +1,81 @@ +XCOMM $TOG: mach.cf /main/2 1997/06/08 20:08:20 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/mach.cf,v 3.7.2.2 1997/07/05 15:55:29 dawes Exp $ + +#define OSName Mach 2.5/3.0 +#define OSVendor /**/ +XCOMM operating system: OSName +#define OSMajorVersion 1 +#define OSMinorVersion 1 + +#define HasGcc YES +#define HasGcc2 YES +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES +#define UseGccMakeDepend YES +#ifndef HasGcc2ForCplusplus +#define HasGcc2ForCplusplus YES +#endif + +#define CcCmd gcc +#define CppCmd /usr/mach3/lib/gcc-lib/i386-mach/2.3.3/cpp +#define PreProcessCmd /usr/mach3/lib/gcc-lib/i386-mach/2.3.3/cpp +#define DefaultCCOptions /**/ +#define GccGasOption -DGCCUSESGAS +#if HasGcc2 && defined(i386Architecture) +#define OptimizedCDebugFlags DefaultGcc2i386Opt +#else +#define OptimizedCDebugFlags -O2 +#endif + +#define AsmDefines -DUSE_GAS +#define BootstrapCFlags -DNOSTDHDRS +#define ExtensionOSDefines /* -DXTESTEXT1 */ +#define ServerExtraSysLibs /usr/lib/libmach.a +#ifdef i386Architecture +#define ServerExtraDefines GccGasOption XFree86ServerDefines +#else +#define ServerExtraDefines GccGasOption +#endif +#define StandardCppDefines -traditional +#define StandardDefines -DNOSTDHDRS -DMACH386 +#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME + +#define AvoidNullMakeCommand YES +#define CompressAllFonts YES +#define DirFailPrefix - +#define HasNdbm YES +#define HasPutenv YES +#define Malloc0ReturnsNull YES +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO +#define StripInstalledPrograms YES + +#ifndef GnuMallocLibrary +#define GnuMallocLibrary /* -lgnumalloc */ +#endif + +#ifdef InstallCmd +#undef InstallCmd +#endif +#define InstallCmd /usr/bin/install + +#ifndef PreIncDir +# define PreIncDir /usr/include +#endif + +#define TroffCmd groff -Tps + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.core +#endif + +#ifdef i386Architecture +# include +#endif diff --git a/Xserver/config/cf/minix.cf b/Xserver/config/cf/minix.cf new file mode 100644 index 0000000..661eaa3 --- /dev/null +++ b/Xserver/config/cf/minix.cf @@ -0,0 +1,64 @@ +XCOMM $XConsortium: minix.cf /main/1 1996/10/31 14:47:22 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/minix.cf,v 3.4 1996/12/27 06:50:21 dawes Exp $ + + +/* + * If you want to change any of these, do it in the BeforeVendorCF part + * of site.def + */ +#define OSName Minix-386vm +#define OSVendor /* philip@cs.vu.nl */ +#define OSMajorVersion 1 +#define OSMinorVersion 6 +#define OSTeenyVersion 25.1.0 + +#define AcdGcc + +#ifdef AcdGcc +#define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#define AsmDefines -DUSE_GAS +#define GccGasOption -DGCCUSESGAS /* For SuperProbe */ +#endif + +/* Defaults for Minix */ + +#define ConnectionFlags -DMNX_TCPCONN +#define StandardDefines -D_MINIX -DMINIX -D_POSIX_SOURCE +#define StandardIncludes + +#define DoRanlibCmd NO +#define AvoidNullMakeCommand YES +#define HasSockets NO +#define HasStreams NO +#define HasVFork NO +#define HasNdbm YES +#define ExtraLibraries -lnbio +#define NeedConstPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedNestedPrototypes YES +/* #define UseCCMakeDepend YES */ +#define DefaultCCOptions -wo -fsoft +#define ArCmd CcCmd -c.a -o +#define ArAddCmd ArCmd +#define CcCmd acd -descr gcc -name cc +#define AsCmd CcCmd -c +#define CppCmd /usr/lib/cpp +#define LdCmd CcCmd +#define LdCombineFlags -r +#define LexLib /* */ + +#define SetTtyGroup YES /* for xterm */ +#define HasPutenv YES /* for xsm */ + +#ifndef AssembleObject +#define AssembleObject(flags) $(RM) $@ @@\ + $(CPP) AsmDefines $(DEFINES) $(INCLUDES) flags $*.s | \ @@\ + grep -v '^\#' > $*.i.s @@\ + $(AS) -o $*.o $*.i.s @@\ + $(RM) $*.i.s +#endif + +#include diff --git a/Xserver/config/cf/moto.cf b/Xserver/config/cf/moto.cf new file mode 100644 index 0000000..d6243a6 --- /dev/null +++ b/Xserver/config/cf/moto.cf @@ -0,0 +1,58 @@ +XCOMM platform: $XConsortium: moto.cf /main/16 1996/09/28 16:11:24 rws $ + +#if defined(MotoR3Architecture) + +#ifndef OSName +#define OSName Motorola R32V2/R3V6.2 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 3 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 2 +#endif + +#define SystemV YES +#define BootstrapCFlags -DSYSV -DMOTOROLA +#define StandardDefines -DSYSV -DUSG -DMOTOROLA +#define Malloc0ReturnsNull YES +#define BuildServer NO +#define UseCCMakeDepend YES +#define OptimizedCDebugFlags /* -O */ + +#define DefaultUserPath :/bin:/usr/bin:$(BINDIR) +#define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR) + +#endif /* MotoR3Architecture */ + + +#if defined(MotoR4Architecture) + +#ifndef OSName +#define OSName Motorola R40V4 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 4 +#endif + +#define SystemV4 YES +#define BootstrapCFlags -DSVR4 -DMOTOROLA +#define StandardDefines -DSVR4 -DMOTOROLA +#define BuildServer NO + +#define CppCmd /usr/ccs/lib/cpp +#define LdCmd /usr/ccs/bin/ld +#define LexCmd /usr/ccs/bin/lex +#define MakeCmd /usr/ccs/bin/make +#define YaccCmd /usr/ccs/bin/yacc +#define CcCmd /bin/cc /* a front-end to gcc/CI5 */ +#define DefaultCCOptions /* -Xc no longer needed */ + +#include + +#endif /* MotoR4Architecture */ + +XCOMM operating system: OSName diff --git a/Xserver/config/cf/ncr.cf b/Xserver/config/cf/ncr.cf new file mode 100644 index 0000000..61279d3 --- /dev/null +++ b/Xserver/config/cf/ncr.cf @@ -0,0 +1,125 @@ +XCOMM platform: $XConsortium: ncr.cf /main/28 1996/09/28 16:11:31 rws $ +XCOMM platform: $XFree86: xc/config/cf/ncr.cf,v 3.18 1996/12/27 06:50:22 dawes Exp $ + +#ifndef OSName +#define OSName Unix System V Release 4/MP-RAS +#endif +#ifndef OSVendor +#define OSVendor NCR +#endif +XCOMM operating system: OSName + +#define BootstrapCFlags -DNCR +#define HasStreams YES +#define XawI18nDefines -DUSE_XWCHAR_STRING + +/* Build Flags */ + +XCOMM +XCOMM These flags build correctly on SVR4/MP-RAS 3.0. If building on +XCOMM SVR4/MP-RAS 2.X, you must add -DWINTCP to StandardDefines +XCOMM +#define StandardDefines -DSVR4 -DNCR -Di386 +#define DefaultCCOptions -Xa -Hnocopyr -W0,-asm +#define DefaultCDebugFlags -O3 +#define AllocateLocalDefines -DINCLUDE_ALLOCA_H +#define ServerExtraDefines -DNO_SECONDARY AllocateLocalDefines XFree86ServerDefines +#define ServerOSDefines -DDDXTIME XFree86ServerOSDefines +#define ToolkitStringsABIOptions -intelabi + +XCOMM This has not been tested, don't turn it on yet. +XCOMM #define ExtensionOSDefines -DXTESTEXT1 + +#define ExtraLoadFlags -lc -L/usr/ucblib -lucb -lm -lgen -lcmd + +/* Setup proper ownership of installed files */ + +#define StripInstalledPrograms YES +#define InstPgmFlags -s -m 0711 -o bin -g bin +#define InstBinFlags -m 0755 -o bin -g bin +#define InstUidFlags -m 4711 -o root -g bin +#define InstLibFlags -m 0644 -o bin -g bin +#define InstIncFlags -m 0444 -o bin -g bin +#define InstManFlags -m 0444 -o bin -g bin +#define InstDatFlags -m 0444 -o bin -g bin + +/* Various Configuration settings */ + +#define DefaultUserPath /bin:/sbin:/usr/bin:/usr/sbin:$(BINDIR):/usr/ucb +#define DefaultSystemPath /etc:/bin:/usr/bin:/sbin:/usr/sbin:$(BINDIR):/usr/ucb +#define ExtraFilesToClean *.z + +/* Create man pages properly */ + +#define BookFormatManPages YES +#define ManDirectoryRoot /usr/catman/X115 +#define ManSuffix 1X +#define LibManSuffix 3X +#define FileManSuffix 4X +#define ManSourcePath $(MANPATH)/g +#define XmanSearchPath /usr/catman + +#define TblCmd /usr/ucb/tbl +#define EqnCmd /usr/ucb/eqn +#define ColCmd /usr/bin/col +#define NeqnCmd /usr/ucb/neqn +#define NroffCmd /usr/ucb/nroff -Tlp + +/* + * Man pages need to be formatted when installed, so override the default + * imake rules. + */ +#define InstallManPageLong(file,destdir,dest) @@\ +all:: file.z @@\ + @@\ +file.z:: file.man @@\ + @if [ -f file.man ]; \ @@\ + then \ @@\ + cat file.man | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.man; \ @@\ + $(RM) /tmp/$$$$.man.z; \ @@\ + pack -f /tmp/$$$$.man; \ @@\ + cp /tmp/$$$$.man.z file.z; \ @@\ + $(RM) /tmp/$$$$.man.z; \ @@\ + fi @@\ + @@\ +file.man:: @@\ + @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + -@if [ -f file.z ]; \ @@\ + then \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) file.z $(DESTDIR)destdir/dest.z; \@@\ + fi + +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ + InstallManPageLong(file,destdir,dest) + +#define InstallMultipleManSuffix(list,dest,suff) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)dest) @@\ + MakeFlagsToShellFlags(i,set +e); \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.suff; \ @@\ + pack -f /tmp/$$$$.suff; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$$$.suff.z $(DESTDIR)dest/$$i.z; \ @@\ + $(RM) /tmp/$$$$.suff.z); \ @@\ + done + +#define InstallMultipleMan(list,dest) @@\ + InstallMultipleManSuffix(list,dest,man) + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + for i in aliases; do \ @@\ + (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.z;\ @@\ + (cd $(DESTDIR)destdir; $(LN) file.z $$i.z);\ @@\ + ); \ @@\ + done + +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) + +#include diff --git a/Xserver/config/cf/nec.cf b/Xserver/config/cf/nec.cf new file mode 100644 index 0000000..364dfcd --- /dev/null +++ b/Xserver/config/cf/nec.cf @@ -0,0 +1,131 @@ +XCOMM platform: $XConsortium: nec.cf /main/4 1996/09/28 16:11:37 rws $ + +#ifdef nec_ews_svr2 +# define NecCISCArchitecture +#else /* !defined(nec_ews_svr2) */ +# if defined(nec_ews_svr4) || defined(_nec_ews_svr4) || defined(_nec_up) +# define NecRISCArchitecture +# else /* !(defined(nec_ews_svr4) || defined(_nec_ews_svr4) || defined(_nec_up)) */ +# ifdef SX +# define NecSX3Architecture +# else /* !defined(SX) */ +# ifdef _nec_ft +# define NecFaultTolerantArchitecture +# else /* !defined(_nec_ft) */ +# ifdef PC_UX +# define NecPCArchitecture +# endif /* PC_UX */ +# endif /* !defined(_nec_ft) */ +# endif /* !defined(SX) */ +# endif /* !(defined(nec_ews_svr4) || defined(_nec_ews_svr4) || defined(_nec_up)) */ +#endif /* !defined(nec_ews_svr2) */ + +#ifdef NecCISCArchitecture +#ifndef OSName +#define OSName EWS-UX/V +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 10 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +#define HasSharedLibraries NO +#define HasVoidSignalReturn NO +#define HasSockets YES +#define SystemV YES +#define StandardDefines -Dnec_ews -Dnec_ews_svr2 -DUSG -DSYSV +#define StandardCppDefines -Dnec_ews -Dnec_ews_svr2 -DUSG -DSYSV +#define LnCmd ln -s + LEXOPTION = -j +#endif + +#ifdef NecRISCArchitecture +# ifdef _nec_up +#ifndef OSName +#define OSName UP-UX/V +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 5 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +# else +#ifndef OSName +#define OSName EWS-UX/V\(Rel4.2\) +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 9 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +# endif +#define HasSharedLibraries YES +#define HasVoidSignalReturn YES +#define SystemV4 YES +#define HasSockets YES +#endif + +#ifdef NecSX3Architecture +#ifndef OSName +#define OSName SUPER-UX +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 3 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +#define SystemV YES +#define HasSharedLibraries NO +#define HasVoidSignalReturn YES +#endif + +#ifdef NecFaultTolerantArchitecture +#ifndef OSName +#define OSName FT-UX/V +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 5 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +#define HasSharedLibraries YES +#define HasVoidSignalReturn YES +#define SystemV4 YES +#define HasSockets YES +#endif + +#ifdef NecPCArchitecture +#ifndef OSName +#define OSName PC-UX/V +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 3 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 1 +#endif +#define HasSharedLibraries NO +#define HasVoidSignalReturn NO +#define SystemV YES +#endif + +#define HasSaberC NO /* for machines that have it */ +#define HasGcc NO +#define HasBsearch YES + +#define DefaultCCOptions -Wf,-XNp9000,-XNd6000 +#define ExtraLibraries -lsocket -lnsl -lw + +#define BuildServer NO +/* #define InstallCmd $(INS) */ +#define RemoveTargetProgramByMoving YES + +#include + +#define LibraryCCOptions DefaultCCOptions +#define LibraryDefines StandardDefines diff --git a/Xserver/config/cf/necLib.rules b/Xserver/config/cf/necLib.rules new file mode 100644 index 0000000..cfc8222 --- /dev/null +++ b/Xserver/config/cf/necLib.rules @@ -0,0 +1,103 @@ +XCOMM $XConsortium: necLib.rules /main/4 1996/09/28 16:11:42 rws $ + +/* + * NECOS shared library rules + */ + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +#define SharedDataSeparation YES +#endif +#ifndef SharedCodeDef +#define SharedCodeDef +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags +#endif + + +#ifndef SeparateSharedCompile +#define SeparateSharedCompile NO +#endif + +#define SharedLibObjCompile(options) $(_NULLCMD_) + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + cd $(DESTDIR)/dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so) @@\ + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) @@\ +install:: Concat(lib,libname.sa.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.sa.rev) $(DESTDIR)dest @@\ + RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,libname.sa.rev)) + +#endif /* InstallSharedLibraryData */ + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + $(CC) -G -o $@~ $(SHLIBLDFLAGS) solist @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @@\ +AllTarget(Concat(lib,libname.so)) @@\ + @@\ +Concat(lib,libname.so): Concat(lib,libname.so.rev) @@\ + $(RM) $@ @@\ + $(LN) $? $@ @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) + +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) @@\ +AllTarget(Concat(lib,libname.sa.rev)) @@\ + @@\ +Concat(lib,libname.sa.rev): salist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@ @@\ + $(AR) $@ salist @@\ + RanLibrary($@) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.sa.rev) + +#endif /* SharedLibraryDataTarget */ diff --git a/Xserver/config/cf/necLib.tmpl b/Xserver/config/cf/necLib.tmpl new file mode 100644 index 0000000..2e7f04b --- /dev/null +++ b/Xserver/config/cf/necLib.tmpl @@ -0,0 +1,29 @@ +XCOMM $XConsortium: necLib.tmpl,v 1.1 94/03/26 18:15:22 rws Exp $ + +/* + * NEC shared library template + */ + +#ifndef SharedXlibRev +#define SharedXlibRev 4.10 +#endif +#ifndef SharedOldXRev +#define SharedOldXRev 4.10 +#endif +#ifndef SharedXtRev +#define SharedXtRev 4.10 +#endif +#ifndef SharedXawRev +#define SharedXawRev 5.0 +#endif +#ifndef SharedXmuRev +#define SharedXmuRev 4.10 +#endif +#ifndef SharedXextRev +#define SharedXextRev 4.10 +#endif +#ifndef SharedXinputRev +#define SharedXinputRev 4.10 +#endif + +#include diff --git a/Xserver/config/cf/noop.rules b/Xserver/config/cf/noop.rules new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Xserver/config/cf/noop.rules @@ -0,0 +1 @@ + diff --git a/Xserver/config/cf/oldlib.rules b/Xserver/config/cf/oldlib.rules new file mode 100644 index 0000000..52faa69 --- /dev/null +++ b/Xserver/config/cf/oldlib.rules @@ -0,0 +1,109 @@ +/* You should not use these any more, use new Library.tmpl insead */ + +XCOMM $XConsortium: oldlib.rules,v 1.2 91/04/09 19:15:13 rws Exp $ + +/* + * ProfiledLibraryObjectRule - generate make rules to build both profiled + * and "normal" objects. + */ +#ifndef ProfiledLibraryObjectRule +#define ProfiledLibraryObjectRule() @@\ +all:: @@\ + LibMkdir(profiled) @@\ + @@\ +.c.o: @@\ + ProfiledLibObjCompile(NullParameter) @@\ + NormalLibObjCompile(NullParameter) @@\ + @@\ +clean:: @@\ + LibCleanDir(profiled) @@\ + +#endif /* ProfiledLibraryObjectRule */ + + +/* + * DebuggedLibraryObjectRule - generate make rules to build both debuggable + * and "normal" objects. + */ +#ifndef DebuggedLibraryObjectRule +#define DebuggedLibraryObjectRule() @@\ +all:: @@\ + LibMkdir(debugger) @@\ + @@\ +.c.o: @@\ + DebuggedLibObjCompile(NullParameter) @@\ + NormalLibObjCompile(NullParameter) @@\ + @@\ +clean:: @@\ + LibCleanDir(debugger) @@\ + +#endif /* DebuggedLibraryObjectRule */ + + +/* + * DebuggedAndProfiledLibraryOjbectRule - generate make rules to build + * debuggable, profiled, and "normal" objects. + */ +#ifndef DebuggedAndProfiledLibraryObjectRule +#define DebuggedAndProfiledLibraryObjectRule() @@\ +all:: @@\ + LibMkdir(profiled) @@\ + LibMkdir(debugger) @@\ + @@\ +.c.o: @@\ + ProfiledLibObjCompile(NullParameter) @@\ + DebuggedLibObjCompile(NullParameter) @@\ + NormalLibObjCompile(NullParameter) @@\ + @@\ +clean:: @@\ + LibCleanDir(profiled) @@\ + LibCleanDir(debugger) @@\ + +#endif /* DebuggedAndProfiledLibraryObjectRule */ + + +/* + * SpecialProfiledObjectRule - generate rules to compile a file with special + * flags and to make a profiled version. + */ +#ifndef SpecialProfiledObjectRule +#define SpecialProfiledObjectRule(objs,depends,options) @@\ +all:: @@\ + LibMkdir(profiled) @@\ + @@\ +objs: depends @@\ + ProfiledLibObjCompile(options) @@\ + NormalLibObjCompile(options) +#endif /* SpecialProfiledObjectRule */ + + +/* + * SpecialDebuggedObjectRule - generate rules to compile a file with special + * flags and to make a debuggable version. + */ +#ifndef SpecialDebuggedObjectRule +#define SpecialDebuggedObjectRule(objs,depends,options) @@\ +all:: @@\ + LibMkdir(debugger) @@\ + @@\ +objs: depends @@\ + DebuggedLibObjCompile(options) @@\ + NormalLibObjCompile(options) +#endif /* SpecialDebuggedObjectRule */ + + +/* + * SpecialDebuggedAndProfiledObjectRule - generate rules to compile a file + * with special flags and to make debuggable and profiled versions. + */ +#ifndef SpecialDebuggedAndProfiledObjectRule +#define SpecialDebuggedAndProfiledObjectRule(objs,depends,options) @@\ +all:: @@\ + LibMkdir(profiled) @@\ + LibMkdir(debugger) @@\ + @@\ +objs: depends @@\ + ProfiledLibObjCompile(options) @@\ + DebuggedLibObjCompile(options) @@\ + NormalLibObjCompile(options) +#endif /* SpecialDebuggedAndProfiledObjectRule */ diff --git a/Xserver/config/cf/os2.cf b/Xserver/config/cf/os2.cf new file mode 100644 index 0000000..d9811a4 --- /dev/null +++ b/Xserver/config/cf/os2.cf @@ -0,0 +1,252 @@ +XCOMM $XConsortium: os2.cf /main/1 1996/10/31 14:47:25 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/os2.cf,v 3.18.2.4 1998/02/22 01:04:50 robin Exp $ + +#define OSName OS/2 +#define OSVendor IBM +#define OSMajorVersion 3 +#define OSMinorVersion 0 + +/* + * C library features + */ +#ifdef __EMX__ + +/* set this to what you like (almost :-) + * OS/2 does a nonstandard bootstrap of imake + */ +#define BootstrapCFlags -DBSD43 + +/* X_WCHAR and X_LOCALE are set in Xosdefs.h */ +#define StandardDefines /**/ +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + +/* This will redirect everything to /XFree86 + * Care will be taken that programs that need a file from this tree + * will add the environment variable X11ROOT to the search path + * so you can redirect the stuff to a different drive + */ +#ifdef ProjectRoot +#undef ProjectRoot +#endif +/* This will be mangled with a drive letter in most OS/2 rules ... */ +#define ProjectRoot /XFree86 + +/* ... but not when a user tries to compile something from a different drive + * Please report any directories missed to Holger.Veit@gmd.de +*/ +#ifdef UseInstalled +#define IncRoot $(X11ROOT)/XFree86/include +#define LdPreLib -L$(X11ROOT)/XFree86/lib +#endif + +/* more directories */ +#define AdmDir $(LIBDIR)/adm +#define ConfigDir $(X11ROOT)$(LIBDIR)/config + DESTDIR = $(X11ROOT) + +/* for the man pages */ +#define BookFormatManPages YES +#define ManDirectoryRoot /XFree86/man/man +#define ManSuffix 1 +#define LibManSuffix 3 +#define FileManSuffix 4 +#define XmanSearchPath /XFree86/man/man +#define ManSourcePath $(MANPATH) + +/* you must have installed groff! */ +#define TblCmd tbl +#define ColCmd cat +#define NeqnCmd eqn +#define NroffCmd groff -Tascii +#define EqnCmd eqn -Tascii +#define TroffCmd groff -Tps + NEQN = NeqnCmd + NROFF = NroffCmd + +/* A set of standard defines: */ +#define OSDefines -D__EMX__ -D__i386__ -Demxos2 -D_POSIX_SOURCE \ + -D_BSD_SOURCE -D_GNU_SOURCE + +#define BuildXKB YES +#define BuildImplibs YES +#define BuildLBX YES + +/* some more properties of the OS/2 implementation */ +#define HasNdbm YES +#define HasPutenv YES +#define HasSockets YES +#define HasSnprintf YES +#define HasBsearch NO +#define HasLargeTmp NO +#define HasPoll NO +#define HasBSD44Sockets NO +#define HasSecureRPC NO +#define HasSymLinks NO +#define HasVFork NO +#define HasVarDirectory NO +#define HasStrcasecmp NO +#define Malloc0ReturnsNull YES +#define SetTtyGroup NO +#ifndef HasLibCrypt +# define HasLibCrypt NO +#endif +#ifndef HasShm +# define HasShm YES +#endif +#define ConnectionFlags -DTCPCONN -DOS2PIPECONN +#define StdIncDir $(C_INCLUDE_PATH) + +/* XF86Setup stuff - does not work yet! */ +#define HasTcl NO +/*define TclLibDir $(X11ROOT)$(SHLIBDIR)*/ +/*define TclIncDir $(X11ROOT)$(INCROOT)/tcl*/ +/*define TclLibName xtcl*/ + +#define HasTk NO +/*define TkLibDir $(X11ROOT)$(SHLIBDIR)*/ +/*define TkIncDir $(X11ROOT)$(INCROOT)/tk*/ +/*define TkLibName xtk*/ + +/* + * Compiler Features + */ +#define HasGcc YES +#define HasGcc2 YES +#define HasCplusplus YES +#define HasGcc2ForCplusplus YES +#define GccUsesGas YES +#define UseGas YES +#define GnuCpp YES +#define DoRanlibCmd YES +#define NeedConstPrototypes YES +#define NeedFunctionPrototypes YES +#define NeedNestedPrototypes YES +#define NeedVarargsPrototypes YES +#define NeedWidePrototypes NO + +#define CppCmd cpp +#define StandardCppDefines -traditional +#define PreProcessCmd CppCmd + +#define CcCmd gcc +#define DefaultCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals +#define LibraryCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals +#define ServerCCOptions -D__ST_MT_ERRNO__ -Zmtd -Zsysv-signals + +#define CplusplusCmd g++ +#define CplusplusOptions -Zmtd -Zsysv-signals + +#define MakeCmd x11make +#define AsCmd gcc -S +#define GccGasOption -DGCCUSESGAS +#define AsmDefines -DUSE_GAS + +#define InstallCmd install + +#define LdCmd ld +#define ExtraLoadFlags -Zbin-files +#define ExtraLibraries -lsocket -lbsd + +/* quite a number of programs you need, most of them the same as + * with Unix, but listed here for completeness + */ +#define ArCmd ar cq +#define RanlibCmd ar s +#define BourneShell /**/ +#define LexCmd flex -l +#define LexLib -lfl +#define YaccCmd yacc +#define LintCmd /**/ +#define MvCmd mv +#define CompressCmd compress +#define GzipCmd gzip +#define LnCmd cp +#define CpCmd cp +#define RmCmd ImakeHelper 4 + +#ifndef UseInstalled +#define ImakeCmd \imake +#define MkdirHierCmd \mkdirhier +#define DependCmd \makedepend +#else +/* imake and mkdirhier come from Imake.tmpl, but DependCmd must be overriden */ +#define DependCmd makedepend +#endif + +/* "shell scripts" in OS/2 have this extension */ +#define SHsuf cmd + +#define InstPgmFlags /**/ +#define InstBinFlags /**/ +#define InstUidFlags /**/ +#define InstLibFlags /**/ +#define InstIncFlags /**/ +#define InstManFlags /**/ +#define InstDatFlags /**/ +#define InstallFlags /**/ + +#define OptimizedCDebugFlags DefaultGcc2i386Opt +#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +#define ServerExtraDefines GccGasOption XFree86ServerDefines + +#if HasShm +# define ServerExtraSysLibs -lshm +#endif + +/* + * Make & install Features + */ + +#define AvoidNullMakeCommand YES +_NULLCMD_ = @ rem +#define NullMakeCommand @ rem +#define StripInstalledPrograms NO +#define CompressAllFonts YES +#define CompressManPages YES +#define GzipFontCompression YES +#define DefaultUserPath .;/os2;/emx/bin;/tcpip/bin;$(BINDIR) +#define DefaultSystemPath /os2;/emx/bin;$(BINDIR) + +#ifndef ExtraFilesToClean +# define ExtraFilesToClean *.~* *.exe *.dll *.obj *.lib *.map +#endif + +#if CompressManPages +#define CompressManCmd gzip -n + COMPRESSMANCMD = CompressManCmd +#endif + +#define ProgramTargetName(target)target.exe + +/* we don't name libraries lib*.a */ +#define LibraryTargetName(libname) libname.a +#define LibraryTargetNameSuffix(libname,suffix)Concat(libname,suffix.a) + +/* ... and we even don't do it in rules that should have used the above + * LibraryTargetName macro + */ +#ifndef UnSharedLibReferences +#define UnsharedLibReferences(varname,libname,libsource) @@\ +Concat3(DEP,varname,LIB) = _UseCat($(USRLIBDIR)/,$(BUILDLIBDIR)/,libname.a) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +#ifndef SharedLibReferences +#define SharedLibReferences(varname,libname,libsource,revname,rev) @@\ +Concat3(DEP,varname,LIB) = SharedLibDependencies(libname,libsource,revname) @@\ +Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) @@\ +LintLibReferences(varname,libname,libsource) +#endif + +#include +#include + +# include + +#else +#error You must edit os2.cf for your (non-EMX) OS/2 dev system +#endif diff --git a/Xserver/config/cf/os2.rules b/Xserver/config/cf/os2.rules new file mode 100644 index 0000000..998ff48 --- /dev/null +++ b/Xserver/config/cf/os2.rules @@ -0,0 +1,537 @@ +XCOMM $XConsortium: os2.rules /main/1 1996/10/31 14:47:27 kaleb $ + + + +XCOMM platform: $XFree86: xc/config/cf/os2.rules,v 3.15 1997/01/05 11:49:39 dawes Exp $ + +.SUFFIXES: .Osuf .c .CCsuf + +.c.Osuf: + $(CC) $(CFLAGS) -c $*.c + +#if HasCplusplus +.CCsuf.Osuf: + $(CXX) $(CFLAGS) -c $*.CCsuf +#endif + +#ifndef UseInstalled +#define ImakeHelper \imakesvc +#define IMmode n +#define ImakeIndir \indir +#define ImakeSubCmdHelper \imake -I$(IRULESRC) $(IMAKE_DEFINES) +#define Fontc \bdftopcf +#define MkFontDir \mkfontdir +#define XkbComp \xkbcomp +#else +#define ImakeHelper imakesvc +#define IMmode u +#define ImakeIndir indir +#define ImakeSubCmdHelper $(IMAKE_CMD) +#define Fontc bdftopcf +#define MkFontDir mkfontdir +#define XkbComp xkbcomp +#endif + +#define echo ImakeHelper 8 +#define RunProgram(progvar,options) $(subst /,\,$(progvar)) options +#define RemoveFile(file) $(RM) file +#define RemoveFiles(files) $(RM) files +#define NeedLdLibraryPathForXkbComp NO + +#define LibObjCompile(dir,options) RemoveFiles($@ dir\$@) @@\ + $(CC) $(CCOPTIONS) $(ALLDEFINES) options -c $*.c @@\ + $(MV) $@ dir\$@ + +#define MakeDir(dir) $(MKDIRHIER) dir + +#define BuildIncludesTop(srclist) @@\ +includes:: srclist @@\ + MakeDir($(BUILDINCDIR)) @@\ + @for %i in (srclist) do ImakeHelper 2 $(BUILDINCDIR) $(BUILDINCTOP) $(CURRENT_DIR) %i + +#define ProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs) @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) @@\ +InstallManPage(program,$(MANDIR)) + +#if 0 +#define ProgramTargetHelperNoMan(program,srcs,objs,deplib,locallib,syslib) @@\ +ProgramTargetName(program): $(objs) @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib) @@\ + @@\ +InstallProgram(program,$(BINDIR)) +#endif + + +#define BuildIncludes(srclist,dstsubdir,dstupdir) @@\ +includes:: srclist @@\ + MakeDir($(BUILDINCDIR)/dstsubdir) @@\ + @for %i in (srclist) do ImakeHelper 3 $(BUILDINCTOP)/dstupdir/$(CURRENT_DIR) $(BUILDINCDIR)/dstsubdir %i + +#define LinkFileList(step,list,dir,sub) @@\ +step:: list @@\ + @for %i in (list) do ImakeHelper 3 sub dir %i + +#define ComplexProgramTarget(program) @@\ +PROGRAM = ProgramTargetName(program) @@\ + @@\ +AllTarget(ProgramTargetName(program)) @@\ + @@\ +ProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile($(PROGRAM)) + +#define ComplexProgramTarget_1(program,locallib,syslib) @@\ +OBJS = $(OBJS1) $(OBJS2) $(OBJS3) @@\ +SRCS = $(SRCS1) $(SRCS2) $(SRCS3) @@\ +PROGRAM1 = ProgramTargetName(program) @@\ + @@\ +AllTarget($(PROGRAM1) $(PROGRAM2) $(PROGRAM3)) @@\ + @@\ +ProgramTargetHelper(program,SRCS1,OBJS1,DEPLIBS1,locallib,syslib) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFiles($(PROGRAMS)) + +#define ComplexProgramTarget_2(program,locallib,syslib) @@\ +PROGRAM2 = ProgramTargetName(program) @@\ + @@\ +ProgramTargetHelper(program,SRCS2,OBJS2,DEPLIBS2,locallib,syslib) + +#define ComplexProgramTarget_3(program,locallib,syslib) @@\ +PROGRAM3 = ProgramTargetName(program) @@\ + @@\ +ProgramTargetHelper(program,SRCS3,OBJS3,DEPLIBS3,locallib,syslib) + +#define NormalProgramTarget(program,objects,deplibs,locallibs,syslibs) @@\ +ProgramTargetName(program): objects @@\ + RemoveTargetProgram($@) @@\ + LinkRule($@,$(LDOPTIONS),objects,locallibs $(LDLIBS) syslibs) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(program)) + +#if 0 +#define ComplexProgramTargetNoMan(program) @@\ +PROGRAM = ProgramTargetName(program) @@\ + @@\ +AllTarget(ProgramTargetName(program)) @@\ + @@\ +ProgramTargetHelperNoMan(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\ + @@\ +DependTarget() @@\ +LintTarget() @@\ + @@\ +clean:: @@\ + RemoveFile($(PROGRAM)) +#endif + +#define MoveToBakFile(file) ImakeHelper 5 file + +#define RMoveToBakFile(file) ImakeHelper 6 file + +#define InstallMultipleDestFlags(step,list,dest,flags) @@\ +step:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) flags list $(subst /,\,$(DESTDIR)dest) + +#define CleanTarget() @@\ +clean:: @@\ + RemoveFiles(FilesToClean ExtraFilesToClean) + +#define LinkSourceFile(src,dir) @@\ +src: @@\ + ImakeHelper 3 dir . src @@\ + @@\ +includes:: src @@\ + @@\ +depends:: src @@\ + @@\ +clean:: @@\ + RemoveFile(src) + +#define LinkFile(tofile,fromfile) @@\ +tofile:: fromfile @@\ + ImakeHelper 7 fromfile tofile @@\ + @@\ +includes:: tofile @@\ + @@\ +depend:: tofile @@\ + @@\ +clean:: @@\ + RemoveFile(tofile) + +#ifndef UseInstalled +#define ImakeDependency(target) @@\ +target:: ProgramTargetName($(IMAKE)) @@\ + @@\ +ProgramTargetName($(IMAKE)): @@\ + @ImakeIndir $(IMAKESRC) if exist Makefile $(MAKE) SHELL= MAKE=x11make all @@\ + @ImakeIndir $(IMAKESRC) if not exist Makefile $(MAKE) SHELL= MAKE=x11make -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)" +#endif + +#ifndef UseInstalled +#define DependDependency() @@\ +depend:: ProgramTargetName($(DEPEND)) @@\ + @@\ +ProgramTargetName($(DEPEND)): @@\ + @ImakeIndir $(DEPENDSRC) $(MAKE) SHELL= MAKE=x11make +#endif + +#define DependTarget() @@\ +DependDependency() @@\ + @@\ +depend:: @@\ + $(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS) + +#define DependTarget3(srcs1,srcs2,srcs3) @@\ +DependDependency() @@\ + +/* Currently this stuff doesn't work correctly for libX11 +depend:: @@\ + $(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs1 @@\ + $(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs2 @@\ + $(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs3 +*/ + +#define ForceSubdirs(dirs) @@\ +dirs: DONE @@\ + @@\ +DONE: @@\ + @for %i in (dirs) do ImakeIndir %i $(MAKE) SHELL= MAKE=x11make $(MFLAGS) PassCDebugFlags all @@\ + touch DONE @@\ + @@\ +clean:: @@\ + RemoveFile(DONE) + +#define MakeMakeSubdirs(dirs,target) @@\ +MMSDIRS = dirs @@\ +MMSTOP = $(TOP) @@\ +MMSRULES = $(IRULESRC) @@\ +MMSCUR = $(CURRENT_DIR) @@\ +target:: @@\ + @for %i in ($(subst /,\,$(MMSDIRS))) do ImakeHelper 1 IMmode %i $(MMSRULES) $(MMSTOP) $(MMSCUR) + +#define NamedTargetSubdirs(name,dirs,verb,flags,subname) @@\ +Concat(SUBST,name) = dirs @@\ +name:: @@\ + @for %i in ($(subst /,\,$(Concat(SUBST,name)))) do ImakeIndir %i $(MAKE) SHELL= MAKE=x11make $(MFLAGS) flags subname + +#define InstallNamedTarget(step,srcname,flags,dest,dstname) @@\ +step:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) flags srcname $(subst \,/,$(DESTDIR)dest)/dstname + +#define BuildMakefileTarget(notused,imakeflags) @@\ +ImakeDependency(Makefile) @@\ + @@\ +Makefile:: @@\ + RMoveToBakFile(Makefile) @@\ + ImakeSubCmdHelper -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) imakeflags + +#define AssembleObject(flags) $(RM) $@ @@\ + $(CPP) AsmDefines $(DEFINES) $(INCLUDES) flags $*.s | \ @@\ + grep -v '^\#' > _tmp_.s @@\ + $(CC) $(CFLAGS) -o $*.Osuf -c _tmp_.s @@\ + $(RM) _tmp_.s + +#define NormalAsmObjectRule() @@\ +.s.Osuf: @@\ + AssembleObject($(_NOOP_)) + +#define ObjectMapIncludeFromSpecialSource(dst,src,flags) @@\ +dst.c: src.c @@\ + ImakeHelper 9 $@ mfbmap.h $? @@\ + @@\ +SpecialCObjectRule(dst,NullParameter,flags) @@\ + @@\ +depend:: dst.c @@\ + @@\ +clean:: @@\ + RemoveFile(dst.c) + +#define FontBaseObj(basename)basename.pcf +/* + * UncompressedFontTarget + */ +#define UncompressedFontTarget(basename) @@\ +FontBaseObj(basename): FontSrc(basename) @@\ + Fontc $(FONTCFLAGS) $? -o $@ + +/* + * CompressedFontTarget + */ +#ifndef CompressedFontTarget +#if GzipFontCompression +#define CompressedFontTarget(basename) @@\ +FontBaseObj(basename).gz: FontSrc(basename) @@\ + Fontc $(FONTCFLAGS) $? | $(GZIPCMD) > $@ +#else +#define CompressedFontTarget(basename) @@\ +FontBaseObj(basename).Z: FontSrc(basename) @@\ + Fontc $(FONTCFLAGS) $? | $(COMPRESS) > $@ +#endif +#endif + +/* + * MakeFontsDir - generate rules to build fonts.dir database. + */ +#define MakeFontsDir(deplist) @@\ +all:: fonts.dir @@\ + @@\ +fonts.dir: deplist @@\ + MkFontDir . @@\ + @@\ +clean:: @@\ + RemoveFile(fonts.dir) + +/* OS/2 scripts are based on REXX + * it is just the SHELL variable that is messed up that forces me to + * modify this rule + */ +#define ConfigTargetLong(target,dep,script,args,extra) @@\ +all:: Configure @@\ + @@\ +Configure:: target.o @@\ + @@\ +target.c: script dep @@\ + $(MAKE) SHELL= MAKE=x11make $(MFLAGS) extra Concat(Build,target) @@\ + @@\ +Concat(Build,target): @@\ + $(RM) target.c @@\ + script args @@\ + @@\ +clean:: @@\ + $(RM) target.c + +#ifndef ServerTargetWithFlags +#define ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,flags) @@\ +AllTarget(ProgramTargetName(server)) @@\ +ProgramTargetName(server): subdirs objects libs @@\ + MoveToBakFile($@) @@\ + LinkRule($@,$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ + emxbind -a ProgramTargetName(server) -h255 @@\ + @@\ +Concat(load,server): @@\ + MoveToBakFile(ProgramTargetName(server)) @@\ + LinkRule(ProgramTargetName(server),$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ + @@\ +loadX:: Concat(load,server) @@\ + @@\ +SentinelProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +SentinelLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ +PurifyProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +PurifyLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ +ProofProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ +ProofLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ + @@\ +InstallProgramWithFlags(server,$(BINDIR),flags) @@\ + @@\ +clean:: @@\ + RemoveFile(ProgramTargetName(server)) +#endif /* ServerTargetWithFlags */ + +/* + * ServerTarget - rules to compile, link, and relink a normal server + * Need a .def file for OS/2 + */ +#ifndef ServerTarget +#define ServerTarget(server,subdirs,objects,libs,syslibs) @@\ +ServerTargetWithFlags(server,subdirs,objects,libs,syslibs server.def,$(_NOOP_)) @@\ + @@\ +ProgramTargetName(server): server.def +#endif /* ServerTarget */ + +/* + * ToolkitMakeStrings generates a string-table, i.e., a C source + * file and the matching header(s), e.g., Xt's StringDefs.c, StringDefs.h, + * and Shell.h files; or Motif's XmStrDefs.c and XmStrDefs.h files. + * + * The 'files' argument is the list of files that will be produced by + * this rule, e.g., for Xt they would be "Shell.h StringDefs.c StringDefs.h" + * and for Motif they would be "XmStrDefs.c XmStrDefs.h". + * + * The 'source' argument is the string-list file to be parsed, e.g., in + * Xt that would be "util/string.list". For Motif 2.0 it would be + * "../../tools/makestr/xmstring.list", and for Motif-CDE1 it would be + * "util/xmstring.list". + * + * The 'options' argument is passed by the library's Imakefile, see the + * Xt Imakefile for an example. Typically this would be nothing, -intelabi, + * or -sparcabi; there are other choices, but these are typical. + * + * The 'depends' argument names additional files the target files + * depend on. It should name the #ctmpl and #htmpl files from the + * 'source' file. + * + * The 'dest' argument is the C source output file. For Xt this should + * be "StringDefs.c", and for all versions of Motif it would be "XmStrDefs.c" + * + * Headers are generated and named according to data in the 'source' + * file. + */ + +#ifndef ToolkitMakeStrings +#define ToolkitMakeStrings(files,source,options,depends,dest) @@\ +MAKESTRS = $(CONFIGSRC)/util/makestrs @@\ +MAKESTRS1 = /makestrs.exe @@\ + @@\ +ProgramTargetName($(MAKESTRS)): $(MAKESTRS).c @@\ + ImakeIndir $(CONFIGSRC)/util make SHELL= ProgramTargetName(makestrs) @@\ + ImakeHelper 7 $(CONFIGSRC)/util/makestrs.exe / @@\ + @@\ +files: ProgramTargetName($(MAKESTRS)) source depends @@\ + RemoveFiles(files) @@\ + RunProgram(MAKESTRS1,options < source > dest) @@\ + @@\ +AllTarget(files) @@\ + @@\ +includes:: files @@\ + @@\ +depend:: files @@\ + @@\ +clean:: @@\ + RemoveFiles(files) + +#endif /* ToolkitMakeStrings */ + +/*#define CppSedMagic SedMagic*/ +#define CppSedMagic sed -e '/^# *[0-9][0-9]* *.*$$/d' -e 's/^XCOMM/#/g' -e 's/^XCOMM[^a-zA-Z0-9_]/#/g' + +#ifndef InstallNamedTargetNoClobber +#define InstallNamedTargetNoClobber(step,srcname,flags,dest,dstname) @@\ +step:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + if not exist $(subst /,\,$(DESTDIR)dest)\dstname $(INSTALL) $(INSTALLFLAGS) flags srcname $(DESTDIR)dest/dstname + +#endif /* InstallNamedTargetNoClobber */ + +#if CompressManPages + +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + ImakeHelper 12 file $(DESTDIR)destdir dest +#endif + +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.gz $(DESTDIR)destdir/%i.gz +#endif + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + ImakeHelper 12 file $(DESTDIR)destdir dest +#endif + +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + for %i in (list) do ImakeHelper 12 %i $(DESTDIR)dest %i +#endif + +#else /* CompressManPages */ + +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + ImakeHelper 10 file $(DESTDIR)destdir dest $(MANSUFFIX) +#endif + +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + MakeDir($(DESTDIR)destdir) @@\ + for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.$(MANSUFFIX) $(DESTDIR)destdir/%i.$(MANSUFFIX) +#endif + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + ImakeHelper 10 file $(DESTDIR)destdir dest suffix +#endif + +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + for %i in (list) do ImakeHelper 10 %i $(DESTDIR)dest %i $(MANSUFFIX) +#endif + +#endif + +#ifndef NormalLintTarget +#define NormalLintTarget(srclist) +#endif /* NormalLintTarget */ + +#ifndef MakeDirectories +#define MakeDirectories(step,dirs) @@\ +step:: @@\ + -for %i in (dirs) do $(MKDIRHIER) $(DESTDIR)%i +#endif /* MakeDirectories */ + +#ifndef YaccFile +#define YaccFile(file,flags) @@\ +depend:: file.c @@\ + @@\ +file.h file.c: file.y @@\ + $(YACC) flags file.y @@\ + $(MV) y.tab.c file.c @@\ + @if exist y.tab.h $(MV) y.tab.h file.h @@\ + @@\ +clean:: @@\ + RemoveFiles(y.tab.c y.tab.h file.h file.c) +#endif /* YaccFile */ + +#ifndef StaticLibrary +#define StaticLibrary(libpath,libname) Concat4(libpath,/,libname,_s.a) +#endif + +#ifndef MakeXkbDir +#define MakeXkbDir(basedir,subdir) @@\ +all:: Concat(subdir,.dir) @@\ + @@\ +Concat(subdir,.dir): @@\ + $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) * @@\ + @@\ +InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir) +#endif + +/* This is to replace an ugly hack in /xc/nls/XLC_LOCALE */ +/* the corresponding Imake.rules rule would be: + define LinkFileSpecial(gotodir,tofile,fromfile) @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + cd dir && (set -x; RemoveFile(tofile); $(LN) fromfile tofile) + */ +#ifndef LinkFileSpecial +#define LinkFileSpecial(gotodir,tofile,fromfile) @@\ + ImakeHelper 13 gotodir fromfile tofile +#endif + +#ifndef LinkBuildBinary +#define LinkBuildBinary(binary) @@\ +all:: $(BUILDBINDIR)/binary binary @@\ + @@\ +$(BUILDBINDIR)/binary: binary @@\ + ImakeHelper 13 $(BUILDBINDIR) $(BUILDBINTOP)/$(CURRENT_DIR)/binary binary @@\ + $(CP) binary / +#endif /* LinkBuildBinary */ diff --git a/Xserver/config/cf/os2Lib.rules b/Xserver/config/cf/os2Lib.rules new file mode 100644 index 0000000..aa6e525 --- /dev/null +++ b/Xserver/config/cf/os2Lib.rules @@ -0,0 +1,244 @@ +XCOMM $XConsortium: os2Lib.rules /main/1 1996/10/31 14:47:29 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/os2Lib.rules,v 3.7 1997/01/27 06:12:49 dawes Exp $ + +/* + * OS2/EMX shared library rules (DLL version) + */ +#ifndef __EMX__ +#error You must edit os2Lib.rules for your (non-EMX) OS/2 dev system +#endif + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef ForceNormalLib +#define ForceNormalLib NO +#endif + +#define SharedOldX NO + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags /**/ +#endif +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -Zdll -Zomf -Zmtd +#endif + +#ifndef NormalSharedLibObjCompile +#define NormalSharedLibObjCompile(options) $(RM) $@ @@\ + $(CC) -c $(CFLAGS) options $(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS) $*.c @@\ + touch $*.o +#endif + +#ifndef InstallSharedLibrary +#ifdef BuildImplibs +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: libname.dll libname.a libname.lib @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) libname.dll $(DESTDIR)dest @@\ + $(INSTALL) -c $(INSTLIBFLAGS) libname.a $(DESTDIR)dest @@\ + $(INSTALL) -c $(INSTLIBFLAGS) libname.lib $(DESTDIR)dest +#else +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: libname.dll libname.a @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) libname.a $(DESTDIR)dest @@\ + $(INSTALL) -c $(INSTLIBFLAGS) libname.dll $(DESTDIR)dest +#endif +#endif /* InstallSharedLibrary */ + +/*#ifdef UseInstalled +#define LinkBuildLibrary(lib) $(_NULLCMD_) +#else*/ +#define LinkBuildLibrary(lib) MakeDir($(BUILDLIBDIR)) @@\ + RemoveFile($(BUILDLIBDIR)/lib) @@\ + ImakeIndir $(BUILDLIBDIR) $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/lib . +/*#endif*/ + + EMXIMP = emximp + EMXOMF = emxomf + SHLD = gcc -Zomf -Zdll -Zmtd + SHADDLIBS = -lbsd -lsocket -lc_import +#ifndef BuildDllSupportLibs +/*#ifdef UseInstalled +#define BuildDllSupportLibs(slib) $(_NULLCMD_) +#else*/ +#define BuildDllSupportLibs(slib) @@\ + $(EMXIMP) -o slib.imp slib.def @@\ + $(EMXIMP) -o slib.a slib.imp @@\ + $(EMXOMF) -s -l slib.a @@\ + LinkBuildLibrary(slib.a) @@\ + LinkBuildLibrary(slib.lib) +/*#endif*/ +#endif + +#ifndef BuildDllSupportLibs2 +/*#ifdef UseInstalled +#define BuildDllSupportLibs2(slib) $(_NULLCMD_) +#else*/ +#define BuildDllSupportLibs2(slib) @@\ + $(EMXIMP) -o slib.imp Concat3(slib,os2,.def) @@\ + $(EMXIMP) -o slib.a slib.imp @@\ + $(EMXOMF) -s -l slib.a @@\ + LinkBuildLibrary(slib.a) @@\ + LinkBuildLibrary(slib.lib) +/*#endif*/ +#endif + +#ifndef BuildLibSupportLibs +/*#ifdef UseInstalled +#define BuildLibSupportLibs(slib) $(_NULLCMD_) +#else*/ +#define BuildLibSupportLibs(slib) @@\ + $(EMXOMF) -s -l slib.a @@\ + LinkBuildLibrary(slib.a) @@\ + LinkBuildLibrary(slib.lib) +/*#endif*/ +#endif + +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(libname.dll) @@\ +.SUFFIXES: .obj .rsp .def @@\ + LBRPATH = $(subst /,\,$(LIBRARY_PATH)) @@\ + LBRDEF = Concat3(libname,os2,.def) @@\ + LBRCPPDEF = Concat3(libname,os2,-def.cpp) @@\ + LBRRSP = Concat3(libname,os2,.rsp) @@\ + @@\ +link.rsp: $(LBRRSP) $(LBRDEF) @@\ + @echo $(LBRPATH)"\\dll0.obj+" >link.rsp @@\ + @cat $(LBRRSP) >>link.rsp @@\ + @echo $(LBRPATH)\\mt\\ $(LBRPATH)\\ $(REQUIREDLIBS) bsd socket c_alias c_static c_import os2 emx2 end >>link.rsp @@\ + @echo $(LBRDEF) >>link.rsp @@\ + @@\ +libname.dll: $(OBJS) link.rsp @@\ + link386 @link.rsp >nul @@\ + BuildDllSupportLibs2(libname) @@\ + LinkBuildLibrary(libname.dll) @@\ + @@\ +clean:: @@\ + $(RM) libname.lib libname.imp *.obj link.rsp +#endif /* SharedLibraryTarget */ + +#ifndef NormalLibraryTarget +#define NormalLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): objlist @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist) @@\ + RanLibrary($@) @@\ + BuildLibSupportLibs($*) +#endif /* NormalLibraryTarget */ + +#ifndef NormalDepLibraryTarget +#define NormalDepLibraryTarget(libname,deplist,objlist) @@\ +AllTarget(LibraryTargetName(libname)) @@\ + @@\ +LibraryTargetName(libname): deplist @@\ + RemoveFile($@) @@\ + MakeLibrary($@,objlist) @@\ + RanLibrary($@) @@\ + BuildLibSupportLibs($*) +#endif /* NormalDepLibraryTarget */ + +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryDataTarget */ + +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +#ifndef InstallLibrary +#define InstallLibrary(libname,dest) @@\ +install:: LibraryTargetName(libname) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(libname) $(DESTDIR)dest @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(libname,.lib) $(DESTDIR)dest @@\ + RanLibrary($(RANLIBINSTFLAGS) $(DESTDIR)dest/LibraryTargetName(libname)) +#endif /* InstallLibrary */ + +#ifndef LibMkdir +#define LibMkdir(dir) ImakeHelper 11 dir +#endif + +#ifndef LibCleanDir +#define LibCleanDir(dir) @@\ + ImakeIndir dir call RemoveFiles(*.Osuf) +#endif + +#define MakeStaticLibrary(libname) $(AR) libname *.o + +#ifndef UnsharedLibraryTarget +#define UnsharedLibraryTarget(libname,objlist,down,up) @@\ +AllTarget(LibraryTargetName(Concat(libname,_s))) @@\ + @@\ +LibraryTargetName(Concat(libname,_s)): objlist @@\ + RemoveFile($@) @@\ + ImakeIndir down MakeStaticLibrary(up/$@) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) @@\ + @@\ +install:: LibraryTargetName(Concat(libname,_s)) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(Concat(libname,_s)) $(DESTDIR)$(SHLIBDIR) +#endif + +#ifndef UnsharedLibraryTarget3 +#define UnsharedLibraryTarget3(libname,objlist1,objlist2,objlist3,down,up) @@\ +AllTarget(LibraryTargetName(Concat(libname,_s))) @@\ + @@\ +LibraryTargetName(Concat(libname,_s)): objlist1 objlist2 objlist3 @@\ + RemoveFile($@) @@\ + ImakeIndir down MakeStaticLibrary(up/$@) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) @@\ + @@\ +install:: LibraryTargetName(Concat(libname,_s)) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(Concat(libname,_s)) $(DESTDIR)$(SHLIBDIR) +#endif /* UnsharedLibraryTarget3 */ + +/* + * DebuggedLibraryTarget - generate rules to create a debuggable library. + */ +#ifndef DebuggedLibraryTarget +#define DebuggedLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_d)) @@\ + @@\ +LibraryTargetNameSuffix(libname,_d): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + ImakeIndir debugger MakeStaticLibrary(../$@) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) + +#endif /* DebuggedLibraryTarget */ + +/* + * ProfiledLibraryTarget - generate rules to create a profiled library. + */ +#ifndef ProfiledLibraryTarget +#define ProfiledLibraryTarget(libname,objlist) @@\ +AllTarget(LibraryTargetNameSuffix(libname,_p)) @@\ + @@\ +LibraryTargetNameSuffix(libname,_p): objlist $(EXTRALIBRARYDEPS) @@\ + RemoveFile($@) @@\ + ImakeIndir profiled MakeStaticLibrary(../$@) @@\ + RanLibrary($@) @@\ + _LinkBuildLibrary($@) + +#endif /* ProfiledLibraryTarget */ diff --git a/Xserver/config/cf/os2Lib.tmpl b/Xserver/config/cf/os2Lib.tmpl new file mode 100644 index 0000000..d4d4ed4 --- /dev/null +++ b/Xserver/config/cf/os2Lib.tmpl @@ -0,0 +1,119 @@ +XCOMM $XConsortium: os2Lib.tmpl /main/1 1996/10/31 14:47:31 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/os2Lib.tmpl,v 3.5 1997/01/05 11:49:40 dawes Exp $ + +/* + * OS2/EMX shared library template + */ +#ifndef __EMX__ +#error You must edit os2Lib.tmpl for your (non-EMX) OS/2 dev system +#endif + +/* note these are special because of linking with link386 */ +#ifdef NOT_EMX +#define SharedXtReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXawReqs $(LDPRELIB) $(XMULIB) $(XTOOLLIB) $(XLIB) +#define SharedXmuReqs $(LDPRELIB) $(XTOOLLIB) $(XLIB) +#define SharedSMReqs $(LDPRELIB) $(ICELIB) +#define SharedXextReqs $(LDPRELIB) $(XLIBONLY) +#define SharedXiReqs $(LDPRELIB) $(XLIB) +#define SharedXieReqs $(LDPRELIB) $(XLIB) +#define SharedXtstReqs $(LDPRELIB) $(XLIB) +#define SharedOldXReqs $(LDPRELIB) $(XLIBONLY) +#define SharedPexReqs $(LDPRELIB) $(XLIBONLY) MathLibrary +#define SharedXpReqs $(LDPRELIBS) $(XLIB) +#else +#define SharedXtReqs ..\\..\\exports\\lib\\ ICE SM X11 +#define SharedXawReqs ..\\..\\exports\\lib\\ Xmu Xt X11 Xext +#define SharedXmuReqs ..\\..\\exports\\lib\\ Xt X11 Xext +#define SharedSMReqs ..\\..\\exports\\lib\\ ICE +#define SharedXextReqs ..\\..\\exports\\lib\\ X11 +#define SharedXiReqs ..\\..\\exports\\lib\\ X11 Xext +#define SharedXieReqs ..\\..\\exports\\lib\\ X11 Xext +#define SharedXtstReqs ..\\..\\exports\\lib\\ X11 Xext +#define SharedOldXReqs ..\\..\\exports\\lib\\ X11 Xext +#define SharedPexReqs ..\\..\\exports\\lib\\ X11 m +#define SharedXpReqs ..\\..\\exports\\lib\\ X11 Xext +#endif + +/* + * By setting this in your Imakefile, you can force using static libraries + * to be linked with you app, rather than DLLs + */ +#ifndef LinkStatically +#define LinkStatically NO +#endif + +#if LinkStatically +#define SDlibX11 -lX11_s +#define SDlibXExt -lXExt_s +#define SDlibXmu -lXmu_s +#define SDlibXt -lXt_s +#define SDlibXaw -lXaw_s +#define SDlibXi -lXi_s +#define SDlibXIE -lXIE_s +#define SDlibXtst -lXtst_s +#define SDlibPEX5 -lPEX5_s +#define SDlibXp -lXp_s +#else +#define SDlibX11 -lX11 +#define SDlibXExt -lXExt +#define SDlibXmu -lXmu +#define SDlibXt -lXt +#define SDlibXaw -lXaw +#define SDlibXi -lXi +#define SDlibXIE -lXIE +#define SDlibXtst -lXtst +#define SDlibPEX5 -lPEX5 +#define SDlibXp -lXp +#endif + +/* + * and now a little bit of magic for using imake without source tree; if we + * are using shared libraries, we really do not need to depend on anything + */ +#if SharedLibXext + DEPEXTENSIONLIB = + EXTENSIONLIB = _Use(SDlibXExt,-L$(EXTENSIONSRC)/lib SDlibXExt) +#endif +#if SharedLibX11 + DEPXLIB = + XLIB = $(EXTENSIONLIB) _Use(SDlibX11,-L$(XLIBSRC) SDlibX11) +#endif +#if SharedLibXmu + DEPXMULIB = + XMULIB = _Use(SDlibXmu,-L$(XMUSRC) SDlibXmu) $(XLIB) +#ifndef XawClientLibs +#define XawClientLibs $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB) +#endif +#endif +#if SharedOldX + DEPOLDXLIB = + OLDXLIB = _Use(-loldX,-L$(OLDXLIBSRC) -loldX) +#endif +#if SharedLibXt + DEPXTOOLLIB = + XTOOLLIB = _Use(SDlibXt,-L$(TOOLKITSRC) SDlibXt) +#endif +#if SharedLibXaw + DEPXAWLIB = + XAWLIB = _Use(SDlibXaw,-L$(AWIDGETSRC) SDlibXaw) +#endif +#if SharedLibXi + DEPXILIB = + XILIB = _Use(SDlibXi,-L$(XILIBSRC) SDlibXi) +#endif +#if SharedLibXTest + DEPXTESTLIB = + XTESTLIB = _Use(SDlibXtst,-L$(EXTENSIONSRC)/lib/xtest SDlibXtst) +#endif +#if SharedLibPex + DEPPEXLIB = + PEXLIB = _Use(SDlibPEX5,-L$(PEXLIBSRC) SDlibPEX5) +#endif +#if SharedLibXp + DEPEXTENSIONLIB = + EXTENSIONLIB = _Use(SDlibXp,-L$(EXTENSIONSRC)/lib SDlibXp) +#endif diff --git a/Xserver/config/cf/osf1.cf b/Xserver/config/cf/osf1.cf new file mode 100644 index 0000000..f976df7 --- /dev/null +++ b/Xserver/config/cf/osf1.cf @@ -0,0 +1,206 @@ +XCOMM platform: $TOG: osf1.cf /main/74 1997/05/27 15:51:24 kaleb $ +/* only tested with Digital OSF/1 */ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +XCOMM operating system: OSName (OSMajorVersion.OSMinorVersion) + +#define StandardCppDefines -D__osf__ StandardDefines +#define BuildLibPathVar _RLD_ROOT=/dev/null LD_LIBRARY_PATH +#define HasPutenv YES +#define Malloc0ReturnsNull YES +#define HasNdbm YES +#define HasShm YES +#define AvoidNullMakeCommand YES +#define NullMakeCommand @ echo +#define HasPosixThreads YES +#define SystemMTDefines -D_REENTRANT +#define CplusplusSystemMTDefines -D_REENTRANT +#define HasPoll YES +#define HasVFork NO +#define HasPlugin YES +#define InstallCmd installbsd +#define RanlibCmd ranlib -t +#if OSMajorVersion > 1 || OSMinorVersion > 0 +#define ModernOSF1 YES +#else +#define ModernOSF1 NO +#define ShLibDir /usr/shlib +#define SharedLibPex NO /* losing, no shared -lm */ +#endif +#define ThreadedX ModernOSF1 + +#if ThreadedX +#define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXUSE_NETDB_R_API +#if OSMajorVersion < 4 +#define ThreadsLibraries -lpthreads -lmach -lc_r +#define ThreadsCplusplusLibraries -lpthreads -lmach +#define ThreadPreStdAPIDefines -DXPRE_STANDARD_API +#else +#define ThreadsLibraries -lpthread -lmach -lexc -lc +#define ThreadsCplusplusLibraries -lpthread -lmach -lexc +#define LibraryMTDefines -DUSE_TIS_SUPPORT +#endif +#endif + +#if ModernOSF1 +#ifndef OptimizedCDebugFlags +#define OptimizedCDebugFlags -O2 -Olimit 2000 +#endif +#ifndef ExtraLoadFlags +/* + * In OSF/1 3.0 Digital has shared libXdmcp and libXau. What's more, + * the link editor has different search semantics, i.e. it will search + * for shared libraries first, then, if it can't find a shared lib, it + * will use a static lib. By using -oldstyle_liblookup the linker will + * follow "normal" semantics for linking libraries and will get the + * static libraries we really want. By 3.2 they no longer have libXdmcp + * and libXau as shared libraries and we can omit -oldstyle_liblookup. + * (What did they have in 3.1?) + */ +#if OSMajorVersion == 3 && OSMinorVersion == 0 +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH),-oldstyle_liblookup +#else +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH) +#endif +#endif +#if OSMajorVersion > 3 +#define TermcapLibrary -lcurses +#endif +#if OSMajorVersion >= 3 +#define HasMkstemp YES +#endif +#endif + +/* + * C++ compiler setup. This file knows what options to use with the + * DEC C++ compiler, and may learn about other compilers in the future. + * + * For DEC C++, define HasDECCplusplus to YES in site.def. + * + * For g++ 2.6.x, define HasGcc2ForCplusplus to YES in site.def. + * + * For other compilers, define HasCplusplus to YES in site.def, and + * check to see if you need to provide values for CplusplusOptions + * and/or DefaultCplusplusOptions. + * + * In any case, you may also need to set CplusplusDependIncludes. + * + * Note: For DEC C++, the -call_shared option really only needs to + * appear when linking C++ executables, not when actually compiling + * the C++ sources. But since there's no imake variable that lets + * us insert flags only into the C++ link stage, we use -call_shared + * on all compilations when building executables. This could be + * considered a deficiency in the current imake configuration + */ + +#if HasDECCplusplus +#ifndef HasCplusplus +#define HasCplusplus YES +#endif +#ifndef CplusplusCmd +#define CplusplusCmd /usr/bin/cxx +#endif +#ifndef CplusplusFilt +# define CplusplusFilt /usr/bin/demangle +#endif +#ifndef CplusplusDependIncludes +#define CplusplusDependIncludes -D__DECCXX -I/usr/include/cxx +#endif +#ifndef CplusplusLibDir +#define CplusplusLibDir /usr/lib/cmplrs/cxx +#endif +#ifndef CplusplusLibC +#define CplusplusLibC -L/usr/lib/cmplrs/cxx -lcxx +#endif +#ifndef CplusplusOptions +#define CplusplusOptions -call_shared +#endif +#endif /* HasDECCplusplus */ + + +#if HasGcc2ForCplusplus +#ifndef CplusplusLibC +#define CplusplusLibC `$(CXX) -print-libgcc-file-name` +#endif +#endif /* HasGcc2ForCplusplus */ + +#ifdef CplusplusLibDir +# define SystemBuildLibPath \ +/usr/shlib:/usr/ccs/lib:CplusplusLibDir:/usr/lib/cmplrs/cc:/usr/lib:/usr/local/lib:/var/shlib +#else +# define SystemBuildLibPath \ +/usr/shlib:/usr/ccs/lib:/usr/lib/cmplrs/cc:/usr/lib:/usr/local/lib:/var/shlib +#endif + +#include +#define NoRConst YES + +#ifdef AlphaArchitecture +#ifndef HasWChar32 +#define HasWChar32 YES +#endif +#define ServerExtraDefines -D_XSERVER64 +#define ServerOSDefines -DDDXTIME +#ifndef DefaultCCOptions +#define DefaultCCOptions -std1 +#endif +#ifndef XawI18nDefines +#define XawI18nDefines -DHAS_WCHAR_H +#endif +#ifndef BuildServer +#define BuildServer NO +#endif + +/* For DtHelp's TIFF processing routines. */ +#define LSBBitOrder YES + +#define MotifDefines -DNO_REGCOMP -DNO_REGEX -DSTRINGS_ALIGNED +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DMESSAGE_CAT +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#define DtWidgetDefines DtSearchDefines +#define DtPrintDefines DtSearchDefines +#define DtMailDefines \ + -DNEED_MMAP_WRAPPER -DSENDMAIL_LOCKS -DMAIL_SPOOL_PATH=\"/var/spool/mail/%s\" + +#define ArchitectureDefines -DALPHA_ARCHITECTURE +#endif + +#ifdef MipsArchitecture +#define DefaultCCOptions -Xa +#define XdecServer YES +#define ServerOSDefines -DDDXTIME +#define PexCCOptions -Xa -Wf,-XNp15000,-XNd15000 +#define NormalLibObjCompile(options) ClearmakeOSName \ + $(RM) $@ $*.os \ @@\ + && $(CC) -c options $(CFLAGS) $*.c \ @@\ + && $(LD) $(LDSTRIPFLAGS) -r $@ -o $*.os \ @@\ + && $(MV) $*.os $@ +#endif + +#if !HasClearmake +#ifndef HasMakefileSafeInclude +#define HasMakefileSafeInclude YES +#endif +#ifndef IncludeMakefile +#define IncludeMakefile(file) @@-include file +#endif +#endif + +#ifndef ManKeywordsTarget +#define ManKeywordsTarget(manpath) @@\ +man_keywords:: @@\ + catman -M $(DESTDIR)manpath -w +#endif + +#define CdeTicDefines -DHAS_KNL -DHAS_KTAB +#define CdeProjectDefines \ + -DDEC -DMULTIBYTE -DNLS16 \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion diff --git a/Xserver/config/cf/osfLib.rules b/Xserver/config/cf/osfLib.rules new file mode 100644 index 0000000..1218d86 --- /dev/null +++ b/Xserver/config/cf/osfLib.rules @@ -0,0 +1,118 @@ +XCOMM $XConsortium: osfLib.rules /main/16 1996/09/28 16:11:55 rws $ + +/* + * OSF/1 shared library rules + */ + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef SeparateSharedCompile +#define SeparateSharedCompile NO +#endif +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -shared -no_archive +#endif + +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags /**/ +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +#ifndef PackageName(libname) +#if ModernOSF1 +#define PackageName(libname) /**/ +#define Objects(objlist) -all objlist -none +#else +#define PackageName(libname) -package libname +#define Objects(objlist) objlist +#endif +#endif +#if ThreadedX && ModernOSF1 && OSMajorVersion < 4 +#define BaseShLibReqs -lc_r -lc +#else +#define BaseShLibReqs -lc +#endif + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#if SeparateSharedCompile +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) PackageName($@) \ @@\ + -soname $@ Objects(solist) \ @@\ + $(REQUIREDLIBS) BaseShLibReqs) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) +#else +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + $(LD) -o $@~ $(SHLIBLDFLAGS) PackageName($@) \ @@\ + -soname $@ Objects(solist) \ @@\ + $(REQUIREDLIBS) BaseShLibReqs @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) +#endif /* SeparateSharedCompile */ +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ diff --git a/Xserver/config/cf/osfLib.tmpl b/Xserver/config/cf/osfLib.tmpl new file mode 100644 index 0000000..a67c410 --- /dev/null +++ b/Xserver/config/cf/osfLib.tmpl @@ -0,0 +1,52 @@ +XCOMM $XConsortium: osfLib.tmpl /main/22 1996/09/28 16:12:00 rws $ + +/* + * OSF/1 shared library template + */ + +#if ThreadedX && ModernOSF1 +#if OSMajorVersion < 4 +#define SharedX11Reqs -lpthreads -lmach +#endif +#endif +#define SharedOldXReqs $(LDPRELIBS) $(XLIBONLY) + +#if ThreadedX && ModernOSF1 && OSMajorVersion < 4 +#define SharedThreadReqs -lpthreads -lmach +#else +#define SharedThreadReqs /**/ +#endif +#define SharedXtReqs $(LDPRELIBS) $(XLIBONLY) $(SMLIB) $(ICELIB) SharedThreadReqs +#if ModernOSF1 +#define SharedXawReqs $(LDPRELIBS) $(XMULIB) $(XTOOLLIB) $(XLIB) +#else +#define SharedXawReqs $(LDPRELIBS) $(XMULIB) $(XTOOLLIB) $(XLIB) -init _XawFixupVendorShell +#endif +#define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) +#define SharedXextReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedXiReqs $(LDPRELIBS) $(XLIB) +#define SharedPexReqs $(LDPRELIBS) $(XLIBONLY) MathLibrary +#define SharedXtstReqs $(LDPRELIBS) $(XLIB) +#define SharedXieReqs $(LDPRELIBS) $(XLIBONLY) +#define SharedSMReqs $(LDPRELIBS) $(ICELIB) +#define SharedXpReqs $(LDPRELIBS) $(XLIB) + +#define SharedXReqs $(XTOOLLIB) $(XPLIB) $(XLIB) SharedThreadReqs $(LDPOSTLIBS) +#define SharedXmReqs $(LDPRELIBS) SharedXReqs +#define SharedMrmReqs $(LDPRELIBS) $(XMLIB) SharedXReqs +#define SharedUilReqs $(LDPRELIBS) $(MRESOURCELIB) $(XMLIB) SharedXReqs + +/* #define SharedPamReqs */ +#define SharedTtReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) SharedThreadReqs $(CXXLIB) +#define SharedDtSvcReqs $(LDPRELIBS) $(TTLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtMmdbReqs $(LDPRELIBS) $(DTSVCLIB) $(TTLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtSearchReqs $(LDPRELIBS) -lm +#define SharedDtWidgetReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtHelpReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm -liconv +#define SharedDtPrintReqs $(LDPRELIBS) $(DTSVCLIB) $(DTHELPLIB) $(XMLIB) SharedXReqs -lm $(CXXLIB) +#define SharedDtTermReqs $(LDPRELIBS) $(DTHELPLIB) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm +#define SharedDtMrmReqs $(LDPRELIBS) $(DTTERMLIB) $(DTPRINTLIB) $(DTHELPLIB) $(DTWIDGETLIB) $(MRESOURCELIB) $(XMLIB) SharedXReqs -lm +#define SharedDtMailReqs $(LDPRELIBS) $(DTHELPLIB) $(DTSVCLIB) $(XMLIB) SharedXReqs -liconv -lm $(CXXLIB) +#define SharedCsaReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs -lm + +ICONVSYSLIB = -liconv diff --git a/Xserver/config/cf/pegasus.cf b/Xserver/config/cf/pegasus.cf new file mode 100644 index 0000000..507effa --- /dev/null +++ b/Xserver/config/cf/pegasus.cf @@ -0,0 +1,34 @@ +XCOMM platform: $XConsortium: pegasus.cf /main/38 1996/09/28 16:12:05 rws $ + +#ifndef OSName +#define OSName UTek 4.0 +#endif +XCOMM operating system: OSName +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif + +#define HasNdbm YES +#define HasVoidSignalReturn NO + +#define BootstrapCFlags -DM4310 -DUTEK +#define StandardDefines -DM4310 -DUTEK -Dpegasus + +#if HasGcc +/* put back all of the -Ds which -ansi removes */ +#define CcCmd gcc -ansi -fstrength-reduce -fpcc-struct-return -Dmc68000 -Dtektronix -Dutek -Dunix -Dm68k +#endif + +#define BuildServer NO +/* #define XtekServer YES */ + +#define ServerExtraDefines -DM4310 -DM4317 +#define ServerOSDefines -DDDXTIME +#define FontFilters BDFTOSNFFILT SHELLPATH +#define PrimaryScreenResolution 95 + +.DIRECTORIES: /* Turn off directory search for RCS */ + diff --git a/Xserver/config/cf/sco.cf b/Xserver/config/cf/sco.cf new file mode 100644 index 0000000..3073e03 --- /dev/null +++ b/Xserver/config/cf/sco.cf @@ -0,0 +1,206 @@ +XCOMM platform: $XConsortium: sco.cf /main/5 1996/12/04 10:12:36 swick $ +XCOMM platform: $XFree86: xc/config/cf/sco.cf,v 3.12.2.1 1997/05/24 13:38:09 dawes Exp $ + +/* + * This is sco.cf, for SCO Open Server 5.0.2 and SCO UNIX. + * Please mail hug@netcom.com with any questions. + * + * This section is common to all versions of SCO + */ + +#ifndef ScoOsMouse +# define ScoOsMouse YES +#endif + +#ifndef OSVendor +#define OSVendor Santa Cruz Operation +#endif + +#define PosixLibraries /**/ +#define Malloc0ReturnsNull YES +#define RemoveDSDENroffMacros NO +#define ExtraLibraries -lsocket -lmalloc -lpt + +#define ManSourcePath $(MANPATH)/cat. + +#ifndef CompressManPages +#define CompressManPages YES +#endif + +#if ScoOsMouse +# define ServerExtraDefines -DUSE_OSMOUSE XFree86ServerDefines +# define ServerExtraSysLibs $(CBRT) -lm -levent +#else +# define ServerExtraSysLibs $(CBRT) -lm +#endif + +/* + * XBSDLIB is included with the Socket libraries, because SCO needs Xbsd + * as its bcopy routine doesn't handle overlapping regions. If HasSockets + * If HasSockets is false the XINETLIB does it for us anyway. + */ +#define SocketLibraries $(XBSDLIB) -lsocket + +#define ConnectionFlags -DLOCALCONN -DTCPCONN -DFD_SETSIZE=256 + +#if defined(i386Sco324Architecture) || defined(i386Sco325Architecture) +# ifndef HasSymLinks +# define HasSymLinks YES +# endif +# define CompressManCmd $(COMPRESS) -v +#else /* SCO 3.2.2 */ +# ifndef HasSymLinks +# define HasSymLinks NO +# endif +# define CommpressManCmd pack +#endif + +/* + * Due to the extra '.' chars in the SCO man pages file name we have + * to provide our own version of this macro. + */ + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(SUFFIX=`echo $(DESTDIR)destdir/file.* | cut -f3,4 -d.`; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.*; \ @@\ + (cd $(DESTDIR)destdir; $(LN) file.$${SUFFIX} \ @@\ + $$i.$${SUFFIX})); \ @@\ + done) + +/* + * This is the SCO Open Server 5.0.2 section. BOOTSTRAPCFLAGS is computed + * automatically. You can simply run make World. + */ +#ifdef i386Sco325Architecture +#ifndef OSName +#define OSName OpenServer Release 5 +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 5 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 2 +#endif + +#define StandardDefines -Dsco -DSCO -DSYSV -Di386 -DSCO325 -DSCO324 +#ifdef HasGcc2 +# define DefaultCCOptions -melf +# define CcCmd gcc +# define ExtraLoadOptions -melf +# define DefaultCDebugFlags DefaultGcc2i386Opt +# define OptimizedCDebugFlags DefaultGcc2i386Opt +#else +# define DefaultCCOptions -dy +# define CcCmd cc +# define ExtraLoadOptions -b elf +# define DefaultCDebugFlags -O2 +# define OptimizedCDebugFlags -O2 +#endif + +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#define NeedWidePrototypes NO +#define ServerOSDefines -DDDXTIME +#define ToolkitStringsABIOptions -intelabi +#define ThreadedX NO +#define HasThreadSafeAPI NO +#define HasNdbm YES +#define HasVFork YES +#define HasPutenv YES +#define ExecableScripts YES +#define HasShadowPasswd YES + +#ifndef HasLibCrypt +# define HasLibCrypt YES +# define SpecialLibCrypt -lcrypt +#endif + +#ifndef ForceNormalLib +# define ForceNormalLib YES +#endif + +#define SharedLibXmu NO +#define SystemV YES +#define LdCombineFlags -r + +#define HasLdRunPath YES +#define HasPoll YES +#define PatheticCpp YES + +#define ArCmdBase ar +#define AsCmd as +#define CppCmd /lib/cpp +#define LdCmd ld +#define LexCmd lex +#define MakeCmd make +#define YaccCmd yacc + +#include /* minor changes to sv4Lib.rules */ +#include + +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#define DtWidgetDefines DtSearchDefines +#define DtPrintDefines DtSearchDefines + +#else /* !i386Sco325Architecture */ +/* + * This is the SCO 3.2v4.x and SCO 3.2v2.x section + */ + +/* You must manually compute BootstrapCFlags for initial build */ + +#define OSMinorVersion 2 + +#ifdef i386Sco324Architecture +# define BootstrapCFlags -DSYSV -Di386 -DSCO -DSCO324 +# define OSTeenyVersion 4 +# define OSName (SCO Version 3.2.4) +# define OSDefines -DSCO -DSCO324 -Dsco -Dsco324 -DBROKEN_FTOL \ + -D_NO_PROTOTYPE -D_SVID +#else +# define BootstrapCFlags -DSYSV -Di386 -DSCO +# define OSTeenyVersion 2 +# define OSName (SCO Version 3.2.2) +# define OSDefines -DSCO -Dsco -DBROKEN_FTOL -DNO_PROTOTYPE \ + -D_SVID +#endif + +#ifdef i386Sco324Architecture +/* + * if your gcc is compiled with STDC_VALUE=0 then change the 1 to 0 + */ +# define GCC_STDC_VALUE 1 +# if !GCC_STDC_VALUE +# define OSDefines -DSCO -DSCO324 -Dsco -Dsco324 -DBROKEN_FTOL \ + -D_NO_PROTOTYPE -D_SVID -D__STDC__=1 +# undef StandardCppDefines +# define StandardCppDefines -DUNIXCPP=1 StandardDefines +# endif +#endif + +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + +/* + * The user should override this in their site.def if they have the real + * crypt library. We default to the international crypt library here as + * anyone may obtain that. + */ + +#ifndef HasLibCrypt +# define HasLibCrypt YES +# define SpecialLibCrypt -lcrypt_i +#endif + +#include + +#endif /* SCO 3.2.4 and SCO 3.2.2 section */ + +#ifdef i386Architecture +#include +#endif + diff --git a/Xserver/config/cf/sco5.cf b/Xserver/config/cf/sco5.cf new file mode 100644 index 0000000..9e07e31 --- /dev/null +++ b/Xserver/config/cf/sco5.cf @@ -0,0 +1,139 @@ +XCOMM $XFree86: xc/config/cf/sco5.cf,v 3.1.2.4 1997/07/19 04:59:08 dawes Exp $ + +/* + * This is for SCO Open Server 5.0.2 or later. + */ + +#ifndef ScoOsMouse +# define ScoOsMouse YES +#endif + +#ifndef OSName +#define OSName UNIX System V/386 Open Server 5.0.4 +#endif +#ifndef OSVendor +#define OSVendor SCO +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 5 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 4 +#endif + +/* + * Note: We define FD_SETSIZE here (as opposed to in ConnectionFlags) to + * guarantee that the same FD_SETSIZE is used. Havoc abounds if we do not + * do this, as some files which include sys/socket.h and sys/types.h will + * have different values for FD_SETSIZE. + */ + +#define StandardDefines -Dsco -DSCO -DSYSV -Di386 -DSCO325 -DFD_SETSIZE=256 -D_NO_STATIC +#ifdef HasGcc2 +# define DefaultCCOptions -melf +# define CcCmd gcc +# define ExtraLoadOptions -melf +# define DefaultCDebugFlags -O +# define OptimizedCDebugFlags -O +#else +# define DefaultCCOptions -dy +# define CcCmd cc +# define ExtraLoadOptions -b elf +# define DefaultCDebugFlags -O +# define OptimizedCDebugFlags -O +#endif + +#ifndef PexDynamicModule +#define PexDynamicModule YES +#endif +#ifndef XieDynamicModule +#define XieDynamicModule YES +#endif + +#ifndef HasSymLinks +# define HasSymLinks YES +#endif + +#ifdef BuildDynamicLoading +#define SCODynamicFlags -Wl,-Bexport +#endif + +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#if ScoOsMouse +# define ServerExtraSysLibs $(CBRT) -lm -levent SCODynamicFlags +# define ServerExtraDefines ServerCCOptions -DUSE_OSMOUSE XFree86ServerDefines +#else +# define ServerExtraSysLibs $(CBRT) -lm SCODynamicFlags +# define ServerExtraDefines ServerCCOptions XFree86ServerDefines +#endif +#define ExtraLibraries -lsocket +#define NeedWidePrototypes NO +#define ServerOSDefines -DDDXTIME +#define ToolkitStringsABIOptions -intelabi +#define ThreadedX NO +#define HasThreadSafeAPI NO +#define HasNdbm YES +#define HasVFork YES +#define HasPutenv YES +#define ExecableScripts YES +#define HasShadowPasswd YES +#define ManSourcePath $(MANPATH)/cat. +#define Malloc0ReturnsNull YES +#define RemoveDSDENroffMacros NO +#define CompressManPages YES + +#ifndef HasLibCrypt +# define HasLibCrypt YES +# define SpecialLibCrypt -lcrypt +#endif +#define PosixLibraries /**/ + +#ifndef ForceNormalLib +# define ForceNormalLib YES +#endif + +#define SharedLibXmu NO +#define SystemV YES +#define LdCombineFlags -r + +#define HasLdRunPath YES +#define HasPoll NO +#define PatheticCpp YES + +#define ArCmdBase ar +#define AsCmd as +#define CppCmd /lib/cpp +#define LdCmd ld +#define LexCmd lex +#define MakeCmd make +#define YaccCmd yacc + +#define DefaultUserPath /bin:/usr/bin:$(BINDIR):/usr/bin/X11:/usr/local/bin:/etc +#define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR):/usr/bin/X11 + +/* + * If you are compiling on an SCO Open Server release prior to 5.0.2, + * you may need to remove -DLOCALCONN. There have been reports of it + * working on some 5.0.0 machines but not others. + */ +#define ConnectionFlags -DLOCALCONN -DTCPCONN -DUNIXCONN + +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(SUFFIX=`echo $(DESTDIR)destdir/file.* | cut -f3,4 -d.`; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.*; \ @@\ + (cd $(DESTDIR)destdir; $(LN) file.$${SUFFIX} \ @@\ + $$i.$${SUFFIX})); \ @@\ + done) + +#include /* minor changes to sv4Lib.rules */ +#include + +#ifdef i386Architecture +#include +#endif + diff --git a/Xserver/config/cf/scoLib.rules b/Xserver/config/cf/scoLib.rules new file mode 100644 index 0000000..21a7ff6 --- /dev/null +++ b/Xserver/config/cf/scoLib.rules @@ -0,0 +1,43 @@ +XCOMM $XConsortium: scoLib.rules /main/2 1996/09/28 16:12:20 rws $ +XCOMM $XFree86: xc/config/cf/scoLib.rules,v 1.1.1.2.2.2 1997/07/19 12:59:10 dawes Exp $ + +/* + * SharedLibraryTarget3 - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + * + * Work around SCO sh enviroment size problem. + */ +#ifndef SharedLibraryTarget3 +#define SharedLibraryTarget3(libname,rev,solist1,solist2,solist3,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist1 solist2 solist3 $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + echo -n $(LD) -o up/$@~ $(SHLIBLDFLAGS) -h $(DESTDIR)$(SHLIBDIR)/$@ solist1 " " > Concat(down/lib,cmd) @@\ + echo -n solist2 " " >> Concat(down/lib,cmd) @@\ + echo -n solist3 >> Concat(down/lib,cmd) @@\ + (cd down; $(SHELL) Concat(./lib,cmd)) @@\ + $(RM) $@ Concat(lib,tmp1) Concat(lib,tmp2) @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* SharedLibraryTarget */ + +/* + * Redefine this so we can drop -b elf and build COFF objects for the + * archived library. This assumes -b elf is hanging out in CCOPTIONS + */ +#ifndef UnsharedLibObjCompile +#define UnsharedLibObjCompile(options) RemoveFile($@) @@\ + ClearmakeOSName \ + $(CC) -c $(CDEBUGFLAGS) $(THREADS_CFLAGS) $(ALLDEFINES) options $*.c @@\ + $(MV) $@ unshared/$@ +#endif + diff --git a/Xserver/config/cf/sequent.cf b/Xserver/config/cf/sequent.cf new file mode 100644 index 0000000..be7db5f --- /dev/null +++ b/Xserver/config/cf/sequent.cf @@ -0,0 +1,84 @@ +XCOMM platform: $XConsortium: sequent.cf /main/4 1996/12/04 10:10:49 swick $ +/* + * SET VERSION NUMBERS BEFORE MAKING MAKEFILES; also, you'll need to install + * util/scripts/bsdinstall.sh before doing a "make install" + */ + +#if defined(DynixPtxArchitecture) || defined(_SEQUENT_) + +# ifndef OSName +# define OSName Dynix/ptx +# endif +# ifndef OSMajorVersion +# define OSMajorVersion 2 +# endif +# ifndef OSMinorVersion +# define OSMinorVersion 0 +# endif + +# define SystemV YES +# define SymbolTableFlags +# define DefaultCCOptions SymbolTableFlags +# define SharedLibraryCCOptions DefaultCCOptions +# define StandardDefines -DSYSV +# define MotifDefines -DSTRINGS_ALIGNED -DNO_REGCOMP +# define ExtraLibraries $(XBSDLIB) -lsocket -linet -lnsl -lseq +# define XmExtraLibraries /* -lgen (not official i386 ABI?) */ + +# define NeedBerklib YES +# define HasShadowPasswd YES +# define InstallXdmConfig YES +# define HasSockets YES + +/* + * Plan to remove Prototypes defines and use -Xc with + * Dynix/ptx: + * OSMajorVersion=4 + * OSMinorVersion=0 + * Using -Xc with Version 4.0 will elliminate most warnings + */ +# define NeedFunctionPrototypes YES +# define NeedNestedPrototypes YES +# define NeedConstPrototypes YES +# define NeedVarargsPrototypes YES + + +/* + * unfortunately pbmplus uses this... + */ +RANLIB = : + +#endif /* defined(DynixPtxArchitecture) || defined(_SEQUENT_) */ + +#if defined(Dynix3Architecture) || defined(sequent) + +# ifndef OSName +# define OSName Dynix 3 +# endif +# ifndef OSMajorVersion +# define OSMajorVersion 3 +# endif +# ifndef OSMinorVersion +# define OSMinorVersion 2 +# endif + +# define SymbolTableFlags -W0,-Nn7500 -W0,-Nd10000 +# define DefaultCCOptions SymbolTableFlags +# define StandardDefines -DX_NOT_STDC_ENV -DX_NOT_POSIX +# define ExtraLibraries -lseq + +# define HasVoidSignalReturn NO +# define HasBsearch NO + +# define SetTtyGroup YES + +#endif /* defined(Dynix3Architecture) || defined(sequent) */ + +#define BuildServer NO +#define BuildXInputLib NO +#define BuildPexClients NO + +#define LnCmd ln -s + +/* libgen is not part of the i386 ABI. (Are both architectures i386??) */ +#define UseLocalRegex YES diff --git a/Xserver/config/cf/sgi.cf b/Xserver/config/cf/sgi.cf new file mode 100644 index 0000000..38f2344 --- /dev/null +++ b/Xserver/config/cf/sgi.cf @@ -0,0 +1,233 @@ +XCOMM platform: $TOG: sgi.cf /main/45 1997/06/18 18:01:03 kaleb $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion.OSMinorVersion.OSTeenyVersion) + +#if OSMajorVersion < 4 +/* We do not guarantee this will work */ +#define BootstrapCFlags -DX_WCHAR -DX_LOCALE -DX_USEBFUNCS -DSYSV +#define StandardDefines -DX_WCHAR -DX_LOCALE -DX_USEBFUNCS -DSYSV +#define SetTtyGroup NO +#else +#define HasPlugin YES +#define SetTtyGroup YES +#define ExtraFilesToClean so_locations +#endif + +#if OSMajorVersion < 5 +#define SystemV YES +#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#else +#define BootstrapCFlags -DSVR4 +#define StandardDefines -DSVR4 +#define SystemV4 YES +#define HasWChar32 YES +#define HasVFork NO +#if OSMajorVersion < 6 +#define XawI18nDefines -DHAS_WCTYPE_H -DHAS_ISW_FUNCS +#else +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#endif +#define AllocateLocalDefines -DINCLUDE_ALLOCA_H +#ifndef ExtraLoadFlags +#define ExtraLoadFlags -Wl,-rpath,$(USRLIBDIRPATH) +#endif +#endif + +/* + * To build 64-bit binaries define Mips64Architecture in your site.def or + * host.def file. This is usually on done at the X Consortium to test + * big endian 64-bit cleanliness. + * To build 32-bit binaries using the old 32-bit mode, define + * NoMipsN32Archtecture in your site.def or host.def file. + * Otherwise the default is to use the "new 32" mode as requested by SGI. + */ +#ifndef MipsN32Architecture +#if !defined(Mips64Architecture) && !defined(NoMipsN32Architecture) +#define MipsN32Architecture YES +#endif +#endif + +#ifdef Mips64Architecture +# define BuildLibPathVar _RLD_ROOT=/dev/null LD_LIBRARY64_PATH +# define SystemBuildLibPath /usr/lib64:/lib64 +# define LdCmd ld -64 +#elif defined(MipsN32Architecture) +# define BuildLibPathVar _RLD_ROOT=/dev/null LD_LIBRARYN32_PATH +# define SystemBuildLibPath /usr/lib32:/lib32 +# define LdCmd ld -n32 +#else +# define BuildLibPathVar _RLD_ROOT=/dev/null LD_LIBRARY_PATH +# define SystemBuildLibPath /usr/lib:/lib +#endif +#define HasCplusplus YES +#define Malloc0ReturnsNull YES /* IRIX [56].x -lmalloc needs this */ +#define HasPutenv YES +#define ExecableScripts YES +#define HasNdbm YES +#define HasPoll YES +#define ExpandManNames YES +#ifndef BuildXInputExt +#define BuildXInputExt YES +#endif + +#if OSMajorVersion > 3 || (OSMajorVersion == 3 && OSMinorVersion > 2) +#define NeedVarargsPrototypes YES +#define NeedConstPrototypes YES +#define NeedWidePrototypes NO +#endif + +#include + +#if OSMajorVersion < 5 +#define SymbolTables -Wf,-XNp16000,-XNd16000,-XNh2000 +#define PexSymbolTables -Wf,-XNp15000,-XNd15000,-XNh2000 +#define ServerSymbolTables -Wf,-XNp8000,-XNh2000,-XNd8000 +#else +#define SymbolTables +#define PexSymbolTables +#define ServerSymbolTables +#endif + +/* this is for floating point, ANSI cpp */ +#if OSMajorVersion < 5 +/* Extra libraries provide : yp, sysV malloc, shared libc, and widechar */ +# define ExtraLibraries -lsun -lmalloc -lc_s -lw +# define sgiCCOptions -xansi -D__STDC__=1 -float +#else +# if OSMajorVersion < 6 +# define sgiCCOptions -xansi +# else +# define CppCmd cc -E +# ifdef Mips64Architecture +/* set Mips64Architecture in host.def. Usually don't need it but we + * (the X Consortium) want a 64-bit big-endian machine to test on. */ +# define sgiCCOptions -xansi -mips3 -64 +# define DlLibrary /**/ +# elif defined(MipsN32Architecture) +/* Set MipsN32Architecture to build "new" 32-bit objs with a 32-bit kernel. */ +# define sgiCCOptions -xansi -mips3 -n32 +# else +# define sgiCCOptions -xansi +# endif +# if OSMinorVersion > 1 +/* if you haven't installed patch 1361, 1403, or 1645 on IRIX 6.2 then you + * must add "#define HasPosixThreads NO" in your site.def or host.def file + */ +# ifndef HasPosixThreads +# define HasPosixThreads YES +# endif +# define ThreadedX HasPosixThreads +# define ThreadsLibraries -lpthread +/* + * Add "#define HasSgiThreadsPatch1403 NO" to your site.def or host.def if + * that's which patch you have. + */ +# ifndef HasSgiThreadsPatch1403 +# define HasSgiThreadsPatch1403 YES +# endif +# if (HasSgiThreadsPatch1403) +# define SystemMTDefines -D_POSIX_THREAD_SAFE_FUNCTIONS +# endif +# endif +# endif +/* SGI's -lsocket -lnsl is broken, at least in 5.2, so override here */ +# define ExtraLibraries /**/ +#endif + +#define DefaultCCOptions sgiCCOptions SymbolTables +#define PexCCOptions sgiCCOptions PexSymbolTables +#define ServerCCOptions sgiCCOptions ServerSymbolTables + +/* For SGI C++ compiler, need to search extra dirs in make depend */ +#ifndef CplusplusDependIncludes +#define CplusplusDependIncludes -I/usr/include/CC +#endif + +/* At SGI, we don't need this */ +#define ConstructMFLAGS NO /* build MFLAGS from MAKEFLAGS */ + +/* Used only for compressed fonts */ +#define UNCOMPRESSPATH /usr/bsd/uncompress + +/* Normally used only to conditionally chose the default font path order */ +#define PrimaryScreenResolution 96 + +/* Override Imake.tmpl's "-X" flag */ +#define LdCombineFlags -r + +/* Installation Build Parameters */ +#define InstKmemFlags -m 2711 -g sys + +#define ArCmd ar scq + +/* for xdm or anyone else to use */ +#define DefaultUserPath :/usr/sbin:/usr/bsd:/usr/bin:/bin:$(BINDIR):/etc:/usr/etc +#define DefaultSystemPath /usr/sbin:/usr/bsd:/bin:/etc:/usr/bin:/usr/etc:$(BINDIR) + +#ifndef BuildServer +#define BuildServer NO +#endif +#define ServerOSDefines -DDDXTIME +/* only need this for binary compatibility with their ddx */ +#ifndef Mips64Architecture +#define ServerExtraDefines -DNEED_LINEHELPER AllocateLocalDefines +#else +#define ServerExtraDefines -D_XSERVER64 -DNEED_LINEHELPER AllocateLocalDefines +#endif + +/* Changed to a single shell command for pmake/smake */ +#if OSMajorVersion < 5 +/* + * NormalLibObjCompile - compile fragment for a library object file + * do ld -x to remove line number symbols for libraries + */ +#define NormalLibObjCompile(options) ClearmakeOSName \ + $(RM) $@ $*.os \ @@\ + && $(CC) -c options $(CFLAGS) $*.c \ @@\ + && $(LD) $(LDSTRIPFLAGS) -r $@ -o $*.os \ @@\ + && $(MV) $*.os $@ +#endif + +#define LibObjCompile(dir,options) ClearmakeOSName \ + $(RM) $@ dir/$@ \ @@\ + && $(CC) -c $(CCOPTIONS) $(ALLDEFINES) options $*.c \ @@\ + && $(MV) $@ dir/$@ + +#ifndef HasMakefileSafeInclude +#define HasMakefileSafeInclude YES +#endif +#ifndef IncludeMakefile +#define IncludeMakefile(file) @@sinclude file +#endif + +/* needs to find nroff on the system to work */ +#ifndef ManKeywordsTarget +#define ManKeywordsTarget(manpath) @@\ +man_keywords:: @@\ + /usr/lib/makewhatis -M $(DESTDIR)manpath $(DESTDIR)manpath/whatis +#endif + +#define MotifDefines -DSYS_DIR -DPORT_NOVFORK -DNO_REGCOMP + +#ifndef CppFileTarget +#define CppFileTarget(dst,src,defs,deplist) @@\ +dst:: src deplist @@\ + RemoveFile($@) @@\ + ClearmakeOSName \ + $(CPP) CppNoLineInfoOption defs src | CppSedMagic >$@; @@\ + @@\ +clean:: @@\ + RemoveFiles(dst) +#endif /* CppFileTarget */ diff --git a/Xserver/config/cf/sgiLib.rules b/Xserver/config/cf/sgiLib.rules new file mode 100644 index 0000000..ef066d4 --- /dev/null +++ b/Xserver/config/cf/sgiLib.rules @@ -0,0 +1,166 @@ +XCOMM $XConsortium: sgiLib.rules /main/16 1996/09/28 18:11:04 rws $ + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#if OSMajorVersion < 5 +#ifndef SharedDataSeparation +#define SharedDataSeparation YES +#endif +#define SharedCodeDef -DSHAREDCODE +#define SharedLibraryDef -DATTSHAREDLIB +#define PositionIndependentCFlags -G 0 + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we don't hose people by having + * the library gone for long periods. + */ +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat3(lib,libname,_s)) @@\ + @@\ +Concat3(lib,libname,_s): sharedlib.o solist Concat(lib,libname.spec) $(EXTRALIBRARYDEPS) @@\ + $(RM) $@ $@.a \ @@\ + && cd down \ @@\ + && mkshlib -s Concat(up/lib,libname.spec) -t up/$@ -h up/$@.a \ @@\ + && ar rs up/$@.a sharedlib.o @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary($@.a) @@\ + @@\ +clean:: @@\ + $(RM) Concat3(lib,libname,_s) Concat3(lib,libname,_s.a) + +#define SharedLibraryDataTarget(libname,rev,salist) + +/* + * InstallSharedLibrary - generate rules to install the shared library. + * NOTE: file must be executable, hence "INSTBINFLAGS" + */ +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat3(lib,libname,_s) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat3(lib,libname,_s.a) $(DESTDIR)dest @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat3(lib,libname,_s) $(DESTDIR)dest + + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#define InstallSharedLibraryData(libname,rev,dest) @@\ +InstallTarget(install,Concat3(lib,libname,_s.a),$(INSTLIBFLAGS),dest) + +#else /* OSMajorVersion >= 5 */ + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#if OSMajorVersion < 6 +#define SharedLibraryLoadFlags -shared +#else +#ifndef Mips64Architecture +#define SharedLibraryLoadFlags -shared +#else +#define SharedLibraryLoadFlags -shared -mips3 +#endif +#endif +#endif +/* -KPIC is redundant, PIC is always used unless you specify -non_shared */ +#ifndef PositionIndependentCFlags +#define PositionIndependentCFlags -KPIC +#endif +#ifndef PositionIndependentCplusplusFlags +#define PositionIndependentCplusplusFlags -KPIC +#endif + +/* + * SGI's cc passes an undocumented flag to ld that causes it to look for + * -lX11 and force use of libX11.so.1. And it can't be turned off. Sigh. + * So we install one of those, too, in the shared library install target. + */ + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so) @@\ + if [ "libname" = X11 ]; then \ @@\ + RemoveFile(Concat($(DESTDIR)dest/lib,libname.so.1)); \ @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so.1);\ @@\ + fi + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ + +/* + * SGI's cc passes an undocumented flag to ld that causes it to look for + * -lX11 and force use of libX11.so.1. Sigh. So we make one of those, too, + * in the shared library build target. + */ + +#ifndef sgiX11soHack +#ifdef UseInstalled +#define sgiX11soHack(libname) /**/ +#else +#define sgiX11soHack(libname) if [ "libname" = X11 ]; then \ @@\ + RemoveFile($(BUILDLIBDIR)/Concat(lib,libname.so.1)); \ @@\ + cd $(BUILDLIBDIR); $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/$@ Concat(lib,libname.so.1); \ @@\ + fi +#endif +#endif /* sgiX11soHack */ + +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + (cd down; $(CCENVSETUP) $(LD) -o up/$@~ $(SHLIBLDFLAGS) -soname $@ solist $(REQUIREDLIBS)) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + sgiX11soHack(libname) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) so_locations + +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ + +#endif /* OsMajorVersion < 5 else */ diff --git a/Xserver/config/cf/sgiLib.tmpl b/Xserver/config/cf/sgiLib.tmpl new file mode 100644 index 0000000..a9c28f6 --- /dev/null +++ b/Xserver/config/cf/sgiLib.tmpl @@ -0,0 +1,14 @@ +XCOMM $XConsortium: sgiLib.tmpl /main/2 1996/09/28 16:12:44 rws $ + +/* + * SGI shared library template + */ +#define SharedXtReqs $(LDPRELIBS) $(XLIBONLY) -delay_load $(SMLIB) -delay_load $(ICELIB) +#define SharedXmuReqs $(LDPRELIBS) $(XTOOLONLYLIB) +#define SharedXawReqs -lw +#define SharedXpReqs $(LDPRELIBS) $(XLIB) + +#define SharedXReqs $(XTOOLLIB) $(XPLIB) $(XLIB) -lgen +#define SharedXmReqs $(LDPRELIBS) SharedXReqs +#define SharedMrmReqs $(LDPRELIBS) $(XMLIB) SharedXReqs +#define SharedUilReqs $(LDPRELIBS) $(MRESOURCELIB) $(XMLIB) SharedXReqs diff --git a/Xserver/config/cf/site.def b/Xserver/config/cf/site.def new file mode 100644 index 0000000..1b79fe8 --- /dev/null +++ b/Xserver/config/cf/site.def @@ -0,0 +1,165 @@ +XCOMM site: $XConsortium: site.def /main/revisionist/4 1996/12/31 08:02:07 kaleb $ +XCOMM site: $XFree86: xc/config/cf/site.def,v 3.17.2.1 1997/06/22 10:32:21 dawes Exp $ + +/*************************************************************************** + * * + * SITE-SPECIFIC DEFINITIONS * + * * + * This file contains two halves, one included before the vendor-specific * + * configuration file (.cf file), and one included after the .cf file. * + * The before-half should be protected by #ifdef BeforeVendorCF, and the * + * after-half should be protected by #ifdef AfterVendorCF. * + * * + * The before-half should only set things that the .cf file depends on. * + * For the .cf files shipped in this release, the main variables in this * + * category are HasGcc, HasGcc2, HasCplusplus, OSMajorVersion, * + * OSMinorVersion, and OSTeenyVersion. * + * * + * The after-half should contain all other definitions. For example, * + * place your ProjectRoot definition here. * + * * + * OS Major and Minor version numbers should be changed directly in the * + * .cf file, not overridden in site.def. * + * * + ***************************************************************************/ + +/* if you want host-specific customization, this is one way to do it */ +/* +#ifndef SiteIConfigFiles +#define SiteIConfigFiles $(IRULESRC)/host.def +#define LocalConfigFiles host.def +#endif +*/ + + +#ifdef BeforeVendorCF + +/* + * Include this for easy XFree86 customisations + */ + +/*================================================================ + BEGIN ORL VNC modification + Use vnc.def instead of xf86site.def and host.def */ + +/* REMOVE +#ifndef SiteIConfigFiles +#define SiteIConfigFiles $(IRULESRC)/xf86site.def $(IRULESRC)/host.def +#endif + +#include + +#include +*/ + +#define SiteIConfigFiles $(IRULESRC)/vnc.def +#include + +/* END ORL VNC modification +================================================================*/ + +/* On systems where cpp doesn't expand correctly macros in include directives + * the two following macros need to be defined directly (where "X11" is + * really whatever the TopLevelProject macro is defined to be). + */ +# if defined(AIXArchitecture) || defined(SVR4Architecture) || \ + defined(SCOArchitecture) || defined(Win32Architecture) || \ + defined(UXPArchitecture) || defined(SunArchitecture) || \ + defined(i386IscArchitecture) +# ifndef ProjectRulesFile +# define ProjectRulesFile +# endif +# ifndef ProjectTmplFile +# define ProjectTmplFile +# endif +# endif + +/* +#ifndef HasGcc2 +#define HasGcc2 YES +#endif +*/ + +#endif /* BeforeVendorCF */ + +#ifdef AfterVendorCF + +/*================================================================ + BEGIN ORL VNC modification + Define ProjectRoot in vnc.def */ + +/* REMOVE +#ifndef ProjectRoot +#define ProjectRoot /usr/X11R6 +#endif +*/ + +/* END ORL VNC modification +================================================================*/ + +/* Only set HasXdmAuth to YES if you have a Wraphelp.c file. */ +#define HasXdmAuth YES + +/* #define PreIncDir DefaultGccIncludeDir */ + +/* +#if defined(SunArchitecture) && defined(SparcArchitecture) +#define HasCodeCenter YES +#ifndef SVR4Architecture +#define HasTestCenter YES +#endif +#endif +*/ + +/* +#ifdef __hp9000s800 +#define HasCodeCenter YES +#endif +*/ + +/* +#if defined(SunArchitecture) && defined(SparcArchitecture) && !defined(SVR4Architecture) +#define HasPurify YES +#endif +*/ + +/* +#define HasSentinel YES +*/ + +/* +#undef DefaultUserPath +#define DefaultUserPath /bin:/usr/bin:$(BINDIR):/usr/ucb:/usr/local/bin +*/ + + +/* You do NOT need SetUID if you only run the server under xdm */ +/* You MAY need SetUID if users run the server by hand or under xinit */ +/* Consult your system administrator before making the X server setuid */ +/* +#if defined(SunArchitecture) && OSMajorVersion > 4 +#define InstallXserverSetUID YES +#endif +*/ + +/* You do NOT need SetUID if you only run the server under xdm */ +/* You MAY need SetUID if users run the server by hand or under xinit */ +/* Consult your system administrator before making the X server setuid */ +/* +#ifdef XFree86Version +#define InstallXserverSetUID YES +#endif +*/ + +/*================================================================ + BEGIN ORL VNC modification + No host.def */ + +/* REMOVE +#include +*/ + +/* END ORL VNC modification +================================================================*/ + +#endif /* AfterVendorCF */ diff --git a/Xserver/config/cf/sony.cf b/Xserver/config/cf/sony.cf new file mode 100644 index 0000000..02821b3 --- /dev/null +++ b/Xserver/config/cf/sony.cf @@ -0,0 +1,103 @@ +XCOMM platform: $XConsortium: sony.cf /main/69 1996/09/29 18:19:36 kaleb $ + +#ifdef SonyBsdArchitecture + +#ifndef OSName +#define OSName NEWS-OS 4.2.1C +#endif +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 2 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 1 +#endif +#define SetTtyGroup YES +#define HasVoidSignalReturn NO +#define HasNdbm YES +#define DirFailPrefix - +#define InstKmemFlags -g kmem -m 2711 +#define DefaultUserPath :/bin:/usr/bin:$(BINDIR):/usr/ucb:/usr/sony/bin: +#define DefaultSystemPath /etc:/usr/etc:/bin:/usr/bin:$(BINDIR):/usr/ucb:/usr/sony/bin: +#ifdef MipsArchitecture +#define ExtraLibraries -lmld +#define LintOpts -ax +#define LintLibFlag -o +#define DefaultCCOptions -Wf,-XNh2000,-XNd6000,-XNp10000 -Olimit 2000 +#define PexCCOptions -Wf,-XNh2000,-XNd15000,-XNp15000 -Olimit 2000 +#else +#define HasFortran YES +#endif +#if OSMajorVersion >= 4 +#define HasShm YES +#define HasPutenv YES +#define HasSecureRPC YES +#define XdmDir /etc/xdm +#if OSMinorVersion >= 1 +#define HasBsearch YES +#else +#define HasBsearch NO +#endif +#else +#define StandardDefines -DNOSTDHDRS +#define HasBsearch NO +#endif + +#else + +#ifndef OSName +#define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +#define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +#define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +#define BootstrapCFlags -Dsony +#define SystemV4 YES +#define HasVFork NO +#define CcCmd /usr/bin/cc +#define LdCmd /usr/bin/ld +#if OSMajorVersion >= 6 +#define DefaultCCOptions -Xa -Wf,-XNp9000,-XNd6000 +#define PexCCOptions -Xa -Wf,-XNp15000,-XNd15000 +#define SharedLibraryLoadFlags -G -rpath $(USRLIBDIRPATH) +#define PositionIndependentCFlags -K PIC -Wx,-G 0 +#define PositionIndependentCplusplusFlags -K PIC -Wx,-G 0 +#define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) +#define FixupLibReferences() /**/ +#include +#else +#define DefaultCCOptions -Wf,-XNp9000,-XNd6000 +#define PexCCOptions -Wf,-XNp15000,-XNd15000 +#endif + +#endif + +/* + * SONY C++ compiler is based on vanilla cfront, which means it + * refuses to compile files unless their names end in ".C". We + * have to completely override .SUFFIXES to avoid using the builtin + * .C to .o rule in cases where the link to foo.C is already there, + * because the builtin rule doesn't use the right compilation flags. + */ + +.SUFFIXES: +.SUFFIXES: .o .c .y .l .s .sh .h .f .Y .L .cxx + +#define NormalLibObjCplusplusCompile(options) test -r $*.C || $(LN) $*.CCsuf $*.C @@\ + $(CXX) -c $(CXXFLAGS) options $*.C + +XCOMM operating system: OSName + +#ifndef BuildServer +#define BuildServer NO +#endif diff --git a/Xserver/config/cf/sun.cf b/Xserver/config/cf/sun.cf new file mode 100644 index 0000000..2bb4c68 --- /dev/null +++ b/Xserver/config/cf/sun.cf @@ -0,0 +1,385 @@ +XCOMM platform: $TOG: sun.cf /main/163 1997/06/08 20:08:23 kaleb $ + + + + +XCOMM platform: $XFree86: xc/config/cf/sun.cf,v 3.31.2.7 1997/12/01 13:31:17 dawes Exp $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +/* + * Compiler setup. This sun.cf file knows what options to use with + * certain compilers, including Sun C, CenterLine C, and gcc. It + * also understands how to set some of the options for various C++ + * compilers, including Sun C++ and CenterLine C++. + * + * === C Compiler Setup ========================================== + * + * For SunPro C, define HasSunC to YES in site.def. + * For CenterLine C, define HasCenterLineC to YES in site.def + * For gcc or gcc2, define HasGcc or HasGcc2 to YES in site.def + * For other compilers, define HasSunC to NO in site.def, then + * provide appropriate values for the various compiler related + * configuration varibles used here. + * + * If you say you have the SunPro C compiler, we assume you have + * version 2.0.x of the compiler. If you have version 3.0.x instead, + * define CCompilerMajorVersion as 3 in site.def + * + * If you don't tell us which C compiler you have, we assume you have + * the SunPro C compiler under Solaris 2.x, and the bundled /bin/cc + * under SunOS 4.1.x + * + * === C++ Compiler Setup ========================================== + * + * For SunPro C++, define HasSunCplusplus to YES in site.def + * For CenterLine C++, define HasCenterLineCplusplus to YES in site.def + * For Gnu g++ 2.6.x, define HasGcc2ForCplusplus to YES in site.def + * For other compilers, define HasCplusplus to YES in site.def, and + * check to see if you need to provide values for CplusplusOptions + * and/or DefaultCplusplusOptions. + * + * In any case, you may also need to set CplusplusDependIncludes. + * + * If you say you have the SunPro C++ compiler, we assume you have + * version 3.0.x of the compiler. If you have version 4.0.x instead, + * define CplusplusCompilerMajorVersion as 4 in site.def. + * + */ + +#ifndef HasGcc2 +#define HasGcc2 NO +#endif +#ifndef HasGcc +#define HasGcc HasGcc2 +#endif + +#ifndef HasSunC +# if (HasCenterLineC || HasGcc || HasGcc2 || OSMajorVersion < 5) +# define HasSunC NO +# else +# define HasSunC YES +# endif +#endif + +#if HasSunC +# ifndef CCompilerMajorVersion +# define CCompilerMajorVersion 3 +# define DefaultCDebugFlags -xO3 +# define OptimizedCDebugFlags -xO3 +# endif +#endif + +#if HasSunCplusplus +# ifndef HasCplusplus +# define HasCplusplus YES +# define OptimizedCplusplusDebugFlags -xO3 +# endif +# ifndef CplusplusCompilerMajorVersion +# define CplusplusCompilerMajorVersion 4 +# endif +#endif + +#if HasCenterLineC +# ifndef CcCmd +# define CcCmd clcc +# endif +#endif + +#if HasCenterLineCplusplus +# ifndef HasCplusplus +# define HasCplusplus YES +# endif +# ifndef DefaultCplusplusOptions +# define DefaultCplusplusOptions -Xa +# endif +# ifndef CplusplusOptions +# define CplusplusOptions -Xa +# endif +#endif + + +#if OSMajorVersion < 4 || (OSMajorVersion == 4 && OSMinorVersion < 1) +/* We do not guarantee this will work */ +# define BootstrapCFlags -DNOSTDHDRS +# define StandardDefines -DNOSTDHDRS +# define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC +#endif + +#if OSMajorVersion == 4 +# if OSMinorVersion == 1 +# define HasPoll YES +# endif +# if OSMinorVersion > 1 || (OSMinorVersion == 1 && OSTeenyVersion > 1) +/* You ALSO need this if you have Sun ld patch 100170-06 or later to 4.1.1 */ +# define SunPost411FCSLd YES +# endif +#endif + +#ifdef i386Architecture +# if OSMajorVersion > 4 +# define ServerExtraDefines AllocateLocalDefines XFree86ServerDefines -D__EXTENSIONS__ +# define ServerOSDefines XFree86ServerOSDefines +# else +# define ServerExtraDefines AllocateLocalDefines +# define ServerOSDefines -DDDXOSINIT +# endif +#else +# define ServerExtraDefines AllocateLocalDefines +# define ServerOSDefines -DDDXOSINIT +#endif + +#define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT + +#if OSMajorVersion > 4 +#if HasSunC +/* + * Assume /opt/SUNWspro/bin/ contains symlinks to the appropriate tools + */ +#ifndef CcCmd +# define CcCmd /opt/SUNWspro/bin/cc +#endif +#ifndef CplusplusCmd +# define CplusplusCmd /opt/SUNWspro/bin/CC +#endif +#ifndef CplusplusFilt +# define CplusplusFilt /opt/SUNWspro/bin/c++filt +#endif +#ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/opt/SUNWspro/SC3.0/include/CC +#endif +#endif + +# if HasSunC && (CCompilerMajorVersion < 3) +# define BootstrapCFlags -DSVR4 +# else +# define BootstrapCFlags /* none needed */ +# endif +# ifndef XawI18nDefines +# if OSMinorVersion < 4 +# define XawI18nDefines -DHAS_WCTYPE_H -DHAS_ISW_FUNCS +# else +# define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +# endif +# endif +# if OSMinorVersion > 3 +# define InstallCmd /usr/ucb/install +# endif +# ifdef i386Architecture +# define StandardDefines -Dsun -Di386 -DSVR4 -D__i386 +# define ToolkitStringsABIOptions -intelabi +# else +# define StandardDefines -Dsun -DSVR4 +# define ToolkitStringsABIOptions -sparcabi +# define HasPlugin YES +# endif +# define ExtraLibraries -lsocket -lnsl +# if OSMinorVersion > 1 +# define ThreadedX YES +# define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXUSE_NETDB_R_API +# if HasSunC && CCompilerMajorVersion > 2 +# define ThreadsCompileFlags -mt +# else +# define SystemMTDefines -D_REENTRANT +# define ThreadsLibraries -lthread +# endif +# if HasSunCplusplus && CplusplusCompilerMajorVersion > 3 +# define ThreadsCplusplusCompileFlags -mt +# else +# define CplusplusSystemMTDefines -D_REENTRANT +# define ThreadsCplusplusLibraries -lthread +# endif +# endif /* OSMinorVersion > 1 */ +# ifndef UseExportLists +# if OSMinorVersion > 4 +# define UseExportLists YES +# else +# define UseExportLists NO +# endif +# endif +# define HasVFork NO +# define InstKmemFlags -g sys -m 2711 +# define ShLibIncludeFile +/* + * Set flags for position independent code before including sv4Lib.rules + * if the compiler in use doesn't use standard SVR4 flags + */ +# if HasSunC || HasCenterLineC +# define PositionIndependentCFlags -Kpic +# define LargePositionIndependentCFlags -KPIC +# endif +# if HasSunCplusplus || HasCenterLineCplusplus +# define PositionIndependentCplusplusFlags -pic +# define LargePositionIndependentCplusplusFlags -PIC +# endif +#else /* not OSMajorVersion > 4 */ +#define InstKmemFlags -g kmem -m 2711 +#include +#endif /* OSMajorVersion > 4 (else) */ + +#define BuildLibPathVar LD_LIBRARY_PATH +#define HasNdbm YES +#define HasShm YES +#define HasSecureRPC YES +#define SetTtyGroup YES +#define HasPutenv YES +#ifndef i386Architecture +# ifndef Xsun24Server +# define Xsun24Server NO /* color, mono, multiple depths */ +# endif +# ifndef XsunServer +# define XsunServer YES /* color and mono, 8 bit only */ +# endif +# ifndef XsunMonoServer +# define XsunMonoServer NO /* monochrome only */ +# endif +# ifndef BuildPexExt +# define BuildPexExt (XsunServer || Xsun24Server) +# endif +#endif /* not i386Architecture */ + +#if (OSMajorVersion > 4) && defined(i386Architecture) +#ifndef HasSolx86ApertureDriver +#define HasSolx86ApertureDriver YES +#endif +#endif + +#if HasGcc +# if OSMajorVersion > 4 && defined(i386Architecture) +# ifndef DefaultCCOptions +# if UseInstalled +# define DefaultCCOptions -DNO_ASM +# else +# if OSMinorVersion > 3 +# define DefaultCCOptions -ansi -pedantic -DNO_ASM +# else +# define DefaultCCOptions -DNO_ASM +# endif +# endif +# endif +# endif +# if HasGcc2 +# ifndef OptimizedCDebugFlags +# ifdef i386Architecture +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# else +# define OptimizedCDebugFlags -O2 +# endif +# endif +# else +# define SharedLibraryCcCmd cc +# define ExtraLoadFlags -B/usr/bin/ +# define AllocateLocalDefines /**/ + +.c.o: + ClearmakeOSName $(CC) -c $(CFLAGS) $*.c + +# endif /* HasGcc2 (else) */ + +#else /* not HasGcc */ + +# define AllocateLocalDefines -DINCLUDE_ALLOCA_H + +/* Set up compiler-dependent options for Sun C */ + +# if HasSunC +# ifdef Sun3Architecture +# ifndef DefaultCCOptions +# define DefaultCCOptions -f68881 -pipe +# endif +# else /* not defined(Sun3Architecture) */ +# if OSMajorVersion < 5 +# ifndef DefaultCCOptions +# define DefaultCCOptions -pipe +# endif +# else /* OSMajorVersion >= 5*/ +# ifndef DefaultCCOptions +# define DefaultCCOptions -Xa +# endif +# endif +# endif +# endif + +/* Set compiler-dependent options for CenterLine C */ + +# if HasCenterLineC +# ifndef DefaultCCOptions +# define DefaultCCOptions -Xt -w1 -DANSICPP -U__HIGHC__ +# endif +# ifndef NeedConstPrototypes +# define NeedConstPrototypes YES +# endif +# ifndef NeedNestedPrototypes +# define NeedNestedPrototypes YES +# endif +# ifndef NeedVarargsPrototypes +# define NeedVarargsPrototypes YES +# endif +# endif + + +# define PexCCOptions DefaultCCOptions + +#endif /* HasGcc (else) */ + +#if OSMajorVersion < 5 +# define SharedAllocateLocalDefines -DINCLUDE_ALLOCA_H +# define LibraryCCOptions /* don't want special floating point */ +#endif /* OSMajorVersion < 5 */ + +#if OSMajorVersion > 4 +# include +#endif + +#ifndef ManKeywordsTarget +# define ManKeywordsTarget(manpath) @@\ +man_keywords:: @@\ + catman -M $(DESTDIR)manpath -w +#endif + +#if !defined(UsePamLibrary) +# if (OSMajorVersion > 5) || ((OSMajorVersion == 5) && (OSMinorVersion >= 4)) +# define UsePamLibrary YES +# endif +#endif + +#define MotifDefines \ + -DNO_ISDIR -DNO_REGCOMP -DNO_ALLOCA -DBOGUS_MB_MAX -DNO_CONST +#define PamUnixDefines -DPAM_NIS +#define TtLargePICTable YES +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DNO_REGCOMP +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#define DtWidgetDefines DtSearchDefines +#define DtPrintDefines DtSearchDefines + +#define baseDtMailDefines \ + -DSunOS=OSMajorVersion\#\#OSMinorVersion -DMMAP_NORESERVE -DSPRO_V2 +#ifndef i386Architecture +# define DtMailDefines baseDtMailDefines +#else +# define DtMailDefines -DBIG_ENDIAN baseDtMailDefines +#endif + +#define ArchitectureDefines -DSUN_ARCHITECTURE + +#define TtClientExtraLibs ExtraLibraries -ldl -lintl + +#define ExportListGenSource elistgen.sun +#define ShlibExportListOpt(filename) -M filename + +#define CdeProjectDefines \ + -DMULTIBYTE -DNLS16 -DMESSAGE_CAT -D_XOPEN_VERSION=4 \ + -D_XOPEN_SOURCE -D__EXTENSIONS__ \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion diff --git a/Xserver/config/cf/sunLib.rules b/Xserver/config/cf/sunLib.rules new file mode 100644 index 0000000..a3e7554 --- /dev/null +++ b/Xserver/config/cf/sunLib.rules @@ -0,0 +1,111 @@ +XCOMM $XConsortium: sunLib.rules /main/15 1996/09/28 16:13:16 rws $ + +/* + * SunOS shared library rules + */ + +#ifndef HasSharedLibraries +#define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +#define SharedDataSeparation YES +#endif +#ifndef SharedCodeDef +#define SharedCodeDef -DSHAREDCODE +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef -DSUNSHLIB +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -assert pure-text +#endif +#ifndef PositionIndependentCFlags +#if HasGcc2 +#define PositionIndependentCFlags -fpic +#else +#define PositionIndependentCFlags -pic +#endif +#endif +#ifndef PositionIndependentCplusplusFlags +#if HasGcc2ForCplusplus +#define PositionIndependentCplusplusFlags -fpic +#else +#define PositionIndependentCplusplusFlags -pic +#endif +#endif + +/* + * SharedDSLibDependencies - shared library dependencies with data separation + */ +#ifndef SharedDSLibDependencies +#define SharedDSLibDependencies(libname,libsource,revname) _UseCat($(USRLIBDIR)/lib,libsource/lib,libname.sa.$(revname)) +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#define InstallSharedLibrary(libname,rev,dest) @@\ +InstallTarget(install,Concat(lib,libname.so.rev),$(INSTLIBFLAGS),dest) +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) @@\ +install:: Concat(lib,libname.sa.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.sa.rev) $(DESTDIR)dest @@\ + RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,libname.sa.rev)) +#endif /* InstallSharedLibraryData */ + +#if HasPurify +#define PureCleanSharedLibrary(libname,rev) @@\ +clean clean.pure:: @@\ + $(RM) Concat3(lib,libname,_pure_*.so.rev) +#else +#define PureCleanSharedLibrary(libname,rev) /**/ +#endif + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + LinkBuildLibrary($@) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) @@\ + @@\ +PureCleanSharedLibrary(libname,rev) +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) @@\ +AllTarget(Concat(lib,libname.sa.rev)) @@\ + @@\ +Concat(lib,libname.sa.rev): salist @@\ + $(RM) $@ @@\ + $(AR) $@ salist @@\ + RanLibrary($@) @@\ + LinkBuildLibrary($@) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.sa.rev) +#endif /* SharedLibraryDataTarget */ diff --git a/Xserver/config/cf/sunLib.tmpl b/Xserver/config/cf/sunLib.tmpl new file mode 100644 index 0000000..7eb4fa1 --- /dev/null +++ b/Xserver/config/cf/sunLib.tmpl @@ -0,0 +1,91 @@ +XCOMM $TOG: sunLib.tmpl /main/45 1997/02/13 13:52:59 kaleb $ + + + + +XCOMM $XFree86: xc/config/cf/sunLib.tmpl,v 3.7.2.1 1997/05/03 09:43:09 dawes Exp $ + +/* + * SunOS shared library template + */ + +#if OSMajorVersion <= 4 + +# if SunPost411FCSLd +# define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) +# endif + +#ifndef SharedX11Rev +#define SharedX11Rev 4.30 +#endif +#ifndef SharedOldXRev +#define SharedOldXRev 4.20 +#endif +#ifndef SharedXtRev +#define SharedXtRev 4.20 +#endif +#ifndef SharedXawRev +#define SharedXawRev 6.10 +#endif +#ifndef SharedXmuRev +#define SharedXmuRev 4.20 +#endif +#ifndef SharedXextRev +#define SharedXextRev 4.40 +#endif +#ifndef SharedXiRev +#define SharedXiRev 4.20 +#endif +#ifndef SharedXtstRev +#define SharedXtstRev 1.20 +#endif +#ifndef SharedPexRev +#define SharedPexRev 1.10 +#endif + +#else /* else it's Solaris */ + +# if ThreadedX +# if OSMinorVersion > 3 +# define SharedThreadReqs /**/ +# define SharedX11Reqs /**/ +# endif +# endif +# define SharedXmuReqs $(LDPRELIBS) $(XTOOLLIB) $(XLIB) +# define FixupLibReferences() /**/ + +# define SharedPamReqs -ldl +# define SharedPamUnixReqs $(LDPRELIBS) -lpam $(LDPOSTLIBS) -lnsl -lmp -lcmd SharedThreadReqs +# define SharedPamSampleReqs $(LDPRELIBS) -lpam $(LDPOSTLIBS) SharedThreadReqs +# define SharedPamDialAuthReqs $(LDPRELIBS) -lpam $(LDPOSTLIBS) SharedThreadReqs +# define SharedPamRhostsAuthReqs $(LDPRELIBS) -lpam $(LDPOSTLIBS) -lsocket SharedThreadReqs +# define SharedPamDceAuthReqs $(LDPRELIBS) -lpam $(LDPOSTLIBS) -ldce -lnsl -lsocket SharedThreadReqs +# define SharedTtReqs -lnsl -lsocket -lintl -ldl -lc -lw +# define SharedDtSvcReqs $(LDPRELIBS) $(TTLIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(LDPOSTLIBS) SharedThreadReqs -lgen -lc -lsocket -lnsl -ldl +# define SharedDtMmdbReqs $(LDPRELIBS) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(LDPOSTLIBS) SharedThreadReqs -lgen -lc -lsocket -lnsl -ldl +# define SharedDtSearchReqs -lm -lc +# define SharedDtWidgetReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) -lintl $(LDPOSTLIBS) -lw -lm -lc +# define SharedDtHelpReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(LDPOSTLIBS) -lw -lgen -lm -lc +# define SharedDtPrintReqs $(LDPRELIBS) $(DTSVCLIB) $(DTHELPLIB) $(XMLIB) -lintl $(LDPOSTLIBS) -lw -lm -lc +# define SharedDtTermReqs SharedDtHelpReqs -ldl -lgen +# define SharedDtMrmReqs $(LDPRELIBS) $(DTTERMLIB) $(DTPRINTLIB) $(DTHELPLIB) $(DTWIDGETLIB) $(MRESOURCELIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB) $(LDPOSTLIBS) -lw -lsocket -lnsl -lc +# define SharedDtMailReqs $(LDPRELIBS) -lw $(CXXLIB) -lm -ldl +# define SharedCsaReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXmReqs + +# define DtClientExtraLibs -lintl + +/* The inbuf paramter to iconv(3) is "const char**", not "char **" */ +ICONV_INBUF_DEFINE = -DICONV_INBUF_CONST=const + +# if HasCplusplus +# if HasGcc2ForCplusplus +UNSHARED_CXXLIB = -static -lC +# else +UNSHARED_CXXLIB = -Bstatic -lC -Bdynamic -lm -lc -Bstatic +# endif +# endif + +# define IafSysLib /**/ +# include + +#endif diff --git a/Xserver/config/cf/sv3Lib.rules b/Xserver/config/cf/sv3Lib.rules new file mode 100644 index 0000000..312b101 --- /dev/null +++ b/Xserver/config/cf/sv3Lib.rules @@ -0,0 +1,232 @@ +XCOMM $XConsortium: sv3Lib.rules /main/1 1996/10/31 14:47:33 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/sv3Lib.rules,v 3.1 1996/12/27 06:50:27 dawes Exp $ +/* + * SVR3 shared library rules + * Copyright (c) 1992, 1993 by Thomas Wolfram, Berlin, Germany + * Author: Thomas Wolfram, thomas@aeon.in-berlin.de, wolf@prz.tu-berlin.de + * Conception derived partially from work of Thomas Roell + */ + +#ifndef HasSharedLibraries +#define HasSharedLibraries NO /* JUST FOR NOW */ +#endif +#ifndef ForceNormalLib +#define ForceNormalLib YES +#endif + +#ifndef SharedLibSM +#define SharedLibSM HasSharedLibraries +#endif +#ifndef SharedLibXau +#define SharedLibXau HasSharedLibraries +#endif +#ifndef SharedLibXdmcp +#define SharedLibXdmcp HasSharedLibraries +#endif +#ifndef SharedLibXi +#define SharedLibXi HasSharedLibraries +#endif +#ifndef SharedLibXie +#define SharedLibXie HasSharedLibraries +#endif +#ifndef SharedLibXtst +#define SharedLibXtst HasSharedLibraries +#endif +#ifndef SharedLibPhigs +#define SharedLibPhigs HasSharedLibraries +#endif +#ifndef SharedLibICE +#define SharedLibICE HasSharedLibraries +#endif +#ifndef SharedLibFS +#define SharedLibFS HasSharedLibraries +#endif +#ifndef SharedLibX11 +#define SharedLibX11 HasSharedLibraries +#endif +#ifndef SharedOldX +#define SharedOldX NO /* it's obsolete */ +#endif +#ifndef SharedLibXt +#define SharedLibXt HasSharedLibraries +#endif +#ifndef SharedLibXaw +#define SharedLibXaw HasSharedLibraries +#endif +#ifndef SharedLibXmu +#define SharedLibXmu HasSharedLibraries +#endif +#ifndef SharedLibXext +#define SharedLibXext HasSharedLibraries +#endif +#ifndef SharedLibPex +#define SharedLibPex NO +#endif + +#ifndef SharedDataSeparation +#define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +#define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +#define SharedLibraryDef -DSVR3SHLIB +#endif +#ifndef ShLibIncludeFile +#define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +#define SharedLibraryLoadFlags -q +#endif + +#ifndef PositionIndependentCFlags +# if HasGcc2 +# define PositionIndependentCFlags -msvr3-shlib +# else +# define PositionIndependentCFlags /**/ +# endif +#endif + +#ifndef PositionIndependentCplusplusFlags +# if HasGcc2 +# define PositionIndependentCplusplusFlags -msvr3-shlib +# else +# define PositionIndependentCplusplusFlags /**/ +# endif +#endif + +#if 0 +/* + * LibCleanDir - helper for cleaning library object subdirectories + */ +#ifndef LibCleanDir +#define LibCleanDir(dir) -@if [ -d dir ]; then \ @@\ + (set -x; cd dir; $(RM) *.o *.sd); else exit 0; fi +#endif + +/* + * SharedLibObjCompile - compile fragment for shared objects + */ +#ifndef SharedLibObjCompile +#define SharedLibObjCompile(options) $(RM) shared/$@ @@\ + cat import.h $*.c >_$*.c @@\ + $(CC) -c $(ANSICCOPTIONS) $(CCOPTIONS) $(ALLDEFINES) options \ @@\ +$(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS) $(CDEBUGFLAGS) _$*.c @@\ + $(MV) _$*.o shared/$@ @@\ + $(RM) _$*.c +#endif + +/* + * NormalSharedLibObjCompile - compile fragment for shared object when + * a normal library is not being built + */ +#ifndef NormalSharedLibObjCompile +#define NormalSharedLibObjCompile(options) $(RM) $@ @@\ + cat import.h $*.c >_$*.c @@\ + $(CC) -c $(CFLAGS) options $(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS) _$*.c @@\ + $(MV) _$*.o $@ @@\ + $(RM) _$*.c +#endif + + +#ifndef LibraryObjectRule +#define LibraryObjectRule() @@\ +all:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _SharedLibMkdir() @@\ + @@\ +includes:: @@\ + _DebuggedLibMkdir() @@\ + _ProfiledLibMkdir() @@\ + _SharedLibMkdir() @@\ + @@\ +.c.o: @@\ + _DebuggedObjCompile($(_NOOP_)) @@\ + _ProfiledObjCompile($(_NOOP_)) @@\ + _SharedObjCompile($(_NOOP_)) @@\ + _NormalObjCompile($(_NOOP_)) @@\ + @@\ +.SUFFIXES: .sd @@\ +.c.sd: @@\ + _SharedDatCompile(-DSVR3SHDAT) @@\ + @@\ +clean:: @@\ + _DebuggedCleanDir() @@\ + _ProfiledCleanDir() @@\ + _SharedCleanDir() @@\ + +#endif /* LibraryObjectRule */ + + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#if StripInstalledPrograms +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat3(lib,libname,_s.a) $(DESTDIR)dest @@\ + MakeDir($(DESTDIR)$(LIBDIR)/shlib) @@\ + $(INSTALL) -c $(INSTPGMFLAGS) Concat(lib,libname.rev) \ @@\ + $(DESTDIR)$(LIBDIR)/shlib @@\ + strip Concat($(DESTDIR)$(LIBDIR)/shlib/lib,libname.rev) @@\ + mcs -d Concat($(DESTDIR)$(LIBDIR)/shlib/lib,libname.rev) +#else +#define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat3(lib,libname,_s.a) $(DESTDIR)dest @@\ + MakeDir($(DESTDIR)$(LIBDIR)/shlib) @@\ + $(INSTALL) -c $(INSTPGMFLAGS) Concat(lib,libname.rev) \ @@\ + $(DESTDIR)$(LIBDIR)/shlib +#endif + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +#define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +#define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.rev)) @@\ + @@\ +Concat(lib,libname.rev): solist @@\ + $(RM) $@ Concat3(lib,libname,_s.a) @@\ + $(CPP) -DDOWN=down ConnectionFlags ShlibDefines Concat(lib,libname.def) | \ @@\ + sed -e '/^# *[0-9][0-9]* *.*$$/d; /^$$/d' >spec.cpp @@\ + sed -e '1,/#libraries/d; /#externals/,$$d' spec.cpp | \ @@\ + nawk '{ system("ar x " $$1 " " $$2 )}' @@\ + echo "#target " Concat($(LIBDIR)/shlib/lib,libname.rev) >spec @@\ + sed -e '/#libraries/,$$d' spec.cpp >>spec @@\ + mkshlib -s spec -t $@ -h Concat3(lib,libname,_s.a) $(SHLIBLDFLAGS) @@\ + ar rulv Concat3(lib,libname,_s.a) `sed -e '1,/#externals/d' spec.cpp` @@\ + $(RM) spec.cpp spec @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.rev) Concat3(lib,libname,_s.a) + +#endif /* SharedLibraryTarget */ + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +#define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ + +#endif diff --git a/Xserver/config/cf/sv3Lib.tmpl b/Xserver/config/cf/sv3Lib.tmpl new file mode 100644 index 0000000..7935321 --- /dev/null +++ b/Xserver/config/cf/sv3Lib.tmpl @@ -0,0 +1,77 @@ +XCOMM $XConsortium: sv3Lib.tmpl /main/1 1996/10/31 14:47:35 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/sv3Lib.tmpl,v 3.1 1996/12/27 06:50:28 dawes Exp $ +/* + * SVR3 shared library template + * Copyright (c) 1992, 1993 by Thomas Wolfram, Berlin, Germany + * Author: Thomas Wolfram, thomas@aeon.in-berlin.de, wolf@prz.tu-berlin.de + * Conception derived partially from work of Thomas Roell + */ + +#ifndef SharedXlibRev +#define SharedXlibRev 6.0.0 +#endif +#ifndef SharedOldXRev +#define SharedOldXRev 6.0 +#endif +#ifndef SharedXtRev +#define SharedXtRev 6.0 +#endif +#ifndef SharedXawRev +#define SharedXawRev 6.0 +#endif +#ifndef SharedXmuRev +#define SharedXmuRev 6.0 +#endif +#ifndef SharedXextRev +#define SharedXextRev 6.0 +#endif +#ifndef SharedXinputRev +#define SharedXinputRev 6.0 +#endif +#ifndef SharedPexRev +#define SharedPexRev 1.0 +#endif + + SHLIBLDFLAGS = SharedLibraryLoadFlags + PICFLAGS = PositionIndependentCFlags + +/* + * and now a little bit of magic for using imake without source tree; if we + * are using shared libraries, we really do not need to depend on anything + */ +#if SharedLibXext + DEPEXTENSIONLIB = _UseCat($(USRLIBDIR),$(EXTENSIONSRC)/lib,/libXext_s.a) + EXTENSIONLIB = LoaderLibPrefix _Use(-lXext_s, $(DEPEXTENSIONLIB)) +#endif +#if SharedLibX + DEPXLIB = $(DEPEXTENSIONLIB) _UseCat($(USRLIBDIR),$(XLIBSRC),/libX11_s.a) + XLIB = $(EXTENSIONLIB) LoaderLibPrefix _Use(-lX11_s,$(XLIBSRC)/libX11_s.a) +#endif +#if SharedLibXmu + DEPXMULIB = _UseCat($(USRLIBDIR),$(XMUSRC),/libXmu_s.a) + XMULIB = LoaderLibPrefix _Use(-lXmu_s,$(DEPXMULIB)) +#endif +#if SharedOldLibX + DEPOLDXLIB = _UseCat($(USRLIBDIR),$(OLDXLIBSRC),/liboldX_s.a) + OLDXLIB = LoaderLibPrefix _Use(-loldX_s,$(DEPOLDXLIB)) +#endif +#if SharedLibXt + DEPXTOOLLIB = _UseCat($(USRLIBDIR),$(TOOLKITSRC),/libXt_s.a) + XTOOLLIB = LoaderLibPrefix _Use(-lXt_s,$(DEPXTOOLLIB)) +#endif +#if SharedLibXaw + DEPXAWLIB = _UseCat($(USRLIBDIR),$(AWIDGETSRC),/libXaw_s.a) + XAWLIB = LoaderLibPrefix _Use(-lXaw_s,$(DEPXAWLIB)) +#endif +#if SharedLibXinput + DEPXILIB = _UseCat($(USRLIBDIR),$(XILIBSRC),/libXi_s.a) + XILIB = LoaderLibPrefix _Use(-lXi_s,$(DEPXILIB)) +#endif +#if SharedLibPhigs + DEPPHIGSLIB = _UseCat($(USRLIBDIR),$(PHIGSLIBSRC),/libphigs_s.a) + PHIGSLIB = LoaderLibPrefix _Use(-lphigs_s,$(DEPPHIGSLIB)) +#endif + diff --git a/Xserver/config/cf/sv4Lib.rules b/Xserver/config/cf/sv4Lib.rules new file mode 100644 index 0000000..3860f0d --- /dev/null +++ b/Xserver/config/cf/sv4Lib.rules @@ -0,0 +1,137 @@ +XCOMM $XConsortium: sv4Lib.rules /main/18 1996/09/28 16:13:29 rws $ +XCOMM $XFree86: xc/config/cf/sv4Lib.rules,v 3.4 1996/12/23 05:50:34 dawes Exp $ + +/* + * SVR4 shared library rules + */ + +#ifndef HasSharedLibraries +# define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +# define SharedDataSeparation NO +#endif +#ifndef SharedCodeDef +# define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +# define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +# define ShLibIncludeFile +#endif +#ifndef SharedLibraryLoadFlags +# define SharedLibraryLoadFlags -G -z text +#endif +#ifndef PositionIndependentCFlags +# if HasGcc2 +# define PositionIndependentCFlags -fpic +# else +# define PositionIndependentCFlags -K PIC +# endif +#endif +#ifndef PositionIndependentCplusplusFlags +# if HasGcc2ForCplusplus +# define PositionIndependentCplusplusFlags -fpic +# else +# define PositionIndependentCplusplusFlags -K PIC +# endif +#endif +#ifndef UseExportLists +# define UseExportLists NO +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#if StripInstalledPrograms +# define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + mcs -d Concat($(DESTDIR)dest/lib,libname.so.rev) @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so) +#else +# define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ + cd $(DESTDIR)dest; $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so) +#endif + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +# define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +#ifndef LinkWithExports +# if UseExportLists +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(CCENVSETUP) $(LD) -o up/$@~ $(SHLIBLDFLAGS) -h $@ solist $(REQUIREDLIBS)) @@\ + if [ -f Concat(lib,libname.elist) ]; then \ @@\ + $(RM) down/$@.exports $@.list; \ @@\ + $(CPP) $(ALLINCLUDES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) Concat(lib,libname.elist) | CppSedMagic >$@.list; \ @@\ + $(EXPORTLISTGEN) $@~ $@.list > down/$@.exports; \ @@\ + (cd down; $(CCENVSETUP) $(LD) -o up/$@~ $(SHLIBLDFLAGS) -h $@ ShlibExportListOpt($@.exports) solist $(REQUIREDLIBS)); \ @@\ + $(RM) down/$@.exports $@.list; \ @@\ + fi; +# else +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(CCENVSETUP) $(LD) -o up/$@~ $(SHLIBLDFLAGS) -h $@ solist $(REQUIREDLIBS)) +# endif +#endif + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +# define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + LinkWithExports(libname,rev,solist,down,up) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + $(RM) Concat(lib,libname.so) @@\ + $(LN) $@ Concat(lib,libname.so) @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibrary(Concat(lib,libname.so)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* SharedLibraryTarget */ + + +#ifndef SharedDepModuleTarget +#define SharedDepModuleTarget(name,deps,solist) @@\ +AllTarget(name) @@\ + @@\ +name: deps @@\ + $(RM) $@~ @@\ + $(LD) -o $@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @@\ +clean:: @@\ + $(RM) name + +#endif /* SharedDepModuleTarget */ + + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +# define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ diff --git a/Xserver/config/cf/sv4Lib.tmpl b/Xserver/config/cf/sv4Lib.tmpl new file mode 100644 index 0000000..503ae12 --- /dev/null +++ b/Xserver/config/cf/sv4Lib.tmpl @@ -0,0 +1,77 @@ +XCOMM $XConsortium: sv4Lib.tmpl /main/23 1996/12/04 10:11:01 swick $ + +/* + * SVR4 shared library template + */ + +XCOMM $XFree86: xc/config/cf/sv4Lib.tmpl,v 3.3 1996/12/30 13:57:39 dawes Exp $ + +/* SVR4 shared libraries are deficient in link semantics */ +XMULIBONLY = -lXmu +#ifndef FixupLibReferences +# define FixupLibReferences() @@\ +XMULIB = $(XMULIBONLY) -z nodefs +#endif +#ifndef XawClientLibs +# define XawClientLibs $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XLIB) +#endif + +#if 0 +/* This causes problems on SVR4.0 */ +#ifndef SharedICEReqs +# define SharedICEReqs -lsocket +#endif +#endif + +#if ThreadedX +# ifndef SharedThreadReqs +# define SharedThreadReqs -lthread +# endif +# ifndef SharedX11Reqs +# define SharedX11Reqs -lthread +# endif +#else +# ifndef SharedThreadReqs +# define SharedThreadReqs +# endif +#endif + +#ifndef SharedXReqs +# define SharedXReqs $(XTOOLLIB) $(XPLIB) $(XLIB) SharedThreadReqs $(LDPOSTLIBS) +#endif + +#ifndef SharedXmReqs +# define SharedXmReqs $(LDPRELIBS) SharedXReqs -lgen -lsocket -lnsl -lw -lc +#endif + +#ifndef SharedMrmReqs +# define SharedMrmReqs $(LDPRELIBS) $(XMLIB) SharedXReqs -lgen -lsocket -lnsl -lw -lc +#endif + +#ifndef SharedUilReqs +# define SharedUilReqs $(LDPRELIBS) $(MRESOURCELIB) $(XMLIB) SharedXReqs -lgen -lsocket -lnsl -lw -lc +#endif + +#ifndef SharedDtSvcReqs +# define SharedDtSvcReqs $(LDPRELIBS) $(TTLIB) $(XMLIB) SharedXReqs +#endif + +#ifndef SharedDtMmdbReqs +# define SharedDtMmdbReqs $(LDPRELIBS) $(DTSVCLIB) $(TTLIB) $(XMLIB) SharedXReqs +#endif + +#ifndef SharedDtHelpReqs +# define SharedDtHelpReqs $(LDPRELIBS) $(DTSVCLIB) $(XMLIB) SharedXReqs +#endif + +#ifndef DtClientExtraLibs +# define DtClientExtraLibs -lresolv +#endif + +REGEXSYSLIB = -lgen +DYNLIBSYSLIB = -ldl + +#ifndef IafSysLib +# define IafSysLib -liaf +#endif +IAFSYSLIB = IafSysLib diff --git a/Xserver/config/cf/svr3.cf b/Xserver/config/cf/svr3.cf new file mode 100644 index 0000000..920b894 --- /dev/null +++ b/Xserver/config/cf/svr3.cf @@ -0,0 +1,335 @@ +XCOMM $XConsortium: svr3.cf /main/1 1996/10/31 14:47:37 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/svr3.cf,v 3.9.2.1 1997/05/24 13:38:09 dawes Exp $ + +#ifndef HasGcc +#define HasGcc YES +#endif +#ifndef HasGcc2 +#define HasGcc2 YES +#endif +#ifndef GccUsesGas +#define GccUsesGas NO +#endif +#ifndef UseGas +#define UseGas NO +#endif +#ifndef GnuCpp +#define GnuCpp NO +#endif + +#ifndef Gcc2MOption +# if HasGcc2 +# define Gcc2MOption /* */ +# else +# define Gcc2MOption /* */ +# endif +#endif + +#ifndef HasShadowPasswd +# define HasShadowPasswd YES +#endif + +#ifndef HasLibCrypt +# define HasLibCrypt NO +#endif + +#ifndef HasSVR3mmapDrv +# define HasSVR3mmapDrv NO +#endif + +#if HasSVR3mmapDrv +# define SVR3mmapFlags -DHAS_SVR3_MMAPDRV +#else +# define SVR3mmapFlags /**/ +#endif + +#ifndef HasSockets +# define HasSockets YES +#endif + +#ifndef XmanSearchPath +#define XmanSearchPath /usr/share/man +#endif + +/* + * Most SVR3 do not have symbolic links, only some of the newer ones + */ +#ifndef HasSymLinks +# define HasSymLinks NO +#endif + +#ifndef StripInstalledPrograms +# define StripInstalledPrograms YES +#endif + +#ifndef MotifBC +# define MotifBC YES +#endif + +#ifndef CompressAllFonts +# define CompressAllFonts YES +#endif + +/* + * A default OS name + */ +#ifndef OSName +#ifdef i386Architecture +#define OSName UNIX System V/386 Release 3 +#else +#define OSName UNIX System V Release 3 +#endif +#endif +#ifndef OSVendor +#define OSVendor /**/ +#endif + +/* + * The default version will be 3.0.0 which should be + * the least common denominator of all SVR3 + */ + +#ifndef OSMajorVersion +#define OSMajorVersion 3 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 0 +#endif +#ifndef BootstrapCFlags +#ifdef SYSV386 +#define BootstrapCFlags -DSYSV -DSYSV386 +#else +#define BootstrapCFlags -DSYSV +#endif +#endif + +/* Some stuff that all SYSV's should have */ + +#define SystemV YES + +#ifndef NeedBerklib +#define NeedBerklib YES +#endif +#ifndef HasPoll +#define HasPoll YES +#endif +#ifndef SVR3Architecture +#define SVR3Architecture +#endif +#ifndef PatheticCpp +#define PatheticCpp YES +#endif + +#ifndef StandardDefines +#ifdef i386Architecture +#define StandardDefines -DSYSV OSDefines -Di386 +#else +#define StandardDefines -DSYSV OSDefines +#endif +#endif + +#ifndef ServerOSDefines +# ifdef i386Architecture +# define ServerOSDefines -DDDXTIME XFree86ServerOSDefines -DPART_NET +# else +# define ServerOSDefines -DDDXTIME +# endif +#endif + +#ifndef XawI18nDefines +# define XawI18nDefines -DUSE_XWCHAR_STRING +#endif + +#ifndef DefaultCDebugFlags +# if HasGcc2 +# if defined(i386Architecture) +# define DefaultCDebugFlags DefaultGcc2i386Opt +# else +# define DefaultCDebugFlags -O2 +# endif +# else +# define DefaultCDebugFlags -O +# endif +#endif + +#ifndef LdCombineFlags +#define LdCombineFlags -r +#endif + +#if HasGcc +# if HasGcc2 +# define DefaultCCOptions Gcc2MOption -DNO_ASM -fpcc-struct-return \ + -fwritable-strings +# define LibraryCCOptions Gcc2MOption -DNO_ASM -fpcc-struct-return +# if defined(i386Architecture) +# define OptimizedCDebugFlags DefaultGcc2i386Opt +# else +# define OptimizedCDebugFlags -O2 +# endif +# else +# define DefaultCCOptions -DNO_ASM -fpcc-struct-return -fwritable-strings +# define LibraryCCOptions -DNO_ASM -fpcc-struct-return +# define OptimizedCDebugFlags -O -fstrength-reduce +# endif +# define ShlibDefines -D__GNUC__ $(XDMAUTHDEFS) +#else +# define ShlibDefines $(XDMAUTHDEFS) +#endif + +#ifndef Malloc0ReturnsNull +#define Malloc0ReturnsNull YES +#endif + +#ifndef SocketLibraries +# define SocketLibraries /**/ +#endif +#ifndef LocalLibraries +# define LocalLibraries /**/ +#endif +#ifndef ExtraLibraries +# if HasSockets +# define ExtraLibraries SocketLibraries LocalLibraries +# else +# define ExtraLibraries LocalLibraries +# endif +#endif + +#if RemoveDSDENroffMacros +# define RemoveDSDENroffMacrosCmd sed -e '/^\.D[S|E]$$/d' +#else +# define RemoveDSDENroffMacrosCmd cat +#endif + +#ifndef ConnectionFlags +# define ConnectionFlags -DLOCALCONN -DTCPCONN +#endif + +#ifndef FormattedManPages +# define FormattedManPages YES +#endif + +#ifndef ManSuffix +# define ManSuffix 1x +# define ManDir $(MANSOURCEPATH)1 +#endif +#ifndef LibManSuffix +# define LibManSuffix 3x +# define LibmanDir $(MANSOURCEPATH)3 +#endif +#ifndef FileManSuffix +# define FileManSuffix 4 +#endif + +/* + * Compress manual pages, default on ISC and SCO + */ +#ifndef CompressManPages +# define CompressManPages YES +#endif + +/* + * The .DS and .DE macros used in some manual pages are obsolete + * in the often used ISC's Textprocessing Workbench 2.1.0 and break it, + * so it's better to remove these previously + */ +#ifndef RemoveDSDENroffMacros +# define RemoveDSDENroffMacros NO +#endif + +#if RemoveDSDENroffMacros +# define RemoveDSDENroffMacrosCmd sed -e '/^\.D[S|E]$$/d' +#else +# define RemoveDSDENroffMacrosCmd cat +#endif + +#ifndef CompressManCmd +# define CompressManCmd @true +#endif + + RMDSDEMACCMD = RemoveDSDENroffMacrosCmd + COMPRESSMANCMD = CompressManCmd + +#if FormattedManPages + +#ifndef InstallManPageLong +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.$(MANSUFFIX)* @@\ + $(RMDSDEMACCMD) file.man | neqn | nroff -man >/tmp/file.man @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/file.man $(DESTDIR)destdir/dest.$(MANSUFFIX) @@\ + -$(COMPRESSMANCMD) $(DESTDIR)destdir/dest.$(MANSUFFIX) @@\ + $(RM) /tmp/file.man +#endif + +#ifndef InstallGenManPageLong +#define InstallGenManPageLong(file,destdir,dest,suffix) @@\ +install.man:: file.man @@\ + MakeDir($(DESTDIR)destdir) @@\ + $(RM) $(DESTDIR)destdir/dest.suffix* @@\ + $(RMDSDEMACCMD) file.man | neqn | nroff -man >/tmp/file.man @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/file.man $(DESTDIR)destdir/dest.suffix @@\ + -$(COMPRESSMANCMD) $(DESTDIR)destdir/dest.suffix @@\ + $(RM) /tmp/file.man +#endif + +#ifndef InstallMultipleMan +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + MakeDir($(DESTDIR)dest) @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + MNAME=`echo $$i | cut -f1 -d.`; \ @@\ + $(RM) $(DESTDIR)dest/$${MNAME}*; \ @@\ + $(RMDSDEMACCMD) $$i | neqn | nroff -man >/tmp/$$i; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$i $(DESTDIR)dest/$${MNAME}.$(MANSUFFIX); \ @@\ + $(COMPRESSMANCMD) $(DESTDIR)dest/$${MNAME}.$(MANSUFFIX); \ @@\ + $(RM) /tmp/$$i); \ @@\ + done +#endif + +/* + * InstallManPageAliases - generate rules to install manual page aliases. + * (Make hard links on SVR3.) + */ +#ifndef InstallManPageAliases +#define InstallManPageAliases(file,destdir,aliases) @@\ +install.man:: @@\ + @(SUFFIX=`echo $(DESTDIR)destdir/file.* | cut -f2,3 -d.`; \ @@\ + for i in aliases; do (set -x; \ @@\ + $(RM) $(DESTDIR)destdir/$$i.*; \ @@\ + (cd $(DESTDIR)destdir; $(LN) file.$${SUFFIX} \ @@\ + $$i.$${SUFFIX})); \ @@\ + done) +#endif + +#ifndef InstallGenManPageAliases +#define InstallGenManPageAliases(file,destdir,suffix,aliases) @@\ + InstallManPageAliases(file,destdir,aliases) +#endif + +#endif /* FormattedManPages */ + +/* If you have trouble with make bombing out in Xlib, try uncommenting this. */ +/* You will not get dependencies as a result, but better than nothing. */ +#ifndef MakeHashTableBug +#define MakeHashTableBug NO +#endif + +#if MakeHashTableBug +#define DependTarget3(srcs1,srcs2,srcs3) +#endif + +#include + +#ifdef i386Architecture +#include +#endif + diff --git a/Xserver/config/cf/svr4.cf b/Xserver/config/cf/svr4.cf new file mode 100644 index 0000000..93f60e0 --- /dev/null +++ b/Xserver/config/cf/svr4.cf @@ -0,0 +1,214 @@ +XCOMM $TOG: svr4.cf /main/17 1997/06/08 20:08:31 kaleb $ +XCOMM $XFree86: xc/config/cf/svr4.cf,v 3.25.2.2 1997/07/05 15:55:30 dawes Exp $ +/* + * A default OS name + */ +#ifndef OSName +#ifdef i386Architecture +#define OSName UNIX System V/386 Release 4 +#else +#define OSName UNIX System V Release 4 +#endif +#endif +#ifndef OSVendor +#define OSVendor /**/ +#endif + +/* + * The default version will be 4.0.0 which should be + * the least common denominator of all SVR4 + */ + +#ifndef OSMajorVersion +#define OSMajorVersion 4 +#endif +#ifndef OSMinorVersion +#define OSMinorVersion 0 +#endif +#ifndef OSTeenyVersion +#define OSTeenyVersion 0 +#endif +#ifndef BootstrapCFlags +#ifdef i386Architecture +#define BootstrapCFlags -DSVR4 -Di386 +#else +#ifdef SYSV386 +#define BootstrapCFlags -DSVR4 -Di386 +#else +#define BootstrapCFlags -DSVR4 +#endif +#endif +#endif + +/* Some stuff that all SVR4s should have */ + +#define SystemV4 YES +#ifndef HasLdRunPath +#define HasLdRunPath YES +#endif +#define HasPoll YES +#ifndef SVR4Architecture +#define SVR4Architecture +#endif +#ifndef PatheticCpp +#define PatheticCpp YES +#endif +#define Malloc0ReturnsNull YES /* in case -lmalloc used */ + +/* + * Here are the default paths to use to pick up tools for building. + */ +#ifndef ArCmdBase +#define ArCmdBase /usr/ccs/bin/ar +#endif +#ifndef AsCmd +#define AsCmd /usr/ccs/bin/as +#endif +#ifndef CppCmd +#define CppCmd /usr/ccs/lib/cpp +#endif +#ifndef LdCmd +#define LdCmd /usr/ccs/bin/ld +#endif +#ifndef LexCmd +#define LexCmd /usr/ccs/bin/lex +#endif +#ifndef YaccCmd +#define YaccCmd /usr/ccs/bin/yacc +#endif +#ifndef MkdirHierCmd +#define MkdirHierCmd mkdir -p +#endif + +#ifndef SunArchitecture +/* + * These come from usl.cf, and at least some are required by other + * SVR4 versions + */ +#ifndef UseLocalRegex +#define UseLocalRegex YES +#endif +#ifndef XmDefines +#define XmDefines \ + -DNO_REGCOMP -DNEED_STRCASECMP \ + -DSUPPORT_ZERO_WIDTH -DHAS_WIDECHAR_FUNCTIONS +#endif +#ifndef DtSvcDefines +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DNO_REGCOMP +#endif +#ifndef DtSearchDefines +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#endif +#ifndef DtWidgetDefines +#define DtWidgetDefines DtSearchDefines +#endif +#ifndef DtPrintDefines +#define DtPrintDefines DtSearchDefines +#endif +#ifndef HasStrcasecmp +#define HasStrcasecmp NO +#endif +#endif + +#ifndef SunArchitecture +#if (OSMinorVersion == 0) +#ifndef XawI18nDefines +#define XawI18nDefines -DUSE_XWCHAR_STRING +#endif +#endif +#endif + +#ifndef HasGcc2 +#define HasGcc2 NO +#endif +#ifndef HasGcc +#define HasGcc HasGcc2 +#endif + +#ifdef i386Architecture +#ifndef SunArchitecture +#if (OSMinorVersion > 2) || ((OSMinorVersion == 2) && (OSTeenyVersion >= 2)) +#ifndef StandardDefines +#define StandardDefines -DSVR4 -DSVR42MP -Di386 +#endif +#ifndef HasParallelMake +#define HasParallelMake YES +#endif +#if HasParallelMake +#define ParallelDefines -P -B +#define MutexDirective .MUTEX +#endif +#else /* SVR4 < 4.2.2 */ +#ifndef StandardDefines +#define StandardDefines -DSVR4 -Di386 +#endif +#endif +#endif +#ifndef ToolkitStringsABIOptions +#define ToolkitStringsABIOptions -intelabi -earlyR6bc +#endif +#ifndef DefaultCCOptions +#if !HasGcc +#define DefaultCCOptions -Xa -Dasm=__asm +#else +#ifdef UseInstalled +#define DefaultCCOptions /**/ +#else +#define DefaultCCOptions -ansi -pedantic +#endif +#endif +#endif +#ifndef DefaultCDebugFlags +#if HasGcc +#if HasGcc2 +#define DefaultCDebugFlags DefaultGcc2i386Opt +#else +#define DefaultCDebugFlags -O2 +#endif +#else +#define DefaultCDebugFlags -O +#endif +#endif +#ifndef ServerOSDefines +#define ServerOSDefines -DDDXTIME XFree86ServerOSDefines +#endif +#ifndef BuildDynamicLoading +#define BuildDynamicLoading NO +#endif +#if BuildDynamicLoading +#define ServerExtraSysLibs -ldl +#endif +#endif + +/* + * The TLI interface is more robust on most SVR4s, so it will be the default. + */ +#if !defined(SunArchitecture) +#ifndef ConnectionFlags +#define ConnectionFlags -DSTREAMSCONN -DUNIXCONN -DLOCALCONN +#endif +#endif + +#ifndef ManSuffix +#define ManSuffix 1x +#define ManDir $(MANSOURCEPATH)1 +#endif +#ifndef LibManSuffix +#define LibManSuffix 3x +#define LibmanDir $(MANSOURCEPATH)3 +#endif +#ifndef FileManSuffix +#define FileManSuffix 4 +#endif + +#ifndef StaticLibrary +#if !HasGcc +#define StaticLibrary(libpath,libname) -B static Concat(-L,libpath) Concat(-l,libname) -B dynamic +#endif +#endif + +#ifdef i386Architecture +#include +#endif + +#include diff --git a/Xserver/config/cf/ultrix.cf b/Xserver/config/cf/ultrix.cf new file mode 100644 index 0000000..a9c8a18 --- /dev/null +++ b/Xserver/config/cf/ultrix.cf @@ -0,0 +1,77 @@ +XCOMM platform: $XConsortium: ultrix.cf /main/68 1996/09/28 16:13:46 rws $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +XCOMM operating system: OSName (OSMajorVersion.OSMinorVersion) + +#define HasNdbm YES +#define HasPutenv YES +#define HasShm YES +#define LintLibFlag -o +#define LintOpts -ax + +#if HasDECnet +#define ExtraLibraries -ldnet +#endif + +#if ThreadedX +/* if you want to experiment, turn this on, but no guarantees */ +#define HasThreadSafeAPI NO +#define HasPosixThreads YES +#define ThreadPreStdAPIDefines -DXPRE_STANDARD_API +#define ExtraLibraries -lpthreads -li +#endif + +#ifdef VaxArchitecture +#define PexNativeFPFormat PEXDEC_F_Floating +#define NativeFPFormat DEC_F_Float +#define UnalignedReferencesAllowed YES /* if arbitrary deref is okay */ +#define BuildServer NO +#endif + +#ifdef MipsArchitecture +#if OSMajorVersion > 4 || (OSMajorVersion == 4 && OSMinorVersion >= 2) +/*#define XdecServer YES +#define ServerOSDefines -DDDXTIME*/ +/* Even under ultrix 4.2, the compiler miscompiles some alloca calls */ +#define AllocateLocalDefines /* -DINCLUDE_ALLOCA_H */ +#else +#define BuildServer NO +#define AllocateLocalDefines /**/ +#endif +#if !HasGcc +#define NeedFunctionPrototypes YES +#define PexCCOptions -Wf,-XNp15000,-XNd15000 +/* + * NormalLibObjCompile - compile fragment for a library object file + * do ld -x to remove line number symbols for libraries + */ +#define NormalLibObjCompile(options) $(RM) $@ $*.os \ @@\ + && $(CC) -c options $(CFLAGS) $*.c \ @@\ + && $(LD) $(LDSTRIPFLAGS) -r $@ -o $*.os \ @@\ + && $(MV) $*.os $@ +#endif +#endif + +#if HasGcc +#ifdef VaxArchitecture +#define CcCmd gcc -ansi -Dvax -Dultrix -fpcc-struct-return +#endif +#ifdef MipsArchitecture +#define CcCmd gcc -ansi -Dmips -Dultrix -fpcc-struct-return +#endif +#define ServerCCOptions /* */ +#define AllocateLocalDefines /* */ +#endif + +#define ServerExtraDefines AllocateLocalDefines +#define HasWChar32 YES + +#define MotifDefines -DNO_REGEX -DNO_REGCOMP -DNO_CONST diff --git a/Xserver/config/cf/usl.cf b/Xserver/config/cf/usl.cf new file mode 100644 index 0000000..ed41623 --- /dev/null +++ b/Xserver/config/cf/usl.cf @@ -0,0 +1,112 @@ +XCOMM platform: $TOG: usl.cf /main/50 1997/04/17 14:11:39 barstow $ + + + + +XCOMM platform: $XFree86: xc/config/cf/usl.cf,v 3.13.2.1 1997/05/03 09:43:10 dawes Exp $ + +#ifndef OSName +# define OSName DefaultOSName +#endif +#ifndef OSMajorVersion +# define OSMajorVersion DefaultOSMajorVersion +#endif +#ifndef OSMinorVersion +# define OSMinorVersion DefaultOSMinorVersion +#endif +#ifndef OSTeenyVersion +# define OSTeenyVersion DefaultOSTeenyVersion +#endif +XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) + +#ifndef CcCmd +# define CcCmd /usr/ccs/bin/cc +#endif +#ifndef CplusplusCmd +# define CplusplusCmd /usr/ccs/bin/CC +#endif +#ifndef CplusplusFilt +# define CplusplusFilt /usr/ccs/bin/c++filt +#endif +#ifndef CplusplusDependIncludes +# define CplusplusDependIncludes -I/usr/include/CC +#endif + +#define BootstrapCFlags /* none needed */ +#define StandardDefines -DUSL -DSVR4 -Di386 +#define NeedWidePrototypes NO /* experimental */ +#define ServerExtraDefines -D__USLC__ XFree86ServerDefines +#define ServerOSDefines -DDDXTIME XFree86ServerOSDefines +#define ToolkitStringsABIOptions -intelabi +#if OSMajorVersion < 2 +#define XawI18nDefines -DHAS_WCTYPE_H -DHAS_ISW_FUNCS +#else +#define XawI18nDefines -DHAS_WCHAR_H -DHAS_ISW_FUNCS +#endif +#if OSTeenyVersion > 1 +# define ExtraLibraries -lsocket -lnsl -lgen -lw +# define ThreadedX YES +# define HasThreadSafeAPI NO +/* UnixWare does not have MT-safe pwd routines. */ +# define MTSafeAPIDefines \ +-DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI -DXNO_MTSAFE_GRPAPI +# define SystemMTDefines -D_REENTRANT +# define ThreadsLibraries -lthread +# define ThreadsCplusplusLibraries -lthread +# define DefaultCCOptions -W0,-2A -Xa -Dasm=__asm +#endif +#define BuildLibPathVar LD_LIBRARY_PATH + +#ifndef UseExportLists +# define UseExportLists YES +#endif + +#define GencatFlags -m + +#include + +/* + * When generating templates the UnixWare 2.02 C++ compiler leaves + * protected .i files behind. Remove them so other people can + * compile too. + */ +#ifndef ObjectCplusplusCompile +#define ObjectCplusplusCompile(options) RemoveFiles($@ $*.i) @@\ + ClearmakeOSName \ + $(CXX) -c $(CXXFLAGS) options $*.CCsuf +#endif + +/* USL does not have a shared regex library. */ +#define UseLocalRegex YES + +#define XmDefines \ + -DNO_REGCOMP -DNEED_STRCASECMP \ + -DSUPPORT_ZERO_WIDTH -DHAS_WIDECHAR_FUNCTIONS +#define DtSvcDefines -DXK_MISCELLANY -DMULTIBYTE -DNO_REGCOMP +#define DtSearchDefines -DI18N_MSG DtSvcDefines +#define DtWidgetDefines DtSearchDefines +#define DtPrintDefines DtSearchDefines + +#define HasStrcasecmp NO + +/* For DtHelp's TIFF processing routines. */ +#define LSBBitOrder YES + +#define ArchitectureDefines -DUSL_ARCHITECTURE + +#define ExportListGenSource elistgen.usl +#define ShlibExportListOpt(filename) Concat(-Bexport:,filename) + +/* Remove -lc because select.o is not relocatable. */ +/* Remove -lgen (and set UseLocalRegex) because no shared library exists. */ +#define SharedXmReqs $(LDPRELIBS) SharedXReqs -lsocket -lnsl -lw +#define SharedMrmReqs $(LDPRELIBS) $(XMLIB) SharedXReqs -lsocket -lnsl -lw +#define SharedUilReqs $(LDPRELIBS) $(MRESOURCELIB) $(XMLIB) SharedXReqs -lsocket -lnsl -lw + +/* requires process locking for missing _r functions */ +#define TtClientLibs $(TTLIB) $(XTOOLLIB) $(XLIB) +#define TtClientDepLibs $(DEPTTLIB) $(DEPXTOOLLIB) $(DEPXLIB) + +#define CdeProjectDefines \ + -DANSICPP -DMULTIBYTE -DNLS16 -DNEED_STRCASECMP \ + -DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion diff --git a/Xserver/config/cf/vnc.def b/Xserver/config/cf/vnc.def new file mode 100644 index 0000000..bd18428 --- /dev/null +++ b/Xserver/config/cf/vnc.def @@ -0,0 +1,134 @@ +/*****************************************************************************/ +/* + * vnc.def + * + * Some imake configuration defines for building Xvnc. If you build Xvnc + * on a new platform you may need to change things in here. If possible + * try and make changes here rather than in the vendor .cf file to make it + * easier to upgrade to later versions of the XFree86 distribution. + */ + +/*****************************************************************************/ +/* + * First try to switch off all the extras that we don't want. This includes + * all sorts of extensions, and any X servers for particular hardware. You + * should be able to put back any extensions you want by getting the code from + * the XFree86 distribution and changing the #define here to YES. + */ + +#define BuildFontServer NO +#define BuildFonts NO +#define BuildXInputExt NO +#define BuildScreenSaverExt NO +#define BuildPexExt NO +#define BuildXIE NO +#define BuildXIElib NO +#define BuildGlxExt NO +#define BuildXKB NO +#define BuildXKBlib NO +#define BuildLBX NO +#define BuildXprint NO +#define BuildDBE NO +#define BuildDBElib NO +#define BuildRECORD NO +#define BuildRECORDlib NO +#define BuildScreenSaverLibrary NO +#define BuildXF86MiscLibrary NO +#define BuildXF86DGALibrary NO +#define BuildXF86VidModeLibrary NO +#define BuildDPMSLibrary NO +#define BuildXKBuilib NO +#define BuildXF86DGA NO +#define BuildDPMSExt NO +#define BuildXF86VidModeExt NO +#define BuildXF86MiscExt NO +#define BuildXF86Setup NO +#define BuildAppgroup NO +#define BuildXCSecurity NO +#define BuildPC98Servers NO + +#define X386Server NO +#define XF68FBDevServer NO +#define XF86AGXServer NO +#define XF86I128Server NO +#define XF86I8514Server NO +#define XF86Mach32Server NO +#define XF86Mach64Server NO +#define XF86Mach8Server NO +#define XF86MonoDualServer NO +#define XF86MonoServer NO +#define XF86P9000Server NO +#define XF86S3Server NO +#define XF86S3VServer NO +#define XF86SVGAServer NO +#define XF86TGAServer NO +#define XF86VGA16DualServer NO +#define XF86VGA16Server NO +#define XF86W32Server NO +#define XF98EGCServer NO +#define XF98GA968Server NO +#define XF98GANBWAPServer NO +#define XF98MGAServer NO +#define XF98NEC480Server NO +#define XF98NECS3Server NO +#define XF98NKVNECServer NO +#define XF98PWLBServer NO +#define XF98PWSKBServer NO +#define XF98SVGAServer NO +#define XF98TGUIServer NO +#define XF98WABEPServer NO +#define XF98WABSServer NO +#define XF98WSNAServer NO +#define XVirtualFramebufferServer NO +#define XdecServer NO +#define XhpServer NO +#define XibmServer NO +#define XmacIIServer NO +#define XmipsServer NO +#define XnestServer NO +#define XprtServer NO +#define Xsun24Server NO +#define XsunAmoebaMonoServer NO +#define XsunAmoebaServer NO +#define XsunMonoServer NO +#define XsunServer NO + + +/*****************************************************************************/ +/* + * All we want to build is the Xvnc server + */ + +#define XvncServer YES +#define BuildServersOnly YES +#define BuildServer YES + +#define XVendorString "RealVNC Ltd" +#define XVendorRelease 3370 +#define XvncRelease "3.3.7" + + +/*****************************************************************************/ +/* + * Try to work out the default X installation place for various platforms. + * You may need to change this. + */ + +#ifdef SunArchitecture +#define ProjectRoot /usr/openwin +#else +#ifdef i386Architecture +#define ProjectRoot /usr/X11R6 +#endif +#endif + + +/*****************************************************************************/ +/* + * At ORL we use gcc on our Suns. If you use gcc then you may also need to + * change config/imake/Makefile.ini which has CC=cc hard-coded. + */ + +#ifdef SunArchitecture +#define HasGcc2 YES +#endif diff --git a/Xserver/config/cf/vnclibs.def b/Xserver/config/cf/vnclibs.def new file mode 100644 index 0000000..98dc8b2 --- /dev/null +++ b/Xserver/config/cf/vnclibs.def @@ -0,0 +1,24 @@ +/* + * vnclibs.def.in - tells Xvnc where to pick up external VNC libraries + * + * Whenever you change this file, you need to run configure and then remake + * the Makefiles in + * lib/font/fontfile, programs/Xserver and programs/Xserver/hw/vnc + */ + +CXX = c++ +CXXFLAGS = -O2 -Wall + +CCLINK = $(CXX) + +RFB_TOP = $(TOP)/.. + +top_srcdir = $(RFB_TOP) + +ZLIB_INCLUDE = + +VNCLIBS = $(RFB_TOP)/rdr/librdr.a $(RFB_TOP)/rfb/librfb.a -lz + +VNCSYSLIBS = + +VNCCPPFLAGS = -I$(RFB_TOP) diff --git a/Xserver/config/cf/vnclibs.def.in b/Xserver/config/cf/vnclibs.def.in new file mode 100644 index 0000000..f4ade04 --- /dev/null +++ b/Xserver/config/cf/vnclibs.def.in @@ -0,0 +1,24 @@ +/* + * vnclibs.def.in - tells Xvnc where to pick up external VNC libraries + * + * Whenever you change this file, you need to run configure and then remake + * the Makefiles in + * lib/font/fontfile, programs/Xserver and programs/Xserver/hw/vnc + */ + +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ + +CCLINK = $(CXX) + +RFB_TOP = $(TOP)/.. + +top_srcdir = $(RFB_TOP) + +ZLIB_INCLUDE = @ZLIB_INCLUDE@ + +VNCLIBS = $(RFB_TOP)/rdr/librdr.a $(RFB_TOP)/rfb/librfb.a @ZLIB_LIB@ + +VNCSYSLIBS = + +VNCCPPFLAGS = -I$(RFB_TOP) diff --git a/Xserver/config/cf/x386.cf b/Xserver/config/cf/x386.cf new file mode 100644 index 0000000..1d9c7c8 --- /dev/null +++ b/Xserver/config/cf/x386.cf @@ -0,0 +1,149 @@ +XCOMM platform: $XConsortium: x386.cf /main/15 1996/09/28 16:14:00 rws $ + +/***************************************************************************** + * Site-specfic parameters * + *****************************************************************************/ + +/* + * there are some switches to set appropriate... + */ + +#define HasGcc YES /* doesn't work for SVR4 */ +#define HasNdbm YES /* correct for GNU dbm & SVR4 */ +#define StripInstalledPrograms YES +#define X386Server YES +#define ExtensionOSDefines -DXTESTEXT1 +#define MotifBC YES + +/***************************************************************************** + * Do not change anything below * + *****************************************************************************/ + +/* You must manually compute BootstrapCFlags for initial build */ +#define BootstrapCFlags OSDefines OSRelease + +#define StandardDefines OSDefines OSRelease +#define LdCombineFlags -r + +#if defined(i386SVR3Architecture) + +#define SystemV YES + +#define NeedBerklib YES +#define HasSymLinks NO + +/* + * V/386 Release 3.2 + */ +#ifdef ISC +/* INTERACTIVE UNIX Version 2.2.1 */ +# define OSVendor "Interactive System Corp." +# define OSDefines -DISC +# define LocalLibraries -lpt +# define PosixLibraries -lcposix +# define SocketLibraries -linet +#endif + +#ifdef ESIX +#define OSVendor "ESIX System Inc." +#define OSDefines -DESIX +#define LocalLibraries -lpt +#define SocketLibraries -lnet -lnsl_s +#define PosixLibraries /**/ +#endif + +#ifdef ATT +#define OSDefines -DATT +#define OSVendor "AT&T" +#define LocalLibraries -lpt +#define SocketLibraries -lnet -lnsl_s /* just a guess */ +#define PosixLibraries /**/ +#endif + +#define OSName Unix System V/386 Release 3.2 +#define OSMajorVersion 3 +#define OSMinorVersion 2 +#define OSRelease -DSYSV -DSYSV386 + +#if HasGcc +# define CcCmd gcc -DNO_ASM -fstrength-reduce -fpcc-struct-return -fwritable-strings +# define LibraryCcCmd gcc -DNO_ASM -fstrength-reduce -fpcc-struct-return +# define ShlibDefines -D__GNUC__ -DGNULIB=/usr/local/lib/gcc-gnulib +#else +# define ShlibDefines /**/ +#endif + +#if HasSockets +/* # define ConnectionFlags -DLOCALCONN -DTCPCONN */ +# define ConnectionFlags -DTCPCONN +# define ExtraLibraries SocketLibraries LocalLibraries -lc_s PosixLibraries +#else +# define ConnectionFlags -DLOCALCONN +# define ExtraLibraries $(LIBDIR)/etc/inetemul.o LocalLibraries -lc_s PosixLibraries +#endif + +/* #include */ /* not working yet */ + +/* + * Man pages need to be formatted when installed, so override the default + * imake rules. + */ +#define InstallManPageLong(file,destdir,dest) @@\ +install.man:: file.man @@\ + $(RM) destdir/dest.$(MANSUFFIX) @@\ + cat file.man | $(NEQN) | $(NROFF) $(MANMACROS) >/tmp/file.man @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/file.man destdir/dest.$(MANSUFFIX) @@\ + $(RM) /tmp/file.man + +#define InstallMultipleMan(list,dest) @@\ +install.man:: list @@\ + @MakeFlagsToShellFlags(i,set +e); \ @@\ + for i in list; do \ @@\ + (set -x; \ @@\ + $(RM) dest/$$i; \ @@\ + cat $$i | $(NEQN) | $(NROFF) $(MANMACROS) >/tmp/$$i; \ @@\ + $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$i dest/$$i; \ @@\ + $(RM) /tmp/$$i); \ @@\ + done + +/* If you have trouble with make bombing out in Xlib, try uncommenting this. */ +/* You will not get dependencies as a result, but better than nothing. */ +/* #define DependTarget3(srcs1,srcs2,srcs3) */ + +#endif /* i386SVR3Architecture */ + + +/* + * V/386 Release 4.0 + */ +#if defined(i386SVR4Architecture) + +#define SystemV4 YES + +/* this is now just for Dell's one */ + +#ifdef DELL +#define OSDefines -DDELL +#define OSVendor "DELL Computer Corp." +#endif + +#define OSName Unix System V/386 Release 4.0 +#define OSMajorVersion 4 +#define OSMinorVersion 0 +#define OSRelease -DSVR4 -DSYSV386 + +#if HasGcc +# define CcCmd gcc -ansi -fstrength-reduce -fpcc-struct-return -Di386 +# if HasSharedLibraries +# define LibraryCcCmd cc -Xa -Di386 -Dasm=__asm +# endif +#else +# define CcCmd cc -Xa -Di386 -Dasm=__asm +#endif + +#include + +#endif /* i386SVR4Architecture */ + + +XCOMM operating system: OSName OSVendor diff --git a/Xserver/config/cf/xf86.rules b/Xserver/config/cf/xf86.rules new file mode 100644 index 0000000..66bbe3f --- /dev/null +++ b/Xserver/config/cf/xf86.rules @@ -0,0 +1,186 @@ +XCOMM $XConsortium: xf86.rules /main/9 1996/10/31 14:54:26 kaleb $ +XCOMM $XFree86: xc/config/cf/xf86.rules,v 3.16.2.1 1997/05/18 12:00:01 dawes Exp $ + +/* + * These rules are needed to build the Xfree86 X Servers + */ + +#ifndef CPPOnlyAsm +#define CPPOnlyAsm(basename,options) RemoveFile(basename.i) @@\ + $(CPP) AsmDefines $(DEFINES) $(INCLUDES) options basename.s | \ @@\ + grep -v '^\#' > basename.i +#endif + +#ifndef AssembleObject +#define AssembleObject(flags) CPPOnlyAsm($*,flags) @@\ + RemoveFile($*.o) @@\ + $(AS) -o $*.o $*.i @@\ + RemoveFile($*.i) +#endif + +#ifndef NormalAsmObjectRule +#define NormalAsmObjectRule() @@\ +.s.o: @@\ + AssembleObject($(_NOOP_)) @@\ + @@\ +.s.i: @@\ + CPPOnlyAsm($*,$(_NOOP_)) +#endif + +#ifndef ObjectFromSpecialAsmSource +#define ObjectFromSpecialAsmSource(dst,src,flags) @@\ +dst.s: src.s @@\ + RemoveFile($@) @@\ + $(LN) $? $@ @@\ + @@\ +dst.o: dst.s @@\ + AssembleObject(flags) @@\ + @@\ +dst.i: dst.s @@\ + CPPOnlyAsm(dst,flags) @@\ + @@\ +depend:: dst.s @@\ + @@\ +clean:: @@\ + RemoveFile(dst.s) +#endif + +#ifndef ObjectFromAsmSource +#define ObjectFromAsmSource(src,flags) @@\ + @@\ +src.o: src.s @@\ + AssembleObject(flags) @@\ + @@\ +src.i: src.s @@\ + CPPOnlyAsm(dst,flags) @@\ + @@\ +depend:: src.s +#endif + +#ifndef ObjectMapIncludeFromSpecialSource +#define ObjectMapIncludeFromSpecialSource(dst,src,flags) @@\ +dst.c: src.c @@\ + RemoveFile($@) @@\ + echo "#include \"mfbmap.h\"" > $@ @@\ + echo "#include \"$?\"" >> $@ @@\ + @@\ +SpecialCObjectRule(dst,NullParameter,flags) @@\ + @@\ +depend:: dst.c @@\ + @@\ +clean:: @@\ + RemoveFile(dst.c) +#endif + + +/* + * Rules for building config files from scripts + */ + +#ifndef Depend +# define Depend depend +#endif + +#ifndef ConfigTargetLong +#define ConfigTargetLong(target,dep,script,args,extra) @@\ +all:: Configure @@\ + @@\ +Configure:: target.o @@\ + @@\ +target.c: script dep @@\ + $(MAKE) $(MFLAGS) Makefile @@\ + $(MAKE) $(MFLAGS) extra Concat(Build,target) @@\ + @@\ +Concat(Build,target): @@\ + $(RM) target.c @@\ + $(SHELL) script args @@\ + @@\ +clean:: @@\ + $(RM) target.c +#endif + +#define ConfigTarget(target,dep,script,args) ConfigTargetLong(target,dep,script,args,Depend) + +#define ConfigTargetNoDepend(target,dep,script,args) ConfigTargetLong(target,dep,script,args,) + +#if !XF86LinkKit + +/* + * Rules for installing LinkKit parts (target is install.linkkit) + */ + +#ifndef InstallLinkKitNonExecFile +#define InstallLinkKitNonExecFile(file,dest) @@\ +install.linkkit:: file @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTDATFLAGS) file $(DESTDIR)dest +#endif + +#ifndef InstallLinkKitLibrary +#define InstallLinkKitLibrary(libname,dest) @@\ +install.linkkit:: Concat(lib,libname.a) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.a) $(DESTDIR)dest @@\ + RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,libname.a)) +#endif + +#ifndef InstallLinkKitNamedLibrary +#define InstallLinkKitNamedLibrary(libname,dlibname,dest) @@\ +install.linkkit:: Concat(lib,libname.a) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.a) \ @@\ + Concat($(DESTDIR)dest/lib,dlibname.a) @@\ + RanLibrary($(RANLIBINSTFLAGS) Concat($(DESTDIR)dest/lib,dlibname.a)) +#endif + +#ifndef InstallLinkKitNamedNonExec +#define InstallLinkKitNamedNonExec(srcname,dstname,dest) @@\ +install.linkkit:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTDATFLAGS) srcname $(DESTDIR)dest/dstname +#endif + +#ifndef InstallLinkKitNamedProg +#define InstallLinkKitNamedProg(srcname,dstname,dest) @@\ +install.linkkit:: srcname @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c $(INSTBINFLAGS) srcname $(DESTDIR)dest/dstname +#endif + +#ifndef InstallLinkKitSubdirs +#define InstallLinkKitSubdirs(dirs) \ +NamedTargetSubdirs(install.linkkit,dirs,"installing link kit",DESTDIR='$(DESTDIR)',install.linkkit) +#endif + +#ifndef InstallLinkKitMultipleDestFlags +#define InstallLinkKitMultipleDestFlags(list,dest,flags) \ +InstallMultipleDestFlags(install.linkkit,list,dest,flags) +#endif + +#endif /* !XF86LinkKit */ + +/* + * DynamicModuleTarget - build a module to be dynamically loaded + */ +#ifndef DynamicModuleTarget +#define DynamicModuleTarget(module,modlist) @@\ +AllTarget(module) @@\ + @@\ +module: modlist @@\ + RemoveFile($@) @@\ + $(LD) -o $@ $(SHLIBLDFLAGS) modlist @@\ + @@\ +clean:: @@\ + RemoveFile(module) +#endif /* DynamicModuleTarget */ + +/* + * InstallDynamicModule - install a dynamic module + */ +#ifndef InstallDynamicModule +#define InstallDynamicModule(module,dest) @@\ +install:: module @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) -c module $(DESTDIR)dest +#endif + diff --git a/Xserver/config/cf/xf86.tmpl b/Xserver/config/cf/xf86.tmpl new file mode 100644 index 0000000..55420a0 --- /dev/null +++ b/Xserver/config/cf/xf86.tmpl @@ -0,0 +1,65 @@ +XCOMM $XConsortium: xf86.tmpl /main/2 1996/10/31 15:01:41 kaleb $ + + + +XCOMM $XFree86: xc/config/cf/xf86.tmpl,v 3.11 1996/12/27 06:50:30 dawes Exp $ + +#if XF86LinkKit + TOP_INCLUDES = TopIncludes + IMAKE_DEFINES = -DXF86LinkKit=1 +#ifdef UseInstalled + IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(TOP) -I$(IRULESRC) \ + $(IMAKE_DEFINES) +#else + IMAKE_CMD = $(IMAKE) -I$(TOP) -I$(IRULESRC) $(IMAKE_DEFINES) +#endif + +#undef ImakeSubCmdHelper +#ifdef UseInstalled +#define ImakeSubCmdHelper $(IMAKE) -DUseInstalled -I$(IMAKETOP) \ + -I$(IRULESRC) $(IMAKE_DEFINES) +#else +#define ImakeSubCmdHelper $(IMAKEPREFIX)$(IMAKE) -I$(IMAKETOP) \ + -I$(IMAKEPREFIX)$(IRULESRC) $(IMAKE_DEFINES) +#endif +#endif + +#ifndef JoystickSupport +#define JoystickSupport NO +#endif +#ifndef WacomSupport +#define WacomSupport NO +#endif +#ifndef ElographicsSupport +#define ElographicsSupport NO +#endif +#ifndef SummaSketchSupport +#define SummaSketchSupport NO +#endif + +#if BuildDynamicLoading + MODULEDIR = $(USRLIBDIR)/modules +#endif + +#if !BuildDynamicLoading && BuildXInputExt +# if JoystickSupport +# define JoystickDefines -DJOYSTICK_SUPPORT +# else +# define JoystickDefines +# endif +# if WacomSupport +# define WacomDefines -DWACOM_SUPPORT +# else +# define WacomDefines +# endif +# if ElographicsSupport +# define ElographicsDefines -DELOGRAPHICS_SUPPORT +# else +# define ElographicsDefines +# endif +# if SummaSketchSupport +# define SummaSketchDefines -DSUMMASKETCH_SUPPORT +# else +# define SummaSketchDefines +# endif +#endif diff --git a/Xserver/config/cf/xf86site.def b/Xserver/config/cf/xf86site.def new file mode 100644 index 0000000..5139bc2 --- /dev/null +++ b/Xserver/config/cf/xf86site.def @@ -0,0 +1,577 @@ +XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.101.2.15 1998/02/24 19:05:42 hohndel Exp $ +/******************************************************************************/ +/* + * This file is to provide a quick method for most people to change the + * behaviour of their XFree86 installation without having to fully + * understand the workings of site.def and all the various '.cf' files. + * + * These are the most common settings you would choose for compiling and + * installing XFree86 on the systems supported by it. + * + * A good way to use this file is to copy it to host.def, and make the + * changes there. That way, future patches to this file won't fail. + * The host.def file will never be patched. + * + * The distributed version of this file should contain no uncommented + * definitions. Such default definitions belong in xfree86.cf. + */ +/******************************************************************************/ + +/* + * If you have build-specific modifications in your host.def file, but + * want an empty host.def file installed when doing 'make install', + * uncomment the following + * +#define InstallEmptyHostDef + */ + +/* + * If using GCC 2.x on a system where it isn't the default, uncomment + * the following + * +#define HasGcc2 YES +#define HasGcc YES + */ + +/* + * If using GCC 2.x with C++ on a system where it isn't the default, uncomment + * the following. + * +#define HasGcc2ForCplusplus YES + */ + +/* + * The default optimisation flags for GCC 2.x. -fno-strength-reduce is + * here to work around a bug in -O2 for GCC 2.x on i386 platforms. + * If you are using a version that doesn't have this bug, you can + * uncomment the following line, and remove '-fno-strength-reduce' + * If you are building binaries for a 486, it may be beneficial to add + * -m486 + * +#define DefaultGcc2i386Opt -O2 -fno-strength-reduce + */ + +/* + * For Linux, this should match the Binutils version you have. This example + * is for 2.6.0.7. See linux.cf for the default setting. + * + * This should automatically get set correctly by imake. + * +#define LinuxBinUtilsMajorVersion 26 + */ + +/* + * For Linux, these should match the libc version you have. This example + * is for libc.5.4.x. See linux.cf for the default setting. + * + * This should automatically get set correctly by imake. + * +#define LinuxCLibMajorVersion 5 +#define LinuxClibMinorVersion 4 + */ + +/* + * If you want to use the GNU malloc library, uncomment this + * +#define UseGnuMalloc YES + */ + +/* + * Set this to whatever is required to access the GNU malloc library. + * The default is '-lgmalloc' unless is specified in the OS's .cf file. + * +#define GnuMallocLibrary -L/usr/local/lib -lgmalloc + */ + +/* + * To disable the internal Xserver malloc, set this to NO + * +#define UseInternalMalloc YES + */ + +/* + * Some Linux releases don't have a libtermcap. In this case you may need + * to uncomment the following + * +#define TermcapLibrary -lncurses + */ + +/* + * If you have Tk (which is required to build XF86Setup), uncomment this + * Note: version 4.0 or 4.1 is required, and XF86Setup links it statically by + * default. + * +#define HasTk YES + */ + +/* + * Set the paths and names for your Tk library if they don't match the + * defaults (check your OS .cf file or Imake.tmpl for the defaults). + * + * Common values for TkLibName are tk4.0, tk4.1, etc. + * + * Some Linux releases need TkIncDir set to /usr/include/tcl, and some + * need it set to /usr/X11R6/include. + * + * Some Linux releases need TkLibDir set to /usr/X11R6/lib + * +#define TkLibDir /usr/local/lib +#define TkIncDir /usr/local/include +#define TkLibName tk + */ + +/* + * By default, XF86Setup is linked with a static Tk library. To change + * that, uncomment the following line. + * +#define XF86SetupUsesStaticTk NO + */ + +/* + * If you have Tcl (which is required to build XF86Setup), uncomment this + * Note: version 7.4 or 7.5 is required, and XF86Setup links it statically by + * default. + * +#define HasTcl YES + */ + +/* + * Set the paths and names for your Tcl library if they don't match the + * defaults (check your OS .cf file or Imake.tmpl for the defaults). + * + * Common values for TclLibName are tcl7.4, tcl7.5, etc. + * + * Some Linux releases need TclIncDir set to /usr/include/tcl. + * +#define TclLibDir /usr/local/lib +#define TclIncDir /usr/local/include +#define TclLibName tcl + */ + +/* + * By default, XF86Setup is linked with a static Tcl library. To change + * that, uncomment the following line. + * +#define XF86SetupUsesStaticTcl NO + */ + +/* + * Which servers do you wish to build, you can save a lot of disk space + * by only compiling the server you will be using. It will also save you + * considerable compile time. + * + * The following servers are supported in Intel x86 platforms + * +#define XF86SVGAServer NO +#define XF86VGA16Server NO +#define XF86VGA16DualServer NO +#define XF86MonoServer NO +#define XF86MonoDualServer NO +#define XF86S3Server NO +#define XF86S3VServer NO +#define XF86I8514Server NO +#define XF86Mach8Server NO +#define XF86Mach32Server NO +#define XF86Mach64Server NO +#define XF86P9000Server NO +#define XF86AGXServer NO +#define XF86W32Server NO +#define XF86I128Server NO + */ + +/* + * Which servers do you wish to build, you can save a lot of disk space + * by only compiling the server you will be using. It will also save you + * considerable compile time. + * + * The following servers are supported on Digital Alpha platforms: + * +#define XF86SVGAServer NO +#define XF86MonoServer NO +#define XF86S3Server NO +#define XF86S3VServer NO +#define XF86P9000Server NO +#define XF86TGAServer NO + */ + +/* + * Which servers do you wish to build, you can save a lot of disk space + * by only compiling the server you will be using. It will also save you + * considerable compile time. + * + * The following server is supported on Mips/Arc platforms: + * +#define XF86S3Server NO + */ + +/* + * PC98 X servers + * + * Uncommenting the following automatically enables all PC98 servers + * +#define BuildPC98Servers YES + */ + +/* + * To enable/disable individual PC98 servers, use these + * +#define XF98EGCServer YES +#define XF98GANBWAPServer YES +#define XF98NEC480Server YES +#define XF98NKVNECServer YES +#define XF98WABSServer YES +#define XF98WABEPServer YES +#define XF98WSNAServer YES +#define XF98TGUIServer YES +#define XF98MGAServer YES +#define XF98SVGAServer YES +#define XF98NECS3Server YES +#define XF98PWSKBServer YES +#define XF98PWLBServer YES +#define XF98GA968Server YES + */ + +/* + * The following server is supported on Motorola 68k platforms: + * +#define XF68FBDevServer NO + */ + +/* + * To disable building the Xnest server, uncomment this. + * +#define XnestServer NO + */ + +/* + * To disable building Xvfb, uncomment this. + * +#define XVirtualFramebufferServer NO + */ + +/* + * Set the default server (ie the one that gets the sym-link to "X") + * +#define ServerToInstall XF86_S3 + */ + + +/* + * Server configuration parameters. The defaults are shown here: + */ + +/* + * SVGA server: + * +#define XF86SvgaDrivers nv et4000 et3000 pvga1 gvga ati sis tvga8900 \ + cirrus ncr77c22 compaq mga oak al2101 ali \ + cl64xx video7 ark mx realtek apm \ + s3v s3_svga chips generic + */ + +/* + * VGA16 server: + * +#define XF86Vga16Drivers et4000 et3000 ncr77c22 ati sis tvga8900 oak \ + cl64xx generic + */ + +/* + * VGA2 driver in Mono server: + * +#define XF86Vga2Drivers et4000 et3000 pvga1 gvga ati sis tvga8900 \ + cirrus ncr77c22 oak cl64xx generic + */ + +/* + * Mono driver in Mono or VGA16 server: + * +#define XF86MonoDrivers hgc1280 sigma apollo hercules + */ + +/* + * ET4000/W32 server: + * +#define XF86W32Drivers et4000w32 + */ + +/* + * BSD Console driver support (for FreeBSD and NetBSD). + * + * By default, support is included for pccons and pcvt for NetBSD, and + * pccons, syscons and pcvt for FreeBSD. + * + * To change the list of supported drivers, set the following parameter. + * Possible values are -DPCCONS_SUPPORT, -DSYSCONS_SUPPORT, -DPCVT_SUPPORT, + * -DCODRV_SUPPORT. The following example includes support for syscons and + * pcvt only. + * +#define XFree86ConsoleDefines -DSYSCONS_SUPPORT -DPCVT_SUPPORT + */ + +/* + * The X servers need to run as root on most OSs. We're now using a + * wrapper in that case, but we still need to make it known that the + * servers need SetUID. When only using xdm, this (and the wrapper) + * are not required. Disabling this automatically disables use of the + * wrapper. + * + * If you're only starting the Xservers with xdm set this to NO + * +#define XserverNeedsSetUID NO + */ + +/* + * To disable building the font server, uncomment this. + * +#define BuildFontServer NO + */ + +/* + * Do you want to Build Fonts (Usually you only want to build and install + * fonts once, if this is a first time install you will want to build the + * fonts) + * +#define BuildFonts NO + */ + +/* + * To not build/install the 75dpi fonts, uncomment the following + * +#define Build75DpiFonts NO + */ + +/* + * To not build/install the 100dpi fonts, uncomment the following + * +#define Build100DpiFonts NO + */ + +/* + * To not build/install the Speedo fonts, uncomment the following + * +#define BuildSpeedoFonts NO + */ + +/* + * To not build/install the Type1 fonts, uncomment the following + * +#define BuildType1Fonts NO + */ + +/* + * To not build/install the Cyrillic fonts, uncomment the following + * +#define BuildCyrillicFonts NO + */ + +/* + * To build only the servers with a cut-down source tree, uncomment + * this. + * +#define BuildServersOnly YES + */ + +/* + * To disable building XInput support, uncomment this + * +#define BuildXInputExt NO + */ + +/* + * Select the XInput devices you want by setting them to YES. + * + * Note: Joystick support is only included for Linux and FreeBSD at the + * moment. For Linux it requires the Joystick module to be installed (it + * isn't part of the standard kernel distribution). For FreeBSD, a kernel + * will need to be built with the Joystick driver in order to be able to + * use this. + * +#define JoystickSupport NO +#define WacomSupport YES +#define ElographicsSupport YES +#define SummaSketchSupport YES + */ + +/* + * if your system supports dynamic loading of modules using + * dlopen set this to YES. + * +#define BuildDynamicLoading YES + */ + +/* + * To disable the ScreenSaver Extension, uncomment this line. + * +#define BuildScreenSaverExt NO + */ + +/* + * If you don't want to build PEX, uncomment this. + * +#define BuildPexExt NO + */ + +/* + * If you don't want to build XIE, uncomment this. + * +#define BuildXIE NO + */ + +/* + * If you don't want to build support for an external GLX server module or + * library, uncomment this. + * + * NOTE: XFree86 3.3 does not include GLX server source, module, or + * functional libraries. Building in support does not require + * availability of a GLX package, but will allow it to be used + * when released (by dynamic load or relinking). + * +#define BuildGlxExt NO + */ + +/* + * If you aren't building with support for loadable modules and wish + * to statically link external GLX server libs instead of the default + * non-functional stub library, uncomment the following define and + * specify the space-seperated pathnames of those libraries here. + * +#define GlxStaticServerLib /full/path/name/to/glx/servGL/libServerGlx.a \ + /full/path/name/to/glx/servGL/libMesaGlx.a + */ + +/* + * If you want to build only the DIS (Document Imaging Subset of XIE) + * uncomment this line. This option is only relevant when XIE is built. + * +#define BuildDIS YES + */ + +/* + * By default, the sample config files for xinit, xdm and xfs are installed + * only when there is no pre-existing version installed. Uncommenting the + * following lines will force the sample versions to be installed even if + * it means over-writing existing versions. + * +#define InstallXinitConfig YES +#define InstallXdmConfig YES +#define InstallFSConfig YES + */ + +/* + * By default the application defaults files are always installed. + * Uncommenting the the following will prevent exising application + * defaults files from being over-written. + * +#define InstallAppDefFiles NO + */ + +/* + * If you are running Solaris x86, and want to disable building support + * for the aperture driver, uncomment this. + * +#define HasSolx86ApertureDriver NO + */ + +/* + * If you are running NetBSD 0.9C or later, or OpenBSD and want to disable + * building support for the NetBSD aperture driver, uncomment this. + * +#define HasNetBSDApertureDriver NO + */ + +/* + * If you are running SVR3 and have the mmap driver installed (for linear + * framebuffer access) uncomment this. + * +#define HasSVR3mmapDrv YES + */ + +/* + * If you are using an SVR3 (like ISC 4.x) which supports long file names, + * you can * uncomment this to have manual pages installed under their + * full names + * +#define ExpandManNames YES + */ + +/* + * For a POSIXized build on Interactive uncomment this + * Could be used with gcc 'till Version 2.6.3 + * Should be used with gcc 2.7.2. + * +#define UsePosix YES + */ + +/* + * If you want XDMAUTH support (if you have Wraphelp.c), uncomment this. + * +#define HasXdmAuth YES + */ + +/* + * To forceably build static libraries in addition to shared libraries, + * uncomment this. + * +#define ForceNormalLib YES + */ + +/* + * Uncomment this if your default tools (eg, gcc, ld, as, etc) are + * not the Linux ELF versions. + * +#define LinuxElfDefault NO + */ + +/* + * To use ELF format shared libraries for Linux, uncomment this. + * Note: gcc-2.6.0-941008 and gas-941008 (or later) is required for this. + * Check linux.cf if you have problems regarding the location of elf-aware + * gcc and gas binaries. + * + * The default setting of this is the same as the setting of LinuxElfDefault + * +#define UseElfFormat YES + */ + +/* + * If you have trouble with make bombing out in Xlib, try uncommenting this. + * You will not get dependencies as a result, but better than nothing. + * +#define MakeHashTableBug YES + */ + +/* + * If you do not want your man pages compress under SVR3 systems that + * support it, uncomment this. + * +#define CompressManPages NO + */ + +/* + * LinuxDoc stuff. Uncomment those of these you want. Check in + * lnxdoc.tmpl for other things you might need to define/change here. + * +#define HasLinuxDoc YES +#define HasLatex YES +#define HasDvips YES +#define BuildLinuxDocHtml YES +#define BuildAllDocs YES + */ + +/* + * To install Japanese versions of the documentation uncomment this. + * Note: The Japanese documentation consists of a subset of the + * XFree86 3.1 docs. + * +#define InstallJapaneseDocs YES + */ + +/* + * By default, XF86Contrib is defined so build only those parts of + * of the contrib distribution supported by XFree86. To prevent this + * from being defined, uncomment the following. + * +#define DontDefineXF86Contrib + */ + diff --git a/Xserver/config/cf/xfree86.cf b/Xserver/config/cf/xfree86.cf new file mode 100644 index 0000000..470cb66 --- /dev/null +++ b/Xserver/config/cf/xfree86.cf @@ -0,0 +1,1228 @@ +XCOMM $XFree86: xc/config/cf/xfree86.cf,v 3.129.2.22 1998/02/24 19:05:43 hohndel Exp $ +/* + * This configuration file contains all of the configuration + * information for the XFree86 based X Servers. + * + * Most of these settings can be overridden in a vendor.cf or the + * BeforeVendor part of the site.def file. + */ +XCOMM $XConsortium: xfree86.cf /main/34 1996/12/06 11:45:18 rws $ + +/* + * The LinkKit needs to inherit some settings (from the xc build that + * generated it) before we go too much further... + */ +#ifndef XF86LinkKit +#define XF86LinkKit NO +#endif +#if XF86LinkKit +#include +#endif + +/* + * Default settings for which X Servers to build. + */ + +/* + * For Intel x86 platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef i386Architecture +#ifndef XF86SVGAServer +#define XF86SVGAServer YES +#endif +#ifndef XF86VGA16Server +#define XF86VGA16Server YES +#endif +#ifndef XF86VGA16DualServer +#define XF86VGA16DualServer YES +#endif +#ifndef XF86MonoServer +#define XF86MonoServer YES +#endif +#ifndef XF86MonoDualServer +#define XF86MonoDualServer YES +#endif +#ifndef XF86S3Server +#define XF86S3Server YES +#endif +#ifndef XF86S3VServer +#define XF86S3VServer YES +#endif +#ifndef XF86I8514Server +#define XF86I8514Server YES +#endif +#ifndef XF86Mach8Server +#define XF86Mach8Server YES +#endif +#ifndef XF86Mach32Server +#define XF86Mach32Server YES +#endif +#ifndef XF86Mach64Server +#define XF86Mach64Server YES +#endif +#ifndef XF86P9000Server +#define XF86P9000Server YES +#endif +#ifndef XF86AGXServer +#define XF86AGXServer YES +#endif +#ifndef XF86W32Server +#define XF86W32Server YES +#endif +#ifndef XF86I128Server +#define XF86I128Server YES +#endif +#ifndef XF86GLINTServer +#define XF86GLINTServer YES +#endif +#if defined(LinuxArchitecture) +#ifndef XF86FBDevServer +#define XF86FBDevServer YES +#endif +#endif +#endif + +/* + * For Digital Alpha platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef AlphaArchitecture +#ifndef XF86S3Server +#define XF86S3Server YES +#endif +#ifndef XF86S3VServer +#define XF86S3VServer YES +#endif +#ifndef XF86Mach64Server +#define XF86Mach64Server YES +#endif +#ifndef XF86P9000Server +#define XF86P9000Server YES +#endif +#ifndef XF86I128Server +#define XF86I128Server YES +#endif +#ifndef XF86TGAServer +#define XF86TGAServer YES +#endif +#ifndef XF86SVGAServer +#define XF86SVGAServer YES +#endif +#ifndef XF86VGA16Server +#define XF86VGA16Server YES +#endif +#ifndef XF86MonoServer +#define XF86MonoServer YES +#endif +#ifndef XF86GLINTServer +#define XF86GLINTServer YES +#endif +#if defined(LinuxArchitecture) +#ifndef XF86FBDevServer +#define XF86FBDevServer YES +#endif +#endif +#ifndef XF86SvgaDrivers +#define XF86SvgaDrivers mga s3v +#endif +#ifndef XF86Vga16Drivers +#define XF86Vga16Drivers generic +#endif +#ifndef XF86Vga2Drivers +#define XF86Vga2Drivers generic +#endif +#endif + +/* + * For Motorola 68k platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef Mc68020Architecture +#ifndef XF68FBDevServer +#define XF68FBDevServer YES +#define XF68FBDev77C32 NO +#define XF68FBDevIMSTT NO +#define XF68FBDevMach64 NO +#define XF68FBDevPermedia2 NO +#endif +#ifndef BuildXF86Setup +#define BuildXF86Setup NO +#endif +#endif + +/* + * For ARM platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef ArmArchitecture +#ifndef XF68FBDevServer +#define XF68FBDevServer YES +#define XF68FBDevCFB8 YES +#define XF68FBDevCFB16 YES +#define XF68FBDevCFB24 YES +#define XF68FBDevCFB32 YES +#define XF68FBDevIPLAN2p2 NO +#define XF68FBDevIPLAN2p4 NO +#define XF68FBDevIPLAN2p8 NO +#define XF68FBDevILBM NO +#define XF68FBDevAFB NO +#define XF68FBDev77C32 NO +#define XF68FBDevMach64 NO +#define XF68FBDevIMSTT NO +#define XF68FBDevPermedia2 NO +#endif +#ifndef BuildXF86Setup +#define BuildXF86Setup NO +#endif +#endif + +/* + * For Mips/Arc platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef ArcArchitecture +#ifndef XF86S3Server +#define XF86S3Server YES +#endif +#if defined(LinuxArchitecture) +#ifndef XF86FBDevServer +#define XF86FBDevServer YES +#endif +#endif +#ifndef BuildXF86Setup +#define BuildXF86Setup NO +#endif +#endif + +/* + * For PowerPC platforms, the default is to build all X servers which + * are supported on this platform. + */ +#ifdef PowerPCArchitecture +#ifndef XF86SVGAServer +#define XF86SVGAServer NO +#endif +#ifndef XF86VGA16Server +#define XF86VGA16Server NO +#endif +#ifndef XF86S3Server +#define XF86S3Server NO +#endif +#ifndef XF68FBDevServer +#define XF68FBDevServer YES +#define XF68FBDevCFB8 YES +#define XF68FBDevCFB16 YES +#define XF68FBDevCFB24 NO +#define XF68FBDevCFB32 YES +#define XF68FBDevIPLAN2p2 NO +#define XF68FBDevIPLAN2p4 NO +#define XF68FBDevIPLAN2p8 NO +#define XF68FBDevILBM NO +#define XF68FBDevAFB YES +#define XF68FBDev77C32 YES +#define XF68FBDevIMSTT YES +#define XF68FBDevMach64 YES +#define XF68FBDevPermedia2 YES +#endif +#ifndef BuildXF86Setup +#define BuildXF86Setup NO +#endif +#endif + +/* For SPARC PCI platforms, the default is to build all X servers which are + * supported on this platform. + */ +#ifdef SparcArchitecture +#ifndef XF86Mach64Server +#define XF86Mach64Server YES +#endif +#ifndef BuildXF86Setup +#define BuildXF86Setup NO +#endif +#endif + +/* + * The following disables all X servers not already enabled above + */ +#ifndef XF86VGA16Server +# define XF86VGA16Server NO +# ifndef XF86VGA16DualServer +# define XF86VGA16DualServer NO +# endif +#endif + +#ifndef XF86MonoServer +# define XF86MonoServer NO +# ifndef XF86MonoDualServer +# define XF86MonoDualServer NO +# endif +#endif + +#ifndef XF86S3Server +# define XF86S3Server NO +#endif + +#ifndef XF86S3VServer +# define XF86S3VServer NO +#endif + +#ifndef XF86I8514Server +# define XF86I8514Server NO +#endif + +#ifndef XF86Mach8Server +# define XF86Mach8Server NO +#endif + +#ifndef XF86Mach32Server +# define XF86Mach32Server NO +#endif + +#ifndef XF86Mach64Server +# define XF86Mach64Server NO +#endif + +#ifndef XF86AGXServer +# define XF86AGXServer NO +#endif + +#ifndef XF86P9000Server +# define XF86P9000Server NO +#endif + +#ifndef XF86W32Server +# define XF86W32Server NO +#endif + +#ifndef XF86I128Server +# define XF86I128Server NO +#endif + +#ifndef XF86GLINTServer +# define XF86GLINTServer NO +#endif + +#ifndef XF86TGAServer +# define XF86TGAServer NO +#endif + +#if XF86S3Server +# define XF86S3Dir s3 +#else +# define XF86S3Dir /**/ +#endif + +#if XF86S3VServer +# define XF86S3VDir s3_virge +#else +# define XF86S3VDir /**/ +#endif + +#if XF86I8514Server +# define XF86I8514Dir ibm8514 +#else +# define XF86I8514Dir /**/ +#endif + +#if XF86Mach8Server +# define XF86Mach8Dir mach8 +#else +# define XF86Mach8Dir /**/ +#endif + +#if XF86Mach32Server +# define XF86Mach32Dir mach32 +#else +# define XF86Mach32Dir /**/ +#endif + +#if XF86Mach64Server +# define XF86Mach64Dir mach64 +#else +# define XF86Mach64Dir /**/ +#endif + +#if XF86P9000Server +# define XF86P9000Dir p9000 +#else +# define XF86P9000Dir /**/ +#endif + +#if XF86AGXServer +# define XF86AGXDir agx +#else +# define XF86AGXDir /**/ +#endif + +#if XF86W32Server +# define XF86W32Dir et4000w32 +#else +# define XF86W32Dir /**/ +#endif + +#if XF86I128Server +# define XF86I128Dir i128 +#else +# define XF86I128Dir /**/ +#endif + +#if XF86GLINTServer +# define XF86GLINTDir glint +#else +# define XF86GLINTDir /**/ +#endif + +#if XF86TGAServer +# define XF86TGADir tga +#else +# define XF86TGADir /**/ +#endif + +#ifndef BuildPC98Servers +#define BuildPC98Servers NO +#endif + +#ifndef XF98GANBWAPServer +# define XF98GANBWAPServer BuildPC98Servers +#endif + +#ifndef XF98NEC480Server +# define XF98NEC480Server BuildPC98Servers +#endif + +#ifndef XF98NKVNECServer +# define XF98NKVNECServer BuildPC98Servers +#endif + +#ifndef XF98WABSServer +# define XF98WABSServer BuildPC98Servers +#endif + +#ifndef XF98WABEPServer +# define XF98WABEPServer BuildPC98Servers +#endif + +#ifndef XF98WSNAServer +# define XF98WSNAServer BuildPC98Servers +#endif + +#ifndef XF98TGUIServer +# define XF98TGUIServer BuildPC98Servers +#endif + +#ifndef XF98MGAServer +# define XF98MGAServer BuildPC98Servers +#endif + +#ifndef XF98SVGAServer +# define XF98SVGAServer BuildPC98Servers +#endif + +#ifndef XF98EGCServer +# define XF98EGCServer BuildPC98Servers +#endif + +#ifndef XF98NECS3Server +# define XF98NECS3Server BuildPC98Servers +#endif + +#ifndef XF98PWSKBServer +# define XF98PWSKBServer BuildPC98Servers +#endif + +#ifndef XF98PWLBServer +#define XF98PWLBServer BuildPC98Servers +#endif + +#ifndef XF98GA968Server +#define XF98GA968Server BuildPC98Servers +#endif + +#if XF98NECS3Server +# define XF98NECS3Dir s3nec +#else +# define XF98NECS3Dir /**/ +#endif + +#if XF98PWSKBServer +# define XF98PWSKBDir s3pwskb +#else +# define XF98PWSKBDir /**/ +#endif + +#if XF98PWLBServer +# define XF98PWLBDir s3pwlb +#else +# define XF98PWLBDir /**/ +#endif + +#if XF98GA968Server +# define XF98GA968Dir s3ga968 +#else +# define XF98GA968Dir /**/ +#endif + +#undef XF86AccelServerDirs +#define XF86AccelServerDirs XF86S3Dir XF86S3VDir XF86I8514Dir \ + XF86Mach8Dir XF86Mach32Dir XF86Mach64Dir \ + XF86P9000Dir XF86AGXDir XF86W32Dir \ + XF86I128Dir XF86GLINTDir XF86TGADir + +#undef XF86AccelServer +#if XF86S3Server || XF86S3VServer || XF86I8514Server || XF86Mach8Server || \ + XF86Mach32Server || XF86Mach64Server || XF86P9000Server || \ + XF86AGXServer || XF86W32Server || XF86I128Server || XF86TGAServer || \ + XF86GLINTServer +# define XF86AccelServer YES +#else +# define XF86AccelServer NO +#endif + +#undef XF98AccelServerDirs +#define XF98AccelServerDirs XF98NECS3Dir XF98PWSKBDir XF98PWLBDir XF98GA968Dir + +#undef XF98AccelServer +#if XF98NECS3Server || XF98PWSKBServer || XF98PWLBServer || XF98GA968Server +# define XF98AccelServer YES +#else +# define XF98AccelServer NO +#endif + +/* + * Driver list for several of the X Servers. + */ +#ifndef XF86SvgaDrivers +# ifdef AlphaArchitecture +# define XF86SvgaDrivers mga tvga8900 s3v nv +# else +# if defined(LinuxArchitecture) +# define XF86SvgaDrivers nv et4000 et3000 pvga1 gvga r128 ati sis tvga8900 \ + cirrus ncr77c22 compaq mga oak al2101 \ + ali cl64xx video7 ark mx realtek s3_savage s3v apm \ + s3_svga neo chips cyrix rendition p9x00 \ + spc8110 i740 i810 tdfx smi generic +# else +# define XF86SvgaDrivers nv et4000 et3000 pvga1 gvga r128 ati sis tvga8900 \ + cirrus ncr77c22 compaq mga oak al2101 \ + ali cl64xx video7 ark mx realtek s3v apm \ + s3_svga neo chips cyrix rendition p9x00 \ + spc8110 i740 i810 tdfx smi generic +# endif +# endif +#endif + +#ifndef XF98SvgaDrivers +# define XF98SvgaDrivers generic +#endif + +#ifndef XF86Vga16Drivers +# define XF86Vga16Drivers et4000 et3000 ncr77c22 ati sis tvga8900 \ + oak cl64xx generic +#endif + +#ifndef XF98Vga16Drivers +# define XF98Vga16Drivers generic +#endif + +#ifndef XF86Vga2Drivers +# ifdef AlphaArchitecture +# define XF86Vga2Drivers generic +# else +# define XF86Vga2Drivers et4000 et3000 pvga1 gvga ati sis tvga8900 \ + cirrus ncr77c22 /*compaq*/ oak cl64xx generic +# endif +#endif + +#ifndef XF86Vga2Banked +# define XF86Vga2Banked YES +#endif + +#ifndef XF86MonoDrivers +# define XF86MonoDrivers hgc1280 sigma apollo hercules +#endif + +/* This doesn't do everything (yet) */ +#ifndef XF86S3Drivers +# if !defined(AlphaArchitecture) +# define XF86S3Drivers newmmio mmio_928 s3_generic +# else +# define XF86S3Drivers newmmio mmio_928 s3_generic +# endif +#endif + +#ifndef XF86S3VDrivers +# define XF86S3VDrivers s3_virge +#endif + +#ifndef XF86W32Drivers +# define XF86W32Drivers et4000w32 +#endif + +#if XF68FBDevServer || XF86FBDevServer +# ifndef XF68FBDevIPLAN2p2 +# define XF68FBDevIPLAN2p2 YES +# endif +# ifndef XF68FBDevIPLAN2p4 +# define XF68FBDevIPLAN2p4 YES +# endif +# ifndef XF68FBDevIPLAN2p8 +# define XF68FBDevIPLAN2p8 YES +# endif +# ifndef XF68FBDevILBM +# define XF68FBDevILBM YES +# endif +# ifndef XF68FBDevAFB +# define XF68FBDevAFB YES +# endif +# ifndef XF68FBDevCFB8 +# define XF68FBDevCFB8 YES +# endif +# ifndef XF68FBDevCFB16 +# define XF68FBDevCFB16 YES +# endif +# ifndef XF68FBDevCFB24 +# if defined(i386Architecture) || defined(AlphaArchitecture) +# define XF68FBDevCFB24 YES +# else +# define XF68FBDevCFB24 NO +# endif +# endif +# ifndef XF68FBDevCFB32 +# define XF68FBDevCFB32 YES +# endif +/* Accelerated stuff */ +# ifndef XF68FBDev77C32 +# define XF68FBDev77C32 YES +# endif +# ifndef XF68FBDevIMSTT +# define XF68FBDevIMSTT YES +# endif +# ifndef XF68FBDevMach64 +# define XF68FBDevMach64 YES +# endif +# ifndef XF68FBDevPermedia2 +# define XF68FBDevPermedia2 YES +# endif +#else +# ifndef XF68FBDevIPLAN2p2 +# define XF68FBDevIPLAN2p2 NO +# endif +# ifndef XF68FBDevIPLAN2p4 +# define XF68FBDevIPLAN2p4 NO +# endif +# ifndef XF68FBDevIPLAN2p8 +# define XF68FBDevIPLAN2p8 NO +# endif +# ifndef XF68FBDevILBM +# define XF68FBDevILBM NO +# endif +# ifndef XF68FBDevAFB +# define XF68FBDevAFB NO +# endif +# ifndef XF68FBDevCFB8 +# define XF68FBDevCFB8 NO +# endif +# ifndef XF68FBDevCFB16 +# define XF68FBDevCFB16 NO +# endif +# ifndef XF68FBDevCFB24 +# define XF68FBDevCFB24 NO +# endif +# ifndef XF68FBDevCFB32 +# define XF68FBDevCFB32 NO +# endif +# ifndef XF68FBDev77C32 +# define XF68FBDev77C32 NO +# endif +# ifndef XF68FBDevIMSTT +# define XF68FBDevIMSTT NO +# endif +# ifndef XF68FBDevMach64 +# define XF68FBDevMach64 NO +# endif +# ifndef XF68FBDevPermedia2 +# define XF68FBDevPermedia2 NO +# endif +#endif + +#ifndef XnestServer +#define XnestServer YES +#endif + +#ifndef XVirtualFramebufferServer +#define XVirtualFramebufferServer YES +#endif + +/* + * The X servers need to run as root on most OSs. We're now using a + * wrapper in that case, but we still need to make it known that the + * servers need SetUID. When only using xdm, this (and the wrapper) + * are not required. Disabling this automatically disables use of the + * wrapper. + */ +#if !defined(i386MachArchitecture) && !defined(OS2Architecture) +#ifndef XserverNeedsSetUID +#define XserverNeedsSetUID YES +#endif +#endif + +/* + * The server-side of PEX is not 64-bit clean. + */ +#ifndef BuildPextExt +#ifdef AlphaArchitecture +#define BuildPexExt NO +#endif +#endif + +/* + * PEX doesn't work for 1-bit and 4-bit servers + */ +#if !defined(BuildPexExt) || BuildPexExt +#undef BuildPexExt +#if XF86AccelServer || XF86SVGAServer || XF98AccelServer || \ + XF98GANBWAPServer || XF98NEC480Server || XF98NKVNECServer || \ + XF98WABSServer || XF98WABEPServer || XF98WSNAServer || XF98TGUIServer || \ + XF98MGAServer || XF98SVGAServer || XF68FBDevServer || XF86FBDevServer +#define BuildPexExt YES +#else +#define BuildPexExt NO +#endif +#endif + +/* + * Build GLX server interface + * --- Does't work for 1-bit and 4-bit servers + */ +#if !defined(BuildGlxExt) || BuildGlxExt +# undef BuildGlxExt +# if XF86AccelServer || XF86SVGAServer || XF98AccelServer || \ + XF98GANBWAPServer || XF98NEC480Server || XF98NKVNECServer || \ + XF98WABSServer || XF98WABEPServer || XF98WSNAServer || XF98TGUIServer || \ + XF98MGAServer || XF98SVGAServer || XF68FBDevServer || XF86FBDevServer +# define BuildGlxExt YES +# else +# define BuildGlxExt NO +# endif +#endif + +/* + * XIE doesn't work for our 1-bit and 4-bit servers + */ +#if !defined(BuildXIE) || BuildXIE +#undef BuildXIE +#if XF86AccelServer || XF86SVGAServer || XF98AccelServer || \ + XF98GANBWAPServer || XF98NEC480Server || XF98NKVNECServer || \ + XF98WABSServer || XF98WABEPServer || XF98WSNAServer || XF98TGUIServer || \ + XF98MGAServer || XF98SVGAServer || XF68FBDevServer || XF86FBDevServer +#define BuildXIE YES +#else +#define BuildXIE NO +#endif +#endif + +#ifndef BuildXIElib +#define BuildXIElib YES +#endif + +#ifndef BuildDBElib +#define BuildDBElib YES +#endif + +#ifndef BuildRECORDlib +#define BuildRECORDlib YES +#endif + +#ifndef BuildXKBlib +#define BuildXKBlib YES +#endif + +#ifndef BuildScreenSaverExt +#define BuildScreenSaverExt YES +#endif + +/* + * Build XInput support + */ +#ifndef BuildXInputExt +#define BuildXInputExt YES +#endif + +/* + * Include support for these XInput devices + */ +#ifndef WacomSupport +#define WacomSupport YES +#endif +#ifndef ElographicsSupport +#define ElographicsSupport YES +#endif +#ifndef DynaproSupport +#define DynaproSupport YES +#endif +#ifndef MicroTouchSupport +#define MicroTouchSupport YES +#endif +#ifndef SummaSketchSupport +#define SummaSketchSupport YES +#endif +#ifndef AceCadSupport +#define AceCadSupport YES +#endif +#ifndef DialBoxSupport +#if SystemV || SystemV4 +#define DialBoxSupport NO +#else +#define DialBoxSupport YES +#endif +#endif +#ifndef JoystickSupport +#define JoystickSupport NO +#endif +#ifndef CalcompSupport +#define CalcompSupport YES +#endif + +/* + * Build the extra extension libs even when not including the extra extensions + * in the servers + */ +#ifndef BuildScreenSaverLibrary +#define BuildScreenSaverLibrary YES +#endif +#ifndef BuildXF86MiscLibrary +#define BuildXF86MiscLibrary YES +#endif +#ifndef BuildXF86DGALibrary +#define BuildXF86DGALibrary YES +#endif +#ifndef BuildXF86VidModeLibrary +#define BuildXF86VidModeLibrary YES +#endif +#ifndef BuildDPMSLibrary +#define BuildDPMSLibrary YES +#endif + +/* + * Build the XFree86-VidMode extension + */ +#ifndef BuildXF86VidModeExt +#define BuildXF86VidModeExt YES +#endif + +/* + * Build the XFree86-Misc extension + */ +#ifndef BuildXF86MiscExt +#define BuildXF86MiscExt YES +#endif + +/* + * Build XF86Setup -- needs Tk and Tcl + */ +#ifndef BuildXF86Setup +#if HasTk && HasTcl && BuildXF86VidModeLibrary && BuildXF86MiscLibrary && BuildXKBlib +#define BuildXF86Setup YES +#else +#define BuildXF86Setup NO +#endif +#endif + +/* + * Build Japanese versions of XF86Setup -- needs Japanised Tk and Tcl + */ +#ifndef BuildJpXF86Setup +#if HasJpTk && HasJpTcl && BuildXF86VidModeLibrary && BuildXF86MiscLibrary && BuildXKBlib +#define BuildJpXF86Setup YES +#else +#define BuildJpXF86Setup NO +#endif +#endif + +#ifndef XF86SetupUsesStaticTk +#define XF86SetupUsesStaticTk YES +#endif +#ifndef XF86SetupUsesStaticTcl +#define XF86SetupUsesStaticTcl YES +#endif + +/* + * Build the XFree86 DGA support + */ +#ifndef BuildXF86DGA +#define BuildXF86DGA YES +#endif + +/* + * Build the DPMS extension support + */ +#ifndef BuildDPMSExt +#define BuildDPMSExt YES +#endif + +#if Malloc0ReturnsNull +#ifndef XtMalloc0ReturnsNullDefines +#define XtMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines -DXTMALLOC_BC +#endif +#endif + +#ifndef UseInternalMalloc +#define UseInternalMalloc YES +#endif + +#ifndef HasDlsymBug +#define HasDlsymBug NO +#endif + +/* + * The expiry date for beta versions + * + * 853286400 is Wed Jan 15 00:00:00 1997 GMT + * 855964800 is Sat Feb 15 00:00:00 1997 GMT + * 866332800 is Sun Jun 15 00:00:00 1997 GMT + */ +#ifndef XF86ServerExpiry +#define XF86ServerExpiry 866332800 +#endif + +/* + * Build the font server + */ +#ifndef BuildFontServer +#define BuildFontServer YES +#endif + +/* + * By default, build all of the fonts. + */ +#ifndef Build75DpiFonts +#define Build75DpiFonts YES +#endif +#ifndef Build100DpiFonts +#define Build100DpiFonts YES +#endif +#ifndef BuildSpeedoFonts +#define BuildSpeedoFonts YES +#endif +#ifndef BuildType1Fonts +#define BuildType1Fonts YES +#endif +#ifndef BuildCyrillicFonts +#define BuildCyrillicFonts YES +#endif +#ifndef UseKoi8RForCyrillic +#define UseKoi8RForCyrillic YES +#endif + +/* + * By default, create the local font directory + */ +#ifndef MakeLocalFontDir +#define MakeLocalFontDir YES +#endif + +/* + * Build scanpci? + */ +#ifndef BuildScanpci +#if SystemV || SystemV4 || (defined(LinuxArchitecture) && !defined(Mc68020Architecture) && !defined(PowerPCArchitecture) && !defined(ArmArchitecture)) || defined(i386BsdArchitecture) || defined(LynxOSArchitecture) || defined(OS2Architecture) +#define BuildScanpci YES +#else +#define BuildScanpci NO +#endif +#endif + +#ifndef CompressAllFonts +#define CompressAllFonts YES +#endif + +#ifndef GzipFontCompression +#define GzipFontCompression YES +#endif + +#ifndef StripInstalledPrograms +#define StripInstalledPrograms YES +#endif + +#ifndef HasLinuxDoc +#define HasLinuxDoc NO +#endif + +#ifndef InstallJapaneseDocs +#define InstallJapaneseDocs NO +#endif + +#if BuildXF86DGA +#define XFree86DGADefines -DXFreeXDGA +#else +#define XFree86DGADefines /**/ +#endif + +#ifndef MakeHasPosixVariableSubstitutions +#if !HasBsdMake +#define MakeHasPosixVariableSubstitutions NO +#else +#define MakeHasPosixVariableSubstitutions YES +#endif +#endif + +/* Server defines required for all OSs */ +#ifndef XFree86ServerDefines +#define XFree86ServerDefines -DSTATIC_COLOR -DAVOID_GLYPHBLT -DPIXPRIV LinkKitDefines XFree86DGADefines +#endif + +#ifndef XFree86ServerOSDefines +#define XFree86ServerOSDefines -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR +#endif + +#ifndef XFree86ConsoleDefines +#ifdef i386BsdArchitecture +#define XFree86ConsoleDefines -DPCCONS_SUPPORT -DSYSCONS_SUPPORT -DPCVT_SUPPORT +#else +#define XFree86ConsoleDefines /**/ +#endif +#endif + +/* Support for USB mouse */ +#ifndef UsbMouseSupport +#define UsbMouseSupport NO +#endif +/* Does this OS has libusb ? */ +#ifndef HasLibUsb +#define HasLibUsb NO +#endif + +#ifndef UseServerLock +#define UseServerLock YES +#endif + +#if XF86LinkKit +/* + * Definitions for LinkKit self-containment. This should work whether or not + * UseInstalled is defined. + */ +# ifndef HasLdRunPath +# define HasLdRunPath NO +# endif + +# ifndef TopIncludes +# ifdef IncRoot +# define TopIncludes -I$(INCROOT) +# else +# define TopIncludes /**/ +# endif +# endif +# ifndef ClientLibDir +# if defined(UsrLibDir) || HasLdRunPath +# define ClientLibDir /**/ +# else +# define ClientLibDir -L$(USRLIBDIR) +# endif +# endif +# ifndef LdPreLib +# if defined(LdPostLib) && defined(UsrLibDir) && !HasLdRunPath +# define LdPreLib -L$(USRLIBDIR) +# else +# define LdPreLib /**/ +# endif +# endif +# ifndef LdPostLib +# if defined(UsrLibDir) && !HasLdRunPath +# define LdPostLib -L$(USRLIBDIR) +# else +# define LdPostLib /**/ +# endif +# endif + +#endif + +#ifndef LinkKitDefines +#if XF86LinkKit +#define LinkKitDefines -DLINKKIT +#else +#define LinkKitDefines /**/ +#endif +#endif + +#ifndef ServerExtraDefines +#define ServerExtraDefines XFree86ServerDefines +#endif + +#ifndef ServerOSDefines +#define ServerOSDefines XFree86ServerOSDefines +#endif + +#ifndef LinkKitDir +#define LinkKitDir $(USRLIBDIR)/Server +#endif + +LINKKITDIR = LinkKitDir +XF98LINKKITDIR = LinkKitDir + +/* + * Some commonly refered to directories are defined here. + */ + +#if XF86LinkKit + XF86SRC = $(TOP) + XF86ACCELSRC = $(XF86SRC)/lib86 + XF86COMSRC = $(XF86SRC)/lib86 + XF86CONFIGSRC = $(XF86SRC) + XF86HWSRC = $(XF86SRC)/lib86 + XF86OSSRC = $(XF86SRC)/lib86 + DRIVERSRC = $(XF86SRC)/drivers + VGADRIVERSRC = $(XF86SRC)/drivers/vga256 +VGA16DRIVERSRC = $(XF86SRC)/drivers/vga16 + VGA2DRIVERSRC = $(XF86SRC)/drivers/vga2 + MONODRIVERSRC = $(XF86SRC)/drivers/mono + S3DRIVERSRC = $(XF86SRC)/drivers/s3 + S3VDRIVERSRC = $(XF86SRC)/drivers/s3_virge + + XF98SRC = $(TOP) + XF98ACCELSRC = $(XF98SRC)/lib98 + XF98COMSRC = $(XF98SRC)/lib98 + XF98CONFIGSRC = $(XF98SRC) + XF98HWSRC = $(XF98SRC)/lib98 + XF98HWNECSRC = $(XF98SRC)/lib98 + XF98HWPWSKBSRC = $(XF98SRC)/lib98 + XF98HWPWLBSRC = $(XF98SRC)/lib98 + XF98HWGA968SRC = $(XF98SRC)/lib98 + XF98OSSRC = $(XF98SRC)/lib98 + XF98DRIVERSRC = $(XF98SRC)/drivers98 + XF98VGADRIVERSRC = $(XF98SRC)/drivers98/vga256 +XF98VGA16DRIVERSRC = $(XF98SRC)/drivers98/vga16 + XF98VGA2DRIVERSRC = $(XF98SRC)/drivers98/vga2 + XF98MONODRIVERSRC = $(XF98SRC)/drivers98/mono +XF98NECS3DRIVERSRC = $(XF98SRC)/drivers98/s3nec +XF98PWSKBDRIVERSRC = $(XF98SRC)/drivers98/s3pwskb + XF98PWLBDRIVERSRC = $(XF98SRC)/drivers98/s3pwlb +XF98GA968DRIVERSRC = $(XF98SRC)/drivers98/s3ga968 + +#ifdef SiteIConfigFiles +#undef SiteIConfigFiles +#endif +#define SiteIConfigFiles $(TOP)/xf86site.def $(TOP)/Imakefile $(IRULESRC)/host.def +#else + XF86SRC = $(SERVERSRC)/hw/xfree86 + XF86ACCELSRC = $(XF86SRC)/accel + XF86COMSRC = $(XF86SRC)/common + XF86CONFIGSRC = $(XF86COMSRC) + XF86HWSRC = $(XF86SRC)/common_hw + XF86OSSRC = $(XF86SRC)/os-support + VGADRIVERSRC = $(XF86SRC)/vga256/drivers +VGA16DRIVERSRC = $(XF86SRC)/vga16/drivers + VGA2DRIVERSRC = $(XF86SRC)/vga2/drivers + MONODRIVERSRC = $(XF86SRC)/mono/drivers + S3DRIVERSRC = $(XF86SRC)/accel/s3/drivers + S3VDRIVERSRC = $(XF86SRC)/accel/s3_virge/drivers + + XF68SRC = $(SERVERSRC)/hw/xfree68 + XF68COMSRC = $(XF68SRC)/common + XF68CONFIGSRC = $(XF68COMSRC) + XF68OSSRC = $(XF68SRC)/os-support + + XF98SRC = $(SERVERSRC)/hw/xfree98 + XF98ACCELSRC = $(XF98SRC)/accel + XF98COMSRC = $(XF98SRC)/common + XF98CONFIGSRC = $(XF98COMSRC) + XF98HWSRC = $(XF98SRC)/common_hw/generic + XF98HWNECSRC = $(XF98SRC)/common_hw/nec + XF98HWPWSKBSRC = $(XF98SRC)/common_hw/pwskb + XF98HWPWLBSRC = $(XF98SRC)/common_hw/pwlb + XF98HWGA968SRC = $(XF98SRC)/common_hw/ga968 + XF98OSSRC = $(XF98SRC)/os-support + XF98VGADRIVERSRC = $(XF98SRC)/vga256/drivers +XF98VGA16DRIVERSRC = $(XF98SRC)/vga16/drivers + XF98VGA2DRIVERSRC = $(XF98SRC)/vga2/drivers + XF98MONODRIVERSRC = $(XF98SRC)/mono/drivers +XF98NECS3DRIVERSRC = $(XF98SRC)/accel/s3nec/drivers +XF98PWSKBDRIVERSRC = $(XF98SRC)/accel/s3pwskb/drivers + XF98PWLBDRIVERSRC = $(XF98SRC)/accel/s3pwlb/drivers +XF98GA968DRIVERSRC = $(XF98SRC)/accel/s3ga968/drivers +#endif + +/* + * Installed location of the XFree86 documentation + */ + + XFREE86DOCDIR = $(LIBDIR)/doc + XFREE86PSDOCDIR = $(XFREE86DOCDIR)/PostScript + XFREE86HTMLDOCDIR = $(XFREE86DOCDIR)/html +XFREE86JAPANESEDOCDIR = $(XFREE86DOCDIR)/Japanese + +/* + * Other stuff used in the X Server source. + */ + +#ifndef AsmDefines +#define AsmDefines /**/ +#endif + +#ifndef OtherIConfigFiles +#define OtherIConfigFiles $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules +#endif + +#ifndef XFree86Version +#define XFree86Version 3320 +#endif + +#ifndef XVendorString +#define XVendorString "The XFree86 Project, Inc" +#endif + +#ifndef XVendorRelease +#define XVendorRelease XFree86Version +#endif + +#ifndef UseRgbTxt +#define UseRgbTxt YES +#endif + +#ifndef ManSuffix +#define ManSuffix 1 +#endif + +/* + * GNU Compiler stuff + */ +#ifndef HasGcc2 +#define HasGcc2 NO +#endif +#ifndef HasGcc +#define HasGcc HasGcc2 +#endif +#ifndef HasGcc2ForCplusplus +#define HasGcc2ForCplusplus HasGcc2 +#endif + +#if HasGcc +#ifndef DefaultCCOptions +#ifdef UseInstalled +#define DefaultCCOptions /* -ansi */ +#else +#define DefaultCCOptions -ansi -pedantic +#endif +#endif +#if defined(UseInstalled) || XF86LinkKit +#ifndef UseGccMakeDepend +#define UseGccMakeDepend YES +#endif +#endif +#endif + +#if HasGcc2 && defined(i386Architecture) +#ifndef DefaultGcc2i386Opt +#define DefaultGcc2i386Opt -O2 -fno-strength-reduce +#endif +#endif + +#ifndef DontDefineXF86Contrib +#define XF86Contrib +#endif + +#ifndef HasMktemp +#define HasMktemp YES +#endif + +#include diff --git a/Xserver/config/imake/Imakefile b/Xserver/config/imake/Imakefile new file mode 100644 index 0000000..16734bc --- /dev/null +++ b/Xserver/config/imake/Imakefile @@ -0,0 +1,54 @@ +XCOMM $TOG: Imakefile /main/10 1997/04/30 15:39:17 kaleb $ +XCOMM +XCOMM +XCOMM +XCOMM +XCOMM $XFree86: xc/config/imake/Imakefile,v 3.6.2.1 1997/06/11 12:08:33 dawes Exp $ + +XCOMM Some compilers generate fatal errors if an -L directory does +XCOMM not exist. Since BUILDLIBDIR may not exist yet suppress its use. + LDPRELIB = + LDPRELIBS = + +DEPLIBS = + +INCLUDES = -I$(TOP)/include $(TOP_X_INCLUDES)/X11 +CPP_PROGRAM = CppCmd +CPP_DEFINES = -DCPP_PROGRAM="\"$(CPP_PROGRAM)\"" +DEFINES = $(SIGNAL_DEFINES) $(BOOTSTRAPCFLAGS) $(CPP_DEFINES) + +#if defined(MacIIArchitecture) || defined(SequentArchitecture) || defined(i386ScoArchitecture) +XBSDLIB = /**/ +#endif + +#if !defined(OS2Architecture) +#undef ImakeDependency +#define ImakeDependency(dummy) @@\ +Makefile:: ProgramTargetName(imake) + +#if CrossCompiling +SimpleHostProgramTarget(imake) +#else +SimpleProgramTarget(imake) +#endif +InstallLinkKitNamedProg(imake,imake,$(LINKKITDIR)/config/imake) +#else /* OS2Architecture */ +all:: + +CCOPTIONS = -Zsysv-signals +EXTRA_LIBRARIES = /*nothing*/ +SimpleProgramTarget(imake) +InstallLinkKitNamedProg(imake,imake,$(LINKKITDIR)/config/imake) +InstallNamedProg(imakesvc.cmd,imakesvc.cmd,$(BINDIR)) +InstallLinkKitNamedProg(imakesvc.cmd,imakesvc.cmd,$(LINKKITDIR)/config/imake) +#endif + +#if HasClearmake +bootstrapdepend: depend +#else +bootstrapdepend: +#endif + +clean:: + RemoveFile(ProgramTargetName(ccimake)) + $(RM) -r bootstrap diff --git a/Xserver/config/imake/Makefile.ini b/Xserver/config/imake/Makefile.ini new file mode 100644 index 0000000..4846ab4 --- /dev/null +++ b/Xserver/config/imake/Makefile.ini @@ -0,0 +1,73 @@ +# $TOG: Makefile.ini /main/25 1997/02/19 18:00:59 mgreess $ +# +# WARNING WARNING WARNING WARNING WARNING WARNING WARNING +# +# This is NOT an automatically generated Makefile! It is hand-crafted as a +# bootstrap, may need editing for your system. The BOOTSTRAPCFLAGS variable +# may be given at the top of the build tree for systems that do not define +# any machine-specific preprocessor symbols. +# +# $XFree86: xc/config/imake/Makefile.ini,v 3.4.2.1 1997/06/11 12:08:33 dawes Exp $ + +BOOTSTRAPCFLAGS = +CC = cc +CDEBUGFLAGS = -O +INCLUDES = -I../../include -I../../imports/x11/include/X11 +CFLAGS = $(BOOTSTRAPCFLAGS) $(CDEBUGFLAGS) $(INCLUDES) +SHELL = /bin/sh +RM = rm -f +MV = mv +MAKE = make +RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a \ + tags TAGS make.log +NPROC = 1 + +imake:: + @echo "making imake with BOOTSTRAPCFLAGS=$(BOOTSTRAPCFLAGS) in config/imake" + +imake:: imake.o + $(CC) -o imake $(CFLAGS) imake.o + +imake.o: ccimake imake.c + $(CC) -c $(CFLAGS) `./ccimake` imake.c + +ccimake: ccimake.c + $(CC) -o ccimake $(CFLAGS) ccimake.c + +# a derived object erroneously would get shared across platforms by clearmake +.NO_CONFIG_REC: ccimake + +bootstrap: + -@if [ -d bootstrap ]; then exit 0; else set -x; mkdir bootstrap; fi + $(MV) *.o imake bootstrap + +relink: + $(RM) imake + $(MAKE) $(MFLAGS) imake + +clean: + $(RM) ccimake imake.o imake + $(RM_CMD) \#* + $(RM) -r Makefile.proto Makefile Makefile.dep bootstrap + +depend: + +imake.exe:: + @echo making imake with BOOTSTRAPCFLAGS=-DWIN32 + +imake.exe:: imake.obj + cl -nologo imake.obj libc.lib kernel32.lib + +imake.obj: imake.c + cl -nologo -W2 -D__STDC__ -c -DWIN32 $(CFLAGS) imake.c + +clean.Win32: + if exist imake.exe del imake.exe + if exist imake.obj del imake.obj + +clean.os2: + imakesvc 4 imake imake.exe imake.o /imake.exe + +imake.os2: imake.c + $(CC) -DBSD43 $(CFLAGS) -o imake.exe imake.c + copy imake.exe \\ diff --git a/Xserver/config/imake/ccimake.c b/Xserver/config/imake/ccimake.c new file mode 100644 index 0000000..d917902 --- /dev/null +++ b/Xserver/config/imake/ccimake.c @@ -0,0 +1,47 @@ +/* $XConsortium: ccimake.c /main/15 1996/09/28 16:14:25 rws $ */ +/* + +Copyright (c) 1993, 1994 X Consortium + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of the X Consortium shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from the X Consortium. + +*/ + +/* + * Warning: This file must be kept as simple as posible so that it can + * compile without any special flags on all systems. Do not touch it unless + * you *really* know what you're doing. Make changes in imakemdep.h, not here. + */ + +#define CCIMAKE /* only get imake_ccflags definitions */ +#include "imakemdep.h" /* things to set when porting imake */ + +#ifndef imake_ccflags +#define imake_ccflags "-O" +#endif + +main() +{ + write(1, imake_ccflags, sizeof(imake_ccflags) - 1); + exit(0); +} + diff --git a/Xserver/config/imake/imake.c b/Xserver/config/imake/imake.c new file mode 100644 index 0000000..ced0096 --- /dev/null +++ b/Xserver/config/imake/imake.c @@ -0,0 +1,1509 @@ +/* $TOG: imake.c /main/97 1997/06/20 20:23:51 kaleb $ */ + +/*************************************************************************** + * * + * Porting Note * + * * + * Add the value of BOOTSTRAPCFLAGS to the cpp_argv table so that it will * + * be passed to the template file. * + * * + ***************************************************************************/ +/* $XFree86: xc/config/imake/imake.c,v 3.13.2.16 1998/03/01 00:34:54 dawes Exp $ */ + +/* + * +Copyright (c) 1985, 1986, 1987 X Consortium + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of the X Consortium shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from the X Consortium. + * + * Original Author: + * Todd Brunhoff + * Tektronix, inc. + * While a guest engineer at Project Athena, MIT + * + * imake: the include-make program. + * + * Usage: imake [-Idir] [-Ddefine] [-T template] [-f imakefile ] [-C Imakefile.c ] [-s] [-e] [-v] [make flags] + * + * Imake takes a template file (Imake.tmpl) and a prototype (Imakefile) + * and runs cpp on them producing a Makefile. It then optionally runs make + * on the Makefile. + * Options: + * -D define. Same as cpp -D argument. + * -I Include directory. Same as cpp -I argument. + * -T template. Designate a template other + * than Imake.tmpl + * -f specify the Imakefile file + * -C specify the name to use instead of Imakefile.c + * -s[F] show. Show the produced makefile on the standard + * output. Make is not run is this case. If a file + * argument is provided, the output is placed there. + * -e[F] execute instead of show; optionally name Makefile F + * -v verbose. Show the make command line executed. + * + * Environment variables: + * + * IMAKEINCLUDE Include directory to use in addition to "." + * IMAKECPP Cpp to use instead of /lib/cpp + * IMAKEMAKE make program to use other than what is + * found by searching the $PATH variable. + * Other features: + * imake reads the entire cpp output into memory and then scans it + * for occurences of "@@". If it encounters them, it replaces it with + * a newline. It also trims any trailing white space on output lines + * (because make gets upset at them). This helps when cpp expands + * multi-line macros but you want them to appear on multiple lines. + * It also changes occurences of "XCOMM" to "#", to avoid problems + * with treating commands as invalid preprocessor commands. + * + * The macros MAKEFILE and MAKE are provided as macros + * to make. MAKEFILE is set to imake's makefile (not the constructed, + * preprocessed one) and MAKE is set to argv[0], i.e. the name of + * the imake program. + * + * Theory of operation: + * 1. Determine the name of the imakefile from the command line (-f) + * or from the content of the current directory (Imakefile or imakefile). + * Call this . This gets added to the arguments for + * make as MAKEFILE=. + * 2. Determine the name of the template from the command line (-T) + * or the default, Imake.tmpl. Call this