1 //===-- Symbols.h -----------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_Symbols_h_
11 #define liblldb_Symbols_h_
18 // Other libraries and framework includes
20 #include "lldb/Host/FileSpec.h"
22 namespace lldb_private {
27 //----------------------------------------------------------------------
28 // Locate the executable file given a module specification.
30 // Locating the file should happen only on the local computer or using
31 // the current computers global settings.
32 //----------------------------------------------------------------------
34 LocateExecutableObjectFile (const ModuleSpec &module_spec);
36 //----------------------------------------------------------------------
37 // Locate the symbol file given a module specification.
39 // Locating the file should happen only on the local computer or using
40 // the current computers global settings.
41 //----------------------------------------------------------------------
43 LocateExecutableSymbolFile (const ModuleSpec &module_spec);
46 FindSymbolFileInBundle (const FileSpec& dsym_bundle_fspec,
47 const lldb_private::UUID *uuid,
48 const ArchSpec *arch);
50 //----------------------------------------------------------------------
51 // Locate the object and symbol file given a module specification.
53 // Locating the file can try to download the file from a corporate build
54 // respository, or using any other means necessary to locate both the
55 // unstripped object file and the debug symbols.
56 // The force_lookup argument controls whether the external program is called
57 // unconditionally to find the symbol file, or if the user's settings are
58 // checked to see if they've enabled the external program before calling.
60 //----------------------------------------------------------------------
62 DownloadObjectAndSymbolFile (ModuleSpec &module_spec, bool force_lookup = true);
66 } // namespace lldb_private
69 #endif // liblldb_Symbols_h_