From: Christian Marangi Date: Wed, 7 Sep 2022 21:50:36 +0000 (+0200) Subject: build: handle directory with whitespace in AUTOREMOVE clean X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=ac7b1c8e9464ff2fafd682ede144564d99930063;p=openwrt%2Fstaging%2Fblocktrron.git build: handle directory with whitespace in AUTOREMOVE clean Package with whitespace in their build directory are not correctly removed when CONFIG_AUTOREMOVE is enabled. This is caused by xargs that use whitespace as delimiters. To handle this use \0 as the delimiter and set find to use \0 as the delimiter. Signed-off-by: Christian Marangi (cherry picked from commit dccee21792b89031bcd801030de403f195d80278) --- diff --git a/include/host-build.mk b/include/host-build.mk index c6f594be35..22fcc31f15 100644 --- a/include/host-build.mk +++ b/include/host-build.mk @@ -198,8 +198,8 @@ ifndef DUMP ifneq ($(CONFIG_AUTOREMOVE),) host-compile: - $(FIND) $(HOST_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' | \ - $(XARGS) rm -rf + $(FIND) $(HOST_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -print0 | \ + $(XARGS) -0 rm -rf endif endef endif diff --git a/include/package.mk b/include/package.mk index 4220f624ff..368bf0d7ca 100644 --- a/include/package.mk +++ b/include/package.mk @@ -259,8 +259,8 @@ define Build/CoreTargets ifneq ($(CONFIG_AUTOREMOVE),) compile: -touch -r $(PKG_BUILD_DIR)/.built $(PKG_BUILD_DIR)/.autoremove 2>/dev/null >/dev/null - $(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' | \ - $(XARGS) rm -rf + $(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' -print0 | \ + $(XARGS) -0 rm -rf endif endef