Raison a) locals b) arguments visibility IOW.
Unified · Split
| @@ -139,33 +139,32 @@ bocaml1() { · 138 unmodified lines | |||
| 139 | } | 139 | } |
| 140 | } | 140 | } |
| 141 | 141 | ||
| 142 | ocamldeppp() { | ||
| 143 | read _ _ depl | ||
| 144 | :>"$o.depl" | ||
| 145 | for d in $depl; do | ||
| 146 | local D=${d#$srcd/} | ||
| 147 | test "$O" = "$D" || { | ||
| 148 | bocaml "$D" $((n+1)) | ||
| 149 | case $d in | ||
| 150 | $outd/*) dd=$d;; | ||
| 151 | *) dd=$outd/${d#$srcd/};; | ||
| 152 | esac | ||
| 153 | printf "$dd " >>"$o.depl" | ||
| 154 | } | ||
| 155 | done | ||
| 156 | } | ||
| 157 | |||
| 158 | bocaml2() { | 142 | bocaml2() { |
| 159 | local n=$1 | 143 | local n=$1 |
| 160 | local s="$2" | 144 | local s="$2" |
| 161 | local o="$3" | 145 | local o="$3" |
| 162 | local O=${4-} | 146 | local O=${4-} |
| 147 | local d | ||
| 163 | local dd | 148 | local dd |
| 164 | local cmd="ocamlc -depend -bytecode -one-line $(oincs $o) $s" | 149 | local cmd="ocamlc -depend -bytecode -one-line $(oincs $o) $s" |
| 165 | local keycmd="digest $o $s $o.depl" | 150 | local keycmd="digest $o $s $o.depl" |
| 166 | 151 | ||
| 167 | isfresh "$o.depl" "$overs$cmd$(eval $keycmd)" || { | 152 | isfresh "$o.depl" "$overs$cmd$(eval $keycmd)" || { |
| 168 | { eval "$cmd" || die "$cmd failed"; } | ocamldeppp | 153 | { eval "$cmd" || die "$cmd failed"; } | { |
| 154 | read _ _ depl | ||
| 155 | :>"$o.depl" | ||
| 156 | for d in $depl; do | ||
| 157 | local D=${d#$srcd/} | ||
| 158 | test "$O" = "$D" || { | ||
| 159 | bocaml "$D" $((n+1)) | ||
| 160 | case $d in | ||
| 161 | $outd/*) dd=$d;; | ||
| 162 | *) dd=$outd/${d#$srcd/};; | ||
| 163 | esac | ||
| 164 | printf "$dd " >>"$o.depl" | ||
| 165 | } | ||
| 166 | done | ||
| 167 | } | ||
| 169 | echo "$overs$cmd$(eval $keycmd)" >"$o.depl.past" | 168 | echo "$overs$cmd$(eval $keycmd)" >"$o.depl.past" |
| 170 | } && { | 169 | } && { |
| 171 | vecho "fresh $o.depl" | 170 | vecho "fresh $o.depl" |