| From fd37229a17822c5ad21a369f670b8a6f6cc6b95b Mon Sep 17 00:00:00 2001 |
| From: Benjamin Bara <benjamin.bara@skidata.com> |
| Date: Mon, 4 Sep 2023 12:16:39 +0200 |
| Subject: [PATCH] configure.ac: add option to explicitly disable neon |
| |
| Uncomment an already existing possibility to explicitly disable neon and |
| use it on both implemented neon checks. |
| |
| Upstream-Status: Submitted [https://bugs.ghostscript.com/show_bug.cgi?id=707097] |
| |
| Signed-off-by: Benjamin Bara <benjamin.bara@skidata.com> |
| --- |
| configure.ac | 52 +++++++++++++++++++++++++++++----------------------- |
| 1 file changed, 29 insertions(+), 23 deletions(-) |
| |
| diff --git a/configure.ac b/configure.ac |
| index 09d881dd1..62718e15e 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -749,6 +749,33 @@ SUBCONFIG_OPTS="--build=$build --host=$host" |
| # SUBCONFIG_OPTS="$SUBCONFIG_OPTS --host=$host_alias" |
| #fi |
| |
| +dnl -------------------------------------------------- |
| +dnl Check for NEON support |
| +dnl -------------------------------------------------- |
| +save_cflags=$CFLAGS |
| +AC_MSG_CHECKING([neon support]) |
| +CFLAGS="$save_cflags $OPT_CFLAGS -mfpu=neon -mcpu=cortex-a53" |
| +HAVE_NEON="" |
| +AC_LINK_IFELSE( |
| + [AC_LANG_PROGRAM([#include "arm_neon.h"], [ |
| + int32x4_t round = vdupq_n_s32(10); |
| + return(0); |
| + ])], |
| + [HAVE_NEON="-DHAVE_NEON"], [HAVE_NEON=""]) |
| + |
| +AC_ARG_ENABLE([neon], AS_HELP_STRING([--disable-neon], |
| + [Do not use neon instrinsics]), [ |
| + if test "x$enable_neon" = xno; then |
| + HAVE_NEON="" |
| + fi]) |
| + |
| +if test "x$HAVE_NEON" != x; then |
| + AC_MSG_RESULT(yes) |
| +else |
| + AC_MSG_RESULT(no) |
| +fi |
| +CFLAGS=$save_cflags |
| + |
| dnl -------------------------------------------------- |
| dnl Check for libraries |
| dnl -------------------------------------------------- |
| @@ -971,11 +998,12 @@ if test x$with_tesseract != xno; then |
| [TESS_NEON="-mfpu=neon -mcpu=cortex-a53 -D__ARM_NEON__"], |
| [TESS_NEON=""]) |
| |
| - if test "x$TESS_NEON" != x; then |
| + if test "x$TESS_NEON" != x && test "x$enable_neon" != xno; then |
| AC_MSG_RESULT(yes) |
| TESS_CXXFLAGS="$TESS_CXXFLAGS -DHAVE_NEON" |
| else |
| AC_MSG_RESULT(no) |
| + TESS_NEON="" |
| fi |
| |
| CXXFLAGS="$save_cxxflags" |
| @@ -2387,28 +2415,6 @@ if test x$WITH_CAL != x0; then |
| AC_MSG_RESULT(no) |
| fi |
| |
| - AC_MSG_CHECKING([neon support]) |
| - CFLAGS="$save_cflags $OPT_CFLAGS -mfpu=neon -mcpu=cortex-a53" |
| - HAVE_NEON="" |
| - AC_LINK_IFELSE( |
| - [AC_LANG_PROGRAM([#include "arm_neon.h"], [ |
| - int32x4_t round = vdupq_n_s32(10); |
| - return(0); |
| - ])], |
| - [HAVE_NEON="-DHAVE_NEON"], [HAVE_NEON=""]) |
| - |
| - #AC_ARG_ENABLE([neon], AS_HELP_STRING([--disable-neon], |
| - # [Do not use neon instrinsics]), [ |
| - # if test "x$enable_neon" = xno; then |
| - # HAVE_NEON="" |
| - # fi]) |
| - |
| - if test "x$HAVE_NEON" != x; then |
| - AC_MSG_RESULT(yes) |
| - else |
| - AC_MSG_RESULT(no) |
| - fi |
| - |
| #AC_SUBST(HAVE_SSE4_2) |
| #AC_SUBST(HAVE_NEON) |
| CFLAGS=$save_cflags |
| -- |
| 2.34.1 |
| |