Makefile: generate-files: fix check for empty TMP_OUT
commitc655b7dc78
added a check to make sure the TMP_OUT variable was not set to an empty value, as such a situation would perform an `rm -rf /**` during cleanup. However, it was a bit too eager, because Makefile conditionals (`ifeq`) are evaluated when parsing the Makefile, which happens _before_ the make target is executed. As a result `$@_TMP_OUT` was always empty when the `ifeq` was evaluated, making it not possible to execute the `generate-files` target. This patch changes the check to use a shell command to evaluate if the var is set to an empty value. Signed-off-by: Sebastiaan van Stijn <github@gone.nl> (cherry picked from commit25c9e6e8df
) Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
This commit is contained in:
parent
5901652edd
commit
02d4ee3f9a
1 changed files with 4 additions and 3 deletions
7
Makefile
7
Makefile
|
@ -250,9 +250,10 @@ swagger-docs: ## preview the API documentation
|
|||
.PHONY: generate-files
|
||||
generate-files:
|
||||
$(eval $@_TMP_OUT := $(shell mktemp -d -t moby-output.XXXXXXXXXX))
|
||||
ifeq ($($@_TMP_OUT),)
|
||||
$(error Could not create temp directory.)
|
||||
endif
|
||||
@if [ -z "$($@_TMP_OUT)" ]; then \
|
||||
echo "Temp dir is not set"; \
|
||||
exit 1; \
|
||||
fi
|
||||
$(BUILD_CMD) --target "update" \
|
||||
--output "type=local,dest=$($@_TMP_OUT)" \
|
||||
--file "./hack/dockerfiles/generate-files.Dockerfile" .
|
||||
|
|
Loading…
Reference in a new issue