mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
install-files.mk: Fix installation of filenames with whitespace
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
853d401d62
commit
56afe21ee0
1 changed files with 10 additions and 10 deletions
|
|
@ -3,7 +3,7 @@ TARGET_DIR ?= $(PREFIX)/share
|
|||
|
||||
SOURCE_BASE ?= .
|
||||
|
||||
RELPATHS = $(foreach f,$(SOURCE_FILES),$(shell realpath -s --relative-to $(SOURCE_BASE) $f))
|
||||
RELPATHS = $(foreach f,$(SOURCE_FILES),$(shell realpath -s --relative-to "$(SOURCE_BASE)" "$f"))
|
||||
INSTALLED_FILES = $(addprefix $(TARGET_DIR)/,$(RELPATHS))
|
||||
include $(MODDIR)/make/defs.mk
|
||||
|
||||
|
|
@ -28,12 +28,12 @@ done.clean:
|
|||
$(RM) -f *.done
|
||||
|
||||
$(TARGET_DIR)/%: $(SOURCE_BASE)/%
|
||||
@if [ -d $< ]; then \
|
||||
echo $(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) $@ ;\
|
||||
$(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) $@ ;\
|
||||
@if [ -d "$<" ]; then \
|
||||
echo $(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) "$@" ;\
|
||||
$(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) "$@" ;\
|
||||
else \
|
||||
echo $(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) $< $@ ;\
|
||||
$(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) $< $@ ;\
|
||||
echo $(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) "$<" "$@" ;\
|
||||
$(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) "$<" "$@" ;\
|
||||
fi
|
||||
|
||||
install.done: $(INSTALLED_FILES)
|
||||
|
|
@ -42,11 +42,11 @@ install.done: $(INSTALLED_FILES)
|
|||
# this used to work fine until an enormous $(SOURCE_FILES) was encountered
|
||||
install-old.done:
|
||||
for f in $(SOURCE_FILES); do \
|
||||
relpath=`realpath -s --relative-to $(SOURCE_BASE) $$f` ;\
|
||||
if [ -d $$f ]; then \
|
||||
$(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) $(TARGET_DIR)/$$relpath ;\
|
||||
relpath=`realpath -s --relative-to "$(SOURCE_BASE)" "$$f"` ;\
|
||||
if [ -d "$$f" ]; then \
|
||||
$(INSTALL) -d -D -m $(TARGET_DIR_MODE) -o $(TARGET_DIR_OWNER) -g $(TARGET_DIR_GROUP) "$(TARGET_DIR)/$$relpath" ;\
|
||||
else \
|
||||
$(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) $$f $(TARGET_DIR)/$$relpath ;\
|
||||
$(INSTALL) -p -D -m $(TARGET_MODE) -o $(TARGET_OWNER) -g $(TARGET_GROUP) "$$f" "$(TARGET_DIR)/$$relpath" ;\
|
||||
fi ;\
|
||||
done
|
||||
touch $@
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue