summaryrefslogtreecommitdiff
blob: c27e3c44f68464d1c466fe28ce6bcedd5f581571 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
--- a/compiler-rt/cmake/config-ix.cmake	2020-10-07 05:10:48.000000000 -0500
+++ b/compiler-rt/cmake/config-ix.cmake	2020-12-13 16:17:43.000000000 -0600
@@ -424,10 +424,7 @@
     ${DARWIN_COMMON_LINK_FLAGS}
     ${DARWIN_osx_MIN_VER_FLAG}=${SANITIZER_MIN_OSX_VERSION})
 
-  if(DARWIN_osx_SYSROOT)
-    list(APPEND DARWIN_osx_CFLAGS -isysroot ${DARWIN_osx_SYSROOT})
-    list(APPEND DARWIN_osx_LINK_FLAGS -isysroot ${DARWIN_osx_SYSROOT})
-  endif()
+  # Do not add -isysroot flag on Gentoo Prefix (search paths handled by cmake)
 
   # Figure out which arches to use for each OS
   darwin_get_toolchain_supported_archs(toolchain_arches)
--- a/compiler-rt/cmake/base-config-ix.cmake	2020-12-13 16:17:13.000000000 -0600
+++ b/compiler-rt/cmake/base-config-ix.cmake	2020-12-13 16:18:59.000000000 -0600
@@ -102,23 +102,8 @@
 endif()
 
 if(APPLE)
-  # On Darwin if /usr/include/c++ doesn't exist, the user probably has Xcode but
-  # not the command line tools (or is using macOS 10.14 or newer). If this is
-  # the case, we need to find the OS X sysroot to pass to clang.
-  if(NOT EXISTS /usr/include/c++)
-    execute_process(COMMAND xcrun -sdk macosx --show-sdk-path
-       OUTPUT_VARIABLE OSX_SYSROOT
-       ERROR_QUIET
-       OUTPUT_STRIP_TRAILING_WHITESPACE)
-    if (NOT OSX_SYSROOT OR NOT EXISTS ${OSX_SYSROOT})
-      message(WARNING "Detected OSX_SYSROOT ${OSX_SYSROOT} does not exist")
-    else()
-      message(STATUS "Found OSX_SYSROOT: ${OSX_SYSROOT}")
-      set(OSX_SYSROOT_FLAG "-isysroot${OSX_SYSROOT}")
-    endif()
-  else()
-    set(OSX_SYSROOT_FLAG "")
-  endif()
+  # Do not add -isysroot flag on Gentoo Prefix (search paths handled by cmake)
+  set(OSX_SYSROOT_FLAG "")
 
   option(COMPILER_RT_ENABLE_IOS "Enable building for iOS" On)
   option(COMPILER_RT_ENABLE_WATCHOS "Enable building for watchOS - Experimental" Off)
--- a/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake	2020-10-07 05:10:48.000000000 -0500
+++ b/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake	2020-12-13 16:21:32.000000000 -0600
@@ -273,7 +273,8 @@
     ${ARGN})
   set(libname "${name}.${suffix}_${LIB_ARCH}_${LIB_OS}")
   add_library(${libname} STATIC ${LIB_SOURCES})
-  if(DARWIN_${LIB_OS}_SYSROOT)
+  # Do not add -isysroot flag on Gentoo Prefix (search paths handled by cmake)
+  if(DARWIN_${LIB_OS}_SYSROOT AND NOT "${LIB_OS}" STREQUAL "osx")
     set(sysroot_flag -isysroot ${DARWIN_${LIB_OS}_SYSROOT})
   endif()

--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake	2020-10-07 05:10:48.000000000 -0500
+++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake	2020-12-13 18:12:27.000000000 -0600
@@ -277,9 +277,10 @@
       if(CMAKE_C_COMPILER_ID MATCHES Clang AND CMAKE_C_COMPILER_TARGET)
         list(APPEND extra_cflags_${libname} "--target=${CMAKE_C_COMPILER_TARGET}")
       endif()
+      # Do not add --sysroot flag on Gentoo Prefix (search paths handled by cmake)
-      if(CMAKE_SYSROOT)
+      if(CMAKE_SYSROOT AND NOT APPLE)
         list(APPEND extra_cflags_${libname} "--sysroot=${CMAKE_SYSROOT}")
       endif()
       string(REPLACE ";" " " extra_cflags_${libname} "${extra_cflags_${libname}}")
       string(REGEX MATCHALL "<[A-Za-z0-9_]*>" substitutions
              ${CMAKE_C_COMPILE_OBJECT})
--- a/compiler-rt/lib/tsan/CMakeLists.txt	2020-12-13 19:42:02.000000000 -0600
+++ b/compiler-rt/lib/tsan/CMakeLists.txt	2020-12-13 19:42:38.000000000 -0600
@@ -244,6 +244,7 @@
 # and Clang's versions. As a workaround do not use --sysroot=. on FreeBSD/NetBSD
 # until this is addressed.
 if(COMPILER_RT_HAS_SYSROOT_FLAG AND NOT CMAKE_SYSTEM_NAME MATCHES "FreeBSD"
+   AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin"
    AND NOT CMAKE_SYSTEM_NAME MATCHES "NetBSD")
   file(GLOB _tsan_generic_sources rtl/tsan*)
   file(GLOB _tsan_platform_sources rtl/tsan*posix* rtl/tsan*mac*