XCOMM $XdotOrg: xc/programs/Xserver/Imakefile,v 1.37 2005/11/18 18:15:23 ajax Exp $ XCOMM $Xorg: Imakefile,v 1.4 2001/03/14 18:42:02 pookie Exp $ /**************************************************************************/ /* */ /* Copyright (c) 2001, 2011 NoMachine, http://www.nomachine.com/. */ /* */ /* NX-X11, NX protocol compression and NX extensions to this software */ /* are copyright of NoMachine. Redistribution and use of the present */ /* software is allowed according to terms specified in the file LICENSE */ /* which comes in the source distribution. */ /* */ /* Check http://www.nomachine.com/licensing.html for applicability. */ /* */ /* NX and NoMachine are trademarks of Medialogic S.p.A. */ /* */ /* All rights reserved. */ /* */ /**************************************************************************/ /* * Server Master Makefile */ XCOMM $XFree86: xc/programs/Xserver/Imakefile,v 3.296 2003/11/23 06:47:00 torrey Exp $ #ifndef InstallXserverSetUID #define InstallXserverSetUID NO #endif #define InstallServerSetUID InstallXserverSetUID #include /* On most systems the linker requires the libraries in dependency order. But we have no real order because there are cycles. We fix this by adding some libraries twice on the commandline. dependLib will add the dependency library to the commandline if the link order is important */ #if 1 /* This is currently enabled for all systems */ #define dependLib(x) x #else #define dependLib(x) #endif #if (defined (XFree86Version) || defined(XorgVersion)) /* Do not strip server binaries */ INSTPGMFLAGS = #endif #define PreFbLibs $(DIX) $(OS) $(XPDDX) #define PreFbLibsNoFont $(DIX) $(OS) #define BarePostFbLibs $(MFB) $(XPFBLIBS) $(MI) #define PostFbLibs BarePostFbLibs $(EXTENSIONS) #define NoMfbBarePostFbLibs $(XPFBLIBS) $(MI) #if !BuildXinerama #define NoMfbPostFbLibs NoMfbBarePostFbLibs $(EXTENSIONS) #else #define NoMfbPostFbLibs $(EXTENSIONS) NoMfbBarePostFbLibs $(EXTENSIONS) #endif #define MFBBareLibs PreFbLibs BarePostFbLibs #define NoMFBBareLibs PreFbLibs NoMfbBarePostFbLibs #define MFBLibs PreFbLibs PostFbLibs #define NoMFBLibs PreFbLibs NoMfbPostFbLibs #define CFBLibs PreFbLibs $(CFB) PostFbLibs #define CFB4Libs PreFbLibs $(CFB4) PostFbLibs #define CFB8Libs PreFbLibs $(CFB8) PostFbLibs #define CFB16Libs PreFbLibs $(CFB16) PostFbLibs #define CFB24Libs PreFbLibs $(CFB24) PostFbLibs #define CFB32Libs PreFbLibs $(CFB32) PostFbLibs #define NoMFBCFBLibs PreFbLibs $(CFB) NoMfbPostFbLibs #define NoMFBCFB8Libs PreFbLibs $(CFB8) NoMfbPostFbLibs #define FbPostFbLibs $(FB) NoMfbPostFbLibs #define FBLibs PreFbLibs FbPostFbLibs #define MiExtLibs $(SHADOW) #define AllFBLibs PreFbLibs $(FB) $(CFB) PostFbLibs #if BuildGlxExt # if BuildXF86DRI && ((defined(XF86Server) && XF86Server) \ || (defined(XorgServer) && XorgServer)) DRILIB = GL/dri/ModuleLibraryTargetName(dri) # else DRILIB = # endif # if GlxUseSGISI GLXLIB = GL/glx/ModuleLibraryTargetName(glx) \ GL/sgi-si/ModuleLibraryTargetName(GLcore) \ $(DRILIB) # else # if defined(GlxUseWindows) && GlxUseWindows XWin_GL.exe.GLXLIB = GL/glx/ModuleLibraryTargetName(glx_stdcall) \ GL/windows/ModuleLibraryTargetName(GLcore) # endif /* GlxUseWindows */ # if defined(Win32Architecture) && defined(GlxUseWindows) && GlxUseWindows GLXLIB = GL/glx/ModuleLibraryTargetName(glx_stdcall) \ GL/windows/ModuleLibraryTargetName(GLcore) # elif DoLoadableServer GLXLIB = GL/glx/ModuleLibraryTargetName(glx) \ GL/mesa/GLcore/ModuleLibraryTargetName(GLcore) # else GLXLIB = GL/glx/ModuleLibraryTargetName(glx) \ GL/mesa/GLcore/ModuleLibraryTargetName(GLcore) \ $(DRILIB) # endif # endif GLXDIR = GL # if defined(cygwinArchitecture) && defined(GlxUseWindows) && GlxUseWindows GLXEXT = $(if $($@.GLXLIB),$($@.GLXLIB), $(GLXLIB)) # else GLXEXT = $(GLXLIB) # endif #endif #if BuildXInputExt XINPUTEXT = Xi/LibraryTargetName(xinput) XIDIR = Xi #endif #if BuildXKB XKBEXT = xkb/LibraryTargetName(xkb) dependLib($(OS)) XKBDIR = xkb #if (defined(XFree86Version) || defined(XorgVersion)) XF86XKBOBJS = xkb/xf86KillSrv.o xkb/xf86VT.o xkb/xf86Private.o #endif #endif #if BuildLBX LBXEXT = lbx/LibraryTargetName(lbx) \ $(TOP)/lib/lbxutil/LibraryTargetName(lbxutil) LBXDIRS = lbx #endif #if BuildDBE DBEEXT = dbe/LibraryTargetName(dbe) #endif #if BuildDBE || BuildDBElib DBEDIR = dbe #endif #if BuildRECORD RECORDEXT = record/LibraryTargetName(record) #endif #if BuildRECORD || BuildRECORDlib RECORDDIR = record #endif #if BuildXTrap XTRAPEXT = XTrap/LibraryTargetName(xtrap) XTRAPDIR = XTrap #endif #ifdef SiteExtensionLibs SITEEXTS = SiteExtensionLibs #endif #ifdef SiteExtensionDirs SITEEXTDIRS = SiteExtensionDirs #endif #if DoLoadableServer && HasDlopen LIBDL = DlLibrary #endif LIBREGEX = RegexLibrary #if DoLoadableServer LIBCWRAPPER = os/libcwrapper.o #endif #if BuildXprint XPCONFIGDIR = XpConfig #ifndef XpRasterDDX #define XpRasterDDX YES #endif #ifndef XpColorPclDDX #define XpColorPclDDX YES #endif #ifndef XpMonoPclDDX #define XpMonoPclDDX NO #endif #ifndef XpPostScriptDDX #define XpPostScriptDDX YES #endif #if XpRasterDDX XPRASTLIB = Xprint/raster/LibraryTargetName(raster) #endif #if XpColorPclDDX XPPCLLIB = Xprint/pcl/LibraryTargetName(pcl) #endif #if XpMonoPclDDX XPMPCLLIB = Xprint/pcl-mono/LibraryTargetName(pcl) #endif #if XpPostScriptDDX XPPSLIB = Xprint/ps/LibraryTargetName(ps) #endif XPDDXLIBS = Xprint/LibraryTargetName(printer) \ $(XPRASTLIB) $(XPPCLLIB) $(XPMPCLLIB) $(XPPSLIB) XPDDXFBLIBS = $(MFB) $(CFB32) #if !PrintOnlyServer XPFBLIBS = $(XPDDXFBLIBS) XPDDX = $(XPDDXLIBS) #endif XPDDXDIR = Xprint #endif #if !BuildXprint || PrintOnlyServer XPFBLIBS = dix/LibraryTargetName(xpstubs) #endif #if BuildRender RENDERDIR = render RENDERLIB = $(RENDERDIR)/librender.a #endif #if BuildRandR RANDRDIR = randr RANDRLIB = $(RANDRDIR)/librandr.a #endif #if BuildXfixes FIXESDIR = xfixes FIXESLIB = $(FIXESDIR)/libxfixes.a #endif #if BuildDamage DAMAGEDIR = damageext DAMAGELIB = $(DAMAGEDIR)/libdamage.a #endif #if BuildComposite CWDIR = miext/cw COMPOSITEDIR = composite COMPOSITELIB = $(COMPOSITEDIR)/libcomposite.a #if DoLoadableServer CW = miext/cw/ModuleLibraryTargetName(cw) #else CW = miext/cw/LibraryTargetName(cw) #endif #endif #if DoLoadableServer EXTENSIONS = $(COMPOSITELIB) $(DAMAGELIB) $(DAMAGE) $(FIXESLIB) $(CW) \ $(OTHEREXTS) $(RANDRLIB) $(RENDERLIB) LOADABLEEXTS = $(MISCEXT) $(DBEEXT) $(RECORDEXT) $(GLXEXT) $(XTRAPEXT) MISCEXT = Xext/LibraryTargetName(ext) OTHEREXTS = Xext/LibraryTargetName(exts) $(XKBEXT) $(XINPUTEXT) \ $(LBXEXT) $(SITEEXTS) #else EXTENSIONS = $(COMPOSITELIB) $(DAMAGELIB) $(DAMAGE) $(FIXESLIB) $(CW) \ $(OTHEREXTS) $(GLXEXT) $(RANDRLIB) $(RENDERLIB) OTHEREXTS = Xext/LibraryTargetName(ext) $(XKBEXT) $(XINPUTEXT) \ $(LBXEXT) $(DBEEXT) $(RECORDEXT) $(SITEEXTS) $(XTRAPEXT) #endif EXTDIRS = Xext $(XKBDIR) $(XIDIR) $(GLXDIR) \ $(LBXDIRS) $(DBEDIR) $(RECORDDIR) $(SITEEXTDIRS) \ $(RANDRDIR) $(RENDERDIR) $(XTRAPDIR) $(XPCONFIGDIR) \ $(FIXESDIR) $(DAMAGEDIR) $(CWDIR) $(COMPOSITEDIR) #if BuildLBX || GzipFontCompression ZLIB = GzipLibrary #endif OS = os/LibraryTargetName(os) $(DEPXAUTHLIB) $(DEPXDMCPLIB) BSDEMUL = $(DEPXBSDLIB) #if DoLoadableServer MFB = mfb/ModuleLibraryTargetName(mfb) FB = fb/ModuleLibraryTargetName(fb) #if XF8_32Wid CFB = cfb/ModuleLibraryTargetName(cfb) \ cfb16/ModuleLibraryTargetName(cfb16) \ cfb24/ModuleLibraryTargetName(cfb24) \ cfb32/ModuleLibraryTargetName(cfb32) #else CFB = cfb/ModuleLibraryTargetName(cfb) \ cfb16/ModuleLibraryTargetName(cfb16) \ cfb32/ModuleLibraryTargetName(cfb32) #endif CFB8 = cfb/ModuleLibraryTargetName(cfb) CFB4 = cfb/ModuleLibraryTargetName(cfb) \ cfb4/ModuleLibraryTargetName(cfb4) CFB16 = cfb/ModuleLibraryTargetName(cfb) \ cfb16/ModuleLibraryTargetName(cfb16) CFB24 = cfb/ModuleLibraryTargetName(cfb) \ cfb24/ModuleLibraryTargetName(cfb24) CFB32 = cfb/ModuleLibraryTargetName(cfb) \ cfb32/ModuleLibraryTargetName(cfb32) DAMAGE = miext/damage/ModuleLibraryTargetName(damage) SHADOW = miext/shadow/ModuleLibraryTargetName(shadow) LAYER = miext/layer/ModuleLibraryTargetName(layer) #else MFB = mfb/LibraryTargetName(mfb) FB = fb/LibraryTargetName(fb) #if XF8_32Wid CFB = cfb16/LibraryTargetName(cfb16) \ cfb24/LibraryTargetName(cfb24) \ cfb32/LibraryTargetName(cfb32) \ cfb/LibraryTargetName(cfb) #else CFB = cfb16/LibraryTargetName(cfb16) \ cfb32/LibraryTargetName(cfb32) \ cfb/LibraryTargetName(cfb) #endif CFB8 = cfb/LibraryTargetName(cfb) CFB4 = cfb4/LibraryTargetName(cfb4) \ cfb/LibraryTargetName(cfb) CFB16 = cfb16/LibraryTargetName(cfb16) \ cfb/LibraryTargetName(cfb) CFB24 = cfb24/LibraryTargetName(cfb24) \ cfb/LibraryTargetName(cfb) CFB32 = cfb32/LibraryTargetName(cfb32) \ cfb/LibraryTargetName(cfb) DAMAGE = miext/damage/LibraryTargetName(damage) SHADOW = miext/shadow/LibraryTargetName(shadow) LAYER = miext/layer/LibraryTargetName(layer) #endif #if !HasFfs && (defined(mingwArchitecture) || defined(cygwinArchitecture)) /* Order of libraries is important when linking in mingw or * cygwin. libmi.a requires ffs from libdix.a. So it is added * after libmi.a on the commandline */ MI = mi/LibraryTargetName(mi) $(DIX) #else MI = mi/LibraryTargetName(mi) #endif MIINITEXTOBJ = mi/miinitext.o DIX = dix/LibraryTargetName(dix) FONTBASE = $(FONTLIBSRC)/fontbase.o \ $(FONTLIBSRC)/LibraryTargetName(fontbase) #if XserverStaticFontLib FONT = $(FONTLIBSRC)/LibraryTargetName(NX_Xfont) $(FREETYPE2LIB) #else FONT = $(LDPRELIB) $(XFONTLIB) $(FREETYPE2LIB) #endif FONTLIBS = $(FONT) $(XPFBLIBS) #if UsbMouseSupport #if !HasLibUsb USB = $(XF86OSSRC)/bsd/libusb/LibraryTargetName(usb) #else USB = UsbHidLib #endif #endif #ifdef ServerExtraSysLibs EXTRASYSLIBS = ServerExtraSysLibs #endif #if HasPam && HasPamMisc PAMLIBS = PamLibraries PamMiscLibraries #endif #if !(SystemV4 || defined(SGIArchitecture) || UseRgbTxt) DBMLIBS = DBMLibrary #endif SYSLIBS = $(ZLIB) MathLibrary Krb5Libraries $(DBMLIBS) $(USB) \ $(PAMLIBS) $(EXTRASYSLIBS) #if !HasCbrt CBRT = mi/LibraryTargetName(cbrt) #endif STDDIRS = include dix os mi $(XPDDXDIR) $(EXTDIRS) FBDIR = fb MFBDIR = mfb CFB4DIR = cfb4 CFB8DIR = cfb CFB16DIR = cfb16 CFB24DIR = cfb24 CFB32DIR = cfb32 AFBDIR = afb 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: .s.o: /* Build rule blocks, add one for each server * * If a server needs mfb, its build block should have a line like: * MFBSUBDIR = mfb * Similarly, its build block should have: * CFB4SUBDIR = cfb4 (if the server needs 4 bit cfb) * CFB8SUBDIR = cfb (8 bit cfb) * CFB16SUBDIR = cfb16 (16 bit cfb) * CFB24SUBDIR = cfb24 (24 bit cfb) * CFB32SUBDIR = cfb32 (32 bit cfb) * * If a server does not need all of the above components, simply * omit the relevant lines from the build block. * * 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 defined(XdecServer) && XdecServer XCOMM XCOMM Digital MIPS based WS server (ultrix 4.2 and beyond) XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb DECWSDDXDIR = hw/dec/ws DECDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(DECWSDDXDIR) $(DEPDIRS) DECOBJS = hw/dec/ws/init.o hw/dec/ws/sdepthinit.o DECLIBS = hw/dec/ws/LibraryTargetName(dec) CFB8Libs ServerTarget(Xdec,$(DECDIRS),$(DECOBJS), \ $(DECLIBS),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall Xdec #endif #endif /* XdecServer */ #if defined(XdecMultiDepthServer) && XdecMultiDepthServer XCOMM XCOMM Digital MIPS based WS server (ultrix 4.2 and beyond) XCOMM Supports 8, 12, and 24 bit pixmaps XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB16SUBDIR = cfb16 CFB24SUBDIR = cfb24 CFB32SUBDIR = cfb32 DECWSDDXDIR = hw/dec/ws DECDIRS1 = $(STDDIRS) $(MFBDIR) \ $(CFB8DIR) $(CFB16DIR) $(CFB24DIR) $(CFB32DIR) \ $(DECWSDDXDIR) $(DEPDIRS) DECOBJS1 = hw/dec/ws/init.o hw/dec/ws/mdepthinit.o DECLIBS1 = hw/dec/ws/LibraryTargetName(dec) CFBLibs ServerTarget(Xdec_md,$(DECDIRS1),$(DECOBJS1), \ $(DECLIBS1),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall Xdec_md #endif #endif /* XdecMultiDepthServer */ #if defined(XsunServer) && XsunServer XCOMM XCOMM Sun server XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb SUNDDXDIR = hw/sun #if DoLoadableServer SUNOBJS = hw/sun/sunInit.o hw/sun/sunInitExt.o hw/sun/stubs.o #elif (defined(XF86Server) && XF86Server) \ || (defined(XorgServer) && XorgServer) SUNOBJS = hw/sun/sunInit.o hw/sun/stubs.o #else SUNOBJS = hw/sun/sunInit.o #endif SUNDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(SUNDDXDIR) $(DEPDIRS) SUNLIBS = hw/sun/LibraryTargetName(sun) CFB8Libs SUNSYSLIBS = $(FONTLIBS) $(WIDECHARSYSLIB) $(SYSLIBS) SetUIDServerTarget(Xsun,$(SUNDIRS),$(SUNOBJS), \ $(LIBCWRAPPER) $(SUNLIBS) $(LOADABLEEXTS),$(SUNSYSLIBS)) #ifndef ServerToInstall #define ServerToInstall Xsun #endif #endif /* XsunServer */ #if defined(Xsun24Server) && Xsun24Server XCOMM XCOMM Sun multiple pixmap depth (8, 12, 24) server XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB16SUBDIR = cfb16 CFB24SUBDIR = cfb24 CFB32SUBDIR = cfb32 SUNDDXDIR = hw/sun SUN24DIRS = $(STDDIRS) $(MFBDIR) \ $(CFB8DIR) $(CFB16DIR) $(CFB24DIR) $(CFB32DIR) \ $(SUNDDXDIR) $(DEPDIRS) #if DoLoadableServer SUN24OBJS = hw/sun/sunInitMulti.o hw/sun/sunInitExt.o hw/sun/stubs.o #elif defined(XF86Server) && XF86Server \ || (defined(XorgServer) && XorgServer) SUN24OBJS = hw/sun/sunInitMulti.o hw/sun/stubs.o #else SUN24OBJS = hw/sun/sunInitMulti.o #endif SUN24LIBS = hw/sun/LibraryTargetName(sun) CFBLibs SetUIDServerTarget(Xsun24,$(SUN24DIRS),$(SUN24OBJS), \ $(LIBCWRAPPER) $(SUN24LIBS) $(LOADABLEEXTS),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall Xsun24 #endif #endif /* Xsun24Server */ #if defined(XsunMonoServer) && XsunMonoServer XCOMM XCOMM Sun monochrome server XCOMM MFBSUBDIR = mfb SUNDDXDIR = hw/sun SUNMDIRS = $(STDDIRS) $(MFBDIR) $(SUNDDXDIR) $(DEPDIRS) #if defined(XF86Server) && XF86Server \ || (defined(XorgServer) && XorgServer) SUNMOBJS = hw/sun/sunInitMono.o hw/sun/sunInExMono.o hw/sun/stubs.o #else SUNMOBJS = hw/sun/sunInitMono.o hw/sun/sunInExMono.o #endif SUNMLIBS = hw/sun/LibraryTargetName(sun) MFBBareLibs $(EXTENSIONS) SetUIDServerTarget(XsunMono,$(SUNMDIRS),$(SUNMOBJS), \ $(LIBCWRAPPER) $(SUNMLIBS) $(LOADABLEEXTS),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall XsunMono #endif #endif /* XsunMonoServer */ #if defined(XsunLynxServer) && XsunLynxServer XCOMM XCOMM Sun server for LynxOS microSPARC 2.4.0 XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb LYNXDDXDIR = hw/sunLynx SUNDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(LYNXDDXDIR) $(DEPDIRS) SUNOBJS = hw/sunLynx/sunLyInit.o SUNLIBS = hw/sunLynx/libsun.a CFB8Libs ServerTarget(Xsun,$(SUNDIRS),$(SUNOBJS), \ $(SUNLIBS),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall Xsun #endif #endif /* XsunLynxServer */ #if defined(XsunLynxMonoServer) && XsunLynxMonoServer XCOMM XCOMM Sun monochrome server for LynxOS microSPARC 2.4.0 XCOMM MFBSUBDIR = mfb LYNXDDXDIR = hw/sunLynx SUNMDIRS = $(STDDIRS) $(MFBDIR) $(LYNXDDXDIR) $(DEPDIRS) SUNMOBJS = hw/sunLynx/sunInitMono.o hw/sunLynx/sunInExMono.o SUNMLIBS = hw/sunLynx/libsun.a MFBBareLibs $(OTHEREXTS) ServerTarget(XsunMono,$(SUNMDIRS),$(SUNMOBJS), \ $(SUNMLIBS),$(FONTLIBS) $(SYSLIBS)) #ifndef ServerToInstall #define ServerToInstall XsunMono #endif #endif /* XsunLynxMonoServer */ #if HasParallelMake XCOMM XCOMM force non-parallel build of XF86 servers to prevent MUTEX overrides XCOMM #if defined(XF86Server) && XF86Server XF86SERVER = XFree86 #endif #if defined(XorgServer) && XorgServer XF86SERVER = Xorg #endif #if defined(XVirtualFramebufferServer) && XVirtualFramebufferServer XVFB = Xvfb #endif #if XdmxServer XDMX = Xdmx #endif #if defined(NXAgentServer) && NXAgentServer NXAGENT = nxagent #endif #if defined(NXWinServer) && NXWinServer && !MakeDllModules NXWIN = NXWin #endif #if (defined(XF86Server) && XF86Server) || \ (defined(XorgServer) && XorgServer) || \ (defined(NXAgentServer) && NXAgentServer) || \ (defined(XVirtualFramebufferServer) && XVirtualFramebufferServer) || \ (defined(XdmxServer) && XdmxServer) || \ (!MakeDllModules && defined(NXWinServer) && NXWinServer) MakeMutex($(XF86SERVER) $(XVFB) $(NXAGENT) $(NXWIN)) #endif MakeMutex($(STDDIRS) mfb fb cfb cfb16 cfb24 cfb32) #endif #if defined(XF86Server) && XF86Server XCOMM XCOMM XFree86 Server XCOMM FBSUBDIR = fb MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB16SUBDIR = cfb16 CFB24SUBDIR = cfb24 CFB32SUBDIR = cfb32 MIDAMAGEDIR = miext/damage SHADOWDIR = miext/shadow LAYERDIR = miext/layer #ifdef OS2Architecture SERVERDEFFILE = XFree86.def XNESTDEFFILE = Xnest.def XVFBDEFFILE = Xvfb.def #endif #if XF86AFB AFBSUBDIR = afb #endif XFREE86DDXDIR = hw/xfree86 XF86SERVERSUBDIRS = $(STDDIRS) $(MFBDIR) $(FBDIR) $(AFBDIR) \ $(CFB8DIR) $(CFB16DIR) $(CFB24DIR) $(CFB32DIR) \ $(SHADOWDIR) $(LAYERDIR) $(XFREE86DDXDIR) $(DEPDIRS) \ $(MIDAMAGEDIR) XF86INIT = $(XF86COMSRC)/xf86Init.o $(XF86COMSRC)/xf86IniExt.o XF86COMLIB = $(XF86COMSRC)/LibraryTargetName(xf86) XF86PARSLIB= $(XF86PARSERSRC)/LibraryTargetName(xf86config) XF86OSLIB = $(XF86OSSRC)/LibraryTargetName(xf86_os) #if XF86XAA XF86XAALIB = $(XF86SRC)/xaa/LibraryTargetName(xaa) #endif #if XF86EXA XF86EXALIB = $(XF86SRC)/exa/LibraryTargetName(exa) #endif #if XF86VgaHw XF86VGAHWLIB = $(XF86SRC)/vgahw/LibraryTargetName(vgahw) #endif #if XF86FBDevHw XF86FBDEVHWLIB = $(XF86SRC)/fbdevhw/LibraryTargetName(fbdevhw) #endif #if XF1Bpp || XF4Bpp XF1BPPLIB = $(XF86SRC)/xf1bpp/LibraryTargetName(xf1bpp) #endif #if XF4Bpp XF4BPPLIB = $(XF86SRC)/xf4bpp/LibraryTargetName(xf4bpp) #endif #if XF8_32Wid XF8_32WIDLIB = $(XF86SRC)/xf8_32wid/LibraryTargetName(xf8_32wid) #endif #if XF8_32Bpp XF8_32BPPLIB = $(XF86SRC)/xf8_32bpp/LibraryTargetName(xf8_32bpp) #endif #if XF8_16Bpp XF8_16BPPLIB = $(XF86SRC)/xf8_16bpp/LibraryTargetName(xf8_16bpp) #endif #if XFShadowFB XFSHADOWFBLIB = $(XF86SRC)/shadowfb/LibraryTargetName(shadowfb) #endif #if XF86AFB AFBLIB = afb/LibraryTargetName(afb) #endif XF86DRIVERLIB = $(XF86SRC)/drivers/LibraryTargetName(driver) #if XF86Ramdac XF86RAMDACLIB = $(XF86SRC)/ramdac/LibraryTargetName(ramdac) #endif #if XF86I2C XF86I2CLIB = $(XF86SRC)/i2c/LibraryTargetName(i2c) #endif #if XF86DDC XF86DDCLIB = $(XF86SRC)/ddc/LibraryTargetName(ddc) #endif #if XF86VBE XF86VBELIB = $(XF86SRC)/vbe/LibraryTargetName(vbe) #endif #if XF86RAC XF86RACLIB = $(XF86SRC)/rac/LibraryTargetName(rac) #endif #if XF86INT10_BUILD > X86EMU_GENERIC XF86INT10LIB = $(XF86OSSRC)/LibraryTargetName(int10) #else XF86INT10LIB = $(XF86SRC)/int10/LibraryTargetName(int10) #endif #if UseMemLeak MEMDEBUGLIB = $(TOP)/util/memleak/LibraryTargetName(memleak) #endif XF86IDRIVERLIB = $(XF86SRC)/input/LibraryTargetName(idriver) #if !DoLoadableServer XF86DRVOBJS = $(XF86SRC)/drivers/drvConf.o XF86DRVLIBS = $(XF86DRIVERLIB) $(XF86RAMDACLIB) $(XF86DDCLIB) $(XF86I2CLIB) \ $(XF86XAALIB) $(XF86EXALIB) $(XF86VGAHWLIB) $(XF86FBDEVHWLIB) \ $(XF8_32WIDLIB) $(XF8_32BPPLIB) \ $(XF8_16BPPLIB) \ $(XF4BPPLIB) $(XF1BPPLIB) $(XFSHADOWFBLIB) $(AFBLIB) XF86IDRVOBJS = $(XF86SRC)/input/drvConf.o XF86IDRVLIBS = $(XF86IDRIVERLIB) XF86SCANLIB = $(XF86SRC)/scanpci/LibraryTargetName(scanpci) XF86LIBS = $(MEMDEBUGLIB) $(XF86INIT) $(XF86COMLIB) $(XF86RACLIB) \ $(XF86PARSLIB) $(XF86VBELIB) $(XF86OSLIB) $(XF86INT10LIB) #else XF86LIBS = $(MEMDEBUGLIB) $(XF86INIT) $(XF86COMLIB) \ $(XF86PARSLIB) $(XF86OSLIB) #endif #if DoLoadableServer XF86LOADERLIB = $(XF86SRC)/loader/LibraryTargetName(loader) XF86MAINLIBS = PreFbLibsNoFont \ $(FONTBASE) $(OTHEREXTS) $(XF86COMLIB) \ NoMfbPostFbLibs XF86SERVERSYSLIBS = $(SYSLIBS) $(LIBDL) $(LIBREGEX) XF86SERVERLIBS = $(XF86DRVLIBS) $(XF86IDRVLIBS) $(XF86LIBS) $(XF86LOADERLIB) \ $(XF86COMLIB) $(XF86MAINLIBS) $(XF86SCANLIB) $(XF86OSLIB) #else XF86MAINLIBS = MiExtLibs AllFBLibs $(XF86COMLIB) $(MI) XF86SERVERSYSLIBS = $(FONTLIBS) $(SYSLIBS) $(LIBDL) $(LIBREGEX) XF86SERVERLIBS = $(XF86DRVLIBS) $(XF86IDRVLIBS) $(XF86LIBS) $(XF86LOADERLIB) \ $(XF86COMLIB) $(XF86MAINLIBS) $(XF86SCANLIB) $(XF86OSLIB) \ $(XF86DDCLIB) #endif XF86SERVEROBJS = $(XF86XKBOBJS) $(XF86DRVOBJS) $(XF86IDRVOBJS) #if HasParallelMake MakeMutex($(XF86SERVERSUBDIRS) $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS)) #endif #if ForceServerRemake $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS):: $(XF86SERVERSUBDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif SetUIDServerTarget(XFree86,$(XF86SERVERSUBDIRS),$(XF86SERVEROBJS) $(SERVERDEFFILE), \ $(XF86SERVERLIBS),$(XF86SERVERSYSLIBS)) #if DoLoadableServer ServerDriverSDKTarget(XFree86) #endif #ifndef ServerToInstall #define ServerToInstall XFree86 #endif #endif /* XF86Server */ #if defined(XorgServer) && XorgServer XCOMM XCOMM Xorg Server XCOMM FBSUBDIR = fb MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB16SUBDIR = cfb16 #if XF8_32Wid CFB24SUBDIR = cfb24 #endif CFB32SUBDIR = cfb32 MIDAMAGEDIR = miext/damage SHADOWDIR = miext/shadow LAYERDIR = miext/layer #ifdef OS2Architecture SERVERDEFFILE = Xorg.def XNESTDEFFILE = Xnest.def XVFBDEFFILE = Xvfb.def #endif #if XF86AFB AFBSUBDIR = afb #endif XFREE86DDXDIR = hw/xfree86 XF86SERVERSUBDIRS = $(STDDIRS) $(MFBDIR) $(FBDIR) $(AFBDIR) \ $(CFB8DIR) $(CFB16DIR) $(CFB24DIR) $(CFB32DIR) \ $(SHADOWDIR) $(LAYERDIR) $(XFREE86DDXDIR) $(DEPDIRS) \ $(MIDAMAGEDIR) XF86INIT = $(XF86COMSRC)/xf86Init.o $(XF86COMSRC)/xf86IniExt.o XF86COMLIB = $(XF86COMSRC)/LibraryTargetName(xf86) XF86PARSLIB= $(XF86PARSERSRC)/LibraryTargetName(xf86config) XF86OSLIB = $(XF86OSSRC)/LibraryTargetName(xf86_os) #if XF86XAA XF86XAALIB = $(XF86SRC)/xaa/LibraryTargetName(xaa) #endif #if XF86EXA XF86EXALIB = $(XF86SRC)/exa/LibraryTargetName(exa) #endif #if XF86VgaHw XF86VGAHWLIB = $(XF86SRC)/vgahw/LibraryTargetName(vgahw) #endif #if XF86FBDevHw XF86FBDEVHWLIB = $(XF86SRC)/fbdevhw/LibraryTargetName(fbdevhw) #endif #if XF1Bpp || XF4Bpp XF1BPPLIB = $(XF86SRC)/xf1bpp/LibraryTargetName(xf1bpp) #endif #if XF4Bpp XF4BPPLIB = $(XF86SRC)/xf4bpp/LibraryTargetName(xf4bpp) #endif #if XF8_32Wid XF8_32WIDLIB = $(XF86SRC)/xf8_32wid/LibraryTargetName(xf8_32wid) #endif #if XF8_32Bpp XF8_32BPPLIB = $(XF86SRC)/xf8_32bpp/LibraryTargetName(xf8_32bpp) #endif #if XF8_16Bpp XF8_16BPPLIB = $(XF86SRC)/xf8_16bpp/LibraryTargetName(xf8_16bpp) #endif #if XFShadowFB XFSHADOWFBLIB = $(XF86SRC)/shadowfb/LibraryTargetName(shadowfb) #endif #if XF86AFB AFBLIB = afb/LibraryTargetName(afb) #endif XF86DRIVERLIB = $(XF86SRC)/drivers/LibraryTargetName(driver) #if XF86Ramdac XF86RAMDACLIB = $(XF86SRC)/ramdac/LibraryTargetName(ramdac) #endif #if XF86I2C XF86I2CLIB = $(XF86SRC)/i2c/LibraryTargetName(i2c) #endif #if XF86DDC XF86DDCLIB = $(XF86SRC)/ddc/LibraryTargetName(ddc) #endif #if XF86VBE XF86VBELIB = $(XF86SRC)/vbe/LibraryTargetName(vbe) #endif #if XF86RAC XF86RACLIB = $(XF86SRC)/rac/LibraryTargetName(rac) #endif #if XF86INT10_BUILD > X86EMU_GENERIC XF86INT10LIB = $(XF86OSSRC)/LibraryTargetName(int10) #else XF86INT10LIB = $(XF86SRC)/int10/LibraryTargetName(int10) #endif #if UseMemLeak MEMDEBUGLIB = $(TOP)/util/memleak/LibraryTargetName(memleak) #endif XF86IDRIVERLIB = $(XF86SRC)/input/LibraryTargetName(idriver) #if !DoLoadableServer XF86DRVOBJS = $(XF86SRC)/drivers/drvConf.o XF86DRVLIBS = $(XF86DRIVERLIB) $(XF86RAMDACLIB) $(XF86DDCLIB) $(XF86I2CLIB) \ $(XF86XAALIB) $(XF86EXALIB) $(XF86VGAHWLIB) $(XF86FBDEVHWLIB) \ $(XF8_32WIDLIB) $(XF8_32BPPLIB) \ $(XF8_16BPPLIB) \ $(XF4BPPLIB) $(XF1BPPLIB) $(XFSHADOWFBLIB) $(AFBLIB) XF86IDRVOBJS = $(XF86SRC)/input/drvConf.o XF86IDRVLIBS = $(XF86IDRIVERLIB) XF86SCANLIB = $(XF86SRC)/scanpci/LibraryTargetName(scanpci) XF86LIBS = $(MEMDEBUGLIB) $(XF86INIT) $(XF86COMLIB) $(XF86RACLIB) \ $(XF86PARSLIB) $(XF86VBELIB) $(XF86OSLIB) $(XF86INT10LIB) #else XF86LIBS = $(MEMDEBUGLIB) $(XF86INIT) $(XF86COMLIB) \ $(XF86PARSLIB) $(XF86OSLIB) #endif #if DoLoadableServer XF86LOADERLIB = $(XF86SRC)/loader/LibraryTargetName(loader) XF86MAINLIBS = PreFbLibsNoFont \ $(FONTBASE) $(OTHEREXTS) $(XF86COMLIB) \ NoMfbPostFbLibs XF86SERVERSYSLIBS = $(SYSLIBS) $(LIBDL) $(LIBREGEX) XF86SERVERLIBS = $(XF86DRVLIBS) $(XF86IDRVLIBS) $(XF86LIBS) $(XF86LOADERLIB) \ $(XF86COMLIB) $(XF86MAINLIBS) $(XF86SCANLIB) $(XF86OSLIB) #else XF86MAINLIBS = MiExtLibs AllFBLibs $(XF86COMLIB) $(MI) XF86SERVERSYSLIBS = $(FONTLIBS) $(SYSLIBS) $(LIBDL) $(LIBREGEX) XF86SERVERLIBS = $(XF86DRVLIBS) $(XF86IDRVLIBS) $(XF86LIBS) $(XF86LOADERLIB) \ $(XF86COMLIB) $(XF86MAINLIBS) $(XF86SCANLIB) $(XF86OSLIB) \ $(XF86DDCLIB) #endif XF86SERVEROBJS = $(XF86XKBOBJS) $(XF86DRVOBJS) $(XF86IDRVOBJS) #if HasParallelMake MakeMutex($(XF86SERVERSUBDIRS) $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS)) #endif #if ForceServerRemake $(XF86SERVERLIBS) $(XF86SERVERSYSLIBS):: $(XF86SERVERSUBDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif SetUIDServerTarget(Xorg,$(XF86SERVERSUBDIRS),$(XF86SERVEROBJS) $(SERVERDEFFILE), \ $(XF86SERVERLIBS),$(XF86SERVERSYSLIBS)) #if DoLoadableServer ServerDriverSDKTarget(Xorg) #endif #ifndef ServerToInstall #define ServerToInstall Xorg #endif #endif /* XorgServer */ #if defined(XprtServer) && XprtServer XCOMM XCOMM Print Server XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB32SUBDIR = cfb32 MIDAMAGEDIR = miext/damage XPSUBDIRS = $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB32DIR) $(DEPDIRS) \ $(MIDAMAGEDIR) XPOBJS = Xprint/ddxInit.o Xprint/dpmsstubs.o Xprint/miinitext.o #if PrintOnlyServer XPLIBS = PreFbLibs $(XPDDXLIBS) $(XPDDXFBLIBS) PostFbLibs #else XPLIBS = PreFbLibs PostFbLibs #endif #if (defined(SunArchitecture) || defined(SparcArchitecture)) && \ defined(SVR4Architecture) XPSYSLIBS = $(FONTLIBS) $(CBRT) $(SYSLIBS) $(XONLYLIB) -lw #else XPSYSLIBS = $(FONTLIBS) $(CBRT) $(SYSLIBS) $(XONLYLIB) #endif #if HasParallelMake MakeMutex($(XPSUBDIRS) $(XPOBJS) $(XPLIBS) $(XPSYSLIBS)) #endif #if ForceServerRemake $(XPOBJS) $(XPLIBS) $(XPSYSLIBS):: $(XPSUBDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif ServerTarget(Xprt,$(XPSUBDIRS),$(XPOBJS), \ $(LIBCWRAPPER) $(XPLIBS) $(LOADABLEEXTS),$(XPSYSLIBS)) #endif /* XprtServer */ #if defined(NXAgentServer) && NXAgentServer XCOMM XCOMM Nested server with NXlib-based ddx and compressed transport. XCOMM FBSUBDIR = fb MIDAMAGEDIR = miext/damage FBDIR = fb #ifndef Win32Architecture NXAGENTDDXDIR = hw/nxagent #else NXAGENTDDXDIR = hw #endif NXAGENTDIRS = $(STDDIRS) $(MFBDIR) $(FBDIR) $(MIDAMAGEDIR) $(NXAGENTDDXDIR) $(DEPDIRS) #if defined(SunArchitecture) || \ defined(SparcArchitecture) NXAGENTOBJS = hw/nxagent/miinitext.o \ hw/nxagent/NXwindow.o \ hw/nxagent/NXevents.o \ hw/nxagent/NXproperty.o \ hw/nxagent/NXdixfonts.o \ hw/nxagent/NXglyphcurs.o \ hw/nxagent/NXdispatch.o \ hw/nxagent/NXrender.o \ hw/nxagent/NXglyph.o \ hw/nxagent/NXpicture.o \ hw/nxagent/NXextension.o \ hw/nxagent/NXglxext.o \ hw/nxagent/NXmiglyph.o \ hw/nxagent/NXmiexpose.o \ hw/nxagent/NXresource.o \ hw/nxagent/NXmiwindow.o \ hw/nxagent/NXdamage.o #elif !defined(LynxOSArchitecture) && \ !defined(Win32Architecture) && \ !defined(QNX4Architecture) NXAGENTOBJS = hw/nxagent/miinitext.o \ hw/nxagent/NXwindow.o \ hw/nxagent/NXevents.o \ hw/nxagent/NXproperty.o \ hw/nxagent/NXdixfonts.o \ hw/nxagent/NXglyphcurs.o \ hw/nxagent/NXdispatch.o \ hw/nxagent/NXrender.o \ hw/nxagent/NXglyph.o \ hw/nxagent/NXpicture.o \ hw/nxagent/NXextension.o \ hw/nxagent/NXglxext.o \ hw/nxagent/NXxvdisp.o \ hw/nxagent/NXmiglyph.o \ hw/nxagent/NXmiexpose.o \ hw/nxagent/NXresource.o \ hw/nxagent/NXmiwindow.o \ hw/nxagent/NXdamage.o #else NXAGENTOBJS = hw/nxagent/miinitext.o \ hw/nxagent/NXwindow.o \ hw/nxagent/NXevents.o \ hw/nxagent/NXproperty.o \ hw/nxagent/NXdixfonts.o \ hw/nxagent/NXglyphcurs.o \ hw/nxagent/NXdispatch.o \ hw/nxagent/NXrender.o \ hw/nxagent/NXglyph.o \ hw/nxagent/NXpicture.o \ hw/nxagent/NXextension.o \ hw/nxagent/NXglxext.o \ hw/nxagent/NXxvdisp.o \ hw/nxagent/NXmiglyph.o \ hw/nxagent/NXmiexpose.o \ hw/nxagent/NXresource.o \ hw/nxagent/NXmiwindow.o \ hw/nxagent/NXdamage.o \ dix/main.o #endif XPMLIB = -lXpm NXAGENT = hw/nxagent/LibraryTargetName(nxagent) NXAGENTLIBS = PreFbLibs $(NXAGENT) FbPostFbLibs $(NXAGENT) $(MI) NXAGENTSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XLIB) $(SYSLIBS) $(XPMLIB) #if HasParallelMake MakeMutex($(NXAGENTDIRS) $(NXAGENTOBJS) $(NXAGENTLIBS) $(NXAGENTSYSLIBS)) #endif #if ForceServerRemake $(NXAGENTOBJS) $(NXAGENTLIBS) $(NXAGENTSYSLIBS):: $(NXAGENTDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif #if NXLibraries /* * We need this as the linker will try to locate dependencies of X11 and Xext. */ #if defined(SunArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lNX_Xrender -lNX_Xfixes \ -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #elif defined(cygwinArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext \ -lXcomp -lXcompext -lNX_Xrender -lX11 -lNX_Xext -lNX_Xcomposite -lNX_Xfixes \ -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #else NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -lXcomp -lXcompext -lXcompshad -lNX_Xrender -lNX_X11 -lNX_Xext -lNX_Xfixes \ -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xinerama -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #endif #endif #ifdef cygwinArchitecture NX_XSHADOWLIBNAME = cygXcompshad.dll #else NX_XSHADOWLIBNAME = libXcompshad.so #endif NX_XSHADOWLIBDIR = $(XTOP)/../nxcompshad NX_XSHADOWLIBTARGET = $(NX_XSHADOWLIBDIR)/$(NX_XSHADOWLIBNAME) NX_XSHADOWCONFIGTARGET = $(NX_XSHADOWLIBDIR)/config.status CONFIGURE ?= ./configure $(NX_XSHADOWCONFIGTARGET): cd $(NX_XSHADOWLIBDIR) && \ ${CONFIGURE} #ifdef SunArchitecture $(NX_XSHADOWLIBTARGET): $(NX_XSHADOWCONFIGTARGET) cd $(NX_XSHADOWLIBDIR) && \ ${MAKE} #else $(NX_XSHADOWLIBTARGET): $(NX_XSHADOWCONFIGTARGET) cd $(NX_XSHADOWLIBDIR) && \ rm -f *.o && ${MAKE} #endif ServerTarget(nxagent,$(NX_XSHADOWLIBTARGET) $(NXAGENTDIRS),$(NXAGENTOBJS), \ $(LIBCWRAPPER) $(NXAGENTLIBS) $(LOADABLEEXTS),$(NXAGENTSYSLIBS) $(NXAGENTNXLIBS)) /* * Hard coded target to build a static nxagent server. */ nxagent_static: nxagent if [ -f nxagent_static ]; then set -x; \ $(MV) nxagent_static nxagent_static.bak; \ else exit 0; fi $(CCLINK) -o nxagent_static -static $(LDOPTIONS) $(NXAGENTOBJS) \ $(LIBCWRAPPER) $(NXAGENTLIBS) $(LOADABLEEXTS) $(LDLIBS) \ $(NXAGENTSYSLIBS) $(EXTRA_LOAD_FLAGS) /* * Hard coded target to build a static nxagent server except for libX11 and libXext. */ nxagent_static_nolibs: nxagent if [ -f nxagent_static_nolibs ]; then set -x; \ $(MV) nxagent__static_nolibs nxagent_static_nolibs.bak; \ else exit 0; fi $(CCLINK) -o nxagent_static_nolibs -Wl,-Bstatic $(LDOPTIONS) $(NXAGENTOBJS) \ $(NXAGENTLIBS) $(LOADABLEEXTS) $(LIBCWRAPPER) $(LDLIBS) $(FONTLIBS) \ $(LDPRELIBS) $(SYSLIBS) -Wl,-Bdynamic -lNX_Xext -lNX_X11 $(EXTRA_LOAD_FLAGS) #endif /* NXAgentServer */ #if defined(XnonServer) && XnonServer XCOMM XCOMM non server, just compile sources for build test XCOMM MFBSUBDIR = mfb CFB8SUBDIR = cfb CFB16SUBDIR = cfb16 CFB32SUBDIR = cfb32 #if HasParallelMake MakeMutex($(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DEPDIRS)) #endif Xnon: $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DEPDIRS) #endif /* XnonServer */ #if defined(XVirtualFramebufferServer) && XVirtualFramebufferServer XCOMM XCOMM server with Virtual (malloced) framebuffer XCOMM MFBSUBDIR = mfb FBSUBDIR = fb #if defined(Win32Architecture) XVFBDDXDIR = hw #else XVFBDDXDIR = hw/vfb #endif XVFBDIRS = $(STDDIRS) $(MFBDIR) $(FBDIR) $(XVFBDDXDIR) $(DEPDIRS) #ifndef Win32Architecture #if BuildDPMS XVFBDPMSSTUBOBJS = $(XVFBDDXDIR)/dpmsstubs.o #endif XVFBOBJS = $(XVFBDDXDIR)/stubs.o $(XVFBDDXDIR)/miinitext.o $(XVFBDPMSSTUBOBJS) #else XVFBOBJS = dix/main.o hw/vfb/stubs.o hw/vfb/miinitext.o #endif XVFB = $(XVFBDDXDIR)/LibraryTargetName(vfb) XVFBLIBS = PreFbLibs $(XVFB) $(FB) PostFbLibs $(MI) XVFBSYSLIBS = $(FONTLIBS) $(SYSLIBS) #if HasParallelMake MakeMutex($(XVFBDIRS) $(XVFBOBJS) $(XVFB) $(XVFBLIBS) $(XVFBSYSLIBS)) #endif #if ForceServerRemake $(XVFBOBJS) $(XVFB) $(XVFBLIBS) $(XVFBSYSLIBS):: $(XVFBDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif ServerTarget(Xvfb,$(XVFBDIRS),$(XVFBOBJS) $(XVFBDEFFILE), \ $(LIBCWRAPPER) $(XVFBLIBS) $(LOADABLEEXTS),$(XVFBSYSLIBS)) #endif /* XVirtualFramebufferServer */ #if defined(XdmxServer) && XdmxServer XCOMM XCOMM distribued multihead Server XCOMM #ifndef Win32Architecture XDMXDDXDIR = hw/dmx #else XDMXDDXDIR = hw #endif FBDIR = fb FBSUBDIR = fb MIDAMAGEDIR = miext/damage SHADOWDIR = miext/shadow XDMXDIRS = $(STDDIRS) $(XDMXDDXDIR) $(SHADOWDIR) $(DEPDIRS) $(FBDIR) $(MIDAMAGEDIR) #if BuildGlxExt #if BuildXinerama GLXPROXY_EXTRAOBJS = hw/dmx/panoramiX.o #endif GLXPROXYLIB = hw/dmx/glxProxy/LibraryTargetName(glxProxy) #endif #if !defined(LynxOSArchitecture) && \ !defined(Win32Architecture) && \ !defined(QNX4Architecture) XDMXOBJS = hw/dmx/miinitext.o $(GLXPROXY_EXTRAOBJS) #else XDMXOBJS = hw/dmx/miinitext.o $(GLXPROXY_EXTRAOBJS) dix/main.o #endif XDMX = hw/dmx/LibraryTargetName(dmx) \ hw/dmx/input/LibraryTargetName(dmxinput) \ hw/dmx/config/LibraryTargetName(dmxconfig) \ $(GLXPROXYLIB) XDMXLIBS = PreFbLibs $(XDMX) MiExtLibs FbPostFbLibs $(XDMX) #if BuildRender XDMXRENDERLIB = $(XRENDERLIB) #endif XDMXSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XILIB) $(XLIB) $(SYSLIBS) $(XMULIB) $(XDMXRENDERLIB) #if HasParallelMake MakeMutex($(XDMXDIRS) $(XDMXOBJS) $(XDMXLIBS) $(XDMXSYSLIBS)) #endif #if ForceServerRemake $(XDMXOBJS) $(XDMXLIBS) $(XDMXSYSLIBS):: $(XDMXDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif ServerTarget(Xdmx,$(XDMXDIRS),$(XDMXOBJS), \ $(LIBCWRAPPER) $(XDMXLIBS) $(LOADABLEEXTS),$(XDMXSYSLIBS)) #endif /* XdmxServer */ #if defined(NXWinServer) && NXWinServer XCOMM XCOMM X Server for MS Windows XCOMM FBSUBDIR = fb MIDAMAGEDIR = miext/damage SHADOWDIR = miext/shadow #if BuildXWinLayer LAYERDIR = miext/layer XWINLAYERLIB = $(LAYER) #else LAYERDIR = XWINLAYERLIB = #endif #if BuildXWinMultiWindowExtWM ROOTLESSDIR = miext/rootless ROOTLESSLIB = $(ROOTLESSDIR)/LibraryTargetName(rootless) \ $(ROOTLESSDIR)/safeAlpha/LibraryTargetName(safeAlpha) \ $(ROOTLESSDIR)/accel/LibraryTargetName(rlAccel) #else ROOTLESSDIR = ROOTLESSLIB = #endif NXWINDDXDIR = hw/nxwin #if BuildXWinXF86Config XWINPARSERDIR = hw/xfree86/parser XWINPARSERLIB = $(XWINPARSERDIR)/LibraryTargetName(xf86config) #else XWINPARSERDIR = XWINPARSERLIB = #endif #if defined(GlxUseWindows) && GlxUseWindows XWINOPENGLLIB = -lopengl32 #else XWINOPENGLLIB = #endif NXWINLIB = $(NXWINDDXDIR)/LibraryTargetName(NXWin) NXWINDIRS = $(STDDIRS) $(FBDIR) $(SHADOWDIR) $(LAYERDIR) $(NXWINDDXDIR) \ $(DEPDIRS) $(XWINPARSERDIR) $(ROOTLESSDIR) $(MIDAMAGEDIR) NXWINOBJS = $(NXWINDDXDIR)/stubs.o $(NXWINDDXDIR)/NXWin.res NXWINLIBS = PreFbLibs $(NXWINLIB) FbPostFbLibs $(NXWINLIB) $(XWINLAYERLIB) \ $(SHADOW) $(XWINPARSERLIB) $(ROOTLESSLIB) $(OS) #if BuildXWinMultiWindow || BuildXWinClipboard XWINX11 = $(XONLYLIB) # if defined(Win32Architecture) PTHREADLIB = -lpthreadGC # endif #endif #if defined(Win32Architecture) # if defined(GlxUseWindows) && GlxUseWindows XWINGL32 = -lopengl32 # endif XWINW32 = -lgdi32 -lwsock32 $(XWINGL32) $(PTHREADLIB) #else XWINW32 = -lgdi32 #endif NXWINSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XWINX11) $(SYSLIBS) $(XWINW32) NXWINNXLIBS = -L../../../nxcomp -lXcomp /* * These flags cause NXWin.exe to be a Windows executable, which * prevents NXWin.exe from opening a Command Prompt window when it is * started. However, the flags also prevent NXWin.exe from outputting * its status and error message to a Command Prompt; thus, one most * implement a method to redirect status and error messages to a file * before enabling these flags. */ EXTRA_LDOPTIONS = -e _mainCRTStartup #if HasParallelMake MakeMutex($(NXWINDIRS) $(NXWINOBJS) $(NXWINLIB) $(NXWINLIBS) $(NXWINSYSLIBS) $(NXWINNXLIBS)) #endif #if ForceServerRemake $(NXWINOBJS) $(NXWINLIB) $(NXWINLIBS) $(NXWINSYSLIBS) $(NXWINNXLIBS):: $(NXWINDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif #ifdef mingwArchitecture NXWINSERVERNAME=NXming NXWINGLSERVERNAME=NXmingGL #else NXWINSERVERNAME=NXWin NXWINGLSERVERNAME=NXWin_GL #endif ServerTarget($(NXWINSERVERNAME),$(NXWINDIRS),$(NXWINOBJS), \ $(LIBCWRAPPER) $(NXWINLIBS) $(LOADABLEEXTS),$(NXWINSYSLIBS) $(NXWINNXLIBS)) #if defined(cygwinArchitecture) && defined(GlxUseWindows) && GlxUseWindows ServerTarget($(NXWINGLSERVERNAME),$(NXWINDIRS),$(NXWINOBJS), \ $(LIBCWRAPPER) $(NXWINLIBS) $(LOADABLEEXTS),$(NXWINSYSLIBS) $(NXWINNXLIBS)\ $(XWINOPENGLLIB)) #endif #ifndef ServerToInstall # define ServerToInstall $(NXWINSERVERNAME) #endif #endif /* NXWinServer */ #if 0 #if defined(NXWinServer) && NXWinServer XCOMM XCOMM X Server for MS Windows XCOMM FBDIR = fb SHADOWDIR = miext/shadow LAYERDIR = miext/layer NXWINDDXDIR = hw/nxwin XWINPARSERDIR = hw/xfree86/parser XWINPARSERLIB = $(XWINPARSERDIR)/LibraryTargetName(xf86config) NXWINLIB = $(NXWINDDXDIR)/LibraryTargetName(nxwin) NXWINDIRS = $(STDDIRS) $(FBDIR) $(SHADOWDIR) $(LAYERDIR) $(NXWINDDXDIR) \ $(DEPDIRS) $(XWINPARSERDIR) #NXWINOBJS = $(NXWINDDXDIR)/stubs.o $(NXWINDDXDIR)/NX.res \ $(NXWINDDXDIR)/NXwindow.o \ $(NXWINDDXDIR)/NXdispatch.o $(NXWINDDXDIR)/NXproperty.o \ $(NXWINDDXDIR)/NXevents.o NXWINOBJS = $(NXWINDDXDIR)/stubs.o $(NXWINDDXDIR)/NX.res NXWINLIBS = PreFbLibs $(NXWINLIB) FbPostFbLibs $(LAYER) $(SHADOW) \ $(XWINPARSERLIB) NXWINSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XLIB) $(SYSLIBS) -lgdi32 -lddraw NXWINNXLIBS = -L../../../nxcomp -lXcomp /* * These flags cause NXWin.exe to be a Windows executable, which * prevents NXWin.exe from opening a Command Prompt window when it is * started. However, the flags also prevent NXWin.exe from outputting * its status and error message to a Command Prompt; thus, one most * implement a method to redirect status and error messages to a file * before enabling these flags. */ EXTRA_LDOPTIONS = -mwindows -e _mainCRTStartup #if HasParallelMake MakeMutex($(NXWINDIRS) $(NXWINOBJS) $(NXWINLIB) $(NXWINLIBS) $(NXWINSYSLIBS) $(NXWINNXLIBS)) #endif #if ForceServerRemake $(NXWINOBJS) $(NXWINLIB) $(NXWINLIBS) $(NXWINSYSLIBS) $(NXWINNXLIBS):: $(NXWINDIRS) @if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi #endif ServerTarget(NXWin,$(NXWINDIRS),$(NXWINOBJS), \ $(NXWINLIBS) $(LOADABLEEXTS) $(LIBCWRAPPER),$(NXWINSYSLIBS) $(NXWINNXLIBS)) #ifndef ServerToInstall #define ServerToInstall NXWin #endif #endif /* NXWinServer */ #endif #ifdef DarwinArchitecture /* * To allow building even when building the client-side libraries is turned * off, libraries in ProjectRoot are listed as dependencies for some targets. * This causes problems unless we tell make where to find these dependencies. */ VPATH = $(BUILDLIBDIR):$(USRLIBDIR) #endif #if defined(XDarwinServer) && XDarwinServer XCOMM XCOMM X Darwin server for Mac OS X / Darwin XCOMM FBSUBDIR = fb MIDAMAGEDIR = miext/damage SHADOWDIR = miext/shadow ROOTLESSDIR = miext/rootless DARWINDDXDIR = hw/darwin DARWINDIRS = $(STDDIRS) $(FBDIR) $(SHADOWDIR) $(DARWINDDXDIR) $(DEPDIRS) DARWINOBJS = $(DARWINDDXDIR)/miinitext.o DARWINLIBS = PreFbLibs $(DARWINDDXDIR)/LibraryTargetName(darwin) DARWINEXTLIBS = MiExtLibs FbPostFbLibs $(DARWINDDXDIR)/LibraryTargetName(darwin) DARWINSYSLIBS = $(FONTLIBS) $(SYSLIBS) -framework IOKit IOKITLIB = $(DARWINDDXDIR)/iokit/LibraryTargetName(iokit) /* * IOKit X server */ SetUIDServerTarget(XDarwin,$(DARWINDIRS),$(DARWINOBJS), \ $(DARWINLIBS) $(IOKITLIB) $(DARWINEXTLIBS),$(DARWINSYSLIBS)) #if DarwinQuartzSupport QUARTZDIR = $(DARWINDDXDIR)/quartz QUARTZLIB = $(QUARTZDIR)/LibraryTargetName(XQuartz) QUARTZSYSLIBS = -framework ApplicationServices -framework Cocoa \ -framework CoreAudio -framework Carbon -ObjC ROOTLESSLIB = $(ROOTLESSDIR)/LibraryTargetName(rootless) \ $(ROOTLESSDIR)/safeAlpha/LibraryTargetName(safeAlpha) \ $(ROOTLESSDIR)/accel/LibraryTargetName(rlAccel) XPLUGINLIB = XpluginLibrary #if NothingOutsideProjectRoot XDARWINAPPDIR = $(BINDIR)/XDarwin.app/Contents #else XDARWINAPPDIR = /Applications/XDarwin.app/Contents #endif /* * Quartz X server (installed in its application bundle) */ SetUIDServerTarget(XDarwinApp,$(DARWINDIRS),$(DARWINOBJS), \ $(DARWINLIBS) $(QUARTZLIB) $(DARWINEXTLIBS), \ $(DARWINSYSLIBS) $(QUARTZSYSLIBS) -u _miDCInitialize) install:: $(MKDIRHIER) $(DESTDIR)$(XDARWINAPPDIR)/MacOS $(MV) $(DESTDIR)$(BINDIR)/XDarwinApp \ $(DESTDIR)$(XDARWINAPPDIR)/MacOS/XDarwin -(cd $(DESTDIR)$(BINDIR); $(RM) XDarwinQuartz; \ $(LN) $(XDARWINAPPDIR)/MacOS/XDarwin XDarwinQuartz) /* * Display mode bundles for Quartz * (installed in their own bundles inside XDarwin's) */ #if HasXplugin XPRDIRS = $(QUARTZDIR)/xpr $(ROOTLESSDIR) $(ROOTLESSDIR)/safeAlpha XPRLIBS = $(QUARTZDIR)/xpr/LibraryTargetName(xpr) $(ROOTLESSLIB) BundleProgramTarget(xpr,XDarwinApp,$(XPRDIRS),$(QUARTZDIR)/xpr/xprScreen.o, \ $(XPRLIBS),-framework ApplicationServices \ $(XPLUGINLIB),$(XDARWINAPPDIR)/Resources) #endif CRDIRS = $(QUARTZDIR)/cr $(ROOTLESSDIR) $(ROOTLESSDIR)/safeAlpha CRLIBS = $(QUARTZDIR)/cr/LibraryTargetName(cr) $(ROOTLESSLIB) BundleProgramTarget(cr,XDarwinApp,$(CRDIRS),$(QUARTZDIR)/cr/crScreen.o, \ $(CRLIBS),-framework ApplicationServices -framework Cocoa \ -framework Carbon -ObjC,$(XDARWINAPPDIR)/Resources) FSDIRS = $(QUARTZDIR)/fullscreen $(SHADOWDIR) FSLIBS = $(QUARTZDIR)/fullscreen/LibraryTargetName(fullscreen) $(SHADOW) BundleProgramTarget(fullscreen,XDarwinApp,$(FSDIRS), \ $(QUARTZDIR)/fullscreen/fullscreen.o,$(FSLIBS), \ -framework ApplicationServices,$(XDARWINAPPDIR)/Resources) /* * GLX bundles for Quartz * (installed in their own bundles inside XDarwin's) */ BundleProgramTarget(glxAGL,XDarwinApp,GL,GL/glx/glxext.o,GL/glx/libglx.a \ GL/apple/libAGLcore.a, \ -framework AGL -framework OpenGL,$(XDARWINAPPDIR)/Resources) #if BuildAppleDRI BundleProgramTarget(glxCGL,XDarwinApp,GL,GL/glx/glxext.o,GL/glx/libglx.a \ GL/apple/libCGLcore.a, \ -framework OpenGL $(XPLUGINLIB),$(XDARWINAPPDIR)/Resources) #endif BundleProgramTarget(glxMesa,XDarwinApp,GL,GL/glx/glxext.o,GL/glx/libglx.a \ GL/mesa/GLcore/libGLcore.a,NullParameter,$(XDARWINAPPDIR)/Resources) #else /* !DarwinQuartzSupport */ #define ServerToInstall XDarwin #endif /* DarwinQuartzSupport */ #endif /* XDarwinServer */ CFBSUBDIRS = $(CFB8SUBDIR) $(CFB16SUBDIR) $(CFB24SUBDIR) $(CFB32SUBDIR) MIEXTDIRS = $(SHADOWDIR) $(LAYERDIR) $(ROOTLESSDIR) $(MIDAMAGEDIR) IPLANDIRS = $(IPLAN2P2DIR) $(IPLAN2P4DIR) $(IPLAN2P8DIR) DDXDIRS = $(DECWSDDXDIR) $(SUNDDXDIR) $(LYNXDDXDIR) \ $(HPDDXDIR) $(XFREE86DDXDIR) $(DARWINDDXDIR) \ $(XVFBDDXDIR) $(XDMXDDXDIR) $(NXAGENTDDXDIR) $(NXWINDDXDIR) SUBDIRS = $(STDDIRS) $(MFBSUBDIR) $(CFBSUBDIRS) \ $(IPLANDIRS) $(ILBMDIR) $(AFBSUBDIR) \ $(DDXDIRS) $(FBSUBDIR) $(KDRIVEDIRS) $(MIEXTDIRS) #if defined(ServerToInstall) && !defined(OS2Architecture) install:: -(cd $(DESTDIR)$(BINDIR); $(RM) X; $(LN) ServerToInstall X) #endif #define IHaveSubdirs DependSubdirs($(SUBDIRS)) MakeLintLibSubdirs($(SUBDIRS)) LintSubdirs($(SUBDIRS)) ForceSubdirs($(DEPDIRS) $(SUBDIRS)) DEFAULTFONTPATH = DefaultFontPath EXTRAMANDEFS = -D__default_font_path__="`echo $(DEFAULTFONTPATH) | sed -e 's/,/, /g'`" InstallManPage(Xserver,$(MANDIR)) #if MakeDllModules && DoLoadableServer && \ (defined(SunArchitecture) && defined(SVR4Architecture)) XCOMM Hackery for building dlopen-able .so modules on Solaris AllTarget(linker-deps) LINKER_DEPS_DIRS = $(SUBDIRS) $(FONTLIBSRC) XCOMM After everything is built, run through and generate linker dependencies linker-deps: RunPerlScript($(XF86SRC)/os-support/sunos/find_deps.pl,-R ProjectRoot $(LINKER_DEPS_DIRS)) for i in $(LINKER_DEPS_DIRS) ; do \ echo "relinking with dependency flags in $(CURRENT_DIR)/$$i..."; \ MakeNamedTargetSubdir($$i,NullParameter,all) ; \ done #endif