nixpkgs/pkgs/by-name/li/libburn/package.nix
Sergei Trofimovich 664464a5dd libburn: backport upstream C23 fix
Without the change the build against c23 compiler (like `gcc-15`) fails as:

    libburn> test/poll.c: In function 'main':
    libburn> test/poll.c:67:27: error: assignment to '__sighandler_t' {aka 'void (*)(int)'} from incompatible pointer type 'void (*)(void)' []
    libburn>    67 |         newact.sa_handler = catch_int;
    libburn>       |                           ^
2025-01-26 22:22:45 +00:00

56 lines
1.3 KiB
Nix

{
lib,
stdenv,
fetchFromGitea,
fetchpatch,
autoreconfHook,
pkg-config,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "libburn";
version = "1.5.6";
src = fetchFromGitea {
domain = "dev.lovelyhq.com";
owner = "libburnia";
repo = "libburn";
rev = "release-${finalAttrs.version}";
hash = "sha256-Xo45X4374FXvlrJ4Q0PahYvuWXO0k3N0ke0mbURYt54=";
};
patches = [
# Fix the build against C23 compilers (like gcc-15):
(fetchpatch {
name = "c23.patch";
url = "https://dev.lovelyhq.com/libburnia/libburn/commit/d537f9dd35282df834a311ead5f113af67d223b3.patch";
hash = "sha256-aouU/6AchLhzMzvkVvUnFHWfebYTrkEJ6P3fF5pvE9M=";
})
];
nativeBuildInputs = [
autoreconfHook
pkg-config
];
outputs = [
"out"
"man"
];
strictDeps = true;
meta = {
homepage = "https://dev.lovelyhq.com/libburnia/web/wiki";
description = "Library by which preformatted data get onto optical media: CD, DVD, BD (Blu-Ray)";
changelog = "https://dev.lovelyhq.com/libburnia/libburn/src/tag/${finalAttrs.src.rev}/ChangeLog";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [
abbradar
AndersonTorres
];
mainProgram = "cdrskin";
platforms = lib.platforms.unix;
};
})