Commit graph

1 commit

Author SHA1 Message Date
Peter Simons 7534cbe4b8 Define "brokenRedHatKernel = true" in $NIXPKGS_CONFIG to build a system that
works on Red Hat Linux, i.e. that is based on glibc version 2.5.

Furthermore, this patch fixes a number of gcc 4.3.3 build errors in glibc 2.5
that occur on both x86 and x86_64. The older version of this library is still
useful for running Nix on a Red Hat host. Newer version of glibc fail to detect
the kernel's capabilities correctly (due to mad patches applied to the kernel
by Red Hat).

The individual changes are:

 * Re-activated glibc 2.5 in all-packages.nix.

 * Fix incomplete header search path in bootstrap tools.

   Gcc-wrapper sets "-B<prefix>" to tell the compiler about its installation
   root. Unfortunately, the setting doesn't add $gcc/lib/gcc/*/*/include-fixed
   to the search path. That directory is required, however, because it contains
   the system-specific "limits.h" file, and the glibc 2.5 builds tries to find
   that file via #include_next.

 * Support intrinsic functions like __signbit() or atof() correctly to avoid
   compile-time conflicts.

 * Switch to NPTL. Linuxthreads is no longer supported.

 * Added a meta attribute to glibc package.

 * Updated nixUnstable to version 0.13pre15614 from trunk. The previous version
   failed regression tests.

 * Fix more strict type checking in binutils since 2.18.50.0.3.

   Without this patch, the build failed on x86, saying:

     ../sysdeps/i386/fpu/ftestexcept.c: Assembler messages:
     ../sysdeps/i386/fpu/ftestexcept.c:33: Error: suffix or operands invalid for `fnstsw'

svn path=/nixpkgs/branches/stdenv-updates/; revision=16037
2009-06-24 20:10:51 +00:00