[PATCH] Fix issue #4841: do not use internal ruby include paths
From: Anatol Pomozov <anatol.pomozov_at_gmail.com>
Date: Tue, 31 Dec 2019 10:06:22 -0800
Building subversion with ruby2.7 produces a compilation warning:
subversion/bindings/swig/ruby/svn_client.c:1666:13: warning: implicit declaration of function ‘assert’ [-Wimplicit-function-declaration]
And later tests fail with:
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': /build/subversion/src/subversion-1.13.0/subversion/bindings/swig/ruby/libsvn_swig_ruby/.libs/libsvn_swig_ruby-1.so.0: undefined symbol: assert - /build/subversion/src/subversion-1.13.0/subversion/bindings/swig/ruby/.ext/svn/ext/core.so (LoadError)
It turns out that ruby 2.7 added a new header file '$RUBY_TOP/ruby/assert.h'.
To fix this problem subversion should use only $RUBY_TOP and avoid using internal ruby paths.
* build/ac-macros/swig.m4: cleanup ruby include path
---
build/ac-macros/swig.m4 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/build/ac-macros/swig.m4 b/build/ac-macros/swig.m4
index bc2599038f..c707a8c282 100644
--- a/build/ac-macros/swig.m4
+++ b/build/ac-macros/swig.m4
@@ -230,7 +230,7 @@ AC_DEFUN(SVN_FIND_SWIG,
AC_CACHE_CHECK([for Ruby include path], [svn_cv_ruby_includes],[
if test -d "$rbconfig_rubyhdrdir"; then
dnl Ruby >=1.9
- svn_cv_ruby_includes="-I. -I$rbconfig_rubyhdrdir -I$rbconfig_rubyhdrdir/ruby -I$rbconfig_rubyhdrdir/ruby/backward"
+ svn_cv_ruby_includes="-I. -I$rbconfig_rubyhdrdir"
if test -d "$rbconfig_rubyarchhdrdir"; then
dnl Ruby >=2.0
svn_cv_ruby_includes="$svn_cv_ruby_includes -I$rbconfig_rubyarchhdrdir"
--
2.24.1
Received on 2019-12-31 19:06:37 CET
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.