summaryrefslogtreecommitdiff
path: root/misc/tcmalloc-monster.nix
diff options
context:
space:
mode:
authorseth <[email protected]>2023-05-04 15:58:29 -0400
committerseth <[email protected]>2023-05-04 16:02:17 -0400
commit5d3773f5ce23f0a07f73761d177130d885232a11 (patch)
treee83d16479b129ba589492d0ec9de5b4cc0b1ecdf /misc/tcmalloc-monster.nix
parente29d4bd1b90e42dc73304766f5cb0a71522568b7 (diff)
misc: update tcmalloc-monster
the pr for llvm 16 has been merged into nixpkgs, so the flake reference was updated also starts building gperftools with a 32-bit version of llvm and adds versions of mesa also built against llvm 16
Diffstat (limited to 'misc/tcmalloc-monster.nix')
-rw-r--r--misc/tcmalloc-monster.nix25
1 files changed, 14 insertions, 11 deletions
diff --git a/misc/tcmalloc-monster.nix b/misc/tcmalloc-monster.nix
index 1d5f51c..52a03ef 100644
--- a/misc/tcmalloc-monster.nix
+++ b/misc/tcmalloc-monster.nix
@@ -1,16 +1,19 @@
-# this uses a cherry-picked version of nixpkgs with llvm 16
-# to build a 32-bit, statically linked version of tcmalloc
+# this uses llvm 16 to build a 32-bit version of tcmalloc,
+# with a 64 and 32-bit version of mesa
#
# i'm using it to test ways to solve crashes in tf2 on
# systems with mesa also compiled against llvm 16
let
- commit = "2c627d9c702202d75746fd45045d20008bf7ed86";
- nixpkgs = import (builtins.fetchTarball {
- url = "https://github.com/RaitoBezarius/nixpkgs/archive/${commit}.tar.gz";
- sha256 = "sha256:002sz5nqsr7nvwp6bdapwmb691snhrcwdlp4flbhwgqgfzzpyksc";
- }) {system = "x86_64-linux";};
+ nixpkgs = import (builtins.getFlake "github:nixos/nixpkgs") {system = "x86_64-linux";};
- inherit (nixpkgs.llvmPackages_16) stdenv;
- inherit (nixpkgs.pkgsi686Linux.pkgsStatic) gperftools;
-in
- gperftools.override {inherit stdenv;}
+ inherit (nixpkgs) llvmPackages_16 mesa pkgsi686Linux;
+ inherit (pkgsi686Linux) gperftools;
+
+ x64Stdenv = llvmPackages_16.stdenv;
+ i686Stdenv = pkgsi686Linux.llvmPackages_16.stdenv;
+ mesa-i686 = pkgsi686Linux.mesa;
+in {
+ mesa-llvm16 = mesa.override {stdenv = x64Stdenv;};
+ mesa-llvm16-32bit = mesa-i686.override {stdenv = i686Stdenv;};
+ gperftools-llvm16-32bit = gperftools.override {stdenv = i686Stdenv;};
+}