This should solve some build errors using cmake + 'make'
This also continues some previous refactoring of the LLVM dialect to remove
dependence on the OpenMP dialect, which did not completely incorporate changes
to the header structure.
It has taken more time than I expected as building with make -j1 is the best way to ensure that the potential problem with generated headers can be replicated. I've tried the latest iteration of this patch and I can confirm that the problem has gone and this patch is an acceptable solution.
make -j1 only enforces a linear ordering, but does not guarantee that the dependencies are correct. You actually have more chances to hit a missing dependency with maximum parallelism.
In general missing dependencies for a target can be reproduced consistently by building only this target alone make <path to .o>
Which config is failing without linking this?
I added it because of the header dependence on ConvertToLLVMIR, but it could be handled by the transitive dependence on MLIRTargetLLVMIRModuleTranslation, I suppose. I don't recall if I saw a specific failure here.