From: A. Maitland Bottoms Date: Wed, 28 Mar 2018 02:01:33 +0000 (-0400) Subject: native armv7 build support X-Git-Tag: archive/raspbian/2.0.0-2+rpi1~1^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=796cb5b639bf75037ce2971a43209fa495c374db;p=volk.git native armv7 build support Debian, unlike other GNU Radio deployments, does not cross-compile packages, but builds natively on a set of build machines, including both arm and armhf. Gbp-Pq: Name native-armv7-build-support --- diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index f969f2e..cf66da0 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -281,6 +281,13 @@ else(neon_compile_result) OVERRULE_ARCH(neonv8 "Compiler doesn't support NEON") endif(neon_compile_result) +######################################################################## +# if building Debian armel, eliminate neon +######################################################################## +if(${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "arm-linux-gnueabi") + OVERRULE_ARCH(neon "Architecture is not armhf") +endif(${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "arm-linux-gnueabi") + ######################################################################## # implement overruling in the ORC case, # since ORC always passes flag detection @@ -440,7 +447,7 @@ string(REPLACE "\n" " \\n" COMPILER_INFO ${COMPILER_INFO}) # Handle ASM support # on by default, but let users turn it off ######################################################################## -if(${CMAKE_VERSION} VERSION_GREATER "2.8.9") +if((${CMAKE_VERSION} VERSION_GREATER "2.8.9") AND NOT (${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "arm-linux-gnueabi")) set(ASM_ARCHS_AVAILABLE "neonv7" "neonv8") set(FULL_C_FLAGS "${CMAKE_C_FLAGS}" "${CMAKE_CXX_COMPILER_ARG1}") @@ -469,7 +476,7 @@ if(${CMAKE_VERSION} VERSION_GREATER "2.8.9") message(STATUS "asm flags: ${CMAKE_ASM_FLAGS}") endforeach(ARCH) -else(${CMAKE_VERSION} VERSION_GREATER "2.8.9") +else((${CMAKE_VERSION} VERSION_GREATER "2.8.9") AND NOT (${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "arm-linux-gnueabi")) message(STATUS "Not enabling ASM support. CMake >= 2.8.10 required.") foreach(machine_name ${available_machines}) string(REGEX MATCH "neon" NEON_MACHINE ${machine_name}) @@ -477,7 +484,7 @@ else(${CMAKE_VERSION} VERSION_GREATER "2.8.9") message(FATAL_ERROR "CMake >= 2.8.10 is required for ARM NEON support") endif() endforeach() -endif(${CMAKE_VERSION} VERSION_GREATER "2.8.9") +endif((${CMAKE_VERSION} VERSION_GREATER "2.8.9") AND NOT (${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "arm-linux-gnueabi")) ######################################################################## # Handle orc support