/
mvm
executable file
·30 lines (28 loc) · 1.21 KB
/
mvm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/bash -e
# debug Stack VM with VM profiler and threaded heartbeat
INSTALLDIR=debug/stklinuxhtRPi
OPT="-g3 -O0 -fwrapv -DDEBUGVM=1"
if [ $# -ge 1 ]; then
INSTALLDIR="$1"; shift
fi
echo -n "clean? "
read a
case $a in
n|no|N|NO) echo "ok but this isn't safe!!";;
*) rm config.h; test -f Makefile && make reallyclean
esac
test -f plugins.int || (test -f ../plugins.int && cp -p ../plugins.int . || cp -p ../../plugins.int .)
test -f plugins.ext || (test -f ../plugins.ext && cp -p ../plugins.ext . || cp -p ../../plugins.ext .)
test -f config.h || ../../../platforms/unix/config/configure \
--with-src=stacksrc --disable-cogit \
--without-vm-display-fbdev --without-npsqueak --enable-fast-bitblt \
CC="gcc -march=armv6 -mfpu=vfp -mfloat-abi=hard" \
CXX=g++ \
CFLAGS="$OPT -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DI_REALLY_DONT_CARE_HOW_UNSAFE_THIS_IS" \
LIBS="-lpthread -luuid -lasound" \
LDFLAGS=-Wl,-z,now
rm -f vm/sqUnixMain.o # nuke version info
rm -rf ../../../products/$INSTALLDIR
# prefer make install prefix=`readlink -f \`pwd\`/../../../products/$INSTALLDIR`
# but older linux readlinks lack the -f flag and Raspbian lacks `readlinks`
make -j4 install prefix=`(cd ../../../;pwd)`/products/$INSTALLDIR 2>&1 | tee LOG