# Makefile generated by imake - do not edit!
# $Xorg: imake.c,v 1.6 2001/02/09 02:03:15 xorgcvs Exp $

# ----------------------------------------------------------------------
# Makefile generated from "Imake.tmpl" and </tmp/IIf.BfaaFT>
# $Xorg: Imake.tmpl,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
#
#
#
#
# $XFree86: xc/config/cf/Imake.tmpl,v 3.116.2.1 2002/09/04 02:38:08 dawes Exp $
# ----------------------------------------------------------------------

all::

.SUFFIXES: .i

# $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $

# $XFree86: xc/config/cf/Imake.cf,v 3.74 2001/11/16 16:47:50 dawes Exp $

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

# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $

# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $

# $XFree86: xc/config/cf/xf86site.def,v 3.179 2002/01/16 18:36:00 dawes Exp $

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

# platform:  $Xorg: sun.cf,v 1.4 2000/08/17 19:41:48 cpqbld Exp $

# platform:  $XFree86: xc/config/cf/sun.cf,v 3.61.2.1 2002/09/04 02:38:08 dawes Exp $

# operating system:  SunOS 5.8 Generic_117350-04 sun4u (5.8.0)

# $Xorg: svr4.cf,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/svr4.cf,v 3.46 2002/01/15 22:59:23 dawes Exp $

# $XFree86: xc/config/cf/xfree86.cf,v 3.388 2002/01/03 22:51:54 alanh Exp $

# $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $

AFB_DEFS = -DUSE_AFB

DRIVERSDKDIR = $(USRLIBDIR)/Server
DRIVERSDKMODULEDIR = $(USRLIBDIR)/Server/modules
DRIVERSDKINCLUDEDIR = $(USRLIBDIR)/Server/include

       XF86SRC = $(SERVERSRC)/hw/xfree86
    XF86COMSRC = $(XF86SRC)/common
 XF86PARSERSRC = $(XF86SRC)/parser
     XF86OSSRC = $(XF86SRC)/os-support
 XF86DRIVERSRC = $(XF86SRC)/drivers
     DRIVERSRC = $(XF86DRIVERSRC)

        XFREE86DOCDIR = $(DOCDIR)
      XFREE86PSDOCDIR = $(DOCPSDIR)
    XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese

# $Xorg: xf86.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/xf86.rules,v 3.34 2001/07/19 02:22:44 tsi Exp $

# $Xorg: sv4Lib.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/sv4Lib.rules,v 3.8 2001/05/28 02:42:25 tsi Exp $

# $Xorg: xf86.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/xf86.rules,v 3.34 2001/07/19 02:22:44 tsi Exp $

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

# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $

# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $

     UWDEFS = -DUW $(AFSDEFS) $(KRB5DEFS)

LDSTATICFLAGS = StaticLinkFlags
LDDYNAMICFLAGS = DynamicLinkFlags

UWXDMDIR = /usr/adm/xdm

XMISCDIR = /s/xmisc-1.0

  XPMROOT = /s/xpm-3.4k

      XPMLIBDIR = $(XPMROOT)/lib
      XPMBINDIR = $(XPMROOT)/bin
      XPMMANDIR = $(XPMROOT)/man
      XPMINCDIR = $(XPMROOT)/include

# ---------------------------------------------------------------------
# Imake rules for building libraries, programs, scripts, and data files
# rules:  $Xorg: Imake.rules,v 1.3 2000/08/17 19:41:46 cpqbld Exp $
#
#
#
#
# rules:  $XFree86: xc/config/cf/Imake.rules,v 3.102 2001/12/17 20:00:37 dawes Exp $

GLIDE2INCDIR =

GLIDE3INCDIR =

GLIDE3LIBNAME =

TKLIBNAME = tk8.3

TKLIBDIR = /s/tcl-8.3.3/lib

TCLLIBNAME = tcl8.3

TCLIBDIR = /s/tcl-8.3.3/lib

          PATHSEP = /
            SHELL = /bin/sh

              TOP = .
      CURRENT_DIR = .

            IMAKE = imake
           DEPEND = gccmakedep
          REVPATH = revpath
    EXPORTLISTGEN = exportlistgen
             RMAN = rman
      RMANOPTIONS = -f HTML
        CONFIGSRC = $(TOP)/config
         IMAKESRC = $(CONFIGSRC)/imake
        DEPENDSRC = $(CONFIGSRC)/util

          INCROOT = /s/XFree86-4.2.1/@sys/include
        USRLIBDIR = /s/XFree86-4.2.1/@sys/lib
           VARDIR = /var
        VARLIBDIR = $(VARDIR)/lib
  SYSTEMUSRLIBDIR = /usr/lib
  SYSTEMUSRINCDIR = /usr/include
         SHLIBDIR = /s/XFree86-4.2.1/@sys/lib
       LINTLIBDIR = $(USRLIBDIR)/lint
          MANPATH = /s/XFree86-4.2.1/@sys/man
    MANSOURCEPATH = $(MANPATH)/man
           MANDIR = $(MANSOURCEPATH)1
        LIBMANDIR = $(MANSOURCEPATH)3
       FILEMANDIR = $(MANSOURCEPATH)$(FILEMANSUFFIX)
       MISCMANDIR = $(MANSOURCEPATH)$(MISCMANSUFFIX)
     DRIVERMANDIR = $(MANSOURCEPATH)$(DRIVERMANSUFFIX)
     LOGDIRECTORY = $(VARDIR)/log

               AR = /usr/ccs/bin/ar cqs
  BOOTSTRAPCFLAGS =
               CC = gcc
               AS = /usr/ccs/bin/as

.SUFFIXES: .cc

              CXX = g++
          CXXFILT = c++filt
           CXXLIB =
    CXXDEBUGFLAGS = -O2
CXXDEPENDINCLUDES =
 CXXEXTRA_DEFINES =
CXXEXTRA_INCLUDES =
   CXXSTD_DEFINES = -Dsun -Dsparc -DSVR4 -D__EXTENSIONS__ $(CXXPROJECT_DEFINES)
       CXXOPTIONS =
      CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
       CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(DEFINES) $(CXXEXTRA_DEFINES)
         CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)

         COMPRESS = compress
          GZIPCMD = gzip
              CPP = /usr/ccs/lib/cpp $(STD_CPP_DEFINES)
           RAWCPP = /usr/ccs/lib/cpp -undef $(STD_CPP_OPTIONS)
    PREPROCESSCMD = gcc -E $(STD_CPP_DEFINES)

        MKDIRHIER = sinstall mkdir -p
          INSTALL = sinstall /usr/ucb/install

     INSTALLFLAGS = -c
               LD = /usr/ccs/bin/ld
              LEX = /usr/ccs/bin/lex
               M4 = m4
          M4FLAGS =
           LEXLIB = -ll
             YACC = /usr/ccs/bin/yacc
           CCYACC = /usr/ccs/bin/yacc
             LINT = lint
      LINTLIBFLAG = -o
         LINTOPTS = -bh
               LN = ln -s
             MAKE = /usr/ccs/bin/make
               MV = mv -f
               CP = cp

               RM = rm -f
             PERL = perl
         PERLOPTS =
        MANSUFFIX = 1x
     LIBMANSUFFIX = 3x
    FILEMANSUFFIX = 4
    MISCMANSUFFIX = 5
  DRIVERMANSUFFIX = 7
     MANSRCSUFFIX = man
     MANNEWSUFFIX = _man
          MANDEFS = -D__apploaddir__=$(XAPPLOADDIR) -D__filemansuffix__=$(FILEMANSUFFIX) -D__miscmansuffix__=$(MISCMANSUFFIX) -D__drivermansuffix__=$(DRIVERMANSUFFIX) -D__projectroot__=$(PROJECTROOT) $(XORGMANDEFS) $(VENDORMANDEFS)

   COMPRESSMANCMD = gzip -n

            TROFF = troff -Tps
            NROFF = nroff
         MSMACROS = -ms
        MANMACROS = -man
              TBL = tbl
              EQN = eqn
             NEQN = neqn
              COL = col
         COLFLAGS = -b
            MODCC = gcc
           MODCPP = /usr/ccs/lib/cpp
        MODCFLAGS = $(CFLAGS)
            MODAS = /usr/ccs/bin/as
       MODASFLAGS =
            MODLD = /usr/ccs/bin/ld
       MODLDFLAGS =
MODLDCOMBINEFLAGS = -r
            MODAR = /usr/ccs/bin/ar cqs
        MODRANLIB = ranlib

     STD_INCLUDES = -I$(XPMINCDIR)
  STD_CPP_OPTIONS =
  STD_CPP_DEFINES =   -Dsun -Dsparc -DSVR4 -D__EXTENSIONS__ $(PROJECT_DEFINES)
      STD_DEFINES = -Dsun -Dsparc -DSVR4 -D__EXTENSIONS__ $(PROJECT_DEFINES)
 EXTRA_LOAD_FLAGS =
  EXTRA_LDOPTIONS =
  EXTRA_LIBRARIES =  -lsocket -lnsl
             TAGS = ctags

   PARALLELMFLAGS =

    SHAREDCODEDEF =
         SHLIBDEF =

     SHLIBLDFLAGS = -G -z text

         PICFLAGS = -fPIC

      CXXPICFLAGS = -fPIC

    PROTO_DEFINES =

     INSTPGMFLAGS =

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

      PROJECTROOT = /s/XFree86-4.2.1/@sys

      CDEBUGFLAGS = -O2
        CCOPTIONS = -DNO_ASM

      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES)
           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_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)

       CCENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH)
           CCLINK = $(CCENVSETUP) $(CC)

      CXXENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH)
          CXXLINK = $(CXXENVSETUP) $(CXX)

     LDSTRIPFLAGS = -x
   LDCOMBINEFLAGS = -r
      DEPENDFLAGS =
   DEPEND_DEFINES = -DUSE_MAKEDEPEND

# Not sure this belongs here
         TKLIBDIR = /s/tcl-8.3.3/lib
         TKINCDIR = /s/tcl-8.3.3/include
        TKLIBNAME = tk8.3
        TKLIBRARY = -L$(TKLIBDIR) -l$(TKLIBNAME)
        TCLLIBDIR = /s/tcl-8.3.3/lib
        TCLINCDIR = /s/tcl-8.3.3/include
       TCLLIBNAME = tcl8.3
       TCLLIBRARY = -L$(TCLLIBDIR) -l$(TCLLIBNAME)

        MACROFILE = sun.cf
           RM_CMD = $(RM)

    IMAKE_DEFINES =

         IRULESRC = $(CONFIGDIR)
        IMAKE_CMD = $(IMAKE) -DUseInstalled -DUseInstalledMotif=0 -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)

# $Xorg: Motif.rules,v 1.3 2000/08/17 19:41:46 cpqbld Exp $

# $Xorg: X11.rules,v 1.4 2000/08/17 19:41:46 cpqbld Exp $

# $XFree86: xc/config/cf/X11.rules,v 1.6 2001/01/17 16:22:31 dawes Exp $

# $Xorg: Motif.tmpl,v 1.3 2000/08/17 19:41:46 cpqbld Exp $

# ----------------------------------------------------------------------
# X Window System Build Parameters and Rules
# $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
#
#
#
#
# $XFree86: xc/config/cf/X11.tmpl,v 1.141.2.1 2002/09/04 02:38:08 dawes Exp $

XORGRELSTRING = Release 6.6
XORGMANNAME = X Version 11

VENDORMANNAME = XFree86
VENDORMANVERSION = Version `echo 4 2 1 | sed 's/ /./g'`

STICKY_DEFINES = -DHAS_STICKY_DIR_BIT

FCHOWN_DEFINES = -DHAS_FCHOWN

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

             XTOP = $(TOP)
           BINDIR = /s/XFree86-4.2.1/@sys/bin
     BUILDINCROOT = $(TOP)/exports
      BUILDINCDIR = $(BUILDINCROOT)/include
      BUILDINCTOP = ../..
      BUILDLIBDIR = $(TOP)/exports/lib
      BUILDLIBTOP = ../..
      BUILDBINDIR = $(TOP)/exports/bin
      BUILDBINTOP = ../..
   BUILDMODULEDIR = $(BUILDLIBDIR)/modules
   BUILDMODULETOP = $(BUILDLIBTOP)/..
    XBUILDINCROOT = $(XTOP)/exports
     XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
     XBUILDINCTOP = ../../..
     XBUILDBINDIR = $(XBUILDINCROOT)/bin
           INCDIR = $(INCROOT)
           ADMDIR = /usr/adm
           LIBDIR = $(USRLIBDIR)/X11
       LIBEXECDIR = /s/XFree86-4.2.1/@sys/libexec
        MODULEDIR = $(USRLIBDIR)/modules
   TOP_X_INCLUDES =

        ETCX11DIR = /s/XFree86-4.2.1/@sys/etc

          CONFDIR = $(VARDIR)

           DOCDIR = $(LIBDIR)/doc
       DOCHTMLDIR = $(DOCDIR)/html
         DOCPSDIR = $(DOCDIR)/PostScript
          FONTDIR = $(LIBDIR)/fonts
     ENCODINGSDIR = $(FONTDIR)/encodings
         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)/xserver
      XAPPLOADDIR = $(LIBDIR)/app-defaults
       FONTCFLAGS = -t

     INSTAPPFLAGS = $(INSTDATFLAGS)

              RGB = $(BINDIR)/rgb
            FONTC = $(BINDIR)/bdftopcf
        MKFONTDIR = $(BINDIR)/mkfontdir
         XFTCACHE = $(BINDIR)/xftcache
      MKHTMLINDEX = $(BINDIR)/mkhtmlindex
          UCS2ANY = $(BINDIR)/ucs2any.pl
      BDFTRUNCATE = $(BINDIR)/bdftruncate.pl
     UCSMAPPREFIX = $(FONTDIR)/util/map-

     HTMLINDEXCMD = $(MKHTMLINDEX)

       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
     ENCODINGSSRC = $(FONTSRC)/encodings
       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
      FTSOURCEDIR = $(TOP)/extras/FreeType
     XTTSOURCEDIR = $(TOP)/extras/X-TrueType
       MESASRCDIR = $(TOP)/extras/Mesa
  OGLSAMPLESRCDIR = $(TOP)/extras/ogl-sample
        PSWRAPSRC = $(XTOP)/config/pswrap
     TRANSCOMMSRC = $(LIBSRC)/xtrans
   TRANS_INCLUDES = -I$(TRANSCOMMSRC)
 CONNECTION_FLAGS = -DTCPCONN -DUNIXCONN -DLOCALCONN $(STICKY_DEFINES) $(FCHOWN_DEFINES)

      XORGMANDEFS = -D__xorgversion__='"$(XORGRELSTRING)" "$(XORGMANNAME)"'
    VENDORMANDEFS = -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"

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

# $Xorg: sunLib.tmpl,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/sunLib.tmpl,v 3.12 2001/01/17 16:38:49 dawes Exp $

ICONV_INBUF_DEFINE = -DICONV_INBUF_CONST=const

UNSHARED_CXXLIB = -static -lC

# $Xorg: sv4Lib.tmpl,v 1.3 2000/08/17 19:41:48 cpqbld Exp $

# $XFree86: xc/config/cf/sv4Lib.tmpl,v 3.5 2001/01/17 16:38:50 dawes Exp $

XMULIBONLY = -lXmu

REGEXSYSLIB = -lgen
DYNLIBSYSLIB = -ldl

IAFSYSLIB =

          XLIBSRC = $(LIBSRC)/X11

SOXLIBREV = 6.2
DEPXONLYLIB =
XONLYLIB =  -lX11

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

         XLIBONLY = $(XONLYLIB)

      XEXTLIBSRC = $(LIBSRC)/Xext

SOXEXTREV = 6.4
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

    XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush

DEPXXF86RUSHLIB = $(USRLIBDIR)/libXxf86rush.a
XXF86RUSHLIB =  -lXxf86rush

LINTXXF86RUSH = $(LINTLIBDIR)/llib-lXxf86rush.ln

    XVLIBSRC = $(LIBSRC)/Xv

DEPXVLIB = $(USRLIBDIR)/libXv.a
XVLIB =  -lXv

LINTXV = $(LINTLIBDIR)/llib-lXv.ln

    XVMCLIBSRC = $(LIBSRC)/XvMC

DEPXVMCLIB = $(USRLIBDIR)/libXvMC.a
XVMCLIB =  -lXvMC

LINTXVMC = $(LINTLIBDIR)/llib-lXvMC.ln

    XINERAMALIBSRC = $(LIBSRC)/Xinerama

DEPXINERAMALIB = $(USRLIBDIR)/libXinerama.a
XINERAMALIB =  -lXinerama

LINTXINERAMA = $(LINTLIBDIR)/llib-lXinerama.ln

    DPSLIBSRC = $(LIBSRC)/dps

SODPSREV = 1.0
DEPDPSLIB =
DPSLIB =  -ldps

LINTDPS = $(LINTLIBDIR)/llib-ldps.ln

    DPSTKLIBSRC = $(LIBSRC)/dpstk

SODPSTKREV = 1.0
DEPDPSTKLIB =
DPSTKLIB =  -ldpstk

LINTDPSTK = $(LINTLIBDIR)/llib-ldpstk.ln

    PSRESLIBSRC = $(LIBSRC)/psres

SOPSRESREV = 1.0
DEPPSRESLIB =
PSRESLIB =  -lpsres

LINTPSRES = $(LINTLIBDIR)/llib-lpsres.ln

    GLULIBSRC = $(LIBSRC)/GLU

SOGLUREV = 1.3
DEPGLULIB =
GLULIB =  -lGLU

LINTGLU = $(LINTLIBDIR)/llib-lGLU.ln

    GLXLIBSRC = $(LIBSRC)/GL

SOGLREV = 1.2
DEPGLXLIB =
GLXLIB =  -lGL

LINTGLX = $(LINTLIBDIR)/llib-lGL.ln

    GLWIDGETSRC = $(LIBSRC)/GLw

DEPGLWLIB = $(USRLIBDIR)/libGLw.a
GLWLIB =  -lGLw

LINTGLW = $(LINTLIBDIR)/llib-lGLw.ln

    XRENDERLIBSRC = $(LIBSRC)/Xrender

SOXRENDERREV = 1.1
DEPXRENDERLIB =
XRENDERLIB =  -lXrender

LINTXRENDER = $(LINTLIBDIR)/llib-lXrender.ln

    XRANDRRLIBSRC = $(LIBSRC)/Xrandr

SOXRANDRREV = 1.0
DEPXRANDRLIB =
XRANDRLIB =  -lXrandr

LINTXRANDR = $(LINTLIBDIR)/llib-lXrandr.ln

    XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache

DEPXFONTCACHELIB = $(USRLIBDIR)/libXfontcache.a
XFONTCACHELIB =  -lXfontcache

LINTXFONTCACHE = $(LINTLIBDIR)/llib-lXfontcache.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.2
DEPXMULIB =
XMULIB =  -lXmu

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

           XMUUSRC = $(LIBSRC)/Xmuu

SOXMUUREV = 1.0
DEPXMUULIB =
XMUULIB =  -lXmuu

LINTXMUU = $(LINTLIBDIR)/llib-lXmuu.ln

       OLDXLIBSRC = $(LIBSRC)/oldX

SOOLDXREV = 6.0
DEPOLDXLIB =
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 = 7.0
DEPXAWLIB =
XAWLIB =  -lXaw

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

       AWIDGET6SRC = $(LIBSRC)/Xaw6

SOXAW6REV = 6.1
DEPXAW6LIB =
XAW6LIB =  -lXaw

LINTXAW6 = $(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

SOFONTREV = 1.4
DEPFONTLIB =
FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC)  -lXfont

LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
#
SOFONTREV = 1.4
DEPXFONTLIB =
XFONTLIB =  -lXfont

LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln

     FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs

DEPFONTSTUBLIB = $(USRLIBDIR)/libfntstubs.a
FONTSTUBLIB =  -lfntstubs

LINTFONTSTUB = $(LINTLIBDIR)/llib-lfntstubs.ln
         DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
            FONTLIB = $(XFONTLIB) $(FONTSTUBLIB)

         FONTENCLIBSRC = $(LIBSRC)/fontenc

DEPXFONTENCLIB = $(USRLIBDIR)/libfontenc.a
XFONTENCLIB =  -lfontenc

LINTXFONTENC = $(LINTLIBDIR)/llib-lfontenc.ln

          XPMLIBSRC = $(LIBSRC)/Xpm

SOXPMREV = 4.11
DEPXPMLIB =
XPMLIB =  -lXpm

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

          FREETYPE2LIBSRC = $(LIBSRC)/freetype2

SOFREETYPE2REV = 6.2
DEPFREETYPE2LIB =
FREETYPE2LIB =  -lfreetype

LINTFREETYPE2 = $(LINTLIBDIR)/llib-lfreetype.ln

FREETYPE2DIR = /s/freetype-2.1.2
FREETYPE2LIBDIR = /s/freetype-2.1.2/lib
FREETYPE2INCDIR = /s/freetype-2.1.2/include/freetype2
FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)
FREETYPE2LIB = -L$(FREETYPE2LIBDIR) -lfreetype
FREETYPE2DEFINES = -DFREETYPE2

          XFTLIBSRC = $(LIBSRC)/Xft

SOXFTREV = 1.1
DEPXFTLIB =
XFTLIB =  -lXft

LINTXFT = $(LINTLIBDIR)/llib-lXft.ln

    XKBFILELIBSRC = $(LIBSRC)/xkbfile

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

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

     XKBCOMPCMD = $(BINDIR)/xkbcomp

    XKBUILIBSRC = $(LIBSRC)/xkbui

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

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

        XTRAPLIBSRC = $(LIBSRC)/XTrap

SOXTRAPREV = 6.4
DEPXTRAPLIB =
XTRAPLIB =  -lXTrap

LINTXTRAP = $(LINTLIBDIR)/llib-lXTrap.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)

              MTOP = $(TOP)
TOP_MOTIF_INCLUDES = -I$(MINCLUDESRC)

      UIL_INCLUDES = -I$(USRINCDIR)/uil

    MOTIFENVLIBDIR = $(MPROJECTROOT)/lib

      USRINCDIR = /s/XFree86-4.2.1/@sys/include
         UIDDIR = $(LIBDIR)/uid
        TESTSRC = $(MTOP)/tests
        TESTLIB = $(TESTSRC)/lib
  GENERALSRCLIB = $(TESTSRC)/General/lib
  GENERALSRCBIN = $(TESTSRC)/General/bin
   MANUALSRCLIB = $(TESTSRC)/Manual/lib
   MANUALSRCBIN = $(TESTSRC)/Manual/bin
     AUTOSRCLIB = $(TESTSRC)/Auto/lib
     AUTOSRCBIN = $(TESTSRC)/Auto/bin
       COMMONPP = $(GENERALSRCBIN)/Commonpp
         GENRUN = $(GENERALSRCBIN)/Genrun
         MANRUN = $(GENERALSRCBIN)/Manrun

     TESTCOMSRC = $(MANUALSRCLIB)/Common

    BUILDDOCDIR = $(BUILDINCROOT)/doc
    BUILDLOCDIR = $(BUILDINCROOT)/localized

    MTOOLKITSRC = $(TOOLKITSRC)

    MINCLUDESRC = $(MTOP)/include
        MDOCSRC = $(MTOP)/doc
        MLOCSRC = $(MTOP)/localized

        MLIBSRC = $(MTOP)/lib
     MCLIENTSRC = $(MTOP)/clients
       MDEMOSRC = $(MTOP)/demos
     MWIDGETSRC = $(MLIBSRC)/Xm
   MRESOURCESRC = $(MLIBSRC)/Mrm
         UILSRC = $(MCLIENTSRC)/uil

   MPROJECTROOT = /s/motif-2.1.10

            UIL = uil
         DEPUIL = $(BINDIR)/uil

   XMEXTRA_LIBS =

SOXMREV = 2.1
DEPXMLIB =
XMLIB =  -lXm

LINTXM = $(LINTLIBDIR)/llib-lXm.ln

SOMRMREV = 2.1
DEPMRESOURCELIB =
MRESOURCELIB =  -lMrm

LINTMRESOURCE = $(LINTLIBDIR)/llib-lMrm.ln

SOUILREV = 2.1
DEPUILLIB =
UILLIB =  -lUil

LINTUIL = $(LINTLIBDIR)/llib-lUil.ln

SOMCOMMONREV = 2.1
DEPTESTCOMLIB =
TESTCOMLIB =  -lMCommon

LINTTESTCOM = $(LINTLIBDIR)/llib-lMCommon.ln

TESTUILCOMLIB = $(TESTCOMSRC)/libMCommonUil.a

  LINTMRESOURCE = $(MRESOURCESRC)/libMrm.a
LINTXMWIDGETLIB = $(MWIDGETSRC)/llib-l/Xm.ln
     LINTXMTOOL = $(MTOOLKITSRC)/llib-lXt.ln
     LINTUILLIB = $(UILSRC)/llib-lUil.ln

      YACCFLAGS =
       UILFLAGS =
    GENCATFLAGS =
         GENCAT = gencat $(GENCATFLAGS)
      MKCATTOOL = $(MLOCSRC)/util/mkcatdefs

         RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut  *.Dat

        DEPLIBS = $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB)

        DEPLIBS1 = $(DEPLIBS)
        DEPLIBS2 = $(DEPLIBS)
        DEPLIBS3 = $(DEPLIBS)

        CONFIGDIR = $(LIBDIR)/config

    USRLIBDIRPATH = /s/tcl-8.3.3/lib:/s/freetype-2.1.2/lib:/s/zlib-1.1.4-2/lib:/s/xpm-3.4k/lib:/s/XFree86-4.2.1/lib
        LDPRELIBS = -L$(USRLIBDIR) -L$(MPROJECTROOT)/lib  -L$(XPMLIBDIR)
       LDPOSTLIBS =  -L$(MPROJECTROOT)/lib
     TOP_INCLUDES = -I$(INCROOT) $(TOP_MOTIF_INCLUDES) $(TOP_X_INCLUDES)
  PROJECT_DEFINES =  -DNO_ISDIR -DNO_REGCOMP -DNO_ALLOCA -DBOGUS_MB_MAX -DNO_CONST

CXXPROJECT_DEFINES =  -DNO_ISDIR -DNO_REGCOMP -DNO_ALLOCA -DBOGUS_MB_MAX -DNO_CONST

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

# SPIM S20 MIPS Simulator.
# Imakefile for SPIM.
#
# Copyright (C) 1992-2004 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 exception handler file:
EXCEPTION_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 syscall.o display-utils.o string-stream.o

OBJS = spim.o $(BASE_OBJS)

BASE_XOBJS = xspim.o windows.o buttons.o

XOBJS = $(BASE_OBJS) $(BASE_XOBJS)

EXCEPTION_PATH = \"$(EXCEPTION_DIR)/exceptions.s\"

ENDIAN=`cat configuration`

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

YFLAGS = -d

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

SYS_LIBRARIES = -lm

# Use csh, tcsh, or bash, but not sh:
CSH = csh

# 

#
#  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)

cleandir::
	$(RM) spim_sub

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

cleandir::
	$(RM) xspim_sub

install:: spim
	@if [ -d $(DESTDIR)$(BIN_DIR) ]; then \
	set +x; \
	else \
	if [ -h $(DESTDIR)$(BIN_DIR) ]; then \
	(set -x; rm -f $(DESTDIR)$(BIN_DIR)); \
	fi; \
	(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 \
	if [ -h $(DESTDIR)$(BIN_DIR) ]; then \
	(set -x; rm -f $(DESTDIR)$(BIN_DIR)); \
	fi; \
	(set -x; $(MKDIRHIER) $(DESTDIR)$(BIN_DIR)); \
	fi
	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  xspim $(DESTDIR)$(BIN_DIR)/xspim

all:: spim.$(MANSUFFIX).html

spim.$(MANSUFFIX).html: spim.$(MANNEWSUFFIX)
	$(RM) spim.$(MANSUFFIX).html spim.$(MANSUFFIX)-html
	$(RMAN) $(RMANOPTIONS) < spim.$(MANNEWSUFFIX) \
	> spim.$(MANSUFFIX)-html && $(MV) spim.$(MANSUFFIX)-html $@

install.man:: spim.$(MANSUFFIX).html
	@if [ -d $(DESTDIR)$(DOCHTMLDIR) ]; then \
	set +x; \
	else \
	if [ -h $(DESTDIR)$(DOCHTMLDIR) ]; then \
	(set -x; rm -f $(DESTDIR)$(DOCHTMLDIR)); \
	fi; \
	(set -x; $(MKDIRHIER) $(DESTDIR)$(DOCHTMLDIR)); \
	fi
	@(SUF=`expr $(MANSUFFIX) \: '\(.\)'`; \
	set -x; \
	$(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) spim.$(MANSUFFIX).html $(DESTDIR)$(DOCHTMLDIR)/spim.$$SUF.html)

cleandir::
	$(RM) spim.$(MANSUFFIX).html spim.$(MANSUFFIX)-html

all:: spim.$(MANNEWSUFFIX)

spim.$(MANNEWSUFFIX): spim.$(MANSRCSUFFIX)
	$(RM) $@
	cd `dirname spim` && \
	$(LN) `basename spim.$(MANSRCSUFFIX)` `basename $@`

cleandir::
	$(RM) spim.$(MANNEWSUFFIX)

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

all:: xspim.$(MANSUFFIX).html

xspim.$(MANSUFFIX).html: xspim.$(MANNEWSUFFIX)
	$(RM) xspim.$(MANSUFFIX).html xspim.$(MANSUFFIX)-html
	$(RMAN) $(RMANOPTIONS) < xspim.$(MANNEWSUFFIX) \
	> xspim.$(MANSUFFIX)-html && $(MV) xspim.$(MANSUFFIX)-html $@

install.man:: xspim.$(MANSUFFIX).html
	@if [ -d $(DESTDIR)$(DOCHTMLDIR) ]; then \
	set +x; \
	else \
	if [ -h $(DESTDIR)$(DOCHTMLDIR) ]; then \
	(set -x; rm -f $(DESTDIR)$(DOCHTMLDIR)); \
	fi; \
	(set -x; $(MKDIRHIER) $(DESTDIR)$(DOCHTMLDIR)); \
	fi
	@(SUF=`expr $(MANSUFFIX) \: '\(.\)'`; \
	set -x; \
	$(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) xspim.$(MANSUFFIX).html $(DESTDIR)$(DOCHTMLDIR)/xspim.$$SUF.html)

cleandir::
	$(RM) xspim.$(MANSUFFIX).html xspim.$(MANSUFFIX)-html

all:: xspim.$(MANNEWSUFFIX)

xspim.$(MANNEWSUFFIX): xspim.$(MANSRCSUFFIX)
	$(RM) $@
	cd `dirname xspim` && \
	$(LN) `basename xspim.$(MANSRCSUFFIX)` `basename $@`

cleandir::
	$(RM) xspim.$(MANNEWSUFFIX)

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

install:: exceptions.s
	$(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) exceptions.s $(DESTDIR)$(EXCEPTION_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
	@echo
	@echo "Testing tt.bare.s:"
	$(CSH) -c "./spim -delayed_branches -delayed_loads -noexception -file Tests/tt.bare.s >& test.out"
	@tail -2 test.out
	@echo

	@if [ ! -f $(EXCEPTION_DIR)/exceptions.s ]; then echo "Exception Handler not installed; do make install"; exit 1; else true; fi
	@if diff exceptions.s $(EXCEPTION_DIR)/exceptions.s > /dev/null ; then true ; else echo "Old exception_handler installed.  Type: make install" ; exit 1; fi

	@echo
	@echo "Testing tt.core.s:"
	$(CSH) -c "./spim -file Tests/tt.core.s < Tests/tt.in >& test.out"
	@tail -2 test.out
	@echo

	@echo
	@echo "Testing tt.endian.s:"
	$(CSH) -c "./spim -file Tests/tt.endian.s >& test.out"
	@tail -2 test.out
	@echo
	@echo

# 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: spim
	@echo
	@echo "Testing tt.alu.bare.s:"
	$(CSH) -c "./spim -bare -noexception -file Tests/tt.alu.bare.s >& test.out"
	@tail -2 test.out
	@echo

	@echo
	@echo "Testing tt.fpt.bare.s:"
	$(CSH) -c "./spim -bare -noexception -file Tests/tt.fpu.bare.s >& test.out"
	@tail -2 test.out
	@echo
	@echo

# 

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

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

very-cleandir: cleandir
	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 \
	    exceptions.s 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
syscall.o: spim.h
syscall.o: inst.h
syscall.o: mem.h
syscall.o: reg.h
syscall.o: sym-tbl.h
syscall.o: 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: 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 > $@

.SUFFIXES: .s

.c.s:
	$(RM) $@
	 $(CC) -S $(CFLAGS) $(_NOOP_) $*.c

emptyrule::

cleandir::
	$(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::
	catman -M $(DESTDIR)$(MANPATH) -w

html_index::
	$(HTMLINDEXCMD) $(DESTDIR)$(DOCHTMLDIR)

clean:: cleandir

distclean:: cleandir

# ----------------------------------------------------------------------
# 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.sdk::
	@echo "install.sdk in $(CURRENT_DIR) done"

Makefiles::

includes::

depend::

distclean::
	$(RM) Makefile

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

