2021-06-28 23:13:55 +00:00
|
|
|
{ lib, stdenv, fetchurl, gnu-config, IOKit, Carbon }:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2021-07-21 07:28:18 +00:00
|
|
|
pname = "cdparanoia-III";
|
|
|
|
version = "10.2";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
2021-07-21 07:28:18 +00:00
|
|
|
url = "https://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-${version}.src.tgz";
|
2020-04-24 23:36:52 +00:00
|
|
|
sha256 = "1pv4zrajm46za0f6lv162iqffih57a8ly4pc69f7y0gfyigb8p80";
|
|
|
|
};
|
|
|
|
|
2021-01-17 00:15:33 +00:00
|
|
|
patches = lib.optionals stdenv.isDarwin [
|
2020-04-24 23:36:52 +00:00
|
|
|
(fetchurl {
|
|
|
|
url = "https://trac.macports.org/export/70964/trunk/dports/audio/cdparanoia/files/osx_interface.patch";
|
|
|
|
sha256 = "1n86kzm2ssl8fdf5wlhp6ncb2bf6b9xlb5vg0mhc85r69prqzjiy";
|
|
|
|
})
|
|
|
|
(fetchurl {
|
|
|
|
url = "https://trac.macports.org/export/70964/trunk/dports/audio/cdparanoia/files/patch-paranoia_paranoia.c.10.4.diff";
|
|
|
|
sha256 = "17l2qhn8sh4jy6ryy5si6ll6dndcm0r537rlmk4a6a8vkn852vad";
|
|
|
|
})
|
2021-01-17 00:15:33 +00:00
|
|
|
] ++ lib.optional stdenv.hostPlatform.isMusl ./utils.patch
|
2020-04-24 23:36:52 +00:00
|
|
|
++ [./fix_private_keyword.patch];
|
|
|
|
|
2021-01-17 00:15:33 +00:00
|
|
|
propagatedBuildInputs = lib.optionals stdenv.isDarwin [
|
2020-04-24 23:36:52 +00:00
|
|
|
Carbon
|
|
|
|
IOKit
|
|
|
|
];
|
|
|
|
|
|
|
|
hardeningDisable = [ "format" ];
|
|
|
|
|
2021-06-28 23:13:55 +00:00
|
|
|
preConfigure = ''
|
|
|
|
unset CC
|
|
|
|
'' + lib.optionalString (!stdenv.hostPlatform.isx86) ''
|
2020-04-24 23:36:52 +00:00
|
|
|
cp ${gnu-config}/config.sub configure.sub
|
|
|
|
cp ${gnu-config}/config.guess configure.guess
|
|
|
|
'';
|
|
|
|
|
2021-12-06 16:07:01 +00:00
|
|
|
# Build system reuses the same object file names for shared and static
|
|
|
|
# library. Occasionally fails in the middle:
|
|
|
|
# gcc -O2 -fsigned-char -g -O2 -c scan_devices.c
|
|
|
|
# rm -f *.o core *~ *.out
|
|
|
|
# gcc -O2 -fsigned-char -g -O2 -fpic -c scan_devices.c
|
|
|
|
# gcc -fpic -shared -o libcdda_interface.so.0.10.2 ... scan_devices.o ...
|
|
|
|
# scan_devices.o: file not recognized: file format not recognized
|
|
|
|
enableParallelBuilding = false;
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
meta = with lib; {
|
2020-04-24 23:36:52 +00:00
|
|
|
homepage = "https://xiph.org/paranoia";
|
|
|
|
description = "A tool and library for reading digital audio from CDs";
|
|
|
|
license = with licenses; [ gpl2Plus lgpl21Plus ];
|
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
|
|
|
}
|