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...
|
# 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
|
# This is our default rule, so must come first
|
||||||
all:
|
all:
|
||||||
|
|
||||||
@ -937,3 +950,5 @@ include docs/manual/manual.mk
|
|||||||
-include $(BR2_EXTERNAL)/docs/*/*.mk
|
-include $(BR2_EXTERNAL)/docs/*/*.mk
|
||||||
|
|
||||||
.PHONY: $(noconfig_targets)
|
.PHONY: $(noconfig_targets)
|
||||||
|
|
||||||
|
endif #umask
|
||||||
|
Loading…
Reference in New Issue
Block a user