ultrastardx: 2020.4.0 -> 2021-04-03

Not a lot has changed since last update, a few fixes were pushed to
the master tree.
We take the liberty to update to master for now.

This updates the ffmpeg version from 2.x to 4.x, which seems to be
supported upstream when we bend the minor version restriction a
little.
A simple karaoke song played just fine in my test.
This commit is contained in:
Profpatsch 2021-05-18 00:12:08 +02:00
parent 636b3581f6
commit d7cfce0e47

View file

@ -31,28 +31,41 @@ let
in stdenv.mkDerivation rec {
pname = "ultrastardx";
version = "2020.4.0";
version = "2021-04-03";
src = fetchFromGitHub {
owner = "UltraStar-Deluxe";
repo = "USDX";
rev = "v${version}";
sha256 = "0vmfv8zpyf8ymx3rjydpd7iqis080lni94vb316vfxkgvjmqbhym";
rev = "d49e916705092f3d765d85d276b283b9e7e232a6";
sha256 = "0sdcz2vc8i2z50nj7zbkdpxx2mvx0m0927lfsj7d7qr0p8vkm0wa";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ fpc libpng ] ++ sharedLibs;
patches = [
(fetchpatch {
name = "fpc-3.2-support.patch";
url = "https://github.com/UltraStar-Deluxe/USDX/commit/1b8e8714c1523ef49c2fd689a1545d097a3d76d7.patch";
sha256 = "02zmjymj9w1mkpf7armdpf067byvml6lprs1ca4lhpkv45abddp4";
})
];
postPatch = ''
substituteInPlace src/config.inc.in \
--subst-var-by libpcre_LIBNAME libpcre.so.1
# ultrastardx binds to libffmpeg (and sublibs), specifying a very restrictive
# upper bounds on the minor versions of .so files.
# We can assume ffmpeg wont break any major ABI compatibility, since their
# patch version seems to always stay at 100,
# and their minor version changes quite frequently.
sed \
-e 's/^ LIBAVCODEC_MAX_VERSION_MINOR.*$/ LIBAVCODEC_MAX_VERSION_MINOR = 1000;/' \
-i src/lib/ffmpeg-4.0/avcodec.pas
sed \
-e 's/^ LIBAVFORMAT_MAX_VERSION_MINOR.*$/ LIBAVFORMAT_MAX_VERSION_MINOR = 1000;/' \
-i src/lib/ffmpeg-4.0/avformat.pas
sed \
-e 's/^ LIBAVUTIL_MAX_VERSION_MINOR.*$/ LIBAVUTIL_MAX_VERSION_MINOR = 1000;/' \
-i src/lib/ffmpeg-4.0/avutil.pas
sed \
-e 's/^ LIBSWRESAMPLE_MAX_VERSION_MINOR.*$/ LIBSWRESAMPLE_MAX_VERSION_MINOR = 1000;/' \
-i src/lib/ffmpeg-4.0/swresample.pas
sed \
-e 's/^ LIBSWSCALE_MAX_VERSION_MINOR.*$/ LIBSWSCALE_MAX_VERSION_MINOR = 1000;/' \
-i src/lib/ffmpeg-4.0/swscale.pas
'';
preBuild = with lib;