robotology / ycm-cmake-modules

YCM (YCM CMake modules) is a collection of various useful CMake modules.
http://robotology.github.io/ycm-cmake-modules
Other
52 stars 23 forks source link

XCode 12 and CMake 3.19 support #368

Open traversaro opened 3 years ago

traversaro commented 3 years ago

Even by fixing the clear copy&paste problems https://github.com/robotology/ycm/pull/367 and https://github.com/robotology/ycm/pull/364, the combination of XCode 12 and CMake 3.19 is not working with the following error:

CMake Error in CMakeLists.txt:
  The custom command generating

    /Users/runner/work/robotology-superbuild/robotology-superbuild/build/robotology/YCM/CMakeFiles/YCMStamp/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/YCM-mkdir

  is attached to multiple targets:

    YCM-update
    YCM

  but none of these is a common dependency of the other(s).  This is not
  allowed by the Xcode "new build system".

It turns out that there have been several changes in CMake 3.19 to ExternalProject , that also involved the creation of a policy:

This changes means that, as YCM ships a vendored ExternalProject, basically any project that uses both YCM and ExternalProject can't support Xcode 12 and CMake 3.19 without more complex changes (dropping the vendored ExternalProject, as suggested in https://github.com/robotology/ycm/issues/50#issuecomment-659540091 ?). In any case, for sure for 2020.11 distro we will simply not support Xcode 12.

nunoguedelha commented 2 years ago

Ciao @traversaro , any news on an eventual future support of Xcode?

traversaro commented 2 years ago

Unfortunatly not, I guess no one worked on https://github.com/robotology/ycm/issues/50 that should also fix this.