apache, subversion and deps in main

This commit is contained in:
Ertuğrul Erata
2015-09-05 00:01:04 +03:00
parent bfa8722fab
commit 31c7749ca4
54 changed files with 3883 additions and 0 deletions
@@ -0,0 +1,51 @@
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
# To serve all repositories under SVNParentPath with same configuration
<Location /svn>
DAV svn
SVNParentPath /var/svn/repos
SVNIndexXSLT "/svnindex.xsl"
#AuthType Basic
#AuthName "Subversion repository"
#AuthUserFile /var/svn/conf/svnusers_default
#Require valid-user
</Location>
#
# 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,14 @@
diff -ur subversion-1.4.0.orig/Makefile.in subversion-1.4.0/Makefile.in
--- subversion-1.4.0.orig/Makefile.in 2006-11-06 16:36:17.000000000 +0200
+++ subversion-1.4.0/Makefile.in 2006-11-06 16:50:14.000000000 +0200
@@ -209,10 +209,6 @@
$(INSTALL_DATA) "$$i" $(DESTDIR)$(swig_pydir); \
done; \
fi; \
- $(PYTHON) -c 'import compileall; \
- compileall.compile_dir("$(DESTDIR)$(swig_pydir)", 1, "$(swig_pydir)"); \
- compileall.compile_dir("$(DESTDIR)$(swig_pydir_extra)", 1, \
- "$(swig_pydir_extra)");'
# The path to generated and complementary source files for the SWIG
# bindings.
@@ -0,0 +1,27 @@
The first half of this is certainly upstream-worthy, but the second half is presumably
some Fedora-specific KDE packaging thing. It's not obvious how to get
kde4-config to report the directory which contains the .so files.
--- subversion-1.8.0/build/ac-macros/kwallet.m4.kwallet
+++ subversion-1.8.0/build/ac-macros/kwallet.m4
@@ -63,15 +63,15 @@ AC_DEFUN(SVN_LIB_KWALLET,
fi
done
qt_include_dirs="`$PKG_CONFIG --cflags-only-I QtCore QtDBus QtGui`"
- kde_dir="`$KDE4_CONFIG --prefix`"
- SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_dir/include"
+ kde_include_dirs="-I`$KDE4_CONFIG --path include`"
+ SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs $kde_include_dirs"
qt_libs_other_options="`$PKG_CONFIG --libs-only-other QtCore QtDBus QtGui`"
SVN_KWALLET_LIBS="$DBUS_LIBS -lQtCore -lQtDBus -lQtGui -lkdecore -lkdeui $qt_libs_other_options"
CXXFLAGS="$CXXFLAGS $SVN_KWALLET_INCLUDES"
LIBS="$LIBS $SVN_KWALLET_LIBS"
qt_lib_dirs="`$PKG_CONFIG --libs-only-L QtCore QtDBus QtGui`"
kde_lib_suffix="`$KDE4_CONFIG --libsuffix`"
- LDFLAGS="$old_LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS($qt_lib_dirs -L$kde_dir/lib$kde_lib_suffix)`"
+ LDFLAGS="$old_LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS($qt_lib_dirs)` -L$libdir/kde4/devel"
AC_LANG(C++)
AC_LINK_IFELSE([AC_LANG_SOURCE([[
#include <kwallet.h>
@@ -0,0 +1,56 @@
diff -uap subversion-1.7.0/build/generator/gen_base.py.pie subversion-1.7.0/build/generator/gen_base.py
--- subversion-1.8.0/build/generator/gen_base.py.pie
+++ subversion-1.8.0/build/generator/gen_base.py
@@ -409,7 +409,7 @@ class TargetLinked(Target):
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')
@@ -465,6 +465,11 @@ class TargetExe(TargetLinked):
self.manpages = options.get('manpages', '')
self.testing = options.get('testing')
+ if self.install == 'test' or self.install == 'bdb-test':
+ self.link_cmd = '$(LINK_TEST)'
+ else:
+ self.link_cmd = '$(LINK_EXE)'
+
def add_dependencies(self):
TargetLinked.add_dependencies(self)
@@ -515,8 +520,8 @@ class TargetLib(TargetLinked):
self.msvc_export = options.get('msvc-export', '').split()
### hmm. this is Makefile-specific
- if self.link_cmd == '$(LINK)':
- self.link_cmd = '$(LINK_LIB)'
+ if self.install == 'test':
+ self.link_cmd = '$(LINK_TEST_LIB)'
class TargetApacheMod(TargetLib):
--- subversion-1.8.0/Makefile.in.pie
+++ subversion-1.8.0/Makefile.in
@@ -203,6 +203,9 @@ COMPILE_CXXHL_CXX = $(LIBTOOL) $(LTCXXFL
LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS)
LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir)
+LINK_TEST = $(LINK) -no-install
+LINK_TEST_LIB = $(LINK) -avoid-version
+LINK_EXE = $(LINK) -pie
LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir)
LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION)
@@ -676,7 +679,7 @@ schema-clean:
$(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@
.c.o:
- $(COMPILE) -o $@ -c $<
+ $(COMPILE) -fpie -o $@ -c $<
.cpp.o:
$(COMPILE_CXX) -o $@ -c $<
@@ -0,0 +1,46 @@
diff -uap subversion-1.7.0/build.conf.rpath subversion-1.7.0/build.conf
--- subversion-1.8.0/build.conf.rpath
+++ subversion-1.8.0/build.conf
@@ -501,7 +501,7 @@ type = swig_lib
lang = python
path = subversion/bindings/swig/python/libsvn_swig_py
libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr apriconv apr
-link-cmd = $(LINK)
+link-cmd = $(LINK_LIB)
install = swig-py-lib
# need special build rule to include -DSWIGPYTHON
compile-cmd = $(COMPILE_SWIG_PY)
@@ -524,7 +524,7 @@ type = swig_lib
lang = ruby
path = subversion/bindings/swig/ruby/libsvn_swig_ruby
libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr
-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)
--- subversion-1.8.0/build/generator/gen_base.py.rpath
+++ subversion-1.8.0/build/generator/gen_base.py
@@ -514,6 +514,10 @@ class TargetLib(TargetLinked):
self.msvc_fake = options.get('msvc-fake') == 'yes' # has fake target
self.msvc_export = options.get('msvc-export', '').split()
+ ### hmm. this is Makefile-specific
+ if self.link_cmd == '$(LINK)':
+ self.link_cmd = '$(LINK_LIB)'
+
class TargetApacheMod(TargetLib):
def __init__(self, name, options, gen_obj):
--- subversion-1.8.0/Makefile.in.rpath
+++ subversion-1.8.0/Makefile.in
@@ -201,8 +201,8 @@ COMPILE_JAVAHL_JAVAH = $(JAVAH)
# special compilation for files destined for cxxhl
COMPILE_CXXHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) $(CXXHL_INCLUDES) -o $@ -c
-LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir)
-LINK_LIB = $(LINK) $(LT_SO_VERSION)
+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) -rpath $(libdir)
LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION)
@@ -0,0 +1,14 @@
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/Makefile.in
+++ b/Makefile.in
@@ -652,7 +652,7 @@ check-swig-pl: swig-pl swig-pl-lib
cd $(SWIG_PL_DIR)/native; $(MAKE) test
install-swig-pl: swig-pl install-swig-pl-lib
- cd $(SWIG_PL_DIR)/native; $(MAKE) install
+ cd $(SWIG_PL_DIR)/native; $(MAKE) install_vendor
EXTRACLEAN_SWIG_PL=rm -f $(SWIG_PL_SRC_DIR)/native/svn_*.c \
$(SWIG_PL_SRC_DIR)/native/core.c
@@ -0,0 +1,13 @@
[miscellany]
enable-auto-props = yes
[auto-props]
*.png = svn:mime-type=image/png
*.jpg = svn:mime-type=image/jpeg
*.jpe = svn:mime-type=image/jpeg
*.jpeg = svn:mime-type=image/jpeg
*.bmp = svn:mime-type=image/x-ms-bmp
*.odp = svn:mime-type=application/vnd.oasis.opendocument.presentation
*.odt = svn:mime-type=application/vnd.oasis.opendocument.text
*.ods = svn:mime-type=application/vnd.oasis.opendocument.spreadsheet
*.ogg = svn:mime-type=audio/ogg
@@ -0,0 +1,19 @@
clear LD_RUN_PATH, it will end up as RPATH in ELF binaries
ERROR: RPATH "/usr/src/packages/BUILD/subversion-1.5.x/subversion/libsvn_subr/.libs" on /var/tmp/subversion-1.5.0-build/usr/lib/perl5/vendor_perl/5.10.0/ppc-linux-thread-multi-64int/auto/SVN/_Wc/_Wc.so is not allowed
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/Makefile.in
+++ b/Makefile.in
@@ -641,7 +641,7 @@ $(SWIG_PL_DIR)/native/Makefile.PL: $(SWI
./config.status subversion/bindings/swig/perl/native/Makefile.PL
$(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
- cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL
+ cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL ; for i in `grep -wl ^LD_RUN_PATH Makefile Makefile.[^P]*` ; do sed -i 's@^LD_RUN_PATH.*@LD_RUN_PATH=@' $$i ; done
swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \
$(SWIG_PL_DIR)/native/Makefile
@@ -0,0 +1,11 @@
--- Makefile.in.orig 2009-02-16 14:10:48.000000000 -0200
+++ Makefile.in 2009-06-04 00:56:29.000000000 -0300
@@ -678,6 +678,7 @@
$(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL PREFIX=$(prefix)
+ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}}
# 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
# only be used where Python/Perl are known to be available.
+113
View File
@@ -0,0 +1,113 @@
#! /usr/bin/perl
#
# This script recursively (beginning with the current directory)
# wipes out everything not registered in SVN.
#
# rewritten in perl by Oswald Buddenhagen <ossi@kde.org>
# based on bash version by Thiago Macieira <thiago@kde.org>
# inspired by cvs-clean, written by Oswald Buddenhagen <ossi@kde.org>
# inspired by the "old" cvs-clean target from Makefile.common
#
# This file is free software in terms of the BSD licence. That means
# that you can do anything with it except removing this license or
# the above copyright notice. There is NO WARRANTY of any kind.
#
# Warning:
# This script processes the output from the SVN executable
# Do not run it along with colorsvn
use File::Path;
my $version = "svn-clean v1.0";
my $heading = $version.": cleans up the Subversion working directory\n";
my $usage = $heading.
"svn-clean [-h] [-n] [-q] [-i|-f] [dirname]\n\n".
"Where:\n".
" -h shows this help screen\n".
" -n dry-run: doesn't actually erase the files, just show their names\n".
" -i interactive: ask for confirmation before erasing the files\n".
" -f force: doesn't ask for confirmation before erasing\n".
" -q quiet: doesn't show output\n";
my $dry_run = 0;
my $force = 0;
my $quiet = 0;
sub check_confirm()
{
return if ($force);
open(TTY, "+< /dev/tty") or die "cannot open /dev/tty";
print TTY "This will erase files and directories that aren't in Subversion\n".
"Are you sure you want to continue? (y/n) ";
if (<TTY> =~ /^[Yy]/) {
$force = 1;
close TTY;
return;
}
# user cancelled
exit 0;
}
# Parse arguments
my $rest = 0;
my @files = ();
foreach my $arg (@ARGV) {
if ($rest) {
push @files, $arg;
} else {
if ($arg eq '-h' || $arg eq '--help') {
print $usage;
exit (0);
} elsif ($arg eq '-n' || $arg eq '--dry-run') {
$dry_run = 1;
$force = 1;
} elsif ($arg eq '-f' || $arg eq '--force') {
$force = 1;
} elsif ($arg eq '-i' || $arg eq '--interactive') {
$force = 0;
} elsif ($arg eq '-q' || $arg eq '--quiet') {
$quiet = 1;
} elsif ($arg eq '--') {
$rest = 1;
} elsif ($arg =~ /^-/) {
print STDERR "svn-clean: unknown argument '".$arg."'\n\n".$usage;
exit (1);
} else {
push @files, $arg;
}
}
}
if (!@files) {
push @files, '.';
}
# Unset TERM just so that no colours are output
# in case $SVN points to colorsvn
delete $ENV{'TERM'};
#print($heading."\n") unless $quiet;
foreach my $dir (@files) {
open SVN, "svn status --no-ignore \"".$dir."\"|";
while (<SVN>) {
/^[I?] +(.*)$/ or next;
my $file = $1;
check_confirm();
lstat $file;
if (-d _) {
print("D ".$file."\n") unless $quiet;
rmtree($file, 0, 0) unless $dry_run;
} else {
print("F ".$file."\n") unless $quiet;
unlink($file) unless $dry_run;
}
}
close SVN;
}
@@ -0,0 +1,20 @@
#!/bin/sh
if [ $# -eq 0 ]; then
cat <<EOF
Usage:
svnlastchange <filename> [<filename> ...]
EOF
exit 1
fi
if [ "$1" == "-q" ]; then
shift
else
echo >/dev/tty "Hint: Use svn log -r COMMITTED and svn diff -r PREV:COMMITTED"
fi
svn log -r COMMITTED "$*"
svn diff -r PREV:COMMITTED "$*" || \
echo >&2 "Error retrieving diff: the file was probably added in the last revision"
@@ -0,0 +1,15 @@
#!/bin/sh
# This is a stripped down version of svnlastchange
if [ $# -eq 0 ]; then
cat <<EOF
Usage:
svnlastlog <filename> [<filename> ...]
EOF
exit 1
fi
echo >&2 "Warning: svnlastlog is superfluous"
echo >&2 "Use svn log -r COMMITTED"
svn log -r COMMITTED "$*"
@@ -0,0 +1,6 @@
#!/bin/sh
echo >&2 "Warning: this script is superfluous"
echo >&2 "Instead, use: svn merge -rBASE:PREV <filename>"
echo >&2
svn merge -r BASE:PREV "$@"
@@ -0,0 +1,8 @@
# Default svnserve configuration for Pisi Linux
# Options for svnserve
SVNSERVE_OPTS = "--daemon --root=/var/svn"
# User and group as which to run svnserve
SVNSERVE_USER="svn"
SVNSERVE_GROUP="svn"