summaryrefslogtreecommitdiff
path: root/include/tree.sh
diff options
context:
space:
mode:
Diffstat (limited to 'include/tree.sh')
-rw-r--r--include/tree.sh11
1 files changed, 4 insertions, 7 deletions
diff --git a/include/tree.sh b/include/tree.sh
index 4d0c533d..d4585b92 100644
--- a/include/tree.sh
+++ b/include/tree.sh
@@ -107,14 +107,12 @@ handle_defconfig()
[ -f "CHANGELOG" ] || fetch_project "$project"
configure_project "$target_dir" || return 0
- x_ mkdir -p "$elfdir/$target"
chkvars tree
srcdir="src/$project/$tree"
- if [ "$mode" = "distclean" ] || [ "$mode" = "crossgcc-clean" ]; then
- [ -d "$srcdir" ] || return 0
- fi
+ [ "$mode" = "${mode%clean}" ] && [ ! -d "$srcdir" ] && return 0
+
[ -z "$mode" ] && for _xarch in $xarch; do
$dry check_cross_compiler "$_xarch"
done; :
@@ -268,8 +266,7 @@ check_defconfig()
[ -f "$defconfig" ] || $dry err "$project/$target: missing defconfig"
dest_dir="$elfdir/$target/${defconfig#"$target_dir/config/"}"
- $dry elfcheck || return 1 # skip build if a previous one exists
- $dry x_ mkdir -p "$dest_dir"
+ $dry elfcheck || return 1; : # skip build if a previous one exists
}
elfcheck()
@@ -322,7 +319,7 @@ check_cmake()
check_autoconf()
{
(
- cd "$1" || err "!cd $1"
+ x_ cd "$1"
[ -f "bootstrap" ] && x_ ./bootstrap $bootstrapargs
[ -f "autogen.sh" ] && x_ ./autogen.sh $autogenargs
[ -f "configure" ] && x_ ./configure $autoconfargs; :