nixpkgs/pkgs/tools/video/rtmpdump/default.nix
2019-08-31 13:51:28 -04:00

53 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 ];
};
}