[llvm] [mlir] Fix CMake dependencies on mlir-linalg-ods-yaml-gen (PR #111973)

Martin Storsjö via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 14 07:56:00 PDT 2024


mstorsjo wrote:

> > > I'm guessing it does not. I could change the variable to not be a cache variable. @mstorsjo Is there a reason why get_host_tool_path() sets the executable and target variables as cache? It seems to me to be build system internals.
> > 
> > 
> > Earlier, if users wanted to use a prebuilt e.g. `llvm-tblgen` (e.g. when cross compiling), they'd set `-DLLVM_TBLGEN=/path/to/binary` - so I think that's why those variables traditionally were cache variables. Since introducing `LLVM_NATIVE_TOOL_DIR` there's less reason to set those individually, but I guess we haven't officially deprecated/removed the old way of doing that.
> 
> Are you talking about LLVM_TABLEGEN? That seems like a different thing because if I try to trace all calls to get_host_tool_path it seems the cache variable it looks for are named:

Yes, that's the one I meant. Sorry, I didn't have time to dig in closer what this really was touching.

> * clang_target
> * clang_tidy_confusable_chars_gen_target
> * llvm-as_target
> * llvm_as_target
> * llvm-link_target
> * llvm_link_target
> * llvm_nm_target
> * llvm_readobj_target
> * opt_target
> * prepare_builtins_target
> * MLIR_LINALG_ODS_YAML_GEN_TARGET
> 
> I'm tempted to make it a non cache variable because the only alternative I can think of is to tell people to nuke their existing build if they encounter issues.

Indeed, I don't see any reason to keep those variables as CACHE variables.

https://github.com/llvm/llvm-project/pull/111973


More information about the llvm-commits mailing list