{"thread":{"id":"7002","subject":"Broken dependencies..","startedAt":"2007-02-27T23:46:48Z","lastAt":"2007-02-28T15:00:56Z","messageCount":4,"participants":["Linus Torvalds","Johannes Schindelin","Andy Parkins"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"35731","messageId":"Pine.LNX.4.64.0702271543080.12485@woody.linux-foundation.org","threadId":"7002","inReplyTo":null,"subject":"Broken dependencies..","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2007-02-27T23:46:48Z","receivedAt":"2007-02-27T23:46:48Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\nTry this on the current git archive:\n\n\tgit checkout master\n\tmake clean\n\tmake\n\t...\n\tgit checkout next\n\tmake\n\nand at least I get \n\n\t...\n\tgcc -g -O2 -Wall  -DSHA1_HEADER='<openssl/sha.h>' -DETC_GITCONFIG='\"/home/torvalds/etc/gitconfig\"' -DNO_STRLCPY -o git-local-fetch   local-fetch.o fetch.o libgit.a xdiff/lib.a -lz  -lcrypto\n\tfetch.o: In function `process_object':\n\t/home/torvalds/git/fetch.c:137: undefined reference to `type_names'\n\tfetch.o: In function `typename':\n\t/home/torvalds/git/object.h:46: undefined reference to `type_names'\n\tcollect2: ld returned 1 exit status\n\napparently because fetch.c wasn't recompiled and it used the old fetch.o.\n\nUgh. I take full blame for the Makefile being a total mess, and us not \ndoing proper dependencies, but I'm too lazy to fix it. Any ideas on how to \ngenerate real dependency data so that we don't have these kinds of things \n(I bet there are other files than just fetch.c that lack the full header \nfile dependencies, this one just happened to trigger now)?\n\n\t\tLinus\n"},{"id":"35734","messageId":"Pine.LNX.4.63.0702280053140.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"7002","inReplyTo":"Pine.LNX.4.64.0702271543080.12485@woody.linux-foundation.org","subject":"Re: Broken dependencies..","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-27T23:55:48Z","receivedAt":"2007-02-27T23:55:48Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Tue, 27 Feb 2007, Linus Torvalds wrote:\n\n> \t/home/torvalds/git/fetch.c:137: undefined reference to `type_names'\n> \tfetch.o: In function `typename':\n\nI realized that too, and forgot to send out the patch:\n\n-- snip --\n[PATCH] fetch.o depends on the headers, too.\n\nSigned-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>\n\n---\n\n Makefile |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ndiff --git a/Makefile b/Makefile\nindex 20acc78..ce284fa 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -788,7 +788,7 @@ git-http-push$X: revision.o http.o http-push.o $(GITLIBS)\n \t$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n \t\t$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)\n \n-$(LIB_OBJS) $(BUILTIN_OBJS): $(LIB_H)\n+$(LIB_OBJS) $(BUILTIN_OBJS) fetch.o: $(LIB_H)\n $(patsubst git-%$X,%.o,$(PROGRAMS)): $(LIB_H) $(wildcard */*.h)\n $(DIFF_OBJS): diffcore.h\n \n-- snap --\n\nCiao,\nDscho\n"},{"id":"35788","messageId":"200702280900.22982.andyparkins@gmail.com","threadId":"7002","inReplyTo":"Pine.LNX.4.64.0702271543080.12485@woody.linux-foundation.org","subject":"Re: Broken dependencies..","fromName":"Andy Parkins","fromEmail":"andyparkins@gmail.com","sentAt":"2007-02-28T09:00:21Z","receivedAt":"2007-02-28T09:00:21Z","isPatch":false,"sender":{"key":"andyparkins@gmail.com","avatar":null},"body":"On Tuesday 2007 February 27 23:46, Linus Torvalds wrote:\n\n> doing proper dependencies, but I'm too lazy to fix it. Any ideas on how to\n> generate real dependency data so that we don't have these kinds of things\n> (I bet there are other files than just fetch.c that lack the full header\n> file dependencies, this one just happened to trigger now)?\n\nWould gcc's \"-MM\" help?  I think qmake uses them when it's generating \nMakefiles.\n\n\nAndy\n\n-- \nDr Andy Parkins, M Eng (hons), MIET\nandyparkins@gmail.com\n"},{"id":"35811","messageId":"Pine.LNX.4.63.0702281600280.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"7002","inReplyTo":"200702280900.22982.andyparkins@gmail.com","subject":"Re: Broken dependencies..","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-28T15:00:56Z","receivedAt":"2007-02-28T15:00:56Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 28 Feb 2007, Andy Parkins wrote:\n\n> On Tuesday 2007 February 27 23:46, Linus Torvalds wrote:\n> \n> > doing proper dependencies, but I'm too lazy to fix it. Any ideas on \n> > how to generate real dependency data so that we don't have these kinds \n> > of things (I bet there are other files than just fetch.c that lack the \n> > full header file dependencies, this one just happened to trigger now)?\n> \n> Would gcc's \"-MM\" help?  I think qmake uses them when it's generating \n> Makefiles.\n\nWould that play nicely with Sun' CC some people seem to use to compile \nGit?\n\nCiao,\nDscho\n"}]}