blob: 8a5a84bd2c678b21eebf1cd2fa7a72e916c679ff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
{ stdenv, fetchurl, kernelHeaders
, installLocales ? true
, profilingLibraries ? false
}:
stdenv.mkDerivation {
name = "glibc-2.7";
builder = ./builder.sh;
src = fetchurl {
url = mirror://gnu/glibc/glibc-2.7.tar.bz2;
sha256 = "06j5q20l11x8kcrl9bg15xgb1pw0w82pazikxf4zvq2fmhiaa922";
};
patches = [ ./glibc-pwd.patch ./glibc-getcwd-param-MAX.patch ];
inherit kernelHeaders installLocales;
inherit (stdenv) is64bit;
# `--with-tls --without-__thread' enables support for TLS but causes
# it not to be used. Required if we don't want to barf on 2.4
# kernels. Or something.
configureFlags="--enable-add-ons
--with-headers=${kernelHeaders}/include
${if profilingLibraries then "--enable-profile" else "--disable-profile"}";
# Workaround for this bug:
# http://sourceware.org/bugzilla/show_bug.cgi?id=411
# I.e. when gcc is compiled with --with-arch=i686, then the
# preprocessor symbol `__i686' will be defined to `1'. This causes
# the symbol __i686.get_pc_thunk.dx to be mangled.
NIX_CFLAGS_COMPILE = "-U__i686";
}
|