rpms/subversion/devel subversion-1.1.3-newswig.patch, NONE, 1.1 subversion.conf, 1.4, 1.5 subversion.spec, 1.42, 1.43

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Tue Mar 22 09:06:24 UTC 2005


Update of /cvs/dist/rpms/subversion/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv16185

Modified Files:
	subversion.conf subversion.spec 
Added Files:
	subversion-1.1.3-newswig.patch 
Log Message:
* Tue Mar 22 2005 Joe Orton <jorton at redhat.com> 1.1.3-7
- restore swig bindings support (from upstream via Max Bowsher, #141343)
- tweak SELinux commentary in default subversion.conf


subversion-1.1.3-newswig.patch:
 INSTALL                                                      |    8 
 Makefile.in                                                  |    1 
 build/ac-macros/swig.m4                                      |   38 ++--
 build/generator/gen_base.py                                  |    2 
 build/generator/gen_win.py                                   |    4 
 subversion/bindings/swig/INSTALL                             |  103 +++++++----
 subversion/bindings/swig/NOTES                               |   98 ++++++++++
 subversion/bindings/swig/README                              |   84 --------
 subversion/bindings/swig/core.i                              |   11 +
 subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c |    6 
 subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h |    3 
 subversion/bindings/swig/perl/native/Makefile.PL.in          |    4 
 subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c |    6 
 subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h |   22 +-
 14 files changed, 249 insertions(+), 141 deletions(-)

--- NEW FILE subversion-1.1.3-newswig.patch ---

Update to support swig 1.3.24; via Max Bowsher.

--- subversion-1.1.3/subversion/bindings/swig/perl/native/Makefile.PL.in.newswig
+++ subversion-1.1.3/subversion/bindings/swig/perl/native/Makefile.PL.in
@@ -89,7 +89,9 @@
    my $module_make_commands = join ('',map {"\t\$(MAKE) -f Makefile.$_\n"} @modules);
 
    my $flags;
-   if ($swig_version >= 103020) {
+   if ($swig_version >= 103024) {
+     $flags = '-noproxy';
+   } elsif ($swig_version >= 103020) {
      $flags = '-noruntime -noproxy';
    } else {
      $flags = '-c';
--- subversion-1.1.3/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c.newswig
+++ subversion-1.1.3/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c
@@ -29,6 +29,12 @@
 #include "svn_pools.h"
 #include "svn_opt.h"
 
+#if SVN_SWIG_VERSION >= 103024
+#include <swigrun.swg>
+#include <perl5/perlrun.swg>
+#include <runtime.swg>
+#endif
+
 #include "swigutil_pl.h"
 
 /* cache SWIG_TypeQuery results in a perl hash */
--- subversion-1.1.3/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h.newswig
+++ subversion-1.1.3/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h
@@ -49,6 +49,8 @@
 #endif
 
 
+
+#if SVN_SWIG_VERSION < 103024
 /* If this file is being included outside of a wrapper file, then need to
    create stubs for some of the SWIG types. */
 
@@ -78,6 +80,7 @@
 void SWIG_MakePtr(SV *, void *, swig_type_info *, int flags);
 
 #endif /* SVN_NEED_SWIG_TYPES */
+#endif /* SVN_SWIG_VERSION < 103024 */
 
 apr_pool_t *svn_swig_pl_get_current_pool (void);
 void svn_swig_pl_set_current_pool (apr_pool_t *pool);
--- subversion-1.1.3/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c.newswig
+++ subversion-1.1.3/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
@@ -32,6 +32,12 @@
 #include "svn_opt.h"
 #include "svn_delta.h"
 
+#if SVN_SWIG_VERSION >= 103024
+#include <swigrun.swg>
+#include <python/pyrun.swg>
+#include <runtime.swg>
+#endif
+
 #include "swigutil_py.h"
 
 
--- subversion-1.1.3/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h.newswig
+++ subversion-1.1.3/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h
@@ -34,18 +34,13 @@
 #include "svn_client.h"
 #include "svn_repos.h"
 
-#if SVN_SWIG_VERSION >= 103020
-#include "python/precommon.swg"
-#ifndef SWIG_NewPointerObj
-#define SWIG_NewPointerObj SWIG_Python_NewPointerObj
-#endif
-#endif
-
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
 
 
+
+#if SVN_SWIG_VERSION < 103024
 /* If this file is being included outside of a wrapper file, then need to
    create stubs for some of the SWIG types. */
 
@@ -57,11 +52,24 @@
 
 #ifdef SVN_NEED_SWIG_TYPES
 
+#if SVN_SWIG_VERSION >= 103020
+#include "python/precommon.swg"
+#ifndef SWIG_ConvertPtr
+#define SWIG_ConvertPtr SWIG_Python_ConvertPtr
+#endif
+#ifndef SWIG_NewPointerObj
+#define SWIG_NewPointerObj SWIG_Python_NewPointerObj
+#endif
+#endif
+
 typedef struct _unnamed swig_type_info;
+
 PyObject *SWIG_NewPointerObj(void *, swig_type_info *, int own);
 swig_type_info *SWIG_TypeQuery(const char *name);
 
 #endif /* SVN_NEED_SWIG_TYPES */
+#endif /* SVN_SWIG_VERSION < 103024 */
+
 
 /* Functions to manage python's global interpreter lock */
 void svn_swig_py_release_py_lock(void);
--- subversion-1.1.3/subversion/bindings/swig/core.i.newswig
+++ subversion-1.1.3/subversion/bindings/swig/core.i
@@ -293,6 +293,17 @@
         svn_swig_pl_set_current_pool(argp);
 }
 
+/* Fix for SWIG 1.3.24 */
+#if SWIG_VERSION == 0x010324
+%typemap(varin) apr_pool_t * {
+  void *temp;
+  if (SWIG_ConvertPtr($input, (void **) &temp, $1_descriptor,0) < 0) {
+    croak("Type error in argument $argnum of $symname. Expected $1_mangle");
+  }
+  $1 = ($1_ltype) temp;
+}
+#endif
+
 %typemap (varout,type="$1_descriptor") apr_pool_t *current_pool
   "sv_setiv(SvRV($result),(IV) svn_swig_pl_get_current_pool());";
 
--- subversion-1.1.3/subversion/bindings/swig/INSTALL.newswig
+++ subversion-1.1.3/subversion/bindings/swig/INSTALL
@@ -1,44 +1,77 @@
 								-*-text-*-
 
+STATUS OF THE SWIG BINDINGS
+
+* Python
+
+  The Python bindings are fairly well developed, although there are some
+  missing parts, most notably, there is no useful wrapping of the svn_ra APIs.
+
+* Perl
+
+  The Perl bindings are complete, with the exception of SVN::Wc, on which
+  very little work has been done.
+
+* Java
+
+  The SWIG-Java bindings are very incomplete, and are almost an abandoned 
+  project.  See subversion/bindings/java for a more mature alternative, which
+  is built using JavaHL, not SWIG.
+
+
 BUILDING SWIG BINDINGS FOR SVN ON UNIX
 
 
-Step 1:  Build & install the proper version of SWIG (which is
-         currently swig versions 1.3.19 - 1.3.21) .
+Step 1:  Install a suitable version of SWIG (which is
+         currently swig versions 1.3.19 - 1.3.21, or 1.3.24 or above).
+
+    * Perhaps your distribution packages a suitable version - if it does
+      install it, and skip to the last bullet point in this section.
 
-    * Go to http://www.swig.org/, download the sourceball, unpack.
+    * Go to http://www.swig.org/, download the source tarball, and unpack.
 
-    * In the SWIG-X.X.X directory, run ./configure.
+    * In the SWIG-1.3.xx directory, run ./configure.
 
-       If you plan to build the python bindings, and have a system
-       with more than one version of python installed, you may need
-       to pass
+        If you plan to build the python bindings, and have a system
+        with more than one version of python installed, you may need
+        to pass
 
              --with-python=/path/to/correct/python/binary
 
-       to the configure script.  You certainly don't want to use any
-       version of python older than 2.0.
+        to the configure script.  You need Python 2.0 or above.
 
-       If you plan to build the perl bindings, and have a system
-       with more than one version of perl installed, you may need
-       to pass
+        If you plan to build the perl bindings, and have a system
+        with more than one version of perl installed, you may need
+        to pass
 
              --with-perl5=/path/to/correct/perl/binary
 
-       to the configure script.  You need Perl 5.8.0 or above.
+        to the configure script.  You need Perl 5.8.0 or above.
 
-    * run 'make && make runtime && make install && make install-runtime'
+    * Build and install.
 
-    * To verify you have the goodz installed, check that these things
-      were created, assuming your $PREFIX was /usr/local/lib:
+        For SWIG 1.3.24 or above:
+          Run 'make && make install'
 
-           - /usr/local/lib/swig1.3/*.i
-           - /usr/local/lib/libswig*.so
-           - /usr/local/bin/swig
+        For SWIG 1.3.19 - 1.3.21:
+          Run 'make && make runtime && make install && make install-runtime'
 
-      In particular, you want to make sure that libswigpy.so was
-      built and installed, since the python bindings are the most-used
-      ones at the moment.
+    * To verify you have SWIG installed correctly, check that these things
+      were created, assuming your $PREFIX was /usr/local:
+
+        For SWIG 1.3.24 or above:
+          - /usr/local/bin/swig
+          - /usr/local/share/swig/1.3.xx/ (containing lots of .i files)
+
+        For SWIG 1.3.19 - 1.3.21:
+          - /usr/local/bin/swig
+          - /usr/local/lib/swig1.3/ (containing lots of .i files)
+          - /usr/local/lib/libswigpy.so (for Python)
+          - /usr/local/lib/libswigpl.so (for Perl)
+
+          In particular, you want to make sure that
+          libswigpy.so (if you want to use Python) and/or
+          libswigpl.so (if you want to use Perl) was/were built and installed.
 
 
 Step 2:  Build and Install Subversion.
@@ -55,18 +88,21 @@
        ./configure PYTHON2=/usr/bin/python2.2 PERL=/usr/bin/perl5.8.0
 
   If Subversion's ./configure finds a SWIG that it's happy with, then
-  it will build a special glue library to link svn to the swig-python
-  bindings:  libsvn_swig_py.so (as well as any other languages).
+  it will build special glue libraries to link svn to the swig bindings:
+    libsvn_swig_py.so (for Python)
+    libsvn_swig_perl.so (for Perl)
 
 
 Step 3:  Install Specific Language Bindings
 
 *  Python
 
-   1.  Run 'make swig-py' from the top of the
-       Subversion source tree.  This will invoke SWIG on the *.i
-       files, resulting in a collection of .c source files.  It will
-       then compile and link those .c files into Python libraries.
+   1.  Run 'make swig-py' from the top of the Subversion source tree,
+       to build the bindings.
+
+       (This will invoke SWIG on the *.i files, resulting in a collection
+       of .c source files.  It will then compile and link those .c files into
+       Python libraries.)
 
    2.  Run 'make install-swig-py' (as root, typically)
        from the top of the Subversion source tree.  This will copy
@@ -84,9 +120,12 @@
 
    3.  Make sure that whatever directory the bindings got installed in
        is in your PYTHONPATH.  That directory depends on how you
-       installed; a typical location is /usr/local/lib/svn-python/,
-       see http://subversion.tigris.org/issues/show_bug.cgi?id=1125
-       for some imminent improvements to the install process.
+       installed; a typical location is /usr/local/lib/svn-python/.
+
+       An nice way to do this is:
+       $ echo /usr/local/lib/svn-python \
+           > /usr/lib/python2.x/site-packages/subversion.pth
+
 
 *  Perl
 
@@ -288,5 +327,3 @@
    The perl bindings are using the standard module testing facilities
    to do regression tests. Simply run make check-swig-pl as described in the
    install section.
-
-*  Java
--- /dev/null
+++ subversion-1.1.3/subversion/bindings/swig/NOTES
@@ -0,0 +1,98 @@
+								-*-text-*-
+
+
+==> For instructions on how to get swig bindings working, read the
+     INSTALL file in this directory.
+
+
+SVN HEADER -> SWIG MODULE
+-------------------------
+
+Subversion has a bunch of include files, some which are interesting for
+wrapping with language bindings, and others which are simple type
+declarations and constants. Below is the table which maps each header
+to its disposition:
+
+INCLUDE           SWIG MODULE NAME
+svn_auth.h        _core (some symbols)
+svn_base64.h      (1)
+svn_client.h      _client
+svn_cmdline.h     (2)
+svn_config.h      _core (some symbols)
+svn_ctype.h       (1)
+svn_dav.h         (2)
+svn_delta.h       _delta
+svn_error.h       (2)
+svn_error_codes.h _core
+svn_fs.h          _fs
+svn_hash.h        (1)
+svn_io.h          _core (only stream functions)
+svn_md5.h         (1)
+svn_opt.h         _core (some symbols)
+svn_path.h        (1)
+svn_pools.h       _core (only pool manipulation)
+svn_props.h       _core (some symbols)
+svn_quoprint.h    (1)
+svn_ra.h          _ra
+svn_ra_svn.h      (2)
+svn_repos.h       _repos
+svn_sorts.h       (1)
+svn_string.h      (3)
+svn_subst.h       (2)
+svn_test.h        (2)
+svn_time.h        _core (some symbols)
+svn_types.h       (3)
+svn_utf.h         (1)
+svn_version.h     _core (some symbols)
+svn_wc.h          _wc
+svn_xml.h         (1)
+
+apr*.h            (3)
+
+(1) It is assumed that the binding languages will provide this
+    functionality separately.
+    ### HELP: Java does not provide base-64 natively.  Should we wrap
+    ### SVN's with SWIG, or include a stand-alone ASF implementation
+    ### (such as from Jakarta Commons Codec)?
+
+(2) No significant/interesting functionality to export.
+
+(3) A SWIG interface file exists, but only to export types used by other
+    modules.  No binding module is actually constructed from this
+    header.
+
+
+NOTE: the bindings code is being developed using SWIG 1.3.19 or
+later.  Earlier versions of SWIG will simply *not* work.
+
+
+
+
+SWIG MODULES
+------------
+
+We will produce a number of modules/classes, expecting the binding
+languages to organize these into a package, and present the Subversion
+libraries' API in a manner familiar to programmers of a given
+language.  For instance, the Python bindings are handled as follows:
+
+svn.core
+svn.client
+svn.delta
+svn.fs
+svn.ra
+svn.repos
+svn.wc
+
+
+
+
+THUNK EDITORS
+-------------
+
+"Thunk" is Windows programming term describing a "go between."  Our
+SWIG bindings generally implement editors in C which delegate to the
+language-specific extension API (e.g. its C API for Python, JNI for
+Java, etc.).  This transitional object implements a Subversion editor
+interface, allowing it to be passed between its native library code
+and the runtime of the language which the bindings were written for.
--- subversion-1.1.3/subversion/bindings/swig/README.newswig
+++ subversion-1.1.3/subversion/bindings/swig/README
@@ -1,87 +0,0 @@
-								-*-text-*-
-
-
-==> For instructions on how to get swig bindings working, read the
-     INSTALL file in this directory.
-
-
-SVN HEADER -> SWIG MODULE
--------------------------
-
-Subversion has a bunch of includes files, some are interesting for
-wrapping with language bindings, and others which are simple type
-declarations and constants. Below is the table which maps each header
-to its disposition:
-
-INCLUDE           SWIG MODULE NAME
-svn_base64.h	  (1)
-svn_client.h	  _client
-svn_config.h	  ?
-svn_delta.h	  _delta
-svn_error.h	  (2)
-svn_error_codes.h (2)
-svn_fs.h	  _fs
-svn_hash.h	  (1)
-svn_io.h	  (4) (only stream functions)
-svn_path.h	  (1)
-svn_pools.h	  (4) (only pool manipulation)
-svn_quoprint.h	  (1)
-svn_ra.h	  _ra
-svn_repos.h	  _repos
-svn_sorts.h	  (1)
-svn_string.h	  (3)
-svn_test.h	  (2)
-svn_time.h	  (1)
-svn_types.h	  (3)
-svn_version.h	  (4) (some symbols)
-svn_wc.h	  _wc
-svn_xml.h	  (1)
-
-apr*.h		  (3)
-
-n/a		  _util
-
-(1) it is assumed that the binding languages will provide this
-    functionality separately.
-    ### HELP: Java does not provide base-64 natively.  Should we wrap
-    ### SVN's with SWIG, or include a stand-alone ASF implementation
-    ### (such as from Jakarta Commons Codec)?
-(2) no significant/interesting functionality to export
-(3) only the types are exported; a SWIG interface file is present
-(4) limited symbols/functionality exported via the _util module
-
-
-NOTE: the bindings code is being developed using SWIG 1.3.19 or
-later.  Earlier versions of SWIG will simply *not* work.
-
-
-
-
-SWIG MODULES
-------------
-
-We will produce a number of modules/classes, expecting the binding
-languages to organize these into a package, and present the Subversion
-libraries' API in a manner familiar to programmers of a given
-language.  For instance, the Python bindings are handled as follows:
-
-svn.client
-svn.delta
-svn.error
-svn.fs
-svn.io
-svn.ra
-svn.wc
-
-
-
-
-THUNK EDITORS
--------------
-
-"Thunk" is Windows programming term describing a "go between."  Our
-SWIG bindings generally implement editors in C which delegate to the
-language-specific extension API (e.g. its C API for Python, JNI for
-Java, etc.).  This transitional object implements a Subversion editor
-interface, allowing it to be passed between its native library code
-and the runtime of the language which the bindings were written for.
--- subversion-1.1.3/build/generator/gen_base.py.newswig
+++ subversion-1.1.3/build/generator/gen_base.py
@@ -569,7 +569,7 @@
     self.name = self.lang + '_runtime' 
     self.path = build_path_join(self.path, self.lang)
     self.filename = build_path_join(self.path, libname)
-    self.external_lib = '-lswig' + abbrev
+    self.external_lib = "$(LSWIG" + string.upper(abbrev) + ")"
 
     cfile = SWIGObject(build_path_join(self.path, cname), self.lang)
     ofile = SWIGObject(build_path_join(self.path, oname), self.lang)
--- subversion-1.1.3/build/generator/gen_win.py.newswig
+++ subversion-1.1.3/build/generator/gen_win.py
@@ -280,7 +280,9 @@
       swig_options = ["-" + target.lang]
       swig_deps = []
 
-      if self.swig_vernum >= 103020:
+      if self.swig_vernum >= 103024:
+        pass
+      elif self.swig_vernum >= 103020:
         swig_options.append("-noruntime")
       else:
         swig_options.append("-c")
--- subversion-1.1.3/build/ac-macros/swig.m4.newswig
+++ subversion-1.1.3/build/ac-macros/swig.m4
@@ -109,26 +109,42 @@
     #   packages/rpm/redhat-7.x/subversion.spec
     #   packages/rpm/redhat-8.x/subversion.spec
     if test -n "$SWIG_VERSION" && test "$SWIG_VERSION" -ge "103019" -a \
-                                       "$SWIG_VERSION" -lt "103022"; then
-        SWIG_SUITABLE=yes
-        AC_CACHE_CHECK([for swig library directory], [ac_cv_swig_swiglib_dir],[
-                        ac_cv_swig_swiglib_dir="`$SWIG -swiglib`"
-                       ])
-        SWIG_LIBSWIG_DIR="$ac_cv_swig_swiglib_dir"
+                                       "$SWIG_VERSION" -lt "103022" -o \
+                                       "$SWIG_VERSION" -ge "103024"; then
+      SWIG_SUITABLE=yes
 
       dnl Newer versions of SWIG have deprecated the -c "do not
       dnl include SWIG runtime functions (used for creating multi-module
       dnl packages)" in favor of the -noruntime flag.
-      if test "$SWIG_VERSION" -ge "103020"; then
-          SWIG_NORUNTIME_FLAG='-noruntime'
+      if test "$SWIG_VERSION" -ge "103024"; then
+        SWIG_NORUNTIME_FLAG=''
+        LSWIGPL=''
+        LSWIGPY=''
       else
+        if test "$SWIG_VERSION" -ge "103020"; then
+          SWIG_NORUNTIME_FLAG='-noruntime'
+        else
           SWIG_NORUNTIME_FLAG='-c'
+        fi
+        LSWIGPL='-lswigpl'
+        LSWIGPY='-lswigpy'
       fi
+
     else
-        SWIG_SUITABLE=no
-        AC_MSG_WARN([swig versions 1.3.19, 1.3.20 or 1.3.21 are needed for swig support.])
+      SWIG_SUITABLE=no
+      AC_MSG_WARN([Detected SWIG version $SWIG_VERSION_RAW])
+      AC_MSG_WARN([This is not compatible with Subversion])
+      AC_MSG_WARN([Subversion can use SWIG versions 1.3.19, 1.3.20, 1.3.21])
+      AC_MSG_WARN([or 1.3.24 or later])
     fi
 
+    if test "$SWIG_SUITABLE" = "yes"; then
+      AC_CACHE_CHECK([for swig library directory], [ac_cv_swig_swiglib_dir],[
+                      ac_cv_swig_swiglib_dir="`$SWIG -swiglib`"
+                     ])
+      SWIG_LIBSWIG_DIR="$ac_cv_swig_swiglib_dir"
+    fi
+    
     if test "$PYTHON" != "none" -a "$SWIG_SUITABLE" = "yes" -a "$svn_swig_bindings_enable_python" = "yes"; then
       AC_MSG_NOTICE([Configuring python swig binding])
       AC_CACHE_CHECK([if swig needs -L for its libraries],
@@ -204,5 +220,7 @@
   AC_SUBST(SWIG_JAVA_LINK)
   AC_SUBST(SWIG_PL_INCLUDES)
   AC_SUBST(SWIG_LIBSWIG_DIR)
+  AC_SUBST(LSWIGPL)
+  AC_SUBST(LSWIGPY)
   AC_SUBST(SWIG_LDFLAGS)
 ])
--- subversion-1.1.3/Makefile.in.newswig
+++ subversion-1.1.3/Makefile.in
@@ -114,6 +114,7 @@
                 -I$(abs_srcdir)/subversion/include \
                 -I$(SWIG_LIBSWIG_DIR) \
                 -DSVN_SWIG_VERSION=$(SWIG_VERSION) \
+                -DSWIG_TABLE_TYPE=subversion \
                 $(SVN_APR_INCLUDES) $(SVN_APRUTIL_INCLUDES)
 SWIG_NORUNTIME_FLAG = @SWIG_NORUNTIME_FLAG@
 SWIG_LDFLAGS = @SWIG_LDFLAGS@
--- subversion-1.1.3/INSTALL.newswig
+++ subversion-1.1.3/INSTALL
@@ -33,7 +33,7 @@
      A. Windows XP
      B. Mac OS X
 
-     V. SWIG LANGUAGE BINDINGS
+     V. SWIG SCRIPTING LANGUAGE BINDINGS (PYTHON, PERL)
 
 
 
@@ -1223,7 +1223,7 @@
 
 
 
-V.    SWIG LANGUAGE BINDINGS
-      ======================
+V.    SWIG SCRIPTING LANGUAGE BINDINGS (PYTHON, PERL)
+      ===============================================
       
-      (See the file ./subversion/bindings/swig/INSTALL.)
+      See the file ./subversion/bindings/swig/INSTALL.


Index: subversion.conf
===================================================================
RCS file: /cvs/dist/rpms/subversion/devel/subversion.conf,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- subversion.conf	24 Nov 2004 09:42:14 -0000	1.4
+++ subversion.conf	22 Mar 2005 09:06:22 -0000	1.5
@@ -5,11 +5,14 @@
 #
 # Example configuration to enable HTTP access for a directory
 # containing Subversion repositories, "/var/www/svn".  Each repository
-# must be readable and writable by the 'apache' user.  Note that if
-# SELinux is enabled, the repositories must be labelled with a context
-# which httpd can write to; this will happen by default for
-# directories created in /var/www.  Use "restorecon -R /var/www/svn"
-# to label the repositories if upgrading from a previous release.
+# must be readable and writable by the 'apache' user.  
+#
+# Note that if SELinux is enabled, the repositories must be labelled
+# with a context which httpd can write to; this will happen by default
+# for newly created directories in /var/www.  Use the command
+# "restorecon -R /var/www/svn" to label the repositories if migrating
+# from a system without SELinux enabled; to label a repository outside
+# /var/www, use "chcon -R -h -t httpd_sys_content_t /path/to/repos".
 #
 
 #


Index: subversion.spec
===================================================================
RCS file: /cvs/dist/rpms/subversion/devel/subversion.spec,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- subversion.spec	9 Mar 2005 17:05:20 -0000	1.42
+++ subversion.spec	22 Mar 2005 09:06:22 -0000	1.43
@@ -10,7 +10,7 @@
 Summary: Modern Version Control System designed to replace CVS
 Name: subversion
 Version: 1.1.3
-Release: 6
+Release: 7
 License: BSD
 Group: Development/Tools
 URL: http://subversion.tigris.org/
@@ -21,11 +21,12 @@
 Patch1: subversion-0.24.2-swig.patch
 Patch2: subversion-0.20.1-deplibs.patch
 Patch3: subversion-0.31.0-rpath.patch
+Patch4: subversion-1.1.3-newswig.patch
 Patch6: subversion-1.0.3-pie.patch
 Patch7: subversion-1.1.3-java.patch
 Patch8: subversion-1.1.3-filepathver.patch
 BuildPreReq: autoconf, libtool, python, python-devel, texinfo
-BuildPreReq: db4-devel >= 4.1.25, swig >= 1.3.21-5, docbook-style-xsl
+BuildPreReq: db4-devel >= 4.1.25, swig >= 1.3.22, docbook-style-xsl
 BuildPreReq: apr-devel, apr-util-devel, neon-devel >= 0:0.24.7-1
 BuildRoot: %{_tmppath}/%{name}-root
 
@@ -64,7 +65,6 @@
 The mod_dav_svn package allows access to a Subversion repository
 using HTTP, via the Apache httpd server.
 
-%if 0
 %package perl
 Group: Development/Libraries
 Summary: Perl bindings to the Subversion libraries
@@ -74,7 +74,6 @@
 
 %description perl
 This package includes the Perl bindings to the Subversion libraries.
-%endif
 
 %if %{with_java}
 %package javahl
@@ -92,6 +91,7 @@
 %patch1 -p1 -b .swig
 %patch2 -p1 -b .deplibs
 %patch3 -p1 -b .rpath
+%patch4 -p1 -b .newswig
 %patch6 -p1 -b .pie
 %if %{with_java}
 %patch7 -p1 -b .java
@@ -103,7 +103,7 @@
 %build
 ./autogen.sh
 
-# requirement for apr 0.9.5 seems to be bogus
+# requirement for apr 0.9.5 is bogus
 perl -pi -e 's/\.\[5-9\]/\.\[4-9\]/' configure
 
 # fix shebang lines, #111498
@@ -113,20 +113,16 @@
 %configure --with-apr=%{_prefix} --with-apr-util=%{_prefix} \
 	--without-swig --with-neon=%{_prefix} \
         --with-apxs=%{_sbindir}/apxs --disable-mod-activation
-make %{?_smp_mflags} all %{swigdirs} 
-#make swig-pl swig-py
-%if %{with_java}
-make javahl
-%endif
+make %{?_smp_mflags} all
+make swig-pl swig-py %{?_with_java:javahl} %{swigdirs}
 
 %install
 rm -rf ${RPM_BUILD_ROOT}
-make install %{?_with_java:install-javahl} \
+make install install-swig-py install-swig-pl-lib %{?_with_java:install-javahl} \
         DESTDIR=$RPM_BUILD_ROOT %{swigdirs}
 
-# install-swig-py install-swig-pl-lib
-#make pure_vendor_install -C subversion/bindings/swig/perl/native \
-#        PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
+make pure_vendor_install -C subversion/bindings/swig/perl/native \
+        PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
 
 # Add subversion.conf configuration file into httpd/conf.d directory.
 install -m 755 -d ${RPM_BUILD_ROOT}%{_sysconfdir}/httpd/conf.d
@@ -136,7 +132,6 @@
 rm -rf ${RPM_BUILD_ROOT}%{_includedir}/subversion-*/*.txt \
        ${RPM_BUILD_ROOT}%{pydir}/*/*.{a,la}
 
-%if 0
 # remove stuff produced with Perl modules
 find $RPM_BUILD_ROOT -type f \
     -a \( -name .packlist -o \( -name '*.bs' -a -empty \) \) \
@@ -148,7 +143,6 @@
 
 # unnecessary libraries for swig bindings
 rm -f ${RPM_BUILD_ROOT}%{_libdir}/libsvn_swig_*.{so,la,a}
-%endif
 
 # Trim what goes in docdir
 rm -rf tools/*/*.in tools/test-scripts \
@@ -168,8 +162,7 @@
 %if %{make_check}
 %check
 export LANG=C LC_ALL=C
-make check CLEANUP=yes
-# check-swig-pl
+make check check-swig-pl CLEANUP=yes
 %endif
 
 %clean
@@ -179,11 +172,9 @@
 
 %postun -p /sbin/ldconfig
 
-%if 0
 %post perl -p /sbin/ldconfig
 
 %postun perl -p /sbin/ldconfig
-%endif
 
 %files -f %{name}.lang
 %defattr(-,root,root)
@@ -194,14 +185,12 @@
 %{_bindir}/*
 %{_libdir}/libsvn_*.so.*
 %{_mandir}/man*/*
-#%{pydir}/svn
-#%{pydir}/libsvn
+%{pydir}/svn
+%{pydir}/libsvn
 %{_datadir}/emacs/site-lisp
 %{_datadir}/xemacs/site-packages/lisp
-%if 0
 %exclude %{_libdir}/libsvn_swig_perl*
 %exclude %{_mandir}/man*/*::*
-%endif
 
 %files devel
 %defattr(-,root,root)
@@ -209,9 +198,7 @@
 %{_libdir}/libsvn*.a
 %{_libdir}/libsvn*.la
 %{_libdir}/libsvn*.so
-%if 0
 %exclude %{_libdir}/libsvn_swig_perl*
-%endif
 
 %files -n mod_dav_svn
 %defattr(-,root,root)
@@ -219,14 +206,12 @@
 %{_libdir}/httpd/modules/mod_dav_svn.so
 %{_libdir}/httpd/modules/mod_authz_svn.so
 
-%if 0
 %files perl
 %defattr(-,root,root,-)
 %{perl_vendorarch}/auto/SVN
 %{perl_vendorarch}/SVN
 %{_libdir}/libsvn_swig_perl*
 %{_mandir}/man*/*::*
-%endif
 
 %if %{with_java}
 %files javahl
@@ -236,6 +221,10 @@
 %endif
 
 %changelog
+* Tue Mar 22 2005 Joe Orton <jorton at redhat.com> 1.1.3-7
+- restore swig bindings support (from upstream via Max Bowsher, #141343)
+- tweak SELinux commentary in default subversion.conf
+
 * Wed Mar  9 2005 Joe Orton <jorton at redhat.com> 1.1.3-6
 - fix svn_load_dirs File::Path version requirement
 




More information about the fedora-cvs-commits mailing list