mirror of
https://github.com/HackerN64/F3DEX3.git
synced 2026-01-21 10:37:45 -08:00
55 lines
1.4 KiB
Bash
55 lines
1.4 KiB
Bash
#!/bin/bash
|
|
# Create object files
|
|
|
|
UCODES=(
|
|
F3DEX3_BrW
|
|
F3DEX3_BrW_PA
|
|
F3DEX3_BrW_PB
|
|
F3DEX3_BrW_PC
|
|
F3DEX3_BrW_NOC
|
|
F3DEX3_BrW_NOC_PA
|
|
F3DEX3_BrW_NOC_PB
|
|
F3DEX3_BrW_NOC_PC
|
|
F3DEX3_BrW_LVP
|
|
F3DEX3_BrW_LVP_PA
|
|
F3DEX3_BrW_LVP_PB
|
|
F3DEX3_BrW_LVP_PC
|
|
F3DEX3_BrW_LVP_NOC
|
|
F3DEX3_BrW_LVP_NOC_PA
|
|
F3DEX3_BrW_LVP_NOC_PB
|
|
F3DEX3_BrW_LVP_NOC_PC
|
|
)
|
|
|
|
mkdir -p build/objects
|
|
|
|
for ucode in "${UCODES[@]}"; do
|
|
make $ucode
|
|
echo .macro glabel label > object.s
|
|
echo .global \\label >> object.s
|
|
echo .balign 4 >> object.s
|
|
echo \\label: >> object.s
|
|
echo .endm >> object.s
|
|
echo >> object.s
|
|
echo .section .text >> object.s
|
|
echo >> object.s
|
|
echo .balign 16 >> object.s
|
|
echo glabel gsp$ucode\_fifoTextStart >> object.s
|
|
echo .incbin \"build/$ucode/$ucode.code\" >> object.s
|
|
echo .balign 16 >> object.s
|
|
echo glabel gsp$ucode\_fifoTextEnd >> object.s
|
|
echo >> object.s
|
|
echo .section .data >> object.s
|
|
echo >> object.s
|
|
echo .balign 16 >> object.s >> object.s
|
|
echo glabel gsp$ucode\_fifoDataStart >> object.s
|
|
echo .incbin \"build/$ucode/$ucode.data\" >> object.s
|
|
echo .balign 16 >> object.s
|
|
echo glabel gsp$ucode\_fifoDataEnd >> object.s
|
|
echo >> object.s
|
|
|
|
OUTNAME=${ucode//_/.}
|
|
mips64-linux-gnu-as -march=vr4300 -mabi=32 -I . object.s -o build/objects/gsp$OUTNAME.fifo.o
|
|
done
|
|
|
|
rm object.s
|