smeenai added a comment.

In D131963#3811811 <https://reviews.llvm.org/D131963#3811811>, @ldionne wrote:
> I'd be fine with this as-is if it works in the CI.
>
> IIUC, the current blocker for this is that the `ClangConfig.cmake` installed 
> by LLVM is not robust to the dev packages missing. If you do 
> `find_package(Clang 16.0)`, it will error out if the dev packages are not 
> present, since it will try to reference static libraries (and other 
> artifacts) that don't exist and try to create IMPORTED targets for those. 
> @smeenai @beanz do you know more about that, or do you know someone that 
> does? Do you know who set up the CMake config files so that 
> `find_package(Clang)` would work in the first place? I'd also welcome your 
> input on the `ClangConfigVersion.cmake.in` changes.
>
> Just for the context, what we're trying to do here is simply use 
> `clang-tidy`'s development packages from the libc++ build to add our own 
> custom clang-tidy checks.
>
> Accepting because this LGTM, although we do have some stuff to resolve before 
> this can be shipped.

IIRC, the intended solution was to use `LLVM_DISTRIBUTION_COMPONENTS` 
(https://llvm.org/docs/BuildingADistribution.html). When you use that option, 
the generated CMake package files (at least in the install tree; I'm not sure 
about the ones in the build tree) should only contain imported targets that 
were part of your distribution. Multi-distribution support extends this even 
further, where the file defining the imported targets for a distribution is 
only imported if it's present, so things should work as expected both with and 
without the dev packages. Is that workable for your use case?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D131963/new/

https://reviews.llvm.org/D131963

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to