Skip to content

staging-next 2023-08-11#248496

Merged
vcunat merged 309 commits intomasterfrom
staging-next
Aug 20, 2023
Merged

staging-next 2023-08-11#248496
vcunat merged 309 commits intomasterfrom
staging-next

Conversation

@vcunat
Copy link
Member

@vcunat vcunat commented Aug 11, 2023

wegank and others added 30 commits August 1, 2023 19:16
darwin-stdenv: revert `NIX_CC_NO_RESPONSE_FILE` logic
Fix implicit declarations of `memset` and `open/closedir` resulting in
incorrect feature detection and conflicts with libc headers.
cc-wrapper: use a temporary file for reponse file
Signed-off-by: Henri Rosten <henri.rosten@unikie.com>
The highlight is loongarch64 support.

Changes: https://gmplib.org/gmp6.3
3.2 LTS ran out of mainstream support in 2021/12 and we should probably
stay on the latest LTS release, that receives mainstream support.
Not useful any longer and started failing to build with django 4.
A few failing tests, but disabling individual ones is not straight
forward.
Previously propagated by django_3, but not anymore by django_4.
Uses API functions deprecated in Django 3.0 and removed in 4.0.
One failing test with Django 4.2, that I reported upstream.

Also migrate tests to pytest, so I can disable the failing test easily.
by backporting patches, that have not yet made it into a new release.

Move django into buildInputs, because we require consumers to bring
their own django version anyway.

Migrate tests to pytest, because they work very well and are easier to
maintain.
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/call-for-help-build-failure-tensorflow/31945/1

@reckenrode
Copy link
Contributor

reckenrode commented Aug 20, 2023

I ran git bisect twice to be sure, but 6f2b3ba is what broke Swift. The problem is in in makeClangWrapper. It tries to modify the wrapper, which doesn’t work as expected because the exec statement is gone.

https://github.com/NixOS/nixpkgs/blob/0b6f3e17dda02c9cf1e8edc6e411ba37093f09e2/pkgs/development/compilers/swift/compiler/default.nix#L126_L138

I think I have a fix. It’s building right now. It accommodates 6f2b3ba without reverting it (since it’s needed by Darwin for clang 16).

The Swift compiler derivation modifies the clang wrapper to use
`exec -a "$0"` to allow it to use the same binary for both `clang` and
`clang++`. The sed script it uses to do this fails after the cc-wrapper
changes in 6f2b3ba were merged.

This is fixed by updating `makeClangWrapper` to work with the cc-wrapper
changes by having Bash invoke a simple script that uses `exec -a "$0"`
to set the required name for clang.

This fixes the staging-next build failures with Swift on Darwin and Linux.

#248496 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.severity: security Issues which raise a security issue, or PRs that fix one 6.topic: golang Go is a high-level general purpose programming language that is statically typed and compiled. 6.topic: kernel The Linux kernel 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: qt/kde Object-oriented framework for GUI creation 6.topic: ruby A dynamic, open source programming language with a focus on simplicity and productivity. 6.topic: stdenv Standard environment 8.has: changelog This PR adds or changes release notes 8.has: clean-up This PR removes packages or removes other cruft 8.has: documentation This PR adds or changes documentation 8.has: module (update) This PR changes an existing module in `nixos/` 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux and must target a staging branch.

Projects

None yet

Development

Successfully merging this pull request may close these issues.