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

Rebuild windows according to current rules; unify outputs; use C++17 #69

Merged
merged 8 commits into from
Apr 25, 2023

Conversation

h-vetinari
Copy link
Member

@h-vetinari h-vetinari commented Apr 25, 2023

While trying to look at the reason for #68, I noticed that this feedstock used a... very bespoke way of building things. I don't know the reason for this historically, but given that there were still provisions in the feedstock for VS2008, I'm guessing some of these constraints may come from a different age.

I'm suggesting to build windows according to current conda-forge standards (shared-only, no static libs), avoid the duplicated symbols we're currently getting, gain all the cmake/pkgconfig metadata that's currently missing, and be done with it (hopefully?).

Also the split into gtest & gmock doesn't make much sense to me, given how tightly they're intertwined. The commit that introduced this separation said it was "guessing at windows". I'm hoping we can improve on that. I'm still keeping gmock as a wrapper for anyone that might rely on it, of course.

If I'm overlooking something, I'm happy to iterate! For example, if I was overzealous and we still need different debug / runtime builds, we can readd them back (but I'd propose as separate outputs...).

Otherwise, I've added myself to maintainers and also included #67, because I'm hitting that (and #68) in conda-forge/abseil-cpp-feedstock#58.

Closes #67
Closes #68

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe:

  • It looks like the 'gmock' output doesn't have any tests.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@h-vetinari h-vetinari changed the title Rebuild windows according to current rules; unify outputs Rebuild windows according to current rules; unify outputs; use C++17 Apr 25, 2023
@xhochy
Copy link
Member

xhochy commented Apr 25, 2023

Thanks for tackling this. Having the extra split made sense initially for me because I assumed that gmock and gtest would be much more independent (and have been so in the past).

The way the package is split is quite different to a lot of other ones as this was one of the first splitter recipes I have encountered and later on (personally) faced a lot of issues with the files: directive.

@xhochy xhochy merged commit d10a4b2 into conda-forge:main Apr 25, 2023
@h-vetinari h-vetinari deleted the win branch April 25, 2023 07:58
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

Successfully merging this pull request may close these issues.

BUG: symbols duplicated between gtest & gmock on windows
3 participants