package/opencv3: disable VFPv3 options
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Tue, 20 Aug 2019 18:40:39 +0000 (20:40 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 5 Feb 2020 16:38:56 +0000 (17:38 +0100)
Commit a17402e42d8c996af239cfdb536e74188d6c6245 has conditionally
enabled NEON and VFPv3 optimizations. However, the VFPv3 logic is
causing issues on some targets such as Cortex-A5 with VFPv4-D16 but
not VFPv4.

Since the ENABLE_VFPV3=ON option only adds CFLAGS, we can always set
it to OFF, and let Buildroot pass appropriate CFLAGS.

However, the ENABLE_NEON option also adds the build of NEON-specific
code, so we keep this logic.

Fixes:
 - https://bugs.buildroot.org/show_bug.cgi?id=11996

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/opencv3/opencv3.mk

index 89ed8f4278e46ef6c01b58c5a684012a84aff8d2..c99e84a29f3773bc6784a230d2085fa1c76ca16f 100644 (file)
@@ -104,17 +104,15 @@ OPENCV3_CONF_OPTS += \
 
 # Hardware support options.
 #
-# * PowerPC support is turned off since its only effect is altering CFLAGS,
-#   adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
+# * PowerPC and VFPv3 support are turned off since their only effects
+#   are altering CFLAGS, adding '-mcpu=G3 -mtune=G5' or '-mfpu=vfpv3'
+#   to them, which is already handled by Buildroot.
+# * NEON logic is needed as it is not only used to add CFLAGS, but
+#   also to enable additional NEON code.
 OPENCV3_CONF_OPTS += \
        -DENABLE_POWERPC=OFF \
-       -DENABLE_NEON=$(if $(BR2_ARM_CPU_HAS_NEON),ON,OFF)
-
-ifeq ($(BR2_ARCH_IS_64):$(BR2_ARM_CPU_HAS_VFPV3),:y)
-OPENCV3_CONF_OPTS += -DENABLE_VFPV3=ON
-else
-OPENCV3_CONF_OPTS += -DENABLE_VFPV3=OFF
-endif
+       -DENABLE_NEON=$(if $(BR2_ARM_CPU_HAS_NEON),ON,OFF) \
+       -DENABLE_VFPV3=OFF
 
 # Cuda stuff
 OPENCV3_CONF_OPTS += \