<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJztV91v4jgQ_2vCy4iIOAHKAw8QSA8dpbp-qboX5CQGvDU2ZzvLdv_6GzshLd3tXqU7rfbhJJTEnvF8_mY85Kp8HkchTCsuSlguH64gSkAXERy53UEw6Lm99Xw1mS7n6yxb4A5QWb6l3M1vrhar7NqR1cFyJQ0wSXPByjDozYLehISQakYtAwppQKb4AyXFM6RX9InBQatPrLAQxJOaHyXVv2KP9HrPf673XPJ9tV9r9lfFNSsDcvEwv7ldXK8gDqNBQEYAAYnhU2UsWAWGCyYLBnbH4Ei15HILxx2TuMENCC4Z4HvPjUFKraixBiVbhkKWk9Xl_eRyfgvp4yPKr5k2XJbrAy2e6JYhpw9eer3KFpdwM__jfnEzn7W8rTf1MsZgKLnh20qz2oyTxm_dx1Aq0QQgIAn4IEB3mvuUhdCd-UTMFjdBjAozrRQangnxed9tpHajJOyFPUxraHTREPHlRbglz_FZB7ol1hq7XbjDuKHfUKj9AUOpgZdMWr7hBXWJdsG7XN1DRFBH1J6aMYuaXazPzk6mC-Byoz7KB10olWQte7pjxRNslIaj0k9vj2H4MPVZZbTzjkvnVYO1LpgnfjggXH6oGTaIUcyK-SDbmX01lOdao3nUvlhidlSzVxG-UmUlUAXJFtIyLanAT-_Zrap0wdJaiQnrA_EkSVDYxZ4Z47E2amECULhja-PPrRvrjItD6h6SsdK4IsjZqR7xE8PHoDKsKc2UCgG3FpHstShEvGYF5hgKR9lwbey50g945t1J3_FnOHCa6nL-vgOnwvG6_itIZ1ix2MPehLU2oPg5JrharUu_tSJK-s6M83bS6vaYWnJjTWi_uP4Qv8v8-ulKRVXYIFbXd-C4AR336W36HILjt8mD7-nrdLJctlL-B_GvD-I7pveuO7a2kOiXQHKf_Awkn7x_A-fT9nq5WP3uppJWHIrIVIUn_1wupmd3BHo2SOr319B4iRvP-Zlp4y63gJAoJGEU4ce38pY8f9wL8p7IL0h7TyoJR2FE3kg9DQXutuHS5U_g7ROQFJirRwOqKCrtZ57mpr1lOFAJr4O8JNdNLa_y5yOf8QbTbnFd2UNlQ6G2eC787ozSlNWOyq0zx01PSPunyQjnPz9RYbX-kPsVvwOP8fK9k7BVQI_02XmdVzjB7SgKGJp6nqP-3u9S7eOJNIlbOCBVbhQJzyz3fayJuMtQHKKrpCZiy9JY5YXrJM-OuLP24DqOG3wwjOwzZ0cTOqiHSmOQslkUJTEZdspxXI7iEe3Qyu6UHouvVGkqOpUW43MhW5ygqzzELL4UzeuqwyWCt_JJ6cejfq-zG-cX5UWS5PGwHFyMhjntx4N4WIzykpQFvkcdQXMmzDjo41BDJDuCF-GS3591_r0FfEx6BH_RKBr0kmgUJkU0vChKytim6PfyfpD02J5y0YamgyFwIvNqa5AofH23RIrVucX-7Q1GCy23wi98dnDHoeT9QbpFyDNsUKkDifRIOf1dKBVCRyrrLgJIO96bsXflb-vgBSw>53950</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [CMake] `find_package(LLVM CONFIG)` may fail then the project does not use C
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          lzaoral
      </td>
    </tr>
</table>

<pre>
    1. Build LLVM 14 rc1 with `LLVM_ENABLE_FFI` and `LLVM_ENABLE_TERMINFO` options enabled.
2. Create a C++ only CMake project :
```cmake
cmake_minimum_required(VERSION 3.16)  # just to silence the warning when this line is missing
project(test LANGUAGES CXX)
find_package(LLVM CONFIG REQUIRED)
```
3. Configure this project:
```console
$ cmake -Bbuild . -DLLVM_DIR=/root/llvm-project-14.0.0rc1.src/llvm/build/lib/cmake/llvm/
-- The CXX compiler identification is GNU 12.0.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at /usr/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:44 (message):
  check_source_compiles: C: needs to be enabled before use.
Call Stack (most recent call first):
  /usr/share/cmake/Modules/CheckCSourceCompiles.cmake:76 (cmake_check_source_compiles)
  /root/llvm-project-14.0.0rc1.src/llvm/build/lib/cmake/llvm/FindFFI.cmake:44 (check_c_source_compiles)
  /root/llvm-project-14.0.0rc1.src/llvm/build/lib/cmake/llvm/LLVMConfig.cmake:145 (find_package)
  CMakeLists.txt:3 (find_package)


-- Could NOT find FFI (missing: HAVE_FFI_CALL)
CMake Error at /usr/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:44 (message):
  check_source_compiles: C: needs to be enabled before use.
Call Stack (most recent call first):
  /usr/share/cmake/Modules/CheckCSourceCompiles.cmake:76 (cmake_check_source_compiles)
  /root/llvm-project-14.0.0rc1.src/llvm/build/lib/cmake/llvm/FindTerminfo.cmake:21 (check_c_source_compiles)
  /root/llvm-project-14.0.0rc1.src/llvm/build/lib/cmake/llvm/LLVMConfig.cmake:152 (find_package)
  CMakeLists.txt:3 (find_package)


-- Could NOT find Terminfo (missing: Terminfo_LINKABLE)
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.11")
-- Found LibXml2: /usr/lib64/libxml2.so (found version "2.9.12")
-- Configuring incomplete, errors occurred!
See also "/root/test/build/CMakeFiles/CMakeOutput.log".
```

Changing the `project(test LANGUAGES CXX)` line to `project(test LANGUAGES C CXX)` makes the error go away, but that's just a work-around than a solution.

CMake version: 3.22.2
Introduced by: https://reviews.llvm.org/D114327
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztVt1v4jgQ_2vCy4iIOAHKAw8QSA8dpbp-qboX5CQOeJvYnO0s2_3rd-yEtHS3e304rfbhpChxPOOZ-c2XJ5X58zTwYV7zMof1-uEKgghUFsCRmz14o4Hd2y43s_l6uU2SFe4AFflbyt3y5mq1Sa4tWR4Ml0IDEzQtWe57g4U3mBEfYsWoYUAh9sgcH5CifIb4ij4xOCj5iWUGvHDW8KOk5skqpDd7brmtuOBVXW0V-6fmiuUeuXhY3tyurjcQ-sHIIxMAj4TwqdYGjATNSyYyBmbP4EiV4GIHxz0TuME1lFwwwG_FtUZKo6i1BiUbhkLWs83l_exyeQvx4yPKb5gKLvLtgWZPdMeQ0zkvvt4kq0u4Wf51v7pZLjreDk3zG6IzpCj4rlasMeOk8Xv46EpZtg7wSATOCdCfpy5kPvQXLhCL1Y0XosJESYmGJ2X5ueq3UvtB5A_8AYbV1yprifhxIuwvT_HdOLojNhr7fbhDvyFuyGR1QFcq4DkThhc8ozbQ1nmXm3sICOoIulMLZlCz9fXZ2dl8BVwU8qN80IdcCtaxx3uWPUEhFRylenp7DN2HoU9qrSw6LiyqNtf6oJ_44YDp8lPNUGCOYlT0B9nO7GtSeakUmkfNiyV6TxV75eErmdclqiDJShimBC1x6ZDdylplLG6UaL85EM6iCIVdVExrl2uTLk0AMntsq925bWudtn6I7UswlmtbBCk71SMu0X0Mas3a0oxpWcKtwUx2WiRmvGIZxhgySym40uZc6QeQOTjxO3jGI6upKecfAzgVjtP1X6V0ghWLPeyNWxsDsl9jgq3VpvQ7K4JoaM04byedbpdTa66N9s0X2x_Cd5lfv22pyBobxOb6Diw3IHAX3rbPYXL8MXtwPX0bz9brTsr_Sfz7J_EdU5Xtjp0tJPgtMnlIfkUmn9C_SefT9na92vxpp5JOHIpIZI0n_16v5md3BCIbRc33q6-dxMJxfmZK28vNIyTwiR8EuPhe3pqnj1VJ3hP5BWnvSSX-xA_IG6mnocDeNlzY-JV4-3gkBmbrUYPMslq5mae9aW8ZDlSl00Fegmunllfxc55PeJvT9ue6Nofa-KXc4Tn_hzNKW1Z7KnbWHDs9Ie3fJiOc_9xEhdX6U-5X_DZ5tJPvQMJOAj3SZ4s6rXGC21MUMNbNPEfdvd-nyvkTaQK3cECq7Sjin1nu-ljrcRuh0EeopCFiy1JY5ZntJM-WuDfmYDuOHXzQjewzZ0ft21T3pUInJYsgiEIy7uXTMJ-EE9oz3JRs6g3nTpE3XFjA78-EHdhnKCgvLV7hQJ8m31yiF4Q0tqdB3KtVOT03aocTeZ36mBUvRfi6ivEXi6F2QR6Gk-Ggt59OgnExDKIizwJG0oixccYGIU3zYnwxYuSiV9KUldrCwEQQ7AhOhE2m4aLHp2RA8AkmwWgQBRM_yoLxRZZTxopsOEiHXjRgFaLpHNVTU2dSWu80EktX7R2RYq3usJs7dSif1mYv8cRXKhUte0711Jn-DaLW8CM">