84 lines
1.8 KiB
Nix
84 lines
1.8 KiB
Nix
|
{ lib
|
||
|
, stdenv
|
||
|
, fetchFromGitHub
|
||
|
, curl
|
||
|
, jdk
|
||
|
, libedit
|
||
|
, srt
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "tsduck";
|
||
|
version = "3.31-2761";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "tsduck";
|
||
|
repo = pname;
|
||
|
rev = "v${version}";
|
||
|
sha256 = "sha256-268TKCh3naebbw+sOQ6d4N/zl7UEVtc3l3flFAYHDU4=";
|
||
|
};
|
||
|
|
||
|
buildInputs = [
|
||
|
curl
|
||
|
libedit
|
||
|
srt
|
||
|
jdk
|
||
|
];
|
||
|
|
||
|
# remove tests which call out to https://tsduck.io/download/test/...
|
||
|
postPatch = ''
|
||
|
sed -i"" \
|
||
|
-e '/TSUNIT_TEST(testMasterPlaylist);/ d' \
|
||
|
-e '/TSUNIT_TEST(testMasterPlaylistWithAlternate);/ d' \
|
||
|
-e '/TSUNIT_TEST(testMediaPlaylist);/ d' \
|
||
|
src/utest/utestHLS.cpp
|
||
|
|
||
|
sed -i"" \
|
||
|
-e '/TSUNIT_TEST(testBetterSystemRandomGenerator);/ d' \
|
||
|
src/utest/utestSystemRandomGenerator.cpp
|
||
|
|
||
|
sed -i"" \
|
||
|
-e '/TSUNIT_ASSERT(request.downloadBinaryContent/ d' \
|
||
|
-e '/TSUNIT_ASSERT(!request.downloadBinaryContent/ d' \
|
||
|
-e '/TSUNIT_TEST(testGitHub);/ d' \
|
||
|
-e '/TSUNIT_TEST(testGoogle);/ d' \
|
||
|
-e '/TSUNIT_TEST(testNoRedirection);/ d' \
|
||
|
-e '/TSUNIT_TEST(testReadMeFile);/ d' \
|
||
|
src/utest/utestWebRequest.cpp
|
||
|
|
||
|
sed -i"" \
|
||
|
-e '/TSUNIT_TEST(testHomeDirectory);/ d' \
|
||
|
src/utest/utestSysUtils.cpp
|
||
|
'';
|
||
|
|
||
|
enableParallelBuilding = true;
|
||
|
makeFlags = [
|
||
|
"NODEKTEC=1"
|
||
|
"NOHIDES=1"
|
||
|
"NOPCSC=1"
|
||
|
"NORIST=1"
|
||
|
"NOVATEK=1"
|
||
|
] ++ installFlags;
|
||
|
|
||
|
checkTarget = "test";
|
||
|
doCheck = true;
|
||
|
|
||
|
installFlags = [
|
||
|
"SYSROOT=${placeholder "out"}"
|
||
|
"SYSPREFIX=/"
|
||
|
"USRLIBDIR=/lib"
|
||
|
];
|
||
|
installTargets = [
|
||
|
"install-tools"
|
||
|
"install-devel"
|
||
|
];
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "The MPEG Transport Stream Toolkit";
|
||
|
homepage = "https://github.com/tsduck/tsduck";
|
||
|
license = licenses.bsd2;
|
||
|
maintainers = with maintainers; [ siriobalmelli ];
|
||
|
platforms = platforms.all;
|
||
|
};
|
||
|
}
|