control-D on empty line to quit lldb stopped working in Release builds on MacOSX.

<rdar://problem/16822217>



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@208117 91177308-0d34-0410-b5e6-96231b3b80d8
If CMake finds a python interpreter, use it

The FreeBSD package building cluster installs e.g. 'python2.7', but no
plain 'python' to avoid version-related issues.

CMake's FindPythonInterp locates an interpreter with such a name and
provides it in the PYTHON_EXECUTABLE variable.  Use that if it's set,
falling back to the original '/usr/bin/env python' otherwise.

This is a missing part of LLDB commit r207122.
Patch by Brooks Davis in FreeBSD ports commit r353052


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@208204 91177308-0d34-0410-b5e6-96231b3b80d8
Modify debugserver to follow gdb remote $qC protocol definition.

$qC from debugserver now returns the current thread's thread-id (and, like $?, will set a current thread if one is not already selected).  Previously it was returning the current process id.

lldb will now query $qProcessInfo to retrieve the process id.  The process id is now cached lazily and reset like other cached values.  Retrieval of the process id will fall back to the old $qC method for vendor==Apple and os==iOS if the qProcessInfo retrieval fails.

Added a gdb remote protocol-level test to verify that $qProcessInfo reports a valid process id after launching a process, while the process is in the initial stopped state.  Verifies the given process id is a currently valid process on host OSes for which we know how to check (MacOSX, Linux, {Free/Net}BSD).  Ignores the live process check for OSes where we don't know how to do this.  (I saw no portable way to do this in stock Python without pulling in other libs).


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@208241 91177308-0d34-0410-b5e6-96231b3b80d8