boinc: fix build with new autotools

Backport a patch that fixes build
with new versions of Autoconf and Automake.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
This commit is contained in:
Michael Pratt 2022-08-25 14:56:08 -04:00 committed by Rosen Penev
parent d183d3750b
commit baf45303bf
2 changed files with 46 additions and 1 deletions

View file

@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=boinc
PKG_VERSION:=7.16.16
PKG_VERSION_SHORT:=$(shell echo $(PKG_VERSION)| cut -f1,2 -d.)
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE_DATE:=2020-02-25
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz

View file

@ -0,0 +1,45 @@
From 3f6fc35cc28387e327cb6f47feb00061ed17b84c
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Sat, 30 Apr 2022 13:32:34 +0900
Subject: [PATCH] configure.ac: reset compiler flags before calling
AC_CHECK_DECLS
With autoconf 2.71, [AC_CHECK_DECLS] calls new internal macro
[_AC_UNDECLARED_BUILTIN], which raises error with unknown compiler
flag. On non-x86 archs, -mavx or so is not recognized, so configure
fails on such architecture.
To fix this, reset vector related compiler flags before calling
AC_CHECK_DECLS.
*OPENWRT EDIT: typo "sse_flags"
---
configure.ac | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
--- a/configure.ac
+++ b/configure.ac
@@ -674,11 +674,19 @@ AC_CHECK_HEADERS([sys/types.h sys/un.h a
save_cxxflags="${CXXFLAGS}"
save_cppflags="${CPPFLAGS}"
-CXXFLAGS="${CXXFLAGS} -msse3"
-CPPFLAGS="${CPPFLAGS} -msse3"
+sse3_flags="-msse3"
+avx_flags="-mavx"
+CXXFLAGS="${save_cxxflags} ${sse3_flags}"
+CPPFLAGS="${save_cppflags} ${sse3_flags}"
+AC_LINK_IFELSE([AC_LANG_PROGRAM([],)], [], [sse3_flags=""])
+CXXFLAGS="${save_cxxflags} ${avx_flags}"
+CPPFLAGS="${save_cppflags} ${avx_flags}"
+AC_LINK_IFELSE([AC_LANG_PROGRAM([],)], [], [avx_flags=""])
+CXXFLAGS="${save_cxxflags} ${sse3_flags}"
+CXXFLAGS="${save_cxxflags} ${sse3_flags}"
AC_CHECK_HEADERS([intrin.h x86intrin.h pmmintrin.h xmmintrin.h emmintrin.h])
-CXXFLAGS="${save_cxxflags} -mavx"
-CPPFLAGS="${save_cppflags} -mavx"
+CXXFLAGS="${save_cxxflags} ${avx_flags}"
+CPPFLAGS="${save_cppflags} ${avx_flags}"
AC_CHECK_HEADERS([immintrin.h avxintrin.h])
AC_CHECK_DECLS([_xgetbv, xgetbv, __xgetbv, cpuid, _cpuid, __cpuid],