X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Makefile;h=ccb896e812f1f7958e94006323a98cc98a572110;hb=8cf828b43c3c1ee6d85622d155a1b0639842f66a;hp=30460560247f9e210b41207434793ce6b29b83b2;hpb=63be37b06fa873348c3de0becea201796bc88610;p=git.git diff --git a/Makefile b/Makefile index 30460560..ccb896e8 100644 --- a/Makefile +++ b/Makefile @@ -53,6 +53,8 @@ all: # Define NO_SOCKADDR_STORAGE if your platform does not have struct # sockaddr_storage. # +# Define NO_ICONV if your libc does not properly support iconv. +# # Define COLLISION_CHECK below if you believe that SHA1's # 1461501637330902918203684832716283019655932542976 hashes do not give you # sufficient guarantee that no collisions between objects will ever happen. @@ -67,7 +69,7 @@ all: # change being considered an inode change from the update-cache perspective. GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE - @sh ./GIT-VERSION-GEN + @$(SHELL_PATH) ./GIT-VERSION-GEN -include GIT-VERSION-FILE # CFLAGS and LDFLAGS are for the users to override from the command line. @@ -107,7 +109,7 @@ SCRIPT_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 \ - git-resolve.sh git-revert.sh git-sh-setup.sh git-status.sh \ + git-resolve.sh git-revert.sh git-sh-setup.sh \ git-tag.sh git-verify-tag.sh git-whatchanged.sh \ git-applymbox.sh git-applypatch.sh git-am.sh \ git-merge.sh git-merge-stupid.sh git-merge-octopus.sh \ @@ -116,7 +118,7 @@ SCRIPT_SH = \ SCRIPT_PERL = \ git-archimport.perl git-cvsimport.perl git-relink.perl \ - git-shortlog.perl git-fmt-merge-msg.perl \ + git-shortlog.perl git-fmt-merge-msg.perl git-rerere.perl \ git-svnimport.perl git-mv.perl git-cvsexportcommit.perl SCRIPT_PYTHON = \ @@ -125,7 +127,7 @@ SCRIPT_PYTHON = \ SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ $(patsubst %.perl,%,$(SCRIPT_PERL)) \ $(patsubst %.py,%,$(SCRIPT_PYTHON)) \ - git-cherry-pick + git-cherry-pick git-show git-status # The ones that do not have to link with lcrypto nor lz. SIMPLE_PROGRAMS = \ @@ -151,7 +153,7 @@ PROGRAMS = \ git-upload-pack$X git-verify-pack$X git-write-tree$X \ git-update-ref$X git-symbolic-ref$X git-check-ref-format$X \ git-name-rev$X git-pack-redundant$X git-repo-config$X git-var$X \ - git-describe$X + git-describe$X git-merge-tree$X # what 'all' will build and 'install' will install, in gitexecdir ALL_PROGRAMS = $(PROGRAMS) $(SIMPLE_PROGRAMS) $(SCRIPTS) @@ -182,7 +184,7 @@ LIB_H = \ DIFF_OBJS = \ diff.o diffcore-break.o diffcore-order.o diffcore-pathspec.o \ - diffcore-pickaxe.o diffcore-rename.o tree-diff.o + diffcore-pickaxe.o diffcore-rename.o tree-diff.o combine-diff.o LIB_OBJS = \ blob.o commit.o connect.o count-delta.o csum-file.o \ @@ -232,6 +234,7 @@ ifeq ($(uname_S),SunOS) SHELL_PATH = /bin/bash NO_STRCASESTR = YesPlease ifeq ($(uname_R),5.8) + NO_UNSETENV = YesPlease NO_SETENV = YesPlease endif INSTALL = ginstall @@ -250,6 +253,11 @@ ifeq ($(uname_O),Cygwin) NO_IPV6 = YesPlease X = .exe endif +ifeq ($(uname_S),FreeBSD) + NEEDS_LIBICONV = YesPlease + ALL_CFLAGS += -I/usr/local/include + ALL_LDFLAGS += -L/usr/local/lib +endif ifeq ($(uname_S),OpenBSD) NO_STRCASESTR = YesPlease NEEDS_LIBICONV = YesPlease @@ -355,6 +363,10 @@ ifdef NO_SETENV COMPAT_CFLAGS += -DNO_SETENV COMPAT_OBJS += compat/setenv.o endif +ifdef NO_SETENV + COMPAT_CFLAGS += -DNO_UNSETENV + COMPAT_OBJS += compat/unsetenv.o +endif ifdef NO_MMAP COMPAT_CFLAGS += -DNO_MMAP COMPAT_OBJS += compat/mmap.o @@ -370,6 +382,10 @@ else endif endif +ifdef NO_ICONV + ALL_CFLAGS += -DNO_ICONV +endif + ifdef PPC_SHA1 SHA1_HEADER = "ppc/sha1.h" LIB_OBJS += ppc/sha1.o ppc/sha1ppc.o @@ -409,6 +425,7 @@ $(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh rm -f $@ sed -e '1s|#!.*/sh|#!$(call shq,$(SHELL_PATH))|' \ -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \ + -e 's/@@NO_CURL@@/$(NO_CURL)/g' \ $@.sh >$@ chmod +x $@ @@ -430,6 +447,12 @@ $(patsubst %.py,%,$(SCRIPT_PYTHON)) : % : %.py git-cherry-pick: git-revert cp $< $@ +git-show: git-whatchanged + cp $< $@ + +git-status: git-commit + cp $< $@ + # These can record GIT_VERSION git$X git.spec \ $(patsubst %.sh,%,$(SCRIPT_SH)) \