/*
 * Copyright 1998-2003 VIA Technologies, Inc. All Rights Reserved.
 * Copyright 2001-2003 S3 Graphics, Inc. All Rights Reserved.
 * Copyright 1995-1998 The XFree86 Project, Inc.
 * 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, sub license,
 * 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 (including the
 * next paragraph) 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 NON-INFRINGEMENT. IN NO EVENT SHALL
 * VIA, S3 GRAPHICS, AND/OR ITS SUPPLIERS 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.
 */

#define IHaveModules
#include <Server.tmpl>

#if BuildXF86DRI
DRISRCS = savage_dri.c savage_hwmc.c
DRIOBJS = savage_dri.o savage_hwmc.o
DRIINCLUDES = -I$(SERVERSRC)/GL/dri -I$(LIBSRC)/GL/dri -I$(LIBSRC)/GL/dri/drm \
        -I$(XF86OSSRC)/linux/drm/kernel -I$(TOP)/include -I$(DRMSRCDIR)/shared-core
DRIDEFINES = $(GLX_DEFINES)
#endif

SRCS = savage_driver.c \
        savage_accel.c \
        savage_cursor.c \
        savage_dga.c \
        savage_i2c.c \
        savage_image.c \
        savage_shadow.c \
        savage_vbe.c \
        savage_video.c \
        savage_streams.c \
        $(DRISRCS)

OBJS = savage_driver.o \
        savage_accel.o \
        savage_cursor.o \
        savage_dga.o \
        savage_i2c.o \
        savage_image.o \
        savage_shadow.o \
        savage_vbe.o \
        savage_video.o \
        savage_streams.o \
        $(DRIOBJS)

DEFINES = -DPSZ=8 $(DRIDEFINES)

#if defined(XF86DriverSDK)
INCLUDES = -I. -I../../include
#else
INCLUDES = -I. -I$(XF86COMSRC) -I$(XF86OSSRC) \
           -I$(SERVERSRC)/fb -I$(SERVERSRC)/mi \
           -I$(XF86SRC)/xaa \
           -I$(XF86SRC)/xf1bpp -I$(XF86SRC)/xf4bpp \
           -I$(SERVERSRC)/Xext \
           -I$(XF86SRC)/vgahw -I$(XF86SRC)/ramdac \
           -I$(XF86SRC)/ddc -I$(XF86SRC)/i2c \
           -I$(XF86SRC)/rac -I$(XF86SRC)/int10 -I$(SERVERSRC)/render \
           -I$(SERVERSRC)/include -I$(XINCLUDESRC) -I$(FONTINCSRC) \
           -I$(EXTINCSRC) -I$(XF86SRC)/vbe -I$(XF86SRC)/shadowfb $(DRIINCLUDES)
#endif

#if MakeHasPosixVariableSubstitutions
SubdirLibraryRule($(OBJS))
#endif

NormalAsmObjectRule()

ModuleObjectRule()
ObjectModuleTarget(savage, $(OBJS))

InstallVideoObjectModule(savage,$(MODULEDIR))

#if !defined(XF86DriverSDK)
InstallModuleManPage(savage)
#endif

DependTarget()

InstallDriverSDKNonExecFile(Imakefile,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_accel.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_bci.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_cursor.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_dga.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_driver.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_driver.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_dri.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_dri.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_i2c.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_image.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_regs.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_shadow.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_vbe.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_vbe.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_video.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_streams.h,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_streams.c,$(DRIVERSDKDIR)/drivers/savage)
InstallDriverSDKNonExecFile(savage_hwmc.c,$(DRIVERSDKDIR)/drivers/savage)

InstallDriverSDKObjectModule(savage,$(DRIVERSDKMODULEDIR),drivers)
