fix build with autoconf 2.70
authorJan Palus <atler@pld-linux.org>
Tue, 15 Jun 2021 12:52:15 +0000 (12:52 +0000)
committerJan Palus <atler@pld-linux.org>
Tue, 15 Jun 2021 12:52:15 +0000 (12:52 +0000)
autoconf2.70.patch [new file with mode: 0644]
ruby.spec

diff --git a/autoconf2.70.patch b/autoconf2.70.patch
new file mode 100644 (file)
index 0000000..d5d03ac
--- /dev/null
@@ -0,0 +1,62 @@
+From fcc88da5eb162043adcba552646677d2ab5adf55 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyfox@gentoo.org>
+Date: Mon, 16 Nov 2020 08:42:15 +0000
+Subject: [PATCH] configure.ac: fix for upcoming autoconf-2.70
+
+The failure initially noticed on `autoconf-2.69d` (soon to become 2.70):
+
+```
+$ ./configure
+./configure: line 8720: syntax error near unexpected token `fi'
+./configure: line 8720: `fi'
+```
+
+Before the change generated `./configure ` snippet looked like:
+
+```
+    if ! $CC -E -xc - <<SRC >/dev/null
+then :
+
+       #if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3
+       #error premature clang
+       #endif
+SRC
+       as_fn_error $? "clang version 3.0 or later is required" "$LINENO" 5
+fi
+```
+
+Note the newline that breaks here-document syntax.
+
+After the change the snippet does not use here-document.
+
+Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
+---
+ configure.ac | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index a5e3dc76f6f5..4e4a52f066d6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -271,13 +271,14 @@ AS_CASE(["$host_os:$build_os"],
+     # clang version 1.0 (http://llvm.org/svn/llvm-project/cfe/tags/Apple/clang-23 exported)
+     # Apple clang version 2.0 (tags/Apple/clang-137) (based on LLVM 2.9svn)
+     # Apple clang version 2.1 (tags/Apple/clang-163.7.1) (based on LLVM 3.0svn)
+-    AS_IF([! $CC -E -xc - <<SRC >/dev/null], [
+-      @%:@if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3
+-      @%:@error premature clang
+-      @%:@endif
+-SRC
+-      AC_MSG_ERROR([clang version 3.0 or later is required])
+-    ])
++    AC_PREPROC_IFELSE(
++      [AC_LANG_PROGRAM([
++          @%:@if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3
++          @%:@error premature clang
++          @%:@endif
++      ])],
++      [],
++      [AC_MSG_ERROR([clang version 3.0 or later is required])])
+ ])
+ AS_IF([test x"${build}" != x"${host}"], [
+   AC_CHECK_TOOL(CC, gcc)
index ed9eb9a2d3ff2503a35d1d07bbbe3168cd3a3d30..aba71b6a1035ec1fb4e61b123de411019e40e2fd 100644 (file)
--- a/ruby.spec
+++ b/ruby.spec
@@ -54,6 +54,7 @@ Source54:     http://www.unicode.org/Public/9.0.0/ucd/UnicodeData.txt
 Source4:       rdoc.1
 Source5:       testrb.1
 Source6:       operating_system.rb
+Patch0:                autoconf2.70.patch
 Patch2:                fix-bison-invocation.patch
 Patch3:                mkmf-verbose.patch
 Patch4:                strip-ccache.patch
@@ -678,6 +679,7 @@ wywołującego je. Aby to osiągnąć wystarczy bardzo mało kodu.
 
 %prep
 %setup -q -n %{oname}-%{pkg_version} -a2 -a3
+%patch0 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
This page took 0.483555 seconds and 4 git commands to generate.