Files
haikuports/dev-vcs/subversion/subversion-1.14.3.recipe
2024-08-24 11:49:28 +02:00

222 lines
7.0 KiB
Bash

SUMMARY="Open source version control system"
DESCRIPTION="Subversion (svn) exists to be universally recognized and adopted \
as an open-source, centralized version control system characterized by its \
reliability as a safe haven for valuable data; the simplicity of its model \
and usage; and its ability to support the needs of a wide variety of users \
and projects, from individuals to large-scale enterprise operations."
HOMEPAGE="https://subversion.apache.org/"
COPYRIGHT="2010-2020 The Apache Software Foundation"
LICENSE="Apache-Subversion"
REVISION="3"
SOURCE_URI="http://archive.apache.org/dist/subversion/subversion-$portVersion.tar.bz2"
CHECKSUM_SHA256="949efd451a09435f7e8573574c71c7b71b194d844890fa49cd61d2262ea1a440"
PATCHES="subversion-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
USER_SETTINGS_FILES="
settings/subversion directory
"
PROVIDES="
subversion$secondaryArchSuffix = $portVersion compat >= 1.8
cmd:svn = $portVersion compat >= 1.8
cmd:svnadmin = $portVersion compat >= 1.8
cmd:svnbench = $portVersion compat >= 1.9
cmd:svndumpfilter = $portVersion compat >= 1.8
cmd:svnfsfs = $portVersion compat >= 1.9
cmd:svnlook = $portVersion compat >= 1.8
cmd:svnmucc = $portVersion compat >= 1.8
cmd:svnrdump = $portVersion compat >= 1.8
cmd:svnserve = $portVersion compat >= 1.8
cmd:svnsync = $portVersion compat >= 1.8
cmd:svnversion = $portVersion compat >= 1.8
lib:libsvn_client_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_delta_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_diff_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_fs_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_fs_fs_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_fs_util_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_fs_x_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_ra_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_ra_local_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_ra_serf_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_ra_svn_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_repos_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_subr_1$secondaryArchSuffix = 0.0.0 compat >= 0
lib:libsvn_wc_1$secondaryArchSuffix = 0.0.0 compat >= 0
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libapr_1$secondaryArchSuffix
lib:libaprutil_1$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libexpat$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:liblz4$secondaryArchSuffix
lib:libserf_1$secondaryArchSuffix
lib:libsqlite3$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
if [ "$targetArchitecture" = x86_gcc2 ]; then
REPLACES="
subversion
"
fi
PROVIDES_devel="
subversion${secondaryArchSuffix}_devel = $portVersion compat >= 1.8
devel:libsvn_client_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_delta_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_diff_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_fs_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_fs_fs_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_fs_util_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_fs_x_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_ra_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_ra_local_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_ra_serf_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_ra_svn_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_repos_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_subr_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_swig_perl_1$secondaryArchSuffix = 0.0.0 compat >= 0
devel:libsvn_wc_1$secondaryArchSuffix = 0.0.0 compat >= 0
"
REQUIRES_devel="
subversion$secondaryArchSuffix == $portVersion base
subversion${secondaryArchSuffix}_perl == $portVersion
"
PROVIDES_perl="
subversion${secondaryArchSuffix}_perl = $portVersion compat >= 1.8
lib:libsvn_swig_perl_1$secondaryArchSuffix = 0.0.0 compat >= 0
"
if [ -n "$secondaryArchSuffix" ]; then
PROVIDES_perl+="
subversion_perl = $portVersion compat >= 1.8
"
fi
REQUIRES_perl="
haiku$secondaryArchSuffix
subversion$secondaryArchSuffix == $portVersion base
vendor_perl
lib:libapr_1$secondaryArchSuffix
lib:libaprutil_1$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libexpat$secondaryArchSuffix
lib:liblz4$secondaryArchSuffix
lib:libsqlite3$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
expat${secondaryArchSuffix}_devel >= 2.1
libiconv${secondaryArchSuffix}_devel >= 1.13
sqlite${secondaryArchSuffix}_devel >= 3.4
devel:libapr_1$secondaryArchSuffix >= 0.3
devel:libaprutil_1$secondaryArchSuffix >= 0.3
devel:libcrypto$secondaryArchSuffix >= 3
devel:liblz4$secondaryArchSuffix
devel:libserf_1$secondaryArchSuffix
devel:libssl$secondaryArchSuffix >= 3
devel:libxml2$secondaryArchSuffix >= 2.7
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:apr_1_config$secondaryArchSuffix
cmd:autoconf
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:perl
cmd:pkg_config$secondaryArchSuffix
cmd:python3
cmd:sed
cmd:swig
"
BUILD()
{
CFLAGS=-std=c9x CPPFLAGS=-P LIBS="-lcrypto -lssl" runConfigure ./configure \
--bindir=$prefix/bin \
--with-serf \
--with-zlib \
--with-editor=nano \
--with-utf8proc=internal \
--disable-nls \
--disable-static
make $jobArgs
}
INSTALL()
{
make install
rm $libDir/libsvn*.la
#if type -p python > /dev/null;then
# make install-swig-py swig_pydir=${libDir}/python2.7/site-packages/libsvn swig_pydir_extra=${libDir}/python2.7/site-packages/svn
#fi
if type -p perl > /dev/null;then
make install-swig-pl
fi
#if type -p ruby > /dev/null;then
# make install-swig-rb
#fi
mv $prefix/data/pkgconfig $libDir/
prepareInstalledDevelLibs \
libsvn_client-1 \
libsvn_delta-1 \
libsvn_diff-1 \
libsvn_fs-1 \
libsvn_fs_fs-1 \
libsvn_fs_util-1 \
libsvn_fs_x-1 \
libsvn_ra-1 \
libsvn_ra_local-1 \
libsvn_ra_svn-1 \
libsvn_repos-1 \
libsvn_subr-1 \
libsvn_swig_perl-1 \
libsvn_wc-1 \
libsvn_ra_serf-1
fixPkgconfig
rm $developLibDir/*.la
# devel package
packageEntries devel \
$developDir
# perl bindings
packageEntries perl \
$libDir/libsvn_swig_perl-1.so* \
$prefix/lib/perl5
}
# Results for 1.14.3 on beta4 64 bits (took 166 minutes):
#FAIL: lt-locks-test 14: lock/unlock when 'write-lock' couldn't be obtained
#FAIL: commit_tests.py 48: set revision props during remote property edit
#FAIL: input_validation_tests.py 9: invalid targets for 'export'
#FAIL: prop_tests.py 1: write/read props in wc only (ps, pl, pdel, pe)
#FAIL: prop_tests.py 16: property operations on a URL
#FAIL: svnsync_tests.py 29: fd leak during sync from serf to local
#FAIL: update_tests.py 38: update --accept automatic conflict resolution
# Summary of test results:
# 2513 tests PASSED
# 166 tests SKIPPED
# 81 tests XFAILED (17 WORK-IN-PROGRESS)
# 7 tests FAILED
# Python version: 3.10.13.
TEST()
{
make check
}