From: Jonathan Nieder Date: Tue, 26 Jan 2010 16:08:44 +0000 (-0600) Subject: Merge branch 'master' of git://repo.or.cz/alt-git into jn/autodep X-Git-Tag: v1.7.1-rc0~118^2~10 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=225f78c817755bebff91629cc525a258cf60eaea;p=git.git Merge branch 'master' of git://repo.or.cz/alt-git into jn/autodep * 'master' of git://repo.or.cz/alt-git: (384 commits) am: fix patch format detection for Thunderbird "Save As" emails t0022: replace non-portable literal CR tests: consolidate CR removal/addition functions commit-tree: remove unused #define t5541-http-push: make grep expression check for one line only rebase: replace antiquated sed invocation Add test-run-command to .gitignore git_connect: use use_shell instead of explicit "sh", "-c" gitweb.js: Workaround for IE8 bug Make test numbers unique Windows: Remove dependency on pthreadGC2.dll Documentation: move away misplaced 'push --upstream' description Documentation: add missing :: in config.txt pull: re-fix command line generation Documentation: merge: use MERGE_HEAD to refer to the remote branch Documentation: simplify How Merge Works Documentation: merge: add a section about fast-forward Documentation: emphasize when git merge terminates early Documentation: merge: add an overview Documentation: merge: move merge strategy list to end ... Conflicts: Makefile --- 225f78c817755bebff91629cc525a258cf60eaea diff --cc Makefile index 98810b246,af08c8f45..6f0f64753 --- a/Makefile +++ b/Makefile @@@ -341,8 -339,9 +339,9 @@@ LIB_H LIB_OBJS = PROGRAMS = SCRIPT_PERL = + SCRIPT_PYTHON = SCRIPT_SH = --TEST_PROGRAMS = ++TEST_PROGRAMS_NEED_X = SCRIPT_SH += git-am.sh SCRIPT_SH += git-bisect.sh @@@ -387,33 -387,12 +387,28 @@@ EXTRA_PROGRAMS # ... and all the rest that could be moved out of bindir to gitexecdir PROGRAMS += $(EXTRA_PROGRAMS) PROGRAMS += git-fast-import$X - PROGRAMS += git-hash-object$X PROGRAMS += git-imap-send$X - PROGRAMS += git-index-pack$X - PROGRAMS += git-merge-index$X - PROGRAMS += git-merge-tree$X - PROGRAMS += git-mktag$X - PROGRAMS += git-pack-redundant$X - PROGRAMS += git-patch-id$X PROGRAMS += git-shell$X PROGRAMS += git-show-index$X - PROGRAMS += git-unpack-file$X PROGRAMS += git-upload-pack$X - PROGRAMS += git-var$X PROGRAMS += git-http-backend$X - TEST_PROGRAMS += test-chmtime$X - TEST_PROGRAMS += test-ctype$X - TEST_PROGRAMS += test-date$X - TEST_PROGRAMS += test-delta$X - TEST_PROGRAMS += test-dump-cache-tree$X - TEST_PROGRAMS += test-genrandom$X - TEST_PROGRAMS += test-match-trees$X - TEST_PROGRAMS += test-parse-options$X - TEST_PROGRAMS += test-path-utils$X - TEST_PROGRAMS += test-sha1$X - TEST_PROGRAMS += test-sigchain$X ++TEST_PROGRAMS_NEED_X += test-chmtime ++TEST_PROGRAMS_NEED_X += test-ctype ++TEST_PROGRAMS_NEED_X += test-date ++TEST_PROGRAMS_NEED_X += test-delta ++TEST_PROGRAMS_NEED_X += test-dump-cache-tree ++TEST_PROGRAMS_NEED_X += test-genrandom ++TEST_PROGRAMS_NEED_X += test-match-trees ++TEST_PROGRAMS_NEED_X += test-parse-options ++TEST_PROGRAMS_NEED_X += test-path-utils ++TEST_PROGRAMS_NEED_X += test-run-command ++TEST_PROGRAMS_NEED_X += test-sha1 ++TEST_PROGRAMS_NEED_X += test-sigchain ++TEST_PROGRAMS_NEED_X += test-index-version ++ ++TEST_PROGRAMS := $(patsubst %,%$X,$(TEST_PROGRAMS_NEED_X)) + # List built-in command $C whose implementation cmd_$C() is not in # builtin-$C.o but is linked in as part of some other command. BUILT_INS += $(patsubst builtin-%.o,git-%$X,$(BUILTIN_OBJS)) @@@ -1606,30 -1645,26 +1668,25 @@@ git.o git.spec %.o: %.c GIT-CFLAGS $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) $< - %.s: %.c GIT-CFLAGS + %.s: %.c GIT-CFLAGS FORCE $(QUIET_CC)$(CC) -S $(ALL_CFLAGS) $< - %.o: %.S + %.o: %.S GIT-CFLAGS $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) $< - exec_cmd.o: exec_cmd.c GIT-CFLAGS - $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) \ - '-DGIT_EXEC_PATH="$(gitexecdir_SQ)"' \ - '-DBINDIR="$(bindir_relative_SQ)"' \ - '-DPREFIX="$(prefix_SQ)"' \ - $< + exec_cmd.s exec_cmd.o: ALL_CFLAGS += \ + '-DGIT_EXEC_PATH="$(gitexecdir_SQ)"' \ + '-DBINDIR="$(bindir_relative_SQ)"' \ + '-DPREFIX="$(prefix_SQ)"' - builtin-init-db.o: builtin-init-db.c GIT-CFLAGS - $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) -DDEFAULT_GIT_TEMPLATE_DIR='"$(template_dir_SQ)"' $< + builtin-init-db.s builtin-init-db.o: ALL_CFLAGS += \ + -DDEFAULT_GIT_TEMPLATE_DIR='"$(template_dir_SQ)"' - config.o: config.c GIT-CFLAGS - $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) -DETC_GITCONFIG='"$(ETC_GITCONFIG_SQ)"' $< + config.s config.o: ALL_CFLAGS += -DETC_GITCONFIG='"$(ETC_GITCONFIG_SQ)"' - http.o: http.c GIT-CFLAGS - $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) -DGIT_USER_AGENT='"git/$(GIT_VERSION)"' $< + http.s http.o: ALL_CFLAGS += -DGIT_USER_AGENT='"git/$(GIT_VERSION)"' ifdef NO_EXPAT - http-walker.o: http-walker.c GIT-CFLAGS - $(QUIET_CC)$(CC) -o $*.o -c $(ALL_CFLAGS) -DNO_EXPAT $< -http-walker.o: http.h + http-walker.s http-walker.o: ALL_CFLAGS += -DNO_EXPAT endif git-%$X: %.o $(GITLIBS) @@@ -1739,13 -1770,36 +1803,18 @@@ GIT-GUI-VARS: FORC echo 1>&2 " * new Tcl/Tk interpreter location"; \ echo "$$VARS" >$@; \ fi - - .PHONY: .FORCE-GIT-GUI-VARS endif --### Testing rules - -TEST_PROGRAMS_NEED_X += test-chmtime -TEST_PROGRAMS_NEED_X += test-ctype -TEST_PROGRAMS_NEED_X += test-date -TEST_PROGRAMS_NEED_X += test-delta -TEST_PROGRAMS_NEED_X += test-dump-cache-tree -TEST_PROGRAMS_NEED_X += test-genrandom -TEST_PROGRAMS_NEED_X += test-match-trees -TEST_PROGRAMS_NEED_X += test-parse-options -TEST_PROGRAMS_NEED_X += test-path-utils -TEST_PROGRAMS_NEED_X += test-run-command -TEST_PROGRAMS_NEED_X += test-sha1 -TEST_PROGRAMS_NEED_X += test-sigchain -TEST_PROGRAMS_NEED_X += test-index-version - -TEST_PROGRAMS = $(patsubst %,%$X,$(TEST_PROGRAMS_NEED_X)) - + test_bindir_programs := $(patsubst %,bin-wrappers/%,$(BINDIR_PROGRAMS_NEED_X) $(BINDIR_PROGRAMS_NO_X) $(TEST_PROGRAMS_NEED_X)) - all:: $(TEST_PROGRAMS) + all:: $(TEST_PROGRAMS) $(test_bindir_programs) + + bin-wrappers/%: wrap-for-bin.sh + @mkdir -p bin-wrappers + $(QUIET_GEN)sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's|@@BUILD_DIR@@|$(shell pwd)|' \ + -e 's|@@PROG@@|$(@F)|' < $< > $@ && \ + chmod +x $@ # GNU make supports exporting all variables by "export" without parameters. # However, the environment gets quite big, and some programs have problems @@@ -1753,6 -1807,6 +1822,8 @@@ export NO_SVN_TESTS ++### Testing rules ++ test: all $(MAKE) -C t/ all