# ifeq logical or
ifeq ($(CORE), $(filter $(CORE),CORTEXA9 CORTEXA15))
ifeq ($(OSNAME), Android)
-CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a
-FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a
+CCOMMON_OPT += -mfpu=neon -march=armv7-a
+FCOMMON_OPT += -mfpu=neon -march=armv7-a
else
-CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a
-FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a
+CCOMMON_OPT += -mfpu=vfpv3 -march=armv7-a
+FCOMMON_OPT += -mfpu=vfpv3 -march=armv7-a
endif
endif
ifeq ($(CORE), ARMV7)
ifeq ($(OSNAME), Android)
-CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a
-FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a
+CCOMMON_OPT += -mfpu=neon -march=armv7-a
+FCOMMON_OPT += -mfpu=neon -march=armv7-a
else
-CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a
-FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a
+CCOMMON_OPT += -mfpu=vfpv3 -march=armv7-a
+FCOMMON_OPT += -mfpu=vfpv3 -march=armv7-a
endif
endif
ifeq ($(CORE), ARMV6)
-CCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard -march=armv6
-FCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard -march=armv6
+CCOMMON_OPT += -mfpu=vfp -march=armv6
+FCOMMON_OPT += -mfpu=vfp -march=armv6
endif
ifeq ($(ARCH), arm)
NO_BINARY_MODE = 1
BINARY_DEFINED = 1
+
+CCOMMON_OPT += -marm
+FCOMMON_OPT += -marm
+
+ifeq ($(ARM_SOFT_FLOAT_ABI), 1)
+CCOMMON_OPT += -mfloat-abi=softfp
+FCOMMON_OPT += -mfloat-abi=softfp
+else
+CCOMMON_OPT += -mfloat-abi=hard
+FCOMMON_OPT += -mfloat-abi=hard
+endif
endif
ifeq ($(ARCH), arm64)