| 1 | # Top-level script fragment to build everything for MPW. |
| 2 | |
| 3 | Set savedir "`Directory`" |
| 4 | |
| 5 | #Set Echo 1 |
| 6 | |
| 7 | Set ThisScript "{0}" |
| 8 | |
| 9 | Set objdir ":" |
| 10 | |
| 11 | Set verify 0 |
| 12 | |
| 13 | Set BuildTarget "none" |
| 14 | |
| 15 | # Parse arguments. |
| 16 | |
| 17 | Loop |
| 18 | Break If {#} == 0 |
| 19 | If "{BuildTarget}" =~ /none/ |
| 20 | Set BuildTarget "{1}" |
| 21 | Else |
| 22 | Echo Only one build target allowed, ignoring "{1}" |
| 23 | End If |
| 24 | Shift 1 |
| 25 | End Loop |
| 26 | |
| 27 | If {verify} == 1 |
| 28 | Echo "#" Doing "{ThisScript}" "{BuildTarget}" in "`Directory`" ... |
| 29 | End If |
| 30 | |
| 31 | If "`Exists Makefile`" != "" |
| 32 | Echo "Set Echo 1" >{BuildTarget}.makeout |
| 33 | Make -f Makefile {BuildTarget} >>{BuildTarget}.makeout |
| 34 | {BuildTarget}.makeout |
| 35 | Delete {BuildTarget}.makeout |
| 36 | Else If "{BuildTarget}" =~ /all/ |
| 37 | "{ThisScript}" all-gcc |
| 38 | "{ThisScript}" all-ld |
| 39 | "{ThisScript}" all-gdb |
| 40 | Else If "{BuildTarget}" =~ /all-binutils/ |
| 41 | "{ThisScript}" do-libiberty |
| 42 | "{ThisScript}" do-bfd |
| 43 | "{ThisScript}" do-opcodes |
| 44 | "{ThisScript}" do-binutils |
| 45 | Else If "{BuildTarget}" =~ /all-gas/ |
| 46 | "{ThisScript}" do-libiberty |
| 47 | "{ThisScript}" do-bfd |
| 48 | "{ThisScript}" do-opcodes |
| 49 | "{ThisScript}" do-gas |
| 50 | Else If "{BuildTarget}" =~ /all-gcc/ |
| 51 | "{ThisScript}" all-gas |
| 52 | "{ThisScript}" all-binutils |
| 53 | "{ThisScript}" do-gcc |
| 54 | Else If "{BuildTarget}" =~ /all-gdb/ |
| 55 | "{ThisScript}" do-libiberty |
| 56 | "{ThisScript}" do-bfd |
| 57 | "{ThisScript}" do-opcodes |
| 58 | "{ThisScript}" do-gdb |
| 59 | Else If "{BuildTarget}" =~ /all-ld/ |
| 60 | "{ThisScript}" do-libiberty |
| 61 | "{ThisScript}" do-bfd |
| 62 | "{ThisScript}" do-opcodes |
| 63 | "{ThisScript}" do-ld |
| 64 | Else If "{BuildTarget}" =~ /do-bfd/ |
| 65 | SetDirectory :bfd: |
| 66 | ::mpw-build all |
| 67 | Else If "{BuildTarget}" =~ /do-libiberty/ |
| 68 | SetDirectory :libiberty: |
| 69 | ::mpw-build all |
| 70 | Else If "{BuildTarget}" =~ /do-opcodes/ |
| 71 | SetDirectory :opcodes: |
| 72 | ::mpw-build all |
| 73 | Else If "{BuildTarget}" =~ /do-binutils/ |
| 74 | SetDirectory :binutils: |
| 75 | ::mpw-build all |
| 76 | Else If "{BuildTarget}" =~ /do-gas/ |
| 77 | SetDirectory :gas: |
| 78 | ::mpw-build all |
| 79 | Else If "{BuildTarget}" =~ /do-gcc/ |
| 80 | SetDirectory :gcc: |
| 81 | ::mpw-build all |
| 82 | Else If "{BuildTarget}" =~ /do-gdb/ |
| 83 | SetDirectory :gdb: |
| 84 | ::mpw-build all |
| 85 | Else If "{BuildTarget}" =~ /do-ld/ |
| 86 | SetDirectory :ld: |
| 87 | ::mpw-build all |
| 88 | Else If "{BuildTarget}" =~ /install/ |
| 89 | "{ThisScript}" install-binutils |
| 90 | "{ThisScript}" install-gas |
| 91 | "{ThisScript}" install-gcc |
| 92 | # "{ThisScript}" install-gdb |
| 93 | "{ThisScript}" install-ld |
| 94 | Else If "{BuildTarget}" =~ /install-binutils/ |
| 95 | SetDirectory :binutils: |
| 96 | ::mpw-build install |
| 97 | Else If "{BuildTarget}" =~ /install-gas/ |
| 98 | SetDirectory :gas: |
| 99 | ::mpw-build install |
| 100 | Else If "{BuildTarget}" =~ /install-gcc/ |
| 101 | SetDirectory :gcc: |
| 102 | ::mpw-build install |
| 103 | Else If "{BuildTarget}" =~ /install-gdb/ |
| 104 | SetDirectory :gdb: |
| 105 | ::mpw-build install |
| 106 | Else If "{BuildTarget}" =~ /install-ld/ |
| 107 | SetDirectory :ld: |
| 108 | ::mpw-build install |
| 109 | Else |
| 110 | End If |
| 111 | |
| 112 | SetDirectory "{savedir}" |