subversion.patch 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. Index: Makefile.in
  2. --- Makefile.in.orig 2008-08-26 19:27:56 +0200
  3. +++ Makefile.in 2009-01-25 14:10:31 +0100
  4. @@ -156,7 +156,7 @@
  5. LT_COMPILE = $(LIBTOOL) $(LTFLAGS) --mode=compile $(COMPILE)
  6. # special compilation for files destined for mod_dav_svn
  7. -COMPILE_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS) $(APACHE_INCLUDES) $(INCLUDES) -o $@ -c
  8. +COMPILE_APACHE_MOD = @APXS@ -c -S LIBEXECDIR="$(APACHE_LIBEXECDIR)" $(CPPFLAGS) $(APACHE_INCLUDES) $(INCLUDES) -o $@
  9. # special compilation for files destined for libsvn_swig_* (e.g. swigutil_*.c)
  10. COMPILE_SWIG_PY = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_PY_COMPILE) $(CPPFLAGS) -DSWIGPYTHON $(CFLAGS) $(SWIG_PY_INCLUDES) $(INCLUDES) -o $@ -c
  11. @@ -171,7 +171,7 @@
  12. LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir)
  13. # special link rule for mod_dav_svn
  14. -LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS)
  15. +LINK_APACHE_MOD = @APXS@ -c -S LIBEXECDIR="$(APACHE_LIBEXECDIR)" $(LDFLAGS) $(APACHE_LDFLAGS)
  16. # Compilation of SWIG-generated C source code
  17. COMPILE_PY_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_PY_COMPILE) $(CPPFLAGS) $(SWIG_PY_INCLUDES) -prefer-pic -c -o $@
  18. @@ -639,7 +639,7 @@
  19. ./config.status subversion/bindings/swig/perl/native/Makefile.PL
  20. $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
  21. - cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL
  22. + cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL INSTALLDIRS=vendor
  23. swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \
  24. $(SWIG_PL_DIR)/native/Makefile
  25. Index: apr-util/crypto/getuuid.c
  26. --- apr-util/crypto/getuuid.c.orig 2008-12-19 20:16:33 +0100
  27. +++ apr-util/crypto/getuuid.c 2009-01-25 14:10:31 +0100
  28. @@ -131,7 +131,7 @@
  29. /* crap. this isn't crypto quality, but it will be Good Enough */
  30. - get_system_time(&time_now);
  31. + time_now = apr_time_now();
  32. srand((unsigned int)(((time_now >> 32) ^ time_now) & 0xffffffff));
  33. return rand() & 0x0FFFF;
  34. Index: build-outputs.mk
  35. --- build-outputs.mk.orig 2008-12-19 20:16:59 +0100
  36. +++ build-outputs.mk 2009-01-25 14:10:31 +0100
  37. @@ -330,10 +330,10 @@
  38. cd subversion/mod_authz_svn && $(LINK_APACHE_MOD) -o mod_authz_svn.la $(LT_NO_UNDEFINED) $(mod_authz_svn_OBJECTS) ../../subversion/libsvn_repos/libsvn_repos-1.la ../../subversion/libsvn_subr/libsvn_subr-1.la $(LIBS)
  39. mod_dav_svn_PATH = subversion/mod_dav_svn
  40. -mod_dav_svn_DEPS = subversion/mod_dav_svn/activity.lo subversion/mod_dav_svn/authz.lo subversion/mod_dav_svn/deadprops.lo subversion/mod_dav_svn/liveprops.lo subversion/mod_dav_svn/lock.lo subversion/mod_dav_svn/merge.lo subversion/mod_dav_svn/mirror.lo subversion/mod_dav_svn/mod_dav_svn.lo subversion/mod_dav_svn/reports/dated-rev.lo subversion/mod_dav_svn/reports/file-revs.lo subversion/mod_dav_svn/reports/get-location-segments.lo subversion/mod_dav_svn/reports/get-locations.lo subversion/mod_dav_svn/reports/get-locks.lo subversion/mod_dav_svn/reports/log.lo subversion/mod_dav_svn/reports/mergeinfo.lo subversion/mod_dav_svn/reports/replay.lo subversion/mod_dav_svn/reports/update.lo subversion/mod_dav_svn/repos.lo subversion/mod_dav_svn/util.lo subversion/mod_dav_svn/version.lo subversion/libsvn_repos/libsvn_repos-1.la subversion/libsvn_fs/libsvn_fs-1.la subversion/libsvn_delta/libsvn_delta-1.la subversion/libsvn_subr/libsvn_subr-1.la
  41. +mod_dav_svn_DEPS = subversion/mod_dav_svn/activity.lo subversion/mod_dav_svn/authz.lo subversion/mod_dav_svn/deadprops.lo subversion/mod_dav_svn/liveprops.lo subversion/mod_dav_svn/lock.lo subversion/mod_dav_svn/merge.lo subversion/mod_dav_svn/mirror.lo subversion/mod_dav_svn/mod_dav_svn.lo subversion/mod_dav_svn/reports/dated-rev.lo subversion/mod_dav_svn/reports/file-revs.lo subversion/mod_dav_svn/reports/get-location-segments.lo subversion/mod_dav_svn/reports/get-locations.lo subversion/mod_dav_svn/reports/get-locks.lo subversion/mod_dav_svn/reports/log.lo subversion/mod_dav_svn/reports/mergeinfo.lo subversion/mod_dav_svn/reports/replay.lo subversion/mod_dav_svn/reports/update.lo subversion/mod_dav_svn/repos.lo subversion/mod_dav_svn/util.lo subversion/mod_dav_svn/version.lo subversion/libsvn_repos/libsvn_repos-1.la subversion/libsvn_fs/libsvn_fs-1.la subversion/libsvn_fs_base/libsvn_fs_base-1.la subversion/libsvn_fs_fs/libsvn_fs_fs-1.la subversion/libsvn_fs_util/libsvn_fs_util-1.la subversion/libsvn_delta/libsvn_delta-1.la subversion/libsvn_subr/libsvn_subr-1.la
  42. mod_dav_svn_OBJECTS = activity.lo authz.lo deadprops.lo liveprops.lo lock.lo merge.lo mirror.lo mod_dav_svn.lo reports/dated-rev.lo reports/file-revs.lo reports/get-location-segments.lo reports/get-locations.lo reports/get-locks.lo reports/log.lo reports/mergeinfo.lo reports/replay.lo reports/update.lo repos.lo util.lo version.lo
  43. subversion/mod_dav_svn/mod_dav_svn.la: $(mod_dav_svn_DEPS)
  44. - cd subversion/mod_dav_svn && $(LINK_APACHE_MOD) -o mod_dav_svn.la $(LT_NO_UNDEFINED) $(mod_dav_svn_OBJECTS) ../../subversion/libsvn_repos/libsvn_repos-1.la ../../subversion/libsvn_fs/libsvn_fs-1.la ../../subversion/libsvn_delta/libsvn_delta-1.la ../../subversion/libsvn_subr/libsvn_subr-1.la $(LIBS)
  45. + cd subversion/mod_dav_svn && $(LINK_APACHE_MOD) -o mod_dav_svn.la $(LT_NO_UNDEFINED) $(mod_dav_svn_OBJECTS) ../../subversion/libsvn_repos/libsvn_repos-1.la ../../subversion/libsvn_fs/libsvn_fs-1.la ../../subversion/libsvn_fs_base/libsvn_fs_base-1.la ../../subversion/libsvn_fs_fs/libsvn_fs_fs-1.la ../../subversion/libsvn_fs_util/libsvn_fs_util-1.la ../../subversion/libsvn_delta/libsvn_delta-1.la ../../subversion/libsvn_subr/libsvn_subr-1.la $(LIBS)
  46. opt_test_PATH = subversion/tests/libsvn_subr
  47. opt_test_DEPS = subversion/tests/libsvn_subr/opt-test.o subversion/tests/libsvn_test-1.la subversion/libsvn_subr/libsvn_subr-1.la
  48. Index: configure
  49. --- configure.orig 2008-12-19 20:17:01 +0100
  50. +++ configure 2009-01-25 14:10:31 +0100
  51. @@ -5092,6 +5092,11 @@
  52. ac_sub_cache_file="$ac_dots$cache_file" ;;
  53. esac
  54. + args="$args --prefix=$prefix/libexec/subversion/neon"
  55. + if [ ".$with_ssl" = .yes ]; then
  56. + args="$args --with-ssl"
  57. + fi
  58. +
  59. # The eval makes quoting arguments work.
  60. if eval $SHELL $ac_abs_srcdir/configure $ac_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir $args
  61. then :
  62. Index: neon/src/ne_auth.c
  63. --- neon/src/ne_auth.c.orig 2008-12-19 20:16:34 +0100
  64. +++ neon/src/ne_auth.c 2009-01-25 14:10:31 +0100
  65. @@ -645,6 +645,7 @@
  66. if (ne_uri_parse(token, &rel) == 0) {
  67. /* Resolve relative to the Request-URI. */
  68. + base.path = "/";
  69. ne_uri_resolve(&base, &rel, &absolute);
  70. base.path = absolute.path;
  71. Index: subversion/bindings/swig/perl/native/Makefile.PL.in
  72. --- subversion/bindings/swig/perl/native/Makefile.PL.in.orig 2008-03-22 00:44:46 +0100
  73. +++ subversion/bindings/swig/perl/native/Makefile.PL.in 2009-01-25 14:10:31 +0100
  74. @@ -25,17 +25,13 @@
  75. fs_base
  76. fs_util
  77. fs_fs/));
  78. -my @ldmodules = map {"-lsvn_$_-1"} (@modules, qw/diff subr/);
  79. +my @ldmodules = map {"-lsvn_$_-1"} (@modules, qw/diff subr delta client subr ra_local ra_neon ra_svn fs_base fs_fs fs_util wc/);
  80. my $apr_shlib_path_var = '@SVN_APR_SHLIB_PATH_VAR@';
  81. my $cppflags = '@CPPFLAGS@';
  82. my $apr_cflags = '@SVN_APR_INCLUDES@';
  83. my $apu_cflags = '@SVN_APRUTIL_INCLUDES@';
  84. -
  85. -# According to the log of r7937, the flags guarded by the conditional break
  86. -# the build on FreeBSD if not conditionalized.
  87. -my $apr_ldflags = '@SVN_APR_EXPORT_LIBS@'
  88. - if $^O eq 'darwin' or $^O eq 'cygwin';
  89. +my $apr_ldflags = '@SVN_APRUTIL_EXPORT_LIBS@ @SVN_APR_EXPORT_LIBS@ -lneon -lssl -lcrypto -lxml2 -liconv -lz -lm';
  90. chomp $apr_shlib_path_var;
  91. @@ -43,14 +39,16 @@
  92. ABSTRACT => 'Perl bindings for Subversion',
  93. DEFINE => $cppflags,
  94. INC => join(' ',$apr_cflags, $apu_cflags,
  95. + " -I$top_builddir/neon/src",
  96. " -I$swig_srcdir/perl/libsvn_swig_perl",
  97. " -I$svnlib_srcdir/include",
  98. " -I$svnlib_builddir",
  99. " -I$swig_srcdir -g"),
  100. OBJECT => q/$(O_FILES)/,
  101. - LIBS => [join(' ', $apr_ldflags,
  102. + LIBS => [join(' ', "-L@l_prefix@/lib",
  103. + "-L$top_builddir/neon/src/.libs",
  104. (map {$_ = abs_path($_); "-L$_"} @ldpaths),
  105. - @ldmodules, '-lsvn_swig_perl-1',
  106. + '-lsvn_swig_perl-1', @ldmodules, @ldmodules, @ldmodules, @ldmodules, @ldmodules, @ldmodules, '-lsvn_swig_perl-1', $apr_ldflags,
  107. `$swig -perl -ldflags`)],
  108. test => { TESTS => "$swig_srcdir/perl/native/t/*.t" }
  109. );
  110. @@ -79,6 +77,7 @@
  111. MAKEFILE=> "Makefile.$_",
  112. NAME => "SVN::_".perlish($_),
  113. C => ["svn_$_.c"],
  114. + OBJECT => "svn_$_.o core.o"
  115. );
  116. }
  117. Index: subversion/libsvn_ra_svn/cyrus_auth.c
  118. --- subversion/libsvn_ra_svn/cyrus_auth.c.orig 2008-12-19 15:51:10 +0100
  119. +++ subversion/libsvn_ra_svn/cyrus_auth.c 2009-01-25 14:10:31 +0100
  120. @@ -165,10 +165,13 @@
  121. static svn_error_t *sasl_init_cb(apr_pool_t *pool)
  122. {
  123. - if (svn_ra_svn__sasl_common_init(pool) != APR_SUCCESS
  124. - || sasl_client_init(NULL) != SASL_OK)
  125. + int result;
  126. + if (svn_ra_svn__sasl_common_init(pool) != APR_SUCCESS)
  127. + return svn_error_create(SVN_ERR_RA_NOT_AUTHORIZED, NULL,
  128. + _("Could not initialize the SASL library (APR failure)"));
  129. + if ((result = sasl_client_init(NULL)) != SASL_OK)
  130. return svn_error_create(SVN_ERR_RA_NOT_AUTHORIZED, NULL,
  131. - _("Could not initialize the SASL library"));
  132. + sasl_errstring(result, NULL, NULL));
  133. return SVN_NO_ERROR;
  134. }
  135. Index: subversion/mod_dav_svn/repos.c
  136. --- subversion/mod_dav_svn/repos.c.orig 2008-04-04 11:13:09 +0200
  137. +++ subversion/mod_dav_svn/repos.c 2009-01-25 14:10:31 +0100
  138. @@ -2882,6 +2882,7 @@
  139. if (gen_html)
  140. ap_fputs(output, bb,
  141. " </ul>\n <hr noshade><em>Powered by "
  142. + "<a href=\"http://www.openpkg.org/\">OpenPKG</a> "
  143. "<a href=\"http://subversion.tigris.org/\">Subversion</a> "
  144. "version " SVN_VERSION "."
  145. "</em>\n</body></html>");
  146. Index: subversion/svnserve/cyrus_auth.c
  147. --- subversion/svnserve/cyrus_auth.c.orig 2008-03-07 05:09:46 +0100
  148. +++ subversion/svnserve/cyrus_auth.c 2009-01-25 14:10:31 +0100
  149. @@ -101,7 +101,7 @@
  150. status = svn_ra_svn__sasl_common_init(pool);
  151. if (status)
  152. return svn_error_wrap_apr(status,
  153. - _("Could not initialize the SASL library"));
  154. + _("Could not initialize the SASL library (svnserve: APR failure)"));
  155. /* The second parameter tells SASL to look for a configuration file
  156. named subversion.conf. */
  157. @@ -111,7 +111,7 @@
  158. svn_error_t *err = svn_error_create(SVN_ERR_RA_NOT_AUTHORIZED, NULL,
  159. sasl_errstring(result, NULL, NULL));
  160. return svn_error_quick_wrap(err,
  161. - _("Could not initialize the SASL library"));
  162. + _("Could not initialize the SASL library (svnserve)"));
  163. }
  164. return SVN_NO_ERROR;
  165. }
  166. Index: subversion/svnserve/main.c
  167. --- subversion/svnserve/main.c.orig 2008-03-01 04:15:19 +0100
  168. +++ subversion/svnserve/main.c 2009-01-25 14:10:31 +0100
  169. @@ -51,6 +51,10 @@
  170. #include "server.h"
  171. +#ifdef SVN_HAVE_SASL
  172. +#include <syslog.h>
  173. +#endif
  174. +
  175. /* The strategy for handling incoming connections. Some of these may be
  176. unavailable due to platform limitations. */
  177. enum connection_handling_mode {
  178. @@ -345,6 +349,7 @@
  179. #ifdef SVN_HAVE_SASL
  180. SVN_INT_ERR(cyrus_init(pool));
  181. + openlog("svnserve", LOG_NDELAY|LOG_PID, LOG_DAEMON);
  182. #endif
  183. /* Check library versions */