Merge pull request #122492 from MetaDark/ccache

ccache: 4.2.1 → 4.3
This commit is contained in:
Maximilian Bosch 2021-05-18 19:24:42 +02:00 committed by GitHub
commit ed95b50a7b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 33 deletions

View file

@ -7,26 +7,25 @@
, cmake
, perl
, zstd
, bashInteractive
, xcodebuild
, makeWrapper
}:
let ccache = stdenv.mkDerivation rec {
pname = "ccache";
version = "4.2.1";
version = "4.3";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
hash = "sha256-AmgJpW7AGCSggbHp1fLO5yhXS9LIm7O77nQdDERJYAA=";
hash = "sha256-ZBxDTMUZiZJLIYbvACTFwvlss+IZiMjiL0khfM5hFCM=";
};
patches = [
# test/run use compgen to get environment variable names, but
# compgen isn't available in non-interactive bash.
./env-instead-of-compgen.patch
outputs = [ "out" "man" ];
patches = [
# When building for Darwin, test/run uses dwarfdump, whereas on
# Linux it uses objdump. We don't have dwarfdump packaged for
# Darwin, so this patch updates the test to also use objdump on
@ -38,18 +37,22 @@ let ccache = stdenv.mkDerivation rec {
];
nativeBuildInputs = [ asciidoc cmake perl ];
buildInputs = [ zstd ];
outputs = [ "out" "man" ];
doCheck = true;
checkInputs = lib.optional stdenv.isDarwin xcodebuild;
checkInputs = [
# test/run requires the compgen function which is available in
# bashInteractive, but not bash.
bashInteractive
] ++ lib.optional stdenv.isDarwin xcodebuild;
checkPhase = ''
runHook preCheck
export HOME=$(mktemp -d)
ctest --output-on-failure ${lib.optionalString stdenv.isDarwin ''
-E '^(test.nocpp2|test.basedir|test.multi_arch)$'
''}
runHook postCheck
'';
passthru = {

View file

@ -1,18 +0,0 @@
diff --git a/test/run b/test/run
index cbdd98f0..bc930200 100755
--- a/test/run
+++ b/test/run
@@ -346,11 +346,11 @@ expect_perm() {
}
reset_environment() {
- while IFS= read -r name; do
+ while IFS='=' read -r name value; do
if [[ $name =~ ^CCACHE_[A-Z0-9_]*$ ]]; then
unset $name
fi
- done < <(compgen -e)
+ done < <(env)
unset GCC_COLORS
unset TERM

View file

@ -12759,12 +12759,12 @@ in
inherit (stdenv) cc;
};
ccacheStdenv = lowPrio (makeOverridable ({ extraConfig, stdenv }:
overrideCC stdenv (buildPackages.ccacheWrapper.override {
inherit extraConfig;
ccacheStdenv = lowPrio (makeOverridable ({ stdenv, ... } @ extraArgs:
overrideCC stdenv (buildPackages.ccacheWrapper.override ({
inherit (stdenv) cc;
})) {
extraConfig = "";
} // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) {
extraConfig = extraArgs.extraConfig;
}))) {
inherit stdenv;
});