From 3e413be96a78ea09ddaec77ba022aee04a9f3555 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Mon, 10 Jan 2011 23:15:58 -0500 Subject: [PATCH] Cleared out extra and community --- community/openjdk6-debian/PKGBUILD | 39 - .../openjdk6-debian/openjdk6-debian.install | 14 - community/openjre7/PKGBUILD | 20 - community/openjre7/openjre7.install | 17 - extra/boost/PKGBUILD | 98 - extra/chntpw/PKGBUILD | 31 - extra/dhcp/.gitignore | 3 - extra/dhcp/PKGBUILD | 78 - extra/dhcp/dhclient-script-pathFixes.patch | 118 - .../dhcp-4.1.1-missing-ipv6-not-fatal.patch | 39 - extra/dhcp/dhcp.conf.d | 6 - extra/dhcp/dhcp.install | 11 - extra/dhcp/dhcpd | 40 - extra/eggdbus/PKGBUILD | 22 - extra/faac/PKGBUILD | 26 - extra/gtk2/PKGBUILD | 38 - extra/gtk2/gtk2.install | 13 - extra/gtk2/libjpeg-7.patch | 11 - extra/gtk2/xid-collision-debug.patch | 15 - extra/gutenprint/PKGBUILD | 39 - extra/gutenprint/gutenprint.install | 9 - extra/hal/PKGBUILD | 79 - extra/hal/cryptsetup_location.patch | 36 - extra/hal/fix-libusb-detection.patch | 66 - extra/hal/hal | 54 - extra/hal/hal-0.5.9-hide-diagnostic.patch | 14 - extra/hal/hal-HDAPS-blacklist.patch | 30 - extra/hal/hal-KVM-evdev.patch | 36 - extra/hal/hal-remove-dell-killswitch.patch | 201 -- extra/hal/hal-use-at-console.patch | 45 - extra/hal/hal-xen-unignore-axes.patch | 39 - extra/hal/hal.install | 20 - extra/icu/28107-icu-arm.patch | 20 - extra/icu/PKGBUILD | 31 - extra/imagemagick-doc/PKGBUILD | 23 - extra/imagemagick/ChangeLog | 192 -- extra/imagemagick/PKGBUILD | 52 - .../imagemagick/libpng_mmx_patch_x86_64.patch | 12 - extra/imagemagick/perlmagick.rpath.patch | 10 - extra/libsigc++/PKGBUILD | 44 - extra/libvpx/PKGBUILD | 29 - extra/mesa/LICENSE | 82 - extra/mesa/PKGBUILD | 137 - extra/mesa/intel-revert-vbl.patch | 21 - extra/mesa/mesa-7.1-link-shared.patch | 101 - extra/php-apc/PKGBUILD | 26 - extra/php-suhosin/PKGBUILD | 27 - extra/php/.gitignore | 4 - extra/php/PKGBUILD | 40 - extra/pm-utils/11netcfg | 26 - extra/pm-utils/PKGBUILD | 39 - extra/pm-utils/daemons.patch | 20 - extra/pm-utils/nouveau.patch | 11 - extra/polkit/PKGBUILD | 28 - extra/polkit/polkit.pam | 7 - extra/python-distribute/PKGBUILD | 24 - .../distribute-0.6.14_python2_and_3.patch | 51 - extra/qt3/PKGBUILD | 122 - extra/qt3/eastern_asian_languagues.diff | 39 - extra/qt3/mysql.patch | 47 - extra/qt3/qt-copy-kde-patches.tar.bz2 | Bin 31498 -> 0 bytes extra/qt3/qt-font-default-subst.diff | 77 - extra/qt3/qt-odbc.patch | 19 - extra/qt3/qt-patches.tar.bz2 | Bin 3708 -> 0 bytes extra/qt3/qt.install | 12 - extra/qt3/qt.profile | 4 - extra/qt3/qt3-png14.patch | 33 - extra/qt3/qt3-qglobal.patch | 20 - extra/qt3/qt3-qstring.patch | 11 - extra/qt3/utf8-bug-qt3.diff | 101 - extra/samba/PKGBUILD | 171 -- extra/samba/fix-ipv6-mount.patch | 11 - extra/samba/samba | 51 - extra/samba/samba.conf.d | 7 - extra/samba/samba.logrotate | 9 - extra/samba/samba.pam | 3 - extra/samba/swat.xinetd | 10 - extra/subversion/ChangeLog | 66 - extra/subversion/PKGBUILD | 90 - extra/subversion/pkgnone/SVN::Base.0 | 192 -- extra/subversion/pkgnone/SVN::Client.0 | 1309 --------- extra/subversion/pkgnone/SVN::Core.0 | 560 ---- extra/subversion/pkgnone/SVN::Delta.0 | 224 -- extra/subversion/pkgnone/SVN::Fs.0 | 567 ---- extra/subversion/pkgnone/SVN::Ra.0 | 670 ----- extra/subversion/pkgnone/SVN::Repos.0 | 398 --- extra/subversion/pkgnone/SVN::Wc.0 | 473 ---- extra/subversion/subversion.rpath.fix.patch | 10 - ...ersion.suppress.deprecation.warnings.patch | 22 - extra/subversion/svn | 11 - extra/subversion/svnmerge.py | 2370 ----------------- extra/subversion/svnserve | 42 - extra/subversion/svnserve.conf | 7 - extra/tightvnc/LinuxMachineDefines-arm.patch | 81 - extra/tightvnc/PKGBUILD | 47 - .../tightvnc/tightvnc-fontpath-xcolors.patch | 13 - extra/wavpack/PKGBUILD | 32 - extra/x264/PKGBUILD | 33 - extra/xorg-server-utils/LICENSE.iceauth | 25 - extra/xorg-server-utils/LICENSE.xcmsdb | 18 - extra/xorg-server-utils/LICENSE.xrdb | 24 - extra/xorg-server-utils/LICENSE.xrefresh | 42 - extra/xorg-server-utils/LICENSE.xset | 21 - extra/xorg-server-utils/LICENSE.xsetroot | 24 - extra/xorg-server-utils/LICENSE.xvidtune | 25 - extra/xorg-server-utils/PKGBUILD | 67 - 106 files changed, 10574 deletions(-) delete mode 100644 community/openjdk6-debian/PKGBUILD delete mode 100644 community/openjdk6-debian/openjdk6-debian.install delete mode 100644 community/openjre7/PKGBUILD delete mode 100644 community/openjre7/openjre7.install delete mode 100755 extra/boost/PKGBUILD delete mode 100644 extra/chntpw/PKGBUILD delete mode 100644 extra/dhcp/.gitignore delete mode 100644 extra/dhcp/PKGBUILD delete mode 100644 extra/dhcp/dhclient-script-pathFixes.patch delete mode 100644 extra/dhcp/dhcp-4.1.1-missing-ipv6-not-fatal.patch delete mode 100644 extra/dhcp/dhcp.conf.d delete mode 100644 extra/dhcp/dhcp.install delete mode 100644 extra/dhcp/dhcpd delete mode 100755 extra/eggdbus/PKGBUILD delete mode 100644 extra/faac/PKGBUILD delete mode 100644 extra/gtk2/PKGBUILD delete mode 100644 extra/gtk2/gtk2.install delete mode 100644 extra/gtk2/libjpeg-7.patch delete mode 100644 extra/gtk2/xid-collision-debug.patch delete mode 100755 extra/gutenprint/PKGBUILD delete mode 100755 extra/gutenprint/gutenprint.install delete mode 100755 extra/hal/PKGBUILD delete mode 100755 extra/hal/cryptsetup_location.patch delete mode 100755 extra/hal/fix-libusb-detection.patch delete mode 100755 extra/hal/hal delete mode 100755 extra/hal/hal-0.5.9-hide-diagnostic.patch delete mode 100755 extra/hal/hal-HDAPS-blacklist.patch delete mode 100755 extra/hal/hal-KVM-evdev.patch delete mode 100755 extra/hal/hal-remove-dell-killswitch.patch delete mode 100755 extra/hal/hal-use-at-console.patch delete mode 100755 extra/hal/hal-xen-unignore-axes.patch delete mode 100755 extra/hal/hal.install delete mode 100644 extra/icu/28107-icu-arm.patch delete mode 100644 extra/icu/PKGBUILD delete mode 100644 extra/imagemagick-doc/PKGBUILD delete mode 100644 extra/imagemagick/ChangeLog delete mode 100644 extra/imagemagick/PKGBUILD delete mode 100644 extra/imagemagick/libpng_mmx_patch_x86_64.patch delete mode 100644 extra/imagemagick/perlmagick.rpath.patch delete mode 100644 extra/libsigc++/PKGBUILD delete mode 100644 extra/libvpx/PKGBUILD delete mode 100755 extra/mesa/LICENSE delete mode 100755 extra/mesa/PKGBUILD delete mode 100755 extra/mesa/intel-revert-vbl.patch delete mode 100755 extra/mesa/mesa-7.1-link-shared.patch delete mode 100644 extra/php-apc/PKGBUILD delete mode 100644 extra/php-suhosin/PKGBUILD delete mode 100644 extra/php/.gitignore delete mode 100644 extra/php/PKGBUILD delete mode 100755 extra/pm-utils/11netcfg delete mode 100755 extra/pm-utils/PKGBUILD delete mode 100755 extra/pm-utils/daemons.patch delete mode 100755 extra/pm-utils/nouveau.patch delete mode 100755 extra/polkit/PKGBUILD delete mode 100755 extra/polkit/polkit.pam delete mode 100644 extra/python-distribute/PKGBUILD delete mode 100644 extra/python-distribute/distribute-0.6.14_python2_and_3.patch delete mode 100644 extra/qt3/PKGBUILD delete mode 100644 extra/qt3/eastern_asian_languagues.diff delete mode 100644 extra/qt3/mysql.patch delete mode 100644 extra/qt3/qt-copy-kde-patches.tar.bz2 delete mode 100644 extra/qt3/qt-font-default-subst.diff delete mode 100644 extra/qt3/qt-odbc.patch delete mode 100644 extra/qt3/qt-patches.tar.bz2 delete mode 100644 extra/qt3/qt.install delete mode 100644 extra/qt3/qt.profile delete mode 100644 extra/qt3/qt3-png14.patch delete mode 100644 extra/qt3/qt3-qglobal.patch delete mode 100644 extra/qt3/qt3-qstring.patch delete mode 100644 extra/qt3/utf8-bug-qt3.diff delete mode 100644 extra/samba/PKGBUILD delete mode 100644 extra/samba/fix-ipv6-mount.patch delete mode 100644 extra/samba/samba delete mode 100644 extra/samba/samba.conf.d delete mode 100644 extra/samba/samba.logrotate delete mode 100644 extra/samba/samba.pam delete mode 100644 extra/samba/swat.xinetd delete mode 100644 extra/subversion/ChangeLog delete mode 100644 extra/subversion/PKGBUILD delete mode 100644 extra/subversion/pkgnone/SVN::Base.0 delete mode 100644 extra/subversion/pkgnone/SVN::Client.0 delete mode 100644 extra/subversion/pkgnone/SVN::Core.0 delete mode 100644 extra/subversion/pkgnone/SVN::Delta.0 delete mode 100644 extra/subversion/pkgnone/SVN::Fs.0 delete mode 100644 extra/subversion/pkgnone/SVN::Ra.0 delete mode 100644 extra/subversion/pkgnone/SVN::Repos.0 delete mode 100644 extra/subversion/pkgnone/SVN::Wc.0 delete mode 100644 extra/subversion/subversion.rpath.fix.patch delete mode 100644 extra/subversion/subversion.suppress.deprecation.warnings.patch delete mode 100644 extra/subversion/svn delete mode 100644 extra/subversion/svnmerge.py delete mode 100755 extra/subversion/svnserve delete mode 100644 extra/subversion/svnserve.conf delete mode 100644 extra/tightvnc/LinuxMachineDefines-arm.patch delete mode 100644 extra/tightvnc/PKGBUILD delete mode 100644 extra/tightvnc/tightvnc-fontpath-xcolors.patch delete mode 100755 extra/wavpack/PKGBUILD delete mode 100755 extra/x264/PKGBUILD delete mode 100644 extra/xorg-server-utils/LICENSE.iceauth delete mode 100644 extra/xorg-server-utils/LICENSE.xcmsdb delete mode 100644 extra/xorg-server-utils/LICENSE.xrdb delete mode 100644 extra/xorg-server-utils/LICENSE.xrefresh delete mode 100644 extra/xorg-server-utils/LICENSE.xset delete mode 100644 extra/xorg-server-utils/LICENSE.xsetroot delete mode 100644 extra/xorg-server-utils/LICENSE.xvidtune delete mode 100644 extra/xorg-server-utils/PKGBUILD diff --git a/community/openjdk6-debian/PKGBUILD b/community/openjdk6-debian/PKGBUILD deleted file mode 100644 index 1ab415592..000000000 --- a/community/openjdk6-debian/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -pkgname=openjdk6-debian -pkgver=6.b18_1.8.3 -pkgrel=1 -pkgdesc="Debian's package of OpenJDK6, including the Zero and Shark VMs" -depends=('glibc' 'gcc-libs') -makedepends=() -conflicts=('java-environment' 'java-runtime') -provides=('java-environment=6' 'java-runtime=6' 'openjdk6') -url="http://packages.debian.org/sid/openjdk-6-jre-zero" -install=(openjdk6-debian.install) -source=("http://ftp.us.debian.org/debian/pool/main/o/openjdk-6/openjdk-6-jre-headless_6b18-1.8.3-1_armel.deb" - "http://ftp.us.debian.org/debian/pool/main/o/openjdk-6/openjdk-6-jre-zero_6b18-1.8.3-1_armel.deb" - "http://ftp.us.debian.org/debian/pool/main/o/openjdk-6/openjdk-6-jdk_6b18-1.8.3-1_armel.deb") -arch=('arm') -license="GPLv2" - -build() { - ar x `basename ${source[0]}` - tar xf data.tar.gz -C ${pkgdir} - ar x `basename ${source[0]}` - tar xf data.tar.gz -C ${pkgdir} - - ar x `basename ${source[1]}` - tar xf data.tar.gz -C ${pkgdir} - ar x `basename ${source[1]}` - tar xf data.tar.gz -C ${pkgdir} - - ar x `basename ${source[2]}` - tar xf data.tar.gz -C ${pkgdir} - ar x `basename ${source[2]}` - tar xf data.tar.gz -C ${pkgdir} - - rm -rf ${pkgdir}/usr/share/lintian - mkdir -p ${pkgdir}/usr/bin -} - -md5sums=('b68973122a69990a7e7a74c7e8a16ed4' - '2a4618c0495a598e86530e6f6cf72fb6' - 'fc785eef18402fdfb5b44bbff01d50aa') diff --git a/community/openjdk6-debian/openjdk6-debian.install b/community/openjdk6-debian/openjdk6-debian.install deleted file mode 100644 index a28892f52..000000000 --- a/community/openjdk6-debian/openjdk6-debian.install +++ /dev/null @@ -1,14 +0,0 @@ -post_install() { - ln -s /usr/lib/jvm/java-6-openjdk/bin/* /usr/bin -} - -post_upgrade() { - post_install -} - -post_remove() { -} - -op=$1 -shift -$op $* diff --git a/community/openjre7/PKGBUILD b/community/openjre7/PKGBUILD deleted file mode 100644 index 6807a5e75..000000000 --- a/community/openjre7/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# Maintainer: Mike Staszel - -pkgname=openjre7 -pkgver=7b86 -pkgrel=2 -pkgdesc="OpenJRE from WithLinux" -arch=('arm') -license=('GPL2') -url="unknown" -depends=('libffi') -makedepends=('xz') -provides=('java-runtime') -install=openjre7.install -source=(http://sheeva.with-linux.com/sheeva/java/$pkgname-$pkgver-armv5tel.txz) -md5sums=('d1820d7f0b4bfed65c0d0e541f670e7f') - -build() { - cd ${srcdir}/ - cp -R ${srcdir}/opt ${pkgdir}/ -} diff --git a/community/openjre7/openjre7.install b/community/openjre7/openjre7.install deleted file mode 100644 index 42333be7e..000000000 --- a/community/openjre7/openjre7.install +++ /dev/null @@ -1,17 +0,0 @@ -post_install() { -echo -e "\033[1mNotice\033[0m" -echo "Add /opt/openjre7/bin to your PATH." -echo "" -} - -post_upgrade() { - post_install -} - -post_remove() { - KERNEL_VERSION=.* -} - -op=$1 -shift -$op $* diff --git a/extra/boost/PKGBUILD b/extra/boost/PKGBUILD deleted file mode 100755 index c72bf9117..000000000 --- a/extra/boost/PKGBUILD +++ /dev/null @@ -1,98 +0,0 @@ -# Maintainer: kevin -# Contributor: Giovanni Scafora -# TU: Kritoke -# Contributor: Luca Roccia - -# Plugbox mods: Change linuxx86 to linuxarm - -pkgbase=boost -pkgname=('boost-libs' 'boost') -pkgver=1.43.0 -_boostver=1_43_0 -pkgrel=2 -arch=('arm') -url="http://www.boost.org/" -makedepends=('python2' 'bzip2' 'zlib') -source=(http://downloads.sourceforge.net/sourceforge/${pkgbase}/${pkgbase}_${_boostver}.tar.gz) -license=('custom') -options=('!ccache') -md5sums=('734565ca4819bf04bd8e903e116c3fb1') - -_stagedir="${srcdir}/stagedir" - -build() { - # set python path for bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools" - echo "using python : 2.7 : /usr/bin/python2 ;" >> build/v2/user-config.jam - - # build bjam - cd "${srcdir}/${pkgbase}_${_boostver}/tools/jam/src" - ./build.sh cc || return 1 - - _bindir="bin.linuxarm" - - install -m755 -d "${_stagedir}"/usr/bin - install -m755 ${_bindir}/bjam "${_stagedir}"/usr/bin/bjam || return 1 - - # build bcp - cd "${srcdir}/${pkgbase}_${_boostver}/tools/bcp" - ../jam/src/${_bindir}/bjam --toolset=gcc || return 1 - install -m755 "${srcdir}/${pkgbase}_${_boostver}/dist/bin/bcp" \ - ${_stagedir}/usr/bin/bcp || return 1 - - # build libs - cd "${srcdir}/${pkgbase}_${_boostver}" - # default "minimal" install: "release link=shared,static - # runtime-link=shared threading=multi" - # --layout=tagged will add the "-mt" suffix for multithreaded libraries - # and installs includes in /usr/include/boost. - # --layout=system no longer adds the -mt suffix for multi-threaded libs. - # install to ${_stagedir} in preparation for split packaging - - ./tools/jam/src/${_bindir}/bjam \ - release debug-symbols=off threading=single,multi \ - runtime-link=shared link=shared,static \ - cflags=-fno-strict-aliasing \ - toolset=gcc \ - --prefix="${_stagedir}" \ - -sTOOLS=gcc \ - --layout=tagged \ - install || return 1 - - # build pyste - cd "${srcdir}/${pkgbase}_${_boostver}/libs/python/pyste/install" - python2 setup.py install --root=${_stagedir} || return 1 -} - -package_boost() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Development" - depends=("boost-libs=${pkgver}") - optdepends=('python2: for python bindings') - - install -dm 755 "${pkgdir}"/usr/{include,lib} - # headers/source files - cp -r "${_stagedir}"/include/ "${pkgdir}"/usr/ - - # static libs - cp -r "${_stagedir}"/lib/*.a "${pkgdir}"/usr/lib/ - - # utilities (bjam, bcp, pyste) - cp -r "${_stagedir}"/usr/* "${pkgdir}"/usr/ - - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost/LICENSE_1_0.txt || return 1 -} - -package_boost-libs() { - pkgdesc="Free peer-reviewed portable C++ source libraries - Runtime" - depends=('gcc-libs' 'bzip2' 'zlib') - - install -dm 755 "${pkgdir}/usr/lib" - #shared libs - cp -r "${_stagedir}"/lib/*.so{,.*} "${pkgdir}/usr/lib/" - - # license - install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ - "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt || return 1 -} diff --git a/extra/chntpw/PKGBUILD b/extra/chntpw/PKGBUILD deleted file mode 100644 index f9a1246fe..000000000 --- a/extra/chntpw/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# Maintainer: Tobias Powalowski - -# Plugbox Changes: $CARCH = arm - -pkgname=chntpw -pkgver=100627 -pkgrel=1 -pkgdesc="The Offline NT Password Editor - enables you to view some information and change user passwords in a Windows NT SAM userdatabase file" -arch=('i686' 'x86_64') -url="http://pogostick.net/~pnh/ntpasswd/" -license=('GPL' 'LGPL') -makedepends=('openssl') -source=(http://pogostick.net/~pnh/ntpasswd/${pkgname}-source-${pkgver}.zip) -md5sums=('8b046c2073f27eed728e18635ba72dd4') -sha1sums=('4b2a7e7a406ca9ecb68c9ab4fb6012864828806d') - -build() { - if [ "$CARCH" = "arm" ]; then - cd ${srcdir}/${pkgname}-${pkgver} - sed -i "s|CFLAGS= -DUSEOPENSSL -g -I. -I\$(OSSLINC) -Wall -m32|CFLAGS= -DUSEOPENSSL -g -I. -I\$(OSSLINC) -Wall|" Makefile - fi - cd ${srcdir}/${pkgname}-${pkgver} - make - # install binaries, don't install static binaries! - install -Dm755 ${srcdir}/${pkgname}-${pkgver}/${pkgname} ${pkgdir}/usr/bin/${pkgname} - install -Dm755 ${srcdir}/${pkgname}-${pkgver}/reged ${pkgdir}/usr/bin/reged - install -Dm755 ${srcdir}/${pkgname}-${pkgver}/cpnt ${pkgdir}/usr/bin/cpnt - for doc in *.txt; do - install -Dm644 ${doc} ${pkgdir}/usr/share/doc/${pkgname}/${doc} - done -} diff --git a/extra/dhcp/.gitignore b/extra/dhcp/.gitignore deleted file mode 100644 index daf615c52..000000000 --- a/extra/dhcp/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -dhcp-*.tar.gz -src -pkg diff --git a/extra/dhcp/PKGBUILD b/extra/dhcp/PKGBUILD deleted file mode 100644 index d876c57a6..000000000 --- a/extra/dhcp/PKGBUILD +++ /dev/null @@ -1,78 +0,0 @@ -# $Id: PKGBUILD 85736 2010-07-19 02:41:06Z kevin $ -# Maintainer: judd -pkgbase=dhcp -pkgname=('dhcp' - 'dhclient') -# separate patch levels with a period to maintain proper versioning. -pkgver=4.2.0 -_pkgver=4.2.0 -pkgrel=1 -arch=('i686' 'x86_64' 'arm') -license=('custom:isc-dhcp') -url="https://www.isc.org/software/dhcp" -source=(http://ftp.isc.org/isc/${pkgname}/${pkgname}-${_pkgver}.tar.gz -dhcpd dhcp.conf.d dhcp-4.1.1-missing-ipv6-not-fatal.patch dhclient-script-pathFixes.patch) -md5sums=('83abd7c4f9c24d8dd024ca5a71380c0a' - 'df22cffa7d7415ece7bb025b7bf774dd' - '49da3192e5c885e3c7d02f447c2dea5e' - 'fd64aeb4f399dcc41ea43089a3811094' - 'ddcc5cd576ec631ade6c4da21952b50b') - -build() { - cd ${srcdir}/${pkgname}-${_pkgver} - # Define _GNU_SOURCE to fix IPV6. - sed '/^CFLAGS="$CFLAGS/ s/INGS"/INGS -D_GNU_SOURCE"/' -i configure - # Make not having ipv6 non-fatal. - patch -Np0 -i ${srcdir}/dhcp-4.1.1-missing-ipv6-not-fatal.patch - ./configure --prefix=/usr --sysconfdir=/etc \ - --with-srv-lease-file=/var/state/dhcp/dhcpd.leases \ - --with-srv6-lease-file=/var/state/dhcp/dhcpd6.leases \ - --with-ldap --with-ldapcrypto - make || return 1 -} - -package_dhcp(){ - pkgdesc="A DHCP server, client, and relay agent" - depends=('openssl>=0.9.8a') - backup=('etc/dhcpd.conf' 'etc/conf.d/dhcp') - install=dhcp.install - - cd ${srcdir}/${pkgname}-${_pkgver} - make DESTDIR=${pkgdir} install - install -D -m755 ${srcdir}/dhcpd ${pkgdir}/etc/rc.d/dhcpd - install -D -m644 ${srcdir}/dhcp.conf.d ${pkgdir}/etc/conf.d/${pkgbase} - mkdir -p ${pkgdir}/var/state/dhcp - rm -f ${pkgdir}/etc/dhclient.conf - rm -f ${pkgdir}/usr/sbin/dhclient - rm -f ${pkgdir}/usr/share/man/man{5,8}/dhclient* - - # install licenses - install -m644 -D ${srcdir}/${pkgbase}-${_pkgver}/LICENSE \ - ${pkgdir}/usr/share/licenses/dhcp/LICENSE -} - -package_dhclient(){ - - pkgdesc="dhclient is standalone client from the dhcp package" - depends=('bash') - - cd ${srcdir}/${pkgname}-${_pkgver}/client/scripts - patch -Np1 -i ${srcdir}/dhclient-script-pathFixes.patch linux || return 1 - cd ${srcdir}/${pkgname}-${_pkgver}/client - make DESTDIR=${pkgdir} install - install -m755 -d ${startdir}/pkg/var/lib/dhclient - - #not needed after fresh install - rm -f ${pkgdir}/var/lib/dhclient/dhcpd.leases - - #move dhclient.conf to dhclient.conf.example - mv ${pkgdir}/etc/dhclient.conf ${pkgdir}/etc/dhclient.conf.example - - # install dhclient linux script - mkdir ${pkgdir}/sbin - install -m755 -D ${srcdir}/${pkgname}-${_pkgver}/client/scripts/linux \ - ${pkgdir}/sbin/dhclient-script - # install licenses - install -m644 -D ${srcdir}/${pkgname}-${_pkgver}/LICENSE \ - ${pkgdir}/usr/share/licenses/dhclient/LICENSE -} diff --git a/extra/dhcp/dhclient-script-pathFixes.patch b/extra/dhcp/dhclient-script-pathFixes.patch deleted file mode 100644 index e19c328d2..000000000 --- a/extra/dhcp/dhclient-script-pathFixes.patch +++ /dev/null @@ -1,118 +0,0 @@ ---- linux 2009-04-21 16:21:09.000000000 +0200 -+++ linux_new 2010-06-30 19:06:20.000000000 +0200 -@@ -23,7 +23,7 @@ - # of the $1 in its args. - - # 'ip' just looks too weird. /sbin/ip looks less weird. --ip=/sbin/ip -+ip=/usr/sbin/ip - - make_resolv_conf() { - if [ x"$new_domain_name_servers" != x ]; then -@@ -112,9 +112,9 @@ - if [ x$reason = xPREINIT ]; then - if [ x$alias_ip_address != x ]; then - # Bring down alias interface. Its routes will disappear too. -- ifconfig $interface:0- inet 0 -+ /sbin/ifconfig $interface:0- inet 0 - fi -- ifconfig $interface 0 up -+ /sbin/ifconfig $interface 0 up - - # We need to give the kernel some time to get the interface up. - sleep 1 -@@ -141,32 +141,32 @@ - if [ x$old_ip_address != x ] && [ x$alias_ip_address != x ] && \ - [ x$alias_ip_address != x$old_ip_address ]; then - # Possible new alias. Remove old alias. -- ifconfig $interface:0- inet 0 -+ /sbin/ifconfig $interface:0- inet 0 - fi - if [ x$old_ip_address != x ] && [ x$old_ip_address != x$new_ip_address ]; then - # IP address changed. Bringing down the interface will delete all routes, - # and clear the ARP cache. -- ifconfig $interface inet 0 down -+ /sbin/ifconfig $interface inet 0 down - - fi - if [ x$old_ip_address = x ] || [ x$old_ip_address != x$new_ip_address ] || \ - [ x$reason = xBOUND ] || [ x$reason = xREBOOT ]; then - -- ifconfig $interface inet $new_ip_address $new_subnet_arg \ -+ /sbin/ifconfig $interface inet $new_ip_address $new_subnet_arg \ - $new_broadcast_arg $mtu_arg - # Add a network route to the computed network address. - for router in $new_routers; do - if [ "x$new_subnet_mask" = "x255.255.255.255" ] ; then -- route add -host $router dev $interface -+ /sbin/route add -host $router dev $interface - fi -- route add default gw $router $metric_arg dev $interface -+ /sbin/route add default gw $router $metric_arg dev $interface - done - fi - if [ x$new_ip_address != x$alias_ip_address ] && [ x$alias_ip_address != x ]; - then -- ifconfig $interface:0- inet 0 -- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -- route add -host $alias_ip_address $interface:0 -+ /sbin/ifconfig $interface:0- inet 0 -+ /sbin/ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -+ /sbin/route add -host $alias_ip_address $interface:0 - fi - make_resolv_conf - exit_with_hooks 0 -@@ -176,42 +176,42 @@ - || [ x$reason = xSTOP ]; then - if [ x$alias_ip_address != x ]; then - # Turn off alias interface. -- ifconfig $interface:0- inet 0 -+ /sbin/ifconfig $interface:0- inet 0 - fi - if [ x$old_ip_address != x ]; then - # Shut down interface, which will delete routes and clear arp cache. -- ifconfig $interface inet 0 down -+ /sbin/ifconfig $interface inet 0 down - fi - if [ x$alias_ip_address != x ]; then -- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -- route add -host $alias_ip_address $interface:0 -+ /sbin/ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -+ /sbin/route add -host $alias_ip_address $interface:0 - fi - exit_with_hooks 0 - fi - - if [ x$reason = xTIMEOUT ]; then - if [ x$alias_ip_address != x ]; then -- ifconfig $interface:0- inet 0 -+ /sbin/ifconfig $interface:0- inet 0 - fi -- ifconfig $interface inet $new_ip_address $new_subnet_arg \ -+ /sbin/ifconfig $interface inet $new_ip_address $new_subnet_arg \ - $new_broadcast_arg $mtu_arg - set $new_routers - if ping -q -c 1 $1; then - if [ x$new_ip_address != x$alias_ip_address ] && \ - [ x$alias_ip_address != x ]; then -- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -- route add -host $alias_ip_address dev $interface:0 -+ /sbin/ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg -+ /sbin/route add -host $alias_ip_address dev $interface:0 - fi - for router in $new_routers; do - if [ "x$new_subnet_mask" = "x255.255.255.255" ] ; then -- route add -host $router dev $interface -+ /sbin/route add -host $router dev $interface - fi -- route add default gw $router $metric_arg dev $interface -+ /sbin/route add default gw $router $metric_arg dev $interface - done - make_resolv_conf - exit_with_hooks 0 - fi -- ifconfig $interface inet 0 down -+ /sbin/ifconfig $interface inet 0 down - exit_with_hooks 1 - fi - diff --git a/extra/dhcp/dhcp-4.1.1-missing-ipv6-not-fatal.patch b/extra/dhcp/dhcp-4.1.1-missing-ipv6-not-fatal.patch deleted file mode 100644 index cc5ddb843..000000000 --- a/extra/dhcp/dhcp-4.1.1-missing-ipv6-not-fatal.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- common/discover.c 2009-09-29 21:44:49.000000000 +0200 -+++ common/discover.c_new 2010-06-30 19:40:02.000000000 +0200 -@@ -443,7 +443,7 @@ - } - - #ifdef DHCPv6 -- if (local_family == AF_INET6) { -+ if ((local_family == AF_INET6) && !access("/proc/net/if_inet6", R_OK)) { - ifaces->fp6 = fopen("/proc/net/if_inet6", "r"); - if (ifaces->fp6 == NULL) { - log_error("Error opening '/proc/net/if_inet6' to " -@@ -454,6 +454,8 @@ - ifaces->fp = NULL; - return 0; - } -+ } else { -+ ifaces->fp6 = NULL; - } - #endif - -@@ -721,7 +723,7 @@ - return 1; - } - #ifdef DHCPv6 -- if (!(*err)) { -+ if (!(*err) && ifaces->fp6) { - if (local_family == AF_INET6) - return next_iface6(info, err, ifaces); - } -@@ -740,7 +742,8 @@ - ifaces->sock = -1; - #ifdef DHCPv6 - if (local_family == AF_INET6) { -- fclose(ifaces->fp6); -+ if(ifaces->fp6) -+ fclose(ifaces->fp6); - ifaces->fp6 = NULL; - } - #endif diff --git a/extra/dhcp/dhcp.conf.d b/extra/dhcp/dhcp.conf.d deleted file mode 100644 index 99ba6d13d..000000000 --- a/extra/dhcp/dhcp.conf.d +++ /dev/null @@ -1,6 +0,0 @@ -# -# Arguments to be passed to the DHCP server daemon -# - -DHCP_ARGS="-q" - diff --git a/extra/dhcp/dhcp.install b/extra/dhcp/dhcp.install deleted file mode 100644 index c0ad39e36..000000000 --- a/extra/dhcp/dhcp.install +++ /dev/null @@ -1,11 +0,0 @@ -# arg 1: the new package version -post_install() { - [ -f var/state/dhcp/dhcpd.leases ] || : >var/state/dhcp/dhcpd.leases - #echo "If dhcpd doesn't start, ensure the ipv6 kernel module is loaded." -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} diff --git a/extra/dhcp/dhcpd b/extra/dhcp/dhcpd deleted file mode 100644 index 1fbb31e7c..000000000 --- a/extra/dhcp/dhcpd +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/dhcp - -PIDFILE="/var/run/dhcpd.pid" -PID=`cat $PIDFILE 2>/dev/null` -case "$1" in - start) - stat_busy "Starting DHCP Server" - if [ "$PID" = "" ]; then - /usr/sbin/dhcpd $DHCP_ARGS - fi - if [ "$PID" != "" -o $? -gt 0 ]; then - stat_fail - else - add_daemon dhcpd - stat_done - fi - ;; - stop) - stat_busy "Stopping DHCP Server" - [ ! -z "$PID" ] && kill $PID &> /dev/null - rm -f $PIDFILE - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon dhcpd - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/extra/eggdbus/PKGBUILD b/extra/eggdbus/PKGBUILD deleted file mode 100755 index e923c3f1a..000000000 --- a/extra/eggdbus/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 59198 2009-11-21 11:27:17Z jgc $ -# Maintainer: Jan de Groot - -pkgname=eggdbus -pkgver=0.6 -pkgrel=1 -pkgdesc="Experimental D-Bus bindings for GObject" -arch=(arm) -license=('LGPL') -url="http://www.freedesktop.org/wiki/Software/Policykit" -depends=('glib2>=2.22.2' 'dbus-glib>=0.82-2') -makedepends=('gtk-doc') -options=('!libtool') -source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz) -md5sums=('b43d2a6c523fcb8b9d0b0300c4222386') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-static --disable-maintainer-mode --disable-dependency-tracking --disable-ansi || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/extra/faac/PKGBUILD b/extra/faac/PKGBUILD deleted file mode 100644 index 51bf4bbb2..000000000 --- a/extra/faac/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Maintainer: Manuel Rotter - -pkgname=faac -pkgver=1.28 -pkgrel=1 -pkgdesc="FAAC is an AAC audio encoder." -arch=('arm') -url="http://www.audiocoding.com/" -license=('GPL' 'custom') -depends=('libmp4v2' 'glibc') -makedepends=('automake' 'autoconf' 'libtool') -options=('!libtool') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('80763728d392c7d789cde25614c878f6') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - find . -type f -print0 | xargs -0 sed -i 's/\r//g' - ./bootstrap - ./configure --prefix=/usr --with-mp4v2 - make || return 1 - make DESTDIR=${pkgdir} install - - install -D -m644 ${srcdir}/${pkgname}-${pkgver}/libfaac/kiss_fft/COPYING \ - ${pkgdir}/usr/share/licenses/faac/COPYING.kiss_fft -} diff --git a/extra/gtk2/PKGBUILD b/extra/gtk2/PKGBUILD deleted file mode 100644 index 6e2aaace4..000000000 --- a/extra/gtk2/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# Maintainer: Philipp Scholl -# From ArchMobile.org - -pkgname=gtk2 -pkgver=2.18.6 -pkgrel=1 -pkgdesc="The GTK+ Toolkit (v2)" -arch=(arm) -url="http://www.gtk.org/" -install=gtk2.install -depends=('atk>=1.28.0' 'pango>=1.26.0' 'libxcursor' 'libxinerama' 'libxrandr>=1.3.0' \ - 'libxi>=1.2.1' 'libcups>=1.4.2' 'libxcomposite' 'libxdamage' 'heimdal>=1.3.1' \ - 'gnutls>=2.8.3' 'shared-mime-info') -makedepends=('pkgconfig' 'gtk-doc') -replaces=('gtkprint-cups' 'gail') -conflicts=('gtkprint-cups' 'gail') -provides=('gail=1.22.3') -options=('!libtool' '!docs') -backup=(etc/gtk-2.0/gtkrc) -license=('LGPL') -source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.18/gtk+-${pkgver}.tar.bz2 - xid-collision-debug.patch) -sha256sums=('67a83c6b2e774bc20b2a0582fb7fad7b1e8d5e04ede39f299d614e365756d2a7' - 'd758bb93e59df15a4ea7732cf984d1c3c19dff67c94b957575efea132b8fe558') - -build() { - cd "${srcdir}/gtk+-${pkgver}" - patch -Np1 -i "${srcdir}/xid-collision-debug.patch" || return 1 - - CXX=/bin/false ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --with-xinput=yes \ - --without-libjasper\ - --with-included-loaders=png || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - - echo 'gtk-fallback-icon-theme = "gnome"' > "${pkgdir}/etc/gtk-2.0/gtkrc" || return 1 -} diff --git a/extra/gtk2/gtk2.install b/extra/gtk2/gtk2.install deleted file mode 100644 index 6d415addd..000000000 --- a/extra/gtk2/gtk2.install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - usr/bin/gtk-query-immodules-2.0 > etc/gtk-2.0/gtk.immodules - usr/bin/gdk-pixbuf-query-loaders > etc/gtk-2.0/gdk-pixbuf.loaders -} - -post_upgrade() { - post_install -} - -pre_remove() { - rm -f etc/gtk-2.0/gtk.immodules &>/dev/null - rm -f etc/gtk-2.0/gdk-pixbuf.loaders &>/dev/null -} diff --git a/extra/gtk2/libjpeg-7.patch b/extra/gtk2/libjpeg-7.patch deleted file mode 100644 index 3218aac51..000000000 --- a/extra/gtk2/libjpeg-7.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gtk+-2.18.2/gdk-pixbuf/io-jpeg.c.orig 2009-10-09 09:53:34.000000000 +0200 -+++ gtk+-2.18.2/gdk-pixbuf/io-jpeg.c 2009-10-09 09:54:23.000000000 +0200 -@@ -920,6 +920,8 @@ - return FALSE; - } - } -+ -+ cinfo->scale_num = 1; - - for (cinfo->scale_denom = 2; cinfo->scale_denom <= 8; cinfo->scale_denom *= 2) { - jpeg_calc_output_dimensions (cinfo); diff --git a/extra/gtk2/xid-collision-debug.patch b/extra/gtk2/xid-collision-debug.patch deleted file mode 100644 index d61238c3b..000000000 --- a/extra/gtk2/xid-collision-debug.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- gtk+-2.18.3/gdk/x11/gdkxid.c 2009-06-19 04:59:18.000000000 +0200 -+++ gtk+-2.18.3/gdk/x11/gdkxid.c.new 2009-07-22 11:30:12.000000000 +0200 -@@ -56,10 +56,10 @@ - if (!display_x11->xid_ht) - display_x11->xid_ht = g_hash_table_new ((GHashFunc) gdk_xid_hash, - (GEqualFunc) gdk_xid_equal); -- -+/* - if (g_hash_table_lookup (display_x11->xid_ht, xid)) - g_warning ("XID collision, trouble ahead"); -- -+*/ - g_hash_table_insert (display_x11->xid_ht, xid, data); - } - diff --git a/extra/gutenprint/PKGBUILD b/extra/gutenprint/PKGBUILD deleted file mode 100755 index 547ff0bcf..000000000 --- a/extra/gutenprint/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -# $Id: PKGBUILD 87283 2010-08-11 20:42:35Z andyrtr $ -# Maintainer: Andreas Radke - -pkgname=gutenprint -pkgver=5.2.6 -pkgrel=1 -pkgdesc="Top quality printer drivers for POSIX systems" -arch=('i686' 'x86_64') -license=('GPL') -install=gutenprint.install -depends=('readline' 'gnutls>=2.8.5') # needs to be checked. build log says -Lgnutls but namcap doesn't detect it -makedepends=('gtk2>=2.18.6' 'cups>=1.4.2' 'foomatic-db-engine' 'ghostscript>=8.71') -optdepends=('cups: to use cups printer spooler(recommended)' - 'foomatic-db-engine: to use foomatic spooler' - 'ghostscript: adds postscript support for ijsgutenprint' - 'gimp: adds gutenprint plugin to gimp') -source=(http://downloads.sourceforge.net/gimp-print/$pkgname-$pkgver.tar.bz2) -url="http://gimp-print.sourceforge.net/" -replaces=('gimp-print') -options=('!libtool' '!emptydirs') -md5sums=('1f0d0cbef6c089f4f095e21869fa70db') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-samples --with-cups \ - --disable-translated-cups-ppds --with-gimp2-as-gutenprint \ - --disable-libgutenprintui --enable-libgutenprintui2 --disable-gtktest \ - --enable-cups-ppds --enable-cups-ppds-at-top-level \ - --with-foomatic --with-foomatic3 --with-ghostscript \ - --disable-static --disable-static-genppd --with-ijs \ - --disable-globalized-cups-ppds - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install -} - diff --git a/extra/gutenprint/gutenprint.install b/extra/gutenprint/gutenprint.install deleted file mode 100755 index 05e8bec38..000000000 --- a/extra/gutenprint/gutenprint.install +++ /dev/null @@ -1,9 +0,0 @@ -post_install() { - echo ">>please run /usr/sbin/cups-genppdupdate" - echo ">>and restart cups deamon" -} - -post_upgrade() { - post_install -} - diff --git a/extra/hal/PKGBUILD b/extra/hal/PKGBUILD deleted file mode 100755 index 07316277c..000000000 --- a/extra/hal/PKGBUILD +++ /dev/null @@ -1,79 +0,0 @@ -# $Id: PKGBUILD 61559 2009-12-19 19:21:33Z jgc $ -# Maintainer: Jan de Groot -# Contributor: Link Dupont - -# NOTE!!! -# You'll need to edit your /usr/include/scsi/scsi.h: -# Change "u8" to "__u8" on lines 148 to 150-something - -pkgname=hal -pkgver=0.5.14 -pkgrel=1 -pkgdesc="Hardware Abstraction Layer" -arch=(arm) -license=('GPL' 'custom') -url="http://www.freedesktop.org/wiki/Software/hal" -depends=('dbus-glib>=0.82' 'libusb>=0.1.12' 'udev>=146' 'filesystem>=0.7.1-5' 'hal-info>=0.20090716' 'eject' 'dmidecode' 'pciutils>=3.0.2' 'usbutils>=0.73-5' 'pm-utils>=1.2.5' 'consolekit>=0.4.1' 'util-linux-ng>=2.16') -makedepends=('pkgconfig' 'gperf') -options=('!libtool' '!makeflags') -install=hal.install -source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz - hal - cryptsetup_location.patch - hal-0.5.9-hide-diagnostic.patch - hal-remove-dell-killswitch.patch - hal-KVM-evdev.patch - hal-HDAPS-blacklist.patch - hal-xen-unignore-axes.patch - hal-use-at-console.patch - fix-libusb-detection.patch) - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/cryptsetup_location.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-0.5.9-hide-diagnostic.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-remove-dell-killswitch.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-KVM-evdev.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-HDAPS-blacklist.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-xen-unignore-axes.patch" || return 1 - patch -Np1 -i "${srcdir}/hal-use-at-console.patch" || return 1 - patch -Np1 -i "${srcdir}/fix-libusb-detection.patch" || return 1 - - libtoolize --force || return 1 - aclocal || return 1 - autoconf || return 1 - automake || return 1 - - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --libexecdir=/usr/lib/hal --with-udev-prefix=/etc \ - --enable-static=no --disable-acpi-ibm \ - --disable-man-pages --disable-gtk-doc \ - --disable-docbook-docs --disable-console-kit \ - --disable-policy-kit --disable-acl-management \ - --enable-umount-helper --disable-smbios --disable-acpi \ - --with-hal-user=hal --with-hal-group=hal \ - --with-omap --enable-pmu --without-cpufreq \ - --without-usb-csr --without-keymaps \ - --disable-sonypic --without-dell-backlight \ - --with-pid-file=/var/run/hald.pid || return 1 - - make || return 1 - - make DESTDIR="${pkgdir}" install || return 1 - install -m755 -d "${pkgdir}/etc/rc.d" - install -m755 -d "${pkgdir}/media" || return 1 - install -m755 "${srcdir}/hal" "${pkgdir}/etc/rc.d/" || return 1 - - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 -} -md5sums=('e9163df591a6f38f59fdbfe33e73bf20' - '277e96ac130d7bfce0b30f0b80db8782' - 'c688a3c6574699365926f4fef7441545' - '4d4b6801a1cedca22b8bdd9db73b16fb' - '6d87c3e63184ae3a69caafc846f538a3' - '6507e5091ee2d11a87ae738a8e2caecb' - '1171c2d83b76059f2da7a3538e08fa4e' - '52bd305299aa22ae07f1a862c22d30fa' - '3f11234fb5e5044fbfc5199ec65b182c' - 'da088f12cfc2d190bbf95b747e19ab9e') diff --git a/extra/hal/cryptsetup_location.patch b/extra/hal/cryptsetup_location.patch deleted file mode 100755 index 1e4f5efb9..000000000 --- a/extra/hal/cryptsetup_location.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -Naur hal-0.5.8.1/tools/linux/hal-luks-remove-linux hal-0.5.8.1-new/tools/linux/hal-luks-remove-linux ---- hal-0.5.8.1/tools/linux/hal-luks-remove-linux 2006-09-19 22:23:25.000000000 +0200 -+++ hal-0.5.8.1-new/tools/linux/hal-luks-remove-linux 2007-02-11 13:04:46.000000000 +0100 -@@ -6,7 +6,7 @@ - # This program is free software; you can redistribute it and/or modify - # it under the terms of the GNU General Public License version 2. - --CRYPTSETUP=/sbin/cryptsetup -+CRYPTSETUP=/usr/sbin/cryptsetup - - echo LUKS cryptotext device $HAL_PROP_INFO_UDI is going away - -diff -Naur hal-0.5.8.1/tools/linux/hal-luks-setup-linux hal-0.5.8.1-new/tools/linux/hal-luks-setup-linux ---- hal-0.5.8.1/tools/linux/hal-luks-setup-linux 2006-09-19 22:23:25.000000000 +0200 -+++ hal-0.5.8.1-new/tools/linux/hal-luks-setup-linux 2007-02-11 13:04:45.000000000 +0100 -@@ -9,7 +9,7 @@ - read password - PASSWORD=${PASSWORD//[^[:alnum:]_=[:space:]:.+-]/@} - --CRYPTSETUP=/sbin/cryptsetup -+CRYPTSETUP=/usr/sbin/cryptsetup - - if [ ! -f $CRYPTSETUP ]; then - echo org.freedesktop.Hal.Device.Volume.Crypto.SetupError >&2 -diff -Naur hal-0.5.8.1/tools/linux/hal-luks-teardown-linux hal-0.5.8.1-new/tools/linux/hal-luks-teardown-linux ---- hal-0.5.8.1/tools/linux/hal-luks-teardown-linux 2006-09-19 22:23:25.000000000 +0200 -+++ hal-0.5.8.1-new/tools/linux/hal-luks-teardown-linux 2007-02-11 13:04:44.000000000 +0100 -@@ -6,7 +6,7 @@ - # This program is free software; you can redistribute it and/or modify - # it under the terms of the GNU General Public License version 2. - --CRYPTSETUP=/sbin/cryptsetup -+CRYPTSETUP=/usr/sbin/cryptsetup - - if [ ! -f $CRYPTSETUP ]; then - echo org.freedesktop.Hal.Device.Volume.Crypto.TeardownError >&2 diff --git a/extra/hal/fix-libusb-detection.patch b/extra/hal/fix-libusb-detection.patch deleted file mode 100755 index d4f966dec..000000000 --- a/extra/hal/fix-libusb-detection.patch +++ /dev/null @@ -1,66 +0,0 @@ -From fce91df8ba7f305c624baf1f06961c040b088ecc Mon Sep 17 00:00:00 2001 -From: Joe Marcus Clarke -Date: Tue, 08 Dec 2009 00:05:27 +0000 -Subject: Fix libusb detection on Linux - -Adjust the FreeBSD libusb20 code so that it does not interfere with the -Linux libusb detection. - -Reported by: Robby Workman ---- -diff --git a/configure.in b/configure.in -index a8fda51..8363595 100644 ---- a/configure.in -+++ b/configure.in -@@ -479,9 +479,6 @@ if test "x$with_libpci" != xno ; then - fi - AM_CONDITIONAL([HAVE_LIBPCI], [test "x$USE_LIBPCI" = "xyes"]) - --USE_LIBUSB20=no --USE_LIBUSB=no --LIBUSB20_LIBS="" - AC_ARG_WITH([backend], - AS_HELP_STRING([--with-backend=], - [backend to use (linux/solaris/freebsd/dummy)]), -@@ -510,21 +507,25 @@ AM_CONDITIONAL(HALD_COMPILE_FREEBSD, [test x$HALD_BACKEND = xfreebsd], [Compilin - AM_CONDITIONAL(HALD_COMPILE_SOLARIS, [test x$HALD_BACKEND = xsolaris], [Compiling for Solaris]) - AC_SUBST(HALD_BACKEND) - if test "x$HALD_BACKEND" = "xfreebsd"; then -- AC_CHECK_LIB([usb20], [libusb20_dev_get_info], [USE_LIBUSB20=yes], [USE_LIBUSB20=no]) --fi --if test "x$USE_LIBUSB20" = "xno"; then -- AC_CHECK_LIB([usb], [libusb20_dev_get_info], [USE_LIBUSB=yes], [USE_LIBUSB=no]) --fi --AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_LIBUSB20" = "xyes"]) --AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_LIBUSB" = "xyes"]) --if test "x$USE_LIBUSB20" = "xyes"; then -- AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libusb20]) -- LIBUSB20_LIBS="-lusb20" --elif test "x$USE_LIBUSB" = "xyes"; then -- AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libsub20]) -- LIBUSB20_LIBS="-lusb" -+ USE_BSDLIBUSB20=no -+ USE_BSDLIBUSB=no -+ LIBUSB20_LIBS="" -+ AC_CHECK_LIB([usb20], [libusb20_dev_get_info], [USE_BSDLIBUSB20=yes], [USE_BSDLIBUSB20=no]) -+ if test "x$USE_BSDLIBUSB20" = "xno"; then -+ AC_CHECK_LIB([usb], [libusb20_dev_get_info], [USE_BSDLIBUSB=yes], [USE_BSDLIBUSB=no]) -+ fi -+ AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_BSDLIBUSB20" = "xyes" -o "x$USE_BSDLIBUSB" = "xyes"]) -+ if test "x$USE_BSDLIBUSB20" = "xyes"; then -+ AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libusb20]) -+ LIBUSB20_LIBS="-lusb20" -+ elif test "x$USE_BSDLIBUSB" = "xyes"; then -+ AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libsub20]) -+ LIBUSB20_LIBS="-lusb" -+ fi -+ AC_SUBST(LIBUSB20_LIBS) -+else -+ AM_CONDITIONAL([HAVE_LIBUSB20], [false]) - fi --AC_SUBST(LIBUSB20_LIBS) - - dnl DBUS API is subject to changes - AC_DEFINE_UNQUOTED(DBUS_API_SUBJECT_TO_CHANGE, [], [DBUS API is subject to change]) --- -cgit v0.8.3-6-g21f6 diff --git a/extra/hal/hal b/extra/hal/hal deleted file mode 100755 index 012d456ed..000000000 --- a/extra/hal/hal +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -case "$1" in - start) - #Check for running dbus, start when not running - ck_daemon dbus && /etc/rc.d/dbus start - if [ -x /etc/rc.d/acpid ]; then - ck_daemon acpid && /etc/rc.d/acpid start - fi - stat_busy "Starting Hardware Abstraction Layer" - if [ ! -x /var/cache/hald ] ; then - install -m755 -g 82 -o 82 -d /var/cache/hald - fi - if [ ! -x /var/run/hald ]; then - install -m755 -g 82 -o 82 -d /var/run/hald - fi - if [ ! -x /var/run/hald/hald-local ]; then - install -m755 -g 0 -o 0 -d /var/run/hald/hald-local - fi - if [ ! -x /var/run/hald/hald-runner ]; then - install -m755 -g 0 -o 0 -d /var/run/hald/hald-runner - fi - /usr/sbin/hald - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon hal - stat_done - fi - ;; - stop) - stat_busy "Stopping Hardware Abstraction Layer" - [ -f /var/run/hald.pid ] && kill `cat /var/run/hald.pid` &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon hal - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" - ;; -esac -exit 0 diff --git a/extra/hal/hal-0.5.9-hide-diagnostic.patch b/extra/hal/hal-0.5.9-hide-diagnostic.patch deleted file mode 100755 index 58c882d77..000000000 --- a/extra/hal/hal-0.5.9-hide-diagnostic.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi.orig 2007-05-01 21:39:31.000000000 +0000 -+++ hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi 2007-05-01 21:51:14.000000000 +0000 -@@ -100,6 +100,11 @@ - - - -+ -+ -+ true -+ -+ - - - diff --git a/extra/hal/hal-HDAPS-blacklist.patch b/extra/hal/hal-HDAPS-blacklist.patch deleted file mode 100755 index 8a6822817..000000000 --- a/extra/hal/hal-HDAPS-blacklist.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e1f85fe0cdfa7e4d4ce7a811d0b0c90bf38fba0c Mon Sep 17 00:00:00 2001 -From: Peter Hutterer -Date: Thu, 25 Jun 2009 09:47:27 +1000 -Subject: [PATCH] Blacklist HDAPS accelerometer device from being picked up in X. - -This device posts accelerometer data through ABS_X/ABS_Y, making X unusable -if it's controlling the pointer. ---- - fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++ - 1 files changed, 6 insertions(+), 0 deletions(-) - -diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi -index a342421..89ba672 100644 ---- a/fdi/policy/10osvendor/10-x11-input.fdi -+++ b/fdi/policy/10osvendor/10-x11-input.fdi -@@ -38,5 +38,11 @@ - evdev - - -+ -+ -+ -+ -+ - - --- -1.6.3.rc1.2.g0164.dirty - diff --git a/extra/hal/hal-KVM-evdev.patch b/extra/hal/hal-KVM-evdev.patch deleted file mode 100755 index 917655ed1..000000000 --- a/extra/hal/hal-KVM-evdev.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 7618498eec840cb26474dc47821e083957772706 Mon Sep 17 00:00:00 2001 -From: Peter Hutterer -Date: Fri, 20 Mar 2009 14:37:24 +1000 -Subject: [PATCH] Add x11_driver for American Megatrends KVM. - -This device exposes only ABS_X, ABS_Y and buttons. It gets input.joystick -assigned but not input.mouse, hence the default evdev mapping doesn't pick up -on it. - -Red Hat Bug 484776 - -Signed-off-by: Peter Hutterer ---- - fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++ - 1 files changed, 6 insertions(+), 0 deletions(-) - -diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi -index 769f75b..eb9767e 100644 ---- a/fdi/policy/10osvendor/10-x11-input.fdi -+++ b/fdi/policy/10osvendor/10-x11-input.fdi -@@ -2,6 +2,12 @@ - - - -+ -+ -+ evdev -+ -+ - - - evdev --- -1.6.0.6 - diff --git a/extra/hal/hal-remove-dell-killswitch.patch b/extra/hal/hal-remove-dell-killswitch.patch deleted file mode 100755 index ae0cf7a2b..000000000 --- a/extra/hal/hal-remove-dell-killswitch.patch +++ /dev/null @@ -1,201 +0,0 @@ -diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux ---- hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux 2008-08-22 07:34:47.000000000 +0100 -+++ hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux 2009-03-03 10:45:20.000000000 +0000 -@@ -8,11 +8,6 @@ - # the Free Software Foundation; either version 2 of the License, or - # (at your option) any later version. - --DELL_WCTL=/usr/bin/dellWirelessCtl --if [ -x "/usr/sbin/dellWirelessCtl" ]; then -- DELL_WCTL=/usr/sbin/dellWirelessCtl --fi -- - if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then - if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then - value="`hal-system-sonypic getbluetooth`" -@@ -22,25 +17,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue - exit 1 - fi - exit ${value} -- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # TODO: write our own binary that links with libsmbios? -- $DELL_WCTL --st_bt -- value=$? -- if [ "$value" = "0" ]; then -- exit 1 -- elif [ "$value" = "1" ]; then -- exit 0 -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $value" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi - elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -r "$HAL_PROP_LINUX_SYSFS_PATH" ]; then - read value < $HAL_PROP_LINUX_SYSFS_PATH 2> /dev/null - if [ $? -eq 0 ]; then -@@ -55,56 +31,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue - echo "Access type not supported" >&2 - exit 1 - fi --elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then -- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # TODO: write our own binary that links with libsmbios? -- $DELL_WCTL --st_wlan -- value=$? -- if [ "$value" = "0" ]; then -- exit 1 -- elif [ "$value" = "1" ]; then -- exit 0 -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $value" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "Access type not supported" >&2 -- exit 1 -- fi --elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then -- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # TODO: write our own binary that links with libsmbios? -- $DELL_WCTL --st_wwan -- value=$? -- if [ "$value" = "0" ]; then -- exit 1 -- elif [ "$value" = "1" ]; then -- exit 0 -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $value" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "Access type not supported" >&2 -- exit 1 -- fi - else - echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 - echo "Killswitch type not supported" >&2 -diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux ---- hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux 2008-10-24 09:45:54.000000000 +0100 -+++ hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux 2009-03-03 10:44:49.000000000 +0000 -@@ -8,11 +8,6 @@ - # the Free Software Foundation; either version 2 of the License, or - # (at your option) any later version. - --DELL_WCTL=/usr/bin/dellWirelessCtl --if [ -x "/usr/sbin/dellWirelessCtl" ]; then -- DELL_WCTL=/usr/sbin/dellWirelessCtl --fi -- - if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then - if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then - hal-system-sonypic setbluetooth $value -@@ -23,26 +18,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue - exit 1 - fi - exit 0 -- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # TODO: write our own binary that links with libsmbios? -- if [ "$value" = "true" ]; then -- $DELL_WCTL --bt 1 -- ret=$? -- else -- $DELL_WCTL --bt 0 -- ret=$? -- fi -- if [ "$ret" != "0" ]; then -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $ret" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi - elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -w "$HAL_PROP_LINUX_SYSFS_PATH" ]; then - if [ "$value" = "true" ]; then - bit=1; -@@ -61,60 +36,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue - echo "Access type not supported" >&2 - exit 1 - fi --elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then -- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # As a side effect we disable the physical kill switch -- # TODO: write our own binary that links with libsmbios? -- if [ "$value" = "true" ]; then -- $DELL_WCTL --sw_wlan 0 --wlan 1 -- ret=$? -- else -- $DELL_WCTL --sw_wlan 0 --wlan 0 -- ret=$? -- fi -- if [ "$ret" != "0" ]; then -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $ret" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "Access type not supported" >&2 -- exit 1 -- fi --elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then -- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then -- if [ -x "$DELL_WCTL" ]; then -- # As a side effect we disable the physical kill switch -- # TODO: write our own binary that links with libsmbios? -- if [ "$value" = "true" ]; then -- $DELL_WCTL --sw_wwan 0 --wwan 1 -- ret=$? -- else -- $DELL_WCTL --sw_wwan 0 --wwan 0 -- ret=$? -- fi -- if [ "$ret" != "0" ]; then -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl returned $ret" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2 -- exit 1 -- fi -- else -- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 -- echo "Access type not supported" >&2 -- exit 1 -- fi - else - echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2 - echo "Killswitch type not supported" >&2 diff --git a/extra/hal/hal-use-at-console.patch b/extra/hal/hal-use-at-console.patch deleted file mode 100755 index 0b32f17f0..000000000 --- a/extra/hal/hal-use-at-console.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up hal-0.5.13/hal.conf.in.drop-polkit hal-0.5.13/hal.conf.in ---- hal-0.5.13/hal.conf.in.drop-polkit 2009-02-04 17:07:23.000000000 -0500 -+++ hal-0.5.13/hal.conf.in 2009-07-29 23:15:16.866766074 -0400 -@@ -25,7 +25,41 @@ - send_interface="org.freedesktop.Hal.Device"/> - -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - -+ -+ - - -Date: Mon, 19 Oct 2009 14:27:20 +1000 -Subject: [PATCH] Un-ignore absolute axes for the Xen Virtual Pointer. - -The evdev-internal axis type picking fails for the Xen Virtual Pointer as it -exposes both relative and absolute axes. Evdev picks the relative axes by -default, leading to a immovable pointer if the Xen backend only sends -absolute coordinates. - -Explicitly tell evdev to not ignore the absolute axes. - -https://bugzilla.redhat.com/show_bug.cgi?id=523914 - -Signed-off-by: Peter Hutterer ---- - fdi/policy/10osvendor/10-x11-input.fdi | 7 +++++++ - 1 files changed, 7 insertions(+), 0 deletions(-) - -diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi -index 89ba672..752c4ab 100644 ---- a/fdi/policy/10osvendor/10-x11-input.fdi -+++ b/fdi/policy/10osvendor/10-x11-input.fdi -@@ -44,5 +44,12 @@ - - - -+ -+ -+ -+ false -+ false -+ - - --- -1.6.2.5 - diff --git a/extra/hal/hal.install b/extra/hal/hal.install deleted file mode 100755 index 3d292b859..000000000 --- a/extra/hal/hal.install +++ /dev/null @@ -1,20 +0,0 @@ -post_install() { - getent group hal >/dev/null || usr/sbin/groupadd -g 82 hal - getent group optical >/dev/null || usr/sbin/groupadd -g 93 optical - getent group floppy >/dev/null || usr/sbin/groupadd -g 94 floppy - getent group storage >/dev/null || usr/sbin/groupadd -g 95 storage - getent passwd hal >/dev/null || usr/sbin/useradd -c 'HAL daemon' -u 82 -g hal -G optical,floppy,storage -d '/' -s /bin/false hal - usr/bin/passwd -l hal &>/dev/null -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - usr/sbin/userdel hal &>/dev/null - usr/sbin/groupdel hal &>/dev/null -} diff --git a/extra/icu/28107-icu-arm.patch b/extra/icu/28107-icu-arm.patch deleted file mode 100644 index 2aab79129..000000000 --- a/extra/icu/28107-icu-arm.patch +++ /dev/null @@ -1,20 +0,0 @@ -Index: tools/toolutil/pkg_genc.c -=================================================================== ---- a/tools/toolutil/pkg_genc.c -+++ b/tools/toolutil/pkg_genc.c -@@ -1,4 +1,4 @@ - /****************************************************************************** -- * Copyright (C) 2009, International Business Machines -+ * Copyright (C) 2009-2010, International Business Machines - * Corporation and others. All Rights Reserved. - ******************************************************************************* -@@ -119,8 +119,8 @@ - {"gcc", - ".globl %s\n" -- "\t.section .note.GNU-stack,\"\",@progbits\n" -+ "\t.section .note.GNU-stack,\"\",%%progbits\n" - "\t.section .rodata\n" - "\t.align 8\n" /* Either align 8 bytes or 2^8 (256) bytes. 8 bytes is needed. */ -- "\t.type %s,@object\n" -+ "\t.type %s,%%object\n" - "%s:\n\n", diff --git a/extra/icu/PKGBUILD b/extra/icu/PKGBUILD deleted file mode 100644 index 428064ce8..000000000 --- a/extra/icu/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# Maintainer: Mike Staszel -# Contributor: Art Gramlich - -# Plugbox changes: -# - icu needs the patch to build on ARM - -pkgname=icu -pkgver=4.4.1 -pkgrel=1 -pkgdesc="International Components for Unicode library" -arch=(i686 x86_64 arm) -url="http://www.icu-project.org/" -license=('custom:"icu"') -depends=('gcc-libs' 'sh') -source=(http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver//./_}-src.tgz - 28107-icu-arm.patch) -md5sums=('b6bc0a1153540b2088f8b03e0ba625d3' - '930eec07e19c542d54e28d40a3c2e709') - -build() { - cd ${srcdir}/icu/source - - patch -Np1 -i $srcdir/28107-icu-arm.patch || return 1 - - ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man - make || return 1 - make -j1 DESTDIR=${pkgdir} install || return 1 - - # Install license - install -Dm644 ${srcdir}/icu/license.html ${pkgdir}/usr/share/licenses/icu/license.html -} diff --git a/extra/imagemagick-doc/PKGBUILD b/extra/imagemagick-doc/PKGBUILD deleted file mode 100644 index 11fbe93cd..000000000 --- a/extra/imagemagick-doc/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# Maintainer: Ian Botley -# Contributor: Eric Belanger - -pkgname=imagemagick-doc -pkgver=6.6.0.9 -pkgrel=9 -pkgdesc="The ImageMagick documentation (utilities manuals and libraries API)" -arch=('any') -url="http://www.imagemagick.org/" -license=('custom') -depends=('imagemagick') -options=('!makeflags') -source=(ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz) -md5sums=('e2c654ba9a0bc002608e40ce523d3e13') -sha1sums=('797fae0d0b58ba148750f20af292dad75a1c4881') - -build() { - cd "${srcdir}/ImageMagick-${pkgver%.*}-${pkgver##*.}" - ./configure --prefix=/usr || return 1 - make DESTDIR="${pkgdir}" install-data-html || return 1 - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" || return 1 - install -D -m644 NOTICE "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" || return 1 -} diff --git a/extra/imagemagick/ChangeLog b/extra/imagemagick/ChangeLog deleted file mode 100644 index 91a65ce1b..000000000 --- a/extra/imagemagick/ChangeLog +++ /dev/null @@ -1,192 +0,0 @@ -2010-02-26 Eric Belanger - - * imagemagick 6.6.0.0-1 - * Upstream update - -2010-02-14 Eric Belanger - - * imagemagick 6.5.9.5-1 - * Upstream update - -2010-01-18 Eric Belanger - - * imagemagick 6.5.9.0-2 - * Fixed undefined symbols - -2010-01-14 Eric Belanger - - * imagemagick 6.5.9.0-1 - * Upstream update - -2009-12-12 Eric Belanger - - * imagemagick 6.5.8.5-1 - * Upstream update - -2009-11-22 Eric Belanger - - * imagemagick 6.5.7.10-1 - * Upstream update - -2009-11-08 Eric Belanger - - * imagemagick 6.5.7.5-1 - * Upstream update - -2009-10-14 Eric Belanger - - * imagemagick 6.5.6.10-1 - * Upstream update - -2009-09-18 Eric Belanger - - * imagemagick 6.5.6.1-1 - * Upstream update - -2009-09-02 Eric Belanger - - * imagemagick 6.5.5.6-1 - * Upstream update - -2009-08-05 Eric Belanger - - * imagemagick 6.5.4.8-1 - * Upstream update - -2009-07-23 Eric Belanger - - * imagemagick 6.5.4.5-1 - * Upstream update - -2009-06-05 Eric Belanger - - * imagemagick 6.5.3.2-1 - * Upstream update - * Removed insecure RPATH (close FS#14843) - -2009-05-21 Eric Belanger - - * imagemagick 6.5.2.7-1 - * Upstream update - -2009-04-29 Eric Belanger - - * imagemagick 6.5.1.9-1 - * Upstream update - -2009-03-31 Eric Belanger - - * imagemagick 6.5.0.10-1 - * Upstream update - -2009-03-17 Eric Belanger - - * imagemagick 6.5.0.1-1 - * Upstream update - -2009-02-27 Eric Belanger - - * imagemagick 6.4.9.7-1 - * Upstream update - -2009-02-07 Eric Belanger - - * imagemagick 6.4.9.2-1 - * Upstream update - -2009-01-30 Eric Belanger - - * imagemagick 6.4.8.10-1 - * Upstream update - -2008-12-29 Eric Belanger - - * imagemagick 6.4.8.2-1 - * Upstream update - -2008-12-14 Eric Belanger - - * imagemagick 6.4.7.8-1 - * Upstream update - -2008-12-05 Eric Belanger - - * imagemagick 6.4.7.0-1 - * Upstream update - * Rebuild against heimdal 1.2.1 - -2008-11-25 Eric Belanger - - * imagemagick 6.4.6.3-1 - * Upstream update - -2008-11-14 Eric Belanger - - * imagemagick 6.4.5.6-1 - * Upstream update - -2008-10-26 Eric Belanger - - * imagemagick 6.4.5.0-1 - * Upstream update - -2008-10-18 Eric Belanger - - * imagemagick 6.4.4.9-1 - * Upstream update - -2008-10-03 Eric Belanger - - * imagemagick 6.4.4.1-1 - * Upstream update - -2008-09-06 Eric Belanger - - * imagemagick 6.4.3.6-1 - * Upstream update - * Added JPEG2000 support (close FS#10544) - -2008-08-19 Eric Belanger - - * imagemagick 6.4.2.10-1 - * Upstream update - -2008-08-11 Eric Belanger - - * imagemagick 6.4.2.7-1 - * Upstream update - * Added bzip2 and libxml2 depends - * Disabled docs - -2008-07-18 Eric Belanger - - * imagemagick 6.4.2.4-1 - * Upstream update - -2008-06-23 Eric Belanger - - * imagemagick 6.4.2.1-1 - * Upstream update - * Fixed linking problem (close FS#10574) - -2008-05-19 Eric Belanger - - * imagemagick 6.4.1.3-1 - * Upstream update - -2008-04-30 Eric Belanger - - * imagemagick 6.4.1.0-1 - * Upstream update - -2008-04-24 Eric Belanger - - * imagemagick 6.4.0.9-1 - * Upstream update - -2008-03-29 Eric Belanger - - * imagemagick 6.4.0.2-1 - * Upstream update - * Added dvips to delegates list for dvi support (close FS#8914) - * Added ChangeLog diff --git a/extra/imagemagick/PKGBUILD b/extra/imagemagick/PKGBUILD deleted file mode 100644 index a13c0adef..000000000 --- a/extra/imagemagick/PKGBUILD +++ /dev/null @@ -1,52 +0,0 @@ -# $Id: PKGBUILD 70509 2010-02-27 04:25:53Z eric $ -# Maintainer: Eric Belanger - -# NOTE: To circumvent linking problems (FS#10574), this package must now be built the following way: -# install old package, build new package, install new package, rebuild -# Just uninstalling ImageMagick before build fails as it is used during the build processs - -pkgname=imagemagick -pkgver=6.6.0.9 -pkgrel=9 -pkgdesc="An image viewing/manipulation program" -arch=('i686' 'x86_64') -url="http://www.imagemagick.org/" -license=('custom') -depends=('lcms' 'libwmf' 'librsvg' 'libxt' 'gcc-libs' 'ghostscript' 'openexr' 'libtool' 'heimdal' 'bzip2' 'libxml2' 'jasper') -makedepends=('imagemagick') # comment this out 1st pass -options=('!makeflags' '!docs') -source=(ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz \ - libpng_mmx_patch_x86_64.patch perlmagick.rpath.patch) -md5sums=('e2c654ba9a0bc002608e40ce523d3e13' '069980fc2590c02aed86420996259302'\ - 'ff9974decbfe9846f8e347239d87e4eb') -sha1sums=('797fae0d0b58ba148750f20af292dad75a1c4881' 'e42f3acbe85b6098af75c5cecc9a254baaa0482c'\ - '23405f80904b1de94ebd7bd6fe2a332471b8c283') - -build() { - cd "${srcdir}/ImageMagick-${pkgver%.*}-${pkgver##*.}" - - if [ "${CARCH}" = "x86_64" ]; then - patch -Np1 < ../libpng_mmx_patch_x86_64.patch || return 1 - fi - - patch -p0 < ../perlmagick.rpath.patch || return 1 - - # When there is a soname bump, remove 'LIBS=-lMagickWand' from configure line and build/install. Then, readd 'LIBS=-lMagickWand' and build/install twice. - # comment next line out on firts pass. - LIBS=-lMagickWand \ - ./configure --prefix=/usr --without-modules --disable-static --enable-openmp \ - --with-x --with-wmf --with-openexr --with-xml \ - --with-gslib --with-gs-font-dir=/usr/share/fonts/Type1 \ - --with-perl --with-perl-options="INSTALLDIRS=vendor" \ - --without-gvc --without-djvu --without-autotrace --with-jp2 \ - --without-jbig --without-fpx --without-dps || return 1 - - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" || return 1 - install -D -m644 NOTICE "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE" || return 1 - - #Cleaning - find "${pkgdir}" -name '*.bs' -exec rm {} \; || return 1 - rm -f "${pkgdir}"/usr/lib/*.la || return 1 -} diff --git a/extra/imagemagick/libpng_mmx_patch_x86_64.patch b/extra/imagemagick/libpng_mmx_patch_x86_64.patch deleted file mode 100644 index d86449a28..000000000 --- a/extra/imagemagick/libpng_mmx_patch_x86_64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur ImageMagick-6.2.7.orig/coders/png.c ImageMagick-6.2.7/coders/png.c ---- ImageMagick-6.2.7.orig/coders/png.c 2006-05-21 12:35:55.784852536 +0200 -+++ ImageMagick-6.2.7/coders/png.c 2006-05-21 12:36:50.698504392 +0200 -@@ -164,6 +164,8 @@ - #define PNG_MAX_UINT (png_uint_32) 0x7fffffffL - #endif - -+#undef PNG_ASSEMBLER_CODE_SUPPORTED -+ - /* - Constant strings for known chunk types. If you need to add a chunk, - add a string holding the name here. To make the code more diff --git a/extra/imagemagick/perlmagick.rpath.patch b/extra/imagemagick/perlmagick.rpath.patch deleted file mode 100644 index 958c0f2ee..000000000 --- a/extra/imagemagick/perlmagick.rpath.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- Makefile.in.orig 2009-05-26 16:22:11.000000000 -0300 -+++ Makefile.in 2009-05-26 16:23:27.000000000 -0300 -@@ -10067,6 +10067,7 @@ - - @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@$(PERLMAKEFILE): perl-sources $(PERLMAKEMAKER) - @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @PERL@ Makefile.PL $(PERL_MAKE_OPTIONS) -+@WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @SED@ -i 's|LD_RUN_PATH|DIE_LD_RUN_PATH_DIE|g' Makefile - - @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@install-exec-perl: $(MAGICKCORE_LIBS) $(MAGICKWAND_LIBS) $(PERLMAKEFILE) - @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && $(MAKE) CC='@CC@' install diff --git a/extra/libsigc++/PKGBUILD b/extra/libsigc++/PKGBUILD deleted file mode 100644 index c576a85c8..000000000 --- a/extra/libsigc++/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 81927 2010-06-07 10:44:11Z jgc $ -# Maintainer: Jan de Groot -# Contributor: Tom Newsom - -# Plugbox changed only the gcc-lib depends to be 4.4.3-5 -# instead of 4.5.0 - -pkgbase=libsigc++ -pkgname=('libsigc++' 'libsigc++-docs') -pkgver=2.2.8 -pkgrel=1 -arch=(i686 x86_64) -license=('LGPL') -url="http://libsigc.sourceforge.net/" -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.2/${pkgname}-${pkgver}.tar.bz2) -makedepends=('gcc-libs>=4.4.3-5') -options=(!libtool !emptydirs) -sha256sums=('0fd75fd8249e09ae2fd3ffd20c3fbaea11b47d71ba5ba2340ed98b6bdca40ea8') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 -} - -package_libsigc++() { - pkgdesc="Libsigc++ implements a full callback system for use in widget libraries - V2" - depends=('gcc-libs>=4.4.3-5') - provides=("libsigc++2.0=${pkgver}") - replaces=('libsigc++2.0') - conflicts=('libsigc++2.0') - cd "${srcdir}/libsigc++-${pkgver}" - sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} - -package_libsigc++-docs() { - pkgdesc="Developer documentation for libsigc++" - provides=("libsigc++2.0-docs=${pkgver}") - replaces=('libsigc++2.0-docs') - conflicts=('libsigc++2.0-docs') - cd "${srcdir}/libsigc++-${pkgver}/docs" - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/extra/libvpx/PKGBUILD b/extra/libvpx/PKGBUILD deleted file mode 100644 index 079e7947a..000000000 --- a/extra/libvpx/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# Maintainer: Ionut Biru - -# Plugbox changes: -# Removed "--enable-shared" from ./configure for ARMv5 - -pkgname=libvpx -pkgver=0.9.1 -pkgrel=1 -pkgdesc="The VP8 Codec SDK" -arch=('i686' 'x86_64') -url="http://www.webmproject.org/" -license=('BSD') -depends=('glibc') -makedepends=('yasm') -source=(http://webm.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('a18acb7a1a2fd62268e63aab860b43ff04669b9e') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --enable-vp8 \ - --enable-runtime-cpu-detect \ - --enable-postproc \ - --enable-pic \ - --disable-install-docs \ - --disable-install-srcs - make || return 1 - make DIST_DIR="$pkgdir/usr" install || return 1 - install -D -m 0644 LICENSE "$pkgdir/usr/share/licenses/${pkgname}/LICENSE" || return 1 -} diff --git a/extra/mesa/LICENSE b/extra/mesa/LICENSE deleted file mode 100755 index ae33d2709..000000000 --- a/extra/mesa/LICENSE +++ /dev/null @@ -1,82 +0,0 @@ -Disclaimer - -Mesa is a 3-D graphics library with an API which is very similar to -that of OpenGL* -To the extent that Mesa utilizes the OpenGL command syntax or state -machine, it is being used with authorization from Silicon Graphics, -Inc.(SGI). However, the author does not possess an OpenGL license -from SGI, and makes no claim that Mesa is in any way a compatible -replacement for OpenGL or associated with SGI. Those who want a -licensed implementation of OpenGL should contact a licensed -vendor. - -Please do not refer to the library as MesaGL (for legal -reasons). It's just Mesa or The Mesa 3-D graphics -library - -* OpenGL is a trademark of Silicon Graphics Incorporated. - -License / Copyright Information - -The Mesa distribution consists of several components. Different copyrights -and licenses apply to different components. For example, GLUT is copyrighted -by Mark Kilgard, some demo programs are copyrighted by SGI, some of the Mesa -device drivers are copyrighted by their authors. See below for a list of -Mesa's main components and the license for each. - -The core Mesa library is licensed according to the terms of the MIT license. -This allows integration with the XFree86, Xorg and DRI projects. - -The default Mesa license is as follows: - -Copyright (C) 1999-2007 Brian Paul All Rights Reserved. - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Attention, Contributors - -When contributing to the Mesa project you must agree to the licensing terms -of the component to which you're contributing. -The following section lists the primary components of the Mesa distribution -and their respective licenses. - - -Mesa Component Licenses - -Component Location Primary Author License ----------------------------------------------------------------------------- -Main Mesa code src/mesa/ Brian Paul Mesa (MIT) - -Device drivers src/mesa/drivers/* See drivers See drivers - -Ext headers include/GL/glext.h SGI SGI Free B - include/GL/glxext.h - -GLUT src/glut/ Mark Kilgard Mark's copyright - -Mesa GLU library src/glu/mesa/ Brian Paul GNU-LGPL - -SGI GLU library src/glu/sgi/ SGI SGI Free B - -demo programs progs/demos/ various see source files - -X demos progs/xdemos/ Brian Paul see source files - -SGI demos progs/samples/ SGI SGI copyright - -RedBook demos progs/redbook/ SGI SGI copyright diff --git a/extra/mesa/PKGBUILD b/extra/mesa/PKGBUILD deleted file mode 100755 index d2f9ad1f2..000000000 --- a/extra/mesa/PKGBUILD +++ /dev/null @@ -1,137 +0,0 @@ -# Maintainer: Mike Staszel - -# Plugbox Modifications: -# Removed ATI, SIS, TDFX - -pkgbase="mesa" -pkgname=('mesa' 'libgl' 'unichrome-dri' 'mga-dri' 'savage-dri') -pkgver=7.7.1 -pkgrel=3 -arch=(arm) -makedepends=('glproto>=1.4.11' 'pkgconfig' 'libdrm>=2.4.19' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1' 'libx11>=1.3.3' 'libxt>=1.0.7' -'gcc-libs>=4.4.3' 'dri2proto>=2.1' 'python') -url="http://mesa3d.sourceforge.net" -license=('custom') -options=(!makeflags) -source=(ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2 - #ftp://ftp.freedesktop.org/pub/mesa/${pkgver/.0.902//}RC/MesaLib-${pkgver/0.902/1-rc2}.tar.bz2 - ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaDemos-${pkgver}.tar.bz2 - #ftp://ftp.freedesktop.org/pub/mesa/${pkgver/.0.902//}RC/MesaDemos-${pkgver/0.902/1-rc2}.tar.bz2 - ftp://ftp.archlinux.org/other/mesa/gl-manpages-1.0.1.tar.bz2 - mesa-7.1-link-shared.patch - intel-revert-vbl.patch - LICENSE) -md5sums=('46664d99e03f1e3ac078a7fea02af115' - 'aeb39645d80d656e0adebaa09e5bcd03' - '6ae05158e678f4594343f32c2ca50515' - '8420bed348e7016ef03cac6545d68389' - 'a111f4dc82e894f8801bc3fa129af7af' - '5c65a0fe315dd347e09b1f2826a1df5a') - -build() { - cd "${srcdir}/Mesa-${pkgver}" - #cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}" - patch -Np1 -i "${srcdir}/mesa-7.1-link-shared.patch" || return 1 - patch -Np1 -i "${srcdir}/intel-revert-vbl.patch" || return 1 - ./configure --prefix=/usr \ - --with-dri-driverdir=/usr/lib/xorg/modules/dri \ - --with-dri-drivers=swrast,unichrome,mga,savage \ - --disable-gallium-intel \ - --enable-glx-tls \ - --with-driver=dri \ - --enable-xcb \ - --disable-glut --disable-gallium || return 1 - -# --with-state-trackers=dri,egl \ -# --enable-gallium-nouveau \ - -# --with-state-trackers=yes \ # gentoo: glx,dri,egl -# --disable-gallium build gallium [default=enabled] -# --disable-gallium-intel build gallium intel [default=enabled] -# --enable-gallium-radeon build gallium radeon [default=disabled] -# --enable-gallium-nouveau build gallium nouveau [default=disabled] - -#ls src/Mesa-7.6/src/mesa/drivers/dri/ -#common dri.pc.in fb ffb gamma glcore i810 i915 i965 intel mach64 mga r128 r200 r300 r600 radeon s3v savage sis swrast tdfx trident unichrome -#ls src/Mesa-7.6/src/gallium/drivers/ -#cell failover i915simple i965simple identity llvmpipe nouveau nv04 nv10 nv20 nv30 nv40 nv50 r300 softpipe trace - - - make || return 1 - - cd "${srcdir}/gl-manpages-1.0.1" - ./configure --prefix=/usr || return 1 - make || return 1 -} - -package_libgl() { - depends=('libdrm>=2.4.17-2' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1') - pkgdesc="Mesa 3-D graphics library and DRI software rasterizer" - - cd "${srcdir}/Mesa-${pkgver}" || return 1 -# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}" || return 1 - install -m755 -d "${pkgdir}/usr/lib" || return 1 - install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions" - - bin/minstall lib/libGL.so* "${pkgdir}/usr/lib/" || return 1 - - cd src/mesa/drivers/dri - make -C swrast DESTDIR="${pkgdir}" install || return 1 - install -m755 libdricore.so "${pkgdir}/usr/lib/xorg/modules/dri/" || return 1 - ln -s libglx.xorg "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" || return 1 - - install -m755 -d "${pkgdir}/usr/share/licenses/libgl" - install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libgl/" || return 1 -} - -package_mesa() { - depends=('libgl' 'libx11>=1.3.2' 'libxt>=1.0.7' 'gcc-libs>=4.4.2' 'dri2proto>=2.1' 'libdrm>=2.4.17-2') - pkgdesc="Mesa 3-D graphics libraries and include files" - - cd "${srcdir}/Mesa-${pkgver}" || return 1 -# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}" || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -m755 -d "${pkgdir}/usr/bin" - install -m755 progs/xdemos/glx{gears,info} "${pkgdir}/usr/bin/" || return 1 - - rm -f "${pkgdir}/usr/lib/libGL.so"* - rm -rf "${pkgdir}/usr/lib/xorg" - rm -f "${pkgdir}/usr/include/GL/glew.h" - rm -f "${pkgdir}/usr/include/GL/glxew.h" - rm -f "${pkgdir}/usr/include/GL/wglew.h" - - cd "${srcdir}/gl-manpages-1.0.1" || return 1 - make DESTDIR="${pkgdir}" install || return 1 - - install -m755 -d "${pkgdir}/usr/share/licenses/mesa" - install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa/" || return 1 -} - -package_unichrome-dri() { - depends=("libgl=${pkgver}") - pkgdesc="Mesa DRI drivers for S3 Graphics/VIA Unichrome" - - cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1 -# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1 - make -C unichrome DESTDIR="${pkgdir}" install || return 1 -} - -package_mga-dri() { - depends=("libgl=${pkgver}") - pkgdesc="Mesa DRI drivers for Matrox" - conflicts=('xf86-video-mga<1.4.11') - - cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1 -# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1 - make -C mga DESTDIR="${pkgdir}" install || return 1 -} - -package_savage-dri() { - depends=("libgl=${pkgver}") - pkgdesc="Mesa DRI drivers for S3 Sraphics/VIA Savage" - conflicts=('xf86-video-savage<2.3.1') - - cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1 -# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1 - make -C savage DESTDIR="${pkgdir}" install || return 1 -} diff --git a/extra/mesa/intel-revert-vbl.patch b/extra/mesa/intel-revert-vbl.patch deleted file mode 100755 index 039441473..000000000 --- a/extra/mesa/intel-revert-vbl.patch +++ /dev/null @@ -1,21 +0,0 @@ -commit 532d2051245a1d8afe7ca236f1d966d555bb121a -Author: Dave Airlie -Date: Fri Sep 12 17:21:25 2008 +1000 - - Revert "intel: sync to vblank by default" - - This reverts commit e9bf3e4cc9a7e4bcd4c45bd707541d26ecdf0409. - -diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c -index c193830..f02192d 100644 ---- a/src/mesa/drivers/dri/intel/intel_screen.c -+++ b/src/mesa/drivers/dri/intel/intel_screen.c -@@ -55,7 +55,7 @@ PUBLIC const char __driConfigOptions[] = - DRI_CONF_BEGIN - DRI_CONF_SECTION_PERFORMANCE - DRI_CONF_FTHROTTLE_MODE(DRI_CONF_FTHROTTLE_IRQS) -- DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_ALWAYS_SYNC) -+ DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_DEF_INTERVAL_0) - /* Options correspond to DRI_CONF_BO_REUSE_DISABLED, - * DRI_CONF_BO_REUSE_ALL - */ diff --git a/extra/mesa/mesa-7.1-link-shared.patch b/extra/mesa/mesa-7.1-link-shared.patch deleted file mode 100755 index 592e2e216..000000000 --- a/extra/mesa/mesa-7.1-link-shared.patch +++ /dev/null @@ -1,101 +0,0 @@ -diff -up mesa-20091221/src/mesa/drivers/dri/Makefile.da mesa-20091221/src/mesa/drivers/dri/Makefile ---- mesa-20091221/src/mesa/drivers/dri/Makefile.da 2009-12-21 08:09:11.000000000 +1000 -+++ mesa-20091221/src/mesa/drivers/dri/Makefile 2009-12-21 08:43:03.000000000 +1000 -@@ -6,12 +6,17 @@ include $(TOP)/configs/current - - - --default: $(TOP)/$(LIB_DIR) subdirs dri.pc -+default: $(TOP)/$(LIB_DIR) $(TOP)/$(LIB_DIR)/libdricore.so subdirs dri.pc - - - $(TOP)/$(LIB_DIR): - -mkdir $(TOP)/$(LIB_DIR) - -+libdricore.so: -+ gcc -shared -o libdricore.so -Wl,--whole-archive ../../libmesa.a -Wl,--no-whole-archive -lm -lpthread -lc -+ -+$(TOP)/$(LIB_DIR)/libdricore.so: $(TOP)/$(LIB_DIR) libdricore.so -+ $(INSTALL) libdricore.so $(TOP)/$(LIB_DIR) - - subdirs: - @for dir in $(DRI_DIRS) ; do \ -@@ -32,12 +37,14 @@ dri.pc: dri.pc.in - $(pcedit) $< > $@ - - --install: dri.pc -+install: dri.pc $(TOP)/$(LIB_DIR)/libdricore.so - @for dir in $(DRI_DIRS) ; do \ - if [ -d $$dir ] ; then \ - (cd $$dir && $(MAKE) install) || exit 1 ; \ - fi \ - done -+ $(INSTALL) -d $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR) -+ $(INSTALL) -m 755 $(TOP)/$(LIB_DIR)/libdricore.so $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR) - $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL/internal - $(INSTALL) -m 0644 $(TOP)/include/GL/internal/dri_interface.h \ - $(DESTDIR)$(INSTALL_INC_DIR)/GL/internal -@@ -51,5 +58,6 @@ clean: - (cd $$dir && $(MAKE) clean) ; \ - fi \ - done -+ -rm -f libdricore.so $(TOP)/$(LIB_DIR)/libdricore.so - -rm -f common/*.o - -rm -f *.pc -diff -up mesa-20091221/src/mesa/drivers/dri/Makefile.template.da mesa-20091221/src/mesa/drivers/dri/Makefile.template ---- mesa-20091221/src/mesa/drivers/dri/Makefile.template.da 2009-12-21 08:09:11.000000000 +1000 -+++ mesa-20091221/src/mesa/drivers/dri/Makefile.template 2009-12-21 08:43:40.000000000 +1000 -@@ -1,6 +1,6 @@ - # -*-makefile-*- - --MESA_MODULES = $(TOP)/src/mesa/libmesa.a -+MESA_MODULES = $(TOP)/$(LIB_DIR)/libdricore.so - - COMMON_GALLIUM_SOURCES = \ - ../common/utils.c \ -@@ -70,7 +70,8 @@ lib: symlinks subdirs depend - $(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) Makefile \ - $(TOP)/src/mesa/drivers/dri/Makefile.template - $(MKLIB) -o $@ -noprefix -linker '$(CC)' -ldflags '$(LDFLAGS)' \ -- $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) \ -+ $(OBJECTS) $(EXTRA_MODULES) $(WINOBJ) \ -+ -L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -ldricore \ - $(DRI_LIB_DEPS) - - -diff -up mesa-20091221/src/mesa/x86/read_rgba_span_x86.S.da mesa-20091221/src/mesa/x86/read_rgba_span_x86.S ---- mesa-20091221/src/mesa/x86/read_rgba_span_x86.S.da 2009-12-21 08:09:11.000000000 +1000 -+++ mesa-20091221/src/mesa/x86/read_rgba_span_x86.S 2009-12-21 08:43:03.000000000 +1000 -@@ -77,7 +77,6 @@ - */ - - .globl _generic_read_RGBA_span_BGRA8888_REV_MMX --.hidden _generic_read_RGBA_span_BGRA8888_REV_MMX - .type _generic_read_RGBA_span_BGRA8888_REV_MMX, @function - _generic_read_RGBA_span_BGRA8888_REV_MMX: - pushl %ebx -@@ -172,7 +171,6 @@ _generic_read_RGBA_span_BGRA8888_REV_MMX - */ - - .globl _generic_read_RGBA_span_BGRA8888_REV_SSE --.hidden _generic_read_RGBA_span_BGRA8888_REV_SSE - .type _generic_read_RGBA_span_BGRA8888_REV_SSE, @function - _generic_read_RGBA_span_BGRA8888_REV_SSE: - pushl %esi -@@ -335,7 +333,6 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE - - .text - .globl _generic_read_RGBA_span_BGRA8888_REV_SSE2 --.hidden _generic_read_RGBA_span_BGRA8888_REV_SSE2 - .type _generic_read_RGBA_span_BGRA8888_REV_SSE2, @function - _generic_read_RGBA_span_BGRA8888_REV_SSE2: - pushl %esi -@@ -494,7 +491,6 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE - - .text - .globl _generic_read_RGBA_span_RGB565_MMX -- .hidden _generic_read_RGBA_span_RGB565_MMX - .type _generic_read_RGBA_span_RGB565_MMX, @function - - _generic_read_RGBA_span_RGB565_MMX: diff --git a/extra/php-apc/PKGBUILD b/extra/php-apc/PKGBUILD deleted file mode 100644 index 9e26baa30..000000000 --- a/extra/php-apc/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 49652 2009-08-14 11:52:53Z pierre $ -# Maintainer: Pierre Schmitz - -pkgname=php-apc -pkgver=3.1.3p1 -pkgrel=1 -arch=('i686' 'x86_64') -pkgdesc='A free, open, and robust framework for caching and optimizing PHP intermediate code' -url='http://pecl.php.net/package/APC' -depends=('php>=5.3.0') -license="PHP" -source=("http://pecl.php.net/get/APC-${pkgver}.tgz") -backup=('etc/php/conf.d/apc.ini') -md5sums=('941cf59c3f8042c1d6961b7afb1002b9') - -build() { - cd $srcdir/APC-$pkgver - phpize || return 1 - ./configure --prefix=/usr || return 1 - make || return 1 - make INSTALL_ROOT=$pkgdir install || return 1 - echo ';extension=apc.so' > apc.ini - install -D -m644 apc.ini $pkgdir/etc/php/conf.d/apc.ini - install -D -m644 apc.php $pkgdir/usr/share/php-apc/apc.php - install -D -m644 INSTALL $pkgdir/usr/share/doc/php-apc/install.txt -} diff --git a/extra/php-suhosin/PKGBUILD b/extra/php-suhosin/PKGBUILD deleted file mode 100644 index 94fa3fd36..000000000 --- a/extra/php-suhosin/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 49795 2009-08-15 22:33:31Z pierre $ -# Maintainer: Pierre Schmitz - -pkgname=php-suhosin -pkgver=0.9.29 -pkgrel=1 -arch=('i686' 'x86_64') -pkgdesc='An advanced protection system for PHP installations' -url='http://www.hardened-php.net/suhosin/' -license='PHP' -source=("http://download.suhosin.org/suhosin-${pkgver}.tgz") -depends=('php>=5.3.0') -conflicts=('php-suhosin-extension') -replaces=('php-suhosin-extension') -backup=('etc/php/conf.d/suhosin.ini') -md5sums=('e3c599e7e344e981f935b2dab90592c1') - -build() { - cd ${srcdir}/suhosin-${pkgver} - phpize || return 1 - ./configure --prefix=/usr --enable-suhosin || return 1 - make || return 1 - make INSTALL_ROOT=${pkgdir} install || return 1 - # disable by default - sed -i 's|extension = suhosin.so|;extension=suhosin.so|g' suhosin.ini - install -D -m644 suhosin.ini ${pkgdir}/etc/php/conf.d/suhosin.ini -} diff --git a/extra/php/.gitignore b/extra/php/.gitignore deleted file mode 100644 index 8eadad505..000000000 --- a/extra/php/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -*.gz -*.bz2 -src -pkg diff --git a/extra/php/PKGBUILD b/extra/php/PKGBUILD deleted file mode 100644 index 2e21755ef..000000000 --- a/extra/php/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 86064 2010-07-25 11:20:29Z pierre $ -# Maintainer: Pierre Schmitz - -pkgbase=php -pkgname=('php') -pkgver=5.3.3 -pkgrel=4 -_suhosinver=${pkgver}-0.9.10 -arch=('i686' 'x86_64') -license=('PHP') -url='http://www.php.net' -options=('!makeflags') -source=('php.tar.bz2') -md5sums=('4dc4271319d697ff8588d80c935ca08c') - -build() { - # ldap-sasl does not compile with --as-needed - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" - export LDFLAGS="${LDFLAGS//,--as-needed}" - -} - -package_php() { - pkgdesc='An HTML-embedded scripting language' - depends=('pcre' 'libxml2' 'bzip2' 'openssl' 'imap' - 'postgresql-libs' 'mysql' 'libldap' 'postfix' - 'sqlite3' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' - 'libmcrypt' 'tidyhtml' 'aspell' 'libtool' 'gd' 'icu' - 'curl' 'libxslt' 'openssl' 'bzip2' 'db' 'gmp' 'libevent') - replaces=('php-fileinfo') - provides=('php-fileinfo') - conflicts=('php-fileinfo') - backup=('etc/php/php.ini') - - cp -R ${srcdir}/etc ${pkgdir} - cp -R ${srcdir}/usr ${pkgdir} - -# cd ${srcdir}/${pkgbase}-${pkgver} -} - diff --git a/extra/pm-utils/11netcfg b/extra/pm-utils/11netcfg deleted file mode 100755 index 1b4d05ee7..000000000 --- a/extra/pm-utils/11netcfg +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -. /usr/lib/pm-utils/functions - -suspend_netcfg() { - netcfg2 all-suspend -} - -resume_netcfg() { - netcfg2 all-resume -} - -if [ -x /usr/bin/netcfg2 ]; then - case "$1" in - hibernate|suspend) - suspend_netcfg - ;; - thaw|resume) - resume_netcfg - ;; - *) - ;; - esac -fi - -exit $? diff --git a/extra/pm-utils/PKGBUILD b/extra/pm-utils/PKGBUILD deleted file mode 100755 index e813d83cf..000000000 --- a/extra/pm-utils/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -# Maintainer: Thayer Williams -# Contributor: Giovanni Scafora - -pkgname=pm-utils -pkgver=1.2.6.1 -pkgrel=4 -pkgdesc="Utilities and scripts for suspend and hibernate power management" -arch=(arm) -url="http://pm-utils.freedesktop.org" -license=('GPL') -depends=('bash' 'procps') -makedepends=('xmlto') -source=(http://pm-utils.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz - 11netcfg - daemons.patch - nouveau.patch) -md5sums=('ddbb73b5fd1e5a2c77ad3ce537a0260c' - '9839687c8787d99fd4ff36aa3238c27b' - '7be3f7460569d5a382474abd7f7b53fb' - '6300409fcc96d70fd2a2e2efeff19f79') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - # temp fix for nouveau power management--will be fixed in next release - patch -Np1 -i ${srcdir}/nouveau.patch || return 1 - - # make sure Arch Linux daemons are properly handled - patch -Np1 -i ${srcdir}/daemons.patch || return 1 - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var - make || return 1 - make DESTDIR=${pkgdir} install || return 1 - - # install additional hooks - install -m755 ${srcdir}/11netcfg "${pkgdir}/usr/lib/pm-utils/sleep.d/11netcfg" -} diff --git a/extra/pm-utils/daemons.patch b/extra/pm-utils/daemons.patch deleted file mode 100755 index f64a44955..000000000 --- a/extra/pm-utils/daemons.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/pm/functions.in 2009-11-07 21:51:04.000000000 -0800 -+++ b/pm/functions.in 2009-12-01 17:30:59.000000000 -0800 -@@ -141,7 +141,7 @@ - if ! command_exists service; then - service() - { -- for svc in "/etc/init.d/$1" "/etc/rc.d/rc.$1"; do #lsb, then slack -+ for svc in "/etc/init.d/$1" "/etc/rc.d/$1"; do #lsb, then slack - [ -x "$svc" ] && { shift; "$svc" "$@"; return $?; } - done - # this only happens if we did not find the service -@@ -153,7 +153,7 @@ - - stopservice() - { -- if service "$1" status 2>/dev/null | grep -q -e running -e started -+ if [[ -e "/var/run/daemons/$1" ]] || service "$1" status 2>/dev/null | grep -q -e running -e started - then - touch "${STORAGEDIR}/service:$1" - service "$1" stop diff --git a/extra/pm-utils/nouveau.patch b/extra/pm-utils/nouveau.patch deleted file mode 100755 index 2f3922ef3..000000000 --- a/extra/pm-utils/nouveau.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/pm/sleep.d/98smart-kernel-video.old 2010-01-07 08:31:25.275911479 -0800 -+++ a/pm/sleep.d/98smart-kernel-video 2010-01-07 08:32:01.596732967 -0800 -@@ -32,7 +32,7 @@ - { - # if we are running with a KMS-enabled video driver, we should not - # attempt to run any quirks -- grep -q -E '(noveau|drm)fb' /proc/fb || return 1 -+ grep -q -E '(nouveau|drm)fb' /proc/fb || return 1 - remove_all_video_quirks - add_parameters --quirk-no-chvt - } diff --git a/extra/polkit/PKGBUILD b/extra/polkit/PKGBUILD deleted file mode 100755 index f6b2d110b..000000000 --- a/extra/polkit/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 66482 2010-01-31 10:39:02Z jgc $ -# Maintainer: Jan de Groot - -pkgname=polkit -pkgver=0.96 -pkgrel=1 -pkgdesc="Application development toolkit for controlling system-wide privileges" -arch=(arm) -license=('LGPL') -url="http://www.freedesktop.org/wiki/Software/Policykit" -depends=('eggdbus>=0.6' 'pam') -makedepends=('intltool' 'gtk-doc' 'gobject-introspection') -options=('!libtool') -source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz - polkit.pam) -md5sums=('e0a06da501b04ed3bab986a9df5b5aa2' - '6564f95878297b954f0572bc1610dd15') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --libexecdir=/usr/lib/polkit-1 \ - --disable-static || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - - install -m644 "${srcdir}/polkit.pam" "${pkgdir}/etc/pam.d/polkit-1" || return 1 -} diff --git a/extra/polkit/polkit.pam b/extra/polkit/polkit.pam deleted file mode 100755 index 04f53e0db..000000000 --- a/extra/polkit/polkit.pam +++ /dev/null @@ -1,7 +0,0 @@ -auth requisite pam_nologin.so -auth required pam_env.so -auth required pam_unix.so -account required pam_unix.so -session required pam_limits.so -session required pam_unix.so -password required pam_unix.so diff --git a/extra/python-distribute/PKGBUILD b/extra/python-distribute/PKGBUILD deleted file mode 100644 index 0c6f41d34..000000000 --- a/extra/python-distribute/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# Maintainer: Stéphane Gaudreault -# Contributor: Sebastien Binet - -# Plugbox changes: Submitted by pepedog to replace ABS for python 2.6/7/3.0 - -pkgname=python-distribute -pkgver=0.6.14 -pkgrel=5 -pkgdesc="A collection of extensions to the Python distutils" -arch=('any') -license=('PSF') -url="http://packages.python.org/distribute" -depends=('python2') -source=(http://pypi.python.org/packages/source/d/distribute/distribute-${pkgver}.tar.gz - distribute-${pkgver}_python2_and_3.patch) -sha1sums=('6bea50b97f36bf751548bb486a534204a690aa4d' - 'de635febfb11dc6878e5bdbac4a0e1d539c19d79') - -package() { - cd ${srcdir}/distribute-${pkgver} - patch -Np1 -i ../distribute-${pkgver}_python2_and_3.patch - python2 setup.py install --prefix=/usr --root=${pkgdir} -} -# vim: set noexpandtab tabstop=8 shiftwidth=8 textwidth=132 autoindent diff --git a/extra/python-distribute/distribute-0.6.14_python2_and_3.patch b/extra/python-distribute/distribute-0.6.14_python2_and_3.patch deleted file mode 100644 index dc5da86fd..000000000 --- a/extra/python-distribute/distribute-0.6.14_python2_and_3.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -Naur distribute-0.6.14.ori//distribute.egg-info/entry_points.txt distribute-0.6.14/distribute.egg-info/entry_points.txt ---- distribute-0.6.14.ori//distribute.egg-info/entry_points.txt 2010-07-14 20:14:10.000000000 -0400 -+++ distribute-0.6.14/distribute.egg-info/entry_points.txt 2010-10-21 09:26:43.386667396 -0400 -@@ -31,7 +31,8 @@ - depends.txt = setuptools.command.egg_info:warn_depends_obsolete - - [console_scripts] --easy_install = setuptools.command.easy_install:main -+easy_install-3.1 = setuptools.command.easy_install:main -+easy_install-2.7 = setuptools.command.easy_install:main - easy_install-2.6 = setuptools.command.easy_install:main - - [setuptools.file_finders] -diff -Naur distribute-0.6.14.ori//distribute_setup.py distribute-0.6.14/distribute_setup.py ---- distribute-0.6.14.ori//distribute_setup.py 2010-07-14 19:53:38.000000000 -0400 -+++ distribute-0.6.14/distribute_setup.py 2010-10-21 09:25:18.356667404 -0400 -@@ -299,8 +299,7 @@ - log.warn('Could not find the install location') - return - pyver = '%s.%s' % (sys.version_info[0], sys.version_info[1]) -- setuptools_file = 'setuptools-%s-py%s.egg-info' % \ -- (SETUPTOOLS_FAKED_VERSION, pyver) -+ setuptools_file = 'setuptools-%s.egg-info' % SETUPTOOLS_FAKED_VERSION - pkg_info = os.path.join(placeholder, setuptools_file) - if os.path.exists(pkg_info): - log.warn('%s already exists', pkg_info) -diff -Naur distribute-0.6.14.ori//setup.py distribute-0.6.14/setup.py ---- distribute-0.6.14.ori//setup.py 2010-07-14 19:53:38.000000000 -0400 -+++ distribute-0.6.14/setup.py 2010-10-21 09:32:44.850000736 -0400 -@@ -96,6 +96,8 @@ - f.close() - - -+console_scripts = ["easy_install-%s = setuptools.command.easy_install:main" % sys.version[:3]] -+ - # if we are installing Distribute using "python setup.py install" - # we need to get setuptools out of the way - def _easy_install_marker(): -@@ -182,11 +184,7 @@ - "dependency_links.txt = setuptools.command.egg_info:overwrite_arg", - ], - -- "console_scripts": [ -- "easy_install = setuptools.command.easy_install:main", -- "easy_install-%s = setuptools.command.easy_install:main" -- % sys.version[:3] -- ], -+ "console_scripts": console_scripts, - - "setuptools.file_finders": - ["svn_cvs = setuptools.command.sdist:_default_revctrl"], diff --git a/extra/qt3/PKGBUILD b/extra/qt3/PKGBUILD deleted file mode 100644 index 453b44b7f..000000000 --- a/extra/qt3/PKGBUILD +++ /dev/null @@ -1,122 +0,0 @@ -# $Id: PKGBUILD 68838 2010-02-14 15:15:52Z pierre $ -# Maintainer: Tobias Powalowski -# Contributor: John Proctor - -pkgname=qt3 -pkgver=3.3.8 -pkgrel=15 -pkgdesc="The QT gui toolkit." -arch=(i686 x86_64) -license=('GPL') -url="http://www.trolltech.com/products/qt/index.html" -pkgfqn=qt-x11-free-${pkgver} -install=qt.install -depends=('libpng>=1.4.0' 'libxmu' 'libxcursor' 'libxinerama' 'mesa' \ - 'libxft' 'libxrandr' 'libmng>=1.0.10-3') -makedepends=('mysql' 'postgresql>=8.2.3' 'unixodbc' 'sqlite3') -optdepends=('libmysqlclient' 'postgresql-libs' 'unixodbc') -source=(ftp://ftp.trolltech.com/qt/source/${pkgfqn}.tar.bz2 qt3-png14.patch qt.profile \ - qt-copy-kde-patches.tar.bz2 qt-patches.tar.bz2 utf8-bug-qt3.diff \ - qt-font-default-subst.diff mysql.patch eastern_asian_languagues.diff qt-odbc.patch) -options=(!libtool) -md5sums=('cf3c43a7dfde5bfb76f8001102fe6e85' - '1dc671df42b9030dbdf68bb61cd3375e' - 'f72d1eb4eb49b9a9467c1f6035194266' - 'f2a2dbdbfee9422c90efc3ef3f86197c' - '2f00e5c0c1e2c2a23dddc982cd79f3e0' - 'f6b3b39040f2b8f19ba1cf1445468c28' - '9370d82e85f2c799335ed0dcc1d53189' - '7d40ed1bd40d33d8b9b27a2076a5d22a' - '616f1f3029cf8375256ad6a406de3549' - '2178ca88dfd75a230918593b30eb0dbe') - -# qt-copy-kde-patches come from http://websvn.kde.org/trunk/qt-copy/patches/ -# other qt-patches come from fedora and gentoo - -build() { - unset QMAKESPEC - export QTDIR=$startdir/src/$pkgfqn - export PATH=${QTDIR}/bin:${PATH} - export LD_LIBRARY_PATH=${QTDIR}/lib:${LD_LIBRARY_PATH} - export QMAKESPEC=$QTDIR/mkspecs/linux-g++ - cd $startdir/src/$pkgfqn - # apply qt patches from kde.org - for i in ../qt-copy-kde-patches/*; do - patch -Np0 -i $i || return 1 - done - # apply other qt patches and one security fix from debian/gentoo - for i in ../qt-patches/*; do - patch -Np1 -i $i || return 1 - done - # fix utf8 bug - patch -Np0 -i ../utf8-bug-qt3.diff || return 1 - # fix asia fonts - patch -Np0 -i ../qt-font-default-subst.diff || return 1 - # fix segfaults on exit when using mysql DB driver - patch -Np0 -i ../mysql.patch || return 1 - # fix CJK font/chars select error (FS#11245) - patch -p1 -i ${srcdir}/eastern_asian_languagues.diff || return 1 - # fix build problem against new unixODBC - patch -p1 -i $srcdir/qt-odbc.patch || return 1 - - # fix qt-x11-free-3.3.8 problems with new gcc - patch -p0 -i $startdir/qt3-qglobal.patch - patch -p0 -i $startdir/qt3-qstring.patch - - patch -p0 -i $srcdir/qt3-png14.patch || return 1 - # start compiling qt - sed -i 's|-cp -P -f|-cp -L -f|' qmake/Makefile.unix - rm -rf doc/html examples tutorial - sed -i "s|sub-tutorial sub-examples||" Makefile - sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++/qmake.conf - sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++-32/qmake.conf - sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++-64/qmake.conf - sed -i "s|-I. |$CXXFLAGS -I. |" qmake/Makefile.unix - sed -i "s|read acceptance|acceptance=yes|" configure - - # remove unwanted mkspecs - rm -rf mkspecs/{*aix*,*bsd*,cygwin*,dgux*,darwin*,hpux*,hurd*,irix*,lynxos*,macx*,qnx*,reliant*,sco*,solaris*,tru64*,unixware*,win32*} - - if [ "$CARCH" = "x86_64" ]; then - export ARCH="-64" - else unset ARCH - fi - - ./configure -prefix /opt/qt -platform linux-g++$ARCH \ - -system-zlib -qt-gif -release -shared -sm -nis -thread -stl \ - -system-lib{png,jpeg,mng} \ - -no-g++-exceptions -plugin-sql-{mysql,psql,sqlite,odbc} - - # fix /opt/qt/lib path - [ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" $startdir/src/$pkgfqn/src/Makefile - [ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" $startdir/src/$pkgfqn/tools/designer/designer/Makefile - [ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" $startdir/src/$pkgfqn/tools/designer/editor/Makefile - [ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" $startdir/src/$pkgfqn/tools/assistant/lib/Makefile - [ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" $startdir/src/$pkgfqn/tools/designer/uilib/Makefile - - cd $startdir/src/$pkgfqn - make -C qmake || return 1 - cd $startdir/src/$pkgfqn/plugins/src/sqldrivers/mysql - $startdir/src/$pkgfqn/bin/qmake -o Makefile "INCPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient" mysql.pro - cd $startdir/src/$pkgfqn/plugins/src/sqldrivers/psql - $startdir/src/$pkgfqn/bin/qmake -o Makefile "INCPATH+=/usr/src/include /usr/include/postgresql/server" "LIBS+=-L/usr/lib -lpq" psql.pro - - cd $startdir/src/$pkgfqn - # fix the broken makefiles - #sed -i 's|[[:space:]]*strip.*doc/html.*$|#|g' src/Makefile - make || return 1 - make INSTALL_ROOT=$startdir/pkg install - rm -rf $startdir/pkg/opt/qt/{phrasebooks,templates,translations} - sed -i "s|-L$startdir/src/$pkgfqn/lib ||g" $startdir/pkg/opt/qt/lib/*.prl - install -D -m755 qmake/qmake $startdir/pkg/opt/qt/bin/qmake - install -D -m755 $srcdir/qt.profile $startdir/pkg/etc/profile.d/qt3.sh - ln -sf /opt/qt/bin/qtconfig $startdir/pkg/opt/qt/bin/qt3config - rm -f $startdir/pkg/opt/qt/mkspecs/linux-g++$ARCH/linux-g++$ARCH - - # install man pages - mkdir -p $startdir/pkg/opt/qt/man - cp -r $startdir/src/$pkgfqn/doc/man/{man1,man3} $startdir/pkg/opt/qt/man/ - - install -d -m755 ${pkgdir}/etc/ld.so.conf.d/ - echo '/opt/qt/lib' > ${pkgdir}/etc/ld.so.conf.d/qt3.conf -} diff --git a/extra/qt3/eastern_asian_languagues.diff b/extra/qt3/eastern_asian_languagues.diff deleted file mode 100644 index 7c25eef7d..000000000 --- a/extra/qt3/eastern_asian_languagues.diff +++ /dev/null @@ -1,39 +0,0 @@ ---- qt-x11-free-3.3.8b/src/kernel/qfontdatabase.cpp 2008-01-15 21:09:13.000000000 +0200 -+++ qt-x11-free-3.3.8b/src/kernel/qfontdatabase.cpp 2008-03-10 11:34:22.000000000 +0200 -@@ -966,20 +966,22 @@ - - #ifdef Q_WS_X11 - if (script == QFont::Han) { -- // modify script according to locale -- static QFont::Script defaultHan = QFont::UnknownScript; -- if (defaultHan == QFont::UnknownScript) { -- QCString locale = setlocale(LC_ALL, NULL); -- if (locale.contains("ko")) -- defaultHan = QFont::Han_Korean; -- else if (locale.contains("zh_TW") || locale.contains("zh_HK")) -- defaultHan = QFont::Han_TraditionalChinese; -- else if (locale.contains("zh")) -- defaultHan = QFont::Han_SimplifiedChinese; -- else -- defaultHan = QFont::Han_Japanese; -- } -- script = defaultHan; -+ // modify script according to locale -+ static QFont::Script defaultHan; -+ QCString locale = setlocale(LC_ALL, NULL); -+ -+ if (locale.contains("ko")) -+ defaultHan = QFont::Han_Korean; -+ else if (locale.contains("zh_TW") || locale.contains("zh_HK")) -+ defaultHan = QFont::Han_TraditionalChinese; -+ else if (locale.contains("zh")) -+ defaultHan = QFont::Han_SimplifiedChinese; -+ else if (locale.contains("ja")) -+ defaultHan = QFont::Han_Japanese; -+ else -+ defaultHan = QFont::Han; // don't change -+ -+ script = defaultHan; - } - #endif - diff --git a/extra/qt3/mysql.patch b/extra/qt3/mysql.patch deleted file mode 100644 index 5f61edc67..000000000 --- a/extra/qt3/mysql.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- src/sql/drivers/mysql/qsql_mysql.cpp -+++ src/sql/drivers/mysql/qsql_mysql.cpp -@@ -37,7 +37,6 @@ - #include "qsql_mysql.h" - #include - --#include - #include - #include - #include -@@ -341,14 +340,6 @@ int QMYSQLResult::numRowsAffected() - } - - ///////////////////////////////////////////////////////// --static void qServerEnd() --{ --#ifndef Q_NO_MYSQL_EMBEDDED --# if MYSQL_VERSION_ID >= 40000 -- mysql_server_end(); --# endif // MYSQL_VERSION_ID --#endif // Q_NO_MYSQL_EMBEDDED --} - - static void qServerInit() - { -@@ -366,9 +357,7 @@ static void qServerInit() - qWarning( "QMYSQLDriver::qServerInit: unable to start server." ); - # endif - } -- qAddPostRoutine(qServerEnd); - init = TRUE; -- - # endif // MYSQL_VERSION_ID - #endif // Q_NO_MYSQL_EMBEDDED - } -@@ -411,6 +400,11 @@ QMYSQLDriver::~QMYSQLDriver() - QSqlOpenExtension *ext = qSqlOpenExtDict()->take( this ); - delete ext; - } -+#ifndef Q_NO_MYSQL_EMBEDDED -+# if MYSQL_VERSION_ID > 40000 -+ mysql_server_end(); -+# endif -+#endif - } - - bool QMYSQLDriver::hasFeature( DriverFeature f ) const diff --git a/extra/qt3/qt-copy-kde-patches.tar.bz2 b/extra/qt3/qt-copy-kde-patches.tar.bz2 deleted file mode 100644 index 19d8999635e80f4846fb48f9d2dd29e23e31a682..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31498 zcmV(&K;geaT4*^jL0KkKS!$fdKLEt}fByge|7Cyw|NsC0|Nj5~|Nn+C00aOi00;;J z09XJ>V4nT=*SAl!R459nedJxMW(D6jdeuF3(YtqIA@`X3xC`5lHpi|(=m1{%=f3x6 z06v6~_TI`j?%#FYPWATs`^Brf?_7?i*rv_auC0yiz3;vESG&6{JGWbBZ+-8y`|o$hv+ldwK7G8tZ@sDPirc%_ zp86c>F#6}Odfo2iy;SQ{F2m7$0YGTYm)hIj?|3(h@4oW)c=~e(Z?|t!JvF}VcB@<0 zb%^(O2va_}UZt-o?c3z``|qkxecXg?Yp^kVfNkb?`vR}z25BV_pf)l>cignqvw0eNStAuni(gp3A!Lvq%nW+~*oyjtAFEwYcZg&UfY3E2 z1jNYIHYumIAoVuY1Il`XMt}eWrhx<@2+E$O38sxtNv4{fnGF*rfb|U;Gyoa^00TfY z00AJ9K#kdhK7OaWDPU`4FD2pBtZgU1lmTa zypw1JJtoRbjp`Xg2*l87={-TCL7-%MgCGC^M3GH20%V$cO)!imfi)h`jVd0d@}c^p z@}8P$PsCCBQ_3_wA?g9@14Bd9G|0<956!gj) z)iipC>OgvifN7vK01y9kDf|Dz5?s&UT&qwN7AAcfKA8#k?tw{|Efo?(f=v_wJg!1T zi6XRsZWrBbeSYXud(UsW@~V5Q3@wu`T*;h_kVYnDF55J12#_HnNR(!%?0~dormKfa zTy{2@jxY+c^_=GJvp6P7rn!3dOfG!w0JH^75gLjT3Pf0dk_;3fB|;Dd1puUyKU~Hz zswo5kv{YJ+(1=6`07!zQKw!3uDuhDHD=+MzDjy&GWcIS9uE4qXG_|L&AZ`Sajl_}Y z5N7Ss#A$2>^4gD+8$_rSwYLh8T*%hdaB`OBLoEqGFs==@TH8uordSBU!vv#} ztA;Zp8Gx}Ra@E2*b){_t$3xnb(@n8(wQ^iCZ?vM{Joed)$MYW@UqpOq$BG@^p}Rs-nN^DzAnK zR}oZILMj-ArI6S^AoVct)xCY4_uc2;_>*RLchEVKc7;q$S{RtYWbjiZ(iDKk2~b#B zqLdYeTNFB(jz()PAZBI@7Fy-0h|EiKDr6XfjIo)Dl}cP}!C5UU7&<{q)I7>!+e;{F z#H@{wYRc)Dh`3U!t;?Av1`%168B;B~prwhnG-Z%s8>*{ENI{!pr)`>s#RWFZtgZ?b z0b^(_SmL!?WF%#M)1%kyb$U$G<3GD>n{{1h*qWw8)cQf;Vf`V5{)~2DhYkstj&*0p zCkn5r{`z44*ZKKt=VsAre$EvJ3Xk=FGqC;?H&0)Z{~&%#{)hT(lGnGCFYK@J^wPjU zX7}Xrxr^QzKAU-&|6TUz`7X^|@`6s0+I~r>KBwh0;WJV&B2;~c2u=H4>I1LavkbYR z?Y(@Sed?hh()L+Wxbb|Vs@?ta(TQ5^7N*$On(uo_P5;1l0%=EvdK^GzQaOg25 zss36!3fVL_)$}d;X5v7&WOrgfw@%4%BvO=*WRuVa61diLge6D-*M( z)v3H-s#!bh!hn&tP7!(XWg0~!k9-c7bzHhyUU4DuNyF@pkm`4H4VYGj-ubgF>6LjQ z>2vtCj61#OJdZiGx~wlhl%iuO8zRH$N!-Q%*9V{V^u>?)RBTe2I=*Nz+rwV`IBXHf zDcy1IXWXi?`%Vj=-Ey5WCuiWUX?I_h-VnTvzmuX=l9HSxx|2t%+q94RoxR?-^i!;+ z9;f*6{aCM%eAxdreM%yt6*=SkwFJ_Cd_AvD1B&{+Z}IwWDe-#qe@}|mt6!HQ#s_Wt zZ)fFZ-EiAdyt5oTeV1)&*#WoBrxbT1WA5b~lOfFCo=oG^_T2YYHI%%t^23!s;l8$& zMI13VeE3FBFC;Xk(3_1Mf{HjPC`#<2I>lTF;D(=rm>?-vYGmxw5o^yTD7%><83}$?`m3iqS7o zXVQVg(385Yg=L%|)wDL^jC;N{P?2F$lf;jAqwV=?+VIS^Sd1hKLnl00&2S;?xMpzU zi6IR%s-_3`sIOx^$QkIxHMX$94es|J!79y8v4d!oo5%c+)vjcypHoVG=r2~gl%u51 zx@;Y_M#wV>FgshgnZ$Q|V9hnB^Bo{gy7?t7Nlmc>qA%uNm{sK5(G*oS8N`9T%t08Z z_~h{H`@DXRf=$iVxY-k4n+}xoks$QW-0Y`07S}trW9~@O6wKT?0qZN zwUZ?TyEJ<28wHVFu(`{T1#Gd1pd|z(K^xJtlyb)jgcBVWUBbS#J>HoyvK&r+9JRk; zYtRf~M#VwmcwdEvgvH1`+jLrTldJ4;pj}b{-y9c2ufl}OQy<9ZzMAH~S>Qw_JNgqJ z!9F?b&ay#;48uXd_pJC?S`!(RN^p^4nI!RmUTJ-t_ud@xj`m`IB2=LqOTv|kAbcs%^$ z=Z9yB@aO&?x4ZNo(IJmYDD3P-i8~Ow4LM0J_+WJCe$7v>uU6i=Qc!rw>kd{^)d%YO zXL2HseYSd5&z2IKDP;{9Q{(57(d4m#GrGgs_f-6sRyUgAa0W{-A7^d|l6 zfsM6J_`6!gqnzZ|y|W2YOYB4?1^(;ftyjC#sL7~scsapP5eddi$JqR$>hA7VNYl|W z_?%G<3G#kw7wUq5L2)RbZUeTgcD=C`j?T#mL48Zo9;gQi-wi1I(RN;5$G$9ObKY6D zk&+~w!Sr?cXH5?2PL%|KUZO`|aW7S8yXi_}=;9;lUZ~A`M;i2x(ZoaT%*(X>jL+*) zi`uC?mJd3{-Q`ob?P6Bx`x4~lkmMwmeT19AkfXHwiBbsq`nb#`sVwn6o$7zNufbH2scnLRLlDyn_9s z8f}1ddEKasIP#=?;;wE(^f+XO&dpw%pdaRniM19fB!Ykm!lV{JQUbtGkc%Wxkr@O* zU;wa^ECFDo1r(F9pIvMv6Mm#KHBdI0%KUUpp`-Q6a$CDSSI8KW+jV1nES>VbS?cxK zZMNFMO1nIw>*dqNU}b}_%-T@F8?LuT5W(T`jXvMeDaig#RDm zviIE?PH!`Iz!5`uEK~q~=dMx^l{UZ?M5qV_kg@f-AP)Q&C&vjd5(J0EIJs#qkP&9W zSgOT{iz5adRQMSokr;~*Ut4XkwVk%=SMnp=>h*>cy=Sz(4z_4OCl?cMBs}@mGATUO+*?CB4B#w)_|^hkNGypU7L6+b3X%;Z0-}^f zj3Lr(J7Ko&&h7!jPvJb6J}=8aZl}WU(?g2CmWHXpXgzTtlNyB+Ri8W@BNrR|51HbS zCH*cs6t%*U8*WbCcKG*fIk$%6R_B)c$eg|2UXRv`7`6yC1E>VP93&c|q52_Gi?+aj4f6L{MVOMH51HwBV=rVqT83E>q!(1jj z=*%S84FGgzOr!LaG%;Xni9%8^W82ZAg;ru+?Ywda#P(7!0N z1*O;DVeEf1QG(DyhLxwb*clWycWHrY8f;^gq#EP9pno(*uIz|@d##QVZy`|QwVo!S z+YMW$O^DsT6k|{v^sFpWMf5BpY?_*X))OS|bdXt52#wn3xr(UKz}mkaCTT9wWJ z7J5$6W<60}+lfaM)^PFcK?^y5uA$K@AUja$zsqrC!ttb=w@_0=jJ?r6r`w6-+F?>w z`L@W&I+m^$Ynfu(so!TrEv#_4r9#(A)juL~^p~ZEoh}HetbMU->Au+4x^JHAwHcOe zw)a}I$Gc%&XO7T9L)rx@c|T|7PClixzCZQU7XgL^pb*|T)@)3_lAcX8}I z=V)}{Wt0Pc3}pr@ih9NRuydmq;PyVgjOQ+goCn-i(wz$J*A)J3Ft)e7$zOS6%O55< z%J;Ksxv)o7JifQaQsiubefGz8e98v-yP|sba*1>v$XI!D^21*K>mk?Agj-6@Q$w~$ z7E#8cY-e`i3tczRwwLbCo08R99qL+RIvd|jIYO6L4~#AwMO~n&d%gEU-8NYYNS)~C zpw+%xR+Z?^NYrIwRKBe`9eCpxlq|L#wIw;1((gVJLZ>?{fhD!)pA2r+o4iJy&OubW zrt1T4|5kQMuqIDdxeYL1MLm-1leb9ngQSA-c8Q=G{+dU(z%Q&l4YP&KF(at_9=ZuL zZ2=w|iox2v;ew(-H`mveW--90e-BD}yL(9BA{Qu$Vo>_Ab)Ps7TkM1OASBp%JkbPU z^gP~t+}_nOk4_$KLa&ju(^&ED-IVjS#oW9uCdO`RYH7l?i^;4|Rhn$%g>Ghie|Fxl3wGJ*@{kztWZYY)hBEE-z@aKQ%lbW# zAl`cY|5jWZ_}+3emUwWz?L7(h3a~wJpjdf?q!j4(hs-{4Jk63z9??JS_;2B_kL~jJ z^G_n51M8HByy5)$zNVHz)F;4}8xGFSP`0d>oz{K=AB9J_(F*}moZ%{vy7%0T zo86QHrVxr?#TZ3;__%AMpAj382@P;kpbbbr&>tL6J~ShfAgT)3F}jmfxah!c(V1K? zmA$@3AHpSK4?)T5q2X?LFF4KdV1yPmCR=B8z~7_YX<=5 zv^9bxG(ULFakSZxxC<@JXRB*7k^9;(HDjdIR>mgVMk@c!Uos$8SMBp&N+CYjp4g6I zx&-9ylo<&bJi^C_M3Y|tX<^~?h|X+tPd5T=->IA?W8!+6jT!{moPfCo*S#+uN3nIyY7SBy_gP zF(_;e40nWtVqzBlFLtlJXJs56(eke|R|?LU{r({D+^i?HM=WUrj4PCIsco4vOuglh zk-?sUz9mnduxjeYt19ZtACLWhMzdD2_f^<;eM=_cBTY=?+cjsPx{+drEao)Ak?3~l zu$5nSZPYU{bx4XgN_e(_m}WOH8ulO>PJ>S_sJ`AOxih+ph4oYgNC(EdlMZGYC zl|oL?j#0pi7^b(8q#wk`DYI^EjS~Y{HuiDAEGhcL-v58k%!&0$xvwl7L;YVzgoa3k z6q#3(6$MMFIJiVF*Zzp4P zHr^Szi$m9ai)=O3Lr>4ZNQJT8Yi%k84k#nVhOvg$+j1eGaahb(0465Y;2maMn?H$U zbK?z0tbOq%(mX=SW@xvT#iKkXG@H(X*l^%9j((jr#QWT89U(ZJc38PFYrl*JhQ(E= zCnt2%C=D3y`HSoiYPE5&tidz!gn==K9^7gg2$>$=!=EF4PCK&l$&4|aXL!cWA<{fle=uj^^Bv3%##`dtm5?!< za_d%65fua_1CY%#@~(|G$e z*|bMJy{2Xsb!xZGXJxu^Zk+)TuD^^8ya?U1I5^IlX)!iJAgdzpw`W#ozhyg8rdkJ+3%k8|ons!>c+{dkB43rllZzPDRSF#e1I7LP~wbnP-DiI+^w1L(r z%2c^~4xiaFxE@HBcs6EOHm{Pl7}rJoBFqeV(X`IYj)Q3kawd@htaHQ^f`f+}&pQ$Gc_mjv_@w+a3L6&RiQvcB2ug;*HNLoeP4T z5y!pd;k%z#i>5L{WMt~CT<&^&hv9{#RcyI~ZZWs8thmP6h|#kdU+B}#>8tK&dOq*4 zcXo0TM&@$i?~Bm8%g5ctdfz{39X^0PHj*;*0^P83Ur;?NL^Y}|i>%v*xa!5em^-_> zyL*b#Kch-84M^-wA0V~#1B5bwaAxc=c|d?5pjqeHUq(n-lJ(z16j-&Iu2Pn`Xb+aadyTyUXeOaHn3-w#`jm z_ql!_EN#bknZq0GA*XS_3C^CXKr~2|=jKIdpAm|)0eF*f=6QXy1J6Usi#O@YF*)d# ze>EO0)xUL>k)W*oRzs$=gE-vZ*jx9dJ_fc-rrl6HhgO(-l+p@!{;V+E4@r*H+~f|@ z$9OR7WkX=REeXxIbs7mghZ$=4Qn!|yXVh;P)F2JI7Wi&!V{M7}WEs-GV<@t-Ma*=2eoob@y(yR6h`4h)%$P}w35 z97KH<^QFeGUfbmM7Z;#$IuX{10!fBK1AkNpyQhwOaM6cFS`tY8<3$Y2SAjaiY&Oy4 zj$80g=--!=F4eiV?h-G*DM49=?`HZ$7P^tBHX7b4fEH4WQ#LM^6KlNp1au6NQ_Yu#b}xdsMsb$+%^6 z*w~}5vX5I=ov44l=O4gGQ%qf=cWfLTi4x$ChA5_-d_s@<`XFm z#3U%x_D!tn_%~gFHhx|BvF6jxZNul5tgq1uv=^}9I9gvVaoKNb_CwTpka;)hXg1Ts z7V$s|2$7zReFsL}zP(Uwbn-&Q+s4RnRwIuW^F~m$Yi(tQxV-F355@+6cSR?4#ivH( zMmEQ6Y#{yF<#m0w0ZM`ke#ZLDU8FQxSw*yQhA7{Sy?%HVRX}Dy8eIy}2joT9$;ps{(1}DH-Qw_+TEp)3J=kFbtAqJ1qNb^S zMV#9n4;mM{K}k2_?vRbwyc85Es#n^x^rSHUQ*wjwudV(iCwC@rx=%MDFo5K z!y~#JC=@EwZuk==#sh1ni9qh@A&;X`rtrD%w-ebWBjpvh9m1v?czP!?3-A2!=(#?P z&!d->b^1AX3vJHYty<-wZ{R}swU}5^kHah4HmDj@3uJM)#kT*J$Thcfjj%f<>ru~n zmR~A61kK>%@bcNZC&PWY?%fR2Ytc9>lwcc|A0va$j+mE3k(i%&sW$YeDb+cKIL$)L zw81SG(+n=YlIfniBPTKAh8BJG$4MGCh@I&DKkJ{ zy_lx=E7TJWfz%KnW*!N6@@3@xCU+TLCE)9YPt2mU!sS?msr$ zsTrLXI}$8#$!CPReA)%*hN?qu`%Mzx16tG&jQBL3T@bOzkz2N|J45Ge84;ho^1QdP z;j_g;3A?P|CAx2Jd?rx)|HgdGrkAO{Q6rwP*dWBuHE{;ufgsbS80q~-<@}iaD~H?J z9Q(2i6?ka&ZR+f`A*;2oqlbSA3vSH}tW-foSgLqycN(c>_1*(L_snwFXA_9H_3y5T zxk4TBFY2tUsk+AdE;@U!@D+i)dj!Ucx1=9WPRQ$>zV{v;O`-K8?k_LVi(6IZ^+x|n zCDFWnIl!kgj>~fAo!MVztSt3LnZEd%pD5={Mk`3PX=hmsF^K49^zBtR>%W>g#Y?kl48+Y`NVu9#ie&4M? z)v-W{9#W~Wxp|fTZ+!Uk+kZ*YzMcmDZ;7Xl-C9|jkhtUK*Xm{+98SpMKF!CU)s6aQ z(Kisgy4ewi!VFdA`NK_?Oy`^z^uA6{rSa0o(Wf!H-g&;ak|&zIwf`7g>P!r44w7+)ywyq6niH?de_ zl%Q4i8J&E*uI}#ezGZg@B3+**$e~MLlC^i#bGDWyJhyDE#rCF0QN7mtc|%PANYRdx zZ*1;|VS`(H4S@$`qZV!QUV=c;a@_i4P2Mg&RA4+K@b$%m z!>i%+$?>v97C}NR==w~-N!L0&PJKh90e_U?zK5Co@ZrOyQ#lV!_$AfCpIwr#UJ5$p zc{{%O^safoRrbL&QQwRE{Z{wvvpkyU@mkK<6IwgGa+B9}@oVhDtaPIpB(GJsA7?@( zHoyn3ByYLnUA!wiHdje~^3fPV?peyba)kE1)1{GB#_7l54>dOfjKcj$V@hJf5^XU^ zjnLO&+vYfW`^?D2Xn<}iymqVn3M$z{#Ea3$i&JKc)0o6dWw2#ooCh3&AZpt8bVH50 z;nUy@ND2!87tj;YPADH*5H@5sVvwwaQy2wQh{r0FZLx@JeN}9fnnQ>WM6gXdj~IJ1 zHhRoCQMNhEew!BZd-^5*&)4qyudf~C*FzSD{^OCKYHyBNzg(OHxyw1LaQdFYnR%pa-TL@vlie*85~&L?IA} z!S^yk$L+p>kis$rEd+=}kLpML<|RQNfdDz6S}Ju%N%utQB4q);ICSbU5}A{&JTwjWGD` z`B|bA57>+MH8JBYL*s4t+YV4hy#XZ zOdT43Qa@50;rQLOH4pj;{gHh+Ab{H{xappwHX;PX4DQ-C&B3zYQb~%TrU)$u08q?;5P*QHb9WG3jODs~J8dq_ z`!X{_BSt+$S|ZrFzQvQ4Da`ro4Zv)5BiPlgfJm-f(Fe zOg60allB{ecCpRoM;I!Ih>B}`F_G;J-aq| zdg|r{fjb_Q+<5QVYCCs)JlCZ0F33DX`J#Lz{g7(t(0qY_F7!M$di;=a!Cv#hMih!Q zxS`p}T3+y=_Xi`AHj}n|o4|__agJTcX7lr=8i^NuzS8VyD5fY(Q=s&6`5Z>yTFgVb zs^T?ogBx=5GK*fAX!5A-j(4P#k2qPTT)uGTEji1Zwzy;5$~{}{`)k=GkX@1bh8{qT zxlJ{mFNQ|=V2%$RbTm{UcM2G_5F*h*$xqK^pNt-ZDj@?||9yOJnOTfM1Q#qG*r1bE zE$`77GkrmX{5)jMsWm2}NmqqFN)0jeKsGrmWE~_8RlK(TnoUtSMscAqcmIyrMA^+w zg;AdH{SF0PbD!LVD1fU2xs-407P~y%9z&Jk8>zNv&yf4K59YqB&U-t?NltkX_PI`7E+TZ7dQ+ zL+|6O9CM1vi2y8+k&6;M8ZA(MT1lo)n_e@pspz}IbFuVyx4XN2XoW>yhVJ_oz5Jq$ zj`-6j%6;uai##n;VI$-C2)$=@3W&mwQbA6UH2dB@7!q-I7%ITV1!o3Iixd_}F`lMw zo>xdtV}QrlihDhB%4nV_(4}jp_QnJ`aFk-X%8F#*Ri+G9Le9&8A|l3dr|q&&)nTSd zd#(Vn4B^cXI*1P#n8Egz17uJy6Px77@#DYhcksX`iS2I=9ljdD9-+|}V-{FJrrT+Z zM{ft~Ohu9s?LhXYD{LSM7It!t)9au-U4eL8A_;9pK}F7ahfUUO;&V)RzP{TxVk+(L z<<7i^Ynrw_tglKJDW%LzoO?4rDIil+qwBOhM!cS+#Cg$H2YO(@*(YyJoov}r?P@0$ zT~N7B<_bd=DrbF_IU!PM1%RjHVOSrH;LJ}eUBptbs;S944IgJtj2+T1XJ)Y0QLR)K zNhBM@r_5mU9wX#GGWq7f>Vvq1fo2eoXOu&HP4P1fHl6d!T&T|S2YRGt6oTsz<1Y>{ zn1=oYn2Z9!AB#-8vXg24hGAM7(ZHkVbD&v6S*wGBrb*C`AVLJl$Q`_&!T(8>xqY8s zkT}%56B9hn(_iy{(f(iM5vq+l$wZtYYJTzr2to`PghNoW^6U6mPvZsGO)L+Xk_$xL z9GJM&`_Kd}5lE0#K!GFHqY;QK2^K+!3?mv41G*p66!4tR(B@(4dKtT- z*yhia#<4fR<1!%?HAW(HMKj%|RQ#f?Uc`jKN7d*0kCzPg;ja&O-uL=_`qVV(*r>yL zyKJZ{9HeYDzL1KxRx*6i{s?Yc9RY+^4H zDc=OkJ9v25eRc;)^ij5pWzSyqQ^H*_@m>9frF|g-e0T2O&<7UBM{D%wPP3m_u^aj12W?SSr~{;B1$4^k*8+;IE}Ik5@T%3OBEWz&Z~)OtzNZu`I&pgR4i1)En>4V7rd=4 zE6%X7R^{so^O~&0?{zx2y;bIktG(71A9Iz1Q>e}{tdDVei*YS#^k)O*^DeQecXB1j zg@uh)6qu%1pbJFY`<-&hrTokhbhVjfQEvKsBeXUMkpFEuuo35;CM3xg2-urQIIbI z@RCS(5Tq;&LsAZwZDDirS<^CV5Qyh5yi>Ogu(5s(WGA5aKx zCx(HF`{&p;&1Vi9K5N#7+I5m(dJC&Lv0ni-WS-dy4%!cM7t9=TUl=q>GKfpm4^n`G z(q@#{(ulKWR-jpHTbpQ^qR`3OjW<$r%(H2T$rI2>!EDKyh3Ng{V&JzbzSmE@Yn6aCe?kH5U<|v zoL=uuN!w%~^W7hBU9hb~MvF3)7VUbljTScr^H&B`8en{Y{=69Cms3cGlrtka3hAqq(#jQnW$Rx~@KI4(HWPODQqY;3V40dwD4l2%3ma@b7e0Dn)&-v)Ij3e#j#wBzhf7TVS#i zq``zwVd;Ih%ataQUXGgGu^Z4EO&PaCVqh~vF|E?hW>pnshRJo(ccQm!i^V!I6~mVk zRe+FWNvz219z07-6FuWNbm)3*TL~STbJw@1Td~&B$vd4do>|j&G!F3YoWYcKv7|CH z2-AlUn?KY(-M=2x?}nUK7@e`Gk<~_^T^KP1~&wP>t7r3 zj&B782gNF712NlLRH`mv)-2)iQA(Tu8l5mCkj#@vuB{I9a}AU3PymcX{y>&{Nv+ftiGSzp?Bfz*ZldjFw$TdHO;m4^+eo4IN$qkRDVU2`3#!)|8&FL`@e^7qAZ*k%*F~a%*ZkFSt_K<9X3Y1h z5>&%Bp}`K_k0?%qz$_An|S ze`QhlY%>(lGr0~vT_i-Ajw9*=P-TkH81U~Ev9}Ewil{fH7C?8m={5h-JX$L$3<&E%{vI#h@ zJkLO8>s}t0M`d2zuFT7;yNqY2(GOgY2=S2nK6r-d4AVT}2G$V<{D4F*$5M`X(@t6= zSUG~5Gkj0t9jt+%cdSLH2iQXOz4T*_D}`ei!8%U)s3;-mwnFmqtbPtt7-J-HSVFWq zc|#t*HeQ@|GIn)=%_l#q*t z6F1H`j}c(Yw?2!qrNzO(l1|d`=+E-Q);Q>@@8!?!&3j|devwB3J>cbl<@WC9x!>Ns zYi;jSeRVLy`^&~|S!MMtC)v}L6(t6Pj___zY`)#K-4VNi0V(BQdBCIB=khdkvUgH3 zrhx(wArma%(A8Cc;+XxXKbSabbb0pqd-WHG?=M75VhH&jB&UQ~uF*3^L86(fo+R83 zJX%pM?J8KU=Wj^arf@GhEz&G4-ATnfUDdA(8$Um!z6?RJe!(7eF&(S) zcQ7V22uilr$E}Kb?G^MNT`3&q<*Wj8FUv1?JyT$$5g2Z2l{}$TbH=sG!MuGCTWehW zCzWl!v%%W7Xp3?PjdnwjI)lt%6_7I^8N9OjjcyMIIM=dIfejLngKowZV6OVy6^7Rv zc)NFH2~vd@HY_EmV?G$;rHHh}OlD&Zh9& z_*{0TVX_R$GD*A9j=d`lj&1G)bCP$(_{DY~B1vHnsfhRN8=lXs;~n!5_s_gKMc&P@ z6BDi(wA5vFpDx54JMWI$XN;KdgUrq_l|DmM$s-1w&%xQgbTm&G^3REgF?`^ed6@Ae zV38(b3ry62GHIg;+lh|Ny~J)njexI}^;7WXL55~O!L9w_6t9g#j=v$qa0 z#X-kYIjG@CuNyXL(rddlXyMH9nC|bcSo7jDJiY-U4Lfrdhn-`rJSe!<0KBa!fn+V( z1ceq_VDU7`{($>OncoLH%&mEK&^80Vm!xdJ5le*KdNZa53^)Q1&dCA*@(?z}txdi) z6eyT<@0@Dl9{83DxV$RLQ@MHNlOHFbcSYyN6&QM_i00RBH1~OTdFwgs)xI6Yp4o{O z0h_-^JuTl4*_dnWy?h!`Yu~Z9o%-x{@#Jv+ODg+vESuil`J4Cgu-<^9IAsv%y&&67 zx#v|c!EQy!qgv=xF#sLaIPlCdm1%$xk4?O147ZmeshR#RE4MchzBbP11ZbW46GN&K>5{^W}6xY{P?(I1jAk9D;Wiz2WF& zL`>@YHnUut7R|A;b(=LB*BQ|UEsk`G5OYS|bDG8RszS;N^_3$BPchyZP0Gu8Pbq39 zidBN!BwA?v##}aU#`@LI9B@ZajB$!n^|xH}+Y38OTT8B~ymi$+8KBMUSfq$nbs-E? zEH&jCOq;r3@=jwUH_)?Y@YM_ooCTe)O~gCeXi}h-8Fo7Q$6Ox%_k+iQUpEovo>W$A zOrlKAJv|cNIpRmzmAtvmo;Wzku3piTF&6KfEXsYwRPlSay}Nw5wXR|BI-LdaK%4C< zB7&Nls=EW~`cGfesSpwnB!vPbm2VE+HR$sFt;_3ciBun~F%Zr$5kh-+=&$dSi<-EJs~ z&8bK+MMqp|7O%CN_@Jqr4Ct&1CQY1ivI@&GGT6kB*TQ;DS#?B`>sT4Hm4WpROX>9{ za>0W2gqX9;@?K#=R7ig`>96Q4o}&~&$4wbMDikI^(e6Jc#O0ZhifT-J0uCqZm@z2H zWFUtOm>?(#X<*4^5rVY8NuFNySf|owNkaq;i30dO3^PqeEsGj}$J&Six2N-W?bMy~ zNmTgFQqG*`d`hBty>fH)qxzXDyf->duTIY8pRwCUTdaw2v?JoIMG%5iGO_*+i}n(hfFS+&HTNsrB`=xLQW^q(Hvr8EVb4F z(54*-9fGpc25LTVl^+GYAH6k`9VCSpgc5SmI9Vwd%+tGA_ zI~~mueAX=@8oD*KBXY$xdh&&leak|E4u$DhqTw4=%R*p{XS!T-JZ5O+0y+8K_f$qZ z9Ner)H(KFGbjE>24YuU`loK55C=IS$pcWx%jUyN_3#H1)zFEPmWO+GqlDRv=4UP5V z)Vl2uhbKZYk|ZN&7fri`v$IhFvPAkFu}o=b)%8~X+j{IbtQTS}TWC9RMW}8|d6@dv zl~pJ?2OV*S5Rc%I;rv759v5ydWjY^gj`C(5zm-O%Nu58Jhd$WuNdQqlkmS(H-kotE zAt9l`??gl-RK>Qoda*?x3dTiR+=U{iA|4)mxu^60QM>Ff_U=f?CCJc55RdE>It2=ksXoW0Yj@5kk3zC_fnpdCH`x_D2nbG>QPQ{_U1V9t@V>zYGO{ejE5x z2zwG%FYUTy#sRv)f(i;OoJ$5-3e1!wTEUAJVxo+sC{(Z*H6$uBDgzlh8euFdusI2c zWg9d&$tE!s0)C?jRgfmhTEVoCMnF|2*1*{fG7!NJKgf2QjiQ^58+g4-nNfb_G$}+= z*$Rqw%|;q?cm#%uDiRWPv&pY$8bz8Q1g3-|R9E2>7VB&W_q(K`=@A{%&*lwP1P(3c z-Y`oE-}k~wD6029<^2D+Q3HsK08A(y$_hXPJ{yiy{Q*#I3005s|3ZF&_8;i}f6@q# z`^V~F0#yHx)%u;9EH$MKAK&r)-|SCJ4~76s_y*I0HHTYa>|@0qQ-v6u!T;L}Ar|{4 zJi)#KT#^+R$=tTDho9TP_r^5aeo`PQ+=tWM^Uu0|$RzYr(p$h)kq%?_6#k*UUc6hToZZ7qH#Z3}_(1YC1H;oe zH)iG45u5YfJ-0i$ME2yu$n(s*ArctANM$mQA{1k9C^NkSC3h~oyXD-4&N?DeE2M{wE1V-?tkgtd<+9E z<9*{=cgVV2}I-$fN(gs|B0f`>RcE#)> z9Zm)NWlER9gI^999Rs!x$XR$I*TD-dcJy_;4<7%-D6uv-X>yCP&qS~l8K`J&#F#WT) z)L{!MbBsgKN1lAAeKa8+jJk_ZMtUJZqvfRd1?flPMyUKJO?v+=3D`r7GaaXtH!B|J z)GnB$IF0`^m=cT>=#jm+e#kq26sZ{tRHO@K!^^&?d=Tk1{lSH=|QrvBJ>eTQ^D@f z#%~jn37fBfq8|6E>&Hh~JciszbCyq_x1|~t4lMgE7X@!iNc!LuU>+PGUK)?dVlkKo ze@Rr}X*IE~K4W0+9wbS)KB08YCf(v{Ouq3^z5)LvKzG+g7U*k4d^DB63GU4K+A1#!YK@ z`gr<}eS~0-3sc)t!|P7mX6Su^`U8^S9LW0x0io>+yglEzOrf?qDcM$C_Z=@0izXrq1NTgaWbGPCz@M#JR!}(fg~mn zLXDEZxcMR$!P5 z1VdyEj2(t$B>tT20fGUn&M9i4F-6&Chz=sTMUcpe`3|PJav)vG0#N&8Hfx4G`6)vL zqNHx-jz&Xa5ho}p2@RzJ(FmX@L;@^B>x#K0!X!QENMVIFRO1jrJD_4#QIu0^p9Jhj z_`(6iDnkAR_do|A#@pK%Y}`Gp@~&;`D{{b1JdkD1uC^8xHS6U9)N6caRq z7bkz$g{2va9!IMMa5G?Mq#s^`70>|H32-5S@N)UbsZTi=sgF_z{mmbH9&_R8_0(=Y z!q!Ysh1d{gmo{eX=k@Q^c-+yk@aMs_G$#Td5RZsYr{nh-ZTN%O#z@8?={X7ttSN*< zRRmZ7euvyUJ-)yI`XAnU5Pc5=^|qG;i6PvfhKEmYg*ran1Ik61?`Aq4-M>g;bsA47 zW^n%7I*Fb@>^z5v5^pBQv}{&xN}Mlk95EuMO(6lXAOX9!!F@;@t7IKYZanul$a2x* z9`hfACT4>2&h&@4V*4UFa&*tJ=h*vTbC|(l?hrNiWBO(Q?arAraS~NR!$BJ!W1l(K z>3dc2^!eHg9^S{%Y!8rWm1bzQpn8eKbw~7<0SIG4CWBw$GDZVm{cYnQL)cK%0k&`e z*Yj>d(99(oMZzMb#AF2cjec95bCs`{4-N_C^IIk4te|iv=n5h%neO)ec72TT^xAg99L4cyyKB@*cylb^zS;GD1wuki)RPWb8d*dM~csp8E4c zLOc*1sMrk&js4)_MGb?~;oooy)GS0}5Q!4%Pn{6QjcvdBqd_S#;DNo!f65hon_!1P zhe||K895~?cOe=~aN_YHtcq#)@*dkvwfv;4FS8Ao;=;!@=TYd&4?_Wpnmt;|xesI? zK-l{C1swow27fsGxL|dkhKeYR6i|OVs@wX1!Lf@RB|T$FITs73;sYry>XfV+5u*+J zV$QUYl=i-?aW)xo_O2K{;|aAGKI3&5@QhE%0PlF?4=-oX|FeEvr^rCbHmB{10sTMKvWxxG8zi9cH)+n^+Xwag zPs9eSe{b#;Yd>FUx7)w9pKa4!Uucu;t(QPR!1^AvOY%<%;`L9SQAgM}2jTc2;?q1F z2L8-}_5Uy$=`#%zEaosCP{5y|(Z{l?p)2^pNhZPO57YJBSmr@><;s?p_6O_sc=e!+ zWkZaBcyA|Pek%5yA*z5g$L$;SvIeMW2(h4`>{LG-E%-(H7w;ej?W~4@GH=97iL`I4 zVVOz078M@-^SuP7VA#MMbS-!3M~u-$qs0LWq|{wP6I8qZ-6)>F}AQH zj1|ue!rGwTiSh#dt)--`5cDP)Y-168CV_Wd8rbw)!Bo*2F`_-{@rK9<^{NJ#B#5$d zLtKhY&`0-ef!*;OLmz2ur5PC|J^_=; zDTlkHdHUpmOB4juI_FOm1yT@MQ2W7UkR=is6_FMh4n!LnMnEwY%ocv-;@)F?9>P>< zrSz8qh?#mYJyb|u`-DD zo$8Uc?;(^5o(L%-7mL|BdC$?^MznqMG0r_bVYKGH2?hjKFy$;8yeCtT0|4dTYgCfX z4%p|8>rz<-bOvZPyy=JJg=KuDp)h}6TxrjA`<0Gy7~b-I|LD-1JNY*P;#c=VfjP2N znQazBz%sHKkD&um6BwZXbBRONht3JN!GoC!i6fTPtAM}ZqxS!yu3_WMmb86|u$bz% z%7}fud)*ELI|JoUU`fOZ&hhYSmL(RHNb{bvqIFMAiAYfZP(}}+%!v<9 zsHmDtG8WRt5;d;Du4{H$21hkw`32ff6AZAqYch>k2d~bC4cr8o`7GfstnYzR(qG7Sd0gbR^DPb6dMoJi?HZslIk!bjwfLBP= z?uTYF?7-Z5$jx>4pp9YsH?L6e+VHo7Z8RWF!Gz30U4zZ^5^Cce!@-by`Rw=+*NQ%2 zA7@Y4YCb(ZYLGHIn`xpS9h+}uK*MTJG;571KL?-lPml9^0|7rgcLCh@fyN<2xP7g- zT64?XRH=MdqrGzRLtIe?f4{RJn>%RO8H91!B{>aM-03t9;ggX5$lcz?70Z6$kIEZ5 z$_3%^z7)!sRAGK*`k_{o7B(VOK$Cy*=P}AT5MR;~1sXIZ{1hC~eh@>eI{DWnAd(Uh zWQhn2r=5Y#K(+Ck47ke&^u$lB^7r=jlt_f_u4;A0)U|HemSgb)57!~tAbPvuFa6UAN#^}EM8VGQv;36bvPWu=htM5}pp9$R1L^%LgLJRa`f z=e7+ffaI@CRQ=Hz8<+mu7Veu0W(^u$hVe4rFseV`H3tQ+MRa&>gCldd+hhz7%;_i+ z8C#)&#Usyh#4N?e8l)&FkvwR0gc%3^A8Bzr$)IZm7aGLT-RtM|#)jCL*U}0_7XMRy z_jX!#8x|P7?4-&gSeEW^TLxZ0pU2*CG+mnM#0*RiDLTR$dKBrT8d<@v7NaXMGnTFh zw%nTKb+a`(Wbz-#cwx=po|I_DhsS855QPEDLZd`Kdgw>Hy~%-#Fb}m5fIfM^>+kNe zdX6N)3|J*?PcCLQz)>uulsgYM;m~=p1VKfsdfNHZQx!DTcL#PkD0mnFBYaUi^L?rkS!IHD!{yPKC zlQQ%xzSnzyCuMWqZ{AUtd zcuz#iU{rmp@wV%lIjJjP8Eq@jO&46MpCUye6)^`epd!L3F&IMp5PObf4`NEilj0H* zQ7QApqyv*%ZB~o}Fv6(7}%L{qWda zJdn+(3;H;=q3gLovD?1If%C5SYK4c@iZrpd<0YtaSW*_N9LUBh5nyIO*3 zNlmivnt_`;D6=3&!LZaw!J>vC!(9MV3`cNx?;5L3aMB^7N03p?1Y%_)h)Za(e67sV z+`+=C4*=BPY_MIj(NAV?H+^_gbObJ2-GV`wt{(5P;JVgqJ;qUyni&W{)68liS6RMM z%c+J(5ayDJ9ZQ|b4)F6ApB1spSdg?Yjn{hk?Dtf$tAvi5tQgRCFs$GRl(CwWED5=n zAPh*1BM4L%oOsUfP=Ypl{W*~Ae1kToyIX&2ZKlb*vDRGq4-g~MkFFag?NY5B*7TN6 zq3MA19dLZ=K&ok4B}!rv1c-h>v5KQgG(?HHTbb%%`Q(=ErX#e=1B(;9ONQdx(>_KppH z&>g-z?^br+n@-B~9T!iS`FD!%HbF!%TgcPjJqGf)nJ$3_$p8nbYn(`Si?}*WgM7bN zlGuxzu!*~}g!mn&3kM1xtZO26M*<+nG(gPS3lhKaCoaX9ZzH%3xO3T<`g~qX9kCn` zslFVIz53>WrZ^t3rbr!nrrVy$coSM#BLYE(P-`P?{2kUE(cj5v@OUeUVx@{to+e=q z&EcN@=LaEDBn<&3;M-ULv!Py8hT#b#zXGfDz{B+?I^*LQ{TMR+{zA6nh&J_4_Er`! z;{}MpGSEr~SdIIG^^+4Eq=bmKN$%qxcLzZk#Z@yNj`|D6Ic1>Q4$a8jTZ=xf%hN*< zx^;d+M_q1+LRoAu@ZkPV_}k^M)u(`y8y!P;@!ps_vCEFYblwgAFBaVOr*phcn8TgO z)aMe|eQAiyp{IifOh(8g z3s?wjish|l$AlZ^4c=?H+EnF>5QrR{W&}$O5bHx?IBF_WG`+&+VN*UBb`%|DDV(Xz z$-$Q`$06y6aNpkbsxaGi)bOV>$aBLqgTTR}hF6!JNf^ftTX%L^U>G#a5e88+gg2@s z63(tBI^46P48|x7gW(KWNeV7R&J*kiw%%|mQFe{>U^6IIK&wiJPG}Lza`uuk-lxN( zLD)cDv=$(n=NB<3Icn#QA%jb^jnIg+20$U2i#!lD_A)~bTysp@!5sbi`tMkzGLp~` z{V+6_fJM_ky)+E_3B;fZ3iRS(&COCEFo)dIKX3AzO--8zrdZ4kpgcr6bvW4_O@mdL z{y@J5hSsaqJ+g;grJ|$_CY8c8tYU?RO&jS>(?Hq`qSU5z0f%f4gqerT{uzCB4se#7 zXfO!f86mIQT|tH-U`i0|;QDPh*!Ugzvi2Vw9AaQaZUt6gJ`#LO=?rf>u5^A(ID4ti zrXhTaHvS8^YFtD27d_HWXuL%&jyRF6~au$GSJrGj`)5%fI4Ry0mhN!WeIT z`E0gggOQ&S#q1MNFf=reRg=G-?=g||!z;hdt0*f;Qbc~rn%3=rG{!{`@FaEuhTTM# zurb(_s$klOgn7vzM3BvME(%1eY67n9HR?~iU=kq+5(EPxCOkt5fPb*o7Nn^Omcv>Ck_sebSO>4yhJ4?M4&V{!+3|+8+(nEN zhixx6w=9C@Lu!h14nj^m*v>E@MIr~UGoM(~ugg{Cf$C%W~oT$M}pC(aa@m$%HkW(3)C6fUAfll|Nf52$IPXqRpO5tFx zAiZZ9)aX}L6fxF}9k^CeBC%q~lE6oraNTwUk=swDiDM?r7%%s6pJK+HlQhPD}r|Z z0*9RGiGwW=prkDV*oHvr{1^6r1t_r63|2sWFjFa@DLcVWqvXXnPOGQWdJm+=Y1v)2Gq>mY(Uen!&E7r~>F^0? zgkmvb$HhQYSQGKn^>oC&vpM0C9-$AtN5X;a6VMDf_x^rS!9CGN$ONpr-Bklgoe**S=8iGP^cOI;WSI<+Cd@Q@&t7F;@b_IBsoPJC|sbqVH@|^40ER50S|m4 z{n3GI5q#E1E)Pe{?CYKF&CQ$WcYF3Vl58nG43&pAs;RXqprDaN$p%$fAZ4LeawssE zG`cW@v{`t}qz_2a*=R;Yd!pouc1d)i*wgk-PJD3ONA&55AQ2%Slr)XkCBX~30^n}Y z+hPaCxC8z8A=_l|#vNUHUL-PC_r?f-q!c2+SrmY)6zgD0#AI0&NU)0}P!=pDn0z)9 zx+uf3kzdg|f!y$U_JAx;dn-Ghm~nW3Sjs{yW>D&DGqf*EfMIrgxNt~$k0;!0hap3* z0RWab8=i7%BzH1MWJSx5s9rY`NeIG55(FfS1ioibX1i1fs5lL9e;qf8fgMix=sDM6 z4eyGQ)6E?-LRCTr{^Ecte7MKoC^<(HnN&A?H<^=!2ltqMyZ0^S`xodAqJ;{{MhYie zELew-DWEbvg(6vq2Xz5M9!vN8Jl3uOtYOM{1M-X^2qpiJ7QXPefKizn;ungU(j)N0 zA$2lY`6GlflN=!c7&Xp%y{OojxyUArO_6SS&K2!|dq57rOoqI=j+bEDn=zvP&Iv*w zz)V&k0^DN;otU^gfj?UO?gl4(kna@9l;U|ZB}3pg1Qe1mQD6#1K|zoOA`m*eCteWH zDn(cc85Tr`wDffhRD|g%4vgliKqC_OdP7=JmfKV&vFb@AAgVGDMHj3j4N-_M}-QC-{Z}&vsL?D@?XZ4+RCD}R8?!XvnCRa zKUSs5;WJk&ZZ{3aV@{8KC7S2}pHN8bY6oqC=-eCJZT)+T4mu1iu#1YzEhy%kSQZOu znrX~-zV1OGGy-@A3t=7LEyTYPeS6#Y-$Rl0;vPyeev;D9V~oLJVg+Ff1P?SAdgOu4 z>z=ke5#(l^e(8!scL(0ZKgBhXO2rw6F&|n&NZNm3)*O(mUysJhZcZ?=jY@RtSOuK}aH? z!AKGcITf(N43U%au__P%qk%qc^!4|ViY8##d%J$kr=bd`VGdlO=Ly>uo!uv1WNpZK z!}omT@w^?|?st2~w~@Wk6^tA3{Zw4!Vs{2JeMMt2JQ#udljyi@@Z-A5EMc=FvmChu z?)ZvT8QB!6fYNKUk9iPs%A>5a+1lDW+mLC`rGvA~J2Q2hFI`e1b3A%2B3Uj7Abt(r z-j*OGrG&-9WW2vGz$tbaDU?2|Q}+=ujN56U^hz*X!7{>W6jMnQI!C_8D7U}Y{5rZ+ zUK43Y@CqS*ekkdNX`QQD^x??6qT|ai?ZvRyxx0%=RS36+{%Kidv?*%zqacQBfw|--&|cdS}}3o(Bd+VyLk}7>r_*=0es1LNHiFdn}cUJr~gn2Kt2e zvU`$e_VBT2a_Hst_xJiK+U^Jlb44xaGjYI?iwLZO5M-2U5zHM41~LI7&4)j-(q!Jftpen4T|%6xZa6$yV)L%RxJ7XU=q3GsVOrL{Wwjwq%`9&a(r${danLt&UH z17sG-PqHf9>CxjH@N-;6!lt9zQ{$!e0;rFoRqb9_2Uq7*u**Uu;4J0m6$*p7Ku}aRp`^PhP7ZQ zEE_~E8hPB1F_aOp(}iXjWRxhnUa`o;P>?Dja2_jH4a#Y@BP>Vbs_kRJ`#$BT6X>B( zH-LUn#31k}OpBE^(l+BLNow9<3z*+7u80iK*)|DERZ5sJ3>FFqv|)>G=Zzd-;C0_b zWMFL{E9N8-rSk?jZ@L*Bqjm8lNW;J*$?@5=%uZo!;4A{jCG!n;$PkPt7b`*?h*VwW zENpZPD>NI}WM_Y(U=(QjteUpvT=vj4U(o0@O{PNirv$WvhB1)f(~XcUO`(8fpi77r z=-IR9f^Z?Ai*feS1Dj-$#5%rb1N0jp8>Sape`ACWi_6m`d|fRs3XIK{im5amRZ`D> z5GTvg>HOLO%Aohxqe>al=)8Flfi!zVw_lD2UyPvVc>)FumfvOJ+rIpNp0b{EfqU7{ zvnJ^}rCw#_Lwgucsud2(DUAB&i^10cquujQb`3nzf(7&Q~dXDnKbVucZO zh13fq0gy=qB92_mMww7#uxV_>mo1u`mA|QhB0VB8FVc>bxuJBomf2TaIqzv#z01_y zB}dnCJ`U=BWEQVibEIiv9U`L_d9w!^OxYA7x8@Qd$`ZRHW2 zoAj}B$$N8c!X@E(`+zGga;y?-axxt^Feo9M8CW7Q20&R6DpGsM7lCBoAvM#l7fa5T z91Li{9c2c96mAPCi-sE^v56eo0)Rpbq|nlR*?}NMV96AUAtVrlL}nb$HTM#q2%x8^ zu=+uU&^>+s*P7G4d2QWdNRJ~GkSZw%tq=gRMW_`XqId8N_}bejj}RJ2d(=613_m{( zq8h{CXFzm#0C0&;sj7LY>^RA#R%0VjqbphxpkQ;9%@At_B29GAFCTtK>-ph*hV=Bz z;Ah5*fgd!q4vi#)kM5y050~-t0A#ko&H)JSDDW2X<%Gksw#5vg4!wm4cF9tL5UZ-Skr^WqI~GLhU6`klmc09L!qs`?WMQ9NHuAYlDn7L3fn#r7<~W z2@J{1M3G!V{WI98i0J8udk!7F%BrfF=MCR?NFQ;=hQ!+6Iu$Uo*nIYq&@{o;X)<(| zT=5bK@;IrUMptQ?QJA@9ND~6f!ljU(hLl4z^Gvn6>y{GGH@IjflX6GW7e9s zgG7>HlPI%IWO-vSb8Il9m~7?8T#jl`uLhvoDIpmRr5NbmI#r&BbZ46l_ePYA+|4>2 zNvZWv+P?-dFsPSjGa;KT6mh-}CiKN zp#^{=Fl7Z}5v3qhkr4thSrLW>uu%pv1tcm!HfAdzvIZe!+K`0=l4&L~6&V2`j>;66 z1lvr-MS?_@vdK|pI8vBNxTp#fXbCP})(T}oN&%=ra;3yl!lXe$2Ao#J;beX!b8zZr znra}HdhRAd-UU}@zuz`UQPQLHkIf%bdr=`G5+_ILg9hi6$%7|3!1owU*t62eaA)Ia z#WXjTG)HLWc2MD@l`xwQ`xarH>~;(|`&dPz6>mVB^%>E3e*ffVua~Xgf`hk7zeSZ5MI({DgkL1Ygzr z5c0(fC1Mr{5fOt9qM-uCvQPzR)EjguzyNH5bHlPPmvFngAbz23z>Ifu{=kdx3}l;91v$CJML~>kR$NLsEK*~}p=T;Y%M|Nl5=6v8PBIm?()NAqJv?Vb#}^yBMEf(o~2NL4%%vCNraLJNQl50xj8{XOYB|U)(pyQhd;w!jTA*CFJB>~5$z#EvB z?A~G4>+!ka9hBJKU8J`F`V|f*btXB-V(F}c&qfk5okf6j9VbV<&M=6cD; z)Yc!UMu`IFNRxQ(&{)U8n?_IN`4_auzY~sBl8UbxV|r;cSk)6GgCYcsZfaw+dqL?O zk1ndbNHRergBXMezb1pfsWz>Xmons1`zUb%LVrmwN;2SA2MO~Zg}J6soN>tplL!CbtM;|9GoIcz+uhX&WXQ(sc2|h@@m&* zqvbNpimI0jap{NZT-3XvnbcHoJ`-UW#WFVbxfzboI zA1MHKf3^@IGY$tyXsJTUj?5Ek!`c`SFT#C{?os8A2lY+6_;pPlH){x7TU;6;dPggQ zG#6;5p((40M*Y+_UZ6jD&zrnDRz^?G)EnjvsortnKGzfURfl#IM1?g^Kj{|Hxrt3x z9YVHoq&;qWa5o^gF)x42UOM8-NtY5bFoC4-nY#;iR_Fw6+{P zK~A}o*OCUr{-L*m5E25$VW{9xYN4(8S`wJ}9TuIbj*f?7WIPf;s1G1Sc?(jd8)-RX z(6ZiP;U1IrJWnz4k_MWlv{i&(C_vG<7yT!#uCNApsTL&_2xFog{RJi~wL1?^5B4B; z5bci0V}>>kxjbMVWcZto7|^)I?>w~Hcl%+uU@0UB>BuH$PQ1u zAUkG;-yKv46nCu7`5!jrIO-z41;4!32a^G{m$=eO0Eihk_TLWtJyv02Fc^5cAQxU= zV|CMlN+5zHWE18Cbe}QlJy;mY7f`Z6C?g=kTgVCS77aLVII-lralBH9)S@*Iko}@Q z+5f-W`?x;efAfC--LLok|GVq{AHVtk{ro?p)&Jf9{eLh2ISh96joRt^BNgFFKfHa5JfDvFbf_6jZ zHS=1=ZO2u6Q_zTM43^TkW^4%=0LYtxYy?6N=KwqGV6)UI zjYe1J(OyZ2sygi(MPzYSEi@NDj%jwzGy5s@h}byZ`9uKx(gOtgjvR5JI`|t`NJ!Ay z`-71KjgKTx)QC~I^EN+EE9Q>`PY6ViSI8s+D{MJuH^AJGF70#6r56My!Xht~8aoR| z@0+mN(ouInkVGO7f{;=`fj*sdPg(5IDucYgc@YPngR?XvH>hwq?(9vyr~L^fSG6D4 zA#@Cc4u>ZN7`TO25safDNi2oY+C#sb{k|!}A|7a~8RbjQ5lN!vRu#vt7R_Tf+@`|N z%*}&=J?r2y9>2e+dVKJT0*GX+kW0alE>`OWGoHHMgx0Z;i_Qi^NG7gW zAV`Sk-TRVkrVepqBq47x@g$3=>;u`hlHN%OIhU6Zga{1Oi6Te{Bo+}$k~D;%f|AID zY1Ca+eH{~$dA`eZkjRW>W#2uK4Bm`S98M?z2%N|AsbQUzv$=xnSh zLWKoDN-%;!ZILM$#cEp$zD%Zo&==%^@^cp66qt@DNjv`i6e2!EoT170sV6e=}vO!wu&oBq z%@Vq&w|I2NFz3sP^eKR@WmpE5SI|+U!O77EdEnQg^ z#+L@|5s4ZJh^(^+Zg%YS&v|)6L!LaoDxJD9l3Odv2)?!E~Z zJas1-?$qu2>DpZ#wPxKOur})JB#ej?75vS86R8&sES0NhA-U%rb(k96*MOW zhqFEY)Hd#Q#xPPvGFvuv{wh!jKtR8o+m z3?(d%^do_W2Ix+cnj1oSjhZyl+6uCaEKsmo^NcgOJNeERpNW^k4s zq2yHrj5+qo1>T`x?cq0(ueKBe=usKh+&q)Zx$!~xi-|2nG@1jrou)j9r6!2_K6%md z?7%0Ba%IKSBBsPE$;8Sfo$2B3) zW^i3%uNL(0h7s_n|WKPirB!a*O3?M!>1xpZ0WrYrhK`!8o zr&DRH>+l;OM(y)vDZ3~sN;7_H?|W?~o~UXCTZECRFh&pvuuTeL>}iM$5!e`DZ@FnM4dNSs25!I68JYr|PK|V^-DG%xOH@#26H( zPlt?Zd&l6ZM#bBq*ve{n((%S{7mL9xB$EB&}77(z#3sDaw__%p zAR{HzG9kVQ>N_HQCkTV23W>Of1a~1Z1v)MUkYrL|vr=w=H@y*%$4HIBaWS4RTh%Gc zff87gHE(MKgm6faZz-`&7^y^|83sjUP;wz?SVb&M|1b9LzEs zA2_7<&sbe3H<*aq#lFPQC@Bs#HHO$Lo^#bKaYTZVFCz>jh#;yV86v`RKwUx>g(i-M z%jPM)A`)1Y7DW>oa0~-X1LQ((DhYDK2#pyE46rIAL_{M1HG*A$mm(<`ES7Q^5tckT z?JcAyFv3l`P*O#Ep~%fScd3Q#fqu;Lrs!Kd(;Z}U*r&+Fk}@cu#saGdGC)WoEK?5L zCP897=I25I#sufu!9`mM*v@OhkE3G-)|eZ{0cb)(Ek^S03U3!RNT_7(hf`+(?Qlj& z^}>Aq;)utG93qH09{RF$1x2NmIF zDrWNX(GqC$yyfm|w*We1oqcD(>#s_NjgGBT3tStETSP@lA;qTj-JP1Ny|Bn|H82TK z)D1Kd3nGM(3HFjXKne^r(Z^-rypANiBJ+AP$au+H5T({f7`xzsP+EdXVK4>MEsfCW z1A;Edp+eUYj7n7v2e!koYsS-QfeF$0rB}jl%WtEe9xHGZe$l~7*z{;5X!bD#Lr=I+jf;*@d7~6MvEX&b7Pub zoOte4s36C^p&~?r28j9~@+Ef-NU`c6b8YaKafuWmf6Emml}J>%?|_?kQN}1@0f9L* zmW9|cj36UW1?<*vF;W4tnfkO4ff6i;7@7h98aWIR^uF?mXnVO`eBA+KNcu&QGYWCo zn|EYOUm!$o%g885{;U_=7AOSXaURm646$=@Y_J3J`!iYHwh~B^ZG@R)TZ9;`=YgFB zh;@S?J~&i~;DY6{X#z~FplgD7{RFBpo--WFK`uQ-G~jLl;y`@|F_HC&15=@KVO&~3 zON>k^9{?i~Bp8K=6%s{&&EB!uo_+O_`Op;TwxmRsIMCq`kr!lOK&hicYdPnb`6+aVzl-F2If%2S;8F!B&SAit*uq=Wcut3V{8)l}|ogpjNnP(raA zI$#Y=?m~=3P!MAxh>FPuASx*UWE2=ANFDIQST;2pjHLa7hB~zZ=sRI~7)<6pJ-|ZZ z*fQW2szaP02o`mspKB{EDH}r4g%}f4;`Ve0CUPN4ea-px)K73Ahbl@8D?^NhBb&0Z zTtbhOi+ZA}l?fQa7b$8;j0(nvHbY!^at;jC4~9R6V+M0OQEY()1`LX;1yB|!EF$t6 zz}i4chzlVWC<;MHt0JnS2rQ9fXYCRmtcO7DY%Cy>l$9YO0|*M^lRgu}(A4hGvv_1O z%<4^5DGft+0H_yexzz&^MoAxkN$`jKzuAMbJbrVg!PyJLv+ljNN#_kwKnkJBX_kmnGWhQ`U;WA&`O?N!g}TaR#!>lCVR!nmfkin=48-N?(4KZq5=2Pu z?Zrt_KPjV63BH?SdU4&Y#){`H1n^SIyf=-AID+AAD8f`Px7E+-&3a6);3(E$gCd<1 zsutM_T%mL`G|ee$(!@qCsA&xiEaPjdxxrK=W~zn*urP-Y$C@`X&NOB%X0^z>!N|C_ zfm;gKOw6|kIsF}p2*xZDFi50gCcfymUus~h^*|VmVFh9gRUs5~myk8bF=&-gfy8BE z5&(C@YGn@Yr4ZBNmrr(#i*yIo1!NUGa8A+(LP-e}Z3%SA09XN}58xny^Bz*8l7A>t zg##c+%|AbAbNDcge!h^bz#y>{I Btj7QV diff --git a/extra/qt3/qt-font-default-subst.diff b/extra/qt3/qt-font-default-subst.diff deleted file mode 100644 index 3e286f74e..000000000 --- a/extra/qt3/qt-font-default-subst.diff +++ /dev/null @@ -1,77 +0,0 @@ ---- src/kernel/qfontdatabase_x11.cpp -+++ src/kernel/qfontdatabase_x11.cpp -@@ -1589,15 +1589,6 @@ QFontEngine *loadEngine( QFont::Script s - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese){ -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } -@@ -1813,7 +1804,11 @@ static QFontEngine *loadFontConfigFont(c - FcPatternPrint(pattern); - #endif - -+ // XftFontMatch calls the right ConfigSubstitute variants, but as we use -+ // FcFontMatch/Sort here we have to do it manually. - FcConfigSubstitute(0, pattern, FcMatchPattern); -+ XftDefaultSubstitute(QPaintDevice::x11AppDisplay(), QPaintDevice::x11AppScreen(), pattern); -+ - // qDebug("1: pattern contains:"); - // FcPatternPrint(pattern); - -@@ -1847,10 +1842,6 @@ static QFontEngine *loadFontConfigFont(c - value.u.s = (const FcChar8 *)cs.data(); - FcPatternAddWeak(pattern, FC_FAMILY, value, FcTrue); - } --#ifdef FONT_MATCH_DEBUG -- printf("final pattern contains:\n"); -- FcPatternPrint(pattern); --#endif - } - - if (script != QFont::Unicode) { -@@ -1860,19 +1851,15 @@ static QFontEngine *loadFontConfigFont(c - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese) { -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } - -+#ifdef FONT_MATCH_DEBUG -+ printf("final pattern contains:\n"); -+ FcPatternPrint(pattern); -+#endif -+ - QFontEngine *fe = 0; - - for( int jj = (FcGetVersion() >= 20392 ? 0 : 1); jj < 2; ++jj ) { ---- src/kernel/qfontdatabase.cpp -+++ src/kernel/qfontdatabase.cpp -@@ -554,7 +554,7 @@ static const unsigned short sample_chars - // GeometricSymbols, - { 0x2500, 0x0 }, - // MiscellaneousSymbols, -- { 0x2640, 0x0 }, -+ { 0x2640, 0x2714, 0x0 }, - // EnclosedAndSquare, - { 0x2460, 0x0 }, - // Braille, diff --git a/extra/qt3/qt-odbc.patch b/extra/qt3/qt-odbc.patch deleted file mode 100644 index 6f21e3cf1..000000000 --- a/extra/qt3/qt-odbc.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -up qt-x11-free-3.3.8/src/sql/drivers/odbc/qsql_odbc.cpp.orig qt-x11-free-3.3.8/src/sql/drivers/odbc/qsql_odbc.cpp ---- qt-x11-free-3.3.8/src/sql/drivers/odbc/qsql_odbc.cpp.orig 2009-02-24 11:32:27.000000000 +0100 -+++ qt-x11-free-3.3.8/src/sql/drivers/odbc/qsql_odbc.cpp 2009-02-24 11:33:43.000000000 +0100 -@@ -57,13 +57,13 @@ - #endif - - // newer platform SDKs use SQLLEN instead of SQLINTEGER --#ifdef SQLLEN -+#if defined(SQLLEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX) - # define QSQLLEN SQLLEN - #else - # define QSQLLEN SQLINTEGER - #endif - --#ifdef SQLULEN -+#if defined(SQLULEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX) - # define QSQLULEN SQLULEN - #else - # define QSQLULEN SQLUINTEGER diff --git a/extra/qt3/qt-patches.tar.bz2 b/extra/qt3/qt-patches.tar.bz2 deleted file mode 100644 index 3f4aee1713895795f714998c8210a2ad47b33a2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3708 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 atrans_values.gray; -+ const int g = info_ptr->trans_color.gray; - if (g < ncols) { - image.setAlphaBuffer(TRUE); - image.setColor(g, image.color(g) & RGB_MASK); -@@ -187,7 +187,7 @@ - info_ptr->palette[i].red, - info_ptr->palette[i].green, - info_ptr->palette[i].blue, -- info_ptr->trans[i] -+ info_ptr->trans_alpha[i] - ) - ); - i++; -@@ -321,9 +321,9 @@ - png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) - if (image.depth()==32 && png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { - QRgb trans = 0xFF000000 | qRgb( -- (info_ptr->trans_values.red << 8 >> bit_depth)&0xff, -- (info_ptr->trans_values.green << 8 >> bit_depth)&0xff, -- (info_ptr->trans_values.blue << 8 >> bit_depth)&0xff); -+ (info_ptr->trans_color.red << 8 >> bit_depth)&0xff, -+ (info_ptr->trans_color.green << 8 >> bit_depth)&0xff, -+ (info_ptr->trans_color.blue << 8 >> bit_depth)&0xff); - for (uint y=0; ywidth; x++) { - if (((uint**)jt)[y][x] == trans) { diff --git a/extra/qt3/qt3-qglobal.patch b/extra/qt3/qt3-qglobal.patch deleted file mode 100644 index a7f0017fb..000000000 --- a/extra/qt3/qt3-qglobal.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- src/tools/qglobal.h -+++ src/tools/qglobal.h -@@ -314,12 +314,16 @@ - char, or short. We tell gcc to pack QChars to 16 bits, to avoid - QString bloat. However, gcc 3.4 doesn't allow us to create references to - members of a packed struct. (Pointers are OK, because then you -- supposedly know what you are doing.) */ -+ supposedly know what you are doing.) -+ For gcc 4.0.2 pointers dont seem to be ok, */ - # if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP) - # define Q_PACKED __attribute__ ((packed)) - # if __GNUC__ == 3 && __GNUC_MINOR__ >= 4 - # define Q_NO_PACKED_REFERENCE - # endif -+# if __GNUC__ == 4 && __GNUC_MINOR__ >= 0 -+# define Q_NO_PACKED_POINTERS -+# endif - # endif - # if !defined(__EXCEPTIONS) - # define Q_NO_EXCEPTIONS diff --git a/extra/qt3/qt3-qstring.patch b/extra/qt3/qt3-qstring.patch deleted file mode 100644 index 1112a3e9f..000000000 --- a/extra/qt3/qt3-qstring.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- src/tools/qstring.h -+++ src/tools/qstring.h -@@ -195,6 +195,8 @@ - ushort unicode() const { return ucs; } - #ifdef Q_NO_PACKED_REFERENCE - ushort &unicode() { return *(&ucs); } -+#elif defined Q_NO_PACKED_POINTERS -+ ushort &unicode() { ushort& tmp = ucs; return tmp; } - #else - ushort &unicode() { return ucs; } - #endif diff --git a/extra/qt3/utf8-bug-qt3.diff b/extra/qt3/utf8-bug-qt3.diff deleted file mode 100644 index 43e84a99f..000000000 --- a/extra/qt3/utf8-bug-qt3.diff +++ /dev/null @@ -1,101 +0,0 @@ ---- src/codecs/qutfcodec.cpp -+++ src/codecs/qutfcodec.cpp -@@ -154,6 +154,7 @@ - - class QUtf8Decoder : public QTextDecoder { - uint uc; -+ uint min_uc; - int need; - bool headerDone; - public: -@@ -167,8 +168,9 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uchar ch; -+ int error = -1; - for (int i=0; i= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ *qch++ = QChar::replacement; - } else { - if (headerDone || QChar(uc) != QChar::byteOrderMark) - *qch++ = uc; -@@ -190,6 +194,7 @@ - } - } else { - // error -+ i = error; - *qch++ = QChar::replacement; - need = 0; - } -@@ -200,12 +205,21 @@ - } else if ((ch & 0xe0) == 0xc0) { - uc = ch & 0x1f; - need = 1; -+ error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; -+ error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; -+ error = i; -+ min_uc = 0x10000; -+ } else { -+ // error -+ *qch++ = QChar::replacement; - } - } - } ---- src/tools/qstring.cpp -+++ src/tools/qstring.cpp -@@ -5805,6 +5805,7 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uint uc = 0; -+ uint min_uc = 0; - int need = 0; - int error = -1; - uchar ch; -@@ -5822,6 +5823,12 @@ - unsigned short low = uc%0x400 + 0xdc00; - *qch++ = QChar(high); - *qch++ = QChar(low); -+ } else if (uc < min_uc || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ // overlong seqence, UTF16 surrogate or BOM -+ i = error; -+ qch = addOne(qch, result); -+ *qch++ = QChar(0xdbff); -+ *qch++ = QChar(0xde00+((uchar)utf8[i])); - } else { - *qch++ = uc; - } -@@ -5844,14 +5851,17 @@ - uc = ch & 0x1f; - need = 1; - error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; - error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; - error = i; -+ min_uc = 0x10000; - } else { - // Error - qch = addOne(qch, result); diff --git a/extra/samba/PKGBUILD b/extra/samba/PKGBUILD deleted file mode 100644 index 34345ed1b..000000000 --- a/extra/samba/PKGBUILD +++ /dev/null @@ -1,171 +0,0 @@ -# Maintainer: Garrett L. Ward - -pkgbase=samba -pkgname=('tdb' 'smbclient' 'samba') -pkgver=3.5.2 -# We use the 'A' to fake out pacman's version comparators. Samba chooses -# to append 'a','b',etc to their subsequent releases, which pamcan -# misconstrues as alpha, beta, etc. Bad samba! -_realver=3.5.2 -pkgrel=1 -arch=(arm) -url="http://www.samba.org" -license=('GPL3') -makedepends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' 'libcap>=2.16' 'heimdal>=1.3.1' 'pam' 'fam' 'gnutls>=2.4.1') -options=(!makeflags) -source=(http://us1.samba.org/samba/ftp/stable/${pkgbase}-${_realver}.tar.gz - samba samba.logrotate - swat.xinetd - samba.pam - samba.conf.d - fix-ipv6-mount.patch) - -### UNINSTALL dmapi package before building!!! - -build() { - cd ${srcdir}/${pkgbase}-${_realver} - patch -Np0 -i ../fix-ipv6-mount.patch || return 1 - cd ${srcdir}/${pkgbase}-${_realver}/source3 - - # heimdal-1.3.1 build fix - sed -i "/KRB5_DEPRECATED/s#1##" libsmb/clikrb5.c - - ./configure --prefix=/usr \ - --libdir=/usr/lib/ \ - --localstatedir=/var \ - --with-configdir=/etc/samba \ - --with-lockdir=/var/cache/samba \ - --with-piddir=/var/run/samba \ - --with-fhs \ - --with-pam \ - --with-pam_smbpass \ - --with-pammodulesdir=/lib/security \ - --with-ads \ - --with-acl-support \ - --with-cifsmount \ - --with-libsmbclient \ - --with-syslog \ - --disable-dnssd \ - --disable-avahi \ - --with-cifsumount - make || return 1 -} - -package_tdb () { -pkgdesc="A Trivia Database similar to GDBM but allows simultaneous commits" - cd ${srcdir}/${pkgbase}-${_realver}/lib/replace - ./autogen.sh - ./configure --prefix=/usr - make || return 1 - cp replace.o snprintf.o getpass.o ../tdb/ - cd ${srcdir}/${pkgbase}-${_realver}/lib/tdb - ./autogen.sh - ./configure --prefix=/usr - make || return 1 - make DESTDIR=${pkgdir} install || return 1 - ln -sf /usr/lib/libtdb.so.1.1.3 ${pkgdir}/usr/lib/libtdb.so.1 || return 1 - ln -sf /usr/lib/libtdb.so.1.1.3 ${pkgdir}/usr/lib/libtdb.so || return 1 -} - -package_smbclient () { -pkgdesc="Tools to access a server's filespace and printers via SMB" -depends=('readline>=6.0.00' 'popt' 'libldap>=2.4.18-1' 'libcap>=2.16' 'heimdal>=1.3-1' 'db>=4.7' 'e2fsprogs' "tdb>=$pkgver") - cd ${srcdir}/${pkgbase}-${_realver}/source3 - mkdir -p ${pkgdir}/usr/bin ${pkgdir}/sbin ${pkgdir}/usr/lib - install -m755 bin/{smbclient,rpcclient,smbspool,smbtree,smbcacls,smbcquotas,smbget,net,nmblookup} ${pkgdir}/usr/bin/ - install -m755 bin/{mount.cifs,umount.cifs} ${pkgdir}/sbin/ - for i in libnetapi* libwbclient* libsmbclient*;do - cp -a bin/${i}*.so* ${pkgdir}/usr/lib/ - done - install -m755 script/smbtar ${pkgdir}/usr/bin/ - mkdir -p ${pkgdir}/usr/lib/cups/backend - ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb - rm -rf ${pkgdir}/usr/lib/samba/libsmbsharemodes* - for i in ${pkgdir}/usr/lib/samba/*; do - ln -sf samba/$(basename $i) ${pkgdir}/usr/lib/$(basename $i) - done - rm -rf ${pkgdir}/usr/lib/libtdb* - mkdir -p ${pkgdir}/usr/include - install -m644 include/libsmbclient.h ${pkgdir}/usr/include/ - install -m644 ${srcdir}/${pkgbase}-${_realver}/lib/talloc/talloc.h ${pkgdir}/usr/include/ - install -m644 lib/netapi/netapi.h ${pkgdir}/usr/include/ - mkdir -p ${pkgdir}/usr/share/man/man{1,7,8} - for man in smbspool \ - umount.cifs mount.cifs net; do - install -m644 ../docs/manpages/${man}.8 ${pkgdir}/usr/share/man/man8/ - done - for man in rpcclient smbcacls smbclient smbcquotas smbget \ - smbtree smbtar nmblookup; do - install -m644 ../docs/manpages/${man}.1 ${pkgdir}/usr/share/man/man1/ - done - install -m644 ../docs/manpages/libsmbclient.7 ${pkgdir}/usr/share/man/man7/ -} - -package_samba () { -pkgdesc="Tools to access a server's filespace and printers via SMB" -backup=(etc/logrotate.d/samba - etc/pam.d/samba - etc/samba/smb.conf - etc/xinetd.d/swat - etc/conf.d/samba) -depends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'heimdal>=1.3-1' 'pam' 'fam' 'gnutls>=2.4.1' 'e2fsprogs' "tdb>=$pkgver") - cd ${srcdir}/samba-${_realver}/source3 - mkdir -p ${pkgdir}/var/log/samba - mkdir -p ${pkgdir}/etc/samba/private - chmod 700 ${pkgdir}/etc/samba/private - make DESTDIR=$pkgdir install || return 1 - chmod 644 ${pkgdir}/usr/include/*.h - rm -rf ${pkgdir}/usr/var - (cd script; cp installbin.sh i; cat i | sed 's/\/sbin\///' > installbin.sh) - install -D -m755 ../../samba ${pkgdir}/etc/rc.d/samba - install -D -m644 ../../samba.conf.d ${pkgdir}/etc/conf.d/samba - mkdir -p ${pkgdir}/etc/samba - cat ../examples/smb.conf.default | \ - sed 's|log file = .*$|log file = /var/log/samba/log.%m|g' >${pkgdir}/etc/samba/smb.conf.default - install -D -m644 ../../samba.logrotate ${pkgdir}/etc/logrotate.d/samba - install -D -m644 ../../swat.xinetd ${pkgdir}/etc/xinetd.d/swat - install -D -m644 ../../samba.pam ${pkgdir}/etc/pam.d/samba - # symlink libs - for i in ${pkgdir}/usr/lib/samba/libsmbshare*; do - ln -sf samba/$(basename $i) ${pkgdir}/usr/lib/$(basename $i) - done - # spool directory - install -d -m1777 ${pkgdir}/var/spool/samba - sed -i 's|/usr/spool/samba|/var/spool/samba|g' ${pkgdir}/etc/samba/smb.conf.default - # fix logrotate - sed -i -e 's|log.%m|%m.log|g' ${pkgdir}/etc/samba/smb.conf.default - # nsswitch libraries - install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_wins.so ${pkgdir}/lib/libnss_wins.so - ln -s libnss_wins.so ${pkgdir}/lib/libnss_wins.so.2 - install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/lib/libnss_winbind.so - install -D -m755 bin/pam_winbind.so ${pkgdir}/lib/security/pam_winbind.so - # remove conflict files of smbclient and tdb - for man in libsmbclient smbspool \ - umount.cifs mount.cifs net; do - rm -f ${pkgdir}/usr/share/man/man8/${man}.8 - done - for i in libnetapi* libtdb* libtalloc* libwbclient* libsmbclient*;do - rm -f ${pkgdir}/usr/lib/samba/$i - done - for bin in tdbbackup tdbdump tdbtool net \ - nmblookup rpcclient smbcacls smbclient \ - smbcquotas smbget smbspool smbtar smbtree; do - rm -f ${pkgdir}/usr/bin/$bin - done - rm -f ${pkgdir}/usr/include/{tdb.h,talloc.h,netapi.h} - for man in rpcclient smbcacls smbclient smbcquotas \ - smbtree smbtar nmblookup smbget; do - rm -f ${pkgdir}/usr/share/man/man1/${man}.1 - done - rm -f ${pkgdir}/usr/share/man/man7/libsmbclient.7 - rm -f ${pkgdir}/usr/include/libsmbclient.h - # copy ldap example - install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema -} -md5sums=('6f8cf649207ccd8c2c17e28c335f4e9d' - 'e93533fa2296c07c1f645dfdd373657f' - '5697da77590ec092cc8a883bae06093c' - 'a4bbfa39fee95bba2e7ad6b535fae7e6' - '96f82c38f3f540b53f3e5144900acf17' - 'f2f2e348acd1ccb566e95fa8a561b828' - 'c6a38a8c8fa24979e6217aed533358ea') diff --git a/extra/samba/fix-ipv6-mount.patch b/extra/samba/fix-ipv6-mount.patch deleted file mode 100644 index 89bef6533..000000000 --- a/extra/samba/fix-ipv6-mount.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- client/mount.cifs.c.orig 2010-03-03 13:42:02.143936727 +1000 -+++ client/mount.cifs.c 2010-03-04 01:53:22.752879004 +1000 -@@ -1563,7 +1563,7 @@ - } - } - -- if (addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { -+ if (addr && addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { - strlcat(options, "%", options_size); - current_len = strnlen(options, options_size); - optionstail = options + current_len; diff --git a/extra/samba/samba b/extra/samba/samba deleted file mode 100644 index bc7d527ef..000000000 --- a/extra/samba/samba +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -[ -f /etc/conf.d/samba ] && . /etc/conf.d/samba - -[ -z "$SAMBA_DAEMONS" ] && SAMBA_DAEMONS=(smbd nmbd) - -case "$1" in - start) - rc=0 - stat_busy "Starting Samba Server" - for d in ${SAMBA_DAEMONS[@]}; do - PID=`pidof -o %PPID /usr/sbin/$d` - [ -z "$PID" ] && /usr/sbin/$d -D - rc=$(($rc+$?)) - done - if [ $rc -gt 0 ]; then - stat_fail - else - add_daemon samba - stat_done - fi - ;; - stop) - rc=0 - stat_busy "Stopping Samba Server" - for d in ${SAMBA_DAEMONS[@]}; do - PID=`pidof -o %PPID /usr/sbin/$d` - [ -z "$PID" ] || kill $PID &> /dev/null - rc=$(($rc+$?)) - done - if [ $rc -gt 0 ]; then - stat_fail - else - rm /var/run/samba/smbd.pid &>/dev/null - rm /var/run/samba/nmbd.pid &>/dev/null - rm /var/run/samba/winbindd.pid &>/dev/null - rm_daemon samba - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/extra/samba/samba.conf.d b/extra/samba/samba.conf.d deleted file mode 100644 index 8721f956a..000000000 --- a/extra/samba/samba.conf.d +++ /dev/null @@ -1,7 +0,0 @@ -# -# Configuration for the samba init script -# - -# space separated list of daemons to launch -SAMBA_DAEMONS=(smbd nmbd) -#SAMBA_DAEMONS=(smbd nmbd winbindd) diff --git a/extra/samba/samba.logrotate b/extra/samba/samba.logrotate deleted file mode 100644 index 581f4c33b..000000000 --- a/extra/samba/samba.logrotate +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/samba/log.smbd /var/log/samba/log.nmbd /var/log/samba/*.log { - notifempty - missingok - sharedscripts - copytruncate - postrotate - /bin/kill -HUP `cat /var/run/samba/*.pid 2>/dev/null` 2>/dev/null || true - endscript -} diff --git a/extra/samba/samba.pam b/extra/samba/samba.pam deleted file mode 100644 index 53724d1f8..000000000 --- a/extra/samba/samba.pam +++ /dev/null @@ -1,3 +0,0 @@ -auth required pam_unix.so -account required pam_unix.so -session required pam_unix.so diff --git a/extra/samba/swat.xinetd b/extra/samba/swat.xinetd deleted file mode 100644 index 2e62a82b2..000000000 --- a/extra/samba/swat.xinetd +++ /dev/null @@ -1,10 +0,0 @@ -service swat -{ - socket_type = stream - wait = no - user = root - server = /usr/sbin/swat - log_on_success += HOST DURATION - log_on_failure += HOST - disable = yes -} diff --git a/extra/subversion/ChangeLog b/extra/subversion/ChangeLog deleted file mode 100644 index b223bd84d..000000000 --- a/extra/subversion/ChangeLog +++ /dev/null @@ -1,66 +0,0 @@ -2009-12-27 Ionut Biru - - * subversion 1.6.6-3: adding svn bash completion script - -2009-08-07 Douglas Soares de Andrade - - * Updated to: 1.6.4 - -2009-08-02 Eric Belanger - - * subversion 1.6.3-2: Rebuilt against ruby 1.9 - -2009-06-07 Douglas Soares de Andrade - - * Now hopefully fixed git issues - -2009-05-16 Douglas Soares de Andrade - - * Fixing wrong link against ruby 1.9 - -2009-05-11 Douglas Soares de Andrade - - * Updated for i686: 1.6.2 - -2009-04-17 Douglas Soares de Andrade - - * Back to use svnmerge.py from trunk - -2009-04-11 Douglas Soares de Andrade - - * Removing libtool files - -2009-04-10 Douglas Soares de Andrade - - * Updated for i686: 1.6.1 - * Added gerardo patch to fix insecure rpaths - -2009-03-24 Douglas Soares de Andrade - - * Added sqlite3 as a dep - -2009-03-21 Douglas Soares de Andrade - - * Updated for i686: 1.6.0 - -2009-02-26 Douglas Soares de Andrade - - * Updated for i686: 1.5.6 - -2008-10-10 Douglas Soares de Andrade - - * Updated for i686: 1.5.3 - -2008-09-04 Douglas Soares de Andrade - - * 1.5.2: Finally updated for i686 as it does not break the - devtools. - -2008-08-13 Douglas Soares de Andrade - - * Updated for i686: 1.5.1 - -2008-07-23 Douglas Soares de Andrade - - * Updated for i686: 1.5.0 - diff --git a/extra/subversion/PKGBUILD b/extra/subversion/PKGBUILD deleted file mode 100644 index 31a2f610b..000000000 --- a/extra/subversion/PKGBUILD +++ /dev/null @@ -1,90 +0,0 @@ -# $Id: PKGBUILD 77223 2010-04-11 14:13:33Z pierre $ -# Maintainer: Paul Mattal -# Contributor: Jason Chu - -pkgname=subversion -pkgver=1.6.9 -pkgrel=6 -pkgdesc="Replacement for CVS, another versioning system (svn)" -arch=('i686' 'x86_64') -license=('apache' 'bsd') -depends=('neon' 'apr-util' 'libldap') -makedepends=('heimdal' 'apache' 'python' 'perl' 'swig' 'ruby' - 'autoconf' 'sqlite3' 'db' 'e2fsprogs') -source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 - svnserve svn svnserve.conf svnmerge.py - subversion.rpath.fix.patch - subversion.suppress.deprecation.warnings.patch) - -backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') -url="http://subversion.tigris.org/" -provides=('svn') -options=('!makeflags' '!libtool') -optdepends=('bash-completion: for svn bash completion') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} || return 1 - - # apply patches - patch -p0 < $srcdir/subversion.rpath.fix.patch || return 1 - patch -p1 -i $srcdir/subversion.suppress.deprecation.warnings.patch \ - || return 1 - - # configure - autoreconf || return 1 - ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ - --with-zlib=/usr --with-neon=/usr --with-apxs \ - --with-sqlite=/usr || return 1 - - # build - (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all ) \ - || return 1 - - # install - export LD_LIBRARY_PATH=${pkgdir}/usr/lib:$LD_LIBRARY_PATH - make DESTDIR=${pkgdir} install || return 1 - - make DESTDIR=${pkgdir} swig-py || return 1 - make install-swig-py DESTDIR=${pkgdir} || return 1 - - mkdir -p ${pkgdir}/usr/lib/python2.6 || return 1 - mv ${pkgdir}/usr/lib/svn-python/ ${pkgdir}/usr/lib/python2.6/site-packages \ - || return 1 - - mkdir -p ${pkgdir}/usr/share/subversion || return 1 - install -d -m 755 tools/hook-scripts ${pkgdir}/usr/share/subversion/ \ - || return 1 - rm -f ${pkgdir}/usr/share/subversion/hook-scripts/*.in || return 1 - - make DESTDIR=${pkgdir} swig-pl || return 1 - make install-swig-pl DESTDIR=${pkgdir} INSTALLDIRS=vendor || return 1 - rm -f ${pkgdir}/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist \ - || return 1 - rm -rf ${pkgdir}/usr/lib/perl5/core_perl || return 1 - - make DESTDIR=${pkgdir} swig-rb || return 1 - make install-swig-rb DESTDIR=${pkgdir} || return 1 - - mkdir -p ${pkgdir}/etc/rc.d || return 1 - mkdir -p ${pkgdir}/etc/xinetd.d || return 1 - mkdir -p ${pkgdir}/etc/conf.d || return 1 - - install -m 755 ${srcdir}/svnserve ${pkgdir}/etc/rc.d || return 1 - install -m 644 ${srcdir}/svn ${pkgdir}/etc/xinetd.d || return 1 - install -m 644 ${srcdir}/svnserve.conf ${pkgdir}/etc/conf.d/svnserve \ - || return 1 - install -m 755 ${srcdir}/svnmerge.py ${pkgdir}/usr/bin/svnmerge || return 1 - install -D -m 644 ${srcdir}/subversion-$pkgver/COPYING \ - ${pkgdir}/usr/share/licenses/$pkgname/LICENSE || return 1 - - # bash completion - install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \ - ${pkgdir}/etc/bash_completion.d/subversion || return 1 -} -md5sums=('9c30a47b1d48664e7afef68bb4834c53' - 'a2b029e8385007ffb99b437b30521c90' - 'a0db6dd43af33952739b6ec089852630' - 'c459e299192552f61578f3438abf0664' - '21bf3aa5b797ce98eba8307f30e9c070' - '6b4340ba9d8845cd8497e013ae01be3f' - '1166f3b7413d7e7450299b3525680bbe') diff --git a/extra/subversion/pkgnone/SVN::Base.0 b/extra/subversion/pkgnone/SVN::Base.0 deleted file mode 100644 index 4f8ff4a33..000000000 --- a/extra/subversion/pkgnone/SVN::Base.0 +++ /dev/null @@ -1,192 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Base 3" -.TH native::Base 3 "2004-12-04" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Base \- Base class for importing symbols for svn modules -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 3 -\& # Load the svn_ra_* functions into the SVN::Ra namespace. -\& package SVN::Ra; -\& use SVN::Base qw(Ra svn_ra_); -\& -\& # Load svn_config_t structure accessors in the magic namcespace -\& # provided by swig, so we could use it returned by other functions -\& package _p_svn_config_t; -\& use SVN::Base qw(Core svn_config_); -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Base is a module importing the subversion perl bindings raw -symbols created by swig, into proper namespace and make them easier to -use. -.PP -It will also find the accessors for members of a C struct, create an -simpler accessor function like \f(CW\*(C`$data\->field()\*(C'\fR and -\&\f(CW\*(C`$data\->field($new_value)\*(C'\fR. -.PP -Once you understand the convention of subversion functions in perl -bindings, you could look at the subversion api and write them in perl. -The \s-1API\s0 is available in the source header files or online at -http://svn.collab.net/svn\-doxygen/. -.SH "INTERNALS" -.IX Header "INTERNALS" -The perl bindings of swig wraps raw functions into different perl -modules, for example, SVN::_Core, SVN::_Repos. Upon import, SVN::Base -bootstrap the requested module if it's not yet loaded, and iterate -over the symbols provided in that module, it them puts the function -with prefix trimmed in the namespace of the caller for this import. -.PP -The 3rd through the last parameter is a list of symbol endings that -you wish for SVN::Base not to import into your namespace. This is useful -for cases where you may want to import certaion symbols differently than -normally. -.SH "CAVEATS" -.IX Header "CAVEATS" -SVN::Base consider a function as structure member accessor if it is -postfixed ``_get'' or ``_set''. Real functions with this postfixes -will need extra handling. -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. diff --git a/extra/subversion/pkgnone/SVN::Client.0 b/extra/subversion/pkgnone/SVN::Client.0 deleted file mode 100644 index 657133fff..000000000 --- a/extra/subversion/pkgnone/SVN::Client.0 +++ /dev/null @@ -1,1309 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Client 3" -.TH native::Client 3 "2009-02-06" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Client \- Subversion client functions -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 6 -\& use SVN::Client; -\& my $ctx = new SVN::Client( -\& auth => [SVN::Client::get_simple_provider(), -\& SVN::Client::get_simple_prompt_provider(\e&simple_prompt,2), -\& SVN::Client::get_username_provider()] -\& ); -\& -\& $ctx\->cat (\e*STDOUT, \*(Aqhttp://svn.collab.net/repos/svn/trunk/README\*(Aq, -\& \*(AqHEAD\*(Aq); -\& -\& sub simple_prompt { -\& my $cred = shift; -\& my $realm = shift; -\& my $default_username = shift; -\& my $may_save = shift; -\& my $pool = shift; -\& -\& print "Enter authentication info for realm: $realm\en"; -\& print "Username: "; -\& my $username = <>; -\& chomp($username); -\& $cred\->username($username); -\& print "Password: "; -\& my $password = <>; -\& chomp($password); -\& $cred\->password($password); -\& } -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Client wraps the highest level of functions provided by -subversion to accomplish specific tasks in an object oriented \s-1API\s0. -Methods are similar to the functions provided by the C \s-1API\s0 and -as such the documentation for it may be helpful in understanding -this interface. -.PP -There are a few notable differences from the C \s-1API\s0. Most C function -calls take a svn_client_ctx_t pointer as the next to last parameter. -The Perl method calls take a SVN::Client object as the first parameter. -This allows method call invocation of the methods to be possible. For -example, the following are equivalent: -.PP -.Vb 2 -\& SVN::Client::add($ctx,$path, $recursive, $pool); -\& $ctx\->add($path, $recursive, $pool); -.Ve -.PP -Many of the C \s-1API\s0 calls also take a apr_pool_t pointer as their last -argument. The Perl bindings generally deal with this for you and -you do not need to pass a pool parameter. However, you may still -pass a pool parameter as the last parameter to override the automatic -handling of this for you. -.PP -Users of this interface should not directly manipulate the underlying hash -values but should use the respective attribute methods. Many of these -attribute methods do other things, especially when setting an attribute, -besides simply manipulating the value in the hash. -.SH "PARAMETER NOTES" -.IX Header "PARAMETER NOTES" -The client methods described below take a variety of parameters. Many of -them are similar. Methods accepting parameters named below will follow -the rules below or will be noted otherwise in the method description. -.ie n .IP "$ctx" 4 -.el .IP "\f(CW$ctx\fR" 4 -.IX Item "$ctx" -An SVN::Client object that you get from the constructor. -.ie n .IP "$url" 4 -.el .IP "\f(CW$url\fR" 4 -.IX Item "$url" -This is a \s-1URL\s0 to a subversion repository. -.ie n .IP "$path" 4 -.el .IP "\f(CW$path\fR" 4 -.IX Item "$path" -This is a path to a file or directory on the local file system. -.ie n .IP "$paths" 4 -.el .IP "\f(CW$paths\fR" 4 -.IX Item "$paths" -This argument can either be a single path to a file or directory on the local -file system, or it can be a reference to an array of files or directories on -the local file system. -.ie n .IP "$target" 4 -.el .IP "\f(CW$target\fR" 4 -.IX Item "$target" -This is a path to a file or directory in a working copy or a \s-1URL\s0 to a file or -directory in a subversion repository. -.ie n .IP "$targets" 4 -.el .IP "\f(CW$targets\fR" 4 -.IX Item "$targets" -This argument can either be a single \f(CW$target\fR (as defined above) or a reference -to an array of them. -.ie n .IP "$revision" 4 -.el .IP "\f(CW$revision\fR" 4 -.IX Item "$revision" -This specifies a revision in the subversion repository. You can specify a -revision in several ways. The easiest and most obvious is to directly -provide the revision number. You may also use the strings (aka revision -keywords) '\s-1HEAD\s0', '\s-1BASE\s0', '\s-1COMMITTED\s0', and '\s-1PREV\s0' which have the same -meanings as in the command line client. When referencing a working copy -you can use the string '\s-1WORKING\s0" to reference the \s-1BASE\s0 plus any local -modifications. undef may be used to specify an unspecified revision. -Finally you may pass a date by specifying the date inside curly braces -\&'{}'. The date formats accepted are the same as the command line client -accepts. -.ie n .IP "$recursive $nonrecursive." 4 -.el .IP "\f(CW$recursive\fR \f(CW$nonrecursive\fR." 4 -.IX Item "$recursive $nonrecursive." -A boolean parameter that specifies if the action should follow directories. It -should only be 1 or 0. \f(CW$recursive\fR means, 1 means to descend into directories, -0 means not to. \f(CW$nonrecursive\fR has the inverse meaning. -.ie n .IP "$pool" 4 -.el .IP "\f(CW$pool\fR" 4 -.IX Item "$pool" -Pool is always an option parameter. If you wish to pass a pool parameter it -should be a SVN::Pool or an apr_pool_t object. -.SH "METHODS" -.IX Header "METHODS" -The following methods are available: -.ie n .IP "$ctx = SVN::Client\->new( %options );" 4 -.el .IP "\f(CW$ctx\fR = SVN::Client\->new( \f(CW%options\fR );" 4 -.IX Item "$ctx = SVN::Client->new( %options );" -This class method constructs a new \f(CW\*(C`SVN::Client\*(C'\fR object and returns -a reference to it. -.Sp -Key/value pair arguments may be provided to set up the initial state -of the user agent. The following methods correspond to attribute -methods described below: -.Sp -.Vb 5 -\& KEY DEFAULT -\& \-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- -\& auth auth_baton initiated with providers that -\& read cached authentication options from -\& the subversion config only. -\& -\& cancel undef -\& -\& config Hash containing the config from the -\& default subversion config file location. -\& -\& log_msg undef -\& -\& notify undef -\& -\& pool A new pool is created for the context. -.Ve -.ie n .IP "$ctx\->add($path, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->add($path, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->add($path, $recursive, $pool);" -Schedule a working copy \f(CW$path\fR for addition to the repository. -.Sp -\&\f(CW$path\fR's parent must be under revision control already, but \f(CW$path\fR is not. -If \f(CW$recursive\fR is set, then assuming \f(CW$path\fR is a directory, all of its -contents will be scheduled for addition as well. -.Sp -Calls the notify callback for each added item. -.Sp -Important: this is a \fBscheduling\fR operation. No changes will happen -to the repository until a commit occurs. This scheduling can be -removed with \f(CW$ctx\fR\->\fIrevert()\fR. -.Sp -No return. -.ie n .IP "$ctx\->blame($target, $start, $end, \e&receiver, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->blame($target, \f(CW$start\fR, \f(CW$end\fR, \e&receiver, \f(CW$pool\fR);" 4 -.IX Item "$ctx->blame($target, $start, $end, &receiver, $pool);" -Invoke \e&receiver subroutine on each line-blame item associated with revision -\&\f(CW$end\fR of \f(CW$target\fR, using \f(CW$start\fR as the default source of all blame. -.Sp -An Error will be raised if either \f(CW$start\fR or \f(CW$end\fR is undef. -.Sp -No return. -.Sp -The blame receiver subroutine receives the following arguments: -\&\f(CW$line_no\fR, \f(CW$revision\fR, \f(CW$author\fR, \f(CW$date\fR, \f(CW$line\fR, \f(CW$pool\fR -.Sp -\&\f(CW$line_no\fR is the line number of the file (starting with 0). -The line was last changed in revision number \f(CW$revision\fR -by \f(CW$author\fR on \f(CW$date\fR and the contents were \f(CW$line\fR. -.Sp -The blame receiver subroutine can return an svn_error_t object -to return an error. All other returns will be ignored. -You can create an svn_error_t object with \fISVN::Error::create()\fR. -.ie n .IP "$ctx\->cat(\e*FILEHANDLE, $target, $revision, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->cat(\e*FILEHANDLE, \f(CW$target\fR, \f(CW$revision\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->cat(*FILEHANDLE, $target, $revision, $pool);" -Outputs the content of the file identified by \f(CW$target\fR and \f(CW$revision\fR to the -\&\s-1FILEHANDLE\s0. \s-1FILEHANDLE\s0 is a reference to a filehandle. -.Sp -If \f(CW$target\fR is not a local path and if \f(CW$revision\fR is '\s-1PREV\s0' (or some -other kind that requires a local path), then an error will be raised, -because the desired revision can not be determined. -.ie n .IP "$ctx\->checkout($url, $path, $revision, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->checkout($url, \f(CW$path\fR, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->checkout($url, $path, $revision, $recursive, $pool);" -Checkout a working copy of \f(CW$url\fR at \f(CW$revision\fR using \f(CW$path\fR as the root directory -of the newly checked out working copy. -.Sp -\&\f(CW$revision\fR must be a number, '\s-1HEAD\s0', or a date. If \f(CW$revision\fR does not -meet these requirements the \f(CW$SVN::Error::CLIENT_BAD_REVISION\fR is raised. -.Sp -Returns the value of the revision actually checked out of the repository. -.ie n .IP "$ctx\->cleanup($dir, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->cleanup($dir, \f(CW$pool\fR);" 4 -.IX Item "$ctx->cleanup($dir, $pool);" -Recursively cleanup a working copy directory, \f(CW$dir\fR, finishing any incomplete -operations, removing lockfiles, etc. -.ie n .IP "$ctx\->commit($targets, $nonrecursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->commit($targets, \f(CW$nonrecursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->commit($targets, $nonrecursive, $pool);" -Commit files or directories referenced by target. Will use the log_msg -callback to obtain the log message for the commit. -.Sp -If \f(CW$targets\fR contains no paths (zero elements), then does nothing and -immediately returns without error. -.Sp -Calls the notify callback as the commit progresses with any of the following -actions: \f(CW$SVN::Wc::Notify::Action::commit_modified\fR, -\&\f(CW$SVN::Wc::Notify::Action::commit_added\fR, -\&\f(CW$SVN::Wc::Notify::Action::commit_deleted\fR, -\&\f(CW$SVN::Wc::Notify::Action::commit_replaced\fR, -\&\f(CW$SVN::Wc::Notify::Action::commit_postfix_txdelta\fR. -.Sp -Use \f(CW$nonrecursive\fR to indicate that subdirectories of directory targets -should be ignored. -.Sp -Returns a svn_client_commit_info_t object. If the revision member of the -commit information object is \f(CW$SVN::Core::INVALID_REVNUM\fR and no error was -raised, then the commit was a no-op; nothing needed to be committed. -.ie n .IP "$ctx\->copy($src_target, $src_revision, $dst_target, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->copy($src_target, \f(CW$src_revision\fR, \f(CW$dst_target\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->copy($src_target, $src_revision, $dst_target, $pool);" -Copies \f(CW$src_target\fR to \f(CW$dst_target\fR. -.Sp -\&\f(CW$src_target\fR must be a file or directory under version control, or the \s-1URL\s0 -of a versioned item in the repository. If \f(CW$src_target\fR is a \s-1URL\s0, -\&\f(CW$src_revision\fR is used to choose the revision from which to copy the -\&\f(CW$src_target\fR. \f(CW$dst_path\fR must be a file or directory under version control, -or a repository \s-1URL\s0, existing or not. -.Sp -If \f(CW$dst_target\fR is a \s-1URL\s0, immediately attempt to commit the copy action -to the repository. The log_msg callback will be called to query for a commit -log message. If the commit succeeds, return a svn_client_commit_info_t -object. -.Sp -If \f(CW$dst_target\fR is not a \s-1URL\s0, then this is just a variant of \f(CW$ctx\fR\->\fIadd()\fR, -where the \f(CW$dst_path\fR items are scheduled for addition as copies. No changes -will happen to the repository until a commit occurs. This scheduling can be -removed with \f(CW$ctx\fR\->\fIrevert()\fR. undef will be returned in this case. -.Sp -Calls the notify callback for each item added at the new location, passing -the new, relative path of the added item. -.ie n .IP "$ctx\->delete($targets, $force, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->delete($targets, \f(CW$force\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->delete($targets, $force, $pool);" -Delete items from a repository or working copy. -.Sp -If the paths in \f(CW$targets\fR are URLs, immediately attempt to commit a deletion -of the URLs from the repository. The log_msg callback will be called to -query for a commit log message. If the commit succeeds, return a -svn_client_commit_info_t object. Every path must belong to the same -repository. -.Sp -Else, schedule the working copy paths in \f(CW$targets\fR for removal from the -repository. Each path's parent must be under revision control. This is -just a \fBscheduling\fR operation. No changes will happen to the repository -until a commit occurs. This scheduling can be removed with \f(CW$ctx\fR\->\fIrevert()\fR. -If a path is a file it is immediately removed from the working copy. If -the path is a directory it will remain in the working copy but all the files, -and all unversioned items it contains will be removed. If \f(CW$force\fR is not set -then this operation will fail if any path contains locally modified and/or -unversioned items. If \f(CW$force\fR is set such items will be deleted. -.Sp -The notify callback is called for each item deleted with the path of -the deleted item. -.Sp -Has no return. -.ie n .IP "$ctx\->diff($diff_options, $target1, $revision1, $target2, $revision2, $recursive, $ignore_ancestry, $no_diff_deleted, $outfile, $errfile, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->diff($diff_options, \f(CW$target1\fR, \f(CW$revision1\fR, \f(CW$target2\fR, \f(CW$revision2\fR, \f(CW$recursive\fR, \f(CW$ignore_ancestry\fR, \f(CW$no_diff_deleted\fR, \f(CW$outfile\fR, \f(CW$errfile\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->diff($diff_options, $target1, $revision1, $target2, $revision2, $recursive, $ignore_ancestry, $no_diff_deleted, $outfile, $errfile, $pool);" -Produces diff output which describes the delta between \f(CW$target1\fR at -\&\f(CW$revision1\fR and \f(CW$target2\fR at \f(CW$revision2\fR. They both must represent the same -node type (i.e. they most both be directories or files). The revisions -must not be undef. -.Sp -Prints the output of the diff to the filename or filehandle passed as -\&\f(CW$outfile\fR, and any errors to the filename or filehandle passed as \f(CW$errfile\fR. -.Sp -Use \f(CW$ignore_ancestry\fR to control whether or not items being diffed will be -checked for relatedness first. Unrelated items are typically transmitted to -the editor as a deletion of one thing and the addition of another, but if this -flag is true, unrelated items will be diffed as if they were related. -.Sp -If \f(CW$no_diff_deleted\fR is true, then no diff output will be generated on deleted -files. -.Sp -\&\f(CW$diff_options\fR is a reference to an array of additional arguments to pass to -diff process invoked to compare files. You'll usually just want to use [] to -pass an empty array to return a unified context diff (like `diff \-u`). -.Sp -Has no return. -.ie n .IP "$ctx\->diff_summarize($target1, $revision1, $target2, $revision2, $recursive, $ignore_ancestry, \e&summarize_func, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->diff_summarize($target1, \f(CW$revision1\fR, \f(CW$target2\fR, \f(CW$revision2\fR, \f(CW$recursive\fR, \f(CW$ignore_ancestry\fR, \e&summarize_func, \f(CW$pool\fR);" 4 -.IX Item "$ctx->diff_summarize($target1, $revision1, $target2, $revision2, $recursive, $ignore_ancestry, &summarize_func, $pool);" -Produce a diff summary which lists the changed items between \f(CW$target1\fR -at \f(CW$revision1\fR and \f(CW$target2\fR at \f(CW$revision2\fR without creating text deltas. -\&\f(CW$target1\fR and \f(CW$target2\fR can be either working-copy paths or URLs. -.Sp -The function may report false positives if \f(CW$ignore_ancestry\fR is false, -since a file might have been modified between two revisions, but still -have the same contents. -.Sp -Calls \e&summarize_func with with a svn_client_diff_summarize_t structure -describing the difference. -.Sp -See \fIdiff()\fR for a description of the other parameters. -.Sp -Has no return. -.ie n .IP "$ctx\->export($from, $to, $revision, $force, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->export($from, \f(CW$to\fR, \f(CW$revision\fR, \f(CW$force\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->export($from, $to, $revision, $force, $pool);" -Export the contents of either a subversion repository or a subversion -working copy into a 'clean' directory (meaning a directory with no -administrative directories). -.Sp -\&\f(CW$from\fR is either the path to the working copy on disk, or a \s-1URL\s0 -to the repository you wish to export. -.Sp -\&\f(CW$to\fR is the path to the directory where you wish to create the exported -tree. -.Sp -\&\f(CW$revision\fR is the revision that should be exported, which is only used -when exporting from a repository. It may be undef otherwise. -.Sp -The notify callback will be called for the items exported. -.Sp -Returns the value of the revision actually exported or -\&\f(CW$SVN::Core::INVALID_REVNUM\fR for local exports. -.ie n .IP "$ctx\->import($path, $url, $nonrecursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->import($path, \f(CW$url\fR, \f(CW$nonrecursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->import($path, $url, $nonrecursive, $pool);" -Import file or directory \f(CW$path\fR into repository directory \f(CW$url\fR at head. -.Sp -If some components of \f(CW$url\fR do not exist then create parent directories -as necessary. -.Sp -If \f(CW$path\fR is a directory, the contents of that directory are imported -directly into the directory identified by \f(CW$url\fR. Note that the directory -\&\f(CW$path\fR itself is not imported; that is, the basename of \f(CW$path\fR is not part -of the import. -.Sp -If \f(CW$path\fR is a file, then the dirname of \f(CW$url\fR is the directory receiving the -import. The basename of \f(CW$url\fR is the filename in the repository. In this case -if \f(CW$url\fR already exists, raise an error. -.Sp -The notify callback (if defined) will be called as the import progresses, with -any of the following actions: \f(CW$SVN::Wc::Notify::Action::commit_added\fR, -\&\f(CW$SVN::Wc::Notify::Action::commit_postfix_txdelta\fR. -.Sp -Use \f(CW$nonrecursive\fR to indicate that imported directories should not recurse -into any subdirectories they may have. -.Sp -Uses the log_msg callback to determine the log message for the commit when -one is needed. -.Sp -Returns a svn_client_commit_info_t object. -.ie n .IP "$ctx\->log($targets, $start, $end, $discover_changed_paths, $strict_node_history, \e&log_receiver, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->log($targets, \f(CW$start\fR, \f(CW$end\fR, \f(CW$discover_changed_paths\fR, \f(CW$strict_node_history\fR, \e&log_receiver, \f(CW$pool\fR);" 4 -.IX Item "$ctx->log($targets, $start, $end, $discover_changed_paths, $strict_node_history, &log_receiver, $pool);" -Invoke the log_receiver subroutine on each log_message from \f(CW$start\fR to \f(CW$end\fR in -turn, inclusive (but will never invoke receiver on a given log message more -than once). -.Sp -\&\f(CW$targets\fR is a reference to an array containing all the paths or URLs for -which the log messages are desired. The log_receiver is only invoked on -messages whose revisions involved a change to some path in \f(CW$targets\fR. -.Sp -If \f(CW$discover_changed_paths\fR is set, then the changed_paths argument to the -log_receiver routine will be passed on each invocation. -.Sp -If \f(CW$strict_node_history\fR is set, copy history (if any exists) will not be -traversed while harvesting revision logs for each target. -.Sp -If \f(CW$start\fR or \f(CW$end\fR is undef the arp_err code will be set to: -\&\f(CW$SVN::Error::CLIENT_BAD_REVISION\fR. -.Sp -Special case for repositories at revision 0: -.Sp -If \f(CW$start\fR is '\s-1HEAD\s0' and \f(CW$end\fR is 1, then handle an empty (no revisions) -repository specially: instead of erroring because requested revision 1 -when the highest revision is 0, just invoke \f(CW$log_receiver\fR on revision 0, -passing undef to changed paths and empty strings for the author and date. -This is because that particular combination of \f(CW$start\fR and \f(CW$end\fR usually indicates -the common case of log invocation; the user wants to see all log messages from -youngest to oldest, where the oldest commit is revision 1. That works fine, -except there are no commits in the repository, hence this special case. -.Sp -Calls the notify subroutine with a \f(CW$SVN::Wc::Notify::Action::skip\fR signal on any -unversioned targets. -.Sp -The log_receiver takes the following arguments: -\&\f(CW$changed_paths\fR, \f(CW$revision\fR, \f(CW$author\fR, \f(CW$date\fR, \f(CW$message\fR, \f(CW$pool\fR -.Sp -It is called once for each log \f(CW$message\fR from the \f(CW$revision\fR -on \f(CW$date\fR by \f(CW$author\fR. \f(CW$author\fR, \f(CW$date\fR or \f(CW$message\fR may be undef. -.Sp -If \f(CW$changed_paths\fR is defined it references a hash with the keys -every path committed in \f(CW$revision\fR; the values are svn_log_changed_path_t -objects. -.ie n .IP "$ctx\->ls($target, $revision, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->ls($target, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->ls($target, $revision, $recursive, $pool);" -Returns a hash of svn_dirent_t objects for \f(CW$target\fR at \f(CW$revision\fR. -.Sp -If \f(CW$target\fR is a directory, returns entries for all of the directories' -contents. If \f(CW$recursive\fR is true, it will recurse subdirectories in \f(CW$target\fR. -.Sp -If \f(CW$target\fR is a file only return an entry for the file. -.Sp -If \f(CW$target\fR is non-existent, raises the \f(CW$SVN::Error::FS_NOT_FOUND\fR -error. -.ie n .IP "$ctx\->merge($src1, $rev1, $src2, $rev2, $target_wcpath, $recursive, $ignore_ancestry, $force, $dry_run, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->merge($src1, \f(CW$rev1\fR, \f(CW$src2\fR, \f(CW$rev2\fR, \f(CW$target_wcpath\fR, \f(CW$recursive\fR, \f(CW$ignore_ancestry\fR, \f(CW$force\fR, \f(CW$dry_run\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->merge($src1, $rev1, $src2, $rev2, $target_wcpath, $recursive, $ignore_ancestry, $force, $dry_run, $pool);" -Merge changes from \f(CW$src1\fR/$rev1 to \f(CW$src2\fR/$rev2 into the working-copy path -\&\f(CW$target_wcpath\fR. -.Sp -\&\f(CW$src1\fR and \f(CW$src2\fR are either URLs that refer to entries in the repository, or -paths to entries in the working copy. -.Sp -By 'merging', we mean: apply file differences and schedule additions & -deletions when appropriate. -.Sp -\&\f(CW$src1\fR and \f(CW$src2\fR must both represent the same node kind; that is, if \f(CW$src1\fR -is a directory, \f(CW$src2\fR must also be, and if \f(CW$src1\fR is a file, \f(CW$src2\fR must also be. -.Sp -If either \f(CW$rev1\fR or \f(CW$rev2\fR is undef raises the \f(CW$SVN::Error::CLIENT_BAD_REVISION\fR -error. -.Sp -If \f(CW$recursive\fR is true (and the URLs are directories), apply changes recursively; -otherwise, only apply changes in the current directory. -.Sp -Use \f(CW$ignore_ancestry\fR to control whether or not items being diffed will be -checked for relatedness first. Unrelated items are typically transmitted -to the editor as a deletion of one thing and the addition of another, but -if this flag is true, unrelated items will be diffed as if they were related. -.Sp -If \f(CW$force\fR is not set and the merge involves deleting locally modified or -unversioned items the operation will raise an error. If \f(CW$force\fR is set such -items will be deleted. -.Sp -Calls the notify callback once for each merged target, passing the targets -local path. -.Sp -If \f(CW$dry_run\fR is true the merge is carried out, and the full notification -feedback is provided, but the working copy is not modified. -.Sp -Has no return. -.ie n .IP "$ctx\->mkdir($targets, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->mkdir($targets, \f(CW$pool\fR);" 4 -.IX Item "$ctx->mkdir($targets, $pool);" -Create a directory, either in a repository or a working copy. -.Sp -If \f(CW$targets\fR contains URLs, immediately attempts to commit the creation of the -directories in \f(CW$targets\fR in the repository. Returns a svn_client_commit_info_t -object. -.Sp -Else, create the directories on disk, and attempt to schedule them for addition. -In this case returns undef. -.Sp -Calls the notify callback when the directory has been created (successfully) -in the working copy, with the path of the new directory. Note this is only -called for items added to the working copy. -.ie n .IP "$ctx\->move($src_path, $src_revision, $dst_path, $force, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->move($src_path, \f(CW$src_revision\fR, \f(CW$dst_path\fR, \f(CW$force\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->move($src_path, $src_revision, $dst_path, $force, $pool);" -Move \f(CW$src_path\fR to \f(CW$dst_path\fR. -.Sp -\&\f(CW$src_path\fR must be a file or directory under version control, or the \s-1URL\s0 -of a versioned item in the repository. -.Sp -If \f(CW$src_path\fR is a repository \s-1URL:\s0 -.Sp -* \f(CW$dst_path\fR must also be a repository \s-1URL\s0 (existent or not). -.Sp -* \f(CW$src_revision\fR is used to choose the revision from which to copy the -\&\f(CW$src_path\fR. -.Sp -* The log_msg callback will be called for the commit log message. -.Sp -* The move operation will be immediately committed. If the commit succeeds, -returns a svn_client_commit_info_t object. -.Sp -If \f(CW$src_path\fR is a working copy path -.Sp -* \f(CW$dst_path\fR must also be a working copy path (existent or not). -.Sp -* \f(CW$src_revision\fR is ignored and may be undef. The log_msg callback will -not be called. -.Sp -* This is a scheduling operation. No changes will happen to the repository -until a commit occurs. This scheduling can be removed with \f(CW$ctx\fR\->\fIrevert()\fR. -If \f(CW$src_path\fR is a file it is removed from the working copy immediately. -If \f(CW$src_path\fR is a directory it will remain in the working copy but all -files, and unversioned items, it contains will be removed. -.Sp -* If \f(CW$src_path\fR contains locally modified and/or unversioned items and \f(CW$force\fR is -not set, the copy will raise an error. If \f(CW$force\fR is set such items will be -removed. -.Sp -The notify callback will be called twice for each item moved, once to -indicate the deletion of the moved node, and once to indicate the addition -of the new location of the node. -.ie n .IP "$ctx\->propget($propname, $target, $revision, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->propget($propname, \f(CW$target\fR, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->propget($propname, $target, $revision, $recursive, $pool);" -Returns a reference to a hash containing paths or URLs, prefixed by \f(CW$target\fR (a -working copy or \s-1URL\s0), of items for which the property \f(CW$propname\fR is set, and -whose values represent the property value for \f(CW$propname\fR at that path. -.ie n .IP "$ctx\->proplist($target, $revision, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->proplist($target, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->proplist($target, $revision, $recursive, $pool);" -Returns a reference to an array of svn_client_proplist_item_t objects. -.Sp -For each item the node_name member of the proplist_item object contains -the name relative to the same base as \f(CW$target\fR. -.Sp -If \f(CW$revision\fR is undef, then get properties from the working copy, if -\&\f(CW$target\fR is a working copy, or from the repository head if \f(CW$target\fR is a \s-1URL\s0. -Else get the properties as of \f(CW$revision\fR. -.Sp -If \f(CW$recursive\fR is false, or \f(CW$target\fR is a file, the returned array will only -contain a single element. Otherwise, it will contain one entry for each -versioned entry below (and including) \f(CW$target\fR. -.Sp -If \f(CW$target\fR is not found, raises the \f(CW$SVN::Error::ENTRY_NOT_FOUND\fR error. -.ie n .IP "$ctx\->propset($propname, $propval, $target, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->propset($propname, \f(CW$propval\fR, \f(CW$target\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->propset($propname, $propval, $target, $recursive, $pool);" -Set \f(CW$propname\fR to \f(CW$propval\fR on \f(CW$target\fR (a working copy or \s-1URL\s0 path). -.Sp -If \f(CW$recursive\fR is true, then \f(CW$propname\fR will be set recursively on \f(CW$target\fR -and all children. If \f(CW$recursive\fR is false, and \f(CW$target\fR is a directory, -\&\f(CW$propname\fR will be set on \fBonly\fR \f(CW$target\fR. -.Sp -A \f(CW$propval\fR of undef will delete the property. -.Sp -If \f(CW$propname\fR is an svn-controlled property (i.e. prefixed with svn:), -then the caller is responsible for ensuring that \f(CW$propval\fR is UTF8\-encoded -and uses \s-1LF\s0 line-endings. -.ie n .IP "$ctx\->relocate($dir, $from, $to, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->relocate($dir, \f(CW$from\fR, \f(CW$to\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->relocate($dir, $from, $to, $recursive, $pool);" -Modify a working copy directory \f(CW$dir\fR, changing any repository URLs that -begin with \f(CW$from\fR to begin with \f(CW$to\fR instead, recursing into subdirectories if -\&\f(CW$recursive\fR is true. -.Sp -Has no return. -.ie n .IP "$ctx\->resolved($path, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->resolved($path, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->resolved($path, $recursive, $pool);" -Removed the 'conflicted' state on a working copy path. -.Sp -This will not semantically resolve conflicts; it just allows \f(CW$path\fR to be -committed in the future. The implementation details are opaque. If -\&\f(CW$recursive\fR is set, recurse below \f(CW$path\fR, looking for conflicts to -resolve. -.Sp -If \f(CW$path\fR is not in a state of conflict to begin with, do nothing. -.Sp -If \f(CW$path\fR's conflict state is removed, call the notify callback with the -\&\f(CW$path\fR. -.ie n .IP "$ctx\->revert($paths, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->revert($paths, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->revert($paths, $recursive, $pool);" -Restore the pristine version of a working copy \f(CW$paths\fR, effectively undoing -any local mods. -.Sp -For each path in \f(CW$paths\fR, if it is a directory and \f(CW$recursive\fR -is true, this will be a recursive operation. -.ie n .IP "$ctx\->revprop_get($propname, $url, $revision, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->revprop_get($propname, \f(CW$url\fR, \f(CW$revision\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->revprop_get($propname, $url, $revision, $pool);" -Returns two values, the first of which is the value of \f(CW$propname\fR on revision -\&\f(CW$revision\fR in the repository represented by \f(CW$url\fR. The second value is the -actual revision queried. -.Sp -Note that unlike its cousin \f(CW$ctx\fR\->\fIpropget()\fR, this routine doesn't affect -working copy at all; it's a pure network operation that queries an -\&\fBunversioned\fR property attached to a revision. This can be used to query -log messages, dates, authors, and the like. -.ie n .IP "$ctx\->revprop_list($url, $revision, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->revprop_list($url, \f(CW$revision\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->revprop_list($url, $revision, $pool);" -Returns two values, the first of which is a reference to a hash containing -the properties attached to \f(CW$revision\fR in the repository represented by \f(CW$url\fR. -The second value is the actual revision queried. -.Sp -Note that unlike its cousin \f(CW$ctx\fR\->\fIproplist()\fR, this routine doesn't read a -working copy at all; it's a pure network operation that reads \fBunversioned\fR -properties attached to a revision. -.ie n .IP "$ctx\->revprop_set($propname, $propval, $url, $revision, $force, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->revprop_set($propname, \f(CW$propval\fR, \f(CW$url\fR, \f(CW$revision\fR, \f(CW$force\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->revprop_set($propname, $propval, $url, $revision, $force, $pool);" -Set \f(CW$propname\fR to \f(CW$propval\fR on revision \f(CW$revision\fR in the repository represented -by \f(CW$url\fR. -.Sp -Returns the actual revision affected. A \f(CW$propval\fR of undef will delete the -property. -.Sp -If \f(CW$force\fR is true, allow newlines in the author property. -.Sp -If \f(CW$propname\fR is an svn-controlled property (i.e. prefixed with svn:), then -the caller is responsible for ensuring that the value is UTF8\-encoded and -uses \s-1LF\s0 line-endings. -.Sp -Note that unlike its cousin \f(CW$ctx\fR\->\fIpropset()\fR, this routine doesn't affect -the working copy at all; it's a pure network operation that changes an -\&\fBunversioned\fR property attached to a revision. This can be used to tweak -log messages, dates, authors, and the like. Be careful: it's a lossy -operation, meaning that any existing value is replaced with the new value, -with no way to retrieve the prior value. -.Sp -Also note that unless the administrator creates a pre-revprop-change hook -in the repository, this feature will fail. -.ie n .IP "$ctx\->status($path, $revision, \e&status_func, $recursive, $get_all, $update, $no_ignore, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->status($path, \f(CW$revision\fR, \e&status_func, \f(CW$recursive\fR, \f(CW$get_all\fR, \f(CW$update\fR, \f(CW$no_ignore\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->status($path, $revision, &status_func, $recursive, $get_all, $update, $no_ignore, $pool);" -Given \f(CW$path\fR to a working copy directory (or single file), call \fIstatus_func()\fR -with a set of svn_wc_status_t objects which describe the status of \f(CW$path\fR and -its children. -.Sp -If \f(CW$recursive\fR is true, recurse fully, else do only immediate children. -.Sp -If \f(CW$get_all\fR is set, retrieve all entries; otherwise, retrieve only 'interesting' -entries (local mods and/or out-of-date). -.Sp -If \f(CW$update\fR is set, contact the repository and augment the status objects with -information about out-of-dateness (with respect to \f(CW$revision\fR). Also, will -return the value of the actual revision against with the working copy was -compared. (The return will be undef if \f(CW$update\fR is not set). -.Sp -The function recurses into externals definitions ('svn:externals') after -handling the main target, if any exist. The function calls the notify callback -with \f(CW$SVN::Wc::Notify::Action::status_external\fR action before handling each -externals definition, and with \f(CW$SVN::Wc::Notify::Action::status_completed\fR -after each. -.Sp -The status_func subroutine takes the following parameters: -\&\f(CW$path\fR, \f(CW$status\fR -.Sp -\&\f(CW$path\fR is the pathname of the file or directory which status is being -reported. \f(CW$status\fR is a svn_wc_status_t object. -.Sp -The return of the status_func subroutine is ignored. -.ie n .IP "$ctx\->info($path_or_url, $peg_revision, $revision, \e&receiver, $recurse);" 4 -.el .IP "\f(CW$ctx\fR\->info($path_or_url, \f(CW$peg_revision\fR, \f(CW$revision\fR, \e&receiver, \f(CW$recurse\fR);" 4 -.IX Item "$ctx->info($path_or_url, $peg_revision, $revision, &receiver, $recurse);" -Invokes \e&receiver passing it information about \f(CW$path_or_url\fR for \f(CW$revision\fR. -The information returned is system-generated metadata, not the sort of -\&\*(L"property\*(R" metadata created by users. For methods available on the object -passed to \e&receiver, \fBsee svn_info_t\fR. -.Sp -If both revision arguments are either svn_opt_revision_unspecified or \s-1NULL\s0, -then information will be pulled solely from the working copy; no network -connections will be made. -.Sp -Otherwise, information will be pulled from a repository. The actual node -revision selected is determined by the \f(CW$path_or_url\fR as it exists in -\&\f(CW$peg_revision\fR. If \f(CW$peg_revision\fR is undef, then it defaults to \s-1HEAD\s0 for URLs -or \s-1WORKING\s0 for \s-1WC\s0 targets. -.Sp -If \f(CW$path_or_url\fR is not a local path, then if \f(CW$revision\fR is \s-1PREV\s0 (or some other -kind that requires a local path), an error will be returned, because the -desired revision cannot be determined. -.Sp -Uses the authentication baton cached in ctx to authenticate against the -repository. -.Sp -If \f(CW$recurse\fR is true (and \f(CW$path_or_url\fR is a directory) this will be a recursive -operation, invoking \f(CW$receiver\fR on each child. -.Sp -.Vb 5 -\& my $receiver = sub { -\& my( $path, $info, $pool ) = @_; -\& print "Current revision of $path is ", $info\->rev, "\en"; -\& }; -\& $ctx\->info( \*(Aqfoo/bar.c\*(Aq, undef, \*(AqWORKING\*(Aq, $receiver, 0 ); -.Ve -.ie n .IP "$ctx\->switch($path, $url, $revision, $recursive, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->switch($path, \f(CW$url\fR, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->switch($path, $url, $revision, $recursive, $pool);" -Switch working tree \f(CW$path\fR to \f(CW$url\fR at \f(CW$revision\fR. -.Sp -\&\f(CW$revision\fR must be a number, '\s-1HEAD\s0', or a date, otherwise it raises the -\&\f(CW$SVN::Error::CLIENT_BAD_REVISION\fR error. -.Sp -Calls the notify callback on paths affected by the switch. Also invokes -the callback for files that may be restored from the text-base because they -were removed from the working copy. -.Sp -Summary of purpose: This is normally used to switch a working directory -over to another line of development, such as a branch or a tag. Switching -an existing working directory is more efficient than checking out \f(CW$url\fR from -scratch. -.Sp -Returns the value of the revision to which the working copy was actually -switched. -.ie n .IP "$ctx\->update($path, $revision, $recursive, $pool)" 4 -.el .IP "\f(CW$ctx\fR\->update($path, \f(CW$revision\fR, \f(CW$recursive\fR, \f(CW$pool\fR)" 4 -.IX Item "$ctx->update($path, $revision, $recursive, $pool)" -Update a working copy \f(CW$path\fR to \f(CW$revision\fR. -.Sp -\&\f(CW$revision\fR must be a revision number, '\s-1HEAD\s0', or a date or this method will -raise the \f(CW$SVN::Error::CLIENT_BAD_REVISION\fR error. -.Sp -Calls the notify callback for each item handled by the update, and -also for files restored from the text-base. -.Sp -Returns the revision to which the working copy was actually updated. -.ie n .IP "$ctx\->url_from_path($target, $pool); or SVN::Client::url_from_path($target, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->url_from_path($target, \f(CW$pool\fR); or SVN::Client::url_from_path($target, \f(CW$pool\fR);" 4 -.IX Item "$ctx->url_from_path($target, $pool); or SVN::Client::url_from_path($target, $pool);" -Returns the \s-1URL\s0 for \f(CW$target\fR. -.Sp -If \f(CW$target\fR is already a \s-1URL\s0 it returns \f(CW$target\fR. -.Sp -If \f(CW$target\fR is a versioned item, it returns \f(CW$target\fR's entry \s-1URL\s0. -.Sp -If \f(CW$target\fR is unversioned (has no entry), returns undef. -.ie n .IP "$ctx\->uuid_from_path($path, $adm_access, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->uuid_from_path($path, \f(CW$adm_access\fR, \f(CW$pool\fR);" 4 -.IX Item "$ctx->uuid_from_path($path, $adm_access, $pool);" -Return the repository uuid for working-copy \f(CW$path\fR, allocated in \f(CW$pool\fR. -.Sp -Use \f(CW$adm_access\fR to retrieve the uuid from \f(CW$path\fR's entry; if not present in the -entry, then call \f(CW$ctx\fR\->\fIuuid_from_url()\fR to retrieve, using the entry's \s-1URL\s0. -.Sp -Note: The only reason this function falls back on \f(CW$ctx\fR\->uuid_from_url is for -compatibility purposes. Old working copies may not have uuids in the entries -files. -.Sp -Note: This method probably doesn't work right now without a lot of pain, -because SVN::Wc is incomplete and it requires an adm_access object from it. -.ie n .IP "$ctx\->uuid_from_url($url, $pool);" 4 -.el .IP "\f(CW$ctx\fR\->uuid_from_url($url, \f(CW$pool\fR);" 4 -.IX Item "$ctx->uuid_from_url($url, $pool);" -Return repository uuid for url. -.SH "ATTRIBUTE METHODS" -.IX Header "ATTRIBUTE METHODS" -The following attribute methods are provided that allow you to set various -configuration or retrieve it. They all take value(s) to set the attribute and -return the new value of the attribute or no parameters which returns the -current value. -.ie n .IP "$ctx\->auth(\fISVN::Client::get_username_provider()\fR);" 4 -.el .IP "\f(CW$ctx\fR\->auth(\fISVN::Client::get_username_provider()\fR);" 4 -.IX Item "$ctx->auth(SVN::Client::get_username_provider());" -Provides access to the auth_baton in the svn_client_ctx_t attached to the -SVN::Client object. -.Sp -This method will accept an array or array ref of values returned from the -authentication provider functions see \*(L"\s-1AUTHENTICATION\s0 \s-1PROVIDERS\s0\*(R", which -it will convert to an auth_baton for you. This is the preferred method of -setting the auth_baton. -.Sp -It will also accept a scalar that references a _p_svn_auth_baton_t such as -those returned from SVN::Core::auth_open and SVN::Core::auth_open_helper. -.ie n .IP "$ctx\->notify(\e¬ify);" 4 -.el .IP "\f(CW$ctx\fR\->notify(\e¬ify);" 4 -.IX Item "$ctx->notify(¬ify);" -Sets the notify callback for the client context to a code reference that -you pass. It always returns the current codereference set. -.Sp -The subroutine pointed to by this reference will be called when a change -is made to the working copy. The return value of this function is ignored. -It's only purpose is to notify you of the change. -.Sp -The subroutine will receive 6 parameters. The first parameter will be the path -of the changed file (absolute or relative to the cwd). The second is an -integer specifying the type of action taken. See SVN::Wc for a list of the -possible actions values and what they mean. The 3rd is an integer specifying -the kind of node the path is, which can be: \f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. The fourth parameter is the mime-type of -the file or undef if the mime-type is unknown (it will always be undef for -directories). The 5th parameter is the state of the file, again see SVN::Wc -for a list of the possible states. The 6th and final parameter is the numeric -revision number of the changed file. The revision number will be \-1 except -when the action is \f(CW$SVN::Wc::Notify::Action::update_completed\fR. -.ie n .IP "$ctx\->log_msg(\e&log_msg)" 4 -.el .IP "\f(CW$ctx\fR\->log_msg(\e&log_msg)" 4 -.IX Item "$ctx->log_msg(&log_msg)" -Sets the log_msg callback for the client context to a code reference that you -pass. It always returns the current codereference set. -.Sp -The subroutine pointed to by this coderef will be called to get the log -message for any operation that will commit a revision to the repo. -.Sp -It receives 4 parameters. The first parameter is a reference to a scalar -value in which the callback should place the log_msg. If you wish to cancel -the commit you can set this scalar to undef. The 2nd value is a path to a -temporary file which might be holding that log message, or undef if no such -field exists (though, if log_msg is undef, this value is undefined). The -log message \fB\s-1MUST\s0\fR be a \s-1UTF8\s0 string with \s-1LF\s0 line separators. The 3rd parameter -is a reference to an array of svn_client_commit_item3_t objects, which may -be fully or only partially filled-in, depending on the type of commit -operation. The 4th and last parameter will be a pool. -.Sp -If the function wishes to return an error it should return a svn_error_t -object made with SVN::Error::create. Any other return value will be -interpreted as \s-1SVN_NO_ERROR\s0. -.ie n .IP "$ctx\->cancel(\e&cancel)" 4 -.el .IP "\f(CW$ctx\fR\->cancel(\e&cancel)" 4 -.IX Item "$ctx->cancel(&cancel)" -Sets the log_msg callback for the client context to a code reference that you -pass. It always returns the current codereference set. -.Sp -The subroutine pointed to by this value will be called to see if the operation -should be canceled. If the operation should be canceled, the function may -return one of the following values: -.Sp -An svn_error_t object made with SVN::Error::create. -.Sp -Any true value, in which case the bindings will generate an svn_error_t object -for you with the error code of \s-1SVN_ERR_CANCELLED\s0 and the string set to \*(L"By -cancel callback\*(R". -.Sp -A string, in which case the bindings will generate an svn_error_t object for you -with the error code of \s-1SVN_ERR_CANCELLED\s0 and the string set to the string you -returned. -.Sp -Any other value will be interpreted as wanting to continue the operation. -Generally, it's best to return 0 to continue the operation. -.ie n .IP "$ctx\->pool(new SVN::Pool);" 4 -.el .IP "\f(CW$ctx\fR\->pool(new SVN::Pool);" 4 -.IX Item "$ctx->pool(new SVN::Pool);" -Method that sets or gets the default pool that is passed to method calls -requiring a pool, but which were not explicitly passed one. -.Sp -See SVN::Core for more information about how pools are managed -in this interface. -.ie n .IP "$ctx\->config(SVN::Core::config_get_config(undef));" 4 -.el .IP "\f(CW$ctx\fR\->config(SVN::Core::config_get_config(undef));" 4 -.IX Item "$ctx->config(SVN::Core::config_get_config(undef));" -Method that allows access to the config member of the svn_client_ctx_t. -Accepts a Perl hash to set, which is what functions like -\&\fISVN::Core:config_get_config()\fR will return. -.Sp -It will return a _p_arp_hash_t scalar. This is a temporary -situation. The return value is not particular useful. In -the future, this value will be tied to the actual hash used -by the C \s-1API\s0. -.SH "AUTHENTICATION PROVIDERS" -.IX Header "AUTHENTICATION PROVIDERS" -The following functions get authentication providers for you. -They come in two forms. Standard or File versions, which look -for authentication information in the subversion configuration -directory that was previously cached, or Prompt versions which -call a subroutine to allow you to prompt the user for the -information. -.PP -The functions that return the svn_auth_provider_object_t for prompt style -providers take a reference to a Perl subroutine to use for the callback. The -first parameter each of these subroutines receive is a credential object. The -subroutines return the response by setting members of that object. Members may -be set like so: \f(CW$cred\fR\->username(\*(L"breser\*(R"); These functions and credential -objects always have a may_save member which specifies if the authentication -data will be cached. -.PP -The providers are as follows: -.PP -.Vb 3 -\& NAME WHAT IT HANDLES -\& \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- -\& simple username and password pairs -\& -\& username username only -\& -\& ssl_server_trust server certificates and failures -\& authenticating them -\& -\& ssl_client_cert client side certificate files -\& -\& ssl_client_cert_pw password for a client side certificate file. -.Ve -.IP "SVN::Client::get_simple_provider" 4 -.IX Item "SVN::Client::get_simple_provider" -Returns a simple provider that returns information from previously cached -sessions. Takes no parameters or one pool parameter. -.IP "SVN::Client::get_simple_prompt_provider" 4 -.IX Item "SVN::Client::get_simple_prompt_provider" -Returns a simple provider that prompts the user via a callback. Takes two or -three parameters, the first is the callback subroutine, the 2nd is the number -of retries to allow, the 3rd is optionally a pool. The subroutine gets called -with the following parameters: a svn_auth_cred_simple_t object, a realm string, -a default username, may_save, and a pool. The svn_auth_cred_simple has the -following members: username, password, and may_save. -.IP "SVN::Client::get_username_provider" 4 -.IX Item "SVN::Client::get_username_provider" -Returns a username provider that returns information from a previously cached -sessions. Takes no parameters or one pool parameter. -.IP "SVN::Client::get_username_prompt_provider" 4 -.IX Item "SVN::Client::get_username_prompt_provider" -Returns a username provider that prompts the user via a callback. Takes two or -three parameters, the first is the callback subroutine, the 2nd is the number -of retries to allow, the 3rd is optionally a pool. The subroutine gets called -with the following parameters: a svn_auth_cred_username_t object, a realm -string, a default username, may_save, and a pool. The svn_auth_cred_username -has the following members: username and may_save. -.IP "SVN::Client::get_ssl_server_trust_file_provider" 4 -.IX Item "SVN::Client::get_ssl_server_trust_file_provider" -Returns a server trust provider that returns information from previously -cached sessions. Takes no parameters or optionally a pool parameter. -.IP "SVN::Client::get_ssl_server_trust_prompt_provider" 4 -.IX Item "SVN::Client::get_ssl_server_trust_prompt_provider" -Returns a server trust provider that prompts the user via a callback. Takes -one or two parameters the callback subroutine and optionally a pool parameter. -The subroutine gets called with the following parameters. A -svn_auth_cred_ssl_server_trust_t object, a realm string, an integer specifying -how the certificate failed authentication, a svn_auth_ssl_server_cert_info_t -object, may_save, and a pool. The svn_auth_cred_ssl_server_trust_t object has -the following members: may_save and accepted_failures. The -svn_auth_ssl_server_cert_info_t object has the following members (and behaves -just like cred objects though you can't modify it): hostname, fingerprint, -valid_from, valid_until, issuer_dname, ascii_cert. -.Sp -The masks used for determining the failures are in SVN::Auth::SSL and are named: -.Sp -\&\f(CW$SVN::Auth::SSL::NOTYETVALID\fR -\&\f(CW$SVN::Auth::SSL::EXPIRED\fR -\&\f(CW$SVN::Auth::SSL::CNMISMATCH\fR -\&\f(CW$SVN::Auth::SSL::UNKNOWNCA\fR -\&\f(CW$SVN::Auth::SSL::OTHER\fR -.Sp -You reply by setting the accepted_failures of the cred object with an integer -of the values for what you want to accept bitwise \s-1AND\s0'd together. -.IP "SVN::Client::get_ssl_client_cert_file_provider" 4 -.IX Item "SVN::Client::get_ssl_client_cert_file_provider" -Returns a client certificate provider that returns information from previously -cached sessions. Takes no parameters or optionally a pool parameter. -.IP "SVN::Client::get_ssl_client_cert_prompt_provider" 4 -.IX Item "SVN::Client::get_ssl_client_cert_prompt_provider" -Returns a client certificate provider that prompts the user via a callback. -Takes two or three parameters: the first is the callback subroutine, the 2nd is -the number of retries to allow, the 3rd is optionally a pool parameter. The -subroutine gets called with the following parameters. A -svn_auth_cred_ssl_client_cert object, a realm string, may_save, and a pool. -The svn_auth_cred_ssl_client_cert the following members: cert_file and -may_save. -.IP "SVN::Client::get_ssl_client_cert_pw_file_provider" 4 -.IX Item "SVN::Client::get_ssl_client_cert_pw_file_provider" -Returns a client certificate password provider that returns information from -previously cached sessions. Takes no parameters or optionally a pool -parameter. -.IP "SVN::Client::get_ssl_client_cert_pw_prompt_provider" 4 -.IX Item "SVN::Client::get_ssl_client_cert_pw_prompt_provider" -Returns a client certificate password provider that prompts the user via a -callback. Takes two or three parameters, the first is the callback subroutine, -the 2nd is the number of retries to allow, the 3rd is optionally a pool -parameter. The subroutine gets called with the following parameters. A -svn_auth_cred_ssl_client_cert_pw object, a realm string, may_save, and a pool. -The svn_auth_cred_ssl_client_cert_pw has the following members: password and -may_save. -.SH "OBJECTS" -.IX Header "OBJECTS" -These are some of the object types that are returned from the methods -and functions. Others are documented in SVN::Core and SVN::Wc. -If an object is not documented, it is more than likely opaque and -not something you can do anything with, except pass to other functions -that require such objects. -.SS "svn_info_t" -.IX Subsection "svn_info_t" -.ie n .IP "$info\->\s-1\fIURL\s0()\fR" 8 -.el .IP "\f(CW$info\fR\->\s-1\fIURL\s0()\fR" 8 -.IX Item "$info->URL()" -Where the item lives in the repository. -.ie n .IP "$info\->\fIrev()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIrev()\fR" 8 -.IX Item "$info->rev()" -The revision of the object. If path_or_url is a working-copy -path, then this is its current working revnum. If path_or_url -is a \s-1URL\s0, then this is the repos revision that path_or_url lives in. -.ie n .IP "$info\->\fIkind()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIkind()\fR" 8 -.IX Item "$info->kind()" -The node's kind. -.ie n .IP "$info\->\fIrepos_root_URL()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIrepos_root_URL()\fR" 8 -.IX Item "$info->repos_root_URL()" -The root \s-1URL\s0 of the repository. -.ie n .IP "$info\->\fIrepos_UUID()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIrepos_UUID()\fR" 8 -.IX Item "$info->repos_UUID()" -The repository's \s-1UUID\s0. -.ie n .IP "$info\->\fIlast_changed_rev()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIlast_changed_rev()\fR" 8 -.IX Item "$info->last_changed_rev()" -The last revision in which this object changed. -.ie n .IP "$info\->\fIlast_changed_date()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIlast_changed_date()\fR" 8 -.IX Item "$info->last_changed_date()" -The date of the last_changed_rev. -.ie n .IP "$info\->\fIlast_changed_author()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIlast_changed_author()\fR" 8 -.IX Item "$info->last_changed_author()" -The author of the last_changed_rev. -.ie n .IP "$info\->\fIlock()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIlock()\fR" 8 -.IX Item "$info->lock()" -An exclusive lock, if present. Could be either local or remote. -.PP -See SVN::Wc::svn_wc_entry_t for the rest of these. svn_client.h indicates -that these were copied from that struct and mean the same things. They are -also only useful when working with a \s-1WC\s0. -.ie n .IP "$info\->\fIhas_wc_info()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIhas_wc_info()\fR" 8 -.IX Item "$info->has_wc_info()" -.PD 0 -.ie n .IP "$info\->\fIschedule()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIschedule()\fR" 8 -.IX Item "$info->schedule()" -.ie n .IP "$info\->\fIcopyfrom_url()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIcopyfrom_url()\fR" 8 -.IX Item "$info->copyfrom_url()" -.ie n .IP "$info\->\fIcopyfrom_rev()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIcopyfrom_rev()\fR" 8 -.IX Item "$info->copyfrom_rev()" -.ie n .IP "$info\->\fItext_time()\fR" 8 -.el .IP "\f(CW$info\fR\->\fItext_time()\fR" 8 -.IX Item "$info->text_time()" -.ie n .IP "$info\->\fIprop_time()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIprop_time()\fR" 8 -.IX Item "$info->prop_time()" -.ie n .IP "$info\->\fIchecksum()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIchecksum()\fR" 8 -.IX Item "$info->checksum()" -.ie n .IP "$info\->\fIconflict_old()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIconflict_old()\fR" 8 -.IX Item "$info->conflict_old()" -.ie n .IP "$info\->\fIconflict_new()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIconflict_new()\fR" 8 -.IX Item "$info->conflict_new()" -.ie n .IP "$info\->\fIconflict_wrk()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIconflict_wrk()\fR" 8 -.IX Item "$info->conflict_wrk()" -.ie n .IP "$info\->\fIprejfile()\fR" 8 -.el .IP "\f(CW$info\fR\->\fIprejfile()\fR" 8 -.IX Item "$info->prejfile()" -.PD -.SS "svn_client_commit_item3_t" -.IX Subsection "svn_client_commit_item3_t" -.ie n .IP "$citem\->\fIpath()\fR" 8 -.el .IP "\f(CW$citem\fR\->\fIpath()\fR" 8 -.IX Item "$citem->path()" -Absolute working-copy path of item. -.ie n .IP "$citem\->\fIkind()\fR" 8 -.el .IP "\f(CW$citem\fR\->\fIkind()\fR" 8 -.IX Item "$citem->kind()" -An integer representing the type of node it is (file/dir). -Can be one of the following constants: -\&\f(CW$SVN::Node::none\fR -\&\f(CW$SVN::Node::file\fR -\&\f(CW$SVN::Node::dir\fR -\&\f(CW$SVN::Node::unknown\fR -.ie n .IP "$citem\->\fIurl()\fR" 8 -.el .IP "\f(CW$citem\fR\->\fIurl()\fR" 8 -.IX Item "$citem->url()" -Commit \s-1URL\s0 for this item. -.ie n .IP "$citem\->\fIrevision()\fR" 8 -.el .IP "\f(CW$citem\fR\->\fIrevision()\fR" 8 -.IX Item "$citem->revision()" -Revision (copyfrom_rev if state_flags has \s-1IS_COPY\s0 set). -.ie n .IP "$citem\->\fIcopyform_url()\fR;" 8 -.el .IP "\f(CW$citem\fR\->\fIcopyform_url()\fR;" 8 -.IX Item "$citem->copyform_url();" -CopyFrom \s-1URL\s0 -.ie n .IP "$citem\->\fIstate_flags()\fR;" 8 -.el .IP "\f(CW$citem\fR\->\fIstate_flags()\fR;" 8 -.IX Item "$citem->state_flags();" -One of several state flags: -\&\f(CW$SVN::Client::COMMIT_ITEM_ADD\fR -\&\f(CW$SVN::Client::COMMIT_ITEM_DELETE\fR -\&\f(CW$SVN::Client::COMMIT_ITEM_TEXT_MODS\fR -\&\f(CW$SVN::Client::COMMIT_ITEM_PROP_MODS\fR -\&\f(CW$SVN::Client::COMMIT_ITEM_IS_COPY\fR -.ie n .IP "$citem>\fIincoming_prop_changes()\fR" 8 -.el .IP "\f(CW$citem\fR>\fIincoming_prop_changes()\fR" 8 -.IX Item "$citem>incoming_prop_changes()" -A reference to an array of svn_prop_t objects representing changes to -\&\s-1WC\s0 properties. -.ie n .IP "$citem>\fIoutgoing_prop_changes()\fR" 8 -.el .IP "\f(CW$citem\fR>\fIoutgoing_prop_changes()\fR" 8 -.IX Item "$citem>outgoing_prop_changes()" -A reference to an array of svn_prop_t objects representing extra -changes to properties in the repository (which are not necessarily -reflected by the \s-1WC\s0). -.SS "svn_client_commit_info_t" -.IX Subsection "svn_client_commit_info_t" -.ie n .IP "$cinfo\->\fIrevision()\fR" 4 -.el .IP "\f(CW$cinfo\fR\->\fIrevision()\fR" 4 -.IX Item "$cinfo->revision()" -Just committed revision. -.ie n .IP "$cinfo\->\fIdate()\fR" 4 -.el .IP "\f(CW$cinfo\fR\->\fIdate()\fR" 4 -.IX Item "$cinfo->date()" -Server-Side date of the commit as a string. -.ie n .IP "$cinfo\->\fIauthor()\fR" 4 -.el .IP "\f(CW$cinfo\fR\->\fIauthor()\fR" 4 -.IX Item "$cinfo->author()" -Author of the commit. -.SS "svn_client_proplist_item_t" -.IX Subsection "svn_client_proplist_item_t" -.ie n .IP "$proplist\->\fInode_name()\fR" 8 -.el .IP "\f(CW$proplist\fR\->\fInode_name()\fR" 8 -.IX Item "$proplist->node_name()" -The name of the node on which these properties are set. -.ie n .IP "$proplist\->\fIprop_hash()\fR" 8 -.el .IP "\f(CW$proplist\fR\->\fIprop_hash()\fR" 8 -.IX Item "$proplist->prop_hash()" -A reference to a hash of property names and values. -.SS "svn_client_diff_summarize_kind_t \- SVN::Summarize" -.IX Subsection "svn_client_diff_summarize_kind_t - SVN::Summarize" -An enum of the following constants: -.PP -\&\f(CW$SVN::Client::Summarize::normal\fR, \f(CW$SVN::Client::Summarize::added\fR, -\&\f(CW$SVN::Client::Summarize::modified\fR, \f(CW$SVN::Client::Summarize::deleted\fR. -.SS "svn_client_diff_summarize_t" -.IX Subsection "svn_client_diff_summarize_t" -.ie n .IP "$diff_summarize\->\fIpath()\fR" 8 -.el .IP "\f(CW$diff_summarize\fR\->\fIpath()\fR" 8 -.IX Item "$diff_summarize->path()" -Path relative to the target. If the target is a file, path is the -empty string. -.ie n .IP "$diff_summarize\->\fIsummarize_kind()\fR" 8 -.el .IP "\f(CW$diff_summarize\fR\->\fIsummarize_kind()\fR" 8 -.IX Item "$diff_summarize->summarize_kind()" -Change kind. -.ie n .IP "$diff_summarize\->\fIprop_changed()\fR" 8 -.el .IP "\f(CW$diff_summarize\fR\->\fIprop_changed()\fR" 8 -.IX Item "$diff_summarize->prop_changed()" -Properties changed? -.ie n .IP "$diff_summarize\->\fInode_kind()\fR" 8 -.el .IP "\f(CW$diff_summarize\fR\->\fInode_kind()\fR" 8 -.IX Item "$diff_summarize->node_kind()" -File or dir? -.SH "TODO" -.IX Header "TODO" -* Better support for the config. -.PP -* Unit tests for cleanup, diff, export, merge, move, relocate, resolved -and switch. This may reveal problems for using these methods as I haven't -tested them yet that require deeper fixes. -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.PP -Ben Reser -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. -.SH "POD ERRORS" -.IX Header "POD ERRORS" -Hey! \fBThe above document had some coding errors, which are explained below:\fR -.IP "Around line 1451:" 4 -.IX Item "Around line 1451:" -=back without =over diff --git a/extra/subversion/pkgnone/SVN::Core.0 b/extra/subversion/pkgnone/SVN::Core.0 deleted file mode 100644 index fda5fe821..000000000 --- a/extra/subversion/pkgnone/SVN::Core.0 +++ /dev/null @@ -1,560 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Core 3" -.TH native::Core 3 "2008-08-13" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Core \- Core module of the subversion perl bindings -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 1 -\& use SVN::Core; # does apr_initialize and cleanup for you -\& -\& # create a root pool and set it as default pool for later use -\& my $pool = SVN::Pool\->new_default; -\& -\& sub something { -\& # create a subpool of the current default pool -\& my $pool = SVN::Pool\->new_default_sub; -\& # some svn operations... -\& -\& # $pool gets destroyed and the previous default pool -\& # is restored when $pool\*(Aqs lexical scope ends -\& } -\& -\& # svn_stream_t as native perl io handle -\& my $stream = $txn\->root\->apply_text(\*(Aqtrunk/filea\*(Aq, undef); -\& print $stream $text; -\& close $stream; -\& -\& # native perl io handle as svn_stream_t -\& SVN::Repos::dump_fs($repos, \e*STDOUT, \e*STDERR, -\& 0, $repos\->fs\->youngest_rev, 0); -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Core implements higher level functions of fundamental subversion -functions. -.SH "FUNCTIONS" -.IX Header "FUNCTIONS" -.IP "SVN::Core::auth_open([auth provider array]);" 4 -.IX Item "SVN::Core::auth_open([auth provider array]);" -Takes a reference to an array of authentication providers -and returns an auth_baton. If you use prompt providers -you can not use this function, but need to use the -auth_open_helper. -.IP "SVN::Core::auth_open_helper([auth provider array]);" 4 -.IX Item "SVN::Core::auth_open_helper([auth provider array]);" -Prompt providers return two values instead of one. The -2nd parameter is a reference to whatever was passed into -them as the callback. auth_open_helper splits up these -arguments, passing the provider objects into auth_open -which gives it an auth_baton and putting the other -ones in an array. The first return value of this -function is the auth_baton, the second is a reference -to an array containing the references to the callbacks. -.Sp -These callback arrays should be stored in the object -the auth_baton is attached to. -.SH "OTHER OBJECTS" -.IX Header "OTHER OBJECTS" -.SS "svn_stream_t \- SVN::Stream" -.IX Subsection "svn_stream_t - SVN::Stream" -You can use native perl io handles (including io globs) as -svn_stream_t in subversion functions. Returned svn_stream_t are also -translated into perl io handles, so you could access them with regular -print, read, etc. -.PP -Note that some functions take a stream to read from or write to, but do not -close the stream while still holding the reference to the io handle. -In this case the handle won't be destroyed properly. -You should always set up the correct default pool before calling -such functions. -.SS "svn_pool_t \- SVN::Pool" -.IX Subsection "svn_pool_t - SVN::Pool" -The perl bindings significantly simplify the usage of pools, while -still being manually adjustable. -.PP -For functions requiring a pool as the last argument (which are, almost all -of the subversion functions), the pool argument is optional. The default pool -is used if it is omitted. When \f(CW\*(C`SVN::Core\*(C'\fR is loaded, it creates a -new default pool, which is also available from \f(CW\*(C`SVN::Core\->gpool\*(C'\fR. -.PP -For callback functions providing a pool to your subroutine, you could -also use \f(CW$pool\fR\->default to make it the default pool in the scope. -.PP -\fIMethods\fR -.IX Subsection "Methods" -.IP "new ([$parent])" 4 -.IX Item "new ([$parent])" -Create a new pool. The pool is a root pool if \f(CW$parent\fR is not supplied. -.IP "new_default ([$parent])" 4 -.IX Item "new_default ([$parent])" -Create a new pool. The pool is a root pool if \f(CW$parent\fR is not supplied. -Set the new pool as default pool. -.IP "new_default_sub" 4 -.IX Item "new_default_sub" -Create a new subpool of the current default pool, and set the -resulting pool as new default pool. -.IP "clear" 4 -.IX Item "clear" -Clear the pool. -.IP "\s-1DESTROY\s0" 4 -.IX Item "DESTROY" -Destroy the pool. If the pool was the default pool, restore the -previous default pool. This is normally called -automatically when the SVN::Pool object is no longer used and -destroyed by the perl garbage collector. -.SS "svn_error_t \- SVN::Error" -.IX Subsection "svn_error_t - SVN::Error" -By default the perl bindings handle exceptions for you. The default handler -automatically croaks with an appropriate error message. This is likely -sufficient for simple scripts, but more complex usage may demand handling of -errors. -.PP -You can override the default exception handler by changing the -\&\f(CW$SVN::Error::handler\fR variable. This variable holds a reference to a perl sub -that should be called whenever an error is returned by a svn function. This -sub will be passed a svn_error_t object. Its return value is ignored. -.PP -If you set the \f(CW$SVN::Error::handler\fR to undef then each call will return an -svn_error_t object as its first return in the case of an error, followed by the -normal return values. If there is no error then a svn_error_t will not be -returned and only the normal return values will be returned. When using this -mode you should be careful only to call functions in array context. For -example: my ($ci) = \f(CW$ctx\fR\->mkdir('http://svn/foo'); In this case \f(CW$ci\fR will -be an svn_error_t object if an error occurs and a svn_client_commit_info object -otherwise. If you leave the parenthesis off around \f(CW$ci\fR (scalar context) it -will be the commit_info object, which in the case of an error will be undef. -.PP -If you plan on using explicit exception handling, understanding the exception -handling system the C \s-1API\s0 uses is helpful. You can find information on it in -the \s-1HACKING\s0 file and the \s-1API\s0 documentation. Looking at the implementation of -SVN::Error::croak_on_error and SVN::Error::expanded_message may be helpful as -well. -.ie n .IP "$svn_error_t\->\fIapr_err()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIapr_err()\fR" 4 -.IX Item "$svn_error_t->apr_err()" -\&\s-1APR\s0 error value, possibly \s-1SVN_\s0 custom error. -.ie n .IP "$svn_error_t\->\fImessage()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fImessage()\fR" 4 -.IX Item "$svn_error_t->message()" -Details from producer of error. -.ie n .IP "$svn_error_t\->\fIchild()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIchild()\fR" 4 -.IX Item "$svn_error_t->child()" -svn_error_t object of the error that's wrapped. -.ie n .IP "$svn_error_t\->\fIpool()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIpool()\fR" 4 -.IX Item "$svn_error_t->pool()" -The pool holding this error and any child errors it wraps. -.ie n .IP "$svn_error_t\->\fIfile()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIfile()\fR" 4 -.IX Item "$svn_error_t->file()" -Source file where the error originated. -.ie n .IP "$svn_error_t\->\fIline()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIline()\fR" 4 -.IX Item "$svn_error_t->line()" -Source line where the error originated. -.IP "SVN::Error::strerror($apr_status_t)" 4 -.IX Item "SVN::Error::strerror($apr_status_t)" -Returns the english description of the status code. -.ie n .IP "$svn_error_t\->\fIstrerror()\fR" 4 -.el .IP "\f(CW$svn_error_t\fR\->\fIstrerror()\fR" 4 -.IX Item "$svn_error_t->strerror()" -Returns the english description of the apr_err status code set on the -\&\f(CW$svn_error_t\fR. This is short for: -SVN::Error::strerror($svn_error_t\->\fIapr_err()\fR); -.ie n .IP "SVN::Error::create($apr_err, $child, $message);" 4 -.el .IP "SVN::Error::create($apr_err, \f(CW$child\fR, \f(CW$message\fR);" 4 -.IX Item "SVN::Error::create($apr_err, $child, $message);" -Returns a new svn_error_t object with the error status specified in \f(CW$apr_err\fR, -the child as \f(CW$child\fR, and error message of \f(CW$message\fR. -.ie n .IP "SVN::Error::quick_wrap($child, $new_msg); or $child\->quick_wrap($new_msg);" 4 -.el .IP "SVN::Error::quick_wrap($child, \f(CW$new_msg\fR); or \f(CW$child\fR\->quick_wrap($new_msg);" 4 -.IX Item "SVN::Error::quick_wrap($child, $new_msg); or $child->quick_wrap($new_msg);" -A quick n' easy way to create a wrappered exception with your own message -before throwing it up the stack. -.Sp -\&\f(CW$child\fR is the svn_error_t object you want to wrap and \f(CW$new_msg\fR is the new error -string you want to set. -.ie n .IP "SVN::Error::compose($chain, $new_error); or $chain\->compose($new_error);" 4 -.el .IP "SVN::Error::compose($chain, \f(CW$new_error\fR); or \f(CW$chain\fR\->compose($new_error);" 4 -.IX Item "SVN::Error::compose($chain, $new_error); or $chain->compose($new_error);" -Add new_err to the end of \f(CW$chain\fR's chain of errors. -.Sp -The \f(CW$new_err\fR chain will be copied into \f(CW$chain\fR's pool and destroyed, so \f(CW$new_err\fR -itself becomes invalid after this function. -.ie n .IP "SVN::Error::clear($svn_error_t); or $svn_error_t\->\fIclear()\fR;" 4 -.el .IP "SVN::Error::clear($svn_error_t); or \f(CW$svn_error_t\fR\->\fIclear()\fR;" 4 -.IX Item "SVN::Error::clear($svn_error_t); or $svn_error_t->clear();" -Free the memory used by \f(CW$svn_error_t\fR, as well as all ancestors and descendants -of \f(CW$svn_error_t\fR. -.Sp -You must call this on every svn_error_t object you get or you will leak memory. -.ie n .IP "SVN::Error::expanded_message($svn_error_t) or $svn_error_t\->\fIexpanded_message()\fR" 4 -.el .IP "SVN::Error::expanded_message($svn_error_t) or \f(CW$svn_error_t\fR\->\fIexpanded_message()\fR" 4 -.IX Item "SVN::Error::expanded_message($svn_error_t) or $svn_error_t->expanded_message()" -Returns the error message by tracing through the svn_error_t object and its -children and concatenating the error messages. This is how the internal -exception handlers get their error messages. -.IP "SVN::Error::is_error($value)" 4 -.IX Item "SVN::Error::is_error($value)" -Returns true if value is of type svn_error. Returns false if value is -anything else or undefined. This is useful for seeing if a call has returned -an error. -.IP "SVN::Error::croak_on_error" 4 -.IX Item "SVN::Error::croak_on_error" -Default error handler. It takes an svn_error_t and extracts the error messages -from it and croaks with those messages. -.Sp -It can be used in two ways. The first is detailed above as setting it as the -automatic exception handler via setting \f(CW$SVN::Error::handler\fR. -.Sp -The second is if you have \f(CW$SVN::Error::handler\fR set to undef as a wrapper for -calls you want to croak on when there is an error, but you don't want to write -an explicit error handler. For example: -.Sp -my \f(CW$result_rev\fR=SVN::Error::croak_on_error($ctx\->checkout($url,$path,'\s-1HEAD\s0',1)); -.Sp -If there is no error then croak_on_error will return the arguments passed to it -unchanged. -.IP "SVN::Error::confess_on_error" 4 -.IX Item "SVN::Error::confess_on_error" -The same as croak_on_error except it will give a more detailed stack backtrace, -including internal calls within the implementation of the perl bindings. -This is useful when you are doing development work on the bindings themselves. -.IP "SVN::Error::ignore_error" 4 -.IX Item "SVN::Error::ignore_error" -This is useful for wrapping around calls which you wish to ignore any potential -error. It checks to see if the first parameter is an error and if it is it -clears it. It then returns all the other parameters. -.SS "svn_log_changed_path_t" -.IX Subsection "svn_log_changed_path_t" -.ie n .IP "$lcp\->\fIaction()\fR" 4 -.el .IP "\f(CW$lcp\fR\->\fIaction()\fR" 4 -.IX Item "$lcp->action()" -\&'A'dd, 'D'elete, 'R'eplace, 'M'odify -.ie n .IP "$lcp\->\fIcopyfrom_path()\fR" 4 -.el .IP "\f(CW$lcp\fR\->\fIcopyfrom_path()\fR" 4 -.IX Item "$lcp->copyfrom_path()" -Source path of copy, or \f(CW\*(C`undef\*(C'\fR if there isn't any previous revision -history. -.ie n .IP "$lcp\->\fIcopyfrom_rev()\fR" 4 -.el .IP "\f(CW$lcp\fR\->\fIcopyfrom_rev()\fR" 4 -.IX Item "$lcp->copyfrom_rev()" -Source revision of copy, or \f(CW$SVN::Core::INVALID_REVNUM\fR if there is -no previous history. -.SS "svn_node_kind_t \- SVN::Node" -.IX Subsection "svn_node_kind_t - SVN::Node" -An enum of the following constants: -.PP -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.SS "svn_opt_revision_t" -.IX Subsection "svn_opt_revision_t" -.SS "svn_config_t" -.IX Subsection "svn_config_t" -Opaque object describing a set of configuration options. -.SS "svn_dirent_t" -.IX Subsection "svn_dirent_t" -.ie n .IP "$dirent\->\fIkind()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIkind()\fR" 4 -.IX Item "$dirent->kind()" -Node kind. A number which matches one of these constants: -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.ie n .IP "$dirent\->\fIsize()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIsize()\fR" 4 -.IX Item "$dirent->size()" -Length of file text, or 0 for directories. -.ie n .IP "$dirent\->\fIhas_props()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIhas_props()\fR" 4 -.IX Item "$dirent->has_props()" -Does the node have properties? -.ie n .IP "$dirent\->\fIcreated_rev()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIcreated_rev()\fR" 4 -.IX Item "$dirent->created_rev()" -Last revision in which this node changed. -.ie n .IP "$dirent\->\fItime()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fItime()\fR" 4 -.IX Item "$dirent->time()" -Time of created_rev (mod-time). -.ie n .IP "$dirent\->\fIlast_author()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIlast_author()\fR" 4 -.IX Item "$dirent->last_author()" -Author of created rev. -.SS "svn_auth_cred_simple_t" -.IX Subsection "svn_auth_cred_simple_t" -.ie n .IP "$simple\->\fIusername()\fR" 4 -.el .IP "\f(CW$simple\fR\->\fIusername()\fR" 4 -.IX Item "$simple->username()" -Username. -.ie n .IP "$simple\->\fIpassword()\fR" 4 -.el .IP "\f(CW$simple\fR\->\fIpassword()\fR" 4 -.IX Item "$simple->password()" -Password. -.ie n .IP "$simple\->\fImay_save()\fR" 4 -.el .IP "\f(CW$simple\fR\->\fImay_save()\fR" 4 -.IX Item "$simple->may_save()" -Indicates if the credentials may be saved (to disk). -.SS "svn_auth_cred_username_t" -.IX Subsection "svn_auth_cred_username_t" -.ie n .IP "$username\->\fIusername()\fR" 4 -.el .IP "\f(CW$username\fR\->\fIusername()\fR" 4 -.IX Item "$username->username()" -Username. -.ie n .IP "$username\->\fImay_save()\fR" 4 -.el .IP "\f(CW$username\fR\->\fImay_save()\fR" 4 -.IX Item "$username->may_save()" -Indicates if the credentials may be saved (to disk). -.SS "svn_auth_cred_ssl_server_trust_t" -.IX Subsection "svn_auth_cred_ssl_server_trust_t" -.ie n .IP "$strust\->\fImay_save()\fR" 4 -.el .IP "\f(CW$strust\fR\->\fImay_save()\fR" 4 -.IX Item "$strust->may_save()" -Indicates if the credentials may be saved (to disk). -.ie n .IP "$strust\->\fIaccepted_failures()\fR" 4 -.el .IP "\f(CW$strust\fR\->\fIaccepted_failures()\fR" 4 -.IX Item "$strust->accepted_failures()" -Bit mask of the accepted failures. -.SS "svn_auth_ssl_server_cert_info_t" -.IX Subsection "svn_auth_ssl_server_cert_info_t" -.ie n .IP "$scert\->\fIhostname()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIhostname()\fR" 4 -.IX Item "$scert->hostname()" -Primary \s-1CN\s0. -.ie n .IP "$scert\->\fIfingerprint()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIfingerprint()\fR" 4 -.IX Item "$scert->fingerprint()" -\&\s-1ASCII\s0 fingerprint. -.ie n .IP "$scert\->\fIvalid_from()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIvalid_from()\fR" 4 -.IX Item "$scert->valid_from()" -\&\s-1ASCII\s0 date from which the certificate is valid. -.ie n .IP "$scert\->\fIvalid_until()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIvalid_until()\fR" 4 -.IX Item "$scert->valid_until()" -\&\s-1ASCII\s0 date until which the certificate is valid. -.ie n .IP "$scert\->\fIissuer_dname()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIissuer_dname()\fR" 4 -.IX Item "$scert->issuer_dname()" -\&\s-1DN\s0 of the certificate issuer. -.ie n .IP "$scert\->\fIascii_cert()\fR" 4 -.el .IP "\f(CW$scert\fR\->\fIascii_cert()\fR" 4 -.IX Item "$scert->ascii_cert()" -Base\-64 encoded \s-1DER\s0 certificate representation. -.SS "svn_auth_cred_ssl_client_cert_t" -.IX Subsection "svn_auth_cred_ssl_client_cert_t" -.ie n .IP "$ccert\->\fIcert_file()\fR" 4 -.el .IP "\f(CW$ccert\fR\->\fIcert_file()\fR" 4 -.IX Item "$ccert->cert_file()" -Full paths to the certificate file. -.ie n .IP "$ccert\->\fImay_save()\fR" 4 -.el .IP "\f(CW$ccert\fR\->\fImay_save()\fR" 4 -.IX Item "$ccert->may_save()" -Indicates if the credentials may be saved (to disk). -.SS "svn_auth_cred_ssl_client_cert_pw_t" -.IX Subsection "svn_auth_cred_ssl_client_cert_pw_t" -.ie n .IP "$ccertpw\->\fIpassword()\fR" 4 -.el .IP "\f(CW$ccertpw\fR\->\fIpassword()\fR" 4 -.IX Item "$ccertpw->password()" -Certificate password. -.ie n .IP "$ccertpw\->\fImay_save()\fR" 4 -.el .IP "\f(CW$ccertpw\fR\->\fImay_save()\fR" 4 -.IX Item "$ccertpw->may_save()" -Indicates if the credentials may be saved (to disk). -.SH "CONSTANTS" -.IX Header "CONSTANTS" -.SS "SVN::Auth::SSL" -.IX Subsection "SVN::Auth::SSL" -.ie n .IP "$SVN::Auth::SSL::NOTYETVALID" 4 -.el .IP "\f(CW$SVN::Auth::SSL::NOTYETVALID\fR" 4 -.IX Item "$SVN::Auth::SSL::NOTYETVALID" -Certificate is not yet valid. -.ie n .IP "$SVN::Auth::SSL::EXPIRED" 4 -.el .IP "\f(CW$SVN::Auth::SSL::EXPIRED\fR" 4 -.IX Item "$SVN::Auth::SSL::EXPIRED" -Certificate has expired. -.ie n .IP "$SVN::Auth::SSL::CNMISMATCH" 4 -.el .IP "\f(CW$SVN::Auth::SSL::CNMISMATCH\fR" 4 -.IX Item "$SVN::Auth::SSL::CNMISMATCH" -Certificate's \s-1CN\s0 (hostname) does not match the remote hostname. -.ie n .IP "$SVN::Auth::SSL::UNKNOWNCA" 4 -.el .IP "\f(CW$SVN::Auth::SSL::UNKNOWNCA\fR" 4 -.IX Item "$SVN::Auth::SSL::UNKNOWNCA" -Certificate authority is unknown (i.e. not trusted). -.ie n .IP "$SVN::Auth::SSL::OTHER" 4 -.el .IP "\f(CW$SVN::Auth::SSL::OTHER\fR" 4 -.IX Item "$SVN::Auth::SSL::OTHER" -Other failure. This can happen if neon has introduced a new failure bit that we -do not handle yet. -.SS "_p_svn_lock_t" -.IX Subsection "_p_svn_lock_t" -Objects of this class contain information about locks placed on files -in a repository. It has the following accessor methods: -.IP "path" 4 -.IX Item "path" -The full path to the file which is locked, starting with a forward slash (\f(CW\*(C`/\*(C'\fR). -.IP "token" 4 -.IX Item "token" -A string containing the lock token, which is a unique \s-1URI\s0. -.IP "owner" 4 -.IX Item "owner" -The username of whoever owns the lock. -.IP "comment" 4 -.IX Item "comment" -A comment associated with the lock, or undef if there isn't one. -.IP "is_dav_comment" 4 -.IX Item "is_dav_comment" -True if the comment was made by a generic \s-1DAV\s0 client. -.IP "creation_date" 4 -.IX Item "creation_date" -Time at which the lock was created, as the number of microseconds since -00:00:00 January\ 1, 1970 \s-1UTC\s0. Divide it by 1_000_000 to get a Unix -time_t value. -.IP "expiration_date" 4 -.IX Item "expiration_date" -When the lock will expire. Has the value '0' if the lock will never expire. -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. diff --git a/extra/subversion/pkgnone/SVN::Delta.0 b/extra/subversion/pkgnone/SVN::Delta.0 deleted file mode 100644 index da6a05d97..000000000 --- a/extra/subversion/pkgnone/SVN::Delta.0 +++ /dev/null @@ -1,224 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Delta 3" -.TH native::Delta 3 "2005-10-24" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Delta \- Subversion delta functions -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 3 -\& require SVN::Core; -\& require SVN::Repos; -\& require SVN::Delta; -\& -\& # driving an editor -\& my $editor = SVN::Delta::Editor\-> -\& new(SVN::Repos::get_commit_editor($repos, "file://$repospath", -\& \*(Aq/\*(Aq, \*(Aqroot\*(Aq, \*(AqFOO\*(Aq, \e&committed)); -\& -\& my $rootbaton = $editor\->open_root(0); -\& -\& my $fbaton = $editor\->add_file (\*(Aqfilea\*(Aq, $rootbaton, -\& undef, \-1); -\& -\& my $ret = $editor\->apply_textdelta ($fbaton, undef); -\& SVN::TxDelta::send_string("FILEA CONTENT", @$ret); -\& -\& # implement an editor in perl -\& SVN::Repos::dir_delta($root1, $path, undef, -\& $root2, $path, -\& SVN::Delta::Editor\->new(_debug=>1), -\& 1, 1, 0, 1 -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Delta wraps delta related function in subversion. The most -important one is SVN::Delta::Editor, the interface for describing tree -deltas. by default SVN::Delta::Editor relays method calls to its -internal member \f(CW\*(C`_editor\*(C'\fR, which could either be an editor in C (such -as the one you get from get_commit_editor), or another -SVN::Delta::Editor object. -.SH "SVN::Delta::Editor" -.IX Header "SVN::Delta::Editor" -.SS "Driving Editors" -.IX Subsection "Driving Editors" -If you want to drive a native editor (such as commit_editor obtained -by SVN::Repos::get_commit_editor), create a SVN::Delta::Editor object -with the native editor/baton pair. The object will then be ready to -use and its method calls will be relayed to the native editor. -.SS "Implementing Editors" -.IX Subsection "Implementing Editors" -If you want to implement an editor, subclass SVN::Delta::Editor and -implement the editors callbacks. see the \s-1METHODS\s0 section below. -.SS "\s-1CONSTRUCTOR\s0 \- new (...)" -.IX Subsection "CONSTRUCTOR - new (...)" -.ie n .IP "new ($editor, $editor_baton)" 4 -.el .IP "new ($editor, \f(CW$editor_baton\fR)" 4 -.IX Item "new ($editor, $editor_baton)" -Link to the native editor -.PP -You can also pass a hash array to new: -.IP "_debug" 4 -.IX Item "_debug" -Turn on debug. -.IP "_editor" 4 -.IX Item "_editor" -An arrayref of the editor/baton pair or another SVN::Delta::Editor -object to link with. -.SS "\s-1METHODS\s0" -.IX Subsection "METHODS" -Please consult the svn_delta.h section in the Subversion \s-1API\s0. Member -functions of svn_delta_editor_t could be called as methods of -SVN::Delta::Editor objects, with the edit_baton omitted. The pool is -also optional. -.PP -If you are subclassing, the methods take exactly the same arguments as -the member functions (note that void ** are returned data though as -throughout the perl bindings), with the edit_baton omitted. -.SH "BUGS" -.IX Header "BUGS" -Functions returning editor/baton pair should really be typemapped to a -SVN::Delta::Editor object. -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. diff --git a/extra/subversion/pkgnone/SVN::Fs.0 b/extra/subversion/pkgnone/SVN::Fs.0 deleted file mode 100644 index 804106c2f..000000000 --- a/extra/subversion/pkgnone/SVN::Fs.0 +++ /dev/null @@ -1,567 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Fs 3" -.TH native::Fs 3 "2006-09-13" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Fs \- Subversion filesystem functions -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Fs wraps the functions in svn_fs.h. The actual namespace -for filesystem objects is \f(CW\*(C`_p_svn_fs_t\*(C'\fR. -.SH "FUNCTIONS" -.IX Header "FUNCTIONS" -.ie n .IP "SVN::Fs::berkeley_logfiles($path, $only_unused)" 4 -.el .IP "SVN::Fs::berkeley_logfiles($path, \f(CW$only_unused\fR)" 4 -.IX Item "SVN::Fs::berkeley_logfiles($path, $only_unused)" -.PD 0 -.IP "SVN::Fs::berkeley_recover($path)" 4 -.IX Item "SVN::Fs::berkeley_recover($path)" -.ie n .IP "SVN::Fs::check_related($id1, $id2)" 4 -.el .IP "SVN::Fs::check_related($id1, \f(CW$id2\fR)" 4 -.IX Item "SVN::Fs::check_related($id1, $id2)" -.ie n .IP "SVN::Fs::compare_ids($id1, $id2)" 4 -.el .IP "SVN::Fs::compare_ids($id1, \f(CW$id2\fR)" 4 -.IX Item "SVN::Fs::compare_ids($id1, $id2)" -.ie n .IP "SVN::Fs::contents_changed($root1, $path1, $root2, $path2)" 4 -.el .IP "SVN::Fs::contents_changed($root1, \f(CW$path1\fR, \f(CW$root2\fR, \f(CW$path2\fR)" 4 -.IX Item "SVN::Fs::contents_changed($root1, $path1, $root2, $path2)" -.ie n .IP "SVN::Fs::create($path, $config)" 4 -.el .IP "SVN::Fs::create($path, \f(CW$config\fR)" 4 -.IX Item "SVN::Fs::create($path, $config)" -.IP "SVN::Fs::delete_fs($path)" 4 -.IX Item "SVN::Fs::delete_fs($path)" -.ie n .IP "SVN::Fs::deltify_revision($fs, $rev)" 4 -.el .IP "SVN::Fs::deltify_revision($fs, \f(CW$rev\fR)" 4 -.IX Item "SVN::Fs::deltify_revision($fs, $rev)" -.ie n .IP "SVN::Fs::get_file_delta_stream($source_root, $source_path, $target_root, $target_path)" 4 -.el .IP "SVN::Fs::get_file_delta_stream($source_root, \f(CW$source_path\fR, \f(CW$target_root\fR, \f(CW$target_path\fR)" 4 -.IX Item "SVN::Fs::get_file_delta_stream($source_root, $source_path, $target_root, $target_path)" -.ie n .IP "SVN::Fs::hotcopy($src_path, $dest_path, $clean)" 4 -.el .IP "SVN::Fs::hotcopy($src_path, \f(CW$dest_path\fR, \f(CW$clean\fR)" 4 -.IX Item "SVN::Fs::hotcopy($src_path, $dest_path, $clean)" -.IP "SVN::Fs::initialize($pool)" 4 -.IX Item "SVN::Fs::initialize($pool)" -.ie n .IP "SVN::Fs::merge($source_root, $source_path, $target_root, $target_path, $ancestor_root, $ancestor_path)" 4 -.el .IP "SVN::Fs::merge($source_root, \f(CW$source_path\fR, \f(CW$target_root\fR, \f(CW$target_path\fR, \f(CW$ancestor_root\fR, \f(CW$ancestor_path\fR)" 4 -.IX Item "SVN::Fs::merge($source_root, $source_path, $target_root, $target_path, $ancestor_root, $ancestor_path)" -.ie n .IP "SVN::Fs::open($path, $config)" 4 -.el .IP "SVN::Fs::open($path, \f(CW$config\fR)" 4 -.IX Item "SVN::Fs::open($path, $config)" -.IP "SVN::Fs::path($fs)" 4 -.IX Item "SVN::Fs::path($fs)" -.IP "SVN::Fs::print_modules($s)" 4 -.IX Item "SVN::Fs::print_modules($s)" -.PD -\&\s-1TODO\s0 \- doesn't work, segfaults if \f(CW$s\fR is null, doesn't do anything if -its an empty string -.ie n .IP "SVN::Fs::props_changed($root1, $path1, $root2, $path2)" 4 -.el .IP "SVN::Fs::props_changed($root1, \f(CW$path1\fR, \f(CW$root2\fR, \f(CW$path2\fR)" 4 -.IX Item "SVN::Fs::props_changed($root1, $path1, $root2, $path2)" -See also \f(CW\*(C`SVN::Fs::contents_changed\*(C'\fR -.ie n .IP "SVN::Fs::purge_txn($fs, $txn_id)" 4 -.el .IP "SVN::Fs::purge_txn($fs, \f(CW$txn_id\fR)" 4 -.IX Item "SVN::Fs::purge_txn($fs, $txn_id)" -Cleanup the transaction \f(CW$txn_id\fR, removing it completely from -the filesystem \f(CW$fs\fR. -.ie n .IP "SVN::Fs::set_warning_func($fs, $code, $baton)" 4 -.el .IP "SVN::Fs::set_warning_func($fs, \f(CW$code\fR, \f(CW$baton\fR)" 4 -.IX Item "SVN::Fs::set_warning_func($fs, $code, $baton)" -.PD 0 -.IP "SVN::Fs::unparse_id($id)" 4 -.IX Item "SVN::Fs::unparse_id($id)" -.PD -Return a string containing the unparsed form of the node or node -revision id \f(CW$id\fR, which must be a \f(CW\*(C`_p_svn_fs_id_t\*(C'\fR object. -.Sp -\&\s-1TODO\s0 \- why isn't this a method of that object? -.IP "\fISVN::Fs::version()\fR" 4 -.IX Item "SVN::Fs::version()" -\&\s-1TODO\s0 \- what can we do with the _p_svn_version_t value returned? -.IP "SVN::Fs::create_access($username)" 4 -.IX Item "SVN::Fs::create_access($username)" -Return a new \f(CW\*(C`_p_svn_fs_access_t\*(C'\fR object representing \f(CW$username\fR. -\&\f(CW$username\fR is presumed to have been authenticated by the caller. -.SH "_p_svn_fs_t" -.IX Header "_p_svn_fs_t" -.ie n .IP "$fs\->begin_txn($rev)" 4 -.el .IP "\f(CW$fs\fR\->begin_txn($rev)" 4 -.IX Item "$fs->begin_txn($rev)" -Creates a new transaction in the repository, and returns a -\&\f(CW\*(C`_p_svn_fs_txn_t\*(C'\fR object representing it. The new transaction's -base revision will be \f(CW$rev\fR, which should be a number. -.ie n .IP "$fs\->change_rev_prop" 4 -.el .IP "\f(CW$fs\fR\->change_rev_prop" 4 -.IX Item "$fs->change_rev_prop" -.PD 0 -.ie n .IP "$fs\->\fIgenerate_lock_token()\fR" 4 -.el .IP "\f(CW$fs\fR\->\fIgenerate_lock_token()\fR" 4 -.IX Item "$fs->generate_lock_token()" -.PD -Generate a unique lock-token using \f(CW$fs\fR. -.Sp -\&\s-1TODO\s0 \- translate this to apply to Perl: -This can be used in to populate lock\->token before calling -\&\fIsvn_fs_attach_lock()\fR. -.ie n .IP "$fs\->\fIget_access()\fR" 4 -.el .IP "\f(CW$fs\fR\->\fIget_access()\fR" 4 -.IX Item "$fs->get_access()" -The filesystem's current access context, as a \f(CW\*(C`_p_svn_fs_access_t\*(C'\fR -object. Returns undef if no access context has been set with -the \f(CW\*(C`set_access()\*(C'\fR method. -.ie n .IP "$fs\->get_lock" 4 -.el .IP "\f(CW$fs\fR\->get_lock" 4 -.IX Item "$fs->get_lock" -.PD 0 -.ie n .IP "$fs\->get_locks" 4 -.el .IP "\f(CW$fs\fR\->get_locks" 4 -.IX Item "$fs->get_locks" -.ie n .IP "$fs\->\fIget_uuid()\fR" 4 -.el .IP "\f(CW$fs\fR\->\fIget_uuid()\fR" 4 -.IX Item "$fs->get_uuid()" -.PD -The \s-1UUID\s0 associated with \f(CW$fs\fR. -.ie n .IP "$fs\->\fIlist_transactions()\fR" 4 -.el .IP "\f(CW$fs\fR\->\fIlist_transactions()\fR" 4 -.IX Item "$fs->list_transactions()" -A reference to an array of all currently active transactions in the -filesystem. Each one is a string containing the transaction's \s-1ID\s0, -suitable for passing to \f(CW\*(C`$fs\->open_txn()\*(C'\fR. -.ie n .IP "$fs\->lock" 4 -.el .IP "\f(CW$fs\fR\->lock" 4 -.IX Item "$fs->lock" -.PD 0 -.ie n .IP "$fs\->open_txn($name)" 4 -.el .IP "\f(CW$fs\fR\->open_txn($name)" 4 -.IX Item "$fs->open_txn($name)" -.PD -Get a transaction in the repository by name. Returns a -\&\f(CW\*(C`_p_svn_fs_txn_t\*(C'\fR object. -.ie n .IP "$fs\->revision_prop($rev, $propname)" 4 -.el .IP "\f(CW$fs\fR\->revision_prop($rev, \f(CW$propname\fR)" 4 -.IX Item "$fs->revision_prop($rev, $propname)" -The value of revision property \f(CW$propname\fR in revision \f(CW$rev\fR. -.ie n .IP "$fs\->revision_proplist($rev)" 4 -.el .IP "\f(CW$fs\fR\->revision_proplist($rev)" 4 -.IX Item "$fs->revision_proplist($rev)" -A hashref containing the names and values of all revision properties -from revision \f(CW$rev\fR. -.ie n .IP "$fs\->revision_root" 4 -.el .IP "\f(CW$fs\fR\->revision_root" 4 -.IX Item "$fs->revision_root" -.PD 0 -.ie n .IP "$fs\->set_access($access)" 4 -.el .IP "\f(CW$fs\fR\->set_access($access)" 4 -.IX Item "$fs->set_access($access)" -.PD -Associate an access context with an open filesystem. -.Sp -This method can be run multiple times on the same open -filesystem, in order to change the filesystem access context for -different filesystem operations. \f(CW$access\fR should be -a \f(CW\*(C`_p_svn_fs_access_t\*(C'\fR object, or undef to disassociate the -current access context from the filesystem. -.ie n .IP "$fs\->set_uuid($uuid)" 4 -.el .IP "\f(CW$fs\fR\->set_uuid($uuid)" 4 -.IX Item "$fs->set_uuid($uuid)" -Associate \f(CW$uuid\fR with \f(CW$fs\fR. -.ie n .IP "$fs\->unlock" 4 -.el .IP "\f(CW$fs\fR\->unlock" 4 -.IX Item "$fs->unlock" -.PD 0 -.ie n .IP "$fs\->\fIyoungest_rev()\fR" 4 -.el .IP "\f(CW$fs\fR\->\fIyoungest_rev()\fR" 4 -.IX Item "$fs->youngest_rev()" -.PD -Return the number of the youngest revision in the filesystem. -The oldest revision in any filesystem is numbered zero. -.SH "_p_svn_fs_root_t" -.IX Header "_p_svn_fs_root_t" -.ie n .IP "$root\->apply_text" 4 -.el .IP "\f(CW$root\fR\->apply_text" 4 -.IX Item "$root->apply_text" -.PD 0 -.ie n .IP "$root\->apply_textdelta" 4 -.el .IP "\f(CW$root\fR\->apply_textdelta" 4 -.IX Item "$root->apply_textdelta" -.ie n .IP "$root\->change_node_prop($path, $propname, $value)" 4 -.el .IP "\f(CW$root\fR\->change_node_prop($path, \f(CW$propname\fR, \f(CW$value\fR)" 4 -.IX Item "$root->change_node_prop($path, $propname, $value)" -.ie n .IP "$root\->check_path($path)" 4 -.el .IP "\f(CW$root\fR\->check_path($path)" 4 -.IX Item "$root->check_path($path)" -.PD -Kind of node at \f(CW$path\fR. A number which matches one of these constants: -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.ie n .IP "$root\->close_root" 4 -.el .IP "\f(CW$root\fR\->close_root" 4 -.IX Item "$root->close_root" -.PD 0 -.ie n .IP "$root\->closest_copy" 4 -.el .IP "\f(CW$root\fR\->closest_copy" 4 -.IX Item "$root->closest_copy" -.ie n .IP "$root\->copied_from" 4 -.el .IP "\f(CW$root\fR\->copied_from" 4 -.IX Item "$root->copied_from" -.ie n .IP "$root\->copy" 4 -.el .IP "\f(CW$root\fR\->copy" 4 -.IX Item "$root->copy" -.ie n .IP "$root\->delete" 4 -.el .IP "\f(CW$root\fR\->delete" 4 -.IX Item "$root->delete" -.ie n .IP "$root\->dir_entries" 4 -.el .IP "\f(CW$root\fR\->dir_entries" 4 -.IX Item "$root->dir_entries" -.ie n .IP "$root\->file_contents" 4 -.el .IP "\f(CW$root\fR\->file_contents" 4 -.IX Item "$root->file_contents" -.ie n .IP "$root\->file_length" 4 -.el .IP "\f(CW$root\fR\->file_length" 4 -.IX Item "$root->file_length" -.ie n .IP "$root\->file_md5_checksum" 4 -.el .IP "\f(CW$root\fR\->file_md5_checksum" 4 -.IX Item "$root->file_md5_checksum" -.ie n .IP "$root\->\fIfs()\fR" 4 -.el .IP "\f(CW$root\fR\->\fIfs()\fR" 4 -.IX Item "$root->fs()" -.PD -The filesystem to which \f(CW$root\fR belongs, as a \f(CW\*(C`_p_svn_fs_t\*(C'\fR object. -.ie n .IP "$root\->is_dir($path)" 4 -.el .IP "\f(CW$root\fR\->is_dir($path)" 4 -.IX Item "$root->is_dir($path)" -True if there is a node at \f(CW$path\fR which is a directory. -.ie n .IP "$root\->is_file($path)" 4 -.el .IP "\f(CW$root\fR\->is_file($path)" 4 -.IX Item "$root->is_file($path)" -True if there is a node at \f(CW$path\fR which is a file. -.ie n .IP "$root\->\fIis_revision_root()\fR" 4 -.el .IP "\f(CW$root\fR\->\fIis_revision_root()\fR" 4 -.IX Item "$root->is_revision_root()" -True if the root comes from a revision (i.e., the contents has already been -committed). -.ie n .IP "$root\->\fIis_txn_root()\fR" 4 -.el .IP "\f(CW$root\fR\->\fIis_txn_root()\fR" 4 -.IX Item "$root->is_txn_root()" -True if the root comes from a transaction. -.ie n .IP "$root\->make_dir" 4 -.el .IP "\f(CW$root\fR\->make_dir" 4 -.IX Item "$root->make_dir" -.PD 0 -.ie n .IP "$root\->make_file" 4 -.el .IP "\f(CW$root\fR\->make_file" 4 -.IX Item "$root->make_file" -.ie n .IP "$root\->node_created_path($path)" 4 -.el .IP "\f(CW$root\fR\->node_created_path($path)" 4 -.IX Item "$root->node_created_path($path)" -.ie n .IP "$root\->node_created_rev($path)" 4 -.el .IP "\f(CW$root\fR\->node_created_rev($path)" 4 -.IX Item "$root->node_created_rev($path)" -.ie n .IP "$root\->node_history($path)" 4 -.el .IP "\f(CW$root\fR\->node_history($path)" 4 -.IX Item "$root->node_history($path)" -.PD -\&\s-1TODO\s0 \- _p_svn_fs_history_t -.ie n .IP "$root\->node_id($path)" 4 -.el .IP "\f(CW$root\fR\->node_id($path)" 4 -.IX Item "$root->node_id($path)" -.PD 0 -.ie n .IP "$root\->node_prop($path, $propname)" 4 -.el .IP "\f(CW$root\fR\->node_prop($path, \f(CW$propname\fR)" 4 -.IX Item "$root->node_prop($path, $propname)" -.ie n .IP "$root\->node_proplist($path)" 4 -.el .IP "\f(CW$root\fR\->node_proplist($path)" 4 -.IX Item "$root->node_proplist($path)" -.ie n .IP "$root\->\fIpaths_changed()\fR" 4 -.el .IP "\f(CW$root\fR\->\fIpaths_changed()\fR" 4 -.IX Item "$root->paths_changed()" -.PD -A reference to a hash indicating what changes are made in the root. -The keys are the paths of the files changed, starting with \f(CW\*(C`/\*(C'\fR to -indicate the top-level directory of the repository. The values -are \f(CW\*(C`_p_svn_fs_path_change_t\*(C'\fR objects which contain information about -what kind of changes are made. -.ie n .IP "$root\->revision_link" 4 -.el .IP "\f(CW$root\fR\->revision_link" 4 -.IX Item "$root->revision_link" -.PD 0 -.ie n .IP "$root\->revision_root_revision" 4 -.el .IP "\f(CW$root\fR\->revision_root_revision" 4 -.IX Item "$root->revision_root_revision" -.PD -Revision number of the revision the root comes from. -For transaction roots, returns \f(CW$SVN::Core::INVALID_REVNUM\fR. -.SH "_p_svn_fs_history_t" -.IX Header "_p_svn_fs_history_t" -.ie n .IP "$history\->\fIlocation()\fR" 4 -.el .IP "\f(CW$history\fR\->\fIlocation()\fR" 4 -.IX Item "$history->location()" -In list context, a list of two items: the path to the node whose history -this is, and the revision number in which it exists. In scalar context -returns only the revision number. -.ie n .IP "$history\->prev($cross_copies)" 4 -.el .IP "\f(CW$history\fR\->prev($cross_copies)" 4 -.IX Item "$history->prev($cross_copies)" -.SH "_p_svn_fs_txn_t" -.IX Header "_p_svn_fs_txn_t" -.PD 0 -.ie n .IP "$txn\->\fIabort()\fR" 4 -.el .IP "\f(CW$txn\fR\->\fIabort()\fR" 4 -.IX Item "$txn->abort()" -.PD -Abort the transaction. Any changes made in \f(CW$txn\fR are discarded, and -the filesystem is left unchanged. -.Sp -Note: This function first sets the state of \f(CW$txn\fR to 'dead', and -then attempts to purge it and any related data from the filesystem. -If some part of the cleanup process fails, \f(CW$txn\fR and some portion -of its data may remain in the database after this function returns. -Use \f(CW\*(C`$fs\->purge_txn()\*(C'\fR to retry the transaction cleanup. -.ie n .IP "$txn\->\fIbase_revision()\fR" 4 -.el .IP "\f(CW$txn\fR\->\fIbase_revision()\fR" 4 -.IX Item "$txn->base_revision()" -The transaction's base revision number. -.ie n .IP "$txn\->change_prop($name, $value)" 4 -.el .IP "\f(CW$txn\fR\->change_prop($name, \f(CW$value\fR)" 4 -.IX Item "$txn->change_prop($name, $value)" -Add, change, or remove a property from the transaction. -If \f(CW$value\fR is \f(CW\*(C`undef\*(C'\fR then the property \f(CW$name\fR is removed, -if it exists. Otherwise the property \f(CW$name\fR is set to the -new value. -.ie n .IP "$txn\->commit" 4 -.el .IP "\f(CW$txn\fR\->commit" 4 -.IX Item "$txn->commit" -.PD 0 -.ie n .IP "$txn\->\fIname()\fR" 4 -.el .IP "\f(CW$txn\fR\->\fIname()\fR" 4 -.IX Item "$txn->name()" -.PD -Full name of the revision, in the same format as can be passed -to \f(CW\*(C`$fs\->open_txn()\*(C'\fR. -.ie n .IP "$txn\->prop($name)" 4 -.el .IP "\f(CW$txn\fR\->prop($name)" 4 -.IX Item "$txn->prop($name)" -The value of the transaction's \f(CW$name\fR property. -.ie n .IP "$txn\->\fIproplist()\fR" 4 -.el .IP "\f(CW$txn\fR\->\fIproplist()\fR" 4 -.IX Item "$txn->proplist()" -A reference to a hash containing all the transaction's properties, -keyed by name. -.ie n .IP "$txn\->\fIroot()\fR" 4 -.el .IP "\f(CW$txn\fR\->\fIroot()\fR" 4 -.IX Item "$txn->root()" -The root directory of the transaction, as a \f(CW\*(C`_p_svn_fs_root_t\*(C'\fR object. -.SH "_p_svn_fs_access_t" -.IX Header "_p_svn_fs_access_t" -.SS "\s-1SYNOPSIS\s0" -.IX Subsection "SYNOPSIS" -.Vb 1 -\& my $access = SVN::Fs::create_access($username); -\& -\& my $access = $fs\->get_access; -\& $fs\->set_access($access); -\& -\& my $username = $access\->get_username; -\& -\& $access\->add_lock_token($token); -.Ve -.SS "\s-1METHODS\s0" -.IX Subsection "METHODS" -.ie n .IP "$access\->add_lock_token($token)" 4 -.el .IP "\f(CW$access\fR\->add_lock_token($token)" 4 -.IX Item "$access->add_lock_token($token)" -Push a lock-token into the access context. The -context remembers all tokens it receives, and makes them available -to fs functions. -.ie n .IP "$access\->get_username" 4 -.el .IP "\f(CW$access\fR\->get_username" 4 -.IX Item "$access->get_username" -The username represented by the access context. -.SH "svn_fs_dirent_t" -.IX Header "svn_fs_dirent_t" -An object representing a directory entry. Values of this type are returned -as the values in the hash returned by \f(CW\*(C`$root\->dir_entries()\*(C'\fR. They -are like svn_dirent_t objects, but have less -information. -.ie n .IP "$dirent\->\fIid()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIid()\fR" 4 -.IX Item "$dirent->id()" -\&\s-1TODO\s0 -.ie n .IP "$dirent\->\fIkind()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIkind()\fR" 4 -.IX Item "$dirent->kind()" -Node kind. A number which matches one of these constants: -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.ie n .IP "$dirent\->\fIname()\fR" 4 -.el .IP "\f(CW$dirent\fR\->\fIname()\fR" 4 -.IX Item "$dirent->name()" -The filename of the directory entry. -.SH "_p_svn_fs_path_change_t" -.IX Header "_p_svn_fs_path_change_t" -.ie n .IP "$change\->\fIchange_kind()\fR" 4 -.el .IP "\f(CW$change\fR\->\fIchange_kind()\fR" 4 -.IX Item "$change->change_kind()" -The type of change made. A number which matches one of the following: -.RS 4 -.ie n .IP "$SVN::Fs::PathChange::modify" 4 -.el .IP "\f(CW$SVN::Fs::PathChange::modify\fR" 4 -.IX Item "$SVN::Fs::PathChange::modify" -Content at path modified. -.ie n .IP "$SVN::Fs::PathChange::add" 4 -.el .IP "\f(CW$SVN::Fs::PathChange::add\fR" 4 -.IX Item "$SVN::Fs::PathChange::add" -Path added in transaction. -.ie n .IP "$SVN::Fs::PathChange::delete" 4 -.el .IP "\f(CW$SVN::Fs::PathChange::delete\fR" 4 -.IX Item "$SVN::Fs::PathChange::delete" -Path removed in transaction. -.ie n .IP "$SVN::Fs::PathChange::replace" 4 -.el .IP "\f(CW$SVN::Fs::PathChange::replace\fR" 4 -.IX Item "$SVN::Fs::PathChange::replace" -Path removed and re-added in transaction. -.ie n .IP "$SVN::Fs::PathChange::reset" 4 -.el .IP "\f(CW$SVN::Fs::PathChange::reset\fR" 4 -.IX Item "$SVN::Fs::PathChange::reset" -Ignore all previous change items for path (internal-use only). -.RE -.RS 4 -.RE -.ie n .IP "$change\->\fInode_rev_id()\fR" 4 -.el .IP "\f(CW$change\fR\->\fInode_rev_id()\fR" 4 -.IX Item "$change->node_rev_id()" -Node revision id of changed path. A \f(CW\*(C`_p_svn_fs_id_t\*(C'\fR object. -.ie n .IP "$change\->\fIprop_mod()\fR" 4 -.el .IP "\f(CW$change\fR\->\fIprop_mod()\fR" 4 -.IX Item "$change->prop_mod()" -True if the properties were modified. -.ie n .IP "$change\->\fItext_mod()\fR" 4 -.el .IP "\f(CW$change\fR\->\fItext_mod()\fR" 4 -.IX Item "$change->text_mod()" -True if the text (content) was modified. diff --git a/extra/subversion/pkgnone/SVN::Ra.0 b/extra/subversion/pkgnone/SVN::Ra.0 deleted file mode 100644 index 50db9ec3d..000000000 --- a/extra/subversion/pkgnone/SVN::Ra.0 +++ /dev/null @@ -1,670 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Ra 3" -.TH native::Ra 3 "2008-01-27" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Ra \- Subversion remote access functions -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 2 -\& use SVN::Core; -\& use SVN::Ra; -\& -\& my $ra = SVN::Ra\->new(\*(Aqfile:///tmp/svntest\*(Aq); -\& print $ra\->get_latest_revnum; -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Ra wraps the object-oriented \f(CW\*(C`svn_ra_plugin_t\*(C'\fR functions, -providing access to a Subversion repository though a \s-1URL\s0, using -whichever repository access module is appropriate. -.SH "SVN::Ra" -.IX Header "SVN::Ra" -.SS "SVN::Ra\->new(...)" -.IX Subsection "SVN::Ra->new(...)" -The constructor creates an \s-1RA\s0 object and calls \f(CW\*(C`open\*(C'\fR for it. Its parameters -are either a hash of options or a single value containing the \s-1URL\s0 of the -repository. Valid options are: -.IP "url" 4 -.IX Item "url" -The \s-1URL\s0 of the repository. -.IP "auth" 4 -.IX Item "auth" -An \f(CW\*(C`auth_baton\*(C'\fR could be given to the \s-1SVN::RA\s0 object. Defaults to an -\&\f(CW\*(C`auth_provider\*(C'\fR with a \f(CW\*(C`username_provider\*(C'\fR. See SVN::Client for how to -create \f(CW\*(C`auth_baton\*(C'\fR. -.IP "pool" 4 -.IX Item "pool" -The pool for the \s-1RA\s0 session to use. Member functions will also be -called with this pool. Defaults to a newly created root pool. -.IP "config" 4 -.IX Item "config" -The config hash that could be obtained by calling -\&\f(CW\*(C`SVN::Core::config_get_config(undef)\*(C'\fR. -.IP "callback" 4 -.IX Item "callback" -The \f(CW\*(C`ra_callback\*(C'\fR namespace to use. Defaults to SVN::Ra::Callbacks. -.PP -The following examples will both do the same thing, with all the optional -arguments taking their defaults: -.PP -.Vb 2 -\& my $ra = SVN::Ra\->new(\*(Aqfile:///tmp/repos\*(Aq); -\& my $ra = SVN::Ra\->new(url => \*(Aqfile:///tmp/repos\*(Aq); -.Ve -.SS "\s-1METHODS\s0" -.IX Subsection "METHODS" -Please consult the svn_ra.h section in the Subversion \s-1API\s0. Member -functions of \f(CW\*(C`svn_ra_plugin_t\*(C'\fR can be called as methods of SVN::Ra -objects, with the \f(CW\*(C`session_baton\*(C'\fR and \f(CW\*(C`pool\*(C'\fR arguments omitted. -.ie n .IP "$ra\->change_rev_prop($revnum, $name, $value)" 4 -.el .IP "\f(CW$ra\fR\->change_rev_prop($revnum, \f(CW$name\fR, \f(CW$value\fR)" 4 -.IX Item "$ra->change_rev_prop($revnum, $name, $value)" -Sets the revision (unversioned) property \f(CW$name\fR to \f(CW$value\fR on -revision \f(CW$revnum\fR, or removes the property if \f(CW$value\fR is undef. -.Sp -.Vb 1 -\& $ra\->change_rev_prop(123, \*(Aqsvn:log\*(Aq, \*(AqNew log message.\*(Aq); -.Ve -.Sp -Of course this will only work if there is a \f(CW\*(C`pre\-revprop\-change\*(C'\fR -hook available. -.ie n .IP "$ra\->check_path($path, $revnum)" 4 -.el .IP "\f(CW$ra\fR\->check_path($path, \f(CW$revnum\fR)" 4 -.IX Item "$ra->check_path($path, $revnum)" -Kind of node at \f(CW$path\fR in revision \f(CW$revnum\fR. A number which matches one -of these constants: -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.ie n .IP "$ra\->do_diff($revision, $target, $recurse, $ignore_ancestry, $versus_url, $editor)" 4 -.el .IP "\f(CW$ra\fR\->do_diff($revision, \f(CW$target\fR, \f(CW$recurse\fR, \f(CW$ignore_ancestry\fR, \f(CW$versus_url\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->do_diff($revision, $target, $recurse, $ignore_ancestry, $versus_url, $editor)" -.PD 0 -.ie n .IP "$ra\->do_diff2($revision, $target, $recurse, $ignore_ancestry, $text_deltas, $versus_url, $editor)" 4 -.el .IP "\f(CW$ra\fR\->do_diff2($revision, \f(CW$target\fR, \f(CW$recurse\fR, \f(CW$ignore_ancestry\fR, \f(CW$text_deltas\fR, \f(CW$versus_url\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->do_diff2($revision, $target, $recurse, $ignore_ancestry, $text_deltas, $versus_url, $editor)" -.PD -Both of these return a SVN::Ra::Reporter with which you can describe -a working copy. It will then call methods on \f(CW$editor\fR to indicates -the differences between the repository and the working copy. -.Sp -The \f(CW\*(C`do_diff2\*(C'\fR method was added in Subversion\ 1.4. It adds the -\&\f(CW$text_deltas\fR option, which if false disables the generation of text -deltas on the editor. With \f(CW\*(C`do_diff\*(C'\fR text deltas are always generated. -.Sp -.Vb 4 -\& my $reporter = $ra\->do_diff(1, \*(Aq\*(Aq, 1, 0, $repos_url, -\& MyEditor\->new); -\& $reporter\->set_path(...); -\& $reporter\->finish_report; -.Ve -.ie n .IP "$ra\->do_status($target, $revision, $recurse, $editor)" 4 -.el .IP "\f(CW$ra\fR\->do_status($target, \f(CW$revision\fR, \f(CW$recurse\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->do_status($target, $revision, $recurse, $editor)" -Returns a SVN::Ra::Reporter to which you can describe the status of -a working copy. It will then call methods on \f(CW$editor\fR to describe -the current status of the working copy compared to the repository. -.ie n .IP "$ra\->do_switch($revnum, $target, $recurse, $repos_url, $editor)" 4 -.el .IP "\f(CW$ra\fR\->do_switch($revnum, \f(CW$target\fR, \f(CW$recurse\fR, \f(CW$repos_url\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->do_switch($revnum, $target, $recurse, $repos_url, $editor)" -Returns a SVN::Ra::Reporter with which you can describe a working copy. -It will then call methods on \f(CW$editor\fR to indicate how to adjust the working -copy to switch it to revision \f(CW$revnum\fR of \f(CW$repos_url\fR. -.ie n .IP "$ra\->do_update($revision_to_update_to, $target, $recurse, $editor)" 4 -.el .IP "\f(CW$ra\fR\->do_update($revision_to_update_to, \f(CW$target\fR, \f(CW$recurse\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->do_update($revision_to_update_to, $target, $recurse, $editor)" -Returns a SVN::Ra::Reporter object. Call methods on the reporter to -describe the current state of your working copy (or whatever you're -updating). After calling the reporter's \f(CW\*(C`finish_report()\*(C'\fR method, -Subversion will generate calls to your \f(CW$editor\fR to describe the -differences between what you already have and the state of the repository in -\&\f(CW$revision_to_update_to\fR. -.Sp -To update to the latest revision, pass \f(CW$SVN::Core::INVALID_REVNUM\fR for -the first argument. -.Sp -\&\f(CW$target\fR should be the path to the part of the repository you are -interested in. You won't be given information about changes outside this -path. If you want everything, pass an empty string. -.Sp -If \f(CW$recurse\fR is true and the target is a directory, update -recursively; otherwise, update just the target and its immediate -entries, but not its child directories (if any). -.Sp -All paths are relative to the \s-1URL\s0 used to open \f(CW$ra\fR. -.Sp -The caller may not perform any \s-1RA\s0 operations using \f(CW$ra\fR before -finishing the report, and may not perform any \s-1RA\s0 operations using -\&\f(CW$ra\fR from within the editing operations of \f(CW$editor\fR. -.Sp -This example shows the simplest update, where the client tells the reporter -that it has nothing to start with: -.Sp -.Vb 3 -\& my $reporter = $ra\->do_update($revnum, \*(Aq\*(Aq, 1, MyEditor\->new); -\& $reporter\->set_path(\*(Aq\*(Aq, 0, 1, undef); -\& $reporter\->finish_report; -.Ve -.ie n .IP "$ra\->get_commit_editor($logmsg, $callback, $callback_baton, $lock_tokens, $keep_locks)" 4 -.el .IP "\f(CW$ra\fR\->get_commit_editor($logmsg, \f(CW$callback\fR, \f(CW$callback_baton\fR, \f(CW$lock_tokens\fR, \f(CW$keep_locks\fR)" 4 -.IX Item "$ra->get_commit_editor($logmsg, $callback, $callback_baton, $lock_tokens, $keep_locks)" -.PD 0 -.ie n .IP "$ra\->get_commit_editor2($logmsg, $callback, $callback_baton, $lock_tokens, $keep_locks)" 4 -.el .IP "\f(CW$ra\fR\->get_commit_editor2($logmsg, \f(CW$callback\fR, \f(CW$callback_baton\fR, \f(CW$lock_tokens\fR, \f(CW$keep_locks\fR)" 4 -.IX Item "$ra->get_commit_editor2($logmsg, $callback, $callback_baton, $lock_tokens, $keep_locks)" -.PD -Return an opaque editor object for committing a new revision to the -repository. The return values should be passed to the -SVN::Delta::Editor constructor to create an -editor object you can actually use. For example: -.Sp -.Vb 4 -\& my $editor = SVN::Delta::Editor\->new( -\& $ra\->get_commit_editor( -\& "I\*(Aqm going to commit some changes from within my Perl code.", -\& \e&commit_callback, undef, {}, 0)); -.Ve -.Sp -Now that you've got your editor you can call methods on it to describe -changes in the tree you want to make, such as adding directories, changing -file contents, etc. See SVN::Delta for documentation of the editor -interface. -.Sp -The \f(CW$callback\fR function will be called during your call to the -\&\f(CW\*(C`$ed\->close_edit()\*(C'\fR method, after the commit has succeeded. It will -not be called if there were no changes to commit. If you don't need it, -pass undef instead of a code ref. -.Sp -\&\f(CW\*(C`get_commit_editor2\*(C'\fR is identical to \f(CW\*(C`get_commit_editor\*(C'\fR except for -the information passed to the callback function. The new version, added -in Subversion\ 1.4, will pass the callback a single value (\s-1TODO:\s0 I -can' test this, but it's probably an object or hash ref) which contains -all the information. It also includes the error message from the -post-commit hook script, which is not available with \f(CW\*(C`get_commit_editor\*(C'\fR. -.Sp -The callback for the original version will be passed three arguments: -.RS 4 -.IP "\(bu" 4 -Number of the new revision. -.IP "\(bu" 4 -Date and time that the revision was committed, which will be exactly -the same value as its \f(CW\*(C`svn:date\*(C'\fR revision property. It will be in -this format: \f(CW\*(C`2006\-04\-05T12:17:48.180320Z\*(C'\fR -.IP "\(bu" 4 -The name of the author who committed the revision, which will be the same -as the \f(CW\*(C`svn:author\*(C'\fR revision property. -.RE -.RS 4 -.Sp -The undef in the argument list in the example above is the baton which is -meant to be passed to the commit callback, but it isn't. This isn't a -problem since you can supply a closure as the callback so that it can get to -whatever variables you need. -.Sp -The \f(CW$logmsg\fR value should be a string which will be stored in the -\&\f(CW\*(C`svn:log\*(C'\fR revision property. If undef is passed instead then the -new revision won't have a \f(CW\*(C`svn:log\*(C'\fR property. -.Sp -\&\f(CW$lock_tokens\fR should be a reference to a hash mapping the paths to -lock tokens to use for them. I seems that with Subversion\ 1.2 this is -required, so if you aren't using any locks simply pass \f(CW\*(C`{}\*(C'\fR. In -Subversion\ 1.3.1 though it seems to be necessary to \fInot\fR pass this -argument at all. -.Sp -If \f(CW$keep_locks\fR is true then locks on the files committed won't be -released by the commit. -.Sp -The \f(CW\*(C`get_commit_editor()\*(C'\fR method itself returns a list of two items, the -first of which (a \f(CW\*(C`_p_svn_delta_editor_t\*(C'\fR object) is the actual editor. -The second is the editor baton. Neither is of any use without wrapping the -pair of them in a SVN::Delta::Editor. -.RE -.ie n .IP "$ra\->get_dated_revision($time)" 4 -.el .IP "\f(CW$ra\fR\->get_dated_revision($time)" 4 -.IX Item "$ra->get_dated_revision($time)" -\&\s-1TODO\s0 \- this doesn't seem to work in Subversion\ 1.3. -.ie n .IP "$ra\->get_dir($path, $revnum)" 4 -.el .IP "\f(CW$ra\fR\->get_dir($path, \f(CW$revnum\fR)" 4 -.IX Item "$ra->get_dir($path, $revnum)" -.PD 0 -.ie n .IP "$ra\->get_dir2($path, $revnum, $dirent_fields)" 4 -.el .IP "\f(CW$ra\fR\->get_dir2($path, \f(CW$revnum\fR, \f(CW$dirent_fields\fR)" 4 -.IX Item "$ra->get_dir2($path, $revnum, $dirent_fields)" -.PD -Fetch the directory entries and properties of the directory at \f(CW$path\fR -in revision \f(CW$revnum\fR -.Sp -A list of three values are returned. The first is a reference to a hash -of directory entries. The keys are the names of all the files and -directories in \f(CW$path\fR (not full paths, just the filenames). The values -are _p_svn_dirent_t objects, with all their -fields filled in. The third parameter to \f(CW\*(C`get_dir2\*(C'\fR allows you to -select particular fields. \s-1TODO:\s0 I don't think the constants you'd use -to construct the \f(CW$dirent_fields\fR value are provided in the Perl \s-1API\s0. -.Sp -The second value is a number, which is only valid if \f(CW$revnum\fR is -\&\f(CW$SVN::Core::INVALID_REVNUM\fR. If that is the case then the latest revision -will be fetched, and the revision number (the \s-1HEAD\s0 revision) will be returned -as the second value. Otherwise the revision number returned will be -completely arbitrary. -.Sp -The third value returned will be a reference to a hash of all properties -on the directory. This means \fIall\fR properties: not just ones controlled by -the user and stored in the repository fs, but non-tweakable ones -generated by the \s-1SCM\s0 system itself (e.g. 'wcprops', 'entryprops', etc). -.Sp -.Vb 3 -\& my ($dirents, undef, $props) = $ra\->get_dir(\*(Aq/trunk/dir\*(Aq, 123); -\& my ($dirents, $fetched_revnum, $props) = $ra\->get_dir( -\& \*(Aq/trunk/dir\*(Aq, $SVN::Core::INVALID_REVNUM); -.Ve -.ie n .IP "$ra\->get_file($path, $revnum, $fh)" 4 -.el .IP "\f(CW$ra\fR\->get_file($path, \f(CW$revnum\fR, \f(CW$fh\fR)" 4 -.IX Item "$ra->get_file($path, $revnum, $fh)" -Fetch the contents and properties of the file at \f(CW$path\fR in revision -\&\f(CW$revnum\fR. \f(CW$fh\fR should be a Perl filehandle, to which the contents -of the file will be written, or undef if you don't need the file contents. -.Sp -Note that \f(CW$path\fR cannot end in a slash unless it is just '/'. -.Sp -A list of two values are returned. The first is a number, which is only -valid if \f(CW$revnum\fR is \f(CW$SVN::Core::INVALID_REVNUM\fR. If that is the -case then the latest revision will be fetched, and the revision number -(the \s-1HEAD\s0 revision) will be returned as the first value. Otherwise the -number returned will be completely arbitrary. -.Sp -The second value returned will be a reference to a hash of all properties -on the file. This means \fIall\fR properties: not just ones controlled by -the user and stored in the repository fs, but non-tweakable ones -generated by the \s-1SCM\s0 system itself (e.g. 'wcprops', 'entryprops', etc). -.Sp -.Vb 2 -\& my (undef, $props) = $ra\->get_file( -\& \*(Aq/trunk/foo\*(Aq, 123, undef); -\& -\& open my $fh, \*(Aq>\*(Aq, \*(Aqtmp_out\*(Aq -\& or die "error opening file: $!"; -\& my (undef, $props) = $ra\->get_file( -\& \*(Aq/trunk/foo\*(Aq, 123, $fh); -\& -\& my ($fetched_revnum, $props) = $ra\->get_file( -\& \*(Aq/trunk/foo\*(Aq, $SVN::Core::INVALID_REVNUM, $fh); -.Ve -.ie n .IP "$ra\->get_file_revs($path, $start, $end, \e&callback)" 4 -.el .IP "\f(CW$ra\fR\->get_file_revs($path, \f(CW$start\fR, \f(CW$end\fR, \e&callback)" 4 -.IX Item "$ra->get_file_revs($path, $start, $end, &callback)" -\&\s-1TODO\s0 \- doesn't seem to work in Subversion 1.3 -.ie n .IP "$ra\->get_latest_revnum" 4 -.el .IP "\f(CW$ra\fR\->get_latest_revnum" 4 -.IX Item "$ra->get_latest_revnum" -Return the number of the latest revision in the repository (\s-1HEAD\s0). -.ie n .IP "$ra\->get_locations($path, $peg_revnum, \e@location_revisions)" 4 -.el .IP "\f(CW$ra\fR\->get_locations($path, \f(CW$peg_revnum\fR, \e@location_revisions)" 4 -.IX Item "$ra->get_locations($path, $peg_revnum, @location_revisions)" -\&\s-1TODO\s0 \- doesn't seem to work in Subversion 1.3 -.ie n .IP "$ra\->get_lock($path)" 4 -.el .IP "\f(CW$ra\fR\->get_lock($path)" 4 -.IX Item "$ra->get_lock($path)" -Returns a _p_svn_lock_t object containing -information about the lock at \f(CW$path\fR, or undef if that path isn't -currently locked. -.ie n .IP "$ra\->get_locks($path)" 4 -.el .IP "\f(CW$ra\fR\->get_locks($path)" 4 -.IX Item "$ra->get_locks($path)" -\&\s-1TODO\s0 \- doesn't seem to work in Subversion 1.3 -.ie n .IP "$ra\->get_log(\e@paths, $start, $end, $limit, $discover_changed_paths, $strict_node_history, \e&callback)" 4 -.el .IP "\f(CW$ra\fR\->get_log(\e@paths, \f(CW$start\fR, \f(CW$end\fR, \f(CW$limit\fR, \f(CW$discover_changed_paths\fR, \f(CW$strict_node_history\fR, \e&callback)" 4 -.IX Item "$ra->get_log(@paths, $start, $end, $limit, $discover_changed_paths, $strict_node_history, &callback)" -For \f(CW$limit\fR revisions from \f(CW$start\fR to \f(CW$end\fR, invoke the receiver -\&\f(CW\*(C`callback()\*(C'\fR with information about the changes made in the revision -(log message, time, etc.). -.Sp -The caller may not invoke any \s-1RA\s0 operations using \f(CW$ra\fR from -within the callback function. They may work in some situations, but -it's not guaranteed. -.Sp -The first argument can be either a single string or a reference to an -array of strings. Each of these indicates a path in the repository -which you are interested in. Revisions which don't change any of these -paths (or files below them) will be ignored. Simply pass '' if you don't -want to limit by path. -.Sp -\&\f(CW$start\fR and \f(CW$end\fR should be revision numbers. If \f(CW$start\fR has a lower -value than \f(CW$end\fR then the revisions will be produced in ascending order -(r1, r2, ...), otherwise in descending order. If \f(CW$start\fR is -\&\f(CW$SVN::Core::INVALID_REVNUM\fR then it defaults to the latest revision. -.Sp -\&\s-1TODO\s0 \- the previous sentence should also be true of \f(CW$end\fR, but doing that -gets an error message in Subversion 1.3. -.Sp -\&\f(CW$limit\fR is a number indicating the maximum number of times that the -receiver \f(CW\*(C`callback()\*(C'\fR should be called. If it is 0, there will be no -limit. -.Sp -If \f(CW$discover_changed_paths\fR is true, then information about which changes -were made to which paths is passed to \f(CW\*(C`callback()\*(C'\fR. -.Sp -If \f(CW$strict_node_history\fR is true, copy history will not be traversed -(if any exists) when harvesting the revision logs for each path. -.Sp -The callback function will be given the following arguments: -.RS 4 -.IP "\(bu" 4 -A reference to a hash of paths changed by the revision. Only passed if -\&\f(CW$discover_changed_paths\fR is true, otherwise undef is passed in its -place. -.Sp -The hash's keys are the full paths to the files and directories changed. -The values are _p_svn_log_changed_path_t -objects. -.IP "\(bu" 4 -Revision number. -.IP "\(bu" 4 -Name of user who made the change, or undef if not known. -.IP "\(bu" 4 -Date and time the revision was committed. -.IP "\(bu" 4 -Log message as a single string, or undef. -.IP "\(bu" 4 -A pool object. -.RE -.RS 4 -.Sp -This example prints some of the information received in a simple format, -showing which paths were changed in each revision, for all revisions starting -from the first: -.Sp -.Vb 2 -\& $ra\->get_log(\*(Aq\*(Aq, 1, $ra\->get_latest_revnum, 0, 1, 0, -\& \e&log_callback); -\& -\& sub log_callback -\& { -\& my ($paths, $revnum, $user, $datetime, $logmsg) = @_; -\& print "$datetime \- $user \- r$revnum\en"; -\& -\& while (my ($path, $changes) = each %$paths) { -\& print $changes\->action, " $path\en"; -\& if ($changes\->copyfrom_path) { -\& print " from ", $changes\->copyfrom_path, -\& " r", $changes\->copyfrom_rev, "\en" -\& } -\& } -\& -\& print "\en"; -\& } -.Ve -.RE -.ie n .IP "$ra\->get_repos_root" 4 -.el .IP "\f(CW$ra\fR\->get_repos_root" 4 -.IX Item "$ra->get_repos_root" -Returns the repository's root \s-1URL\s0. The value will not include -a trailing '/'. The returned \s-1URL\s0 is guaranteed to be a prefix of the -session's \s-1URL\s0. -.ie n .IP "$ra\->get_uuid" 4 -.el .IP "\f(CW$ra\fR\->get_uuid" 4 -.IX Item "$ra->get_uuid" -Returns the repository's \s-1UUID\s0 as a string. -.ie n .IP "$ra\->lock(\e%path_revs, $comment, $steal_lock, \e&callback)" 4 -.el .IP "\f(CW$ra\fR\->lock(\e%path_revs, \f(CW$comment\fR, \f(CW$steal_lock\fR, \e&callback)" 4 -.IX Item "$ra->lock(%path_revs, $comment, $steal_lock, &callback)" -\&\s-1TODO\s0 \- doesn't seem to work in Subversion 1.3.2 -.ie n .IP "$ra\->reparent($url)" 4 -.el .IP "\f(CW$ra\fR\->reparent($url)" 4 -.IX Item "$ra->reparent($url)" -Change the root \s-1URL\s0 of the session in \f(CW$ra\fR to point to a different -path. \f(CW$url\fR must be in the same repository as the one \f(CW$ra\fR is -already accessing. -.Sp -New in Subversion\ 1.4. -.ie n .IP "$ra\->replay($revnum, $low_water_mark, $send_deltas, $editor)" 4 -.el .IP "\f(CW$ra\fR\->replay($revnum, \f(CW$low_water_mark\fR, \f(CW$send_deltas\fR, \f(CW$editor\fR)" 4 -.IX Item "$ra->replay($revnum, $low_water_mark, $send_deltas, $editor)" -Call methods on \f(CW$editor\fR to describe the changes made in the revisions -after \f(CW$low_water_mark\fR, up to revision \f(CW$revnum\fR. This is like using -\&\f(CW\*(C`do_update()\*(C'\fR, except that it doesn't return a reporter object, and so -you don't have to describe a working copy to it. It assumes that you've -already got everything up to \f(CW$low_water_mark\fR. -.Sp -If \f(CW$send_deltas\fR is true then file contents and property values will -be supplied, otherwise just filename changes. -.Sp -New in Subversion\ 1.4. -.ie n .IP "$ra\->rev_prop($revnum, $name)" 4 -.el .IP "\f(CW$ra\fR\->rev_prop($revnum, \f(CW$name\fR)" 4 -.IX Item "$ra->rev_prop($revnum, $name)" -Return the value of the unversioned property \f(CW$name\fR from revision \f(CW$revnum\fR. -Returns undef if there is no such property. -.Sp -.Vb 1 -\& print $ra\->rev_prop(123, \*(Aqsvn:date\*(Aq); -.Ve -.ie n .IP "$ra\->rev_proplist($revnum)" 4 -.el .IP "\f(CW$ra\fR\->rev_proplist($revnum)" 4 -.IX Item "$ra->rev_proplist($revnum)" -Returns a reference to a hash containing all the unversioned properties -of revision \f(CW$revnum\fR. -.Sp -.Vb 2 -\& my $props = $ra\->rev_proplist(123); -\& print $props\->{\*(Aqsvn:log\*(Aq}; -.Ve -.ie n .IP "$ra\->stat($path, $revnum)" 4 -.el .IP "\f(CW$ra\fR\->stat($path, \f(CW$revnum\fR)" 4 -.IX Item "$ra->stat($path, $revnum)" -Returns a _p_svn_dirent_t object containing -information about the file at \f(CW$path\fR in revision \f(CW$revnum\fR. -.ie n .IP "$ra\->unlock(\e%path_tokens, $break_lock, \e&callback)" 4 -.el .IP "\f(CW$ra\fR\->unlock(\e%path_tokens, \f(CW$break_lock\fR, \e&callback)" 4 -.IX Item "$ra->unlock(%path_tokens, $break_lock, &callback)" -\&\s-1TODO\s0 \- doesn't seem to work in Subversion 1.3.2 -.SH "SVN::Ra::Reporter" -.IX Header "SVN::Ra::Reporter" -The SVN::Ra methods \f(CW\*(C`do_diff\*(C'\fR, \f(CW\*(C`do_status\*(C'\fR, \f(CW\*(C`do_switch\*(C'\fR, and -\&\f(CW\*(C`do_update\*(C'\fR all return a SVN::Ra::Reporter object, which can be used -to describe the working copy (or other available data) which the client has. -Subversion uses this to figure out what new information should be provided -through a tree delta editor. -.PP -Objects of this class are actually simple wrappers around underlying -\&\f(CW\*(C`svn_ra_reporter2_t\*(C'\fR objects and their associated baton. -.SS "\s-1METHODS\s0" -.IX Subsection "METHODS" -.ie n .IP "$reporter\->set_path($path, $revision, $start_empty, $lock_token, $pool)" 4 -.el .IP "\f(CW$reporter\fR\->set_path($path, \f(CW$revision\fR, \f(CW$start_empty\fR, \f(CW$lock_token\fR, \f(CW$pool\fR)" 4 -.IX Item "$reporter->set_path($path, $revision, $start_empty, $lock_token, $pool)" -Describe a working copy \f(CW$path\fR as being at a particular \f(CW$revision\fR. -.Sp -If \f(CW$start_empty\fR is true and \f(CW$path\fR is a directory, the -implementor should assume the directory has no entries or properties. -.Sp -This will \fIoverride\fR any previous \f(CW\*(C`set_path()\*(C'\fR calls made on parent -paths. \f(CW$path\fR is relative to the \s-1URL\s0 specified in \f(CW\*(C`SVN::Ra\->open()\*(C'\fR -or \f(CW\*(C`SVN::Ra\->new()\*(C'\fR. -.Sp -If \f(CW$lock_token\fR is not undef, it is the lock token for \f(CW$path\fR in the \s-1WC\s0. -.Sp -All temporary allocations are done in \f(CW$pool\fR. -.ie n .IP "$reporter\->delete_path($path, $pool)" 4 -.el .IP "\f(CW$reporter\fR\->delete_path($path, \f(CW$pool\fR)" 4 -.IX Item "$reporter->delete_path($path, $pool)" -Describe a working copy \f(CW$path\fR as missing. -.Sp -All temporary allocations are done in \f(CW$pool\fR. -.ie n .IP "$reporter\->link_path($path, $url, $revision, $start_empty, $lock_token, $pool)" 4 -.el .IP "\f(CW$reporter\fR\->link_path($path, \f(CW$url\fR, \f(CW$revision\fR, \f(CW$start_empty\fR, \f(CW$lock_token\fR, \f(CW$pool\fR)" 4 -.IX Item "$reporter->link_path($path, $url, $revision, $start_empty, $lock_token, $pool)" -Like \f(CW\*(C`set_path()\*(C'\fR, but differs in that \f(CW$path\fR in the working copy -(relative to the root of the report driver) isn't a reflection of -\&\f(CW$path\fR in the repository (relative to the \s-1URL\s0 specified when -opening the \s-1RA\s0 layer), but is instead a reflection of a different -repository \f(CW$url\fR at \f(CW$revision\fR. -.Sp -If \f(CW$start_empty\fR is true and \f(CW$path\fR is a directory, -the implementor should assume the directory has no entries or props. -.Sp -If \f(CW$lock_token\fR is not undef, it is the lock token for \f(CW$path\fR in the \s-1WC\s0. -.Sp -All temporary allocations are done in \f(CW$pool\fR. -.ie n .IP "$reporter\->finish_report($pool)" 4 -.el .IP "\f(CW$reporter\fR\->finish_report($pool)" 4 -.IX Item "$reporter->finish_report($pool)" -Call this when the state report is finished; any directories -or files not explicitly 'set' are assumed to be at the -baseline revision originally passed into \f(CW\*(C`do_update()\*(C'\fR. No other -reporting functions, including \f(CW\*(C`abort_report()\*(C'\fR, should be called after -calling this function. -.ie n .IP "$reporter\->abort_report($pool)" 4 -.el .IP "\f(CW$reporter\fR\->abort_report($pool)" 4 -.IX Item "$reporter->abort_report($pool)" -If an error occurs during a report, this method should cause the -filesystem transaction to be aborted and cleaned up. No other reporting -methods should be called after calling this method. -.SH "SVN::Ra::Callbacks" -.IX Header "SVN::Ra::Callbacks" -This is the wrapper class for \f(CW\*(C`svn_ra_callback_t\*(C'\fR. To supply custom -callbacks to SVN::Ra, subclass this class and override the member -functions. -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. diff --git a/extra/subversion/pkgnone/SVN::Repos.0 b/extra/subversion/pkgnone/SVN::Repos.0 deleted file mode 100644 index febe78659..000000000 --- a/extra/subversion/pkgnone/SVN::Repos.0 +++ /dev/null @@ -1,398 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Repos 3" -.TH native::Repos 3 "2008-03-17" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Repos \- Subversion repository functions -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -.Vb 3 -\& use SVN::Core; -\& use SVN::Repos; -\& use SVN::Fs; -\& -\& my $repos = SVN::Repos::open(\*(Aq/path/to/repos\*(Aq); -\& print $repos\->fs()\->youngest_rev; -.Ve -.SH "DESCRIPTION" -.IX Header "DESCRIPTION" -SVN::Repos wraps the object-oriented \f(CW\*(C`svn_repos_t\*(C'\fR functions, providing -access to a Subversion repository on the local filesystem. -.SS "\s-1CONSTRUCTORS\s0" -.IX Subsection "CONSTRUCTORS" -.IP "SVN::Repos::open($path)" 4 -.IX Item "SVN::Repos::open($path)" -This function opens an existing repository, and returns an -\&\f(CW\*(C`SVN::Repos\*(C'\fR object. -.ie n .IP "create($path, undef, undef, $config, $fs_config)" 4 -.el .IP "create($path, undef, undef, \f(CW$config\fR, \f(CW$fs_config\fR)" 4 -.IX Item "create($path, undef, undef, $config, $fs_config)" -This function creates a new repository, and returns an \f(CW\*(C`SVN::Repos\*(C'\fR -object. -.SS "\s-1METHODS\s0" -.IX Subsection "METHODS" -.ie n .IP "$repos\->dump_fs($dump_fh, $feedback_fh, $start_rev, $end_rev, $incremental, $cancel_func, $cancel_baton)" 4 -.el .IP "\f(CW$repos\fR\->dump_fs($dump_fh, \f(CW$feedback_fh\fR, \f(CW$start_rev\fR, \f(CW$end_rev\fR, \f(CW$incremental\fR, \f(CW$cancel_func\fR, \f(CW$cancel_baton\fR)" 4 -.IX Item "$repos->dump_fs($dump_fh, $feedback_fh, $start_rev, $end_rev, $incremental, $cancel_func, $cancel_baton)" -.PD 0 -.ie n .IP "$repos\->dump_fs2($dump_fh, $feedback_fh, $start_rev, $end_rev, $incremental, $deltify, $cancel_func, $cancel_baton)" 4 -.el .IP "\f(CW$repos\fR\->dump_fs2($dump_fh, \f(CW$feedback_fh\fR, \f(CW$start_rev\fR, \f(CW$end_rev\fR, \f(CW$incremental\fR, \f(CW$deltify\fR, \f(CW$cancel_func\fR, \f(CW$cancel_baton\fR)" 4 -.IX Item "$repos->dump_fs2($dump_fh, $feedback_fh, $start_rev, $end_rev, $incremental, $deltify, $cancel_func, $cancel_baton)" -.PD -Create a dump file of the repository from revision \f(CW$start_rev\fR to \f(CW$end_rev\fR -, store it into the filehandle \f(CW$dump_fh\fR, and write feedback on the progress -of the operation to filehandle \f(CW$feedback_fh\fR. -.Sp -If \f(CW$incremental\fR is \s-1TRUE\s0, the first revision dumped will be a diff -against the previous revision (usually it looks like a full dump of -the tree). -.Sp -If \f(CW$use_deltas\fR is \s-1TRUE\s0, output only node properties which have -changed relative to the previous contents, and output text contents -as svndiff data against the previous contents. Regardless of how -this flag is set, the first revision of a non-incremental dump will -be done with full plain text. A dump with \f(CW@a\fR use_deltas set cannot -be loaded by Subversion 1.0.x. -.Sp -According to svn_repos.h, the \f(CW$cancel_func\fR is a function that is called -periodically and given \f(CW$cancel_baton\fR as a parameter to determine whether -the client wishes to cancel the dump. You must supply \f(CW\*(C`undef\*(C'\fR at the very -least. -.Sp -Example: -.Sp -.Vb 2 -\& use SVN::Core; -\& use SVN::Repos; -\& -\& my $repos = SVN::Repos::open (\*(Aq/repo/sandbox\*(Aq); -\& -\& open my $fh, ">/tmp/tmp.dump" or die "Cannot open file: $!\en"; -\& -\& my $start_rev = 10; -\& my $end_rev = 20; -\& my $incremental = 1; -\& my $deltify = 1; -\& -\& $repos\->dump_fs2($fh, \e*STDOUT, # Dump file => $fh, Feedback => STDOUT -\& $start_rev, $end_rev, # Revision Range -\& $incremental, $deltify, # Options -\& undef, undef); # Cancel Function -\& -\& close $fh; -.Ve -.ie n .IP "$repos\->load_fs($dumpfile_fh, $feedback_fh, $uuid_action, $parent_dir, $cancel_func, $cancel_baton);" 4 -.el .IP "\f(CW$repos\fR\->load_fs($dumpfile_fh, \f(CW$feedback_fh\fR, \f(CW$uuid_action\fR, \f(CW$parent_dir\fR, \f(CW$cancel_func\fR, \f(CW$cancel_baton\fR);" 4 -.IX Item "$repos->load_fs($dumpfile_fh, $feedback_fh, $uuid_action, $parent_dir, $cancel_func, $cancel_baton);" -.PD 0 -.ie n .IP "$repos\->load_fs2($dumpfile_fh, $feedback_fh, $uuid_action, $parent_dir, $use_pre_commit_hook, $use_post_commit_hook, $cancel_func, $cancel_baton);" 4 -.el .IP "\f(CW$repos\fR\->load_fs2($dumpfile_fh, \f(CW$feedback_fh\fR, \f(CW$uuid_action\fR, \f(CW$parent_dir\fR, \f(CW$use_pre_commit_hook\fR, \f(CW$use_post_commit_hook\fR, \f(CW$cancel_func\fR, \f(CW$cancel_baton\fR);" 4 -.IX Item "$repos->load_fs2($dumpfile_fh, $feedback_fh, $uuid_action, $parent_dir, $use_pre_commit_hook, $use_post_commit_hook, $cancel_func, $cancel_baton);" -.PD -Loads a dumpfile specified by the \f(CW$dumpfile_fh\fR filehandle into the repository. -If the dumpstream contains copy history that is unavailable in the repository, -an error will be thrown. -.Sp -The repository's \s-1UUID\s0 will be updated iff the dumpstream contains a \s-1UUID\s0 and -\&\f(CW$uuid_action\fR is not equal to \f(CW$SVN::Repos::load_uuid_ignore\fR and either the -repository contains no revisions or \f(CW$uuid_action\fR is equal to -\&\f(CW$SVN::Repos::load_uuid_force\fR. -.Sp -If the dumpstream contains no \s-1UUID\s0, then \f(CW$uuid_action\fR is -ignored and the repository \s-1UUID\s0 is not touched. -.Sp -If \f(CW$parent_dir\fR is not null, then the parser will reparent all the -loaded nodes, from root to \f(CW@a\fR parent_dir. The directory \f(CW$parent_dir\fR -must be an existing directory in the repository. -.Sp -If \f(CW$use_pre_commit_hook\fR is set, call the repository's pre-commit -hook before committing each loaded revision. -.Sp -If \f(CW$use_post_commit_hook\fR is set, call the repository's -post-commit hook after committing each loaded revision. -.Sp -If \f(CW$cancel_func\fR is not \s-1NULL\s0, it is called periodically with -\&\f(CW$cancel_baton\fR as argument to see if the client wishes to cancel -the load. -.Sp -You must at least provide undef for these parameters for the method call -to work. -.Sp -Example: - use SVN::Core; - use SVN::Repos; -.Sp -.Vb 1 -\& my $repos = SVN::Repos::open (\*(Aq/repo/test_repo\*(Aq); -\& -\& open my $fh, "/repo/sandbox.dump" or die "Cannot open file: $!\en"; -\& -\& my $parent_dir = \*(Aq/\*(Aq; -\& my $use_pre_commit_hook = 0; -\& my $use_post_commit_hook = 0; -\& -\& $repos\->load_fs2($fh, \e*STDOUT, -\& $SVN::Repos::load_uuid_ignore, # Ignore uuid -\& $parent_dir, -\& $use_pre_commit_hook, # Use pre\-commit hook? -\& $use_post_commit_hook, # Use post\-commit hook? -\& undef, undef); -\& -\& -\& close $fh; -.Ve -.ie n .IP "$repos\->\fIfs()\fR" 4 -.el .IP "\f(CW$repos\fR\->\fIfs()\fR" 4 -.IX Item "$repos->fs()" -Returns the \f(CW\*(C`SVN::Fs\*(C'\fR object for this repository. -.ie n .IP "$repos\->get_logs([$path, ...], $start, $end, $discover_changed_paths, $strict_node_history, $receiver)" 4 -.el .IP "\f(CW$repos\fR\->get_logs([$path, ...], \f(CW$start\fR, \f(CW$end\fR, \f(CW$discover_changed_paths\fR, \f(CW$strict_node_history\fR, \f(CW$receiver\fR)" 4 -.IX Item "$repos->get_logs([$path, ...], $start, $end, $discover_changed_paths, $strict_node_history, $receiver)" -Iterates over all the revisions that affect the list of paths passed -as the first parameter, starting at \f(CW$start\fR, and ending at \f(CW$end\fR. -.Sp -\&\f(CW$receiver\fR is called for each change. The arguments to \f(CW$receiver\fR are: -.RS 4 -.ie n .IP "$self" 4 -.el .IP "\f(CW$self\fR" 4 -.IX Item "$self" -The \f(CW\*(C`SVN::Repos\*(C'\fR object. -.ie n .IP "$paths" 4 -.el .IP "\f(CW$paths\fR" 4 -.IX Item "$paths" -\&\f(CW\*(C`undef\*(C'\fR if \f(CW$discover_changed_paths\fR is false. Otherwise, contains a hash -of paths that have changed in this revision. -.ie n .IP "$rev" 4 -.el .IP "\f(CW$rev\fR" 4 -.IX Item "$rev" -The revision this change occured in. -.ie n .IP "$date" 4 -.el .IP "\f(CW$date\fR" 4 -.IX Item "$date" -The date and time the revision occured. -.ie n .IP "$msg" 4 -.el .IP "\f(CW$msg\fR" 4 -.IX Item "$msg" -The log message associated with this revision. -.ie n .IP "$pool" 4 -.el .IP "\f(CW$pool\fR" 4 -.IX Item "$pool" -An \f(CW\*(C`SVN::Pool\*(C'\fR object which may be used in the function. -.RE -.RS 4 -.Sp -If \f(CW$strict_node_history\fR is true then copies will not be traversed. -.RE -.SS "\s-1ADDITIONAL\s0 \s-1METHODS\s0" -.IX Subsection "ADDITIONAL METHODS" -The following methods work, but are not currently documented in this -file. Please consult the svn_repos.h section in the Subversion \s-1API\s0 -for more details. -.ie n .IP "$repos\->get_commit_editor(...)" 4 -.el .IP "\f(CW$repos\fR\->get_commit_editor(...)" 4 -.IX Item "$repos->get_commit_editor(...)" -.PD 0 -.ie n .IP "$repos\->get_commit_editor2(...)" 4 -.el .IP "\f(CW$repos\fR\->get_commit_editor2(...)" 4 -.IX Item "$repos->get_commit_editor2(...)" -.ie n .IP "$repos\->path(...)" 4 -.el .IP "\f(CW$repos\fR\->path(...)" 4 -.IX Item "$repos->path(...)" -.ie n .IP "$repos\->db_env(...)" 4 -.el .IP "\f(CW$repos\fR\->db_env(...)" 4 -.IX Item "$repos->db_env(...)" -.ie n .IP "$repos\->lock_dir(...)" 4 -.el .IP "\f(CW$repos\fR\->lock_dir(...)" 4 -.IX Item "$repos->lock_dir(...)" -.ie n .IP "$repos\->db_lockfile(...)" 4 -.el .IP "\f(CW$repos\fR\->db_lockfile(...)" 4 -.IX Item "$repos->db_lockfile(...)" -.ie n .IP "$repos\->hook_dir(...)" 4 -.el .IP "\f(CW$repos\fR\->hook_dir(...)" 4 -.IX Item "$repos->hook_dir(...)" -.ie n .IP "$repos\->start_commit_hook(...)" 4 -.el .IP "\f(CW$repos\fR\->start_commit_hook(...)" 4 -.IX Item "$repos->start_commit_hook(...)" -.ie n .IP "$repos\->pre_commit_hook(...)" 4 -.el .IP "\f(CW$repos\fR\->pre_commit_hook(...)" 4 -.IX Item "$repos->pre_commit_hook(...)" -.ie n .IP "$repos\->post_commit_hook(...)" 4 -.el .IP "\f(CW$repos\fR\->post_commit_hook(...)" 4 -.IX Item "$repos->post_commit_hook(...)" -.ie n .IP "$repos\->pre_revprop_change(...)" 4 -.el .IP "\f(CW$repos\fR\->pre_revprop_change(...)" 4 -.IX Item "$repos->pre_revprop_change(...)" -.ie n .IP "$repos\->post_revprop_change(...)" 4 -.el .IP "\f(CW$repos\fR\->post_revprop_change(...)" 4 -.IX Item "$repos->post_revprop_change(...)" -.ie n .IP "$repos\->dated_revision(...)" 4 -.el .IP "\f(CW$repos\fR\->dated_revision(...)" 4 -.IX Item "$repos->dated_revision(...)" -.ie n .IP "$repos\->fs_commit_txn(...)" 4 -.el .IP "\f(CW$repos\fR\->fs_commit_txn(...)" 4 -.IX Item "$repos->fs_commit_txn(...)" -.ie n .IP "$repos\->fs_being_txn_for_commit(...)" 4 -.el .IP "\f(CW$repos\fR\->fs_being_txn_for_commit(...)" 4 -.IX Item "$repos->fs_being_txn_for_commit(...)" -.ie n .IP "$repos\->fs_being_txn_for_update(...)" 4 -.el .IP "\f(CW$repos\fR\->fs_being_txn_for_update(...)" 4 -.IX Item "$repos->fs_being_txn_for_update(...)" -.ie n .IP "$repos\->fs_change_rev_prop(...)" 4 -.el .IP "\f(CW$repos\fR\->fs_change_rev_prop(...)" 4 -.IX Item "$repos->fs_change_rev_prop(...)" -.ie n .IP "$repos\->node_editor(...)" 4 -.el .IP "\f(CW$repos\fR\->node_editor(...)" 4 -.IX Item "$repos->node_editor(...)" -.ie n .IP "$repos\->dump_fs(...)" 4 -.el .IP "\f(CW$repos\fR\->dump_fs(...)" 4 -.IX Item "$repos->dump_fs(...)" -.ie n .IP "$repos\->load_fs(...)" 4 -.el .IP "\f(CW$repos\fR\->load_fs(...)" 4 -.IX Item "$repos->load_fs(...)" -.ie n .IP "$repos\->get_fs_build_parser(...)" 4 -.el .IP "\f(CW$repos\fR\->get_fs_build_parser(...)" 4 -.IX Item "$repos->get_fs_build_parser(...)" -.PD -.SH "AUTHORS" -.IX Header "AUTHORS" -Chia-liang Kao -.SH "COPYRIGHT" -.IX Header "COPYRIGHT" -Copyright (c) 2003\-2006 CollabNet. All rights reserved. -.PP -This software is licensed as described in the file \s-1COPYING\s0, which you -should have received as part of this distribution. The terms are also -available at http://subversion.tigris.org/license\-1.html. If newer -versions of this license are posted there, you may use a newer version -instead, at your option. -.PP -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -and logs, available at http://subversion.tigris.org/. diff --git a/extra/subversion/pkgnone/SVN::Wc.0 b/extra/subversion/pkgnone/SVN::Wc.0 deleted file mode 100644 index 69c92a492..000000000 --- a/extra/subversion/pkgnone/SVN::Wc.0 +++ /dev/null @@ -1,473 +0,0 @@ -.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "native::Wc 3" -.TH native::Wc 3 "2007-11-05" "perl v5.10.1" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SH "NAME" -SVN::Wc \- Subversion working copy functions -.SH "SYNOPSIS" -.IX Header "SYNOPSIS" -Incomplete -.SH "OBJECTS" -.IX Header "OBJECTS" -.SS "svn_wc_status_t" -.IX Subsection "svn_wc_status_t" -.ie n .IP "$wcstat\->\fIentry()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIentry()\fR" 4 -.IX Item "$wcstat->entry()" -A svn_wc_entry_t object for the item. Can be undef if not under version -control. -.ie n .IP "$wcstat\->\fItext_status()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fItext_status()\fR" 4 -.IX Item "$wcstat->text_status()" -An integer representing the status of the item's text. Can be one of the -\&\f(CW$SVN::Wc::Status::\fR* constants. -.ie n .IP "$wcstat\->\fIprop_status()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIprop_status()\fR" 4 -.IX Item "$wcstat->prop_status()" -An integer representing the status of the item's properties. Can be one of the -\&\f(CW$SVN::Wc::Status::\fR* constants. -.ie n .IP "$wcstat\->\fIlocked()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIlocked()\fR" 4 -.IX Item "$wcstat->locked()" -A boolean telling if the item is locked. A directory can be locked if a -working copy update was interrupted. -.ie n .IP "$wcstat\->\fIcopied()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIcopied()\fR" 4 -.IX Item "$wcstat->copied()" -A boolean telling if the item was copied. A file or directory can be copied if -it's scheduled for addition-with-history (or part of a subtree that is -scheduled as such). -.ie n .IP "$wcstat\->\fIswitched()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIswitched()\fR" 4 -.IX Item "$wcstat->switched()" -A boolean telling if the item was switched. A file or directory can be -switched if the switch command has been used. -.ie n .IP "$wcstat\->\fIrepos_text_status()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIrepos_text_status()\fR" 4 -.IX Item "$wcstat->repos_text_status()" -An integer representing the status of the item's text in the repository. Can -be one of the \f(CW$SVN::Wc::Status::\fR* constants. -.ie n .IP "$wcstat\->\fIrepos_prop_status()\fR" 4 -.el .IP "\f(CW$wcstat\fR\->\fIrepos_prop_status()\fR" 4 -.IX Item "$wcstat->repos_prop_status()" -An integer representing the status of the item's properties in the repository. -Can be one of the \f(CW$SVN::Wc::Status::\fR* constants. -.SS "svn_wc_entry_t" -.IX Subsection "svn_wc_entry_t" -.ie n .IP "$wcent\->\fIname()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIname()\fR" 4 -.IX Item "$wcent->name()" -Entry's name. -.ie n .IP "$wcent\->\fIrevision()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIrevision()\fR" 4 -.IX Item "$wcent->revision()" -Base revision. -.ie n .IP "$wcent\->\fIurl()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIurl()\fR" 4 -.IX Item "$wcent->url()" -\&\s-1URL\s0 in repository. -.ie n .IP "$wcent\->\fIrepos()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIrepos()\fR" 4 -.IX Item "$wcent->repos()" -Canonical repository \s-1URL\s0. -.ie n .IP "$wcent\->\fIuuid()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIuuid()\fR" 4 -.IX Item "$wcent->uuid()" -Repository uuid. -.ie n .IP "$wcent\->\fIkind()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIkind()\fR" 4 -.IX Item "$wcent->kind()" -The kind of node. One of the following constants: -\&\f(CW$SVN::Node::none\fR, \f(CW$SVN::Node::file\fR, -\&\f(CW$SVN::Node::dir\fR, \f(CW$SVN::Node::unknown\fR. -.ie n .IP "$wcent\->\fIschedule()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIschedule()\fR" 4 -.IX Item "$wcent->schedule()" -Scheduling. One of the SVN::Wc::Schedule::* constants. -.ie n .IP "$wcent\->\fIcopied()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcopied()\fR" 4 -.IX Item "$wcent->copied()" -In a copied state. -.ie n .IP "$wcent\->\fIdeleted()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIdeleted()\fR" 4 -.IX Item "$wcent->deleted()" -Deleted, but parent rev lags behind. -.ie n .IP "$wcent\->\fIabsent()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIabsent()\fR" 4 -.IX Item "$wcent->absent()" -Absent \*(-- we know an entry of this name exists, but that's all (usually this -happens because of authz restrictions) -.ie n .IP "$wcent\->\fIincomplete()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIincomplete()\fR" 4 -.IX Item "$wcent->incomplete()" -For \s-1THIS_DIR\s0 entry, implies whole entries file is incomplete. -.ie n .IP "$wcent\->\fIcopyfrom_url()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcopyfrom_url()\fR" 4 -.IX Item "$wcent->copyfrom_url()" -Copyfrom location. -.ie n .IP "$wcent\->\fIcopyfrom_rev()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcopyfrom_rev()\fR" 4 -.IX Item "$wcent->copyfrom_rev()" -Copyfrom revision. -.ie n .IP "$wcent\->\fIconflict_old()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIconflict_old()\fR" 4 -.IX Item "$wcent->conflict_old()" -Old version of conflicted file. -.ie n .IP "$wcent\->\fIconflict_new()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIconflict_new()\fR" 4 -.IX Item "$wcent->conflict_new()" -New version of conflicted file. -.ie n .IP "$wcent\->\fIconflict_wrk()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIconflict_wrk()\fR" 4 -.IX Item "$wcent->conflict_wrk()" -Working version of conflicted file. -.ie n .IP "$wcent\->\fIprejfile()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIprejfile()\fR" 4 -.IX Item "$wcent->prejfile()" -Property reject file. -.ie n .IP "$wcent\->\fItext_time()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fItext_time()\fR" 4 -.IX Item "$wcent->text_time()" -Last up-to-date time for text contents (0 means no information available). -.ie n .IP "$wcent\->\fIprop_time()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIprop_time()\fR" 4 -.IX Item "$wcent->prop_time()" -Last up-to-date time for properties (0 means no information available). -.ie n .IP "$wcent\->\fIchecksum()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIchecksum()\fR" 4 -.IX Item "$wcent->checksum()" -Base\-64 encoded checksum for the untranslated text base file, can be undef for -backwards compatibility. -.ie n .IP "$wcent\->\fIcmt_rev()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcmt_rev()\fR" 4 -.IX Item "$wcent->cmt_rev()" -Last revision this was changed. -.ie n .IP "$wcent\->\fIcmt_date()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcmt_date()\fR" 4 -.IX Item "$wcent->cmt_date()" -Last date this was changed. -.ie n .IP "$wcent\->\fIcmt_author()\fR" 4 -.el .IP "\f(CW$wcent\fR\->\fIcmt_author()\fR" 4 -.IX Item "$wcent->cmt_author()" -Last commit author of this item. -.SH "CONSTANTS" -.IX Header "CONSTANTS" -.SS "SVN::Wc::Notify::Action" -.IX Subsection "SVN::Wc::Notify::Action" -.ie n .IP "$SVN::Wc::Notify::Action::add" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::add\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::add" -Adding a path to revision control. -.ie n .IP "$SVN::Wc::Notify::Action::copy" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::copy\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::copy" -Copying a versioned path. -.ie n .IP "$SVN::Wc::Notify::Action::delete" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::delete\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::delete" -Deleting a versioned path. -.ie n .IP "$SVN::Wc::Notify::Action::restore" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::restore\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::restore" -Restoring a missing path from the pristine text-base. -.ie n .IP "$SVN::Wc::Notify::Action::revert" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::revert\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::revert" -Reverting a modified path. -.ie n .IP "$SVN::Wc::Notify::Action::failed_revert" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::failed_revert\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::failed_revert" -A revert operation has failed. -.ie n .IP "$SVN::Wc::Notify::Action::resolved" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::resolved\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::resolved" -Resolving a conflict. -.ie n .IP "$SVN::Wc::Notify::Action::skip" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::skip\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::skip" -Skipping a path. -.ie n .IP "$SVN::Wc::Notify::Action::update_delete" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::update_delete\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::update_delete" -Got a delete in an update. -.ie n .IP "$SVN::Wc::Notify::Action::update_add" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::update_add\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::update_add" -Got an add in an update. -.ie n .IP "$SVN::Wc::Notify::Action::update_update" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::update_update\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::update_update" -Got any other action in an update. -.ie n .IP "$SVN::Wc::Notify::Action::update_completed" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::update_completed\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::update_completed" -The last notification in an update (including updates of externals). -.ie n .IP "$SVN::Wc::Notify::Action::update_external" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::update_external\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::update_external" -Updating an external module. -.ie n .IP "$SVN::Wc::Notify::Action::status_completed" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::status_completed\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::status_completed" -The last notification in a status (including status on externals). -.ie n .IP "$SVN::Wc::Notify::Action::status_external" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::status_external\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::status_external" -Running status on an external module. -.ie n .IP "$SVN::Wc::Notify::Action::commit_modified" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::commit_modified\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::commit_modified" -Committing a modification. -.ie n .IP "$SVN::Wc::Notify::Action::commit_added" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::commit_added\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::commit_added" -Committing an addition. -.ie n .IP "$SVN::Wc::Notify::Action::commit_deleted" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::commit_deleted\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::commit_deleted" -Committing a deletion. -.ie n .IP "$SVN::Wc::Notify::Action::commit_replaced" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::commit_replaced\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::commit_replaced" -Committing a replacement. -.ie n .IP "$SVN::Wc::Notify::Action::commit_postfix_txdelta" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::commit_postfix_txdelta\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::commit_postfix_txdelta" -Transmitting post-fix text-delta data for a file. -.ie n .IP "$SVN::Wc::Notify::Action::blame_revision" 4 -.el .IP "\f(CW$SVN::Wc::Notify::Action::blame_revision\fR" 4 -.IX Item "$SVN::Wc::Notify::Action::blame_revision" -Processed a single revision's blame. -.SS "SVN::Wc::Notify::State" -.IX Subsection "SVN::Wc::Notify::State" -.ie n .IP "$SVN::Wc::Notify::State::unknown" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::unknown\fR" 4 -.IX Item "$SVN::Wc::Notify::State::unknown" -Notifier doesn't know or isn't saying. -.ie n .IP "$SVN::Wc::Notify::State::unchanged" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::unchanged\fR" 4 -.IX Item "$SVN::Wc::Notify::State::unchanged" -The state did not change. -.ie n .IP "$SVN::Wc::Notify::State::missing" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::missing\fR" 4 -.IX Item "$SVN::Wc::Notify::State::missing" -The item wasn't present. -.ie n .IP "$SVN::Wc::Notify::State::obstructed" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::obstructed\fR" 4 -.IX Item "$SVN::Wc::Notify::State::obstructed" -An unversioned item obstructed work. -.ie n .IP "$SVN::Wc::Notify::State::changed" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::changed\fR" 4 -.IX Item "$SVN::Wc::Notify::State::changed" -Pristine state was modified. -.ie n .IP "$SVN::Wc::Notify::State::merged" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::merged\fR" 4 -.IX Item "$SVN::Wc::Notify::State::merged" -Modified state had mods merged in. -.ie n .IP "$SVN::Wc::Notify::State::conflicted" 4 -.el .IP "\f(CW$SVN::Wc::Notify::State::conflicted\fR" 4 -.IX Item "$SVN::Wc::Notify::State::conflicted" -Modified state got conflicting mods. -.SS "SVN::Wc::Schedule" -.IX Subsection "SVN::Wc::Schedule" -.ie n .IP "$SVN::Wc::Schedule::normal" 4 -.el .IP "\f(CW$SVN::Wc::Schedule::normal\fR" 4 -.IX Item "$SVN::Wc::Schedule::normal" -Nothing special here. -.ie n .IP "$SVN::Wc::Schedule::add" 4 -.el .IP "\f(CW$SVN::Wc::Schedule::add\fR" 4 -.IX Item "$SVN::Wc::Schedule::add" -Slated for addition. -.ie n .IP "$SVN::Wc::Schedule::delete" 4 -.el .IP "\f(CW$SVN::Wc::Schedule::delete\fR" 4 -.IX Item "$SVN::Wc::Schedule::delete" -Slated for deletion. -.ie n .IP "$SVN::Wc::Schedule::replace" 4 -.el .IP "\f(CW$SVN::Wc::Schedule::replace\fR" 4 -.IX Item "$SVN::Wc::Schedule::replace" -Slated for replacement (delete + add) -.SS "SVN::Wc::Status" -.IX Subsection "SVN::Wc::Status" -.ie n .IP "$SVN::Wc::Status::none" 4 -.el .IP "\f(CW$SVN::Wc::Status::none\fR" 4 -.IX Item "$SVN::Wc::Status::none" -Does not exist. -.ie n .IP "$SVN::Wc::Status::unversioned" 4 -.el .IP "\f(CW$SVN::Wc::Status::unversioned\fR" 4 -.IX Item "$SVN::Wc::Status::unversioned" -Is not a versioned node in this working copy. -.ie n .IP "$SVN::Wc::Status::normal" 4 -.el .IP "\f(CW$SVN::Wc::Status::normal\fR" 4 -.IX Item "$SVN::Wc::Status::normal" -Exists, but uninteresting. -.ie n .IP "$SVN::Wc::Status::added" 4 -.el .IP "\f(CW$SVN::Wc::Status::added\fR" 4 -.IX Item "$SVN::Wc::Status::added" -Is scheduled for addition. -.ie n .IP "$SVN::Wc::Status::missing" 4 -.el .IP "\f(CW$SVN::Wc::Status::missing\fR" 4 -.IX Item "$SVN::Wc::Status::missing" -Under version control but missing. -.ie n .IP "$SVN::Wc::Status::deleted" 4 -.el .IP "\f(CW$SVN::Wc::Status::deleted\fR" 4 -.IX Item "$SVN::Wc::Status::deleted" -Scheduled for deletion. -.ie n .IP "$SVN::Wc::Status::replaced" 4 -.el .IP "\f(CW$SVN::Wc::Status::replaced\fR" 4 -.IX Item "$SVN::Wc::Status::replaced" -Was deleted and then re-added. -.ie n .IP "$SVN::Wc::Status::modified" 4 -.el .IP "\f(CW$SVN::Wc::Status::modified\fR" 4 -.IX Item "$SVN::Wc::Status::modified" -Text or props have been modified. -.ie n .IP "$SVN::Wc::Status::merged" 4 -.el .IP "\f(CW$SVN::Wc::Status::merged\fR" 4 -.IX Item "$SVN::Wc::Status::merged" -Local mods received repos mods. -.ie n .IP "$SVN::Wc::Status::conflicted" 4 -.el .IP "\f(CW$SVN::Wc::Status::conflicted\fR" 4 -.IX Item "$SVN::Wc::Status::conflicted" -Local mods received conflicting mods. -.ie n .IP "$SVN::Wc::Status::ignored" 4 -.el .IP "\f(CW$SVN::Wc::Status::ignored\fR" 4 -.IX Item "$SVN::Wc::Status::ignored" -A node marked as ignored. -.ie n .IP "$SVN::Wc::Status::obstructed" 4 -.el .IP "\f(CW$SVN::Wc::Status::obstructed\fR" 4 -.IX Item "$SVN::Wc::Status::obstructed" -An unversioned resource is in the way of the versioned resource. -.ie n .IP "$SVN::Wc::Status::external" 4 -.el .IP "\f(CW$SVN::Wc::Status::external\fR" 4 -.IX Item "$SVN::Wc::Status::external" -An unversioned path populated by an svn:externals property. -.ie n .IP "$SVN::Wc::Status::incomplete" 4 -.el .IP "\f(CW$SVN::Wc::Status::incomplete\fR" 4 -.IX Item "$SVN::Wc::Status::incomplete" -A directory doesn't contain a complete entries list. diff --git a/extra/subversion/subversion.rpath.fix.patch b/extra/subversion/subversion.rpath.fix.patch deleted file mode 100644 index ba6ee9e4e..000000000 --- a/extra/subversion/subversion.rpath.fix.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- 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 -+ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}} - - swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \ - $(SWIG_PL_DIR)/native/Makefile diff --git a/extra/subversion/subversion.suppress.deprecation.warnings.patch b/extra/subversion/subversion.suppress.deprecation.warnings.patch deleted file mode 100644 index 94ce89b18..000000000 --- a/extra/subversion/subversion.suppress.deprecation.warnings.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN subversion-1.6.9/subversion/bindings/swig/python/svn/core.py subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py ---- subversion-1.6.9/subversion/bindings/swig/python/svn/core.py 2009-02-13 11:22:26.000000000 -0500 -+++ subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py 2010-02-08 07:46:29.000000000 -0500 -@@ -19,6 +19,7 @@ - from libsvn.core import * - import libsvn.core as _libsvncore - import atexit as _atexit -+import warnings - - class SubversionException(Exception): - def __init__(self, message=None, apr_err=None, child=None, -@@ -44,7 +45,9 @@ - Exception.__init__(self, *args) - - self.apr_err = apr_err -- self.message = message -+ with warnings.catch_warnings(): -+ warnings.simplefilter("ignore", DeprecationWarning) -+ self.message = message - self.child = child - self.file = file - self.line = line diff --git a/extra/subversion/svn b/extra/subversion/svn deleted file mode 100644 index 8988aaf63..000000000 --- a/extra/subversion/svn +++ /dev/null @@ -1,11 +0,0 @@ -service svn -{ - flags = REUSE - socket_type = stream - wait = no - user = root - server = /usr/bin/svnserve - server_args = -i - log_on_failure += USERID - disable = yes -} diff --git a/extra/subversion/svnmerge.py b/extra/subversion/svnmerge.py deleted file mode 100644 index da0594926..000000000 --- a/extra/subversion/svnmerge.py +++ /dev/null @@ -1,2370 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (c) 2005, Giovanni Bajo -# Copyright (c) 2004-2005, Awarix, Inc. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -# -# Author: Archie Cobbs -# Rewritten in Python by: Giovanni Bajo -# -# Acknowledgments: -# John Belmonte - metadata and usability -# improvements -# Blair Zajac - random improvements -# Raman Gupta - bidirectional and transitive -# merging support -# Dustin J. Mitchell - support for multiple -# location identifier formats -# -# $HeadURL$ -# $LastChangedDate$ -# $LastChangedBy$ -# $LastChangedRevision$ -# -# Requisites: -# svnmerge.py has been tested with all SVN major versions since 1.1 (both -# client and server). It is unknown if it works with previous versions. -# -# Differences from svnmerge.sh: -# - More portable: tested as working in FreeBSD and OS/2. -# - Add double-verbose mode, which shows every svn command executed (-v -v). -# - "svnmerge avail" now only shows commits in source, not also commits in -# other parts of the repository. -# - Add "svnmerge block" to flag some revisions as blocked, so that -# they will not show up anymore in the available list. Added also -# the complementary "svnmerge unblock". -# - "svnmerge avail" has grown two new options: -# -B to display a list of the blocked revisions -# -A to display both the blocked and the available revisions. -# - Improved generated commit message to make it machine parsable even when -# merging commits which are themselves merges. -# - Add --force option to skip working copy check -# - Add --record-only option to "svnmerge merge" to avoid performing -# an actual merge, yet record that a merge happened. -# - Can use a variety of location-identifier formats -# -# TODO: -# - Add "svnmerge avail -R": show logs in reverse order -# -# Information for Hackers: -# -# Identifiers for branches: -# A branch is identified in three ways within this source: -# - as a working copy (variable name usually includes 'dir') -# - as a fully qualified URL -# - as a path identifier (an opaque string indicating a particular path -# in a particular repository; variable name includes 'pathid') -# A "target" is generally user-specified, and may be a working copy or -# a URL. - -import sys, os, getopt, re, types, tempfile, time, locale -from bisect import bisect -from xml.dom import pulldom - -NAME = "svnmerge" -if not hasattr(sys, "version_info") or sys.version_info < (2, 0): - error("requires Python 2.0 or newer") - -# Set up the separator used to separate individual log messages from -# each revision merged into the target location. Also, create a -# regular expression that will find this same separator in already -# committed log messages, so that the separator used for this run of -# svnmerge.py will have one more LOG_SEPARATOR appended to the longest -# separator found in all the commits. -LOG_SEPARATOR = 8 * '.' -LOG_SEPARATOR_RE = re.compile('^((%s)+)' % re.escape(LOG_SEPARATOR), - re.MULTILINE) - -# Each line of the embedded log messages will be prefixed by LOG_LINE_PREFIX. -LOG_LINE_PREFIX = 2 * ' ' - -# Set python to the default locale as per environment settings, same as svn -# TODO we should really parse config and if log-encoding is specified, set -# the locale to match that encoding -locale.setlocale(locale.LC_ALL, '') - -# We want the svn output (such as svn info) to be non-localized -# Using LC_MESSAGES should not affect localized output of svn log, for example -if os.environ.has_key("LC_ALL"): - del os.environ["LC_ALL"] -os.environ["LC_MESSAGES"] = "C" - -############################################################################### -# Support for older Python versions -############################################################################### - -# True/False constants are Python 2.2+ -try: - True, False -except NameError: - True, False = 1, 0 - -def lstrip(s, ch): - """Replacement for str.lstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - i = 0 - try: - while s[i] == ch: - i = i+1 - return s[i:] - except IndexError: - return "" - -def rstrip(s, ch): - """Replacement for str.rstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - try: - if s[-1] != ch: - return s - i = -2 - while s[i] == ch: - i = i-1 - return s[:i+1] - except IndexError: - return "" - -def strip(s, ch): - """Replacement for str.strip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - return lstrip(rstrip(s, ch), ch) - -def rsplit(s, sep, maxsplits=0): - """Like str.rsplit, which is Python 2.4+ only.""" - L = s.split(sep) - if not 0 < maxsplits <= len(L): - return L - return [sep.join(L[0:-maxsplits])] + L[-maxsplits:] - -############################################################################### - -def kwextract(s): - """Extract info from a svn keyword string.""" - try: - return strip(s, "$").strip().split(": ")[1] - except IndexError: - return "" - -__revision__ = kwextract('$Rev$') -__date__ = kwextract('$Date$') - -# Additional options, not (yet?) mapped to command line flags -default_opts = { - "svn": "svn", - "prop": NAME + "-integrated", - "block-prop": NAME + "-blocked", - "commit-verbose": True, - "verbose": 0, -} -logs = {} - -def console_width(): - """Get the width of the console screen (if any).""" - try: - return int(os.environ["COLUMNS"]) - except (KeyError, ValueError): - pass - - try: - # Call the Windows API (requires ctypes library) - from ctypes import windll, create_string_buffer - h = windll.kernel32.GetStdHandle(-11) - csbi = create_string_buffer(22) - res = windll.kernel32.GetConsoleScreenBufferInfo(h, csbi) - if res: - import struct - (bufx, bufy, - curx, cury, wattr, - left, top, right, bottom, - maxx, maxy) = struct.unpack("hhhhHhhhhhh", csbi.raw) - return right - left + 1 - except ImportError: - pass - - # Parse the output of stty -a - if os.isatty(1): - out = os.popen("stty -a").read() - m = re.search(r"columns (\d+);", out) - if m: - return int(m.group(1)) - - # sensible default - return 80 - -def error(s): - """Subroutine to output an error and bail.""" - print >> sys.stderr, "%s: %s" % (NAME, s) - sys.exit(1) - -def report(s): - """Subroutine to output progress message, unless in quiet mode.""" - if opts["verbose"]: - print "%s: %s" % (NAME, s) - -def prefix_lines(prefix, lines): - """Given a string representing one or more lines of text, insert the - specified prefix at the beginning of each line, and return the result. - The input must be terminated by a newline.""" - assert lines[-1] == "\n" - return prefix + lines[:-1].replace("\n", "\n"+prefix) + "\n" - -def recode_stdout_to_file(s): - if locale.getdefaultlocale()[1] is None or not hasattr(sys.stdout, "encoding") \ - or sys.stdout.encoding is None: - return s - u = s.decode(sys.stdout.encoding) - return u.encode(locale.getdefaultlocale()[1]) - -class LaunchError(Exception): - """Signal a failure in execution of an external command. Parameters are the - exit code of the process, the original command line, and the output of the - command.""" - -try: - """Launch a sub-process. Return its output (both stdout and stderr), - optionally split by lines (if split_lines is True). Raise a LaunchError - exception if the exit code of the process is non-zero (failure). - - This function has two implementations, one based on subprocess (preferred), - and one based on popen (for compatibility). - """ - import subprocess - import shlex - - def launch(cmd, split_lines=True): - # Requiring python 2.4 or higher, on some platforms we get - # much faster performance from the subprocess module (where python - # doesn't try to close an exhorbitant number of file descriptors) - stdout = "" - stderr = "" - try: - if os.name == 'nt': - p = subprocess.Popen(cmd, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - else: - # Use shlex to break up the parameters intelligently, - # respecting quotes. shlex can't handle unicode. - args = shlex.split(cmd.encode('ascii')) - p = subprocess.Popen(args, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - stdoutAndErr = p.communicate() - stdout = stdoutAndErr[0] - stderr = stdoutAndErr[1] - except OSError, inst: - # Using 1 as failure code; should get actual number somehow? For - # examples see svnmerge_test.py's TestCase_launch.test_failure and - # TestCase_launch.test_failurecode. - raise LaunchError(1, cmd, stdout + " " + stderr + ": " + str(inst)) - - if p.returncode == 0: - if split_lines: - # Setting keepends=True for compatibility with previous logic - # (where file.readlines() preserves newlines) - return stdout.splitlines(True) - else: - return stdout - else: - raise LaunchError(p.returncode, cmd, stdout + stderr) -except ImportError: - # support versions of python before 2.4 (slower on some systems) - def launch(cmd, split_lines=True): - if os.name not in ['nt', 'os2']: - import popen2 - p = popen2.Popen4(cmd) - p.tochild.close() - if split_lines: - out = p.fromchild.readlines() - else: - out = p.fromchild.read() - ret = p.wait() - if ret == 0: - ret = None - else: - ret >>= 8 - else: - i,k = os.popen4(cmd) - i.close() - if split_lines: - out = k.readlines() - else: - out = k.read() - ret = k.close() - - if ret is None: - return out - raise LaunchError(ret, cmd, out) - -def launchsvn(s, show=False, pretend=False, **kwargs): - """Launch SVN and grab its output.""" - username = password = configdir = "" - if opts.get("username", None): - username = "--username=" + opts["username"] - if opts.get("password", None): - password = "--password=" + opts["password"] - if opts.get("config-dir", None): - configdir = "--config-dir=" + opts["config-dir"] - cmd = ' '.join(filter(None, [opts["svn"], "--non-interactive", - username, password, configdir, s])) - if show or opts["verbose"] >= 2: - print cmd - if pretend: - return None - return launch(cmd, **kwargs) - -def svn_command(s): - """Do (or pretend to do) an SVN command.""" - out = launchsvn(s, show=opts["show-changes"] or opts["dry-run"], - pretend=opts["dry-run"], - split_lines=False) - if not opts["dry-run"]: - print out - -def check_dir_clean(dir): - """Check the current status of dir for local mods.""" - if opts["force"]: - report('skipping status check because of --force') - return - report('checking status of "%s"' % dir) - - # Checking with -q does not show unversioned files or external - # directories. Though it displays a debug message for external - # directories, after a blank line. So, practically, the first line - # matters: if it's non-empty there is a modification. - out = launchsvn("status -q %s" % dir) - if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) - -class PathIdentifier: - """Abstraction for a path identifier, so that we can start talking - about it before we know the form that it takes in the properties (its - external_form). Objects are referenced in the class variable 'locobjs', - keyed by all known forms.""" - - # a map of UUID (or None) to repository root URL. - repo_hints = {} - - # a map from any known string form to the corresponding PathIdentifier - locobjs = {} - - def __init__(self, repo_relative_path, uuid=None, url=None, external_form=None): - self.repo_relative_path = repo_relative_path - self.uuid = uuid - self.url = url - self.external_form = external_form - - def __repr__(self): - return "' - - def __str__(self): - """Return a printable string representation""" - if self.external_form: - return self.external_form - if self.url: - return self.format('url') - if self.uuid: - return self.format('uuid') - return self.format('path') - - def from_pathid(pathid_str): - """convert pathid_str to a PathIdentifier""" - if not PathIdentifier.locobjs.has_key(pathid_str): - if is_url(pathid_str): - # we can determine every form; PathIdentifier.hint knows how to do that - PathIdentifier.hint(pathid_str) - elif pathid_str[:7] == 'uuid://': - mo = re.match('uuid://([^/]*)(.*)', pathid_str) - if not mo: - error("Invalid path identifier '%s'" % pathid_str) - uuid, repo_relative_path = mo.groups() - pathid = PathIdentifier(repo_relative_path, uuid=uuid) - # we can cache this by uuid:// pathid and by repo-relative path - PathIdentifier.locobjs[pathid_str] = PathIdentifier.locobjs[repo_relative_path] = pathid - elif pathid_str and pathid_str[0] == '/': - # strip any trailing slashes - pathid_str = pathid_str.rstrip('/') - pathid = PathIdentifier(repo_relative_path=pathid_str) - # we can only cache this by repo-relative path - PathIdentifier.locobjs[pathid_str] = pathid - else: - error("Invalid path identifier '%s'" % pathid_str) - return PathIdentifier.locobjs[pathid_str] - from_pathid = staticmethod(from_pathid) - - def from_target(target): - """Convert a target (either a working copy path or an URL) into a - path identifier.""" - # prime the cache first if we don't know about this target yet - if not PathIdentifier.locobjs.has_key(target): - PathIdentifier.hint(target) - - try: - return PathIdentifier.locobjs[target] - except KeyError: - error("Could not recognize path identifier '%s'" % target) - from_target = staticmethod(from_target) - - def hint(target): - """Cache some information about target, as it may be referenced by - repo-relative path in subversion properties; the cache can help to - expand such a relative path to a full path identifier.""" - if PathIdentifier.locobjs.has_key(target): return - if not is_url(target) and not is_wc(target): return - - url = target_to_url(target) - - root = get_repo_root(url) - assert root[-1] != "/" - assert url[:len(root)] == root, "url=%r, root=%r" % (url, root) - repo_relative_path = url[len(root):] - - try: - uuid = get_svninfo(target)['Repository UUID'] - uuid_pathid = 'uuid://%s%s' % (uuid, repo_relative_path) - except KeyError: - uuid = None - uuid_pathid = None - - locobj = PathIdentifier.locobjs.get(url) or \ - (uuid_pathid and PathIdentifier.locobjs.get(uuid_pathid)) - if not locobj: - locobj = PathIdentifier(repo_relative_path, uuid=uuid, url=url) - - PathIdentifier.repo_hints[uuid] = root # (uuid may be None) - - PathIdentifier.locobjs[target] = locobj - PathIdentifier.locobjs[url] = locobj - if uuid_pathid: - PathIdentifier.locobjs[uuid_pathid] = locobj - if not PathIdentifier.locobjs.has_key(repo_relative_path): - PathIdentifier.locobjs[repo_relative_path] = locobj - hint = staticmethod(hint) - - def format(self, fmt): - if fmt == 'path': - return self.repo_relative_path - elif fmt == 'uuid': - return "uuid://%s%s" % (self.uuid, self.repo_relative_path) - elif fmt == 'url': - return self.url - else: - error("Unkonwn path type '%s'" % fmt) - - def match_substring(self, str): - """Test whether str is a substring of any representation of this - PathIdentifier.""" - if self.repo_relative_path.find(str) >= 0: - return True - - if self.uuid: - if ("uuid://%s%s" % (self.uuid, self.repo_relative_path)).find(str) >= 0: - return True - - if self.url: - if (self.url + self.repo_relative_path).find(str) >= 0: - return True - - return False - - def get_url(self): - """Convert a pathid into a URL. If this is not possible, error out.""" - if self.url: - return self.url - # if we have a uuid and happen to know the URL for it, use that - elif self.uuid and PathIdentifier.repo_hints.has_key(self.uuid): - self.url = PathIdentifier.repo_hints[self.uuid] + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - return self.url - # if we've only seen one rep, use that (a guess, but an educated one) - elif not self.uuid and len(PathIdentifier.repo_hints) == 1: - uuid, root = PathIdentifier.repo_hints.items()[0] - if uuid: - self.uuid = uuid - PathIdentifier.locobjs['uuid://%s%s' % (uuid, self.repo_relative_path)] = self - self.url = root + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - report("Guessing that '%s' refers to '%s'" % (self, self.url)) - return self.url - else: - error("Cannot determine URL for '%s'; " % self + - "Explicit source argument (-S/--source) required.\n") - -class RevisionLog: - """ - A log of the revisions which affected a given URL between two - revisions. - """ - - def __init__(self, url, begin, end, find_propchanges=False): - """ - Create a new RevisionLog object, which stores, in self.revs, a list - of the revisions which affected the specified URL between begin and - end. If find_propchanges is True, self.propchange_revs will contain a - list of the revisions which changed properties directly on the - specified URL. URL must be the URL for a directory in the repository. - """ - self.url = url - - # Setup the log options (--quiet, so we don't show log messages) - log_opts = '--xml --quiet -r%s:%s "%s"' % (begin, end, url) - if find_propchanges: - # The --verbose flag lets us grab merge tracking information - # by looking at propchanges - log_opts = "--verbose " + log_opts - - # Read the log to look for revision numbers and merge-tracking info - self.revs = [] - self.propchange_revs = [] - repos_pathid = PathIdentifier.from_target(url) - for chg in SvnLogParser(launchsvn("log %s" % log_opts, - split_lines=False)): - self.revs.append(chg.revision()) - for p in chg.paths(): - if p.action() == 'M' and p.pathid() == repos_pathid.repo_relative_path: - self.propchange_revs.append(chg.revision()) - - # Save the range of the log - self.begin = int(begin) - if end == "HEAD": - # If end is not provided, we do not know which is the latest - # revision in the repository. So we set 'end' to the latest - # known revision. - self.end = self.revs[-1] - else: - self.end = int(end) - - self._merges = None - self._blocks = None - - def merge_metadata(self): - """ - Return a VersionedProperty object, with a cached view of the merge - metadata in the range of this log. - """ - - # Load merge metadata if necessary - if not self._merges: - self._merges = VersionedProperty(self.url, opts["prop"]) - self._merges.load(self) - - return self._merges - - def block_metadata(self): - if not self._blocks: - self._blocks = VersionedProperty(self.url, opts["block-prop"]) - self._blocks.load(self) - - return self._blocks - - -class VersionedProperty: - """ - A read-only, cached view of a versioned property. - - self.revs contains a list of the revisions in which the property changes. - self.values stores the new values at each corresponding revision. If the - value of the property is unknown, it is set to None. - - Initially, we set self.revs to [0] and self.values to [None]. This - indicates that, as of revision zero, we know nothing about the value of - the property. - - Later, if you run self.load(log), we cache the value of this property over - the entire range of the log by noting each revision in which the property - was changed. At the end of the range of the log, we invalidate our cache - by adding the value "None" to our cache for any revisions which fall out - of the range of our log. - - Once self.revs and self.values are filled, we can find the value of the - property at any arbitrary revision using a binary search on self.revs. - Once we find the last revision during which the property was changed, - we can lookup the associated value in self.values. (If the associated - value is None, the associated value was not cached and we have to do - a full propget.) - - An example: We know that the 'svnmerge' property was added in r10, and - changed in r21. We gathered log info up until r40. - - revs = [0, 10, 21, 40] - values = [None, "val1", "val2", None] - - What these values say: - - From r0 to r9, we know nothing about the property. - - In r10, the property was set to "val1". This property stayed the same - until r21, when it was changed to "val2". - - We don't know what happened after r40. - """ - - def __init__(self, url, name): - """View the history of a versioned property at URL with name""" - self.url = url - self.name = name - - # We know nothing about the value of the property. Setup revs - # and values to indicate as such. - self.revs = [0] - self.values = [None] - - # We don't have any revisions cached - self._initial_value = None - self._changed_revs = [] - self._changed_values = [] - - def load(self, log): - """ - Load the history of property changes from the specified - RevisionLog object. - """ - - # Get the property value before the range of the log - if log.begin > 1: - self.revs.append(log.begin-1) - try: - self._initial_value = self.raw_get(log.begin-1) - except LaunchError: - # The specified URL might not exist before the - # range of the log. If so, we can safely assume - # that the property was empty at that time. - self._initial_value = { } - self.values.append(self._initial_value) - else: - self._initial_value = { } - self.values[0] = self._initial_value - - # Cache the property values in the log range - old_value = self._initial_value - for rev in log.propchange_revs: - new_value = self.raw_get(rev) - if new_value != old_value: - self._changed_revs.append(rev) - self._changed_values.append(new_value) - self.revs.append(rev) - self.values.append(new_value) - old_value = new_value - - # Indicate that we know nothing about the value of the property - # after the range of the log. - if log.revs: - self.revs.append(log.end+1) - self.values.append(None) - - def raw_get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - return get_revlist_prop(self.url, self.name, rev) - - def get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - - if rev is not None: - - # Find the index using a binary search - i = bisect(self.revs, rev) - 1 - - # Return the value of the property, if it was cached - if self.values[i] is not None: - return self.values[i] - - # Get the current value of the property - return self.raw_get(rev) - - def changed_revs(self, key=None): - """ - Get a list of the revisions in which the specified dictionary - key was changed in this property. If key is not specified, - return a list of revisions in which any key was changed. - """ - if key is None: - return self._changed_revs - else: - changed_revs = [] - old_val = self._initial_value - for rev, val in zip(self._changed_revs, self._changed_values): - if val.get(key) != old_val.get(key): - changed_revs.append(rev) - old_val = val - return changed_revs - - def initialized_revs(self): - """ - Get a list of the revisions in which keys were added or - removed in this property. - """ - initialized_revs = [] - old_len = len(self._initial_value) - for rev, val in zip(self._changed_revs, self._changed_values): - if len(val) != old_len: - initialized_revs.append(rev) - old_len = len(val) - return initialized_revs - -class RevisionSet: - """ - A set of revisions, held in dictionary form for easy manipulation. If we - were to rewrite this script for Python 2.3+, we would subclass this from - set (or UserSet). As this class does not include branch - information, it's assumed that one instance will be used per - branch. - """ - def __init__(self, parm): - """Constructs a RevisionSet from a string in property form, or from - a dictionary whose keys are the revisions. Raises ValueError if the - input string is invalid.""" - - self._revs = {} - - revision_range_split_re = re.compile('[-:]') - - if isinstance(parm, types.DictType): - self._revs = parm.copy() - elif isinstance(parm, types.ListType): - for R in parm: - self._revs[int(R)] = 1 - else: - parm = parm.strip() - if parm: - for R in parm.split(","): - rev_or_revs = re.split(revision_range_split_re, R) - if len(rev_or_revs) == 1: - self._revs[int(rev_or_revs[0])] = 1 - elif len(rev_or_revs) == 2: - for rev in range(int(rev_or_revs[0]), - int(rev_or_revs[1])+1): - self._revs[rev] = 1 - else: - raise ValueError, 'Ill formatted revision range: ' + R - - def sorted(self): - revnums = self._revs.keys() - revnums.sort() - return revnums - - def normalized(self): - """Returns a normalized version of the revision set, which is an - ordered list of couples (start,end), with the minimum number of - intervals.""" - revnums = self.sorted() - revnums.reverse() - ret = [] - while revnums: - s = e = revnums.pop() - while revnums and revnums[-1] in (e, e+1): - e = revnums.pop() - ret.append((s, e)) - return ret - - def __str__(self): - """Convert the revision set to a string, using its normalized form.""" - L = [] - for s,e in self.normalized(): - if s == e: - L.append(str(s)) - else: - L.append(str(s) + "-" + str(e)) - return ",".join(L) - - def __contains__(self, rev): - return self._revs.has_key(rev) - - def __sub__(self, rs): - """Compute subtraction as in sets.""" - revs = {} - for r in self._revs.keys(): - if r not in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __and__(self, rs): - """Compute intersections as in sets.""" - revs = {} - for r in self._revs.keys(): - if r in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __nonzero__(self): - return len(self._revs) != 0 - - def __len__(self): - """Return the number of revisions in the set.""" - return len(self._revs) - - def __iter__(self): - return iter(self.sorted()) - - def __or__(self, rs): - """Compute set union.""" - revs = self._revs.copy() - revs.update(rs._revs) - return RevisionSet(revs) - -def merge_props_to_revision_set(merge_props, pathid): - """A converter which returns a RevisionSet instance containing the - revisions from PATH as known to BRANCH_PROPS. BRANCH_PROPS is a - dictionary of pathid -> revision set branch integration information - (as returned by get_merge_props()).""" - if not merge_props.has_key(pathid): - error('no integration info available for path "%s"' % pathid) - return RevisionSet(merge_props[pathid]) - -def dict_from_revlist_prop(propvalue): - """Given a property value as a string containing per-source revision - lists, return a dictionary whose key is a source path identifier - and whose value is the revisions for that source.""" - prop = {} - - # Multiple sources are separated by any whitespace. - for L in propvalue.split(): - # We use rsplit to play safe and allow colons in pathids. - pathid_str, revs = rsplit(L.strip(), ":", 1) - - pathid = PathIdentifier.from_pathid(pathid_str) - - # cache the "external" form we saw - pathid.external_form = pathid_str - - prop[pathid] = revs - return prop - -def get_revlist_prop(url_or_dir, propname, rev=None): - """Given a repository URL or working copy path and a property - name, extract the values of the property which store per-source - revision lists and return a dictionary whose key is a source path - identifier, and whose value is the revisions for that source.""" - - # Note that propget does not return an error if the property does - # not exist, it simply does not output anything. So we do not need - # to check for LaunchError here. - args = '--strict "%s" "%s"' % (propname, url_or_dir) - if rev: - args = '-r %s %s' % (rev, args) - out = launchsvn('propget %s' % args, split_lines=False) - - return dict_from_revlist_prop(out) - -def get_merge_props(dir): - """Extract the merged revisions.""" - return get_revlist_prop(dir, opts["prop"]) - -def get_block_props(dir): - """Extract the blocked revisions.""" - return get_revlist_prop(dir, opts["block-prop"]) - -def get_blocked_revs(dir, source_pathid): - p = get_block_props(dir) - if p.has_key(source_pathid): - return RevisionSet(p[source_pathid]) - return RevisionSet("") - -def format_merge_props(props, sep=" "): - """Formats the hash PROPS as a string suitable for use as a - Subversion property value.""" - assert sep in ["\t", "\n", " "] # must be a whitespace - props = props.items() - props.sort() - L = [] - for h, r in props: - L.append("%s:%s" % (h, r)) - return sep.join(L) - -def _run_propset(dir, prop, value): - """Set the property 'prop' of directory 'dir' to value 'value'. We go - through a temporary file to not run into command line length limits.""" - try: - fd, fname = tempfile.mkstemp() - f = os.fdopen(fd, "wb") - except AttributeError: - # Fallback for Python <= 2.3 which does not have mkstemp (mktemp - # suffers from race conditions. Not that we care...) - fname = tempfile.mktemp() - f = open(fname, "wb") - - try: - f.write(value) - f.close() - report("property data written to temp file: %s" % value) - svn_command('propset "%s" -F "%s" "%s"' % (prop, fname, dir)) - finally: - os.remove(fname) - -def set_props(dir, name, props): - props = format_merge_props(props) - if props: - _run_propset(dir, name, props) - else: - # Check if NAME exists on DIR before trying to delete it. - # As of 1.6 propdel no longer supports deleting a - # non-existent property. - out = launchsvn('propget "%s" "%s"' % (name, dir)) - if out: - svn_command('propdel "%s" "%s"' % (name, dir)) - -def set_merge_props(dir, props): - set_props(dir, opts["prop"], props) - -def set_block_props(dir, props): - set_props(dir, opts["block-prop"], props) - -def set_blocked_revs(dir, source_pathid, revs): - props = get_block_props(dir) - if revs: - props[source_pathid] = str(revs) - elif props.has_key(source_pathid): - del props[source_pathid] - set_block_props(dir, props) - -def is_url(url): - """Check if url looks like a valid url.""" - return re.search(r"^[a-zA-Z][-+\.\w]*://[^\s]+$", url) is not None and url[:4] != 'uuid' - -def check_url(url): - """Similar to is_url, but actually invoke get_svninfo to find out""" - return get_svninfo(url) != {} - -def is_pathid(pathid): - return isinstance(pathid, PathIdentifier) - -def is_wc(dir): - """Check if a directory is a working copy.""" - return os.path.isdir(os.path.join(dir, ".svn")) or \ - os.path.isdir(os.path.join(dir, "_svn")) - -_cache_svninfo = {} -def get_svninfo(target): - """Extract the subversion information for a target (through 'svn info'). - This function uses an internal cache to let clients query information - many times.""" - if _cache_svninfo.has_key(target): - return _cache_svninfo[target] - info = {} - for L in launchsvn('info "%s"' % target): - L = L.strip() - if not L: - continue - key, value = L.split(": ", 1) - info[key] = value.strip() - _cache_svninfo[target] = info - return info - -def target_to_url(target): - """Convert working copy path or repos URL to a repos URL.""" - if is_wc(target): - info = get_svninfo(target) - return info["URL"] - return target - -_cache_reporoot = {} -def get_repo_root(target): - """Compute the root repos URL given a working-copy path, or a URL.""" - # Try using "svn info WCDIR". This works only on SVN clients >= 1.3 - if not is_url(target): - try: - info = get_svninfo(target) - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except KeyError: - pass - url = target_to_url(target) - assert url[-1] != '/' - else: - url = target - - # Go through the cache of the repository roots. This avoids extra - # server round-trips if we are asking the root of different URLs - # in the same repository (the cache in get_svninfo() cannot detect - # that of course and would issue a remote command). - assert is_url(url) - for r in _cache_reporoot: - if url.startswith(r): - return r - - # Try using "svn info URL". This works only on SVN clients >= 1.2 - try: - info = get_svninfo(url) - # info may be {}, in which case we'll see KeyError here - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except (KeyError, LaunchError): - pass - - # Constrained to older svn clients, we are stuck with this ugly - # trial-and-error implementation. It could be made faster with a - # binary search. - while url: - temp = os.path.dirname(url) - try: - launchsvn('proplist "%s"' % temp) - except LaunchError: - _cache_reporoot[url] = None - return rstrip(url, "/") - url = temp - - error("svn repos root of %s not found" % target) - -class SvnLogParser: - """ - Parse the "svn log", going through the XML output and using pulldom (which - would even allow streaming the command output). - """ - def __init__(self, xml): - self._events = pulldom.parseString(xml) - def __getitem__(self, idx): - for event, node in self._events: - if event == pulldom.START_ELEMENT and node.tagName == "logentry": - self._events.expandNode(node) - return self.SvnLogRevision(node) - raise IndexError, "Could not find 'logentry' tag in xml" - - class SvnLogRevision: - def __init__(self, xmlnode): - self.n = xmlnode - def revision(self): - return int(self.n.getAttribute("revision")) - def author(self): - return self.n.getElementsByTagName("author")[0].firstChild.data - def paths(self): - return [self.SvnLogPath(n) - for n in self.n.getElementsByTagName("path")] - - class SvnLogPath: - def __init__(self, xmlnode): - self.n = xmlnode - def action(self): - return self.n.getAttribute("action") - def pathid(self): - return self.n.firstChild.data - def copyfrom_rev(self): - try: return self.n.getAttribute("copyfrom-rev") - except KeyError: return None - def copyfrom_pathid(self): - try: return self.n.getAttribute("copyfrom-path") - except KeyError: return None - -def get_copyfrom(target): - """Get copyfrom info for a given target (it represents the - repository-relative path from where it was branched). NOTE: - repos root has no copyfrom info. In this case None is returned. - - Returns the: - - source file or directory from which the copy was made - - revision from which that source was copied - - revision in which the copy was committed - """ - repos_path = PathIdentifier.from_target(target).repo_relative_path - for chg in SvnLogParser(launchsvn('log -v --xml --stop-on-copy "%s"' - % target, split_lines=False)): - for p in chg.paths(): - if p.action() == 'A' and p.pathid() == repos_path: - # These values will be None if the corresponding elements are - # not found in the log. - return p.copyfrom_pathid(), p.copyfrom_rev(), chg.revision() - return None,None,None - -def get_latest_rev(url): - """Get the latest revision of the repository of which URL is part.""" - try: - info = get_svninfo(url) - if not info.has_key("Revision"): - error("Not a valid URL: %s" % url) - return info["Revision"] - except LaunchError: - # Alternative method for latest revision checking (for svn < 1.2) - report('checking latest revision of "%s"' % url) - L = launchsvn('proplist --revprop -r HEAD "%s"' % opts["source-url"])[0] - rev = re.search("revision (\d+)", L).group(1) - report('latest revision of "%s" is %s' % (url, rev)) - return rev - -def get_created_rev(url): - """Lookup the revision at which the path identified by the - provided URL was first created.""" - oldest_rev = -1 - report('determining oldest revision for URL "%s"' % url) - ### TODO: Refactor this to use a modified RevisionLog class. - lines = None - cmd = "log -r1:HEAD --stop-on-copy -q " + url - try: - lines = launchsvn(cmd + " --limit=1") - except LaunchError: - # Assume that --limit isn't supported by the installed 'svn'. - lines = launchsvn(cmd) - if lines and len(lines) > 1: - i = lines[1].find(" ") - if i != -1: - oldest_rev = int(lines[1][1:i]) - if oldest_rev == -1: - error('unable to determine oldest revision for URL "%s"' % url) - return oldest_rev - -def get_commit_log(url, revnum): - """Return the log message for a specific integer revision - number.""" - out = launchsvn("log --incremental -r%d %s" % (revnum, url)) - return recode_stdout_to_file("".join(out[1:])) - -def construct_merged_log_message(url, revnums): - """Return a commit log message containing all the commit messages - in the specified revisions at the given URL. The separator used - in this log message is determined by searching for the longest - svnmerge separator existing in the commit log messages and - extending it by one more separator. This results in a new commit - log message that is clearer in describing merges that contain - other merges. Trailing newlines are removed from the embedded - log messages.""" - messages = [''] - longest_sep = '' - for r in revnums.sorted(): - message = get_commit_log(url, r) - if message: - message = re.sub(r'(\r\n|\r|\n)', "\n", message) - message = rstrip(message, "\n") + "\n" - messages.append(prefix_lines(LOG_LINE_PREFIX, message)) - for match in LOG_SEPARATOR_RE.findall(message): - sep = match[1] - if len(sep) > len(longest_sep): - longest_sep = sep - - longest_sep += LOG_SEPARATOR + "\n" - messages.append('') - return longest_sep.join(messages) - -def get_default_source(branch_target, branch_props): - """Return the default source for branch_target (given its branch_props). - Error out if there is ambiguity.""" - if not branch_props: - error("no integration info available") - - props = branch_props.copy() - pathid = PathIdentifier.from_target(branch_target) - - # To make bidirectional merges easier, find the target's - # repository local path so it can be removed from the list of - # possible integration sources. - if props.has_key(pathid): - del props[pathid] - - if len(props) > 1: - err_msg = "multiple sources found. " - err_msg += "Explicit source argument (-S/--source) required.\n" - err_msg += "The merge sources available are:" - for prop in props: - err_msg += "\n " + str(prop) - error(err_msg) - - return props.keys()[0] - -def should_find_reflected(branch_dir): - should_find_reflected = opts["bidirectional"] - - # If the source has integration info for the target, set find_reflected - # even if --bidirectional wasn't specified - if not should_find_reflected: - source_props = get_merge_props(opts["source-url"]) - should_find_reflected = source_props.has_key(PathIdentifier.from_target(branch_dir)) - - return should_find_reflected - -def analyze_revs(target_pathid, url, begin=1, end=None, - find_reflected=False): - """For the source of the merges in the source URL being merged into - target_pathid, analyze the revisions in the interval begin-end (which - defaults to 1-HEAD), to find out which revisions are changes in - the url, which are changes elsewhere (so-called 'phantom' - revisions), optionally which are reflected changes (to avoid - conflicts that can occur when doing bidirectional merging between - branches), and which revisions initialize merge tracking against other - branches. Return a tuple of four RevisionSet's: - (real_revs, phantom_revs, reflected_revs, initialized_revs). - - NOTE: To maximize speed, if "end" is not provided, the function is - not able to find phantom revisions following the last real - revision in the URL. - """ - - begin = str(begin) - if end is None: - end = "HEAD" - else: - end = str(end) - if long(begin) > long(end): - return RevisionSet(""), RevisionSet(""), \ - RevisionSet(""), RevisionSet("") - - logs[url] = RevisionLog(url, begin, end, find_reflected) - revs = RevisionSet(logs[url].revs) - - if end == "HEAD": - # If end is not provided, we do not know which is the latest revision - # in the repository. So return the phantom revision set only up to - # the latest known revision. - end = str(list(revs)[-1]) - - phantom_revs = RevisionSet("%s-%s" % (begin, end)) - revs - - if find_reflected: - reflected_revs = logs[url].merge_metadata().changed_revs(target_pathid) - reflected_revs += logs[url].block_metadata().changed_revs(target_pathid) - else: - reflected_revs = [] - - initialized_revs = RevisionSet(logs[url].merge_metadata().initialized_revs()) - reflected_revs = RevisionSet(reflected_revs) - - return revs, phantom_revs, reflected_revs, initialized_revs - -def analyze_source_revs(branch_target, source_url, **kwargs): - """For the given branch and source, extract the real and phantom - source revisions.""" - branch_url = target_to_url(branch_target) - branch_pathid = PathIdentifier.from_target(branch_target) - - # Extract the latest repository revision from the URL of the branch - # directory (which is already cached at this point). - end_rev = get_latest_rev(source_url) - - # Calculate the base of analysis. If there is a "1-XX" interval in the - # merged_revs, we do not need to check those. - base = 1 - r = opts["merged-revs"].normalized() - if r and r[0][0] == 1: - base = r[0][1] + 1 - - # See if the user filtered the revision set. If so, we are not - # interested in something outside that range. - if opts["revision"]: - revs = RevisionSet(opts["revision"]).sorted() - if base < revs[0]: - base = revs[0] - if end_rev > revs[-1]: - end_rev = revs[-1] - - return analyze_revs(branch_pathid, source_url, base, end_rev, **kwargs) - -def minimal_merge_intervals(revs, phantom_revs): - """Produce the smallest number of intervals suitable for merging. revs - is the RevisionSet which we want to merge, and phantom_revs are phantom - revisions which can be used to concatenate intervals, thus minimizing the - number of operations.""" - revnums = revs.normalized() - ret = [] - - cur = revnums.pop() - while revnums: - next = revnums.pop() - assert next[1] < cur[0] # otherwise it is not ordered - assert cur[0] - next[1] > 1 # otherwise it is not normalized - for i in range(next[1]+1, cur[0]): - if i not in phantom_revs: - ret.append(cur) - cur = next - break - else: - cur = (next[0], cur[1]) - - ret.append(cur) - ret.reverse() - return ret - -def display_revisions(revs, display_style, revisions_msg, source_url): - """Show REVS as dictated by DISPLAY_STYLE, either numerically, in - log format, or as diffs. When displaying revisions numerically, - prefix output with REVISIONS_MSG when in verbose mode. Otherwise, - request logs or diffs using SOURCE_URL.""" - if display_style == "revisions": - if revs: - report(revisions_msg) - print revs - elif display_style == "logs": - for start,end in revs.normalized(): - svn_command('log --incremental -v -r %d:%d %s' % \ - (start, end, source_url)) - elif display_style in ("diffs", "summarize"): - if display_style == 'summarize': - summarize = '--summarize ' - else: - summarize = '' - - for start, end in revs.normalized(): - print - if start == end: - print "%s: changes in revision %d follow" % (NAME, start) - else: - print "%s: changes in revisions %d-%d follow" % (NAME, - start, end) - print - - # Note: the starting revision number to 'svn diff' is - # NOT inclusive so we have to subtract one from ${START}. - svn_command("diff -r %d:%d %s %s" % (start - 1, end, summarize, - source_url)) - else: - assert False, "unhandled display style: %s" % display_style - -def action_init(target_dir, target_props): - """Initialize for merges.""" - # Check that directory is ready for being modified - check_dir_clean(target_dir) - - target_pathid = PathIdentifier.from_target(target_dir) - source_pathid = opts['source-pathid'] - if source_pathid == target_pathid: - error("cannot init integration source path '%s'\nIts path identifier does not " - "differ from the path identifier of the current directory, '%s'." - % (source_pathid, target_pathid)) - - source_url = opts['source-url'] - - # If the user hasn't specified the revisions to use, see if the - # "source" is a copy from the current tree and if so, we can use - # the version data obtained from it. - revision_range = opts["revision"] - if not revision_range: - # If source was originally copied from target, and we are merging - # changes from source to target (the copy target is the merge source, - # and the copy source is the merge target), then we want to mark as - # integrated up to the rev in which the copy was committed which - # created the merge source: - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(source_url) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(source_url) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - if target_pathid == cf_pathid: - report('the source "%s" was copied from "%s" in rev %s and committed in rev %s' % - (source_url, target_dir, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + str(copy_committed_in_rev) - - if not revision_range: - # If the reverse is true: copy source is the merge source, and - # the copy target is the merge target, then we want to mark as - # integrated up to the specific rev of the merge target from - # which the merge source was copied. (Longer discussion at: - # http://subversion.tigris.org/issues/show_bug.cgi?id=2810 ) - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(target_dir) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - source_pathid = PathIdentifier.from_target(source_url) - if source_pathid == cf_pathid: - report('the target "%s" was copied the source "%s" in rev %s and committed in rev %s' % - (target_dir, source_url, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + cf_rev - - # When neither the merge source nor target is a copy of the other, and - # the user did not specify a revision range, then choose a default which is - # the current revision; saying, in effect, "everything has been merged, so - # mark as integrated up to the latest rev on source url). - if not revision_range: - revision_range = "1-" + get_latest_rev(source_url) - - revs = RevisionSet(revision_range) - - report('marking "%s" as already containing revisions "%s" of "%s"' % - (target_dir, revs, source_url)) - - revs = str(revs) - # If the local svnmerge-integrated property already has an entry - # for the source-pathid, simply error out. - if not opts["force"] and target_props.has_key(source_pathid): - error('Repository-relative path %s has already been initialized at %s\n' - 'Use --force to re-initialize' % (source_pathid, target_dir)) - # set the pathid's external_form based on the user's options - source_pathid.external_form = source_pathid.format(opts['location-type']) - - revs = str(revs) - target_props[source_pathid] = revs - - # Set property - set_merge_props(target_dir, target_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Initialized merge tracking via "%s" with revisions "%s" from ' \ - % (NAME, revs) - print >>f, '%s' % source_url - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_avail(branch_dir, branch_props): - """Show commits available for merges.""" - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - report('skipping phantom revisions: %s' % phantom_revs) - if reflected_revs: - report('skipping reflected revisions: %s' % reflected_revs) - report('skipping initialized revisions: %s' % initialized_revs) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - avail_revs = source_revs - opts["merged-revs"] - blocked_revs - \ - reflected_revs - initialized_revs - - # Compose the set of revisions to show - revs = RevisionSet("") - report_msg = "revisions available to be merged are:" - if "avail" in opts["avail-showwhat"]: - revs |= avail_revs - if "blocked" in opts["avail-showwhat"]: - revs |= blocked_revs - report_msg = "revisions blocked are:" - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["avail-display"], - report_msg, - opts["source-url"]) - -def action_integrated(branch_dir, branch_props): - """Show change sets already merged. This set of revisions is - calculated from taking svnmerge-integrated property from the - branch, and subtracting any revision older than the branch - creation revision.""" - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - revs = merge_props_to_revision_set(branch_props, opts["source-pathid"]) - - # Lookup the oldest revision on the branch path. - oldest_src_rev = get_created_rev(opts["source-url"]) - - # Subtract any revisions which pre-date the branch. - report("subtracting revisions which pre-date the source URL (%d)" % - oldest_src_rev) - revs = revs - RevisionSet(range(1, oldest_src_rev)) - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["integrated-display"], - "revisions already integrated are:", opts["source-url"]) - -def action_merge(branch_dir, branch_props): - """Record merge meta data, and do the actual merge (if not - requested otherwise via --record-only).""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - - if opts["revision"]: - revs = RevisionSet(opts["revision"]) - else: - revs = source_revs - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - merged_revs = opts["merged-revs"] - - # Show what we're doing - if opts["verbose"]: # just to avoid useless calculations - if merged_revs & revs: - report('"%s" already contains revisions %s' % (branch_dir, - merged_revs & revs)) - if phantom_revs: - report('memorizing phantom revision(s): %s' % phantom_revs) - if reflected_revs: - report('memorizing reflected revision(s): %s' % reflected_revs) - if blocked_revs & revs: - report('skipping blocked revisions(s): %s' % (blocked_revs & revs)) - if initialized_revs: - report('skipping initialized revision(s): %s' % initialized_revs) - - # Compute final merge set. - revs = revs - merged_revs - blocked_revs - reflected_revs - \ - phantom_revs - initialized_revs - if not revs: - report('no revisions to merge, exiting') - return - - # When manually marking revisions as merged, we only update the - # integration meta data, and don't perform an actual merge. - record_only = opts["record-only"] - - if record_only: - report('recording merge of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('merging in revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the merge(s). Note: the starting revision number to 'svn merge' - # is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - old_block_props = get_block_props(branch_dir) - merge_metadata = logs[opts["source-url"]].merge_metadata() - block_metadata = logs[opts["source-url"]].block_metadata() - for start,end in minimal_merge_intervals(revs, phantom_revs): - if not record_only: - # Preset merge/blocked properties to the source value at - # the start rev to avoid spurious property conflicts - set_merge_props(branch_dir, merge_metadata.get(start - 1)) - set_block_props(branch_dir, block_metadata.get(start - 1)) - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (start - 1, end, opts["source-url"], branch_dir)) - # TODO: to support graph merging, add logic to merge the property - # meta-data manually - - # Update the set of merged revisions. - merged_revs = merged_revs | revs | reflected_revs | phantom_revs | initialized_revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - # Reset the blocked revs - set_block_props(branch_dir, old_block_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded merge of revisions %s via %s from ' % \ - (revs, NAME) - else: - print >>f, 'Merged revisions %s via %s from ' % \ - (revs, NAME) - print >>f, '%s' % opts["source-url"] - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], revs), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_block(branch_dir, branch_props): - """Block revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"]) - revs_to_block = source_revs - opts["merged-revs"] - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_block = RevisionSet(opts["revision"]) & revs_to_block - - if not revs_to_block: - error('no available revisions to block') - - # Change blocked information - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - blocked_revs = blocked_revs | revs_to_block - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Blocked revisions %s via %s' % (revs_to_block, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_block), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_unblock(branch_dir, branch_props): - """Unblock revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - revs_to_unblock = blocked_revs - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_unblock = revs_to_unblock & RevisionSet(opts["revision"]) - - if not revs_to_unblock: - error('no available revisions to unblock') - - # Change blocked information - blocked_revs = blocked_revs - revs_to_unblock - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Unblocked revisions %s via %s' % (revs_to_unblock, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_unblock), - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_rollback(branch_dir, branch_props): - """Rollback previously integrated revisions.""" - - # Make sure the revision arguments are present - if not opts["revision"]: - error("The '-r' option is mandatory for rollback") - - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - # Get the list of all revisions already merged into this source-pathid. - merged_revs = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # At which revision was the src created? - oldest_src_rev = get_created_rev(opts["source-url"]) - src_pre_exist_range = RevisionSet("1-%d" % oldest_src_rev) - - # Limit to revisions specified by -r (if any) - revs = merged_revs & RevisionSet(opts["revision"]) - - # make sure there's some revision to rollback - if not revs: - report("Nothing to rollback in revision range r%s" % opts["revision"]) - return - - # If even one specified revision lies outside the lifetime of the - # merge source, error out. - if revs & src_pre_exist_range: - err_str = "Specified revision range falls out of the rollback range.\n" - err_str += "%s was created at r%d" % (opts["source-pathid"], - oldest_src_rev) - error(err_str) - - record_only = opts["record-only"] - - if record_only: - report('recording rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the reverse merge(s). Note: the starting revision number - # to 'svn merge' is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - rollback_intervals = minimal_merge_intervals(revs, []) - # rollback in the reverse order of merge - rollback_intervals.reverse() - for start, end in rollback_intervals: - if not record_only: - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (end, start - 1, opts["source-url"], branch_dir)) - - # Write out commit message if desired - # calculate the phantom revs first - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded rollback of revisions %s via %s from ' % \ - (revs , NAME) - else: - print >>f, 'Rolled back revisions %s via %s from ' % \ - (revs , NAME) - print >>f, '%s' % opts["source-url"] - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - - # Update the set of merged revisions. - merged_revs = merged_revs - revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - -def action_uninit(branch_dir, branch_props): - """Uninit SOURCE URL.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # If the source-pathid does not have an entry in the svnmerge-integrated - # property, simply error out. - if not branch_props.has_key(opts["source-pathid"]): - error('Repository-relative path "%s" does not contain merge ' - 'tracking information for "%s"' \ - % (opts["source-pathid"], branch_dir)) - - del branch_props[opts["source-pathid"]] - - # Set merge property with the selected source deleted - set_merge_props(branch_dir, branch_props) - - # Set blocked revisions for the selected source to None - set_blocked_revs(branch_dir, opts["source-pathid"], None) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Removed merge tracking for "%s" for ' % NAME - print >>f, '%s' % opts["source-url"] - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -############################################################################### -# Command line parsing -- options and commands management -############################################################################### - -class OptBase: - def __init__(self, *args, **kwargs): - self.help = kwargs["help"] - del kwargs["help"] - self.lflags = [] - self.sflags = [] - for a in args: - if a.startswith("--"): self.lflags.append(a) - elif a.startswith("-"): self.sflags.append(a) - else: - raise TypeError, "invalid flag name: %s" % a - if kwargs.has_key("dest"): - self.dest = kwargs["dest"] - del kwargs["dest"] - else: - if not self.lflags: - raise TypeError, "cannot deduce dest name without long options" - self.dest = self.lflags[0][2:] - if kwargs: - raise TypeError, "invalid keyword arguments: %r" % kwargs.keys() - def repr_flags(self): - f = self.sflags + self.lflags - r = f[0] - for fl in f[1:]: - r += " [%s]" % fl - return r - -class Option(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs.setdefault("default", 0) - del kwargs["default"] - self.value = kwargs.setdefault("value", None) - del kwargs["value"] - OptBase.__init__(self, *args, **kwargs) - def apply(self, state, value): - assert value == "" - if self.value is not None: - state[self.dest] = self.value - else: - state[self.dest] += 1 - -class OptionArg(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs["default"] - del kwargs["default"] - self.metavar = kwargs.setdefault("metavar", None) - del kwargs["metavar"] - OptBase.__init__(self, *args, **kwargs) - - if self.metavar is None: - if self.dest is not None: - self.metavar = self.dest.upper() - else: - self.metavar = "arg" - if self.default: - self.help += " (default: %s)" % self.default - def apply(self, state, value): - assert value is not None - state[self.dest] = value - def repr_flags(self): - r = OptBase.repr_flags(self) - return r + " " + self.metavar - -class CommandOpts: - class Cmd: - def __init__(self, *args): - self.name, self.func, self.usage, self.help, self.opts = args - def short_help(self): - return self.help.split(".")[0] - def __str__(self): - return self.name - def __call__(self, *args, **kwargs): - return self.func(*args, **kwargs) - - def __init__(self, global_opts, common_opts, command_table, version=None): - self.progname = NAME - self.version = version.replace("%prog", self.progname) - self.cwidth = console_width() - 2 - self.ctable = command_table.copy() - self.gopts = global_opts[:] - self.copts = common_opts[:] - self._add_builtins() - for k in self.ctable.keys(): - cmd = self.Cmd(k, *self.ctable[k]) - opts = [] - for o in cmd.opts: - if isinstance(o, types.StringType) or \ - isinstance(o, types.UnicodeType): - o = self._find_common(o) - opts.append(o) - cmd.opts = opts - self.ctable[k] = cmd - - def _add_builtins(self): - self.gopts.append( - Option("-h", "--help", help="show help for this command and exit")) - if self.version is not None: - self.gopts.append( - Option("-V", "--version", help="show version info and exit")) - self.ctable["help"] = (self._cmd_help, - "help [COMMAND]", - "Display help for a specific command. If COMMAND is omitted, " - "display brief command description.", - []) - - def _cmd_help(self, cmd=None, *args): - if args: - self.error("wrong number of arguments", "help") - if cmd is not None: - cmd = self._command(cmd) - self.print_command_help(cmd) - else: - self.print_command_list() - - def _paragraph(self, text, width=78): - chunks = re.split("\s+", text.strip()) - chunks.reverse() - lines = [] - while chunks: - L = chunks.pop() - while chunks and len(L) + len(chunks[-1]) + 1 <= width: - L += " " + chunks.pop() - lines.append(L) - return lines - - def _paragraphs(self, text, *args, **kwargs): - pars = text.split("\n\n") - lines = self._paragraph(pars[0], *args, **kwargs) - for p in pars[1:]: - lines.append("") - lines.extend(self._paragraph(p, *args, **kwargs)) - return lines - - def _print_wrapped(self, text, indent=0): - text = self._paragraphs(text, self.cwidth - indent) - print text.pop(0) - for t in text: - print " " * indent + t - - def _find_common(self, fl): - for o in self.copts: - if fl in o.lflags+o.sflags: - return o - assert False, fl - - def _compute_flags(self, opts, check_conflicts=True): - back = {} - sfl = "" - lfl = [] - for o in opts: - sapp = lapp = "" - if isinstance(o, OptionArg): - sapp, lapp = ":", "=" - for s in o.sflags: - if check_conflicts and back.has_key(s): - raise RuntimeError, "option conflict: %s" % s - back[s] = o - sfl += s[1:] + sapp - for l in o.lflags: - if check_conflicts and back.has_key(l): - raise RuntimeError, "option conflict: %s" % l - back[l] = o - lfl.append(l[2:] + lapp) - return sfl, lfl, back - - def _extract_command(self, args): - """ - Try to extract the command name from the argument list. This is - non-trivial because we want to allow command-specific options even - before the command itself. - """ - opts = self.gopts[:] - for cmd in self.ctable.values(): - opts.extend(cmd.opts) - sfl, lfl, _ = self._compute_flags(opts, check_conflicts=False) - - lopts,largs = getopt.getopt(args, sfl, lfl) - if not largs: - return None - return self._command(largs[0]) - - def _fancy_getopt(self, args, opts, state=None): - if state is None: - state= {} - for o in opts: - if not state.has_key(o.dest): - state[o.dest] = o.default - - sfl, lfl, back = self._compute_flags(opts) - try: - lopts,args = getopt.gnu_getopt(args, sfl, lfl) - except AttributeError: - # Before Python 2.3, there was no gnu_getopt support. - # So we can't parse intermixed positional arguments - # and options. - lopts,args = getopt.getopt(args, sfl, lfl) - - for o,v in lopts: - back[o].apply(state, v) - return state, args - - def _command(self, cmd): - if not self.ctable.has_key(cmd): - self.error("unknown command: '%s'" % cmd) - return self.ctable[cmd] - - def parse(self, args): - if not args: - self.print_small_help() - sys.exit(0) - - cmd = None - try: - cmd = self._extract_command(args) - opts = self.gopts[:] - if cmd: - opts.extend(cmd.opts) - args.remove(cmd.name) - state, args = self._fancy_getopt(args, opts) - except getopt.GetoptError, e: - self.error(e, cmd) - - # Handle builtins - if self.version is not None and state["version"]: - self.print_version() - sys.exit(0) - if state["help"]: # special case for --help - if cmd: - self.print_command_help(cmd) - sys.exit(0) - cmd = self.ctable["help"] - else: - if cmd is None: - self.error("command argument required") - if str(cmd) == "help": - cmd(*args) - sys.exit(0) - return cmd, args, state - - def error(self, s, cmd=None): - print >>sys.stderr, "%s: %s" % (self.progname, s) - if cmd is not None: - self.print_command_help(cmd) - else: - self.print_small_help() - sys.exit(1) - def print_small_help(self): - print "Type '%s help' for usage" % self.progname - def print_usage_line(self): - print "usage: %s [options...] [args...]\n" % self.progname - def print_command_list(self): - print "Available commands (use '%s help COMMAND' for more details):\n" \ - % self.progname - cmds = self.ctable.keys() - cmds.sort() - indent = max(map(len, cmds)) - for c in cmds: - h = self.ctable[c].short_help() - print " %-*s " % (indent, c), - self._print_wrapped(h, indent+6) - def print_command_help(self, cmd): - cmd = self.ctable[str(cmd)] - print 'usage: %s %s\n' % (self.progname, cmd.usage) - self._print_wrapped(cmd.help) - def print_opts(opts, self=self): - if not opts: return - flags = [o.repr_flags() for o in opts] - indent = max(map(len, flags)) - for f,o in zip(flags, opts): - print " %-*s :" % (indent, f), - self._print_wrapped(o.help, indent+5) - print '\nCommand options:' - print_opts(cmd.opts) - print '\nGlobal options:' - print_opts(self.gopts) - - def print_version(self): - print self.version - -############################################################################### -# Options and Commands description -############################################################################### - -global_opts = [ - Option("-F", "--force", - help="force operation even if the working copy is not clean, or " - "there are pending updates"), - Option("-n", "--dry-run", - help="don't actually change anything, just pretend; " - "implies --show-changes"), - Option("-s", "--show-changes", - help="show subversion commands that make changes"), - Option("-v", "--verbose", - help="verbose mode: output more information about progress"), - OptionArg("-u", "--username", - default=None, - help="invoke subversion commands with the supplied username"), - OptionArg("-p", "--password", - default=None, - help="invoke subversion commands with the supplied password"), - OptionArg("-c", "--config-dir", metavar="DIR", - default=None, - help="cause subversion commands to consult runtime config directory DIR"), -] - -common_opts = [ - Option("-b", "--bidirectional", - value=True, - default=False, - help="remove reflected and initialized revisions from merge candidates. " - "Not required but may be specified to speed things up slightly"), - OptionArg("-f", "--commit-file", metavar="FILE", - default="svnmerge-commit-message.txt", - help="set the name of the file where the suggested log message " - "is written to"), - Option("-M", "--record-only", - value=True, - default=False, - help="do not perform an actual merge of the changes, yet record " - "that a merge happened"), - OptionArg("-r", "--revision", - metavar="REVLIST", - default="", - help="specify a revision list, consisting of revision numbers " - 'and ranges separated by commas, e.g., "534,537-539,540"'), - OptionArg("-S", "--source", "--head", - default=None, - help="specify a merge source for this branch. It can be either " - "a working directory path, a full URL, or an unambiguous " - "substring of one of the locations for which merge tracking was " - "already initialized. Needed only to disambiguate in case of " - "multiple merge sources"), -] - -command_table = { - "init": (action_init, - "init [OPTION...] [SOURCE]", - """Initialize merge tracking from SOURCE on the current working - directory. - - If SOURCE is specified, all the revisions in SOURCE are marked as already - merged; if this is not correct, you can use --revision to specify the - exact list of already-merged revisions. - - If SOURCE is omitted, then it is computed from the "svn cp" history of the - current working directory (searching back for the branch point); in this - case, %s assumes that no revision has been integrated yet since - the branch point (unless you teach it with --revision).""" % NAME, - [ - "-f", "-r", # import common opts - OptionArg("-L", "--location-type", - dest="location-type", - default="path", - help="Use this type of location identifier in the new " + - "Subversion properties; 'uuid', 'url', or 'path' " + - "(default)"), - ]), - - "avail": (action_avail, - "avail [OPTION...] [PATH]", - """Show unmerged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to those - also specified in the option. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions.""", - [ - Option("-A", "--all", - dest="avail-showwhat", - value=["blocked", "avail"], - default=["avail"], - help="show both available and blocked revisions (aka ignore " - "blocked revisions)"), - "-b", - Option("-B", "--blocked", - dest="avail-showwhat", - value=["blocked"], - help="show the blocked revision list (see '%s block')" % NAME), - Option("-d", "--diff", - dest="avail-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("--summarize", - dest="avail-display", - value="summarize", - help="show summarized diff instead of revision list"), - Option("-l", "--log", - dest="avail-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "integrated": (action_integrated, - "integrated [OPTION...] [PATH]", - """Show merged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to - those also specified in the option.""", - [ - Option("-d", "--diff", - dest="integrated-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("-l", "--log", - dest="integrated-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "rollback": (action_rollback, - "rollback [OPTION...] [PATH]", - """Rollback previously merged in revisions from PATH. The - --revision option is mandatory, and specifies which revisions - will be rolled back. Only the previously integrated merges - will be rolled back. - - When manually rolling back changes, --record-only can be used to - instruct %s that a manual rollback of a certain revision - already happened, so that it can record it and offer that - revision for merge henceforth.""" % (NAME), - [ - "-f", "-r", "-S", "-M", # import common opts - ]), - - "merge": (action_merge, - "merge [OPTION...] [PATH]", - """Merge in revisions into PATH from its source. If --revision is omitted, - all the available revisions will be merged. In any case, already merged-in - revisions will NOT be merged again. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions. - - When manually merging changes across branches, --record-only can - be used to instruct %s that a manual merge of a certain revision - already happened, so that it can record it and not offer that - revision for merge anymore. Conversely, when there are revisions - which should not be merged, use '%s block'.""" % (NAME, NAME), - [ - "-b", "-f", "-r", "-S", "-M", # import common opts - ]), - - "block": (action_block, - "block [OPTION...] [PATH]", - """Block revisions within PATH so that they disappear from the available - list. This is useful to hide revisions which will not be integrated. - If --revision is omitted, it defaults to all the available revisions. - - Do not use this option to hide revisions that were manually merged - into the branch. Instead, use '%s merge --record-only', which - records that a merge happened (as opposed to a merge which should - not happen).""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "unblock": (action_unblock, - "unblock [OPTION...] [PATH]", - """Revert the effect of '%s block'. If --revision is omitted, all the - blocked revisions are unblocked""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "uninit": (action_uninit, - "uninit [OPTION...] [PATH]", - """Remove merge tracking information from PATH. It cleans any kind of merge - tracking information (including the list of blocked revisions). If there - are multiple sources, use --source to indicate which source you want to - forget about.""", - [ - "-f", "-S", # import common opts - ]), -} - - -def main(args): - global opts - - # Initialize default options - opts = default_opts.copy() - logs.clear() - - optsparser = CommandOpts(global_opts, common_opts, command_table, - version="%%prog r%s\n modified: %s\n\n" - "Copyright (C) 2004,2005 Awarix Inc.\n" - "Copyright (C) 2005, Giovanni Bajo" - % (__revision__, __date__)) - - cmd, args, state = optsparser.parse(args) - opts.update(state) - - source = opts.get("source", None) - branch_dir = "." - - if str(cmd) == "init": - if len(args) == 1: - source = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - elif str(cmd) in command_table.keys(): - if len(args) == 1: - branch_dir = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - else: - assert False, "command not handled: %s" % cmd - - # Validate branch_dir - if not is_wc(branch_dir): - if str(cmd) == "avail": - info = None - # it should be noted here that svn info does not error exit - # if an invalid target is specified to it (as is - # intuitive). so the try, except code is not absolutely - # necessary. but, I retain it to indicate the intuitive - # handling. - try: - info = get_svninfo(branch_dir) - except LaunchError: - pass - # test that we definitely targeted a subversion directory, - # mirroring the purpose of the earlier is_wc() call - if info is None or not info.has_key("Node Kind") or info["Node Kind"] != "directory": - error('"%s" is neither a valid URL, nor a working directory' % branch_dir) - else: - error('"%s" is not a subversion working directory' % branch_dir) - - # give out some hints as to potential pathids - PathIdentifier.hint(branch_dir) - if source: PathIdentifier.hint(source) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - - # Calculate source_url and source_path - report("calculate source path for the branch") - if not source: - if str(cmd) == "init": - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(branch_dir) - if not cf_source: - error('no copyfrom info available. ' - 'Explicit source argument (-S/--source) required.') - opts["source-url"] = get_repo_root(branch_dir) + cf_source - opts["source-pathid"] = PathIdentifier.from_target(opts["source-url"]) - - if not opts["revision"]: - opts["revision"] = "1-" + cf_rev - else: - opts["source-pathid"] = get_default_source(branch_dir, branch_props) - opts["source-url"] = opts["source-pathid"].get_url() - - assert is_pathid(opts["source-pathid"]) - assert is_url(opts["source-url"]) - else: - # The source was given as a command line argument and is stored in - # SOURCE. Ensure that the specified source does not end in a /, - # otherwise it's easy to have the same source path listed more - # than once in the integrated version properties, with and without - # trailing /'s. - source = rstrip(source, "/") - if not is_wc(source) and not is_url(source): - # Check if it is a substring of a pathid recorded - # within the branch properties. - found = [] - for pathid in branch_props.keys(): - if pathid.match_substring(source): - found.append(pathid) - if len(found) == 1: - # (assumes pathid is a repository-relative-path) - source_pathid = found[0] - source = source_pathid.get_url() - else: - error('"%s" is neither a valid URL, nor an unambiguous ' - 'substring of a repository path, nor a working directory' - % source) - else: - source_pathid = PathIdentifier.from_target(source) - - source_pathid = PathIdentifier.from_target(source) - if str(cmd) == "init" and \ - source_pathid == PathIdentifier.from_target("."): - error("cannot init integration source path '%s'\n" - "Its repository-relative path must differ from the " - "repository-relative path of the current directory." - % source_pathid) - opts["source-pathid"] = source_pathid - opts["source-url"] = target_to_url(source) - - # Sanity check source_url - assert is_url(opts["source-url"]) - # SVN does not support non-normalized URL (and we should not - # have created them) - assert opts["source-url"].find("/..") < 0 - - report('source is "%s"' % opts["source-url"]) - - # Get previously merged revisions (except when command is init) - if str(cmd) != "init": - opts["merged-revs"] = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # Perform the action - cmd(branch_dir, branch_props) - - -if __name__ == "__main__": - try: - main(sys.argv[1:]) - except LaunchError, (ret, cmd, out): - err_msg = "command execution failed (exit code: %d)\n" % ret - err_msg += cmd + "\n" - err_msg += "".join(out) - error(err_msg) - except KeyboardInterrupt: - # Avoid traceback on CTRL+C - print "aborted by user" - sys.exit(1) diff --git a/extra/subversion/svnserve b/extra/subversion/svnserve deleted file mode 100755 index 670fee742..000000000 --- a/extra/subversion/svnserve +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/svnserve - -PID=`pidof -o %PPID /usr/bin/svnserve` -case "$1" in - start) - stat_busy "Starting svnserve" - if [ -z "$PID" ]; then - if [ -n "$SVNSERVE_USER" ]; then - su -s '/bin/sh' $SVNSERVE_USER -c "/usr/bin/svnserve -d $SVNSERVE_ARGS" & - else - /usr/bin/svnserve -d $SVNSERVE_ARGS & - fi - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon svnserve - stat_done - fi - ;; - stop) - stat_busy "Stopping svnserve" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon svnserve - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/extra/subversion/svnserve.conf b/extra/subversion/svnserve.conf deleted file mode 100644 index 37fb7ea10..000000000 --- a/extra/subversion/svnserve.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Parameters to be passed to svnserve -# -#SVNSERVE_ARGS="-r /path/to/some/repos" -SVNSERVE_ARGS="" - -#SVNSERVE_USER="svn" diff --git a/extra/tightvnc/LinuxMachineDefines-arm.patch b/extra/tightvnc/LinuxMachineDefines-arm.patch deleted file mode 100644 index a942a3a58..000000000 --- a/extra/tightvnc/LinuxMachineDefines-arm.patch +++ /dev/null @@ -1,81 +0,0 @@ ---- vnc_unixsrc/Xvnc/config/cf/linux.cf.orig 2010-09-21 20:00:26.000000000 +0000 -+++ vnc_unixsrc/Xvnc/config/cf/linux.cf 2010-09-21 20:02:08.000000000 +0000 -@@ -249,42 +249,36 @@ - - #ifdef i386Architecture - #define OptimizedCDebugFlags DefaultGcc2i386Opt --#define LinuxMachineDefines -D__i386__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* i386Architecture */ - - #ifdef x86_64Architecture - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__x86_64__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 - #endif /* x86_64Architecture */ - - #ifdef AlphaArchitecture - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__alpha__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 - #endif /* AlphaArchitecture */ - - #ifdef Mc68020Architecture - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__mc68000__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* Mc68020Architecture */ - - #ifdef s390Architecture - #define OptimzedCDebugFlags -O2 --#define LinuxMachineDefines -D__s390__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* s390Architecture */ - - #ifdef s390xArchitecture - #define OptimzedCDebugFlags -O2 --#define LinuxMachineDefines -D__s390x__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* s390xArchitecture */ -@@ -292,7 +286,6 @@ - #ifdef PowerPCArchitecture - #define DefaultCCOptions -fsigned-char - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__powerpc__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* PowerPCArchitecture */ -@@ -300,14 +293,12 @@ - #ifdef ArmArchitecture - #define DefaultCCOptions -fsigned-char - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__arm__ - #define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* Arm */ - - #ifdef SparcArchitecture - #define OptimizedCDebugFlags -O2 --#define LinuxMachineDefines -D__sparc__ - #define ServerOSDefines -DDDXOSINIT - #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #define AsVISOption -Av9a -@@ -327,10 +318,10 @@ - Always define _REENTRANT since we may use threaded libraries */ - - /* REMOVE --#define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines -+#define StandardDefines -Dlinux LinuxSourceDefines - */ - --#define StandardDefines -Dlinux LinuxMachineDefines \ -+#define StandardDefines -Dlinux \ - LinuxSourceDefines -D_REENTRANT - - /* END ORL VNC modification diff --git a/extra/tightvnc/PKGBUILD b/extra/tightvnc/PKGBUILD deleted file mode 100644 index 703966943..000000000 --- a/extra/tightvnc/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# Maintainer: Paul Mattal - -# This PKGBUILD was submitted by a user - -pkgname=tightvnc -pkgver=1.3.10 -pkgrel=5 -pkgdesc="VNC Unix server && viewer" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.tightvnc.com" -depends=('libjpeg>=7' 'zlib' 'libxaw' 'libxp' 'xorg-xauth') -makedepends=('imake') -conflicts=('vnc') -options=(!makeflags) -source=(http://downloads.sf.net/sourceforge/vnc-tight/$pkgname-${pkgver}_unixsrc.tar.bz2 - tightvnc-fontpath-xcolors.patch - LinuxMachineDefines-arm.patch) - -build() { - cd $srcdir/vnc_unixsrc || return 1 - patch -Np1 -i ../tightvnc-fontpath-xcolors.patch || return 1 - sed -i 's|/usr/local/|/usr/share/|' vncserver || return 1 -# The following patch allows the package to compile on ARM. It may not -# be the best way to do it, but it works. A more elegant solution -# is welcomed. - patch -Np1 -i ../LinuxMachineDefines-arm.patch || return 1 - - xmkmf || return 1 - make World || return 1 - cd Xvnc || return 1 - ./configure || return 1 - sed 's|PROTO_DEFINES =|PROTO_DEFINES = -D_XOPEN_SOURCE=500L|' \ - -i programs/Xserver/os/Makefile lib/font/fc/Makefile || return 1 - make || return 1 - cd .. || return 1 - mkdir -p $pkgdir/usr/bin $pkgdir/usr/share/man/man1 || return 1 - ./vncinstall $pkgdir/usr/bin $pkgdir/usr/share/man || return 1 - - # install java classes - mkdir -p $pkgdir/usr/share/vnc/classes || return 1 - install -Dm644 $srcdir/vnc_unixsrc/classes/* \ - $pkgdir/usr/share/vnc/classes || return 1 -} -md5sums=('397b35faad32d5246b6d44b142f8304f' - '21aa7f3376ec3c608ff22d199a19c601' - '48a419227940ef3dcd92fab7f8809845') diff --git a/extra/tightvnc/tightvnc-fontpath-xcolors.patch b/extra/tightvnc/tightvnc-fontpath-xcolors.patch deleted file mode 100644 index 10bc4b596..000000000 --- a/extra/tightvnc/tightvnc-fontpath-xcolors.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -urN vnc_unixsrc/vncserver vnc_unixsrc.fixed/vncserver ---- vnc_unixsrc/vncserver 2009-02-11 23:27:18.000000000 -0500 -+++ vnc_unixsrc.fixed/vncserver 2009-04-23 21:46:46.000000000 -0400 -@@ -34,7 +34,8 @@ - $desktopName = "X"; - $vncClasses = "/usr/local/vnc/classes"; - $vncUserDir = "$ENV{HOME}/.vnc"; --$fontPath = "unix/:7100"; -+$fontPath = "/usr/share/fonts/misc/,/usr/share/fonts/75dpi/,/usr/share/fonts/100dpi/,/usr/share/fonts/Type1/"; -+$colorPath = "/usr/share/X11/rgb"; - $authType = "-rfbauth $vncUserDir/passwd"; - - # Read configuration from the system-wide and user files if present. diff --git a/extra/wavpack/PKGBUILD b/extra/wavpack/PKGBUILD deleted file mode 100755 index dfd9178c5..000000000 --- a/extra/wavpack/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# Maintainer: Mike Staszel -# Contributor: Shinlun Hsieh -# Contributor: Michal Hybner - -# Plugbox changes: -# Removed "--enable-mmx" from the ./configure line - -pkgname=wavpack -pkgver=4.60.1 -pkgrel=1 -pkgdesc="Audio compression format with lossless, lossy, and hybrid compression modes" -arch=(arm) -url="http://www.wavpack.com/" -license=('custom') -depends=('glibc') -options=('!libtool') -source=(http://www.wavpack.com/${pkgname}-${pkgver}.tar.bz2) -md5sums=('7bb1528f910e4d0003426c02db856063') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-static || return 1 - make || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install || return 1 - install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname} - install -m644 license.txt ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1 - rm -f ${pkgdir}/usr/lib/*.a -} diff --git a/extra/x264/PKGBUILD b/extra/x264/PKGBUILD deleted file mode 100755 index df0240b9a..000000000 --- a/extra/x264/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# Maintainer : Mike Staszel -# Contributor: damir -# Contributor: Paul Mattal - -# Plugbox changes: -# - Added "--disable-asm" to ./configure to work with ARMv5 CPUs. - -pkgname=x264 -pkgver=20100607 -pkgrel=1 -pkgdesc="free library for encoding H264/AVC video streams" -arch=('i686' 'x86_64') -url="http://www.videolan.org/developers/x264.html" -license=('GPL') -depends=('glibc') -makedepends=('yasm') -source=(ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-$pkgver-2245.tar.bz2) -md5sums=('d796cbb3eb4ce5126b861aed64d0058e') - -build() { - cd "$srcdir/$pkgname-snapshot-$pkgver-2245" || return 1 - - ./configure --enable-shared --disable-asm || return 1 - - make || return 1 - make DESTDIR="$pkgdir" \ - bindir=/usr/bin \ - libdir=/usr/lib \ - includedir=/usr/include \ - install || return 1 -} - -# vim:set ts=2 sw=2 et: diff --git a/extra/xorg-server-utils/LICENSE.iceauth b/extra/xorg-server-utils/LICENSE.iceauth deleted file mode 100644 index 06941b395..000000000 --- a/extra/xorg-server-utils/LICENSE.iceauth +++ /dev/null @@ -1,25 +0,0 @@ - Copyright 1989, 1998 The Open Group - - Permission to use, copy, modify, distribute, and sell this software and its - documentation for any purpose is hereby granted without fee, provided that - the above copyright notice appear in all copies and that both that - copyright notice and this permission notice appear in supporting - documentation. - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of The Open Group shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from The Open Group. - * * - * Original Author of "xauth" : Jim Fulton, MIT X Consortium - * Modified into "iceauth" : Ralph Mor, X Consortium - */ diff --git a/extra/xorg-server-utils/LICENSE.xcmsdb b/extra/xorg-server-utils/LICENSE.xcmsdb deleted file mode 100644 index 132ace655..000000000 --- a/extra/xorg-server-utils/LICENSE.xcmsdb +++ /dev/null @@ -1,18 +0,0 @@ - (c) Copyright 1990 Tektronix Inc. - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the name of Tektronix not be used - in advertising or publicity pertaining to distribution of the software - without specific, written prior permission. - - Tektronix disclaims all warranties with regard to this software, including - all implied warranties of merchantability and fitness, in no event shall - Tektronix be liable for any special, indirect or consequential damages or - any damages whatsoever resulting from loss of use, data or profits, - whether in an action of contract, negligence or other tortious action, - arising out of or in connection with the use or performance of this - software. diff --git a/extra/xorg-server-utils/LICENSE.xrdb b/extra/xorg-server-utils/LICENSE.xrdb deleted file mode 100644 index f64edd920..000000000 --- a/extra/xorg-server-utils/LICENSE.xrdb +++ /dev/null @@ -1,24 +0,0 @@ - COPYRIGHT 1987, 1991 - DIGITAL EQUIPMENT CORPORATION - MAYNARD, MASSACHUSETTS - MASSACHUSETTS INSTITUTE OF TECHNOLOGY - CAMBRIDGE, MASSACHUSETTS - ALL RIGHTS RESERVED. - - THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE AND - SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION. - DIGITAL MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS SOFTWARE FOR - ANY PURPOSE. IT IS SUPPLIED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. - - IF THE SOFTWARE IS MODIFIED IN A MANNER CREATING DERIVATIVE COPYRIGHT RIGHTS, - APPROPRIATE LEGENDS MAY BE PLACED ON THE DERIVATIVE WORK IN ADDITION TO THAT - SET FORTH ABOVE. - - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, provided - that the above copyright notice appear in all copies and that both that - copyright notice and this permission notice appear in supporting - documentation, and that the name of Digital Equipment Corporation not be - used in advertising or publicity pertaining to distribution of the software - without specific, written prior permission. diff --git a/extra/xorg-server-utils/LICENSE.xrefresh b/extra/xorg-server-utils/LICENSE.xrefresh deleted file mode 100644 index 8a88f724b..000000000 --- a/extra/xorg-server-utils/LICENSE.xrefresh +++ /dev/null @@ -1,42 +0,0 @@ - Copyright 1987, 1988, 1998 The Open Group - - Permission to use, copy, modify, distribute, and sell this software and its - documentation for any purpose is hereby granted without fee, provided that - the above copyright notice appear in all copies and that both that - copyright notice and this permission notice appear in supporting - documentation. - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of The Open Group shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from The Open Group. - - - Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the name of Digital not be - used in advertising or publicity pertaining to distribution of the - software without specific, written prior permission. - - DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING - ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL - DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR - ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, - WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, - ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS - SOFTWARE. diff --git a/extra/xorg-server-utils/LICENSE.xset b/extra/xorg-server-utils/LICENSE.xset deleted file mode 100644 index ad6c47d99..000000000 --- a/extra/xorg-server-utils/LICENSE.xset +++ /dev/null @@ -1,21 +0,0 @@ - Copyright 1985, 1998 The Open Group - - Permission to use, copy, modify, distribute, and sell this software and its - documentation for any purpose is hereby granted without fee, provided that - the above copyright notice appear in all copies and that both that - copyright notice and this permission notice appear in supporting - documentation. - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of The Open Group shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from The Open Group. diff --git a/extra/xorg-server-utils/LICENSE.xsetroot b/extra/xorg-server-utils/LICENSE.xsetroot deleted file mode 100644 index b8e83f970..000000000 --- a/extra/xorg-server-utils/LICENSE.xsetroot +++ /dev/null @@ -1,24 +0,0 @@ - Copyright 1987, 1998 The Open Group - - Permission to use, copy, modify, distribute, and sell this software and its - documentation for any purpose is hereby granted without fee, provided that - the above copyright notice appear in all copies and that both that - copyright notice and this permission notice appear in supporting - documentation. - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of The Open Group shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from The Open Group. - */ - * Author: Mark Lillibridge, MIT Project Athena - * 11-Jun-87 diff --git a/extra/xorg-server-utils/LICENSE.xvidtune b/extra/xorg-server-utils/LICENSE.xvidtune deleted file mode 100644 index 8757fc0b2..000000000 --- a/extra/xorg-server-utils/LICENSE.xvidtune +++ /dev/null @@ -1,25 +0,0 @@ - Copyright (c) 1995 Kaleb S. KEITHLEY - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL Kaleb S. KEITHLEY BE LIABLE FOR ANY CLAIM, DAMAGES - OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of Kaleb S. KEITHLEY - shall not be used in advertising or otherwise to promote the sale, use - or other dealings in this Software without prior written authorization - from Kaleb S. KEITHLEY. diff --git a/extra/xorg-server-utils/PKGBUILD b/extra/xorg-server-utils/PKGBUILD deleted file mode 100644 index b4366a4d7..000000000 --- a/extra/xorg-server-utils/PKGBUILD +++ /dev/null @@ -1,67 +0,0 @@ -# Maintainer: Mike Staszel -# Contributor: Jan de Groot -# Written by ArchMobile.org - -pkgname=xorg-server-utils -pkgver=7.4 -pkgrel=6 -pkgdesc="X.Org utilities required by xorg-server" -arch=(arm) -url="http://xorg.freedesktop.org/" -license=('custom') -depends=('libxfontcache' 'libxi' 'libxaw' 'libxxf86misc' 'libxrandr' 'libxxf86vm' 'mcpp>=2.6') -makedepends=('pkgconfig' 'xbitmaps' 'bigreqsproto' 'xtrans') -groups=('xorg') -source=(${url}/releases/individual/app/iceauth-1.0.2.tar.bz2 - ${url}/releases/individual/app/rgb-1.0.3.tar.bz2 - ${url}/releases/individual/app/sessreg-1.0.4.tar.bz2 - ${url}/releases/individual/app/xcmsdb-1.0.1.tar.bz2 - ${url}/releases/individual/app/xbacklight-1.1.tar.bz2 - ${url}/releases/individual/app/xgamma-1.0.2.tar.bz2 - ${url}/releases/individual/app/xhost-1.0.2.tar.bz2 - ${url}/releases/individual/app/xinput-1.4.2.tar.bz2 - ${url}/releases/individual/app/xmodmap-1.0.3.tar.bz2 - ${url}/releases/individual/app/xrandr-1.3.0.tar.bz2 - ${url}/releases/individual/app/xrdb-1.0.5.tar.bz2 - ${url}/releases/individual/app/xrefresh-1.0.2.tar.bz2 - ${url}/releases/individual/app/xset-1.0.4.tar.bz2 - ${url}/releases/individual/app/xsetmode-1.0.0.tar.bz2 - ${url}/releases/individual/app/xsetroot-1.0.2.tar.bz2 - ${url}/releases/individual/app/xvidtune-1.0.1.tar.bz2 - LICENSE.iceauth LICENSE.xcmsdb LICENSE.xrdb LICENSE.xrefresh - LICENSE.xset LICENSE.xsetroot LICENSE.xvidtune) -md5sums=('7ab8b64edf0212a9d9a3c8129901a450' '44ea16cc3104de6401bc74035f642357'\ - '839e968d7197b9563f0fd8a5a3aac2e3' '8579d5f50ba7f0c4a5bf16b9670fea01'\ - '51b4a1c0ae2b3bd77417306fd78a3e94' 'f13ddedaa63a608d3b025d326f4f5b5d'\ - 'f746aba36f075ae4cae313d849a94f4e' '58e619576cbf4b6057eebb7a97fe2ddf'\ - '626731003ec22a74ecf9e44ed098bbdf' '616612a15711a4422e71be6acc42ca3c'\ - '9c30b8e1709d5367beb7706146640c07' '1228f890f86148e4e6ae22aa73118cbb'\ - '2f41fd983ba4d89419204854936025e2' 'd074e79d380b031d2f60e4cd56538c93'\ - '9af7db9f3052aef0b11636720b3101dd' 'e0744594f4e5969b20df28d897781318'\ - '65695dc24c24958190724a23655ffda7' 'b6235416dca2205f0ba83c0c4b3ddeb8'\ - 'd0a9bf9f958d238583af763819d64b5f' '008d85623476ccad16e056809ed43807'\ - '19fa75322c9c3a40c20787c07ed3f8af' '3485f0bcea219af946adf6492f55b54c'\ - '4e6babde6334e3c5cb4a3136526aa564') - -build() { - cd "${srcdir}" - for i in *; do - if [ -d "${i}" ]; then - pushd "${i}" - case "${i}" in - xrdb*) - ./configure --prefix=/usr --mandir=/usr/share/man --with-cpp=/usr/bin/mcpp\ -@old || return 1 - ;; - *) - ./configure --prefix=/usr --mandir=/usr/share/man || return 1 - ;; - esac - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -D -m644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE.${i%-*} || return 1 - popd - fi - done -# Replacing stub license files - install -D -m644 "${srcdir}"/LICENSE.* "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 -}