<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Can you point me at the packaging guide you’re reading?<div class=""><br class=""></div><div class="">I was reading <a href="https://cmake.org/Wiki/CMake/Tutorials/Packaging" class="">https://cmake.org/Wiki/CMake/Tutorials/Packaging</a>, which seems to suggest lib/project-version/, but that may be out of date.</div><div class=""><br class=""></div><div class="">If CMake’s guidance is lib/cmake/project, that’s fine with me.</div><div class=""><br class=""></div><div class="">-Chris</div><div class=""><br class=""></div><div class=""><div><blockquote type="cite" class=""><div class="">On Jan 11, 2016, at 11:39 PM, Niels Ole Salscheider <<a href="mailto:niels_ole@salscheider-online.de" class="">niels_ole@salscheider-online.de</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">On Monday, 11 January 2016, 13:33:40 CET, Chris Bieneman wrote:</span><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">+ Takumi<br class=""><br class="">I’m curious if Takumi has any thoughts here. I primarily work on Darwin<br class="">where we address multiple architectures by using fat binaries, so we don’t<br class="">really have this problem.<br class=""><br class="">I’m a little concerned about this patch because it is a universal behavior<br class="">change across all CMake users.I honestly just don’t know enough about how<br class="">the CMake out-of-tree builds work to evaluate if this is safe, but from the<br class="">limited research I’ve done I think it is probably mostly right.<br class=""><br class="">The only thing I really didn’t like is that instead of lib/cmake/llvm I’d<br class="">rather the directory was just lib/llvm/. Mostly because 5 years from now<br class="">when I ls lib and want to delete some old LLVM install you’ll know that the<br class="">llvm directory is part of LLVM instead of part of CMake.<br class=""></blockquote><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">I chose lib/cmake/llvm because it is what the packaging guide recommends and<span class="Apple-converted-space"> </span></span><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">where most projects install their cmake files (98.7% of all 909 cmake files on<span class="Apple-converted-space"> </span></span><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">my system). But lib/llvm would also work for CMake.</span><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">Takumi any thoughts?<br class=""><br class="">-Chris<br class=""><br class=""><blockquote type="cite" class="">On Jan 9, 2016, at 5:26 AM, Niels Ole Salscheider<br class=""><<a href="mailto:niels_ole@salscheider-online.de" class="">niels_ole@salscheider-online.de</a>> wrote:<br class=""><br class="">Ping.<br class=""><br class="">On Monday, 21 December 2015, 00:17:47 CET, Niels Ole Salscheider via llvm-<br class=""><br class="">commits wrote:<br class=""><blockquote type="cite" class="">On Monday 21 December 2015, 00:09:29 CET, Niels Ole Salscheider wrote:<br class=""><blockquote type="cite" class="">This is the right location for platform-specific files.<br class=""><br class="">On some distributions (e. g. Exherbo), a package can be installed for<br class="">several architectures in parallel, but the architecture-independent<br class="">files<br class="">are shared. Therefore, we must not install architecture-dependent files<br class="">(like the CMake config and export files) to share/.<br class=""></blockquote><br class="">The corresponding Clang patch can be found at<br class=""><a href="http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20151214/145537.h" class="">http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20151214/145537.h</a><br class="">tm<br class="">l.<br class=""><br class=""><blockquote type="cite" class="">---<br class=""><br class="">cmake/modules/CMakeLists.txt | 2 +-<br class="">docs/CMake.rst               | 8 ++++----<br class="">2 files changed, 5 insertions(+), 5 deletions(-)<br class=""><br class="">diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt<br class="">index 5f3f255..47ae903 100644<br class="">--- a/cmake/modules/CMakeLists.txt<br class="">+++ b/cmake/modules/CMakeLists.txt<br class="">@@ -1,4 +1,4 @@<br class="">-set(LLVM_INSTALL_PACKAGE_DIR share/llvm/cmake)<br class="">+set(LLVM_INSTALL_PACKAGE_DIR lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm)<br class=""><br class="">set(llvm_cmake_builddir<br class="">"${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")<br class=""><br class="">get_property(LLVM_EXPORTS GLOBAL PROPERTY LLVM_EXPORTS)<br class=""><br class="">diff --git a/docs/CMake.rst b/docs/CMake.rst<br class="">index 38199e5..204b5aa 100644<br class="">--- a/docs/CMake.rst<br class="">+++ b/docs/CMake.rst<br class="">@@ -511,16 +511,16 @@ The ``find_package(...)`` directive when used in<br class="">CONFIG mode (as in the above example) will look for the<br class="">``LLVMConfig.cmake`` file in various locations (see cmake manual for<br class="">details).  It creates a ``LLVM_DIR`` cache entry to save the directory<br class="">where ``LLVMConfig.cmake`` is found or allows the user to specify the<br class="">-directory (e.g. by passing ``-DLLVM_DIR=/usr/share/llvm/cmake`` to<br class="">+directory (e.g. by passing ``-DLLVM_DIR=/usr/lib/cmake/llvm`` to<br class=""><br class="">the ``cmake`` command or by setting it directly in ``ccmake`` or<br class=""><br class="">``cmake-gui``).<br class=""><br class="">This file is available in two different locations.<br class=""><br class="">-* ``<INSTALL_PREFIX>/share/llvm/cmake/LLVMConfig.cmake`` where<br class="">+* ``<INSTALL_PREFIX>/lib/cmake/llvm/LLVMConfig.cmake`` where<br class=""><br class=""> ``<INSTALL_PREFIX>`` is the install prefix of an installed version of<br class=""><br class="">LLVM. -  On Linux typically this is<br class="">``/usr/share/llvm/cmake/LLVMConfig.cmake``. +  On Linux typically this<br class="">is<br class="">``/usr/lib/cmake/llvm/LLVMConfig.cmake``.<br class=""><br class="">-* ``<LLVM_BUILD_ROOT>/share/llvm/cmake/LLVMConfig.cmake`` where<br class="">+* ``<LLVM_BUILD_ROOT>/lib/cmake/llvm/LLVMConfig.cmake`` where<br class=""><br class=""> ``<LLVM_BUILD_ROOT>`` is the root of the LLVM build tree. **Note: this<br class=""> is<br class=""><br class="">only available when building LLVM with CMake.**</blockquote></blockquote></blockquote></blockquote></div></blockquote></div><br class=""></div></body></html>