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_
17 // Other libraries and framework includes
19 #include "lldb/Host/FileSpec.h"
21 namespace lldb_private {
26 //----------------------------------------------------------------------
27 // Locate the executable file given a module specification.
29 // Locating the file should happen only on the local computer or using
30 // the current computers global settings.
31 //----------------------------------------------------------------------
33 LocateExecutableObjectFile (const ModuleSpec &module_spec);
35 //----------------------------------------------------------------------
36 // Locate the symbol file given a module specification.
38 // Locating the file should happen only on the local computer or using
39 // the current computers global settings.
40 //----------------------------------------------------------------------
42 LocateExecutableSymbolFile (const ModuleSpec &module_spec);
45 FindSymbolFileInBundle (const FileSpec& dsym_bundle_fspec,
46 const lldb_private::UUID *uuid,
47 const ArchSpec *arch);
49 //----------------------------------------------------------------------
50 // Locate the object and symbol file given a module specification.
52 // Locating the file can try to download the file from a corporate build
53 // respository, or using any other means necessary to locate both the
54 // unstripped object file and the debug symbols.
55 // The force_lookup argument controls whether the external program is called
56 // unconditionally to find the symbol file, or if the user's settings are
57 // checked to see if they've enabled the external program before calling.
59 //----------------------------------------------------------------------
61 DownloadObjectAndSymbolFile (ModuleSpec &module_spec, bool force_lookup = true);
65 } // namespace lldb_private
68 #endif // liblldb_Symbols_h_