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

cc-wrapper: Clean up dynamic linking with x86 multilib #29568

Merged
merged 1 commit into from Oct 2, 2017

Conversation

Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented Sep 19, 2017

Motivation for this change

It's better layering to do everything in ld-wrapper.

I pulled this out of #29396 as its good to consider on its own. It was reviewed there by @orivej, however.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built statifier, some multilib-using Linux derivation. Tested that 32- and 64-bit binaries both ran.
  • Built stdenv on platform(s)
    • NixOS
    • macOS
    • Linux
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

CC @orivej

@mention-bot
Copy link

@Ericson2314, thanks for your PR! By analyzing the history of the files in this pull request, we identified @edolstra, @orivej and @abbradar to be potential reviewers.

-m)
case "$p" in
elf_i386) link32=1;;
*) link32=0;;
Copy link
Member Author

Choose a reason for hiding this comment

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

I assume only the last -m flag matters.

@Ericson2314 Ericson2314 force-pushed the cc-wrapper-32 branch 4 times, most recently from fd4ecec to 6e56d6e Compare September 20, 2017 15:43
@Ericson2314 Ericson2314 added the 6.topic: cross-compilation Building packages on a different sort platform than than they will be run on label Sep 20, 2017
@Ericson2314 Ericson2314 added this to Needed for binutils-wrapper in Cross compilation Sep 20, 2017
@Ericson2314 Ericson2314 force-pushed the cc-wrapper-32 branch 2 times, most recently from 4411f99 to 2eea93f Compare September 21, 2017 01:27
@Ericson2314 Ericson2314 force-pushed the cc-wrapper-32 branch 4 times, most recently from b3b79c6 to c8b5f99 Compare September 26, 2017 20:53
@Ericson2314 Ericson2314 force-pushed the cc-wrapper-32 branch 3 times, most recently from 46361c0 to 706e281 Compare September 28, 2017 23:51
@Ericson2314
Copy link
Member Author

Ok, this one is ready for review next!

@@ -71,8 +71,18 @@ declare -a libDirs
declare -A libs
relocatable=
Copy link
Contributor

Choose a reason for hiding this comment

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

It seems that link32 may be left undefined. I'd suggest declaring it here and moving these declarations under the following comment.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'm surprised I didn't hit that with set -u.

It's better layering to do everything in ld-wrapper. Also, use numeric
comparisons for `relocatable`.
@Ericson2314
Copy link
Member Author

Ericson2314 commented Sep 29, 2017

Doing rebuilds overnight. Hope you all like it tomorrow! edit suceeded.

@Ericson2314 Ericson2314 requested review from orivej and removed request for peti October 2, 2017 15:39
@edolstra edolstra merged commit 3c3d871 into NixOS:staging Oct 2, 2017
@Ericson2314 Ericson2314 deleted the cc-wrapper-32 branch October 2, 2017 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.severity: mass-rebuild 6.topic: cross-compilation Building packages on a different sort platform than than they will be run on
Projects
No open projects
Cross compilation
Needed for binutils-wrapper
Development

Successfully merging this pull request may close these issues.

None yet

6 participants