Subject: [bug#40677] [PATCH V3 07/15] gnu: Add ffmpeg-jami.

From: Mathieu Othacehe <[email-masked]>
Date: Tue, 05 May 2020 09:18:58 +0200

Hello Jan,

> So I compared the list of flags turned off by default with ffmpeg
> package currently in guix with ffmpeg-jami package and I managed to
> shorten the list from 107 to 95. It isn't worth the effort.

Oh that's a disappointment indeed. Among those 95 flags I'm pretty sure
most of them match the default, but going through all of them feels like
a burden.

> I prefer just copy the list from rules.mak. What I could do is defining
> a separate "ffmpeg-configure-flags" variable somewhere near ffmpeg-jami
> and use it, instead of having the bloated list inside the package
> definition (if that's even possible).
> Correct me if I'm wrong or suggest a reasonable solution, because I have
> no idea how to deal with it right now.

Ok, this seems fine. Don't hesitate to add a link to a Web view of the
rules.mak file, so that it's clear where those flags come from.

Another remark on this part,

>         "--enable-encoder=h264_nvenc"
>         "--enable-encoder=hevc_nvenc"))
>      ((string?= (%current-system) "aarch64-linux") '("--arch=aarch64"))
>      ((string?= (%current-system) "arm64-linux") '("--arch=aarch64"))

"arm64-linux" is not a valid system, you can remove it.

>      ((string?= (%current-system) "arm") '("--arch=arm"))

I think the right system here is "armhf-linux". However, you would also
need to support cross-compilation when %current-target-system is set. In
that case, the value looks like "aarch64-linux-gnu" and
"arm-linux-gnueabihf".

If you add support for those plaforms you need to test it by building
ffmpeg-jami with "--system" and "--target" flags. As this is a complex
package with a lot of dependencies (probably failing to cross-compile),
it would be fine with me if you just drop support for other
systems/targets.

Thanks,

Mathieu