commit
d11914e075
@ -0,0 +1 @@
|
|||||||
|
SOURCES/subversion-1.14.3.tar.bz2
|
@ -0,0 +1 @@
|
|||||||
|
2097d201ad5b9836bc505b5506f8a00c1d63142d SOURCES/subversion-1.14.3.tar.bz2
|
@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Munge Perl requirements:
|
||||||
|
# - remove dependency on Config::Inifiles
|
||||||
|
# - only require File::Path >= 1.04, not >= 1.404
|
||||||
|
# (since rpmvercmp thinks 04 < 1.404, not unreasonably)
|
||||||
|
# - filter out requirements for SVN:: modules; otherwise
|
||||||
|
# subversion requires subversion-perl
|
||||||
|
/usr/lib/rpm/perl.req $* |
|
||||||
|
sed -e '/perl(Config::IniFiles)/d' \
|
||||||
|
-e '/perl(SVN::/d' \
|
||||||
|
-e 's/perl(File::Path) >= 1.0404/perl(File::Path) >= 1.04/'
|
||||||
|
|
||||||
|
|
@ -0,0 +1,3 @@
|
|||||||
|
(defalias 'svn-examine 'svn-status)
|
||||||
|
(autoload 'svn-status "psvn" "Examine the status of Subversion working copy in
|
||||||
|
directory DIR.")
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,84 @@
|
|||||||
|
|
||||||
|
Fix the way libtool is used to match standard practice:
|
||||||
|
|
||||||
|
a) link ONLY libraries using -rpath $(libdir), not executables
|
||||||
|
.. this avoids adding an RPATH for $libdir to executables
|
||||||
|
b) link non-installable test binaries using -no-install
|
||||||
|
.. only for convenience but should speed up builds slightly(?)
|
||||||
|
|
||||||
|
--- subversion-1.12.0/build.conf.linking
|
||||||
|
+++ subversion-1.12.0/build.conf
|
||||||
|
@@ -572,7 +572,7 @@
|
||||||
|
path = subversion/bindings/swig/python/libsvn_swig_py
|
||||||
|
libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr
|
||||||
|
apriconv apr python swig
|
||||||
|
-link-cmd = $(LINK)
|
||||||
|
+link-cmd = $(LINK_LIB)
|
||||||
|
install = swig-py-lib
|
||||||
|
# need special build rule to include -DSWIGPYTHON
|
||||||
|
compile-cmd = $(COMPILE_SWIG_PY)
|
||||||
|
@@ -598,7 +598,7 @@
|
||||||
|
lang = ruby
|
||||||
|
path = subversion/bindings/swig/ruby/libsvn_swig_ruby
|
||||||
|
libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr ruby swig
|
||||||
|
-link-cmd = $(LINK) $(SWIG_RB_LIBS)
|
||||||
|
+link-cmd = $(LINK_LIB) $(SWIG_RB_LIBS)
|
||||||
|
install = swig-rb-lib
|
||||||
|
# need special build rule to include
|
||||||
|
compile-cmd = $(COMPILE_SWIG_RB)
|
||||||
|
@@ -769,6 +769,7 @@
|
||||||
|
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv apr
|
||||||
|
msvc-static = yes
|
||||||
|
undefined-lib-symbols = yes
|
||||||
|
+link-cmd = $(LINK_TEST_LIB)
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Tests for libsvn_fs_base
|
||||||
|
--- subversion-1.12.0/build/generator/gen_base.py.linking
|
||||||
|
+++ subversion-1.12.0/build/generator/gen_base.py
|
||||||
|
@@ -599,7 +599,7 @@
|
||||||
|
self.install = options.get('install')
|
||||||
|
self.compile_cmd = options.get('compile-cmd')
|
||||||
|
self.sources = options.get('sources', '*.c *.cpp')
|
||||||
|
- self.link_cmd = options.get('link-cmd', '$(LINK)')
|
||||||
|
+ self.link_cmd = options.get('link-cmd', '$(LINK_LIB)')
|
||||||
|
|
||||||
|
self.external_lib = options.get('external-lib')
|
||||||
|
self.external_project = options.get('external-project')
|
||||||
|
@@ -659,6 +659,14 @@
|
||||||
|
|
||||||
|
self.msvc_force_static = options.get('msvc-force-static') == 'yes'
|
||||||
|
|
||||||
|
+ if self.install in ['test', 'bdb-test', 'sub-test', ]:
|
||||||
|
+ self.link_cmd = '$(LINK_TEST)'
|
||||||
|
+ elif self.install in ['bin', 'tools']:
|
||||||
|
+ self.link_cmd = '$(LINK_EXE)'
|
||||||
|
+ elif self.link_cmd == '$(LINK_LIB)':
|
||||||
|
+ raise GenError('ERROR: Unknown executable link type for ' + self.name + \
|
||||||
|
+ ': ' + self.link_cmd + ' (' + self.install + ')')
|
||||||
|
+
|
||||||
|
def add_dependencies(self):
|
||||||
|
TargetLinked.add_dependencies(self)
|
||||||
|
|
||||||
|
--- subversion-1.12.0/Makefile.in.linking
|
||||||
|
+++ subversion-1.12.0/Makefile.in
|
||||||
|
@@ -268,11 +268,14 @@
|
||||||
|
COMPILE_SVNXX = $(LT_COMPILE_CXX) $(SVNXX_INCLUDES) -o $@ -c
|
||||||
|
COMPILE_SVNXX_TEST = $(LT_COMPILE_CXX) $(SVNXX_INCLUDES) $(BOOST_TEST_CPPFLAGS) -o $@ -c
|
||||||
|
|
||||||
|
-LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir)
|
||||||
|
-LINK_LIB = $(LINK) $(LT_SO_VERSION)
|
||||||
|
-LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir)
|
||||||
|
-LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION)
|
||||||
|
-LINK_SVNXX_TEST = $(LINK_CXX) $(BOOST_TEST_LDFLAGS)
|
||||||
|
+LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS)
|
||||||
|
+LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir)
|
||||||
|
+LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS)
|
||||||
|
+LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir)
|
||||||
|
+LINK_SVNXX_TEST = $(LINK_CXX) $(BOOST_TEST_LDFLAGS) -no-install
|
||||||
|
+LINK_TEST = $(LINK) -no-install
|
||||||
|
+LINK_TEST_LIB = $(LINK_TEST) -avoid-version
|
||||||
|
+LINK_EXE = $(LINK)
|
||||||
|
|
||||||
|
# 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) -shared
|
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
Suppress gcc 10 warning.
|
||||||
|
|
||||||
|
--- subversion-1.14.0/subversion/tests/svn_test.h.testwarn
|
||||||
|
+++ subversion-1.14.0/subversion/tests/svn_test.h
|
||||||
|
@@ -128,7 +128,7 @@
|
||||||
|
return svn_error_createf(SVN_ERR_TEST_FAILED, NULL, \
|
||||||
|
"Strings not equal\n Expected: '%s'\n Found: '%s'" \
|
||||||
|
"\n at %s:%d", \
|
||||||
|
- tst_str2, tst_str1, __FILE__, __LINE__); \
|
||||||
|
+ tst_str2 ? tst_str2 : "(NULL)", tst_str1 ? tst_str1 : "(NULL)", __FILE__, __LINE__); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
/** Handy macro for testing integer equality.
|
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
Fix intermittent failures when "svn add" guesses a near-empty file is binary and hence
|
||||||
|
the output is different.
|
||||||
|
|
||||||
|
--- subversion-1.14.1/subversion/tests/cmdline/svntest/main.py.testnoautoprops
|
||||||
|
+++ subversion-1.14.1/subversion/tests/cmdline/svntest/main.py
|
||||||
|
@@ -691,6 +691,7 @@
|
||||||
|
|
||||||
|
[miscellany]
|
||||||
|
interactive-conflicts = false
|
||||||
|
+enable-magic-file = no
|
||||||
|
"""
|
||||||
|
if exclusive_wc_locks:
|
||||||
|
config_contents += """
|
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
Don't expose private symbols for the Apache modules DSO.
|
||||||
|
|
||||||
|
--- subversion-1.14.2/build/generator/gen_base.py.modsyms
|
||||||
|
+++ subversion-1.14.2/build/generator/gen_base.py
|
||||||
|
@@ -727,13 +727,17 @@
|
||||||
|
def __init__(self, name, options, gen_obj):
|
||||||
|
TargetLib.__init__(self, name, options, gen_obj)
|
||||||
|
|
||||||
|
+ if name[:4] != "mod_":
|
||||||
|
+ raise Exception("Apache module targets must be named mod_*")
|
||||||
|
+
|
||||||
|
tfile = name + self.gen_obj._extension_map['lib', 'target']
|
||||||
|
self.filename = build_path_join(self.path, tfile)
|
||||||
|
|
||||||
|
+ modsyms = name[4:] + '_[^_].*'
|
||||||
|
# we have a custom linking rule
|
||||||
|
### hmm. this is Makefile-specific
|
||||||
|
self.compile_cmd = '$(COMPILE_APACHE_MOD)'
|
||||||
|
- self.link_cmd = '$(LINK_APACHE_MOD)'
|
||||||
|
+ self.link_cmd = '$(LINK_APACHE_MOD) -export-symbols-regex ' + modsyms
|
||||||
|
|
||||||
|
class TargetSharedOnlyLib(TargetLib):
|
||||||
|
|
@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
Subversion libraries don't get properly versioned so the library
|
||||||
|
names are always "libsvn_foo-1.so.0.0.0". Provide proper
|
||||||
|
versioning information to libtool *without* changing the soname
|
||||||
|
for compatibility with upstream, so on-disk filenames are
|
||||||
|
unique across different releases.
|
||||||
|
|
||||||
|
--- subversion-1.14.2/configure.ac.soversion
|
||||||
|
+++ subversion-1.14.2/configure.ac
|
||||||
|
@@ -112,7 +112,12 @@
|
||||||
|
SVN_APR_MAJOR_VERSION=1
|
||||||
|
fi
|
||||||
|
AC_SUBST(SVN_APR_MAJOR_VERSION)
|
||||||
|
-SVN_LT_SOVERSION="-version-info $svn_lib_ver"
|
||||||
|
+
|
||||||
|
+m4_define([svn_ver_minor], m4_bpatsubst(AC_PACKAGE_VERSION, [[0-9]*\.\([0-9]*\)\.[0-9]*], [\1]))
|
||||||
|
+m4_define([svn_ver_patch], m4_bpatsubst(AC_PACKAGE_VERSION, [[0-9]*\.[0-9]*\.\([0-9]*\)], [\1]))
|
||||||
|
+svn_ver_current="`expr $svn_lib_ver + svn_ver_minor`"
|
||||||
|
+
|
||||||
|
+SVN_LT_SOVERSION="-version-info $svn_ver_current:svn_ver_patch:svn_ver_minor"
|
||||||
|
AC_SUBST(SVN_LT_SOVERSION)
|
||||||
|
AC_DEFINE_UNQUOTED(SVN_SOVERSION, $svn_lib_ver,
|
||||||
|
[Subversion library major verson])
|
@ -0,0 +1,25 @@
|
|||||||
|
commit ca640b37f8a50b18d76970fd6554e05801b7e81b
|
||||||
|
Author: Tomas Korbar <tkorbar@redhat.com>
|
||||||
|
Date: Fri Jan 12 14:39:26 2024 +0100
|
||||||
|
|
||||||
|
Fix tests with zlib-ng
|
||||||
|
|
||||||
|
diff --git a/subversion/tests/cmdline/patch_tests.py b/subversion/tests/cmdline/patch_tests.py
|
||||||
|
index f52f12e..5950170 100755
|
||||||
|
--- a/subversion/tests/cmdline/patch_tests.py
|
||||||
|
+++ b/subversion/tests/cmdline/patch_tests.py
|
||||||
|
@@ -5797,11 +5797,11 @@ def patch_binary_file(sbox):
|
||||||
|
'diff --git a/iota b/iota\n',
|
||||||
|
'GIT binary patch\n',
|
||||||
|
'literal 48\n',
|
||||||
|
- 'zc$^E#$ShU>qLPeMg|y6^R0Z|S{E|d<JuZf(=9bpB_PpZ!+|-hc%)E52)STkf{{Wp*\n',
|
||||||
|
- 'B5)uFa\n',
|
||||||
|
+ 'zc$^E#$ShXKELJGVNL5J7%t=*H&&)4LRM+ETXlib0ZEMdf&d*IP$;ix0=Ss~fPW=x6\n',
|
||||||
|
+ 'Dol+7K\n',
|
||||||
|
'\n',
|
||||||
|
'literal 25\n',
|
||||||
|
- 'ec$^E#$ShU>qLPeMg|y6^R0Z|S{E|d<JuU!m{s;*G\n',
|
||||||
|
+ 'gc$^E#$ShXKELJGVNL5J7%t=*H&&)4LRM+DI0B`;X2><{9\n',
|
||||||
|
'\n',
|
||||||
|
'Property changes on: iota\n',
|
||||||
|
'___________________________________________________________________\n',
|
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
Try a little harder to avoid svnserve() bind failures.
|
||||||
|
|
||||||
|
--- subversion-1.8.0/subversion/bindings/swig/ruby/test/util.rb.rubybind
|
||||||
|
+++ subversion-1.8.0/subversion/bindings/swig/ruby/test/util.rb
|
||||||
|
@@ -39,7 +39,8 @@ module SvnTestUtil
|
||||||
|
@realm = "sample realm"
|
||||||
|
|
||||||
|
@svnserve_host = "127.0.0.1"
|
||||||
|
- @svnserve_ports = (64152..64282).collect{|x| x.to_s}
|
||||||
|
+ sport = (50000 + rand(100) * 100)
|
||||||
|
+ @svnserve_ports = (sport..sport + 99).collect{|x| x.to_s}
|
||||||
|
|
||||||
|
@tmp_path = Dir.mktmpdir
|
||||||
|
@wc_path = File.join(@tmp_path, "wc")
|
||||||
|
@@ -252,6 +253,8 @@ realm = #{@realm}
|
||||||
|
"--listen-port", port,
|
||||||
|
"-d", "--foreground")
|
||||||
|
}
|
||||||
|
+ # wait a while for svnserve to attempt a bind() and possibly fail
|
||||||
|
+ sleep(1)
|
||||||
|
pid, status = Process.waitpid2(@svnserve_pid, Process::WNOHANG)
|
||||||
|
if status and status.exited?
|
||||||
|
if $DEBUG
|
@ -0,0 +1,16 @@
|
|||||||
|
|
||||||
|
Don't drop -Wall in the swig Perl bindings, otherwise building with
|
||||||
|
e.g. -Wformat-security might break.
|
||||||
|
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1037341
|
||||||
|
|
||||||
|
--- subversion-1.8.5/subversion/bindings/swig/perl/native/Makefile.PL.in.swigplWall
|
||||||
|
+++ subversion-1.8.5/subversion/bindings/swig/perl/native/Makefile.PL.in
|
||||||
|
@@ -54,7 +54,6 @@ my $includes = ' -I/usr/include/apr-1
|
||||||
|
# SWIG is using C++ style comments in an extern "C" code.
|
||||||
|
$cflags =~ s/-ansi\s+//g;
|
||||||
|
$cflags =~ s/-std=c89\s+//g;
|
||||||
|
-$cflags =~ s/-Wall//g;
|
||||||
|
$cflags =~ s/-Wunused//g;
|
||||||
|
$cflags =~ s/-Wshadow//g;
|
||||||
|
$cflags =~ s/-Wstrict-prototypes//g;
|
@ -0,0 +1,27 @@
|
|||||||
|
The Ruby bindings apply the Ruby NIL_P macro to an apr_hash_t * value,
|
||||||
|
which some compilers flag as a type error.
|
||||||
|
|
||||||
|
Submitted upstream: <https://issues.apache.org/jira/browse/SVN-4915>
|
||||||
|
|
||||||
|
diff --git a/subversion/bindings/swig/include/svn_containers.swg b/subversion/bindings/swig/include/svn_containers.swg
|
||||||
|
index d3c6305a412b6505..47bc50a92bb8b433 100644
|
||||||
|
--- a/subversion/bindings/swig/include/svn_containers.swg
|
||||||
|
+++ b/subversion/bindings/swig/include/svn_containers.swg
|
||||||
|
@@ -299,7 +299,7 @@
|
||||||
|
$1 = svn_swig_rb_hash_to_apr_hash_svn_string($input, _global_pool);
|
||||||
|
_global_pool = NULL;
|
||||||
|
if (!NIL_P(rb_pool)) {
|
||||||
|
- if (NIL_P($1)) {
|
||||||
|
+ if ($1 == NULL) {
|
||||||
|
svn_swig_rb_destroy_pool(rb_pool);
|
||||||
|
} else {
|
||||||
|
svn_swig_rb_set_pool_for_no_swig_type($input, rb_pool);
|
||||||
|
@@ -373,7 +373,7 @@
|
||||||
|
svn_swig_rb_hash_to_apr_hash_string($input, _global_pool);
|
||||||
|
_global_pool = NULL;
|
||||||
|
if (!NIL_P(rb_pool)) {
|
||||||
|
- if (NIL_P($1)) {
|
||||||
|
+ if ($1 == NULL) {
|
||||||
|
svn_swig_rb_destroy_pool(rb_pool);
|
||||||
|
} else {
|
||||||
|
svn_swig_rb_set_pool_for_no_swig_type($input, rb_pool);
|
@ -0,0 +1,41 @@
|
|||||||
|
|
||||||
|
LoadModule dav_svn_module modules/mod_dav_svn.so
|
||||||
|
LoadModule authz_svn_module modules/mod_authz_svn.so
|
||||||
|
LoadModule dontdothat_module modules/mod_dontdothat.so
|
||||||
|
|
||||||
|
#
|
||||||
|
# Example configuration to enable HTTP access for a directory
|
||||||
|
# containing Subversion repositories, "/var/www/svn". Each repository
|
||||||
|
# must be both:
|
||||||
|
#
|
||||||
|
# a) readable and writable by the 'apache' user, and
|
||||||
|
#
|
||||||
|
# b) labelled with the 'httpd_sys_content_t' context if using
|
||||||
|
# SELinux
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# To create a new repository "http://localhost/repos/stuff" using
|
||||||
|
# this configuration, run as root:
|
||||||
|
#
|
||||||
|
# # cd /var/www/svn
|
||||||
|
# # svnadmin create stuff
|
||||||
|
# # chown -R apache:apache stuff
|
||||||
|
# # chcon -R -t httpd_sys_content_t stuff
|
||||||
|
#
|
||||||
|
|
||||||
|
#<Location /repos>
|
||||||
|
# DAV svn
|
||||||
|
# SVNParentPath /var/www/svn
|
||||||
|
#
|
||||||
|
# # Limit write permission to list of valid users.
|
||||||
|
# <LimitExcept GET PROPFIND OPTIONS REPORT>
|
||||||
|
# # Require SSL connection for password protection.
|
||||||
|
# # SSLRequireSSL
|
||||||
|
#
|
||||||
|
# AuthType Basic
|
||||||
|
# AuthName "Authorization Realm"
|
||||||
|
# AuthUserFile /path/to/passwdfile
|
||||||
|
# Require valid-user
|
||||||
|
# </LimitExcept>
|
||||||
|
#</Location>
|
@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Subversion protocol daemon
|
||||||
|
After=syslog.target network.target
|
||||||
|
Documentation=man:svnserve(8)
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
EnvironmentFile=/etc/sysconfig/svnserve
|
||||||
|
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $OPTIONS
|
||||||
|
PrivateTmp=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
@ -0,0 +1,4 @@
|
|||||||
|
# OPTIONS is used to pass command-line arguments to svnserve.
|
||||||
|
#
|
||||||
|
# Specify the repository location in -r parameter:
|
||||||
|
OPTIONS="-r /var/svn"
|
@ -0,0 +1 @@
|
|||||||
|
D /run/svnserve 0700 root root -
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue