static apr_pool_t * init(const char *application) { apr_allocator_t *allocator; apr_pool_t *pool; svn_error_t *err; const svn_version_checklist_t checklist[] = { {"svn_client", svn_client_version}, {"svn_subr", svn_subr_version}, {"svn_ra", svn_ra_version}, {NULL, NULL} }; SVN_VERSION_DEFINE(my_version); if (svn_cmdline_init(application, stderr) || apr_allocator_create(&allocator)) exit(EXIT_FAILURE); err = svn_ver_check_list(&my_version, checklist); if (err) handle_error(err, NULL); apr_allocator_max_free_set(allocator, SVN_ALLOCATOR_RECOMMENDED_MAX_FREE); pool = svn_pool_create_ex(NULL, allocator); apr_allocator_owner_set(allocator, pool); return pool; }
/* Version compatibility check */ static svn_error_t * check_lib_versions(void) { static const svn_version_checklist_t checklist[] = { { "svn_subr", svn_subr_version }, { "svn_wc", svn_wc_version }, { NULL, NULL } }; SVN_VERSION_DEFINE(my_version); return svn_ver_check_list2(&my_version, checklist, svn_ver_equal); }
/* Version compatibility check */ static svn_error_t * check_lib_versions(void) { static const svn_version_checklist_t checklist[] = { /* ### check FSFS version */ { "svn_subr", svn_subr_version }, { "svn_fs", svn_fs_version }, { NULL, NULL } }; SVN_VERSION_DEFINE(my_version); return svn_error_trace(svn_ver_check_list(&my_version, checklist)); }
/* Version compatibility check */ static svn_error_t * check_lib_versions (void) { static const svn_version_checklist_t checklist[] = { { "svn_subr", svn_subr_version }, { "svn_repos", svn_repos_version }, { "svn_fs", svn_fs_version }, { "svn_delta", svn_delta_version }, { NULL, NULL } }; SVN_VERSION_DEFINE (my_version); return svn_ver_check_list (&my_version, checklist); }