Repeat the change made in r1577223, this time also tested on Linux.

Add libintl linker flags to SVN_INTL_LIBS on *nix builds.
Fixes linker flags recorded in libsvn_subr's pkg-config file
which never mentioned -lintl even if required.

* Makefile.in: Define SVN_INTL_LIBS.

* configure.ac: Set SVN_INTL_LIBS to the linker flags required
   to link to libintl and export the value of SVN_INTL_LIBS
   to the Makefile.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581882 13f79535-47bb-0310-9956-ffa450edef68
Simply APR memory pool handling in svnserve.  Allocate all connection_t
objects from the application's main pool instead of given them independent
root pools.  Since we (potentially) release connections in background
threads, the applications's root pool must be thread-safe.

* subversion/svnserve/svnserve.c
  (accept_connection): Allocate the new connection in a sub-pool of the
                       pool passed in - just following our standard pool
                       usage pattern.
  (close_connection): Pool destruction now uses standard code as well.
  (sub_main): We don't need the socket_pools anymore.  Update call to
              above sub-function.
  (main): Make sure the application's root pool is thread-safe.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581906 13f79535-47bb-0310-9956-ffa450edef68
Follow-up to r1581906: 

* subversion/svnserve/server.h
  (connection_t): Remove unused struct member.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581912 13f79535-47bb-0310-9956-ffa450edef68
Simplify svnserve object pool usage:  Since we can't reuse open
repository instances ATM, drop the repository pool.  Instead make
the repository an object with connection lifetime (still created
lazily).

* subversion/svnserve/server.h
  (serve_params_t): Replace repos pool with the config hash that
                    we will need to open any repos directly.

* subversion/svnserve/svnserve.c
  (sub_main): FS_CONFIG is now part of the PARAMS struct and we
              don't have a REPOS_POOL anymore.

* subversion/svnserve/serve.c
  (reset_repos): We don't temporarily release repositories anymore,
                 thus we can drop this pool cleanup callback.
  (find_repos): Replace the REPOS_POOL with a FS_CONFIG hash such
                that we may call svn_repos_open2() directly.  Also,
                all return objects have the same lifetime now, hence
                only one pool is required.
  (construct_server_baton): Update caller. Be sure to give repository-
                            related objects the same lifetime as the
                            connection.
  (reopen_repos): No longer used.
  (serve_interruptable): No re-initialization of connections required
                         anymore.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581923 13f79535-47bb-0310-9956-ffa450edef68
Remove svn_repos__repos_pool_t private API and implementation.
Should we need something similar in the future, it's just a few LOC to add.

* subversion/include/private/svn_repos_private.h
  (svn_repos__repos_pool_t,
   svn_repos__repos_pool_create,
   svn_repos__repos_pool_get): Remove API.

* subversion/libsvn_repos/repos_pool.c
  (): Remove this file.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581940 13f79535-47bb-0310-9956-ffa450edef68
Documentation update for multiple path lock/unlock.

* subversion/include/svn_fs.h
  (struct svn_fs_lock_target_t, struct svn_fs_lock_result_t): Add @since.

* subversion/include/svn_repos.h
  (svn_repos_fs_unlock2, svn_repos_fs_lock): Adjust documentation.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581956 13f79535-47bb-0310-9956-ffa450edef68
Use an svn_boolean_t argument type for a mod_dav_svn internal
api argument instead of an int with values 0 and 1.

No functional changes.

* subversion/mod_dav_svn/authz.c
  (dav_svn__allow_read): Update caller.

* subversion/mod_dav_svn/dav_svn.h
  (dav_svn__build_uri): Use boolean argument type.

* subversion/mod_dav_svn/liveprops.c
  (insert_prop_internal): Update caller.

* subversion/mod_dav_svn/merge.c
  (send_response,
   dav_svn__merge_response): Update caller.

* subversion/mod_dav_svn/reports/update.c
  (send_vsn_url,
   add_helper): Update caller.

* subversion/mod_dav_svn/repos.c
  (prep_version): Update caller.

* subversion/mod_dav_svn/util.c
  (dav_svn__build_uri): Update argument type.

* subversion/mod_dav_svn/version.c
  (get_option,
   dav_svn__checkin): Update caller.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1581984 13f79535-47bb-0310-9956-ffa450edef68
Following up on r1557207, properly handle <S:fetch-props /> requests from
servers in the ra-serf transition based xml parser.

This resolves a regression of the trunk code against Subversion <= 1.8 when
talking to Subversion 1.6 or earlier repositories in non bulk mode.

Most likely this resolves issue #4486.

The easiest way to reproduce a hard failure I could find was
$ svn co http://svn.webdav.org/repos/projects/neon/trunk neon \
      --config-option servers:global:http-bulk-updates=false

(Neon is hosted by a Subversion 1.3 mod_dav_svn)

* subversion/libsvn_ra_serf/update.c
  (report_state_e): Add fetch props, and document a few other states that may
    be seen with older repositories.
  (update_ttable): Add a few missing states.
  (update_opened): Handle fetch-props.
  (update_closed): Add commented handlers for 3 special properties.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582023 13f79535-47bb-0310-9956-ffa450edef68
Following up on r1557207 and r1582023, explicitly handle incomming
last_change_* values from the main update request even when not in
send-all mode.

This resolves an assertion that is reproducable by

$ svn co http://svn.webdav.org/repos/projects/neon/trunk neon -r 0 \
      --config-option servers:global:http-bulk-updates=false

* subversion/libsvn_ra_serf/update.c
  (report_state_e): Enable the special property values added
    in r1582023.
  (update_ttable): Enable entry prop transitions.
  (update_closed): Directly forward these properties to the file/directory.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582047 13f79535-47bb-0310-9956-ffa450edef68
Simplify svn_object_pool__t code:  Support shared objects only and use
standard APR memory pool handling.

We simply provide ref-counted objects allocated through from a sub-pool
of some user-provided memory pool.  References returned will no longer
survive the cleanup of that user-provided container pool.  Unused objects
may still be kept but the specifics are now an implementation detail.

* subversion/include/private/svn_object_pool.h
  (svn_object_pool__create): Non-sharable objects are no longer supported
                             and caching policies are hidden now.
  (svn_object_pool__pool): Replaced by ...
  (svn_object_pool__new_wrapper_pool): ... this one; directly returning a
                                       new sub-pool that may be used to
                                       hold a new object instance.
  (svn_object_pool__count): Update docstring.

* subversion/libsvn_subr/object_pool.c
  (object_ref_t): Since all objects can be shared, there is no need to
                  chain multiple instances.
  (svn_object_pool__t): We only keep two atomic counters for bookkeeping.
                        There is only a standard pool now and no user-
                        defined caching parameters.
  (destroy_object_pool): Drop as no specific destruction code is needed.
  (object_pool_cleanup): Do standard cleanup now and only verify correct
                         reference lifetimes.
  (root_object_pool_cleanup): No longer needed with standard pool handling.
  (remove_unused_objects): Update removal logic.  Also, we don't need to
                           the APR hash as it's implementation ensures that
                           adding & removing entries does not make memory
                           consumption to go up.
  (exit_on_error): No longer needed with standard pool cleanup.
  (object_ref_cleanup): Re-implement.  Still keep the actual object around
                        but notify the container that there are unused
                        objects that can be cleaned up at its discretion.
  (add_object_ref): Update only the counters that we still have.
  (insert): Adapt to simplified model and keep it consistent even in case
            of an error.  Implement caching / lazy object cleanup here.
  (svn_object_pool__create): Update to simplified data model and standard
                             memory pool usage.
  (svn_object_pool__pool): Replace by ... 
  (svn_object_pool__new_wrapper_pool): ... this.
  (svn_object_pool__count): Adapt to struct changes.

* subversion/include/private/svn_repos_private.h
  (svn_repos__config_pool_create,
   svn_repos__config_pool_get,
   svn_repos__authz_pool_create,
   svn_repos__authz_pool_get): Update docstrings to reflect the changed
                               object / pool lifetime restrictions.

* subversion/libsvn_repos/authz_pool.c
  (svn_repos__authz_pool_create): Adapt to changed API and put the container
                                  into the POOL provided by the user.
  (svn_repos__authz_pool_get): Adapt to changed API.

* subversion/libsvn_repos/config_pool.c
  (auto_parse): Ditto
  (svn_repos__config_pool_create): Same.  Also, put the container into the
                                   POOL provided by the user.

* subversion/tests/libsvn_repos/repos-test.c
  (test_config_pool): References must not live longer than the container
                      anymore.  Thus, remove this part of the test case.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582117 13f79535-47bb-0310-9956-ffa450edef68
Add several svn_error_trace() wrappings in libsvn_ra_svn to improver error
traces while debugging in maintainer mode.

* subversion/libsvn_ra_svn/client.c
  (svn_ra_svn__auth_response,
   ra_svn_get_locations,
   ra_svn_replay,
   ra_svn_replay_range,
   ra_svn_get_deleted_rev):

* subversion/libsvn_ra_svn/cram.c
  (fail):

* subversion/libsvn_ra_svn/cyrus_auth.c
  (sasl_data_available_cb,
   svn_ra_svn__do_cyrus_auth):

* subversion/libsvn_ra_svn/marshal.c
  (svn_ra_svn__read_cmd_response):

* subversion/libsvn_ra_svn/streams.c
  (svn_ra_svn__stream_write): Add svn_error_trace().


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582229 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_subr/stream.c
  (data_available_handler_apr): Following up on r1568551, remove an invalid
    pool clear. This pool is not a scratch pool, but the pool containing
    the stream and in some cases more!


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582230 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_subr/stream.c
  (data_available_handler_apr): Following up on r1582230, add comment.


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

* subversion/include/svn_fs.h
  (svn_fs_lock2, svn_fs_unlock2): Document result_pool and scratch_pool
    consistently.

* subversion/include/svn_repos.h
  (svn_repos_fs_lock2, svn_repos_fs_unlock2): Same.

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582241 13f79535-47bb-0310-9956-ffa450edef68
Change svn-sparc-solaris bot to out-of-tree build with a tmpfs, and
switch to svnserveautocheck.

* tools/buildbot/slaves/svn-sparc-solaris/svncleanup.sh: Unmount tmpfs.

* tools/buildbot/slaves/svn-sparc-solaris/svnbuild.sh: Mount tmpfs, change
   to out-of-tree.

* tools/buildbot/slaves/svn-sparc-solaris/svncheck.sh: Switch to
   svnserveautocheck.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582246 13f79535-47bb-0310-9956-ffa450edef68
* tools/buildbot/slaves/svn-sparc-solaris/svncheck.sh: cd to build dir,
   check tests.log exists.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582256 13f79535-47bb-0310-9956-ffa450edef68
* tools/buildbot/slaves/svn-sparc-solaris/svnbuild.sh: Add -v to compiler
   flags to enable more compiler warnings.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582257 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_ra_serf/update.c
  (update_opened,
   update_closed): Following up on r1582023, and r1582047 add comments
     explaining the reason this code is here.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582274 13f79535-47bb-0310-9956-ffa450edef68
* tools/buildbot/slaves/svn-sparc-solaris/svncleanup.sh: cd to build dir.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1582278 13f79535-47bb-0310-9956-ffa450edef68
* tools/buildbot/slaves/svn-sparc-solaris/svncheck.sh: Correct the
   test that checks tests.log exists.


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