xiaobai added a comment. I personally prefer the third approach. To make sure I understand correctly, I'll write it in my own words so you can correct me if I misunderstood. Try to find the dependency, and if we find it then use it. If not, then we can print out something like "Didn't find `DEPENDENCY`" and continue on our merry way. If the user overwrites the values and something goes wrong, send a fatal error and tell them that what the value they set isn't going to work without further work (e.g. explicitly enable python support but didn't find python? tell the user that you couldn't find python and maybe suggest setting some other CMake variables to help CMake find python).
I think that we should emphasize UX here. While I think that everybody could benefit from understanding the build system better, helping the user understand that their settings don't work (and why they don't work) goes a long way. Repository: rLLDB LLDB CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71306/new/ https://reviews.llvm.org/D71306 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits