diff options
authorPetr Baudis <>2005-07-29 15:48:50 (GMT)
committerJunio C Hamano <>2005-07-30 00:21:51 (GMT)
commite468305a954d95a26bfcdec3bc6e4bd477d95676 (patch)
parent5bdac8b3269aea963c3192c93c26c1524def5464 (diff)
[PATCH] Remove the explicit Makefile dependencies description
Remove about one gazillion of explicit dependency rules with few lines describing the general dependency pattern and then the exceptions. This noticably shortens the Makefile and makes it easier to touch it. This is part of the Cogito Makefile changes port. Signed-off-by: Petr Baudis <> Signed-off-by: Junio C Hamano <>
1 files changed, 8 insertions, 66 deletions
diff --git a/Makefile b/Makefile
index 75d71ad..916a881 100644
--- a/Makefile
+++ b/Makefile
@@ -97,8 +97,9 @@ LIB_H += quote.h
LIB_OBJS += quote.o
LIB_H += diff.h count-delta.h
-LIB_OBJS += diff.o diffcore-rename.o diffcore-pickaxe.o diffcore-pathspec.o \
- count-delta.o diffcore-break.o diffcore-order.o
+DIFF_OBJS = diff.o diffcore-rename.o diffcore-pickaxe.o diffcore-pathspec.o \
+ diffcore-break.o diffcore-order.o
+LIB_OBJS += $(DIFF_OBJS) count-delta.o
LIB_OBJS += gitenv.o
LIB_OBJS += server-info.o
@@ -140,75 +141,16 @@ test-delta: test-delta.c diff-delta.o patch-delta.o
git-%: %.c $(LIB_FILE)
$(CC) $(CFLAGS) -o $@ $(filter %.c,$^) $(LIBS)
-git-update-cache: update-cache.c
-git-diff-files: diff-files.c
-git-init-db: init-db.c
-git-write-tree: write-tree.c
-git-read-tree: read-tree.c
-git-commit-tree: commit-tree.c
-git-cat-file: cat-file.c
-git-fsck-cache: fsck-cache.c
-git-checkout-cache: checkout-cache.c
-git-diff-tree: diff-tree.c
-git-rev-tree: rev-tree.c
-git-ls-files: ls-files.c
-git-check-files: check-files.c
-git-ls-tree: ls-tree.c
-git-merge-base: merge-base.c
-git-merge-cache: merge-cache.c
-git-unpack-file: unpack-file.c
-git-export: export.c
-git-diff-cache: diff-cache.c
-git-convert-cache: convert-cache.c
-git-http-pull: http-pull.c pull.c
-git-local-pull: local-pull.c pull.c
-git-ssh-push: rsh.c
+git-http-pull: pull.c
+git-local-pull: pull.c
git-ssh-pull: rsh.c pull.c
-git-rev-list: rev-list.c
-git-mktag: mktag.c
-git-diff-helper: diff-helper.c
-git-tar-tree: tar-tree.c
-git-hash-object: hash-object.c
-git-stripspace: stripspace.c
-git-diff-stages: diff-stages.c
-git-rev-parse: rev-parse.c
-git-patch-id: patch-id.c
-git-pack-objects: pack-objects.c
-git-unpack-objects: unpack-objects.c
-git-verify-pack: verify-pack.c
-git-receive-pack: receive-pack.c
-git-send-pack: send-pack.c
-git-prune-packed: prune-packed.c
-git-fetch-pack: fetch-pack.c
-git-var: var.c
-git-peek-remote: peek-remote.c
-git-update-server-info: update-server-info.c
-git-build-rev-cache: build-rev-cache.c
-git-show-rev-cache: show-rev-cache.c
+git-ssh-push: rsh.c
git-http-pull: LIBS += -lcurl
git-rev-list: LIBS += -lssl
-# Library objects..
-blob.o: $(LIB_H)
-tree.o: $(LIB_H)
-commit.o: $(LIB_H)
-tag.o: $(LIB_H)
-object.o: $(LIB_H)
-read-cache.o: $(LIB_H)
-sha1_file.o: $(LIB_H)
-usage.o: $(LIB_H)
-rev-cache.o: $(LIB_H)
-strbuf.o: $(LIB_H)
-gitenv.o: $(LIB_H)
-entry.o: $(LIB_H)
-diff.o: $(LIB_H) diffcore.h
-diffcore-rename.o : $(LIB_H) diffcore.h
-diffcore-pathspec.o : $(LIB_H) diffcore.h
-diffcore-pickaxe.o : $(LIB_H) diffcore.h
-diffcore-break.o : $(LIB_H) diffcore.h
-diffcore-order.o : $(LIB_H) diffcore.h
-epoch.o: $(LIB_H)
+$(LIB_OBJS): $(LIB_H)
+$(DIFF_OBJS): diffcore.h
git-core.spec: Makefile
sed -e 's/@@VERSION@@/$(GIT_VERSION)/g' < $< > $@