Add the gtest_addition branch which will be used for testing the
Subversion C++ bindings.

git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/gtest_addition@1452117 13f79535-47bb-0310-9956-ffa450edef68
Add the optional dependency Googletest (aka Gtest) to be compiled by
the build system.
 
* trunk/get-deps.sh (gtest): change gtest dir to libgtest and
  add user information.

* trunk/build/generator/gen_base.py (TargetLinked.add_dependencies): 
  Add .cc extension.

* trunk/gen-make.py (_usage_exit): add gtest flag help info. 

* trunk/Makefile.in(): various entries for gtest flags
 
* trunk/build.conf (install): Add Gtest target.

* trunk/configure.ac (): Add AC_ARG_ENABLE command hook and test
  (build rules): add gtest build rules

* INSTALL (Dependency Overview): add entry for Gtest
  (Dependencies in Detail): add entry for Gtest

* doc/programmer/gtest-guide.txt(): Documentation for Subversion's
  installation of Gtest.

* subversion/bindings/cxxhl/gtests/GtestAcceptance.cpp(): Sample test
  for gtest.

* subversion/bindings/cxxhl/gtests/Makefile(): Makefile for sample
  test for gtest.
  

  


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/gtest_addition@1452120 13f79535-47bb-0310-9956-ffa450edef68
Properly format the error message during unintended switches.

* subversion/libsvn_client/cmdline/switch.c
  (switch_internal): Use local style for paths when formatting the "no common
    ancestry" error message.

Patch by: Evgeny Kotkov <evgeny.kotkov{_AT_}visualsvn.com>

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500074 13f79535-47bb-0310-9956-ffa450edef68
Followup to r1499034:

* build/ac-macros/sqlite.m4
  (SVN_DOWNLOAD_SQLITE): Don't print the same path twice.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500175 13f79535-47bb-0310-9956-ffa450edef68
Fix a thinko in the Ev2 shims that caused the driver to prepend a "/"
to copyfrom paths without considering that they might be URLs already.

The bug was triggered by running the tests for the Ev2 commit editor
in JavaHL via http://.

* subversion/libsvn_delta/compat.c (apply_change):
   Try to make an FS path (starting with "/") from the copyfrom path only
   when the editor baton does not contain a proper reposiutory root URL.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500226 13f79535-47bb-0310-9956-ffa450edef68
Fixed the JavaHL RA implementation, infrastructure and tests so that they
all pass via ra_serf and ra_svn (on a local connection with trunk servers).

[in subversion/bindings/javahl/native]
* JNIUtil.cpp (JNIUtil::makeJByteArray): Check for null svn_string_t.

* CommitEditor.h
  (CommitEditor::provide_base_cb, CommitEditor::provide_props_cb): New methods.
* CommitEditor.cpp (open_callback_session): Extracted code for opening the
   secondary session that suuports the Ev2 commit editor callbakcs from
   CommitEditor::get_copysrc_kind_cb.
  (CommitEditor::provide_base_cb, CommitEditor::provide_props_cb): Implement.
  (CommitEditor::CommitEditor): Use the new callbacks.

[in subversion/bindings/javahl/tests/org/apache/subversion/javahl]
* BasicTests.java (BasicTests.CountingProgressListener): New private class;
   hoisted from BasicTests.testDataTransferProgressReport to avoid
   throwing exceptions through native callbacks, which clutter up the
   output during the test run.
  (BasicTests.testDataTransferProgressReport): Use the new callback class.

* SVNRemoteTests.java
  (SVNRemoteTests.testChangeRevpropAtomic): Check list of allowed error codes.
  (SVNRemoteTests.testGetFile, SVNRemoteTests.testGetDirectory): Expect wcprops.
  (SVNRemoteTests.testEditorSetFileContents): New test case; covers a code path
   that had not been tested before.
  (SVNRemoteTests.testEditorSetFileProps): Replaced by testEditorSetFileContents.
  (SVNRemoteTests.RemoteStatusReceiver): Make StatInfo array sortable.
  (SVNRemoteTests.testPropchangeStatus,
   SVNRemoteTests.testDeletedStatus): Sort status entries before checking
   results because ra_serf sends them in the opposite order than ra_local.
* SVNTests.java (SVNTests.prompt): Return true; we do have credentials info.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500255 13f79535-47bb-0310-9956-ffa450edef68
* tools/dist/backport.pl
  (prompt): Don't try to automagically add whitespace for the caller.
  (handle_entry): Specify the whitespace at the caller, instead.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500295 13f79535-47bb-0310-9956-ffa450edef68
backport.pl: warn of local mods to STATUS in interactive mode.  This matters
for the "Enter votes" workflow.

* tools/dist/backport.pl
  (prompt): Grow dontprint parameter.
  (main): Warn of local STATUS mods in interactive mode.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500296 13f79535-47bb-0310-9956-ffa450edef68
Fix a bug in JavaHL where property values were not correctly terminated,
which caused random test failures.

* subversion/bindings/javahl/native/RemoteSession.cpp
  (byte_array_to_svn_string): Use svn_string_ncreate to extract the
   property value from the Java byte array.
  (RemoteSession::changeRevisionProperty): Update implementation.

* subversion/bindings/javahl/native/RevpropTable.cpp
  (RevpropTable::hash): Don't make assumptions about property values;
   use svn_string_ncreate to extract the value from the Java byte array.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500334 13f79535-47bb-0310-9956-ffa450edef68
Rename the RevpropTable class in the JavaHL native implementation, since it's
no longer used only for revision properties.

[in subversion/bindings/javahl/native]
* PropertyTable.h: Renamed from RevpropTable.h.
   Rename all instances of RevpropTable to PropertyTable.
* PropertyTable.cpp: Renamed from RevpropTable.cpp.
   Rename all instances of RevpropTable to PropertyTable.
* CommitEditor.cpp, SVNClient.h, SVNClient.cpp,
  org_apache_subversion_javahl_SVNClient.cpp:
   Rename all instances of RevpropTable to PropertyTable.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500338 13f79535-47bb-0310-9956-ffa450edef68
backport.pl: Fix voting/approving

* tools/dist/backport.pl
  (vote): Add an empty line where needed.
  (handle_entry): Fix argv parsing.  (It worked before...)

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500453 13f79535-47bb-0310-9956-ffa450edef68
* tools/dist/backport.pl: Rename a variable for clarity.  No functional change.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500462 13f79535-47bb-0310-9956-ffa450edef68
backport.pl: Teach it how to skip entries it prompted for in a previous run.
Currently only used in interactive mode.

* tools/dist/backport.pl
  (Digest): New use.
  ($STATEFILE): New global.
  (parse_entry): Store a digest of the entry in the entry.
  (vote): Change signature, set state if the vote or approval went through.
  (read_state, write_state, digest_string): New subroutines.
  (exit_stage_left): Change signature, call write_state.
  (handle_entry): Change signature, skip entries in state, add entries to state
    on 'N' (but not on unrecognized keypresses such as 'x').
  (main): Read state, pass it in calls.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500485 13f79535-47bb-0310-9956-ffa450edef68
* tools/dist/backport.pl
  (handle_entry): Print summary of skipped entries.
    Also tweak separator lines to make "Skipped" notifications stand out a bit.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500491 13f79535-47bb-0310-9956-ffa450edef68
* tools/dist/backport.pl
  (usage, handle_entry): Document r1500485.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500499 13f79535-47bb-0310-9956-ffa450edef68
Use local style for paths when formatting error messages from the
'svn diff --old A --new B' commands.  Follow-up to r1310291.

* subversion/libsvn_client/diff_local.c
  (svn_client__arbitrary_nodes_diff): Use local style for paths when formatting
    the "not the same node kind" and "not a file or directory" messages.

Patch by: Evgeny Kotkov <evgeny.kotkov{_AT_}visualsvn.com>


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500680 13f79535-47bb-0310-9956-ffa450edef68
* subversion/svnauth/svnauth.c
  (subcommand_help): Use local style for paths in error messages.

Found by: danielsh


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500683 13f79535-47bb-0310-9956-ffa450edef68
Rename --enable-banging-head-against-wall to --enable-bdb6. I still like the
former name for this option, however using a clear name will help packagers
and people trying to read packaging scripts, and that's more important than
making a joke.

* build/ac-macros/berkeley-db.m4
  configure.ac: Rename --enable-banging-head-against-wall to --enable-bdb6.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500695 13f79535-47bb-0310-9956-ffa450edef68
* tools/dist/backport.pl
  (vote): Don't make spurious whitespace changes.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500699 13f79535-47bb-0310-9956-ffa450edef68
Fix use of wrong pointer type in svnraisetreeconflict.

* tools/dev/svnraisetreeconflict/svnraisetreeconflict.c
  (raise_tree_conflict): Use svn_wc_conflict_description3_t, as now
   expected by svn_wc__add_tree_conflict().


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1500700 13f79535-47bb-0310-9956-ffa450edef68