Author: Vedant Kumar Date: 2019-10-28T15:34:39-07:00 New Revision: 82d3ba87d06f9e2abc6e27d8799587d433c56630
URL: https://github.com/llvm/llvm-project/commit/82d3ba87d06f9e2abc6e27d8799587d433c56630 DIFF: https://github.com/llvm/llvm-project/commit/82d3ba87d06f9e2abc6e27d8799587d433c56630.diff LOG: [debugserver] Detect arch from LLVM_DEFAULT_TARGET_TRIPLE The debugserver build needs to conditionally include files depending on the target architecture. Switch on the architecture specified by LLVM_DEFAULT_TARGET_TRIPLE, as the llvm and swift build systems use this variable to identify the target (the latter, indirectly, through LLVM_HOST_TRIPLE). It would be possible to switch on CMAKE_OSX_ARCHITECTURES, but the swift build does not provide it, preferring instead to pass arch-specific CFLAGS etc explicitly. Switching on LLVM_HOST_TRIPLE is also an option, but it breaks down when cross-compiling. Differential Revision: https://reviews.llvm.org/D69523 Added: Modified: lldb/tools/debugserver/source/MacOSX/CMakeLists.txt Removed: ################################################################################ diff --git a/lldb/tools/debugserver/source/MacOSX/CMakeLists.txt b/lldb/tools/debugserver/source/MacOSX/CMakeLists.txt index 7ad4a06a4d36..6d8e1ee449e3 100644 --- a/lldb/tools/debugserver/source/MacOSX/CMakeLists.txt +++ b/lldb/tools/debugserver/source/MacOSX/CMakeLists.txt @@ -1,14 +1,28 @@ -if("${CMAKE_OSX_ARCHITECTURES}" MATCHES ".*arm.*") +# The debugserver build needs to conditionally include files depending on the +# target architecture. +# +# Switch on the architecture specified by LLVM_DEFAULT_TARGET_TRIPLE, as +# the llvm and swift build systems use this variable to identify the +# target (the latter, indirectly, through LLVM_HOST_TRIPLE). +# +# It would be possible to switch on CMAKE_OSX_ARCHITECTURES, but the swift +# build does not provide it, preferring instead to pass arch-specific +# CFLAGS etc explicitly. Switching on LLVM_HOST_TRIPLE is also an option, +# but it breaks down when cross-compiling. + +string(REGEX MATCH "^[^-]*" LLDB_DEBUGSERVER_ARCH ${LLVM_DEFAULT_TARGET_TRIPLE}) + +if("${LLDB_DEBUGSERVER_ARCH}" MATCHES ".*arm.*") list(APPEND SOURCES arm/DNBArchImpl.cpp arm64/DNBArchImplARM64.cpp) include_directories(${CURRENT_SOURCE_DIR}/arm ${CURRENT_SOURCE_DIR}/arm64) endif() -if(NOT CMAKE_OSX_ARCHITECTURES OR "${CMAKE_OSX_ARCHITECTURES}" MATCHES ".*86.*") +if(NOT LLDB_DEBUGSERVER_ARCH OR "${LLDB_DEBUGSERVER_ARCH}" MATCHES ".*86.*") list(APPEND SOURCES i386/DNBArchImplI386.cpp x86_64/DNBArchImplX86_64.cpp) include_directories(${CURRENT_SOURCE_DIR}/i386 ${CURRENT_SOURCE_DIR}/x86_64) endif() -if("${CMAKE_OSX_ARCHITECTURES}" MATCHES ".*ppc.*") +if("${LLDB_DEBUGSERVER_ARCH}" MATCHES ".*ppc.*") list(APPEND SOURCES ppc/DNBArchImpl.cpp) include_directories(${CURRENT_SOURCE_DIR}/ppc) endif() _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits