Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use pkg-config to find yaml-cpp #15356

Closed
mwoehlke-kitware opened this issue Jul 9, 2021 · 5 comments
Closed

Use pkg-config to find yaml-cpp #15356

mwoehlke-kitware opened this issue Jul 9, 2021 · 5 comments
Assignees
Labels
component: distribution Nightly binaries, monthly releases, docker, installation unused team: kitware

Comments

@mwoehlke-kitware
Copy link
Contributor

Several externals are found using pkg-config. Unfortunately, yaml-cpp is not among them; the location is hard-coded.

This makes it impossible to use a yaml-cpp from any source other than apt, which is needed for #1183.

@jwnimmer-tri
Copy link
Collaborator

Use pkg-config to find yaml-cpp

Issue #13335 and #13309 contain some related background information. As of last year, pkg-config for yaml-cpp was broken on Focal. I haven't checked whether or not it's still broken.

This makes it impossible to use a yaml-cpp from any source other than apt, which is needed for #1183.

My current premise for #1183 is that we will use a different WORKSPACE file when compiling for pip / manylinux. Jamie and I thought it would be implausible to incrementally tweak our current WORKSPACE to the point where it was satisfactory. The new WORKSPACE would certainly opt back in to the repository rules for many of the existing externals, but would definitely need to replace some of them outright, at least for now.

Perhaps in the longer term, we could work to fold them back into a single, more general WORKSPACE that met both needs, but using for a forked WORKSPACE seemed like the smartest path to reach the manylinux goal effectively.

@jwnimmer-tri jwnimmer-tri added component: distribution Nightly binaries, monthly releases, docker, installation unused team: kitware labels Jul 10, 2021
@mwoehlke-kitware
Copy link
Contributor Author

My current premise for #1183 is that we will use a different WORKSPACE file

@jwnimmer-tri, how does one do that?

@jwnimmer-tri
Copy link
Collaborator

For starters, the I'll bet the boring thing would work: have a workspace-pip.bzl committed somewhere within Drake (probably at the root?), and then when running in pip-building mode we do cp workspace-pip.bzl WORKSPACE before we begin.

@mwoehlke-kitware
Copy link
Contributor Author

Okay, given that the current approach (n.b. #15636) seems to be hammering a different hard-coded location, is this still relevant?

@jwnimmer-tri
Copy link
Collaborator

Yes, in any case I think a pip-specific customization will end up as the answer here. I'm OK if you want to close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: distribution Nightly binaries, monthly releases, docker, installation unused team: kitware
Projects
None yet
Development

No branches or pull requests

2 participants