Junio C Hamano <junkio@xxxxxxx> writes: > Well, I admit I do not use colorized diffs myself. As a matter > of fact, I use specialized terminfo to disable coloring on my > terminal session, since fontifying in GNUS otherwise gives me > unreadable screen and I am too lazy to figure out how to turn it > off. > > I do however usually test colored stuff with at least white and > black backgrounds, By the way, in the ancient history, in commit 3443546 you did: --- a/Makefile +++ b/Makefile @@ -544,12 +545,18 @@ init-db.o: init-db.c -DDEFAULT_GIT_TEMPLATE_DIR='"$(template_dir_SQ)"' $*.c $(LIB_OBJS): $(LIB_H) -$(patsubst git-%$X,%.o,$(PROGRAMS)): $(LIB_H) +$(patsubst git-%$X,%.o,$(PROGRAMS)): $(LIBS) $(DIFF_OBJS): diffcore.h $(LIB_FILE): $(LIB_OBJS) $(AR) rcs $@ $(LIB_OBJS) which we kept until today. This causes checkout-index.o and friends to be recompiled when we touch diff.c (I do not mind relinking git-checkout-index because libgit.a has changed, but recompiling checkout-index.c is unneeded). I think this was done to make sure anything that includes xdiff/*.h files via "xdiff-interface.h" are recompiled when xdiff/*.h are changed, so I am thinking about loosening it a bit to depend on our headers and xdiff/*.h headers, perhaps like this: diff --git a/Makefile b/Makefile index a5b6784..e29e3fa 100644 --- a/Makefile +++ b/Makefile @@ -582,7 +582,7 @@ git-http-push$X: revision.o http.o http- $(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT) $(LIB_OBJS) $(BUILTIN_OBJS): $(LIB_H) -$(patsubst git-%$X,%.o,$(PROGRAMS)): $(GITLIBS) +$(patsubst git-%$X,%.o,$(PROGRAMS)): $(LIB_H) $(wildcard */*.h) $(DIFF_OBJS): diffcore.h $(LIB_FILE): $(LIB_OBJS) diff --git a/diff.c b/diff.c diff --git a/xdiff/xdiff.h b/xdiff/xdiff.h - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html