blob: 1cd69b032794a51a78357e69c5781f257857927c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
{
lib,
stdenv,
fetchFromGitLab,
autoreconfHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "a52dec";
version = "0.8.0";
src = fetchFromGitLab {
domain = "git.adelielinux.org";
owner = "community";
repo = "a52dec";
tag = "v${finalAttrs.version}";
hash = "sha256-Z4riiwetJkhQYa+AD8qOiwB1+cuLbOyN/g7D8HM8Pkw=";
};
nativeBuildInputs = [ autoreconfHook ];
configureFlags = [
"--enable-shared"
# Define inline as __attribute__ ((__always_inline__))
"ac_cv_c_inline=yes"
# C23 (Clang default w/ autoconf 2.73) rejects K&R-style declarations
"CFLAGS=-std=gnu17"
];
makeFlags = [ "AR=${stdenv.cc.targetPrefix}ar" ];
# fails 1 out of 1 tests with "BAD GLOBAL SYMBOLS" on i686
# which can also be fixed with
# hardeningDisable = lib.optional stdenv.hostPlatform.isi686 "pic";
# but it's better to disable tests than loose ASLR on i686
doCheck = !stdenv.hostPlatform.isi686;
meta = {
description = "ATSC A/52 stream decoder";
homepage = "https://liba52.sourceforge.io/";
changelog = "https://git.adelielinux.org/community/a52dec/-/blob/v${finalAttrs.version}/ChangeLog?ref_type=tags";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ wegank ];
mainProgram = "a52dec";
platforms = lib.platforms.unix;
};
})
|