Skip to content

Pass along top-level UseSystemLibs option to runtime #41984

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

Merged
merged 1 commit into from
Jul 8, 2024

Conversation

omajid
Copy link
Member

@omajid omajid commented Jul 4, 2024

Some environments, at least some Linux distributions, want to use system versions of certain libraries rather than the source code copy shipped with the .NET runtime source repository. We can provide a top-level flag to support this scenario that can be used like this:

./build.sh -p:UseSystemLibs=brotli+libunwind+rapidjson+zlib

Which makes the VMR build the runtime repo such that it uses the system version of brotli, libunwind, rapidjson and zlib.

This is another attempt at dotnet/installer#19640

It depends on dotnet/runtime#104440 to work.

Some environments, at least some Linux distributions, want to use system
versions of certain libraries rather than the source code copy shipped
with the .NET runtime source repository. We can provide a top-level flag
to support this scenario that can be used like this:

    ./build.sh -p:UseSystemLibs=brotli+libunwind+rapidjson+zlib

Which makes the VMR build the runtime repo such that it uses the system
version of brotli, libunwind, rapidjson and zlib.

This is another attempt at
dotnet/installer#19640

It depends on dotnet/runtime#104440 to work.
@ViktorHofer
Copy link
Member

@jkotas @akoeplinger please take a look. Does such a generic switch make sense?

@jkotas
Copy link
Member

jkotas commented Jul 8, 2024

It looks fine to me.

@akoeplinger
Copy link
Member

akoeplinger commented Jul 8, 2024

LGTM though we could probably make it a top-level build.sh option like --with-system-libs brotli+libunwind+rapidjson+zlib

Does it also make sense to support the plain argument to default all libs to come from system so the distros don't need to chase adding new ones when we add new dependencies?

@akoeplinger akoeplinger merged commit ab2b233 into dotnet:main Jul 8, 2024
37 checks passed
akoeplinger pushed a commit to dotnet/runtime that referenced this pull request Jul 8, 2024
omajid added a commit to omajid/dotnet-sdk that referenced this pull request Jul 11, 2024
This lets users build the VMR with a top-level flag like this:

    $ /build.sh --source-only --with-system-libs brotli+libunwind+rapidjson+zlib

This was suggested during PR review at:
dotnet#41984 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Infrastructure untriaged Request triage from a team member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants