subversion: fix build with apr 1.7, closes FS#1744
This commit is contained in:
parent
2f5827bc25
commit
0d223a69b3
@ -1,5 +1,6 @@
|
||||
untrusted comment: verify with /etc/ports/opt.pub
|
||||
RWSE3ohX2g5d/RKh4TGGkkdglhlKsYxZr6WFDKm6o07BZc5UlcRIfysjrWjjz0T4bGKemwUV2eeXr7116nGxMbwJPFQ4ADvuwQc=
|
||||
SHA256 (Pkgfile) = 7c299553156f58b4b63726d9eddfceb527ca84fc55728bb4b76882cda9ab4b15
|
||||
RWSE3ohX2g5d/V4OB8yoTeWo2j0h21u/P85euLVdeX2Xt19Z4gBN/7TSBw4InW3RUMtGN+VR/9FsUBQQRKCW4qEUc1XtSHDOygE=
|
||||
SHA256 (Pkgfile) = c56790c34aa57b0a2538eede948616dba0bac4d13381ffa2f23b36ab439f6c19
|
||||
SHA256 (.footprint) = d00adb73926ccd556c7d37d069fab96f98fc85d028fbc291ddc9c9a9fee0e931
|
||||
SHA256 (subversion-1.9.9.tar.bz2) = 8dfdbe573b582d8eb2c328cca2aacff3795b54bb39eb7fd831e3ce05991f81d2
|
||||
SHA256 (subversion-1.9.10.tar.bz2) = ae28c656535c8b817f469e6ee6951e9840ea2d64c7ff0e98c728638bb45c9cd7
|
||||
SHA256 (apr-1.7.patch) = f7b6ccd807a15e899a592a53b256f70a7651e2078453d12e0242658a180a8d64
|
||||
|
@ -1,17 +1,20 @@
|
||||
# Description: A version control system (CVS replacement)
|
||||
# URL: http://subversion.apache.org
|
||||
# Maintainer: Jose V Beneyto, sepen at crux dot nu
|
||||
# Packager: Simone Rota, sip at crux dot nu
|
||||
# Depends on: serf
|
||||
# URL: http://subversion.apache.org
|
||||
# Maintainer: UNMAINTAINED
|
||||
# Depends on: serf
|
||||
|
||||
name=subversion
|
||||
version=1.9.9
|
||||
version=1.9.10
|
||||
release=1
|
||||
source=(https://www.apache.org/dist/$name/$name-$version.tar.bz2)
|
||||
source=(https://www.apache.org/dist/$name/$name-$version.tar.bz2
|
||||
apr-1.7.patch)
|
||||
|
||||
build() {
|
||||
cd $name-$version
|
||||
|
||||
patch -p1 -i $SRC/apr-1.7.patch
|
||||
|
||||
./autogen.sh
|
||||
./configure --prefix=/usr \
|
||||
--with-apr=/usr \
|
||||
--with-apr-util=/usr \
|
||||
|
101
subversion/apr-1.7.patch
Normal file
101
subversion/apr-1.7.patch
Normal file
@ -0,0 +1,101 @@
|
||||
From d67979e61f8659af05fd4d0384a2db33645df83d Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Sperling <stsp@apache.org>
|
||||
Date: Fri, 12 Apr 2019 09:27:33 +0000
|
||||
Subject: [PATCH] Get rid of apr_int64_t format string check in swig py
|
||||
configure.
|
||||
|
||||
This check relied on APR implementation details and broke with APR 1.7.0.
|
||||
Rather than trying to guess a perfect format string to use, just use the
|
||||
largest possible format and cast the argument accordingly.
|
||||
|
||||
Should fix build against APR 1.7.0 and later.
|
||||
|
||||
Suggested by: brane
|
||||
|
||||
* build/ac-macros/swig.m4: Remove code related to SVN_APR_INT64_T_PYCFMT.
|
||||
|
||||
* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
|
||||
(svn_swig_py_client_blame_receiver_func): Stop relying on the
|
||||
SVN_APR_INT64_T_PYCFMT constant from configure. Use "L" and
|
||||
acast to PY_LONG_LONG instead.
|
||||
|
||||
|
||||
git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1857391 13f79535-47bb-0310-9956-ffa450edef68
|
||||
---
|
||||
build/ac-macros/swig.m4 | 35 -------------------
|
||||
.../swig/python/libsvn_swig_py/swigutil_py.c | 9 +++--
|
||||
2 files changed, 4 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/build/ac-macros/swig.m4 b/build/ac-macros/swig.m4
|
||||
index 55501fb882f..29638727363 100644
|
||||
--- a/build/ac-macros/swig.m4
|
||||
+++ b/build/ac-macros/swig.m4
|
||||
@@ -128,41 +128,6 @@ AC_DEFUN(SVN_FIND_SWIG,
|
||||
ac_cv_python_libs="`$PYTHON ${abs_srcdir}/build/get-py-info.py --libs`"
|
||||
])
|
||||
SWIG_PY_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_python_libs)`"
|
||||
-
|
||||
- dnl Sun Forte adds an extra space before substituting APR_INT64_T_FMT
|
||||
- dnl gcc-2.95 adds an extra space after substituting APR_INT64_T_FMT
|
||||
- dnl thus the egrep patterns have a + in them.
|
||||
- SVN_PYCFMT_SAVE_CPPFLAGS="$CPPFLAGS"
|
||||
- CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES"
|
||||
- AC_CACHE_CHECK([for apr_int64_t Python/C API format string],
|
||||
- [svn_cv_pycfmt_apr_int64_t], [
|
||||
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
|
||||
- AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd],
|
||||
- [#include <apr.h>
|
||||
- MaTcHtHiS APR_INT64_T_FMT EnDeNd],
|
||||
- [svn_cv_pycfmt_apr_int64_t="L"])
|
||||
- fi
|
||||
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
|
||||
- AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r
|
||||
- [#include <apr.h>
|
||||
- MaTcHtHiS APR_INT64_T_FMT EnDeNd],
|
||||
- [svn_cv_pycfmt_apr_int64_t="l"])
|
||||
- fi
|
||||
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
|
||||
- AC_EGREP_CPP([MaTcHtHiS +\"d\" +EnDeNd],
|
||||
- [#include <apr.h>
|
||||
- MaTcHtHiS APR_INT64_T_FMT EnDeNd],
|
||||
- [svn_cv_pycfmt_apr_int64_t="i"])
|
||||
- fi
|
||||
- ])
|
||||
- CPPFLAGS="$SVN_PYCFMT_SAVE_CPPFLAGS"
|
||||
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
|
||||
- AC_MSG_ERROR([failed to recognize APR_INT64_T_FMT on this platform])
|
||||
- fi
|
||||
- AC_DEFINE_UNQUOTED([SVN_APR_INT64_T_PYCFMT],
|
||||
- ["$svn_cv_pycfmt_apr_int64_t"],
|
||||
- [Define to the Python/C API format character suitable]
|
||||
- [ for apr_int64_t])
|
||||
fi
|
||||
|
||||
if test "$PERL" != "none"; then
|
||||
diff --git a/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c b/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
|
||||
index 2c90a6a464d..abe5a2ab64c 100644
|
||||
--- a/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
|
||||
+++ b/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
|
||||
@@ -46,7 +46,7 @@
|
||||
#include "svn_mergeinfo.h"
|
||||
#include "svn_types.h"
|
||||
|
||||
-#include "svn_private_config.h" /* for SVN_APR_INT64_T_PYCFMT */
|
||||
+#include "svn_private_config.h"
|
||||
|
||||
#include "swig_python_external_runtime.swg"
|
||||
#include "swigutil_py.h"
|
||||
@@ -3394,10 +3394,9 @@ svn_error_t *svn_swig_py_client_blame_receiver_func(void *baton,
|
||||
svn_swig_py_acquire_py_lock();
|
||||
|
||||
if ((result = PyObject_CallFunction(receiver,
|
||||
- (char *)
|
||||
- (SVN_APR_INT64_T_PYCFMT "lsssO&"),
|
||||
- line_no, revision, author, date, line,
|
||||
- make_ob_pool, pool)) == NULL)
|
||||
+ (char *)"LlsssO&",
|
||||
+ (PY_LONG_LONG)line_no, revision, author,
|
||||
+ date, line, make_ob_pool, pool)) == NULL)
|
||||
{
|
||||
err = callback_exception_error();
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user