2022-03-27 14:15:17 +01:00
|
|
|
{
|
|
|
|
stdenv,
|
|
|
|
lib,
|
|
|
|
cmake,
|
|
|
|
fetchFromGitHub,
|
|
|
|
pkg-config,
|
|
|
|
fftwFloat,
|
|
|
|
mbedtls,
|
|
|
|
boost,
|
|
|
|
lksctp-tools,
|
|
|
|
libconfig,
|
|
|
|
pcsclite,
|
|
|
|
uhd,
|
2022-08-19 20:52:31 +02:00
|
|
|
soapysdr-with-plugins,
|
2022-03-27 14:15:17 +01:00
|
|
|
libbladeRF,
|
2022-07-24 21:22:56 -03:00
|
|
|
zeromq,
|
2025-01-30 20:24:10 +01:00
|
|
|
enableLteRates ? false,
|
2025-01-26 14:03:29 +01:00
|
|
|
enableAvx ? stdenv.hostPlatform.avxSupport,
|
|
|
|
enableAvx2 ? stdenv.hostPlatform.avx2Support,
|
|
|
|
enableFma ? stdenv.hostPlatform.fmaSupport,
|
|
|
|
enableAvx512 ? stdenv.hostPlatform.avx512Support,
|
2022-03-27 14:15:17 +01:00
|
|
|
}:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "srsran";
|
2023-11-26 15:20:22 +00:00
|
|
|
version = "23.11";
|
2022-03-27 14:15:17 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "srsran";
|
|
|
|
repo = "srsran";
|
|
|
|
rev = "release_${builtins.replaceStrings [ "." ] [ "_" ] version}";
|
2023-11-26 15:20:22 +00:00
|
|
|
sha256 = "sha256-3cQMZ75I4cyHpik2d/eBuzw7M4OgbKqroCddycw4uW8=";
|
2022-03-27 14:15:17 +01:00
|
|
|
};
|
|
|
|
|
2025-01-26 14:05:05 +01:00
|
|
|
outputs = [
|
|
|
|
"out"
|
|
|
|
"dev"
|
|
|
|
];
|
|
|
|
|
2022-03-27 14:15:17 +01:00
|
|
|
nativeBuildInputs = [
|
|
|
|
cmake
|
|
|
|
pkg-config
|
|
|
|
];
|
|
|
|
|
|
|
|
buildInputs = [
|
|
|
|
fftwFloat
|
|
|
|
mbedtls
|
|
|
|
boost
|
|
|
|
libconfig
|
|
|
|
lksctp-tools
|
|
|
|
pcsclite
|
|
|
|
uhd
|
2022-08-19 20:52:31 +02:00
|
|
|
soapysdr-with-plugins
|
2022-03-27 14:15:17 +01:00
|
|
|
libbladeRF
|
2022-07-24 21:22:56 -03:00
|
|
|
zeromq
|
2022-03-27 14:15:17 +01:00
|
|
|
];
|
|
|
|
|
2025-01-26 14:03:29 +01:00
|
|
|
cmakeFlags = [
|
|
|
|
"-DENABLE_WERROR=OFF"
|
2025-01-30 20:24:10 +01:00
|
|
|
(lib.cmakeBool "ENABLE_LTE_RATES" enableLteRates)
|
2025-01-26 14:03:29 +01:00
|
|
|
(lib.cmakeBool "ENABLE_AVX" enableAvx)
|
|
|
|
(lib.cmakeBool "ENABLE_AVX2" enableAvx2)
|
|
|
|
(lib.cmakeBool "ENABLE_FMA" enableFma)
|
|
|
|
(lib.cmakeBool "ENABLE_AVX512" enableAvx512)
|
|
|
|
];
|
|
|
|
|
2025-01-26 14:05:05 +01:00
|
|
|
postInstall = lib.optionalString (!stdenv.hostPlatform.isStatic) ''
|
|
|
|
rm $out/lib/*.a
|
|
|
|
'';
|
2024-02-24 22:51:02 +00:00
|
|
|
|
2022-03-27 14:15:17 +01:00
|
|
|
meta = with lib; {
|
|
|
|
homepage = "https://www.srslte.com/";
|
|
|
|
description = "Open-source 4G and 5G software radio suite";
|
2024-03-19 14:26:06 +02:00
|
|
|
license = licenses.agpl3Plus;
|
2022-03-27 14:15:17 +01:00
|
|
|
platforms = with platforms; linux;
|
|
|
|
maintainers = with maintainers; [ hexagonal-sun ];
|
|
|
|
};
|
|
|
|
}
|