# Makefile generated by imake - do not edit!
# $TOG: imake.c /main/97 1997/06/20 20:23:51 kaleb $

# ----------------------------------------------------------------------
# Makefile generated from "Imake.tmpl" and </tmp/IIf.a16696>
# $TOG: Imake.tmpl /main/245 1997/05/20 10:05:47 kaleb $
#
#
#
#
# $XFree86: xc/config/cf/Imake.tmpl,v 3.32.2.8 1998/02/08 11:19:24 dawes Exp $
# ----------------------------------------------------------------------

all::

.SUFFIXES: .i

# $TOG: Imake.cf /main/28 1997/06/25 08:31:36 barstow $
# $XFree86: xc/config/cf/Imake.cf,v 3.34.2.4 1998/05/22 16:38:18 dawes Exp $

# -----------------------------------------------------------------------
# site-specific configuration parameters that need to come before
# the platform-specific parameters - edit site.def to change

# site:  $XConsortium: site.def /main/revisionist/4 1996/12/31 08:02:07 kaleb $
# site:  $XFree86: xc/config/cf/site.def,v 3.17.2.1 1997/06/22 10:32:21 dawes Exp $

# $XFree86: xc/config/cf/xf86site.def,v 3.101.2.15 1998/02/24 19:05:42 hohndel Exp $

# ----------------------------------------------------------------------
# platform-specific configuration parameters - edit linux.cf to change

# platform:  $TOG: linux.cf /main/36 1997/06/16 22:21:03 kaleb $
# platform:  $XFree86: xc/config/cf/linux.cf,v 3.57.2.12 1998/03/01 01:57:10 dawes Exp $

# operating system:  Linux 2.0.35 i686 [ELF] (2.0.35)
# libc:	(6.0.7)
# binutils:	(29)

# $XConsortium: lnxLib.rules /main/13 1996/09/28 16:11:01 rws $
# $XFree86: xc/config/cf/lnxLib.rules,v 3.28.2.3 1997/06/22 10:32:20 dawes Exp $

# $XFree86: xc/config/cf/xfree86.cf,v 3.129.2.22 1998/02/24 19:05:43 hohndel Exp $

# $XConsortium: xfree86.cf /main/34 1996/12/06 11:45:18 rws $

LINKKITDIR = $(USRLIBDIR)/Server
XF98LINKKITDIR = $(USRLIBDIR)/Server

       XF86SRC = $(SERVERSRC)/hw/xfree86
  XF86ACCELSRC = $(XF86SRC)/accel
    XF86COMSRC = $(XF86SRC)/common
 XF86CONFIGSRC = $(XF86COMSRC)
     XF86HWSRC = $(XF86SRC)/common_hw
     XF86OSSRC = $(XF86SRC)/os-support
  VGADRIVERSRC = $(XF86SRC)/vga256/drivers
VGA16DRIVERSRC = $(XF86SRC)/vga16/drivers
 VGA2DRIVERSRC = $(XF86SRC)/vga2/drivers
 MONODRIVERSRC = $(XF86SRC)/mono/drivers
   S3DRIVERSRC = $(XF86SRC)/accel/s3/drivers
  S3VDRIVERSRC = $(XF86SRC)/accel/s3_virge/drivers

       XF68SRC = $(SERVERSRC)/hw/xfree68
    XF68COMSRC = $(XF68SRC)/common
 XF68CONFIGSRC = $(XF68COMSRC)
     XF68OSSRC = $(XF68SRC)/os-support

           XF98SRC = $(SERVERSRC)/hw/xfree98
      XF98ACCELSRC = $(XF98SRC)/accel
        XF98COMSRC = $(XF98SRC)/common
     XF98CONFIGSRC = $(XF98COMSRC)
         XF98HWSRC = $(XF98SRC)/common_hw/generic
      XF98HWNECSRC = $(XF98SRC)/common_hw/nec
    XF98HWPWSKBSRC = $(XF98SRC)/common_hw/pwskb
     XF98HWPWLBSRC = $(XF98SRC)/common_hw/pwlb
    XF98HWGA968SRC = $(XF98SRC)/common_hw/ga968
         XF98OSSRC = $(XF98SRC)/os-support
  XF98VGADRIVERSRC = $(XF98SRC)/vga256/drivers
XF98VGA16DRIVERSRC = $(XF98SRC)/vga16/drivers
 XF98VGA2DRIVERSRC = $(XF98SRC)/vga2/drivers
 XF98MONODRIVERSRC = $(XF98SRC)/mono/drivers
XF98NECS3DRIVERSRC = $(XF98SRC)/accel/s3nec/drivers
XF98PWSKBDRIVERSRC = $(XF98SRC)/accel/s3pwskb/drivers
 XF98PWLBDRIVERSRC = $(XF98SRC)/accel/s3pwlb/drivers
XF98GA968DRIVERSRC = $(XF98SRC)/accel/s3ga968/drivers

        XFREE86DOCDIR = $(LIBDIR)/doc
      XFREE86PSDOCDIR = $(XFREE86DOCDIR)/PostScript
    XFREE86HTMLDOCDIR = $(XFREE86DOCDIR)/html
XFREE86JAPANESEDOCDIR = $(XFREE86DOCDIR)/Japanese

# $XConsortium: xf86.rules /main/9 1996/10/31 14:54:26 kaleb $
# $XFree86: xc/config/cf/xf86.rules,v 3.16.2.1 1997/05/18 12:00:01 dawes Exp $

# ----------------------------------------------------------------------
# site-specific configuration parameters that go after
# the platform-specific parameters - edit site.def to change

# site:  $XConsortium: site.def /main/revisionist/4 1996/12/31 08:02:07 kaleb $
# site:  $XFree86: xc/config/cf/site.def,v 3.17.2.1 1997/06/22 10:32:21 dawes Exp $

# ---------------------------------------------------------------------
# Imake rules for building libraries, programs, scripts, and data files
# rules:  $TOG: Imake.rules /main/222 1997/07/17 20:04:40 kaleb $
# rules:  $XFree86: xc/config/cf/Imake.rules,v 3.33.2.7 1998/02/06 09:02:17 dawes Exp $

 _NULLCMD_ = @ echo -n

TKLIBNAME =

TKLIBDIR =

TCLLIBNAME =

TCLIBDIR =

          PATHSEP = /
            SHELL = /bin/sh

              TOP = .
      CURRENT_DIR = .

            IMAKE = imake
           DEPEND = gccmakedep
        MKDIRHIER = mkdir -p
    EXPORTLISTGEN =
        CONFIGSRC = $(TOP)/config
         IMAKESRC = $(CONFIGSRC)/imake
        DEPENDSRC = $(CONFIGSRC)/util

          INCROOT = /usr/X11R6/include
        USRLIBDIR = /usr/X11R6/lib
        VARLIBDIR = /var/lib
         SHLIBDIR = /usr/X11R6/lib
       LINTLIBDIR = $(USRLIBDIR)/lint
          MANPATH = /usr/X11R6/man
    MANSOURCEPATH = $(MANPATH)/man
           MANDIR = $(MANSOURCEPATH)1
        LIBMANDIR = $(MANSOURCEPATH)3
       FILEMANDIR = $(MANSOURCEPATH)5

               AR = ar clq
  BOOTSTRAPCFLAGS =
               CC = gcc
               AS = as

.SUFFIXES: .cc

              CXX = c++
          CXXFILT = c++filt
           CXXLIB =
    CXXDEBUGFLAGS = -O2 -fno-strength-reduce
CXXDEPENDINCLUDES =
 CXXEXTRA_DEFINES =
CXXEXTRA_INCLUDES =
   CXXSTD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE $(CXXPROJECT_DEFINES)
       CXXOPTIONS =
      CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
       CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(CXXEXTRA_DEFINES) $(DEFINES)
         CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)

         COMPRESS = compress
          GZIPCMD = gzip
              CPP = /lib/cpp $(STD_CPP_DEFINES)
    PREPROCESSCMD = gcc -E $(STD_CPP_DEFINES)
          INSTALL = install
     INSTALLFLAGS = -c
               LD = ld
              LEX = flex -l
           LEXLIB = -lfl
             YACC = bison -y
           CCYACC = bison -y
             LINT = lint
      LINTLIBFLAG = -C
         LINTOPTS = -axz
               LN = ln -s
             MAKE = make
               MV = mv -f
               CP = cp

           RANLIB = ranlib
  RANLIBINSTFLAGS =

               RM = rm -f
        MANSUFFIX = 1x
     LIBMANSUFFIX = 3x
    FILEMANSUFFIX = 5x
            TROFF = psroff
            NROFF = nroff
         MSMACROS = -ms
        MANMACROS = -man
              TBL = tbl
              EQN = eqn
             NEQN = neqn
              COL = col

            DVIPS = dvips
            LATEX = latex

     STD_INCLUDES =
  STD_CPP_DEFINES = -traditional -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE $(PROJECT_DEFINES)
      STD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE $(PROJECT_DEFINES)
 EXTRA_LOAD_FLAGS =
  EXTRA_LDOPTIONS =
  EXTRA_LIBRARIES =
             TAGS = ctags

   PARALLELMFLAGS =

    SHAREDCODEDEF =
         SHLIBDEF =

     SHLIBLDFLAGS = -shared

         PICFLAGS = -fPIC

      CXXPICFLAGS = -fPIC

    PROTO_DEFINES = -DFUNCPROTO=15 -DNARROWPROTO

     INSTPGMFLAGS = -s

     INSTBINFLAGS = -m 0755
     INSTUIDFLAGS = -m 4711
     INSTLIBFLAGS = -m 0644
     INSTINCFLAGS = -m 0444
     INSTMANFLAGS = -m 0444
     INSTDATFLAGS = -m 0444
    INSTKMEMFLAGS = -m 4711

      PROJECTROOT = /usr/X11R6

      CDEBUGFLAGS = -O2 -fno-strength-reduce
        CCOPTIONS =

      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES)
       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES)
           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(ALLDEFINES)
        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
         LDPRELIB = -L$(USRLIBDIR)
        LDPOSTLIB =
        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)  $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
     CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)

           LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)

           CCLINK = $(CC)

          CXXLINK = $(CXX)

     LDSTRIPFLAGS = -x
   LDCOMBINEFLAGS = -r
      DEPENDFLAGS =

# Not sure this belongs here
         TKLIBDIR =
         TKINCDIR =
        TKLIBNAME =
        TKLIBRARY = -L$(TKLIBDIR) -l$(TKLIBNAME)
        TCLLIBDIR =
        TCLINCDIR =
       TCLLIBNAME =
       TCLLIBRARY = -L$(TCLLIBDIR) -l$(TCLLIBNAME)

        MACROFILE = linux.cf
           RM_CMD = $(RM)

    IMAKE_DEFINES =

         IRULESRC = $(CONFIGDIR)
        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)

     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl 			$(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) 			$(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules $(IRULESRC)/xf86site.def $(IRULESRC)/host.def $(EXTRA_ICONFIGFILES)

# $TOG: X11.rules /main/4 1997/04/30 15:23:24 kaleb $

# ----------------------------------------------------------------------
# X Window System Build Parameters and Rules
# $TOG: X11.tmpl /main/292 1997/05/20 10:05:59 kaleb $
#
#
#
#
# $XFree86: xc/config/cf/X11.tmpl,v 1.8.2.4 1998/01/23 12:35:08 dawes Exp $

# -----------------------------------------------------------------------
# X Window System make variables; these need to be coordinated with rules

             XTOP = $(TOP)
           BINDIR = /usr/X11R6/bin
     BUILDINCROOT = $(TOP)/exports
      BUILDINCDIR = $(BUILDINCROOT)/include
      BUILDINCTOP = ../..
      BUILDLIBDIR = $(TOP)/exports/lib
      BUILDLIBTOP = ../..
      BUILDBINDIR = $(TOP)/exports/bin
      BUILDBINTOP = ../..
    XBUILDINCROOT = $(XTOP)/exports
     XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
     XBUILDINCTOP = ../../..
     XBUILDBINDIR = $(XBUILDINCROOT)/bin
           INCDIR = $(INCROOT)
           ADMDIR = /usr/adm
           LIBDIR = $(USRLIBDIR)/X11
   TOP_X_INCLUDES = -I$(XPROJECTROOT)/include

           VARDIR = /var/X11

          FONTDIR = $(LIBDIR)/fonts
         XINITDIR = $(LIBDIR)/xinit
           XDMDIR = $(LIBDIR)/xdm
        XDMVARDIR = $(VARLIBDIR)/xdm
           TWMDIR = $(LIBDIR)/twm
           XSMDIR = $(LIBDIR)/xsm
           NLSDIR = $(LIBDIR)/nls
       XLOCALEDIR = $(LIBDIR)/locale
        PEXAPIDIR = $(LIBDIR)/PEX
      LBXPROXYDIR = $(LIBDIR)/lbxproxy
  PROXYMANAGERDIR = $(LIBDIR)/proxymngr
        XPRINTDIR = $(LIBDIR)
      XAPPLOADDIR = $(LIBDIR)/app-defaults
       FONTCFLAGS = -t

     INSTAPPFLAGS = $(INSTDATFLAGS)

              RGB = rgb
            FONTC = bdftopcf
        MKFONTDIR = mkfontdir

       DOCUTILSRC = $(XTOP)/doc/util
        CLIENTSRC = $(TOP)/clients
          DEMOSRC = $(TOP)/demos
       XDOCMACROS = $(DOCUTILSRC)/macros.t
       XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
       PROGRAMSRC = $(TOP)/programs
           LIBSRC = $(XTOP)/lib
          FONTSRC = $(XTOP)/fonts
       INCLUDESRC = $(BUILDINCROOT)/include
      XINCLUDESRC = $(INCLUDESRC)/X11
        SERVERSRC = $(XTOP)/programs/Xserver
       CONTRIBSRC = $(XTOP)/../contrib
   UNSUPPORTEDSRC = $(XTOP)/unsupported
           DOCSRC = $(XTOP)/doc
           RGBSRC = $(XTOP)/programs/rgb
      BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
     MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
    FONTSERVERSRC = $(PROGRAMSRC)/xfs
       FONTINCSRC = $(XTOP)/include/fonts
        EXTINCSRC = $(XTOP)/include/extensions
     TRANSCOMMSRC = $(LIBSRC)/xtrans
   TRANS_INCLUDES = -I$(TRANSCOMMSRC)

       XENVLIBDIR = $(USRLIBDIR)
   CLIENTENVSETUP = LD_LIBRARY_PATH=$(XENVLIBDIR)

# $XConsortium: lnxLib.tmpl,v 1.5 95/01/11 21:44:44 kaleb Exp $
# $XFree86: xc/config/cf/lnxLib.tmpl,v 3.9 1996/02/24 04:32:52 dawes Exp $

          XLIBSRC = $(LIBSRC)/X11

SOXLIBREV = 6.1
DEPXONLYLIB =
XONLYLIB =  -lX11

LINTXONLY = $(LINTLIBDIR)/llib-lX11.ln

         XLIBONLY = $(XONLYLIB)

      XEXTLIBSRC = $(LIBSRC)/Xext

SOXEXTREV = 6.3
DEPEXTENSIONLIB =
EXTENSIONLIB =  -lXext

LINTEXTENSION = $(LINTLIBDIR)/llib-lXext.ln

LINTEXTENSIONLIB = $(LINTEXTENSION)
          DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
             XLIB = $(EXTENSIONLIB) $(XONLYLIB)
         LINTXLIB = $(LINTXONLYLIB)

    XSSLIBSRC = $(LIBSRC)/Xss

DEPXSSLIB = $(USRLIBDIR)/libXss.a
XSSLIB =  -lXss

LINTXSS = $(LINTLIBDIR)/llib-lXss.ln

    XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc

DEPXXF86MISCLIB = $(USRLIBDIR)/libXxf86misc.a
XXF86MISCLIB =  -lXxf86misc

LINTXXF86MISC = $(LINTLIBDIR)/llib-lXxf86misc.ln

    XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm

DEPXXF86VMLIB = $(USRLIBDIR)/libXxf86vm.a
XXF86VMLIB =  -lXxf86vm

LINTXXF86VM = $(LINTLIBDIR)/llib-lXxf86vm.ln

    XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga

DEPXXF86DGALIB = $(USRLIBDIR)/libXxf86dga.a
XXF86DGALIB =  -lXxf86dga

LINTXXF86DGA = $(LINTLIBDIR)/llib-lXxf86dga.ln

    XDPMSLIBSRC = $(LIBSRC)/Xdpms

DEPXDPMSLIB = $(USRLIBDIR)/libXdpms.a
XDPMSLIB =  -lXdpms

LINTXDPMS = $(LINTLIBDIR)/llib-lXdpms.ln

         XAUTHSRC = $(LIBSRC)/Xau

DEPXAUTHLIB = $(USRLIBDIR)/libXau.a
XAUTHLIB =  -lXau

LINTXAUTH = $(LINTLIBDIR)/llib-lXau.ln

      XDMCPLIBSRC = $(LIBSRC)/Xdmcp

DEPXDMCPLIB = $(USRLIBDIR)/libXdmcp.a
XDMCPLIB =  -lXdmcp

LINTXDMCP = $(LINTLIBDIR)/llib-lXdmcp.ln

           XMUSRC = $(LIBSRC)/Xmu

SOXMUREV = 6.0
DEPXMULIB =
XMULIB =  -lXmu

LINTXMU = $(LINTLIBDIR)/llib-lXmu.ln

       OLDXLIBSRC = $(LIBSRC)/oldX

DEPOLDXLIB = $(USRLIBDIR)/liboldX.a
OLDXLIB =  -loldX

LINTOLDX = $(LINTLIBDIR)/llib-loldX.ln

         XPLIBSRC = $(LIBSRC)/Xp

SOXPREV = 6.2
DEPXPLIB =
XPLIB =  -lXp

LINTXP = $(LINTLIBDIR)/llib-lXp.ln

       TOOLKITSRC = $(LIBSRC)/Xt

SOXTREV = 6.0
DEPXTOOLONLYLIB =
XTOOLONLYLIB =  -lXt

LINTXTOOLONLY = $(LINTLIBDIR)/llib-lXt.ln

      DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
         XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
     LINTXTOOLLIB = $(LINTXTOOLONLYLIB)

       XALIBSRC = $(LIBSRC)/Xa

SOXAREV = 1.0
DEPXALIB =
XALIB =  -lXa

LINTXA = $(LINTLIBDIR)/llib-lXa.ln

       AWIDGETSRC = $(LIBSRC)/Xaw

SOXAWREV = 6.1
DEPXAWLIB =
XAWLIB =  -lXaw

LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln

         XILIBSRC = $(LIBSRC)/Xi

SOXINPUTREV = 6.0
DEPXILIB =
XILIB =  -lXi

LINTXI = $(LINTLIBDIR)/llib-lXi.ln

      XTESTLIBSRC = $(LIBSRC)/Xtst

SOXTESTREV = 6.1
DEPXTESTLIB =
XTESTLIB =  -lXtst

LINTXTEST = $(LINTLIBDIR)/llib-lXtst.ln

        PEXLIBSRC = $(LIBSRC)/PEX5

SOPEXREV = 6.0
DEPPEXLIB =
PEXLIB =  -lPEX5

LINTPEX = $(LINTLIBDIR)/llib-lPEX5.ln

        XIELIBSRC = $(LIBSRC)/XIE

SOXIEREV = 6.0
DEPXIELIB =
XIELIB =  -lXIE

LINTXIE = $(LINTLIBDIR)/llib-lXIE.ln

      PHIGSLIBSRC = $(LIBSRC)/PHIGS

DEPPHIGSLIB = $(USRLIBDIR)/libphigs.a
PHIGSLIB =  -lphigs

LINTPHIGS = $(LINTLIBDIR)/llib-lphigs.ln

DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
XBSDLIB =  -lXbsd

LINTXBSD = $(LINTLIBDIR)/llib-lXbsd.ln

           ICESRC = $(LIBSRC)/ICE

SOICEREV = 6.3
DEPICELIB =
ICELIB =  -lICE

LINTICE = $(LINTLIBDIR)/llib-lICE.ln

            SMSRC = $(LIBSRC)/SM

SOSMREV = 6.0
DEPSMLIB =
SMLIB =  -lSM

LINTSM = $(LINTLIBDIR)/llib-lSM.ln

           XKEYSRC = $(LIBSRC)/Xkey

SOXKEYREV = 6.0
DEPXKEYLIB =
XKEYLIB =  -lXkey

LINTXKEY = $(LINTLIBDIR)/llib-lXkey.ln

         FSLIBSRC = $(LIBSRC)/FS

DEPFSLIB = $(USRLIBDIR)/libFS.a
FSLIB =  -lFS

LINTFS = $(LINTLIBDIR)/llib-lFS.ln

         FONTLIBSRC = $(LIBSRC)/font

DEPFONTLIB = $(USRLIBDIR)/libfont.a
FONTLIB =  -lfont

LINTFONT = $(LINTLIBDIR)/llib-lfont.ln

          XPMLIBSRC = $(LIBSRC)/Xpm

DEPXPMLIB = $(USRLIBDIR)/libXpm.a
XPMLIB =  -lXpm

LINTXPM = $(LINTLIBDIR)/llib-lXpm.ln

    XKBFILELIBSRC = $(LIBSRC)/xkbfile

DEPXKBFILELIB = $(USRLIBDIR)/libxkbfile.a
XKBFILELIB =  -lxkbfile

LINTXKBFILE = $(LINTLIBDIR)/llib-lxkbfile.ln

     XKBCOMPCMD = xkbcomp

    XKBUILIBSRC = $(LIBSRC)/xkbui

DEPXKBUILIB = $(USRLIBDIR)/libxkbui.a
XKBUILIB =  -lxkbui

LINTXKBUI = $(LINTLIBDIR)/llib-lxkbui.ln

          DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)

         DEPLIBS1 = $(DEPLIBS)
         DEPLIBS2 = $(DEPLIBS)
         DEPLIBS3 = $(DEPLIBS)
         DEPLIBS4 = $(DEPLIBS)
         DEPLIBS5 = $(DEPLIBS)
         DEPLIBS6 = $(DEPLIBS)
         DEPLIBS7 = $(DEPLIBS)
         DEPLIBS8 = $(DEPLIBS)
         DEPLIBS9 = $(DEPLIBS)
         DEPLIBS10 = $(DEPLIBS)

XMULIBONLY = -lXmu
XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB)

        CONFIGDIR = $(LIBDIR)/config

    USRLIBDIRPATH = $(USRLIBDIR)
        LDPRELIBS = -L$(USRLIBDIR)
       LDPOSTLIBS =
     TOP_INCLUDES = -I$(INCROOT) $(TOP_X_INCLUDES)
  PROJECT_DEFINES =

CXXPROJECT_DEFINES =

# ----------------------------------------------------------------------
# start of Imakefile

# SPIM S20 MIPS Simulator.
# Imakefile for SPIM.
#
# Copyright (C) 1992-2000 by James Larus (larus@cs.wisc.edu).
# ALL RIGHTS RESERVED.
#
# SPIM is distributed under the following conditions:
#
#   You may make copies of SPIM for your own use and modify those copies.
#
#   All copies of SPIM must retain my name and copyright notice.
#
#   You may not sell SPIM or distributed SPIM in conjunction with a commerical
#   product or service without the expressed written consent of James Larus.
#
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE.
#
# $Header: $

#
# To make spim, type:
#
#   make spim
#
# To make xpsim, type:
#
#   make xspim
#

#
# To verify spim works, type:
#
#   make test
#

#
# The following parameters must be set for the target machine on which SPIM
# or XSPIM is compiled:
#

# Full path for directory that will hold the trap handler file:
TRAP_DIR = .

# Full path for the directory that will hold the executable files:
BIN_DIR = /usr/unsup/bin

# Full path for the directory that will hold the man files:
MAN_DIR = /var/unsup/man

# If you have flex, use it instead of lex.  If you use flex, define this
# variable and set LEXFLAGS.
LEX = flex

# SPIM needs flex's -I flag since the scanner is used interactively.
# You can set the -8 flag so that funny characters do not hang the scanner.
LEXFLAGS = -I -8

# If you use lex, set the variables this way:
# LEX = lex
# LEXFLAGS =

# Size of the segments when spim starts up (data segment must be >= 64K).
# (These sizes are fine for most users since SPIM dynamically expands
# the memory as necessary.)
MEM_SIZES = -DTEXT_SIZE=65536 -DDATA_SIZE=131072 -DK_TEXT_SIZE=65536

#
# END OF PARAMETERS
#

BASE_OBJS = spim-utils.o run.o mem.o inst.o data.o sym-tbl.o y.tab.o lex.yy.o mips-syscall.o display-utils.o

OBJS = spim.o $(BASE_OBJS)

BASE_XOBJS = xspim.o windows.o buttons.o

XOBJS = $(BASE_OBJS) $(BASE_XOBJS)

TRAP_PATH = \"$(TRAP_DIR)/trap.handler\"

ENDIAN=`cat configuration`

# lex.yy.c is usually compiled with -O to speed it up.
LEXCFLAGS = -O

YFLAGS = -d

DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
LOCALLIBS = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
CDEBUGFLAGS = -g
DEFINES = $(ENDIAN) $(MEM_SIZES) -DDEFAULT_TRAP_HANDLER=$(TRAP_PATH) -DSPIM_VERSION="\"`cat VERSION`\""

SYS_LIBRARIES = -lm

# 

#
#  Program dependencies:
#

all:: spim

spim:	force
	@touch .spim-made
	@make spim_sub
	mv spim_sub spim

xspim:	force
	@touch .spim-made
	@make xspim_sub
	mv xspim_sub xspim

force:  configuration

configuration:
	Configure

spim_sub: $(OBJS)
	$(RM) $@
	$(CCLINK) -o $@ $(LDOPTIONS) $(OBJS)  $(LDLIBS)  $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) spim_sub

xspim_sub: $(XOBJS) $(DEPLIBS)
	$(RM) $@
	$(CCLINK) -o $@ $(LDOPTIONS) $(XOBJS) $(LOCALLIBS) $(LDLIBS) $(SYSLIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) xspim_sub

install:: spim
	@if [ -d $(DESTDIR)$(BIN_DIR) ]; then set +x; \
	else (set -x; $(MKDIRHIER) $(DESTDIR)$(BIN_DIR)); fi
	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  spim $(DESTDIR)$(BIN_DIR)/spim

install:: xspim
	@if [ -d $(DESTDIR)$(BIN_DIR) ]; then set +x; \
	else (set -x; $(MKDIRHIER) $(DESTDIR)$(BIN_DIR)); fi
	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  xspim $(DESTDIR)$(BIN_DIR)/xspim

install.man:: spim.man
	@if [ -d $(DESTDIR)$(MAN_DIR) ]; then set +x; \
	else (set -x; $(MKDIRHIER) $(DESTDIR)$(MAN_DIR)); fi
	$(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) spim.man $(DESTDIR)$(MAN_DIR)/spim.$(MANSUFFIX)

install.man:: xspim.man
	@if [ -d $(DESTDIR)$(MAN_DIR) ]; then set +x; \
	else (set -x; $(MKDIRHIER) $(DESTDIR)$(MAN_DIR)); fi
	$(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) xspim.man $(DESTDIR)$(MAN_DIR)/xspim.$(MANSUFFIX)

install:: trap.handler
	$(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) trap.handler $(DESTDIR)$(TRAP_DIR)

y.tab.h: y.tab.c

y.tab.c: parser.y
	$(YACC) $(YFLAGS) parser.y

y.tab.o: y.tab.c
	$(CC) $(IFLAGS) $(CFLAGS) $(YCFLAGS) -c y.tab.c

lex.yy.o:	scanner.l

lex.yy.c:	scanner.l
	$(LEX) $(LEXFLAGS) scanner.l

lex.yy.o: lex.yy.c
	$(CC) $(IFLAGS) $(CFLAGS) $(LEXCFLAGS) -c lex.yy.c

# 

#
# Test spim with a torture test:
#

test:	spim
	/bin/rm -f Tests/tt.out std_out new_out
	@echo
	bash -c "./spim -bare -notrap -file Tests/tt.bare.s >& Tests/tt.out"
	tail +6 Tests/tt.bare.OK > std_out
	tail +6 Tests/tt.out > new_out
	@echo The next command should not produce any output:
	diff std_out new_out
	@echo
	@echo
	/bin/rm -f Tests/tt.out std_out new_out

	@if [ ! -f $(TRAP_DIR)/trap.handler ]; then echo "trap_handler not installed. Type: make install"; exit 1; else true; fi
	@if diff trap.handler $(TRAP_DIR)/trap.handler > /dev/null ; then true ; else echo "Old trap_handler installed.  Type: make install" ; exit 1; fi
	bash -c "./spim -file Tests/tt.s < Tests/tt.in >& Tests/tt.out"
	tail +6 Tests/tt.OK > std_out
	tail +6 Tests/tt.out > new_out
	@echo The next command should not produce any output:
	diff std_out new_out
	@echo
	@echo
	/bin/rm -f Tests/tt.out std_out new_out

# This test currently only works for little-endian machines.  The file
# tt.alu.bare.s needs to be converted in places for big-endian machines.

test_bare:
	bash -c "./spim -bare -notrap -file Tests/tt.alu.bare.s >& Tests/tt.out"
	tail +6 Tests/tt.alu.bare.OK > std_out
	tail +6 Tests/tt.out > new_out
	@echo The next command should not produce any output:
	diff std_out new_out
	@echo
	@echo
	/bin/rm -f Tests/tt.out std_out new_out

	bash -c "./spim -bare -notrap -file Tests/tt.fpu.bare.s >& Tests/tt.out"
	tail +6 Tests/tt.fpu.bare.OK > std_out
	tail +6 Tests/tt.out > new_out
	@echo The next command should not produce any output:
	diff std_out new_out
	@echo
	/bin/rm -f Tests/tt.out std_out new_out

# 

TAGS:	*.c *.h *.l *.y
	etags *.l *.y *.c *.h

clean::
	rm -f spim xspim *.o y.output core a.out TAGS 	  .spim-made spim.tar.*

very-clean: clean
	rm -f y.tab.h y.tab.c lex.yy.c spim.tar* spim.shar* 	Documentation/spim.ps, Documentation/spim.aux Documentation/spim.log 	Documentation/spim.dvi Tests/tt.s Tests/tt.OK configuration

# 

TAR_FILES = Configure BLURB README Imakefile Makefile.std *.c *.h *.y *.l 	    trap.handler Tests/tt.* VERSION Documentation spim.man xspim.man

Documentation/spim.ps: Documentation/spim.tex
	cd Documentation; latex spim.tex; latex spim.tex; dvips -D 300 spim.dvi; 	rm -f spim.aux spim.log spim.dvi

tar:	Documentation/spim.ps
	mkdir Hide
	mv Tests/tt.s Tests/tt.OK configuration Hide
	chmod 644 Imakefile Makefile.std
	tar cvf spim.tar $(TAR_FILES)
	mv Hide/tt.* Tests
	mv Hide/configuration .
	rm -fr Hide

tar.Z:	tar
	compress spim.tar

shar:
	mv -f y.tab.c y.tab.c.xx
	mv -f lex.yy.c lex.yy.c.xx
	rm -f spim.shar spim.shar0?
	makekit -n spim.shar $(FILES)
	mv -f y.tab.c.xx y.tab.c
	mv -f lex.yy.c.xx lex.yy.c

depend::
	makedepend -w10 *.c

# 
# DO NOT DELETE THIS LINE -- make depend depends on it.

buttons.o: spim.h
buttons.o: spim-utils.h
buttons.o: xspim.h
buttons.o: inst.h
buttons.o: mem.h
buttons.o: reg.h
buttons.o: scanner.h
buttons.o: sym-tbl.h
buttons.o: buttons.h
data.o: spim.h
data.o: spim-utils.h
data.o: inst.h
data.o: mem.h
data.o: reg.h
data.o: sym-tbl.h
data.o: parser.h
data.o: run.h
data.o: data.h
inst.o: spim.h
inst.o: spim-utils.h
inst.o: inst.h
inst.o: mem.h
inst.o: reg.h
inst.o: sym-tbl.h
inst.o: y.tab.h
inst.o: parser.h
inst.o: scanner.h
inst.o: data.h
inst.o: op.h
lex.yy.o: spim.h
lex.yy.o: spim-utils.h
lex.yy.o: inst.h
lex.yy.o: sym-tbl.h
lex.yy.o: y.tab.h
lex.yy.o: parser.h
lex.yy.o: scanner.h
lex.yy.o: op.h
mem.o: spim.h
mem.o: spim-utils.h
mem.o: inst.h
mem.o: mem.h
mem.o: reg.h
mips-syscall.o: spim.h
mips-syscall.o: inst.h
mips-syscall.o: mem.h
mips-syscall.o: reg.h
mips-syscall.o: sym-tbl.h
mips-syscall.o: spim-syscall.h
mips-syscall.o: mips-syscall.h
run.o: spim.h
run.o: spim-utils.h
run.o: inst.h
run.o: mem.h
run.o: reg.h
run.o: sym-tbl.h
run.o: y.tab.h
run.o: mips-syscall.h
run.o: run.h
spim-utils.o: spim.h
spim-utils.o: spim-utils.h
spim-utils.o: inst.h
spim-utils.o: data.h
spim-utils.o: mem.h
spim-utils.o: reg.h
spim-utils.o: scanner.h
spim-utils.o: parser.h
spim-utils.o: y.tab.h
spim-utils.o: run.h
spim-utils.o: sym-tbl.h
spim.o: spim.h
spim.o: spim-utils.h
spim.o: inst.h
spim.o: mem.h
spim.o: reg.h
spim.o: parser.h
spim.o: sym-tbl.h
spim.o: scanner.h
spim.o: y.tab.h
sym-tbl.o: spim.h
sym-tbl.o: spim-utils.h
sym-tbl.o: inst.h
sym-tbl.o: mem.h
sym-tbl.o: data.h
sym-tbl.o: parser.h
sym-tbl.o: sym-tbl.h
windows.o: spim.h
windows.o: spim-utils.h
windows.o: buttons.h
windows.o: xspim.h
windows.o: windows.h
xspim.o: spim.h
xspim.o: spim-utils.h
xspim.o: inst.h
xspim.o: mem.h
xspim.o: reg.h
xspim.o: y.tab.h
xspim.o: buttons.h
xspim.o: windows.h
xspim.o: xspim.h
y.tab.o: spim.h
y.tab.o: spim-utils.h
y.tab.o: inst.h
y.tab.o: mem.h
y.tab.o: reg.h
y.tab.o: sym-tbl.h
y.tab.o: data.h
y.tab.o: scanner.h
y.tab.o: parser.h
parser.o: spim.h
parser.o: spim-utils.h
parser.o: inst.h
parser.o: mem.h
parser.o: reg.h
parser.o: sym-tbl.h
parser.o: data.h
parser.o: scanner.h
parser.o: parser.h
scanner.o: spim.h
scanner.o: spim-utils.h
scanner.o: inst.h
scanner.o: sym-tbl.h
scanner.o: y.tab.h
scanner.o: parser.h
scanner.o: scanner.h
scanner.o: op.h

# ----------------------------------------------------------------------
# common rules for all Makefiles - do not edit

.c.i:
	$(RM) $@
	 $(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@

emptyrule::

clean::
	$(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut  "#"*

Makefile::
	-@if [ -f Makefile ]; then set -x; \
	$(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
	else exit 0; fi
	$(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)

tags::
	$(TAGS) -w *.[ch]
	$(TAGS) -xw *.[ch] > TAGS

man_keywords::

# ----------------------------------------------------------------------
# empty rules for directories that do not have SUBDIRS - do not edit

install::
	@echo "install in $(CURRENT_DIR) done"

install.man::
	@echo "install.man in $(CURRENT_DIR) done"

install.linkkit::
	@echo "install.linkkit in $(CURRENT_DIR) done"

Makefiles::

includes::

depend::

# ----------------------------------------------------------------------
# dependencies generated by makedepend

