[compiler-rt] r264017 - Move -fms-compatibility-version=19 into target cflags

Reid Kleckner via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 18:14:36 PDT 2016


Author: rnk
Date: Mon Mar 21 20:14:36 2016
New Revision: 264017

URL: http://llvm.org/viewvc/llvm-project?rev=264017&view=rev
Log:
Move -fms-compatibility-version=19 into target cflags

This reduces cflags duplication and allows us to build
sanitizer_common/tests with clang and the VS 2015 STL.

Modified:
    compiler-rt/trunk/cmake/config-ix.cmake
    compiler-rt/trunk/lib/asan/tests/CMakeLists.txt
    compiler-rt/trunk/test/asan/CMakeLists.txt
    compiler-rt/trunk/test/asan/lit.cfg
    compiler-rt/trunk/test/asan/lit.site.cfg.in

Modified: compiler-rt/trunk/cmake/config-ix.cmake
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/cmake/config-ix.cmake?rev=264017&r1=264016&r2=264017&view=diff
==============================================================================
--- compiler-rt/trunk/cmake/config-ix.cmake (original)
+++ compiler-rt/trunk/cmake/config-ix.cmake Mon Mar 21 20:14:36 2016
@@ -154,10 +154,15 @@ elseif(NOT APPLE) # Supported archs for
       test_target_arch(i686 __i686__ "-m32")
       test_target_arch(i386 __i386__ "-m32")
     else()
+      # Extract the major version from CMake's MSVC_VERSION variable and pass
+      # it to -fms-compatibility-version. The major version controls the most
+      # important parts of clang's compatibility.
+      string(SUBSTRING "${MSVC_VERSION}" 0 2 MSVC_MAJOR_VERSION)
+      set(flags "-fms-compatibility-version=${MSVC_MAJOR_VERSION}")
       if (CMAKE_SIZEOF_VOID_P EQUAL 4)
-        test_target_arch(i386 "" "")
+        test_target_arch(i386 "" "${flags}")
       else()
-        test_target_arch(x86_64 "" "")
+        test_target_arch(x86_64 "" "${flags}")
       endif()
     endif()
   elseif("${COMPILER_RT_DEFAULT_TARGET_ARCH}" MATCHES "powerpc")

Modified: compiler-rt/trunk/lib/asan/tests/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/tests/CMakeLists.txt?rev=264017&r1=264016&r2=264017&view=diff
==============================================================================
--- compiler-rt/trunk/lib/asan/tests/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/asan/tests/CMakeLists.txt Mon Mar 21 20:14:36 2016
@@ -60,11 +60,6 @@ endif()
 if(MSVC)
   # Disable exceptions on Windows until they work reliably.
   list(APPEND ASAN_UNITTEST_COMMON_CFLAGS -fno-exceptions -DGTEST_HAS_SEH=0)
-  # Extract the major version from CMake's MSVC_VERSION variable and pass it to
-  # -fms-compatibility-version. The major version controls the most important
-  # parts of clang's compatibility.
-  string(SUBSTRING "${MSVC_VERSION}" 0 2 MSVC_MAJOR_VERSION)
-  list(APPEND ASAN_UNITTEST_COMMON_CFLAGS "-fms-compatibility-version=${MSVC_MAJOR_VERSION}")
 endif()
 
 set(ASAN_BLACKLIST_FILE "${CMAKE_CURRENT_SOURCE_DIR}/asan_test.ignore")

Modified: compiler-rt/trunk/test/asan/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/asan/CMakeLists.txt?rev=264017&r1=264016&r2=264017&view=diff
==============================================================================
--- compiler-rt/trunk/test/asan/CMakeLists.txt (original)
+++ compiler-rt/trunk/test/asan/CMakeLists.txt Mon Mar 21 20:14:36 2016
@@ -29,13 +29,6 @@ if(APPLE)
   darwin_filter_host_archs(ASAN_SUPPORTED_ARCH ASAN_TEST_ARCH)
 endif()
 
-# Extract the major version from CMake's MSVC_VERSION variable and pass it into
-# the lit configuration.
-set(MSVC_MAJOR_VERSION "")
-if (MSVC)
-  string(SUBSTRING "${MSVC_VERSION}" 0 2 MSVC_MAJOR_VERSION)
-endif()
-
 foreach(arch ${ASAN_TEST_ARCH})
   if(ANDROID)
     set(ASAN_TEST_TARGET_ARCH ${arch}-android)

Modified: compiler-rt/trunk/test/asan/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/asan/lit.cfg?rev=264017&r1=264016&r2=264017&view=diff
==============================================================================
--- compiler-rt/trunk/test/asan/lit.cfg (original)
+++ compiler-rt/trunk/test/asan/lit.cfg Mon Mar 21 20:14:36 2016
@@ -64,13 +64,9 @@ else:
 if config.android:
   extra_linkflags += ["-lm"]
 
-msvc_major_version = get_required_attr(config, "msvc_major_version")
-
 # Setup default compiler flags used with -fsanitize=address option.
 # FIXME: Review the set of required flags and check if it can be reduced.
 target_cflags = [get_required_attr(config, "target_cflags")] + extra_linkflags
-if msvc_major_version:
-  target_cflags.append("-fms-compatibility-version=" + msvc_major_version)
 target_cxxflags = config.cxx_mode_flags + target_cflags
 clang_asan_static_cflags = (["-fsanitize=address",
                             "-mno-omit-leaf-frame-pointer",
@@ -114,7 +110,6 @@ if platform.system() == 'Windows':
   clang_cl_asan_cxxflags = ["-fsanitize=address",
                             "-Wno-deprecated-declarations",
                             "-WX",
-                            "-fms-compatibility-version=" + msvc_major_version,
                             "-D_HAS_EXCEPTIONS=0",
                             "-Zi"] + target_cflags
   if config.asan_dynamic:

Modified: compiler-rt/trunk/test/asan/lit.site.cfg.in
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/asan/lit.site.cfg.in?rev=264017&r1=264016&r2=264017&view=diff
==============================================================================
--- compiler-rt/trunk/test/asan/lit.site.cfg.in (original)
+++ compiler-rt/trunk/test/asan/lit.site.cfg.in Mon Mar 21 20:14:36 2016
@@ -5,7 +5,6 @@
 config.name_suffix = "@ASAN_TEST_CONFIG_SUFFIX@"
 config.asan_lit_source_dir = "@ASAN_LIT_SOURCE_DIR@"
 config.target_cflags = "@ASAN_TEST_TARGET_CFLAGS@"
-config.msvc_major_version = "@MSVC_MAJOR_VERSION@"
 config.clang = "@ASAN_TEST_TARGET_CC@"
 config.bits = "@ASAN_TEST_BITS@"
 config.android = "@ANDROID@"




More information about the llvm-commits mailing list