[Lldb-commits] [lldb] r179694 - Fix Linux build of LLDB

Malea, Daniel daniel.malea at intel.com
Wed Apr 17 11:45:01 PDT 2013


Yup, reverted!

The consensus on IRC is to add a:

typedef char[16] uuid_t;

As we don't have uuid/uuid.h by default on linux (and possibly other
platforms.) Any concerns with that approach?

On 2013-04-17 2:41 PM, "Jim Ingham" <jingham at apple.com> wrote:

>I agree with Filipe, anything that doesn't implement "native debugging"
>on some host or other should be cross-buildable.  Certainly all the
>ObjectFile plugins should be buildable everywhere, as should the
>DynamicLoader plugins.  If there's something there that doesn't build on
>Linux we should fix that.
>
>Jim
> 
>On Apr 17, 2013, at 11:23 AM, Filipe Cabecinhas <filcab at gmail.com> wrote:
>
>> Hi Daniel,
>> 
>> Shouldn't those plugins be compiled anyway, since you may want to
>> remote debug Mac OS X programs? Or do they have too much
>> platform-specific stuff?
>> 
>> Thanks,
>> 
>>  Filipe
>>  F
>> 
>> 
>> On Wed, Apr 17, 2013 at 10:41 AM, Daniel Malea <daniel.malea at intel.com>
>>wrote:
>>> Author: dmalea
>>> Date: Wed Apr 17 12:41:55 2013
>>> New Revision: 179694
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=179694&view=rev
>>> Log:
>>> Fix Linux build of LLDB
>>> - conditionally build mac-specific plugins only on mac
>>>(PluginObjectFileMachO, PluginDynamicLoaderDrawinKernel and
>>>PluginDynamicLoaderMacOSXDYLD)
>>> - clean up warnings by ignoring deprecated declarations (auto_ptr for
>>>example)
>>> 
>>> 
>>> Modified:
>>>    lldb/trunk/CMakeLists.txt
>>>    lldb/trunk/source/CMakeLists.txt
>>>    lldb/trunk/source/Plugins/DynamicLoader/CMakeLists.txt
>>>    
>>>lldb/trunk/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXD
>>>YLD.cpp
>>>    lldb/trunk/source/Plugins/ObjectFile/CMakeLists.txt
>>> 
>>> Modified: lldb/trunk/CMakeLists.txt
>>> URL: 
>>>http://llvm.org/viewvc/llvm-project/lldb/trunk/CMakeLists.txt?rev=179694
>>>&r1=179693&r2=179694&view=diff
>>> 
>>>========================================================================
>>>======
>>> --- lldb/trunk/CMakeLists.txt (original)
>>> +++ lldb/trunk/CMakeLists.txt Wed Apr 17 12:41:55 2013
>>> @@ -93,6 +93,13 @@ else()
>>>   set(CMAKE_CXX_FLAGS "-std=c++11")
>>> endif()
>>> 
>>> +# Disable Clang warnings
>>> +if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
>>> +  add_lldb_definitions(
>>> +    -Wno-deprecated-declarations # Suppress "deprecated auto_ptr"
>>>warnings
>>> +  )
>>> +endif()
>>> +
>>> # Disable MSVC warnings
>>> if( MSVC )
>>>   add_lldb_definitions(
>>> 
>>> Modified: lldb/trunk/source/CMakeLists.txt
>>> URL: 
>>>http://llvm.org/viewvc/llvm-project/lldb/trunk/source/CMakeLists.txt?rev
>>>=179694&r1=179693&r2=179694&view=diff
>>> 
>>>========================================================================
>>>======
>>> --- lldb/trunk/source/CMakeLists.txt (original)
>>> +++ lldb/trunk/source/CMakeLists.txt Wed Apr 17 12:41:55 2013
>>> @@ -39,24 +39,20 @@ set( LLDB_USED_LIBS
>>>   lldbPluginSymbolFileSymtab
>>>   lldbPluginDynamicLoaderStatic
>>> 
>>> -  lldbPluginObjectFileMachO
>>> -  lldbPluginObjectFileELF
>>>   lldbPluginObjectContainerBSDArchive
>>>   lldbPluginObjectContainerMachOArchive
>>> +  lldbPluginObjectFileELF
>>>   lldbPluginProcessGDBRemote
>>>   lldbPluginProcessUtility
>>>   lldbPluginPlatformGDB
>>>   lldbPluginPlatformFreeBSD
>>>   lldbPluginPlatformLinux
>>> -  lldbPluginObjectFileMachO
>>>   lldbPluginObjectContainerMachOArchive
>>>   lldbPluginObjectContainerBSDArchive
>>>   lldbPluginPlatformMacOSX
>>> -  lldbPluginDynamicLoaderMacOSXDYLD
>>>   lldbPluginDynamicLoaderPosixDYLD
>>>   lldbPluginUnwindAssemblyInstEmulation
>>>   lldbPluginUnwindAssemblyX86
>>> -  lldbPluginDynamicLoaderDarwinKernel
>>>   lldbPluginAppleObjCRuntime
>>>   lldbPluginCXXItaniumABI
>>>   lldbPluginABIMacOSX_arm
>>> @@ -85,6 +81,15 @@ if ( CMAKE_SYSTEM_NAME MATCHES "Linux" )
>>>     )
>>> endif ()
>>> 
>>> +# Mac-only libraries
>>> +if ( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
>>> +  list(APPEND LLDB_USED_LIBS
>>> +    lldbPluginDynamicLoaderMacOSXDYLD
>>> +    lldbPluginObjectFileMachO
>>> +    lldbPluginDynamicLoaderDarwinKernel
>>> +  )
>>> +endif()
>>> +
>>> set( CLANG_USED_LIBS
>>>   clangAnalysis
>>>   clangAST
>>> 
>>> Modified: lldb/trunk/source/Plugins/DynamicLoader/CMakeLists.txt
>>> URL: 
>>>http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/DynamicLoa
>>>der/CMakeLists.txt?rev=179694&r1=179693&r2=179694&view=diff
>>> 
>>>========================================================================
>>>======
>>> --- lldb/trunk/source/Plugins/DynamicLoader/CMakeLists.txt (original)
>>> +++ lldb/trunk/source/Plugins/DynamicLoader/CMakeLists.txt Wed Apr 17
>>>12:41:55 2013
>>> @@ -1,4 +1,6 @@
>>> -add_subdirectory(Darwin-Kernel)
>>> -add_subdirectory(MacOSX-DYLD)
>>> +if ( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
>>> +  add_subdirectory(Darwin-Kernel)
>>> +  add_subdirectory(MacOSX-DYLD)
>>> +endif ()
>>> add_subdirectory(POSIX-DYLD)
>>> add_subdirectory(Static)
>>> 
>>> Modified: 
>>>lldb/trunk/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXD
>>>YLD.cpp
>>> URL: 
>>>http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/DynamicLoa
>>>der/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp?rev=179694&r1=179693&r2=1796
>>>94&view=diff
>>> 
>>>========================================================================
>>>======
>>> --- 
>>>lldb/trunk/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXD
>>>YLD.cpp (original)
>>> +++ 
>>>lldb/trunk/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXD
>>>YLD.cpp Wed Apr 17 12:41:55 2013
>>> @@ -30,6 +30,10 @@
>>> 
>>> #include "DynamicLoaderMacOSXDYLD.h"
>>> 
>>> +#if defined(__linux__)
>>> +#include <linux/uuid.h>
>>> +#endif
>>> +
>>> //#define ENABLE_DEBUG_PRINTF // COMMENT THIS LINE OUT PRIOR TO CHECKIN
>>> #ifdef ENABLE_DEBUG_PRINTF
>>> #include <stdio.h>
>>> 
>>> Modified: lldb/trunk/source/Plugins/ObjectFile/CMakeLists.txt
>>> URL: 
>>>http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ObjectFile
>>>/CMakeLists.txt?rev=179694&r1=179693&r2=179694&view=diff
>>> 
>>>========================================================================
>>>======
>>> --- lldb/trunk/source/Plugins/ObjectFile/CMakeLists.txt (original)
>>> +++ lldb/trunk/source/Plugins/ObjectFile/CMakeLists.txt Wed Apr 17
>>>12:41:55 2013
>>> @@ -1,3 +1,5 @@
>>> add_subdirectory(ELF)
>>> -add_subdirectory(Mach-O)
>>> +if ( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
>>> +  add_subdirectory(Mach-O)
>>> +endif ()
>>> add_subdirectory(PECOFF)
>>> 
>>> 
>>> _______________________________________________
>>> lldb-commits mailing list
>>> lldb-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>> _______________________________________________
>> lldb-commits mailing list
>> lldb-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>





More information about the lldb-commits mailing list