summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer2005-10-05 10:06:11 +0000
committerBernhard Reutner-Fischer2005-10-05 10:06:11 +0000
commit7abe7098676aeb0654ef0159f589484b4cf520e8 (patch)
tree2303a453b8bee35eec1c0e1511553ac243e3eaaf
parent5c071bcf2f6bc923b5d6779b3563d08b80a8949d (diff)
downloadbusybox-7abe7098676aeb0654ef0159f589484b4cf520e8.zip
busybox-7abe7098676aeb0654ef0159f589484b4cf520e8.tar.gz
- Fix spurious rebuilds for (parallel) out-of-tree builds.
Make sure that the directories are order-only prerequisites. Otherwise we may have object files created after the timestamp of the directory was updated which would lead to spurious rebuilds (as some of the dentries may be older than the dir itself).
-rw-r--r--e2fsprogs/Makefile.in20
1 files changed, 12 insertions, 8 deletions
diff --git a/e2fsprogs/Makefile.in b/e2fsprogs/Makefile.in
index 46a684e..546cc83 100644
--- a/e2fsprogs/Makefile.in
+++ b/e2fsprogs/Makefile.in
@@ -7,9 +7,9 @@
E2FSPROGS_AR:=e2fsprogs.a
E2FSPROGS_DIR:=$(top_builddir)/e2fsprogs
-E2FSPROGS_INC:=$(top_srcdir)/e2fsprogs
+E2FSPROGS_SRC:=$(top_srcdir)/e2fsprogs
-E2FSPROGS_CFLAGS := -I$(E2FSPROGS_INC) -include $(E2FSPROGS_INC)/e2fsbb.h
+E2FSPROGS_CFLAGS := -I$(E2FSPROGS_SRC) -include $(E2FSPROGS_SRC)/e2fsbb.h
BLKID_SRC := cache.c dev.c devname.c devno.c blkid_getsize.c \
probe.c read.c resolve.c save.c tag.c
@@ -42,13 +42,17 @@ UUID_OBJS := $(patsubst %.c,%.o, $(UUID_SRCS))
# for building out-of-tree we need to make sure that the directories to hold
# the object tree are created
$(patsubst %,$(E2FSPROGS_DIR)/%, blkid e2fsck e2p ext2fs uuid):
- mkdir -p "$@"
+ @mkdir -p "$@"
-$(patsubst %,$(E2FSPROGS_DIR)/%, $(BLKID_OBJS)):$(E2FSPROGS_DIR)/blkid
-$(patsubst %,$(E2FSPROGS_DIR)/%, $(E2FSCK_OBJS)):$(E2FSPROGS_DIR)/e2fsck
-$(patsubst %,$(E2FSPROGS_DIR)/%, $(E2P_OBJS)):$(E2FSPROGS_DIR)/e2p
-$(patsubst %,$(E2FSPROGS_DIR)/%, $(EXT2FS_OBJS)):$(E2FSPROGS_DIR)/ext2fs
-$(patsubst %,$(E2FSPROGS_DIR)/%, $(UUID_OBJS)):$(E2FSPROGS_DIR)/uuid
+# make sure that the directories are order-only prerequisites. Otherwise we
+# may have object files created after the timestamp of the directory was
+# updated which would lead to spurious rebuilds (as some of the dentries
+# may be older than the dir itself).
+$(patsubst %,$(E2FSPROGS_DIR)/%, $(BLKID_OBJS)):|$(E2FSPROGS_DIR)/blkid
+$(patsubst %,$(E2FSPROGS_DIR)/%, $(E2FSCK_OBJS)):|$(E2FSPROGS_DIR)/e2fsck
+$(patsubst %,$(E2FSPROGS_DIR)/%, $(E2P_OBJS)):|$(E2FSPROGS_DIR)/e2p
+$(patsubst %,$(E2FSPROGS_DIR)/%, $(EXT2FS_OBJS)):|$(E2FSPROGS_DIR)/ext2fs
+$(patsubst %,$(E2FSPROGS_DIR)/%, $(UUID_OBJS)):|$(E2FSPROGS_DIR)/uuid
E2FSPROGS-y:=
E2FSPROGS-$(CONFIG_CHATTR) += chattr.o $(E2P_OBJS)