[PATCH] build: make _make_dirs robust against too long argument error
Felix Fietkau
nbd at nbd.name
Thu Apr 4 04:06:04 PDT 2024
On 25.03.24 10:51, Robert Marko wrote:
> _make_dirs currently can fail as _DIRS can be really long and thus go over
> the MAX_ARG_STRLEN limit so it will fail with:
> /bin/sh: Argument list too long
>
> Lets avoid this by stripping the $(BUILDDIR) prefix and then restoring it.
>
> Signed-off-by: Robert Marko <robimarko at gmail.com>
> ---
> src/build.rules | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/build.rules b/src/build.rules
> index acda88472..497580d88 100644
> --- a/src/build.rules
> +++ b/src/build.rules
> @@ -80,7 +80,7 @@ endif
> _DIRS := $(BUILDDIR)/$(PROJ)
> .PHONY: _make_dirs
> _make_dirs:
> - @mkdir -p $(_DIRS)
> + @printf '$(BUILDDIR)/%s ' $(patsubst $(BUILDDIR)/%,%,$(_DIRS)) | xargs mkdir -p
It's simpler and more robust to simply do:
@mkdir -p $(sort $(_DIRS))
- Felix
More information about the Hostap
mailing list