| #!/bin/bash |
| |
| if [ -z "$*" ]; then |
| exit 0 |
| fi |
| set -o pipefail |
| dir="$1" |
| solution="${1%%/*}" |
| cd "$solution" |
| if [ "$solution" = "$1" ]; then |
| shift |
| $@ | sed "s/^/[$solution] /g" 1>&2 |
| if [ $? -ne 0 ]; then |
| exit $? |
| fi |
| "$GIT_EXE" submodule --quiet sync |
| "$GIT_EXE" ls-files -s | grep ^160000 | awk '{print $4}' | |
| sed "s/^/$solution\//g" |
| status=$? |
| else |
| submodule="${1#*/}" |
| echo "[$solution] updating $submodule ..." |
| "$GIT_EXE" submodule update --quiet --init "$submodule" | |
| ( grep -v '^Skipping submodule' || true ) | sed "s|^|[$1] |g" |
| status=$? |
| if [ "$status" -ne "0" ]; then |
| echo "[$solution] FAILED to update $submodule" |
| fi |
| fi |
| exit $status |