summaryrefslogtreecommitdiff
path: root/script/update/trees
diff options
context:
space:
mode:
Diffstat (limited to 'script/update/trees')
-rwxr-xr-xscript/update/trees16
1 files changed, 7 insertions, 9 deletions
diff --git a/script/update/trees b/script/update/trees
index ac5743be..af80d99a 100755
--- a/script/update/trees
+++ b/script/update/trees
@@ -199,15 +199,13 @@ handle_makefile()
run_make_command || $err "handle_makefile $codedir: no makefile!"
- if [ -e "${codedir}/.git" ] && [ "$project" = "u-boot" ] && \
- [ "$mode" = "distclean" ]; then
- x_ git -C "$codedir" clean -fdx
- elif [ "$mode" = "oldconfig" ] || [ "$mode" = "olddefconfig" ] || \
- [ "$mode" = "menuconfig" ] || [ "$mode" = "nconfig" ]; then
- x_ cp "${codedir}/.config" "$config"
- elif [ "$mode" = "savedefconfig" ]; then
- x_ cp "${codedir}/defconfig" "$config"
- fi
+ _copy=".config"
+ [ "$mode" = "savedefconfig" ] && _copy="defconfig"
+ [ "${mode%config}" = "$mode" ] || x_ cp "$codedir/$_copy" "$config"
+
+ [ -e "${codedir}/.git" ] && [ "$project" = "u-boot" ] && \
+ [ "$mode" = "distclean" ] && \
+ x_ git -C "$codedir" clean -fdx; return 0
}
run_make_command()