kfreebsd-support
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Fri, 13 Oct 2017 21:42:29 +0000 (22:42 +0100)
committerSylvestre Ledru <sylvestre@debian.org>
Fri, 13 Oct 2017 21:42:29 +0000 (22:42 +0100)
===================================================================

Gbp-Pq: Name kfreebsd-support.diff

compiler-rt/cmake/config-ix.cmake
lldb/cmake/LLDBDependencies.cmake
lldb/scripts/Python/modules/CMakeLists.txt
lldb/scripts/utilsOsType.py
tools/llvm-shlib/CMakeLists.txt

index ddb03047feed3d1df8154ebec44898ff8fe6eb2e..f1f999cc236c9977d933b79d435ff9bfd656550d 100644 (file)
@@ -397,7 +397,8 @@ endif()
 
 if (SANITIZER_COMMON_SUPPORTED_ARCH AND NOT LLVM_USE_SANITIZER AND
     (OS_NAME MATCHES "Android|Darwin|Linux|FreeBSD" OR
-    (OS_NAME MATCHES "Windows" AND MSVC)))
+    (OS_NAME MATCHES "Windows" AND MSVC))
+    AND NOT (OS_NAME STREQUAL "kFreeBSD"))
   set(COMPILER_RT_HAS_SANITIZER_COMMON TRUE)
 else()
   set(COMPILER_RT_HAS_SANITIZER_COMMON FALSE)
index f24cdc0c95246ad3e381af5654119193593dbcde..30599c48eaf5c45ac7a5faab2900dddcb098c8ca 100644 (file)
@@ -163,7 +163,7 @@ if (NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB )
 endif()
 
 # On FreeBSD/NetBSD backtrace() is provided by libexecinfo, not libc.
-if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "NetBSD")
+if ((CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "NetBSD") AND NOT CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD")
   list(APPEND LLDB_SYSTEM_LIBS execinfo)
 endif()
 
index 396d447ff267a20ea9adfaa658cf23695f3dc07e..09819e5d2a0b94567c0289a1beac3da507d5daf3 100644 (file)
@@ -5,7 +5,7 @@ if (CXX_SUPPORTS_NO_MACRO_REDEFINED)
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-macro-redefined")
 endif ()
 
-# build the Python readline suppression module only on Linux
-if (CMAKE_SYSTEM_NAME MATCHES "Linux" AND NOT __ANDROID_NDK__)
+# build the Python readline suppression module only on Linux or GNU systems
+if ((CMAKE_SYSTEM_NAME MATCHES "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "GNU" OR CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD") AND NOT __ANDROID_NDK__)
    add_subdirectory(readline)
 endif()
index a2f0563bf8951c8f881bc5bb44db8131c4e406ab..6c82f55b0efaec46767890d3f986a688dc1e8e5d 100644 (file)
@@ -35,6 +35,7 @@ if sys.version_info.major >= 3:
         Linux = 3
         NetBSD = 4
         Windows = 5
+        kFreeBSD = 6
 else:
     class EnumOsType(object):
         values = ["Unknown",
@@ -42,7 +43,8 @@ else:
                   "FreeBSD",
                   "Linux",
                   "NetBSD",
-                  "Windows"]
+                  "Windows",
+                  "kFreeBSD"]
         class __metaclass__(type):
 #++---------------------------------------------------------------------------
 # Details:  Fn acts as an enumeration.
@@ -86,5 +88,7 @@ def determine_os_type():
         eOSType = EnumOsType.NetBSD
     elif strOS == "win32":
         eOSType = EnumOsType.Windows
+    elif strOS.startswith("gnukfreebsd"):
+        eOSType = EnumOsType.kFreeBSD
 
     return eOSType
index 079147933d1929aefe7f75ab3a21de9ffe1db9b5..c0dd5a89d915b710366aa4c36d95e306ce6f7222 100644 (file)
@@ -40,7 +40,7 @@ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
 set_property(TARGET LLVM PROPERTY VERSION "1") # Append .1 to SONAME
 
 list(REMOVE_DUPLICATES LIB_NAMES)
-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
+if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "GNU" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "kFreeBSD") # FIXME: It should be "GNU ld for elf"
   # GNU ld doesn't resolve symbols in the version script.
   set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
 elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")