diff options
author | Alyssa Ross <hi@alyssa.is> | 2022-01-03 23:55:00 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2022-02-19 11:03:39 +0000 |
commit | f4cf97a04cd5d0b86aa46baec9fb228a8f671c03 (patch) | |
tree | 28192415ff39a661d0001563bf81cc93fa25d16d /nixpkgs/pkgs/development/libraries/glibc | |
parent | f8422837c9bde058e8f2de37702e7e94b2226040 (diff) | |
parent | 18c84ea816348e2a098390101b92d1e39a9dbd45 (diff) | |
download | nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar.gz nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar.bz2 nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar.lz nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar.xz nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.tar.zst nixlib-f4cf97a04cd5d0b86aa46baec9fb228a8f671c03.zip |
Merge commit '18c84ea816348e2a098390101b92d1e39a9dbd45'
Conflicts: nixpkgs/nixos/modules/misc/documentation.nix nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix nixpkgs/pkgs/applications/window-managers/sway/default.nix nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix nixpkgs/pkgs/development/go-modules/generic/default.nix nixpkgs/pkgs/development/interpreters/ruby/default.nix nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix nixpkgs/pkgs/development/libraries/boehm-gc/7.6.6.nix nixpkgs/pkgs/development/python-modules/django-mailman3/default.nix nixpkgs/pkgs/servers/mail/mailman/web.nix nixpkgs/pkgs/top-level/aliases.nix nixpkgs/pkgs/top-level/all-packages.nix nixpkgs/pkgs/top-level/impure.nix
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/glibc')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz | bin | 59430 -> 65714 bytes | |||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glibc/common.nix | 19 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glibc/locales.nix | 6 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glibc/mtrace.nix | 38 |
4 files changed, 50 insertions, 13 deletions
diff --git a/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz b/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz index 4a287d5c9ca1..50f74b15822e 100644 --- a/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz +++ b/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz Binary files differdiff --git a/nixpkgs/pkgs/development/libraries/glibc/common.nix b/nixpkgs/pkgs/development/libraries/glibc/common.nix index a715ba752ec1..6fa46d6d6c10 100644 --- a/nixpkgs/pkgs/development/libraries/glibc/common.nix +++ b/nixpkgs/pkgs/development/libraries/glibc/common.nix @@ -37,12 +37,14 @@ , profilingLibraries ? false , withGd ? false , meta +, extraBuildInputs ? [] +, extraNativeBuildInputs ? [] , ... } @ args: let version = "2.33"; - patchSuffix = "-50"; + patchSuffix = "-59"; sha256 = "sha256-LiVWAA4QXb1X8Layoy/yzxc73k8Nhd/8z9i35RoGd/8="; in @@ -61,7 +63,7 @@ stdenv.mkDerivation ({ [ /* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping. $ git fetch --all -p && git checkout origin/release/2.33/master && git describe - glibc-2.33-50-gc6cadbf83a + glibc-2.33-59-gf9592d65f2 $ git show --minimal --reverse glibc-2.33.. | gzip -9n --rsyncable - > 2.33-master.patch.gz To compare the archive contents zdiff can be used. @@ -159,7 +161,7 @@ stdenv.mkDerivation ({ "--enable-bind-now" (lib.withFeatureAs withLinuxHeaders "headers" "${linuxHeaders}/include") (lib.enableFeature profilingLibraries "profile") - ] ++ lib.optionals (stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isi686 || stdenv.hostPlatform.isAarch64) [ + ] ++ lib.optionals (stdenv.hostPlatform.isx86 || stdenv.hostPlatform.isAarch64) [ # This feature is currently supported on # i386, x86_64 and x32 with binutils 2.29 or later, # and on aarch64 with binutils 2.30 or later. @@ -189,8 +191,8 @@ stdenv.mkDerivation ({ outputs = [ "out" "bin" "dev" "static" ]; depsBuildBuild = [ buildPackages.stdenv.cc ]; - nativeBuildInputs = [ bison python3Minimal ]; - buildInputs = [ linuxHeaders ] ++ lib.optionals withGd [ gd libpng ]; + nativeBuildInputs = [ bison python3Minimal ] ++ extraNativeBuildInputs; + buildInputs = [ linuxHeaders ] ++ lib.optionals withGd [ gd libpng ] ++ extraBuildInputs; # Needed to install share/zoneinfo/zone.tab. Set to impure /bin/sh to # prevent a retained dependency on the bootstrap tools in the stdenv-linux @@ -198,7 +200,7 @@ stdenv.mkDerivation ({ BASH_SHELL = "/bin/sh"; # Used by libgcc, elf-header, and others to determine ABI - passthru = { inherit version; }; + passthru = { inherit version; minorRelease = version; }; } // (removeAttrs args [ "withLinuxHeaders" "withGd" ]) // @@ -286,9 +288,4 @@ stdenv.mkDerivation ({ // lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) { preInstall = null; # clobber the native hook - - # To avoid a dependency on the build system 'bash'. - preFixup = '' - rm -f $bin/bin/{ldd,tzselect,catchsegv,xtrace} - ''; }) diff --git a/nixpkgs/pkgs/development/libraries/glibc/locales.nix b/nixpkgs/pkgs/development/libraries/glibc/locales.nix index 208eedd71934..bada8b3f31f7 100644 --- a/nixpkgs/pkgs/development/libraries/glibc/locales.nix +++ b/nixpkgs/pkgs/development/libraries/glibc/locales.nix @@ -6,7 +6,7 @@ https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED */ -{ lib, stdenv, buildPackages, callPackage, writeText +{ lib, stdenv, buildPackages, callPackage, writeText, glibc , allLocales ? true, locales ? [ "en_US.UTF-8/UTF-8" ] }: @@ -17,6 +17,8 @@ callPackage ./common.nix { inherit stdenv; } { outputs = [ "out" ]; + extraNativeBuildInputs = [ glibc ]; + # Awful hack: `localedef' doesn't allow the path to `locale-archive' # to be overriden, but you *can* specify a prefix, i.e. it will use # <prefix>/<path-to-glibc>/lib/locale/locale-archive. So we use @@ -24,7 +26,7 @@ callPackage ./common.nix { inherit stdenv; } { # $TMPDIR/nix/store/...-glibc-.../lib/locale/locale-archive. buildPhase = '' - mkdir -p $TMPDIR/"${buildPackages.stdenv.cc.libc.out}/lib/locale" + mkdir -p $TMPDIR/"${buildPackages.glibc.out}/lib/locale" echo 'C.UTF-8/UTF-8 \' >> ../glibc-2*/localedata/SUPPORTED diff --git a/nixpkgs/pkgs/development/libraries/glibc/mtrace.nix b/nixpkgs/pkgs/development/libraries/glibc/mtrace.nix new file mode 100644 index 000000000000..fed24aff2796 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/glibc/mtrace.nix @@ -0,0 +1,38 @@ +{ glibc, perl }: + +# Small wrapper which only exposes `mtrace(3)` from `glibc`. This can't be placed +# into `glibc` itself because it depends on Perl which would mean that the final +# `glibc` inside a stdenv bootstrap has a dependency `glibc -> perl -> bootstrap tools`, +# so this is now in its own package that isn't used for bootstrapping. +# +# `glibc` needs to be overridden here because it's still needed to `./configure` the source in order +# to have a build environment where we can call the needed make target. + +glibc.overrideAttrs ({ meta ? {}, ... }: { + pname = "glibc-mtrace"; + + buildPhase = '' + runHook preBuild + + mkdir malloc + make -C ../glibc-${glibc.minorRelease}/malloc objdir=`pwd` `pwd`/malloc/mtrace; + + runHook postBuild + ''; + + installPhase = '' + mkdir -p $out/bin + mv malloc/mtrace $out/bin/ + ''; + + # Perl interpreter used for `mtrace`. + buildInputs = [ perl ]; + + # Reset a few things declared by `pkgs.glibc`. + outputs = [ "out" ]; + separateDebugInfo = false; + + meta = meta // { + description = "Perl script used to interpret and provide human readable output of the trace log contained in the file mtracedata, whose contents were produced by mtrace(3)."; + }; +}) |