Skip to content

gcc: move .dll.a* outputs to $lib#83181

Merged
matthewbauer merged 1 commit intoNixOS:stagingfrom
matthewbauer:move-win-outputs
Apr 11, 2020
Merged

gcc: move .dll.a* outputs to $lib#83181
matthewbauer merged 1 commit intoNixOS:stagingfrom
matthewbauer:move-win-outputs

Conversation

@matthewbauer
Copy link
Member

These are expected to be here for Windows compilation. The change in
e1831eb didn’t move these
correctly (while still patching the search paths).

https://hydra.nixos.org/build/114202790

/cc @lopsided98

Motivation for this change
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

These are expected to be here for Windows compilation. The change in
e1831eb didn’t move these
correctly (while still patching the search paths).

https://hydra.nixos.org/build/114202790
@matthewbauer matthewbauer requested a review from lopsided98 March 23, 2020 04:47
@ofborg ofborg bot added 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux and must target a staging branch. 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-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. labels Mar 23, 2020
@lopsided98
Copy link
Contributor

I don't understand how this used to work. cc_solib used to point to $lib, while it now points to $lib/$targetConfig. The .dll.a files were never located in $lib, so I don't understand why changing cc_solib suddenly causes the toolchain to try to find them in $lib/$targetConfig.

Also, aren't .dll.a files static libraries, in which case they don't really belong in $lib?

@matthewbauer
Copy link
Member Author

I don't understand how this used to work. cc_solib used to point to $lib, while it now points to $lib/$targetConfig. The .dll.a files were never located in $lib, so I don't understand why changing cc_solib suddenly causes the toolchain to try to find them in $lib/$targetConfig.

Before we weren't moving $out/$targetConfig at all right? My assumption is that something referenced in there is getting patched to look for some .dll.a.

Also, aren't .dll.a files static libraries, in which case they don't really belong in $lib?

I think they might be just archives of multiple dll's. It looks like they are referenced in the .la files.

Copy link
Contributor

@lopsided98 lopsided98 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, I see, the .la files were patched to reference $lib. I don't know why I assumed the cc_solib change was the cause.

@lopsided98
Copy link
Contributor

This should go to staging, right?

@lovesegfault
Copy link
Member

Yeah, this should go to staging

@matthewbauer matthewbauer changed the base branch from master to staging April 9, 2020 17:24
@matthewbauer matthewbauer merged commit 53752d0 into NixOS:staging Apr 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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-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

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants