52 lines
1.6 KiB
Nix
52 lines
1.6 KiB
Nix
{ stdenv, fetchgit, fetchpatch, zlib
|
|
, gnutlsSupport ? false, gnutls ? null, nettle ? null
|
|
, opensslSupport ? true, openssl ? null
|
|
}:
|
|
|
|
# Must have an ssl library enabled
|
|
assert (gnutlsSupport || opensslSupport);
|
|
assert gnutlsSupport -> gnutlsSupport != null && nettle != null && !opensslSupport;
|
|
assert opensslSupport -> openssl != null && !gnutlsSupport;
|
|
|
|
with stdenv.lib;
|
|
stdenv.mkDerivation {
|
|
pname = "rtmpdump";
|
|
version = "2019-03-30";
|
|
|
|
src = fetchgit {
|
|
url = "git://git.ffmpeg.org/rtmpdump";
|
|
# Currently the latest commit is used (a release has not been made since 2011, i.e. '2.4')
|
|
rev = "c5f04a58fc2aeea6296ca7c44ee4734c18401aa3";
|
|
sha256 = "07ias612jgmxpam9h418kvlag32da914jsnjsfyafklpnh8gdzjb";
|
|
};
|
|
|
|
patches = [
|
|
# Fix build with OpenSSL 1.1
|
|
(fetchpatch {
|
|
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-video/rtmpdump/files/rtmpdump-openssl-1.1.patch?id=1e7bef484f96e7647f5f0911d3c8caa48131c33b";
|
|
sha256 = "1wds98pk8qr7shkfl8k49iirxiwd972h18w84bamiqln29wv6ql1";
|
|
})
|
|
];
|
|
|
|
makeFlags = [ ''prefix=$(out)'' ]
|
|
++ optional gnutlsSupport "CRYPTO=GNUTLS"
|
|
++ optional opensslSupport "CRYPTO=OPENSSL"
|
|
++ optional stdenv.isDarwin "SYS=darwin"
|
|
++ optional stdenv.cc.isClang "CC=clang";
|
|
|
|
propagatedBuildInputs = [ zlib ]
|
|
++ optionals gnutlsSupport [ gnutls nettle ]
|
|
++ optional opensslSupport openssl;
|
|
|
|
outputs = [ "out" "dev" ];
|
|
|
|
separateDebugInfo = true;
|
|
|
|
meta = {
|
|
description = "Toolkit for RTMP streams";
|
|
homepage = "http://rtmpdump.mplayerhq.hu/";
|
|
license = licenses.gpl2;
|
|
platforms = platforms.unix;
|
|
maintainers = with maintainers; [ codyopel ];
|
|
};
|
|
}
|