From 5cf4b1dcbcb2c87eaca7e3bf4e5b2c101f497dfc Mon Sep 17 00:00:00 2001 From: Audrey Dutcher Date: Thu, 12 Jun 2025 10:43:21 -0700 Subject: [PATCH] freebsd.sys: enable dtrace and ctf --- .../bsd/freebsd/pkgs/ctfconvert.nix | 2 ++ .../os-specific/bsd/freebsd/pkgs/libdwarf.nix | 3 ++- .../bsd/freebsd/pkgs/sys/package.nix | 23 ++++++++----------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix index 9e653bb4f51e..d1a0cb695a41 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix @@ -3,6 +3,7 @@ mkDerivation, compatIfNeeded, libdwarf, + libelf, zlib, libspl, }: @@ -29,6 +30,7 @@ mkDerivation { libdwarf zlib libspl + libelf ]; meta.license = lib.licenses.cddl; diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix index ee4d57b021b1..34f228dcde31 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix @@ -3,6 +3,7 @@ m4, compatIfNeeded, zlib, + libelf, }: mkDerivation { @@ -15,6 +16,6 @@ mkDerivation { "sys/sys/elf_common.h" ]; extraNativeBuildInputs = [ m4 ]; - buildInputs = compatIfNeeded ++ [ zlib ]; + buildInputs = compatIfNeeded ++ [ zlib libelf ]; MK_TESTS = "no"; } diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix index dfce0b0bddc9..3c0882e33518 100644 --- a/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix +++ b/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix @@ -24,6 +24,8 @@ bintrans, xargs-j, kldxref, + ctfconvert, + ctfmerge, }: let baseConfigFile = @@ -53,26 +55,19 @@ let for f in sys/conf/*.mk; do substituteInPlace "$f" --replace-quiet 'KERN_DEBUGDIR}''${' 'KERN_DEBUGDIR_' done - - sed -i sys/${hostArchBsd}/conf/${baseConfig} \ - -e 's/WITH_CTF=1/WITH_CTF=0/' \ - -e '/KDTRACE/d' - '' - + lib.optionalString (baseConfigFile != null) '' - cat ${baseConfigFile} >>sys/${hostArchBsd}/conf/${baseConfig} - ''; + '' + + lib.optionalString (baseConfigFile != null) '' + cat ${baseConfigFile} >>sys/${hostArchBsd}/conf/${baseConfig} + ''; }; # Kernel modules need this for kern.opts.mk - env = { - MK_CTF = "no"; - } - // (lib.flip lib.mapAttrs' extraFlags ( + env = lib.flip lib.mapAttrs' extraFlags ( name: value: { name = "MK_${lib.toUpper name}"; value = lib.boolToYesNo value; } - )); + ); in mkDerivation rec { pname = "sys"; @@ -96,6 +91,8 @@ mkDerivation rec { bintrans xargs-j kldxref + ctfconvert + ctfmerge ]; # --dynamic-linker /red/herring is used when building the kernel.