XCOMM $XConsortium: Imakefile /main/r61_main/5 1996/02/02 18:44:52 gildea $
/*
 * Server Master Makefile
 */

#ifndef InstallXserverSetUID
#define InstallXserverSetUID NO
#endif
#define InstallServerSetUID InstallXserverSetUID

#include <Server.tmpl>

#define PreFbLibs $(DIX) $(OS) $(FONT)
#define BarePostFbLibs $(MFB) $(MI)
#define PostFbLibs BarePostFbLibs $(EXTENSIONS)
#define NoMfbBarePostFbLibs $(MI)
#define NoMfbPostFbLibs NoMfbBarePostFbLibs $(EXTENSIONS)

#define MFBBareLibs PreFbLibs BarePostFbLibs
#define NoMFBBareLibs PreFbLibs NoMfbBarePostFbLibs
#define MFBLibs PreFbLibs PostFbLibs
#define NoMFBLibs PreFbLibs NoMfbPostFbLibs
#define CFBLibs PreFbLibs $(CFB) PostFbLibs
#define CFB8Libs PreFbLibs $(CFB8) PostFbLibs
#define CFB16Libs PreFbLibs $(CFB16) PostFbLibs
#define CFB32Libs PreFbLibs $(CFB32) PostFbLibs

#if BuildPexExt
         PEXLIBS = PEX5/dipex/dispatch/libdidipex.a \
                   PEX5/dipex/swap/libdiswapex.a \
                   PEX5/dipex/objects/libdiobpex.a \
                   PEX5/dipex/dispatch/libdidipex.a \
                   PEX5/ddpex/mi/level4/libddpex4.a \
                   PEX5/ddpex/mi/level3/libddpex3.a \
                   PEX5/ddpex/mi/shared/libddpexs.a \
                   PEX5/ddpex/mi/level2/libddpex2.a \
                   PEX5/ddpex/mi/level1/libddpex1.a \
		   PEX5/ospex/libospex.a 
          PEXDIR = PEX5
#endif
#if BuildXInputExt
      XINPUTEXT = Xi/libxinput.a
          XIDIR = Xi
#endif
#if BuildXIE
      XIEEXT = XIE/dixie/libdixie.a XIE/mixie/libmixie.a 
      XIEDIR = XIE
#endif
#if BuildXKB
      XKBEXT = xkb/libxkb.a
      XKBDIR = xkb
#endif
#if BuildLBX
         LBXEXT = $(TOP)/workInProgress/lbx/programs/Xserver/lbx/liblbx.a \
                  $(TOP)/workInProgress/lbx/lib/lbxutil/liblbxutil.a
        LBXDIRS = $(TOP)/workInProgress/lbx/programs/Xserver/lbx \
                  $(TOP)/workInProgress/lbx/lib/lbxutil
#endif
#if BuildDBE
         DBEEXT = dbe/libdbe.a
         DBEDIR = dbe
#endif
#if BuildRECORD
         RECORDEXT = record/librecord.a
         RECORDDIR = record
#endif
#ifdef SiteExtensionLibs
     SITEEXTS = SiteExtensionLibs
#endif
#ifdef SiteExtensionDirs
     SITEEXTDIRS = SiteExtensionDirs
#endif

      OTHEREXTS = Xext/libext.a $(XKBEXT) $(XINPUTEXT) $(XIEEXT) \
                  $(LBXEXT) $(DBEEXT) $(RECORDEXT) $(SITEEXTS)
        EXTDIRS = Xext $(XKBDIR) $(XIDIR) $(XIEDIR) $(PEXDIR) \
                  $(LBXDIRS) $(DBEDIR) $(RECORDDIR) $(SITEEXTDIRS)
     EXTENSIONS = $(OTHEREXTS) $(PEXLIBS)
         XAULIB = $(XAUTHSRC)/libXau.a
       XDMCPLIB = $(XDMCPLIBSRC)/libXdmcp.a
             OS = os/libos.a $(XAULIB) $(XDMCPLIB)
        BSDEMUL = $(DEPXBSDLIB)
            MFB = mfb/libmfb.a
            CFB = cfb/libcfb.a cfb16/libcfb.a cfb32/libcfb.a
            CFB8 = cfb/libcfb.a
            CFB16 = cfb/libcfb.a cfb16/libcfb.a
            CFB32 = cfb/libcfb.a cfb32/libcfb.a
             MI = mi/libmi.a
            DIX = dix/libdix.a
           FONT = $(DEPFONTLIB)
#ifdef ServerExtraSysLibs
   EXTRASYSLIBS = ServerExtraSysLibs
#endif
#if SystemV4 || defined(SGIArchitecture) || UseRgbTxt
        SYSLIBS = MathLibrary Krb5Libraries $(EXTRASYSLIBS)
#else
        SYSLIBS = MathLibrary Krb5Libraries DBMLibrary $(EXTRASYSLIBS)
#endif
           CBRT = mi/cbrt.o
        STDDIRS = include dix os mi $(EXTDIRS)

XCOMM
XCOMM This turns off the default rule for compiling .c files because
XCOMM this makefile does not really know how to build it.  This is really
XCOMM just a hack because of the Sun version of make and nfs.
XCOMM
.c.o:

/*  		  Build rule blocks, add one for each server
 *  
 *  If a server needs mfb, its build block should have a line like:
 *  MFBDIR = mfb
 *  Similarly, its build block should have:
 *  CFB8DIR  = cfb   (if the servr needs 8 bit cfb)
 *  CFB16DIR = cfb16 (16 bit cfb)
 *  CFB32DIR = cfb32 (32 bit cfb)
 *  
 *  If a server does not need all of the above components, simply
 *  omit the relevant lines from the build block.
 *  
 *  Additional ddx directories can be split across three variables:
 *  DDXDIR1, DDXDIR2, and DDXDIR3.  Most servers only use DDXDIR1,
 *  but if two servers can be built on a platform then DDXDIR1 is
 *  typically set to the ddx directories that are shared by both
 *  servers, DDXDIR2 is the directories unique to one of the servers,
 *  and DDXDIR3 is the directories unique to the other server.
 *  
 *  If these guidelines are followed, a make at the top of the server
 *  tree should result in each subdirectory being built only once,
 *  even if multiple servers that share subdirectories are being built.
 */

#if XdecServer
XCOMM
XCOMM Digital MIPS based WS server (ultrix 4.2 and beyond)
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
DDXDIR1 = hw/dec/ws
DECDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
DECOBJS = hw/dec/ws/init.o hw/dec/ws/sdepthinit.o
DECLIBS = hw/dec/ws/libdec.a CFB8Libs
ServerTarget(Xdec,$(DECDIRS),$(DECOBJS),$(DECLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xdec
#endif
#endif /* XdecServer */


#if XdecMultiDepthServer
XCOMM
XCOMM Digital MIPS based WS server (ultrix 4.2 and beyond)
XCOMM Supports 8, 12, and 24 bit pixmaps
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1  = hw/dec/ws
DECDIRS1 = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR1) $(DEPDIRS)
DECOBJS1 = hw/dec/ws/init.o hw/dec/ws/mdepthinit.o
DECLIBS1 = hw/dec/ws/libdec.a CFBLibs
ServerTarget(Xdec_md,$(DECDIRS1),$(DECOBJS1),$(DECLIBS1),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xdec_md
#endif
#endif /* XdecMultiDepthServer */


#if XsunServer
XCOMM
XCOMM Sun server
XCOMM
MFBDIR = mfb
CFB8DIR = cfb
DDXDIR1 = hw/sun
SUNDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
#ifndef AmoebaArchitecture
SUNOBJS = hw/sun/sunInit.o
#else
SUNOBJS = hw/sun/sunInitColor.o
#endif
SUNLIBS = hw/sun/libsun.a CFB8Libs
SetUIDServerTarget(Xsun,$(SUNDIRS),$(SUNOBJS),$(SUNLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xsun
#endif
#endif /* XsunServer */


#if Xsun24Server
XCOMM
XCOMM Sun multiple pixmap depth (8, 12, 24) server
XCOMM
MFBDIR = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1 = hw/sun
SUN24DIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR1) $(DEPDIRS)
SUN24OBJS = hw/sun/sunInitMulti.o
SUN24LIBS = hw/sun/libsun.a CFBLibs
SetUIDServerTarget(Xsun24,$(SUN24DIRS),$(SUN24OBJS),$(SUN24LIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xsun24
#endif
#endif /* Xsun24Server */


#if XsunMonoServer
XCOMM
XCOMM Sun monochrome server
XCOMM
MFBDIR = mfb
DDXDIR1 = hw/sun
SUNMDIRS = $(STDDIRS) $(MFBDIR) $(DDXDIR1) $(DEPDIRS)
SUNMOBJS = hw/sun/sunInitMono.o hw/sun/sunInExMono.o
SUNMLIBS = hw/sun/libsun.a MFBBareLibs $(OTHEREXTS)
SetUIDServerTarget(XsunMono,$(SUNMDIRS),$(SUNMOBJS),$(SUNMLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XsunMono
#endif
#endif /* XsunMonoServer */


#if XsunAmoebaServer
XCOMM
XCOMM Sun server for Amoeba
XCOMM
MFBDIR = mfb
CFB8DIR = cfb
DDXDIR1 = hw/sunAmoeba
SUNDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
SUNOBJS = hw/sunAmoeba/sunInitColor.o
SUNLIBS = hw/sunAmoeba/libsun.a CFB8Libs
ServerTarget(Xsun,$(SUNDIRS),$(SUNOBJS),$(SUNLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xsun
#endif
#endif /* XsunAmoebaServer */


#if XsunAmoebaMonoServer
XCOMM
XCOMM Sun monochrome server for Amoeba
XCOMM
MFBDIR = mfb
DDXDIR1 = hw/sunAmoeba
SUNMDIRS = $(STDDIRS) $(MFBDIR) $(DDXDIR1) $(DEPDIRS)
SUNMOBJS = hw/sunAmoeba/sunInitMono.o hw/sunAmoeba/sunInExMono.o
SUNMLIBS = hw/sunAmoeba/libsun.a MFBBareLibs $(OTHEREXTS)
ServerTarget(XsunMono,$(SUNMDIRS),$(SUNMOBJS),$(SUNMLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XsunMono
#endif
#endif /* XsunAmoebaMonoServer */


#if XibmServer
XCOMM
XCOMM IBM server
XCOMM
#if SpecialMalloc
IBMALLOCLIB = hw/ibm/common/libibmalloc.a
#else
IBMALLOCLIB = 
#endif
MFBDIR  = mfb
CFB8DIR = cfb
DDXDIR1 = hw/ibm
IBMDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
IBMOBJS = hw/ibm/common/ibmcomm.o hw/ibm/common/ibmDate.o
IBMLIBS = hw/ibm/AIX/hft.o hw/ibm/libibm.a $(IBMALLOCLIB) CFB8Libs
ServerTarget(Xibm,$(IBMDIRS),$(IBMOBJS),$(IBMLIBS),$(SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xibm
#endif
#endif /* XibmServer */


#if XirisServer
XCOMM
XCOMM SGI Iris Server
XCOMM
DDXDIR1 = hw/sgi/IRIX hw/sgi/common hw/sgi/gr1 hw/sgi/nfb hw/sgi/rrm \
	hw/sgi/sgi
MFBDIR  = mfb
CFB8DIR = cfb
IRISDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
IRISOBJS =
IRISLIBS = 	$(DIX) $(OS) \
		hw/sgi/common/libcomm.a \
		hw/sgi/sgi/libsgi.a \
	   	hw/sgi/gr1/re2/libre2.a \
	   	hw/sgi/gr1/libgr1.a \
	   	hw/sgi/rrm/librrm.a \
		hw/sgi/nfb/libnfb.a \
		$(CFB8) $(MFB) $(MI) $(FONT) $(EXTENSIONS) \
		hw/sgi/IRIX/libirix.a
IRISSYSLIBS = $(SYSLIBS)
ServerTarget(Xiris,$(IRISDIRS),$(IRISOBJS),$(IRISLIBS),$(IRISSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xiris
#endif
#endif /* XirisServer */


#if XhpServer
XCOMM
XCOMM Hewlett Packard CFB Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB32DIR = cfb32
DDXDIR1 = hw/hp
HPSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB32DIR) $(DDXDIR1) $(DEPDIRS)
HPOBJS = hw/hp/hp.o
HPLIBS = CFB32Libs
HPSYSLIBS = $(CBRT) $(SYSLIBS)
ServerTarget(Xhp,$(HPSUBDIRS),$(HPOBJS),$(HPLIBS),$(HPSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall Xhp
#endif
#endif	/* XhpServer */


#ifdef XFree86Version
XF86INIT   = $(XF86COMSRC)/xf86Init.o $(XF86CONFIGSRC)/xf86IniExt.o
XF86MINIT  = $(XF86COMSRC)/xf86Init_m.o $(XF86CONFIGSRC)/xf86MIniExt.o
XF86CONFIG = $(XF86CONFIGSRC)/xf86_Option.o
XF86COMLIB = $(XF86COMSRC)/LibraryTargetName(xf86)
XF86OSLIB  = $(XF86OSSRC)/LibraryTargetName(xf86_os)
XF86HWLIB  = $(XF86HWSRC)/LibraryTargetName(xf86_hw)
XF86LIBS   = $(XF86INIT) $(XF86CONFIG) $(XF86COMLIB) $(XF86HWLIB)
XF86MLIBS  = $(XF86MINIT) $(XF86CONFIG) $(XF86COMLIB) $(XF86HWLIB)
 
XF98INIT       = $(XF98COMSRC)/xf86Init.o $(XF98CONFIGSRC)/xf86IniExt.o
XF98MINIT      = $(XF98COMSRC)/xf86Init_m.o $(XF98CONFIGSRC)/xf86MIniExt.o
XF98CONFIG     = $(XF98CONFIGSRC)/xf86_Option.o
XF98COMLIB     = $(XF98COMSRC)/LibraryTargetName(xf86)
XF98OSLIB      = $(XF98OSSRC)/LibraryTargetName(xf86_os)
XF98HWLIB      = $(XF98HWSRC)/LibraryTargetName(xf86_hw)
XF98HWNECLIB   = $(XF98HWNECSRC)/LibraryTargetName(xf86_hw)
XF98HWPWSKBLIB = $(XF98HWPWSKBSRC)/LibraryTargetName(xf86_hw)
XF98HWPWLBLIB  = $(XF98HWPWLBSRC)/LibraryTargetName(xf86_hw)
XF98LIBS       = $(XF98INIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWLIB)
XF98LIBSNEC    = $(XF98INIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWNECLIB)
XF98LIBSPWSKB  = $(XF98INIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWPWSKBLIB)
XF98LIBSPWLB   = $(XF98INIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWPWLBLIB)
XF98MLIBS      = $(XF98MINIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWLIB)
XF98MLIBSNEC   = $(XF98MINIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWNECLIB)
XF98MLIBSPWSKB = $(XF98MINIT) $(XF98CONFIG) $(XF98COMLIB) \
		 $(XF98HWPWSKBLIB)
XF98MLIBSPWLB  = $(XF98MINIT) $(XF98CONFIG) $(XF98COMLIB) \
	 	 $(XF98HWPWLBLIB)
#endif

#if XF86SVGAServer
XCOMM
XCOMM XFree86 SVGA Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1 = hw/xfree86
XF86SVGASUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                  $(DDXDIR1) $(DEPDIRS)
XF86SVGAOBJS = $(XF86COMSRC)/XF86_SVGA.o $(XF86SRC)/vga256/vga256Conf.o
XF86SVGALIBS = $(VGADRIVERSRC)/libdriver256.a $(XF86SRC)/vga256/libvga256.a \
               $(XF86LIBS) CFBLibs $(XF86OSLIB)
XF86SVGASYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_SVGA,$(XF86SVGASUBDIRS),$(XF86SVGAOBJS),$(XF86SVGALIBS),$(XF86SVGASYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_SVGA
#endif
#endif	/* XF86SVGAServer */


#if XF86VGA16Server
XCOMM
XCOMM XFree86 VGA 16 color Server
XCOMM
DDXDIR1 = hw/xfree86
#if XF86VGA16DualServer
XF86VGA16MONOOBJS = $(XF86SRC)/mono/monoConf.o
XF86VGA16MONOLIBS = $(MONODRIVERSRC)/libmonodrv.a $(XF86SRC)/mono/libmono.a
#endif
XF86VGA16SUBDIRS = $(STDDIRS) $(DDXDIR1) $(DEPDIRS)
XF86VGA16OBJS = $(XF86COMSRC)/XF86_VGA16.o $(XF86SRC)/vga16/vga16Conf.o \
                $(XF86SRC)/vga16/misc/vga16misc.o $(XF86VGA16MONOOBJS)
XF86VGA16LIBS = $(VGA16DRIVERSRC)/libdriver16.a $(XF86SRC)/vga16/libvga16.a \
                $(XF86VGA16MONOLIBS) $(XF86MLIBS) NoMFBBareLibs $(OTHEREXTS) \
                $(XF86OSLIB)
XF86VGA16SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_VGA16,$(XF86VGA16SUBDIRS),$(XF86VGA16OBJS),$(XF86VGA16LIBS),$(XF86VGA16SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_VGA16
#endif
#endif	/* XF86VGA16Server */

#if XF86W32Server
XCOMM
XCOMM XFree86 W32 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
DDXDIR1 = hw/xfree86
XF86W32SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
XF86W32OBJS = $(XF86COMSRC)/XF86_W32.o $(XF86ACCELSRC)/et4000w32/w32Conf.o
XF86W32LIBS = $(XF86ACCELSRC)/et4000w32/w32/libw32.a \
              $(XF86ACCELSRC)/et4000w32/cfb.w32/libcfb.a \
              $(XF86ACCELSRC)/et4000w32/w32/libw32.a \
              $(XF86ACCELSRC)/et4000w32/asm/libasm.a \
              $(XF86LIBS) CFB8Libs $(XF86OSLIB)
XF86W32SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_W32,$(XF86W32SUBDIRS),$(XF86W32OBJS),$(XF86W32LIBS),$(XF86W32SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_W32
#endif
#endif

#if XF86MonoServer
XCOMM
XCOMM XFree86 Monochrome VGA Server
XCOMM
DDXDIR1 = hw/xfree86
#if XF86MonoDualServer
XF86MONOMONOOBJS = $(XF86SRC)/mono/monoConf.o
XF86MONOMONOLIBS = $(MONODRIVERSRC)/libmonodrv.a $(XF86SRC)/mono/libmono.a
#endif
XF86MONOSUBDIRS = $(STDDIRS) $(MFBDIR) $(DDXDIR1) $(DEPDIRS)
XF86MONOOBJS = $(XF86COMSRC)/XF86_Mono.o $(XF86SRC)/vga2/vga2Conf.o \
               $(XF86SRC)/vga2/misc/vga2misc.o $(XF86MONOMONOOBJS)
XF86MONOLIBS = $(VGA2DRIVERSRC)/libdriver2.a $(XF86SRC)/vga2/libvga2.a \
	       $(XF86MONOMONOLIBS) $(XF86MLIBS) NoMFBBareLibs $(OTHEREXTS) \
               $(XF86OSLIB)
XF86MONOSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_Mono,$(XF86MONOSUBDIRS),$(XF86MONOOBJS),$(XF86MONOLIBS),$(XF86MONOSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_Mono
#endif
#endif	/* XF86MonoServer */


#if XF86S3Server
XCOMM
XCOMM XFree86 S3 Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1 = hw/xfree86
XF86S3SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                $(DDXDIR1) $(DEPDIRS)
XF86S3OBJS = $(XF86COMSRC)/XF86_S3.o $(XF86ACCELSRC)/s3/s3Conf.o \
             $(S3DRIVERSRC)/mmio_928/mmio_928.o \
             $(S3DRIVERSRC)/s3_generic/s3_generic.o
XF86S3LIBS = $(XF86ACCELSRC)/s3/libs3.a $(XF86ACCELSRC)/s3/s3mmio/libs3mmio.a \
             $(XF86LIBS) CFBLibs $(XF86ACCELSRC)/cache/libxf86cache.a \
             $(XF86OSLIB)
XF86S3SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_S3,$(XF86S3SUBDIRS),$(XF86S3OBJS),$(XF86S3LIBS),$(XF86S3SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_S3
#endif
#endif	/* XF86S3Server */


#if XF86I8514Server
XCOMM
XCOMM XFree86 8514 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
DDXDIR1 = hw/xfree86
XF868514SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
XF868514OBJS = $(XF86COMSRC)/XF86_8514.o
XF868514LIBS = $(XF86ACCELSRC)/ibm8514/lib8514.a $(XF86LIBS) CFB8Libs \
               $(XF86ACCELSRC)/cache/libxf86cache.a $(XF86OSLIB)
XF868514SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_8514,$(XF868514SUBDIRS),$(XF868514OBJS),$(XF868514LIBS),$(XF868514SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_8514
#endif
#endif	/* XF86I8514Server */


#if XF86Mach8Server
XCOMM
XCOMM XFree86 Mach8 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
DDXDIR1 = hw/xfree86
XF86MACH8SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DDXDIR1) $(DEPDIRS)
XF86MACH8OBJS = $(XF86COMSRC)/XF86_Mach8.o
XF86MACH8LIBS = $(XF86ACCELSRC)/mach8/libmach8.a $(XF86LIBS) CFB8Libs \
                $(XF86ACCELSRC)/cache/libxf86cache.a $(XF86OSLIB)
XF86MACH8SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_Mach8,$(XF86MACH8SUBDIRS),$(XF86MACH8OBJS),$(XF86MACH8LIBS),$(XF86MACH8SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_Mach8
#endif
#endif	/* XF86Mach8Server */


#if XF86Mach32Server
XCOMM
XCOMM XFree86 Mach32 Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
DDXDIR1  = hw/xfree86
XF86MACH32SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(DDXDIR1) \
                    $(DEPDIRS)
XF86MACH32OBJS = $(XF86COMSRC)/XF86_Mach32.o
XF86MACH32LIBS = $(XF86ACCELSRC)/mach32/libmach32.a $(XF86LIBS) CFB16Libs \
                 $(XF86ACCELSRC)/cache/libxf86cache.a $(XF86OSLIB)
XF86MACH32SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_Mach32,$(XF86MACH32SUBDIRS),$(XF86MACH32OBJS),$(XF86MACH32LIBS),$(XF86MACH32SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_Mach32
#endif
#endif	/* XF86Mach32Server */


#if XF86Mach64Server
XCOMM
XCOMM XFree86 Mach64 Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1  = hw/xfree86
XF86MACH64SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                    $(DDXDIR1) $(DEPDIRS)
XF86MACH64OBJS = $(XF86COMSRC)/XF86_Mach64.o
XF86MACH64LIBS = $(XF86ACCELSRC)/mach64/libmach64.a $(XF86LIBS) CFBLibs \
                 $(XF86OSLIB)
XF86MACH64SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_Mach64,$(XF86MACH64SUBDIRS),$(XF86MACH64OBJS),$(XF86MACH64LIBS),$(XF86MACH64SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_Mach64
#endif
#endif	/* XF86Mach64Server */


#if XF86P9000Server
XCOMM
XCOMM XFree86 P9000 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1 = hw/xfree86
XF86P9000SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                   $(DDXDIR1) $(DEPDIRS)
XF86P9000OBJS = $(XF86COMSRC)/XF86_P9000.o
XF86P9000LIBS = $(XF86ACCELSRC)/p9000/libp9000.a $(XF86LIBS) CFBLibs \
                $(XF86OSLIB)
XF86P9000SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_P9000,$(XF86P9000SUBDIRS),$(XF86P9000OBJS),$(XF86P9000LIBS),$(XF86P9000SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_P9000
#endif
#endif        /* XF86P9000Server */


#if XF86AGXServer
XCOMM
XCOMM XFree86 AGX Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1  = hw/xfree86
XF86AGXSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(DDXDIR1) \
                 $(DEPDIRS)
XF86AGXOBJS = $(XF86COMSRC)/XF86_AGX.o
XF86AGXLIBS = $(XF86ACCELSRC)/agx/libagx.a $(XF86LIBS) CFBLibs $(XF86OSLIB)
XF86AGXSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_AGX,$(XF86AGXSUBDIRS),$(XF86AGXOBJS),$(XF86AGXLIBS),$(XF86AGXSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_AGX
#endif
#endif        /* XF86AGXServer */


#if XF98GANBWAPServer
XCOMM
XCOMM XFree98 GA-98NB/WAP Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98GANBWAPSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR2) $(DEPDIRS)
XF98GANBWAPOBJS = $(XF98COMSRC)/XF86_SVGA.o $(XF98SRC)/vga256/ganbwapConf.o
XF98GANBWAPLIBS = $(XF98VGADRIVERSRC)/LibraryTargetName(driverganbwap) \
		  $(XF98SRC)/vga256/LibraryTargetName(ganbwap) $(XF98LIBS) \
		  CFBLibs $(XF98OSLIB)
XF98GANBWAPSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_GANBWAP,$(XF98GANBWAPSUBDIRS),$(XF98GANBWAPOBJS),$(XF98GANBWAPLIBS),$(XF98GANBWAPSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_GANBWAP
#endif
#endif	/* XF98GANBWAPServer */

#if XF98NEC480Server
XCOMM
XCOMM XFree98 NEC480 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98NEC480SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR2) $(DEPDIRS)
XF98NEC480OBJS = $(XF98COMSRC)/XF86_SVGA.o $(XF98SRC)/vga256/nec480Conf.o
XF98NEC480LIBS = $(XF98VGADRIVERSRC)/LibraryTargetName(drivernec480) \
		 $(XF98SRC)/vga256/LibraryTargetName(nec480) $(XF98LIBS) \
		 CFBLibs $(XF98OSLIB)
XF98NEC480SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_NEC480,$(XF98NEC480SUBDIRS),$(XF98NEC480OBJS),$(XF98NEC480LIBS),$(XF98NEC480SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_NEC480
#endif
#endif	/* XF98NEC480Server */

#if XF98NKVNECServer
XCOMM
XCOMM XFree98 NEC-CIRRUS/EPSON NKV/NKV2 Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98NKVNECSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR2) $(DEPDIRS)
XF98NKVNECOBJS = $(XF98COMSRC)/XF86_SVGA.o $(XF98SRC)/vga256/nkvnecConf.o
XF98NKVNECLIBS = $(XF98VGADRIVERSRC)/LibraryTargetName(drivernkvnec) \
		 $(XF98SRC)/vga256/LibraryTargetName(nkvnec) $(XF98LIBS) \
		 CFBLibs $(XF98OSLIB)
XF98NKVNECSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_NKVNEC,$(XF98NKVNECSUBDIRS),$(XF98NKVNECOBJS),$(XF98NKVNECLIBS),$(XF98NKVNECSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_NKVNEC
#endif
#endif	/* XF98NKVNECServer */

#if XF98WABSServer
XCOMM
XCOMM XFree98 WAB-S Server
XCOMM
MFBDIR  = mfb
CFB8DIR = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98WABSSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DDXDIR2) $(DEPDIRS)
XF98WABSOBJS = $(XF98COMSRC)/XF86_SVGA.o $(XF98SRC)/vga256/wabsConf.o
XF98WABSLIBS = $(XF98VGADRIVERSRC)/LibraryTargetName(driverwabs) \
	       $(XF98SRC)/vga256/LibraryTargetName(wabs) $(XF98LIBS) CFBLibs \
	       $(XF98OSLIB)
XF98WABSSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_WABS,$(XF98WABSSUBDIRS),$(XF98WABSOBJS),$(XF98WABSLIBS),$(XF98WABSSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_WABS
#endif
#endif	/* XF98WABSServer */

#if XF98EGCServer
XCOMM
XCOMM XFree98 EGC Server
XCOMM
DDXDIR2 = hw/xfree98
XF98EGCSUBDIRS = $(STDDIRS) $(DDXDIR2) $(DEPDIRS)
XF98EGCOBJS = $(XF98COMSRC)/XF86_VGA16.o $(XF98SRC)/vga16/vga16Conf.o \
                $(XF98SRC)/vga16/misc/vga16misc.o
XF98EGCLIBS = $(XF98VGA16DRIVERSRC)/LibraryTargetName(driver16) \
		$(XF98SRC)/vga16/LibraryTargetName(vga16) $(XF98MLIBS) \
		NoMFBBareLibs $(OTHEREXTS) $(XF98OSLIB)
XF98EGCSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_EGC,$(XF98EGCSUBDIRS),$(XF98EGCOBJS),$(XF98EGCLIBS),$(XF98EGCSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_EGC
#endif
#endif	/* XF98EGCServer */

#if XF98NECS3Server
XCOMM
XCOMM XFree98 NEC S3 Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98NECS3SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                   $(DDXDIR2) $(DEPDIRS)
XF98NECS3OBJS = $(XF98COMSRC)/XF86_S3.o $(XF98ACCELSRC)/s3nec/s3Conf.o \
                $(XF98NECDRIVERSRC)/mmio_928/mmio_928.o \
                $(XF98NECDRIVERSRC)/s3_generic/s3_generic.o
XF98NECS3LIBS = $(XF98ACCELSRC)/s3nec/libs3.a \
                $(XF98ACCELSRC)/s3nec/s3mmio/libs3mmio.a $(XF98LIBSNEC) \
                CFBLibs $(XF98ACCELSRC)/cache/libxf86cache.a $(XF98OSLIB)
XF98NECS3SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_NECS3,$(XF98NECS3SUBDIRS),$(XF98NECS3OBJS),$(XF98NECS3LIBS),$(XF98NECS3SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_NECS3
#endif
#endif	/* XF98NECS3Server */

#if XF98PWSKBServer
XCOMM
XCOMM XFree98 S3 PW/PCSKB Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98PWSKBSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                   $(DDXDIR2) $(DEPDIRS)
XF98PWSKBOBJS = $(XF98COMSRC)/XF86_S3.o $(XF98ACCELSRC)/s3pwskb/s3Conf.o \
                $(XF98PWSKBDRIVERSRC)/mmio_928/mmio_928.o \
                $(XF98PWSKBDRIVERSRC)/s3_generic/s3_generic.o
XF98PWSKBLIBS = $(XF98ACCELSRC)/s3pwskb/libs3.a \
                $(XF98ACCELSRC)/s3pwskb/s3mmio/libs3mmio.a $(XF98LIBSPWSKB) \
                CFBLibs $(XF98ACCELSRC)/cache/libxf86cache.a $(XF98OSLIB)
XF98PWSKBSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_PWSKB,$(XF98PWSKBSUBDIRS),$(XF98PWSKBOBJS),$(XF98PWSKBLIBS),$(XF98PWSKBSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_PWSKB
#endif
#endif	/* XF98PWSKBServer */

#if XF98PWLBServer
XCOMM
XCOMM XFree98 S3 PW/LB Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR2 = hw/xfree98
XF98PWLBSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) \
                  $(DDXDIR2) $(DEPDIRS)
XF98PWLBOBJS = $(XF98COMSRC)/XF86_S3.o $(XF98ACCELSRC)/s3pwlb/s3Conf.o \
               $(XF98PWLBDRIVERSRC)/mmio_928/mmio_928.o \
               $(XF98PWLBDRIVERSRC)/s3_generic/s3_generic.o
XF98PWLBLIBS = $(XF98ACCELSRC)/s3pwlb/libs3.a \
               $(XF98ACCELSRC)/s3pwlb/s3mmio/libs3mmio.a $(XF98LIBSPWLB) \
               CFBLibs $(XF98ACCELSRC)/cache/libxf86cache.a $(XF98OSLIB)
XF98PWLBSYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF98_PWLB,$(XF98PWLBSUBDIRS),$(XF98PWLBOBJS),$(XF98PWLBLIBS),$(XF98PWLBSYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF98_PWLB
#endif
#endif	/* XF98PWLBServer */


#if XF86I128Server
XCOMM
XCOMM XFree86 I128 Server
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
DDXDIR1  = hw/xfree86
XF86I128SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(DDXDIR1) \
                  $(DEPDIRS)
XF86I128OBJS = $(XF86COMSRC)/XF86_I128.o
XF86I128LIBS = $(XF86ACCELSRC)/i128/libi128.a $(XF86LIBS) CFBLibs \
               $(XF86ACCELSRC)/cache/libxf86cache.a $(XF86OSLIB)
XF86I128SYSLIBS = $(SYSLIBS)
SetUIDServerTarget(XF86_I128,$(XF86I128SUBDIRS),$(XF86I128OBJS),$(XF86I128LIBS),$(XF86I128SYSLIBS))
#ifndef ServerToInstall
#define ServerToInstall XF86_I128
#endif
#endif        /* XF86I128Server */


#if XnestServer
XCOMM
XCOMM Server with Xlib-based ddx
XCOMM
XNESTDDXDIR = hw/xnest
XNESTDIRS = $(STDDIRS) $(XNESTDDXDIR) $(DEPDIRS)
XNESTOBJS = 
XNEST = hw/xnest/libxnest.a
XNESTLIBS = $(DIX) $(OS) $(FONT) $(XNEST) $(MI) $(EXTENSIONS) $(XNEST)
XNESTSYSLIBS = $(LDPRELIB) $(XLIB) $(SYSLIBS)
ServerTarget(Xnest,$(XNESTDIRS),$(XNESTOBJS),$(XNESTLIBS),$(XNESTSYSLIBS))
InstallProgram(Xnest,$(BINDIR))
#endif /* XnestServer */


#if XnonServer
XCOMM
XCOMM non server, just compile sources for build test
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
Xnon: $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DEPDIRS)
#endif /* XnonServer */


#if XVirtualFramebufferServer
XCOMM
XCOMM server with Virtual (malloced) framebuffer
XCOMM
MFBDIR   = mfb
CFB8DIR  = cfb
CFB16DIR = cfb16
CFB32DIR = cfb32
XVFBDDXDIR  = hw/vfb
XVFBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(XVFBDDXDIR) $(DEPDIRS)
XVFBOBJS = hw/vfb/stubs.o
XVFB = hw/vfb/libvfb.a
XVFBLIBS = $(DIX) $(OS) $(FONT) $(XVFB) $(MFB) $(CFB) $(MI) $(EXTENSIONS)
XVFBSYSLIBS = $(SYSLIBS)
ServerTarget(Xvfb,$(XVFBDIRS),$(XVFBOBJS),$(XVFBLIBS),$(XVFBSYSLIBS))
InstallProgram(Xvfb,$(BINDIR))
#endif /* XVirtualFramebufferServer */


CFBDIRS = $(CFB8DIR) $(CFB16DIR) $(CFB32DIR)
DDXDIRS = $(DDXDIR1) $(DDXDIR2) $(DDXDIR3) $(XVFBDDXDIR) $(XNESTDDXDIR)
SUBDIRS = $(STDDIRS) $(MFBDIR) $(CFBDIRS) $(DDXDIRS)

#ifdef ServerToInstall
install::
	-(cd $(DESTDIR)$(BINDIR); $(RM) X; $(LN) ServerToInstall X)
#endif

#define IHaveSubdirs

DependSubdirs($(SUBDIRS))
MakeLintLibSubdirs($(SUBDIRS))
LintSubdirs($(SUBDIRS))

ForceSubdirs($(DEPDIRS) $(SUBDIRS))

InstallManPage(Xserver,$(MANDIR))
