Makefile: simplify target skeleton copying

We already use the .root stamp file to remember if we have copied the
skeleton, so we can remove the /bin check.

Likewise, we should always have a TARGET_SKELETON (or explicitly error
out otherwise), so remove that check as well.

Finally, now that we're using rsync to do the copy, we might as well
use its exclude support instead of cleaning up unwanted files afterwards.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Peter Korsgaard 2013-03-26 08:33:18 +01:00
parent 1cd3f992fb
commit 13c07c79a4

View File

@ -429,14 +429,9 @@ endif
$(BUILD_DIR)/.root:
mkdir -p $(TARGET_DIR)
if ! [ -d "$(TARGET_DIR)/bin" ]; then \
if [ -d "$(TARGET_SKELETON)" ]; then \
rsync -au $(TARGET_SKELETON)/ $(TARGET_DIR)/; \
fi; \
fi
rsync -au --exclude=.empty --exclude=CVS --exclude=.svn --exclude='*~' \
$(TARGET_SKELETON)/ $(TARGET_DIR)/
cp support/misc/target-dir-warning.txt $(TARGET_DIR_WARNING_FILE)
-find $(TARGET_DIR) -type d -name CVS -print0 -o -name .svn -print0 | xargs -0 rm -rf
-find $(TARGET_DIR) -type f \( -name .empty -o -name '*~' \) -print0 | xargs -0 rm -rf
touch $@
$(TARGET_DIR): $(BUILD_DIR)/.root