perl: Disable tests

It appears that these got re-enabled accidentally in
d1ed0f44cd154926e761cedee1cee72e55345807.

http://hydra.nixos.org/build/13369824
binutils: Enable sysroot support
Fix setting an empty password
gcc: Revive the no-sys-dirs patch

For now, we don't NATIVE_SYSTEM_HEADER_DIR because it breaks the
build. However, it points to Glibc in the Nix store (not /usr/include)
so it's kind of okay.
Revert "binutils: Enable sysroot support"

This reverts commit 773595540bd3a52476a7c84799e374d086d1c648. It
breaks stuff and we don't need it anymore.

http://hydra.nixos.org/build/13517591
Refactor pkgs/stdenv/linux/default.nix

The resulting code is 20% shorter and easier to read, since
we make the staging logic a bit more explicit.  Also, through
the stages we look back to the previous stage definition only.

The refactoring doesn't change the semantics at all, the same
output/derivation hashes are generated on both i686-linux and
x86_64-linux.
Merge 3 runtime zlibs to 1

There were 3 zlibs lying around in case of linux:
  - 1 used by gcc (for JAR handling in the Java frontend),
  - 1 used by stdenv other tools (e.g. binutils),
  - 1 for the rest of the system.

This was because of some knot-tying issues in the stage/round logic in
the linux specific pure stdenv builder.