PortSystem 1.0

name			subversion-python27bindings
version			1.10.0
revision		1
categories		devel python
platforms		darwin
maintainers		{geeklair.net:dluke @danielluke} blair
description		Python bindings for the subversion version control system (svn)
license			Apache-2

long_description	Subversion (svn) is a version control system designed to be \
			as similar to cvs(1) as possible, while fixing many \
			outstanding problems with cvs(1). The python bindings \
			provide access to subversion API from python.

homepage		http://subversion.apache.org/
master_sites		apache:subversion
use_bzip2		yes
checksums	sha1	345bc84edc5fe72f70997d247230fd8d3a18d83b \
		rmd160	ccde1df065be6c997967830053a03b6bdc68503e \
		sha256	2cf23f3abb837dea0585a6b0ebd70e80e01f95bddef7c1aa097c18e3eaa6b584 \
		size	8369823
		
distname		subversion-${version}
dist_subdir		subversion

depends_lib		port:expat \
			port:apr port:apr-util \
			port:db46 port:subversion \
			port:python27 \
			port:sqlite3 \
			port:gettext port:libiconv \
			port:serf1 port:cyrus-sasl2 \
			port:libmagic port:libcomerr \
			port:zlib port:libutf8proc \
			port:lz4

depends_build		port:swig

post-patch {
	system "export LANG=C; cd ${worksrcpath}; find build* Makefile.in subversion/bindings/swig/python -type f -print0 | xargs -0 sed -i -e 's/libsvn_swig_py/libsvn_swig_py27/g'"
	file rename \
		${worksrcpath}/subversion/bindings/swig/python/libsvn_swig_py \
		${worksrcpath}/subversion/bindings/swig/python/libsvn_swig_py27
}

configure.args		--with-berkeley-db=:${prefix}/include/db46:${prefix}/lib/db46:db-4.6 \
			--with-apr=${prefix}/bin/apr-1-config \
			--with-apr-util=${prefix}/bin/apu-1-config --without-apxs \
			--mandir=\\\${prefix}/share/man \
			--with-serf=${prefix} \
			--with-sasl=${prefix} \
			--with-libmagic=${prefix} \
			--without-gnome-keyring

configure.env		ac_cv_path_PYTHON=${prefix}/bin/python2.7 \
			ac_cv_python_includes=-I${frameworks_dir}/Python.framework/Versions/2.7/include/python2.7 \
			ac_cv_python_link="${configure.cc} -L${prefix}/lib -bundle -undefined dynamic_lookup ${frameworks_dir}/Python.framework/Versions/2.7/Python" \
			ac_cv_python_libs="-L${prefix}/lib -bundle -undefined dynamic_lookup ${frameworks_dir}/Python.framework/Versions/2.7/Python" \
			ac_cv_python_compile=${configure.cc}

use_parallel_build      yes
build.target		swig-py
destroot.target		install-swig-py DESTDIR=${destroot}

test.run		yes
test.target		check-swig-py

pre-test {
			set x {}
			fs-traverse dir ${worksrcpath}/subversion {
				if {[file tail ${dir}] == ".libs" && [file isdirectory ${dir}]} {
				lappend x ${dir}
				continue
				}
			}
			test.env-append DYLD_LIBRARY_PATH=[join ${x} ":"]
			}

pre-configure {		reinplace "s|hardcode_direct=yes|hardcode_direct=no|g" \
				${worksrcpath}/configure
			}

post-configure {	reinplace "s|need_relink=yes|need_relink=no|g" \
				${worksrcpath}/libtool
			}

variant no_bdb description {Build without support for BerkeleyDB repositories} {
			depends_lib-delete	port:db46
			configure.args-delete 	--with-berkeley-db=:${prefix}/include/db46:${prefix}/lib/db46:db-4.6
			configure.args-append	--without-berkeley-db
			}

post-destroot {
		set PYTHON_PATH ${frameworks_dir}/Python.framework/Versions/2.7/lib/python2.7

		xinstall -m 755 -d ${destroot}${PYTHON_PATH}/site-packages
		xinstall -m 755 ${portpath}/${filesdir}/svn-python.pth \
			${destroot}${PYTHON_PATH}/site-packages
		reinplace "s|@PREFIX@|${prefix}|g" \
			${destroot}${PYTHON_PATH}/site-packages/svn-python.pth

		file rename "${destroot}${prefix}/lib/svn-python" \
			"${destroot}${prefix}/lib/svn-python2.7"
		}

# CarbonCore/MacTypes.h: No such file or directory
platform puredarwin {		configure.args-append \
					--disable-keychain
				}

livecheck.type	regex
livecheck.url	http://svn.apache.org/repos/asf/subversion/tags/
livecheck.regex	"(\\d+\\.\\d+\\.\\d+)/"