Merge branch 'jn/svn-fe'
authorJunio C Hamano <gitster@pobox.com>
Tue, 7 Feb 2012 20:56:38 +0000 (12:56 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 7 Feb 2012 20:56:38 +0000 (12:56 -0800)
* jn/svn-fe: (36 commits)
vcs-svn: suppress a -Wtype-limits warning
vcs-svn: allow import of > 4GiB files
vcs-svn: rename check_overflow arguments for clarity
vcs-svn/svndiff.c: squelch false "unused" warning from gcc
vcs-svn: reset first_commit_done in fast_export_init
vcs-svn: do not initialize report_buffer twice
vcs-svn: avoid hangs from corrupt deltas
vcs-svn: guard against overflow when computing preimage length
vcs-svn: cap number of bytes read from sliding view
test-svn-fe: split off "test-svn-fe -d" into a separate function
vcs-svn: implement text-delta handling
vcs-svn: let deltas use data from preimage
vcs-svn: let deltas use data from postimage
vcs-svn: verify that deltas consume all inline data
vcs-svn: implement copyfrom_data delta instruction
vcs-svn: read instructions from deltas
vcs-svn: read inline data from deltas
vcs-svn: read the preimage when applying deltas
vcs-svn: parse svndiff0 window header
vcs-svn: skeleton of an svn delta parser
...

1  2 
Makefile
diff --combined Makefile
index c457c34fe95b537a3db07c95787659c6258b908d,e58cb649e17c02e321ad8df7ba0a4356722fdffa..87fb30aedbdbbb0f403cbc985889cb079a29c7b4
+++ b/Makefile
@@@ -47,9 -47,6 +47,9 @@@ all:
  # A translated Git requires GNU libintl or another gettext implementation,
  # plus libintl-perl at runtime.
  #
 +# Define USE_GETTEXT_SCHEME and set it to 'fallthrough', if you don't trust
 +# the installed gettext translation of the shell scripts output.
 +#
  # Define HAVE_LIBCHARSET_H if you haven't set NO_GETTEXT and you can't
  # trust the langinfo.h's nl_langinfo(CODESET) function to return the
  # current character set. GNU and Solaris have a nl_langinfo(CODESET),
@@@ -377,6 -374,11 +377,11 @@@ BUILTIN_OBJS 
  BUILT_INS =
  COMPAT_CFLAGS =
  COMPAT_OBJS =
+ XDIFF_H =
+ XDIFF_OBJS =
+ VCSSVN_H =
+ VCSSVN_OBJS =
+ VCSSVN_TEST_OBJS =
  EXTRA_CPPFLAGS =
  LIB_H =
  LIB_OBJS =
@@@ -469,16 -471,13 +474,13 @@@ TEST_PROGRAMS_NEED_X += test-index-vers
  TEST_PROGRAMS_NEED_X += test-line-buffer
  TEST_PROGRAMS_NEED_X += test-match-trees
  TEST_PROGRAMS_NEED_X += test-mktemp
- TEST_PROGRAMS_NEED_X += test-obj-pool
  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-string-pool
  TEST_PROGRAMS_NEED_X += test-subprocess
  TEST_PROGRAMS_NEED_X += test-svn-fe
- TEST_PROGRAMS_NEED_X += test-treap
  
  TEST_PROGRAMS = $(patsubst %,%$X,$(TEST_PROGRAMS_NEED_X))
  
@@@ -1524,7 -1523,6 +1526,7 @@@ ifdef GETTEXT_POISO
  endif
  ifdef NO_GETTEXT
        BASIC_CFLAGS += -DNO_GETTEXT
 +      USE_GETTEXT_SCHEME ?= fallthrough
  endif
  ifdef NO_STRCASESTR
        COMPAT_CFLAGS += -DNO_STRCASESTR
@@@ -1891,7 -1889,6 +1893,7 @@@ sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|
      -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
      -e 's|@@LOCALEDIR@@|$(localedir_SQ)|g' \
      -e 's/@@NO_CURL@@/$(NO_CURL)/g' \
 +    -e 's/@@USE_GETTEXT_SCHEME@@/$(USE_GETTEXT_SCHEME)/g' \
      -e $(BROKEN_PATH_FIX) \
      $@.sh >$@+
  endef
@@@ -1993,12 -1990,24 +1995,24 @@@ GIT_OBJS := $(LIB_OBJS) $(BUILTIN_OBJS
  ifndef NO_CURL
        GIT_OBJS += http.o http-walker.o remote-curl.o
  endif
- XDIFF_OBJS = xdiff/xdiffi.o xdiff/xprepare.o xdiff/xutils.o xdiff/xemit.o \
-       xdiff/xmerge.o xdiff/xpatience.o xdiff/xhistogram.o
- VCSSVN_OBJS = vcs-svn/string_pool.o vcs-svn/line_buffer.o \
-       vcs-svn/repo_tree.o vcs-svn/fast_export.o vcs-svn/svndump.o
- VCSSVN_TEST_OBJS = test-obj-pool.o test-string-pool.o \
-       test-line-buffer.o test-treap.o
+ XDIFF_OBJS += xdiff/xdiffi.o
+ XDIFF_OBJS += xdiff/xprepare.o
+ XDIFF_OBJS += xdiff/xutils.o
+ XDIFF_OBJS += xdiff/xemit.o
+ XDIFF_OBJS += xdiff/xmerge.o
+ XDIFF_OBJS += xdiff/xpatience.o
+ XDIFF_OBJS += xdiff/xhistogram.o
+ VCSSVN_OBJS += vcs-svn/line_buffer.o
+ VCSSVN_OBJS += vcs-svn/sliding_window.o
+ VCSSVN_OBJS += vcs-svn/repo_tree.o
+ VCSSVN_OBJS += vcs-svn/fast_export.o
+ VCSSVN_OBJS += vcs-svn/svndiff.o
+ VCSSVN_OBJS += vcs-svn/svndump.o
+ VCSSVN_TEST_OBJS += test-line-buffer.o
  OBJECTS := $(GIT_OBJS) $(XDIFF_OBJS) $(VCSSVN_OBJS)
  
  dep_files := $(foreach f,$(OBJECTS),$(dir $f).depend/$(notdir $f).d)
@@@ -2117,16 -2126,25 +2131,25 @@@ connect.o transport.o url.o http-backen
  http-fetch.o http-walker.o remote-curl.o transport.o walker.o: walker.h
  http.o http-walker.o http-push.o http-fetch.o remote-curl.o: http.h url.h
  
- xdiff-interface.o $(XDIFF_OBJS): \
-       xdiff/xinclude.h xdiff/xmacros.h xdiff/xdiff.h xdiff/xtypes.h \
-       xdiff/xutils.h xdiff/xprepare.h xdiff/xdiffi.h xdiff/xemit.h
+ XDIFF_H += xdiff/xinclude.h
+ XDIFF_H += xdiff/xmacros.h
+ XDIFF_H += xdiff/xdiff.h
+ XDIFF_H += xdiff/xtypes.h
+ XDIFF_H += xdiff/xutils.h
+ XDIFF_H += xdiff/xprepare.h
+ XDIFF_H += xdiff/xdiffi.h
+ XDIFF_H += xdiff/xemit.h
+ xdiff-interface.o $(XDIFF_OBJS): $(XDIFF_H)
  
- $(VCSSVN_OBJS) $(VCSSVN_TEST_OBJS): $(LIB_H) \
-       vcs-svn/obj_pool.h vcs-svn/trp.h vcs-svn/string_pool.h \
-       vcs-svn/line_buffer.h vcs-svn/repo_tree.h vcs-svn/fast_export.h \
-       vcs-svn/svndump.h
+ VCSSVN_H += vcs-svn/line_buffer.h
+ VCSSVN_H += vcs-svn/sliding_window.h
+ VCSSVN_H += vcs-svn/repo_tree.h
+ VCSSVN_H += vcs-svn/fast_export.h
+ VCSSVN_H += vcs-svn/svndiff.h
+ VCSSVN_H += vcs-svn/svndump.h
  
- test-svn-fe.o: vcs-svn/svndump.h
+ $(VCSSVN_OBJS) $(VCSSVN_TEST_OBJS): $(LIB_H) $(VCSSVN_H)
  endif
  
  exec_cmd.sp exec_cmd.s exec_cmd.o: EXTRA_CPPFLAGS = \
@@@ -2269,7 -2287,7 +2292,7 @@@ cscope
  ### Detect prefix changes
  TRACK_CFLAGS = $(CC):$(subst ','\'',$(ALL_CFLAGS)):\
               $(bindir_SQ):$(gitexecdir_SQ):$(template_dir_SQ):$(prefix_SQ):\
 -             $(localedir_SQ)
 +             $(localedir_SQ):$(USE_GETTEXT_SCHEME)
  
  GIT-CFLAGS: FORCE
        @FLAGS='$(TRACK_CFLAGS)'; \
@@@ -2354,8 -2372,6 +2377,6 @@@ test-line-buffer$X: vcs-svn/lib.
  
  test-parse-options$X: parse-options.o parse-options-cb.o
  
- test-string-pool$X: vcs-svn/lib.a
  test-svn-fe$X: vcs-svn/lib.a
  
  .PRECIOUS: $(TEST_OBJS)