xspim stable port information

Package: xspim
Version: 7.4
Revision: 1
Description: MIPS simulator
License: Restrictive
Homepage: http://pages.cs.wisc.edu/~larus/spim.html
Maintainer: Monic Polynomial

Source: http://www.cs.wisc.edu/~larus/SPIM/spim-%v.tar.gz
Source-MD5: 4aae83509d47a5a98d37db5b469cbe9e
SourceDirectory: spim-%v

PatchFile: %n.patch
PatchFile-MD5: 5ed5834886c959a2ba5cba86d49c184c

Depends: x11
BuildDepends: fink (>= 0.24.12), x11-dev

CompileScript: <<
#!/bin/bash -ev
cd xspim
./Configure
make EXCEPTION_DIR=%p/lib/xspim
<<

InstallScript: <<
#!/bin/bash -ev
cd xspim
make BIN_DIR=%i/bin EXCEPTION_DIR=%i/lib/xspim MAN_DIR=%i/share/man/man1 install install-man
/usr/bin/install -d -m 755 %i/share/xspim
/bin/cp -R ../Tests %i/share/xspim
/bin/chmod -R go=u-w %i/share/xspim
<<

DocFiles: ChangeLog README VERSION COPYING Documentation/BLURB Documentation/SPIM.html Documentation/TeX

DescDetail: <<
spim is a self-contained simulator that will run MIPS32 assembly language
programs. It reads and executes assembly language programs written for this
processor. spim also provides a simple debugger and minimal set of operating
system services. spim does not execute binary (compiled) programs.

spim implements almost the entire MIPS32 assembler-extended instruction set.
(It omits most floating point comparisons and rounding modes and the memory
system page tables.) The MIPS architecture has several variants that differ in
various ways (e.g., the MIPS64 architecture supports 64-bit integers and
addresses), which means that spim will not run programs compiled for all types
of MIPS processors. MIPS compilers also generate a number of assembler
directives that spim cannot process. These directives usually can be safely
deleted.

Earlier versions of spim (before 7.0) implemented the MIPS-I instruction set
used on the MIPS R2000/R3000 computers. This architecture is obsolete (though,
has never been surpassed for its simplicity and elegance). spim now supports
the more modern MIPS32 architecture, which is the MIPS-I instruction set
augmented with a large number of occasionally useful instructions. MIPS code
from earlier versions of SPIM should run without changes, except code that
handles exceptions and interrupts. This part of the architecture changed over
time (and was poorly implemented in earlier versions of spim). Code of this
sort need to be updated. Examples of the new code are in
%p/lib/spim/exceptions.s and
%p/share/spim/Tests/tt.io.s.

spim implements both a simple, terminal-style interface and a window interface.
The spim program provides a simple terminal interface and the xspim program
provides the windowing interface.
<<

DescPackaging: <<
In order to get rid of xmkmf/imake, the patch script was actually based on the
Makefile from ../spim (the console version), adding the appropriate
X11 header/library flags.
<<

xspim stable port .patch

diff -Nurd spim-7.4.ori/COPYING spim-7.4/COPYING
--- spim-7.4.ori/COPYING 1969-12-31 21:00:00.000000000 -0300
+++ spim-7.4/COPYING 2009-04-08 07:18:25.000000000 -0300
@@ -0,0 +1,18 @@
+SPIM is copyrighted by James R. Larus and 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 distribute SPIM in conjunction with a
+ commercial 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.
+
+James Larus
+Microsoft Research
+(larus@microsoft.com)
diff -Nurd spim-7.4.ori/xspim/Makefile spim-7.4/xspim/Makefile
--- spim-7.4.ori/xspim/Makefile 2009-01-23 01:51:11.000000000 -0200
+++ spim-7.4/xspim/Makefile 2009-04-11 06:31:56.000000000 -0300
@@ -1,1051 +1,8 @@
-# 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
-# $Xorg: Imake.tmpl,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
-# $XdotOrg: util/cf/Imake.tmpl,v 1.17 2006/04/15 15:55:25 herrb Exp $
-#
-#
#
-#
-# $XFree86: xc/config/cf/Imake.tmpl,v 3.155 2003/12/24 18:58:41 dickey Exp $
-# ----------------------------------------------------------------------
-
-all::
-
-.SUFFIXES: .i
-
-# $XdotOrg: util/cf/Imake.cf,v 1.12 2005/11/08 06:33:24 jkj Exp $
-# $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $
-
-# $XFree86: xc/config/cf/Imake.cf,v 3.88 2003/12/16 21:30:21 herrb Exp $
-
-# Keep cpp from replacing path elements containing i486/i586/i686
-
-# -----------------------------------------------------------------------
-# 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.186 2003/06/25 18:06:22 eich Exp $
-
-# ----------------------------------------------------------------------
-# platform-specific configuration parameters - edit linux.cf to change
-
-# $XdotOrg: util/cf/linux.cf,v 1.31 2005/10/21 19:10:27 ajax Exp $
-# platform: $Xorg: linux.cf,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-
-# platform: $XFree86: xc/config/cf/linux.cf,v 3.220 2003/12/30 22:38:33 tsi Exp $
-
-# operating system: Linux 2.6.24-22-generic i686 [ELF] (2.6.24)
-# libc: (6.7.0)
-# binutils: (218)
-
-# $Xorg: lnxLib.rules,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-# $XFree86: xc/config/cf/lnxLib.rules,v 3.52 2003/10/31 20:49:03 herrb Exp $
-
-# $XdotOrg: util/cf/xorg.cf,v 1.53 2005/10/03 16:08:44 alanc Exp $
-
-# $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
-
-XORG_VERSION_CURRENT = (((6) * 10000000) + ((9) * 100000) + ((0) * 1000) + 0)
-RELEASE_VERSION = RELEASE-1
-
-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)
- XFREE86PDFDOCDIR = $(DOCPDFDIR)
- 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.34tsi Exp $
-
- SELINUX_LDFLAGS =
-
- SELINUX_INCLUDES = -I/usr/include/selinux
-
- SELINUX_CFLAGS = -DHAVE_SELINUX
-
- SELINUX_LIBS = -lselinux
-
-# ----------------------------------------------------------------------
-# 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 $
-
-# ---------------------------------------------------------------------
-# 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: $XdotOrg: util/cf/Imake.rules,v 1.11 2005/11/08 06:33:24 jkj Exp $
-#
-#
-#
-#
-# rules: $XFree86: xc/config/cf/Imake.rules,v 3.128 2003/11/15 03:25:17 dawes Exp $
-
-.PHONY: all interfaces install install.man install.lib install.sdk depend includes cleandir
-
- _NULLCMD_ = @ echo -n
-
-X_BYTE_ORDER = X_LITTLE_ENDIAN
-
-GLIDE2INCDIR = /usr/include/glide
-
-GLIDE3INCDIR = /usr/include/glide3
-
-GLIDE3LIBNAME = glide3
-
-TKLIBNAME = tk8.4
-
-TKLIBDIR = /usr/lib
-
-TCLLIBNAME = tcl8.4
-
-TCLIBDIR = /usr/lib
-
- PATHSEP = /
- SHELL = /bin/sh -e
-
- TOP = .
- CURRENT_DIR = .
-
- IMAKE = imake
- DEPEND = gccmakedep
- MKDIRHIER = mkdir -p
- REVPATH = revpath
- EXPORTLISTGEN =
- RMAN = /usr/bin/rman
- RMANBASENAME = rman
- RMANOPTIONS =
- CONFIGSRC = $(TOP)/config
- IMAKESRC = $(CONFIGSRC)/imake
- DEPENDSRC = $(CONFIGSRC)/util
-
- INCROOT = /usr/include
- USRLIBDIR = /usr/lib
- VARDIR = /var
- VARLIBDIR = $(VARDIR)/lib
- SYSTEMUSRLIBDIR = /usr/lib
- SYSTEMUSRINCDIR = /usr/include
- SHLIBDIR = /usr/lib
- LINTLIBDIR = $(USRLIBDIR)/lint
- MANPATH = /usr/share/man
- MANSOURCEPATH = $(MANPATH)/man
- MANDIR = $(MANSOURCEPATH)$(MANSECT)
- SYSCALLMANDIR = $(MANSOURCEPATH)$(SYSCALLMANSECT)
- LIBMANDIR = $(MANSOURCEPATH)$(LIBMANSECT)
- DRIVERMANDIR = $(MANSOURCEPATH)4
- FILEMANDIR = $(MANSOURCEPATH)$(FILEMANSECT)
- GAMEMANDIR = $(MANSOURCEPATH)$(GAMEMANSECT)
- MISCMANDIR = $(MANSOURCEPATH)7
- ADMMANDIR = $(MANSOURCEPATH)$(ADMMANSECT)
- ICONDIR = "/usr/share/icons"
- XCURSORPATH = "~/.icons:/usr/share/icons:/usr/share/pixmaps"
- DRIVERMANDIR = $(MANSOURCEPATH)4
- LOGDIRECTORY = $(VARDIR)/log
-
- VARRUNDIR = $(VARDIR)/run
-
- VARDBDIR = $(VARDIR)/lib
-
- AR = ar clq
-
-# Nice try but useless: make will inherit BOOTSTRAPCFLAGS
-# from top Makefile
- BOOTSTRAPCFLAGS =
-
- CC = gcc -m32
- AS = gcc -m32 -c -x assembler
-
-.SUFFIXES: .cc
-
- CXX = c++ -m32
-
- CXXFILT = c++filt
-
- CXXLIB = -lstdc++
-
- CXXDEBUGFLAGS = -g -O2 -fno-strict-aliasing
-CXXDEPENDINCLUDES =
- CXXEXTRA_DEFINES =
-CXXEXTRA_INCLUDES =
- CXXSTD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(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 = cpp $(STD_CPP_DEFINES)
- RAWCPP = cpp -undef $(STD_CPP_OPTIONS)
- PREPROCESSCMD = gcc -m32 -E $(STD_CPP_DEFINES)
-
- INSTALL = install
- INSTALLFLAGS = -c
-
- LD = gcc -m32 -nostdlib
-
- LEX = flex -l
- M4 = m4
- M4FLAGS =
- 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
- PERL = perl
- PERLOPTS =
- PERLENVSETUP = env LC_ALL=C
-
- MANSECT = 1
- SYSCALLMANSECT = 2
- LIBMANSECT = 3
- DRIVERMANSECT = 4
- FILEMANSECT = 5
- GAMEMANSECT = 6
- MISCMANSECT = 7
- ADMMANSECT = 8
- MANSRCSECT = s
- MANNEWSECT = n
- PROJECTMANSUFFIX = x
- MANSUFFIX = $(MANSECT)$(PROJECTMANSUFFIX)
- SYSCALLMANSUFFIX = $(SYSCALLMANSECT)$(PROJECTMANSUFFIX)
- LIBMANSUFFIX = $(LIBMANSECT)$(PROJECTMANSUFFIX)
- DRIVERMANSUFFIX = 4x
- FILEMANSUFFIX = $(FILEMANSECT)$(PROJECTMANSUFFIX)
- GAMEMANSUFFIX = $(GAMEMANSECT)$(PROJECTMANSUFFIX)
- MISCMANSUFFIX = 7x
- ADMMANSUFFIX = $(ADMMANSECT)$(PROJECTMANSUFFIX)
- ADMINMANSUFFIX = 8
- MANSRCSUFFIX = man
- MANNEWSUFFIX = _man
- MANDEFS = -D__apploaddir__=$(XAPPLOADDIR) -D__filemansuffix__=$(FILEMANSECT)$(PROJECTMANSUFFIX) -D__osfilemansuffix__=$(FILEMANSECT) -D__libmansuffix__=$(LIBMANSECT)$(PROJECTMANSUFFIX) -D__oslibmansuffix__=$(LIBMANSECT) -D__mansuffix__=$(MANSECT)$(PROJECTMANSUFFIX) -D__osmansuffix__=$(MANSECT) -D__syscallmansuffix__=$(SYSCALLMANSECT)$(PROJECTMANSUFFIX) -D__ossysmansuffix__=$(SYSCALLMANSECT) -D__gamemansuffix__=$(GAMEMANSECT)$(PROJECTMANSUFFIX) -D__osgamemansuffix__=$(GAMEMANSECT) -D__miscmansuffix__=$(MISCMANSECT)$(PROJECTMANSUFFIX) -D__osmiscmansuffix__=$(MISCMANSECT) -D__admmansuffix__=$(ADMMANSECT)$(PROJECTMANSUFFIX) -D__osadmmansuffix__=$(ADMMANSECT) -D__miscmansuffix__=$(MISCMANSECT)$(PROJECTMANSUFFIX) -D__osmiscmansuffix__=$(MISCMANSECT) -D__drivermansuffix__=$(DRIVERMANSECT)$(PROJECTMANSUFFIX) -D__osdrivermansuffix__=$(DRIVERMANSECT) -D__adminmansuffix__=$(ADMINMANSUFFIX) -D__projectroot__=$(PROJECTROOT) -D__xconfigfile__=$(XCONFIGFILE) -D__xconfigdir__=$(XCONFIGDIR) -D__xlogfile__=$(XLOGFILE) -D__xservername__=$(XSERVERNAME) -D__appmansuffix__=$(MANSECT)$(PROJECTMANSUFFIX) $(XORGMANDEFS) $(VENDORMANDEFS)
-
- COMPRESSMANCMD = gzip -n
-
- TROFF = groff -Tps
- NROFF = nroff
-
- MSMACROS = -ms
- MANMACROS = -man
- TBL = tbl
- EQN = eqn
- NEQN = neqn
- COL = col
- COLFLAGS = -b
-
- MODCC = gcc -m32
-
- MODCPP = cpp
- MODCFLAGS = $(CFLAGS)
- MODAS = gcc -m32 -c -x assembler
- MODASFLAGS =
-
- MODLD = gcc -m32 -nostdlib
-
- MODLDFLAGS =
-MODLDCOMBINEFLAGS = -r
- MODAR = ar clq
-
- MODRANLIB = ranlib
-
- DVIPS = dvips
- LATEX = latex
-
- STD_INCLUDES =
- STD_CPP_OPTIONS = -traditional
- STD_CPP_DEFINES = -traditional -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(PROJECT_DEFINES)
- STD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(PROJECT_DEFINES)
- EXTRA_LOAD_FLAGS =
- EXTRA_LDOPTIONS =
- EXTRA_LIBRARIES =
- TAGS = ctags
-
- PARALLELMFLAGS =
-
- SHAREDCODEDEF =
- SHLIBDEF =
-
- SHLIBLDFLAGS = -shared $(SHLIBGLOBALSFLAGS)
-
- NOSTDLIB = -nostdlib
- POSTNOSTDLIB = -Wl,-Bstatic -lgcc -Wl,-Bdynamic
-
- PICFLAGS = -fPIC
-
- CXXPICFLAGS = -fPIC
-
- PROTO_DEFINES = -DFUNCPROTO=15 -DNARROWPROTO
-
- INSTPGMFLAGS =
-
- INSTBINFLAGS = -m 0755
- INSTUIDFLAGS = -m 4711
- INSTLIBFLAGS = -m 0644
- INSTINCFLAGS = -m 0444
- INSTMANFLAGS = -m 0444
- INSTDATFLAGS = -m 0444
- INSTKMEMFLAGS = -m 4711
-
- PROJECTROOT = /usr
-
- CDEBUGFLAGS = -g -O2 -fno-strict-aliasing
- CCOPTIONS =
-
- 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 = $(INSTALLED_LIBS)
- 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 =
- DEPEND_DEFINES =
-
-# Not sure this belongs here
- TKLIBDIR = /usr/lib
- TKINCDIR = /usr/include
- TKLIBNAME = tk8.4
- TKLIBRARY = -L$(TKLIBDIR) -l$(TKLIBNAME)
- TCLLIBDIR = /usr/lib
- TCLINCDIR = /usr/include
- TCLLIBNAME = tcl8.4
- TCLLIBRARY = -L$(TCLLIBDIR) -l$(TCLLIBNAME)
-
- MACROFILE = linux.cf
- RM_CMD = $(RM)
-
- IMAKE_DEFINES =
- IMAKE_WARNINGS = -Wundef
-
- IRULESRC = $(CONFIGDIR)
- IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
-
- ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl $(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules $(IRULESRC)/xorgsite.def $(IRULESRC)/host.def $(EXTRA_ICONFIGFILES)
-
-# $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 $
-
-# ----------------------------------------------------------------------
-# X Window System Build Parameters and Rules
-# $XdotOrg: util/cf/X11.tmpl,v 1.54 2006/04/15 15:55:25 herrb Exp $
-# $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
-#
-#
-#
-#
-# $XFree86: xc/config/cf/X11.tmpl,v 1.248 2004/02/16 04:07:37 dawes Exp $
-
-XORGRELSTRING = `echo 6 9 0 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
- XORGMANNAME = X Version 11
-
-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 = /usr/bin
- BUILDINCROOT = $(TOP)/exports
- BUILDINCDIR = $(BUILDINCROOT)/include
- BUILDINCTOP = ../..
- BUILDLIBDIR = $(TOP)/exports/lib
- BUILDLIBTOP = ../..
- BUILDBINDIR = $(TOP)/exports/bin
- BUILDBINTOP = ../..
- BUILDMODULEDIR = $(BUILDLIBDIR)/modules
- BUILDI18NDIR = $(BUILDLIBDIR)/locale
- BUILDMODULETOP = $(BUILDLIBTOP)/..
- XBUILDINCROOT = $(XTOP)/exports
- XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
- XBUILDINCTOP = ../../..
- XBUILDBINDIR = $(XBUILDINCROOT)/bin
- INCDIR = $(INCROOT)
- ADMDIR = /usr/adm
- LIBDIR = /usr/lib/X11
- SHAREDIR = /usr/share/X11
- LIBEXECDIR = /usr/libexec
- MODULEDIR = $(USRLIBDIR)/modules
- TOP_X_INCLUDES =
- XBINDIR = $(PROJECTROOT)/bin
-
- INSTSRCDIR = /usr/src
-
- ETCX11DIR = /etc/X11
-
- CONFDIR = $(ETCX11DIR)
-
- DOCDIR = $(LIBDIR)/doc
- DOCHTMLDIR = $(DOCDIR)/html
- DOCPSDIR = $(DOCDIR)/PostScript
- DOCPDFDIR = $(DOCDIR)/PDF
- FONTDIR = /usr/share/fonts/X11
- ENCODINGSDIR = /usr/share/fonts/X11/encodings
- XINITDIR = $(LIBDIR)/xinit
- XDMDIR = $(LIBDIR)/xdm
- XDMVARDIR = $(VARLIBDIR)/xdm
- TWMDIR = $(LIBDIR)/twm
- XSMDIR = $(LIBDIR)/xsm
- NLSDIR = $(LIBDIR)/nls
- XLOCALEDIR = $(LIBDIR)/locale
- LBXPROXYDIR = $(LIBDIR)/lbxproxy
- PROXYMANAGERDIR = $(LIBDIR)/proxymngr
- XPRINTDIR = $(LIBDIR)/xserver
- XAPPLOADDIR = /etc/X11/app-defaults
- FONTCFLAGS = -t
-
- INSTAPPFLAGS = $(INSTDATFLAGS)
-
- RGB = $(XBINDIR)/rgb
- FONTC = $(XBINDIR)/bdftopcf
- MKFONTSCALE = $(XBINDIR)/mkfontscale
- MKFONTDIR = $(XBINDIR)/mkfontdir
- MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
- UCS2ANY = $(XBINDIR)/ucs2any
- BDFTRUNCATE = $(XBINDIR)/bdftruncate
- UCSMAPPREFIX = $(FONTDIR)/util/map-
- XCURSORGEN = $(XBINDIR)/xcursorgen
-
- HTMLINDEXCMD = HtmlIndexCmd
-
- 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 = FreeTypeSrcDir
- DRMSRCDIR = $(TOP)/extras/drm
- MESASRCDIR = $(TOP)/extras/Mesa
- OGLSAMPLESRCDIR = $(TOP)/extras/ogl-sample
- PSWRAPSRC = $(XTOP)/config/pswrap
- TRANSCOMMSRC = $(LIBSRC)/xtrans
- TRANS_INCLUDES = -I$(TRANSCOMMSRC)
- CONNECTION_FLAGS = -DUNIXCONN -DTCPCONN $(STICKY_DEFINES) $(FCHOWN_DEFINES) -DIPv6
-XTRANS_FAILDEFINES = -DFAIL_HARD
-
- VENDORMANNAME = X.Org
- VENDORMANVERSION = `echo 6 9 0 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
- XORGMANDEFS = -D__xorgversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\""
- VENDORMANDEFS = -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"
- VENDORNAME = The X.Org Foundation
- VENDORNAMESHORT = X.Org
-
- VENDORWEBSUPPORT = http://wiki.X.Org
-
-VENDORSUPPORTDEFS = -D__VENDORDWEBSUPPORT__='"$(VENDORWEBSUPPORT)"'
-
- XKBDEFRULES = xorg
- XKBDEFRULESDEFS = -D__XKBDEFRULES__='"$(XKBDEFRULES)"'
-
- XCONFIGFILE = xorg.conf
- XCONFIGDIR = $(LIBDIR)
- XLOGFILE = Xorg
- XSERVERNAME = Xorg
-
- XENVLIBDIR = $(USRLIBDIR)
- CLIENTENVSETUP = LD_LIBRARY_PATH=$(XENVLIBDIR) XLOCALEDIR=$(BUILDLIBDIR)/locale
-
-# $Xorg: lnxLib.tmpl,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-# $XFree86: xc/config/cf/lnxLib.tmpl,v 3.19 2003/10/15 22:47:48 herrb Exp $
-
- XLIBSRC = $(LIBSRC)/X11
-
-SOXLIBREV = 6.2
-DEPXONLYLIB =
-XONLYLIB = -lX11
-
-LINTXONLY = $(LINTLIBDIR)/llib-lX11.ln
-
- DEPXLIBONLY = $(DEPXONLYLIB)
- XLIBONLY = $(XONLYLIB)
- LINTXONLYLIB = $(LINTXONLY)
-
- 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
-
-SOXSSREV = 1.0
-DEPXSSLIB =
-XSSLIB = -lXss
-
-LINTXSS = $(LINTLIBDIR)/llib-lXss.ln
-
- XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
-
-SOXXF86MISCREV = 1.1
-DEPXXF86MISCLIB =
-XXF86MISCLIB = -lXxf86misc
-
-LINTXXF86MISC = $(LINTLIBDIR)/llib-lXxf86misc.ln
-
- XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
-
-SOXXF86VMREV = 1.0
-DEPXXF86VMLIB =
-XXF86VMLIB = -lXxf86vm
-
-LINTXXF86VM = $(LINTLIBDIR)/llib-lXxf86vm.ln
-
- XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
-
-SOXXF86DGAREV = 1.0
-DEPXXF86DGALIB =
-XXF86DGALIB = -lXxf86dga
-
-LINTXXF86DGA = $(LINTLIBDIR)/llib-lXxf86dga.ln
-
- XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
-
-SOXXF86RUSHREV = 1.0
-DEPXXF86RUSHLIB =
-XXF86RUSHLIB = -lXxf86rush
-
-LINTXXF86RUSH = $(LINTLIBDIR)/llib-lXxf86rush.ln
-
- XVLIBSRC = $(LIBSRC)/Xv
-
-SOXVREV = 1.0
-DEPXVLIB =
-XVLIB = -lXv
-
-LINTXV = $(LINTLIBDIR)/llib-lXv.ln
-
- XVMCLIBSRC = $(LIBSRC)/XvMC
-
-SOXVMCREV = 1.0
-DEPXVMCLIB =
-XVMCLIB = -lXvMC
-
-LINTXVMC = $(LINTLIBDIR)/llib-lXvMC.ln
-
- XINERAMALIBSRC = $(LIBSRC)/Xinerama
-
-SOXINERAMAREV = 1.0
-DEPXINERAMALIB =
-XINERAMALIB = -lXinerama
-
-LINTXINERAMA = $(LINTLIBDIR)/llib-lXinerama.ln
-
- XRESLIBSRC = $(LIBSRC)/XRes
-
-SOXRESREV = 1.0
-DEPXRESLIB =
-XRESLIB = -lXRes
-
-LINTXRES = $(LINTLIBDIR)/llib-lXRes.ln
-
- DMXLIBSRC = $(LIBSRC)/dmx
-
-SODMXREV = 1.0
-DEPDMXLIB =
-DMXLIB = -ldmx
-
-LINTDMX = $(LINTLIBDIR)/llib-ldmx.ln
-
- DPSLIBSRC = $(LIBSRC)/dps
-
-DEPDPSLIB = $(USRLIBDIR)/libdps.a
-DPSLIB = -ldps
-
-LINTDPS = $(LINTLIBDIR)/llib-ldps.ln
-
- DPSTKLIBSRC = $(LIBSRC)/dpstk
-
-DEPDPSTKLIB = $(USRLIBDIR)/libdpstk.a
-DPSTKLIB = -ldpstk
-
-LINTDPSTK = $(LINTLIBDIR)/llib-ldpstk.ln
-
- PSRESLIBSRC = $(LIBSRC)/psres
-
-DEPPSRESLIB = $(USRLIBDIR)/libpsres.a
-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
-
-XRENDERDIR = /usr
-XRENDERLIBDIR = /usr/lib
-XRENDERINCDIR = /usr/include
-XRENDERLIB = -L$(XRENDERLIBDIR) -lXrender
-DEPXRENDERLIB =
-
-XRENDERINCLUDES = -I$(XRENDERINCDIR)
-
- XRANDRLIBSRC = $(LIBSRC)/Xrandr
-
-SOXRANDRREV = 2.0
-DEPXRANDRLIB =
-XRANDRLIB = -lXrandr
-
-LINTXRANDR = $(LINTLIBDIR)/llib-lXrandr.ln
-
- XFIXESLIBSRC = $(LIBSRC)/Xfixes
-
-SOXFIXESREV = 3.0
-DEPXFIXESLIB =
-XFIXESLIB = -lXfixes
-
-LINTXFIXES = $(LINTLIBDIR)/llib-lXfixes.ln
-
- XDAMAGELIBSRC = $(LIBSRC)/Xdamage
-
-SOXDAMAGEREV = 1.0
-DEPXDAMAGELIB =
-XDAMAGELIB = -lXdamage
-
-LINTXDAMAGE = $(LINTLIBDIR)/llib-lXdamage.ln
-
-XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
-
-SOXCOMPOSITEREV = 1.0
-DEPXCOMPOSITELIB =
-XCOMPOSITELIB = -lXcomposite
-
-LINTXCOMPOSITE = $(LINTLIBDIR)/llib-lXcomposite.ln
-
-XEVIELIBSRC = $(LIBSRC)/Xevie
-
-SOXEVIEREV = 1.0
-DEPXEVIELIB =
-XEVIELIB = -lXevie
-
-LINTXEVIE = $(LINTLIBDIR)/llib-lXevie.ln
-
-XCURSORDIR = /usr
-XCURSORLIBDIR = /usr/lib
-XCURSORINCDIR = /usr/include
-XCURSORLIB = -L$(XCURSORLIBDIR) -lXcursor
-
-XCURSORINCLUDES=-I$(XCURSORINCDIR) $(XRENDERINCLUDES)
-
- APPLEWMLIBSRC = $(LIBSRC)/apple
-
-DEPAPPLEWMLIB = $(USRLIBDIR)/libAppleWM.a
-APPLEWMLIB = -lAppleWM
-
-LINTAPPLEWM = $(LINTLIBDIR)/llib-lAppleWM.ln
-
- WINDOWSWMLIBSRC = $(LIBSRC)/windows
-
-DEPWINDOWSWMLIB = $(USRLIBDIR)/libWindowsWM.a
-WINDOWSWMLIB = -lWindowsWM
-
-LINTWINDOWSWM = $(LINTLIBDIR)/llib-lWindowsWM.ln
-
- XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
-
-DEPXFONTCACHELIB = $(USRLIBDIR)/libXfontcache.a
-XFONTCACHELIB = -lXfontcache
-
-LINTXFONTCACHE = $(LINTLIBDIR)/llib-lXfontcache.ln
-
- XAUTHSRC = $(LIBSRC)/Xau
-
-SOXAUTHREV = 6.0
-DEPXAUTHLIB =
-XAUTHLIB = -lXau
-
-LINTXAUTH = $(LINTLIBDIR)/llib-lXau.ln
-
- XDMCPLIBSRC = $(LIBSRC)/Xdmcp
-
-SOXDMCPREV = 6.0
-DEPXDMCPLIB =
-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
-
-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 = 8.0
-DEPXAWLIB =
-XAWLIB = -lXaw
-
-LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln
-
- AWIDGET7SRC = $(LIBSRC)/Xaw7
-
-SOXAW7REV = 7.0
-DEPXAW7LIB =
-XAW7LIB = -lXaw
-
-LINTXAW7 = $(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
-
-DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
-XBSDLIB = -lXbsd
-
-LINTXBSD = $(LINTLIBDIR)/llib-lXbsd.ln
-
- ICESRC = $(LIBSRC)/ICE
-
-SOICEREV = 6.4
-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
-
-SOFSREV = 6.0
-DEPFSLIB =
-FSLIB = -lFS
-
-LINTFS = $(LINTLIBDIR)/llib-lFS.ln
-
- FONTLIBSRC = $(LIBSRC)/font
-
-DEPFONTLIB = $(USRLIBDIR)/libXfont.a
-FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) -lXfont
-
-LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
-#
-DEPXFONTLIB = $(USRLIBDIR)/libXfont.a
-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) $(FREETYPE2LIB)
-
- 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
-
-FREETYPE2DIR = /usr
-FREETYPE2LIBDIR = /usr/lib
-FREETYPE2INCDIR = /usr/include
-
-FREETYPE2LIB = -lfreetype
-
-FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
-
-FREETYPE2DEFINES = -DFREETYPE2
-
- EXPATLIBSRC = $(LIBSRC)/expat
-
-SOEXPATREV = 0.4
-DEPEXPATLIB =
-EXPATLIB = -lexpat
-
-LINTEXPAT = $(LINTLIBDIR)/llib-lexpat.ln
-
-EXPATDIR = /usr
-EXPATLIBDIR = /usr/lib
-EXPATINCDIR = /usr/include
-
-EXPATINCLUDES =
-
-EXPATLIB = -lexpat
-
-EXPATDEFINES = -DEXPAT
-
-XFTDIR = /usr
-XFTLIBDIR = /usr/lib
-XFTINCDIR = /usr/include
-XFTLIB = -L$(XFTLIBDIR) -lXft
-
-XFTINCLUDES= -I$(XFTINCDIR) $(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES) $(XRENDERINCLUDES)
-
-FONTCONFIGDIR = /usr
-FONTCONFIGLIBDIR = /usr/lib
-FONTCONFIGINCDIR = /usr/include
-FONTCONFIGBINDIR = /usr/bin
-
-FONTCONFIGLIB = -lfontconfig
-
-FONTCONFIGINCLUDES =
-
-FCCACHE = $(FONTCONFIGBINDIR)/fc-cache
-
-FONTCONFIGDEFINES = -DFONTCONFIG
-
-LIBPNGINCDIR = /usr/include
-
-LIBPNGINC=
-
-LIBPNGDIR = /usr
-LIBPNGLIBDIR = /usr/lib
-LIBPNGINCDIR = /usr/include
-
-LIBPNGLIB = -lpng
-
- XKBFILELIBSRC = $(LIBSRC)/xkbfile
-
-SOXKBFILEREV = 1.0
-DEPXKBFILELIB =
-XKBFILELIB = -lxkbfile
-
-LINTXKBFILE = $(LINTLIBDIR)/llib-lxkbfile.ln
-
- XKBCOMPCMD = $(XBINDIR)/xkbcomp
-
- XKBUILIBSRC = $(LIBSRC)/xkbui
-
-SOXKBUIREV = 1.0
-DEPXKBUILIB =
-XKBUILIB = -lxkbui
-
-LINTXKBUI = $(LINTLIBDIR)/llib-lxkbui.ln
-
-EXTRAXAWREQS =
-
-EXTRAXAWCLIENTDEPLIBS =
-
-EXTRAXAWCLIENTLIBS =
-
- 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)
-
- XFTPRELOADPATTERN = libXft.so.?
- XRENDERPRELOADPATTERN = libXrender.so.?
- XFONTPRELOADPATTERN = libXfont*.so.?
-
-XMULIBONLY = -lXmu
-XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
-
- CONFIGDIR = $(LIBDIR)/config
-
- USRLIBDIRPATH = $(USRLIBDIR)
- LDPRELIBS = $(INSTALLED_LIBS)
- LDPOSTLIBS =
- TOP_INCLUDES = $(TOP_X_INCLUDES)
- PROJECT_DEFINES =
- VENDOR_DEFINES = -DXVENDORNAME='"$(VENDORNAME)"' -DXVENDORNAMESHORT='"$(VENDORNAMESHORT)"'
-
-CXXPROJECT_DEFINES =
-
-# ----------------------------------------------------------------------
-# start of Imakefile
-
# SPIM S20 MIPS Simulator.
-# Imakefile for SPIM.
+# Makefile for SPIM.
#
-# Copyright (C) 1992-2005 by James Larus (larus@cs.wisc.edu).
+# Copyright (C) 1990-2005 by James Larus (larus@cs.wisc.edu).
# ALL RIGHTS RESERVED.
#
# SPIM is distributed under the following conditions:
@@ -1065,171 +22,195 @@
# $Header: $

#
-# To make xpsim, type:
+# To make spim, type:
#
-# make xspim
+# make spim
#
+# Cannot make xpsim under windows. Use PCSpim instead.
+#
+# To verify spim works, type:
+#
+# make test
+#
+
+.SUFFIXES:
+.SUFFIXES: .c .o

#
-# The following parameters should be set for the target machine on which XSPIM
-# is compiled and installed:
+# The following parameters must be set for the target machine:
+#
#

+# Path for directory that contains the source of the CPU code:
+CPU_DIR = ../CPU
+VPATH = src:$(CPU_DIR)
+
+# Path of directory that contains SPIM tests:
+TEST_DIR = ../Tests
+
+# Path of directory that contains documentation:
+DOC_DIR = ../Documentation
+
+
+
# Full path for the directory that will hold the executable files:
-BIN_DIR = /usr/bin

# Full path for the directory that will hold the exception handler:
-EXCEPTION_DIR = /usr/lib/spim

# Full path for the directory that will hold the man files:
-MAN_DIR = /usr/share/man/en
+

# If you have flex, use it instead of lex. If you use flex, define this
# variable and set LEXFLAGS.
-LEX = flex
+MYLEX = 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 =
+#MYLEX = 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
+# End of parameters
#

-# Path for directory that contains the source of the CPU code:
-CPU_DIR = ../CPU
-VPATH = src:$(CPU_DIR)
-
-# Path of directory that contains documentation:
-DOC_DIR = ../Documentation

ENDIAN=`cat configuration`

-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
-
-BASE_XOBJS = xspim.o windows.o buttons.o
+DEFINES = $(ENDIAN) $(MEM_SIZES) -DDEFAULT_EXCEPTION_HANDLER="\"$(EXCEPTION_DIR)/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\""

-XOBJS = $(BASE_OBJS) $(BASE_XOBJS)
+CC = gcc
+CFLAGS = -I. -I$(CPU_DIR) $(DEFINES) -I/usr/X11/include -I/usr/X11R6/include -g -Wall
+YFLAGS = -d --file-prefix=y
+YCFLAGS =
+LDFLAGS = -L/usr/X11/lib -L/usr/X11R6/lib -lm -lX11 -lXt -lXaw
+CSH = bash

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

-YFLAGS = -d
+LEXCFLAGS = -O $(CFLAGS)

-DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
-LOCALLIBS = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)

-CDEBUGFLAGS = -g

-INCLUDES = -I. -I$(CPU_DIR)
+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 \
+ windows.o buttons.o

-DEFINES = $(ENDIAN) $(MEM_SIZES) -DDEFAULT_EXCEPTION_HANDLER="\"$(EXCEPTION_DIR)/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\""

-SYS_LIBRARIES = -lm
+xspim: force
+ make -f Makefile xspim2

-#
+xspim2: $(OBJS) xspim.o
+ $(CC) -g $(OBJS) xspim.o $(LDFLAGS) -o xspim
+
+
+force: configuration
+
+configuration:
+ ./Configure
+
+#

#
-# Program dependencies:
+# Test spim with a torture test:
#

-all:: xspim
+test: spim
+ @echo
+ @echo "Testing tt.bare.s:"
+ $(CSH) -c "./spim -delayed_branches -delayed_loads -noexception -file $(TEST_DIR)/tt.bare.s >& test.out"
+ @tail -2 test.out
+ @echo

-xspim: $(XOBJS) $(DEPLIBS)
- $(RM) $@
- $(CCLINK) -o $@ $(LDOPTIONS) $(XOBJS) $(LOCALLIBS) $(LDLIBS) $(SYSLIBS) $(EXTRA_LOAD_FLAGS)
+ @echo
+ @echo "Testing tt.core.s:"
+ $(CSH) -c "./spim -ef $(CPU_DIR)/exceptions.s -file $(TEST_DIR)/tt.core.s < $(TEST_DIR)/tt.in >& test.out"
+ @tail -2 test.out
+ @echo

-cleandir::
- $(RM) xspim
+ @echo
+ @echo "Testing tt.endian.s:"
+ $(CSH) -c "./spim -ef $(CPU_DIR)/exceptions.s -file $(TEST_DIR)/tt.endian.s >& test.out"
+ @tail -2 test.out
+ @echo
+ @echo

-force: configuration
+# 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.

-configuration:
- ./Configure
+test_bare: spim
+ @echo
+ @echo "Testing tt.alu.bare.s:"
+ $(CSH) -c "./spim -bare -noexception -file $(TEST_DIR)/tt.alu.bare.s >& test.out"
+ @tail -2 test.out
+ @echo

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

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

-install:: $(CPU_DIR)/exceptions.s
- $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $(CPU_DIR)/exceptions.s $(DESTDIR)$(EXCEPTION_DIR)/exceptions.s
-#
+TAGS: *.c *.h *.l *.y
+ etags *.l *.y *.c *.h

-all:: $(DOC_DIR)/xspim.$(MANNEWSUFFIX)

-$(DOC_DIR)/xspim.$(MANNEWSUFFIX): $(DOC_DIR)/xspim.$(MANSRCSUFFIX)
- $(RM) $@
- if test -z "$(PREPROCESSMANPAGES)" ; then \
- cd `dirname $(DOC_DIR)/xspim` && \
- $(LN) `basename $(DOC_DIR)/xspim.$(MANSRCSUFFIX)` `basename $@`; \
- else \
- $(RAWCPP) $(MANDEFS) $(EXTRAMANDEFS) \
- < $(DOC_DIR)/xspim.$(MANSRCSUFFIX) | sed -e '/^# *[0-9][0-9]* *.*$$/d' -e '/^#line *[0-9][0-9]* *.*$$/d' -e '/^[ ]*XCOMM$$/s/XCOMM/#/' -e '/^[ ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/#/' -e '/^[ ]*XHASH/s/XHASH/#/' -e '/\@\@$$/s/\@\@$$/\\/' >$@; \
- fi
+clean:
+ rm -f spim spim.exe *.o TAGS test.out lex.yy.c y.tab.c y.tab.h y.output

-cleandir::
- $(RM) $(DOC_DIR)/xspim.$(MANNEWSUFFIX)
+install: xspim
+ mkdir -p $(BIN_DIR)
+ mkdir -p $(EXCEPTION_DIR)
+ install xspim $(BIN_DIR)
+ install -m 0444 $(CPU_DIR)/exceptions.s $(EXCEPTION_DIR)

-install.man:: $(DOC_DIR)/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) $(DOC_DIR)/xspim.$(MANNEWSUFFIX) $(DESTDIR)$(MAN_DIR)/$(DOC_DIR)/xspim.$(MANSUFFIX)
+install-man:
+ mkdir -p $(MAN_DIR)
+ install -m 0444 $(DOC_DIR)/xspim.man $(MAN_DIR)/xspim.1

-y.tab.h: y.tab.c
+very-clean: clean
+ rm -f configuration

-y.tab.c: $(CPU_DIR)/parser.y
- $(YACC) $(YFLAGS) $(CPU_DIR)/parser.y
+splint: spim
+ splint -weak -preproc -warnposix +matchanyintegral spim.c y.tab.c lex.yy.c

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

-lex.yy.o: $(CPU_DIR)/scanner.l

-lex.yy.c: $(CPU_DIR)/scanner.l
- $(LEX) $(LEXFLAGS) $(CPU_DIR)/scanner.l
+#
+# Dependences not handled well by makedepend:
+#

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

-#
+y.tab.h: y.tab.c

-TAGS: *.c *.h *.l *.y
- etags *.l *.y *.c *.h
+y.tab.c: $(CPU_DIR)/parser.y
+ bison $(YFLAGS) $(CPU_DIR)/parser.y

-cleandir::
- rm -f xspim *.o core a.out TAGS y.output y.tab.h y.tab.c lex.yy.c
+y.tab.o: y.tab.c
+ $(CC) $(CFLAGS) $(YCFLAGS) -c y.tab.c

-very-cleandir: cleandir
- rm -f configuration

-makedepend: y.tab.c
- makedepend -w10 -I. -I$(CPU_DIR) $(CPU_DIR)\*.c *.c
+lex.yy.c: $(CPU_DIR)/scanner.l
+ $(MYLEX) $(LEXFLAGS) $(CPU_DIR)/scanner.l

-#
+lex.yy.o: lex.yy.c
+ $(CC) $(LEXCFLAGS) -c lex.yy.c
+
+
+#
# DO NOT DELETE THIS LINE -- make depend depends on it.

data.o: $(CPU_DIR)/spim.h
@@ -1251,6 +232,7 @@
display-utils.o: $(CPU_DIR)/mem.h
display-utils.o: $(CPU_DIR)/run.h
display-utils.o: $(CPU_DIR)/sym-tbl.h
+dump_ops.o: $(CPU_DIR)/op.h
inst.o: $(CPU_DIR)/spim.h
inst.o: $(CPU_DIR)/string-stream.h
inst.o: $(CPU_DIR)/spim-utils.h
@@ -1258,9 +240,9 @@
inst.o: $(CPU_DIR)/reg.h
inst.o: $(CPU_DIR)/mem.h
inst.o: $(CPU_DIR)/sym-tbl.h
-inst.o: y.tab.h
inst.o: $(CPU_DIR)/parser.h
inst.o: $(CPU_DIR)/scanner.h
+inst.o: y.tab.h
inst.o: $(CPU_DIR)/data.h
inst.o: $(CPU_DIR)/op.h
mem.o: $(CPU_DIR)/spim.h
@@ -1302,6 +284,7 @@
sym-tbl.o: $(CPU_DIR)/data.h
sym-tbl.o: $(CPU_DIR)/parser.h
sym-tbl.o: $(CPU_DIR)/sym-tbl.h
+sym-tbl.o: y.tab.h
syscall.o: $(CPU_DIR)/spim.h
syscall.o: $(CPU_DIR)/string-stream.h
syscall.o: $(CPU_DIR)/inst.h
@@ -1309,119 +292,33 @@
syscall.o: $(CPU_DIR)/mem.h
syscall.o: $(CPU_DIR)/sym-tbl.h
syscall.o: $(CPU_DIR)/syscall.h
-buttons.o: $(CPU_DIR)/spim.h
-buttons.o: $(CPU_DIR)/string-stream.h
-buttons.o: $(CPU_DIR)/spim-utils.h
-buttons.o: xspim.h
-buttons.o: $(CPU_DIR)/inst.h
-buttons.o: $(CPU_DIR)/reg.h
-buttons.o: $(CPU_DIR)/mem.h
-buttons.o: $(CPU_DIR)/scanner.h
-buttons.o: $(CPU_DIR)/sym-tbl.h
-buttons.o: buttons.h
-windows.o: $(CPU_DIR)/spim.h
-windows.o: $(CPU_DIR)/string-stream.h
-windows.o: $(CPU_DIR)/spim-utils.h
-windows.o: buttons.h
-windows.o: xspim.h
-windows.o: windows.h
-xspim.o: $(CPU_DIR)/spim.h
-xspim.o: $(CPU_DIR)/string-stream.h
-xspim.o: $(CPU_DIR)/spim-utils.h
-xspim.o: $(CPU_DIR)/inst.h
-xspim.o: $(CPU_DIR)/reg.h
-xspim.o: $(CPU_DIR)/mem.h
-xspim.o: buttons.h
-xspim.o: windows.h
-xspim.o: xspim.h
-xspim.o: $(CPU_DIR)/sym-tbl.h
+lex.yy.o: $(CPU_DIR)/spim.h
+lex.yy.o: $(CPU_DIR)/string-stream.h
+lex.yy.o: $(CPU_DIR)/spim-utils.h
+lex.yy.o: $(CPU_DIR)/inst.h
+lex.yy.o: $(CPU_DIR)/reg.h
+lex.yy.o: $(CPU_DIR)/sym-tbl.h
+lex.yy.o: $(CPU_DIR)/parser.h
+lex.yy.o: $(CPU_DIR)/scanner.h
+lex.yy.o: y.tab.h
+lex.yy.o: $(CPU_DIR)/op.h
+spim.o: $(CPU_DIR)/spim.h
+spim.o: $(CPU_DIR)/string-stream.h
+spim.o: $(CPU_DIR)/spim-utils.h
+spim.o: $(CPU_DIR)/inst.h
+spim.o: $(CPU_DIR)/reg.h
+spim.o: $(CPU_DIR)/mem.h
+spim.o: $(CPU_DIR)/parser.h
+spim.o: $(CPU_DIR)/sym-tbl.h
+spim.o: $(CPU_DIR)/scanner.h
+spim.o: y.tab.h
y.tab.o: $(CPU_DIR)/spim.h
+y.tab.o: $(CPU_DIR)/string-stream.h
y.tab.o: $(CPU_DIR)/spim-utils.h
y.tab.o: $(CPU_DIR)/inst.h
-y.tab.o: $(CPU_DIR)/mem.h
y.tab.o: $(CPU_DIR)/reg.h
+y.tab.o: $(CPU_DIR)/mem.h
y.tab.o: $(CPU_DIR)/sym-tbl.h
y.tab.o: $(CPU_DIR)/data.h
y.tab.o: $(CPU_DIR)/scanner.h
y.tab.o: $(CPU_DIR)/parser.h
-lex.yy.o: $(CPU_DIR)/spim.h
-lex.yy.o: $(CPU_DIR)/spim-utils.h
-lex.yy.o: $(CPU_DIR)/inst.h
-lex.yy.o: $(CPU_DIR)/sym-tbl.h
-lex.yy.o: y.tab.h
-lex.yy.o: $(CPU_DIR)/parser.h
-lex.yy.o: $(CPU_DIR)/scanner.h
-lex.yy.o: $(CPU_DIR)/op.h
-
-# ----------------------------------------------------------------------
-# common rules for all Makefiles - do not edit
-
-.c.i:
- $(RM) $@
- $(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@
-
-.SUFFIXES: .ii
-
-.cc.ii:
- $(RM) $@
- $(CC) -E $(CFLAGS) $(_NOOP_) $*.cc > $@
-
-.SUFFIXES: .s
-
-.c.s:
- $(RM) $@
- $(CC) -S $(CFLAGS) $(_NOOP_) $*.c
-
-.cc.s:
- $(RM) $@
- $(CC) -S $(CFLAGS) $(_NOOP_) $*.cc
-
-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::
-
-html_index::
-
-clean:: cleandir
-
-distclean:: cleandir
-
- PREPROCESSMANPAGES = true
-
-# ----------------------------------------------------------------------
-# 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 Makefile.dep
-
-# ----------------------------------------------------------------------
-# dependencies generated by makedepend
-

xspim _unstable_ port .patch