diff options
Diffstat (limited to 'community/spim')
-rw-r--r-- | community/spim/APKBUILD | 43 | ||||
-rw-r--r-- | community/spim/respect-env.patch | 183 |
2 files changed, 226 insertions, 0 deletions
diff --git a/community/spim/APKBUILD b/community/spim/APKBUILD new file mode 100644 index 0000000000..138b6b39d8 --- /dev/null +++ b/community/spim/APKBUILD @@ -0,0 +1,43 @@ +# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net> +pkgname=spim +pkgver=8.0 +pkgrel=2 +pkgdesc="Simulator for MIPS32" +url="http://spimsimulator.sourceforge.net/" +arch="all" +license="BSD" +depends="" +depends_dev="" +makedepends="bash flex bison" +install="" +subpackages="$pkgname-doc" +source="http://pages.cs.wisc.edu/~larus/SPIM/${pkgname}-${pkgver}.tar.gz + respect-env.patch" + +patch_args="-p0" +builddir="$srcdir"/$pkgname-$pkgver + +build() { + make configuration $pkgname \ + -C "$builddir"/$pkgname || return 1 +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" -C $pkgname install || return 1 + + install -Dm644 Documentation/spim.man \ + "$pkgdir"/usr/share/man/man1/spim.1 || return 1 + for i in ChangeLog Documentation/BLURB README VERSION; do + install -Dm644 $i \ + "$pkgdir"/usr/share/doc/$pkgname/${i##*/} || return 1 + done +} + +md5sums="146558e8256f2b7577fb825fdc76a04f spim-8.0.tar.gz +dac9099d3ac158d09caeee6e7eaa5b09 respect-env.patch" +sha256sums="6f205776cb9fa112729507008843b289012190ed3131cbd426c610a58387ee4b spim-8.0.tar.gz +d2c7a9662312d5075e08c93fb9037895b633776a1413130674397c1432f612cf respect-env.patch" +sha512sums="c4eb66863a931b74d6c6ecd92860d16fd6369c85caecba1e71a1149e73e708502d1070f17a9beb6d0af1368db1ee5a85c040b596866a1236275cdd410a661adf spim-8.0.tar.gz +68e9f39bbcee4524557389fac2a617b1b588f2df7a1a807ce8a646053345b6a5f7aba6dda23d4821283783b654baa01763923cb70501a03467c5302f173383ef respect-env.patch" diff --git a/community/spim/respect-env.patch b/community/spim/respect-env.patch new file mode 100644 index 0000000000..c7c8925c4e --- /dev/null +++ b/community/spim/respect-env.patch @@ -0,0 +1,183 @@ +--- spim/Makefile 2010-08-01 22:14:53.352906061 +0200 ++++ spim/Makefile 2010-08-01 22:15:00.994905920 +0200 +@@ -66,13 +66,13 @@ + + + # Full path for the directory that will hold the executable files: +-BIN_DIR = /usr/local/bin ++BIN_DIR = $(DESTDIR)/usr/bin + + # Full path for the directory that will hold the exception handler: +-EXCEPTION_DIR = /usr/local/lib/spim ++EXCEPTION_DIR = $(DESTDIR)/var/lib/spim + + # Full path for the directory that will hold the man files: +-MAN_DIR = /usr/local/man/en ++MAN_DIR = $(DESTDIR)/usr/share/man + + + # If you have flex, use it instead of lex. If you use flex, define this +@@ -104,11 +104,10 @@ + + DEFINES = $(ENDIAN) $(MEM_SIZES) -DDEFAULT_EXCEPTION_HANDLER="\"$(EXCEPTION_DIR)/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\"" + +-CC = gcc +-CFLAGS = -I. -I$(CPU_DIR) $(DEFINES) -g -Wall ++CC ?= gcc ++CFLAGS += -I. -I$(CPU_DIR) $(DEFINES) -Wall + YFLAGS = -d --file-prefix=y + YCFLAGS = +-LDFLAGS = -lm + CSH = bash + + # lex.yy.c is usually compiled with -O to speed it up. +@@ -122,10 +121,10 @@ + + + spim: force +- make -f Makefile spim2 ++ $(MAKE) -f Makefile spim2 + + spim2: $(OBJS) spim.o +- $(CC) -g $(OBJS) spim.o $(LDFLAGS) -o spim -lm ++ $(CC) $(OBJS) spim.o $(LDFLAGS) -o spim -lm + + + force: configuration +@@ -143,19 +142,19 @@ + @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 ++ @tail -n2 test.out + @echo + + @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 ++ @tail -n2 test.out + @echo + + @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 ++ @tail -n2 test.out + @echo + @echo + +@@ -166,13 +165,13 @@ + @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 ++ @tail -n2 test.out + @echo + + @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 ++ @tail -n2 test.out + @echo + @echo + +@@ -192,8 +191,6 @@ + install -m 0444 $(CPU_DIR)/exceptions.s $(EXCEPTION_DIR)/exceptions.s + + install-man: +- install -d $(MAN_DIR) +- install -m 0444 $(DOC_DIR)/spim.man $(MAN_DIR) + + very-clean: clean + rm -f configuration +--- xspim/Makefile 2010-08-01 22:14:53.351905921 +0200 ++++ xspim/Makefile 2010-08-01 22:26:08.361917058 +0200 +@@ -169,18 +169,18 @@ + + VARDBDIR = $(VARDIR)/lib + +- AR = ar clq ++ AR = $(AR) clq + + # Nice try but useless: make will inherit BOOTSTRAPCFLAGS + # from top Makefile + BOOTSTRAPCFLAGS = + +- CC = gcc -m32 +- AS = gcc -m32 -c -x assembler ++ CC ?= gcc -m32 ++ AS ?= gcc -m32 -c -x assembler + + .SUFFIXES: .cc + +- CXX = c++ -m32 ++ CXX ?= c++ -m32 + + CXXFILT = c++filt + +@@ -199,14 +199,14 @@ + COMPRESS = compress + GZIPCMD = gzip + +- CPP = cpp $(STD_CPP_DEFINES) +- RAWCPP = cpp -undef $(STD_CPP_OPTIONS) +- PREPROCESSCMD = gcc -m32 -E $(STD_CPP_DEFINES) ++ CPP = $(CPP) $(STD_CPP_DEFINES) ++ RAWCPP = $(CPP) -undef $(STD_CPP_OPTIONS) ++ PREPROCESSCMD = $(CC) -E $(STD_CPP_DEFINES) + + INSTALL = install + INSTALLFLAGS = -c + +- LD = gcc -m32 -nostdlib ++ LD ?= $(CC) -nostdlib + + LEX = flex -l + M4 = m4 +@@ -270,18 +270,18 @@ + COL = col + COLFLAGS = -b + +- MODCC = gcc -m32 ++ MODCC ?= $(CC) + +- MODCPP = cpp ++ MODCPP = $(CPP) + MODCFLAGS = $(CFLAGS) +- MODAS = gcc -m32 -c -x assembler ++ MODAS ?= $(CC) -c -x assembler + MODASFLAGS = + +- MODLD = gcc -m32 -nostdlib ++ MODLD ?= $(CC) -nostdlib + + MODLDFLAGS = + MODLDCOMBINEFLAGS = -r +- MODAR = ar clq ++ MODAR ?= $(AR) clq + + MODRANLIB = ranlib + +@@ -330,7 +330,7 @@ + + 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) ++ CFLAGS += $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES) + LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES) + LDPRELIB = $(INSTALLED_LIBS) + LDPOSTLIB = +@@ -339,9 +339,9 @@ + + LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES) + +- CCLINK = $(CC) ++ CCLINK = $(CC) $(LDFLAGS) + +- CXXLINK = $(CXX) ++ CXXLINK = $(CXX) $(LDFLAGS) + + LDSTRIPFLAGS = -x + LDCOMBINEFLAGS = -r |