sm64

A Super Mario 64 decompilation
Log | Files | Refs | README | LICENSE

compile-test.sh (834B)


      1 #!/bin/bash
      2 set -o pipefail
      3 INPUT="$1"
      4 OUTPUT="${INPUT%.*}.o"
      5 
      6 rm -f "$OUTPUT"
      7 
      8 CC="$MIPS_CC"  # ido 7.1 via recomp or qemu-irix
      9 AS="mips-linux-gnu-as"
     10 ASFLAGS="-march=vr4300 -mabi=32"
     11 OPTFLAGS=$(grep 'COMPILE-FLAGS: ' $INPUT | sed 's#^.*COMPILE-FLAGS: ##' | sed 's#}$##')
     12 ASMPFLAGS=$(grep 'ASMP-FLAGS: ' $INPUT | sed 's#^.*ASMP-FLAGS: ##' | sed 's#}$##')
     13 ISET=$(grep 'COMPILE-ISET: ' $INPUT | sed 's#^.*COMPILE-ISET: ##' | sed 's#}$##')
     14 if [[ -z "$OPTFLAGS" ]]; then
     15     OPTFLAGS="-g"
     16 fi
     17 CFLAGS="-Wab,-r4300_mul -G 0 -Xcpluscomm -fullwarn -wlint -woff 819,820,852,821 -signed -c"
     18 if [[ -z "$ISET" ]]; then
     19     CFLAGS="$CFLAGS -mips2"
     20 fi
     21 if [[ "$OPTFLAGS" != *-KPIC* ]]; then
     22 	CFLAGS="$CFLAGS -non_shared"
     23 fi
     24 
     25 set -e
     26 python3 build.py --drop-mdebug-gptab $ASMPFLAGS $CC -- $AS $ASFLAGS -- $CFLAGS $OPTFLAGS $ISET -o "$OUTPUT" "$INPUT"