blob: 26e6fc3d5cf165df4bd7296df1a265fc66852131 (
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
self: super: let
# this should come from config.programs.ccache.cacheDir but I can't figure out
# how to access that from a nixpkgs overlay, so just hardcode the default
ccacheDir = "/var/cache/ccache";
# https://github.com/NixOS/nixpkgs/pull/216363#issuecomment-1430356886
# deadnix: skip
fixwebkit = pkg:
self.useCcacheStdenv (pkg.overrideAttrs (attrs: rec {
preConfigure =
attrs.preConfigure
+ ''
# not sure which of these works so just do them both
export NUMBER_OF_PROCESSORS=$NIX_BUILD_CORES
ninjaFlagsArray+=("-l$NIX_BUILD_CORES")
'';
}));
in {
ccacheWrapper = super.ccacheWrapper.override {
extraConfig = ''
export CCACHE_COMPRESS=1
export CCACHE_DIR="${ccacheDir}"
export CCACHE_UMASK=007
if [ ! -d "$CCACHE_DIR" ]
then
echo "====="
echo "Directory '$CCACHE_DIR' does not exist"
echo "Please create it with:"
echo " sudo mkdir -m0770 '$CCACHE_DIR'"
echo " sudo chown root:nixbld '$CCACHE_DIR'"
echo "====="
exit 1
fi
if [ ! -w "$CCACHE_DIR" ]
then
echo "====="
echo "Directory '$CCACHE_DIR' is not accessible for user $(whoami)"
echo "Please verify its access permissions"
echo "====="
exit 1
fi
'';
};
useCcacheStdenv = pkg: pkg.override {stdenv = super.ccacheStdenv;};
cudann = self.useCcacheStdenv super.cudann;
llvm = self.useCcacheStdenv super.llvm;
magma = self.useCcacheStdenv super.magma;
nvcc = self.useCcacheStdenv super.nvcc;
onnx = self.useCcacheStdenv super.onnx;
onnxruntime = self.useCcacheStdenv super.onnxruntime;
# webkit = fixwebkit super.webkit;
# webkitgtk = fixwebkit super.webkitgtk;
# webkitgtk_4_1 = fixwebkit super.webkitgtk_4_1;
# webkitgtk_5_0 = fixwebkit super.webkitgtk_5_0;
# webkitgtk_6_0 = fixwebkit super.webkitgtk_6_0;
}
|