NO_CMAKE_PACKAGE_REGISTRY causes problems with package managers

Open
#28 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
cmake
Domain
build-system

Research direction

Start with CMakeLists.txt lines 71-75 and read the surrounding vendor-package logic, then check how yaml-cpp is located during a workspace build. Determine whether the registry restriction is still required and define the requested opt-out behavior; done means the package can use an existing dependency without breaking the workspace-isolation case.

Written by the indexing model from the issue text.

Description

enhancement help wanted

The presence of NO_CMAKE_PACKAGE_REGISTRY flag in https://github.com/ros2/yaml_cpp_vendor/blob/master/CMakeLists.txt#L71-L75 results in yaml-cpp to be searched only in system locations.

The comment mentions avoid finding the library downloaded in WORKSPACE B when building workspace A which I'm not sure I fully understand, however forcing everyone to either install yaml-cpp in the system or to download and build it in place does not seem a universally valid approach.

There are plenty of situations where yaml-cpp would be already available and it should be used (for example if a package manager such as conan is being used), rather than introducing conflicting dependencies in the system.

What do you think?
Do we still need that flag? If yes, can we add a CMake variable to optionally disable it?

Dominant language
CMake
Stars
1
Forks
17
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ros2/yaml_cpp_vendor

All issues in ros2/yaml_cpp_vendor

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.