diff options
author | Greg Clayton <gclayton@apple.com> | 2011-06-17 03:31:01 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2011-06-17 03:31:01 +0000 |
commit | f3dd93c888afa9dcdbd7da6d6e09c879ce6b2cb2 (patch) | |
tree | f76a511e402175dfec524f1f6bacd9daccb64f25 /lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp | |
parent | b0f5372bb33dac2aa487e9f4041e32910550344e (diff) | |
download | bcm5719-llvm-f3dd93c888afa9dcdbd7da6d6e09c879ce6b2cb2.tar.gz bcm5719-llvm-f3dd93c888afa9dcdbd7da6d6e09c879ce6b2cb2.zip |
Added the notion of an system root for SDKs. This is a directory where all
libraries and headers exist. This can be specified using the platform select
function:
platform select --sysroot /Volumes/remote-root remote-macosx
Each platform subclass is free to interpret the sysroot as needed.
Expose the new SDK root directory through the SBDebugger class.
Fixed an issue with the GDB remote protocol where unimplemented packets were
not being handled correctly.
llvm-svn: 133231
Diffstat (limited to 'lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp')
-rw-r--r-- | lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp index 881b15bc451..1bcbbddb9f4 100644 --- a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp +++ b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp @@ -270,6 +270,9 @@ PlatformRemoteiOS::GetDeviceSupportDirectory() const char * PlatformRemoteiOS::GetDeviceSupportDirectoryForOSVersion() { + if (m_sdk_sysroot) + return m_sdk_sysroot.GetCString(); + if (m_device_support_directory_for_os_version.empty()) { const char *device_support_dir = GetDeviceSupportDirectory(); @@ -376,6 +379,16 @@ PlatformRemoteiOS::GetFile (const FileSpec &platform_file, { ::snprintf (resolved_path, sizeof(resolved_path), + "%s/%s", + os_version_dir, + platform_file_path); + + local_file.SetFile(resolved_path, true); + if (local_file.Exists()) + return error; + + ::snprintf (resolved_path, + sizeof(resolved_path), "%s/Symbols.Internal/%s", os_version_dir, platform_file_path); |