Merge branch 'maint'
authorJunio C Hamano <gitster@pobox.com>
Sun, 17 Mar 2013 07:11:11 +0000 (00:11 -0700)
committerJunio C Hamano <gitster@pobox.com>
Sun, 17 Mar 2013 07:11:11 +0000 (00:11 -0700)
* maint:
rev-parse: clarify documentation of $name@{upstream} syntax
sha1_name: pass object name length to diagnose_invalid_sha1_path()
Makefile: keep LIB_H entries together and sorted

1  2 
Documentation/revisions.txt
Makefile
index 678d1756a55f82637450951a09eaeb36917082fd,013f0de79886d256866018159bd3faa177d0003a..314e25da7344dda459ca5b3292aaaabdfc0d6495
@@@ -23,7 -23,7 +23,7 @@@ blobs contained in a commit
    A symbolic ref name.  E.g. 'master' typically means the commit
    object referenced by 'refs/heads/master'.  If you
    happen to have both 'heads/master' and 'tags/master', you can
 -  explicitly say 'heads/master' to tell git which one you mean.
 +  explicitly say 'heads/master' to tell Git which one you mean.
    When ambiguous, a '<refname>' is disambiguated by taking the
    first match in the following rules:
  
@@@ -88,10 -88,10 +88,10 @@@ some output processing may assume ref n
    The construct '@\{-<n>\}' means the <n>th branch checked out
    before the current one.
  
- '<refname>@\{upstream\}', e.g. 'master@\{upstream\}', '@\{u\}'::
-   The suffix '@\{upstream\}' to a ref (short form '<refname>@\{u\}') refers to
-   the branch the ref is set to build on top of.  A missing ref defaults
-   to the current branch.
+ '<branchname>@\{upstream\}', e.g. 'master@\{upstream\}', '@\{u\}'::
+   The suffix '@\{upstream\}' to a branchname (short form '<branchname>@\{u\}')
+   refers to the branch that the branch specified by branchname is set to build on
+   top of.  A missing branchname defaults to the current one.
  
  '<rev>{caret}', e.g. 'HEAD{caret}, v1.5.1{caret}0'::
    A suffix '{caret}' to a revision parameter means the first parent of
diff --combined Makefile
index 26d333275517943c629e9600525f292d4c91d32a,5be54584b71280b910ee9994a5eafff3824f26c3..598d6313da96f8ba8f76fbd982f491077b6d5d97
+++ b/Makefile
@@@ -43,9 -43,6 +43,9 @@@ all:
  # Define EXPATDIR=/foo/bar if your expat header and library files are in
  # /foo/bar/include and /foo/bar/lib directories.
  #
 +# Define EXPAT_NEEDS_XMLPARSE_H if you have an old version of expat (e.g.,
 +# 1.1 or 1.2) that provides xmlparse.h instead of expat.h.
 +#
  # Define NO_GETTEXT if you don't want Git output to be translated.
  # A translated Git requires GNU libintl or another gettext implementation,
  # plus libintl-perl at runtime.
  # Define NO_D_TYPE_IN_DIRENT if your platform defines DT_UNKNOWN but lacks
  # d_type in struct dirent (Cygwin 1.5, fixed in Cygwin 1.7).
  #
 +# Define HAVE_STRINGS_H if you have strings.h and need it for strcasecmp.
 +#
  # Define NO_STRCASESTR if you don't have strcasestr.
  #
  # Define NO_MEMMEM if you don't have memmem.
  #
 +# Define NO_GETPAGESIZE if you don't have getpagesize.
 +#
  # Define NO_STRLCPY if you don't have strlcpy.
  #
  # Define NO_STRTOUMAX if you don't have both strtoimax and strtoumax in the
  #
  # Define NO_MKSTEMPS if you don't have mkstemps in the C library.
  #
 -# Define NO_STRTOK_R if you don't have strtok_r in the C library.
 -#
  # Define NO_FNMATCH if you don't have fnmatch in the C library.
  #
  # Define NO_FNMATCH_CASEFOLD if your fnmatch function doesn't have the
  # FNM_CASEFOLD GNU extension.
  #
 +# Define USE_WILDMATCH if you want to use Git's wildmatch
 +# implementation as fnmatch
 +#
  # Define NO_GECOS_IN_PWENT if you don't have pw_gecos in struct passwd
  # in the C library.
  #
  # Define NO_POLL if you do not have or don't want to use poll().
  # This also implies NO_SYS_POLL_H.
  #
 +# Define NEEDS_SYS_PARAM_H if you need to include sys/param.h to compile,
 +# *PLEASE* REPORT to git@vger.kernel.org if your platform needs this;
 +# we want to know more about the issue.
 +#
  # Define NO_PTHREADS if you do not have or do not want to use Pthreads.
  #
  # Define NO_PREAD if you have a problem with pread() system call (e.g.
  # apostrophes to be ASCII so that cut&pasting examples to the shell
  # will work.
  #
 +# Define PERL_PATH to the path of your Perl binary (usually /usr/bin/perl).
 +#
  # Define NO_PERL_MAKEMAKER if you cannot use Makefiles generated by perl's
  # MakeMaker (e.g. using ActiveState under Cygwin).
  #
  # Define NO_PERL if you do not want Perl scripts or libraries at all.
  #
 +# Define PYTHON_PATH to the path of your Python binary (often /usr/bin/python
 +# but /usr/bin/python2.7 on some platforms).
 +#
  # Define NO_PYTHON if you do not want Python scripts or libraries at all.
  #
  # Define NO_TCLTK if you do not want Tcl/Tk GUI.
@@@ -347,6 -330,19 +347,6 @@@ GIT-VERSION-FILE: FORC
        @$(SHELL_PATH) ./GIT-VERSION-GEN
  -include GIT-VERSION-FILE
  
 -uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
 -uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
 -uname_O := $(shell sh -c 'uname -o 2>/dev/null || echo not')
 -uname_R := $(shell sh -c 'uname -r 2>/dev/null || echo not')
 -uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not')
 -uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not')
 -
 -ifdef MSVC
 -      # avoid the MingW and Cygwin configuration sections
 -      uname_S := Windows
 -      uname_O := Windows
 -endif
 -
  # CFLAGS and LDFLAGS are for the users to override from the command line.
  
  CFLAGS = -g -O2 -Wall
@@@ -478,41 -474,12 +478,41 @@@ SCRIPT_PERL += git-relink.per
  SCRIPT_PERL += git-send-email.perl
  SCRIPT_PERL += git-svn.perl
  
 -SCRIPT_PYTHON += git-remote-testgit.py
 +SCRIPT_PYTHON += git-remote-testpy.py
  SCRIPT_PYTHON += git-p4.py
  
 -SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \
 -        $(patsubst %.perl,%,$(SCRIPT_PERL)) \
 -        $(patsubst %.py,%,$(SCRIPT_PYTHON)) \
 +# Generated files for scripts
 +SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH))
 +SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL))
 +SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON))
 +
 +# Individual rules to allow e.g.
 +# "make -C ../.. SCRIPT_PERL=contrib/foo/bar.perl build-perl-script"
 +# from subdirectories like contrib/*/
 +.PHONY: build-perl-script build-sh-script build-python-script
 +build-perl-script: $(SCRIPT_PERL_GEN)
 +build-sh-script: $(SCRIPT_SH_GEN)
 +build-python-script: $(SCRIPT_PYTHON_GEN)
 +
 +.PHONY: install-perl-script install-sh-script install-python-script
 +install-sh-script: $(SCRIPT_SH_GEN)
 +      $(INSTALL) $(SCRIPT_SH_GEN) '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
 +install-perl-script: $(SCRIPT_PERL_GEN)
 +      $(INSTALL) $(SCRIPT_PERL_GEN) '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
 +install-python-script: $(SCRIPT_PYTHON_GEN)
 +      $(INSTALL) $(SCRIPT_PYTHON_GEN) '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
 +
 +.PHONY: clean-perl-script clean-sh-script clean-python-script
 +clean-sh-script:
 +      $(RM) $(SCRIPT_SH_GEN)
 +clean-perl-script:
 +      $(RM) $(SCRIPT_PERL_GEN)
 +clean-python-script:
 +      $(RM) $(SCRIPT_PYTHON_GEN)
 +
 +SCRIPTS = $(SCRIPT_SH_GEN) \
 +        $(SCRIPT_PERL_GEN) \
 +        $(SCRIPT_PYTHON_GEN) \
          git-instaweb
  
  ETAGS_TARGET = TAGS
@@@ -561,7 -528,6 +561,7 @@@ TEST_PROGRAMS_NEED_X += test-sigchai
  TEST_PROGRAMS_NEED_X += test-string-list
  TEST_PROGRAMS_NEED_X += test-subprocess
  TEST_PROGRAMS_NEED_X += test-svn-fe
 +TEST_PROGRAMS_NEED_X += test-wildmatch
  
  TEST_PROGRAMS = $(patsubst %,%$X,$(TEST_PROGRAMS_NEED_X))
  
@@@ -617,22 -583,6 +617,6 @@@ LIB_FILE = libgit.
  XDIFF_LIB = xdiff/lib.a
  VCSSVN_LIB = vcs-svn/lib.a
  
- LIB_H += xdiff/xinclude.h
- LIB_H += xdiff/xmacros.h
- LIB_H += xdiff/xdiff.h
- LIB_H += xdiff/xtypes.h
- LIB_H += xdiff/xutils.h
- LIB_H += xdiff/xprepare.h
- LIB_H += xdiff/xdiffi.h
- LIB_H += xdiff/xemit.h
- LIB_H += vcs-svn/line_buffer.h
- LIB_H += vcs-svn/sliding_window.h
- LIB_H += vcs-svn/repo_tree.h
- LIB_H += vcs-svn/fast_export.h
- LIB_H += vcs-svn/svndiff.h
- LIB_H += vcs-svn/svndump.h
  GENERATED_H += common-cmds.h
  
  LIB_H += advice.h
@@@ -699,7 -649,6 +683,7 @@@ LIB_H += pack-revindex.
  LIB_H += pack.h
  LIB_H += parse-options.h
  LIB_H += patch-ids.h
 +LIB_H += pathspec.h
  LIB_H += pkt-line.h
  LIB_H += progress.h
  LIB_H += prompt.h
@@@ -734,11 -683,23 +718,24 @@@ LIB_H += url.
  LIB_H += userdiff.h
  LIB_H += utf8.h
  LIB_H += varint.h
+ LIB_H += vcs-svn/fast_export.h
+ LIB_H += vcs-svn/line_buffer.h
+ LIB_H += vcs-svn/repo_tree.h
+ LIB_H += vcs-svn/sliding_window.h
+ LIB_H += vcs-svn/svndiff.h
+ LIB_H += vcs-svn/svndump.h
  LIB_H += walker.h
 +LIB_H += wildmatch.h
  LIB_H += wt-status.h
  LIB_H += xdiff-interface.h
  LIB_H += xdiff/xdiff.h
+ LIB_H += xdiff/xdiffi.h
+ LIB_H += xdiff/xemit.h
+ LIB_H += xdiff/xinclude.h
+ LIB_H += xdiff/xmacros.h
+ LIB_H += xdiff/xprepare.h
+ LIB_H += xdiff/xtypes.h
+ LIB_H += xdiff/xutils.h
  
  LIB_OBJS += abspath.o
  LIB_OBJS += advice.o
@@@ -823,7 -784,6 +820,7 @@@ LIB_OBJS += parse-options-cb.
  LIB_OBJS += patch-delta.o
  LIB_OBJS += patch-ids.o
  LIB_OBJS += path.o
 +LIB_OBJS += pathspec.o
  LIB_OBJS += pkt-line.o
  LIB_OBJS += preload-index.o
  LIB_OBJS += pretty.o
@@@ -871,7 -831,6 +868,7 @@@ LIB_OBJS += utf8.
  LIB_OBJS += varint.o
  LIB_OBJS += version.o
  LIB_OBJS += walker.o
 +LIB_OBJS += wildmatch.o
  LIB_OBJS += wrapper.o
  LIB_OBJS += write_or_die.o
  LIB_OBJS += ws.o
@@@ -889,7 -848,6 +886,7 @@@ BUILTIN_OBJS += builtin/branch.
  BUILTIN_OBJS += builtin/bundle.o
  BUILTIN_OBJS += builtin/cat-file.o
  BUILTIN_OBJS += builtin/check-attr.o
 +BUILTIN_OBJS += builtin/check-ignore.o
  BUILTIN_OBJS += builtin/check-ref-format.o
  BUILTIN_OBJS += builtin/checkout-index.o
  BUILTIN_OBJS += builtin/checkout.o
@@@ -980,7 -938,518 +977,7 @@@ EXTLIBS 
  
  GIT_USER_AGENT = git/$(GIT_VERSION)
  
 -#
 -# Platform specific tweaks
 -#
 -
 -# We choose to avoid "if .. else if .. else .. endif endif"
 -# because maintaining the nesting to match is a pain.  If
 -# we had "elif" things would have been much nicer...
 -
 -ifeq ($(uname_M),x86_64)
 -      XDL_FAST_HASH = YesPlease
 -endif
 -ifeq ($(uname_S),OSF1)
 -      # Need this for u_short definitions et al
 -      BASIC_CFLAGS += -D_OSF_SOURCE
 -      SOCKLEN_T = int
 -      NO_STRTOULL = YesPlease
 -      NO_NSEC = YesPlease
 -endif
 -ifeq ($(uname_S),Linux)
 -      NO_STRLCPY = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      HAVE_PATHS_H = YesPlease
 -      LIBC_CONTAINS_LIBINTL = YesPlease
 -      HAVE_DEV_TTY = YesPlease
 -endif
 -ifeq ($(uname_S),GNU/kFreeBSD)
 -      NO_STRLCPY = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      HAVE_PATHS_H = YesPlease
 -      DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
 -      LIBC_CONTAINS_LIBINTL = YesPlease
 -endif
 -ifeq ($(uname_S),UnixWare)
 -      CC = cc
 -      NEEDS_SOCKET = YesPlease
 -      NEEDS_NSL = YesPlease
 -      NEEDS_SSL_WITH_CRYPTO = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      SHELL_PATH = /usr/local/bin/bash
 -      NO_IPV6 = YesPlease
 -      NO_HSTRERROR = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      BASIC_CFLAGS += -Kthread
 -      BASIC_CFLAGS += -I/usr/local/include
 -      BASIC_LDFLAGS += -L/usr/local/lib
 -      INSTALL = ginstall
 -      TAR = gtar
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -endif
 -ifeq ($(uname_S),SCO_SV)
 -      ifeq ($(uname_R),3.2)
 -              CFLAGS = -O2
 -      endif
 -      ifeq ($(uname_R),5)
 -              CC = cc
 -              BASIC_CFLAGS += -Kthread
 -      endif
 -      NEEDS_SOCKET = YesPlease
 -      NEEDS_NSL = YesPlease
 -      NEEDS_SSL_WITH_CRYPTO = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      SHELL_PATH = /usr/bin/bash
 -      NO_IPV6 = YesPlease
 -      NO_HSTRERROR = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      BASIC_CFLAGS += -I/usr/local/include
 -      BASIC_LDFLAGS += -L/usr/local/lib
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      INSTALL = ginstall
 -      TAR = gtar
 -endif
 -ifeq ($(uname_S),Darwin)
 -      NEEDS_CRYPTO_WITH_SSL = YesPlease
 -      NEEDS_SSL_WITH_CRYPTO = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      ifeq ($(shell expr "$(uname_R)" : '[15678]\.'),2)
 -              OLD_ICONV = UnfortunatelyYes
 -      endif
 -      ifeq ($(shell expr "$(uname_R)" : '[15]\.'),2)
 -              NO_STRLCPY = YesPlease
 -      endif
 -      NO_MEMMEM = YesPlease
 -      USE_ST_TIMESPEC = YesPlease
 -      HAVE_DEV_TTY = YesPlease
 -      COMPAT_OBJS += compat/precompose_utf8.o
 -      BASIC_CFLAGS += -DPRECOMPOSE_UNICODE
 -endif
 -ifeq ($(uname_S),SunOS)
 -      NEEDS_SOCKET = YesPlease
 -      NEEDS_NSL = YesPlease
 -      SHELL_PATH = /bin/bash
 -      SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_REGEX = YesPlease
 -      NO_FNMATCH_CASEFOLD = YesPlease
 -      NO_MSGFMT_EXTENDED_OPTIONS = YesPlease
 -      HAVE_DEV_TTY = YesPlease
 -      ifeq ($(uname_R),5.6)
 -              SOCKLEN_T = int
 -              NO_HSTRERROR = YesPlease
 -              NO_IPV6 = YesPlease
 -              NO_SOCKADDR_STORAGE = YesPlease
 -              NO_UNSETENV = YesPlease
 -              NO_SETENV = YesPlease
 -              NO_STRLCPY = YesPlease
 -              NO_STRTOUMAX = YesPlease
 -              GIT_TEST_CMP = cmp
 -      endif
 -      ifeq ($(uname_R),5.7)
 -              NEEDS_RESOLV = YesPlease
 -              NO_IPV6 = YesPlease
 -              NO_SOCKADDR_STORAGE = YesPlease
 -              NO_UNSETENV = YesPlease
 -              NO_SETENV = YesPlease
 -              NO_STRLCPY = YesPlease
 -              NO_STRTOUMAX = YesPlease
 -              GIT_TEST_CMP = cmp
 -      endif
 -      ifeq ($(uname_R),5.8)
 -              NO_UNSETENV = YesPlease
 -              NO_SETENV = YesPlease
 -              NO_STRTOUMAX = YesPlease
 -              GIT_TEST_CMP = cmp
 -      endif
 -      ifeq ($(uname_R),5.9)
 -              NO_UNSETENV = YesPlease
 -              NO_SETENV = YesPlease
 -              NO_STRTOUMAX = YesPlease
 -              GIT_TEST_CMP = cmp
 -      endif
 -      INSTALL = /usr/ucb/install
 -      TAR = gtar
 -      BASIC_CFLAGS += -D__EXTENSIONS__ -D__sun__ -DHAVE_ALLOCA_H
 -endif
 -ifeq ($(uname_O),Cygwin)
 -      ifeq ($(shell expr "$(uname_R)" : '1\.[1-6]\.'),4)
 -              NO_D_TYPE_IN_DIRENT = YesPlease
 -              NO_D_INO_IN_DIRENT = YesPlease
 -              NO_STRCASESTR = YesPlease
 -              NO_MEMMEM = YesPlease
 -              NO_MKSTEMPS = YesPlease
 -              NO_SYMLINK_HEAD = YesPlease
 -              NO_IPV6 = YesPlease
 -              OLD_ICONV = UnfortunatelyYes
 -              CYGWIN_V15_WIN32API = YesPlease
 -      endif
 -      NO_THREAD_SAFE_PREAD = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      NO_FAST_WORKING_DIRECTORY = UnfortunatelyYes
 -      NO_TRUSTABLE_FILEMODE = UnfortunatelyYes
 -      NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
 -      # There are conflicting reports about this.
 -      # On some boxes NO_MMAP is needed, and not so elsewhere.
 -      # Try commenting this out if you suspect MMAP is more efficient
 -      NO_MMAP = YesPlease
 -      X = .exe
 -      COMPAT_OBJS += compat/cygwin.o
 -      UNRELIABLE_FSTAT = UnfortunatelyYes
 -      SPARSE_FLAGS = -isystem /usr/include/w32api -Wno-one-bit-signed-bitfield
 -endif
 -ifeq ($(uname_S),FreeBSD)
 -      NEEDS_LIBICONV = YesPlease
 -      OLD_ICONV = YesPlease
 -      NO_MEMMEM = YesPlease
 -      BASIC_CFLAGS += -I/usr/local/include
 -      BASIC_LDFLAGS += -L/usr/local/lib
 -      DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
 -      USE_ST_TIMESPEC = YesPlease
 -      ifeq ($(shell expr "$(uname_R)" : '4\.'),2)
 -              PTHREAD_LIBS = -pthread
 -              NO_UINTMAX_T = YesPlease
 -              NO_STRTOUMAX = YesPlease
 -      endif
 -      PYTHON_PATH = /usr/local/bin/python
 -      HAVE_PATHS_H = YesPlease
 -endif
 -ifeq ($(uname_S),OpenBSD)
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      USE_ST_TIMESPEC = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      BASIC_CFLAGS += -I/usr/local/include
 -      BASIC_LDFLAGS += -L/usr/local/lib
 -      HAVE_PATHS_H = YesPlease
 -endif
 -ifeq ($(uname_S),NetBSD)
 -      ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2)
 -              NEEDS_LIBICONV = YesPlease
 -      endif
 -      BASIC_CFLAGS += -I/usr/pkg/include
 -      BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib
 -      USE_ST_TIMESPEC = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      HAVE_PATHS_H = YesPlease
 -endif
 -ifeq ($(uname_S),AIX)
 -      DEFAULT_PAGER = more
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_STRLCPY = YesPlease
 -      NO_NSEC = YesPlease
 -      FREAD_READS_DIRECTORIES = UnfortunatelyYes
 -      INTERNAL_QSORT = UnfortunatelyYes
 -      NEEDS_LIBICONV = YesPlease
 -      BASIC_CFLAGS += -D_LARGE_FILES
 -      ifeq ($(shell expr "$(uname_V)" : '[1234]'),1)
 -              NO_PTHREADS = YesPlease
 -      else
 -              PTHREAD_LIBS = -lpthread
 -      endif
 -      ifeq ($(shell expr "$(uname_V).$(uname_R)" : '5\.1'),3)
 -              INLINE = ''
 -      endif
 -      GIT_TEST_CMP = cmp
 -endif
 -ifeq ($(uname_S),GNU)
 -      # GNU/Hurd
 -      NO_STRLCPY = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      HAVE_PATHS_H = YesPlease
 -      LIBC_CONTAINS_LIBINTL = YesPlease
 -endif
 -ifeq ($(uname_S),IRIX)
 -      NO_SETENV = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      # When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
 -      # (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
 -      # git dies with a segmentation fault when trying to access the first
 -      # entry of a reflog.  The conservative choice is made to always set
 -      # NO_MMAP.  If you suspect that your compiler is not affected by this
 -      # issue, comment out the NO_MMAP statement.
 -      NO_MMAP = YesPlease
 -      NO_REGEX = YesPlease
 -      NO_FNMATCH_CASEFOLD = YesPlease
 -      SNPRINTF_RETURNS_BOGUS = YesPlease
 -      SHELL_PATH = /usr/gnu/bin/bash
 -      NEEDS_LIBGEN = YesPlease
 -endif
 -ifeq ($(uname_S),IRIX64)
 -      NO_SETENV = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      # When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
 -      # (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
 -      # git dies with a segmentation fault when trying to access the first
 -      # entry of a reflog.  The conservative choice is made to always set
 -      # NO_MMAP.  If you suspect that your compiler is not affected by this
 -      # issue, comment out the NO_MMAP statement.
 -      NO_MMAP = YesPlease
 -      NO_REGEX = YesPlease
 -      NO_FNMATCH_CASEFOLD = YesPlease
 -      SNPRINTF_RETURNS_BOGUS = YesPlease
 -      SHELL_PATH = /usr/gnu/bin/bash
 -      NEEDS_LIBGEN = YesPlease
 -endif
 -ifeq ($(uname_S),HP-UX)
 -      INLINE = __inline
 -      NO_IPV6 = YesPlease
 -      NO_SETENV = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_STRLCPY = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_HSTRERROR = YesPlease
 -      NO_SYS_SELECT_H = YesPlease
 -      NO_FNMATCH_CASEFOLD = YesPlease
 -      SNPRINTF_RETURNS_BOGUS = YesPlease
 -      NO_NSEC = YesPlease
 -      ifeq ($(uname_R),B.11.00)
 -              NO_INET_NTOP = YesPlease
 -              NO_INET_PTON = YesPlease
 -      endif
 -      ifeq ($(uname_R),B.10.20)
 -              # Override HP-UX 11.x setting:
 -              INLINE =
 -              SOCKLEN_T = size_t
 -              NO_PREAD = YesPlease
 -              NO_INET_NTOP = YesPlease
 -              NO_INET_PTON = YesPlease
 -      endif
 -      GIT_TEST_CMP = cmp
 -endif
 -ifeq ($(uname_S),Windows)
 -      GIT_VERSION := $(GIT_VERSION).MSVC
 -      pathsep = ;
 -      NO_PREAD = YesPlease
 -      NEEDS_CRYPTO_WITH_SSL = YesPlease
 -      NO_LIBGEN_H = YesPlease
 -      NO_POLL = YesPlease
 -      NO_SYMLINK_HEAD = YesPlease
 -      NO_IPV6 = YesPlease
 -      NO_UNIX_SOCKETS = YesPlease
 -      NO_SETENV = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_STRLCPY = YesPlease
 -      NO_STRTOK_R = YesPlease
 -      NO_FNMATCH = YesPlease
 -      NO_MEMMEM = YesPlease
 -      # NEEDS_LIBICONV = YesPlease
 -      NO_ICONV = YesPlease
 -      NO_STRTOUMAX = YesPlease
 -      NO_STRTOULL = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      SNPRINTF_RETURNS_BOGUS = YesPlease
 -      NO_SVN_TESTS = YesPlease
 -      NO_PERL_MAKEMAKER = YesPlease
 -      RUNTIME_PREFIX = YesPlease
 -      NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
 -      NO_NSEC = YesPlease
 -      USE_WIN32_MMAP = YesPlease
 -      # USE_NED_ALLOCATOR = YesPlease
 -      UNRELIABLE_FSTAT = UnfortunatelyYes
 -      OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
 -      NO_REGEX = YesPlease
 -      NO_CURL = YesPlease
 -      NO_PYTHON = YesPlease
 -      BLK_SHA1 = YesPlease
 -      NO_POSIX_GOODIES = UnfortunatelyYes
 -      NATIVE_CRLF = YesPlease
 -      DEFAULT_HELP_FORMAT = html
 -
 -      CC = compat/vcbuild/scripts/clink.pl
 -      AR = compat/vcbuild/scripts/lib.pl
 -      CFLAGS =
 -      BASIC_CFLAGS = -nologo -I. -I../zlib -Icompat/vcbuild -Icompat/vcbuild/include -DWIN32 -D_CONSOLE -DHAVE_STRING_H -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE
 -      COMPAT_OBJS = compat/msvc.o compat/winansi.o \
 -              compat/win32/pthread.o compat/win32/syslog.o \
 -              compat/win32/dirent.o
 -      COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/regex -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
 -      BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
 -      EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
 -      PTHREAD_LIBS =
 -      lib =
 -ifndef DEBUG
 -      BASIC_CFLAGS += -GL -Os -MT
 -      BASIC_LDFLAGS += -LTCG
 -      AR += -LTCG
 -else
 -      BASIC_CFLAGS += -Zi -MTd
 -endif
 -      X = .exe
 -endif
 -ifeq ($(uname_S),Interix)
 -      NO_INITGROUPS = YesPlease
 -      NO_IPV6 = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_STRTOUMAX = YesPlease
 -      NO_NSEC = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      ifeq ($(uname_R),3.5)
 -              NO_INET_NTOP = YesPlease
 -              NO_INET_PTON = YesPlease
 -              NO_SOCKADDR_STORAGE = YesPlease
 -              NO_FNMATCH_CASEFOLD = YesPlease
 -      endif
 -      ifeq ($(uname_R),5.2)
 -              NO_INET_NTOP = YesPlease
 -              NO_INET_PTON = YesPlease
 -              NO_SOCKADDR_STORAGE = YesPlease
 -              NO_FNMATCH_CASEFOLD = YesPlease
 -      endif
 -endif
 -ifeq ($(uname_S),Minix)
 -      NO_IPV6 = YesPlease
 -      NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
 -      NO_NSEC = YesPlease
 -      NEEDS_LIBGEN =
 -      NEEDS_CRYPTO_WITH_SSL = YesPlease
 -      NEEDS_IDN_WITH_CURL = YesPlease
 -      NEEDS_SSL_WITH_CURL = YesPlease
 -      NEEDS_RESOLV =
 -      NO_HSTRERROR = YesPlease
 -      NO_MMAP = YesPlease
 -      NO_CURL =
 -      NO_EXPAT =
 -endif
 -ifeq ($(uname_S),NONSTOP_KERNEL)
 -      # Needs some C99 features, "inline" is just one of them.
 -      # INLINE='' would just replace one set of warnings with another and
 -      # still not compile in c89 mode, due to non-const array initializations.
 -      CC = cc -c99
 -      # Disable all optimization, seems to result in bad code, with -O or -O2
 -      # or even -O1 (default), /usr/local/libexec/git-core/git-pack-objects
 -      # abends on "git push". Needs more investigation.
 -      CFLAGS = -g -O0
 -      # We'd want it to be here.
 -      prefix = /usr/local
 -      # Our's are in ${prefix}/bin (perl might also be in /usr/bin/perl).
 -      PERL_PATH = ${prefix}/bin/perl
 -      PYTHON_PATH = ${prefix}/bin/python
 -
 -      # As detected by './configure'.
 -      # Missdetected, hence commented out, see below.
 -      #NO_CURL = YesPlease
 -      # Added manually, see above.
 -      NEEDS_SSL_WITH_CURL = YesPlease
 -      HAVE_LIBCHARSET_H = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease
 -      NO_SYS_SELECT_H = UnfortunatelyYes
 -      NO_D_TYPE_IN_DIRENT = YesPlease
 -      NO_HSTRERROR = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_FNMATCH_CASEFOLD = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NO_STRLCPY = YesPlease
 -      NO_SETENV = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      # Currently libiconv-1.9.1.
 -      OLD_ICONV = UnfortunatelyYes
 -      NO_REGEX = YesPlease
 -      NO_PTHREADS = UnfortunatelyYes
 -
 -      # Not detected (nor checked for) by './configure'.
 -      # We don't have SA_RESTART on NonStop, unfortunalety.
 -      COMPAT_CFLAGS += -DSA_RESTART=0
 -      # Apparently needed in compat/fnmatch/fnmatch.c.
 -      COMPAT_CFLAGS += -DHAVE_STRING_H=1
 -      NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
 -      NO_NSEC = YesPlease
 -      NO_PREAD = YesPlease
 -      NO_MMAP = YesPlease
 -      NO_POLL = YesPlease
 -      NO_INTPTR_T = UnfortunatelyYes
 -      # Bug report 10-120822-4477 submitted to HP NonStop development.
 -      MKDIR_WO_TRAILING_SLASH = YesPlease
 -      # RFE 10-120912-4693 submitted to HP NonStop development.
 -      NO_SETITIMER = UnfortunatelyYes
 -      SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin
 -      SHELL_PATH = /usr/local/bin/bash
 -      # as of H06.25/J06.14, we might better use this
 -      #SHELL_PATH = /usr/coreutils/bin/bash
 -endif
 -ifneq (,$(findstring MINGW,$(uname_S)))
 -      pathsep = ;
 -      NO_PREAD = YesPlease
 -      NEEDS_CRYPTO_WITH_SSL = YesPlease
 -      NO_LIBGEN_H = YesPlease
 -      NO_POLL = YesPlease
 -      NO_SYMLINK_HEAD = YesPlease
 -      NO_UNIX_SOCKETS = YesPlease
 -      NO_SETENV = YesPlease
 -      NO_UNSETENV = YesPlease
 -      NO_STRCASESTR = YesPlease
 -      NO_STRLCPY = YesPlease
 -      NO_STRTOK_R = YesPlease
 -      NO_FNMATCH = YesPlease
 -      NO_MEMMEM = YesPlease
 -      NEEDS_LIBICONV = YesPlease
 -      OLD_ICONV = YesPlease
 -      NO_STRTOUMAX = YesPlease
 -      NO_MKDTEMP = YesPlease
 -      NO_MKSTEMPS = YesPlease
 -      NO_SVN_TESTS = YesPlease
 -      NO_PERL_MAKEMAKER = YesPlease
 -      RUNTIME_PREFIX = YesPlease
 -      NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
 -      NO_NSEC = YesPlease
 -      USE_WIN32_MMAP = YesPlease
 -      USE_NED_ALLOCATOR = YesPlease
 -      UNRELIABLE_FSTAT = UnfortunatelyYes
 -      OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
 -      NO_REGEX = YesPlease
 -      NO_PYTHON = YesPlease
 -      BLK_SHA1 = YesPlease
 -      ETAGS_TARGET = ETAGS
 -      NO_INET_PTON = YesPlease
 -      NO_INET_NTOP = YesPlease
 -      NO_POSIX_GOODIES = UnfortunatelyYes
 -      COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -DNOGDI -Icompat -Icompat/win32
 -      COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\"
 -      COMPAT_OBJS += compat/mingw.o compat/winansi.o \
 -              compat/win32/pthread.o compat/win32/syslog.o \
 -              compat/win32/dirent.o
 -      EXTLIBS += -lws2_32
 -      PTHREAD_LIBS =
 -      X = .exe
 -      SPARSE_FLAGS = -Wno-one-bit-signed-bitfield
 -ifneq (,$(wildcard ../THIS_IS_MSYSGIT))
 -      htmldir = doc/git/html/
 -      prefix =
 -      INSTALL = /bin/install
 -      EXTLIBS += /mingw/lib/libz.a
 -      NO_R_TO_GCC_LINKER = YesPlease
 -      INTERNAL_QSORT = YesPlease
 -      HAVE_LIBCHARSET_H = YesPlease
 -else
 -      NO_CURL = YesPlease
 -endif
 -endif
 -
 +include config.mak.uname
  -include config.mak.autogen
  -include config.mak
  
@@@ -1119,9 -1588,6 +1116,9 @@@ els
                else
                        EXPAT_LIBEXPAT = -lexpat
                endif
 +              ifdef EXPAT_NEEDS_XMLPARSE_H
 +                      BASIC_CFLAGS += -DEXPAT_NEEDS_XMLPARSE_H
 +              endif
        endif
  endif
  
@@@ -1191,9 -1657,6 +1188,9 @@@ endi
  ifdef NO_D_INO_IN_DIRENT
        BASIC_CFLAGS += -DNO_D_INO_IN_DIRENT
  endif
 +ifdef NO_GECOS_IN_PWENT
 +      BASIC_CFLAGS += -DNO_GECOS_IN_PWENT
 +endif
  ifdef NO_ST_BLOCKS_IN_STRUCT_STAT
        BASIC_CFLAGS += -DNO_ST_BLOCKS_IN_STRUCT_STAT
  endif
@@@ -1247,6 -1710,10 +1244,6 @@@ endi
  ifdef NO_STRTOULL
        COMPAT_CFLAGS += -DNO_STRTOULL
  endif
 -ifdef NO_STRTOK_R
 -      COMPAT_CFLAGS += -DNO_STRTOK_R
 -      COMPAT_OBJS += compat/strtok_r.o
 -endif
  ifdef NO_FNMATCH
        COMPAT_CFLAGS += -Icompat/fnmatch
        COMPAT_CFLAGS += -DNO_FNMATCH
@@@ -1258,9 -1725,6 +1255,9 @@@ ifdef NO_FNMATCH_CASEFOL
        COMPAT_OBJS += compat/fnmatch/fnmatch.o
  endif
  endif
 +ifdef USE_WILDMATCH
 +      COMPAT_CFLAGS += -DUSE_WILDMATCH
 +endif
  ifdef NO_SETENV
        COMPAT_CFLAGS += -DNO_SETENV
        COMPAT_OBJS += compat/setenv.o
@@@ -1286,9 -1750,6 +1283,9 @@@ endi
  ifdef NO_SYS_POLL_H
        BASIC_CFLAGS += -DNO_SYS_POLL_H
  endif
 +ifdef NEEDS_SYS_PARAM_H
 +      BASIC_CFLAGS += -DNEEDS_SYS_PARAM_H
 +endif
  ifdef NO_INTTYPES_H
        BASIC_CFLAGS += -DNO_INTTYPES_H
  endif
@@@ -1400,9 -1861,6 +1397,9 @@@ ifdef NO_MEMME
        COMPAT_CFLAGS += -DNO_MEMMEM
        COMPAT_OBJS += compat/memmem.o
  endif
 +ifdef NO_GETPAGESIZE
 +      COMPAT_CFLAGS += -DNO_GETPAGESIZE
 +endif
  ifdef INTERNAL_QSORT
        COMPAT_CFLAGS += -DINTERNAL_QSORT
        COMPAT_OBJS += compat/qsort.o
@@@ -1428,10 -1886,6 +1425,10 @@@ ifdef HAVE_LIBCHARSET_
        EXTLIBS += $(CHARSET_LIB)
  endif
  
 +ifdef HAVE_STRINGS_H
 +      BASIC_CFLAGS += -DHAVE_STRINGS_H
 +endif
 +
  ifdef HAVE_DEV_TTY
        BASIC_CFLAGS += -DHAVE_DEV_TTY
  endif
@@@ -1731,7 -2185,7 +1728,7 @@@ ende
  GIT-SCRIPT-DEFINES: FORCE
        @FLAGS='$(SCRIPT_DEFINES)'; \
            if test x"$$FLAGS" != x"`cat $@ 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new script parameters"; \
 +              echo >&2 "    * new script parameters"; \
                echo "$$FLAGS" >$@; \
              fi
  
@@@ -2120,7 -2574,7 +2117,7 @@@ TRACK_PREFIX = $(bindir_SQ):$(gitexecdi
  GIT-PREFIX: FORCE
        @FLAGS='$(TRACK_PREFIX)'; \
        if test x"$$FLAGS" != x"`cat GIT-PREFIX 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new prefix flags"; \
 +              echo >&2 "    * new prefix flags"; \
                echo "$$FLAGS" >GIT-PREFIX; \
        fi
  
@@@ -2129,7 -2583,7 +2126,7 @@@ TRACK_CFLAGS = $(CC):$(subst ','\'',$(A
  GIT-CFLAGS: FORCE
        @FLAGS='$(TRACK_CFLAGS)'; \
            if test x"$$FLAGS" != x"`cat GIT-CFLAGS 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new build flags"; \
 +              echo >&2 "    * new build flags"; \
                echo "$$FLAGS" >GIT-CFLAGS; \
              fi
  
@@@ -2138,7 -2592,7 +2135,7 @@@ TRACK_LDFLAGS = $(subst ','\'',$(ALL_LD
  GIT-LDFLAGS: FORCE
        @FLAGS='$(TRACK_LDFLAGS)'; \
            if test x"$$FLAGS" != x"`cat GIT-LDFLAGS 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new link flags"; \
 +              echo >&2 "    * new link flags"; \
                echo "$$FLAGS" >GIT-LDFLAGS; \
              fi
  
@@@ -2180,6 -2634,18 +2177,6 @@@ ifdef GIT_PERF_MAKE_OPT
        @echo GIT_PERF_MAKE_OPTS=\''$(subst ','\'',$(subst ','\'',$(GIT_PERF_MAKE_OPTS)))'\' >>$@
  endif
  
 -### Detect Tck/Tk interpreter path changes
 -ifndef NO_TCLTK
 -TRACK_VARS = $(subst ','\'',-DTCLTK_PATH='$(TCLTK_PATH_SQ)')
 -
 -GIT-GUI-VARS: FORCE
 -      @VARS='$(TRACK_VARS)'; \
 -          if test x"$$VARS" != x"`cat $@ 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new Tcl/Tk interpreter location"; \
 -              echo "$$VARS" >$@; \
 -            fi
 -endif
 -
  ### Detect Python interpreter path changes
  ifndef NO_PYTHON
  TRACK_PYTHON = $(subst ','\'',-DPYTHON_PATH='$(PYTHON_PATH_SQ)')
  GIT-PYTHON-VARS: FORCE
        @VARS='$(TRACK_PYTHON)'; \
            if test x"$$VARS" != x"`cat $@ 2>/dev/null`" ; then \
 -              echo 1>&2 "    * new Python interpreter location"; \
 +              echo >&2 "    * new Python interpreter location"; \
                echo "$$VARS" >$@; \
              fi
  endif
@@@ -2445,7 -2911,8 +2442,7 @@@ clean: profile-clea
                builtin/*.o $(LIB_FILE) $(XDIFF_LIB) $(VCSSVN_LIB)
        $(RM) $(ALL_PROGRAMS) $(SCRIPT_LIB) $(BUILT_INS) git$X
        $(RM) $(TEST_PROGRAMS)
 -      $(RM) -r bin-wrappers
 -      $(RM) -r $(dep_dirs)
 +      $(RM) -r bin-wrappers $(dep_dirs)
        $(RM) -r po/build/
        $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h $(ETAGS_TARGET) tags cscope*
        $(RM) -r $(GIT_TARNAME) .doc-tmp-dir
@@@ -2465,7 -2932,7 +2462,7 @@@ ifndef NO_TCLT
        $(MAKE) -C gitk-git clean
        $(MAKE) -C git-gui clean
  endif
 -      $(RM) GIT-VERSION-FILE GIT-CFLAGS GIT-LDFLAGS GIT-GUI-VARS GIT-BUILD-OPTIONS
 +      $(RM) GIT-VERSION-FILE GIT-CFLAGS GIT-LDFLAGS GIT-BUILD-OPTIONS
        $(RM) GIT-USER-AGENT GIT-PREFIX GIT-SCRIPT-DEFINES GIT-PYTHON-VARS
  
  .PHONY: all install profile-clean clean strip