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

clang_6: fix sanitizers under libstdc++ #41065

Merged
merged 1 commit into from May 29, 2018
Merged

Conversation

Ralith
Copy link
Contributor

@Ralith Ralith commented May 24, 2018

Motivation for this change

Fix headers and runtime libs being lost due to #39743. Sanitizer test is now passing under both clang stdenvs.

cc @Ericson2314

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@Ericson2314
Copy link
Member

Great job! I'm going to investigate whether all this stuff is a mass rebuild on master where llvm 5 is still used.

@Ralith
Copy link
Contributor Author

Ralith commented May 29, 2018

Is this blocked? As of #41081 I'm pretty sure the sanitizers have been outright broken for clang/libstdc++ (the more common configuration) on master, which is a step backwards from the initial state of affairs.

@Ericson2314
Copy link
Member

Nah sorry just away from computer over weekend. Rebasing and merging now.

@Ericson2314 Ericson2314 force-pushed the sanitizer-fix branch 2 times, most recently from 24ca124 to b0d0b1a Compare May 29, 2018 16:56
@Ericson2314 Ericson2314 changed the base branch from staging to master May 29, 2018 16:56
@Ericson2314
Copy link
Member

Oh staging was (finally!) merged, so no rebase even needed

@Ericson2314 Ericson2314 merged commit f303ee2 into NixOS:master May 29, 2018
@Ralith Ralith deleted the sanitizer-fix branch May 29, 2018 17:42
@LnL7
Copy link
Member

LnL7 commented May 29, 2018

This broke the cc-wrapper test

checking whether compiler uses NIX_CFLAGS_COMPILE... ok
checking whether compiler uses NIX_LDFLAGS... ok
In file included from <built-in>:340:
<command line>:1:9: warning: '_FORTIFY_SOURCE' macro redefined [-Wmacro-redefined]
#define _FORTIFY_SOURCE 2
        ^
<built-in>:328:9: note: previous definition is here
#define _FORTIFY_SOURCE 0
        ^
/nix/store/3c3vrabg4yy87y4qx8zsy5x2vdg132j5-sanitizers.c:1:10: fatal error: 'sanitizer/asan_interface.h' file not found
#include <sanitizer/asan_interface.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning and 1 error generated.
builder for '/nix/store/g5m71w28lj8sri93ad7pd8zyia161azm-cc-wrapper-test.drv' failed with exit code 1

@Ericson2314
Copy link
Member

Guess we will need some conditions. @Ralith know what's up?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants