]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Apply float abi flag to all files in cmake (same as configure). 668/head
authorNathan Moinvaziri <nathan@nathanm.com>
Wed, 1 Jul 2020 03:57:47 +0000 (20:57 -0700)
committerNathan Moinvaziri <nathan@nathanm.com>
Thu, 2 Jul 2020 05:35:28 +0000 (22:35 -0700)
Don't override -mfloat-abi if set via -DCMAKE_C_FLAGS in cmake.
Only set -mfloat-abi=softfp if compiler ends in eabi in cmake. (same as configure).

CMakeLists.txt

index 5385565a28935274e7758642a8bd16c745f9f7dc..7d918e2635423398036afc2abe4ef81d9c8173c2 100644 (file)
@@ -216,13 +216,17 @@ else()
     if(NOT NATIVEFLAG)
         if(__GNUC__)
             if(BASEARCH_ARM_FOUND)
-                # Check support for ARM floating point
-                execute_process(COMMAND ${CMAKE_C_COMPILER} "-dumpmachine"
-                                OUTPUT_VARIABLE GCC_MACHINE)
-                if("${GCC_MACHINE}" MATCHES "eabihf")
-                    set(FLOATABI "-mfloat-abi=hard")
-                else()
-                    set(FLOATABI "-mfloat-abi=softfp")
+                if(NOT CMAKE_C_FLAGS MATCHES "-mfloat-abi")
+                    # Check support for ARM floating point
+                    execute_process(COMMAND ${CMAKE_C_COMPILER} "-dumpmachine"
+                                    OUTPUT_VARIABLE GCC_MACHINE)
+                    if("${GCC_MACHINE}" MATCHES "gnueabihf")
+                        set(FLOATABI "-mfloat-abi=hard")
+                    elseif("${GCC_MACHINE}" MATCHES ".*gnueabi")
+                        set(FLOATABI "-mfloat-abi=softfp")
+                    endif()
+                    message(STATUS "ARM floating point arch: ${FLOATABI}")
+                    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLOATABI}")
                 endif()
                 # NEON
                 if("${ARCH}" MATCHES "aarch64")
@@ -235,9 +239,7 @@ else()
                         MFPU_NEON_AVAILABLE FAIL_REGEX "not supported")
                     set(CMAKE_REQUIRED_FLAGS)
                     if(MFPU_NEON_AVAILABLE)
-                        set(NEONFLAG "${FLOATABI} -mfpu=neon")
-                    else()
-                        set(NEONFLAG "${FLOATABI}")
+                        set(NEONFLAG "-mfpu=neon")
                     endif()
                 endif()
                 # ACLE