X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Makefile;h=8371f7f522b6b02039af2a9d1684a8137197526e;hb=ecc13e73cf96cb14e2403be6538593a167d7ea23;hp=6b10eaa41321b530b95acf9f3633c765062b6297;hpb=1b25fd191d040ab59f8124694152c1577b13d968;p=git.git diff --git a/Makefile b/Makefile index 6b10eaa4..8371f7f5 100644 --- a/Makefile +++ b/Makefile @@ -116,7 +116,7 @@ SCRIPT_SH = \ git-add.sh git-bisect.sh git-branch.sh git-checkout.sh \ git-cherry.sh git-clean.sh git-clone.sh git-commit.sh \ git-count-objects.sh git-diff.sh git-fetch.sh \ - git-format-patch.sh git-log.sh git-ls-remote.sh \ + git-format-patch.sh git-ls-remote.sh \ git-merge-one-file.sh git-parse-remote.sh \ git-prune.sh git-pull.sh git-push.sh git-rebase.sh \ git-repack.sh git-request-pull.sh git-reset.sh \ @@ -167,6 +167,8 @@ PROGRAMS = \ git-name-rev$X git-pack-redundant$X git-repo-config$X git-var$X \ git-describe$X git-merge-tree$X git-blame$X git-imap-send$X +BUILT_INS = git-log$X + # what 'all' will build and 'install' will install, in gitexecdir ALL_PROGRAMS = $(PROGRAMS) $(SIMPLE_PROGRAMS) $(SCRIPTS) @@ -194,12 +196,12 @@ LIB_H = \ blob.h cache.h commit.h csum-file.h delta.h \ diff.h object.h pack.h pkt-line.h quote.h refs.h \ run-command.h strbuf.h tag.h tree.h git-compat-util.h revision.h \ - tree-walk.h + tree-walk.h log-tree.h DIFF_OBJS = \ - diff.o diffcore-break.o diffcore-order.o diffcore-pathspec.o \ + diff.o diffcore-break.o diffcore-order.o \ diffcore-pickaxe.o diffcore-rename.o tree-diff.o combine-diff.o \ - diffcore-delta.o + diffcore-delta.o log-tree.o LIB_OBJS = \ blob.o commit.o connect.o csum-file.o \ @@ -246,6 +248,10 @@ ifeq ($(uname_S),SunOS) NO_UNSETENV = YesPlease NO_SETENV = YesPlease endif + ifeq ($(uname_R),5.9) + NO_UNSETENV = YesPlease + NO_SETENV = YesPlease + endif INSTALL = ginstall TAR = gtar ALL_CFLAGS += -D__EXTENSIONS__ @@ -448,7 +454,7 @@ LIB_OBJS += $(COMPAT_OBJS) export prefix TAR INSTALL DESTDIR SHELL_PATH template_dir ### Build rules -all: $(ALL_PROGRAMS) git$X gitk +all: $(ALL_PROGRAMS) $(BUILT_INS) git$X gitk all: $(MAKE) -C templates @@ -461,6 +467,9 @@ git$X: git.c common-cmds.h $(GITLIBS) $(ALL_CFLAGS) -o $@ $(filter %.c,$^) \ $(ALL_LDFLAGS) $(LIBS) +$(BUILT_INS): git$X + rm -f $@ && ln git$X $@ + common-cmds.h: Documentation/git-*.txt ./generate-cmdlist.sh > $@ @@ -612,6 +621,7 @@ install: all $(MAKE) -C templates install $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(GIT_PYTHON_DIR_SQ)' $(INSTALL) $(PYMODULES) '$(DESTDIR_SQ)$(GIT_PYTHON_DIR_SQ)' + $(foreach p,$(BUILT_INS), rm -f '$(DESTDIR_SQ)$(bindir_SQ)/$p' && ln '$(DESTDIR_SQ)$(bindir_SQ)/git$X' '$(DESTDIR_SQ)$(bindir_SQ)/$p' ;) install-doc: $(MAKE) -C Documentation install @@ -643,7 +653,7 @@ rpm: dist clean: rm -f *.o mozilla-sha1/*.o arm/*.o ppc/*.o compat/*.o xdiff/*.o \ $(LIB_FILE) $(XDIFF_LIB) - rm -f $(ALL_PROGRAMS) git$X + rm -f $(ALL_PROGRAMS) $(BUILT_INS) git$X rm -f *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags rm -rf $(GIT_TARNAME) rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz @@ -655,3 +665,23 @@ clean: .PHONY: all install clean strip .PHONY: .FORCE-GIT-VERSION-FILE TAGS tags +### Check documentation +# +check-docs:: + @for v in $(ALL_PROGRAMS) $(BUILT_INS) git$X gitk; \ + do \ + case "$$v" in \ + git-annotate | git-blame | \ + git-merge-octopus | git-merge-ours | git-merge-recursive | \ + git-merge-resolve | git-merge-stupid | \ + git-ssh-pull | git-ssh-push ) continue ;; \ + esac ; \ + test -f "Documentation/$$v.txt" || \ + echo "no doc: $$v"; \ + grep -q "^gitlink:$$v\[[0-9]\]::" Documentation/git.txt || \ + case "$$v" in \ + git) ;; \ + *) echo "no link: $$v";; \ + esac ; \ + done | sort +