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

Clam 2646 update recipes #63

Merged
merged 8 commits into from
Sep 2, 2024
Merged

Clam 2646 update recipes #63

merged 8 commits into from
Sep 2, 2024

Conversation

micahsnyder
Copy link
Contributor

@micahsnyder micahsnyder commented Aug 31, 2024

Also:

  • libcurl, Windows: disable libidn2 disable pkg-config

    Curl has an option to use libidn2 in version 8.9.0.

    Pkg-config may unexpectedly find it and use it.

    I encountered this on Windows because libidn2 was installed by
    Strawberry Perl, under C:\Strawberry. Pkg-config found that and tried to
    build it into Curl, which is problematic in part because we don't want
    to include or ship libidn2 with our software.

    But also problematic because libidn2 provided by Strawberry Perl used a
    different OpenSSL incompatible with the one we're compiling against.

    This commit explicitly disables pkg-config and libidn2 for libcurl
    builds.
    TODO: Perhaps disable pkg-config for all recipes and all platforms?
    Mussels builds should only draw from other mussels include/lib files.

    Note: This PR now replaces libcurl, Windows: disable libidn2 disable pkg-config #62

  • libcurl, Windows: copy DLL from bin to lib, instead of move

    Because of possible linking path issues

  • libnghttp2, macOS: fix compat issue with newer Xcode

    Xcode dropped support for 'buildsystem=1' option.
    This issue was discovered while developing GitHub Actions workflows to test changes to the recipes. It seems GitHub's macOS runner has newer XCode than our internal Mac build host.

    Disable building docs on unix systems and ensure only building library.
    The docs build is what was failing the Xcode "new build system" build.

  • Add GitHub Workflows to test changes

Curl has an option to use libidn2 in version 8.9.0.

Pkg-config may unexpectedly find it and use it.

I encountered this on Windows because libidn2 was installed by
Strawberry Perl, under C:\Strawberry. Pkg-config found that and tried to
build it into Curl, which is problematic in part because we don't want
to include or ship libidn2 with our software.

But also problematic because libidn2 provided by Strawberry Perl used a
different OpenSSL incompatible with the one we're compiling against.

This commit explicitly disables pkg-config and libidn2 for libcurl
builds.
TODO: Perhaps disable pkg-config for all recipes and all platforms?
Mussels builds should only draw from other mussels include/lib files.
nghttp2 -> 1.63.0

libxml2 -> 2.13.3
@micahsnyder micahsnyder force-pushed the CLAM-2646-update-recipes branch 8 times, most recently from 9a3cc37 to 9a9c493 Compare August 31, 2024 18:33
Because of possible linking path issues
@micahsnyder micahsnyder force-pushed the CLAM-2646-update-recipes branch 2 times, most recently from c452e72 to d77c83c Compare August 31, 2024 18:58
Xcode dropped support for 'buildsystem=1' option.

Disable building docs on unix systems and ensure only building library.
The docs build is what was failing the Xcode "new build system" build.
Automatic library detection finds brew-installed libs.
This is primarily to fix builds on GitHub Actions where
the system provides all sorts of stuff we didn't request.

On macOS, specifically, this causes failures because we build
universal binaries, and brew binaries are not universal and
lack symbols for othe other platform.
It seems like we're detecting system-provided headers.

If the system headers differ from our lib, we may end up with 'missing' symbols.

This is to fix a build issue on macOS in GitHub Actions.
@micahsnyder micahsnyder merged commit f756727 into master Sep 2, 2024
7 checks passed
@micahsnyder micahsnyder deleted the CLAM-2646-update-recipes branch September 2, 2024 20:35
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.

3 participants