XCOMM $XFree86: xc/programs/Xserver/fb/Imakefile,v 1.16 2002/05/31 16:12:17 dawes Exp $
XCOMM 
XCOMM 
XCOMM Id: Imakefile,v 1.1 1999/11/02 03:54:44 keithp Exp $

/*
 * The X.org 6.8.99.16 snapshot fails to compile with GCC 4.
 * Temporarily disable the MMX features until the bug is
 * fixed.
 *
#if defined(HasGcc34) && HasGcc34
MMXOPTIONS= -mmmx -msse -Winline --param inline-unit-growth=10000 \
	--param large-function-growth=10000 -DUSE_MMX
USEMMXOPTIONS= -DUSE_MMX
#if defined(i386Architecture) || defined(AMD64Architecture)
SpecialCObjectRule(fbmmx,fbmmx.c,$(MMXOPTIONS))
SpecialCObjectRule(fbpict,fbpict.c,$(USEMMXOPTIONS))
SpecialCObjectRule(fbfill,fbfill.c,$(USEMMXOPTIONS))
SpecialCObjectRule(fbcopy,fbcopy.c,$(USEMMXOPTIONS))
#endif

#endif
 */

#if DoLoadableServer
#if !BuildModuleInSubdir
#define IHaveModules
#elif !defined(IHaveModules)
#define IHaveSubdirs
SUBDIRS = module
#endif
#endif

#include <Server.tmpl>

#ifdef FbNoPixelAddrCode
DEFINES=-DFBNOPIXADDR -DFBNO24BIT
#endif

#if defined(IHaveModules)
XFMODSRC = fbmodule.c
XFMODOBJ = fbmodule.o
#endif

#if BuildRender
RENDERSRC = fbcompose.c
RENDEROBJ = fbcompose.o
#endif

SRCS =	$(XFMODSRC) \
	fballpriv.c \
	fbbits.c \
	fbblt.c \
	fbbltone.c \
	fbbstore.c \
	fbcmap.c \
	$(RENDERSRC) \
	fbcopy.c \
	fbedge.c \
	fbfill.c \
	fbfillrect.c \
	fbfillsp.c \
	fbgc.c \
	fbgetsp.c \
	fbglyph.c \
	fbimage.c \
	fbline.c \
	fboverlay.c \
	fbpixmap.c \
	fbpoint.c \
	fbpush.c \
	fbscreen.c \
	fbseg.c \
	fbsetsp.c \
	fbsolid.c \
	fbstipple.c \
	fbtile.c \
	fbtrap.c \
	fbutil.c \
	fbwindow.c \
	fb24_32.c \
	fbpict.c \
	fbmmx.c \
	fbpseudocolor.c

OBJS =	$(XFMODOBJ) \
	fbarc.o \
	fballpriv.o \
	fbbits.o \
	fbblt.o \
	fbbltone.o \
	fbbstore.o \
	fbcmap.o \
	$(RENDEROBJ) \
	fbcopy.o \
	fbedge.o \
	fbfill.o \
	fbfillrect.o \
	fbfillsp.o \
	fbgc.o \
	fbgetsp.o \
	fbglyph.o \
	fbimage.o \
	fbline.o \
	fboverlay.o \
	fbpixmap.o \
	fbpoint.o \
	fbpush.o \
	fbscreen.o \
	fbseg.o \
	fbsetsp.o \
	fbsolid.o \
	fbstipple.o \
	fbtile.o \
	fbtrap.o \
	fbutil.o \
	fbwindow.o \
	fb24_32.o \
	fbpict.o \
	fbmmx.o \
	fbpseudocolor.o

   INCLUDES = -I$(SERVERSRC)/fb -I$(SERVERSRC)/mi -I$(SERVERSRC)/include \
	      -I$(XINCLUDESRC) \
	      -I$(XF86SRC)/common $(EXTRAINCLUDES) \
	      -I$(SERVERSRC)/render -I$(EXTINCSRC) -I$(SERVERSRC)/Xext \
	      `pkg-config --cflags-only-I pixman-1`
   LINTLIBS = $(SERVERSRC)/dix/llib-ldix.ln $(SERVERSRC)/os/llib-los.ln \
	     $(SERVERSRC)/mi/llib-lmi.ln

#ifdef IHaveModules
ModuleObjectRule()
LibraryModuleTarget(fb,$(OBJS))
#else
NormalLibraryObjectRule()
NormalLibraryTarget(fb,$(OBJS))
#endif

LintLibraryTarget(fb,$(SRCS))

NormalLintTarget($(SRCS))

#ifdef IHaveModules
InstallLibraryModule(fb,$(MODULEDIR),.)
#endif

DependTarget()

#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
#endif

#ifdef LinkDirectory
LinkSourceFile(fb24_32.c,LinkDirectory)
LinkSourceFile(fballpriv.c,LinkDirectory)
LinkSourceFile(fbarc.c,LinkDirectory)
LinkSourceFile(fbbits.c,LinkDirectory)
LinkSourceFile(fbblt.c,LinkDirectory)
LinkSourceFile(fbbltone.c,LinkDirectory)
LinkSourceFile(fbbstore.c,LinkDirectory)
LinkSourceFile(fbcmap.c,LinkDirectory)
#if BuildRender
LinkSourceFile(fbcompose.c,LinkDirectory)
#endif
LinkSourceFile(fbcopy.c,LinkDirectory)
LinkSourceFile(fbfill.c,LinkDirectory)
LinkSourceFile(fbfillrect.c,LinkDirectory)
LinkSourceFile(fbfillsp.c,LinkDirectory)
LinkSourceFile(fbgc.c,LinkDirectory)
LinkSourceFile(fbgetsp.c,LinkDirectory)
LinkSourceFile(fbglyph.c,LinkDirectory)
LinkSourceFile(fbimage.c,LinkDirectory)
LinkSourceFile(fbline.c,LinkDirectory)
LinkSourceFile(fbmodule.c,LinkDirectory)
LinkSourceFile(fboverlay.c,LinkDirectory)
LinkSourceFile(fbpict.c,LinkDirectory)
LinkSourceFile(fbpixmap.c,LinkDirectory)
LinkSourceFile(fbpoint.c,LinkDirectory)
LinkSourceFile(fbpush.c,LinkDirectory)
LinkSourceFile(fbscreen.c,LinkDirectory)
LinkSourceFile(fbseg.c,LinkDirectory)
LinkSourceFile(fbsetsp.c,LinkDirectory)
LinkSourceFile(fbsolid.c,LinkDirectory)
LinkSourceFile(fbstipple.c,LinkDirectory)
LinkSourceFile(fbtile.c,LinkDirectory)
LinkSourceFile(fbtrap.c,LinkDirectory)
LinkSourceFile(fbutil.c,LinkDirectory)
LinkSourceFile(fbwindow.c,LinkDirectory)
LinkSourceFile(fbmmx.c,LinkDirectory)
#endif

InstallDriverSDKLibraryModule(fb,$(DRIVERSDKMODULEDIR),.)
InstallDriverSDKNonExecFile(fb.h,$(DRIVERSDKINCLUDEDIR))
InstallDriverSDKNonExecFile(fbrop.h,$(DRIVERSDKINCLUDEDIR))