XCOMM $XFree86: xc/programs/Xserver/hw/xfree86/xf1bpp/Imakefile,v 1.9 2005/10/14 15:17:12 tsi Exp $
/*
 * Copyright (c) 1994-2004 by The XFree86 Project, Inc.
 * All rights reserved.
 *
 * 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:
 *
 *   1.  Redistributions of source code must retain the above copyright
 *       notice, this list of conditions, and the following disclaimer.
 *
 *   2.  Redistributions in binary form must reproduce the above copyright
 *       notice, this list of conditions and the following disclaimer
 *       in the documentation and/or other materials provided with the
 *       distribution, and in the same place and form as other copyright,
 *       license and disclaimer information.
 *
 *   3.  The end-user documentation included with the redistribution,
 *       if any, must include the following acknowledgment: "This product
 *       includes software developed by The XFree86 Project, Inc
 *       (http://www.xfree86.org/) and its contributors", in the same
 *       place and form as other third-party acknowledgments.  Alternately,
 *       this acknowledgment may appear in the software itself, in the
 *       same form and location as other such third-party acknowledgments.
 *
 *   4.  Except as contained in this notice, the name of The XFree86
 *       Project, Inc 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 XFree86 Project, Inc.
 *
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 * IN NO EVENT SHALL THE XFREE86 PROJECT, INC OR ITS CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#define IHaveModules
#include <Server.tmpl>

#if DoLoadableServer
XF86INCL = -I$(XF86COMSRC) -I$(XF86SRC)
XFMODSRC = mfbmodule.c
XFMODOBJ = mfbmodule.o
#endif

SRCS1 =	 mfbgc.c mfbwindow.c mfbfont.c \
	 mfbfillrct.c mfbpntwin.c maskbits.c mfbpixmap.c \
	 mfbimage.c mfbline.c mfbbres.c mfbhrzvert.c mfbbresd.c \
	 mfbpushpxl.c mfbzerarc.c mfbfillarc.c \
         mfbfillsp.c mfbsetsp.c mfbscrinit.c mfbscrclse.c mfbclip.c \
         mfbbitblt.c mfbgetsp.c mfbpolypnt.c \
	 mfbbltC.c mfbbltX.c mfbbltCI.c mfbbltO.c mfbbltG.c \
	 mfbcmap.c mfbtileC.c mfbtileG.c mfbmisc.c mfbbstore.c $(XFMODSRC)

SRCS =	 $(SRCS1) mfbseg.c mfbpgbwht.c mfbpgbblak.c mfbpgbinv.c mfbigbwht.c \
	 mfbigbblak.c mfbpawhite.c mfbpablack.c mfbpainv.c mfbtewhite.c \
	 mfbteblack.c mfbbltC.c mfbbltX.c mfbbltCI.c mfbbltO.c mfbbltG.c \
	 mfbtileC.c mfbtileG.c mfbplywhite.c mfbplyblack.c mfbplyinv.c

OBJS =   mfbgc.o mfbwindow.o mfbfont.o \
	 mfbfillrct.o mfbpntwin.o maskbits.o mfbpixmap.o \
	 mfbimage.o mfbline.o mfbbres.o mfbhrzvert.o mfbbresd.o mfbseg.o \
	 mfbpushpxl.o mfbzerarc.o mfbfillarc.o \
	 mfbfillsp.o mfbsetsp.o mfbscrinit.o mfbscrclse.o mfbclip.o \
         mfbbitblt.o mfbgetsp.o mfbpolypnt.o \
	 mfbbltC.o mfbbltX.o mfbbltCI.o mfbbltO.o mfbbltG.o \
	 mfbpgbwht.o mfbpgbblak.o mfbpgbinv.o \
	 mfbigbwht.o mfbigbblak.o mfbcmap.o \
	 mfbpawhite.o mfbpablack.o mfbpainv.o mfbtileC.o mfbtileG.o \
         mfbtewhite.o mfbteblack.o mfbmisc.o mfbbstore.o \
         mfbplywhite.o mfbplyblack.o mfbplyinv.o $(XFMODOBJ)

INCLUDES = -I$(SERVERSRC)/mfb -I$(SERVERSRC)/mi -I$(SERVERSRC)/include \
	   $(XF86INCL)
LINTDEFS = -DMFBPOLYGLYPHBLT=mfbPolyGlyphBltWhite \
	   -DMFBIMAGEGLYPHBLT=mfbImageGlyphBltWhite \
	   -DEQWHOLEWORD=\=\~0 -DOPEQ=\|=
LINTLIBS = $(SERVERSRC)/dix/llib-ldix.ln $(SERVERSRC)/os/llib-los.ln \
           $(SERVERSRC)/mi/llib-lmi.ln

DEFINES = -DXF86MONO

ModuleObjectRule()
LibraryModuleTarget(xf1bpp,$(OBJS),.)
LintLibraryTarget(xf1bpp,$(SRCS1))
NormalLintTarget($(LINTDEFS) $(SRCS1))

ObjectMapIncludeFromSpecialSource(maskbits,$(SERVERSRC)/mfb/maskbits,/**/)
ObjectMapIncludeFromSpecialSource(mfbbitblt,$(SERVERSRC)/mfb/mfbbitblt,/**/)
ObjectMapIncludeFromSpecialSource(mfbblt,$(SERVERSRC)/mfb/mfbblt,/**/)
ObjectMapIncludeFromSpecialSource(mfbbres,$(SERVERSRC)/mfb/mfbbres,/**/)
ObjectMapIncludeFromSpecialSource(mfbbresd,$(SERVERSRC)/mfb/mfbbresd,/**/)
ObjectMapIncludeFromSpecialSource(mfbbstore,$(SERVERSRC)/mfb/mfbbstore,/**/)
ObjectMapIncludeFromSpecialSource(mfbclip,$(SERVERSRC)/mfb/mfbclip,/**/)
ObjectMapIncludeFromSpecialSource(mfbcmap,$(SERVERSRC)/mfb/mfbcmap,/**/)
ObjectMapIncludeFromSpecialSource(mfbfillarc,$(SERVERSRC)/mfb/mfbfillarc,/**/)
ObjectMapIncludeFromSpecialSource(mfbfillrct,$(SERVERSRC)/mfb/mfbfillrct,/**/)
ObjectMapIncludeFromSpecialSource(mfbfillsp,$(SERVERSRC)/mfb/mfbfillsp,/**/)
ObjectMapIncludeFromSpecialSource(mfbfont,$(SERVERSRC)/mfb/mfbfont,/**/)
ObjectMapIncludeFromSpecialSource(mfbgc,$(SERVERSRC)/mfb/mfbgc,/**/)
ObjectMapIncludeFromSpecialSource(mfbgetsp,$(SERVERSRC)/mfb/mfbgetsp,/**/)
ObjectMapIncludeFromSpecialSource(mfbhrzvert,$(SERVERSRC)/mfb/mfbhrzvert,/**/)
ObjectMapIncludeFromSpecialSource(mfbimage,$(SERVERSRC)/mfb/mfbimage,/**/)
ObjectMapIncludeFromSpecialSource(mfbimggblt,$(SERVERSRC)/mfb/mfbimggblt,/**/)
ObjectMapIncludeFromSpecialSource(mfbline,$(SERVERSRC)/mfb/mfbline,/**/)
ObjectMapIncludeFromSpecialSource(mfbmisc,$(SERVERSRC)/mfb/mfbmisc,/**/)
ObjectMapIncludeFromSpecialSource(mfbpixmap,$(SERVERSRC)/mfb/mfbpixmap,/**/)
ObjectMapIncludeFromSpecialSource(mfbply1rct,$(SERVERSRC)/mfb/mfbply1rct,/**/)
ObjectMapIncludeFromSpecialSource(mfbplygblt,$(SERVERSRC)/mfb/mfbplygblt,/**/)
ObjectMapIncludeFromSpecialSource(mfbpntarea,$(SERVERSRC)/mfb/mfbpntarea,/**/)
ObjectMapIncludeFromSpecialSource(mfbpntwin,$(SERVERSRC)/mfb/mfbpntwin,/**/)
ObjectMapIncludeFromSpecialSource(mfbpolypnt,$(SERVERSRC)/mfb/mfbpolypnt,/**/)
ObjectMapIncludeFromSpecialSource(mfbpushpxl,$(SERVERSRC)/mfb/mfbpushpxl,/**/)
ObjectMapIncludeFromSpecialSource(mfbscrclse,$(SERVERSRC)/mfb/mfbscrclse,/**/)
ObjectMapIncludeFromSpecialSource(mfbscrinit,$(SERVERSRC)/mfb/mfbscrinit,/**/)
ObjectMapIncludeFromSpecialSource(mfbsetsp,$(SERVERSRC)/mfb/mfbsetsp,/**/)
ObjectMapIncludeFromSpecialSource(mfbtegblt,$(SERVERSRC)/mfb/mfbtegblt,/**/)
ObjectMapIncludeFromSpecialSource(mfbtile,$(SERVERSRC)/mfb/mfbtile,/**/)
ObjectMapIncludeFromSpecialSource(mfbwindow,$(SERVERSRC)/mfb/mfbwindow,/**/)
ObjectMapIncludeFromSpecialSource(mfbzerarc,$(SERVERSRC)/mfb/mfbzerarc,/**/)

ObjectFromSpecialSource(mfbseg,mfbline,-DPOLYSEGMENT)
ObjectFromSpecialSource(mfbpgbwht,mfbplygblt,-DMFBPOLYGLYPHBLT=mfbPolyGlyphBltWhite -DOPEQ=\|=)
ObjectFromSpecialSource(mfbpgbblak,mfbplygblt,-DMFBPOLYGLYPHBLT=mfbPolyGlyphBltBlack -DOPEQ=\&=\~)
ObjectFromSpecialSource(mfbpgbinv,mfbplygblt,-DMFBPOLYGLYPHBLT=mfbPolyGlyphBltInvert -DOPEQ=\^=)
ObjectFromSpecialSource(mfbigbwht,mfbimggblt,-DMFBIMAGEGLYPHBLT=mfbImageGlyphBltWhite -DOPEQ=\|=)
ObjectFromSpecialSource(mfbigbblak,mfbimggblt,-DMFBIMAGEGLYPHBLT=mfbImageGlyphBltBlack -DOPEQ=\&=\~)
ObjectFromSpecialSource(mfbpawhite,mfbpntarea,-DMFBSOLIDFILLAREA=mfbSolidWhiteArea -DMFBSTIPPLEFILLAREA=mfbStippleWhiteArea -DOPEQ=\|= -DEQWHOLEWORD=\=\~0)
ObjectFromSpecialSource(mfbpablack,mfbpntarea,-DMFBSOLIDFILLAREA=mfbSolidBlackArea -DMFBSTIPPLEFILLAREA=mfbStippleBlackArea -DOPEQ=\&=\~ -DEQWHOLEWORD=\=0)
ObjectFromSpecialSource(mfbpainv,mfbpntarea,-DMFBSOLIDFILLAREA=mfbSolidInvertArea -DMFBSTIPPLEFILLAREA=mfbStippleInvertArea -DOPEQ=\^= -DEQWHOLEWORD=\^=\~0)
ObjectFromSpecialSource(mfbtewhite,mfbtegblt,-DMFBTEGLYPHBLT=mfbTEGlyphBltWhite -DOP= -DCLIPTETEXT=mfbImageGlyphBltWhite)
ObjectFromSpecialSource(mfbteblack,mfbtegblt,-DMFBTEGLYPHBLT=mfbTEGlyphBltBlack -DOP=\~ -DCLIPTETEXT=mfbImageGlyphBltBlack)
ObjectFromSpecialSource(mfbplywhite,mfbply1rct,-DMFBFILLPOLY1RECT=mfbFillPolyWhite -DOPEQ=\|= -DEQWHOLEWORD=\=\~0)
ObjectFromSpecialSource(mfbplyblack,mfbply1rct,-DMFBFILLPOLY1RECT=mfbFillPolyBlack -DOPEQ=\&=\~ -DEQWHOLEWORD=\=0)
ObjectFromSpecialSource(mfbplyinv,mfbply1rct,-DMFBFILLPOLY1RECT=mfbFillPolyInvert -DOPEQ=\^= -DEQWHOLEWORD=\^=\~0)
ObjectFromSpecialSource(mfbbltC,mfbblt,-DMROP=Mcopy)
ObjectFromSpecialSource(mfbbltX,mfbblt,-DMROP=Mxor)
ObjectFromSpecialSource(mfbbltCI,mfbblt,-DMROP=McopyInverted)
ObjectFromSpecialSource(mfbbltO,mfbblt,'-DMROP=Mor')
ObjectFromSpecialSource(mfbbltG,mfbblt,-DMROP=0)
ObjectFromSpecialSource(mfbtileC,mfbtile,-DMROP=Mcopy)
ObjectFromSpecialSource(mfbtileG,mfbtile,-DMROP=0)

InstallLibraryModule(xf1bpp,$(MODULEDIR),.)

DependTarget()

InstallDriverSDKLibraryModule(xf1bpp,$(DRIVERSDKMODULEDIR),.)

InstallDriverSDKNonExecFile(mfbmap.h,$(DRIVERSDKINCLUDEDIR))
InstallDriverSDKNonExecFile(mfbunmap.h,$(DRIVERSDKINCLUDEDIR))
InstallDriverSDKNonExecFile(xf1bpp.h,$(DRIVERSDKINCLUDEDIR))
