diff --git a/pkgs/by-name/li/libbladeRF/gcc-14-calloc-fixes.diff b/pkgs/by-name/li/libbladeRF/gcc-14-calloc-fixes.diff new file mode 100644 index 000000000000..ae11b26073b6 --- /dev/null +++ b/pkgs/by-name/li/libbladeRF/gcc-14-calloc-fixes.diff @@ -0,0 +1,26 @@ +diff --git a/host/utilities/bladeRF-fsk/c/src/fir_filter.c b/host/utilities/bladeRF-fsk/c/src/fir_filter.c +index 59f34f0..7def697 100644 +--- a/host/utilities/bladeRF-fsk/c/src/fir_filter.c ++++ b/host/utilities/bladeRF-fsk/c/src/fir_filter.c +@@ -213,18 +213,18 @@ int main(int argc, char *argv[]) + return EXIT_FAILURE; + } + +- inbuf = calloc(2*sizeof(int16_t), chunk_size); ++ inbuf = calloc(chunk_size, 2*sizeof(int16_t)); + if (!inbuf) { + perror("calloc"); + goto out; + } +- tempbuf = calloc(2*sizeof(int16_t), chunk_size); ++ tempbuf = calloc(chunk_size, 2*sizeof(int16_t)); + if (!tempbuf) { + perror("calloc"); + goto out; + } + +- outbuf = calloc(sizeof(struct complex_sample), chunk_size); ++ outbuf = calloc(chunk_size, sizeof(struct complex_sample)); + if (!outbuf) { + perror("calloc"); + goto out; diff --git a/pkgs/by-name/li/libbladeRF/package.nix b/pkgs/by-name/li/libbladeRF/package.nix index 77e72d22db6c..4c05f76d1351 100644 --- a/pkgs/by-name/li/libbladeRF/package.nix +++ b/pkgs/by-name/li/libbladeRF/package.nix @@ -13,6 +13,11 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; + patches = [ + # https://github.com/Nuand/bladeRF/issues/994 + ./gcc-14-calloc-fixes.diff + ]; + nativeBuildInputs = [ cmake pkg-config git doxygen help2man ]; # ncurses used due to https://github.com/Nuand/bladeRF/blob/ab4fc672c8bab4f8be34e8917d3f241b1d52d0b8/host/utilities/bladeRF-cli/CMakeLists.txt#L208 buildInputs = [ tecla libusb1 ]