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

Fix regression(s) introduced by YCMEPHelper refactor #458

Closed traversaro closed 3 months ago

traversaro commented 3 months ago

Each commit fix a different problem.

Error on old CMake version

CMake Error at build/_deps/ycm-src/modules/YCMEPHelper.cmake:1189 (_ep_get_tls_version):
  Unknown CMake command "_ep_get_tls_version".
Call Stack (most recent call first):
  cmake/BuildYCM.cmake:8 (ycm_ep_helper)
  build/_deps/ycm-src/modules/FindOrBuildPackage.cmake:205 (include)
  cmake/BuildYARP.cmake:8 (find_or_build_package)
  build/_deps/ycm-src/modules/FindOrBuildPackage.cmake:205 (include)
  cmake/RobotologySuperbuildLogic.cmake:68 (find_or_build_package)
  CMakeLists.txt:68 (include)

Fixed by https://github.com/robotology/ycm-cmake-modules/commit/9c3a16bc13b70f8719d8962f9634caea211f804e .

Error on --no-checkout passed to fetch

FAILED: src/walking-controllers/CMakeFiles/YCMStamp/walking-controllers-download /home/giovannif/robotology-superbuild/build/src/walking-controllers/CMakeFiles/YCMStamp/walking-controllers-download 
cd /home/giovannif/robotology-superbuild/src && /home/giovannif/mambaforge/envs/robsub/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /home/giovannif/robotology-superbuild/build/src/walking-controllers/CMakeFiles/YCMTmp/walking-controllers-gitsafeclone.cmake && /home/giovannif/mambaforge/envs/robsub/bin/cmake -E touch /home/giovannif/robotology-superbuild/build/src/walking-controllers/CMakeFiles/YCMStamp/walking-controllers-download
CMake Warning at /home/giovannif/robotology-superbuild/build/src/walking-controllers/CMakeFiles/YCMTmp/walking-controllers-gitsafeclone.cmake:56 (message):
  Repository URL is different.  Renaming 'origin' remote to
  'origin.20240814113552'

error: unknown option `no-checkout'
usage: git fetch [<options>] [<repository> [<refspec>...]]
   or: git fetch [<options>] <group>
   or: git fetch --multiple [<options>] [(<repository> | <group>)...]
   or: git fetch --all [<options>]

    -v, --verbose         be more verbose
    -q, --quiet           be more quiet
    --all                 fetch from all remotes
    --set-upstream        set upstream for git pull/fetch
    -a, --append          append to

Fixed by https://github.com/robotology/ycm-cmake-modules/commit/d399c22e697eabeca07d0b73069f2cca33f46aa3 .

Impossible to copy gitsafeclone-lastrun.txt

[7/480] Performing download step for 'OsqpEigen'
FAILED: src/OsqpEigen/CMakeFiles/YCMStamp/OsqpEigen-download /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/OsqpEigen/CMakeFiles/YCMStamp/OsqpEigen-download 
cd /home/runner/work/robotology-superbuild/robotology-superbuild/src && /home/runner/miniconda3/envs/test/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/OsqpEigen/CMakeFiles/YCMTmp/OsqpEigen-gitsafeclone.cmake && /home/runner/miniconda3/envs/test/bin/cmake -E touch /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/OsqpEigen/CMakeFiles/YCMStamp/OsqpEigen-download
Cloning into 'OsqpEigen'...
Already on 'master'
Your branch is up to date with 'origin/master'.
Error copying file "/OsqpEigen-gitinfo.txt" to "/OsqpEigen-gitsafeclone-lastrun.txt".
CMake Error at /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/OsqpEigen/CMakeFiles/YCMTmp/OsqpEigen-gitsafeclone.cmake:150 (message):
  Failed to copy script-last-run stamp file:
  '/OsqpEigen-gitsafeclone-lastrun.txt'

[8/480] Performing download step for 'RobotTestingFramework'
FAILED: src/RobotTestingFramework/CMakeFiles/YCMStamp/RobotTestingFramework-download /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/RobotTestingFramework/CMakeFiles/YCMStamp/RobotTestingFramework-download 
cd /home/runner/work/robotology-superbuild/robotology-superbuild/src && /home/runner/miniconda3/envs/test/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/RobotTestingFramework/CMakeFiles/YCMTmp/RobotTestingFramework-gitsafeclone.cmake && /home/runner/miniconda3/envs/test/bin/cmake -E touch /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/RobotTestingFramework/CMakeFiles/YCMStamp/RobotTestingFramework-download
Cloning into 'RobotTestingFramework'...
Already on 'master'
Your branch is up to date with 'origin/master'.
Error copying file "/RobotTestingFramework-gitinfo.txt" to "/RobotTestingFramework-gitsafeclone-lastrun.txt".
CMake Error at /home/runner/work/robotology-superbuild/robotology-superbuild/b/src/RobotTestingFramework/CMakeFiles/YCMTmp/RobotTestingFramework-gitsafeclone.cmake:150 (message):
  Failed to copy script-last-run stamp file:
  '/RobotTestingFramework-gitsafeclone-lastrun.txt'

Fixed by https://github.com/robotology/ycm-cmake-modules/commit/6af4a3741c97b3d4c10ca79053738d644389bb9e .

"Failed to update submodules in:" when using CMake 3.16

Fixed by https://github.com/robotology/ycm-cmake-modules/pull/458/commits/df64cecf50aac0db08e3a2062687b9fc05284fa7 . As we are trying to get rid of the vendored ExternalProject, as this problem is just with CMake 3.16, we stick to use the venored ExternalProject in CMake < 3.22, with the idea that eventually we will drop CMake 3.16 support (see https://github.com/robotology/robotology-superbuild/issues/1439).