Makefile: don't depend on the umask
Some packages and BR itself create files and directories on the target with cp/mkdir/etc which depend on the umask at the time of building. To fix this, use a trick inside the Makefile which wraps all rules when the umask is not 0022. This sets the umask at the top level, and then the building process continues as usual. [Thomas: add --no-print-directory, as suggested by Arnout.] Signed-off-by: Guido Martínez <guido@vanguardiasur.com.ar> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
e5e31fe92d
commit
bee5745ccc
15
Makefile
15
Makefile
@ -24,6 +24,19 @@
|
||||
# You shouldn't need to mess with anything beyond this point...
|
||||
#--------------------------------------------------------------
|
||||
|
||||
# Trick for always running with a fixed umask
|
||||
UMASK=0022
|
||||
ifneq ($(shell umask),$(UMASK))
|
||||
.PHONY: all $(MAKECMDGOALS)
|
||||
|
||||
all:
|
||||
@umask $(UMASK) && $(MAKE) --no-print-directory
|
||||
|
||||
$(MAKECMDGOALS):
|
||||
@umask $(UMASK) && $(MAKE) --no-print-directory $@
|
||||
|
||||
else # umask
|
||||
|
||||
# This is our default rule, so must come first
|
||||
all:
|
||||
|
||||
@ -937,3 +950,5 @@ include docs/manual/manual.mk
|
||||
-include $(BR2_EXTERNAL)/docs/*/*.mk
|
||||
|
||||
.PHONY: $(noconfig_targets)
|
||||
|
||||
endif #umask
|
||||
|
Loading…
Reference in New Issue
Block a user