From c74dd7c683c4c7c54c339e2b116a880e05bc9ecb Mon Sep 17 00:00:00 2001 From: Sebastian Ullrich Date: Wed, 20 Jan 2021 11:10:38 +0100 Subject: [PATCH] chore: Nix: stage0debug --- flake.nix | 1 + nix/bootstrap.nix | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 942f224450..861bdefa60 100644 --- a/flake.nix +++ b/flake.nix @@ -33,6 +33,7 @@ in { packages = lean-packages // rec { debug = lean-packages.override { debug = true; }; + stage0debug = lean-packages.override { stage0debug = true; }; sanitized = lean-packages.override { extraCMakeFlags = [ "-DLEAN_EXTRA_CXX_FLAGS=-fsanitize=address,undefined" "-DLEANC_EXTRA_FLAGS=-fsanitize=address,undefined" "-DSMALL_ALLOCATOR=OFF" ]; }; sandebug = sanitized.override { debug = true; }; tsan = lean-packages.override { diff --git a/nix/bootstrap.nix b/nix/bootstrap.nix index e3cfa01c84..165829e443 100644 --- a/nix/bootstrap.nix +++ b/nix/bootstrap.nix @@ -1,4 +1,4 @@ -{ debug ? false, extraCMakeFlags ? [], +{ debug ? false, stage0debug ? false, extraCMakeFlags ? [], stdenv, lib, cmake, gmp, gnumake, buildLeanPackage, writeShellScriptBin, runCommand, symlinkJoin, lndir, ... } @ args: rec { @@ -8,7 +8,6 @@ rec { buildInputs = [ gmp ]; # https://github.com/NixOS/nixpkgs/issues/60919 hardeningDisable = [ "all" ]; - cmakeFlags = [ "-DSTAGE=1" "-DPREV_STAGE=./faux-prev-stage" "-DUSE_GITHASH=OFF" ] ++ extraCMakeFlags ++ lib.optional (args.debug or debug) [ "-DCMAKE_BUILD_TYPE=Debug" ]; dontStrip = (args.debug or debug); postConfigure = '' @@ -16,6 +15,7 @@ rec { ''; } // args // { src = args.realSrc or (lib.sourceByRegex args.src [ "[a-z].*" "CMakeLists\.txt" ]); + cmakeFlags = (args.cmakeFlags or [ "-DSTAGE=1" "-DPREV_STAGE=./faux-prev-stage" "-DUSE_GITHASH=OFF" ]) ++ extraCMakeFlags ++ lib.optional (args.debug or debug) [ "-DCMAKE_BUILD_TYPE=Debug" ]; }); lean-bin-tools-unwrapped = buildCMake { name = "lean-bin-tools"; @@ -54,7 +54,7 @@ rec { stage0 = wrapStage (args.stage0 or (buildCMake { name = "lean-stage0"; src = ../stage0/src; - debug = false; + debug = stage0debug; cmakeFlags = [ "-DSTAGE=0" ]; preConfigure = '' ln -s ${../stage0/stdlib} ../stdlib