[hamradio-commits] [gnss-sdr] 07/236: Improved processor/feature detection when building with MSVC

Carles Fernandez carles_fernandez-guest at moszumanska.debian.org
Tue Apr 26 16:02:08 UTC 2016


This is an automated email from the git hooks/post-receive script.

carles_fernandez-guest pushed a commit to branch next
in repository gnss-sdr.

commit 794d141e845cdc1c6bd5ec60d7ec6cdce551c91a
Author: Carles Fernandez <carles.fernandez at gmail.com>
Date:   Sun Feb 7 10:56:21 2016 +0100

    Improved processor/feature detection when building with MSVC
---
 .../volk_gnsssdr/lib/CMakeLists.txt                | 33 +++++++++++++---------
 1 file changed, 19 insertions(+), 14 deletions(-)

diff --git a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt
index eb3a1d5..f79106b 100644
--- a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt
+++ b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt
@@ -87,7 +87,7 @@ endif(NOT DEFINED _XOPEN_SOURCE)
 ########################################################################
 # detect x86 flavor of CPU
 ########################################################################
-if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "^(i.86|x86|x86_64|amd64)$")
+if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "^(i.86|x86|x86_64|amd64|AMD64)$")
     message(STATUS "x86* CPU detected")
     set(CPU_IS_x86 TRUE)
 endif()
@@ -106,19 +106,24 @@ macro(check_arch arch_name)
     set(flags ${ARGN})
     set(have_${arch_name} TRUE)
     foreach(flag ${flags})
-        include(CheckCXXCompilerFlag)
-        set(have_flag have${flag})
-        execute_process( #make the have_flag have nice alphanum chars (just for looks/not necessary)
-            COMMAND ${PYTHON_EXECUTABLE} -c "import re; print(re.sub('\\W', '_', '${have_flag}'))"
-            OUTPUT_VARIABLE have_flag OUTPUT_STRIP_TRAILING_WHITESPACE
-        )
-        if(VOLK_FLAG_CHECK_FLAGS)
-            set(CMAKE_REQUIRED_FLAGS ${VOLK_FLAG_CHECK_FLAGS})
-        endif()
-        CHECK_CXX_COMPILER_FLAG(${flag} ${have_flag})
-        unset(CMAKE_REQUIRED_FLAGS)
-        if (NOT ${have_flag})
-            set(have_${arch_name} FALSE)
+        if ( (${COMPILER_NAME} STREQUAL "MSVC") AND (${flag} STREQUAL "/arch:SSE2" OR ${flag} STREQUAL "/arch:SSE" ))
+            # SSE/SSE2 is supported in MSVC since VS 2005 but flag not available when compiling 64-bit so do not check
+        else()
+            include(CheckCXXCompilerFlag)
+            set(have_flag have${flag})
+            #make the have_flag have nice alphanum chars (just for looks/not necessary)
+            execute_process(
+                COMMAND ${PYTHON_EXECUTABLE} -c "import re; print(re.sub('\\W', '_', '${have_flag}'))"
+                OUTPUT_VARIABLE have_flag OUTPUT_STRIP_TRAILING_WHITESPACE
+            )
+            if(VOLK_FLAG_CHECK_FLAGS)
+                set(CMAKE_REQUIRED_FLAGS ${VOLK_FLAG_CHECK_FLAGS})
+            endif()
+            CHECK_CXX_COMPILER_FLAG(${flag} ${have_flag})
+            unset(CMAKE_REQUIRED_FLAGS)
+            if (NOT ${have_flag})
+                set(have_${arch_name} FALSE)
+            endif()
         endif()
     endforeach()
     if (have_${arch_name})

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hamradio/gnss-sdr.git



More information about the pkg-hamradio-commits mailing list