Remove MIUtilParse once https://reviews.llvm.org/D23882 is accepted.
Details
Diff Detail
Event Timeline
It looks good. Remaining TODO for standalone builds:
- sanitize six.py usage (it's installed into system-wide directory, where standard py-six lands)
- bump cmake_minimum_required(VERSION 2.8.12.2) to 3.4.3 in cmake/modules/LLDBStandalone.cmake
Final bits for Windows:
- eliminate the usage of ../lib/Support/regex_impl.h in RegularExpression.h
How would you prefer handling it? Can we just kill it and rely on user installing it system-wide or via pip?
- bump cmake_minimum_required(VERSION 2.8.12.2) to 3.4.3 in cmake/modules/LLDBStandalone.cmake
Final bits for Windows:
- eliminate the usage of ../lib/Support/regex_impl.h in RegularExpression.h
Wouldn't it be actually better to kill that regex implementation as well, and use the class provided by LLVMSupport everywhere? I started with the other since it caused direct build issues on Linux but I think I could try to kill this one as well.
- Patch scripts/Python/finishSwigPythonLLDB.py and install six into lldb subdir with a custom name (lldb_six.py).
- Patch the Python sources to make use of lldb_six.
Unfortunately there is resistance to grab system-wide (provided by a user) six module.
- bump cmake_minimum_required(VERSION 2.8.12.2) to 3.4.3 in cmake/modules/LLDBStandalone.cmake
Final bits for Windows:
- eliminate the usage of ../lib/Support/regex_impl.h in RegularExpression.h
Wouldn't it be actually better to kill that regex implementation as well, and use the class provided by LLVMSupport everywhere? I started with the other since it caused direct build issues on Linux but I think I could try to kill this one as well.
It makes sense.
@mgorny: The change should be reviewed by an lldb-mi maintainer (i.e., @ki.stfu). It helps is you explicitly specify the reviewer, as otherwise the person may not notice the patch.
I think the most politically passable version would be to make that a cmake option (LLDB_USE_BUILTIN_SIX ?). If it is set you use the system-wide package, otherwise, you use the builtin one. When you build the distro package, you set it to false. When e.g., we are distributing it with Android Studio, we'll set it to true. I personally don't care what the default will be.
- bump cmake_minimum_required(VERSION 2.8.12.2) to 3.4.3 in cmake/modules/LLDBStandalone.cmake
Final bits for Windows:
- eliminate the usage of ../lib/Support/regex_impl.h in RegularExpression.h
Wouldn't it be actually better to kill that regex implementation as well, and use the class provided by LLVMSupport everywhere? I started with the other since it caused direct build issues on Linux but I think I could try to kill this one as well.
I think that would be great. We'll need to be a bit careful and check whether we the two libraries have sufficiently similar interfaces.