This fixes a long standing weird issue of doing non-docker builds of FDB
can hit problems of $CC not being defined in link-wrapper.sh. It turns
out that this is because the official docker image defines CC in the
environment, and no one else does that.
Instead, we can just force Make to propagate its setting of CC into the
environment, thus requiring no extra configuration to be able to do a
build.
This appears to have caused performance regressions, which will need to be investigated.
This reverts commit 0b0284ba21989a0b8377f0a4d1057e3e7cd5fae1.
This reverts commit 4bde728b0eb8d277c8f59bfaf24869da67c68c47.
...via moving it all to linux-only. Clang is picky about flags, and the osx
linker doesn't accept -z flags. Technically, this will likely break
clang-on-linux, but that's not a config that we run and I'll probably end up
fixing it later.
This makes us fully position independant and have a noexec stack. There's a
small chance that the former part of that can interfere with
gdb/corefiles/stackdumps, but we'll handle that if it becomes a problem.