aboutsummaryrefslogtreecommitdiffstats
path: root/testing/spim
diff options
context:
space:
mode:
authorSören Tempel <soeren+git@soeren-tempel.net>2015-11-22 23:11:51 +0100
committerSören Tempel <soeren+git@soeren-tempel.net>2015-11-22 23:11:51 +0100
commit918e48fe54b7d3c747f9ff7ce790b58de869a652 (patch)
tree36cf3052fdd4c0c1daf98115d46595a767943a7c /testing/spim
parent899ac47c6876a69fbb9359d9afa7f456c438d116 (diff)
downloadaports-918e48fe54b7d3c747f9ff7ce790b58de869a652.tar.bz2
aports-918e48fe54b7d3c747f9ff7ce790b58de869a652.tar.xz
testing/spim: use the respect-env.patch from gentoo
Diffstat (limited to 'testing/spim')
-rw-r--r--testing/spim/APKBUILD35
-rw-r--r--testing/spim/respect-env.patch183
2 files changed, 202 insertions, 16 deletions
diff --git a/testing/spim/APKBUILD b/testing/spim/APKBUILD
index c63528001..52d2859ea 100644
--- a/testing/spim/APKBUILD
+++ b/testing/spim/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
pkgname=spim
pkgver=8.0
-pkgrel=1
+pkgrel=2
pkgdesc="Simulator for MIPS32"
url="http://spimsimulator.sourceforge.net/"
arch="all"
@@ -12,28 +12,28 @@ depends_dev=""
makedepends="bash flex bison"
install=""
subpackages="$pkgname-doc"
-source="http://pages.cs.wisc.edu/~larus/SPIM/${pkgname}-${pkgver}.tar.gz"
+source="http://pages.cs.wisc.edu/~larus/SPIM/${pkgname}-${pkgver}.tar.gz
+ respect-env.patch"
_builddir="$srcdir"/$pkgname-$pkgver
prepare() {
- sed -i "$_builddir"/$pkgname/Makefile \
- -e 's:CFLAGS =:CFLAGS +=:' \
- -e 's:LDFLAGS =:LDFLAGS +=:' \
- -e 's:CC = gcc:CC ?= gcc:' || return 1
+ cd "$_builddir"
+ local i
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p0 -i "$srcdir"/$i || return 1 ;;
+ esac
+ done
}
build() {
- cd "$_builddir"/$pkgname
- CC="$CC" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
- ./Configure || return 1
- make EXCEPTION_DIR="/usr/share/spim" || return 1
+ make configuration $pkgname \
+ -C "$_builddir"/$pkgname || return 1
}
package() {
cd "$_builddir"
- make EXCEPTION_DIR="$pkgdir/usr/share/spim" \
- BIN_DIR="$pkgdir/usr/bin" \
- -C "$_builddir"/$pkgname install || return 1
+ make DESTDIR="$pkgdir" -C $pkgname install || return 1
install -Dm644 Documentation/spim.man \
"$pkgdir"/usr/share/man/man1/spim.1 || return 1
@@ -43,6 +43,9 @@ package() {
done
}
-md5sums="146558e8256f2b7577fb825fdc76a04f spim-8.0.tar.gz"
-sha256sums="6f205776cb9fa112729507008843b289012190ed3131cbd426c610a58387ee4b spim-8.0.tar.gz"
-sha512sums="c4eb66863a931b74d6c6ecd92860d16fd6369c85caecba1e71a1149e73e708502d1070f17a9beb6d0af1368db1ee5a85c040b596866a1236275cdd410a661adf spim-8.0.tar.gz"
+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/testing/spim/respect-env.patch b/testing/spim/respect-env.patch
new file mode 100644
index 000000000..c7c8925c4
--- /dev/null
+++ b/testing/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