Index: include/lldb/API/SBTarget.h =================================================================== --- include/lldb/API/SBTarget.h +++ include/lldb/API/SBTarget.h @@ -826,6 +826,7 @@ friend class SBSection; friend class SBSourceManager; friend class SBSymbol; + friend class SBTargetSettings; friend class SBValue; //------------------------------------------------------------------ Index: include/lldb/API/SBTargetSettings.h =================================================================== --- /dev/null +++ include/lldb/API/SBTargetSettings.h @@ -0,0 +1,50 @@ +//===-- SBTargetSettings.h ----------------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef LLDB_SBTargetSettings_h_ +#define LLDB_SBTargetSettings_h_ + +// C Includes +// C++ Includes +// Other libraries and framework includes +// Project includes +#include "lldb/API/SBTarget.h" +#include "lldb/API/SBError.h" + +namespace lldb { + +class LLDB_API SBTargetSettings { +public: + //------------------------------------------------------------------ + // Constructors + //------------------------------------------------------------------ + SBTargetSettings(); + + SBTargetSettings(const lldb::SBTarget &sb_target); + + //------------------------------------------------------------------ + // Destructor + //------------------------------------------------------------------ + ~SBTargetSettings(); + + void AppendImageSearchPath(const char *from, const char *to); + + void AppendImageSearchPath(const char *from, const char *to, SBError &error); + + //size_t GetNumImageSearchPaths() const; + + //const char *GetImageSearchPathAtIndex(size_t i); + +private: + lldb::TargetPropertiesSP m_opaque_sp; +}; + +} // namespace lldb + +#endif // LLDB_SBTargetSettings_h_ Index: source/API/CMakeLists.txt =================================================================== --- source/API/CMakeLists.txt +++ source/API/CMakeLists.txt @@ -63,6 +63,7 @@ SBSymbolContext.cpp SBSymbolContextList.cpp SBTarget.cpp + SBTargetSettings.cpp SBThread.cpp SBThreadCollection.cpp SBThreadPlan.cpp Index: source/API/SBTargetSettings.cpp =================================================================== --- /dev/null +++ source/API/SBTargetSettings.cpp @@ -0,0 +1,41 @@ +//===-- SBTargetSettings.cpp --------------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#include "lldb/API/SBTargetSettings.h" + +#include "lldb/Target/Target.h" +#include "lldb/Utility/Log.h" +#include "llvm/Support/Casting.h" + +using namespace lldb; +using namespace lldb_private; + +//---------------------------------------------------------------------- +// SBTargetSettings constructors +//---------------------------------------------------------------------- +SBTargetSettings::SBTargetSettings() : m_opaque_sp() {} + +SBTargetSettings::SBTargetSettings(const lldb::SBTarget &sb_target) + : m_opaque_sp(sb_target.GetSP()) {} + +//---------------------------------------------------------------------- +// Destructor +//---------------------------------------------------------------------- +SBTargetSettings::~SBTargetSettings() = default; + +void SBTargetSettings::AppendImageSearchPath(const char *from, + const char *to) { + SBError error; + AppendImageSearchPath(from, to, error); +} + +void SBTargetSettings::AppendImageSearchPath(const char *from, + const char *to, + SBError &error) { +}