···2222 sha256 = "sha256-3Rb7HWe/q3mnL16DkHNcSePo5wtJRaFasfgd23hlj7M=";
2323 };
24242525- # to update apply these patches with `git am *.patch` to https://git.savannah.gnu.org/git/make.git
2626- patches = [
2727- # See patch message.
2828- ./make-cxx.patch
2929- # Replaces /bin/sh with sh, see patch file for reasoning
3030- ./0001-No-impure-bin-sh.patch
3131- # Purity: don't look for library dependencies (of the form `-lfoo') in /lib
3232- # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for
3333- # included Makefiles, don't look in /usr/include and friends.
3434- ./0002-remove-impure-dirs.patch
3535- ];
2525+ # To update patches:
2626+ # $ version=4.4.1
2727+ # $ git clone https://git.savannah.gnu.org/git/make.git
2828+ # $ cd make && git checkout -b nixpkgs $version
2929+ # $ git am --directory=../patches
3030+ # $ # make changes, resolve conflicts, etc.
3131+ # $ git format-patch --output-directory ../patches --diff-algorithm=histogram $version
3232+ #
3333+ # TODO: stdenv’s setup.sh should be aware of patch directories. It’s very
3434+ # convenient to keep them in a separate directory but we can defer listing the
3535+ # directory until derivation realization to avoid unnecessary Nix evaluations.
3636+ patches = lib.filesystem.listFilesRecursive ./patches;
36373738 nativeBuildInputs = [ autoreconfHook pkg-config ];
3839 buildInputs = lib.optionals guileEnabled [ guile ];