home *** CD-ROM | disk | FTP | other *** search
- #
- # This script sets the environment variables PMEM_SIZE and PHEAP_SIZE and
- # CMEM_SIZE before calling make. These define the ammount of the maspar to
- # be used and the heap size accordingly
-
- source Build.cfg
-
- YLEN=`mpconfig | awk '/MasPar/ {print substr($6,2)}'`
- XLEN=`mpconfig | awk '/MasPar/ {print $8}'`
-
- if [ "$YLEN" != "$OLD_YLEN" ] || [ "$XLEN" != "$OLD_XLEN" ];then
- echo "Changing MasPar array configuration"
- # touch eubang.c
- fi
-
- while [ "$1" ]
- do
- case $1 in
- -dbg) DBG=$2; shift;;
- -config) CONFIG=$2; shift;;
- -target) TARGET=$2; shift;;
- eubang.a) TARGET=eubang.a;;
- neubang.a) TARGET=neubang.a;;
- -s) SUPPRESS_REBUILD=yes;;
- *) echo Invalid option: $1; exit;;
- esac
- shift
- done
-
- if [ "$DBG" ]; then
- if [ "$DBG" != "stderr" ]; then
- DBG_FNAME=$DBG
- DBG=
- else
- DBG_FNAME=$OLD_DBG_FNAME
- fi
- else
- DBG=$OLD_DBG
- DBG_FNAME=$OLD_DBG_FNAME
- fi
-
- if [ "$DBG" != "$OLD_DBG" ]; then
- echo "Changing debug output stream"
- if [ "$SUPPRESS_REBUILD" ]; then
- echo Rebuid suppressed - change will only affect modified files
- else
- touch *.m
- fi
- fi
-
- if [ "$DBG_FNAME" != "$OLD_DBG_FNAME" ]; then
- echo "Changing debug output file"
- touch mp_debug.m
- fi
-
- if [ "$TARGET" ]; then
- :
- else
- TARGET=eubang.a
- fi
-
- if [ "$CONFIG" ]; then
- :
- else
- CONFIG=$OLD_CONFIG
- fi
-
- if [ "$CONFIG" != "$OLD_CONFIG" ]; then
- echo "Changing MasPar memory configuration"
- touch mp_mem_mgmt.m
- touch mp_gc.m
- fi
-
- case $CONFIG in
- 1) PMEM_SIZE=3k;
- CMEM_SIZE=16k;
- PHEAP_SIZE=3000;;
- 2) PMEM_SIZE=7k;
- CMEM_SIZE=32k;
- PHEAP_SIZE=6000;;
- 3) PMEM_SIZE=10k;
- CMEM_SIZE=48k;
- PHEAP_SIZE=10000;;
- *) PMEM_SIZE=16k;
- CMEM_SIZE=64k;
- PHEAP_SIZE=14000;;
- esac
-
- export PHEAP_SIZE PMEM_SIZE CMEM_SIZE DBG DBG_FNAME XLEN YLEN
-
- echo PMEM_SIZE=$PMEM_SIZE > Build.cfg
- echo CMEM_SIZE=$CMEM_SIZE >> Build.cfg
- if [ "$SUPPRESS_REBUILD" ]; then
- echo OLD_DBG=$OLD_DBG >> Build.cfg
- else
- echo OLD_DBG=$DBG >> Build.cfg
- fi
- echo OLD_DBG_FNAME=$DBG_FNAME >> Build.cfg
- echo OLD_CONFIG=$CONFIG >> Build.cfg
- echo OLD_XLEN=$XLEN >> Build.cfg
- echo OLD_YLEN=$YLEN >> Build.cfg
- echo
- echo export PMEM_SIZE CMEM_SIZE OLD_DBG OLD_DBG_FNAME OLD_CONFIG OLD_XLEN OLD_YLEN >> Build.cfg
-
- echo "Buildinq $TARGET for $XLEN x $YLEN DPU with $PHEAP_SIZE byte heap (pmem=$PMEM_SIZE,cmem=$CMEM_SIZE)"
-
- if [ "$DBG" ]; then
- WITH_DEBUG=-DDBG_2_STDERR
- export WITH_DEBUG
- echo Primary debug output sent to stderr
- else
- echo Primary debug output sent to $DBG_FNAME
- fi
- echo
-
- make $TARGET
-