In the PR 309022 i want to update the DRBD out of tree kernel driver and at the same time i want to align the code to the Nix standard build environment.
A nix-build -A pkgs.linuxPackages.drbd
is successful, but returns a depmod warning. Can the missing System.map
file be ignored (the related test is successful) or how should that be fixed in a Nix environment?
buildPhase completed in 1 minutes 46 seconds
Running phase: installPhase
install flags: SHELL=/nix/store/dy2z01kpnxn7dn2kgfdxs4fm8xy9mb89-bash-5.2p26/bin/bash O=\$\(buildRoot\) CC=/nix/store/4kwk49k8rc8cg8c387kbbjcrl8i0y693-gcc-wrapper-13.2.0/bin/cc HOSTCC=/nix/store/4kwk49k8rc8cg8c387kbbjcrl8i0y693-gcc-wrapper-13.2.0/bin/cc HOSTLD=/nix/store/zfs2gv7x073znw6b250rgnbij300hva5-binutils-wrapper-2.41/bin/ld ARCH=x86_64 KDIR=/nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build KVER=6.6.30 INSTALL_MOD_PATH=/nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9 M=\$\(sourceRoot\) SPAAS=false INSTALL_MOD_PATH=/nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9 install
make -C drbd install
make[1]: Entering directory '/build/drbd-9.2.9/drbd'
make -C /build/drbd-9.2.9/drbd
Calling toplevel makefile of kernel source tree, which I believe is in
KDIR=/nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build
make -C /nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build "PRE_CFLAGS=" M=/build/drbd-9.2.9/drbd obj-m=dummy-for-compat.o dummy-for-compat-h.o
make -C /nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build "PRE_CFLAGS=" M=/build/drbd-9.2.9/drbd obj-m=dummy-for-prep.o dummy-for-patch.o
test -e build-current && \
make -C /nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build "PRE_CFLAGS=" M=/build/drbd-9.2.9/drbd/build-current modules
.======================================================================.
# KDIR=/nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build #
# KERNELVERSION=6.6.30 #
# KERNELRELEASE=6.6.30 #
# #
# /build/drbd-9.2.9/drbd/build-6.6.30/ #
# drbd.ko #
# drbd_transport_lb-tcp.ko #
# drbd_transport_rdma.ko #
# drbd_transport_tcp.ko #
'======================================================================'
test -d build-current # assert that thing exists
make -C /nix/store/fl4a500wnqhclswwwbsbrzlfhzdrlk6q-linux-6.6.30-dev/lib/modules/6.6.30/build \
M=/build/drbd-9.2.9/drbd/build-current \
modules_install
INSTALL /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd.ko
XZ /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd.ko.xz
INSTALL /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_tcp.ko
XZ /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_tcp.ko.xz
INSTALL /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_lb-tcp.ko
XZ /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_lb-tcp.ko.xz
INSTALL /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_rdma.ko
XZ /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30/updates/drbd_transport_rdma.ko.xz
DEPMOD /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib/modules/6.6.30
Warning: modules_install: missing 'System.map' file. Skipping depmod.
make[1]: Leaving directory '/build/drbd-9.2.9/drbd'
Running phase: fixupPhase
shrinking RPATHs of ELF executables and libraries in /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9
checking for references to /build/ in /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9...
patching script interpreter paths in /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9
stripping (with command strip and flags -S -p) in /nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9/lib
/nix/store/f2ppgkl0n6l8j4fp3f3is68c9b3r24sp-drbd-9.2.9