summaryrefslogtreecommitdiff
path: root/include/lldb/Host/android
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Host/android')
-rw-r--r--include/lldb/Host/android/Android.h31
-rw-r--r--include/lldb/Host/android/Config.h28
-rw-r--r--include/lldb/Host/android/HostInfoAndroid.h33
-rw-r--r--include/lldb/Host/android/ProcessLauncherAndroid.h26
4 files changed, 118 insertions, 0 deletions
diff --git a/include/lldb/Host/android/Android.h b/include/lldb/Host/android/Android.h
new file mode 100644
index 000000000000..8efc1a53b01f
--- /dev/null
+++ b/include/lldb/Host/android/Android.h
@@ -0,0 +1,31 @@
+//===-- lldb-android.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_lldb_android_h_
+#define LLDB_lldb_android_h_
+
+#include <sstream>
+#include <string>
+#include <errno.h>
+
+#define _isatty isatty
+#define SYS_tgkill __NR_tgkill
+
+namespace std
+{
+ template <typename T>
+ std::string to_string(T value)
+ {
+ std::ostringstream os ;
+ os << value ;
+ return os.str() ;
+ }
+}
+
+#endif // LLDB_lldb_android_h_
diff --git a/include/lldb/Host/android/Config.h b/include/lldb/Host/android/Config.h
new file mode 100644
index 000000000000..f16ed86cabb8
--- /dev/null
+++ b/include/lldb/Host/android/Config.h
@@ -0,0 +1,28 @@
+//===-- Config.h -----------------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+//----------------------------------------------------------------------
+// LLDB currently doesn't have a dynamic configuration mechanism, so we
+// are going to hardcode things for now. Eventually these files will
+// be auto generated by some configuration script that can detect
+// platform functionality availability.
+//----------------------------------------------------------------------
+
+#ifndef liblldb_Platform_Config_h_
+#define liblldb_Platform_Config_h_
+
+#define LLDB_CONFIG_TERMIOS_SUPPORTED 1
+
+//#define LLDB_CONFIG_TILDE_RESOLVES_TO_USER 1
+
+//#define LLDB_CONFIG_DLOPEN_RTLD_FIRST_SUPPORTED 1
+
+//#define LLDB_CONFIG_FCNTL_GETPATH_SUPPORTED 1
+
+#endif // #ifndef liblldb_Platform_Config_h_
diff --git a/include/lldb/Host/android/HostInfoAndroid.h b/include/lldb/Host/android/HostInfoAndroid.h
new file mode 100644
index 000000000000..08eb1abf3b51
--- /dev/null
+++ b/include/lldb/Host/android/HostInfoAndroid.h
@@ -0,0 +1,33 @@
+//===-- HostInfoAndroid.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_Host_android_HostInfoAndroid_h_
+#define lldb_Host_android_HostInfoAndroid_h_
+
+#include "lldb/Host/linux/HostInfoLinux.h"
+
+namespace lldb_private
+{
+
+class HostInfoAndroid : public HostInfoLinux
+{
+ friend class HostInfoBase;
+
+ public:
+ static FileSpec GetDefaultShell();
+ static FileSpec ResolveLibraryPath (const std::string& path, const ArchSpec& arch);
+
+ protected:
+ static void ComputeHostArchitectureSupport(ArchSpec &arch_32, ArchSpec &arch_64);
+ static bool ComputeTempFileBaseDirectory(FileSpec &file_spec);
+};
+
+} // end of namespace lldb_private
+
+#endif // #ifndef lldb_Host_android_HostInfoAndroid_h_
diff --git a/include/lldb/Host/android/ProcessLauncherAndroid.h b/include/lldb/Host/android/ProcessLauncherAndroid.h
new file mode 100644
index 000000000000..8d4847810028
--- /dev/null
+++ b/include/lldb/Host/android/ProcessLauncherAndroid.h
@@ -0,0 +1,26 @@
+//===-- ProcessLauncherAndroid.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_Host_android_ProcessLauncherAndroid_h_
+#define lldb_Host_android_ProcessLauncherAndroid_h_
+
+#include "lldb/Host/ProcessLauncher.h"
+
+namespace lldb_private
+{
+
+class ProcessLauncherAndroid : public ProcessLauncher
+{
+ public:
+ virtual HostProcess LaunchProcess(const ProcessLaunchInfo &launch_info, Error &error);
+};
+
+} // end of namespace lldb_private
+
+#endif