gcc: fix libgccjit cross#217874
Closed
Conversation
Author
|
@ofborg build pkgsCross.aarch64-multiplatform.libgccjit |
Author
|
Hrm, apparently this only works for gcc>=11, so it will have to wait for #209870 |
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: |
|
@amjoseph-nixpkgs #209870 has been merged, any chance you could pick this back up? |
Author
|
@ofborg build pkgsCross.aarch64-multiplatform.libgccjit |
Author
|
The patch needs to go upstream first, and there's some minor cleanup to do. @ofborg build pkgsCross.aarch64-multiplatform.libgccjit |
added 3 commits
July 1, 2023 13:22
Before this commit, `pkgsCross.*.libgccjit` would fail to build. Apparently `--enable-lang=jit` requires `--enable-plugin`, but the configury is unaware of this requirement. The failure mode is difficult to diagnose; the build fails with a compile error due to `<dlfcn.h>` not being included. This commit adds `enablePlugin=true` and an `assert` to check for the unsupported combination and provide feedback at eval time.
Before this commit, `pkgsCross.*.libgccjit` would fail because
libcCross and threadsCross were not being passed to libgccjit in
all-packages.nix. These are boilerplate parameters that are
repeated several times in all-packages.nix, so at some point we
should probably make them default arguments of
gcc/${version}/default.nix.
This commit fixes the problem by passing the missing parameters.
This patch needs to go upstream. Also the logic around autoreconfHook needs to be cleaned up; we should try to autoreconfHook whenever possible (basically everywhere except xgcc) but I need to work out exactly how to do that.
Author
|
Fixed merge conflict. |
This pull request was closed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of changes
Before this commit,
pkgsCross.*.libgccjitwould fail to build for two reasons:Apparently
--enable-lang=jitrequires--enable-plugin, but the configury is unaware of this requirement. The failure mode is difficult to diagnose; the build fails with a compile error due to<dlfcn.h>not being included.libcCross and threadsCross were not being passed to libgccjit in all-packages.nix. These are boilerplate parameters that are repeated several times in all-packages.nix, so at some point we should probably make them default arguments of gcc/${version}/default.nix.
This commit fixes the two problems above, respectively, by:
Adding an
assertto check for the unsupported combination and provide feedback at eval time.Passing the missing parameters.
Things done
pkgsCross.aarch64.libgccjiton x86_64-linux)