sys7.1-doc-wip/Tools/d32trans

136 lines
3.0 KiB
Plaintext
Raw Normal View History

2019-07-27 14:37:48 +00:00
#
# d32trans - options processing, running d32cpp
#
Set Exit 0
Set CaseSensitive 0
#
Set TransOptions ""
Set CppOptions ""
set ErrlogFile Dev:StdErr
set TempDir "{DSP3210_Temp}"
Set progress 0
Set RunCpp 1
If "{DSP3210_AsmPP}" == ""
set DSP3210_AsmPP "d32cpp"
End
Loop
Break If {#} == 0
If "{1}" =~ /-p/
set TransOptions "{TransOptions} -p"
Set progress 1
shift 1
continue
Else If "{1}" =~ /-a/
set RunCpp 0
shift 1
continue
Else If "{1}" =~ /-e/ || "{1}" =~ /-errlog/
set ErrlogFile "{2}"
shift 2
continue
Else If "{1}" =~ /-c/
set TransOptions "{TransOptions} -c"
shift 1
continue
Else If "{1}" =~ /-w/
set TransOptions "{TransOptions} -w"
shift 1
continue
Else If "{1}" =~ /-y/
set TransOptions "{TransOptions} {1} '{2}'"
If "{1}" !~ /≈:∞/
Set TempDir "{1}:"
Else
Set TempDir "{1}"
End
shift 2
continue
Else If "{1}" =~ /-d/ || "{1}" =~ /-define/
Set defines "{2}"
Loop
Break If "{defines}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
Set CppOptions "{CppOptions} -D'{®1}'"
Set defines "{®2}"
End
Set CppOptions "{CppOptions} -D'{defines}'"
shift 2
continue
Else If "{1}" =~ /-u/ || "{1}" =~ /-undef/
Set undefines "{2}"
Loop
Break If "{undefines}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
Set CppOptions "{CppOptions} -U'{®1}'"
Set undefines "{®2}"
End
Set CppOptions "{CppOptions} -U'{undefines}'"
shift 2
continue
Else If "{1}" =~ /-i/ || "{1}" =~ /-include/
Set includes "{2}"
Loop
Break If "{includes}" !~ /([¬,]*)®1,[ ∂t]*(≈)®2/
Set CppOptions "{CppOptions} -I'{®1}'"
Set includes "{®2}"
End
Set CppOptions "{CppOptions} -I'{includes}'"
shift 2
continue
Else If "{1}" =~ /-use/
d32trans_mac -use
exit 0
Else If "{1}" =~ /-≈/
echo "{0}: Illegal option. Usage:" >Dev:StdErr
d32trans_mac -use
exit 1
Else if "{infilename}" == ""
set infilename "{1}"
shift 1
continue
Else If "{outfilename}" == ""
set outfilename "{1}"
shift 1
continue
Else
echo "{0}: too many filename arguments" > Dev:StdErr
d32trans_mac -use
exit 1
End
End
If "{infilename}" == ""
set infilename Dev:StdIn
set outfilename Dev:StdOut
Else If "{outfilename}" == ""
set outfilename "{infilename}.cvt"
End
If {RunCpp}
If {progress}
Echo "{DSP3210_AsmPP}{CppOptions} {infilename} > {TempDir}'d32trans.tmp' ≥ {ErrlogFile}"
End
{DSP3210_AsmPP} {CppOptions} {infilename} > {TempDir}'d32trans.tmp' ≥ {ErrlogFile}
If {Status} > 0
exit 1
End
if {progress}
Echo "d32trans_mac {TransOptions} {TempDir}'d32trans.tmp' {outfilename} ≥≥ {ErrlogFile}"
End
d32trans_mac {TransOptions} {TempDir}'d32trans.tmp' {outfilename} ≥≥ {ErrlogFile}
Set stat {Status}
If {progress}
echo "Delete {TempDir}'d32trans.tmp' ≥≥ {ErrlogFile}"
End
Delete {TempDir}'d32trans.tmp' ≥≥ {ErrlogFile}
Exit {stat}
Else
if {progress}
Echo "d32trans_mac {TransOptions} {infilename} {outfilename} ≥≥ {ErrlogFile}"
End
d32trans_mac {TransOptions} {infilename} {outfilename} ≥≥ {ErrlogFile}
Exit {Status}
End
Exit 0