Source: subversion
Version: 1.6.17dfsg-3
Severity: wishlist
Tags: patch

Hi,

I have a dream.  In order to make it easier to package 1.7.x (see
bug#621692), trunk, and future releases, it would be nice to make the
patches in debian/patches as small modulo backported upstream fixes as
feasible.  As a nice side-effect, that would make it easier for users
of the Debian package to communicate with upstream without causing too
much confusion.

Here is a small patch in that vein.  It was made in three steps:

 1. cherry-pick r1200474 from trunk
 2. remove the build.conf hunk from patches/build-fixes
 3. refresh patches and test with cowbuilder

And in return it improves test coverage, by re-enabling auth-test.
Not a bad trade.

What do you think?
---
 debian/changelog                       |    8 +++++++
 debian/patches/apr-abi                 |    4 +-
 debian/patches/auth-test               |   30 ++++++++++++++++++++++++++++
 debian/patches/build-fixes             |   34 ++++---------------------------
 debian/patches/no-extra-libs-2         |   18 ++++++++--------
 debian/patches/python-builds           |    2 +-
 debian/patches/rpath                   |    8 +++---
 debian/patches/ruby-no-strict-aliasing |    2 +-
 debian/patches/ruby-test-svnserve-race |    2 +-
 debian/patches/series                  |    1 +
 10 files changed, 62 insertions(+), 47 deletions(-)
 create mode 100644 debian/patches/auth-test

diff --git a/debian/changelog b/debian/changelog
index a78e244f..5f86a6e4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+subversion (1.6.17dfsg-3.1) local; urgency=low
+
+  * patches/auth-test: New patch from upstream to make the testsuite
+    use authentication plugins from the build tree.
+  * patches/build-fixes: Re-enable 'auth-test'.
+
+ -- Jonathan Nieder <jrnie...@gmail.com>  Sun, 01 Jan 2012 23:56:48 -0600
+
 subversion (1.6.17dfsg-3) unstable; urgency=medium
 
   * libapache2.preinst: Fix upgrade case from before 1.6.17dfsg-2.
diff --git a/debian/patches/apr-abi b/debian/patches/apr-abi
index fab83a7d..631ad0d5 100644
--- a/debian/patches/apr-abi
+++ b/debian/patches/apr-abi
@@ -9,7 +9,7 @@
 @DPATCH@
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -106,6 +106,7 @@
+@@ -110,6 +110,7 @@
  LTFLAGS = --tag=CC --silent
  LTCXXFLAGS = --tag=CXX --silent
  LT_LDFLAGS = @LT_LDFLAGS@
@@ -17,7 +17,7 @@
  LT_NO_UNDEFINED = @LT_NO_UNDEFINED@
  LT_CXX_LIBADD = @LT_CXX_LIBADD@
  
-@@ -185,8 +186,8 @@
+@@ -189,8 +190,8 @@
  COMPILE_JAVAHL_JAVAH = $(JAVAH)
  
  LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) 
$(LDFLAGS)
diff --git a/debian/patches/auth-test b/debian/patches/auth-test
new file mode 100644
index 00000000..dd5444df
--- /dev/null
+++ b/debian/patches/auth-test
@@ -0,0 +1,30 @@
+r1200474 | philip | 2011-11-10 12:47:13 -0600 (Thu, 10 Nov 2011) | 7 lines
+
+* Makefile.in (check): Set LD_LIBRARY_PATH so the just-built versions
+    of auth plugins are used when running the test suite.  Otherwise,
+    auth-test can easily fail because some auth provider it expects to
+    find is missing.
+
+Patch by: Jonathan Nieder <jrnie...@gmail.com>
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -88,6 +88,10 @@ javahl_javahdir = @libdir@/svn-javahl/in
+ javahl_libdir = @libdir@
+ javahl_test_rootdir=$(abs_builddir)/subversion/bindings/javahl/test-work
+ 
++gnome_auth_dir = $(abs_builddir)/subversion/libsvn_auth_gnome_keyring/.libs
++kwallet_auth_dir = $(abs_builddir)/subversion/libsvn_auth_kwallet/.libs
++auth_plugin_dirs = $(gnome_auth_dir):$(kwallet_auth_dir)
++
+ MSGFMT = @MSGFMT@
+ MSGFMTFLAGS = @MSGFMTFLAGS@
+ MSGMERGE = @MSGMERGE@
+@@ -421,6 +425,7 @@ check: bin $(TEST_DEPS) @BDB_TEST_DEPS@
+         if test "$(PARALLEL)" != ""; then                                  \
+           flags="--parallel $$flags";                                      \
+         fi;                                                                \
++        LD_LIBRARY_PATH='$(auth_plugin_dirs):$(LD_LIBRARY_PATH)'           \
+         $(PYTHON) $(top_srcdir)/build/run_tests.py                         \
+                   --config-file $(top_srcdir)/subversion/tests/tests.conf  \
+                   $$flags                                                  \
diff --git a/debian/patches/build-fixes b/debian/patches/build-fixes
index 17e82eb7..ff2d704f 100644
--- a/debian/patches/build-fixes
+++ b/debian/patches/build-fixes
@@ -22,7 +22,7 @@
                     % " ".join(checkout_locations))
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -249,14 +249,14 @@ INSTALL_EXTRA_SWIG_PY=\
+@@ -253,14 +253,14 @@ INSTALL_EXTRA_SWIG_PY=\
  
  # The path to generated and complementary source files for the SWIG
  # bindings.
@@ -42,7 +42,7 @@
  
  ### Automate JAR creation using Makefile generator's javahl-java.jar
  ### property.  Enhance generator to support JAR installation.
-@@ -537,6 +537,7 @@ doc: doc-misc-docs doc-api doc-javahl
+@@ -542,6 +542,7 @@ doc: doc-misc-docs doc-api doc-javahl
  # Generate API documentation for the C libraries.
  ### This could also generate POD for swig-perl, etc.
  doc-api:
@@ -50,7 +50,7 @@
        ( cd $(top_srcdir) && \
          sed "s,\(OUTPUT_DIRECTORY *= *\),\1$(abs_builddir)/," \
          doc/doxygen.conf | doxygen - )
-@@ -716,8 +717,7 @@ clean-swig-pl:
+@@ -721,8 +722,7 @@ clean-swig-pl:
        fi
        for d in $(SWIG_PL_DIR)/libsvn_swig_perl; \
        do \
@@ -60,7 +60,7 @@
        done
        if [ -f "$(SWIG_PL_DIR)/native/Makefile" ]; then \
          cd $(SWIG_PL_DIR)/native; $(MAKE) clean; \
-@@ -750,7 +750,7 @@ clean-swig-py:
+@@ -755,7 +755,7 @@ clean-swig-py:
        fi
        for d in $(SWIG_PY_DIR) $(SWIG_PY_DIR)/libsvn_swig_py; \
        do \
@@ -69,7 +69,7 @@
        done
        find $(SWIG_PY_SRC_DIR) $(SWIG_PY_DIR) -name "*.pyc" -exec rm {} ';'
  
-@@ -774,8 +774,7 @@ clean-swig-rb:
+@@ -779,8 +779,7 @@ clean-swig-rb:
        fi
        for d in $(SWIG_RB_DIR) $(SWIG_RB_DIR)/libsvn_swig_ruby; \
        do \
@@ -146,27 +146,3 @@
  
  # ==== Print final messages to user ==========================================
  
---- a/build.conf
-+++ b/build.conf
-@@ -648,13 +648,14 @@ libs = libsvn_test libsvn_repos libsvn_f
- # ----------------------------------------------------------------------------
- # Tests for libsvn_subr
- 
--[auth-test]
--description = Test platform-specific auth provider access
--type = exe
--path = subversion/tests/libsvn_subr
--sources = auth-test.c
--install = test
--libs = libsvn_test libsvn_subr
-+# Fails because it assumes gnome-keyring facilities are available at test time
-+#[auth-test]
-+#description = Test platform-specific auth provider access
-+#type = exe
-+#path = subversion/tests/libsvn_subr
-+#sources = auth-test.c
-+#install = test
-+#libs = libsvn_test libsvn_subr
- 
- [cache-test]
- description = Test in-memory cache
diff --git a/debian/patches/no-extra-libs-2 b/debian/patches/no-extra-libs-2
index 8e31db1f..2554f71d 100644
--- a/debian/patches/no-extra-libs-2
+++ b/debian/patches/no-extra-libs-2
@@ -8,7 +8,7 @@
 @DPATCH@
 --- a/build.conf
 +++ b/build.conf
-@@ -149,7 +149,7 @@
+@@ -149,7 +149,7 @@ description = Subversion Client
  type = exe
  path = subversion/svn
  libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff libsvn_subr
@@ -17,7 +17,7 @@
  manpages = subversion/svn/svn.1
  install = bin
  
-@@ -194,7 +194,7 @@
+@@ -194,7 +194,7 @@ msvc-libs = advapi32.lib ws2_32.lib
  description = Subversion repository replicator
  type = exe
  path = subversion/svnsync
@@ -26,7 +26,7 @@
  install = bin
  manpages = subversion/svnsync/svnsync.1
  
-@@ -543,7 +543,7 @@
+@@ -543,7 +543,7 @@ description = Subversion Java HighLevel
  type = lib
  path = subversion/bindings/javahl/native
  libs = libsvn_repos libsvn_client libsvn_wc libsvn_ra libsvn_delta 
libsvn_diff 
@@ -35,7 +35,7 @@
  sources = *.cpp *.c
  add-deps = $(javahl_javah_DEPS) $(javahl_java_DEPS)
  install = javahl-lib
-@@ -905,7 +905,7 @@
+@@ -904,7 +904,7 @@ external-lib = $(SVN_APRUTIL_LIBS)
  
  [apriconv]
  type = lib
@@ -44,7 +44,7 @@
  
  [bdb]
  type = lib
-@@ -1033,14 +1033,14 @@
+@@ -1032,14 +1032,14 @@ type = exe
  path = contrib/client-side/svn-push
  sources = svn-push.c
  install = contrib
@@ -63,7 +63,7 @@
  type = exe
 --- a/subversion/bindings/swig/perl/native/Makefile.PL.in
 +++ b/subversion/bindings/swig/perl/native/Makefile.PL.in
-@@ -25,7 +25,12 @@
+@@ -25,7 +25,12 @@ my @ldpaths = ("$swig_builddir/perl/libs
                                                                        fs_base
                                                                        fs_util
                                                                        
fs_fs/));
@@ -77,7 +77,7 @@
  
  my $apr_shlib_path_var = '@SVN_APR_SHLIB_PATH_VAR@';
  my $cppflags = '@CPPFLAGS@';
-@@ -50,10 +55,6 @@
+@@ -50,10 +55,6 @@ my %config = (
                   " -I$svnlib_builddir",
                   " -I$swig_srcdir -g"),
      OBJECT => q/$(O_FILES)/,
@@ -88,7 +88,7 @@
      test => { TESTS => "$swig_srcdir/perl/native/t/*.t" }
  );
  
-@@ -63,6 +64,7 @@
+@@ -63,6 +64,7 @@ sub perlish {
      $_;
  }
  
@@ -96,7 +96,7 @@
  WriteMakefile(%config, NAME => 'SVN::_Core', C => ['core.c'],
          PM => {map { ("$swig_srcdir/perl/native/$_.pm" =>
                        "\$(INST_LIBDIR)/$_.pm") }
-@@ -77,6 +79,7 @@
+@@ -77,6 +79,7 @@ WriteMakefile(%config, NAME => 'SVN::_Co
         );
  
  for (@modules) {
diff --git a/debian/patches/python-builds b/debian/patches/python-builds
index 252bb1ad..2a7a087f 100644
--- a/debian/patches/python-builds
+++ b/debian/patches/python-builds
@@ -9,7 +9,7 @@
 @DPATCH@
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -121,6 +121,7 @@
+@@ -125,6 +125,7 @@
  APACHE_LDFLAGS = @APACHE_LDFLAGS@
  
  SWIG = @SWIG@
diff --git a/debian/patches/rpath b/debian/patches/rpath
index d50883d7..10fd2057 100644
--- a/debian/patches/rpath
+++ b/debian/patches/rpath
@@ -5,7 +5,7 @@
 @DPATCH@
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -184,8 +184,9 @@
+@@ -188,8 +188,9 @@
  COMPILE_JAVAHL_JAVAC = $(JAVAC) $(JAVAC_FLAGS)
  COMPILE_JAVAHL_JAVAH = $(JAVAH)
  
@@ -16,7 +16,7 @@
  
  # special link rule for mod_dav_svn
  LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) 
$(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module 
$(APACHE_LDFLAGS)
-@@ -678,7 +679,9 @@
+@@ -688,7 +689,9 @@
        ./config.status subversion/bindings/swig/perl/native/Makefile.PL
  
  $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
@@ -25,8 +25,8 @@
 +              $(PERL) Makefile.PL INSTALLDIRS=vendor; \
 +              sed -i -e '/^LD_RUN_PATH/s/^/#/' Makefile Makefile.[a-z]*
  
- swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \
-   $(SWIG_PL_DIR)/native/Makefile
+ # There is a "readlink -f" command on some systems for the same purpose,
+ # but it's not as portable (e.g. Mac OS X doesn't have it).  These should
 --- a/build.conf
 +++ b/build.conf
 @@ -472,7 +472,7 @@
diff --git a/debian/patches/ruby-no-strict-aliasing 
b/debian/patches/ruby-no-strict-aliasing
index 88ad7b3a..21534543 100644
--- a/debian/patches/ruby-no-strict-aliasing
+++ b/debian/patches/ruby-no-strict-aliasing
@@ -11,7 +11,7 @@
 @DPATCH@
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -126,7 +126,7 @@
+@@ -130,7 +130,7 @@
  SWIG_PY_LIBS = @SWIG_PY_LIBS@
  SWIG_PL_INCLUDES = @SWIG_PL_INCLUDES@
  SWIG_RB_INCLUDES = @SWIG_RB_INCLUDES@ -I$(SWIG_SRC_DIR)/ruby/libsvn_swig_ruby
diff --git a/debian/patches/ruby-test-svnserve-race 
b/debian/patches/ruby-test-svnserve-race
index e7622902..bfa3c64f 100644
--- a/debian/patches/ruby-test-svnserve-race
+++ b/debian/patches/ruby-test-svnserve-race
@@ -33,7 +33,7 @@
            # svnserve started successfully.  Note port number and cease
            # startup attempts.
            @svnserve_port = port
-@@ -289,4 +286,25 @@
+@@ -292,4 +289,25 @@
      include Svnserve
      extend SetupEnvironment
    end
diff --git a/debian/patches/series b/debian/patches/series
index 4c1b3403..871c9fa5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
+auth-test
 build-fixes
 entropy
 java-build
-- 
1.7.8.2+next.20111228




-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to