Bug#785931: llvm-3.6-dev: LLVM CMake files broken by Debian packaging
brad.king at kitware.com
Wed May 20 13:43:34 UTC 2015
The issue reported in bug #735592 is not fully resolved (as reported
in some follow-up posts in that issue). While that problem has been
resolved in upstream LLVM 3.6, another problem is caused by Debian
When a CMake-based project does
on Debian one gets:
CMake Error at /usr/share/llvm-3.6/cmake/LLVMConfig.cmake:52 (include):
include could not find load file:
The problem does not occur with upstream LLVM 3.6. It is caused by
the adjustment of the installed file layout done by Debian packaging.
First 'debian/rules' configures with
The build generates content in
debian/tmp/usr/lib/llvm- at LLVM_VERSION@/share/llvm/cmake/LLVMConfig.cmake
that references the directory
/usr/lib/llvm- at LLVM_VERSION@/share/llvm/cmake
because that is where files are installed by upstream for the given prefix.
Then 'debian/llvm-X.Y-dev.install.in' has:
debian/tmp/usr/lib/llvm- at LLVM_VERSION@/share/llvm/cmake/*.cmake usr/share/llvm- at LLVM_VERSION@/cmake/
This moves these files to a different location during packaging,
but the content of 'LLVMConfig.cmake' expects the original location.
I'm able to work around the issue locally by running
$ sudo ln -s /usr/share/llvm-3.6 /usr/lib/llvm-3.6/share/llvm
to restore the existence of the original path to the files. The
Debian package should be updated to add this symlink. Or, it can
install the files to the original location and add a symlink in
the other direction (to satisfy default find_package search paths).
More information about the Pkg-llvm-team