@@ -1,4 +1,4 @@
1−{ lib, stdenv, fetchFromGitHub, pkg-config, zlib, cmake, jemalloc }:
1+{ lib, stdenv, fetchFromGitHub, pkg-config, zlib, cmake, enableJemalloc ? !stdenv.hostPlatform.isMusl, jemalloc }:
22
33stdenv.mkDerivation rec {
44 pname = "lwan";
@@ -13,7 +13,12 @@ stdenv.mkDerivation rec {
1313
1414 nativeBuildInputs = [ cmake pkg-config ];
1515
16− buildInputs = [ jemalloc zlib ];
16+ buildInputs = [ zlib ] ++ lib.optional enableJemalloc jemalloc;
17+
18+ # Note: tcmalloc and mimalloc are also supported (and normal malloc)
19+ cmakeFlags = lib.optional enableJemalloc "-DUSE_ALTERNATIVE_MALLOC=jemalloc";
20+
21+ hardeningDisable = lib.optional stdenv.hostPlatform.isMusl "pie";
1722
1823 meta = with lib; {
1924 description = "Lightweight high-performance multi-threaded web server";