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

Alternative to clobbering CMake metadata for libabseil-tests? #62

Open
h-vetinari opened this issue May 13, 2023 · 0 comments
Open

Alternative to clobbering CMake metadata for libabseil-tests? #62

h-vetinari opened this issue May 13, 2023 · 0 comments

Comments

@h-vetinari
Copy link
Member

h-vetinari commented May 13, 2023

So, I'm not a fan of clobbering at all, but I don't see what alternatives to the approach in #61 would be any better:

  1. make libabseil-tests an independent output, not based on libabseil
    • would mean either being unable to co-install (hard blocker for using libabseil-tests where another dependency in the environment already run-depends on libabseil) or clobbering all artefacts when both end up being co-installed (way more risky IMO than clobbering just the metadata)
  2. package the tests in libabseil proper
    • would mean we bring a lot of unnecessary stuff along everywhere, and also bump to MacOS 10.13 minimum
  3. make libabseil contain the CMake metadata (and only that) for the test targets
    • errors would be confusing if your build depends on a test-target (like protobuf), but you only have libabseil installed, because the CMake metadata would be wrong, so we'd get some variation of linker errors or files not found.
    • might be an elegant solution, but this would need some very convoluted build scripts. It would be a big pain IMO to dynamically come up with the right list of files we'd need to delete for libabseil, after initially building everything with tests enabled.

I think the clobbering introduced in #61 is be the least bad trade-off, especially as it's only going to happen for a really niche build dependency (no-one should ever be run-depending on the test targets).

I ended up merging that PR to make forward progress on protobuf, but happy to implement any decision we come to here.

CC @xhochy @isuruf @hmaarrfk

Originally posted by @h-vetinari in #61 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant