diff --git a/bsc/nanos6/default.nix b/bsc/nanos6/default.nix index 4c5e41c..66ee301 100644 --- a/bsc/nanos6/default.nix +++ b/bsc/nanos6/default.nix @@ -14,6 +14,7 @@ , enableJemalloc ? true , jemalloc ? null , cachelineBytes ? 64 +, enableGlibcxxDebug ? false }: assert enableJemalloc -> (jemalloc != null); @@ -44,7 +45,8 @@ stdenv.mkDerivation rec { ''; configureFlags = [] ++ - optional enableJemalloc "--with-jemalloc=${jemalloc}"; + optional enableJemalloc "--with-jemalloc=${jemalloc}" ++ + optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG"; # The "bindnow" flags are incompatible with ifunc resolution mechanism. We # disable all by default, which includes bindnow. diff --git a/overlay.nix b/overlay.nix index a2a440b..8e4b01a 100644 --- a/overlay.nix +++ b/overlay.nix @@ -82,7 +82,9 @@ let dontStrip = true; enableDebugging = true; }); - nanos6Jemalloc = bsc.nanos6.override { enableJemalloc = true; }; + nanos6GlibcxxDebug = bsc.nanos6Debug.override { + enableGlibcxxDebug = true; + }; jemalloc = self.jemalloc.overrideAttrs (old: {