CMake fails to configure when "-S ." source method is used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ok, this is a weird one. Apparently platform detection either fails or isn' "remembered" when "-S ." is used to specify the source directory but if "." is added to the end of the cmake command line it configures fine. 

Shouldn't these work exactly the same?

When "-S ." is used (as it's set in %cmake) the configure fails in two ways:

1. GNUInstallDirs complains it can't set CMAKE_INSTALL_LIBDIR

CMake Warning (dev) at /usr/share/cmake/Modules/GNUInstallDirs.cmake:239 (message):
  Unable to determine default CMAKE_INSTALL_LIBDIR directory because no
  target architecture is known.  Please enable at least one language before
  including GNUInstallDirs.


2. Some libraries are not found, I think for the same reason. Using --debug-find I see that no incarnation of "lib64" is checked:

  find_library considered the following locations:

    /builddir/.local/bin/lib/(lib)mbedtls(\.so|\.a)
    /builddir/.local/bin/(lib)mbedtls(\.so|\.a)
    /builddir/bin/lib/(lib)mbedtls(\.so|\.a)
    /builddir/bin/(lib)mbedtls(\.so|\.a)
    /usr/bin/lib/(lib)mbedtls(\.so|\.a)
    /usr/bin/(lib)mbedtls(\.so|\.a)
    /bin/lib/(lib)mbedtls(\.so|\.a)
    /bin/(lib)mbedtls(\.so|\.a)
    /usr/sbin/lib/(lib)mbedtls(\.so|\.a)
    /usr/sbin/(lib)mbedtls(\.so|\.a)
    /sbin/lib/(lib)mbedtls(\.so|\.a)
    /sbin/(lib)mbedtls(\.so|\.a)
    /usr/local/sbin/lib/(lib)mbedtls(\.so|\.a)
    /usr/local/sbin/(lib)mbedtls(\.so|\.a)
    /usr/local/lib/lib/(lib)mbedtls(\.so|\.a)
    /usr/local/lib/(lib)mbedtls(\.so|\.a)
    /usr/local/lib/(lib)mbedtls(\.so|\.a)
    /usr/local/(lib)mbedtls(\.so|\.a)
    /usr/lib/lib/(lib)mbedtls(\.so|\.a)
    /usr/lib/(lib)mbedtls(\.so|\.a)
    /usr/lib/(lib)mbedtls(\.so|\.a)
    /usr/(lib)mbedtls(\.so|\.a)
    /lib/lib/(lib)mbedtls(\.so|\.a)
    /lib/(lib)mbedtls(\.so|\.a)
    /usr/X11R6/lib/lib/(lib)mbedtls(\.so|\.a)
    /usr/X11R6/lib/(lib)mbedtls(\.so|\.a)
    /usr/X11R6/lib/(lib)mbedtls(\.so|\.a)
    /usr/X11R6/(lib)mbedtls(\.so|\.a)
    /usr/pkg/lib/lib/(lib)mbedtls(\.so|\.a)
    /usr/pkg/lib/(lib)mbedtls(\.so|\.a)
    /usr/pkg/lib/(lib)mbedtls(\.so|\.a)
    /usr/pkg/(lib)mbedtls(\.so|\.a)
    /opt/lib/lib/(lib)mbedtls(\.so|\.a)
    /opt/lib/(lib)mbedtls(\.so|\.a)
    /opt/lib/(lib)mbedtls(\.so|\.a)
    /opt/(lib)mbedtls(\.so|\.a)
    /usr/lib/X11/lib/(lib)mbedtls(\.so|\.a)
    /usr/lib/X11/(lib)mbedtls(\.so|\.a)


Looking at the source of GNUInstallDirs the only reason to see that message is:

  if (NOT DEFINED CMAKE_SYSTEM_NAME OR NOT DEFINED CMAKE_SIZEOF_VOID_P)
    message(AUTHOR_WARNING
      "Unable to determine default CMAKE_INSTALL_LIBDIR directory because no target architecture is known. "
      "Please enable at least one language before including GNUInstallDirs.")
  endif()


So why the heck would using "-S ." make any difference?
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux